Nix-Config/flake.nix

105 lines
2.6 KiB
Nix
Raw Normal View History

2023-03-09 18:49:28 +00:00
{
description = "~tsv's system config";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-03-15 14:58:55 +00:00
devenv.url = "github:cachix/devenv/latest";
2023-04-01 21:18:50 +00:00
hyprland.url = "github:hyprwm/Hyprland";
2023-04-28 18:09:55 +00:00
hyprcontrib.url = "github:hyprwm/contrib";
2023-04-04 08:06:26 +00:00
flake-utils.url = "github:numtide/flake-utils";
codeium = {
url = "github:jcdickinson/codeium.nvim";
inputs.nixpkgs.follows = "nixpkgs";
};
2023-03-09 18:49:28 +00:00
};
2023-04-28 18:09:55 +00:00
outputs = inputs@{ nixpkgs, home-manager, devenv, hyprland, hyprcontrib, codeium, ... }: {
2023-03-09 18:49:28 +00:00
nixosConfigurations = {
ritchie = nixpkgs.lib.nixosSystem { # My work machine
2023-03-09 18:49:28 +00:00
system = "x86_64-linux";
2023-03-15 14:58:55 +00:00
specialArgs.inputs = inputs;
2023-03-09 18:49:28 +00:00
modules = [
2023-07-07 06:57:08 +00:00
./system/ritchie/ritchie.nix
2023-04-01 21:18:50 +00:00
hyprland.nixosModules.default
2023-06-13 09:42:46 +00:00
{
programs.hyprland = {
enable = true;
2023-08-28 13:38:58 +00:00
enableNvidiaPatches = true;
2023-06-13 09:42:46 +00:00
xwayland = {
enable = true;
};
};
}
2023-04-01 21:18:50 +00:00
home-manager.nixosModules.home-manager {
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.tsv = import users/tsv/ritchie.nix;
users.foxsoft = import users/foxsoft/home.nix;
2023-09-03 14:43:50 +00:00
users.root = import users/root/home.nix;
};
}
2023-03-09 18:49:28 +00:00
];
};
thompson = nixpkgs.lib.nixosSystem { # My personal laptop
system = "x86_64-linux";
specialArgs.inputs = inputs;
modules = [
2023-07-07 06:57:08 +00:00
./system/thompson/thompson.nix
hyprland.nixosModules.default
{ programs.hyprland.enable = true; }
home-manager.nixosModules.home-manager {
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
users.tsv = import users/tsv/thompson.nix;
};
}
];
};
miyamoto = nixpkgs.lib.nixosSystem { # Kid's game and music box
system = "x86_64-linux";
specialArgs.inputs = inputs;
modules = [
2023-07-07 06:57:08 +00:00
./system/miyamoto/miyamoto.nix
];
};
2023-07-02 10:28:50 +00:00
kernighan = nixpkgs.lib.nixosSystem { # Pi home server
system = "aarch64-linux";
specialArgs.inputs = inputs;
modules = [
2023-07-07 06:57:08 +00:00
./system/kernighan/kernighan.nix
2023-07-02 10:28:50 +00:00
];
};
2023-07-07 18:41:07 +00:00
eno = nixpkgs.lib.nixosSystem { # Music player/alarm clock
system = "aarch64-linux";
specialArgs.inputs = inputs;
modules = [
./system/eno/eno.nix
];
};
2023-03-09 18:49:28 +00:00
};
};
}