Migration to GNU Stow

This commit is contained in:
2025-12-31 01:47:19 +01:00
commit a60d41229c
1107 changed files with 114208 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
# profiles plugin
This plugin allows you to create separate configuration files for zsh based
on your long hostname (including the domain).
To use it, add profiles to the plugins array of your zshrc file:
```sh
plugins=(... profiles)
```
It takes your `$HOST` variable and looks for files named according to the
domain parts in `$ZSH_CUSTOM/profiles/` directory.
For example, for `HOST=host.domain.com`, it will try to load the following files,
in this order:
```text
$ZSH_CUSTOM/profiles/com
$ZSH_CUSTOM/profiles/domain.com
$ZSH_CUSTOM/profiles/host.domain.com
```
This means that if there are conflicting settings on those files, the one to take
precedence will be the last applied, i.e. the one in host.domain.com.

View File

@@ -0,0 +1,12 @@
# You will probably want to list this plugin as the first in your .zshrc.
# This will look for a custom profile for the local machine and each domain or
# subdomain it belongs to. (e.g. com, example.com and foo.example.com)
parts=(${(s:.:)HOST})
for i in {${#parts}..1}; do
profile=${(j:.:)${parts[$i,${#parts}]}}
file=$ZSH_CUSTOM/profiles/$profile
if [ -f $file ]; then
source $file
fi
done