Compare commits

..
6 Commits
Author SHA1 Message Date
oqyude 521d922961 nextcloud update 2026-07-16 23:34:06 +03:00
oqyude e5e9dfd1de samba fixup 2026-07-16 17:33:19 +03:00
oqyude 867a3227b8 calibre fixup 2026-07-16 01:14:47 +03:00
oqyude 7e8cc45a85 nix flake update 2026-07-16 00:14:03 +03:00
oqyude 69c53ccd65 fixup for onlyoffice (disabling) 2026-07-16 00:12:52 +03:00
oqyude 536bdf801e homebox added 2026-07-15 23:08:18 +03:00
11 changed files with 146 additions and 50 deletions
Generated
+18 -18
View File
@@ -88,11 +88,11 @@
]
},
"locked": {
"lastModified": 1783823409,
"narHash": "sha256-OI4IkRjRXa1e7hYmCGJDPDq5H/kPwhsyoS80cNUF9fI=",
"lastModified": 1784129366,
"narHash": "sha256-N5JiyICSeQF14x+OQebNyPpYowOT9Rs1iKyeCylSzOA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "7566825d4652a1b885bd4ce65bd9e8def432fec9",
"rev": "165228b0efefc3e635e5174020c40ea64271dc25",
"type": "github"
},
"original": {
@@ -106,11 +106,11 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1783792734,
"narHash": "sha256-50rvY9GdFvpYDcMLcD/4cWSi0hVxArT5wsGlVsHy8eY=",
"lastModified": 1784100666,
"narHash": "sha256-HF/mrw5NYQfKFZgkfV2h1UL5/E3ccfsE2XJ1AbbLLJ0=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "8efb4337e857949f4cfac86d12ef1066f417f31f",
"rev": "fccfa9031a85b78a437f2f153c1f6449f3bc3185",
"type": "github"
},
"original": {
@@ -130,11 +130,11 @@
]
},
"locked": {
"lastModified": 1783336371,
"narHash": "sha256-ZisTtweyb7JUwPP54HAXE9TypT8m89dIxDI36Ak0hAs=",
"lastModified": 1784058842,
"narHash": "sha256-3u3tvbCIAid3Mv7RrJx13jusIEQC/HeKYhO/SUSxR3A=",
"owner": "nix-community",
"repo": "NixOS-WSL",
"rev": "a9620cfa43f0c1c30a46c31ae3c6e58cdb124a14",
"rev": "24c8dc8e0f2170e1a377be24dfadc7d9d21dc1ad",
"type": "github"
},
"original": {
@@ -191,11 +191,11 @@
},
"nixpkgs-master": {
"locked": {
"lastModified": 1783868082,
"narHash": "sha256-Y3chcYsoUJp8VqLl2x1JoZZ1OktO4oYAT1F74hwvLH8=",
"lastModified": 1784147573,
"narHash": "sha256-HPB/v0N2fCm4zhb5NxTpdd6vB64Bi7yx80cJ3Ah6bK0=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "2b169ebe89d6fad56a1c84298d15f2c9ee5d8c60",
"rev": "25d63b75f3246a99b53a02c18e0fa74a57817669",
"type": "github"
},
"original": {
@@ -239,11 +239,11 @@
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1783816212,
"narHash": "sha256-2aZisVTVGSFEk3MYcOiWQp3zvwyzbqpktB69Rcfp150=",
"lastModified": 1784115452,
"narHash": "sha256-BoYPdqk6jlKXy+DyUzyGV/CtRGfAhk2MmIgBhsemTGI=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "3b32825de172d0bc85664f495edb096b10862524",
"rev": "35d3407a3816f3b341d8cf1d60abaf2b7b8166ac",
"type": "github"
},
"original": {
@@ -255,11 +255,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1783776592,
"narHash": "sha256-UgCQzxeWI75XM8G+hPrPh+MKzEPjG3SpAj7dtqSbksA=",
"lastModified": 1784007870,
"narHash": "sha256-djcLt/JJphyNt4eDY9XTly+/WbCK5lqWq9lSgCmJkkQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e7a3ca8092b61ff85b6a45bf863ea2b2d6a661b3",
"rev": "18b9261cb3294b6d2a06d03f96872827b8fe2698",
"type": "github"
},
"original": {
+2 -2
View File
@@ -6,14 +6,14 @@
...
}:
let
stable = import inputs.nixpkgs-calibre {
stable = import inputs.nixpkgs-previous {
system = "x86_64-linux";
};
in
{
services = {
calibre-web = {
# package = stable.calibre-web;
package = stable.calibre-web;
enable = true;
# dataDir = "${xlib.dirs.services-mnt-folder}/calibre-web";
options = {
+2
View File
@@ -15,6 +15,7 @@
192.168.1.20 flux.zeroq.su
192.168.1.20 git.zeroq.su
192.168.1.20 glances.zeroq.su
192.168.1.20 homebox.home.arpa
192.168.1.20 immich.zeroq.su
192.168.1.20 kuma.zeroq.su
192.168.1.20 nextcloud.zeroq.su
@@ -38,6 +39,7 @@
192.168.1.20 git.home.arpa
192.168.1.20 glances.home.arpa
192.168.1.20 home.arpa
192.168.1.20 homebox.home.arpa
192.168.1.20 immich.home.arpa
192.168.1.20 kuma.home.arpa
192.168.1.20 nextcloud.home.arpa
+2
View File
@@ -12,11 +12,13 @@
./coredns.nix
./gitea.nix
./glances.nix
./homebox.nix
./immich.nix
./miniflux.nix
./nextcloud.nix
./nginx.nix
./nix-serve.nix
# ./onlyoffice.nix
./postgresql.nix
./samba.nix
./step-ca.nix
+1
View File
@@ -23,6 +23,7 @@
};
systemd.tmpfiles.rules = [
"d ${config.services.gitea.stateDir} 0755 gitea gitea -"
"z ${config.services.gitea.stateDir} 0755 gitea gitea -"
];
}
+44
View File
@@ -0,0 +1,44 @@
{
config,
pkgs,
xlib,
...
}:
let
configDir = "${xlib.dirs.services-mnt-folder}/homebox";
varDir = "/var/lib/homebox";
in
{
services.homebox = {
enable = true;
settings = {
HBOX_WEB_HOST = "0.0.0.0";
HBOX_WEB_PORT = "7745";
HBOX_STORAGE_CONN_STRING = "file://${varDir}";
HBOX_STORAGE_PREFIX_PATH = "data";
HBOX_DATABASE_DRIVER = "sqlite3";
HBOX_DATABASE_SQLITE_PATH = "${varDir}/data/homebox.db?_pragma=busy_timeout=999&_pragma=journal_mode=WAL&_fk=1";
HBOX_OPTIONS_ALLOW_REGISTRATION = "true";
HBOX_OPTIONS_GITHUB_RELEASE_CHECK = "false";
HBOX_MODE = "production";
HOME = "${varDir}";
TMPDIR = "${varDir}/tmp";
};
};
systemd.tmpfiles.rules = [
"d ${configDir} 0755 homebox homebox -"
"z ${configDir} 0755 homebox homebox -"
];
fileSystems = {
"${varDir}" = {
device = "${configDir}";
fsType = "none";
options = [
"bind"
"nofail"
];
};
};
}
+2 -28
View File
@@ -1,8 +1,8 @@
{
config,
inputs,
lib,
pkgs,
inputs,
xlib,
...
}:
@@ -56,7 +56,7 @@ in
};
nextcloud = {
enable = true;
package = pkgs.nextcloud33;
package = pkgs.nextcloud34;
hostName = "nextcloud.private";
database.createLocally = true;
home = "${xlib.dirs.services-mnt-folder}/nextcloud";
@@ -170,16 +170,6 @@ in
# };
# };
# };
onlyoffice = {
enable = true;
package = previous.onlyoffice-documentserver;
hostname = "office.home.arpa";
port = 8090;
allowLocalConnections = true;
wopi = true;
jwtSecretFile = config.sops.secrets.onlyoffice-jwt.path;
securityNonceFile = config.sops.secrets.onlyoffice-nonce.path;
};
};
# fonts.packages = [ work.corefonts ];
@@ -240,22 +230,6 @@ in
group = "nextcloud";
mode = "0650";
};
onlyoffice-nonce = {
format = "yaml";
key = "nonce";
sopsFile = ./secrets/onlyoffice.yaml;
owner = "onlyoffice";
group = "onlyoffice";
mode = "0650";
};
onlyoffice-jwt = {
format = "yaml";
key = "jwt";
sopsFile = ./secrets/onlyoffice.yaml;
owner = "onlyoffice";
group = "onlyoffice";
mode = "0650";
};
nextcloud-talk-secret = {
format = "yaml";
key = "nextcloud-talk-secret";
+10
View File
@@ -77,6 +77,16 @@ in
client_max_body_size 5G;
'';
};
"homebox.home.arpa" = {
forceSSL = true;
enableACME = true;
locations = {
"/" = {
proxyPass = "http://127.0.0.1:7745";
proxyWebsockets = true;
};
};
};
"nextcloud.home.arpa" = {
forceSSL = true;
enableACME = true;
+45
View File
@@ -0,0 +1,45 @@
{
config,
inputs,
lib,
pkgs,
xlib,
...
}:
let
previous = import inputs.nixpkgs-master {
system = "x86_64-linux";
config.allowUnfree = true;
config.allowUnfreePredicate = true;
};
in
{
services.onlyoffice = {
enable = true;
# package = previous.onlyoffice-documentserver;
hostname = "office.home.arpa";
port = 8090;
allowLocalConnections = true;
wopi = true;
jwtSecretFile = config.sops.secrets.onlyoffice-jwt.path;
securityNonceFile = config.sops.secrets.onlyoffice-nonce.path;
};
sops.secrets = {
onlyoffice-nonce = {
format = "yaml";
key = "nonce";
sopsFile = ./secrets/onlyoffice.yaml;
owner = "onlyoffice";
group = "onlyoffice";
mode = "0650";
};
onlyoffice-jwt = {
format = "yaml";
key = "jwt";
sopsFile = ./secrets/onlyoffice.yaml;
owner = "onlyoffice";
group = "onlyoffice";
mode = "0650";
};
};
}
+7 -1
View File
@@ -1,9 +1,15 @@
{
config,
inputs,
pkgs,
xlib,
...
}:
let
stable = import inputs.nixpkgs-master {
system = "x86_64-linux";
};
in
{
services = {
samba-wsdd = {
@@ -14,7 +20,7 @@
};
samba = {
enable = true;
package = pkgs.samba4Full;
# package = pkgs.samba4Full;
nmbd = {
enable = true;
};
+13 -1
View File
@@ -49,6 +49,10 @@ in
proxyPass = "http://localhost:2096";
proxyWebsockets = true;
};
"/clash/" = {
proxyPass = "http://localhost:2096";
proxyWebsockets = true;
};
};
};
"kuma.zeroq.su" = {
@@ -75,6 +79,14 @@ in
proxyWebsockets = true;
};
};
"homebox.zeroq.su" = {
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://${server}:7745";
proxyWebsockets = true;
};
};
# "agent.zeroq.su" = {
# forceSSL = true;
# enableACME = true;
@@ -123,7 +135,7 @@ in
forceSSL = true;
enableACME = true;
locations."/" = {
proxyPass = "http://${server}:4096";
proxyPass = "http://${server}:6061";
proxyWebsockets = true;
};
};