How about an environment variable override with a default location matching the old behavior? Then the Docker image can be run with that environment variable set to the Docker-specific area.
On Sun, 24 Nov 2019 at 18:35, sebb <seb...@gmail.com> wrote: > > On Sun, 24 Nov 2019 at 20:13, Sam Ruby <ru...@intertwingly.net> wrote: > > > On Sun, Nov 24, 2019 at 2:43 PM sebb <seb...@gmail.com> wrote: > > > > > > My local Whimsy server installation (not via Docker) no longer works > > > properly, because Config finds the wrong root. > > > > > > Whimsy is installed under my home directory; the server runs as a > > different > > > user, so has a different home directory. > > > So when Config walks up the tree, it does not recognise my home copy of > > > .whimsy as such, and assumes it must be a root marker. > > > > I've pushed a possible quick fix. > > > > > That has fixed the immediate problem, but I still have concerns. > > There are lots of places where the code assumes that the root is /srv. > AFAICT, that assumption only fails in the docker case, and is only needed > when setting up the container. > However the change affects all installations. > > > > > Maybe search for a different file, such as .whimsy_root, instead? > > > > > > Or require root to be defined in the file itself. > > > > My concern there is that this directory may be mounted under a different > > path. > > > > > That would not apply to the .whimsy_root solution. > > > > > On further reflection, the override function is also potentially > > > problematic where the server is run as a different user. > > > > - Sam Ruby > > -- Matt Sicker <boa...@gmail.com>