nixos-config/krops.nix

61 lines
1.4 KiB
Nix
Raw Normal View History

2021-09-24 06:09:20 +02:00
{ writeCommand, lib, ... }:
let
secrets = name: {
secrets.pass = {
dir = toString ~/.password-store;
name = "krops/${name}/secrets";
};
common_secrets.pass = {
dir = toString ~/.password-store;
name = "krops/common_secrets";
};
};
desktopSecrets = {
desktop_secrets.pass = {
dir = toString ~/.password-store;
name = "krops/desktop_secrets";
};
};
source = {
# only workhorse
# property.file = toString ./submodules/property;
assets.file = toString ./assets;
configs.file = toString ./configs;
library.file = toString ./library;
modules.file = toString ./modules;
#mqtt.file = toString ./mqtt;
pkgs.file = toString ./pkgs;
system.file = toString ./system;
#backup-module.file = toString ~/dev/backup;
backup-module.git = {
url = "https://git.ingolf-wagner.de/nix-modules/backup.git";
ref = "1.3.3";
};
#kops-lib.file = toString ~/dev/krops-lib;
krops-lib.git = {
url = "https://git.ingolf-wagner.de/nix-modules/krops.git";
ref = "1.0.3";
};
#cluster-module.file = toString ~/dev/cluster-module;
cluster-module.git = {
url = "https://git.ingolf-wagner.de/nix-modules/cluster.git";
ref = "1.2.0";
};
};
in {
sterni = writeCommand "deploy-sterni" {
source = source // (secrets "sterni") // desktopSecrets;
target = lib.mkTarget "root@sterni.private";
};
}