nixos-config/flake.nix

54 lines
1.4 KiB
Nix

{
description = "my krops file";
inputs = {
secrets = {
url = "path:/home/palo/dev/secrets";
flake = false;
};
sops-nix.url = "github:Mic92/sops-nix";
flake-utils.url = "github:numtide/flake-utils";
nixpkgs.url = "github:nixos/nixpkgs/nixos-21.05";
nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable";
doom-emacs-nix = {
url = "github:vlaci/nix-doom-emacs";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager/release-21.05";
inputs.nixpkgs.follows = "nixpkgs";
};
krops = {
url = "github:Mic92/krops";
inputs.flake-utils.follows = "flake-utils";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, sops-nix, nixpkgs, home-manager, krops, flake-utils
, doom-emacs-nix, nixpkgs-unstable, secrets, ... }:
(flake-utils.lib.eachSystem [ "x86_64-linux" ] (system:
let
pkgs = nixpkgs.legacyPackages.${system};
writeCommand = krops.packages.${system}.writeCommand;
in {
# deploy like this:
# nix run ".#deploy.sterni"
apps.deploy = pkgs.callPackage ./krops.nix {
inherit writeCommand secrets;
lib = krops.lib;
};
})) // {
nixosConfigurations = import ./configurations.nix {
inherit nixpkgs home-manager nixpkgs-unstable sops-nix doom-emacs-nix;
};
};
}