noisebell/flake.nix

42 lines
1.1 KiB
Nix

{
description = "Noisebell - door monitor system";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
agenix = {
url = "github:ryantm/agenix";
inputs.nixpkgs.follows = "nixpkgs";
};
pi-service.url = "path:./pi/pi-service";
remote.url = "path:./remote";
remote.inputs.nixpkgs.follows = "nixpkgs";
};
outputs = { self, nixpkgs, agenix, pi-service, remote }: {
nixosModules = remote.nixosModules;
nixosConfigurations.pi = nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
modules = [
agenix.nixosModules.default
(import ./pi/module.nix {
pkg = pi-service.packages.aarch64-linux.default;
rev = self.shortRev or "dirty";
})
./pi/configuration.nix
./pi/hardware-configuration.nix
];
};
nixosConfigurations.bootstrap = nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
modules = [ ./pi/bootstrap.nix ];
};
devShells.x86_64-linux.default = let
pkgs = nixpkgs.legacyPackages.x86_64-linux;
in pkgs.mkShell {
packages = [ agenix.packages.x86_64-linux.default ];
};
};
}