xmonad: put the correct xmonad binary in PATH
This commit is contained in:
parent
1d83d90b39
commit
67eb45ddce
@ -4,13 +4,15 @@ with lib;
|
|||||||
let
|
let
|
||||||
inherit (lib) mkOption mkIf optionals literalExample;
|
inherit (lib) mkOption mkIf optionals literalExample;
|
||||||
cfg = config.services.xserver.windowManager.xmonad;
|
cfg = config.services.xserver.windowManager.xmonad;
|
||||||
xmonad = pkgs.xmonad-with-packages.override {
|
|
||||||
|
xmonad-vanilla = pkgs.xmonad-with-packages.override {
|
||||||
ghcWithPackages = cfg.haskellPackages.ghcWithPackages;
|
ghcWithPackages = cfg.haskellPackages.ghcWithPackages;
|
||||||
packages = self: cfg.extraPackages self ++
|
packages = self: cfg.extraPackages self ++
|
||||||
optionals cfg.enableContribAndExtras
|
optionals cfg.enableContribAndExtras
|
||||||
[ self.xmonad-contrib self.xmonad-extras ];
|
[ self.xmonad-contrib self.xmonad-extras ];
|
||||||
};
|
};
|
||||||
xmonadBin = pkgs.writers.writeHaskell "xmonad" {
|
|
||||||
|
xmonad-config = pkgs.writers.writeHaskellBin "xmonad" {
|
||||||
ghc = cfg.haskellPackages.ghc;
|
ghc = cfg.haskellPackages.ghc;
|
||||||
libraries = [ cfg.haskellPackages.xmonad ] ++
|
libraries = [ cfg.haskellPackages.xmonad ] ++
|
||||||
cfg.extraPackages cfg.haskellPackages ++
|
cfg.extraPackages cfg.haskellPackages ++
|
||||||
@ -19,6 +21,7 @@ let
|
|||||||
inherit (cfg) ghcArgs;
|
inherit (cfg) ghcArgs;
|
||||||
} cfg.config;
|
} cfg.config;
|
||||||
|
|
||||||
|
xmonad = if (cfg.config != null) then xmonad-config else xmonad-vanilla;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options = {
|
options = {
|
||||||
@ -101,10 +104,8 @@ in
|
|||||||
services.xserver.windowManager = {
|
services.xserver.windowManager = {
|
||||||
session = [{
|
session = [{
|
||||||
name = "xmonad";
|
name = "xmonad";
|
||||||
start = let
|
start = ''
|
||||||
xmonadCommand = if (cfg.config != null) then xmonadBin else "${xmonad}/bin/xmonad";
|
systemd-cat -t xmonad -- ${xmonad}/bin/xmonad ${lib.escapeShellArgs cfg.xmonadCliArgs} &
|
||||||
in ''
|
|
||||||
systemd-cat -t xmonad -- ${xmonadCommand} ${lib.escapeShellArgs cfg.xmonadCliArgs} &
|
|
||||||
waitPID=$!
|
waitPID=$!
|
||||||
'';
|
'';
|
||||||
}];
|
}];
|
||||||
|
Loading…
Reference in New Issue
Block a user