diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 953aeda568f1..a71c804428da 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -956,6 +956,7 @@ ./services/x11/urxvtd.nix ./services/x11/window-managers/awesome.nix ./services/x11/window-managers/default.nix + ./services/x11/window-managers/clfswm.nix ./services/x11/window-managers/fluxbox.nix ./services/x11/window-managers/icewm.nix ./services/x11/window-managers/bspwm.nix diff --git a/nixos/modules/services/x11/window-managers/clfswm.nix b/nixos/modules/services/x11/window-managers/clfswm.nix index 176c1f461271..171660c53ac3 100644 --- a/nixos/modules/services/x11/window-managers/clfswm.nix +++ b/nixos/modules/services/x11/window-managers/clfswm.nix @@ -15,10 +15,10 @@ in services.xserver.windowManager.session = singleton { name = "clfswm"; start = '' - ${pkgs.clfswm}/bin/clfswm & + ${pkgs.lispPackages.clfswm}/bin/clfswm & waitPID=$! ''; }; - environment.systemPackages = [ pkgs.clfswm ]; + environment.systemPackages = [ pkgs.lispPackages.clfswm ]; }; } diff --git a/nixos/modules/services/x11/window-managers/default.nix b/nixos/modules/services/x11/window-managers/default.nix index 87702c58727a..9ca24310e567 100644 --- a/nixos/modules/services/x11/window-managers/default.nix +++ b/nixos/modules/services/x11/window-managers/default.nix @@ -13,6 +13,7 @@ in ./berry.nix ./bspwm.nix ./cwm.nix + ./clfswm.nix ./dwm.nix ./evilwm.nix ./exwm.nix diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-output/clfswm.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clfswm.nix new file mode 100644 index 000000000000..81b335520b04 --- /dev/null +++ b/pkgs/development/lisp-modules/quicklisp-to-nix-output/clfswm.nix @@ -0,0 +1,25 @@ +args @ { fetchurl, ... }: +rec { + baseName = ''clfswm''; + version = ''20161204-git''; + + description = ''CLFSWM: Fullscreen Window Manager''; + + deps = [ args."clx" ]; + + src = fetchurl { + url = ''http://beta.quicklisp.org/archive/clfswm/2016-12-04/clfswm-20161204-git.tgz''; + sha256 = ''1jgz127721dgcv3qm1knc335gy04vzh9gl0hshp256rxi82cpp73''; + }; + + packageName = "clfswm"; + + asdFilesToKeep = ["clfswm.asd"]; + overrides = x: x; +} +/* (SYSTEM clfswm DESCRIPTION CLFSWM: Fullscreen Window Manager SHA256 + 1jgz127721dgcv3qm1knc335gy04vzh9gl0hshp256rxi82cpp73 URL + http://beta.quicklisp.org/archive/clfswm/2016-12-04/clfswm-20161204-git.tgz + MD5 dc976785ef899837ab0fc50a4ed6b740 NAME clfswm FILENAME clfswm DEPS + ((NAME clx FILENAME clx)) DEPENDENCIES (clx) VERSION 20161204-git SIBLINGS + NIL PARASITES NIL) */ diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix index 96d5867a3b30..412fd4b8dee5 100644 --- a/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix +++ b/pkgs/development/lisp-modules/quicklisp-to-nix-overrides.nix @@ -81,7 +81,7 @@ in postInstall = ((x.overrides y).postInstall or "") + '' export NIX_LISP_ASDF_PATHS="$NIX_LISP_ASDF_PATHS $out/lib/common-lisp/query-fs" - export HOME=$PWD + export HOME=$PWD export NIX_LISP_PRELAUNCH_HOOK="nix_lisp_build_system query-fs \ '(function query-fs:run-fs-with-cmdline-args)' '$linkedSystems'" "$out/bin/query-fs-lisp-launcher.sh" @@ -231,4 +231,14 @@ $out/lib/common-lisp/query-fs" cl-cffi-gtk-gdk = addNativeLibs [pkgs.gtk3]; cl-cffi-gtk-gtk3 = addNativeLibs [pkgs.gtk3]; cl-webkit2 = addNativeLibs [pkgs.webkitgtk]; + clfswm = x: { + overrides = y: (x.overrides y) // { + postInstall = '' + export NIX_LISP_PRELAUNCH_HOOK="nix_lisp_build_system clfswm '(function clfswm:main)'" + "$out/bin/clfswm-lisp-launcher.sh" + + cp "$out/lib/common-lisp/clfswm/clfswm" "$out/bin" + ''; + }; + }; } diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt b/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt index 52d626888a3a..383510df777e 100644 --- a/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt +++ b/pkgs/development/lisp-modules/quicklisp-to-nix-systems.txt @@ -82,6 +82,7 @@ cl-utilities cl-vectors cl-webkit2 cl-who +clfswm clx collectors command-line-arguments diff --git a/pkgs/development/lisp-modules/quicklisp-to-nix.nix b/pkgs/development/lisp-modules/quicklisp-to-nix.nix index 11244ec84a6d..cbaa13af9624 100644 --- a/pkgs/development/lisp-modules/quicklisp-to-nix.nix +++ b/pkgs/development/lisp-modules/quicklisp-to-nix.nix @@ -2848,6 +2848,13 @@ let quicklisp-to-nix-packages = rec { "fiasco" = quicklisp-to-nix-packages."fiasco"; })); + "clfswm" = buildLispPackage + ((f: x: (x // (f x))) + (qlOverrides."clfswm" or (x: {})) + (import ./quicklisp-to-nix-output/clfswm.nix { + inherit fetchurl; + "clx" = quicklisp-to-nix-packages."clx"; + })); "cl-who" = buildLispPackage ((f: x: (x // (f x)))