diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-airshare/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-airshare/package.nix index 9160cf770e39..5a5012750cf5 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-airshare/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-airshare/package.nix @@ -33,7 +33,6 @@ melpaBuild { qrcode ] ++ ps.qrcode.optional-dependencies.pil; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-browser/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-browser/default.nix index e3053b614a4c..f804b2a65d32 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-browser/default.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-browser/default.nix @@ -36,6 +36,12 @@ melpaBuild (finalAttrs: { npmHooks.npmConfigHook ]; + postPatch = '' + substituteInPlace buffer.py \ + --replace-fail "aria2_args = [\"aria2c\"]" \ + "aria2_args = [\"${lib.getExe aria2}\"]" + ''; + files = '' ("*.el" "*.py" @@ -55,9 +61,6 @@ melpaBuild (finalAttrs: { ps: with ps; [ pysocks ]; - eafOtherDeps = [ - aria2 - ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-camera/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-camera/package.nix index 13bc0a7706cc..2f4fbba74e83 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-camera/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-camera/package.nix @@ -55,7 +55,6 @@ melpaBuild (finalAttrs: { passthru = { updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; eafPythonDeps = ps: [ ]; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-file-manager/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-file-manager/package.nix index a338e66c610e..8d0c4ef415fc 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-file-manager/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-file-manager/package.nix @@ -36,6 +36,14 @@ melpaBuild (finalAttrs: { npmHooks.npmConfigHook ]; + postPatch = '' + substituteInPlace buffer.py \ + --replace-fail "shutil.which(\"fd\")" \ + "shutil.which(\"${lib.getExe fd}\")" \ + --replace-fail "return \"fd\"" \ + "return \"${lib.getExe fd}\"" + ''; + postBuild = '' npm run build ''; @@ -62,9 +70,6 @@ melpaBuild (finalAttrs: { pygments exif ]; - eafOtherDeps = [ - fd - ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-git/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-git/default.nix index 5b134cfc2f28..2295c988bbcb 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-git/default.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-git/default.nix @@ -37,6 +37,16 @@ melpaBuild (finalAttrs: { npmHooks.npmConfigHook ]; + postPatch = '' + substituteInPlace eaf-git.el \ + --replace-fail "(defcustom eaf-git-delta-executable \"delta\"" \ + "(defcustom eaf-git-delta-executable \"${lib.getExe delta}\"" + + substituteInPlace buffer.py \ + --replace-fail "command = \"rg '{}' {}" \ + "command = \"${lib.getExe ripgrep} '{}' {}" + ''; + postBuild = '' npm run build ''; @@ -65,10 +75,6 @@ melpaBuild (finalAttrs: { pygments unidiff ]; - eafOtherDeps = [ - delta - ripgrep - ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-image-viewer/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-image-viewer/package.nix index 836e25dcbc2e..cb1f1ab14bff 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-image-viewer/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-image-viewer/package.nix @@ -49,7 +49,6 @@ melpaBuild (finalAttrs: { passthru = { updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; eafPythonDeps = ps: [ ]; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-js-video-player/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-js-video-player/package.nix index cfc740a74d25..519afd342d06 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-js-video-player/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-js-video-player/package.nix @@ -55,7 +55,6 @@ melpaBuild (finalAttrs: { passthru = { updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; }; eafPythonDeps = ps: [ ]; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-map/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-map/package.nix index 682f622a3ffd..e0f38b15c604 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-map/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-map/package.nix @@ -60,7 +60,6 @@ melpaBuild (finalAttrs: { pycurl python-tsp ]; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pdf-viewer/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pdf-viewer/package.nix index 152a573fef87..35dc987dbaae 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pdf-viewer/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pdf-viewer/package.nix @@ -31,7 +31,6 @@ melpaBuild { packaging pymupdf ]; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pyqterminal/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pyqterminal/package.nix index 0a2c88784518..d60787854748 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pyqterminal/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/eaf-pyqterminal/package.nix @@ -31,7 +31,6 @@ melpaBuild { pyte psutil ]; - eafOtherDeps = [ ]; }; meta = { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/emacs-application-framework/package.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/emacs-application-framework/package.nix index 6630a5e6b6ac..09acf5c1c472 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/emacs-application-framework/package.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/emacs-application-framework/package.nix @@ -10,7 +10,6 @@ # Emacs dependencies all-the-icons, # Other dependencies - nodejs, wmctrl, xdotool, # Updater @@ -22,7 +21,6 @@ let appPythonDeps = map (item: item.eafPythonDeps) enabledApps; - appOtherDeps = map (item: item.eafOtherDeps) enabledApps; pythonPackageLists = [ ( @@ -41,26 +39,15 @@ let pythonPkgs = ps: builtins.concatLists (map (f: f ps) pythonPackageLists); pythonEnv = python3.withPackages pythonPkgs; - otherPackageLists = [ - ( - [ - nodejs - wmctrl - ] - ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform xdotool) [ xdotool ] - ) - ] - ++ appOtherDeps; - otherPkgs = builtins.concatLists otherPackageLists; + wmctrlExe = lib.getExe wmctrl; + xdotoolExe = lib.optionalString (lib.meta.availableOn stdenv.hostPlatform xdotool) ( + lib.getExe xdotool + ); appsDrv = symlinkJoin { name = "emacs-application-framework-apps"; paths = enabledApps; }; - depsBin = symlinkJoin { - name = "emacs-application-framework-deps-bin"; - paths = otherPkgs; - }; in @@ -84,6 +71,20 @@ melpaBuild (finalAttrs: { substituteInPlace eaf.el \ --replace-fail "\"python.exe\" \"python3\"" \ "\"python.exe\" \"${pythonEnv.interpreter}\"" + + substituteInPlace eaf.el \ + --replace-fail "(executable-find \"wmctrl\")" \ + "(executable-find \"${wmctrlExe}\")" \ + --replace-fail "(shell-command-to-string \"wmctrl -m\")" \ + "(shell-command-to-string \"${wmctrlExe} -m\")" \ + --replace-fail "\"wmctrl -i -a \$(wmctrl -lp | awk -vpid=\$PID '\$3==%s {print \$1; exit}')\"" \ + "\"${wmctrlExe} -i -a \$(${wmctrlExe} -lp | awk -vpid=\$PID '\$3==%s {print \$1; exit}')\"" + + substituteInPlace eaf.el \ + --replace-fail "(executable-find \"xdotool\")" \ + "(executable-find \"${xdotoolExe}\")" \ + --replace-fail "(shell-command-to-string \"xdotool getactivewindow getwindowname\")" \ + "(shell-command-to-string \"${xdotoolExe} getactivewindow getwindowname\")" ''; files = '' @@ -112,13 +113,6 @@ melpaBuild (finalAttrs: { cp -r $APPNATDIR/. \ $NATDIR/ fi - - mkdir -p $out/bin/ - for item in ${depsBin}/bin/*; do - # Some symbolic links point to another symbolic link - ln -s $(readlink -f $item) \ - $out/bin/$(basename $item) - done ''; passthru.updateScript = unstableGitUpdater { };