chezmoi init

This commit is contained in:
Cy Pokhrel 2024-10-22 11:11:45 -04:00
commit 530d6d7195
No known key found for this signature in database
GPG key ID: 1200FBE36C2ADE2E
1176 changed files with 111325 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"