diff --git a/CHANGELOG.md b/CHANGELOG.md index 95ad52e..de5726c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ Added: - Prowlarr - Readarr - Lidarr +- UID/GID's are now static, this should make future backups and migrations more predictable. Migration: - Due to how UID/GID's are handled in this new version, certain services diff --git a/nixarr/audiobookshelf/default.nix b/nixarr/audiobookshelf/default.nix index cca49ef..b099fb6 100644 --- a/nixarr/audiobookshelf/default.nix +++ b/nixarr/audiobookshelf/default.nix @@ -155,11 +155,11 @@ in { ]; users = { - groups.${globals.audiobookshelf.group}.gid = globals.gids.${globals.audiobookshelf.group}; + groups.${globals.audiobookshelf.group}.gid = lib.mkForce globals.gids.${globals.audiobookshelf.group}; users.${globals.audiobookshelf.user} = { isSystemUser = true; group = globals.audiobookshelf.group; - uid = globals.uids.${globals.audiobookshelf.user}; + uid = lib.mkForce globals.uids.${globals.audiobookshelf.user}; }; }; diff --git a/nixarr/autobrr/default.nix b/nixarr/autobrr/default.nix index d2298cc..e161a07 100644 --- a/nixarr/autobrr/default.nix +++ b/nixarr/autobrr/default.nix @@ -95,11 +95,11 @@ in { ]; users = { - groups.${globals.autobrr.group}.gid = globals.gids.${globals.autobrr.group}; + groups.${globals.autobrr.group}.gid = lib.mkForce globals.gids.${globals.autobrr.group}; users.${globals.autobrr.user} = { isSystemUser = true; group = globals.autobrr.group; - uid = globals.uids.${globals.autobrr.user}; + uid = lib.mkForce globals.uids.${globals.autobrr.user}; }; }; diff --git a/nixarr/bazarr/default.nix b/nixarr/bazarr/default.nix index 000800a..e5883a0 100644 --- a/nixarr/bazarr/default.nix +++ b/nixarr/bazarr/default.nix @@ -107,11 +107,11 @@ in { }; users = { - groups.${globals.bazarr.group}.gid = globals.gids.${globals.bazarr.group}; + groups.${globals.bazarr.group}.gid = lib.mkForce globals.gids.${globals.bazarr.group}; users.${globals.bazarr.user} = { isSystemUser = true; group = globals.bazarr.group; - uid = globals.uids.${globals.bazarr.user}; + uid = lib.mkForce globals.uids.${globals.bazarr.user}; }; }; diff --git a/nixarr/jellyfin/default.nix b/nixarr/jellyfin/default.nix index e07f201..2cb5955 100644 --- a/nixarr/jellyfin/default.nix +++ b/nixarr/jellyfin/default.nix @@ -139,11 +139,11 @@ in { ]; users = { - groups.${globals.jellyfin.group}.gid = globals.gids.${globals.jellyfin.group}; + groups.${globals.jellyfin.group}.gid = lib.mkForce globals.gids.${globals.jellyfin.group}; users.${globals.jellyfin.user} = { isSystemUser = true; group = globals.jellyfin.group; - uid = globals.uids.${globals.jellyfin.user}; + uid = lib.mkForce globals.uids.${globals.jellyfin.user}; }; }; diff --git a/nixarr/jellyseerr/default.nix b/nixarr/jellyseerr/default.nix index b84b681..eb10740 100644 --- a/nixarr/jellyseerr/default.nix +++ b/nixarr/jellyseerr/default.nix @@ -186,11 +186,11 @@ in { }; users = { - groups.${globals.jellyseerr.group}.gid = globals.gids.${globals.jellyseerr.group}; + groups.${globals.jellyseerr.group}.gid = lib.mkForce globals.gids.${globals.jellyseerr.group}; users.${globals.jellyseerr.user} = { isSystemUser = true; group = globals.jellyseerr.group; - uid = globals.uids.${globals.jellyseerr.user}; + uid = lib.mkForce globals.uids.${globals.jellyseerr.user}; }; }; diff --git a/nixarr/lidarr/default.nix b/nixarr/lidarr/default.nix index e3952b9..9dfda3b 100644 --- a/nixarr/lidarr/default.nix +++ b/nixarr/lidarr/default.nix @@ -79,11 +79,11 @@ in { ]; users = { - groups.${globals.lidarr.group}.gid = globals.gids.${globals.lidarr.group}; + groups.${globals.lidarr.group}.gid = lib.mkForce globals.gids.${globals.lidarr.group}; users.${globals.lidarr.user} = { isSystemUser = true; group = globals.lidarr.group; - uid = globals.uids.${globals.lidarr.user}; + uid = lib.mkForce globals.uids.${globals.lidarr.user}; }; }; diff --git a/nixarr/nixarr-command/default.nix b/nixarr/nixarr-command/default.nix index 650d708..8108407 100644 --- a/nixarr/nixarr-command/default.nix +++ b/nixarr/nixarr-command/default.nix @@ -172,13 +172,13 @@ with lib; let echo "Backing up /etc/passwd and /etc/group..." - mkdir "${nixarr.stateDir}/migration-backup" + mkdir -p "${nixarr.stateDir}/migration-backup" cp /etc/passwd "${nixarr.stateDir}/migration-backup/passwd.bak" cp /etc/group "${nixarr.stateDir}/migration-backup/group.bak" echo "Wiping all nixarr users and groups from /etc/passwd and /etc/group..." - sed -iE '/^(audiobookshelf|autobrr|bazarr|cross-seed|jellyfin|jellyseerr|lidarr|plex|prowlarr|radarr|readarr|recyclarr|sabnzbd|sonarr|streamer|torrenter|transmission|usenet)/d' /etc/passwd + sed -iE '/^(audiobookshelf|autobrr|bazarr|cross-seed|jellyfin|jellyseerr|lidarr|plex|prowlarr|radarr|readarr|recyclarr|sabnzbd|sonarr|streamer|torrenter|transmission|usenet)/d' /etc/passwd sed -iE '/^(autobrr|cross-seed|jellyseerr|media|prowlarr|recyclarr|sabnzbd|streamer|torrenter|transmission|usenet)/d' /etc/group echo "" diff --git a/nixarr/plex/default.nix b/nixarr/plex/default.nix index 6fbbecd..4160354 100644 --- a/nixarr/plex/default.nix +++ b/nixarr/plex/default.nix @@ -139,11 +139,11 @@ in { ]; users = { - groups.${globals.plex.group}.gid = globals.gids.${globals.plex.group}; + groups.${globals.plex.group}.gid = lib.mkForce globals.gids.${globals.plex.group}; users.${globals.plex.user} = { isSystemUser = true; - group = group; - uid = globals.uids.${globals.plex.user}; + group = globals.plex.group; + uid = lib.mkForce globals.uids.${globals.plex.user}; }; }; diff --git a/nixarr/prowlarr/default.nix b/nixarr/prowlarr/default.nix index a9f4fa6..1e72b0c 100644 --- a/nixarr/prowlarr/default.nix +++ b/nixarr/prowlarr/default.nix @@ -104,11 +104,11 @@ in { }; users = { - groups.${globals.prowlarr.group}.gid = globals.gids.${globals.prowlarr.group}; + groups.${globals.prowlarr.group}.gid = lib.mkForce globals.gids.${globals.prowlarr.group}; users.${globals.prowlarr.user} = { isSystemUser = true; group = globals.prowlarr.group; - uid = globals.uids.${globals.prowlarr.user}; + uid = lib.mkForce globals.uids.${globals.prowlarr.user}; }; }; diff --git a/nixarr/radarr/default.nix b/nixarr/radarr/default.nix index 7520497..e332b3d 100644 --- a/nixarr/radarr/default.nix +++ b/nixarr/radarr/default.nix @@ -84,11 +84,11 @@ in { ]; users = { - groups.${globals.radarr.group}.gid = globals.gids.${globals.radarr.group}; + groups.${globals.radarr.group}.gid = lib.mkForce globals.gids.${globals.radarr.group}; users.${globals.radarr.user} = { isSystemUser = true; group = globals.radarr.group; - uid = globals.uids.${globals.radarr.user}; + uid = lib.mkForce globals.uids.${globals.radarr.user}; }; }; diff --git a/nixarr/readarr-audiobook/default.nix b/nixarr/readarr-audiobook/default.nix index 6f75ea6..8167693 100644 --- a/nixarr/readarr-audiobook/default.nix +++ b/nixarr/readarr-audiobook/default.nix @@ -81,11 +81,11 @@ in { ]; users = { - groups.${globals.readarr-audiobook.group}.gid = globals.gids.${globals.readarr-audiobook.group}; + groups.${globals.readarr-audiobook.group}.gid = lib.mkForce globals.gids.${globals.readarr-audiobook.group}; users.${globals.readarr-audiobook.user} = { isSystemUser = true; group = globals.readarr-audiobook.group; - uid = globals.uids.${globals.readarr-audiobook.user}; + uid = lib.mkForce globals.uids.${globals.readarr-audiobook.user}; }; }; diff --git a/nixarr/readarr/default.nix b/nixarr/readarr/default.nix index a8e4606..d60f61f 100644 --- a/nixarr/readarr/default.nix +++ b/nixarr/readarr/default.nix @@ -79,11 +79,11 @@ in { ]; users = { - groups.${globals.readarr.group}.gid = globals.gids.${globals.readarr.group}; + groups.${globals.readarr.group}.gid = lib.mkForce globals.gids.${globals.readarr.group}; users.${globals.readarr.user} = { isSystemUser = true; group = globals.readarr.group; - uid = globals.uids.${globals.readarr.user}; + uid = lib.mkForce globals.uids.${globals.readarr.user}; }; }; diff --git a/nixarr/recyclarr/default.nix b/nixarr/recyclarr/default.nix index 947d63c..4c1aec6 100644 --- a/nixarr/recyclarr/default.nix +++ b/nixarr/recyclarr/default.nix @@ -188,11 +188,11 @@ in { ]; users = { - groups.${globals.recyclarr.group}.gid = globals.gids.${globals.recyclarr.group}; + groups.${globals.recyclarr.group}.gid = lib.mkForce globals.gids.${globals.recyclarr.group}; users.${globals.recyclarr.user} = { isSystemUser = true; group = globals.recyclarr.group; - uid = globals.uids.${globals.recyclarr.user}; + uid = lib.mkForce globals.uids.${globals.recyclarr.user}; }; }; diff --git a/nixarr/sabnzbd/default.nix b/nixarr/sabnzbd/default.nix index ee85606..ff447c0 100644 --- a/nixarr/sabnzbd/default.nix +++ b/nixarr/sabnzbd/default.nix @@ -138,7 +138,7 @@ in { fi chmod 600 ${ini-file-target} - chown usenet:media ${ini-file-target} + chown ${globals.sabnzbd.user}:${globals.sabnzbd.group} ${ini-file-target} ''; }; @@ -186,11 +186,11 @@ in { ]; users = { - groups.${globals.sabnzbd.group}.gid = globals.gids.${globals.sabnzbd.group}; + groups.${globals.sabnzbd.group}.gid = lib.mkForce globals.gids.${globals.sabnzbd.group}; users.${globals.sabnzbd.user} = { isSystemUser = true; - group = group; - uid = globals.uids.${globals.sabnzbd.user}; + group = globals.sabnzbd.group; + uid = lib.mkForce globals.uids.${globals.sabnzbd.user}; }; }; diff --git a/nixarr/sonarr/default.nix b/nixarr/sonarr/default.nix index 422937c..0a87ac8 100644 --- a/nixarr/sonarr/default.nix +++ b/nixarr/sonarr/default.nix @@ -73,11 +73,11 @@ in { ]; users = { - groups.${globals.sonarr.group}.gid = globals.gids.${globals.sonarr.group}; + groups.${globals.sonarr.group}.gid = lib.mkForce globals.gids.${globals.sonarr.group}; users.${globals.sonarr.user} = { isSystemUser = true; group = globals.sonarr.group; - uid = globals.uids.${globals.sonarr.user}; + uid = lib.mkForce globals.uids.${globals.sonarr.user}; }; }; diff --git a/nixarr/transmission/cross-seed/default.nix b/nixarr/transmission/cross-seed/default.nix index b637b77..2ae62df 100644 --- a/nixarr/transmission/cross-seed/default.nix +++ b/nixarr/transmission/cross-seed/default.nix @@ -120,11 +120,11 @@ in { }; users = { - groups.${cfg.group}.gid = globals.gids.${cfg.group}; + groups.${cfg.group}.gid = lib.mkForce globals.gids.${cfg.group}; users.${cfg.user} = { isSystemUser = true; group = cfg.group; - uid = globals.uids.${cfg.user}; + uid = lib.mkForce globals.uids.${cfg.user}; }; }; }; diff --git a/nixarr/transmission/default.nix b/nixarr/transmission/default.nix index 5efe61e..31739f0 100644 --- a/nixarr/transmission/default.nix +++ b/nixarr/transmission/default.nix @@ -286,12 +286,12 @@ in { ]; users = { - groups.${globals.transmission.group}.gid = globals.gids.${globals.transmission.group}; - groups.${globals.cross-seed.group}.gid = globals.gids.${globals.cross-seed.group}; + groups.${globals.transmission.group}.gid = lib.mkForce globals.gids.${globals.transmission.group}; + groups.${globals.cross-seed.group}.gid = lib.mkForce globals.gids.${globals.cross-seed.group}; users.${globals.transmission.user} = { isSystemUser = true; group = globals.transmission.group; - uid = globals.uids.${globals.transmission.user}; + uid = lib.mkForce globals.uids.${globals.transmission.user}; }; }; diff --git a/util/globals/default.nix b/util/globals/default.nix index a7ec655..a0291b9 100644 --- a/util/globals/default.nix +++ b/util/globals/default.nix @@ -25,7 +25,7 @@ in { bazarr = 232; lidarr = 306; prowlarr = 293; - jellyseerr = 250; + jellyseerr = 262; sonarr = 274; radarr = 275; readarr = 250;