mirror of
https://github.com/genebean/dots.git
synced 2026-05-30 23:35:22 -04:00
Deploy Cups Collector
This commit is contained in:
parent
9ee2076a12
commit
79fd32603f
5 changed files with 118 additions and 8 deletions
57
flake.lock
generated
57
flake.lock
generated
|
|
@ -69,6 +69,27 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"cup-collector": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-utils": "flake-utils_2",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1779501140,
|
||||||
|
"narHash": "sha256-0azy6r62B0Q2HDhVNizduriej0l4QVjlgljKotqoexQ=",
|
||||||
|
"owner": "genebean",
|
||||||
|
"repo": "cup-collector",
|
||||||
|
"rev": "b68ca178621b126a1cbe40de59065983fcd9d388",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "genebean",
|
||||||
|
"repo": "cup-collector",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"deadnix": {
|
"deadnix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -235,6 +256,24 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-utils_2": {
|
||||||
|
"inputs": {
|
||||||
|
"systems": "systems"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731533236,
|
||||||
|
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "flake-utils",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flox": {
|
"flox": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"crane": "crane",
|
"crane": "crane",
|
||||||
|
|
@ -716,6 +755,7 @@
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"compose2nix": "compose2nix",
|
"compose2nix": "compose2nix",
|
||||||
|
"cup-collector": "cup-collector",
|
||||||
"deadnix": "deadnix",
|
"deadnix": "deadnix",
|
||||||
"disko": "disko",
|
"disko": "disko",
|
||||||
"flox": "flox",
|
"flox": "flox",
|
||||||
|
|
@ -871,6 +911,21 @@
|
||||||
"type": "github"
|
"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"
|
||||||
|
}
|
||||||
|
},
|
||||||
"treefmt-nix": {
|
"treefmt-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
|
|
@ -891,7 +946,7 @@
|
||||||
},
|
},
|
||||||
"utils": {
|
"utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1731533236,
|
"lastModified": 1731533236,
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,11 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
cup-collector = {
|
||||||
|
url = "github:genebean/cup-collector";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
|
||||||
# Linting and formatting
|
# Linting and formatting
|
||||||
deadnix = {
|
deadnix = {
|
||||||
url = "github:astro/deadnix";
|
url = "github:astro/deadnix";
|
||||||
|
|
@ -173,6 +178,7 @@
|
||||||
nixnuc = localLib.mkNixosHost {
|
nixnuc = localLib.mkNixosHost {
|
||||||
hostname = "nixnuc";
|
hostname = "nixnuc";
|
||||||
additionalModules = [
|
additionalModules = [
|
||||||
|
inputs.cup-collector.nixosModules.default
|
||||||
inputs.private-flake.nixosModules.private.nixnuc
|
inputs.private-flake.nixosModules.private.nixnuc
|
||||||
inputs.simple-nixos-mailserver.nixosModule
|
inputs.simple-nixos-mailserver.nixosModule
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -99,6 +99,7 @@
|
||||||
"BetterSnapTool" = 417375580;
|
"BetterSnapTool" = 417375580;
|
||||||
"Brother iPrint&Scan" = 1193539993;
|
"Brother iPrint&Scan" = 1193539993;
|
||||||
"Home Assistant" = 1099568401;
|
"Home Assistant" = 1099568401;
|
||||||
|
"LocalSend" = 1661733229;
|
||||||
"MQTT Explorer" = 1455214828;
|
"MQTT Explorer" = 1455214828;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -109,6 +110,7 @@
|
||||||
settings = {
|
settings = {
|
||||||
bash-prompt-prefix = "(nix:$name)\040";
|
bash-prompt-prefix = "(nix:$name)\040";
|
||||||
build-users-group = "nixbld";
|
build-users-group = "nixbld";
|
||||||
|
download-buffer-size = 524288000;
|
||||||
experimental-features = [
|
experimental-features = [
|
||||||
"auto-allocate-uids"
|
"auto-allocate-uids"
|
||||||
"flakes"
|
"flakes"
|
||||||
|
|
|
||||||
44
modules/hosts/nixos/nixnuc/cup-collector.nix
Normal file
44
modules/hosts/nixos/nixnuc/cup-collector.nix
Normal file
|
|
@ -0,0 +1,44 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
home_domain = "home.technicalissues.us";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
cupCollector = {
|
||||||
|
enable = true;
|
||||||
|
# dataDir = "/var/lib/cup-collector";
|
||||||
|
domain = "cups.${home_domain}";
|
||||||
|
envFile = config.sops.secrets.cup_collector_env.path;
|
||||||
|
households = [
|
||||||
|
{
|
||||||
|
name = "Liverman Family";
|
||||||
|
slug = "liverman_family";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
migrationsDir = inputs.cup-collector.packages.${pkgs.stdenv.hostPlatform.system}.migrations;
|
||||||
|
pbBindIp = "0.0.0.0";
|
||||||
|
pbPort = 8091; # override default due to conflict
|
||||||
|
pocketidIssuerUrl = config.services.pocket-id.settings.APP_URL;
|
||||||
|
port = 3010; # override default due to conflict
|
||||||
|
};
|
||||||
|
|
||||||
|
restic.backups.daily = {
|
||||||
|
paths = [
|
||||||
|
config.services.cupCollector.dataDir
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sops = {
|
||||||
|
defaultSopsFile = ./secrets.yaml;
|
||||||
|
secrets.cup_collector_env.restartUnits = [
|
||||||
|
"cup-collector-pb-init.service"
|
||||||
|
"cup-collector.service"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -17,6 +17,7 @@ in
|
||||||
./containers/audiobookshelf.nix
|
./containers/audiobookshelf.nix
|
||||||
./containers/mountain-mesh-bot-discord.nix
|
./containers/mountain-mesh-bot-discord.nix
|
||||||
./containers/psitransfer.nix
|
./containers/psitransfer.nix
|
||||||
|
./cup-collector.nix
|
||||||
./monitoring-stack.nix
|
./monitoring-stack.nix
|
||||||
../../../shared/nixos/lets-encrypt.nix
|
../../../shared/nixos/lets-encrypt.nix
|
||||||
../../../shared/nixos/restic.nix
|
../../../shared/nixos/restic.nix
|
||||||
|
|
@ -98,12 +99,14 @@ in
|
||||||
3002 # grafana
|
3002 # grafana
|
||||||
3005 # Firefly III
|
3005 # Firefly III
|
||||||
3006 # Firefly III Data Importer
|
3006 # Firefly III Data Importer
|
||||||
|
3010 # Cup Collector
|
||||||
3030 # Forgejo
|
3030 # Forgejo
|
||||||
3087 # Youtarr in docker compose
|
3087 # Youtarr in docker compose
|
||||||
8001 # Tube Archivist
|
8001 # Tube Archivist
|
||||||
8384 # Syncthing gui
|
8384 # Syncthing gui
|
||||||
8888 # Atuin
|
8888 # Atuin
|
||||||
8090 # Wallabag in docker compose
|
8090 # Wallabag in docker compose
|
||||||
|
8091 # PocketBase
|
||||||
8945 # Pinchflat
|
8945 # Pinchflat
|
||||||
13378 # Audiobookshelf in oci-container
|
13378 # Audiobookshelf in oci-container
|
||||||
];
|
];
|
||||||
|
|
@ -146,13 +149,6 @@ in
|
||||||
|
|
||||||
# List services that you want to enable:
|
# List services that you want to enable:
|
||||||
services = {
|
services = {
|
||||||
pipewire = {
|
|
||||||
enable = true;
|
|
||||||
alsa.enable = true;
|
|
||||||
alsa.support32Bit = true;
|
|
||||||
pulse.enable = true;
|
|
||||||
};
|
|
||||||
pulseaudio.enable = false;
|
|
||||||
atuin = {
|
atuin = {
|
||||||
enable = true;
|
enable = true;
|
||||||
host = "127.0.0.1";
|
host = "127.0.0.1";
|
||||||
|
|
@ -594,6 +590,12 @@ in
|
||||||
selfhosted = true; # Only because this is not exsposed to the web
|
selfhosted = true; # Only because this is not exsposed to the web
|
||||||
user = "jellyfin";
|
user = "jellyfin";
|
||||||
};
|
};
|
||||||
|
pipewire = {
|
||||||
|
enable = true;
|
||||||
|
alsa.enable = true;
|
||||||
|
alsa.support32Bit = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
pocket-id = {
|
pocket-id = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
|
@ -617,6 +619,7 @@ in
|
||||||
backupAll = true;
|
backupAll = true;
|
||||||
startAt = "*-*-* 23:00:00";
|
startAt = "*-*-* 23:00:00";
|
||||||
};
|
};
|
||||||
|
pulseaudio.enable = false;
|
||||||
resolved.enable = true;
|
resolved.enable = true;
|
||||||
restic.backups.daily = {
|
restic.backups.daily = {
|
||||||
paths = [
|
paths = [
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue