emacsPackages.eaf-*: fix dependencies issue (#449026)

This commit is contained in:
Lin Jian
2025-10-07 10:22:57 +00:00
committed by GitHub
11 changed files with 42 additions and 41 deletions
@@ -33,7 +33,6 @@ melpaBuild {
qrcode
]
++ ps.qrcode.optional-dependencies.pil;
eafOtherDeps = [ ];
};
meta = {
@@ -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 = {
@@ -55,7 +55,6 @@ melpaBuild (finalAttrs: {
passthru = {
updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
eafPythonDeps = ps: [ ];
eafOtherDeps = [ ];
};
meta = {
@@ -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 = {
@@ -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 = {
@@ -49,7 +49,6 @@ melpaBuild (finalAttrs: {
passthru = {
updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
eafPythonDeps = ps: [ ];
eafOtherDeps = [ ];
};
meta = {
@@ -55,7 +55,6 @@ melpaBuild (finalAttrs: {
passthru = {
updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
eafPythonDeps = ps: [ ];
eafOtherDeps = [ ];
};
meta = {
@@ -60,7 +60,6 @@ melpaBuild (finalAttrs: {
pycurl
python-tsp
];
eafOtherDeps = [ ];
};
meta = {
@@ -31,7 +31,6 @@ melpaBuild {
packaging
pymupdf
];
eafOtherDeps = [ ];
};
meta = {
@@ -31,7 +31,6 @@ melpaBuild {
pyte
psutil
];
eafOtherDeps = [ ];
};
meta = {
@@ -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 { };