- Move run-once flag execution before dependency includes
- Add user-backup as explicit dependency for backup and cleanup roles
- Ensure backup root directory exists before cleanup services run
- Fix dependency ordering to prevent cleanback failures on missing paths
https://chatgpt.com/share/6954df53-b9d8-800f-b9e7-a1508cf00279
- Add configurable force keep option with default value 3
- Extend systemd cleanup service to skip newest backups
- Update role documentation to explain safe cleanup behavior and configuration
https://chatgpt.com/share/6954d89e-bf08-800f-be4a-5d237d190ddd
- replace legacy funkwhale_* vars with FUNKWHALE_* naming
- split data into dedicated media, static and music volumes
- mount media/static/music consistently across api, worker and beat
- update env configuration to match new directory layout
- remove outdated Administration.md
https://chatgpt.com/share/6954cf94-7920-800f-a582-68373a04e836
- Switch SMTP port dynamically: 465 with TLS, 25 without TLS
- Disable SMTP AUTH automatically when TLS/STARTTLS is not enabled
- Bind Mailu SMTP ports to 0.0.0.0 in Docker-in-Docker environments
- Fix boolean handling in msmtp and Mobilizon SMTP templates
- Ensure plain SMTP (no TLS, no AUTH) works reliably in CI/test setups
https://chatgpt.com/share/69540941-279c-800f-a2b1-79a189c2bdcc
- Rely on SYS_SERVICE_GROUP_MANIPULATION to enforce linear execution order
- Adjust flush logic to disable instant flush when final flush is requested
- Prevent cleanup service from triggering premature service flushes that caused backup failures
https://chatgpt.com/share/695408bb-23f4-800f-9234-0e77c62d9add
- mask systemd-firstboot and first-boot-complete in Dockerfile to prevent systemd boot hang in CI/compose
- ensure machine-id is initialized during image build
- add early assertions for systemd availability and PID 1 correctness in docker role
- replace blocking docker restart with non-blocking restart + 60s wait and detailed debug dump on failure
- normalize task numbering (fuse-overlayfs, reset) for clarity
https://chatgpt.com/share/6953fbef-c508-800f-ac06-39f64f92f008
- switch deploy tests to docker compose exec (-T) instead of docker exec
- remove hard dependency on INFINITO_CONTAINER
- ensure clean CI state via compose down -v before deploy tests
- start coredns + infinito exclusively via compose
- enable host cgroup namespace for systemd containers (cgroup: host)
https://chatgpt.com/share/6953e367-b674-800f-bc55-97e8625314cf
- switch workflow to `make test-deploy` with matrix-driven INFINITO_DISTRO
- centralize container naming via INFINITO_CONTAINER
- add clean-container helper for reliable CI reruns
- remove --distro CLI flag and rely on env-based distro selection
- pass NIX_CONFIG as docker build arg for rate-limit-safe builds
https://chatgpt.com/share/6953d266-aa80-800f-88b8-0413926a81f0
- replace localhost special-casing with valid FQDN (infinito.localhost)
- derive system email DOMAIN and HOST directly from DOMAIN_PRIMARY
- align Mailu TLS_FLAVOR with SYSTEM_EMAIL.TLS (mail vs notls)
- tie OIDC_VERIFY_SSL to TLS_ENABLED for consistent test/CI behavior
- update CI deploy script to use new primary domain
https://chatgpt.com/share/695311c0-fbe8-800f-8058-9d40a06b189a
* Replace global `SSL_ENABLED` flag with `TLS_ENABLED`
* Update web protocol/ports (http/https, ws/wss) to use `TLS_ENABLED`
* Switch cert-related roles and nginx TLS header gating to `TLS_ENABLED`
* Update app env templates (BookWyrm, Confluence, Jira, Magento, OpenProject, WordPress, etc.) to use `TLS_ENABLED`
* Adjust inventory generator to write `TLS_ENABLED` and update CLI help text accordingly
* Update unit tests for inventory vars overrides to expect `TLS_ENABLED`
https://chatgpt.com/share/695306ef-a798-800f-b118-e07b525e1811
- introduce desk-gnome base role to install GNOME shell and GSettings schemas cross-distro
- decouple caffeine, extensions, and terminal roles from hard dependencies
- ensure GNOME-dependent roles run only after base GNOME setup
- add run-once guards to GNOME desktop roles to avoid duplicate execution
- reorganize role tasks into explicit 01_core.yml entrypoints
https://chatgpt.com/share/6952fc52-92dc-800f-aaa0-a3b822fa6d34
- add explicit wait task for Mailu DB initialization (domain table)
- fail fast with last 300 lines of admin container logs if schema is missing
- prevent race condition between container startup and user creation
- rename manage_user task to keep execution order explicit
https://chatgpt.com/share/6952f1e3-3690-800f-950d-3ce55e90b6b4
- drop unused credentials.dkim_public_key from schema (runtime-generated only)
- switch Mailu API token to alphanumeric with stronger validation
- remove obsolete hard-restart todo entry
https://chatgpt.com/share/6952e8dd-fee8-800f-989d-5268b33caf02
- add --vars-file CLI option to load host_vars overrides from YAML
- merge vars-file overrides before JSON --vars (JSON takes precedence)
- implement deep-merge logic for YAML vars files
- update CI deploy script to use vars file instead of inline JSON
- add unit test for apply_vars_overrides_from_file
- remove obsolete MASK_CREDENTIALS_IN_LOGS TODO entry
https://chatgpt.com/share/6952e51d-6c50-800f-8764-31dc8c609cdb
- switch CI DNS to CoreDNS-based *.localhost resolution (A/AAAA → loopback)
- set PRIMARY_DOMAIN to localhost for CI deploys
- add explicit DNS resolution assert for test.localhost
- deploy explicit default_server vhost returning 404 text/plain
- assert default vhost behavior via HTTP before app domains exist
https://chatgpt.com/share/6952cf2a-bbd4-800f-b2b8-c4baba66e301
- ensure files created by Ansible under /tmp/gh-action are visible to Docker host
- prevent file-vs-directory bind mount errors in GitHub CI
- align container filesystem with docker compose host paths
https://chatgpt.com/share/69528062-ff74-800f-ae11-a658b5917307
- print full `docker compose config` before up when MODE_DEBUG is enabled
- include resolved config with --env-file if present
- dump .env contents only when credentials masking is disabled
- keep compose up behavior unchanged
https://chatgpt.com/share/69528062-ff74-800f-ae11-a658b5917307