This is Rolando Garza’s personal repository of public configuration files and utility scripts for the programs he uses on an almost daily basis.
The intent of sharing this publicly is that these files may hopefully be of some use to others.
This repository is meant to be cloned inside
~/.local/share/dotfiles/pub/
, and from that directory, package’s
dotfiles are meant to be installed by running stow PACKAGE
inside
that subdirectory (using GNU Stow).
This repository is meant to be cloned inside ~/.local/share/dotfiles/pub/
:
git clone https://git.sr.ht/~rolandog/dotpub ~/.local/share/dotfiles/pub
cd ~/.local/share/dotfiles/pub
A quick way to install all the dotfiles is by running (the SHELL
part is optional, but allows for the use of colors in the output):
make install SHELL=/usr/bin/bash
If, however, one wishes to only install a particular set of dotfiles
for a particular PACKAGE
, one could run:
stow PACKAGE
GNU Stow is a handy utility that lets us package a directory structure inside a folder, and it will create symbolic links to the files and folders inside our virtual package.
In our case, this directory ($HOME/.dotfiles/.pub/
) is configured to
have stow treat it as the source, and to treat $HOME
as its target.
For a given PACKAGE
:
- The file
~/.local/share/dotfiles/pub/PACKAGE/.config/hello/world
- Will end in
~/.config/hello/world
Here is an overview of the ‘branches’ that will be ‘transplanted’.
#+RESULTS[2f96629f6b3716475f3de7e7545880e293be474c]: tree-overview
/home/rolandog/.local/share/dotfiles/pub
|-- applications/
| `-- .local/
| `-- share/
|-- bash/
| `-- .config/
| `-- bash/
|-- emacs/
| `-- .config/
| `-- emacs/
|-- firewall/
| `-- .local/
| `-- bin/
|-- gpg/
| `-- .gnupg/
|-- htop/
| `-- .config/
| `-- htop/
|-- lynx/
|-- make/
|-- org/
| `-- .local/
| `-- share/
|-- pandoc/
| `-- .local/
| `-- share/
|-- python/
| `-- .config/
| `-- python/
|-- stow/
|-- user-dirs/
| `-- .config/
|-- vim/
| `-- .config/
| `-- vim/
`-- youtube-dl/
`-- .config/
`-- youtube-dl/
The first time we want to push additional changes back:
git remote add origin [email protected]:~rolandog/dotpub
git push --set-upstream origin main