/
default.nix
58 lines (49 loc) · 1.67 KB
/
default.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
{ pkgs, ... }:
let
# xmobarSrc = pkgs.fetchgit {
# url = "https://codeberg.org/xmobar/xmobar.git";
# rev = "26726e092beb0851743c3fb046e82ce323d818e6";
# sha256 = "sha256-VT54ZrUazWG6fPNVRLhfXhjdBWgtZyQ8y/i9TIv1RZw=";
# };
# myHaskellPackages = pkgs.haskellPackages.override {
# overrides = self: super: {
# xmobar = pkgs.haskell.lib.overrideCabal super.xmobar {
# src = xmobarSrc;
# };
# };
# };
in
{
xmonad = {
enable = true;
enableContribAndExtras = true;
extraPackages = haskellPackages: [
haskellPackages.dbus
haskellPackages.monad-logger
haskellPackages.xmonad-contrib
];
config = ./lib/xmonad.hs;
libFiles = {
"Colors.hs" = ./lib/Colors.hs;
"Keys.hs" = ./lib/Keys.hs;
"Layout.hs" = ./lib/Layout.hs;
"Logging.hs" = ./lib/Logging.hs;
"Managers.hs" = ./lib/Managers.hs;
"Workspaces.hs" = ./lib/Workspaces.hs;
"Paths.hs" = pkgs.writeText "Paths.hs" ''
module Paths where
chrome = "${pkgs.google-chrome}/bin/google-chrome-stable"
htop = "${pkgs.htop}/bin/htop"
kitty = "${pkgs.kitty}/bin/kitty"
obsidian = "${pkgs.obsidian}/bin/obsidian"
qalculate = "${pkgs.qalculate-gtk}/bin/qalculate-gtk"
signal = "${pkgs.signal-desktop}/bin/signal-desktop"
slack = "${pkgs.slack}/bin/slack"
spotify = "${pkgs.spotify}/bin/spotify"
thunderbird = "${pkgs.thunderbird-bin}/bin/thunderbird"
xmobar = "${pkgs.xmobar}/bin/xmobar"
zeal = "${pkgs.zeal}/bin/zeal"
'';
};
};
}