These are configuration files for my GNU/Linux workstation(s) and some files for my recently added macOS workstation too (term
, zsh
, amethyst
, karabiner
).
- shell:
bash
,zsh
(on mac) - core tools:
lsd, fzf, fd, git-delta, procs, duf, ncdu, zoxide, btop, curlie, ripgrep, bat, prettyping
- terminal:
urxvt
,term
(on mac) - terminal multiplexer:
tmux + byobu + tmuxp
- wm:
awesome
,amethyst
(on mac) - editor:
neovim + nvchad
,vim
- file manager:
ranger
- file manager gui:
thunar
- email:
mutt
+notmuch
+msmtp
+lbdb
+offlineimap
- pim:
khal
+todoman
+vdirsyncer
- wiki/notes:
ranger
+vim
+ some wrapper bash functions - feed:
newsboat
+w3m
+ custom script - ide:
neovim
- ide gui:
neovide
- versioning:
git
- music:
mpd
+mpc
+ncmpcpp
+rofi-mpc
- browser:
w3m
- surfer:
surfraw
+w3m
+ custom script - password manager:
pass
- password manager gui:
rofi-pass
- clipboard manager:
greenclip + rofi
- personal finance:
ledger
- document viewer:
zathura
- backup:
restic
- irc:
weechat
- calculator:
rofi-calc
- snippet-manager:
rofi-snippy
There are many available solutions to manage dotfiles. I use a very simple approach. I have a dedicated folder repo, dotfiles, where i copy manually every files to track. After the first manually copy, i sync my dotfiles by --existing
options of rsync
, that syncs two folder only for files present in the destination. In my bash functions i have the function dots:
rsync -a -v --existing /home/lorenzo/ /home/lorenzo/code/dotfiles/
When on a new machine i clone my github dotfiles repository and copy manually configuration files in the right place. That's all, no much automation but very simple.