stumpwm: update and refactoring
This commit updates the stumpwm to version 0.9.8. Futhermore, it refactors the expression quite a lot: * stumpwm has been moved from lisp modules to window-managers. * stumpwm has been added to the window managers NixOS knows about, this enables the user to add stumpwm as a default window manager in his NixOS configuration like with Xmonad or i3. * the package has been split into stumpwm and stumpwmContrib. This is due to the fact that development of stumpwm and its extension modules has been split into two repositories. As of today, the release is the last one before this split. This split into two packages only reflect those upcoming upstream changes already. It is planned to make the addition of the extension modules voluntarily, like with Xmonads option "enableContribAndExtras". Furthermore it might be possible to add an option to compile stumpwm with clisp instead of sbcl.
This commit is contained in:
parent
aafca4dd51
commit
7536d41287
@ -18,6 +18,7 @@ in
|
||||
./i3.nix
|
||||
./herbstluftwm.nix
|
||||
./bspwm.nix
|
||||
./stumpwm.nix
|
||||
];
|
||||
|
||||
options = {
|
||||
@ -60,4 +61,4 @@ in
|
||||
config = {
|
||||
services.xserver.displayManager.session = cfg.session;
|
||||
};
|
||||
}
|
||||
}
|
30
nixos/modules/services/x11/window-managers/stumpwm.nix
Normal file
30
nixos/modules/services/x11/window-managers/stumpwm.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.xserver.windowManager.stumpwm;
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
services.xserver.windowManager.stumpwm = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = "Enable the stumpwm tiling window manager.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.xserver.windowManager.session = singleton {
|
||||
name = "stumpwm";
|
||||
start = "
|
||||
${pkgs.stumpwm}/bin/stumpwm
|
||||
";
|
||||
};
|
||||
environment.systemPackages = [ pkgs.stumpwm ];
|
||||
};
|
||||
}
|
31
pkgs/applications/window-managers/stumpwm/contrib.nix
Normal file
31
pkgs/applications/window-managers/stumpwm/contrib.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchgit }:
|
||||
|
||||
let
|
||||
tag = "0.9.8";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "stumpwmContrib-${tag}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/stumpwm/stumpwm";
|
||||
rev = "refs/tags/${tag}";
|
||||
sha256 = "0a0lwwlly4hlmb30bk6dmi6bsdsy37g4crvv1z24gixippyv1qzm";
|
||||
};
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp -a $src/contrib $out/
|
||||
cp -a $src/contrib/stumpish $out/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Extension modules for the StumpWM";
|
||||
homepage = https://github.com/stumpwm/;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ _1126 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
41
pkgs/applications/window-managers/stumpwm/default.nix
Normal file
41
pkgs/applications/window-managers/stumpwm/default.nix
Normal file
@ -0,0 +1,41 @@
|
||||
{ stdenv, pkgs, fetchgit, autoconf, sbcl, lispPackages, xdpyinfo, texinfo4, makeWrapper, stumpwmContrib }:
|
||||
|
||||
let
|
||||
tag = "0.9.8";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "stumpwm-${tag}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/stumpwm/stumpwm";
|
||||
rev = "refs/tags/${tag}";
|
||||
sha256 = "0a0lwwlly4hlmb30bk6dmi6bsdsy37g4crvv1z24gixippyv1qzm";
|
||||
};
|
||||
|
||||
buildInputs = [ texinfo4 autoconf lispPackages.clx lispPackages.cl-ppcre sbcl makeWrapper stumpwmContrib ];
|
||||
|
||||
phases = [ "unpackPhase" "preConfigurePhase" "configurePhase" "installPhase" ];
|
||||
|
||||
preConfigurePhase = ''
|
||||
$src/autogen.sh
|
||||
mkdir -pv $out/bin
|
||||
'';
|
||||
|
||||
configurePhase = ''
|
||||
./configure --prefix=$out --with-contrib-dir=${pkgs.stumpwmContrib}/contrib
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
make
|
||||
make install
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A tiling window manager for X11";
|
||||
homepage = https://github.com/stumpwm/;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ _1126 ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
@ -10183,7 +10183,8 @@ let
|
||||
|
||||
stp = callPackage ../applications/science/logic/stp {};
|
||||
|
||||
stumpwm = lispPackages.stumpwm;
|
||||
stumpwm = callPackage ../applications/window-managers/stumpwm {};
|
||||
stumpwmContrib = callPackage ../applications/window-managers/stumpwm/contrib.nix {};
|
||||
|
||||
sublime = callPackage ../applications/editors/sublime { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user