Merge pull request #6907 from jb55/spectrwm-patch
add: spectrwm window manager
This commit is contained in:
commit
007ab6f4df
@ -95,6 +95,7 @@
|
||||
iyzsong = "Song Wenwu <iyzsong@gmail.com>";
|
||||
j-keck = "Jürgen Keck <jhyphenkeck@gmail.com>";
|
||||
jagajaga = "Arseniy Seroka <ars.seroka@gmail.com>";
|
||||
jb55 = "William Casarin <bill@casarin.me>";
|
||||
jcumming = "Jack Cummings <jack@mudshark.org>";
|
||||
jgeerds = "Jascha Geerds <jg@ekby.de>";
|
||||
jirkamarsik = "Jirka Marsik <jiri.marsik89@gmail.com>";
|
||||
|
@ -18,6 +18,7 @@ in
|
||||
./openbox.nix
|
||||
./sawfish.nix
|
||||
./stumpwm.nix
|
||||
./spectrwm.nix
|
||||
./twm.nix
|
||||
./windowmaker.nix
|
||||
./wmii.nix
|
||||
|
33
nixos/modules/services/x11/window-managers/spectrwm.nix
Normal file
33
nixos/modules/services/x11/window-managers/spectrwm.nix
Normal file
@ -0,0 +1,33 @@
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.xserver.windowManager.spectrwm;
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
services.xserver.windowManager.spectrwm = {
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
example = true;
|
||||
description = "Enable the spectrwm window manager.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
services.xserver.windowManager = {
|
||||
session = [{
|
||||
name = "spectrwm";
|
||||
start = ''
|
||||
${pkgs.spectrwm}/bin/spectrwm &
|
||||
waitPID=$!
|
||||
'';
|
||||
}];
|
||||
};
|
||||
environment.systemPackages = [ pkgs.spectrwm ];
|
||||
};
|
||||
}
|
59
pkgs/applications/window-managers/spectrwm/default.nix
Normal file
59
pkgs/applications/window-managers/spectrwm/default.nix
Normal file
@ -0,0 +1,59 @@
|
||||
{ fetchurl
|
||||
, coreutils
|
||||
, libX11
|
||||
, libXrandr
|
||||
, libXcursor
|
||||
, libXft
|
||||
, libXt
|
||||
, libxcb
|
||||
, xcbutil
|
||||
, xcb-util-cursor
|
||||
, xcbutilkeysyms
|
||||
, xcbutilwm
|
||||
, stdenv
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "spectrwm-${version}";
|
||||
version = "2.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/conformal/spectrwm/archive/SPECTRWM_2_6_2.tar.gz";
|
||||
sha256 = "1pc9p3vwa4bsv76myqkqhp4cxspr72s5igi7cs9xrpd4xx6xc90s";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
libX11
|
||||
libxcb
|
||||
libXrandr
|
||||
libXcursor
|
||||
libXft
|
||||
libXt
|
||||
xcbutil
|
||||
xcb-util-cursor
|
||||
xcbutilkeysyms
|
||||
xcbutilwm
|
||||
];
|
||||
|
||||
sourceRoot = "spectrwm-SPECTRWM_2_6_2/linux";
|
||||
makeFlags="PREFIX=$(out)";
|
||||
installPhase = "PREFIX=$out make install";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A tiling window manager";
|
||||
homepage = "https://github.com/conformal/spectrwm";
|
||||
maintainers = with maintainers; [ jb55 ];
|
||||
license = licenses.isc;
|
||||
platforms = platforms.all;
|
||||
|
||||
longDescription = ''
|
||||
spectrwm is a small dynamic tiling window manager for X11. It
|
||||
tries to stay out of the way so that valuable screen real estate
|
||||
can be used for much more important stuff. It has sane defaults
|
||||
and does not require one to learn a language to do any
|
||||
configuration. It was written by hackers for hackers and it
|
||||
strives to be small, compact and fast.
|
||||
'';
|
||||
};
|
||||
|
||||
}
|
@ -10732,6 +10732,8 @@ let
|
||||
|
||||
hydrogen = callPackage ../applications/audio/hydrogen { };
|
||||
|
||||
spectrwm = callPackage ../applications/window-managers/spectrwm { };
|
||||
|
||||
i3 = callPackage ../applications/window-managers/i3 {
|
||||
xcb-util-cursor = if stdenv.isDarwin then xcb-util-cursor-HEAD else xcb-util-cursor;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user