forked from aylac.top/nixcfg
this repo has no description

unfortunately the knot really doesn't work without ssh

Changed files
+1 -214
hosts
modules
flake
nixos
profiles
backups
snippets
aylac-top
+1 -177
flake.lock
···
"type": "github"
}
},
-
"flake-utils": {
-
"inputs": {
-
"systems": "systems_2"
-
},
-
"locked": {
-
"lastModified": 1694529238,
-
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
-
"owner": "numtide",
-
"repo": "flake-utils",
-
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
-
"type": "github"
-
},
-
"original": {
-
"owner": "numtide",
-
"repo": "flake-utils",
-
"type": "github"
-
}
-
},
"fontix": {
"inputs": {
"actions-nix": "actions-nix_2",
···
"type": "github"
}
},
-
"gomod2nix": {
-
"inputs": {
-
"flake-utils": "flake-utils",
-
"nixpkgs": [
-
"tangled-core",
-
"nixpkgs"
-
]
-
},
-
"locked": {
-
"lastModified": 1754078208,
-
"narHash": "sha256-YVoIFDCDpYuU3riaDEJ3xiGdPOtsx4sR5eTzHTytPV8=",
-
"owner": "nix-community",
-
"repo": "gomod2nix",
-
"rev": "7f963246a71626c7fc70b431a315c4388a0c95cf",
-
"type": "github"
-
},
-
"original": {
-
"owner": "nix-community",
-
"repo": "gomod2nix",
-
"type": "github"
-
}
-
},
"home-manager": {
"inputs": {
"nixpkgs": [
···
"type": "github"
}
},
-
"htmx-src": {
-
"flake": false,
-
"locked": {
-
"narHash": "sha256-nm6avZuEBg67SSyyZUhjpXVNstHHgUxrtBHqJgowU08=",
-
"type": "file",
-
"url": "https://unpkg.com/htmx.org@2.0.4/dist/htmx.min.js"
-
},
-
"original": {
-
"type": "file",
-
"url": "https://unpkg.com/htmx.org@2.0.4/dist/htmx.min.js"
-
}
-
},
-
"htmx-ws-src": {
-
"flake": false,
-
"locked": {
-
"narHash": "sha256-2fg6KyEJoO24q0fQqbz9RMaYNPQrMwpZh29tkSqdqGY=",
-
"type": "file",
-
"url": "https://cdn.jsdelivr.net/npm/htmx-ext-ws@2.0.2"
-
},
-
"original": {
-
"type": "file",
-
"url": "https://cdn.jsdelivr.net/npm/htmx-ext-ws@2.0.2"
-
}
-
},
-
"ibm-plex-mono-src": {
-
"flake": false,
-
"locked": {
-
"lastModified": 1731402384,
-
"narHash": "sha256-OwUmrPfEehLDz0fl2ChYLK8FQM2p0G1+EMrGsYEq+6g=",
-
"type": "tarball",
-
"url": "https://github.com/IBM/plex/releases/download/@ibm/plex-mono@1.1.0/ibm-plex-mono.zip"
-
},
-
"original": {
-
"type": "tarball",
-
"url": "https://github.com/IBM/plex/releases/download/@ibm/plex-mono@1.1.0/ibm-plex-mono.zip"
-
}
-
},
-
"indigo": {
-
"flake": false,
-
"locked": {
-
"lastModified": 1753693716,
-
"narHash": "sha256-DMIKnCJRODQXEHUxA+7mLzRALmnZhkkbHlFT2rCQYrE=",
-
"owner": "oppiliappan",
-
"repo": "indigo",
-
"rev": "5f170569da9360f57add450a278d73538092d8ca",
-
"type": "github"
-
},
-
"original": {
-
"owner": "oppiliappan",
-
"repo": "indigo",
-
"type": "github"
-
}
-
},
-
"inter-fonts-src": {
-
"flake": false,
-
"locked": {
-
"lastModified": 1731687360,
-
"narHash": "sha256-5vdKKvHAeZi6igrfpbOdhZlDX2/5+UvzlnCQV6DdqoQ=",
-
"type": "tarball",
-
"url": "https://github.com/rsms/inter/releases/download/v4.1/Inter-4.1.zip"
-
},
-
"original": {
-
"type": "tarball",
-
"url": "https://github.com/rsms/inter/releases/download/v4.1/Inter-4.1.zip"
-
}
-
},
"lanzaboote": {
"inputs": {
"crane": "crane",
···
"ref": "v0.4.2",
"repo": "lanzaboote",
"type": "github"
-
}
-
},
-
"lucide-src": {
-
"flake": false,
-
"locked": {
-
"lastModified": 1754044466,
-
"narHash": "sha256-+exBR2OToB1iv7ZQI2S4B0lXA/QRvC9n6U99UxGpJGs=",
-
"type": "tarball",
-
"url": "https://github.com/lucide-icons/lucide/releases/download/0.536.0/lucide-icons-0.536.0.zip"
-
},
-
"original": {
-
"type": "tarball",
-
"url": "https://github.com/lucide-icons/lucide/releases/download/0.536.0/lucide-icons-0.536.0.zip"
}
},
"nix-darwin": {
···
"nixpkgs": "nixpkgs_2",
"nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
-
"secrets": "secrets",
-
"tangled-core": "tangled-core"
+
"secrets": "secrets"
}
},
"rust-overlay": {
···
"type": "github"
}
},
-
"sqlite-lib-src": {
-
"flake": false,
-
"locked": {
-
"lastModified": 1706631843,
-
"narHash": "sha256-bJoMjirsBjm2Qk9KPiy3yV3+8b/POlYe76/FQbciHro=",
-
"type": "tarball",
-
"url": "https://sqlite.org/2024/sqlite-amalgamation-3450100.zip"
-
},
-
"original": {
-
"type": "tarball",
-
"url": "https://sqlite.org/2024/sqlite-amalgamation-3450100.zip"
-
}
-
},
"systems": {
"locked": {
"lastModified": 1681028828,
···
"owner": "nix-systems",
"repo": "default",
"type": "github"
-
}
-
},
-
"systems_2": {
-
"locked": {
-
"lastModified": 1681028828,
-
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
-
"owner": "nix-systems",
-
"repo": "default",
-
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
-
"type": "github"
-
},
-
"original": {
-
"owner": "nix-systems",
-
"repo": "default",
-
"type": "github"
-
}
-
},
-
"tangled-core": {
-
"inputs": {
-
"gomod2nix": "gomod2nix",
-
"htmx-src": "htmx-src",
-
"htmx-ws-src": "htmx-ws-src",
-
"ibm-plex-mono-src": "ibm-plex-mono-src",
-
"indigo": "indigo",
-
"inter-fonts-src": "inter-fonts-src",
-
"lucide-src": "lucide-src",
-
"nixpkgs": [
-
"nixpkgs"
-
],
-
"sqlite-lib-src": "sqlite-lib-src"
-
},
-
"locked": {
-
"lastModified": 1755330292,
-
"narHash": "sha256-Dh3t2ugmuJxtxxCEg8MlxekUWZwjKiH0wHBLgfT5lbA=",
-
"ref": "refs/heads/master",
-
"rev": "ea1263475985aade8f1f1ecd59d8e8cbc3f6d9b3",
-
"revCount": 1152,
-
"type": "git",
-
"url": "https://tangled.sh/@tangled.sh/core"
-
},
-
"original": {
-
"type": "git",
-
"url": "https://tangled.sh/@tangled.sh/core"
}
},
"treefmt-nix": {
-5
flake.nix
···
url = "github:ayla6/secrets";
flake = false;
};
-
-
tangled-core = {
-
url = "git+https://tangled.sh/@tangled.sh/core";
-
inputs.nixpkgs.follows = "nixpkgs";
-
};
};
nixConfig = {
-1
hosts/nanpi/secrets.nix
···
syncthingKey.file = "${self.inputs.secrets}/ayla/syncthing/nanpi/key.age";
resticPassword.file = "${self.inputs.secrets}/restic-passwd.age";
vaultwarden.file = "${self.inputs.secrets}/vaultwarden.age";
-
tangled-knot.file = "${self.inputs.secrets}/tangled-knot.age";
};
}
-14
hosts/nanpi/services.nix
···
"${config.mySnippets.aylac-top.networkMap.vaultwarden.vHost}" = "http://${config.mySnippets.aylac-top.networkMap.vaultwarden.hostName}:${toString config.mySnippets.aylac-top.networkMap.vaultwarden.port}";
-
"${config.mySnippets.aylac-top.networkMap.tangled-knot.vHost}" = "http://${config.mySnippets.aylac-top.networkMap.tangled-knot.hostName}:${toString config.mySnippets.aylac-top.networkMap.tangled-knot.port}";
-
"${config.mySnippets.aylac-top.networkMap.forgejo.vHost}" = "http://${config.mySnippets.aylac-top.networkMap.forgejo.hostName}:${toString config.mySnippets.aylac-top.networkMap.forgejo.port}";
"${config.mySnippets.aylac-top.networkMap.forgejo.sshVHost}" = "ssh://${config.mySnippets.aylac-top.networkMap.forgejo.hostName}:2222";
};
···
};
# because of the lack of forwarding the ssh because of the tunnel, repo origins have to be added like this, and nobody can pull your repos
-
# git@nanpi:did\:plc\:3c6vkaq7xf5kz3va3muptjh5/nixcfg
-
# you can also ln -s the did to your user name, letting you do git@nanpi:aylac.top/nixcfg
-
# as opposed to git@knot.aylac.top:aylac.top/nixcfg
-
tangled-knot = {
-
enable = true;
-
openFirewall = false;
-
server = {
-
hostname = config.mySnippets.aylac-top.networkMap.tangled-knot.vHost;
-
listenAddr = "0.0.0.0:${toString config.mySnippets.aylac-top.networkMap.tangled-knot.port}";
-
secretFile = config.age.secrets.tangled-knot.path;
-
};
-
};
};
}
-1
modules/flake/nixos.nix
···
inputs.disko.nixosModules.disko
inputs.home-manager.nixosModules.home-manager
inputs.lanzaboote.nixosModules.lanzaboote
-
inputs.tangled-core.nixosModules.knot
modules.hardware
modules.nixos
modules.snippets
-10
modules/nixos/profiles/backups/default.nix
···
repository = mkRepoA "passwords";
}
);
-
-
tangled-knot = lib.mkIf config.services.tangled-knot.enable (
-
config.mySnippets.restic
-
// {
-
backupCleanupCommand = start "knot";
-
backupPrepareCommand = stop "knot";
-
paths = [config.services.tangled-knot.stateDir];
-
repository = mkRepoA "tangled-knot";
-
}
-
);
};
};
}
-6
modules/snippets/aylac-top/default.nix
···
vHost = "pds.aylac.top";
};
-
tangled-knot = {
-
hostName = "nanpi";
-
port = 5555;
-
vHost = "knot.aylac.top";
-
};
-
vaultwarden = {
hostName = "nanpi";
port = 8222;