Initializer Scripts
June 13, 2026 ยท View on GitHub
Yazelix generates shell initializer scripts under ~/.local/share/yazelix/initializers/ during environment setup.
Generated shell directories:
nushell/bash/fish/zsh/xonsh/
Each directory gets a yazelix_init.* aggregate initializer and any available tool initializers:
starship_init.*: runsstarship init <shell>zoxide_init.*: runszoxide init <shell>atuin_init.*: runsatuin init <shell>when hostatuinis availablemise_init.*: runsmise activate <shell>when hostmiseis availablecarapace_init.*: runscarapace _carapace <shell>whencarapaceis available
Nushell uses the upstream nushell shell name for zoxide and carapace, so its generated commands use zoxide init nushell and carapace _carapace nushell.
The shipped managed Yazelix Bash, Fish, Zsh, and Nushell startup files source their matching aggregate initializers when those shells run inside Yazelix. Xonsh is host-owned: Yazelix accepts shell.default_shell = "xonsh" and generates xonsh/yazelix_init.xsh plus ~/.config/yazelix/shell_xonsh.xsh, but it does not install xonsh. The host must provide xonsh on PATH. To use the generated xonsh initializers from native xonsh startup, source ~/.config/yazelix/shell_xonsh.xsh from ~/.xonshrc or ~/.config/xonsh/rc.xsh.
These files are regenerated whenever Yazelix refreshes its managed runtime state or Home Manager activates the runtime. Do not edit files under ~/.local/share/yazelix/initializers/ manually; use Yazelix sidecars under ~/.config/yazelix/ or tool-specific configs such as ~/.config/starship.toml for host-owned customization.