Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ jobs:
print $3
exit
}
' common/mise.toml
' config/shared/mise.toml
}

neovim_version="$(mise_version neovim)"
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/dependency-updates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,12 @@ jobs:
GH_TOKEN: ${{ github.token }}
BRANCH: automation/dependency-updates
run: |
tracked_files=(dependencies.conf common/completion.zsh common/interactive.zsh common/mise.toml)
tracked_files=(dependencies.conf config/shared/zsh/completion.zsh config/shared/zsh/interactive.zsh config/shared/mise.toml)
git diff --quiet -- "${tracked_files[@]}" && {
printf 'All approved dependencies are current.\n'
exit 0
}
unexpected="$(git status --porcelain -- . ':!dependencies.conf' ':!common/completion.zsh' ':!common/interactive.zsh' ':!common/mise.toml')"
unexpected="$(git status --porcelain -- . ':!dependencies.conf' ':!config/shared/zsh/completion.zsh' ':!config/shared/zsh/interactive.zsh' ':!config/shared/mise.toml')"
[[ -z "$unexpected" ]] || {
printf 'Dependency update touched unexpected files:\n%s\n' "$unexpected" >&2
exit 1
Expand Down
6 changes: 3 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ user experience consistent across supported platforms.
- The immutable `v<version>` Git tag is the release version source of truth.
- `profiles/*.conf` defines built-in package profiles.
- `dependencies.conf` pins direct downloads and Git dependencies.
- `common/mise.toml` pins mise-managed developer tools.
- `config/shared/mise.toml` pins mise-managed developer tools.
- `docs/RELEASING.md` is the release procedure.

## Product Contract
Expand Down Expand Up @@ -111,7 +111,7 @@ choice.

The developer profile's mise-managed tool membership is declared in
`profiles/developer.conf`; exact versions for those tools are pinned in
`common/mise.toml`, the source of truth for mise-managed tool versions.
`config/shared/mise.toml`, the source of truth for mise-managed tool versions.

When the tools/configuration phase runs, `--skip-packages` must skip package
and tool installation and apply managed configuration only. A default update
Expand Down Expand Up @@ -188,7 +188,7 @@ it; the gate remains required for the change categories listed above.
| Path | Responsibility |
| --- | --- |
| `bin/`, `lib/` | CLI commands, lifecycle, platform and package adapters |
| `common/`, `mac/`, `ubuntu/` | Managed shell, editor, and platform configuration |
| `config/` | Managed shared, macOS, and Ubuntu shell/editor configuration |
| `profiles/`, `dependencies.conf` | Declarative profiles and approved dependencies |
| `tests/` | Isolated unit and lifecycle coverage |
| `scripts/` | Validation, benchmarks, dependency discovery, release builds |
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion docs/PROFILES.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ interactive Zsh. Selfishell keeps its defaults in
`${XDG_CONFIG_HOME:-$HOME/.config}/selfishell/mise/selfishell.toml` (which is symlinked to `~/.config/mise/conf.d/selfishell.toml` so it is automatically loaded by `mise`); a project's
`mise.toml` can select different tool versions.

Built-in mise tools use exact reviewed versions pinned in `common/mise.toml`,
Built-in mise tools use exact reviewed versions pinned in `config/shared/mise.toml`,
the single source of truth for these versions. Projects remain free to
override them in a local `mise.toml`. Updating these defaults requires a normal
Selfishell release and never happens during shell startup.
Expand Down
2 changes: 1 addition & 1 deletion docs/SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ release provenance and preservation of existing files are security boundaries.
- GitHub Release assets have signed Sigstore build-provenance attestations bound
to the release workflow and artifact digests.
- Direct dependency versions are approved in `dependencies.conf`.
- mise-managed tool selectors are reviewed in `common/mise.toml`; mise verifies
- mise-managed tool selectors are reviewed in `config/shared/mise.toml`; mise verifies
checksums or stronger provenance when supported by the selected backend.
- Git dependencies use an approved tag or commit.
- Existing configuration is backed up and tracked before managed replacement.
Expand Down
2 changes: 1 addition & 1 deletion docs/UPDATES.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ repository `lazy-lock.json` is intentionally unnecessary. lazy.nvim may write a
runtime lock under the Selfishell state directory, but updates cannot move a
plugin beyond the commit approved in the release manifest.
`profiles/developer.conf` declares mise-managed developer tool membership;
exact default versions are pinned only in `common/mise.toml`, updated through
exact default versions are pinned only in `config/shared/mise.toml`, updated through
the same review-and-release boundary. Individual project `mise.toml` files
remain outside Selfishell's update lifecycle.

Expand Down
4 changes: 2 additions & 2 deletions lib/commands/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ install_managed_configuration() {
local resource_kind resource_name resource_target resource_source

case "$platform" in
macos) zsh_source="$SELFISHELL_ROOT/mac/.zshrc" ;;
ubuntu | ubuntu-wsl) zsh_source="$SELFISHELL_ROOT/ubuntu/.zshrc" ;;
macos) zsh_source="$SELFISHELL_ROOT/config/macos/zshrc" ;;
ubuntu | ubuntu-wsl) zsh_source="$SELFISHELL_ROOT/config/ubuntu/zshrc" ;;
*)
cli_error "Managed installation is unavailable on $(platform_label "$platform")."
return "$SELFISHELL_EXIT_ERROR"
Expand Down
6 changes: 3 additions & 3 deletions lib/installers.sh
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ install_mise_tools() {

selfishell_mise_trust

if ! MISE_GLOBAL_CONFIG_FILE="$SELFISHELL_ROOT/common/mise.toml" "$mise_command" install "$@"; then
if ! MISE_GLOBAL_CONFIG_FILE="$SELFISHELL_ROOT/config/shared/mise.toml" "$mise_command" install "$@"; then
if [[ "$requirement" == "optional" ]]; then
cli_warn "Could not install $requirement mise tools: $*"
SELFISHELL_SKIPPED_OPTIONAL_PACKAGES+=("$@")
Expand Down Expand Up @@ -323,7 +323,7 @@ selfishell_nvim_command() {
mise_command="$(selfishell_mise_command)" || mise_command=""

if [[ -n "$mise_command" ]]; then
resolved="$(MISE_GLOBAL_CONFIG_FILE="$SELFISHELL_ROOT/common/mise.toml" \
resolved="$(MISE_GLOBAL_CONFIG_FILE="$SELFISHELL_ROOT/config/shared/mise.toml" \
"$mise_command" which nvim 2>/dev/null)" || true
if [[ -n "$resolved" && -x "$resolved" ]]; then
printf '%s\n' "$resolved"
Expand Down Expand Up @@ -351,7 +351,7 @@ selfishell_run_nvim() {

mise_command="$(selfishell_mise_command)" || mise_command=""
if [[ -n "$mise_command" ]]; then
MISE_GLOBAL_CONFIG_FILE="$SELFISHELL_ROOT/common/mise.toml" \
MISE_GLOBAL_CONFIG_FILE="$SELFISHELL_ROOT/config/shared/mise.toml" \
"$mise_command" exec -- "$nvim_command" "$@"
else
"$nvim_command" "$@"
Expand Down
48 changes: 24 additions & 24 deletions lib/resources.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,32 @@

selfishell_managed_resources() {
cat <<EOF
file zshrc-config $SELFISHELL_CONFIG_DIR/zsh/zshrc $SELFISHELL_ROOT/mac/.zshrc
file zsh-runtime $SELFISHELL_CONFIG_DIR/zsh/runtime.zsh $SELFISHELL_ROOT/common/runtime.zsh
file zsh-history $SELFISHELL_CONFIG_DIR/zsh/history.zsh $SELFISHELL_ROOT/common/history.zsh
file mise-config-file $SELFISHELL_CONFIG_DIR/mise/selfishell.toml $SELFISHELL_ROOT/common/mise.toml
file zshrc-config $SELFISHELL_CONFIG_DIR/zsh/zshrc $SELFISHELL_ROOT/config/macos/zshrc
file zsh-runtime $SELFISHELL_CONFIG_DIR/zsh/runtime.zsh $SELFISHELL_ROOT/config/shared/zsh/runtime.zsh
file zsh-history $SELFISHELL_CONFIG_DIR/zsh/history.zsh $SELFISHELL_ROOT/config/shared/zsh/history.zsh
file mise-config-file $SELFISHELL_CONFIG_DIR/mise/selfishell.toml $SELFISHELL_ROOT/config/shared/mise.toml
link mise-config-link ${XDG_CONFIG_HOME:-$HOME/.config}/mise/conf.d/selfishell.toml $SELFISHELL_CONFIG_DIR/mise/selfishell.toml
file zsh-completion $SELFISHELL_CONFIG_DIR/zsh/completion.zsh $SELFISHELL_ROOT/common/completion.zsh
file zsh-interactive $SELFISHELL_CONFIG_DIR/zsh/interactive.zsh $SELFISHELL_ROOT/common/interactive.zsh
file zsh-update-notice $SELFISHELL_CONFIG_DIR/zsh/update-notice.zsh $SELFISHELL_ROOT/common/update-notice.zsh
file zsh-common $SELFISHELL_CONFIG_DIR/zsh/common.zsh $SELFISHELL_ROOT/common/common.zsh
file aliases $SELFISHELL_CONFIG_DIR/zsh/aliases.zsh $SELFISHELL_ROOT/common/aliases.zsh
file vimrc $SELFISHELL_CONFIG_DIR/vim/vimrc $SELFISHELL_ROOT/common/vimrc
file starship-config $SELFISHELL_CONFIG_DIR/starship.toml $SELFISHELL_ROOT/common/starship.toml
file ghostty-config $SELFISHELL_CONFIG_DIR/ghostty/config.ghostty $SELFISHELL_ROOT/mac/config.ghostty
file nvim-init $SELFISHELL_CONFIG_DIR/nvim/init.lua $SELFISHELL_ROOT/common/nvim/init.lua
file nvim-lua-config-options $SELFISHELL_CONFIG_DIR/nvim/lua/config/options.lua $SELFISHELL_ROOT/common/nvim/lua/config/options.lua
file nvim-lua-config-keymaps $SELFISHELL_CONFIG_DIR/nvim/lua/config/keymaps.lua $SELFISHELL_ROOT/common/nvim/lua/config/keymaps.lua
file nvim-lua-config-autocmds $SELFISHELL_CONFIG_DIR/nvim/lua/config/autocmds.lua $SELFISHELL_ROOT/common/nvim/lua/config/autocmds.lua
file nvim-lua-config-lazy $SELFISHELL_CONFIG_DIR/nvim/lua/config/lazy.lua $SELFISHELL_ROOT/common/nvim/lua/config/lazy.lua
file nvim-lua-config-languages $SELFISHELL_CONFIG_DIR/nvim/lua/config/languages.lua $SELFISHELL_ROOT/common/nvim/lua/config/languages.lua
file nvim-lua-config-plugin-versions $SELFISHELL_CONFIG_DIR/nvim/lua/config/plugin_versions.lua $SELFISHELL_ROOT/common/nvim/lua/config/plugin_versions.lua
file zsh-completion $SELFISHELL_CONFIG_DIR/zsh/completion.zsh $SELFISHELL_ROOT/config/shared/zsh/completion.zsh
file zsh-interactive $SELFISHELL_CONFIG_DIR/zsh/interactive.zsh $SELFISHELL_ROOT/config/shared/zsh/interactive.zsh
file zsh-update-notice $SELFISHELL_CONFIG_DIR/zsh/update-notice.zsh $SELFISHELL_ROOT/config/shared/zsh/update-notice.zsh
file zsh-common $SELFISHELL_CONFIG_DIR/zsh/common.zsh $SELFISHELL_ROOT/config/shared/zsh/common.zsh
file aliases $SELFISHELL_CONFIG_DIR/zsh/aliases.zsh $SELFISHELL_ROOT/config/shared/zsh/aliases.zsh
file vimrc $SELFISHELL_CONFIG_DIR/vim/vimrc $SELFISHELL_ROOT/config/shared/vimrc
file starship-config $SELFISHELL_CONFIG_DIR/starship.toml $SELFISHELL_ROOT/config/shared/starship.toml
file ghostty-config $SELFISHELL_CONFIG_DIR/ghostty/config.ghostty $SELFISHELL_ROOT/config/macos/ghostty/config.ghostty
file nvim-init $SELFISHELL_CONFIG_DIR/nvim/init.lua $SELFISHELL_ROOT/config/shared/nvim/init.lua
file nvim-lua-config-options $SELFISHELL_CONFIG_DIR/nvim/lua/config/options.lua $SELFISHELL_ROOT/config/shared/nvim/lua/config/options.lua
file nvim-lua-config-keymaps $SELFISHELL_CONFIG_DIR/nvim/lua/config/keymaps.lua $SELFISHELL_ROOT/config/shared/nvim/lua/config/keymaps.lua
file nvim-lua-config-autocmds $SELFISHELL_CONFIG_DIR/nvim/lua/config/autocmds.lua $SELFISHELL_ROOT/config/shared/nvim/lua/config/autocmds.lua
file nvim-lua-config-lazy $SELFISHELL_CONFIG_DIR/nvim/lua/config/lazy.lua $SELFISHELL_ROOT/config/shared/nvim/lua/config/lazy.lua
file nvim-lua-config-languages $SELFISHELL_CONFIG_DIR/nvim/lua/config/languages.lua $SELFISHELL_ROOT/config/shared/nvim/lua/config/languages.lua
file nvim-lua-config-plugin-versions $SELFISHELL_CONFIG_DIR/nvim/lua/config/plugin_versions.lua $SELFISHELL_ROOT/config/shared/nvim/lua/config/plugin_versions.lua
file nvim-plugin-versions $SELFISHELL_CONFIG_DIR/nvim/plugin-versions.conf $SELFISHELL_ROOT/dependencies.conf
file nvim-lua-plugins-ui $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/ui.lua $SELFISHELL_ROOT/common/nvim/lua/plugins/ui.lua
file nvim-lua-plugins-editor $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/editor.lua $SELFISHELL_ROOT/common/nvim/lua/plugins/editor.lua
file nvim-lua-plugins-lsp $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/lsp.lua $SELFISHELL_ROOT/common/nvim/lua/plugins/lsp.lua
file nvim-lua-plugins-completion $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/completion.lua $SELFISHELL_ROOT/common/nvim/lua/plugins/completion.lua
file nvim-after-lsp-lua_ls $SELFISHELL_CONFIG_DIR/nvim/after/lsp/lua_ls.lua $SELFISHELL_ROOT/common/nvim/after/lsp/lua_ls.lua
file nvim-lua-plugins-ui $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/ui.lua $SELFISHELL_ROOT/config/shared/nvim/lua/plugins/ui.lua
file nvim-lua-plugins-editor $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/editor.lua $SELFISHELL_ROOT/config/shared/nvim/lua/plugins/editor.lua
file nvim-lua-plugins-lsp $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/lsp.lua $SELFISHELL_ROOT/config/shared/nvim/lua/plugins/lsp.lua
file nvim-lua-plugins-completion $SELFISHELL_CONFIG_DIR/nvim/lua/plugins/completion.lua $SELFISHELL_ROOT/config/shared/nvim/lua/plugins/completion.lua
file nvim-after-lsp-lua_ls $SELFISHELL_CONFIG_DIR/nvim/after/lsp/lua_ls.lua $SELFISHELL_ROOT/config/shared/nvim/after/lsp/lua_ls.lua
block user-zshrc $HOME/.zshrc -
block user-zprofile $HOME/.zprofile -
block user-zshenv $HOME/.zshenv -
Expand Down
4 changes: 2 additions & 2 deletions lib/tool_status.sh
Original file line number Diff line number Diff line change
Expand Up @@ -163,10 +163,10 @@ tool_status_detect() {
mise)
local mise_tool="$package"
local mise_command=""
# common/mise.toml is the sole source of truth for a mise-managed
# config/shared/mise.toml is the sole source of truth for a mise-managed
# tool's approved version; profiles/*.conf only declares the tool
# name, so the approved version can't be parsed out of $package.
TOOL_STATUS_APPROVED="$(tool_status_mise_toml_version "$SELFISHELL_ROOT/common/mise.toml" "$mise_tool")"
TOOL_STATUS_APPROVED="$(tool_status_mise_toml_version "$SELFISHELL_ROOT/config/shared/mise.toml" "$mise_tool")"
if have_command mise; then
mise_command="$(command -v mise)"
elif [[ -x "$HOME/.local/bin/mise" ]]; then
Expand Down
18 changes: 9 additions & 9 deletions scripts/benchmark.sh
Original file line number Diff line number Diff line change
Expand Up @@ -71,21 +71,21 @@ mkdir -p "$TEST_HOME/.cache/selfishell" "$TEST_HOME/.config/mise" \
: >"$TEST_HOME/.config/mise/config.toml"

case "$(uname -s)" in
Darwin) PLATFORM_CONFIG="$ROOT_DIR/mac/.zshrc" ;;
*) PLATFORM_CONFIG="$ROOT_DIR/ubuntu/.zshrc" ;;
Darwin) PLATFORM_CONFIG="$ROOT_DIR/config/macos/zshrc" ;;
*) PLATFORM_CONFIG="$ROOT_DIR/config/ubuntu/zshrc" ;;
esac

if [[ "$PROFILE_MODE" == base && "$(uname -s)" == Darwin ]]; then
printf '#!/bin/sh\nexit 0\n' >"$TEST_HOME/.local/bin/brew"
chmod +x "$TEST_HOME/.local/bin/brew"
fi

ln -s "$ROOT_DIR/common/common.zsh" "$TEST_HOME/.config/selfishell/zsh/common.zsh"
ln -s "$ROOT_DIR/common/runtime.zsh" "$TEST_HOME/.config/selfishell/zsh/runtime.zsh"
ln -s "$ROOT_DIR/common/completion.zsh" "$TEST_HOME/.config/selfishell/zsh/completion.zsh"
ln -s "$ROOT_DIR/common/interactive.zsh" "$TEST_HOME/.config/selfishell/zsh/interactive.zsh"
ln -s "$ROOT_DIR/common/update-notice.zsh" "$TEST_HOME/.config/selfishell/zsh/update-notice.zsh"
ln -s "$ROOT_DIR/common/aliases.zsh" "$TEST_HOME/.config/selfishell/zsh/aliases.zsh"
ln -s "$ROOT_DIR/config/shared/zsh/common.zsh" "$TEST_HOME/.config/selfishell/zsh/common.zsh"
ln -s "$ROOT_DIR/config/shared/zsh/runtime.zsh" "$TEST_HOME/.config/selfishell/zsh/runtime.zsh"
ln -s "$ROOT_DIR/config/shared/zsh/completion.zsh" "$TEST_HOME/.config/selfishell/zsh/completion.zsh"
ln -s "$ROOT_DIR/config/shared/zsh/interactive.zsh" "$TEST_HOME/.config/selfishell/zsh/interactive.zsh"
ln -s "$ROOT_DIR/config/shared/zsh/update-notice.zsh" "$TEST_HOME/.config/selfishell/zsh/update-notice.zsh"
ln -s "$ROOT_DIR/config/shared/zsh/aliases.zsh" "$TEST_HOME/.config/selfishell/zsh/aliases.zsh"
ln -s "$PLATFORM_CONFIG" "$TEST_HOME/.zshrc"
date +%s >"$TEST_HOME/.cache/selfishell/update-checked-at"

Expand Down Expand Up @@ -213,7 +213,7 @@ run_common_zsh() {
MISE_GLOBAL_CONFIG_FILE="$TEST_HOME/.config/mise/config.toml" MISE_SHELL='' \
PATH="$COMMON_PATH" TERM=xterm-256color \
/bin/zsh -f -c 'source "$1"' \
zsh "$ROOT_DIR/common/common.zsh" >/dev/null 2>&1
zsh "$ROOT_DIR/config/shared/zsh/common.zsh" >/dev/null 2>&1
}

run_interactive_zsh() {
Expand Down
4 changes: 1 addition & 3 deletions scripts/build-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,7 @@ cp -R \
"$ROOT_DIR/bin" \
"$ROOT_DIR/lib" \
"$ROOT_DIR/profiles" \
"$ROOT_DIR/common" \
"$ROOT_DIR/mac" \
"$ROOT_DIR/ubuntu" \
"$ROOT_DIR/config" \
"$payload_dir/"
cp "$ROOT_DIR/dependencies.conf" "$payload_dir/"
printf '%s\n' "$version" >"$payload_dir/VERSION"
Expand Down
4 changes: 2 additions & 2 deletions scripts/check.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ while IFS= read -r file; do
zsh_files+=("$file")
done < <(
{
printf '%s\n' mac/.zshrc ubuntu/.zshrc
find common -type f -name '*.zsh'
printf '%s\n' config/macos/zshrc config/ubuntu/zshrc
find config -type f -name '*.zsh'
} | sort -u
)

Expand Down
2 changes: 1 addition & 1 deletion scripts/classify-ci-changes.sh
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ dependencies_changed=false
while IFS= read -r changed_file; do
case "$changed_file" in
AGENTS.md | README.md | docs/*) ;;
common/nvim/*)
config/shared/nvim/*)
runtime=true
;;
dependencies.conf)
Expand Down
16 changes: 8 additions & 8 deletions scripts/update-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -184,14 +184,14 @@ stage_exact_replacement() {
mv "$staged_file.next" "$staged_file"
}

# Stages every "mise-tool" bump in $metadata against common/mise.toml's
# Stages every "mise-tool" bump in $metadata against config/shared/mise.toml's
# current pin -- the sole source of truth for these versions. A candidate
# that isn't a strictly newer, validly-formed version is silently skipped
# -- no downgrade, no no-op edit -- so a repeated run with the same
# candidate produces no further diff.
stage_mise_tool_updates() {
local staged_dir="$1"
local mise_toml_target="common/mise.toml"
local mise_toml_target="config/shared/mise.toml"
local type tool candidate current staged_mise_toml

while read -r type tool candidate _; do
Expand Down Expand Up @@ -252,7 +252,7 @@ build_manifest() {
expected_download[key] = 1
} else if ($1 == "mise-tool") {
# Not a dependencies.conf record; stage_mise_tool_updates() applies
# these to common/mise.toml and its companions instead.
# these to config/shared/mise.toml and its companions instead.
} else {
print "Unknown dependency metadata record: " $0 > "/dev/stderr"
invalid = 1
Expand Down Expand Up @@ -319,10 +319,10 @@ build_manifest() {
# failure rather than a silent no-op.
zsh_plugin_pin_file() {
case "$1" in
zsh-users/zsh-completions) printf 'common/completion.zsh\n' ;;
Aloxaf/fzf-tab) printf 'common/interactive.zsh\n' ;;
zsh-users/zsh-autosuggestions) printf 'common/interactive.zsh\n' ;;
zdharma-continuum/fast-syntax-highlighting) printf 'common/interactive.zsh\n' ;;
zsh-users/zsh-completions) printf 'config/shared/zsh/completion.zsh\n' ;;
Aloxaf/fzf-tab) printf 'config/shared/zsh/interactive.zsh\n' ;;
zsh-users/zsh-autosuggestions) printf 'config/shared/zsh/interactive.zsh\n' ;;
zdharma-continuum/fast-syntax-highlighting) printf 'config/shared/zsh/interactive.zsh\n' ;;
*) return 1 ;;
esac
}
Expand Down Expand Up @@ -447,7 +447,7 @@ stage_mise_tool_updates "$staged_dir"
# Nothing above touched a real file; only now, with the manifest and every
# staged rewrite validated, are they committed together.
mv "$manifest_output" "$manifest"
for target_file in common/completion.zsh common/interactive.zsh common/mise.toml; do
for target_file in config/shared/zsh/completion.zsh config/shared/zsh/interactive.zsh config/shared/mise.toml; do
staged_file="$staged_dir/$target_file"
[[ -f "$staged_file" ]] || continue
mv "$staged_file" "$zsh_root/$target_file"
Expand Down
2 changes: 1 addition & 1 deletion tests/benchmark_test.bash
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ test_benchmark_rejects_missing_retained_zsh_module() {
setup_test_home
checkout="$TEST_ROOT/checkout"
cp -R "$ROOT_DIR" "$checkout"
mv "$checkout/common/aliases.zsh" "$TEST_ROOT/aliases.zsh"
mv "$checkout/config/shared/zsh/aliases.zsh" "$TEST_ROOT/aliases.zsh"

output="$(SELFISHELL_BENCHMARK_ITERATIONS=1 \
bash "$checkout/scripts/benchmark.sh" --mode base 2>&1)" || status=$?
Expand Down
Loading
Loading