diff options
| author | Craig Jennings <c@cjennings.net> | 2026-01-26 16:57:37 -0600 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-01-26 16:57:37 -0600 |
| commit | 7d490453085ae084ce0e3875952eae1d3ad7b1ab (patch) | |
| tree | d6f76ded02d541107271dc2b04cac34435c81a26 /dotfiles/system/.profile.d/arch-linux-downgrade.sh | |
| parent | feb8dfaae9b0172c9d24e7e0d115754a467b4627 (diff) | |
refactor(shell): reorganize shell config for proper separation
Restructure shell configuration to follow standard conventions:
- .profile: Environment variables only (POSIX compatible)
- .bash_profile: NEW - sources .profile and .bashrc for login shells
- .bashrc: Bash-specific settings, sources .bashrc.d/
- .zshrc: Zsh-specific settings, sources .zshrc.d/
New modular directories:
- .bashrc.d/: aliases, emacs, fzf, git, media, utilities
- .zshrc.d/: same as bashrc.d plus arch-downgrade (zsh-only)
- .profile.d/: reduced to env-only files (display, framework, auto-tmux)
Fixes:
- Remove duplicate .profile sourcing in .bashrc
- Remove broken XDG_CURRENT_DESKTOP=GNOME line from display.sh
- Move aliases/functions from .profile to appropriate .d/ directories
- Shell-specific init (zoxide, fzf) now in .bashrc/.zshrc directly
- FreeBSD bindkey fix now in .zshrc directly
Also adds CLAUDE.md session context file.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Diffstat (limited to 'dotfiles/system/.profile.d/arch-linux-downgrade.sh')
| -rwxr-xr-x | dotfiles/system/.profile.d/arch-linux-downgrade.sh | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/dotfiles/system/.profile.d/arch-linux-downgrade.sh b/dotfiles/system/.profile.d/arch-linux-downgrade.sh deleted file mode 100755 index d97a2dc..0000000 --- a/dotfiles/system/.profile.d/arch-linux-downgrade.sh +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh - -# arch-linux-downgrade.sh -# Craig Jennings <c@cjennings.net> -# Downgrade an explicitly installed Arch package, chosen via fzf. - -# Config: -# export DG_HELPER=pacman # or yay, paru, etc. Must support -Qe, -Qi, -Si -# export DG_FZF_OPTS="..." # optional extra fzf flags - -dg() { - emulate -L zsh - set -u - set -o pipefail - - local helper="${DG_HELPER:-pacman}" - - # Check dependencies - for cmd in "$helper" fzf sudo downgrade awk sort; do - if ! command -v "${cmd%% *}" >/dev/null 2>&1; then - print -u2 -- "Missing dependency: $cmd" - return 1 - fi - done - - # List explicitly installed packages - local selection - selection="$( - "$helper" -Qe 2>/dev/null \ - | fzf --no-multi \ - --prompt="Pick package to downgrade > " \ - --height=80% \ - --reverse \ - --delimiter=' ' \ - --preview-window=right:60%:wrap \ - --preview "$helper -Qi {1} 2>/dev/null || $helper -Si {1}" \ - ${DG_FZF_OPTS:-} - )" - - # If fzf or pacman fails, just return - [[ $? -ne 0 || -z "$selection" ]] && return 0 - - local pkg - pkg="$(print -r -- "$selection" | head -n1 | awk '{print $1}')" - - if ! sudo downgrade "$pkg"; then - print -u2 -- "Downgrade failed for $pkg" - return 1 - fi -} |
