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,29 @@
# toolbox plugin
Plugin for [toolbox](https://containertoolbx.org), a tool to use containerized CLI environments.
To use it, add `toolbox` to your plugins array in your `.zshrc` file:
```zsh
plugins=(... toolbox)
```
## Prompt function
This plugins adds `toolbox_prompt_info()` function. Using it in your prompt, it will show the toolbox
indicator ⬢ (if you are running in a toolbox container), and nothing if not.
You can use it by adding `$(toolbox_prompt_info)` to your `PROMPT` or `RPROMPT` variable:
```zsh
RPROMPT='$(toolbox_prompt_info)'
```
In the same way, it adds `toolbox_prompt_name()`, showing the name of the containerized environment.
## Aliases
| Alias | Command | Description |
| ----- | --------------- | ------------------------------------ |
| tbe | `toolbox enter` | Enters the toolbox environment |
| tbr | `toolbox run` | Run a command in an existing toolbox |

View File

@@ -0,0 +1,16 @@
function toolbox_prompt_info() {
[[ -f /run/.toolboxenv ]] && echo "⬢"
}
function toolbox_prompt_name() {
[[ -f /run/.containerenv ]] || return
# This command reads the /run/.containerenv file line by line and extracts the
# container name from it by looking for the `name="..."` line, and uses -F\" to
# split the line by double quotes. Then all % characters are replaced with %%
# to escape them for the prompt.
awk -F\" '/name/ { gsub(/%/, "%%", $2); print $2 }' /run/.containerenv
}
alias tbe="toolbox enter"
alias tbr="toolbox run"