This is basically a copy of https://github.com/TaylorMonacelli/gnu-stow-install-in-docker
perl is installed as an additional dependency.
The version of stow used is updated.
The version of phusion is updated.
I also added an echo at the end of the build process for absolute beginners. Basically you can run all sorts of things like
docker run -i --rm=true 573c/stow stow --version etc. with this image, even on a windows machine.
PS. Tried to use alpine as base image, but alpine has no texi2html and the wrapper provided adding:
# texi2html => texi2any, https://www.gnu.org/software/texinfo/manual/texinfo/texinfo.html#texi2html # does not work: # texi2html --P=. --output=doc/manual-single.html -expandinfo -menu -monolithic -verbose doc/stow.texi # texi2any: --paragraph-indent arg must be numeric/`none'/`asis', not `.'. # Value "xpandinfo" invalid for option e (number expected) # Unknown option: x RUN cd /usr/bin && \ echo -e "#!/bin/sh\nexec texi2any --set-customization-variable TEXI2HTML=1 \x22\$@\x22" >texi2html && \ chmod +x texi2html
to the Dockerfile didn't work.
##Windows (Docker Toolbox)
Good starting point article: https://jnboehm.com/post/gnu-stow/
Instead of ~ use the /c/Users/yourname (environment variable USERPROFILE) reference there, as this directory is by default mounted in the VirtualBox backend. Having created the /c/Users/yourname/dotfiles structure and moved files as suggested in the article you may start the docker machine and run
yourhost:~$ docker-machine ssh default docker@default:~$ docker run -ti --rm=true -v /c/Users/yourname:/home 573c/stow bash -c 'cd /home/dotfiles && stow bash'
Changing to /c/Users/yourname, the folder with
dotfiles first should work as well:
docker@default:~$ cd /c/Users/yourname
docker@default:~$ docker run --rm=true -it --volume $(pwd):$(pwd) --workdir $(pwd) 573c/stow bash -c 'cd dotfiles && stow bash'
TODO Make a pull request to https://github.com/TaylorMonacelli/gnu-stow-install-in-docker eventually.