mirror of
https://github.com/harryssecret/homelab-nix.git
synced 2025-01-18 05:19:33 +01:00
Compare commits
9 commits
729050b005
...
0e83769e9d
Author | SHA1 | Date | |
---|---|---|---|
0e83769e9d | |||
de714df3af | |||
66f7f1a39b | |||
2341c36c03 | |||
eb92a3dd46 | |||
Harry | ae8cb73c4d | ||
Harry | 2d3ce1d482 | ||
c87c2ce302 | |||
f61d2eedef |
6
.gitattributes
vendored
6
.gitattributes
vendored
|
@ -1,5 +1,5 @@
|
|||
#pattern filter=crypt diff=crypt merge=crypt
|
||||
features/server/services/forgejo-smtp.nix filter=crypt diff=crypt
|
||||
features/server/services/nextcloud-network.nix filter=crypt diff=crypt
|
||||
features/server/backups-repos.nix filter=crypt diff=crypt
|
||||
hosts/sisyphe/features/services/forgejo-smtp.nix filter=crypt diff=crypt
|
||||
hosts/sisyphe/features/services/nextcloud-network.nix filter=crypt diff=crypt
|
||||
hosts/sisyphe/features/backups-repos.nix filter=crypt diff=crypt
|
||||
hosts/dionysos/features/znc-infos.nix filter=crypt diff=crypt
|
||||
|
|
133
flake.lock
133
flake.lock
|
@ -32,11 +32,11 @@
|
|||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730444665,
|
||||
"narHash": "sha256-i3FxeHjsHw4AePx3AWVVywy92EEobx/ZER4ignWxNrE=",
|
||||
"lastModified": 1731092955,
|
||||
"narHash": "sha256-L1hLXf4IDZ0KoXbFiSNNZJ7IrReEr/J+CLt6Rl4Ea3M=",
|
||||
"owner": "anyrun-org",
|
||||
"repo": "anyrun",
|
||||
"rev": "b3b4f2253d43af3311b3d3fc86973fc3e9559c33",
|
||||
"rev": "d2017f224b2bfd7e33573c7070e7c3e2960c7dcc",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -70,11 +70,11 @@
|
|||
"flake-compat": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1696426674,
|
||||
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
|
||||
"lastModified": 1733328505,
|
||||
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
|
||||
"owner": "edolstra",
|
||||
"repo": "flake-compat",
|
||||
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
|
||||
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -128,11 +128,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1727826117,
|
||||
"narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
|
||||
"lastModified": 1733312601,
|
||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
|
||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -150,11 +150,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1712014858,
|
||||
"narHash": "sha256-sB4SWl2lX95bExY2gMFG5HIzvva5AVMJd4Igm+GpZNw=",
|
||||
"lastModified": 1733312601,
|
||||
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "9126214d0a59633752a136528f5f3b9aa8565b7d",
|
||||
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -192,11 +192,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729104314,
|
||||
"narHash": "sha256-pZRZsq5oCdJt3upZIU4aslS9XwFJ+/nVtALHIciX/BI=",
|
||||
"lastModified": 1734797603,
|
||||
"narHash": "sha256-ulZN7ps8nBV31SE+dwkDvKIzvN6hroRY8sYOT0w+E28=",
|
||||
"owner": "cachix",
|
||||
"repo": "git-hooks.nix",
|
||||
"rev": "3c3e88f0f544d6bb54329832616af7eb971b6be6",
|
||||
"rev": "f0f0dc4920a903c3e08f5bdb9246bb572fcae498",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -236,11 +236,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1724947644,
|
||||
"narHash": "sha256-MHHrHasTngp7EYQOObHJ1a/IsRF+wodHqOckhH6uZbk=",
|
||||
"lastModified": 1733333617,
|
||||
"narHash": "sha256-nMMQXREGvLOLvUa0ByhYFdaL0Jov0t1wzLbKjr05P2w=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "hercules-ci-effects",
|
||||
"rev": "dba4367b9a9d9615456c430a6d6af716f6e84cef",
|
||||
"rev": "56f8ea8d502c87cf62444bec4ee04512e8ea24ea",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -277,14 +277,15 @@
|
|||
"git-hooks": "git-hooks",
|
||||
"hercules-ci-effects": "hercules-ci-effects",
|
||||
"neovim-src": "neovim-src",
|
||||
"nixpkgs": "nixpkgs"
|
||||
"nixpkgs": "nixpkgs",
|
||||
"treefmt-nix": "treefmt-nix"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730088025,
|
||||
"narHash": "sha256-FIdIaN7f6karwtDV65VXTV8VThNrR63nwykfgXpm4p4=",
|
||||
"lastModified": 1734942015,
|
||||
"narHash": "sha256-7qj3Hk2NMiWdBNk3E3T6GdHkMDUCWK0kz10P9Jl6z58=",
|
||||
"owner": "nix-community",
|
||||
"repo": "neovim-nightly-overlay",
|
||||
"rev": "f35afbe60a4ff71fd65fec3839fc38943f961951",
|
||||
"rev": "38f1d0177de284cb54045b3e888d66cd4710ce5a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -296,11 +297,11 @@
|
|||
"neovim-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1729121305,
|
||||
"narHash": "sha256-c94xkA/RuszC4PfmB+MWqOo2vbO66GTO6XKer0mbltA=",
|
||||
"lastModified": 1734887107,
|
||||
"narHash": "sha256-h5U1/by2ikiPBUPCTbWAMALCy+DTkjt6Fs8nepY44/4=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "852954ff6d96adce0158f74ca494fdcef3aa1921",
|
||||
"rev": "665a0e85c4788cb2847e270c333c0aee306f07ad",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -316,11 +317,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1730448474,
|
||||
"narHash": "sha256-qE/cYKBhzxHMtKtLK3hlSR3uzO1pWPGLrBuQK7r0CHc=",
|
||||
"lastModified": 1733570843,
|
||||
"narHash": "sha256-sQJAxY1TYWD1UyibN/FnN97paTFuwBw3Vp3DNCyKsMk=",
|
||||
"owner": "LnL7",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "683d0c4cd1102dcccfa3f835565378c7f3cbe05e",
|
||||
"rev": "a35b08d09efda83625bef267eb24347b446c80b8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -363,11 +364,11 @@
|
|||
},
|
||||
"nixlib": {
|
||||
"locked": {
|
||||
"lastModified": 1729386149,
|
||||
"narHash": "sha256-hUP9oxmnOmNnKcDOf5Y55HQ+NnoT0+bLWHLQWLLw9Ks=",
|
||||
"lastModified": 1734829460,
|
||||
"narHash": "sha256-dPhc+f2wkmhMqMIfq+hColJdysgVxKP9ilZ5bR0NRZI=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "cce4521b6df014e79a7b7afc58c703ed683c916e",
|
||||
"rev": "0a31e8d833173ae63e43fd9dbff1ccf09c4f778c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -384,11 +385,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729472750,
|
||||
"narHash": "sha256-s93LPHi5BN7I2xSGNAFWiYb8WRsPvT1LE9ZjZBrpFlg=",
|
||||
"lastModified": 1734915500,
|
||||
"narHash": "sha256-A7CTIQ8SW0hfbhKlwK+vSsu4pD+Oaelw3v6goX6go+U=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixos-generators",
|
||||
"rev": "7c60ba4bc8d6aa2ba3e5b0f6ceb9fc07bc261565",
|
||||
"rev": "051d1b2dda3b2e81b38d82e2b691e5c2f4d335f4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -399,11 +400,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1728863046,
|
||||
"narHash": "sha256-DZBO2465PL5V89e8hFSJewyH4QbCPpW3ssws7ckT/0A=",
|
||||
"lastModified": 1734435836,
|
||||
"narHash": "sha256-kMBQ5PRiFLagltK0sH+08aiNt3zGERC2297iB6vrvlU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "d4f247e89f6e10120f911e2e2d2254a050d0f732",
|
||||
"rev": "4989a246d7a390a859852baddb1013f825435cee",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -413,29 +414,13 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1729973466,
|
||||
"narHash": "sha256-knnVBGfTCZlQgxY1SgH0vn2OyehH9ykfF8geZgS95bk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cd3e8833d70618c4eea8df06f95b364b016d4950",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "release-24.05",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1730327045,
|
||||
"narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=",
|
||||
"lastModified": 1734835170,
|
||||
"narHash": "sha256-JG6n9tQET7ZLjvwjH9BdYE6pES/Alcduxv2FDXliuBM=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "080166c15633801df010977d9d7474b4a6c549d7",
|
||||
"rev": "6df924734e1b626efd70925545de844b1c25246f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -447,11 +432,11 @@
|
|||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1729951556,
|
||||
"narHash": "sha256-bpb6r3GjzhNW8l+mWtRtLNg5PhJIae041sPyqcFNGb4=",
|
||||
"lastModified": 1731763621,
|
||||
"narHash": "sha256-ddcX4lQL0X05AYkrkV2LMFgGdRvgap7Ho8kgon3iWZk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "4e0eec54db79d4d0909f45a88037210ff8eaffee",
|
||||
"rev": "c69a9bffbecde46b4b939465422ddc59493d3e4d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -494,15 +479,14 @@
|
|||
},
|
||||
"sops-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nixpkgs-stable": "nixpkgs-stable"
|
||||
"nixpkgs": "nixpkgs_3"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1729999681,
|
||||
"narHash": "sha256-qm0uCtM9bg97LeJTKQ8dqV/FvqRN+ompyW4GIJruLuw=",
|
||||
"lastModified": 1734546875,
|
||||
"narHash": "sha256-6OvJbqQ6qPpNw3CA+W8Myo5aaLhIJY/nNFDk3zMXLfM=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "1666d16426abe79af5c47b7c0efa82fd31bf4c56",
|
||||
"rev": "ed091321f4dd88afc28b5b4456e0a15bd8374b4d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -525,6 +509,27 @@
|
|||
"repo": "default-linux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"treefmt-nix": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"neovim-nightly-overlay",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1734704479,
|
||||
"narHash": "sha256-MMi74+WckoyEWBRcg/oaGRvXC9BVVxDZNRMpL+72wBI=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "65712f5af67234dad91a5a4baee986a8b62dbf8f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
|
|
|
@ -1,24 +1,13 @@
|
|||
{config, ...}: {
|
||||
services.znc.config.User."computemadness_" = {
|
||||
Admin = true;
|
||||
Nick = "computemadness_";
|
||||
AltNick = "kumputemadness_";
|
||||
LoadModule = [ "chanserver" "controlpanel" ];
|
||||
Network = {
|
||||
libera = {
|
||||
Server = "irc.libera.chat +6697";
|
||||
LoadModule = "simple_away";
|
||||
Chan = {
|
||||
"#nixos" = {Detached = false;};
|
||||
};
|
||||
};
|
||||
koshkairc = {
|
||||
Server = "irc.koshka.love +6697";
|
||||
Chan = {
|
||||
"#" = {Detached = false;};
|
||||
"#speakez" = {Detached = false;};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
U2FsdGVkX1/KBXWMpf1DqMWCTOr3Ao7hJ9RPX9WEeGdi5pwsUZu50275uByg/fku
|
||||
dStEPuVPKHU35mVvLMi938hIAjHb0Vqt3MKjMxwhp0SgbxevnVpWK79AUMzkaNel
|
||||
mMGYTMrarL/aRDvlw+l2TiH2/4Pq0DsL/4oMgXQSE6xh9G4jSzmMRV9AEKcs8mSK
|
||||
SW+WDg8lLeKi8Y/c7KVx6ZP6TVLpDX4xRToxy9SbyNpSads4cZJLGnLALRYdJl46
|
||||
PQKmV2xOnKLAYTN36yzrbZZBXtvURUFKObyhGKVLwdDwfarxG7fi/PAH9A7FIE8B
|
||||
xIUU6mPUHy0FdQ/vUh4NeJounTr9i4wmhfJo/aRXB/HlmZA5/zihZwcIv9/GM3gM
|
||||
B+nud++PfTVB3M1LXMyCyBOEWqcyADdxSeN4LwdBMAsrufs2gB/gdv3JNhqqJdXa
|
||||
E2sEq4OXW/A+1w2ADUZ1l490s7RpQSxWv0JHXgRsm91TIdT6YpNpq8AMHEfLSxE5
|
||||
SSX7Yynh1dqgYqzWqFkHIzZ2UYlzrCyCRVLX2Jwcyf6L9Qa62SGhKj5Yml4p7zga
|
||||
U2U5Y96GPvKD+WzxliCVxmLSkH1mrnCk4oI5OgEcQzUVLmgfyrDTH+FT6l1IgpFn
|
||||
3k7BbuiZtqB9i8pOGf2mluj7+Fi7ppZserh6wwDtrPoGllls8CtbpmOagNwnxzVE
|
||||
kZ9IKUbYs0Sy7kMbZD0Ss03zeuBCWHSbikDJ0bg+p9IjtpYcoorLccIztnjmZkDn
|
||||
H1cj342muViFyWe8jfpVD1wYzkiscvg3H1CzeI+aQ58=
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
imports = [
|
||||
./hardware-configuration.nix
|
||||
./server-configuration.nix
|
||||
../../features/server/default.nix
|
||||
./features/default.nix
|
||||
../../features/shared/ssh.nix
|
||||
];
|
||||
|
||||
|
|
|
@ -79,7 +79,6 @@
|
|||
];
|
||||
postgresql_databases = [
|
||||
{ name = "nextcloud"; }
|
||||
{ name = "matrix-synapse"; }
|
||||
];
|
||||
exclude_patterns = [ "/home/*/.cache" ];
|
||||
encryption_passcommand = "${pkgs.coreutils}/bin/cat /run/secrets/borgRemoteServerPassword";
|
|
@ -2,6 +2,7 @@
|
|||
config,
|
||||
secrets,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
|
@ -31,12 +32,16 @@ in
|
|||
openFirewall = true;
|
||||
openRPCPort = true;
|
||||
credentialsFile = config.sops.secrets.transmission.path;
|
||||
webHome = pkgs.flood-for-transmission;
|
||||
settings = {
|
||||
rpc-bind-address = "0.0.0.0";
|
||||
rpc-whitelist-enabled = false;
|
||||
rpc-authentication-required = true;
|
||||
download-dir = "${cfg.directory}/Torrents";
|
||||
ratio-limit-enabled = true;
|
||||
alt-speed-time-enabled = true;
|
||||
alt-speed-time-begin = "480";
|
||||
alt-speed-time-end = "1320";
|
||||
};
|
||||
};
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
{ config, lib, ... }:
|
||||
with lib;
|
||||
# TODO: add access to series and TV folders.
|
||||
let
|
||||
cfg = config.samba;
|
||||
in
|
||||
|
@ -31,20 +30,20 @@ in
|
|||
browseable = "yes";
|
||||
"read only" = "no";
|
||||
"create mask" = "0644";
|
||||
"directory mask" = "0755";
|
||||
"directory mask" = "0655";
|
||||
};
|
||||
ebooks = {
|
||||
path = "${cfg.dir}/Ebooks";
|
||||
browseable = "yes";
|
||||
"read only" = "no";
|
||||
"create mask" = "0644";
|
||||
"directory mask" = "0755";
|
||||
"directory mask" = "0655";
|
||||
};
|
||||
movies = {
|
||||
path = "${cfg.dir}/Films";
|
||||
browseable = "yes";
|
||||
"create mask" = "0644";
|
||||
"directory mask" = "0755";
|
||||
"directory mask" = "0655";
|
||||
"read only" = "no";
|
||||
};
|
||||
shows = {
|
||||
|
@ -54,6 +53,12 @@ in
|
|||
"directory mask" = "0755";
|
||||
browseable = "yes";
|
||||
};
|
||||
torrents = {
|
||||
path = "${cfg.dir}/Torrents";
|
||||
"read only" = "yes";
|
||||
"create mask" = "644";
|
||||
browseable = "yes";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
|
@ -58,8 +58,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
systemd.services.forgejo.preStart = ''
|
||||
create="${lib.getExe config.services.forgejo.package} admin user create"
|
||||
$create --admin --email "`cat ${config.sops.secrets.forgejoInitialMail.path}`" --username you --password "`cat ${config.sops.secrets.forgejoInitialPassword.path}`" &>/dev/null || true
|
|
@ -38,8 +38,7 @@ in
|
|||
allowedTCPPorts = [
|
||||
22 # ssh
|
||||
80 # http
|
||||
8008 # matrix-synapse
|
||||
8448 # matrix-synapse
|
||||
443 # ssh
|
||||
];
|
||||
allowedUDPPorts = [ ];
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue