2bwm: init at 0.2

Changed files
+72
nixos
modules
services
x11
window-managers
pkgs
applications
window-managers
top-level
+37
nixos/modules/services/x11/window-managers/2bwm.nix
···
+
{ config, lib, pkgs, ... }:
+
+
with lib;
+
+
let
+
+
cfg = config.services.xserver.windowManager."2bwm";
+
+
in
+
+
{
+
+
###### interface
+
+
options = {
+
services.xserver.windowManager."2bwm".enable = mkEnableOption "2bwm";
+
};
+
+
+
###### implementation
+
+
config = mkIf cfg.enable {
+
+
services.xserver.windowManager.session = singleton
+
{ name = "2bwm";
+
start =
+
''
+
${pkgs."2bwm"}/bin/2bwm &
+
waitPID=$!
+
'';
+
};
+
+
environment.systemPackages = [ pkgs."2bwm" ];
+
+
};
+
+
}
+1
nixos/modules/services/x11/window-managers/default.nix
···
{
imports = [
+
./2bwm.nix
./afterstep.nix
./bspwm.nix
./compiz.nix
+30
pkgs/applications/window-managers/2bwm/default.nix
···
+
{ stdenv, fetchFromGitHub, patches
+
, libxcb, xcbutilkeysyms, xcbutilwm
+
, libX11, xcbutil, xcbutilxrm }:
+
+
stdenv.mkDerivation rec {
+
version = "0.2";
+
name = "2bwm-${version}";
+
+
src = fetchFromGitHub {
+
owner = "venam";
+
repo = "2bwm";
+
rev = "v${version}";
+
sha256 = "1la1ixpm5knsj2gvdcmxzj1jfbzxvhmgzps4f5kbvx5047xc6ici";
+
};
+
+
# Allow users set their own list of patches
+
inherit patches;
+
+
buildInputs = [ libxcb xcbutilkeysyms xcbutilwm libX11 xcbutil xcbutilxrm ];
+
+
installPhase = "make install DESTDIR=$out PREFIX=\"\"";
+
+
meta = with stdenv.lib; {
+
homepage = "https://github.com/venam/2bwm";
+
description = "A fast floating WM written over the XCB library and derived from mcwm";
+
license = licenses.mit;
+
maintainers = [ maintainers.sternenseemann ];
+
platforms = platforms.unix;
+
};
+
}
+4
pkgs/top-level/all-packages.nix
···
### APPLICATIONS
+
"2bwm" = callPackage ../applications/window-managers/2bwm {
+
patches = config."2bwm".patches or [];
+
};
+
a2jmidid = callPackage ../applications/audio/a2jmidid { };
aacgain = callPackage ../applications/audio/aacgain { };