Guix + Lem - has anyone installed/trialed it?

Hey Gang,

I am currently trialing out Lem (Common Lisp Emacs-like editor) on my Guix SD but am running into some issues. I installed via the following Lem Guix Pacakge recipe, i.e.

$ guix package -f path/to/lem-guix-packaging/package.scm

For the most part everything works well, except when trialing out the version control, i.e. lem/legit via (require :lem/legit) I get an error about a micros compilation error, I get the same error when trying to just (require :micros).

Looking at the Guix recipe, it appears micros is defined and should be installed and compiled with Lem when I performed guix package ....

At this point I am unsure how to resolve if this is an error with the recipe or my own configuration or Lem itselfā€¦So I am just putting out a call to help for anyone who has tried Lem on Guix and can perhaps can guide me to what I am doing wrong.

PS: I did try asking on their Discord forum, but to no availā€¦ Most arenā€™t Guix users from my estimation.

Also, I am currently using Guix Home for my configuration setup for all of my non-system essential packages (just sbcl/StumpWM defined there - if that matters)

Thanks!

2 Likes

Added Guix, lisp

I wanted to add to this request for help some additional questions. Does anyone know how to get a hybrid setup between Guix & Quicklisp?

I have come to the conclusion that the Common Lisp ecosystem is still quite small for Common Lisp packages in Guix and in the interim would like to still functionally use Guix for Common Lisp development until I can be able to perhaps help push upstream Guix package recipes for the things I will be using.

Again - greatly appreciate any help!

Last update.

Wanted to provide a link to a Guix recipe I updated to a commit in June 2024. I believe this to be the latest Guix package recipe available for Lem: GitHub - logoraz/lem-guix-package-recipe: Lem Guix Package Recipe.

I donā€™t plan to support Lem anymore, and perhaps for the sake of Guix may make a final release on Lemā€™s next version release, just so Guix can have one more package in its arsenal. Still not sure how to go about committing upstream, for me contributing to GNU in anyway feels like jumping across a giant chasm.

On other news - CLASP is currently working on a Guix Recipe, I donā€™t believe it is ready for upstream since it requires git submodule dependencies to be present for compilation and establishing the guix git command code in the package recipe is currently failing. They present a hybrid approach in their instructions, though, you need to slightly modify the recipe - removing the guix git commands - and using their build-script koga to fetch them, which works fine from the preliminary tests Iā€™ve done.

Best Regards,

  • Logoraz

Have you looked into helix editor? It is going to get steel scheme as its scripting language.

Until helix editor matures enough, Iā€™m going to stick to emacs and neovim.

1 Like

Guix official channel may refuse your packages. I recommend submitting your guix packages to nonguix or submitting your own guix channel to https://toys.whereis.ćæ悓ćŖ/

1 Like

I havenā€™t actually - but just taking a quick look, it looks pretty nice and somewhat similar in style to Lem, though much more mature.

For the time being and distant future I will probably stay with Emacs - it has an amazing ecosystem, and Iā€™ve got deep enough to have built a few of my own macroā€™s - so Iā€™m spoiled, the next editor must be of a lisp.

Steel scheme is a lisp?

when I said ā€œmust be of a lispā€, I meant that term in the most general sense, i.e. Scheme or Common Lisp.

Iā€™ve heard of lem, havenā€™t tried it out. Anyone have any reviews for it or using it?

I used it for some time.
It felt somewhat more modern and quite snappy.

Documentation is not good though and it is also not easy to find help within the community, partly because the main dev is japanese so there can be language barriers.

Would recommend to give it a try. Especially if one already has some common lisp knowledge.

Btw Lem is now in upstream Guix!

See: https://git.savannah.gnu.org/cgit/guix.git/commit/?id=e92516d900927bf8efceecc161c78f03785ded71

Yeah, I saw that - I am actually back at trying out Lem, using the upstream packageā€¦ Though this time on my guix-sway setup (GitHub - logoraz/guixos-sway: GuixOS Sway ("Alkaline Ice"): A Custom Guix System Distribution configured for Sway WM.). Having issues with establishing tansparency. As you stated in your previous post, documentation is not adequate and the community is a bit cantankerous to newbies, the maintainer/owner is very nice though!

Btw Lem has a subreddit: Reddit - Dive into anything

CL might be old, but it will be good to use an old language for once instead of fighting uphill all the time.

I added a Nix shell to Lemā€™s flake for building from source. It might be instructive for building from source using aā€¦ Guix shell?

Can it load the contrib packages? The package currently in the Nix flake I think cannot. Thatā€™s one reason I added a dev shell to the flake. It letā€™s people get dependencies and then build from source quickly instead of trying to get the CL packaging perfect.