Files
dots/common/.config/fish/functions/extract.fish
T
coja 1e39e0cb4b [Sync] replace the flat layout with the unified stow tree
Supersedes the old flat .config/ layout (last published 2026-06-28) with the
private repo's structure: one shared base plus per-host overlays.

- packages: common/ gui/ lw/ fl/ wm/ plus install.sh and bin/ tooling
  (dotsync, reconcile-hyde.sh)
- new README covering the layout, deploy order and the HyDE dependency
- current HyDE waybar rig (layouts/, cava), pi agent extensions, claude/
  config, tmux, presenterm, aichat roles
- fish: kp (keepassxc-cli + fzf picker, db path from $KP_DB) and
  bind_M_n_history (alt+1..9 recalls the nth history entry)
- drops cruft that should never have been tracked: the duplicate top-level
  .pi/ copy, btop.log, zellij config.kdl.bak, fish_variables
- .pi/agent/auth.json is gitignored; auth.json.example ships instead

Host-specific work sessions and the personal backlog stay in the private
tree. Endpoint locators in the llamacpp/whisper guides are placeholders
($SERVER, <own-domain>) — the guides themselves stay, since they are the
useful part.
2026-08-13 02:53:06 +02:00

24 lines
630 B
Fish

function extract --description 'Extract any archive'
switch $argv[1]
case '*.tar' '*.tar.*' '*.tgz' '*.tbz2' '*.txz' # tar autodetects compression
tar xf $argv[1]
case '*.zip'
unzip $argv[1]
case '*.rar'
unrar x $argv[1]
case '*.7z'
7z x $argv[1]
case '*.gz'
gunzip -k $argv[1]
case '*.xz'
unxz -k $argv[1]
case '*.zst'
unzstd $argv[1]
case '*.bz2'
bunzip2 -k $argv[1]
case '*'
echo "Unknown extension: $argv[1]"
return 1
end
end