nix-config/flake.nix

77 lines
2.1 KiB
Nix
Raw Permalink Normal View History

2022-02-23 12:40:21 +01:00
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
2023-07-26 11:57:46 +02:00
nixpkgs-stable.url = "nixpkgs/nixos-23.05";
2022-03-05 18:52:59 +01:00
2022-02-23 12:40:21 +01:00
home-manager = {
2022-03-05 18:52:59 +01:00
url = "github:nix-community/home-manager/master";
2022-02-23 12:40:21 +01:00
inputs.nixpkgs.follows = "nixpkgs";
};
impermanence.url = "github:nix-community/impermanence";
2022-05-24 09:47:14 +02:00
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
};
2022-02-23 12:40:21 +01:00
};
2022-07-11 16:46:10 +02:00
2023-07-23 16:53:16 +02:00
outputs =
{ self
, nixpkgs
, nixpkgs-stable
, nixos-hardware
, home-manager
, impermanence
, agenix
2023-08-12 17:33:27 +02:00
, ...
2023-08-04 17:45:37 +02:00
}@inputs:
let
2023-08-12 17:33:27 +02:00
inherit (self) outputs;
2023-08-04 17:45:37 +02:00
in
2023-08-12 17:33:27 +02:00
rec {
overlays = import ./overlays { inherit inputs; };
2023-08-13 12:30:14 +02:00
nixosModules = import ./modules/nixos;
homeManagerModules = import ./modules/home-manager;
secrets = import ./secrets;
2023-08-13 12:30:14 +02:00
stablePkgs = nixpkgs-stable.legacyPackages."x86_64-linux";
2023-08-12 17:33:27 +02:00
2022-03-05 18:52:59 +01:00
nixosConfigurations = {
trantor = nixpkgs.lib.nixosSystem {
modules = [
2023-08-13 12:30:14 +02:00
./hosts/trantor
2022-03-05 18:52:59 +01:00
home-manager.nixosModules.home-manager
impermanence.nixosModules.impermanence
agenix.nixosModules.default
2022-03-05 18:52:59 +01:00
];
};
2022-02-23 12:40:21 +01:00
2022-03-05 18:52:59 +01:00
capibara = nixpkgs.lib.nixosSystem {
2023-08-13 12:30:14 +02:00
specialArgs = { inherit stablePkgs impermanence inputs outputs; };
2022-03-05 18:52:59 +01:00
modules = [
2023-08-13 12:30:14 +02:00
./hosts/capibara
2022-05-24 09:47:14 +02:00
nixos-hardware.nixosModules.lenovo-thinkpad-x230
2022-03-05 18:52:59 +01:00
home-manager.nixosModules.home-manager
impermanence.nixosModules.impermanence
agenix.nixosModules.default
2022-03-05 18:52:59 +01:00
];
};
2022-02-23 12:40:21 +01:00
};
2023-08-04 17:45:37 +02:00
homeConfigurations = {
2023-08-12 17:33:27 +02:00
"rilla@echidna" = home-manager.lib.homeManagerConfiguration {
2023-08-12 17:33:27 +02:00
pkgs = nixpkgs.legacyPackages.x86_64-linux;
extraSpecialArgs = { inherit inputs outputs; };
2023-08-13 12:30:14 +02:00
modules = [ ./hosts/echidna/home.nix ];
2023-08-04 17:45:37 +02:00
};
2023-08-13 12:30:14 +02:00
"ricard@coder-workspace" = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
extraSpecialArgs = { inherit inputs outputs; };
modules = [ ./hosts/coder-workspace/home.nix ];
};
2023-08-04 17:45:37 +02:00
};
2022-02-23 12:40:21 +01:00
};
}