From 7d490453085ae084ce0e3875952eae1d3ad7b1ab Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Mon, 26 Jan 2026 16:57:37 -0600 Subject: 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 --- dotfiles/system/.bashrc.d/media.sh | 41 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 dotfiles/system/.bashrc.d/media.sh (limited to 'dotfiles/system/.bashrc.d/media.sh') diff --git a/dotfiles/system/.bashrc.d/media.sh b/dotfiles/system/.bashrc.d/media.sh new file mode 100644 index 0000000..92fe2ce --- /dev/null +++ b/dotfiles/system/.bashrc.d/media.sh @@ -0,0 +1,41 @@ +# media.sh +# Craig Jennings +# Media utilities - music, video, downloads + +# ============================================================================= +# Terminal MPV +# ============================================================================= +alias play='mpv --no-video' +alias shuffle='mpv --no-video --shuffle' + +# ============================================================================= +# Tidal +# ============================================================================= +alias tdl="tidal-dl -l" +alias ttdl="tsp tidal-dl -l" + +# ============================================================================= +# YouTube (yt-dlp) +# ============================================================================= +# Video - single +alias yt="yt-dlp --ignore-config --no-playlist --add-metadata -i -o '%(channel)s-%(title)s.%(ext)s'" +alias tyt="tsp yt-dlp --ignore-config --no-playlist --add-metadata -i -o '%(channel)s-%(title)s.%(ext)s'" + +# Video - playlist +alias ytp="yt-dlp --ignore-config --yes-playlist --add-metadata -i -o '%(channel)s-%(playlist_title)s-%(playlist_index)s-%(title)s.%(ext)s'" +alias tytp="tsp yt-dlp --ignore-config --yes-playlist --add-metadata -i -o '%(channel)s-%(playlist_title)s-%(playlist_index)s-%(title)s.%(ext)s'" + +# Audio - single +alias yta="yt-dlp --ignore-config --no-playlist -x -f bestaudio/best -o '%(artist)s-%(title)s.%(ext)s'" +alias tyta="tsp yt-dlp --ignore-config --no-playlist -x -f bestaudio/best -o '%(artist)s-%(title)s.%(ext)s'" + +# Audio - playlist +alias ytap="yt-dlp --ignore-config --yes-playlist -x -f bestaudio/best -o '%(playlist_index)s-%(artist)s-%(title)s.%(ext)s'" +alias tytap="tsp yt-dlp --ignore-config --yes-playlist -x -f bestaudio/best -o '%(playlist_index)s-%(artist)s-%(title)s.%(ext)s'" + +# ============================================================================= +# Audible Conversion (AAXtoMP3) +# ============================================================================= +alias aax2flac='AAXtoMP3 -f' +alias aax2mp3='AAXtoMP3 -c -e:mp3' +alias aax2opus='AAXtoMP3 --opus -t . -c' -- cgit v1.2.3