source: https://github.com/techie2000/dotfiles-yadm
My dotfiles as managed by yadm - https://yadm.io/
This dotfile repo uses the yadm tool (https://thelocehiliosan.github.io/yadm/docs/overview) in order to provision and configure dotfiles on a system.
Prerequisite: yadm installation (https://yadm.io/docs/install)
yadm clone [email protected]:techie2000/dotfiles-yadm.git
yadm reset --hard HEAD
As you use use system, you will inevitably make changes that you may want back in the future; ID them with
yadm diff
and keep them under source control with
yadm add -u :/
yadm commit -m "The description of changes"
yadm push
Dotfiles are organized to comply with XDG base directory specification as much as possible.
For more information, see this page on the Arch Wiki.
yadm has a built-in bootstrap feature which enables further configuration of dotfiles.
The included bootstrap script will perform the following tasks:
- Install applications.
- Bootstrap Zsh.
- Prepare Zsh configuration files and directory.
- Make Zsh the default shell.
- Add system-wide configuration of
$ZDOTDIR
in/etc/zsh/zshenv
.
- Bootstrap Vim.
- Prepare Vim configuration files and directory.
- Automatically install Vim plugins.
- Install fonts (optional).
- Cleanup home directory (optional).
Fonts that include glyphs (icons) must be installed on the system to take full advantage of the themed Zsh prompt. Bootstrap script will therefor offer installation of the excellent Nerd Fonts.
Choose between the following font installatoin options:
- None. Do not install any fonts.
- Basic. Install only the Source Code Pro font family.
- Complete. Install the complete collection of Nerd Fonts.
Fonts will be installed in the ~/.local/share/fonts
directory.
Bootstrap script will scan the root of the home directory (~/
) for known dotfiles. If any are found, script will prompt them for removal. See XDG base directory compliance for more information.
#to do: put this in a table and add in links descriptions
- [cargo]:
- [duf]:
- [flatpak]:
- git: Version control system (VCS).
- fzf: Command-line fuzzy finder.
- [htop]:
- [iftop]:
- [iotop]:
- mc: Terminal file manager.
- [node-js-beautify]:
- [nq]:
- [postgresql]:
- [postgresql-client]:
- [postgresql-client-common]:
- [postgresql-contrib]:
- ranger: Terminal file manager.
- The Fuck: Corrects previous console command.
- [tidy]:
- Vim: Terminal text editor.
- [yamllint]:
- Zsh: Preferred shell.
Various files are based on, heavily influenced by, or down-right lifted from pwyde's