diff options
Diffstat (limited to 'pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix')
-rw-r--r-- | pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix index bb45c383487cc..1e9a8191b3f16 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/melpa-packages.nix @@ -508,14 +508,29 @@ let rime = super.rime.overrideAttrs (old: { buildInputs = (old.buildInputs or [ ]) ++ [ pkgs.librime ]; - preBuild = (old.preBuild or "") + '' + preBuild = (old.preBuild or "") + + (if pkgs.stdenv.isDarwin then + '' + export MODULE_FILE_SUFFIX=".dylib" + make lib + mkdir -p /tmp/build/rime-lib + cp *.dylib /tmp/build/rime-lib + '' + else + '' make lib mkdir -p /build/rime-lib cp *.so /build/rime-lib - ''; - postInstall = (old.postInstall or "") + '' + ''); + postInstall = (old.postInstall or "") + + (if pkgs.stdenv.isDarwin then + '' + install -m444 -t $out/share/emacs/site-lisp/elpa/rime-* /tmp/build/rime-lib/*.dylib + '' + else + '' install -m444 -t $out/share/emacs/site-lisp/elpa/rime-* /build/rime-lib/*.so - ''; + ''); }); shm = super.shm.overrideAttrs (attrs: { |