65 lines
1.5 KiB
Nix
65 lines
1.5 KiB
Nix
|
{
|
||
|
description = "nixos configurations";
|
||
|
|
||
|
inputs = {
|
||
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-24.11";
|
||
|
|
||
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||
|
|
||
|
sops-nix.url = "github:Mic92/sops-nix";
|
||
|
sops-nix.inputs.nixpkgs.follows = "nixpkgs";
|
||
|
|
||
|
disko.url = "github:nix-community/disko";
|
||
|
disko.inputs.nixpkgs.follows = "nixpkgs";
|
||
|
|
||
|
impermanence.url = "github:nix-community/impermanence";
|
||
|
|
||
|
nixos-hardware.url = "github:nixos/nixos-hardware";
|
||
|
nixos-hardware.inputs.nixpkgs.follows = "nixpkgs";
|
||
|
|
||
|
home-manager.url = "github:nix-community/home-manager";
|
||
|
home-manager.inputs.nixpkgs.follows = "nixpkgs";
|
||
|
};
|
||
|
|
||
|
nixConfig = {
|
||
|
extra-substituters = [
|
||
|
"https://nix-community.cachix.org"
|
||
|
];
|
||
|
extra-trusted-public-keys = [
|
||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||
|
];
|
||
|
};
|
||
|
|
||
|
outputs = inputs @ {self, ...}:
|
||
|
inputs.flake-parts.lib.mkFlake {inherit inputs;} {
|
||
|
flake = let
|
||
|
hosts = import ./hosts {inherit inputs;};
|
||
|
in {
|
||
|
inherit (hosts) nixosConfigurations homeConfigurations;
|
||
|
};
|
||
|
|
||
|
systems = ["x86_64-linux"];
|
||
|
|
||
|
perSystem = {
|
||
|
system,
|
||
|
pkgs,
|
||
|
...
|
||
|
}: {
|
||
|
devShells.default = pkgs.mkShell {
|
||
|
packages = with pkgs; [
|
||
|
sops
|
||
|
ssh-to-age
|
||
|
# not included: age, gpg, pcscd, scdaemon, etc.
|
||
|
|
||
|
disko
|
||
|
|
||
|
nil
|
||
|
alejandra
|
||
|
statix
|
||
|
deadnix
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|