modules: add hexchen's network thing

This commit is contained in:
hexchen 2021-04-25 19:41:46 +00:00 committed by kat witch
parent e0aa1fc238
commit 017372b348
No known key found for this signature in database
GPG key ID: 1B477797DCA5EC72
4 changed files with 57 additions and 2 deletions

View file

@ -0,0 +1,5 @@
{ config, lib, pkgs, ... }:
{
}

View file

@ -0,0 +1,36 @@
{ config, lib, pkgs, sources, ... }:
with lib;
let
hexchen = (import sources.nix-hexchen) {};
hexYgg = filterAttrs (_: c: c.enable) (
mapAttrs (_: host: host.config.hexchen.network) hexchen.hosts
);
in {
# stuff so dummy host is buildable (you probably don't want/need this???)
# but idk your config sooooo
boot.isContainer = true;
networking.useDHCP = false;
users.users.root.hashedPassword = "";
hexchen.network = {
enable = true;
pubkey = "0000000000000000000000000000000000000000000000000000000000000000";
listen.enable = true;
listen.endpoints = flatten (map (c: c.listen.endpoints) (filter (c: c.listen.enable) (attrValues hexYgg)));
extra.pubkeys = {
} // (mapAttrs (_: c: c.pubkey) hexYgg);
};
# snippet for single host
# hexchen.network = {
# enable = true;
# pubkey = "0000000000000000000000000000000000000000000000000000000000000000";
# # if server, enable this and set endpoint:
# listen.enable = false;
# listen.endpoints = [
# "tcp://0.0.0.0:0"
# ];
# };
}

View file

@ -1,10 +1,17 @@
{ sources, ... }:
{ sources, lib, ... }:
{
let
hexchen = (import sources.nix-hexchen) {};
in {
imports = [
./deploy
./tf-glue
(sources.tf-nix + "/modules/nixos/secrets.nix")
(sources.tf-nix + "/modules/nixos/secrets-users.nix")
hexchen.modules.hexnet
];
# stubs for hexchens modules, until more generalized
options.hexchen.dns = lib.mkOption {};
options.hexchen.deploy = lib.mkOption {};
}

View file

@ -59,6 +59,13 @@
"url": "https://github.com/vlaci/nix-doom-emacs/archive/51645030623075a50f0f2fb8e95d113336fa109f.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
},
"nix-hexchen": {
"branch": "main",
"ref": "main",
"repo": "https://gitlab.com/hexchen/nixfiles",
"rev": "c0cb61737832d3332984b92939eb15e90ed6b8c2",
"type": "git"
},
"nixos-mailserver": {
"branch": "master",
"ref": "master",