aboutsummaryrefslogtreecommitdiff
path: root/nixos/configurations
diff options
context:
space:
mode:
authorKarel Kočí <cynerd@email.cz>2026-03-31 17:46:42 +0200
committerKarel Kočí <cynerd@email.cz>2026-03-31 17:46:42 +0200
commitd5ec7b775888827089a668aea58244b2ad4a1e70 (patch)
treef83260efda4b3c478855484d1451a8858bc23b9c /nixos/configurations
parent5f8f3edbf69f4735f302fc5a749dba2928ce6582 (diff)
downloadnixos-personal-master.tar.gz
nixos-personal-master.tar.bz2
nixos-personal-master.zip
treewide: long time changesHEADmaster
Diffstat (limited to 'nixos/configurations')
-rw-r--r--nixos/configurations/binky.nix4
-rw-r--r--nixos/configurations/dribbler.nix65
-rw-r--r--nixos/configurations/lipwig.nix7
-rw-r--r--nixos/configurations/ridcully.nix45
-rw-r--r--nixos/configurations/zd-mox.nix1
5 files changed, 92 insertions, 30 deletions
diff --git a/nixos/configurations/binky.nix b/nixos/configurations/binky.nix
index dba1114..9e3866f 100644
--- a/nixos/configurations/binky.nix
+++ b/nixos/configurations/binky.nix
@@ -1,4 +1,4 @@
-{pkgs, ...}: {
+{
system.stateVersion = "24.05";
nixpkgs.hostPlatform.system = "x86_64-linux";
deploy = {
@@ -85,6 +85,4 @@
enable = true;
dataDir = "/home/cynerd";
};
-
- environment.systemPackages = [pkgs.heroic];
}
diff --git a/nixos/configurations/dribbler.nix b/nixos/configurations/dribbler.nix
index 306925c..038f455 100644
--- a/nixos/configurations/dribbler.nix
+++ b/nixos/configurations/dribbler.nix
@@ -14,31 +14,22 @@
boot = {
initrd.availableKernelModules = ["nvme" "xhci_pci" "usb_storage" "sd_mod"];
kernelModules = ["kvm-intel"];
+ kernelParams = ["video=eDP-1:d"]; # Disable internal display for kodi to use HDMI
};
hardware.cpu.intel.updateMicrocode = true;
- boot.initrd.luks.devices = {
- "encroot".device = "/dev/disk/by-uuid/b317feb5-d68d-4ec3-a24f-0307c116cac8";
+ cynerd.autounlock = {
+ "encroot" = "/dev/disk/by-uuid/f791f524-0552-487b-9bf9-5c20ca78651b";
};
fileSystems = {
"/" = {
device = "/dev/mapper/encroot";
fsType = "btrfs";
- options = ["compress=lzo" "subvol=@"];
- };
- "/nix" = {
- device = "/dev/mapper/encroot";
- fsType = "btrfs";
- options = ["compress=lzo" "subvol=@nix"];
- };
- "/home" = {
- device = "/dev/mapper/encroot";
- fsType = "btrfs";
- options = ["compress=lzo" "subvol=@home"];
+ options = ["compress=lzo"];
};
"/boot" = {
- device = "/dev/disk/by-uuid/8F7D-A154";
+ device = "/dev/disk/by-uuid/7143-1EE7";
fsType = "vfat";
};
};
@@ -54,7 +45,7 @@
systemd.network = {
networks = {
"dhcp" = {
- matchConfig.Name = "enp2s0f0";
+ matchConfig.Name = "enp1s0";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = "yes";
@@ -62,7 +53,7 @@
linkConfig.RequiredForOnline = "routable";
};
"dhcp-wlan" = {
- matchConfig.Name = "wlp3s0";
+ matchConfig.Name = "wlp2s0";
networkConfig = {
DHCP = "yes";
IPv6AcceptRA = "yes";
@@ -75,12 +66,44 @@
};
# Kodi
- nixpkgs.config.kodi.enableAdvancedLauncher = true;
- users.extraUsers.kodi.isNormalUser = true;
- services.cage = {
- user = "kodi";
- program = "${pkgs.kodi-wayland}/bin/kodi-standalone";
+ environment.systemPackages = with pkgs; [
+ kodi-gbm
+ ];
+ hardware = {
+ graphics = {
+ enable = true;
+ enable32Bit = true;
+ extraPackages = with pkgs; [
+ intel-media-driver
+ libvdpau-va-gl
+ ];
+ };
+ bluetooth.enable = true;
+ };
+ services.pipewire = {
enable = true;
+ alsa.enable = true;
+ alsa.support32Bit = true;
+ pulse.enable = true;
+ };
+ security.rtkit.enable = true;
+ #nixpkgs.config.kodi.enableAdvancedLauncher = true;
+ users.extraUsers.kodi = {
+ isNormalUser = true;
+ extraGroups = ["audio" "video" "input"];
+ };
+ systemd.services.kodi = {
+ description = "Kodi standalone (GBM)";
+ wantedBy = ["multi-user.target"];
+ conflicts = ["getty@tty1.service"];
+ serviceConfig = {
+ User = "kodi";
+ TTYPath = "/dev/tty1";
+ ExecStart = "${pkgs.kodi-gbm}/bin/kodi-standalone";
+ Restart = "on-abort";
+ StandardInput = "tty";
+ StandardOutput = "journal";
+ };
};
networking.firewall = {
allowedTCPPorts = [8080];
diff --git a/nixos/configurations/lipwig.nix b/nixos/configurations/lipwig.nix
index 11e60df..556ca5d 100644
--- a/nixos/configurations/lipwig.nix
+++ b/nixos/configurations/lipwig.nix
@@ -22,6 +22,7 @@
};
wireguard = true;
borgjobs = {
+ # TODO backup influx
postgresql.dumpCommand = pkgs.writeScript "postgreqsl-backup.sh" ''
/run/wrappers/bin/sudo -u postgres /run/current-system/sw/bin/pg_dumpall
'';
@@ -121,7 +122,7 @@
forceSSL = true;
useACMEHost = "cynerd.cz";
locations."/".extraConfig = ''
- uwsgi_pass "unix:///run/searx/searx.sock";
+ uwsgi_pass "unix://${config.services.searx.uwsgiConfig.socket}";
include ${config.services.nginx.package}/conf/uwsgi_params;
'';
};
@@ -275,8 +276,8 @@
license = "agpl3Plus";
};
passwords = pkgs.fetchNextcloudApp {
- url = "https://git.mdns.eu/api/v4/projects/45/packages/generic/passwords/2025.12.1/passwords-lsr-81.tar.gz";
- hash = "sha256-mOqyVdQ6rRXrAjoCEz5B0/jx1aiM9TYcPJsuhHFR34w=";
+ url = "https://git.mdns.eu/api/v4/projects/45/packages/generic/passwords/2026.3.0/passwords.tar.gz";
+ hash = "sha256-YHilpFaZHNCtqLRvTCDhyVoFWLC85Qkj1mMxp08YCho=";
license = "agpl3Plus";
};
};
diff --git a/nixos/configurations/ridcully.nix b/nixos/configurations/ridcully.nix
index 97a0456..9f3ed57 100644
--- a/nixos/configurations/ridcully.nix
+++ b/nixos/configurations/ridcully.nix
@@ -10,6 +10,9 @@
openvpn = {
elektroline = true;
};
+ borgjobs = {
+ hetzner-s3.paths = "/back/hetzner-s3-sync";
+ };
};
boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
@@ -77,8 +80,44 @@
nix.settings.max-jobs = 4;
##############################################################################
- services.syncthing = {
- enable = true;
- dataDir = "/home/cynerd";
+ services = {
+ syncthing = {
+ enable = true;
+ dataDir = "/home/cynerd";
+ };
+
+ octoprint = {
+ enable = true;
+ openFirewall = true;
+ };
+
+ mjpg-streamer = {
+ enable = true;
+ inputPlugin = "input_uvc.so -d /dev/video2 -r 1920x1080 -f 30";
+ outputPlugin = "output_http.so -p 5001 -w @www@";
+ };
+ };
+ networking.firewall.allowedTCPPorts = [5001];
+
+ # Service to synchronize local copy of Hetzner S3
+ systemd = {
+ services."hetzner-sync" = {
+ script = ''
+ /run/current-system/sw/bin/rclone --config /run/secrets/rclone-hetzner.conf \
+ sync hetzner: /back/hetzner-s3-sync
+ '';
+ serviceConfig = {
+ Type = "oneshot";
+ User = "root";
+ };
+ };
+ timers."hetzner-sync" = {
+ wantedBy = ["timers.target"];
+ timerConfig.Unit = "hetzner-sync.service";
+ timerConfig = {
+ OnCalendar = "daily";
+ Persistent = false;
+ };
+ };
};
}
diff --git a/nixos/configurations/zd-mox.nix b/nixos/configurations/zd-mox.nix
index 47319ed..6ce1b6b 100644
--- a/nixos/configurations/zd-mox.nix
+++ b/nixos/configurations/zd-mox.nix
@@ -22,6 +22,7 @@ in {
"70:85:c2:4a:59:f2" = hosts.ridcully;
"74:bf:c0:42:82:19" = hosts.printer;
"f8:dc:7a:79:00:e6" = hosts.tc;
+ "34:94:54:33:6b:48" = hosts.vb;
};
};
wireguard = true;