ComfyUI's state is mostly multi-GB checkpoints that users add and remove
by hand. With this new option it can be located anywhere, not just under /var/lib.
Assisted-by: Claude Code:claude-opus-5 (mostly)
Co-authored-by: ilyusha <121713022+rokokol@users.noreply.github.com>
The module writes its own flags into services.comfyui.extraArgs, the
option users write to as well. List definitions are concatenated and the
module's landed last, so a flag set by the user was overridden by the
module instead of overriding it:
comfyui '--port=9999' '--base-directory=/srv/comfyui' \
'--base-directory=/var/lib/comfyui' … '--port=8188'
Both of the user's flags are overwritten as argparse keeps the last occurrence of each.
Assisted-by: Claude Code:claude-opus-5 (mostly)
Co-authored-by: ilyusha <121713022+rokokol@users.noreply.github.com>
If `cfg.user` is not default, there is no guarantee that `cfg.user` is a
member of `config.services.redis.servers.paperless.group`. In this case,
calls such as `paperless-manage document_renamer` would fail with
```
redis.exceptions.ConnectionError: Error 13 connecting to /run/redis-paperless/redis.sock. Permission denied.
```
The call to `sudo` in `paperless-manage` now explicitly sets group
membership to include both `cfg.group` and `config.services.redis.servers.paperless.group`.
With a redis instance enabled, `redisServer.user` was added to `defaultServiceConfig.SupplementaryGroup`.
While this technically works (since the group is derived from `redisServer.user` by default), `redisServer.group` exists and could be changed by an end user.
Using `redisServer.group` should preempt future issues.
Add a `group` option to simplify the module and stop relying on `users.users.${cfg.user}.group`,
which may not be present if `cfg.user` is created imperatively. See #547947
GitLab 19.0 with GitLab container registry (GLCR) 4.40 starts migrating
to a real database as metadata backend. We should follow that and offer
our users a migration way to this backend. CNCF Distribution (previously
known as Docker Distribution) doesn't support this kind of metadata
storage and it also seems off to implement this in the
`services.dockerRegistry` NixOS module as the GLCR
moved quite far away from CNCF Distribution.
This change additionally changes the default user GLCR runs in to make it
less confusing for users, especially as the user is also now used to
connect to PostgreSQL.
This change also modifies the module for GitLab 19.0 / GLCR 4.40 support.