aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--flake.lock513
-rw-r--r--hosts/jupiter/config.nix20
-rw-r--r--hosts/jupiter/hjem.nix (renamed from hosts/jupiter/home.nix)5
-rw-r--r--hosts/jupiter/nixos.nix (renamed from hosts/jupiter/system.nix)9
-rw-r--r--modules/desktop/hjem/programs/firefox.nix37
-rw-r--r--modules/desktop/nixos/programs/blackbox.nix2
-rw-r--r--modules/desktop/nixos/programs/firefox.nix6
-rw-r--r--modules/desktop/options.nix1
-rw-r--r--modules/services/nixos/selfhost/default.nix6
-rw-r--r--modules/terminal/hjem/programs/broot.nix29
-rw-r--r--modules/terminal/hjem/programs/tmux.nix31
-rw-r--r--modules/terminal/options.nix1
12 files changed, 69 insertions, 591 deletions
diff --git a/flake.lock b/flake.lock
deleted file mode 100644
index 4c34f1e..0000000
--- a/flake.lock
+++ /dev/null
@@ -1,513 +0,0 @@
-{
- "nodes": {
- "crane": {
- "locked": {
- "lastModified": 1754269165,
- "narHash": "sha256-0tcS8FHd4QjbCVoxN9jI+PjHgA4vc/IjkUSp+N3zy0U=",
- "owner": "ipetkov",
- "repo": "crane",
- "rev": "444e81206df3f7d92780680e45858e31d2f07a08",
- "type": "github"
- },
- "original": {
- "owner": "ipetkov",
- "repo": "crane",
- "type": "github"
- }
- },
- "disko": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1758287904,
- "narHash": "sha256-IGmaEf3Do8o5Cwp1kXBN1wQmZwQN3NLfq5t4nHtVtcU=",
- "owner": "nix-community",
- "repo": "disko",
- "rev": "67ff9807dd148e704baadbd4fd783b54282ca627",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "disko",
- "type": "github"
- }
- },
- "firefox-csshacks": {
- "flake": false,
- "locked": {
- "lastModified": 1760110610,
- "narHash": "sha256-p5mxDrxlQ7itJ3Y5ZC/ge5ym1vmKpjpC9EQo2KQfZAQ=",
- "owner": "MrOtherGuy",
- "repo": "firefox-csshacks",
- "rev": "a53bb3bf96a050719f68535acf9a71a67a2af15e",
- "type": "github"
- },
- "original": {
- "owner": "MrOtherGuy",
- "repo": "firefox-csshacks",
- "type": "github"
- }
- },
- "flake-compat": {
- "locked": {
- "lastModified": 1747046372,
- "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-compat_2": {
- "flake": false,
- "locked": {
- "lastModified": 1747046372,
- "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
- "owner": "edolstra",
- "repo": "flake-compat",
- "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
- "type": "github"
- },
- "original": {
- "owner": "edolstra",
- "repo": "flake-compat",
- "type": "github"
- }
- },
- "flake-parts": {
- "inputs": {
- "nixpkgs-lib": "nixpkgs-lib"
- },
- "locked": {
- "lastModified": 1759362264,
- "narHash": "sha256-wfG0S7pltlYyZTM+qqlhJ7GMw2fTF4mLKCIVhLii/4M=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "758cf7296bee11f1706a574c77d072b8a7baa881",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-parts_2": {
- "inputs": {
- "nixpkgs-lib": [
- "lanzaboote",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1754091436,
- "narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=",
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd",
- "type": "github"
- },
- "original": {
- "owner": "hercules-ci",
- "repo": "flake-parts",
- "type": "github"
- }
- },
- "flake-utils": {
- "inputs": {
- "systems": "systems_2"
- },
- "locked": {
- "lastModified": 1701680307,
- "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
- "owner": "numtide",
- "repo": "flake-utils",
- "rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "flake-utils",
- "type": "github"
- }
- },
- "gitignore": {
- "inputs": {
- "nixpkgs": [
- "lanzaboote",
- "pre-commit-hooks-nix",
- "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"
- }
- },
- "hjem": {
- "inputs": {
- "ndg": "ndg",
- "nixpkgs": [
- "nixpkgs"
- ],
- "smfh": "smfh"
- },
- "locked": {
- "lastModified": 1760328401,
- "narHash": "sha256-/sGqPoyYJohw1ZmcMxEYvx9Qdui6X7bNjCLx9Jmul3c=",
- "owner": "feel-co",
- "repo": "hjem",
- "rev": "31f969f69f02b62e417bcc39571a605977cb89fa",
- "type": "github"
- },
- "original": {
- "owner": "feel-co",
- "repo": "hjem",
- "type": "github"
- }
- },
- "lanzaboote": {
- "inputs": {
- "crane": "crane",
- "flake-compat": "flake-compat_2",
- "flake-parts": "flake-parts_2",
- "nixpkgs": [
- "nixpkgs"
- ],
- "pre-commit-hooks-nix": "pre-commit-hooks-nix",
- "rust-overlay": "rust-overlay_2"
- },
- "locked": {
- "lastModified": 1756744479,
- "narHash": "sha256-EyZXusK/wRD3V9vDh00W2Re3Eg8UQ+LjVBQrrH9dq1U=",
- "owner": "nix-community",
- "repo": "lanzaboote",
- "rev": "747b7912f49e2885090c83364d88cf853a020ac1",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "lanzaboote",
- "type": "github"
- }
- },
- "multibg-wayland": {
- "flake": false,
- "locked": {
- "lastModified": 1756985778,
- "narHash": "sha256-D3YMTn+YVfqXm9+g4gDw/fegidBgco3VbMSlZBt2ysI=",
- "owner": "gergo-salyi",
- "repo": "multibg-wayland",
- "rev": "6574f43432c46a9afd6f0fd1e44b7ed7f625ebc3",
- "type": "github"
- },
- "original": {
- "owner": "gergo-salyi",
- "repo": "multibg-wayland",
- "type": "github"
- }
- },
- "ndg": {
- "inputs": {
- "flake-compat": "flake-compat",
- "flake-parts": "flake-parts",
- "nixpkgs": [
- "hjem",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1760102695,
- "narHash": "sha256-DyamtLt6KW/qkNs/kMnF/E+xlf6iFBMMF3m54boTHeY=",
- "owner": "feel-co",
- "repo": "ndg",
- "rev": "6319eb4afa6fd42be5c8c9ed012e95e3f32c16eb",
- "type": "github"
- },
- "original": {
- "owner": "feel-co",
- "repo": "ndg",
- "type": "github"
- }
- },
- "nixos-facter-modules": {
- "locked": {
- "lastModified": 1756491981,
- "narHash": "sha256-lXyDAWPw/UngVtQfgQ8/nrubs2r+waGEYIba5UX62+k=",
- "owner": "numtide",
- "repo": "nixos-facter-modules",
- "rev": "c1b29520945d3e148cd96618c8a0d1f850965d8c",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "nixos-facter-modules",
- "type": "github"
- }
- },
- "nixpkgs": {
- "locked": {
- "lastModified": 1760284886,
- "narHash": "sha256-TK9Kr0BYBQ/1P5kAsnNQhmWWKgmZXwUQr4ZMjCzWf2c=",
- "owner": "NixOS",
- "repo": "nixpkgs",
- "rev": "cf3f5c4def3c7b5f1fc012b3d839575dbe552d43",
- "type": "github"
- },
- "original": {
- "owner": "NixOS",
- "ref": "nixos-unstable",
- "repo": "nixpkgs",
- "type": "github"
- }
- },
- "nixpkgs-lib": {
- "locked": {
- "lastModified": 1754788789,
- "narHash": "sha256-x2rJ+Ovzq0sCMpgfgGaaqgBSwY+LST+WbZ6TytnT9Rk=",
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "rev": "a73b9c743612e4244d865a2fdee11865283c04e6",
- "type": "github"
- },
- "original": {
- "owner": "nix-community",
- "repo": "nixpkgs.lib",
- "type": "github"
- }
- },
- "nocargo": {
- "inputs": {
- "flake-utils": "flake-utils",
- "nixpkgs": [
- "nixpkgs"
- ],
- "registry-crates-io": "registry-crates-io"
- },
- "locked": {
- "lastModified": 1745995660,
- "narHash": "sha256-Cca7/uDRwfo4UnPhZX31+vQ7chKr9nJsMvwykGllDVA=",
- "owner": "oxalica",
- "repo": "nocargo",
- "rev": "089f487c2c123454c8b9a381a99999b63c53d1d6",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "nocargo",
- "type": "github"
- }
- },
- "pre-commit-hooks-nix": {
- "inputs": {
- "flake-compat": [
- "lanzaboote",
- "flake-compat"
- ],
- "gitignore": "gitignore",
- "nixpkgs": [
- "lanzaboote",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1750779888,
- "narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
- "type": "github"
- },
- "original": {
- "owner": "cachix",
- "repo": "pre-commit-hooks.nix",
- "type": "github"
- }
- },
- "registry-crates-io": {
- "flake": false,
- "locked": {
- "lastModified": 1704732624,
- "narHash": "sha256-FWX5JX33ievm6JuIEp1lI5EPndYt8s6anU+fQBYuFKc=",
- "owner": "rust-lang",
- "repo": "crates.io-index",
- "rev": "4445fa0011e6ff9989985651bec57eb4cbefcadd",
- "type": "github"
- },
- "original": {
- "owner": "rust-lang",
- "repo": "crates.io-index",
- "type": "github"
- }
- },
- "root": {
- "inputs": {
- "disko": "disko",
- "firefox-csshacks": "firefox-csshacks",
- "hjem": "hjem",
- "lanzaboote": "lanzaboote",
- "multibg-wayland": "multibg-wayland",
- "nixos-facter-modules": "nixos-facter-modules",
- "nixpkgs": "nixpkgs",
- "nocargo": "nocargo",
- "system-manager": "system-manager",
- "tmux-tsunami": "tmux-tsunami"
- }
- },
- "rust-overlay": {
- "inputs": {
- "nixpkgs": [
- "hjem",
- "smfh",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1759113356,
- "narHash": "sha256-xm4kEUcV2jk6u15aHazFP4YsMwhq+PczA+Ul/4FDKWI=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "be3b8843a2be2411500f6c052876119485e957a2",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "rust-overlay_2": {
- "inputs": {
- "nixpkgs": [
- "lanzaboote",
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1754189623,
- "narHash": "sha256-fstu5eb30UYwsxow0aQqkzxNxGn80UZjyehQVNVHuBk=",
- "owner": "oxalica",
- "repo": "rust-overlay",
- "rev": "c582ff7f0d8a7ea689ae836dfb1773f1814f472a",
- "type": "github"
- },
- "original": {
- "owner": "oxalica",
- "repo": "rust-overlay",
- "type": "github"
- }
- },
- "smfh": {
- "inputs": {
- "nixpkgs": [
- "hjem",
- "nixpkgs"
- ],
- "rust-overlay": "rust-overlay",
- "systems": "systems"
- },
- "locked": {
- "lastModified": 1759458325,
- "narHash": "sha256-NY9sQlRPVVY7JWcZHtrK0T0RlH676NhaqR7Lco+FhTQ=",
- "owner": "feel-co",
- "repo": "smfh",
- "rev": "c29b22c328d6b03acaa6b879bf7f3c8ff82ca2d3",
- "type": "github"
- },
- "original": {
- "owner": "feel-co",
- "repo": "smfh",
- "type": "github"
- }
- },
- "system-manager": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1756281415,
- "narHash": "sha256-CjpoVwpJJ+DOZilPrDpZ5S3V+B1Y0calaHxTp2xMvGs=",
- "owner": "numtide",
- "repo": "system-manager",
- "rev": "e271eedac9a24678ca6cfc61677837422bf474e0",
- "type": "github"
- },
- "original": {
- "owner": "numtide",
- "repo": "system-manager",
- "type": "github"
- }
- },
- "systems": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "systems_2": {
- "locked": {
- "lastModified": 1681028828,
- "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
- "owner": "nix-systems",
- "repo": "default",
- "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
- "type": "github"
- },
- "original": {
- "owner": "nix-systems",
- "repo": "default",
- "type": "github"
- }
- },
- "tmux-tsunami": {
- "inputs": {
- "nixpkgs": [
- "nixpkgs"
- ]
- },
- "locked": {
- "lastModified": 1759929245,
- "narHash": "sha256-Hy7i6yGn7gQ2AYe9Wv1IT+SvBaWy5CPqc9pWPipunoQ=",
- "owner": "bluedragon1221",
- "repo": "tmux-tsunami",
- "rev": "8a1d508232f2767d4ab4d0d7b2a5e21fd1a230b1",
- "type": "github"
- },
- "original": {
- "owner": "bluedragon1221",
- "repo": "tmux-tsunami",
- "type": "github"
- }
- }
- },
- "root": "root",
- "version": 7
-}
diff --git a/hosts/jupiter/config.nix b/hosts/jupiter/config.nix
index 27bda45..ea33143 100644
--- a/hosts/jupiter/config.nix
+++ b/hosts/jupiter/config.nix
@@ -1,15 +1,4 @@
-{inputs, ...}: {
- nix-furnace = {
- extraHomeModules = [
- ./home.nix
- ];
-
- extraSystemModules = [
- ./system.nix
- inputs.hjem.nixosModules.default
- ];
- };
-
+{
collinux = {
theme = "adwaita";
@@ -21,6 +10,8 @@
desktop = {
gnome.enable = true;
+ gdm.enable = true;
+
programs = {
firefox.enable = true;
blackbox.enable = true;
@@ -39,10 +30,14 @@
};
helix = {
+ theme = "adwaita";
enable = true;
hardMode = false;
};
+ tmux.enable = true;
+ broot.enable = true;
+
git = {
enable = true;
userName = "Collin Williams";
@@ -60,6 +55,7 @@
networking = {
enable = true;
networkmanager.enable = true;
+ tailscale.enable = true;
};
audio = {
diff --git a/hosts/jupiter/home.nix b/hosts/jupiter/hjem.nix
index 137c74a..33d260a 100644
--- a/hosts/jupiter/home.nix
+++ b/hosts/jupiter/hjem.nix
@@ -1,6 +1,5 @@
{pkgs, ...}: {
- home.preferXdgDirectories = true;
- home.packages = with pkgs; [
+ packages = with pkgs; [
orca-slicer
freecad-wayland
gimp
@@ -8,6 +7,4 @@
bottles
musescore
];
-
- home.stateVersion = "25.05";
}
diff --git a/hosts/jupiter/system.nix b/hosts/jupiter/nixos.nix
index 906ee2a..86d5a6e 100644
--- a/hosts/jupiter/system.nix
+++ b/hosts/jupiter/nixos.nix
@@ -16,8 +16,15 @@
time.timeZone = "America/Chicago";
+ systemd.network.wait-online.enable = false; # fix for weird wifi issue
+
+ # music stuff
services.pipewire.jack.enable = true;
- environment.systemPackages = with pkgs; [vital helvum];
+ environment.systemPackages = with pkgs; [vital helvum bambu-studio];
+
+ fonts.packages = [pkgs.nerd-fonts.iosevka];
system.stateVersion = "25.05";
+
+ nixpkgs.hostPlatform = "x86_64-linux";
}
diff --git a/modules/desktop/hjem/programs/firefox.nix b/modules/desktop/hjem/programs/firefox.nix
index cb0794f..b5ea433 100644
--- a/modules/desktop/hjem/programs/firefox.nix
+++ b/modules/desktop/hjem/programs/firefox.nix
@@ -27,23 +27,30 @@ in
};
};
- ".mozilla/firefox/collin/chrome/userChrome.css".text = mkCssHacks [
- # Tabs
- "hide_tabs_with_one_tab"
- "tabs_on_bottom_v2"
- "tab_close_button_always_on_hover"
- "tabs_fill_available_width"
+ ".mozilla/firefox/collin/chrome/userChrome.css".text = mkCssHacks (
+ # (lib.optional (cfg.theme == "adwaita") "window_control_placeholder_support") ++
+ [
+ # Tabs
+ (
+ if cfg.theme == "catppuccin"
+ then "hide_tabs_with_one_tab"
+ else "hide_tabs_with_one_tab_w_window_controls"
+ )
+ "tabs_on_bottom_v2"
+ "tab_close_button_always_on_hover"
+ "tabs_fill_available_width"
- # Icons!
- "iconized_main_menu"
- "iconized_menubar_items"
- "iconized_places_context_menu"
- "iconized_tabs_context_menu"
- "icon_only_context_menu_text_controls"
+ # Icons!
+ "iconized_main_menu"
+ "iconized_menubar_items"
+ "iconized_places_context_menu"
+ "iconized_tabs_context_menu"
+ "icon_only_context_menu_text_controls"
- # Other
- "compact_extensions_panel"
- ];
+ # Other
+ "compact_extensions_panel"
+ ]
+ );
};
packages = [pkgs.firefox];
diff --git a/modules/desktop/nixos/programs/blackbox.nix b/modules/desktop/nixos/programs/blackbox.nix
index 37567b5..9cff44a 100644
--- a/modules/desktop/nixos/programs/blackbox.nix
+++ b/modules/desktop/nixos/programs/blackbox.nix
@@ -20,6 +20,8 @@ in
show-scrollbars = false;
terminal-padding = lib.gvariant.mkTuple (builtins.map lib.gvariant.mkInt16 [10 10 10 10]);
+ font = "Iosevka Nerd Font 12";
+
floating-controls = false;
show-headerbar = true;
};
diff --git a/modules/desktop/nixos/programs/firefox.nix b/modules/desktop/nixos/programs/firefox.nix
index 5dcfec2..c8edca1 100644
--- a/modules/desktop/nixos/programs/firefox.nix
+++ b/modules/desktop/nixos/programs/firefox.nix
@@ -27,7 +27,11 @@ in
};
in {
"toolkit.legacyUserProfileCustomizations.stylesheets" = opt true;
- "browser.tabs.inTitlebar" = opt 0;
+ "browser.tabs.inTitlebar" = opt (
+ if cfg.theme == "catppuccin"
+ then 0
+ else 1
+ );
"browser.tabs.hoverPreview.enabled" = opt 0;
"browser.theme.content-theme" = opt 0;
diff --git a/modules/desktop/options.nix b/modules/desktop/options.nix
index 5820cc6..741f79b 100644
--- a/modules/desktop/options.nix
+++ b/modules/desktop/options.nix
@@ -119,6 +119,7 @@ in {
foot = mkProgramOption "foot";
blackbox.enable = mkEnableOption "blackbox";
+ alacritty.enable = mkEnableOption "alacritty";
research.enable = mkEnableOption "zathura, Xournal++, Zotero, Zotero Connector";
};
diff --git a/modules/services/nixos/selfhost/default.nix b/modules/services/nixos/selfhost/default.nix
index 03dbe4f..d3b884a 100644
--- a/modules/services/nixos/selfhost/default.nix
+++ b/modules/services/nixos/selfhost/default.nix
@@ -1,5 +1,11 @@
{
+ lib,
+ config,
+ ...
+}: {
imports = [
./navidrome.nix
];
+
+ qt.style = lib.optionalAttrs (config.collinux.theme == "adwaita") {name = "adwaita-dark";};
}
diff --git a/modules/terminal/hjem/programs/broot.nix b/modules/terminal/hjem/programs/broot.nix
index 72098f8..2907a85 100644
--- a/modules/terminal/hjem/programs/broot.nix
+++ b/modules/terminal/hjem/programs/broot.nix
@@ -4,21 +4,22 @@
lib,
...
}: let
- cfg = config.collinux.terminal.shells.fish;
+ cfg = config.collinux.terminal.programs.broot;
- conf = {
- skin = catppuccin_skin;
- verbs = [
- {
- name = "open-code";
- key = "enter";
- execution = "$EDITOR +{line} {file}";
- working_dir = "{root}";
- apply_to = "file";
- leave_broot = true;
- }
- ];
- };
+ conf =
+ {
+ verbs = [
+ {
+ name = "open-code";
+ key = "enter";
+ execution = "$EDITOR +{line} {file}";
+ working_dir = "{root}";
+ apply_to = "file";
+ leave_broot = true;
+ }
+ ];
+ }
+ // (lib.optionalAttrs (cfg.theme == "catppuccin") {skin = catppuccin_skin;});
catppuccin_skin = {
input = "rgb(205, 214, 244) none";
diff --git a/modules/terminal/hjem/programs/tmux.nix b/modules/terminal/hjem/programs/tmux.nix
index d6c7cf8..152c443 100644
--- a/modules/terminal/hjem/programs/tmux.nix
+++ b/modules/terminal/hjem/programs/tmux.nix
@@ -28,43 +28,12 @@ in {
}
else {};
- scripts.switch_to_utility =
- # bash
- ''
- # if utility session doesn't exist, create it
- if ! tmux has-session -t "utility"; then
- tmux new-session -ds "utility" -c "$HOME"
- fi
-
- if [ -z "$TMUX" ]; then
- # we're not in tmux
- tmux attach-session -t "utility"
- else
- tmux switch -t "utility"
- fi
-
- # if cmus window doesn't exist, create it
- if ! tmux list-windows -t "utility" -F "#{window_name}" | grep -qx "utility_cmus"; then
- tmux new-window -t "utility" -n "utility_cmus" "cmus"
- fi
-
- # if bluetuith window doesn't exist, create it
- if ! tmux list-windows -t "utility" -F "#{window_name}" | grep -qx "utility_bluetuith"; then
- tmux new-window -t "utility" -n "utility_bluetuith" "bluetuith"
- fi
- '';
-
keys.leader = [
{
name = "Lazygit";
key = "C-g";
exec = "display-popup -E -w 80% -h 80% -x C -y C -d '#{?@default-path,#{@default-path},#{pane_current_path}}' ${lib.getExe pkgs.lazygit}";
}
- {
- name = "Utility";
- key = "C-u";
- exec = "display-popup -w 80% -h 80% -x C -y C 'TMUX= ~/.config/tmux/scripts/switch_to_utility.sh'";
- }
];
confs."main" = ''
set -g mouse on
diff --git a/modules/terminal/options.nix b/modules/terminal/options.nix
index d4c4a1b..e55ab1b 100644
--- a/modules/terminal/options.nix
+++ b/modules/terminal/options.nix
@@ -62,6 +62,7 @@ in {
fzf = mkProgramOption "fzf fuzzy finder";
bat = mkProgramOption "bat cat replacement";
eza = mkProgramOption "eza ls replacement";
+ broot = mkProgramOption "broot";
};
};
};