Use new lisp-modules method

This commit is contained in:
niten 2024-07-12 23:41:44 -07:00
parent 2d94cf0b1b
commit c10160bf26

View File

@ -21,17 +21,18 @@ let
(loop (sleep 60)) (loop (sleep 60))
''; '';
lisp-libs = with pkgs.lispPackages; [ sbclWithLibs = pkgs.sbcl.withPackages (ps:
alexandria with ps; [
asdf-package-system alexandria
asdf-system-connections asdf-package-system
cl_plus_ssl asdf-system-connections
cl-ppcre cl_plus_ssl
quicklisp cl-ppcre
quri quicklisp
uiop quri
usocket uiop
]; usocket
]);
in { in {
options.fudo.slynk = { options.fudo.slynk = {
@ -48,20 +49,17 @@ in {
systemd.user.services.slynk = { systemd.user.services.slynk = {
description = "Slynk Common Lisp server."; description = "Slynk Common Lisp server.";
serviceConfig = serviceConfig = {
let load-paths = (map (pkg: "${pkg}/lib/common-lisp/") lisp-libs); ExecStart = "sbcl --load ${initScript cfg.port load-paths}";
in { Restart = "on-failure";
ExecStartPre = "${pkgs.lispPackages.quicklisp}/bin/quicklisp init"; PIDFile = "/run/slynk.$USERNAME.pid";
ExecStart = };
"${pkgs.sbcl}/bin/sbcl --load ${initScript cfg.port load-paths}";
Restart = "on-failure";
PIDFile = "/run/slynk.$USERNAME.pid";
};
path = with pkgs; [ path = with pkgs; [
gcc gcc
glibc # for getent glibc # for getent
file file
sbclWithLibs
]; ];
environment = { LD_LIBRARY_PATH = "${pkgs.openssl.out}/lib"; }; environment = { LD_LIBRARY_PATH = "${pkgs.openssl.out}/lib"; };