Don't clobber user directory settings on start
Remove default download, incomplete, and watch directories from Dockerfile ENV statements. Instead, pull these from settings.json if needed for setting directory permissions.
Breaking change
Proposed change
Presently, if a user changes their Transmission download (or incomplete/watch) directory in settings.json or from their preferred Web UI, these settings are lost on container restart. This is because the corresponding environment variables are set in the Dockerfile, then incorporated into settings.json by updateSettings.py.
This change removes the offending defaults from the Dockerfile, and instead pulls the actual paths from settings.json during PUID/PGID user setup. To facilitate this, updateSettings.py is now called before user setup.
Testing
Ran container with PUID and PGID set. Ensured the container knew which directories to change permissions on. Verified that download path settings weren't lost on restart.
Type of change
- [x] Bugfix (non-breaking change which fixes an issue)
- [ ] New feature (which adds functionality to this container)
- [ ] Breaking change (fix/feature causing existing functionality to break)
Additional information
- This PR fixes or closes issue: fixes #2827 - fixes #2784
- This PR is related to issue: relates to #2901
- Link to documentation updated (if done separately):
Checklist
- [x] The code change is tested and works locally.
- [x] There is no commented out code in this PR.
If user exposed functionality or configuration variables are added/changed:
- [ ] Documentation added/updated