emacsPackages: fix build for elpa packages
This commit is contained in:
@@ -4,6 +4,14 @@ self: super:
|
||||
|
||||
let
|
||||
libExt = pkgs.stdenv.hostPlatform.extensions.sharedLibrary;
|
||||
inherit (import ./lib-override-helper.nix pkgs lib)
|
||||
addPackageRequires
|
||||
addPackageRequiresIfOlder
|
||||
ignoreCompilationError
|
||||
ignoreCompilationErrorIfOlder
|
||||
mkHome
|
||||
mkHomeIfOlder
|
||||
;
|
||||
in
|
||||
{
|
||||
cl-lib = null; # builtin
|
||||
@@ -54,6 +62,64 @@ in
|
||||
}
|
||||
);
|
||||
|
||||
# native-compiler-error-empty-byte in old versions
|
||||
ada-ref-man = ignoreCompilationErrorIfOlder super.ada-ref-man "2020.1.0.20201129.190419";
|
||||
|
||||
# elisp error in old versions
|
||||
ampc = ignoreCompilationErrorIfOlder super.ampc "0.2.0.20240220.181558";
|
||||
|
||||
auctex = mkHome super.auctex;
|
||||
|
||||
auctex-cont-latexmk = mkHome super.auctex-cont-latexmk;
|
||||
|
||||
auctex-label-numbers = mkHome super.auctex-label-numbers;
|
||||
|
||||
# missing optional dependencies https://codeberg.org/rahguzar/consult-hoogle/issues/4
|
||||
consult-hoogle = addPackageRequiresIfOlder super.consult-hoogle [ self.consult ] "0.2.2";
|
||||
|
||||
# missing optional dependencies https://github.com/jacksonrayhamilton/context-coloring/issues/10
|
||||
context-coloring = addPackageRequires super.context-coloring [ self.js2-mode ];
|
||||
|
||||
cpio-mode = ignoreCompilationError super.cpio-mode; # elisp error
|
||||
|
||||
# fixed in https://git.savannah.gnu.org/cgit/emacs/elpa.git/commit/?h=externals/dbus-codegen&id=cfc46758c6252a602eea3dbc179f8094ea2a1a85
|
||||
dbus-codegen = ignoreCompilationErrorIfOlder super.dbus-codegen "0.1.0.20201127.221326"; # elisp error
|
||||
|
||||
ebdb = super.ebdb.overrideAttrs (
|
||||
finalAttrs: previousAttrs:
|
||||
let
|
||||
applyOrgRoamMissingPatch = lib.versionOlder finalAttrs.version "0.8.22.0.20240205.070828";
|
||||
in
|
||||
{
|
||||
dontUnpack = !applyOrgRoamMissingPatch;
|
||||
patches =
|
||||
if applyOrgRoamMissingPatch then
|
||||
previousAttrs.patches or [ ]
|
||||
++ [
|
||||
(pkgs.fetchpatch {
|
||||
name = "fix-comilation-error-about-missing-org-roam.patch";
|
||||
url = "https://github.com/girzel/ebdb/commit/058f30a996eb9074feac8f94db4eb49e85ae08f1.patch";
|
||||
hash = "sha256-UI72N3lCgro6bG75sWnbw9truREToQHEzZ1TeQAIMjo=";
|
||||
})
|
||||
]
|
||||
else
|
||||
previousAttrs.patches or null;
|
||||
preBuild =
|
||||
if applyOrgRoamMissingPatch then
|
||||
previousAttrs.preBuild or ""
|
||||
+ "\n"
|
||||
+ ''
|
||||
pushd ..
|
||||
local content_directory=$ename-$version
|
||||
src=$PWD/$content_directory.tar
|
||||
tar --create --verbose --file=$src $content_directory
|
||||
popd
|
||||
''
|
||||
else
|
||||
previousAttrs.preBuild or null;
|
||||
}
|
||||
);
|
||||
|
||||
eglot = super.eglot.overrideAttrs (
|
||||
finalAttrs: previousAttrs: {
|
||||
postInstall =
|
||||
@@ -99,6 +165,29 @@ in
|
||||
};
|
||||
});
|
||||
|
||||
notes-mode = (mkHome super.notes-mode).overrideAttrs (old: {
|
||||
dontUnpack = false;
|
||||
buildInputs = old.buildInputs or [ ] ++ [ pkgs.perl ];
|
||||
nativeBuildInputs = old.nativeBuildInputs or [ ] ++ [ pkgs.perl ];
|
||||
preInstall =
|
||||
old.preInstall or ""
|
||||
+ "\n"
|
||||
+ ''
|
||||
patchShebangs --build mkconfig
|
||||
pushd ..
|
||||
local content_directory=$ename-$version
|
||||
src=$PWD/$content_directory.tar
|
||||
tar --create --verbose --file=$src $content_directory
|
||||
popd
|
||||
'';
|
||||
postFixup =
|
||||
old.postFixup or ""
|
||||
+ "\n"
|
||||
+ ''
|
||||
patchShebangs --host --update $out/share/emacs/site-lisp/elpa/$ename-$version/mkconfig
|
||||
'';
|
||||
});
|
||||
|
||||
plz = super.plz.overrideAttrs (old: {
|
||||
dontUnpack = false;
|
||||
postPatch =
|
||||
@@ -117,10 +206,22 @@ in
|
||||
'';
|
||||
});
|
||||
|
||||
# https://sourceware.org/bugzilla/show_bug.cgi?id=32185
|
||||
poke = addPackageRequires super.poke [ self.poke-mode ];
|
||||
|
||||
pq = super.pq.overrideAttrs (old: {
|
||||
buildInputs = old.buildInputs or [ ] ++ [ pkgs.postgresql ];
|
||||
});
|
||||
|
||||
preview-auto = mkHome super.preview-auto;
|
||||
|
||||
preview-tailor = mkHome super.preview-tailor;
|
||||
|
||||
# native-ice https://github.com/mattiase/relint/issues/15
|
||||
relint = ignoreCompilationError super.relint;
|
||||
|
||||
shen-mode = ignoreCompilationErrorIfOlder super.shen-mode "0.1.0.20221221.82050"; # elisp error
|
||||
|
||||
# native compilation for tests/seq-tests.el never ends
|
||||
# delete tests/seq-tests.el to workaround this
|
||||
seq = super.seq.overrideAttrs (old: {
|
||||
@@ -136,6 +237,26 @@ in
|
||||
'';
|
||||
});
|
||||
|
||||
# https://github.com/alphapapa/taxy.el/issues/3
|
||||
taxy = super.taxy.overrideAttrs (old: {
|
||||
dontUnpack = false;
|
||||
postUnpack =
|
||||
old.postUnpack or ""
|
||||
+ "\n"
|
||||
+ ''
|
||||
local content_directory=$ename-$version
|
||||
rm --verbose --recursive $content_directory/examples
|
||||
src=$PWD/$content_directory.tar
|
||||
tar --create --verbose --file=$src $content_directory
|
||||
'';
|
||||
});
|
||||
|
||||
tex-parens = mkHomeIfOlder super.tex-parens "0.4.0.20240630.70456";
|
||||
|
||||
timerfunctions = ignoreCompilationErrorIfOlder super.timerfunctions "1.4.2.0.20201129.225252";
|
||||
|
||||
wisitoken-grammar-mode = ignoreCompilationError super.wisitoken-grammar-mode; # elisp error
|
||||
|
||||
xeft = super.xeft.overrideAttrs (old: {
|
||||
dontUnpack = false;
|
||||
buildInputs = old.buildInputs or [ ] ++ [ pkgs.xapian ];
|
||||
@@ -153,4 +274,7 @@ in
|
||||
rm $outd/xapian-lite.cc $outd/emacs-module.h $outd/emacs-module-prelude.h $outd/demo.gif $outd/Makefile
|
||||
'';
|
||||
});
|
||||
|
||||
# native-ice https://github.com/mattiase/xr/issues/9
|
||||
xr = ignoreCompilationError super.xr;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user