Dotfiles are in dotfiles folder, and are 1:1 reflection of destination paths. To build, run from repository folder:
docker buildx build --build-context setupscripts=setup --build-context dotfiles=. . --target minimal --tag minimal -f setup/Dockerfile && docker run --rm -it minimal
Setup git/ssh and clone repository
git clone git@github.com:galkk/dotfiles.git ~/projects/dotfiles
, then run shell scripts one by one (the ones that are needed).
Configs could be used for both fresh linux installations and docker toolbox style imagesf (although not everything there will work, for example podman).
Each change is being built by github action and sent to docker hub repository.
Configuration:
Action | Minimal |
---|---|
Run from repository, docker | docker run --rm -it galkkk/dotfiles:minimal |
Run from repository, docker compose | docker compose run --rm dotfiles:minimal |
Build | sudo docker buildx build --build-context setupscripts=setup --target minimal --tag dotfiles:minimal setup |
Run locally | docker run -it docker.io/library/dotfiles:minimal |
Push to repository | docker tag dotfiles:minimal galkkk/dotfiles:minimal |
TODO: Figure out if it is possible to move setup files to subdirectory and real dotfiles into parent directory. That will require figuring out build context and may be not possible in general case. Unless I will figure out sub repositories or docker contexts, then it will work.