188 current 2025-06-06 18:54:16 25.11.20250605.d3d2d80 6.15.1 *
This commit is contained in:
138
flake.lock
generated
138
flake.lock
generated
@@ -20,11 +20,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747864449,
|
||||
"narHash": "sha256-PIjVAWghZhr3L0EFM2UObhX84UQxIACbON0IC0zzSKA=",
|
||||
"lastModified": 1749155310,
|
||||
"narHash": "sha256-t0HfHg/1+TbSra5s6nNM0o4tnb3uqWedShSpZXsUMYY=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "aquamarine",
|
||||
"rev": "389372c5f4dc1ac0e7645ed29a35fd6d71672ef5",
|
||||
"rev": "94981cf75a9f11da0b6dd6a1abbd7c50a36ab2d3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -38,11 +38,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748080874,
|
||||
"narHash": "sha256-sUebEzAkrY8Aq5G0GHFyRddmRNGP/a2iTtV7ISNvi/c=",
|
||||
"lastModified": 1749223974,
|
||||
"narHash": "sha256-/GAQYRW1duU81KG//2wI9ax8EkHVG/e1UOD97NdwLOY=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "0ba11b12be81f0849a89ed17ab635164ea8f0112",
|
||||
"rev": "3a42cd79c647360ee8742659e42aeec0947dd3b4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -117,15 +117,37 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748925027,
|
||||
"narHash": "sha256-BJ0qRIdvt5aeqm3zg/5if7b5rruG05zrSX3UpLqjDRk=",
|
||||
"lastModified": 1749243446,
|
||||
"narHash": "sha256-P1gumhZN5N9q+39ndePHYrtwOwY1cGx+VoXGl+vTm7A=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "cb809ec1ff15cf3237c6592af9bbc7e4d983e98c",
|
||||
"rev": "2d7d65f65b61fdfce23278e59ca266ddd0ef0a36",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "master",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"home-manager-stable": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs-stable"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1749154018,
|
||||
"narHash": "sha256-gjN3j7joRvT3a8Zgcylnd4NFsnXeDBumqiu4HmY1RIg=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "7aae0ee71a17b19708b93b3ed448a1a0952bf111",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "release-25.05",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -146,11 +168,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745948457,
|
||||
"narHash": "sha256-lzTV10FJTCGNtMdgW5YAhCAqezeAzKOd/97HbQK8GTU=",
|
||||
"lastModified": 1749155331,
|
||||
"narHash": "sha256-XR9fsI0zwLiFWfqi/pdS/VD+YNorKb3XIykgTg4l1nA=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprcursor",
|
||||
"rev": "ac903e80b33ba6a88df83d02232483d99f327573",
|
||||
"rev": "45fcc10b4c282746d93ec406a740c43b48b4ef80",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -175,11 +197,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745015490,
|
||||
"narHash": "sha256-apEJ9zoSzmslhJ2vOKFcXTMZLUFYzh1ghfB6Rbw3Low=",
|
||||
"lastModified": 1749145600,
|
||||
"narHash": "sha256-v2kY5RDk9oyo1x9m8u83GdklC96xlJ7ka1rrvZoYL78=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprgraphics",
|
||||
"rev": "60754910946b4e2dc1377b967b7156cb989c5873",
|
||||
"rev": "80b754e38e836777ad3a9d5d1ffc3491b0332471",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -204,11 +226,11 @@
|
||||
"xdph": "xdph"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748888571,
|
||||
"narHash": "sha256-iyZNR6VSJ4zlJ3hMt8+c3MHNeQrXDjsdwFlHdKDxc9A=",
|
||||
"lastModified": 1749237813,
|
||||
"narHash": "sha256-TDJHaf01IpP3dN+CC/GGuKRLPLFS9w4v9BufplyJkSY=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "Hyprland",
|
||||
"rev": "b1d0a727cc594e5329c5971d73391c7529e1c80e",
|
||||
"rev": "2794f485cb5d52b3ff572953ddcfaf7fd3c25182",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -229,11 +251,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1743714874,
|
||||
"narHash": "sha256-yt8F7NhMFCFHUHy/lNjH/pjZyIDFNk52Q4tivQ31WFo=",
|
||||
"lastModified": 1749046714,
|
||||
"narHash": "sha256-kymV5FMnddYGI+UjwIw8ceDjdeg7ToDVjbHCvUlhn14=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-protocols",
|
||||
"rev": "3a5c2bda1c1a4e55cc1330c782547695a93f05b2",
|
||||
"rev": "613878cb6f459c5e323aaafe1e6f388ac8a36330",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -261,11 +283,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1737634706,
|
||||
"narHash": "sha256-nGCibkfsXz7ARx5R+SnisRtMq21IQIhazp6viBU8I/A=",
|
||||
"lastModified": 1749154592,
|
||||
"narHash": "sha256-DO7z5CeT/ddSGDEnK9mAXm1qlGL47L3VAHLlLXoCjhE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qt-support",
|
||||
"rev": "8810df502cdee755993cb803eba7b23f189db795",
|
||||
"rev": "4c8053c3c888138a30c3a6c45c2e45f5484f2074",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -297,11 +319,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745951494,
|
||||
"narHash": "sha256-2dModE32doiyQMmd6EDAQeZnz+5LOs6KXyE0qX76WIg=",
|
||||
"lastModified": 1749155776,
|
||||
"narHash": "sha256-t1PM0wxQLQwv2F2AW23uA7pm5giwmcgYEWbNIRct9r4=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprland-qtutils",
|
||||
"rev": "4be1d324faf8d6e82c2be9f8510d299984dfdd2e",
|
||||
"rev": "396e8aa1c06274835b69da7f9a015fff9a9b7522",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -326,11 +348,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747484975,
|
||||
"narHash": "sha256-+LAQ81HBwG0lwshHlWe0kfWg4KcChIPpnwtnwqmnoEU=",
|
||||
"lastModified": 1749145882,
|
||||
"narHash": "sha256-qr0KXeczF8Sma3Ae7+dR2NHhvG7YeLBJv19W4oMu6ZE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprlang",
|
||||
"rev": "163c83b3db48a17c113729c220a60b94596c9291",
|
||||
"rev": "1bfb84f54d50c7ae6558c794d3cfd5f6a7e6e676",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -351,11 +373,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1746635225,
|
||||
"narHash": "sha256-W9G9bb0zRYDBRseHbVez0J8qVpD5QbizX67H/vsudhM=",
|
||||
"lastModified": 1749135356,
|
||||
"narHash": "sha256-Q8mAKMDsFbCEuq7zoSlcTuxgbIBVhfIYpX0RjE32PS0=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprutils",
|
||||
"rev": "674ea57373f08b7609ce93baff131117a0dfe70d",
|
||||
"rev": "e36db00dfb3a3d3fdcc4069cb292ff60d2699ccb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -376,11 +398,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1747584298,
|
||||
"narHash": "sha256-PH9qZqWLHvSBQiUnA0NzAyQA3tu2no2z8kz0ZeHWj4w=",
|
||||
"lastModified": 1749145760,
|
||||
"narHash": "sha256-IHaGWpGrv7seFWdw/1A+wHtTsPlOGIKMrk1TUIYJEFI=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "hyprwayland-scanner",
|
||||
"rev": "e511882b9c2e1d7a75d45d8fddd2160daeafcbc3",
|
||||
"rev": "817918315ea016cc2d94004bfb3223b5fd9dfcc6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -405,13 +427,29 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1748460289,
|
||||
"narHash": "sha256-7doLyJBzCllvqX4gszYtmZUToxKvMUrg45EUWaUYmBg=",
|
||||
"lastModified": 1749086602,
|
||||
"narHash": "sha256-DJcgJMekoxVesl9kKjfLPix2Nbr42i7cpEHJiTnBUwU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "96ec055edbe5ee227f28cdbc3f1ddf1df5965102",
|
||||
"rev": "4792576cb003c994bd7cc1edada3129def20b27d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-25.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1748929857,
|
||||
"narHash": "sha256-lcZQ8RhsmhsK8u7LIFsJhsLh/pzR9yZ8yqpTzyGdj+Q=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "c2a03962b8e24e669fb37b7df10e7c79531ff1a4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -423,11 +461,11 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1748693115,
|
||||
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
|
||||
"lastModified": 1749143949,
|
||||
"narHash": "sha256-QuUtALJpVrPnPeozlUG/y+oIMSLdptHxb3GK6cpSVhA=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
|
||||
"rev": "d3d2d80a2191a73d1e86456a751b83aa13085d7d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -446,11 +484,11 @@
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1748935843,
|
||||
"narHash": "sha256-ZTbwljoJXgkGAPlYz0GIcNiXQNfPFHe2A0Dqe9KDyPA=",
|
||||
"lastModified": 1749246388,
|
||||
"narHash": "sha256-Dwwn4G27Tb3ErlErOThqXI+bIJ3usoHogzmFE20XgBw=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "032af0a65aa867a6209718033995f5ba73fee543",
|
||||
"rev": "b867f29b2dd10e29477a15aebc4c3f6354ca723d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -509,8 +547,10 @@
|
||||
"inputs": {
|
||||
"catppuccin": "catppuccin",
|
||||
"home-manager": "home-manager",
|
||||
"home-manager-stable": "home-manager-stable",
|
||||
"hyprland": "hyprland",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-stable": "nixpkgs-stable",
|
||||
"nur": "nur",
|
||||
"plasma-manager": "plasma-manager"
|
||||
}
|
||||
@@ -579,11 +619,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1745871725,
|
||||
"narHash": "sha256-M24SNc2flblWGXFkGQfqSlEOzAGZnMc9QG3GH4K/KbE=",
|
||||
"lastModified": 1749155346,
|
||||
"narHash": "sha256-KIkJu3zF8MF3DuGwzAmo3Ww9wsWXolwV30SjJRTAxYE=",
|
||||
"owner": "hyprwm",
|
||||
"repo": "xdg-desktop-portal-hyprland",
|
||||
"rev": "76bbf1a6b1378e4ab5230bad00ad04bc287c969e",
|
||||
"rev": "44bf29f1df45786098920c655af523535a9191ae",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
118
flake.nix
118
flake.nix
@@ -10,7 +10,7 @@
|
||||
};
|
||||
catppuccin.url = "github:catppuccin/nix";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager";
|
||||
url = "github:nix-community/home-manager/master";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
hyprland.url = "github:hyprwm/Hyprland";
|
||||
@@ -19,67 +19,95 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.home-manager.follows = "home-manager";
|
||||
};
|
||||
|
||||
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-25.05";
|
||||
home-manager-stable = {
|
||||
url = "github:nix-community/home-manager/release-25.05";
|
||||
inputs.nixpkgs.follows = "nixpkgs-stable";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
catppuccin,
|
||||
nur,
|
||||
home-manager,
|
||||
plasma-manager,
|
||||
...
|
||||
} @ inputs: {
|
||||
# Please replace my-nixos with your hostname
|
||||
nixosConfigurations = {
|
||||
anzu = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
} @ inputs: let
|
||||
hosts = import ./hosts/hosts.nix;
|
||||
|
||||
# Make config for non-NixOS hosts
|
||||
mkHomeConfiguration = {
|
||||
host,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
modules ? [],
|
||||
}:
|
||||
home-manager.lib.homeManagerConfiguration {
|
||||
pkgs = import nixpkgs {
|
||||
system = host.arch;
|
||||
config = {
|
||||
allowUnfree = true;
|
||||
};
|
||||
overlays = [
|
||||
nur.overlay
|
||||
];
|
||||
};
|
||||
modules =
|
||||
[
|
||||
./hosts/${host.dir}/home.nix
|
||||
catppuccin.homeModules.catppuccin
|
||||
]
|
||||
++ modules;
|
||||
};
|
||||
|
||||
# Make config for NixOS hosts
|
||||
mkNixOSConfigurations = {
|
||||
host,
|
||||
nixpkgs,
|
||||
home-manager,
|
||||
modules ? [],
|
||||
}:
|
||||
nixpkgs.lib.nixosSystem {
|
||||
system = host.arch;
|
||||
specialArgs = {inherit inputs;};
|
||||
modules = [
|
||||
# Import the previous configuration.nix we used,
|
||||
# so the old configuration file still takes effect
|
||||
./configuration.nix
|
||||
./hosts/anzu/hardware-configuration.nix
|
||||
# Add NUR overlay
|
||||
nur.modules.nixos.default
|
||||
# Add catppuccin
|
||||
catppuccin.nixosModules.catppuccin
|
||||
# Add home-manager
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.sharedModules = [plasma-manager.homeManagerModules.plasma-manager];
|
||||
home-manager.users.chase = {
|
||||
imports = [
|
||||
./home/home.nix
|
||||
modules =
|
||||
[
|
||||
./hosts/${host.dir}/configuration.nix
|
||||
nur.modules.nixos.default
|
||||
catppuccin.nixosModules.catppuccin
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.users."${host.user}".imports = [
|
||||
./hosts/${host.dir}/home.nix
|
||||
catppuccin.homeModules.catppuccin
|
||||
];
|
||||
};
|
||||
}
|
||||
]
|
||||
++ modules;
|
||||
};
|
||||
in {
|
||||
# Please replace my-nixos with your hostname
|
||||
nixosConfigurations = {
|
||||
"anzu" = mkNixOSConfigurations {
|
||||
host = hosts.anzu;
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
home-manager = inputs.home-manager;
|
||||
modules = [
|
||||
{
|
||||
home-manager.sharedModules = [plasma-manager.homeManagerModules.plasma-manager];
|
||||
}
|
||||
];
|
||||
};
|
||||
ichigo = nixpkgs.lib.nixosSystem {
|
||||
system = "x86_64-linux";
|
||||
specialArgs = {inherit inputs;};
|
||||
"ichigo" = mkNixOSConfigurations {
|
||||
host = hosts.ichigo;
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
home-manager = inputs.home-manager;
|
||||
modules = [
|
||||
./configuration.nix
|
||||
./hosts/ichigo/hardware-configuration.nix
|
||||
nur.modules.nixos.default
|
||||
catppuccin.nixosModules.catppuccin
|
||||
home-manager.nixosModules.home-manager
|
||||
{
|
||||
home-manager.backupFileExtension = "backup";
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.sharedModules = [plasma-manager.homeManagerModules.plasma-manager];
|
||||
home-manager.users.chase = {
|
||||
imports = [
|
||||
./home/home.nix
|
||||
catppuccin.homeModules.catppuccin
|
||||
];
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
|
183
home/base.nix
Normal file
183
home/base.nix
Normal file
@@ -0,0 +1,183 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
home = {
|
||||
username = "chase";
|
||||
homeDirectory = "/home/chase";
|
||||
preferXdgDirectories = true;
|
||||
file = {
|
||||
"scripts" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink ./scripts;
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
sessionPath = [
|
||||
"$HOME/scripts"
|
||||
];
|
||||
shellAliases = {
|
||||
gs = "git status";
|
||||
"..." = "cd ../..";
|
||||
};
|
||||
};
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
userDirs.enable = true;
|
||||
configFile = {
|
||||
"emacs/early-init.el" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink ./emacs/early-init.el;
|
||||
};
|
||||
"emacs/init.el" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink ./emacs/init.el;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
};
|
||||
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
bashrcExtra = ''
|
||||
export SSH_AUTH_SOCK=/home/chase/.bitwarden-ssh-agent.sock
|
||||
'';
|
||||
historyIgnore = [
|
||||
"ls"
|
||||
"ls -a"
|
||||
"ls -l"
|
||||
"ls -la"
|
||||
"cd"
|
||||
"exit"
|
||||
];
|
||||
};
|
||||
|
||||
programs.bat.enable = true;
|
||||
|
||||
programs.fastfetch = {
|
||||
enable = true;
|
||||
settings = {
|
||||
logo = {
|
||||
source = "nixos_small";
|
||||
};
|
||||
display = {
|
||||
size = {
|
||||
binaryPrefix = "si";
|
||||
};
|
||||
color = "blue";
|
||||
separator = ": ";
|
||||
};
|
||||
modules = [
|
||||
"title"
|
||||
"separator"
|
||||
"os"
|
||||
"host"
|
||||
"uptime"
|
||||
"kernel"
|
||||
"packages"
|
||||
"lm"
|
||||
"de"
|
||||
"wm"
|
||||
"shell"
|
||||
"terminal"
|
||||
"terminalfont"
|
||||
{
|
||||
key = "Display";
|
||||
type = "display";
|
||||
}
|
||||
"cpu"
|
||||
"gpu"
|
||||
"memory"
|
||||
"swap"
|
||||
"disk"
|
||||
"datetime"
|
||||
"colors"
|
||||
"break"
|
||||
"player"
|
||||
"media"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "chase";
|
||||
userEmail = "chase@cathoderaytube.net";
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
};
|
||||
};
|
||||
|
||||
programs.git-credential-oauth.enable = true;
|
||||
|
||||
programs.gpg = {
|
||||
enable = true;
|
||||
homedir = "${config.xdg.dataHome}/gnupg";
|
||||
};
|
||||
|
||||
programs.htop.enable = true;
|
||||
|
||||
programs.ranger.enable = true;
|
||||
|
||||
programs.rmpc = {
|
||||
enable = true;
|
||||
config = ''
|
||||
(
|
||||
enable_config_hot_reload: true,
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
||||
# programs.senpai.enable = true;
|
||||
|
||||
# programs.sm64ex.enable = true;
|
||||
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
settings = {
|
||||
line_break = {
|
||||
disabled = true;
|
||||
};
|
||||
username = {
|
||||
style_user = "bold blue";
|
||||
format = "[$user]($style)@";
|
||||
show_always = true;
|
||||
};
|
||||
hostname = {
|
||||
style = "bold cyan";
|
||||
format = "[$ssh_symbol$hostname]($style) ";
|
||||
ssh_only = false;
|
||||
};
|
||||
directory = {
|
||||
style = "bold green";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.texlive.enable = true;
|
||||
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
};
|
||||
|
||||
programs.yt-dlp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
embed-thumbnail = true;
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
ffmpeg
|
||||
fortune
|
||||
imagemagick
|
||||
lolcat
|
||||
nerd-fonts.blex-mono
|
||||
];
|
||||
}
|
@@ -4,115 +4,14 @@
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./plasma.nix
|
||||
./base.nix
|
||||
];
|
||||
|
||||
home = {
|
||||
username = "chase";
|
||||
homeDirectory = "/home/chase";
|
||||
preferXdgDirectories = true;
|
||||
stateVersion = "24.11";
|
||||
file = {
|
||||
"scripts" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink ./scripts;
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
sessionPath = [
|
||||
"$HOME/scripts"
|
||||
];
|
||||
shellAliases = {
|
||||
gs = "git status";
|
||||
"..." = "cd ../..";
|
||||
};
|
||||
};
|
||||
|
||||
xdg = {
|
||||
enable = true;
|
||||
userDirs.enable = true;
|
||||
configFile = {
|
||||
"emacs/early-init.el" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink ./emacs/early-init.el;
|
||||
};
|
||||
"emacs/init.el" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink ./emacs/init.el;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
};
|
||||
|
||||
programs.bash = {
|
||||
enable = true;
|
||||
enableCompletion = true;
|
||||
bashrcExtra = ''
|
||||
export SSH_AUTH_SOCK=/home/chase/.bitwarden-ssh-agent.sock
|
||||
'';
|
||||
historyIgnore = [
|
||||
"ls"
|
||||
"ls -a"
|
||||
"ls -l"
|
||||
"ls -la"
|
||||
"cd"
|
||||
"exit"
|
||||
];
|
||||
};
|
||||
|
||||
programs.bat.enable = true;
|
||||
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
package = pkgs.emacs-pgtk;
|
||||
};
|
||||
|
||||
programs.fastfetch = {
|
||||
enable = true;
|
||||
settings = {
|
||||
logo = {
|
||||
source = "nixos_small";
|
||||
};
|
||||
display = {
|
||||
size = {
|
||||
binaryPrefix = "si";
|
||||
};
|
||||
color = "blue";
|
||||
separator = ": ";
|
||||
};
|
||||
modules = [
|
||||
"title"
|
||||
"separator"
|
||||
"os"
|
||||
"host"
|
||||
"uptime"
|
||||
"kernel"
|
||||
"packages"
|
||||
"lm"
|
||||
"de"
|
||||
"wm"
|
||||
"shell"
|
||||
"terminal"
|
||||
"terminalfont"
|
||||
{
|
||||
key = "Display";
|
||||
type = "display";
|
||||
}
|
||||
"cpu"
|
||||
"gpu"
|
||||
"memory"
|
||||
"swap"
|
||||
"disk"
|
||||
"datetime"
|
||||
"colors"
|
||||
"break"
|
||||
"player"
|
||||
"media"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
nativeMessagingHosts = [pkgs.firefoxpwa];
|
||||
@@ -210,24 +109,6 @@
|
||||
};
|
||||
};
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
userName = "chase";
|
||||
userEmail = "chase@cathoderaytube.net";
|
||||
extraConfig = {
|
||||
init.defaultBranch = "main";
|
||||
};
|
||||
};
|
||||
|
||||
programs.git-credential-oauth.enable = true;
|
||||
|
||||
programs.gpg = {
|
||||
enable = true;
|
||||
homedir = "${config.xdg.dataHome}/gnupg";
|
||||
};
|
||||
|
||||
programs.htop.enable = true;
|
||||
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
enableGitIntegration = true;
|
||||
@@ -251,87 +132,21 @@
|
||||
|
||||
programs.obs-studio.enable = true;
|
||||
|
||||
programs.ranger.enable = true;
|
||||
|
||||
programs.rmpc = {
|
||||
enable = true;
|
||||
config = ''
|
||||
(
|
||||
enable_config_hot_reload: true,
|
||||
)
|
||||
'';
|
||||
};
|
||||
|
||||
# programs.senpai.enable = true;
|
||||
|
||||
# programs.sm64ex.enable = true;
|
||||
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
settings = {
|
||||
line_break = {
|
||||
disabled = true;
|
||||
};
|
||||
username = {
|
||||
style_user = "bold blue";
|
||||
format = "[$user]($style)@";
|
||||
show_always = true;
|
||||
};
|
||||
hostname = {
|
||||
style = "bold cyan";
|
||||
format = "[$ssh_symbol$hostname]($style) ";
|
||||
ssh_only = false;
|
||||
};
|
||||
directory = {
|
||||
style = "bold green";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
programs.texlive.enable = true;
|
||||
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd = {
|
||||
enable = true;
|
||||
target = "hyprland-session.target";
|
||||
};
|
||||
};
|
||||
|
||||
programs.yazi = {
|
||||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
};
|
||||
|
||||
programs.yt-dlp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
embed-thumbnail = true;
|
||||
};
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
anki-bin
|
||||
audacity
|
||||
ffmpeg
|
||||
fortune
|
||||
gimp
|
||||
ibm-plex
|
||||
imagemagick
|
||||
kdePackages.kdenlive
|
||||
libnotify
|
||||
libreoffice
|
||||
logiops
|
||||
lolcat
|
||||
nerd-fonts.blex-mono
|
||||
picard
|
||||
protonmail-bridge
|
||||
thunderbird
|
||||
vcv-rack
|
||||
runelite
|
||||
];
|
||||
|
||||
services.arrpc.enable = true;
|
||||
|
||||
services.emacs = {
|
||||
@@ -347,18 +162,6 @@
|
||||
defaultEditor = true;
|
||||
};
|
||||
|
||||
services.hyprpolkitagent.enable = true;
|
||||
|
||||
services.hyprsunset.enable = true;
|
||||
|
||||
services.hyprpaper = {
|
||||
enable = true;
|
||||
settings = {
|
||||
preload = ["/home/chase/nixos-config/home/wallpaper.jpg"];
|
||||
wallpaper = ["/home/chase/nixos-config/home/wallpaper.jpg"];
|
||||
};
|
||||
};
|
||||
|
||||
services.mako.enable = true;
|
||||
|
||||
services.mpd = {
|
||||
@@ -388,11 +191,4 @@
|
||||
enable = true;
|
||||
mpd.useLocal = true;
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = null;
|
||||
portalPackage = null;
|
||||
systemd.enable = true;
|
||||
};
|
||||
}
|
32
home/hypr.nix
Normal file
32
home/hypr.nix
Normal file
@@ -0,0 +1,32 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd = {
|
||||
enable = true;
|
||||
target = "hyprland-session.target";
|
||||
};
|
||||
};
|
||||
|
||||
services.hyprpolkitagent.enable = true;
|
||||
|
||||
services.hyprsunset.enable = true;
|
||||
|
||||
services.hyprpaper = {
|
||||
enable = true;
|
||||
settings = {
|
||||
preload = ["/home/chase/nixos-config/home/wallpaper.jpg"];
|
||||
wallpaper = ["/home/chase/nixos-config/home/wallpaper.jpg"];
|
||||
};
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
package = null;
|
||||
portalPackage = null;
|
||||
systemd.enable = true;
|
||||
};
|
||||
}
|
21
hosts/anzu/configuration.nix
Normal file
21
hosts/anzu/configuration.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../nixos/desktop.nix
|
||||
];
|
||||
|
||||
hardware.graphics = {
|
||||
extraPackages = with pkgs; [
|
||||
amdvlk
|
||||
];
|
||||
extraPackages32 = with pkgs; [
|
||||
driversi686Linux.amdvlk
|
||||
];
|
||||
};
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
}
|
13
hosts/anzu/home.nix
Normal file
13
hosts/anzu/home.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
../../home/desktop.nix
|
||||
../../home/hypr.nix
|
||||
../../home/plasma.nix
|
||||
];
|
||||
|
||||
home.stateVersion = "24.11";
|
||||
}
|
22
hosts/hosts.nix
Normal file
22
hosts/hosts.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
let
|
||||
user = "chase";
|
||||
in {
|
||||
anzu = {
|
||||
hostname = "anzu";
|
||||
dir = "anzu";
|
||||
arch = "x86_64-Linux";
|
||||
user = user;
|
||||
};
|
||||
ichigo = {
|
||||
hostname = "ichigo";
|
||||
dir = "ichigo";
|
||||
arch = "x86_64-Linux";
|
||||
user = user;
|
||||
};
|
||||
kuromi = {
|
||||
hostname = "kuromi";
|
||||
dir = "kuromi";
|
||||
arch = "x86_64-Linux";
|
||||
user = user;
|
||||
};
|
||||
}
|
21
hosts/ichigo/configuration.nix
Normal file
21
hosts/ichigo/configuration.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
../../nixos/desktop.nix
|
||||
];
|
||||
|
||||
hardware.graphics = {
|
||||
extraPackages = with pkgs; [
|
||||
amdvlk
|
||||
];
|
||||
extraPackages32 = with pkgs; [
|
||||
driversi686Linux.amdvlk
|
||||
];
|
||||
};
|
||||
|
||||
system.stateVersion = "24.11";
|
||||
}
|
13
hosts/ichigo/home.nix
Normal file
13
hosts/ichigo/home.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
../../home/desktop.nix
|
||||
../../home/hypr.nix
|
||||
../../home/plasma.nix
|
||||
];
|
||||
|
||||
home.stateVersion = "24.11";
|
||||
}
|
156
nixos/base.nix
Normal file
156
nixos/base.nix
Normal file
@@ -0,0 +1,156 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot = {
|
||||
enable = true;
|
||||
configurationLimit = 10;
|
||||
};
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
# Garbage collection
|
||||
nix.gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 1w";
|
||||
};
|
||||
|
||||
# Optimize store
|
||||
nix.settings.auto-optimise-store = true;
|
||||
|
||||
# Allow power management
|
||||
powerManagement.enable = true;
|
||||
|
||||
# Firmware updates
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "America/New_York";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "en_US.UTF-8";
|
||||
LC_IDENTIFICATION = "en_US.UTF-8";
|
||||
LC_MEASUREMENT = "en_US.UTF-8";
|
||||
LC_MONETARY = "en_US.UTF-8";
|
||||
LC_NAME = "en_US.UTF-8";
|
||||
LC_NUMERIC = "en_US.UTF-8";
|
||||
LC_PAPER = "en_US.UTF-8";
|
||||
LC_TELEPHONE = "en_US.UTF-8";
|
||||
LC_TIME = "C.UTF-8";
|
||||
};
|
||||
|
||||
# Catppuccin
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
};
|
||||
|
||||
# Configure keymap
|
||||
console.keyMap = "jp106";
|
||||
|
||||
services.xserver.xkb = {
|
||||
layout = lib.mkDefault "jp";
|
||||
model = "jp106";
|
||||
};
|
||||
|
||||
# Enable CUPS to print documents.
|
||||
services.printing.enable = true;
|
||||
|
||||
# Enable Flakes
|
||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||
|
||||
# Allow unfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
# Bash config
|
||||
programs.bash = {
|
||||
blesh.enable = true;
|
||||
};
|
||||
|
||||
# Define a user account
|
||||
users.users.chase = {
|
||||
isNormalUser = true;
|
||||
description = "Chase";
|
||||
extraGroups = ["networkmanager" "wheel"];
|
||||
};
|
||||
|
||||
# Install git and enable cache
|
||||
programs.git = {
|
||||
enable = true;
|
||||
config = {
|
||||
init = {
|
||||
defaultBranch = "main";
|
||||
};
|
||||
credential = {
|
||||
helper = "cache --timeout 21600";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Install Neovim
|
||||
programs.neovim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
configure = {
|
||||
customRC = ''
|
||||
set autoindent
|
||||
set number relativenumber
|
||||
set tabstop=4
|
||||
colorscheme catppuccin-mocha
|
||||
'';
|
||||
packages.myVimPackage = with pkgs.vimPlugins; {
|
||||
start = [catppuccin-nvim];
|
||||
};
|
||||
};
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
};
|
||||
|
||||
# List packages installed in system profile.
|
||||
environment.systemPackages = with pkgs; [
|
||||
alejandra
|
||||
bitwarden-cli
|
||||
cifs-utils
|
||||
flashrom
|
||||
gcc
|
||||
nixd
|
||||
pciutils
|
||||
python3
|
||||
qemu
|
||||
rustup
|
||||
usbutils
|
||||
wget
|
||||
];
|
||||
|
||||
nix.nixPath = ["nixpkgs=${inputs.nixpkgs}"];
|
||||
|
||||
# ssh agent
|
||||
# programs.mtr.enable = true;
|
||||
programs.gnupg.agent.enable = true;
|
||||
|
||||
programs.ssh = {
|
||||
enableAskPassword = false;
|
||||
};
|
||||
|
||||
services.fstrim.enable = lib.mkDefault true;
|
||||
|
||||
# Enable the OpenSSH daemon.
|
||||
services.openssh = {
|
||||
enable = true;
|
||||
settings = {
|
||||
PermitRootLogin = "no";
|
||||
PasswordAuthentication = false;
|
||||
KbdInteractiveAuthentication = false;
|
||||
};
|
||||
};
|
||||
}
|
138
nixos/desktop.nix
Normal file
138
nixos/desktop.nix
Normal file
@@ -0,0 +1,138 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
./base.nix
|
||||
];
|
||||
# Use latest stable kernel
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
# Enable Bluetooth
|
||||
hardware.bluetooth.enable = true;
|
||||
|
||||
# Enable the KDE Plasma Desktop Environment.
|
||||
services.xserver.enable = true;
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
extraPackages = [pkgs.kdePackages.sddm-kcm];
|
||||
wayland.enable = true;
|
||||
enableHidpi = true;
|
||||
};
|
||||
|
||||
services.desktopManager.plasma6.enable = true;
|
||||
environment.plasma6.excludePackages = with pkgs.kdePackages; [
|
||||
elisa
|
||||
kate
|
||||
];
|
||||
|
||||
# Cachix for Hyprland
|
||||
nix.settings = {
|
||||
substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-substituters = ["https://hyprland.cachix.org"];
|
||||
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
||||
};
|
||||
|
||||
# Hyprland
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
package = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.hyprland;
|
||||
portalPackage = inputs.hyprland.packages.${pkgs.stdenv.hostPlatform.system}.xdg-desktop-portal-hyprland;
|
||||
};
|
||||
|
||||
# Catppuccin
|
||||
catppuccin = {
|
||||
sddm = {
|
||||
enable = true;
|
||||
background = "/home/chase/nixos-config/home/wallpaper.jpg";
|
||||
flavor = "mocha";
|
||||
font = "IBM Plex Sans";
|
||||
fontSize = "11";
|
||||
};
|
||||
};
|
||||
|
||||
# Enable graphics
|
||||
hardware.graphics = {
|
||||
enable = true;
|
||||
enable32Bit = true;
|
||||
};
|
||||
|
||||
i18n.inputMethod = {
|
||||
type = "fcitx5";
|
||||
enable = true;
|
||||
fcitx5.addons = with pkgs; [
|
||||
fcitx5-mozc
|
||||
kdePackages.fcitx5-qt
|
||||
];
|
||||
fcitx5.waylandFrontend = true;
|
||||
};
|
||||
|
||||
# Fonts
|
||||
fonts = {
|
||||
packages = with pkgs; [
|
||||
ibm-plex
|
||||
liberation_ttf
|
||||
nerd-fonts.blex-mono
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
noto-fonts-emoji
|
||||
];
|
||||
fontconfig = {
|
||||
defaultFonts = {
|
||||
serif = ["IBM Plex Serif"];
|
||||
sansSerif = ["IBM Plex Sans"];
|
||||
monospace = ["BlexMono Nerd Font"];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Enable sound with pipewire.
|
||||
services.pulseaudio.enable = false;
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
|
||||
# Install firefox
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
nativeMessagingHosts.packages = [pkgs.firefoxpwa];
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxAccounts = true;
|
||||
DisableFirefoxStudies = true;
|
||||
DisablePocket = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Install Steam
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
dedicatedServer.openFirewall = true;
|
||||
localNetworkGameTransfers.openFirewall = true;
|
||||
};
|
||||
|
||||
# List packages installed in system profile.
|
||||
environment.systemPackages = with pkgs; [
|
||||
bitwarden-desktop
|
||||
(catppuccin-kde.override {
|
||||
flavour = ["mocha"];
|
||||
accents = [
|
||||
"blue"
|
||||
"lavender"
|
||||
"pink"
|
||||
"sapphire"
|
||||
];
|
||||
winDecStyles = ["classic"];
|
||||
})
|
||||
firefoxpwa
|
||||
];
|
||||
|
||||
services.fprintd.enable = true;
|
||||
}
|
Reference in New Issue
Block a user