2023-08-01 15:35:09 +02:00
|
|
|
{
|
|
|
|
description = "NixOS system";
|
|
|
|
|
|
|
|
inputs = {
|
|
|
|
nixpkgs = {
|
|
|
|
url = "github:NixOS/nixpkgs/nixos-23.05";
|
|
|
|
};
|
2023-08-13 19:28:37 +02:00
|
|
|
nixpkgs-unstable = {
|
|
|
|
url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
|
|
};
|
2023-08-01 15:35:09 +02:00
|
|
|
impermanence = {
|
|
|
|
url = "github:nix-community/impermanence";
|
|
|
|
};
|
|
|
|
nix-index-database = {
|
|
|
|
url = "github:nix-community/nix-index-database";
|
2023-08-01 16:55:53 +02:00
|
|
|
inputs.nixpkgs.follows = "nixpkgs"; # use the same nixpkgs as the system
|
2023-08-01 15:35:09 +02:00
|
|
|
};
|
|
|
|
home-manager = {
|
|
|
|
url = "github:nix-community/home-manager/release-23.05";
|
2023-08-01 16:55:53 +02:00
|
|
|
inputs.nixpkgs.follows = "nixpkgs"; # use the same nixpkgs as the system
|
2023-08-01 15:35:09 +02:00
|
|
|
};
|
2023-08-13 19:28:37 +02:00
|
|
|
home-manager-unstable = {
|
|
|
|
url = "github:nix-community/home-manager/master";
|
|
|
|
inputs.nixpkgs.follows = "nixpkgs"; # use the same nixpkgs as the system
|
|
|
|
};
|
2023-08-01 15:35:09 +02:00
|
|
|
};
|
|
|
|
|
2023-08-26 18:02:50 +02:00
|
|
|
outputs = { self, nixpkgs, ... } @ inputs: {
|
2023-08-01 16:55:53 +02:00
|
|
|
# https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-fmt.html
|
|
|
|
formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.nixpkgs-fmt;
|
|
|
|
|
2023-08-01 15:35:09 +02:00
|
|
|
nixosConfigurations = {
|
|
|
|
# Home desktop
|
|
|
|
omega = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "x86_64-linux";
|
2023-08-01 16:55:53 +02:00
|
|
|
specialArgs = inputs; # pass flake inputs to modules
|
2023-08-13 19:28:37 +02:00
|
|
|
modules = [ ./hosts/omega ];
|
2023-08-01 15:35:09 +02:00
|
|
|
};
|
2023-08-01 16:31:44 +02:00
|
|
|
# Laptop
|
|
|
|
zeta = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "x86_64-linux";
|
2023-08-01 16:55:53 +02:00
|
|
|
specialArgs = inputs; # pass flake inputs to modules
|
2023-08-13 19:28:37 +02:00
|
|
|
modules = [ ./hosts/zeta ];
|
2023-08-01 16:31:44 +02:00
|
|
|
};
|
2023-10-07 02:18:22 +02:00
|
|
|
# Work laptop
|
|
|
|
mu = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "x86_64-linux";
|
|
|
|
specialArgs = inputs; # pass flake inputs to modules
|
|
|
|
modules = [ ./hosts/mu ];
|
|
|
|
};
|
2023-08-06 00:45:08 +02:00
|
|
|
# Tor relay
|
|
|
|
tor = nixpkgs.lib.nixosSystem {
|
|
|
|
system = "x86_64-linux";
|
|
|
|
specialArgs = inputs; # pass flake inputs to modules
|
2023-08-13 19:28:37 +02:00
|
|
|
modules = [ ./hosts/tor ];
|
2023-08-06 00:45:08 +02:00
|
|
|
};
|
2023-08-01 15:35:09 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|