more refactor. adding shikane

This commit is contained in:
Matt Nish-Lapidus 2025-02-06 13:56:58 -05:00
parent 14ad4cd2c5
commit 7b26c73b59
18 changed files with 851 additions and 764 deletions

503
flake.lock generated
View file

@ -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": {

View file

@ -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
];
};

View file

@ -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;

View file

@ -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

View file

@ -1,6 +1,3 @@
[flavor]
dark = "monokai-vibrant"
light = "monokai-vibrant"
[manager]
hovered = { bg = "#cccccc", fg = "#000000" }

View file

@ -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

43
modules/home/email.nix Normal file
View file

@ -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;
};
}

53
modules/home/gnome.nix Normal file
View file

@ -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"];
};
};
}

View file

@ -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";
}
];

View file

@ -25,7 +25,7 @@
fade_on_empty = false;
check_color = "rgb(204, 136, 34)";
placeholder_text = "<i><span foreground=\"##cdd6f4\">hm ...</span></i>";
hide_input = false;
hide_input = false;
position = "0, 0";
halign = "center";
valign = "center";

10
modules/home/kanshi.nix Normal file
View file

@ -0,0 +1,10 @@
{ config, lib, pkgs, ... }:
{
services.kanshi = {
enable = true;
profiles
};
}

View file

@ -22,7 +22,9 @@
markup=true;
actions=true;
format="<b>%s</b>\n%b";
format=''
<b>%s</b>\n%b
'';
defaultTimeout=5000;
ignoreTimeout=false;
};

344
modules/home/niri.nix Normal file
View file

@ -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;
};
};
};
};
}

212
modules/home/shell-conf.nix Normal file
View file

@ -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;
}

21
modules/home/shikane.nix Normal file
View file

@ -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;
}

View file

@ -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;
}

View file

@ -1,5 +1,7 @@
{ pkgs, ... }:
{
programs.niri = {
enable = true;
package = pkgs.niri-unstable;
};
}

View file

@ -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=";
};
});
}