From 61f0b64b84db5e8e509ec4147962040196781dd2 Mon Sep 17 00:00:00 2001 From: Fernando Schauenburg Date: Mon, 7 Feb 2022 19:26:29 +0100 Subject: [PATCH] install: make ~/.config a symlink into dotfiles --- .gitattributes | 2 +- .../alacritty/alacritty.yml | 0 {git/.config => config}/git/config | 0 {git/.config => config}/git/dotfiles | 0 {git/.config => config}/git/ignore | 0 {mintty/.config => config}/mintty/config | 0 .../mintty/themes/solarized-dark | 0 .../mintty/themes/solarized-light | 0 .../nvim/after/ftplugin/gitcommit.lua | 0 .../nvim/after/ftplugin/lua.lua | 0 .../nvim/after/ftplugin/markdown.lua | 0 .../nvim/after/ftplugin/python.lua | 0 .../nvim/after/ftplugin/text.lua | 0 .../nvim/after/ftplugin/vim.lua | 0 .../nvim/after/plugin/ctrlp.lua | 0 .../nvim/after/plugin/lualine.lua | 0 .../nvim/after/plugin/nerdtree.lua | 0 .../nvim/after/plugin/rainbow_parentheses.lua | 0 .../nvim/after/plugin/srec.lua | 0 .../nvim/after/plugin/vim-fugitive.lua | 0 .../nvim/after/plugin/vim-json.lua | 0 .../nvim/after/plugin/vim-markdown.lua | 0 .../after/plugin/vim-trailing-whitespace.lua | 0 .../.config => config}/nvim/ftdetect/srec.lua | 0 .../nvim/ftdetect/vagrant.lua | 0 {nvim/.config => config}/nvim/init.lua | 0 .../nvim/lua/fs/autocmds.lua | 0 .../nvim/lua/fs/disable_builtin.lua | 0 .../.config => config}/nvim/lua/fs/keymap.lua | 0 .../nvim/lua/fs/keymaps.lua | 0 .../nvim/lua/fs/options.lua | 0 .../nvim/lua/fs/plugins.lua | 0 {python/.config => config}/python/startup.py | 0 {readline/.config => config}/readline/inputrc | 0 {shell/.config => config}/shell/path.sh | 0 {tmux/.config => config}/tmux/tmux.conf | 0 {zsh/.config => config}/zsh/.zshrc | 0 {zsh/.config => config}/zsh/aliases | 0 {zsh/.config => config}/zsh/completion | 0 {zsh/.config => config}/zsh/prompt | 0 {zsh/.config => config}/zsh/vi-mode | 0 git/.local/etc/git/.keep | 1 - {x11 => home}/.XCompose | 0 {misc => home}/.hushlogin | 0 {jupyter => home}/.jupyter/custom/custom.js | 0 .../.jupyter/nbconfig/notebook.json | 0 {bin => home}/.local/bin/colorchart | 0 {bin => home}/.local/bin/colortest | 0 {bin => home}/.local/bin/colortest256 | 0 {bin => home}/.local/bin/environ | 0 {bin => home}/.local/bin/git-churn | 0 {bin => home}/.local/bin/heads | 0 {bin => home}/.local/bin/mpath | 0 {bin => home}/.local/bin/myip | 0 {bin => home}/.local/bin/myipinfo | 0 {bin => home}/.local/bin/path | 0 {bin => home}/.local/bin/styletest | 0 {bin => home}/.local/bin/tails | 0 {bin => home}/.local/bin/themegen | 0 {bin => home}/.local/bin/vboxmount | 0 {ssh => home}/.ssh/config | Bin {zsh => home}/.zshenv | 0 install.sh | 61 ++++++++++++------ misc/.local/share/less/.keep | 1 - nvim/.local/share/nvim/shada/.keep | 1 - python/.local/share/python/.keep | 1 - zsh/.local/share/zsh/.keep | 1 - 67 files changed, 43 insertions(+), 25 deletions(-) rename {alacritty/.config => config}/alacritty/alacritty.yml (100%) rename {git/.config => config}/git/config (100%) rename {git/.config => config}/git/dotfiles (100%) rename {git/.config => config}/git/ignore (100%) rename {mintty/.config => config}/mintty/config (100%) rename {mintty/.config => config}/mintty/themes/solarized-dark (100%) rename {mintty/.config => config}/mintty/themes/solarized-light (100%) rename {nvim/.config => config}/nvim/after/ftplugin/gitcommit.lua (100%) rename {nvim/.config => config}/nvim/after/ftplugin/lua.lua (100%) rename {nvim/.config => config}/nvim/after/ftplugin/markdown.lua (100%) rename {nvim/.config => config}/nvim/after/ftplugin/python.lua (100%) rename {nvim/.config => config}/nvim/after/ftplugin/text.lua (100%) rename {nvim/.config => config}/nvim/after/ftplugin/vim.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/ctrlp.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/lualine.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/nerdtree.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/rainbow_parentheses.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/srec.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/vim-fugitive.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/vim-json.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/vim-markdown.lua (100%) rename {nvim/.config => config}/nvim/after/plugin/vim-trailing-whitespace.lua (100%) rename {nvim/.config => config}/nvim/ftdetect/srec.lua (100%) rename {nvim/.config => config}/nvim/ftdetect/vagrant.lua (100%) rename {nvim/.config => config}/nvim/init.lua (100%) rename {nvim/.config => config}/nvim/lua/fs/autocmds.lua (100%) rename {nvim/.config => config}/nvim/lua/fs/disable_builtin.lua (100%) rename {nvim/.config => config}/nvim/lua/fs/keymap.lua (100%) rename {nvim/.config => config}/nvim/lua/fs/keymaps.lua (100%) rename {nvim/.config => config}/nvim/lua/fs/options.lua (100%) rename {nvim/.config => config}/nvim/lua/fs/plugins.lua (100%) rename {python/.config => config}/python/startup.py (100%) rename {readline/.config => config}/readline/inputrc (100%) rename {shell/.config => config}/shell/path.sh (100%) rename {tmux/.config => config}/tmux/tmux.conf (100%) rename {zsh/.config => config}/zsh/.zshrc (100%) rename {zsh/.config => config}/zsh/aliases (100%) rename {zsh/.config => config}/zsh/completion (100%) rename {zsh/.config => config}/zsh/prompt (100%) rename {zsh/.config => config}/zsh/vi-mode (100%) delete mode 100644 git/.local/etc/git/.keep rename {x11 => home}/.XCompose (100%) rename {misc => home}/.hushlogin (100%) rename {jupyter => home}/.jupyter/custom/custom.js (100%) rename {jupyter => home}/.jupyter/nbconfig/notebook.json (100%) rename {bin => home}/.local/bin/colorchart (100%) rename {bin => home}/.local/bin/colortest (100%) rename {bin => home}/.local/bin/colortest256 (100%) rename {bin => home}/.local/bin/environ (100%) rename {bin => home}/.local/bin/git-churn (100%) rename {bin => home}/.local/bin/heads (100%) rename {bin => home}/.local/bin/mpath (100%) rename {bin => home}/.local/bin/myip (100%) rename {bin => home}/.local/bin/myipinfo (100%) rename {bin => home}/.local/bin/path (100%) rename {bin => home}/.local/bin/styletest (100%) rename {bin => home}/.local/bin/tails (100%) rename {bin => home}/.local/bin/themegen (100%) rename {bin => home}/.local/bin/vboxmount (100%) rename {ssh => home}/.ssh/config (100%) rename {zsh => home}/.zshenv (100%) delete mode 100644 misc/.local/share/less/.keep delete mode 100644 nvim/.local/share/nvim/shada/.keep delete mode 100644 python/.local/share/python/.keep delete mode 100644 zsh/.local/share/zsh/.keep diff --git a/.gitattributes b/.gitattributes index 828b813..21c4a4a 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,2 +1,2 @@ -ssh/.ssh/config filter=git-crypt diff=git-crypt +home/.ssh/config filter=git-crypt diff=git-crypt diff --git a/alacritty/.config/alacritty/alacritty.yml b/config/alacritty/alacritty.yml similarity index 100% rename from alacritty/.config/alacritty/alacritty.yml rename to config/alacritty/alacritty.yml diff --git a/git/.config/git/config b/config/git/config similarity index 100% rename from git/.config/git/config rename to config/git/config diff --git a/git/.config/git/dotfiles b/config/git/dotfiles similarity index 100% rename from git/.config/git/dotfiles rename to config/git/dotfiles diff --git a/git/.config/git/ignore b/config/git/ignore similarity index 100% rename from git/.config/git/ignore rename to config/git/ignore diff --git a/mintty/.config/mintty/config b/config/mintty/config similarity index 100% rename from mintty/.config/mintty/config rename to config/mintty/config diff --git a/mintty/.config/mintty/themes/solarized-dark b/config/mintty/themes/solarized-dark similarity index 100% rename from mintty/.config/mintty/themes/solarized-dark rename to config/mintty/themes/solarized-dark diff --git a/mintty/.config/mintty/themes/solarized-light b/config/mintty/themes/solarized-light similarity index 100% rename from mintty/.config/mintty/themes/solarized-light rename to config/mintty/themes/solarized-light diff --git a/nvim/.config/nvim/after/ftplugin/gitcommit.lua b/config/nvim/after/ftplugin/gitcommit.lua similarity index 100% rename from nvim/.config/nvim/after/ftplugin/gitcommit.lua rename to config/nvim/after/ftplugin/gitcommit.lua diff --git a/nvim/.config/nvim/after/ftplugin/lua.lua b/config/nvim/after/ftplugin/lua.lua similarity index 100% rename from nvim/.config/nvim/after/ftplugin/lua.lua rename to config/nvim/after/ftplugin/lua.lua diff --git a/nvim/.config/nvim/after/ftplugin/markdown.lua b/config/nvim/after/ftplugin/markdown.lua similarity index 100% rename from nvim/.config/nvim/after/ftplugin/markdown.lua rename to config/nvim/after/ftplugin/markdown.lua diff --git a/nvim/.config/nvim/after/ftplugin/python.lua b/config/nvim/after/ftplugin/python.lua similarity index 100% rename from nvim/.config/nvim/after/ftplugin/python.lua rename to config/nvim/after/ftplugin/python.lua diff --git a/nvim/.config/nvim/after/ftplugin/text.lua b/config/nvim/after/ftplugin/text.lua similarity index 100% rename from nvim/.config/nvim/after/ftplugin/text.lua rename to config/nvim/after/ftplugin/text.lua diff --git a/nvim/.config/nvim/after/ftplugin/vim.lua b/config/nvim/after/ftplugin/vim.lua similarity index 100% rename from nvim/.config/nvim/after/ftplugin/vim.lua rename to config/nvim/after/ftplugin/vim.lua diff --git a/nvim/.config/nvim/after/plugin/ctrlp.lua b/config/nvim/after/plugin/ctrlp.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/ctrlp.lua rename to config/nvim/after/plugin/ctrlp.lua diff --git a/nvim/.config/nvim/after/plugin/lualine.lua b/config/nvim/after/plugin/lualine.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/lualine.lua rename to config/nvim/after/plugin/lualine.lua diff --git a/nvim/.config/nvim/after/plugin/nerdtree.lua b/config/nvim/after/plugin/nerdtree.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/nerdtree.lua rename to config/nvim/after/plugin/nerdtree.lua diff --git a/nvim/.config/nvim/after/plugin/rainbow_parentheses.lua b/config/nvim/after/plugin/rainbow_parentheses.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/rainbow_parentheses.lua rename to config/nvim/after/plugin/rainbow_parentheses.lua diff --git a/nvim/.config/nvim/after/plugin/srec.lua b/config/nvim/after/plugin/srec.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/srec.lua rename to config/nvim/after/plugin/srec.lua diff --git a/nvim/.config/nvim/after/plugin/vim-fugitive.lua b/config/nvim/after/plugin/vim-fugitive.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/vim-fugitive.lua rename to config/nvim/after/plugin/vim-fugitive.lua diff --git a/nvim/.config/nvim/after/plugin/vim-json.lua b/config/nvim/after/plugin/vim-json.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/vim-json.lua rename to config/nvim/after/plugin/vim-json.lua diff --git a/nvim/.config/nvim/after/plugin/vim-markdown.lua b/config/nvim/after/plugin/vim-markdown.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/vim-markdown.lua rename to config/nvim/after/plugin/vim-markdown.lua diff --git a/nvim/.config/nvim/after/plugin/vim-trailing-whitespace.lua b/config/nvim/after/plugin/vim-trailing-whitespace.lua similarity index 100% rename from nvim/.config/nvim/after/plugin/vim-trailing-whitespace.lua rename to config/nvim/after/plugin/vim-trailing-whitespace.lua diff --git a/nvim/.config/nvim/ftdetect/srec.lua b/config/nvim/ftdetect/srec.lua similarity index 100% rename from nvim/.config/nvim/ftdetect/srec.lua rename to config/nvim/ftdetect/srec.lua diff --git a/nvim/.config/nvim/ftdetect/vagrant.lua b/config/nvim/ftdetect/vagrant.lua similarity index 100% rename from nvim/.config/nvim/ftdetect/vagrant.lua rename to config/nvim/ftdetect/vagrant.lua diff --git a/nvim/.config/nvim/init.lua b/config/nvim/init.lua similarity index 100% rename from nvim/.config/nvim/init.lua rename to config/nvim/init.lua diff --git a/nvim/.config/nvim/lua/fs/autocmds.lua b/config/nvim/lua/fs/autocmds.lua similarity index 100% rename from nvim/.config/nvim/lua/fs/autocmds.lua rename to config/nvim/lua/fs/autocmds.lua diff --git a/nvim/.config/nvim/lua/fs/disable_builtin.lua b/config/nvim/lua/fs/disable_builtin.lua similarity index 100% rename from nvim/.config/nvim/lua/fs/disable_builtin.lua rename to config/nvim/lua/fs/disable_builtin.lua diff --git a/nvim/.config/nvim/lua/fs/keymap.lua b/config/nvim/lua/fs/keymap.lua similarity index 100% rename from nvim/.config/nvim/lua/fs/keymap.lua rename to config/nvim/lua/fs/keymap.lua diff --git a/nvim/.config/nvim/lua/fs/keymaps.lua b/config/nvim/lua/fs/keymaps.lua similarity index 100% rename from nvim/.config/nvim/lua/fs/keymaps.lua rename to config/nvim/lua/fs/keymaps.lua diff --git a/nvim/.config/nvim/lua/fs/options.lua b/config/nvim/lua/fs/options.lua similarity index 100% rename from nvim/.config/nvim/lua/fs/options.lua rename to config/nvim/lua/fs/options.lua diff --git a/nvim/.config/nvim/lua/fs/plugins.lua b/config/nvim/lua/fs/plugins.lua similarity index 100% rename from nvim/.config/nvim/lua/fs/plugins.lua rename to config/nvim/lua/fs/plugins.lua diff --git a/python/.config/python/startup.py b/config/python/startup.py similarity index 100% rename from python/.config/python/startup.py rename to config/python/startup.py diff --git a/readline/.config/readline/inputrc b/config/readline/inputrc similarity index 100% rename from readline/.config/readline/inputrc rename to config/readline/inputrc diff --git a/shell/.config/shell/path.sh b/config/shell/path.sh similarity index 100% rename from shell/.config/shell/path.sh rename to config/shell/path.sh diff --git a/tmux/.config/tmux/tmux.conf b/config/tmux/tmux.conf similarity index 100% rename from tmux/.config/tmux/tmux.conf rename to config/tmux/tmux.conf diff --git a/zsh/.config/zsh/.zshrc b/config/zsh/.zshrc similarity index 100% rename from zsh/.config/zsh/.zshrc rename to config/zsh/.zshrc diff --git a/zsh/.config/zsh/aliases b/config/zsh/aliases similarity index 100% rename from zsh/.config/zsh/aliases rename to config/zsh/aliases diff --git a/zsh/.config/zsh/completion b/config/zsh/completion similarity index 100% rename from zsh/.config/zsh/completion rename to config/zsh/completion diff --git a/zsh/.config/zsh/prompt b/config/zsh/prompt similarity index 100% rename from zsh/.config/zsh/prompt rename to config/zsh/prompt diff --git a/zsh/.config/zsh/vi-mode b/config/zsh/vi-mode similarity index 100% rename from zsh/.config/zsh/vi-mode rename to config/zsh/vi-mode diff --git a/git/.local/etc/git/.keep b/git/.local/etc/git/.keep deleted file mode 100644 index e41728b..0000000 --- a/git/.local/etc/git/.keep +++ /dev/null @@ -1 +0,0 @@ -directory for extra git configurations diff --git a/x11/.XCompose b/home/.XCompose similarity index 100% rename from x11/.XCompose rename to home/.XCompose diff --git a/misc/.hushlogin b/home/.hushlogin similarity index 100% rename from misc/.hushlogin rename to home/.hushlogin diff --git a/jupyter/.jupyter/custom/custom.js b/home/.jupyter/custom/custom.js similarity index 100% rename from jupyter/.jupyter/custom/custom.js rename to home/.jupyter/custom/custom.js diff --git a/jupyter/.jupyter/nbconfig/notebook.json b/home/.jupyter/nbconfig/notebook.json similarity index 100% rename from jupyter/.jupyter/nbconfig/notebook.json rename to home/.jupyter/nbconfig/notebook.json diff --git a/bin/.local/bin/colorchart b/home/.local/bin/colorchart similarity index 100% rename from bin/.local/bin/colorchart rename to home/.local/bin/colorchart diff --git a/bin/.local/bin/colortest b/home/.local/bin/colortest similarity index 100% rename from bin/.local/bin/colortest rename to home/.local/bin/colortest diff --git a/bin/.local/bin/colortest256 b/home/.local/bin/colortest256 similarity index 100% rename from bin/.local/bin/colortest256 rename to home/.local/bin/colortest256 diff --git a/bin/.local/bin/environ b/home/.local/bin/environ similarity index 100% rename from bin/.local/bin/environ rename to home/.local/bin/environ diff --git a/bin/.local/bin/git-churn b/home/.local/bin/git-churn similarity index 100% rename from bin/.local/bin/git-churn rename to home/.local/bin/git-churn diff --git a/bin/.local/bin/heads b/home/.local/bin/heads similarity index 100% rename from bin/.local/bin/heads rename to home/.local/bin/heads diff --git a/bin/.local/bin/mpath b/home/.local/bin/mpath similarity index 100% rename from bin/.local/bin/mpath rename to home/.local/bin/mpath diff --git a/bin/.local/bin/myip b/home/.local/bin/myip similarity index 100% rename from bin/.local/bin/myip rename to home/.local/bin/myip diff --git a/bin/.local/bin/myipinfo b/home/.local/bin/myipinfo similarity index 100% rename from bin/.local/bin/myipinfo rename to home/.local/bin/myipinfo diff --git a/bin/.local/bin/path b/home/.local/bin/path similarity index 100% rename from bin/.local/bin/path rename to home/.local/bin/path diff --git a/bin/.local/bin/styletest b/home/.local/bin/styletest similarity index 100% rename from bin/.local/bin/styletest rename to home/.local/bin/styletest diff --git a/bin/.local/bin/tails b/home/.local/bin/tails similarity index 100% rename from bin/.local/bin/tails rename to home/.local/bin/tails diff --git a/bin/.local/bin/themegen b/home/.local/bin/themegen similarity index 100% rename from bin/.local/bin/themegen rename to home/.local/bin/themegen diff --git a/bin/.local/bin/vboxmount b/home/.local/bin/vboxmount similarity index 100% rename from bin/.local/bin/vboxmount rename to home/.local/bin/vboxmount diff --git a/ssh/.ssh/config b/home/.ssh/config similarity index 100% rename from ssh/.ssh/config rename to home/.ssh/config diff --git a/zsh/.zshenv b/home/.zshenv similarity index 100% rename from zsh/.zshenv rename to home/.zshenv diff --git a/install.sh b/install.sh index 114fb10..e19b054 100755 --- a/install.sh +++ b/install.sh @@ -18,7 +18,9 @@ main() { esac done greeting - stow_packages + make_dirs + stow_home + link_config git_user_config nvim_plugins } @@ -41,24 +43,45 @@ greeting() { } } -stow_packages() { - heading 'stow packages' - stow -v${IS_DRY_RUN:+n} --no-folding -d "$DOTFILES" -t "$TARGET" \ - alacritty \ - bin \ - git \ - jupyter \ - mintty \ - misc \ - nvim \ - python \ - readline \ - shell \ - ssh \ - tmux \ - x11 \ - zsh \ - 2>&1 | sed -E -e "s/^([^:]+:)/$yellow\1$rst/" -e "s/=>/$blue=>$rst/" +make_dirs() { + heading 'create auxiliary directories' + while read item; do + dir="$TARGET/$item" + if [ ! -d "$dir" ]; then + echo "${yellow}MKDIR:$rst $dir" + dry_run || mkdir -p "$dir" + fi + done <$rst $dotfiles_config" + dry_run || ln -s "$dotfiles_config" "$link" + fi +} + +stow_home() { + heading 'stow home directory' + stow -v${IS_DRY_RUN:+n} --no-folding -d "$DOTFILES" -t "$TARGET" home 2>&1 \ + | sed -E -e "s/^([^:]+:)/$yellow\1$rst/" -e "s/=>/$blue=>$rst/" } git_user_config() { diff --git a/misc/.local/share/less/.keep b/misc/.local/share/less/.keep deleted file mode 100644 index a95afb5..0000000 --- a/misc/.local/share/less/.keep +++ /dev/null @@ -1 +0,0 @@ -directory for less(1) history diff --git a/nvim/.local/share/nvim/shada/.keep b/nvim/.local/share/nvim/shada/.keep deleted file mode 100644 index d3d4d80..0000000 --- a/nvim/.local/share/nvim/shada/.keep +++ /dev/null @@ -1 +0,0 @@ -nvim SHAred DAta directory diff --git a/python/.local/share/python/.keep b/python/.local/share/python/.keep deleted file mode 100644 index 7424b89..0000000 --- a/python/.local/share/python/.keep +++ /dev/null @@ -1 +0,0 @@ -directory for python REPL history diff --git a/zsh/.local/share/zsh/.keep b/zsh/.local/share/zsh/.keep deleted file mode 100644 index efb3868..0000000 --- a/zsh/.local/share/zsh/.keep +++ /dev/null @@ -1 +0,0 @@ -directory for zsh history