Compare commits
6 commits
a8793b4247
...
4809eb83a4
Author | SHA1 | Date | |
---|---|---|---|
4809eb83a4 | |||
0b9acde163 | |||
fa03b49419 | |||
0001fcba8f | |||
b8783a05fe | |||
d85068b39c |
17 changed files with 52 additions and 231 deletions
151
flake.lock
151
flake.lock
|
@ -1,68 +1,14 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
"attic": {
|
|
||||||
"inputs": {
|
|
||||||
"crane": "crane",
|
|
||||||
"flake-compat": "flake-compat",
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"nixpkgs": [
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1692225040,
|
|
||||||
"narHash": "sha256-jbQNvkgWGioiC6S39dZVyn6us8p/DlEvm5hQKEYkzDU=",
|
|
||||||
"owner": "zhaofengli",
|
|
||||||
"repo": "attic",
|
|
||||||
"rev": "b43d12082e34bceb26038bdad0438fd68804cfcd",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "zhaofengli",
|
|
||||||
"repo": "attic",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"crane": {
|
"crane": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": "flake-compat_2",
|
||||||
"attic",
|
"flake-utils": "flake-utils",
|
||||||
"flake-compat"
|
|
||||||
],
|
|
||||||
"flake-utils": [
|
|
||||||
"attic",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"attic",
|
|
||||||
"nixpkgs"
|
|
||||||
],
|
|
||||||
"rust-overlay": "rust-overlay"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1677892403,
|
|
||||||
"narHash": "sha256-/Wi0L1spSWLFj+UQxN3j0mPYMoc7ZoAujpUF/juFVII=",
|
|
||||||
"owner": "ipetkov",
|
|
||||||
"repo": "crane",
|
|
||||||
"rev": "105e27adb70a9890986b6d543a67761cbc1964a2",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "ipetkov",
|
|
||||||
"repo": "crane",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"crane_2": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-compat": "flake-compat_3",
|
|
||||||
"flake-utils": "flake-utils_2",
|
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"ironbar",
|
"ironbar",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"rust-overlay": "rust-overlay_2"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1693439040,
|
"lastModified": 1693439040,
|
||||||
|
@ -80,7 +26,7 @@
|
||||||
},
|
},
|
||||||
"deploy-rs": {
|
"deploy-rs": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat_2",
|
"flake-compat": "flake-compat",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
|
@ -101,22 +47,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1673956053,
|
|
||||||
"narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "edolstra",
|
|
||||||
"repo": "flake-compat",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-compat_2": {
|
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1668681692,
|
"lastModified": 1668681692,
|
||||||
|
@ -132,7 +62,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-compat_3": {
|
"flake-compat_2": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1673956053,
|
"lastModified": 1673956053,
|
||||||
|
@ -167,21 +97,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1667395993,
|
|
||||||
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"flake-utils_2": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_2"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
|
@ -199,7 +114,7 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_3"
|
"systems": "systems_3"
|
||||||
},
|
},
|
||||||
|
@ -288,12 +203,12 @@
|
||||||
},
|
},
|
||||||
"ironbar": {
|
"ironbar": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane_2",
|
"crane": "crane",
|
||||||
"naersk": "naersk",
|
"naersk": "naersk",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"rust-overlay": "rust-overlay_3"
|
"rust-overlay": "rust-overlay_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1695668783,
|
"lastModified": 1695668783,
|
||||||
|
@ -437,22 +352,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
|
||||||
"lastModified": 1685004253,
|
|
||||||
"narHash": "sha256-AbVL1nN/TDicUQ5wXZ8xdLERxz/eJr7+o8lqkIOVuaE=",
|
|
||||||
"owner": "NixOS",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "3e01645c40b92d29f3ae76344a6d654986a91a91",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "NixOS",
|
|
||||||
"ref": "nixos-23.05",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs-stable_2": {
|
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1694908564,
|
"lastModified": 1694908564,
|
||||||
"narHash": "sha256-ducA98AuWWJu5oUElIzN24Q22WlO8bOfixGzBgzYdVc=",
|
"narHash": "sha256-ducA98AuWWJu5oUElIzN24Q22WlO8bOfixGzBgzYdVc=",
|
||||||
|
@ -486,7 +385,6 @@
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"attic": "attic",
|
|
||||||
"deploy-rs": "deploy-rs",
|
"deploy-rs": "deploy-rs",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
|
@ -499,33 +397,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay": {
|
"rust-overlay": {
|
||||||
"inputs": {
|
|
||||||
"flake-utils": [
|
|
||||||
"attic",
|
|
||||||
"crane",
|
|
||||||
"flake-utils"
|
|
||||||
],
|
|
||||||
"nixpkgs": [
|
|
||||||
"attic",
|
|
||||||
"crane",
|
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1675391458,
|
|
||||||
"narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=",
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "oxalica",
|
|
||||||
"repo": "rust-overlay",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"rust-overlay_2": {
|
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": [
|
"flake-utils": [
|
||||||
"ironbar",
|
"ironbar",
|
||||||
|
@ -552,9 +423,9 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay_3": {
|
"rust-overlay_2": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils_3",
|
"flake-utils": "flake-utils_2",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"ironbar",
|
"ironbar",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
|
@ -579,7 +450,7 @@
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1695284550,
|
"lastModified": 1695284550,
|
||||||
|
|
|
@ -25,10 +25,6 @@
|
||||||
url = "github:JakeStanger/ironbar";
|
url = "github:JakeStanger/ironbar";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
attic = {
|
|
||||||
url = "github:zhaofengli/attic";
|
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
|
||||||
};
|
|
||||||
nix-index-database = {
|
nix-index-database = {
|
||||||
url = "github:Mic92/nix-index-database";
|
url = "github:Mic92/nix-index-database";
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
|
|
@ -4,7 +4,6 @@ inputs: let
|
||||||
hmModule = inputs.home-manager.nixosModules.home-manager;
|
hmModule = inputs.home-manager.nixosModules.home-manager;
|
||||||
hyprlandModule = inputs.hyprland.homeManagerModules.default;
|
hyprlandModule = inputs.hyprland.homeManagerModules.default;
|
||||||
ironbarModule = inputs.ironbar.homeManagerModules.default;
|
ironbarModule = inputs.ironbar.homeManagerModules.default;
|
||||||
atticdModule = inputs.attic.nixosModules.atticd;
|
|
||||||
nix-index-Module = inputs.nix-index-database.hmModules.nix-index;
|
nix-index-Module = inputs.nix-index-database.hmModules.nix-index;
|
||||||
inherit (inputs.nixpkgs.lib) nixosSystem;
|
inherit (inputs.nixpkgs.lib) nixosSystem;
|
||||||
in {
|
in {
|
||||||
|
@ -15,7 +14,6 @@ in {
|
||||||
./tsuki
|
./tsuki
|
||||||
sopsModule
|
sopsModule
|
||||||
hmModule
|
hmModule
|
||||||
atticdModule
|
|
||||||
{
|
{
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
|
@ -40,7 +38,6 @@ in {
|
||||||
./sakura
|
./sakura
|
||||||
sopsModule
|
sopsModule
|
||||||
hmModule
|
hmModule
|
||||||
atticdModule
|
|
||||||
{
|
{
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
{config, ...}: {
|
{config, ...}: {
|
||||||
sops.secrets.attic-secret = {};
|
sops.secrets.attic-secret = {};
|
||||||
|
sops.secrets.s3-keyid = {};
|
||||||
|
sops.secrets.s3-secret-key = {};
|
||||||
|
|
||||||
services.atticd = {
|
services.atticd = {
|
||||||
enable = true;
|
enable = true;
|
||||||
credentialsFile = "/etc/attic/atticd.env";
|
credentialsFile = config.sops.secrets.attic-secret.path;
|
||||||
settings = {
|
settings = {
|
||||||
listen = "[::]:8100";
|
listen = "[::]:8100";
|
||||||
allowed-hosts = ["cache.notohh.dev"];
|
allowed-hosts = ["cache.notohh.dev"];
|
||||||
|
@ -19,6 +21,12 @@
|
||||||
|
|
||||||
max-size = 256 * 1024; # 256 KiB
|
max-size = 256 * 1024; # 256 KiB
|
||||||
};
|
};
|
||||||
|
storage = {
|
||||||
|
type = "s3";
|
||||||
|
region = "us-east-005";
|
||||||
|
bucket = "notoh-binary-cache";
|
||||||
|
endpoint = "https://s3.us-east-005.backblazeb2.com";
|
||||||
|
};
|
||||||
garbage-collection = {
|
garbage-collection = {
|
||||||
interval = "12 hours";
|
interval = "12 hours";
|
||||||
default-retention-period = "2 weeks";
|
default-retention-period = "2 weeks";
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
settings = {
|
settings = {
|
||||||
global = {
|
global = {
|
||||||
address = "0.0.0.0";
|
address = "0.0.0.0";
|
||||||
server_name = "matrix.notohh.dev";
|
server_name = "matrix.flake.sh";
|
||||||
allow_registration = true;
|
allow_registration = true;
|
||||||
allow_federation = false;
|
allow_federation = false;
|
||||||
allow_encryption = true;
|
allow_encryption = true;
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
./dashdot.nix
|
./dashdot.nix
|
||||||
./grafana.nix
|
./grafana.nix
|
||||||
./vaultwarden.nix
|
./vaultwarden.nix
|
||||||
./atticd.nix
|
|
||||||
./conduit.nix
|
./conduit.nix
|
||||||
./cloudflareddns.nix
|
./cloudflareddns.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
server = {
|
server = {
|
||||||
HTTP_PORT = 3200;
|
HTTP_PORT = 3200;
|
||||||
DOMAIN = "git.notohh.dev";
|
DOMAIN = "git.notohh.dev";
|
||||||
ROOT_URL = "https://git.notohh.dev";
|
ROOT_URL = "https://git.flake.sh";
|
||||||
LANDING_PAGE = "/explore/repos";
|
LANDING_PAGE = "/explore/repos";
|
||||||
};
|
};
|
||||||
database = {
|
database = {
|
||||||
|
|
|
@ -3,8 +3,8 @@ _: {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
server = {
|
server = {
|
||||||
root_url = "https://metrics.notohh.dev";
|
root_url = "https://metrics.flake.sh";
|
||||||
domain = "metrics.notohh.dev";
|
domain = "metrics.flake.sh";
|
||||||
enforce_domain = true;
|
enforce_domain = true;
|
||||||
http_addr = "0.0.0.0";
|
http_addr = "0.0.0.0";
|
||||||
http_port = 3100;
|
http_port = 3100;
|
||||||
|
|
|
@ -3,8 +3,8 @@ _: {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
port = 3300;
|
port = 3300;
|
||||||
domain = "scratch.notohh.dev";
|
domain = "scratch.flake.sh";
|
||||||
allowOrigin = ["scratch.notohh.dev"];
|
allowOrigin = ["scratch.flake.sh"];
|
||||||
allowAnonymous = true;
|
allowAnonymous = true;
|
||||||
allowFreeURL = true;
|
allowFreeURL = true;
|
||||||
allowEmailRegister = false;
|
allowEmailRegister = false;
|
||||||
|
|
|
@ -46,59 +46,52 @@
|
||||||
middlewares = "authelia";
|
middlewares = "authelia";
|
||||||
};
|
};
|
||||||
foundryvtt = {
|
foundryvtt = {
|
||||||
rule = "Host(`foundry.notohh.dev`)";
|
rule = "Host(`foundry.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "foundryvtt";
|
service = "foundryvtt";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
gitea = {
|
forgejo = {
|
||||||
rule = "Host(`git.notohh.dev`)";
|
rule = "Host(`git.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "gitea";
|
service = "forgejo";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
rustypaste = {
|
rustypaste = {
|
||||||
rule = "Host(`img.notohh.dev`)";
|
rule = "Host(`i.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "rustypaste";
|
service = "rustypaste";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
grafana = {
|
grafana = {
|
||||||
rule = "Host(`metrics.notohh.dev`)";
|
rule = "Host(`metrics.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "grafana";
|
service = "grafana";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
woodpecker-server = {
|
woodpecker-server = {
|
||||||
rule = "Host(`ci.notohh.dev`)";
|
rule = "Host(`ci.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "woodpecker-server";
|
service = "woodpecker-server";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
|
||||||
};
|
|
||||||
atticd = {
|
|
||||||
rule = "Host(`cache.notohh.dev`)";
|
|
||||||
entrypoints = ["websecure"];
|
|
||||||
service = "atticd";
|
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
hedgedoc = {
|
hedgedoc = {
|
||||||
rule = "Host(`scratch.notohh.dev`)";
|
rule = "Host(`scratch.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "hedgedoc";
|
service = "hedgedoc";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
vaultwarden = {
|
vaultwarden = {
|
||||||
rule = "Host(`vault.notohh.dev`)";
|
rule = "Host(`vault.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "vaultwarden";
|
service = "vaultwarden";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -107,11 +100,10 @@
|
||||||
dashdot.loadBalancer.servers = [{url = "http://localhost:4000";}];
|
dashdot.loadBalancer.servers = [{url = "http://localhost:4000";}];
|
||||||
hugo.loadBalancer.servers = [{url = "http://localhost:1313";}];
|
hugo.loadBalancer.servers = [{url = "http://localhost:1313";}];
|
||||||
foundryvtt.loadBalancer.servers = [{url = "http://localhost:30000";}];
|
foundryvtt.loadBalancer.servers = [{url = "http://localhost:30000";}];
|
||||||
gitea.loadBalancer.servers = [{url = "http://localhost:3200";}];
|
forgejo.loadBalancer.servers = [{url = "http://localhost:3200";}];
|
||||||
rustypaste.loadBalancer.servers = [{url = "http://localhost:8000";}];
|
rustypaste.loadBalancer.servers = [{url = "http://localhost:8000";}];
|
||||||
grafana.loadBalancer.servers = [{url = "http://localhost:3100";}];
|
grafana.loadBalancer.servers = [{url = "http://localhost:3100";}];
|
||||||
woodpecker-server.loadBalancer.servers = [{url = "http://localhost:8200";}];
|
woodpecker-server.loadBalancer.servers = [{url = "http://localhost:8200";}];
|
||||||
atticd.loadBalancer.servers = [{url = "http://localhost:8100";}];
|
|
||||||
hedgedoc.loadBalancer.servers = [{url = "http://localhost:3300";}];
|
hedgedoc.loadBalancer.servers = [{url = "http://localhost:3300";}];
|
||||||
vaultwarden.loadBalancer.servers = [{url = "http://localhost:8222";}];
|
vaultwarden.loadBalancer.servers = [{url = "http://localhost:8222";}];
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
package = pkgs.vaultwarden-postgresql;
|
package = pkgs.vaultwarden-postgresql;
|
||||||
dbBackend = "postgresql";
|
dbBackend = "postgresql";
|
||||||
config = {
|
config = {
|
||||||
DOMAIN = "https://vault.notohh.dev/";
|
DOMAIN = "https://vault.flake.sh/";
|
||||||
SIGNUPS_ALLOWED = false;
|
SIGNUPS_ALLOWED = false;
|
||||||
DATABASE_URL = "postgresql://vaultwarden:vaultwarden@192.168.1.211:5432/vaultwarden";
|
DATABASE_URL = "postgresql://vaultwarden:vaultwarden@192.168.1.211:5432/vaultwarden";
|
||||||
LOG_LEVEL = "Info";
|
LOG_LEVEL = "Info";
|
||||||
|
|
|
@ -6,10 +6,10 @@
|
||||||
environment = {
|
environment = {
|
||||||
WOODPECKER_SERVER_ADDR = ":8200";
|
WOODPECKER_SERVER_ADDR = ":8200";
|
||||||
WOODPECKER_GRPC_ADDR = ":8300";
|
WOODPECKER_GRPC_ADDR = ":8300";
|
||||||
WOODPECKER_HOST = "https://ci.notohh.dev";
|
WOODPECKER_HOST = "https://ci.flake.sh";
|
||||||
WOODPECKER_OPEN = "false";
|
WOODPECKER_OPEN = "false";
|
||||||
WOODPECKER_GITEA = "true";
|
WOODPECKER_GITEA = "true";
|
||||||
WOODPECKER_GITEA_URL = "https://git.notohh.dev";
|
WOODPECKER_GITEA_URL = "https://git.flake.sh";
|
||||||
WOODPECKER_ADMIN = "notohh";
|
WOODPECKER_ADMIN = "notohh";
|
||||||
WOODPECKER_AGENT_SECRET = config.sops.secrets.woodpecker-agent-secret.path;
|
WOODPECKER_AGENT_SECRET = config.sops.secrets.woodpecker-agent-secret.path;
|
||||||
WOODPECKER_LOG_LEVEL = "debug";
|
WOODPECKER_LOG_LEVEL = "debug";
|
||||||
|
|
|
@ -26,38 +26,30 @@
|
||||||
service = "api@internal";
|
service = "api@internal";
|
||||||
};
|
};
|
||||||
uptime-kuma = {
|
uptime-kuma = {
|
||||||
rule = "Host(`status.notohh.dev`)";
|
rule = "Host(`status.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "uptime-kuma";
|
service = "uptime-kuma";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
gotify = {
|
gotify = {
|
||||||
rule = "Host(`gotify.notohh.dev`)";
|
rule = "Host(`gotify.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "gotify";
|
service = "gotify";
|
||||||
tls.domains = [{main = "*.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
|
||||||
};
|
|
||||||
neko = {
|
|
||||||
rule = "Host(`neko.notohh.dev`)";
|
|
||||||
entrypoints = ["websecure"];
|
|
||||||
service = "neko";
|
|
||||||
tls.domains = [{main = "neko.notohh.dev";}];
|
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
conduit = {
|
conduit = {
|
||||||
rule = "Host(`matrix.notohh.dev`)";
|
rule = "Host(`matrix.flake.sh`)";
|
||||||
entrypoints = ["websecure"];
|
entrypoints = ["websecure"];
|
||||||
service = "conduit";
|
service = "conduit";
|
||||||
tls.domains = [{main = "matrix.notohh.dev";}];
|
tls.domains = [{main = "*.flake.sh";}];
|
||||||
tls.certresolver = "production";
|
tls.certresolver = "production";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
uptime-kuma.loadBalancer.servers = [{url = "http://100.87.54.48:4000";}];
|
uptime-kuma.loadBalancer.servers = [{url = "http://100.87.54.48:4000";}];
|
||||||
gotify.loadBalancer.servers = [{url = "http://100.87.54.48:3000";}];
|
gotify.loadBalancer.servers = [{url = "http://100.87.54.48:3000";}];
|
||||||
neko.loadBalancer.servers = [{url = "http://100.110.140.130:8080";}];
|
|
||||||
conduit.loadBalancer.servers = [{url = "http://100.121.201.47:6167";}];
|
conduit.loadBalancer.servers = [{url = "http://100.121.201.47:6167";}];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -94,7 +94,6 @@
|
||||||
qemu_kvm
|
qemu_kvm
|
||||||
pinentry-gtk2
|
pinentry-gtk2
|
||||||
jdk17
|
jdk17
|
||||||
attic-client
|
|
||||||
comma
|
comma
|
||||||
inputs.matugen.packages.x86_64-linux.default
|
inputs.matugen.packages.x86_64-linux.default
|
||||||
];
|
];
|
||||||
|
|
|
@ -8,6 +8,5 @@
|
||||||
./dashdot.nix
|
./dashdot.nix
|
||||||
./jellyfin.nix
|
./jellyfin.nix
|
||||||
./neko.nix
|
./neko.nix
|
||||||
./vikunja.nix
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,11 +40,6 @@ _: {
|
||||||
entrypoints = ["web"];
|
entrypoints = ["web"];
|
||||||
service = "jellyseerr";
|
service = "jellyseerr";
|
||||||
};
|
};
|
||||||
vikunja-frontend = {
|
|
||||||
rule = "Host(`vikunja.home.arpa`)";
|
|
||||||
entrypoints = ["web"];
|
|
||||||
service = "vikunja-frontend";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
stash.loadBalancer.servers = [{url = "http://localhost:9999";}];
|
stash.loadBalancer.servers = [{url = "http://localhost:9999";}];
|
||||||
|
@ -53,7 +48,6 @@ _: {
|
||||||
searxng.loadBalancer.servers = [{url = "http://localhost:8100";}];
|
searxng.loadBalancer.servers = [{url = "http://localhost:8100";}];
|
||||||
jellyfin.loadBalancer.servers = [{url = "http://localhost:8096";}];
|
jellyfin.loadBalancer.servers = [{url = "http://localhost:8096";}];
|
||||||
jellyseerr.loadBalancer.servers = [{url = "http://localhost:5055";}];
|
jellyseerr.loadBalancer.servers = [{url = "http://localhost:5055";}];
|
||||||
vikunja-frontend.loadBalancer.servers = [{url = "http://localhost:6789";}];
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
networking.firewall.allowedTCPPorts = [3456 6789];
|
|
||||||
|
|
||||||
virtualisation.oci-containers.containers.vikunja = {
|
|
||||||
image = "vikunja/api";
|
|
||||||
environment = {
|
|
||||||
VIKUNJA_SERVICE_FRONTENDURL = "vikunja.home.arpa";
|
|
||||||
};
|
|
||||||
ports = [
|
|
||||||
"3456:3456"
|
|
||||||
];
|
|
||||||
volumes = [
|
|
||||||
"/home/notoh/docker/vikunja/files:/app/vikunja/files"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
virtualisation.oci-containers.containers.vikunja-frontend = {
|
|
||||||
image = "vikunja/frontend";
|
|
||||||
ports = [
|
|
||||||
"6789:80"
|
|
||||||
];
|
|
||||||
environment = {
|
|
||||||
VIKUNJA_API_URL = "http://192.168.1.36:3456/api/v1";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue