diff --git a/flake.lock b/flake.lock
index c560d9e..a687f1d 100644
--- a/flake.lock
+++ b/flake.lock
@@ -44,72 +44,6 @@
"url": "https://gt.emenel.ca/emenel/audio.nix.git"
}
},
- "base16": {
- "inputs": {
- "fromYaml": "fromYaml"
- },
- "locked": {
- "lastModified": 1732200724,
- "narHash": "sha256-+R1BH5wHhfnycySb7Sy5KbYEaTJZWm1h+LW1OtyhiTs=",
- "owner": "SenchoPens",
- "repo": "base16.nix",
- "rev": "153d52373b0fb2d343592871009a286ec8837aec",
- "type": "github"
- },
- "original": {
- "owner": "SenchoPens",
- "repo": "base16.nix",
- "type": "github"
- }
- },
- "base16-fish": {
- "flake": false,
- "locked": {
- "lastModified": 1622559957,
- "narHash": "sha256-PebymhVYbL8trDVVXxCvZgc0S5VxI7I1Hv4RMSquTpA=",
- "owner": "tomyun",
- "repo": "base16-fish",
- "rev": "2f6dd973a9075dabccd26f1cded09508180bf5fe",
- "type": "github"
- },
- "original": {
- "owner": "tomyun",
- "repo": "base16-fish",
- "type": "github"
- }
- },
- "base16-helix": {
- "flake": false,
- "locked": {
- "lastModified": 1725860795,
- "narHash": "sha256-Z2o8VBPW3I+KKTSfe25kskz0EUj7MpUh8u355Z1nVsU=",
- "owner": "tinted-theming",
- "repo": "base16-helix",
- "rev": "7f795bf75d38e0eea9fed287264067ca187b88a9",
- "type": "github"
- },
- "original": {
- "owner": "tinted-theming",
- "repo": "base16-helix",
- "type": "github"
- }
- },
- "base16-vim": {
- "flake": false,
- "locked": {
- "lastModified": 1731949548,
- "narHash": "sha256-XIDexXM66sSh5j/x70e054BnUsviibUShW7XhbDGhYo=",
- "owner": "tinted-theming",
- "repo": "base16-vim",
- "rev": "61165b1632409bd55e530f3dbdd4477f011cadc6",
- "type": "github"
- },
- "original": {
- "owner": "tinted-theming",
- "repo": "base16-vim",
- "type": "github"
- }
- },
"crane": {
"inputs": {
"nixpkgs": [
@@ -156,11 +90,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
- "lastModified": 1738775993,
- "narHash": "sha256-LNnDrJpy2oMn6IYXCCi5FWqEcT4gD1rnt0xM36Fov3Q=",
+ "lastModified": 1738861981,
+ "narHash": "sha256-QfphE389j/AkIBLrPti7iaWdzRlByxZ9PZdQ0Z9ES5g=",
"owner": "nix-community",
"repo": "emacs-overlay",
- "rev": "ed5cb1becdad3465ca08dd8ef0b156ae4390505f",
+ "rev": "1d19c1885c8807e044eb861162ee0120b6749dea",
"type": "github"
},
"original": {
@@ -191,22 +125,6 @@
"type": "github"
}
},
- "firefox-gnome-theme": {
- "flake": false,
- "locked": {
- "lastModified": 1734969791,
- "narHash": "sha256-A9PxLienMYJ/WUvqFie9qXrNC2MeRRYw7TG/q7DRjZg=",
- "owner": "rafaelmardojai",
- "repo": "firefox-gnome-theme",
- "rev": "92f4890bd150fc9d97b61b3583680c0524a8cafe",
- "type": "github"
- },
- "original": {
- "owner": "rafaelmardojai",
- "repo": "firefox-gnome-theme",
- "type": "github"
- }
- },
"flake-compat": {
"locked": {
"lastModified": 1733328505,
@@ -254,22 +172,6 @@
"type": "github"
}
},
- "flake-compat_4": {
- "flake": false,
- "locked": {
- "lastModified": 1696426674,
- "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
"flake-utils": {
"inputs": {
"systems": "systems_3"
@@ -325,10 +227,7 @@
},
"flake-utils_4": {
"inputs": {
- "systems": [
- "stylix",
- "systems"
- ]
+ "systems": "systems_7"
},
"locked": {
"lastModified": 1731533236,
@@ -362,24 +261,6 @@
"type": "github"
}
},
- "flake-utils_6": {
- "inputs": {
- "systems": "systems_9"
- },
- "locked": {
- "lastModified": 1731533236,
- "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
"freetype2": {
"flake": false,
"locked": {
@@ -397,53 +278,6 @@
"type": "github"
}
},
- "fromYaml": {
- "flake": false,
- "locked": {
- "lastModified": 1731966426,
- "narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
- "owner": "SenchoPens",
- "repo": "fromYaml",
- "rev": "106af9e2f715e2d828df706c386a685698f3223b",
- "type": "github"
- },
- "original": {
- "owner": "SenchoPens",
- "repo": "fromYaml",
- "type": "github"
- }
- },
- "git-hooks": {
- "inputs": {
- "flake-compat": [
- "stylix",
- "flake-compat"
- ],
- "gitignore": "gitignore_2",
- "nixpkgs": [
- "stylix",
- "nixpkgs"
- ],
- "nixpkgs-stable": [
- "stylix",
- "git-hooks",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1731363552,
- "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=",
- "owner": "cachix",
- "repo": "git-hooks.nix",
- "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "git-hooks.nix",
- "type": "github"
- }
- },
"gitignore": {
"inputs": {
"nixpkgs": [
@@ -466,45 +300,6 @@
"type": "github"
}
},
- "gitignore_2": {
- "inputs": {
- "nixpkgs": [
- "stylix",
- "git-hooks",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1709087332,
- "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
- "owner": "hercules-ci",
- "repo": "gitignore.nix",
- "rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "gitignore.nix",
- "type": "github"
- }
- },
- "gnome-shell": {
- "flake": false,
- "locked": {
- "lastModified": 1732369855,
- "narHash": "sha256-JhUWbcYPjHO3Xs3x9/Z9RuqXbcp5yhPluGjwsdE2GMg=",
- "owner": "GNOME",
- "repo": "gnome-shell",
- "rev": "dadd58f630eeea41d645ee225a63f719390829dc",
- "type": "github"
- },
- "original": {
- "owner": "GNOME",
- "ref": "47.2",
- "repo": "gnome-shell",
- "type": "github"
- }
- },
"harfbuzz": {
"flake": false,
"locked": {
@@ -529,11 +324,11 @@
]
},
"locked": {
- "lastModified": 1738753876,
- "narHash": "sha256-yXT82kERWL4R81hfun9BuT478Q6ut0dJzdQjAxjRS38=",
+ "lastModified": 1738841109,
+ "narHash": "sha256-sEgE3nifaRU5gfAx33ds0tx/j+qM0/5/bHopv/w6c0c=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "f20b7a8ab527a2482f13754dc00b2deaddc34599",
+ "rev": "f99c704fe3a4cf8d72b2d568ec80bc38be1a9407",
"type": "github"
},
"original": {
@@ -691,11 +486,11 @@
"systems": "systems_2"
},
"locked": {
- "lastModified": 1738748191,
- "narHash": "sha256-pFviZDdMHOgctZKqoCrzWTy8PgwuRWVbE6PRGqSYxLA=",
+ "lastModified": 1738841768,
+ "narHash": "sha256-T3fWbhR7mciPIh1Vd3zyigPJlgA2eGQPkSbm5v8M/xI=",
"owner": "hyprwm",
"repo": "hyprlock",
- "rev": "ce750456f9863d9d821fd0a2dc28d0b8ac0b5e26",
+ "rev": "dc6d72158c22d802845679e783231061b717ffd1",
"type": "github"
},
"original": {
@@ -818,11 +613,11 @@
"uv2nix": "uv2nix"
},
"locked": {
- "lastModified": 1738662252,
- "narHash": "sha256-N5Uao4Wkcfd4hb7eipDtJBBERbe7ctHT17Dsw6jtNcI=",
+ "lastModified": 1738789634,
+ "narHash": "sha256-phbQUuuRxGk9P9fxzza00pmxpc1hdWctn3/n9QwhMMM=",
"owner": "isd-project",
"repo": "isd",
- "rev": "827f5dad83f5dd0cf26bc28fed385ff3f4e5f54d",
+ "rev": "1ffa08db3e54a435e796093e53e91e8280f61661",
"type": "github"
},
"original": {
@@ -892,18 +687,54 @@
},
"niri": {
"inputs": {
- "nix-filter": "nix-filter_2",
+ "niri-stable": "niri-stable",
+ "niri-unstable": "niri-unstable",
"nixpkgs": [
"nixpkgs"
],
- "rust-overlay": "rust-overlay"
+ "nixpkgs-stable": "nixpkgs-stable_2",
+ "xwayland-satellite-stable": "xwayland-satellite-stable",
+ "xwayland-satellite-unstable": "xwayland-satellite-unstable"
},
"locked": {
- "lastModified": 1738768006,
- "narHash": "sha256-56jDYr/vqX4fobMJO2nWLjih03i6UV5bKtxI0nR4ZZA=",
+ "lastModified": 1738835520,
+ "narHash": "sha256-qvaWZ3PDJ0MC7t0wD8MdoGdVnMu0ps/ZWCXGepCFo5s=",
+ "owner": "sodiboo",
+ "repo": "niri-flake",
+ "rev": "4e72debdb5675b41278ddd492168b6c9c9ed09a0",
+ "type": "github"
+ },
+ "original": {
+ "owner": "sodiboo",
+ "repo": "niri-flake",
+ "type": "github"
+ }
+ },
+ "niri-stable": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1736614405,
+ "narHash": "sha256-AJ1rlgNOPb3/+DbS5hkhm21t6Oz8IgqLllwmZt0lyzk=",
"owner": "YaLTeR",
"repo": "niri",
- "rev": "690d6355057ebeba03cbd8ce4905145b834c72f8",
+ "rev": "e05bc269e678ecf828b96ae79c991c13b00b38a5",
+ "type": "github"
+ },
+ "original": {
+ "owner": "YaLTeR",
+ "ref": "v25.01",
+ "repo": "niri",
+ "type": "github"
+ }
+ },
+ "niri-unstable": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1738827003,
+ "narHash": "sha256-s3bBfzPRRWybVSzRYStIwQxSOH5/9kR0Kfqi4IsvG7E=",
+ "owner": "YaLTeR",
+ "repo": "niri",
+ "rev": "b31c0359ebce114ae2f9b4e5df3dc37a93f5115e",
"type": "github"
},
"original": {
@@ -966,21 +797,6 @@
"type": "github"
}
},
- "nix-filter_2": {
- "locked": {
- "lastModified": 1731533336,
- "narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=",
- "owner": "numtide",
- "repo": "nix-filter",
- "rev": "f7653272fd234696ae94229839a99b73c9ab7de0",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "nix-filter",
- "type": "github"
- }
- },
"nix-flatpak": {
"locked": {
"lastModified": 1738175805,
@@ -998,11 +814,11 @@
},
"nixos-hardware": {
"locked": {
- "lastModified": 1738638143,
- "narHash": "sha256-ZYMe4c4OCtIUBn5hx15PEGr0+B1cNEpl2dsaLxwY2W0=",
+ "lastModified": 1738816619,
+ "narHash": "sha256-5yRlg48XmpcX5b5HesdGMOte+YuCy9rzQkJz+imcu6I=",
"owner": "NixOS",
"repo": "nixos-hardware",
- "rev": "9bdd53f5908453e4d03f395eb1615c3e9a351f70",
+ "rev": "2eccff41bab80839b1d25b303b53d339fbb07087",
"type": "github"
},
"original": {
@@ -1043,6 +859,22 @@
"type": "github"
}
},
+ "nixpkgs-stable_2": {
+ "locked": {
+ "lastModified": 1738702386,
+ "narHash": "sha256-nJj8f78AYAxl/zqLiFGXn5Im1qjFKU8yBPKoWEeZN5M=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "030ba1976b7c0e1a67d9716b17308ccdab5b381e",
+ "type": "github"
+ },
+ "original": {
+ "owner": "NixOS",
+ "ref": "nixos-24.11",
+ "repo": "nixpkgs",
+ "type": "github"
+ }
+ },
"nixpkgs_2": {
"locked": {
"lastModified": 1708118438,
@@ -1216,7 +1048,6 @@
"paperwm": "paperwm",
"shikane": "shikane",
"sops-nix": "sops-nix",
- "stylix": "stylix",
"wezterm": "wezterm",
"yazi": "yazi"
}
@@ -1239,27 +1070,6 @@
}
},
"rust-overlay": {
- "inputs": {
- "nixpkgs": [
- "niri",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1733106880,
- "narHash": "sha256-aJmAIjZfWfPSWSExwrYBLRgXVvgF5LP1vaeUGOOIQ98=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "e66c0d43abf5bdefb664c3583ca8994983c332ae",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "rust-overlay_2": {
"inputs": {
"nixpkgs": [
"wezterm",
@@ -1280,7 +1090,7 @@
"type": "github"
}
},
- "rust-overlay_3": {
+ "rust-overlay_2": {
"inputs": {
"nixpkgs": [
"yazi",
@@ -1344,43 +1154,6 @@
"type": "github"
}
},
- "stylix": {
- "inputs": {
- "base16": "base16",
- "base16-fish": "base16-fish",
- "base16-helix": "base16-helix",
- "base16-vim": "base16-vim",
- "firefox-gnome-theme": "firefox-gnome-theme",
- "flake-compat": "flake-compat_4",
- "flake-utils": "flake-utils_4",
- "git-hooks": "git-hooks",
- "gnome-shell": "gnome-shell",
- "home-manager": [
- "home-manager"
- ],
- "nixpkgs": [
- "nixpkgs"
- ],
- "systems": "systems_7",
- "tinted-foot": "tinted-foot",
- "tinted-kitty": "tinted-kitty",
- "tinted-tmux": "tinted-tmux",
- "tinted-zed": "tinted-zed"
- },
- "locked": {
- "lastModified": 1736493302,
- "narHash": "sha256-6+z7mOa4d4+UH+do71u6WSugLWWiC1zBzYB+N5VYblQ=",
- "owner": "donovanglover",
- "repo": "stylix",
- "rev": "483505ec60470cfd7776a00825d41590e8bde4f1",
- "type": "github"
- },
- "original": {
- "owner": "donovanglover",
- "repo": "stylix",
- "type": "github"
- }
- },
"systemd-nix": {
"inputs": {
"nixpkgs": [
@@ -1522,87 +1295,6 @@
"type": "github"
}
},
- "systems_9": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "tinted-foot": {
- "flake": false,
- "locked": {
- "lastModified": 1726913040,
- "narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
- "owner": "tinted-theming",
- "repo": "tinted-foot",
- "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
- "type": "github"
- },
- "original": {
- "owner": "tinted-theming",
- "repo": "tinted-foot",
- "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
- "type": "github"
- }
- },
- "tinted-kitty": {
- "flake": false,
- "locked": {
- "lastModified": 1716423189,
- "narHash": "sha256-2xF3sH7UIwegn+2gKzMpFi3pk5DlIlM18+vj17Uf82U=",
- "owner": "tinted-theming",
- "repo": "tinted-kitty",
- "rev": "eb39e141db14baef052893285df9f266df041ff8",
- "type": "github"
- },
- "original": {
- "owner": "tinted-theming",
- "repo": "tinted-kitty",
- "rev": "eb39e141db14baef052893285df9f266df041ff8",
- "type": "github"
- }
- },
- "tinted-tmux": {
- "flake": false,
- "locked": {
- "lastModified": 1729501581,
- "narHash": "sha256-1ohEFMC23elnl39kxWnjzH1l2DFWWx4DhFNNYDTYt54=",
- "owner": "tinted-theming",
- "repo": "tinted-tmux",
- "rev": "f0e7f7974a6441033eb0a172a0342e96722b4f14",
- "type": "github"
- },
- "original": {
- "owner": "tinted-theming",
- "repo": "tinted-tmux",
- "type": "github"
- }
- },
- "tinted-zed": {
- "flake": false,
- "locked": {
- "lastModified": 1725758778,
- "narHash": "sha256-8P1b6mJWyYcu36WRlSVbuj575QWIFZALZMTg5ID/sM4=",
- "owner": "tinted-theming",
- "repo": "base16-zed",
- "rev": "122c9e5c0e6f27211361a04fae92df97940eccf9",
- "type": "github"
- },
- "original": {
- "owner": "tinted-theming",
- "repo": "base16-zed",
- "type": "github"
- }
- },
"uv2nix": {
"inputs": {
"nixpkgs": [
@@ -1630,14 +1322,14 @@
},
"wezterm": {
"inputs": {
- "flake-utils": "flake-utils_5",
+ "flake-utils": "flake-utils_4",
"freetype2": "freetype2",
"harfbuzz": "harfbuzz",
"libpng": "libpng",
"nixpkgs": [
"nixpkgs"
],
- "rust-overlay": "rust-overlay_2",
+ "rust-overlay": "rust-overlay",
"zlib": "zlib"
},
"locked": {
@@ -1656,20 +1348,53 @@
"type": "github"
}
},
+ "xwayland-satellite-stable": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1730166465,
+ "narHash": "sha256-nq7bouXQXaaPPo/E+Jbq+wNHnatD4dY8OxSrRqzvy6s=",
+ "owner": "Supreeeme",
+ "repo": "xwayland-satellite",
+ "rev": "a713cf46cb7db84a0d1b57c3a397c610cad3cf98",
+ "type": "github"
+ },
+ "original": {
+ "owner": "Supreeeme",
+ "ref": "v0.5",
+ "repo": "xwayland-satellite",
+ "type": "github"
+ }
+ },
+ "xwayland-satellite-unstable": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1737837494,
+ "narHash": "sha256-wIMowP8Juas4ZwMRcpc+58sZ0kKTDu8fm13THPmv/F8=",
+ "owner": "Supreeeme",
+ "repo": "xwayland-satellite",
+ "rev": "3944c9a0e40e5629f16ad023bbc90dac80d35a0f",
+ "type": "github"
+ },
+ "original": {
+ "owner": "Supreeeme",
+ "repo": "xwayland-satellite",
+ "type": "github"
+ }
+ },
"yazi": {
"inputs": {
- "flake-utils": "flake-utils_6",
+ "flake-utils": "flake-utils_5",
"nixpkgs": [
"nixpkgs"
],
- "rust-overlay": "rust-overlay_3"
+ "rust-overlay": "rust-overlay_2"
},
"locked": {
- "lastModified": 1738762515,
- "narHash": "sha256-0LIVLou8bMYf4guwRy6YTNhMwwKWC4Ty1pg0bHm4588=",
+ "lastModified": 1738824893,
+ "narHash": "sha256-QjsYBpcCzaQ8E8hCXYuWTZS4YnUm/7WrNvjd79YOUsk=",
"owner": "sxyazi",
"repo": "yazi",
- "rev": "e9fcab3b375afef4b0083687388b90e060a55a37",
+ "rev": "b1d2be067f1270a6c5728f62c754d6b2c8fdaa4b",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index c965724..95bdf4d 100644
--- a/flake.nix
+++ b/flake.nix
@@ -12,15 +12,6 @@
nix-flatpak.url = "github:gmodena/nix-flatpak"; # unstable branch
- stylix = {
- url = "github:donovanglover/stylix";
-
- inputs = {
- nixpkgs.follows = "nixpkgs";
- home-manager.follows = "home-manager";
- };
- };
-
yazi = {
url = "github:sxyazi/yazi";
inputs.nixpkgs.follows = "nixpkgs";
@@ -84,7 +75,7 @@
};
niri = {
- url = "github:YaLTeR/niri";
+ url = "github:sodiboo/niri-flake";
inputs.nixpkgs.follows = "nixpkgs";
};
};
@@ -134,6 +125,7 @@
modules = [
inputs.kmonad.nixosModules.default
inputs.musnix.nixosModules.musnix
+ inputs.niri.nixosModules.niri
./hosts/eddie/configuration.nix
];
};
@@ -149,8 +141,8 @@
modules = [
inputs.nix-flatpak.homeManagerModules.nix-flatpak
- inputs.stylix.homeManagerModules.stylix
inputs.sops-nix.homeManagerModules.sops
+ inputs.niri.homeModules.niri
./homes/emenel/default.nix
];
};
diff --git a/homes/emenel/default.nix b/homes/emenel/default.nix
index 3ee7ec1..db8d777 100644
--- a/homes/emenel/default.nix
+++ b/homes/emenel/default.nix
@@ -6,7 +6,9 @@
};
overlays = builtins.attrValues nix-config.overlays
++ [ inputs.emacs-overlay.overlays.default
- inputs.audio.overlays.default ];
+ inputs.audio.overlays.default
+ inputs.niri.overlays.niri
+ inputs.shikane.overlays.default ];
};
imports = with nix-config.homeModules; [
@@ -15,6 +17,11 @@
yazi
hyprlock
hypridle
+ shell-conf # shell, shell utils, cli tools, libs, tui's
+ email
+ gnome
+ niri
+ shikane
];
home = {
@@ -23,8 +30,6 @@
inputs.affinity-nix.packages.x86_64-linux.photo
inputs.affinity-nix.packages.x86_64-linux.publisher
inputs.affinity-nix.packages.x86_64-linux.designer
- inputs.shikane.packages.x86_64-linux.default
- inputs.isd.packages.x86_64-linux.default
]
(with nix-config.packages.x86_64-linux; [
@@ -49,45 +54,18 @@
bitwig-studio5-latest
wayback
- just
- yt-dlp
- erdtree
- age
- figlet
- ffmpeg-full
- rlwrap
- pinentry
- gcr
- gnutar
- libnotify
- unzip
- zip
- stdenv
- tldr
- delta
- htop
+
dconf
- dconf2nix
- readline
- gnupg
- imagemagick
- gnutls
- gettext
xorg.libX11
xorg.libxcb
freetype
- gnumake
- flex
- bison
- mesa
+
neofetch
nvd
- nitch
ripgrep-all
silver-searcher
maestral
maestral-gui
- nix-index
fstl
godot_4
sane-airscan
@@ -99,13 +77,6 @@
age
sops
- nix-du
-
- usbutils
- pciutils
- util-linux
- coreutils
- binutils
protonplus
ispell
(aspellWithDicts (dicts: with dicts; [ en en-computers en-science es fr ]))
@@ -113,7 +84,6 @@
appimage-run
libappimage
transmission_4-gtk
- lsof
guile
python311
python311Packages.pip
@@ -135,17 +105,17 @@
serapeum
]))
- kdlfmt
+
kdotool
ccl
racket
gdu
poppler_utils
- editorconfig-core-c
+
cljfmt
libxml2
gdtoolkit_4
- openssl.out
+
nixfmt-rfc-style
wl-clipboard
clipse
@@ -154,22 +124,9 @@
rustup
shfmt
html-tidy
- libsecret
- samba4Full
- shellcheck
wayland-utils
- libffi.dev
- nodejs_18
- platformio-core
- icloudpd
libheif.out
openal
- pkg-config
- ftgl
- gperf
- numbat
- glpng
- nurl
freecad
procs
rpi-imager
@@ -178,30 +135,6 @@
prusa-slicer
- # global node packages
- nodePackages.typescript-language-server
- nodePackages.vscode-langservers-extracted
- nodePackages.prettier
- nodePackages.javascript-typescript-langserver
- nodePackages.stylelint
- nodePackages.svelte-language-server
- nodePackages.typescript
- nodePackages.js-beautify
-
- nixd
- nixdoc
- nix-init
-
- git-annex
-
- fishPlugins.foreign-env
- fishPlugins.z
- fishPlugins.fzf-fish
- fishPlugins.bass
- fishPlugins.autopair
- fishPlugins.forgit
- fishPlugins.colored-man-pages
- imgcat
via
vial
bitwarden-cli
@@ -214,30 +147,15 @@
tdf
pdfchain
pdftk
- ghostscript
zathura
gpu-viewer
- mesa-demos
- gnomeExtensions.just-perfection
- gnomeExtensions.dash-to-dock
- gnomeExtensions.paperwm
- gnomeExtensions.custom-hot-corners-extended
- gnomeExtensions.media-controls
- gnomeExtensions.looking-glass-button
- gnomeExtensions.auto-power-profile
- gnomeExtensions.appindicator
- gnome-software
- gnome-tweaks
- gnome-photos
- gnome-keyring
- ulauncher
+
+
wl-mirror
- nwg-look
+
soundconverter
- # gtop
wmctrl
- # colloid-gtk-theme
colloid-icon-theme
whitesur-gtk-theme
whitesur-cursors
@@ -249,9 +167,8 @@
squirreldisk
papers
newsflash
- planify
+
borgbackup
- vorta
stirling-pdf
trash-cli
ripdrag
@@ -265,19 +182,19 @@
wine = wineWowPackages.stagingFull;
})
- chayang
sway-launcher-desktop
swayosd
+
spice
spice-gtk
spice-protocol
virt-viewer
virt-manager
- bfg-repo-cleaner
+
thunderbird-latest
emojify
smile
- gnomeExtensions.smile-complementary-extension
+
impression
zoom-us
nyxt
@@ -289,14 +206,12 @@
slack
signal-desktop
eyedropper
- calcurse
onlyoffice-desktopeditors
libreoffice
hyphenDicts.en_US
plex-mpv-shim
plexamp
- rmpc
- resources
+
carla
switcheroo
tenacity
@@ -332,9 +247,11 @@
ardour
dockfmt
impala
- playerctl
+
+ fractal
+
oculante
- door-knocker
+
farge
halloy
paleta
@@ -424,81 +341,11 @@
};
};
- accounts.email = {
- maildirBasePath = "/home/emenel/.maildir";
- accounts = {
- "matt@emenel.ca" = {
- address = "matt@emenel.ca";
- realName = "Matt Nish-Lapidus";
- primary = true;
- mu.enable = true;
- mbsync = {
- enable = true;
- create = "maildir";
- };
- msmtp.enable = true;
- flavor = "fastmail.com";
- passwordCommand = "rbw get mu4e-fastmail";
- };
- "admin@studyoftime.org" = {
- address = "admin@studyoftime.org";
- realName = "ISST Web Admin";
- mu.enable = true;
- mbsync = {
- enable = true;
- create = "maildir";
- };
- msmtp.enable = true;
- passwordCommand = "rbw get admin@studyoftime";
- imap.host = "imap.dreamhost.com";
- smtp.host = "imap.dreamhost.com";
- userName = "admin@studyoftime.org";
- };
- };
- };
programs = {
home-manager.enable = true;
- direnv = {
- enable = true;
- nix-direnv.enable = true;
- };
- fish = {
- enable = true;
- shellAliases = {
- "ls" = "eza";
- ".j" = "just -g";
- "em" = "emacsclient -n -r";
- "mkdir" = "mkdir -pv";
- };
- interactiveShellInit = ''
- bind --erase \ct
- '';
- plugins = [
- {
- name = "upto";
- src = pkgs.fetchFromGitHub {
- owner = "Markcial";
- repo = "upto";
- rev = "2d1f35453fb55747d50da8c1cb1809840f99a646";
- sha256 = "sha256-Lv2XtP2x9dkIkUUjMBWVpAs/l55Ztu7gIjKYH6ZzK4s=";
- };
- }
- ];
- };
- zoxide = {
- enable = true;
- };
- starship = {
- enable = true;
- };
- mu.enable = true;
- mbsync = {
- enable = true;
- };
- msmtp.enable = true;
emacs = {
enable = true;
package = ((pkgs.emacsPackagesFor pkgs.emacs29-pgtk).emacsWithPackages (
@@ -521,120 +368,11 @@
]
));
};
- ripgrep = {
- enable = true;
- };
- thefuck = {
- enable = true;
- };
- wezterm = {
- enable = true;
- package = inputs.wezterm.packages.${pkgs.system}.default;
- # extraConfig = lib.readFile ./dotfiles/dot_config/wezterm/wezterm.lua;
- };
- bat = {
- enable = true;
- };
- borgmatic = {
- enable = true;
- backups = {
- eddie = {
- location = {
- patterns = [
- "R /home/emenel"
- "- home/emenel/.cache"
- "- home/emenel/.nix*"
- "- home/emenel/.steam*"
- "- home/emenel/Dropbox"
- "- home/emenel/Sync"
- "- home/emenel/.dropbox*"
- "- home/emenel/.BitwigStudio"
- "- home/emenel/.local/share/bitwig"
- ];
- repositories = [
- {
- "path" = "ssh://oyi3ydnz@oyi3ydnz.repo.borgbase.com/./repo";
- "label" = "eddie on borgbase";
- }
- ];
- };
- retention = {
- keepDaily = 3;
- keepHourly = 3;
- keepMonthly = 2;
- };
- };
- };
- };
- eza = {
- enable = true;
- };
- fd = {
- enable = true;
- };
- fzf = {
- enable = true;
- enableFishIntegration = false;
- };
- broot = {
- enable = true;
- };
- git = {
- enable = true;
- lfs.enable = true;
- };
- htop.enable = true;
+
pandoc.enable = true;
password-store.enable = true;
- waybar = {
- enable = true;
- package = pkgs.waybar;
- };
- eww = {
- enable = true;
- configDir = ./dotfiles/dot_config/eww;
- };
- lazygit.enable = true;
- jq.enable = true;
firefox.enable = true;
- rbw = {
- enable = true;
- package = nix-config.packages.x86_64-linux.rbw-latest;
- };
- };
-
- dconf.settings = {
- "org/gnome/desktop/background" = {
- picture-options = "none";
- primary-color = "#000000";
- };
-
- "org/gnome/desktop/interface" = {
- color-scheme = "prefer-dark";
- };
-
- "org/gnome/shell/keybindings" = {
- shift-overview-up = ["disabled"];
- shift-overview-down = ["disabled"];
- switch-to-application-1 = ["disabled"];
- switch-to-application-2 = ["disabled"];
- switch-to-application-3 = ["disabled"];
- switch-to-application-4 = ["disabled"];
- switch-to-application-5 = ["disabled"];
- switch-to-application-6 = ["disabled"];
- switch-to-application-7 = ["disabled"];
- switch-to-application-8 = ["disabled"];
- switch-to-application-9 = ["disabled"];
- switch-to-application-10 = ["disabled"];
- };
-
- "org/gnome/desktop/wm/keybindings" = {
- switch-to-workspace-up = ["disabled"];
- switch-to-workspace-down = ["disabled"];
- move-to-workspace-up = ["disabled"];
- move-to-workspace-down = ["disabled"];
- };
};
nixpkgs.config.packageOverrides = pkgs: {
@@ -687,17 +425,6 @@
};
};
- # stylix = {
- # enable = true;
- # base16Scheme = "${pkgs.base16-schemes}/share/themes/oxocarbon-dark.yaml";
- # image = ./akira.png;
- # cursor = {
- # package = pkgs.bibata-cursors;
- # name = "Bibtata-Modern-Classic";
- # size = 24;
- # };
- # };
-
xdg.systemDirs.data = [
"/home/emenel/.local/share/applications/wine/Programs"
"/home/emenel/.local/share/applications"
@@ -728,41 +455,19 @@
# moving files!
xdg.configFile."halloy/config.toml".source = ./dotfiles/dot_config/halloy/config.toml;
xdg.configFile."waybar".source = ./dotfiles/dot_config/waybar;
- xdg.configFile."starship.toml".source = ./dotfiles/dot_config/starship.toml;
- xdg.configFile."niri/config.kdl".source = ./dotfiles/dot_config/niri/config.kdl;
- xdg.configFile."wezterm".source = ./dotfiles/dot_config/wezterm;
- xdg.configFile."just/justfile".source = ./dotfiles/dot_config/just/justfile;
- xdg.configFile."git".source = ./dotfiles/dot_config/git;
- xdg.configFile."rbw".source = ./dotfiles/dot_config/rbw;
- xdg.configFile."shikane".source = ./dotfiles/dot_config/shikane;
- home.file.".ssh/config".source = ./dotfiles/dot_ssh/config;
home.file.".npmrc".source = ./dotfiles/dot_npmrc;
home.file.".vst3/yabridge/yabridge.toml".source = ./dotfiles/dot_vst3/yabridge.toml;
home.file.".sbclrc".source = ./dotfiles/dot_sbclrc;
home.file.".signature".source = ./dotfiles/dot_signature;
- home.file.".config/fish/functions" = {
- source = ./dotfiles/dot_config/fish/functions;
- recursive = true;
- };
-
- home.file.".config/fish/completions" = {
- source = ./dotfiles/dot_config/fish/completions;
- recursive = true;
- };
xdg.configFile."emacs".enable = false;
- # home.file.".msmtprc".source = ./dotfiles/dot_msmtprc;
- # home.file.".mbsyncrc".source = ./dotfiles/dot_mbsyncrc;
- # xdg.configFile."isyncrc".enable = false;
-
home.file.".local/bin" = {
source = ./dotfiles/dot_local/bin;
recursive = true;
};
- home.file.".local/share/flf".source = ./dotfiles/dot_local/share/flf;
home.file.".local/share/The Usual Suspects/Vavra" = {
recursive = true;
diff --git a/homes/emenel/dotfiles/dot_config/wezterm/wezterm.lua b/homes/emenel/dotfiles/dot_config/wezterm/wezterm.lua
index dfbda15..c9c6346 100644
--- a/homes/emenel/dotfiles/dot_config/wezterm/wezterm.lua
+++ b/homes/emenel/dotfiles/dot_config/wezterm/wezterm.lua
@@ -46,7 +46,7 @@ config.enable_wayland = false;
config.font_size = 14
config.font = wezterm.font {
family = 'JetBrains Mono',
- weight = 'Medium'
+ -- weight = 'Normal'
}
-- config.enable_scroll_bar = true
diff --git a/homes/emenel/dotfiles/dot_config/yazi/theme.toml b/homes/emenel/dotfiles/dot_config/yazi/theme.toml
index 5eec05f..0f5f387 100644
--- a/homes/emenel/dotfiles/dot_config/yazi/theme.toml
+++ b/homes/emenel/dotfiles/dot_config/yazi/theme.toml
@@ -1,6 +1,3 @@
[flavor]
dark = "monokai-vibrant"
light = "monokai-vibrant"
-
-[manager]
-hovered = { bg = "#cccccc", fg = "#000000" }
diff --git a/hosts/eddie/configuration.nix b/hosts/eddie/configuration.nix
index 1a1de47..096f782 100644
--- a/hosts/eddie/configuration.nix
+++ b/hosts/eddie/configuration.nix
@@ -19,7 +19,7 @@
allowUnfree = true;
};
overlays = builtins.attrValues nix-config.overlays
- ++ [ inputs.niri.overlays.default ];
+ ++ [ inputs.niri.overlays.niri ];
};
# environment.etc."nix/inputs/nixpkgs".source = "${nixpkgs}";
@@ -429,7 +429,6 @@
#programs.gnupg.enable = true;
programs.git.enable = true;
- services.gnome.core-developer-tools.enable = true;
environment.gnome.excludePackages = with pkgs; [
cheese
geary
diff --git a/modules/home/email.nix b/modules/home/email.nix
new file mode 100644
index 0000000..d0b0c14
--- /dev/null
+++ b/modules/home/email.nix
@@ -0,0 +1,43 @@
+{
+ accounts.email = {
+ maildirBasePath = "/home/emenel/.maildir";
+ accounts = {
+ "matt@emenel.ca" = {
+ address = "matt@emenel.ca";
+ realName = "Matt Nish-Lapidus";
+ primary = true;
+ mu.enable = true;
+ mbsync = {
+ enable = true;
+ create = "maildir";
+ };
+ msmtp.enable = true;
+ flavor = "fastmail.com";
+ passwordCommand = "rbw get mu4e-fastmail";
+ };
+
+ "admin@studyoftime.org" = {
+ address = "admin@studyoftime.org";
+ realName = "ISST Web Admin";
+ mu.enable = true;
+ mbsync = {
+ enable = true;
+ create = "maildir";
+ };
+ msmtp.enable = true;
+ passwordCommand = "rbw get admin@studyoftime";
+ imap.host = "imap.dreamhost.com";
+ smtp.host = "imap.dreamhost.com";
+ userName = "admin@studyoftime.org";
+ };
+ };
+ };
+
+ programs = {
+ mu.enable = true;
+ mbsync = {
+ enable = true;
+ };
+ msmtp.enable = true;
+ };
+}
diff --git a/modules/home/gnome.nix b/modules/home/gnome.nix
new file mode 100644
index 0000000..ce58cc0
--- /dev/null
+++ b/modules/home/gnome.nix
@@ -0,0 +1,53 @@
+{ pkgs, ... }:
+
+{
+
+ home.packages = with pkgs; [
+ gnomeExtensions.just-perfection
+ gnomeExtensions.dash-to-dock
+ gnomeExtensions.paperwm
+ gnomeExtensions.custom-hot-corners-extended
+ gnomeExtensions.media-controls
+ gnomeExtensions.looking-glass-button
+ gnomeExtensions.auto-power-profile
+ gnomeExtensions.appindicator
+ gnome-software
+ gnome-tweaks
+ gnome-photos
+ gnome-keyring
+ ];
+
+ dconf.settings = {
+ "org/gnome/desktop/background" = {
+ picture-options = "none";
+ primary-color = "#000000";
+ };
+
+ "org/gnome/desktop/interface" = {
+ color-scheme = "prefer-dark";
+ };
+
+ "org/gnome/shell/keybindings" = {
+ shift-overview-up = ["disabled"];
+ shift-overview-down = ["disabled"];
+ switch-to-application-1 = ["disabled"];
+ switch-to-application-2 = ["disabled"];
+ switch-to-application-3 = ["disabled"];
+ switch-to-application-4 = ["disabled"];
+ switch-to-application-5 = ["disabled"];
+ switch-to-application-6 = ["disabled"];
+ switch-to-application-7 = ["disabled"];
+ switch-to-application-8 = ["disabled"];
+ switch-to-application-9 = ["disabled"];
+ switch-to-application-10 = ["disabled"];
+ };
+
+ "org/gnome/desktop/wm/keybindings" = {
+ switch-to-workspace-up = ["disabled"];
+ switch-to-workspace-down = ["disabled"];
+ move-to-workspace-up = ["disabled"];
+ move-to-workspace-down = ["disabled"];
+ };
+ };
+
+}
diff --git a/modules/home/hypridle.nix b/modules/home/hypridle.nix
index 688bd0c..7f27fb6 100644
--- a/modules/home/hypridle.nix
+++ b/modules/home/hypridle.nix
@@ -8,52 +8,41 @@
lock_cmd = "pidof hyprlock || hyprlock";
before_sleep_cmd = "loginctl lock-session";
};
- # TODO: add monitor shut off timout
+
# battery timers
listener = [
- {
- timeout = 30;
- on-timeout = "systemd-ac-power || light -S 0";
- on-resume = "systemd-ac-power || light -I";
- }
-
{
timeout = "30";
- on-timeout = "systemd-ac-power || light -s razer/0003:1532:02B6.0004/backlight -S 0";
- on-resume = "systemd-ac-power || light -s razer/0003:1532:02B6.0004/backlight -S 40";
+ on-timeout = "systemd-ac-power || light -S 0 && light -s razer/0003:1532:02B6.0004/backlight -S 0";
+ on-resume = "systemd-ac-power || light -I && light -s razer/0003:1532:02B6.0004/backlight -S 40";
}
{
timeout = "120";
- on-timeout = "systemd-ac-power || systemd-ac-power && loginctl lock-session";
+ on-timeout = "systemd-ac-power || loginctl lock-session && niri msg action power-off-monitors";
}
{
- timeout = "600";
- on-timeout = "systemd-ac-power || systemctl suspend";
+ timeout = "300";
+ on-timeout = "systemd-ac-power || loginctl lock-session && systemctl suspend";
}
# ac power timers
{
timeout = "60";
- on-timeout = "systemd-ac-power && light -S 0";
- on-resume = "systemd-ac-power && light -I";
+ on-timeout = "systemd-ac-power && light -S 0 && light -s razer/0003:1532:02B6.0004/backlight -S 0";
+ on-resume = "systemd-ac-power && light -I && light -s razer/0003:1532:02B6.0004/backlight -S 40";
}
- {
- timeout = "60";
- on-timeout = "systemd-ac-power && light -s razer/0003:1532:02B6.0004/backlight -S 0";
- on-resume = "systemd-ac-power && light -s razer/0003:1532:02B6.0004/backlight -S 40";
- }
+ { timeout = "180";
+ on-timeout = "systemd-ac-power && loginctl lock-session"; }
+
+ { timeout = "300";
+ on-timeout = "systemd-ac-power && loginctl lock-session && niri msg action power-off-monitors"; }
{
- timeout = "300";
- on-timeout = "systemd-ac-power && loginctl lock-session";
- }
-
- {
- timeout = "1800";
- on-timeout = "systemd-ac-power && systemctl suspend";
+ timeout = "900";
+ on-timeout = "systemd-ac-power && loginctl lock-session && systemctl suspend";
}
];
diff --git a/modules/home/hyprlock.nix b/modules/home/hyprlock.nix
index 0c323d9..8eb3044 100644
--- a/modules/home/hyprlock.nix
+++ b/modules/home/hyprlock.nix
@@ -25,7 +25,7 @@
fade_on_empty = false;
check_color = "rgb(204, 136, 34)";
placeholder_text = "hm ...";
- hide_input = false;
+ hide_input = false;
position = "0, 0";
halign = "center";
valign = "center";
diff --git a/modules/home/kanshi.nix b/modules/home/kanshi.nix
new file mode 100644
index 0000000..581133e
--- /dev/null
+++ b/modules/home/kanshi.nix
@@ -0,0 +1,10 @@
+{ config, lib, pkgs, ... }:
+
+{
+ services.kanshi = {
+ enable = true;
+
+ profiles
+
+ };
+}
diff --git a/modules/home/mako.nix b/modules/home/mako.nix
index e33d632..d836f3b 100644
--- a/modules/home/mako.nix
+++ b/modules/home/mako.nix
@@ -22,7 +22,9 @@
markup=true;
actions=true;
- format="%s\n%b";
+ format=''
+ %s\n%b
+ '';
defaultTimeout=5000;
ignoreTimeout=false;
};
diff --git a/modules/home/niri.nix b/modules/home/niri.nix
new file mode 100644
index 0000000..02d7448
--- /dev/null
+++ b/modules/home/niri.nix
@@ -0,0 +1,344 @@
+{ config, pkgs, ... }:
+
+{
+
+ programs = {
+ waybar = {
+ enable = true;
+ package = pkgs.waybar;
+ };
+ eww = {
+ enable = true;
+ configDir = ../../homes/emenel/dotfiles/dot_config/eww;
+ };
+
+ niri = {
+ package = pkgs.niri-unstable;
+ enable = true;
+ settings = {
+ hotkey-overlay.skip-at-startup = true;
+ screenshot-path = "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png";
+ prefer-no-csd = true;
+
+ spawn-at-startup = [
+ { command = ["maestral_qt"]; }
+ # { command = ["xwayland-satellite" ":0"]; }
+ { command = ["clipse" "-listen"]; }
+ # { command = ["waybar"]; }
+ { command = ["swayosd-server"]; }
+ { command = ["plexamp"]; }
+ { command = [ "systemctl --user restart waybar.service mako.service hypridle.service xwayland-satellite.service" ]; }
+ # { command = ["hypridle"]; }
+ ];
+
+ workspaces = {
+ "main" = {};
+ "scratchpad" = {};
+ };
+
+ input = {
+ keyboard.xkb.layout = "us";
+
+ touchpad = {
+ natural-scroll = true;
+ scroll-method = "two-finger";
+ dwt = true;
+ tap = false;
+ tap-button-map = "left-right-middle";
+ click-method = "clickfinger";
+ };
+
+ mouse = {
+ natural-scroll = true;
+ accel-speed = 0.1;
+ accel-profile = "adaptive";
+ };
+
+ workspace-auto-back-and-forth = true;
+ };
+
+ outputs = {
+ "eDP-1" = {
+ mode = {
+ height = 2560;
+ width = 1600;
+ };
+ background-color = "#000000";
+ scale = 1;
+ };
+
+ "PNP(BNQ) BenQ PD2725U N2N00414019" = {
+ mode = {
+ height = 3840;
+ width = 2160;
+ refresh = 59.997;
+ };
+ background-color = "#000000";
+ scale = 1;
+ };
+ };
+
+ environment = {
+ DISPLAY = ":0";
+ QT_QPA_PLATFORM = "wayland";
+ XDG_CURRENT_DESKTOP = "niri";
+ XDG_SESSION_TYPE = "wayland";
+ MOZ_ENABLE_WAYLAND = "1";
+ };
+
+ cursor = {
+ theme = "Bibata-Modern-Classic";
+ size = 32;
+ hide-after-inactive-ms = 30000;
+ };
+
+ animations.slowdown = 1.0;
+
+ layout = {
+ gaps = 10;
+ center-focused-column = "never";
+ always-center-single-column = true;
+
+ preset-column-widths = [
+ { proportion = 0.33333; }
+ { proportion = 0.5; }
+ { proportion = 0.66667; }
+ ];
+
+ preset-window-heights = [
+ { proportion = 1. / 3.; }
+ { proportion = 1. / 2.; }
+ { proportion = 2. / 3.; }
+ ];
+
+ default-column-width = { proportion = 0.5; };
+
+ focus-ring = {
+ enable = true;
+ active.gradient = {
+ from = "#d8bfffdd";
+ to = "#BD93FF99";
+ angle = 0;
+ in' = "srgb-linear";
+ };
+ width = 2;
+ };
+
+ border = {
+ enable = true;
+ inactive = {
+ gradient = {
+ from = "#333333";
+ to = "#000000";
+ angle = 180;
+ in' = "srgb-linear";
+ };
+ };
+ active.color = "#000";
+ width = 2;
+ };
+ };
+
+ window-rules = [
+ # global window rule for shared config
+ { geometry-corner-radius = {
+ top-left = 8.0;
+ top-right = 8.0;
+ bottom-left = 8.0;
+ bottom-right = 8.0;
+ };
+ clip-to-geometry = true; }
+
+ { matches = [
+ {app-id="Calculator";}
+ {app-id="Color Picker";}
+ {app-id="Volume Control";}
+ ];
+ open-floating = true; }
+
+ { matches = [
+ {app-id="Plexamp";}
+ {app-id="scratchpad";}
+ ];
+ open-on-workspace = "scratchpad";
+ open-floating = true; }
+
+ { matches = [{app-id="launcher";}];
+ open-floating = true; }
+
+ # Open the Firefox picture-in-picture player as floating by default.
+ { # This app-id regular expression will work for both:
+ # host Firefox (app-id is "firefox")
+ # Flatpak Firefox (app-id is "org.mozilla.firefox")
+ matches = [ { app-id= "r#\"firefox$\"# title=\"^Picture-in-Picture$\""; } ];
+ open-floating = true; }
+ ];
+
+ binds = with config.lib.niri.actions; let
+ wez = spawn "wezterm" "--config-file" "/home/emenel/.config/wezterm/launcher.lua" "start" "--always-new-process";
+ wezlaunch = wez "--class" "launcher";
+ in {
+ # shows a list of important hotkeys.
+ "Mod+Shift+Slash".action = show-hotkey-overlay;
+
+ "Mod+Space".action = wezlaunch "sway-launcher-desktop";
+
+ "Mod+Ctrl+T".action = spawn "wezterm";
+ "Mod+Ctrl+E".action = spawn "emacsclient" "-r" "-n";
+ "Mod+Ctrl+B".action = spawn "firefox";
+ "Mod+Ctrl+V".action = wezlaunch "clipse";
+ "Mod+Ctrl+F".action = wez "yazi";
+
+ "Mod+Shift+A".action = spawn "hyprlock";
+
+ "XF86AudioRaiseVolume" = {
+ allow-when-locked = true;
+ action = spawn "swayosd-client" "--output-volume" "raise";
+ };
+
+ "XF86AudioLowerVolume" = {
+ allow-when-locked=true;
+ action = spawn "swayosd-client" "--output-volume" "lower";
+ };
+
+ "XF86AudioMute" = {
+ allow-when-locked=true;
+ action = spawn "swayosd-client" "--output-volume" "mute-toggle";
+ };
+
+ "XF86AudioMicMute" = {
+ allow-when-locked=true;
+ action = spawn "swayosd-client" "--input-volume" "mute-toggle";
+ };
+
+ "XF86MonBrightnessUp" = {
+ allow-when-locked=true;
+ action = spawn "swayosd-client" "--brightness" "raise";
+ };
+
+ "XF86MonBrightnessDown" = {
+ allow-when-locked=true;
+ action = spawn "swayosd-client" "--brightness" "lower";
+ };
+
+ "Mod+Q".action = close-window;
+
+ "Mod+Left".action = focus-column-left;
+ "Mod+Down".action = focus-window-down;
+ "Mod+Up".action = focus-window-up;
+ "Mod+Right".action = focus-column-right;
+ "Mod+H".action = focus-column-left;
+ "Mod+J".action = focus-window-down;
+ "Mod+K".action = focus-window-up;
+ "Mod+L".action = focus-column-right;
+
+ "Mod+Ctrl+Left".action = move-column-left;
+ "Mod+Ctrl+Down".action = move-window-down;
+ "Mod+Ctrl+Up".action = move-window-up;
+ "Mod+Ctrl+Right".action = move-column-right;
+ "Mod+Ctrl+H".action = move-column-left;
+ "Mod+Ctrl+J".action = move-window-down;
+ "Mod+Ctrl+K".action = move-window-up;
+ "Mod+Ctrl+L".action = move-column-right;
+
+ "Mod+Home".action = focus-column-first;
+ "Mod+End".action = focus-column-last;
+ "Mod+Ctrl+Home".action = move-column-to-first;
+ "Mod+Ctrl+End".action = move-column-to-last;
+
+ "Mod+Shift+Left".action = focus-monitor-left;
+ "Mod+Shift+Down".action = focus-monitor-down;
+ "Mod+Shift+Up".action = focus-monitor-up;
+ "Mod+Shift+Right".action = focus-monitor-right;
+ "Mod+Shift+H".action = focus-monitor-left;
+ "Mod+Shift+J".action = focus-monitor-down;
+ "Mod+Shift+K".action = focus-monitor-up;
+ "Mod+Shift+L".action = focus-monitor-right;
+
+ "Mod+Shift+Ctrl+Left".action = move-column-to-monitor-left;
+ "Mod+Shift+Ctrl+Down".action = move-column-to-monitor-down;
+ "Mod+Shift+Ctrl+Up".action = move-column-to-monitor-up;
+ "Mod+Shift+Ctrl+Right".action = move-column-to-monitor-right;
+ "Mod+Shift+Ctrl+H".action = move-column-to-monitor-left;
+ "Mod+Shift+Ctrl+J".action = move-column-to-monitor-down;
+ "Mod+Shift+Ctrl+K".action = move-column-to-monitor-up;
+ "Mod+Shift+Ctrl+L".action = move-column-to-monitor-right;
+
+ "Mod+Page_Down".action = focus-workspace-down;
+ "Mod+Page_Up".action = focus-workspace-up;
+ "Mod+U".action = focus-workspace-down;
+ "Mod+I".action = focus-workspace-up;
+ "Mod+Alt+Down".action = move-column-to-workspace-down;
+ "Mod+Alt+Up".action = move-column-to-workspace-up;
+ "Mod+Ctrl+U".action = move-column-to-workspace-down;
+ "Mod+Ctrl+I".action = move-column-to-workspace-up;
+
+ "Mod+Shift+Page_Down".action = move-workspace-down;
+ "Mod+Shift+Page_Up".action = move-workspace-up;
+ "Mod+Shift+U".action = move-workspace-down;
+ "Mod+Shift+I".action = move-workspace-up;
+
+ "Mod+WheelScrollDown" = {
+ action = focus-workspace-down;
+ cooldown-ms = 150;
+ };
+ "Mod+WheelScrollUp" = {
+ action = focus-workspace-up;
+ cooldown-ms = 150;
+ };
+ "Mod+Ctrl+WheelScrollDown" = {
+ action = move-column-to-workspace-down;
+ cooldown-ms = 150;
+ };
+ "Mod+Ctrl+WheelScrollUp" = {
+ action = move-column-to-workspace-up;
+ cooldown-ms = 150;
+ };
+
+ "Mod+WheelScrollRight".action = focus-column-right;
+ "Mod+WheelScrollLeft".action = focus-column-left;
+ "Mod+Ctrl+WheelScrollRight".action = move-column-right;
+ "Mod+Ctrl+WheelScrollLeft".action = move-column-left;
+
+ "Mod+Shift+WheelScrollDown".action = focus-column-right;
+ "Mod+Shift+WheelScrollUp".action = focus-column-left;
+ "Mod+Ctrl+Shift+WheelScrollDown".action = move-column-right;
+ "Mod+Ctrl+Shift+WheelScrollUp".action = move-column-left;
+
+ "Mod+BracketLeft".action = consume-or-expel-window-left;
+ "Mod+BracketRight".action = consume-or-expel-window-right;
+ "Mod+Comma".action = consume-window-into-column;
+ "Mod+Period".action = expel-window-from-column;
+
+ "Mod+R".action = switch-preset-column-width;
+ "Mod+Shift+R".action = switch-preset-window-height;
+ "Mod+Ctrl+R".action = reset-window-height;
+ "Mod+F".action = maximize-column;
+ "Mod+Shift+F".action = fullscreen-window;
+ "Mod+C".action = center-column;
+
+ "Mod+Minus".action = set-column-width "-10%";
+ "Mod+Equal".action = set-column-width "+10%";
+ "Mod+Shift+Minus".action = set-window-height "-10%";
+ "Mod+Shift+Equal".action = set-window-height "+10%";
+
+ "Mod+Ctrl+X".action = toggle-window-floating;
+ "Mod+Alt+X".action = switch-focus-between-floating-and-tiling;
+ "Mod+X".action = focus-workspace "scratchpad";
+
+ "Print".action = screenshot;
+ "Ctrl+Print".action = screenshot-screen;
+ "Alt+Print".action = screenshot-window;
+
+ # The quit action will show a confirmation dialog to avoid accidental exits.
+ "Mod+Shift+E".action = quit;
+
+ # Powers off the monitors. To turn them back on, do any input like
+ # moving the mouse or pressing any other key.
+ "Mod+Shift+P".action = power-off-monitors;
+
+ };
+ };
+ };
+ };
+}
diff --git a/modules/home/shell-conf.nix b/modules/home/shell-conf.nix
new file mode 100644
index 0000000..3519235
--- /dev/null
+++ b/modules/home/shell-conf.nix
@@ -0,0 +1,212 @@
+{ nix-config, inputs, pkgs, ... }:
+{
+
+ home.packages = with pkgs; [
+
+ inputs.isd.packages.x86_64-linux.default
+
+ just
+ readline
+ rlwrap
+ yt-dlp
+ erdtree
+ age
+ figlet
+ ffmpeg-full
+
+ pinentry
+ gcr
+ gnutar
+ libnotify
+ unzip
+ zip
+ stdenv
+ tldr
+ delta
+ htop
+ gnupg
+ imagemagick
+ gnutls
+ gettext
+ gnumake
+ nix-index
+ nix-du
+ usbutils
+ pciutils
+ util-linux
+ coreutils
+ binutils
+ editorconfig-core-c
+ openssl.out
+ libsecret
+ samba4Full
+ shellcheck
+ libffi.dev
+ nodejs_18
+ platformio-core
+ icloudpd
+ pkg-config
+ ftgl
+ gperf
+ numbat
+ glpng
+ nurl
+ # global node packages
+ nodePackages.typescript-language-server
+ nodePackages.vscode-langservers-extracted
+ nodePackages.prettier
+ nodePackages.javascript-typescript-langserver
+ nodePackages.stylelint
+ nodePackages.svelte-language-server
+ nodePackages.typescript
+ nodePackages.js-beautify
+
+ nixd
+ nixdoc
+ nix-init
+
+ git-annex
+ bfg-repo-cleaner
+
+ fishPlugins.foreign-env
+ fishPlugins.fzf-fish
+ fishPlugins.bass
+ fishPlugins.autopair
+ fishPlugins.forgit
+ fishPlugins.colored-man-pages
+
+ imgcat
+ ghostscript
+ playerctl
+
+
+ ];
+
+ programs = {
+ direnv = {
+ enable = true;
+ nix-direnv.enable = true;
+ };
+ fish = {
+ enable = true;
+ shellAliases = {
+ "ls" = "eza";
+ ".j" = "just -g";
+ "em" = "emacsclient -n -r";
+ "mkdir" = "mkdir -pv";
+ };
+ interactiveShellInit = ''
+ bind --erase \ct
+ '';
+ plugins = [
+ {
+ name = "upto";
+ src = pkgs.fetchFromGitHub {
+ owner = "Markcial";
+ repo = "upto";
+ rev = "2d1f35453fb55747d50da8c1cb1809840f99a646";
+ sha256 = "sha256-Lv2XtP2x9dkIkUUjMBWVpAs/l55Ztu7gIjKYH6ZzK4s=";
+ };
+ }
+ ];
+ };
+ zoxide = {
+ enable = true;
+ };
+ starship = {
+ enable = true;
+ };
+ ripgrep = {
+ enable = true;
+ };
+ thefuck = {
+ enable = true;
+ };
+ wezterm = {
+ enable = true;
+ package = inputs.wezterm.packages.${pkgs.system}.default;
+ # extraConfig = lib.readFile ./dotfiles/dot_config/wezterm/wezterm.lua;
+ };
+ bat = {
+ enable = true;
+ };
+ borgmatic = {
+ enable = true;
+ backups = {
+ eddie = {
+ location = {
+ patterns = [
+ "R /home/emenel"
+ "- home/emenel/.cache"
+ "- home/emenel/.nix*"
+ "- home/emenel/.steam*"
+ "- home/emenel/Dropbox"
+ "- home/emenel/Sync"
+ "- home/emenel/.dropbox*"
+ "- home/emenel/.BitwigStudio"
+ "- home/emenel/.local/share/bitwig"
+ ];
+ repositories = [
+ {
+ "path" = "ssh://oyi3ydnz@oyi3ydnz.repo.borgbase.com/./repo";
+ "label" = "eddie on borgbase";
+ }
+ ];
+ };
+ retention = {
+ keepDaily = 3;
+ keepHourly = 3;
+ keepMonthly = 2;
+ };
+ };
+ };
+ };
+ eza = {
+ enable = true;
+ };
+ fd = {
+ enable = true;
+ };
+ fzf = {
+ enable = true;
+ enableFishIntegration = false;
+ };
+ broot = {
+ enable = true;
+ };
+ git = {
+ enable = true;
+ lfs.enable = true;
+ };
+ htop.enable = true;
+ lazygit.enable = true;
+ jq.enable = true;
+ rbw = {
+ enable = true;
+ package = nix-config.packages.x86_64-linux.rbw-latest;
+ };
+ };
+
+ home.file.".ssh/config".source = ../../homes/emenel/dotfiles/dot_ssh/config;
+
+ xdg.configFile."starship.toml".source = ../../homes/emenel/dotfiles/dot_config/starship.toml;
+ xdg.configFile."wezterm" = {
+ recursive = true;
+ source = ../../homes/emenel/dotfiles/dot_config/wezterm;
+ };
+ xdg.configFile."just/justfile".source = ../../homes/emenel/dotfiles/dot_config/just/justfile;
+ xdg.configFile."git".source = ../../homes/emenel/dotfiles/dot_config/git;
+ xdg.configFile."rbw".source = ../../homes/emenel/dotfiles/dot_config/rbw;
+ home.file.".config/fish/functions" = {
+ source = ../../homes/emenel/dotfiles/dot_config/fish/functions;
+ recursive = true;
+ };
+
+ home.file.".config/fish/completions" = {
+ source = ../../homes/emenel/dotfiles/dot_config/fish/completions;
+ recursive = true;
+ };
+
+ home.file.".local/share/flf".source = ../../homes/emenel/dotfiles/dot_local/share/flf;
+
+}
diff --git a/modules/home/shikane.nix b/modules/home/shikane.nix
new file mode 100644
index 0000000..b23b8a0
--- /dev/null
+++ b/modules/home/shikane.nix
@@ -0,0 +1,21 @@
+{ config, lib, pkgs, ... }:
+
+{
+ home.packages = [ pkgs.shikane ];
+
+ systemd.user.services.shikane = {
+ Unit = {
+ Description = "Shikane";
+ PartOf = [ "graphical-session.target" ];
+ };
+ Install = {
+ WantedBy = [ "graphical-session.target" ];
+ };
+ Service = {
+ Type = "simple";
+ ExecStart = "shikane";
+ };
+ };
+
+ xdg.configFile."shikane".source = ../../homes/emenel/dotfiles/dot_config/shikane;
+}
diff --git a/modules/home/yazi.nix b/modules/home/yazi.nix
index a857e3f..9ac0360 100644
--- a/modules/home/yazi.nix
+++ b/modules/home/yazi.nix
@@ -14,4 +14,6 @@
};
};
+ xdg.configFile."yazi/theme.toml".source = ../../homes/emenel/dotfiles/dot_config/yazi/theme.toml;
+ xdg.configFile."yazi/flavors".source = ../../homes/emenel/dotfiles/dot_config/yazi/flavors;
}
diff --git a/modules/system/niri.nix b/modules/system/niri.nix
index 43ff794..91602c1 100644
--- a/modules/system/niri.nix
+++ b/modules/system/niri.nix
@@ -1,5 +1,7 @@
+{ pkgs, ... }:
{
programs.niri = {
enable = true;
+ package = pkgs.niri-unstable;
};
}
diff --git a/overlays/bitwig-studio.nix b/overlays/bitwig-studio.nix
deleted file mode 100644
index 0cb2a13..0000000
--- a/overlays/bitwig-studio.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-final: prev: {
- bitwig-studio = prev.bitwig-studio.overrideAttrs (old: {
- src = prev.fetchurl {
- name = "bitwig-studio-5.3-beta-7.deb";
- url = "https://downloads-secure.bitwig.com/5.3%20Beta%207/bitwig-studio-5.3-beta-7.deb?__token__=st=1738511951.0~exp=1738512551.0~hmac=06d510d143491f9bf2444aec8b2876ea606d9208e2753dcf15710fb3c2ceb0d3&source_url=/dl/Bitwig%20Studio/5.3%20Beta%207/installer_linux/";
- sha256 = "sha256-CqDDz/N3Cm4BqkOI6PYACkyXZkqIRV7A3G5q7ekrMaE=";
- };
- });
-}