summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/deploy.nix23
-rw-r--r--lib/hosts.nix80
2 files changed, 0 insertions, 103 deletions
diff --git a/lib/deploy.nix b/lib/deploy.nix
deleted file mode 100644
index 1b8d1f2..0000000
--- a/lib/deploy.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ pkgs, hosts, groups }:
-
-with pkgs.lib;
-
-(
- mapAttrs (name: hosts: pkgs.writeScript "deploy-group-${name}" ''
- #!${pkgs.runtimeShell}
- export PATH=
- ${concatMapStrings (host: ''
- echo "deploying ${host.config.networking.hostName}..."
- ${host.config.system.build.deployScript} $1 &
- PID_LIST+=" $!"
- '') hosts}
- # FIXME: remove jobs from PIDLIST once they finish
- trap "kill $PID_LIST" SIGINT
- wait $PID_LIST
- '') groups
-) // (
- mapAttrs
- (name: host: host.config.system.build.deployScript)
- (filterAttrs (_: host: host.config.hexchen.deploy.enable) hosts)
-)
-
diff --git a/lib/hosts.nix b/lib/hosts.nix
deleted file mode 100644
index 91b6b40..0000000
--- a/lib/hosts.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-{
- pkgs,
- hostsDir ? ../hosts,
- commonImports ? [],
- pkgsPath ? ../pkgs,
- modules ? {},
- overlays ? {},
- profiles ? {},
- users ? {},
- sources ? {}
-}:
-
-with pkgs.lib;
-
-rec {
- hostNames = attrNames (
- filterAttrs (
- name: type: type == "directory"
- ) (
- builtins.readDir hostsDir
- )
- );
-
- hostConfig = hostName: { config, ... }: {
- _module.args = {
- inherit hosts groups;
- };
- imports = [
- (import (hostsDir + "/${hostName}/configuration.nix"))
- # urgh, yes, we still need to manually import the deploy module for now
- # at least if i want to keep my thing reusable.
- ../modules/deploy
- ] ++ commonImports;
- networking = {
- inherit hostName;
- };
- nixpkgs.pkgs =
- let pkgs = import pkgsPath {
- inherit (config.nixpkgs) config system;
- };
- in if pkgs ? nixpkgs then pkgs.nixpkgs else pkgs;
- };
-
- hosts = listToAttrs (
- map (
- hostName: nameValuePair hostName (
- import (pkgs.path + "/nixos/lib/eval-config.nix") {
- modules = [
- (hostConfig hostName)
- (if sources ? home-manager then sources.home-manager + "/nixos" else {})
- ];
- specialArgs = { inherit modules overlays profiles users sources; };
- }
- )
- ) hostNames
- );
-
- groupNames = unique (
- concatLists (
- mapAttrsToList (
- name: host: host.config.hexchen.deploy.groups
- ) hosts
- )
- );
-
- groups = listToAttrs (
- map (
- groupName: nameValuePair groupName (
- filter (
- host: elem groupName host.config.hexchen.deploy.groups
- ) (
- attrValues (
- filterAttrs (_: h: h.config.hexchen.deploy.enable) hosts
- )
- )
- )
- ) groupNames
- );
-}
-