Commit Graph

6 Commits

Author SHA1 Message Date
Kasper Gałkowski
819d1d78e3 lisp-modules: use meta.mainProgram before pname 2023-03-15 19:06:47 +01:00
Kasper Gałkowski
bf643838f3 lisp-modules: fix typos 2023-03-15 19:06:13 +01:00
Kasper Gałkowski
dae0dca5d1 lisp-modules: second version of wrapLisp
The previous approach of trying to make both the `override` mechanism from
`mkDerivation` and the `overrideScope'` mechanism from `newScope` work together
resulted in hard to understand code, and there was a bug where once overridden
packages would lose the changes on next override with `packageOverrides`.

It's not ideal still, because Lisps created by `mkDerivation` will lose their
`pkgs` after using `override`.
2023-03-11 19:09:25 +01:00
Kasper Gałkowski
84eea85ad9 lisp-modules: use wrapLisp to wrap Lisps
The previous approach of manually repeating a complex pattern inside Common Lisp
implementation package declarations was fragile and hard to change. After
reading python and lua modules code in Nixpkgs, I was able to come up with
something better.

The function `wrapLisp` doesn't need to be inside package declarations so all
the code for wrapping Lisps can be in `all-packages.nix`.

This works by wrapping the `override` function created from `mkDerivation` to
accept a new argument `packageOverrides`.

One problem with this is that `override.__functionArgs` disappears. But one can
look at the source code of a package to discover what can be overridden.
2023-03-11 15:11:38 +01:00
Kasper Gałkowski
254765f3d2 lisp-modules: make spec.flags a list of strings 2023-03-02 19:04:47 +01:00
Kasper Gałkowski
9e860e41eb lisp-modules: init
From https://github.com/Uthar/nix-cl
Commit ebeb76057abf01029067f1ebe0ae6fae90848bfe
2023-03-02 19:04:47 +01:00