Compare commits
1 Commits
master
...
shell-inhi
| Author | SHA1 | Date | |
|---|---|---|---|
| 4feb5b89e8 |
@@ -13,9 +13,9 @@ set $term alacritty
|
|||||||
set $menu wofi --term '$term'
|
set $menu wofi --term '$term'
|
||||||
|
|
||||||
### Output configuration
|
### Output configuration
|
||||||
output DP-3 pos 1920 0 res 1920x1080@60Hz
|
output DP-3 pos 3840 0 res 1920x1080@59Hz
|
||||||
output HDMI-A-1 pos 0 0 res 1920x1080@60Hz
|
output HDMI-A-1 pos 0 0 res 1920x1080@59Hz
|
||||||
output DP-2 pos 3840 0 res 1920x1080@60Hz
|
output DP-2 pos 1920 0 res 1920x1080@60Hz
|
||||||
|
|
||||||
### Wallpaper
|
### Wallpaper
|
||||||
output HDMI-A-1 bg ~/.wallpaper/.wallpaper.png fill
|
output HDMI-A-1 bg ~/.wallpaper/.wallpaper.png fill
|
||||||
@@ -25,19 +25,19 @@ output DP-3 bg ~/.wallpaper/.wallpaper.png fill
|
|||||||
### Workspace binding
|
### Workspace binding
|
||||||
|
|
||||||
## DP-3 bindings
|
## DP-3 bindings
|
||||||
workspace 1 output DP-3
|
workspace 1 output DP-2
|
||||||
workspace 2 output DP-3
|
workspace 2 output DP-2
|
||||||
workspace 4 output DP-3
|
workspace 4 output DP-2
|
||||||
workspace 5 output DP-3
|
workspace 5 output DP-2
|
||||||
|
|
||||||
## HDMI-A-1 bindings
|
## HDMI-A-1 bindings
|
||||||
workspace 3 output HDMI-A-1
|
workspace 3 output HDMI-A-1
|
||||||
workspace 9 output HDMI-A-1
|
workspace 9 output HDMI-A-1
|
||||||
|
|
||||||
## DP-2 bindings
|
## DP-2 bindings
|
||||||
workspace 6 output DP-2
|
workspace 6 output DP-3
|
||||||
workspace 7 output DP-2
|
workspace 7 output DP-3
|
||||||
workspace 8 output DP-2
|
workspace 8 output DP-3
|
||||||
|
|
||||||
### Colour options
|
### Colour options
|
||||||
set $bg #24283b
|
set $bg #24283b
|
||||||
|
|||||||
176
flake.lock
generated
176
flake.lock
generated
@@ -1,27 +1,5 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"aagl": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"rust-overlay": "rust-overlay"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1765245541,
|
|
||||||
"narHash": "sha256-Q4KU8bvFL3tJb1sTAPFG6qvi0KP8HvAfLG7mGqdSQV8=",
|
|
||||||
"owner": "ezKEa",
|
|
||||||
"repo": "aagl-gtk-on-nix",
|
|
||||||
"rev": "f251969383969412b94a98c9378deaa114a76338",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "ezKEa",
|
|
||||||
"repo": "aagl-gtk-on-nix",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"darwin": {
|
"darwin": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -29,11 +7,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1762912391,
|
"lastModified": 1749744770,
|
||||||
"narHash": "sha256-4hpBE7bGd24SfD28rzMdUGXsLsNEYxCCrTipFdoqoNM=",
|
"narHash": "sha256-MEM9XXHgBF/Cyv1RES1t6gqAX7/tvayBC1r/KPyK1ls=",
|
||||||
"owner": "lnl7",
|
"owner": "lnl7",
|
||||||
"repo": "nix-darwin",
|
"repo": "nix-darwin",
|
||||||
"rev": "d76299b2cd01837c4c271a7b5186e3d5d8ebd126",
|
"rev": "536f951efb1ccda9b968e3c9dee39fbeb6d3fdeb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -46,27 +24,11 @@
|
|||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1761588595,
|
"lastModified": 1747046372,
|
||||||
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
|
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
|
||||||
"owner": "edolstra",
|
"owner": "edolstra",
|
||||||
"repo": "flake-compat",
|
"repo": "flake-compat",
|
||||||
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
|
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1761588595,
|
|
||||||
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
|
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -95,18 +57,18 @@
|
|||||||
},
|
},
|
||||||
"ghostty": {
|
"ghostty": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs",
|
||||||
"zig": "zig",
|
"zig": "zig",
|
||||||
"zon2nix": "zon2nix"
|
"zon2nix": "zon2nix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1765752037,
|
"lastModified": 1754941490,
|
||||||
"narHash": "sha256-hjqxmMTTiGBBELqnwiomBv8FaowC5MPHMVr+tKQZybU=",
|
"narHash": "sha256-2AJf0q4u1zakqjr0y4dCyqzdDSil8P5m2YpZxAAzJJw=",
|
||||||
"owner": "ghostty-org",
|
"owner": "ghostty-org",
|
||||||
"repo": "ghostty",
|
"repo": "ghostty",
|
||||||
"rev": "1d7fe9e70d5800de8de6244ebb1d07efb74ec36e",
|
"rev": "5bf632e9cc0e77a578bad983b0cbdf0451ce87d4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -122,11 +84,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763992789,
|
"lastModified": 1753592768,
|
||||||
"narHash": "sha256-WHkdBlw6oyxXIra/vQPYLtqY+3G8dUVZM8bEXk0t8x4=",
|
"narHash": "sha256-oV695RvbAE4+R9pcsT9shmp6zE/+IZe6evHWX63f2Qg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "44831a7eaba4360fb81f2acc5ea6de5fde90aaa3",
|
"rev": "fc3add429f21450359369af74c2375cb34a2d204",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -154,40 +116,24 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1744536153,
|
"lastModified": 1748189127,
|
||||||
"narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=",
|
"narHash": "sha256-zRDR+EbbeObu4V2X5QCd2Bk5eltfDlCr5yvhBwUT6pY=",
|
||||||
"owner": "NixOS",
|
"rev": "7c43f080a7f28b2774f3b3f43234ca11661bf334",
|
||||||
"repo": "nixpkgs",
|
"type": "tarball",
|
||||||
"rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11",
|
"url": "https://releases.nixos.org/nixos/25.05/nixos-25.05.802491.7c43f080a7f2/nixexprs.tar.xz"
|
||||||
"type": "github"
|
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NixOS",
|
"type": "tarball",
|
||||||
"ref": "nixpkgs-unstable",
|
"url": "https://channels.nixos.org/nixos-25.05/nixexprs.tar.xz"
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763191728,
|
"lastModified": 1754767907,
|
||||||
"narHash": "sha256-gI9PpaoX4/f28HkjcTbFVpFhtOxSDtOEdFaHZrdETe0=",
|
"narHash": "sha256-8OnUzRQZkqtUol9vuUuQC30hzpMreKptNyET2T9lB6g=",
|
||||||
"rev": "1d4c88323ac36805d09657d13a5273aea1b34f0c",
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://releases.nixos.org/nixpkgs/nixpkgs-25.11pre896415.1d4c88323ac3/nixexprs.tar.xz"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"type": "tarball",
|
|
||||||
"url": "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs_3": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1765363881,
|
|
||||||
"narHash": "sha256-3C3xWn8/2Zzr7sxVBmpc1H1QfxjNfta5IMFe3O9ZEPw=",
|
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d2b1213bf5ec5e62d96b003ab4b5cbc42abfc0d0",
|
"rev": "c5f08b62ed75415439d48152c2a784e36909b1bc",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -197,67 +143,13 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1744536153,
|
|
||||||
"narHash": "sha256-awS2zRgF4uTwrOKwwiJcByDzDOdo3Q1rPZbiHQg/N38=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "18dd725c29603f582cf1900e0d25f9f1063dbf11",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixpkgs-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"aagl": "aagl",
|
|
||||||
"darwin": "darwin",
|
"darwin": "darwin",
|
||||||
"ghostty": "ghostty",
|
"ghostty": "ghostty",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nix-flatpak": "nix-flatpak",
|
"nix-flatpak": "nix-flatpak",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_2"
|
||||||
"rust-overlay": "rust-overlay_2"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1764470739,
|
|
||||||
"narHash": "sha256-sa9f81B1dWO16QtgDTWHX8DQbiHKzHndpaunY5EQtwE=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "3bfa664055e1a09c6aedab5533c5fc8d6ca5741a",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay_2": {
|
|
||||||
"inputs": {
|
|
||||||
"nixpkgs": "nixpkgs_4"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1765680428,
|
|
||||||
"narHash": "sha256-fyPmRof9SZeI14ChPk5rVPOm7ISiiGkwGCunkhM+eUg=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "eb3898d8ef143d4bf0f7f2229105fc51c7731b2f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
@@ -291,11 +183,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1763295135,
|
"lastModified": 1748261582,
|
||||||
"narHash": "sha256-sGv/NHCmEnJivguGwB5w8LRmVqr1P72OjS+NzcJsssE=",
|
"narHash": "sha256-3i0IL3s18hdDlbsf0/E+5kyPRkZwGPbSFngq5eToiAA=",
|
||||||
"owner": "mitchellh",
|
"owner": "mitchellh",
|
||||||
"repo": "zig-overlay",
|
"repo": "zig-overlay",
|
||||||
"rev": "64f8b42cfc615b2cf99144adf2b7728c7847c72a",
|
"rev": "aafb1b093fb838f7a02613b719e85ec912914221",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -306,23 +198,27 @@
|
|||||||
},
|
},
|
||||||
"zon2nix": {
|
"zon2nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"flake-utils": [
|
||||||
|
"ghostty",
|
||||||
|
"flake-utils"
|
||||||
|
],
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"ghostty",
|
"ghostty",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1758405547,
|
"lastModified": 1742104771,
|
||||||
"narHash": "sha256-WgaDgvIZMPvlZcZrpPMjkaalTBnGF2lTG+62znXctWM=",
|
"narHash": "sha256-LhidlyEA9MP8jGe1rEnyjGFCzLLgCdDpYeWggibayr0=",
|
||||||
"owner": "jcollie",
|
"owner": "jcollie",
|
||||||
"repo": "zon2nix",
|
"repo": "zon2nix",
|
||||||
"rev": "bf983aa90ff169372b9fa8c02e57ea75e0b42245",
|
"rev": "56c159be489cc6c0e73c3930bd908ddc6fe89613",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "jcollie",
|
"owner": "jcollie",
|
||||||
"repo": "zon2nix",
|
"repo": "zon2nix",
|
||||||
"rev": "bf983aa90ff169372b9fa8c02e57ea75e0b42245",
|
"rev": "56c159be489cc6c0e73c3930bd908ddc6fe89613",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
29
flake.nix
29
flake.nix
@@ -12,11 +12,6 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
ghostty.url = "github:ghostty-org/ghostty";
|
ghostty.url = "github:ghostty-org/ghostty";
|
||||||
rust-overlay.url = "github:oxalica/rust-overlay";
|
|
||||||
aagl = {
|
|
||||||
url = "github:ezKEa/aagl-gtk-on-nix";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs @ {
|
outputs = inputs @ {
|
||||||
@@ -26,8 +21,6 @@
|
|||||||
darwin,
|
darwin,
|
||||||
home-manager,
|
home-manager,
|
||||||
ghostty,
|
ghostty,
|
||||||
rust-overlay,
|
|
||||||
aagl,
|
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
userName = "wyatt";
|
userName = "wyatt";
|
||||||
@@ -35,21 +28,9 @@
|
|||||||
extraSpecialArgs = {
|
extraSpecialArgs = {
|
||||||
inherit userName userEmail ghostty;
|
inherit userName userEmail ghostty;
|
||||||
};
|
};
|
||||||
|
|
||||||
myOverlays = { ... }: {
|
|
||||||
nixpkgs.overlays = [
|
|
||||||
rust-overlay.overlays.default
|
|
||||||
aagl.overlays.default
|
|
||||||
self.common.overlays
|
|
||||||
];
|
|
||||||
};
|
|
||||||
in {
|
in {
|
||||||
meta = import ./meta;
|
meta = import ./meta;
|
||||||
|
|
||||||
common = {
|
|
||||||
overlays = import ./modules/common/overlays.nix;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Primary laptop - MacBook Pro (2023, M3)
|
# Primary laptop - MacBook Pro (2023, M3)
|
||||||
darwinConfigurations."sephiroth" = darwin.lib.darwinSystem {
|
darwinConfigurations."sephiroth" = darwin.lib.darwinSystem {
|
||||||
system = "aarch64-darwin";
|
system = "aarch64-darwin";
|
||||||
@@ -59,7 +40,6 @@
|
|||||||
role = "devel";
|
role = "devel";
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
myOverlays
|
|
||||||
./modules/common
|
./modules/common
|
||||||
./modules/machine/sephiroth
|
./modules/machine/sephiroth
|
||||||
|
|
||||||
@@ -68,7 +48,6 @@
|
|||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.extraSpecialArgs = extraSpecialArgs;
|
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||||
home-manager.backupFileExtension = "bak";
|
|
||||||
home-manager.users.${userName} = import ./home;
|
home-manager.users.${userName} = import ./home;
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
@@ -78,12 +57,11 @@
|
|||||||
nixosConfigurations."cloud" = nixpkgs.lib.nixosSystem {
|
nixosConfigurations."cloud" = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit userName userEmail ghostty aagl;
|
inherit userName userEmail ghostty;
|
||||||
hostname = "cloud";
|
hostname = "cloud";
|
||||||
role = "devel";
|
role = "devel";
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
myOverlays
|
|
||||||
nix-flatpak.nixosModules.nix-flatpak
|
nix-flatpak.nixosModules.nix-flatpak
|
||||||
./modules/common
|
./modules/common
|
||||||
./modules/machine/cloud
|
./modules/machine/cloud
|
||||||
@@ -93,7 +71,6 @@
|
|||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.extraSpecialArgs = extraSpecialArgs;
|
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||||
home-manager.backupFileExtension = "bak";
|
|
||||||
home-manager.users.${userName}.imports = [
|
home-manager.users.${userName}.imports = [
|
||||||
./home
|
./home
|
||||||
];
|
];
|
||||||
@@ -110,7 +87,6 @@
|
|||||||
role = "server";
|
role = "server";
|
||||||
};
|
};
|
||||||
modules = [
|
modules = [
|
||||||
myOverlays
|
|
||||||
./modules/common
|
./modules/common
|
||||||
./modules/machine/valefor
|
./modules/machine/valefor
|
||||||
|
|
||||||
@@ -119,7 +95,6 @@
|
|||||||
home-manager.useGlobalPkgs = true;
|
home-manager.useGlobalPkgs = true;
|
||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.extraSpecialArgs = extraSpecialArgs;
|
home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||||
home-manager.backupFileExtension = "bak";
|
|
||||||
home-manager.users.${userName}.imports = [
|
home-manager.users.${userName}.imports = [
|
||||||
./home
|
./home
|
||||||
];
|
];
|
||||||
@@ -136,7 +111,6 @@
|
|||||||
role = "server";
|
role = "server";
|
||||||
};
|
};
|
||||||
# modules = [
|
# modules = [
|
||||||
# myOverlays
|
|
||||||
# nix-flatpak.nixosModules.nix-flatpak
|
# nix-flatpak.nixosModules.nix-flatpak
|
||||||
# nix-ld.nixosModules.nix-ld
|
# nix-ld.nixosModules.nix-ld
|
||||||
# ./modules/nixos/hardware-configuration.nix
|
# ./modules/nixos/hardware-configuration.nix
|
||||||
@@ -149,7 +123,6 @@
|
|||||||
# home-manager.useGlobalPkgs = true;
|
# home-manager.useGlobalPkgs = true;
|
||||||
# home-manager.useUserPackages = true;
|
# home-manager.useUserPackages = true;
|
||||||
# home-manager.extraSpecialArgs = extraSpecialArgs;
|
# home-manager.extraSpecialArgs = extraSpecialArgs;
|
||||||
# home-manager.backupFileExtension = "bak";
|
|
||||||
# home-manager.users.${userName}.imports = [
|
# home-manager.users.${userName}.imports = [
|
||||||
# ./home
|
# ./home
|
||||||
# ];
|
# ];
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
{ pkgs, ...}: {
|
{...}: {
|
||||||
programs.atuin = {
|
programs.atuin = {
|
||||||
enable = true;
|
enable = true;
|
||||||
enableFishIntegration = true;
|
enableFishIntegration = true;
|
||||||
package = pkgs.atuinLatest;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,37 +40,14 @@
|
|||||||
id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";
|
id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";
|
||||||
sha256 = "sha256:0pdh1v0vx1d5vnl1zh7nbk6j1fh4k4hhwp1ljs203icn306lahsn";
|
sha256 = "sha256:0pdh1v0vx1d5vnl1zh7nbk6j1fh4k4hhwp1ljs203icn306lahsn";
|
||||||
# sha256 = lib.fakeSha256;
|
# sha256 = lib.fakeSha256;
|
||||||
version = "1.67.0";
|
version = "1.64.0";
|
||||||
})
|
})
|
||||||
(createChromiumExtension {
|
(createChromiumExtension {
|
||||||
# bitwarden
|
# bitwarden
|
||||||
id = "nngceckbapebfimnlniiiahkandclblb";
|
id = "nngceckbapebfimnlniiiahkandclblb";
|
||||||
sha256 = "sha256:0jxk3cqmgd5qj8hnw7s0k5s4bfrcmr0w0rckp3x0bmng07azw4gi";
|
sha256 = "sha256:0jxk3cqmgd5qj8hnw7s0k5s4bfrcmr0w0rckp3x0bmng07azw4gi";
|
||||||
version = "2025.10.0";
|
# sha256 = lib.fakeSha256;
|
||||||
})
|
version = "2025.5.0";
|
||||||
(createChromiumExtension {
|
|
||||||
# react dev tools
|
|
||||||
id = "fmkadmapgofadopljbjfkapdkoienihi";
|
|
||||||
sha256 = "sha256:01vy0x7hdkj4g3m2l4kw5rwldhhpkcxmd2miy5rj2dzxdnbchw2z";
|
|
||||||
version = "7.0.1";
|
|
||||||
})
|
|
||||||
(createChromiumExtension {
|
|
||||||
# wappalyzer
|
|
||||||
id = "gppongmhjkpfnbhagpmjfkannfbllamg";
|
|
||||||
sha256 = "sha256:1mi1wpm714r8yp0zh0yg6kccnld36rj4xb8j4y0c18y9176vc6wx";
|
|
||||||
version = "6.10.86";
|
|
||||||
})
|
|
||||||
(createChromiumExtension {
|
|
||||||
# obsidian web clipper
|
|
||||||
id = "cnjifjpddelmedmihgijeibhnjfabmlf";
|
|
||||||
sha256 = "sha256:0bp6g63g9hk2xbq054lpf5hzwmn73jzh3hswyjfp9r7yqj83mzgy";
|
|
||||||
version = "0.12.0";
|
|
||||||
})
|
|
||||||
(createChromiumExtension {
|
|
||||||
# dark reader
|
|
||||||
id = "eimadpbcbfnmbkopoojfekhnkhdbieeh";
|
|
||||||
sha256 = "sha256:06a9dz589i1da519kivzp7bljksl2xxsd151y7ww0hx28jd1694b";
|
|
||||||
version = "4.9.113";
|
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -27,7 +27,6 @@ in {
|
|||||||
./browser.nix
|
./browser.nix
|
||||||
./zellij.nix
|
./zellij.nix
|
||||||
./bat.nix
|
./bat.nix
|
||||||
./lazygit.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Home Manager needs a bit of information about you and the
|
# Home Manager needs a bit of information about you and the
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
{ pkgs, ... }: {
|
{...}: {
|
||||||
programs.lazygit = {
|
programs.lazygit = {
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.lazygitLatest;
|
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
gui.theme = {
|
gui.theme = {
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
@@ -13,6 +14,7 @@
|
|||||||
|
|
||||||
# utils
|
# utils
|
||||||
tmux
|
tmux
|
||||||
|
lazygit
|
||||||
bottom
|
bottom
|
||||||
ripgrep
|
ripgrep
|
||||||
jq
|
jq
|
||||||
|
|||||||
@@ -13,7 +13,6 @@
|
|||||||
pavucontrol
|
pavucontrol
|
||||||
godot
|
godot
|
||||||
aseprite
|
aseprite
|
||||||
zathura
|
|
||||||
gpu-screen-recorder
|
gpu-screen-recorder
|
||||||
gpu-screen-recorder-gtk
|
gpu-screen-recorder-gtk
|
||||||
# ungoogled-chromium
|
# ungoogled-chromium
|
||||||
|
|||||||
@@ -1,30 +1,29 @@
|
|||||||
{pkgs, lib, ...}: {
|
{
|
||||||
programs.fish = {
|
lib,
|
||||||
|
pkgs,
|
||||||
|
userName,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# initExtra = ''
|
|
||||||
# export PATH="$PATH:$HOME/bin:$HOME/.local/bin:$HOME/go/bin"
|
|
||||||
# '';
|
|
||||||
|
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
# ls aliases
|
# ls aliases
|
||||||
ls = "eza --color";
|
ls = "eza --color";
|
||||||
la = "eza -l -all --color";
|
la = "eza -l -all --color";
|
||||||
ll = "eza -l --color";
|
ll = "eza -l --color";
|
||||||
lt = "eza -l --color --git";
|
lt = "eza -l --color --git";
|
||||||
|
|
||||||
# lazygit alias
|
# lazygit alias
|
||||||
lg = "lazygit";
|
lg = "lazygit";
|
||||||
|
|
||||||
# cat, less, more alias
|
# cat, less, more alias
|
||||||
cat = "bat";
|
cat = "bat";
|
||||||
less = "bat";
|
less = "bat";
|
||||||
more = "bat";
|
more = "bat";
|
||||||
|
|
||||||
# top alias
|
# top alias
|
||||||
top = "btm";
|
top = "btm";
|
||||||
};
|
};
|
||||||
|
functions =
|
||||||
functions = {
|
{
|
||||||
fish_greeting = {
|
fish_greeting = {
|
||||||
body = ''
|
body = ''
|
||||||
set memes \
|
set memes \
|
||||||
@@ -56,45 +55,47 @@
|
|||||||
"The sun is setting, darkness taking over - a date with chaos and you're dressed to the nines" \
|
"The sun is setting, darkness taking over - a date with chaos and you're dressed to the nines" \
|
||||||
"Now kneel overdweller, your lord commands, there's no salvation for the sons of man" \
|
"Now kneel overdweller, your lord commands, there's no salvation for the sons of man" \
|
||||||
"Snap click clank whirr whizz wham boom!" \
|
"Snap click clank whirr whizz wham boom!" \
|
||||||
"Rohs an kyn ala na" \
|
"Rohs an kyn ala na"
|
||||||
"If you’ve brought your ivory standard, I’ll be happy to tell you where you can stick it" \
|
|
||||||
"Speeches? Oh, yes, I love them. There's nothing like a good exposition when you're having trouble sleeping!" \
|
|
||||||
"Somehow, the boy just isn't very buoyant" \
|
|
||||||
"I am...not interested, little sun. Try again when you have become a man"
|
|
||||||
|
|
||||||
|
|
||||||
set choose_meme (random)"%"(count $memes)
|
set choose_meme (random)"%"(count $memes)
|
||||||
set choose_meme $memes[(math $choose_meme"+1")]
|
set choose_meme $memes[(math $choose_meme"+1")]
|
||||||
|
|
||||||
printf (set_color F90)"%s\n" $choose_meme
|
printf (set_color F90)"%s\n" $choose_meme
|
||||||
'';
|
'';
|
||||||
onEvent = "fish_greeting";
|
# onEvent = "fish_greeting";
|
||||||
};
|
};
|
||||||
} // lib.optionalAttrs pkgs.stdenv.isLinux {
|
} // (lib.mkIf pkgs.stdenv.isLinux {
|
||||||
block = {
|
block = {
|
||||||
body = ''
|
body = ''
|
||||||
systemd-inhibit --what=sleep --who="$USER" --why="manual invocation" --mode=block sleep infinity &
|
echo "Starting systemd-inhibit..."
|
||||||
set -g INHIBIT_PID $last_pid
|
set inhibit_pid_file /tmp/fish_inhibit_pid_(whoami)
|
||||||
echo "Sleep inhibited. PID: $INHIBIT_PID"
|
bash -c 'systemd-inhibit --no-ask-password --what=idle --who="'${userName}'" --why="manual invocation" sh & echo $! > '"$inhibit_pid_file"' && disown'
|
||||||
'';
|
if test -f $inhibit_pid_file
|
||||||
};
|
set -g INHIBIT_PID (cat $inhibit_pid_file)
|
||||||
|
echo "Inhibit process started with PID: $INHIBIT_PID"
|
||||||
unblock = {
|
|
||||||
body = ''
|
|
||||||
if set -q INHIBIT_PID
|
|
||||||
kill $INHIBIT_PID 2>/dev/null
|
|
||||||
and echo "Sleep inhibitor removed. PID: $INHIBIT_PID"
|
|
||||||
or echo "Failed to kill process or already terminated."
|
|
||||||
set -e INHIBIT_PID
|
|
||||||
else
|
else
|
||||||
echo "No active sleep inhibitor found."
|
echo "Failed to start inhibit process"
|
||||||
|
return 1
|
||||||
end
|
end
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
unblock = {
|
||||||
|
body = ''
|
||||||
|
set inhibit_pid_file /tmp/fish_inhibit_pid_(whoami)
|
||||||
|
if test -f $inhibit_pid_file
|
||||||
|
set INHIBIT_PID (cat $inhibit_pid_file)
|
||||||
|
echo "Killing inhibit process: $INHIBIT_PID"
|
||||||
|
kill -SIGTERM $INHIBIT_PID 2>/dev/null; or kill -SIGKILL $INHIBIT_PID 2>/dev/null
|
||||||
|
rm -f $inhibit_pid_file
|
||||||
|
set -e INHIBIT_PID
|
||||||
|
echo "Inhibit process terminated"
|
||||||
|
else
|
||||||
|
echo "No inhibit process file found"
|
||||||
|
end
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
zsh = {
|
||||||
programs.zsh = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
initContent = ''
|
initContent = ''
|
||||||
if [[ -z "$BASH_EXECUTION_STRING" ]]; then
|
if [[ -z "$BASH_EXECUTION_STRING" ]]; then
|
||||||
@@ -107,8 +108,7 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
bash = {
|
||||||
programs.bash = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
initExtra = ''
|
initExtra = ''
|
||||||
if [[ -z "$BASH_EXECUTION_STRING" ]]; then
|
if [[ -z "$BASH_EXECUTION_STRING" ]]; then
|
||||||
@@ -121,4 +121,5 @@
|
|||||||
fi
|
fi
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,13 +2,10 @@
|
|||||||
config,
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
aagl,
|
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
cfg = config.gaming;
|
cfg = config.gaming;
|
||||||
in {
|
in {
|
||||||
imports = [ aagl.nixosModules.default ];
|
|
||||||
|
|
||||||
options.gaming = {
|
options.gaming = {
|
||||||
steam = {
|
steam = {
|
||||||
enable = lib.mkEnableOption "Steam gaming platform";
|
enable = lib.mkEnableOption "Steam gaming platform";
|
||||||
@@ -65,14 +62,6 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
vkbasalt = {
|
|
||||||
enable = lib.mkEnableOption "vkBasalt/ReShade/GShade post processing shaders";
|
|
||||||
};
|
|
||||||
|
|
||||||
mangohud = {
|
|
||||||
enable = lib.mkEnableOption "OpenGL/Vulkan overlay tool shown in games presenting FPS, CPU/GPU/memory utilization, load, etc.";
|
|
||||||
};
|
|
||||||
|
|
||||||
lutris = {
|
lutris = {
|
||||||
enable = lib.mkEnableOption "Lutris game manager and launcher";
|
enable = lib.mkEnableOption "Lutris game manager and launcher";
|
||||||
package = lib.mkOption {
|
package = lib.mkOption {
|
||||||
@@ -119,34 +108,9 @@ in {
|
|||||||
ffxiv = {
|
ffxiv = {
|
||||||
enable = lib.mkEnableOption "Final Fantasy XIV and it's accompanied (unofficial) launcher";
|
enable = lib.mkEnableOption "Final Fantasy XIV and it's accompanied (unofficial) launcher";
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: when aagl gets it's unified launcher all finished/in a stable state, transition to that launcher
|
|
||||||
aagl = {
|
|
||||||
anime-game-launcher = {
|
|
||||||
enable = lib.mkEnableOption "Genshin Impact launcher (legacy)";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
honkers-railway-launcher = {
|
config = {
|
||||||
enable = lib.mkEnableOption "Honkai: Star Rail launcher";
|
|
||||||
};
|
|
||||||
|
|
||||||
honkers-launcher = {
|
|
||||||
enable = lib.mkEnableOption "Honkai: Impact 3rd launcher";
|
|
||||||
};
|
|
||||||
|
|
||||||
wavey-launcher = {
|
|
||||||
enable = lib.mkEnableOption "Wuthering Waves launcher";
|
|
||||||
};
|
|
||||||
|
|
||||||
sleepy-launcher = {
|
|
||||||
enable = lib.mkEnableOption "Zenless Zone Zero (ZZZ) launcher";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = let
|
|
||||||
agl = cfg.aagl;
|
|
||||||
in {
|
|
||||||
programs.steam = lib.mkIf cfg.steam.enable {
|
programs.steam = lib.mkIf cfg.steam.enable {
|
||||||
enable = true;
|
enable = true;
|
||||||
remotePlay.openFirewall = cfg.steam.firewall.remotePlay;
|
remotePlay.openFirewall = cfg.steam.firewall.remotePlay;
|
||||||
@@ -175,26 +139,6 @@ in {
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
programs.anime-game-launcher = lib.mkIf agl.anime-game-launcher.enable {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.honkers-railway-launcher = lib.mkIf agl.honkers-railway-launcher.enable {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.honkers-launcher = lib.mkIf agl.honkers-launcher.enable {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.wavey-launcher = lib.mkIf agl.wavey-launcher.enable {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.sleepy-launcher = lib.mkIf agl.sleepy-launcher.enable {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages =
|
environment.systemPackages =
|
||||||
(lib.optionals cfg.lutris.enable (
|
(lib.optionals cfg.lutris.enable (
|
||||||
[cfg.lutris.package] ++
|
[cfg.lutris.package] ++
|
||||||
@@ -210,19 +154,6 @@ in {
|
|||||||
cfg.lutris.extraPackages
|
cfg.lutris.extraPackages
|
||||||
)) ++
|
)) ++
|
||||||
(lib.optionals cfg.minecraft.enable [pkgs.prismlauncher]) ++
|
(lib.optionals cfg.minecraft.enable [pkgs.prismlauncher]) ++
|
||||||
(lib.optionals cfg.ffxiv.enable [pkgs.xivlauncher pkgs.fflogs]) ++
|
(lib.optionals cfg.ffxiv.enable [pkgs.xivlauncher]);
|
||||||
(lib.optionals cfg.vkbasalt.enable [pkgs.vkbasalt pkgs.vkBasalt pkgs.vkbasalt-cli]) ++
|
|
||||||
(lib.optionals cfg.mangohud.enable [pkgs.mangohud]) ++
|
|
||||||
(lib.optionals (cfg.vkbasalt.enable || cfg.mangohud.enable) [pkgs.goverlay pkgs.mesa-demos pkgs.vulkan-tools]);
|
|
||||||
|
|
||||||
nix.settings = let
|
|
||||||
inherit agl;
|
|
||||||
in (lib.mkIf
|
|
||||||
(agl.anime-game-launcher.enable || agl.honkers-railway-laucher.enable || agl.honkers-launcher.enable || agl.wavey-launcher.enable || agl.sleepy-launcher.enable)
|
|
||||||
{
|
|
||||||
substituters = [ "https://ezkea.cachix.org" ];
|
|
||||||
trusted-public-keys = [ "ezkea.cachix.org-1:ioBmUbJTZIKsHmWWXPe1FSFbeVe+afhfgqgTSNd34eI=" ];
|
|
||||||
}
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,11 +7,3 @@ Licensed by the Mozilla Public License v2
|
|||||||
## Synopsis
|
## Synopsis
|
||||||
|
|
||||||
This is the directory that holds shared configuration files amongst computers that I own. They are called by the root `flake.nix` file.
|
This is the directory that holds shared configuration files amongst computers that I own. They are called by the root `flake.nix` file.
|
||||||
|
|
||||||
Here's a quick synopsis of each file:
|
|
||||||
|
|
||||||
- core: Sane Nix options that I set for myself
|
|
||||||
- environment: Core packages and environment variables to be set and installed
|
|
||||||
- fonts: Fonts and icons that are to be installed
|
|
||||||
- overlays: Customized packages tailored to my needs
|
|
||||||
- users: Users to be set on my system
|
|
||||||
|
|||||||
@@ -8,9 +8,6 @@
|
|||||||
|
|
||||||
# Allow unfree packages
|
# Allow unfree packages
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
nixpkgs.config.permittedInsecurePackages = [
|
|
||||||
"mbedtls-2.28.10"
|
|
||||||
];
|
|
||||||
|
|
||||||
nix.package = pkgs.nix;
|
nix.package = pkgs.nix;
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,12 @@
|
|||||||
{ ... }: {
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
./core.nix
|
./core.nix
|
||||||
./environment.nix
|
./environment.nix
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
# ./overlays.nix
|
|
||||||
./users.nix
|
./users.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,85 +1,20 @@
|
|||||||
{ lib, pkgs, config, ... }: {
|
{ lib, pkgs, ... }: {
|
||||||
|
# Common packages that every system will use
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
git
|
git
|
||||||
vim
|
vim
|
||||||
neovim
|
neovim
|
||||||
usbutils
|
usbutils
|
||||||
coreutils
|
coreutils
|
||||||
|
lshw
|
||||||
|
systemd
|
||||||
|
dmidecode
|
||||||
pciutils
|
pciutils
|
||||||
|
nix-ld
|
||||||
patchelf
|
patchelf
|
||||||
htop
|
htop
|
||||||
] ++
|
|
||||||
lib.optionals pkgs.stdenv.isLinux (with pkgs; [
|
|
||||||
systemd
|
|
||||||
lshw
|
|
||||||
dmidecode
|
|
||||||
]) ++
|
|
||||||
lib.optionals pkgs.stdenv.isDarwin (with pkgs; [
|
|
||||||
# nothing here, yet ;)
|
|
||||||
]);
|
|
||||||
|
|
||||||
programs.nix-ld = lib.mkIf pkgs.stdenv.isLinux {
|
|
||||||
enable = true;
|
|
||||||
libraries = with pkgs;
|
|
||||||
[
|
|
||||||
acl
|
|
||||||
attr
|
|
||||||
bzip2
|
|
||||||
dbus
|
|
||||||
expat
|
|
||||||
fontconfig
|
|
||||||
freetype
|
|
||||||
fuse3
|
|
||||||
icu
|
|
||||||
libnotify
|
|
||||||
libsodium
|
|
||||||
libssh
|
|
||||||
libunwind
|
|
||||||
libusb1
|
|
||||||
libuuid
|
|
||||||
nspr
|
|
||||||
nss
|
|
||||||
stdenv.cc.cc
|
|
||||||
util-linux
|
|
||||||
zlib
|
|
||||||
zstd
|
|
||||||
]
|
|
||||||
++ lib.optionals (config.hardware.graphics.enable) [
|
|
||||||
pipewire
|
|
||||||
cups
|
|
||||||
libxkbcommon
|
|
||||||
pango
|
|
||||||
mesa
|
|
||||||
libdrm
|
|
||||||
libglvnd
|
|
||||||
libpulseaudio
|
|
||||||
atk
|
|
||||||
cairo
|
|
||||||
alsa-lib
|
|
||||||
at-spi2-atk
|
|
||||||
at-spi2-core
|
|
||||||
gdk-pixbuf
|
|
||||||
glib
|
|
||||||
gtk3
|
|
||||||
libGL
|
|
||||||
libappindicator-gtk3
|
|
||||||
vulkan-loader
|
|
||||||
xorg.libX11
|
|
||||||
xorg.libXScrnSaver
|
|
||||||
xorg.libXcomposite
|
|
||||||
xorg.libXcursor
|
|
||||||
xorg.libXdamage
|
|
||||||
xorg.libXext
|
|
||||||
xorg.libXfixes
|
|
||||||
xorg.libXi
|
|
||||||
xorg.libXrandr
|
|
||||||
xorg.libXrender
|
|
||||||
xorg.libXtst
|
|
||||||
xorg.libxcb
|
|
||||||
xorg.libxkbfile
|
|
||||||
xorg.libxshmfence
|
|
||||||
];
|
];
|
||||||
};
|
|
||||||
|
|
||||||
|
# Common environment variables that every system will use
|
||||||
environment.variables.EDITOR = "nvim";
|
environment.variables.EDITOR = "nvim";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,8 +12,4 @@
|
|||||||
monaspace
|
monaspace
|
||||||
]
|
]
|
||||||
++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
|
++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
adwaita-icon-theme
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,50 +0,0 @@
|
|||||||
final: prev: let
|
|
||||||
rust_1_90_0 = prev.rust-bin.stable."1.90.0".default;
|
|
||||||
myRustPlatform = prev.makeRustPlatform {
|
|
||||||
cargo = rust_1_90_0;
|
|
||||||
rustc = rust_1_90_0;
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
lazygitLatest = prev.lazygit.overrideAttrs (_: rec {
|
|
||||||
version = "0.55.1";
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "jesseduffield";
|
|
||||||
repo = "lazygit";
|
|
||||||
rev = "v${version}";
|
|
||||||
hash = "sha256-UofhgILZhVXnYiGpb25m4Ct4sbu5pRmjVgj3oEf5Uyk=";
|
|
||||||
};
|
|
||||||
vendorHash = null;
|
|
||||||
subPackages = [ "." ];
|
|
||||||
ldflags = [
|
|
||||||
"-X main.version=${version}"
|
|
||||||
"-X main.buildSource=nix"
|
|
||||||
];
|
|
||||||
});
|
|
||||||
|
|
||||||
atuinLatest = (prev.atuin.override {
|
|
||||||
rustPlatform = myRustPlatform;
|
|
||||||
}).overrideAttrs (oldAttrs: rec {
|
|
||||||
version = "18.10.0";
|
|
||||||
|
|
||||||
src = prev.fetchFromGitHub {
|
|
||||||
owner = "atuinsh";
|
|
||||||
repo = "atuin";
|
|
||||||
rev = "v${version}";
|
|
||||||
hash = "sha256-bfSa3RtVXxHt3usDqqpE/oXKKDUZOrf+tD9uL59fr6M=";
|
|
||||||
};
|
|
||||||
|
|
||||||
cargoDeps = myRustPlatform.fetchCargoVendor {
|
|
||||||
# name = "atuin-${version}-vendor.tar.gz";
|
|
||||||
inherit src;
|
|
||||||
hash = "sha256-67ffivZVCly1GWA3fJ9mT8nGv2EGd6eCthbaIu/IW3M=";
|
|
||||||
};
|
|
||||||
|
|
||||||
preCheck = (oldAttrs.preCheck or "") + ''
|
|
||||||
export HOME="$TMPDIR"
|
|
||||||
export XDG_CONFIG_HOME="$TMPDIR/.config"
|
|
||||||
export XDG_DATA_HOME="$TMPDIR/.local/share"
|
|
||||||
export XDG_STATE_HOME="$TMPDIR/.local/state"
|
|
||||||
mkdir -p "$XDG_CONFIG_HOME" "$XDG_DATA_HOME" "$XDG_STATE_HOME"
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
}
|
|
||||||
@@ -1,23 +1,30 @@
|
|||||||
{ lib, pkgs, userName, hostname, ... }:
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
userName,
|
||||||
|
hostname,
|
||||||
|
...
|
||||||
|
} @ args: {
|
||||||
networking.hostName = hostname;
|
networking.hostName = hostname;
|
||||||
|
|
||||||
users.users."${userName}" = {
|
# Don't forget to set a password with ‘passwd’!
|
||||||
home = if pkgs.stdenv.isDarwin
|
users.users."${userName}" = lib.mkMerge [
|
||||||
|
{
|
||||||
|
home =
|
||||||
|
if pkgs.stdenv.isDarwin
|
||||||
then "/Users/${userName}"
|
then "/Users/${userName}"
|
||||||
else "/home/${userName}";
|
else "/home/${userName}";
|
||||||
description = userName;
|
description = userName;
|
||||||
} // lib.optionalAttrs pkgs.stdenv.isLinux {
|
}
|
||||||
|
|
||||||
|
(lib.mkIf (pkgs.stdenv.isLinux) {
|
||||||
group = "${userName}";
|
group = "${userName}";
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
};
|
})
|
||||||
|
];
|
||||||
|
|
||||||
users.groups.wyatt = {};
|
security.sudo = {
|
||||||
nix.settings.trusted-users = [userName];
|
extraRules = [
|
||||||
|
|
||||||
security = lib.optionalAttrs pkgs.stdenv.isLinux {
|
|
||||||
sudo.extraRules = [
|
|
||||||
{
|
{
|
||||||
groups = [ "wheel" ];
|
groups = [ "wheel" ];
|
||||||
commands = [
|
commands = [
|
||||||
@@ -30,9 +37,7 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
environment = lib.optionalAttrs pkgs.stdenv.isDarwin {
|
users.groups.wyatt = {};
|
||||||
etc."sudoers.d/wheel-nopasswd".text = ''
|
|
||||||
%wheel ALL=(ALL:ALL) NOPASSWD: SETENV: ALL
|
nix.settings.trusted-users = [userName];
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,9 +62,9 @@ in {
|
|||||||
|
|
||||||
(mkIf (cfg.gpuVendor == "amd") {
|
(mkIf (cfg.gpuVendor == "amd") {
|
||||||
services.xserver.videoDrivers = ["amdgpu"];
|
services.xserver.videoDrivers = ["amdgpu"];
|
||||||
# hardware.graphics.extraPackages = with pkgs; [
|
hardware.graphics.extraPackages = with pkgs; [
|
||||||
# amdvlk
|
amdvlk
|
||||||
# ];
|
];
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
radeontop
|
radeontop
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -12,4 +12,4 @@ These are named after Final Fantasy VII characters.
|
|||||||
|
|
||||||
### Servers/Network Infrastructure
|
### Servers/Network Infrastructure
|
||||||
|
|
||||||
These are named after Final Fantasy summons. There is some infrastructure missing here like my routers and switches that I also name after summons.
|
These are named after Final Fantasy summons.
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
|
config,
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
userName,
|
userName,
|
||||||
aagl,
|
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
flatpakPackages = [
|
flatpakPackages = [
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
in {
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
(import ../../apps/flatpak.nix {
|
(import ../../apps/flatpak.nix {
|
||||||
inherit lib pkgs flatpakPackages userName aagl;
|
inherit lib pkgs flatpakPackages;
|
||||||
})
|
})
|
||||||
../../apps/gaming.nix
|
../../apps/gaming.nix
|
||||||
../../apps/appimage.nix
|
../../apps/appimage.nix
|
||||||
@@ -89,10 +89,8 @@ in {
|
|||||||
localNetworkGameTransfers = true;
|
localNetworkGameTransfers = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
vkbasalt.enable = true;
|
|
||||||
gamemode.enable = true;
|
gamemode.enable = true;
|
||||||
gamescope.enable = true;
|
gamescope.enable = true;
|
||||||
mangohud.enable = true;
|
|
||||||
lutris = {
|
lutris = {
|
||||||
enable = true;
|
enable = true;
|
||||||
wine = {
|
wine = {
|
||||||
@@ -102,11 +100,14 @@ in {
|
|||||||
compatibility = {
|
compatibility = {
|
||||||
protonSupport = true;
|
protonSupport = true;
|
||||||
};
|
};
|
||||||
|
extraPackages = with pkgs; [
|
||||||
|
gamemode
|
||||||
|
mangohud
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
ffxiv.enable = true;
|
ffxiv.enable = true;
|
||||||
minecraft.enable = true;
|
minecraft.enable = true;
|
||||||
aagl.anime-game-launcher.enable = true;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# Power management (see ../../pwrMgmt/default.nix)
|
# Power management (see ../../pwrMgmt/default.nix)
|
||||||
|
|||||||
@@ -12,24 +12,24 @@
|
|||||||
(modulesPath + "/installer/scan/not-detected.nix")
|
(modulesPath + "/installer/scan/not-detected.nix")
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "ahci" "usb_storage" "usbhid" "sd_mod"];
|
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"];
|
||||||
boot.initrd.kernelModules = [];
|
boot.initrd.kernelModules = [];
|
||||||
boot.kernelModules = ["kvm-amd"];
|
boot.kernelModules = ["kvm-amd"];
|
||||||
boot.extraModulePackages = [];
|
boot.extraModulePackages = [];
|
||||||
|
|
||||||
fileSystems."/" = {
|
fileSystems."/" = {
|
||||||
device = "/dev/disk/by-uuid/f8f39aae-61d2-437d-a8e1-01066bbb3c5c";
|
device = "/dev/disk/by-label/COMPUTER";
|
||||||
fsType = "xfs";
|
fsType = "xfs";
|
||||||
};
|
};
|
||||||
|
|
||||||
fileSystems."/boot" = {
|
fileSystems."/boot" = {
|
||||||
device = "/dev/disk/by-uuid/B72F-087F";
|
device = "/dev/disk/by-label/BOOT";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
options = ["fmask=0022" "dmask=0022"];
|
options = ["fmask=0022" "dmask=0022"];
|
||||||
};
|
};
|
||||||
|
|
||||||
swapDevices = [
|
swapDevices = [
|
||||||
{device = "/dev/disk/by-uuid/6d6bcc02-20a9-4ae8-9c1e-5124fb2b2634";}
|
{device = "/dev/disk/by-label/SWAP";}
|
||||||
];
|
];
|
||||||
|
|
||||||
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
}:
|
}:
|
||||||
with lib; {
|
with lib; {
|
||||||
options = {
|
options = {
|
||||||
security.sudoers = {
|
security.sudo = {
|
||||||
needsPassword = mkOption {
|
needsPassword = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = true;
|
default = true;
|
||||||
|
|||||||
@@ -1,11 +1,6 @@
|
|||||||
# TODO: refactor into module
|
{...}: {
|
||||||
{ pkgs, ...}: {
|
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
enable = true;
|
enable = true;
|
||||||
pulse.enable = true;
|
pulse.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
helvum
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,16 +1,7 @@
|
|||||||
{ lib, pkgs, userName, ...}: {
|
{pkgs, ...}: {
|
||||||
services.shairport-sync = {
|
services.shairport-sync = {
|
||||||
enable = pkgs.stdenv.isLinux;
|
enable = pkgs.stdenv.isLinux;
|
||||||
openFirewall = pkgs.stdenv.isLinux;
|
openFirewall = pkgs.stdenv.isLinux;
|
||||||
# arguments = "-v -o pa";
|
arguments = "-v -o pw";
|
||||||
};
|
|
||||||
|
|
||||||
systemd.services.shairport-sync = {
|
|
||||||
serviceConfig = {
|
|
||||||
User = lib.mkForce "${userName}";
|
|
||||||
};
|
|
||||||
environment = {
|
|
||||||
XDG_RUNTIME_DIR = "/run/user/1000";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,4 @@
|
|||||||
{ pkgs, ... }: {
|
{...}: {
|
||||||
virtualisation.libvirtd.enable = true;
|
virtualisation.libvirtd.enable = true;
|
||||||
programs.virt-manager.enable = true;
|
programs.virt-manager.enable = true;
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
qemu
|
|
||||||
quickemu
|
|
||||||
];
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user