selfprivacy-nixos-config/flake.nix

41 lines
1.1 KiB
Nix
Raw Normal View History

2023-07-15 12:52:46 +00:00
{
description = "Selfprivacy NixOS configuration flake";
inputs = {
2023-07-17 00:58:26 +00:00
nixpkgs.url = "github:nixos/nixpkgs";
selfprivacy-overlay.url =
2023-07-17 00:58:26 +00:00
"git+https://git.selfprivacy.org/SelfPrivacy/selfprivacy-nix-repo.git";
# these inputs are expected to be set by the caller
# for example, upon nix build using --override-input
userdata-json.flake = false; # userdata.json
hardware-configuration-nix.flake = false; # hardware-configuration.nix
2023-07-15 12:52:46 +00:00
};
outputs =
{ self
, nixpkgs
, selfprivacy-overlay
, userdata-json
, hardware-configuration-nix
}:
2023-07-15 12:52:46 +00:00
let
system = "x86_64-linux";
userdata = builtins.fromJSON (builtins.readFile userdata-json);
hardware-configuration = import hardware-configuration-nix;
2023-07-15 12:52:46 +00:00
in
{
nixosConfigurations = {
2023-07-15 12:52:46 +00:00
just-nixos = nixpkgs.lib.nixosSystem {
specialArgs = { inherit system userdata; };
modules = [
{ nixpkgs.overlays = [ selfprivacy-overlay.overlay ]; }
hardware-configuration
./configuration.nix
];
2023-07-15 12:52:46 +00:00
};
};
};
}