From a29eaec506a7ce9e42d64a3ec1d17690387def30 Mon Sep 17 00:00:00 2001 From: Dennis Lee Date: Sat, 4 Apr 2020 13:00:08 -0700 Subject: [PATCH] substitute ~/.config with $XDG_CONFIG_HOME --- .config/aliasrc | 2 +- .config/directories | 2 +- .config/files | 26 +++++++++++++------------- .config/lf/lfrc | 10 +++++----- .config/mpd/mpd.conf | 12 ++++++------ .config/ncmpcpp/config | 2 +- .config/nvim/init.vim | 8 ++++---- .config/ranger/commands.py | 2 +- .config/ranger/luke_ranger_readme.md | 6 +++--- .config/ranger/rc.conf | 4 ++-- .config/sxiv/exec/key-handler | 4 ++-- .config/vifm/vifmrc | 2 +- .local/bin/cron/crontog | 2 +- .local/bin/statusbar/clock | 2 +- .local/bin/statusbar/iplocate | 2 +- .local/bin/statusbar/news | 2 +- .local/share/larbs/getkeys/sxiv | 2 +- .local/share/larbs/readme.mom | 10 +++++----- .profile | 2 +- .xprofile | 2 +- README.md | 8 ++++---- 21 files changed, 56 insertions(+), 56 deletions(-) diff --git a/.config/aliasrc b/.config/aliasrc index 1806d50e..34bf437b 100644 --- a/.config/aliasrc +++ b/.config/aliasrc @@ -42,5 +42,5 @@ alias mpv="mpv --input-ipc-server=/tmp/mpvsoc$(date +%s)" # Some other stuff alias \ magit="nvim -c MagitOnly" \ - ref="shortcuts >/dev/null; source ~/.config/shortcutrc" \ + ref="shortcuts >/dev/null; source $XDG_CONFIG_HOME/shortcutrc" \ weath="less -S $XDG_DATA_HOME/weatherreport" \ diff --git a/.config/directories b/.config/directories index 24bdd218..cd3aafb7 100644 --- a/.config/directories +++ b/.config/directories @@ -5,6 +5,6 @@ D ~/Downloads m ~/Music pp ~/Pictures vv ~/Videos -cf ~/.config +cf $XDG_CONFIG_HOME sc ~/.local/bin mn /mnt diff --git a/.config/files b/.config/files index b34f1849..6aee4602 100644 --- a/.config/files +++ b/.config/files @@ -1,15 +1,15 @@ -bf ~/.config/files -bd ~/.config/directories -bw ~/.config/bookmarks -cfa ~/.config/aliasrc +bf $XDG_CONFIG_HOME/files +bd $XDG_CONFIG_HOME/directories +bw $XDG_CONFIG_HOME/bookmarks +cfa $XDG_CONFIG_HOME/aliasrc cfz $ZDOTDIR/.zshrc -cfv ~/.config/nvim/init.vim -cfm ~/.config/mutt/muttrc +cfv $XDG_CONFIG_HOME/nvim/init.vim +cfm $XDG_CONFIG_HOME/mutt/muttrc cfd ~/.Xdefaults -cfu ~/.config/newsboat/urls -cfn ~/.config/newsboat/config -cfmb ~/.config/ncmpcpp/bindings -cfmc ~/.config/ncmpcpp/config -cfk ~/.config/sxhkd/sxhkdrc -cfi ~/.config/i3/config -cfb ~/.config/i3blocks/config +cfu $XDG_CONFIG_HOME/newsboat/urls +cfn $XDG_CONFIG_HOME/newsboat/config +cfmb $XDG_CONFIG_HOME/ncmpcpp/bindings +cfmc $XDG_CONFIG_HOME/ncmpcpp/config +cfk $XDG_CONFIG_HOME/sxhkd/sxhkdrc +cfi $XDG_CONFIG_HOME/i3/config +cfb $XDG_CONFIG_HOME/i3blocks/config diff --git a/.config/lf/lfrc b/.config/lf/lfrc index 27900a1d..3b4cc14f 100644 --- a/.config/lf/lfrc +++ b/.config/lf/lfrc @@ -2,7 +2,7 @@ # Basic vars set shell sh -set previewer ~/.config/lf/scope +set previewer $XDG_CONFIG_HOME/lf/scope set shellopts '-eu' set ifs "\n" set scrolloff 10 @@ -36,7 +36,7 @@ cmd delete ${{ cmd moveto ${{ set -f clear; echo "Move to where?" - dest="$(cut -d' ' -f2- ~/.config/directories | fzf)" && + dest="$(cut -d' ' -f2- $XDG_CONFIG_HOME/directories | fzf)" && eval mv -iv $fx $dest && notify-send "🚚 File(s) moved." "File(s) moved to $dest." }} @@ -44,7 +44,7 @@ cmd moveto ${{ cmd copyto ${{ set -f clear; echo "Copy to where?" - dest="$(cut -d' ' -f2- ~/.config/directories | fzf)" && + dest="$(cut -d' ' -f2- $XDG_CONFIG_HOME/directories | fzf)" && eval cp -ivr $fx $dest && notify-send "📋 File(s) copied." "File(s) copies to $dest." }} @@ -54,9 +54,9 @@ cmd bulkrename ${{ }} # Bindings -map c $lf -remote "send $id cd $(cut -d' ' -f2 ~/.config/directories | fzf)" +map c $lf -remote "send $id cd $(cut -d' ' -f2 $XDG_CONFIG_HOME/directories | fzf)" map $lf -remote "send $id select '$(fzf)'" -map J $lf -remote "send $id cd $(cut -d' ' -f2 ~/.config/directories | fzf)" +map J $lf -remote "send $id cd $(cut -d' ' -f2 $XDG_CONFIG_HOME/directories | fzf)" map gh map g top map D delete diff --git a/.config/mpd/mpd.conf b/.config/mpd/mpd.conf index a0548ecd..8a30ca5f 100644 --- a/.config/mpd/mpd.conf +++ b/.config/mpd/mpd.conf @@ -1,10 +1,10 @@ -db_file "~/.config/mpd/database" -log_file "~/.config/mpd/log" +db_file "$XDG_CONFIG_HOME/mpd/database" +log_file "$XDG_CONFIG_HOME/mpd/log" music_directory "~/Music" -playlist_directory "~/.config/mpd/playlists" -pid_file "~/.config/mpd/pid" -state_file "~/.config/mpd/state" -sticker_file "~/.config/mpd/sticker.sql" +playlist_directory "$XDG_CONFIG_HOME/mpd/playlists" +pid_file "$XDG_CONFIG_HOME/mpd/pid" +state_file "$XDG_CONFIG_HOME/mpd/state" +sticker_file "$XDG_CONFIG_HOME/mpd/sticker.sql" auto_update "yes" diff --git a/.config/ncmpcpp/config b/.config/ncmpcpp/config index 40fcbc6f..d2e11326 100644 --- a/.config/ncmpcpp/config +++ b/.config/ncmpcpp/config @@ -3,7 +3,7 @@ ## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ## ############################################################################## # -ncmpcpp_directory = ~/.config/ncmpcpp +ncmpcpp_directory = $XDG_CONFIG_HOME/ncmpcpp # ## ## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index d8b0ba20..ae94ae1d 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -1,13 +1,13 @@ let mapleader ="," -if ! filereadable(expand('~/.config/nvim/autoload/plug.vim')) +if ! filereadable(expand('$XDG_CONFIG_HOME/nvim/autoload/plug.vim')) echo "Downloading junegunn/vim-plug to manage plugins..." - silent !mkdir -p ~/.config/nvim/autoload/ - silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ~/.config/nvim/autoload/plug.vim + silent !mkdir -p $XDG_CONFIG_HOME/nvim/autoload/ + silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > $XDG_CONFIG_HOME/nvim/autoload/plug.vim autocmd VimEnter * PlugInstall endif -call plug#begin('~/.config/nvim/plugged') +call plug#begin('$XDG_CONFIG_HOME/nvim/plugged') Plug 'tpope/vim-surround' Plug 'scrooloose/nerdtree' Plug 'junegunn/goyo.vim' diff --git a/.config/ranger/commands.py b/.config/ranger/commands.py index 71fd2a24..5b1acd2d 100755 --- a/.config/ranger/commands.py +++ b/.config/ranger/commands.py @@ -60,7 +60,7 @@ class my_edit(Command): # https://github.com/ranger/ranger/wiki/Integrating-File-Search-with-fzf -# Now, simply bind this function to a key, by adding this to your ~/.config/ranger/rc.conf: map fzf_select +# Now, simply bind this function to a key, by adding this to your $XDG_CONFIG_HOME/ranger/rc.conf: map fzf_select class fzf_select(Command): """ :fzf_select diff --git a/.config/ranger/luke_ranger_readme.md b/.config/ranger/luke_ranger_readme.md index 51c5dd10..f6ee93fc 100644 --- a/.config/ranger/luke_ranger_readme.md +++ b/.config/ranger/luke_ranger_readme.md @@ -32,10 +32,10 @@ These "verbs" take "nouns" or "arguments," like these: + d -- "~/Documents" + D -- "~/Downloads" -+ cf -- "~/.config" ++ cf -- "$XDG_CONFIG_HOME" + And many others, including those you add to `~/.bmdirs`. -Press any "verb" followed by any "argument" to perform a folder operation. "gd" will cd to ~/Documents, for example. "mD" will move the selected file(s) to ~/Downloads. "tcf" will create a new tab in ~/.config, etc. etc. +Press any "verb" followed by any "argument" to perform a folder operation. "gd" will cd to ~/Documents, for example. "mD" will move the selected file(s) to ~/Downloads. "tcf" will create a new tab in $XDG_CONFIG_HOME, etc. etc. ## Many little additions! @@ -60,7 +60,7 @@ Press any "verb" followed by any "argument" to perform a folder operation. "gd" + Txs -- copy slideshow/beamer template to new file + Txh -- copy handout template to new file + Image commands: - + bg -- (for i3 users) makes an image your background (assuming i3 is looking at ~/.config/wall.png for your background) + + bg -- (for i3 users) makes an image your background (assuming i3 is looking at $XDG_CONFIG_HOME/wall.png for your background) + bw -- runs Pywal on the selected image, making it your background and generating a color scheme based off of it. + C -- rotates an image (requires imagemagick) + F -- flips an image (requires imagemagick) diff --git a/.config/ranger/rc.conf b/.config/ranger/rc.conf index 89b4b8c2..ff0d5069 100644 --- a/.config/ranger/rc.conf +++ b/.config/ranger/rc.conf @@ -5,7 +5,7 @@ set column_ratios 1,3,4 set hidden_filter ^\.|\.(?:pyc|vrb|pyo|lof|bak|swp|aux|log|nav|out|snm|toc|bcf|run\.xml|synctex\.gz|blg|bbl)$|^lost\+found$|^__(py)?cache__$ set show_hidden false set confirm_on_delete multiple -set preview_script ~/.config/ranger/scope.sh +set preview_script $XDG_CONFIG_HOME/ranger/scope.sh set use_preview_script true set automatically_count_files true set open_all_images true @@ -505,4 +505,4 @@ map Tn eval fm.open_console('shell eyeD3 -n "" ' + fm.thisfile.relative_path, po #Downloading map ytv console shell youtube-dl -ic%space map yta console shell youtube-dl -xic%space -source ~/.config/ranger/shortcuts.conf +source $XDG_CONFIG_HOME/ranger/shortcuts.conf diff --git a/.config/sxiv/exec/key-handler b/.config/sxiv/exec/key-handler index d9f18254..e096f6e4 100755 --- a/.config/sxiv/exec/key-handler +++ b/.config/sxiv/exec/key-handler @@ -4,12 +4,12 @@ do case "$1" in "w") setbg "$file" & ;; "c") - [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/directories | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")" + [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" $XDG_CONFIG_HOME/directories | awk '{print $2}' | dmenu -l 20 -i -p "Copy file(s) to where?" | sed "s|~|$HOME|g")" [ -z "$destdir" ] && exit cp "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file copied to $destdir." & ;; "m") - [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" ~/.config/directories | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")" + [ -z "$destdir" ] && destdir="$(sed "s/\s.*#.*$//;/^\s*$/d" $XDG_CONFIG_HOME/directories | awk '{print $2}' | dmenu -l 20 -i -p "Move file(s) to where?" | sed "s|~|$HOME|g")" [ -z "$destdir" ] && exit mv "$file" "$destdir" && notify-send -i "$(readlink -f "$file")" "$file moved to $destdir." & ;; diff --git a/.config/vifm/vifmrc b/.config/vifm/vifmrc index b327786c..ed77ea83 100644 --- a/.config/vifm/vifmrc +++ b/.config/vifm/vifmrc @@ -1,5 +1,5 @@ " vim: filetype=vifm -source ~/.config/vifm/vifmshortcuts +source $XDG_CONFIG_HOME/vifm/vifmshortcuts set vicmd=$EDITOR set syscalls diff --git a/.local/bin/cron/crontog b/.local/bin/cron/crontog index 67f620b9..9889d769 100755 --- a/.local/bin/cron/crontog +++ b/.local/bin/cron/crontog @@ -3,4 +3,4 @@ # Toggles all cronjobs off/on. # Stores disabled crontabs in ~/.consaved until restored. -([ -f ~/.config/cronsaved ] && crontab - < ~/.config/cronsaved && rm ~/.config/cronsaved && notify-send "🕓 Cronjobs re-enabled.") || ( crontab -l > ~/.config/cronsaved && crontab -r && notify-send "🕓 Cronjobs saved and disabled.") +([ -f $XDG_CONFIG_HOME/cronsaved ] && crontab - < $XDG_CONFIG_HOME/cronsaved && rm $XDG_CONFIG_HOME/cronsaved && notify-send "🕓 Cronjobs re-enabled.") || ( crontab -l > $XDG_CONFIG_HOME/cronsaved && crontab -r && notify-send "🕓 Cronjobs saved and disabled.") diff --git a/.local/bin/statusbar/clock b/.local/bin/statusbar/clock index d17f3c63..f412bcb9 100755 --- a/.local/bin/statusbar/clock +++ b/.local/bin/statusbar/clock @@ -4,7 +4,7 @@ date '+%Y %b %d (%a) %I:%M%p' case $BLOCK_BUTTON in 1) pgrep -x dunst >/dev/null && notify-send "This Month" "$(cal --color=always | sed "s/..7m//;s/..27m/<\/span><\/b>/")" && notify-send "Appointments" "$(calcurse -d3)" ;; - 2) $TERMINAL -e calcurse -D ~/.config/calcurse ;; + 2) $TERMINAL -e calcurse -D $XDG_CONFIG_HOME/calcurse ;; 3) pgrep -x dunst >/dev/null && notify-send "📅 Time/date module" "\- Left click to show upcoming appointments for the next three days via \`calcurse -d3\` and show the month via \`cal\` - Middle click opens calcurse if installed" ;; esac diff --git a/.local/bin/statusbar/iplocate b/.local/bin/statusbar/iplocate index 4ca4f107..6d1038cb 100755 --- a/.local/bin/statusbar/iplocate +++ b/.local/bin/statusbar/iplocate @@ -6,4 +6,4 @@ # https://www.maketecheasier.com/ip-address-geolocation-lookups-linux/ ifinstalled "geoiplookup" || exit addr="$(curl ifconfig.me 2>/dev/null)" || exit -grep "flag: " ~/.config/emoji | grep "$(geoiplookup $addr | sed 's/.*, //')" | sed "s/flag: //;s/;.*//" +grep "flag: " $XDG_CONFIG_HOME/emoji | grep "$(geoiplookup $addr | sed 's/.*, //')" | sed "s/flag: //;s/;.*//" diff --git a/.local/bin/statusbar/news b/.local/bin/statusbar/news index a8842ad8..e72ef570 100755 --- a/.local/bin/statusbar/news +++ b/.local/bin/statusbar/news @@ -14,4 +14,4 @@ case $BLOCK_BUTTON in Note: Only one instance of newsboat (including updates) may be running at a time." ;; esac - cat /tmp/newsupdate 2>/dev/null || echo "$(newsboat -x print-unread | awk '{ print "📰 " $1}' | sed s/^0$//g)$(cat ~/.config/newsboat/.update 2>/dev/null)" + cat /tmp/newsupdate 2>/dev/null || echo "$(newsboat -x print-unread | awk '{ print "📰 " $1}' | sed s/^0$//g)$(cat $XDG_CONFIG_HOME/newsboat/.update 2>/dev/null)" diff --git a/.local/share/larbs/getkeys/sxiv b/.local/share/larbs/getkeys/sxiv index df5cb1e0..40310393 100644 --- a/.local/share/larbs/getkeys/sxiv +++ b/.local/share/larbs/getkeys/sxiv @@ -12,4 +12,4 @@ sxiv is the image viewer. r - Reload image if changed m - Mark/unmark image w - Zoom to fit window - ctrl-x - Run external command (see ~/.config/sxiv/exec/key-handler for options) + ctrl-x - Run external command (see $XDG_CONFIG_HOME/sxiv/exec/key-handler for options) diff --git a/.local/share/larbs/readme.mom b/.local/share/larbs/readme.mom index c46b1a82..03151a70 100644 --- a/.local/share/larbs/readme.mom +++ b/.local/share/larbs/readme.mom @@ -64,7 +64,7 @@ Below in this document, there is information about where to change programs/comp .PP Additionally, while this isn't a part of the desktop environment, the default editing mode in the shell is using vi bindings. If you want to learn more of this, run \f(CWMod+Shift+E\fP and type and select the option for "vi mode in shell". -This setting can be changed if you don't like it by deleting or commenting out the contents of \f(CW~/.config/inputrc\fP. +This setting can be changed if you don't like it by deleting or commenting out the contents of \f(CW$XDG_CONFIG_HOME/inputrc\fP. .HEADING 2 "The Status Bar" .PP To the left, you'll see the numbers of your current workspace/tag(s). @@ -73,7 +73,7 @@ Each module on the right of the status bar is a script located in \f(CW~/.local/ You can see what they do and modify them from there. I'm sure you can figure it out. .PP -In i3, the program i3blocks controls what modules appear in the statusbar; its config file is in \f(CW~/.config/i3blocks/config\fP. +In i3, the program i3blocks controls what modules appear in the statusbar; its config file is in \f(CW$XDG_CONFIG_HOME/i3blocks/config\fP. .HEADING 2 "Deeper Tutorials" .PP Press \f(CWmod+shift+e\fP at any time to get a menu of programs to watch videos about streaming directly from YouTube. @@ -252,7 +252,7 @@ buttons, screen brightness, email, web browsing buttons, etc.) to what you would expect. .HEADING 1 "Configuration" .PP -Dotfiles/settings files are located in \f(CW~/.config/\fP, note that dotfiles to programs not included in LARBS are there as well by requests of users. I do not necessarily maintain all these dotfiles, but they remain as legacy. +Dotfiles/settings files are located in \f(CW$XDG_CONFIG_HOME/\fP, note that dotfiles to programs not included in LARBS are there as well by requests of users. I do not necessarily maintain all these dotfiles, but they remain as legacy. .PP Suckless programs, st (the terminal) and dmenu among others do not have traditional config files, but have their source code location in \f(CW~/.local/src/\fP. There you can modify their \f(CWconfig.h\fP files, then \f(CWsudo make install\fP to reinstall. @@ -278,7 +278,7 @@ In the Linux terminal, those binds have other more important purposes, so you ca Additionally, I've set vim to use the clipboard as the default buffer, which means when you copy or delete something in vim, it will be in your system clipboard as well, so you can \f(CWctrl-v\fP it into your browser instance, etc. You can also paste material copied from other programs into vim with the typical vim bindings. .HEADING 2 "How do I change the background/wallpaper?" .PP -The system will always read the file \f(CW~/.config/wall.png\fP as the wallpaper. +The system will always read the file \f(CW$XDG_CONFIG_HOME/wall.png\fP as the wallpaper. The script \f(CWsetbg\fP, if run on an image will set it as the persistent background. When using the file manager, you can simply hover over an image name and type \f(CWbg\fP and this will run \f(CWsetbg\fP. .HEADING 2 "How I change the colorscheme?" @@ -296,7 +296,7 @@ You can sync your mail by pressing \f(CWMod+F8\fP and you can set a cronjob to s .HEADING 2 "How do I set up my music?" .PP By default, mpd, the music daemon assumes that \f(CW~/Music\fP is your music directory. -This can be changed in \f(CW~/.config/mpd/mpd.conf\fP. +This can be changed in \f(CW$XDG_CONFIG_HOME/mpd/mpd.conf\fP. When you add music to your music folder, you may have to run \f(CWmpc up\fP in the terminal to update the database. mpd is controlled by ncmpcpp, which is accessible by \f(CWMod+m\fP. .HEADING 2 "How do I update LARBS?" diff --git a/.profile b/.profile index 74a99bfa..b62ae218 100644 --- a/.profile +++ b/.profile @@ -40,7 +40,7 @@ export LESS_TERMCAP_se="$(printf '%b' '')" export LESS_TERMCAP_us="$(printf '%b' '')" export LESS_TERMCAP_ue="$(printf '%b' '')" -[ ! -f ~/.config/shortcutrc ] && shortcuts >/dev/null 2>&1 +[ ! -f $XDG_CONFIG_HOME/shortcutrc ] && shortcuts >/dev/null 2>&1 # Start graphical server on tty1 if not already running. [ "$(tty)" = "/dev/tty1" ] && ! pgrep -x Xorg >/dev/null && exec startx diff --git a/.xprofile b/.xprofile index 677eff10..853aa584 100644 --- a/.xprofile +++ b/.xprofile @@ -10,7 +10,7 @@ dbus-update-activation-environment --systemd DBUS_SESSION_BUS_ADDRESS DISPLAY XA mpd & # music player daemon-you might prefer it as a service though remaps & # run the remaps script, switching caps/esc and more; check it for more info setbg & # set the background with the `setbg` script -#xrdb ~/.config/Xresources & # Uncomment to use Xresources colors/settings on startup +#xrdb $XDG_CONFIG_HOME/Xresources & # Uncomment to use Xresources colors/settings on startup xcompmgr & # xcompmgr for transparency $STATUSBAR & # start the statusbar dunst & # dunst for notifications diff --git a/README.md b/README.md index 069055d1..a7881481 100644 --- a/README.md +++ b/README.md @@ -18,11 +18,11 @@ These are the dotfiles deployed by [LARBS](https://larbs.xyz) and as seen on [my - tmux - other stuff like xdg default programs, inputrc and more, etc. - I try to minimize what's directly in `~` so: - - All configs that can be in `~/.config/` are. - - Some environmental variables have been set in `~/.zprofile` to move configs into `~/.config/` + - All configs that can be in `$XDG_CONFIG_HOME/` are. + - Some environmental variables have been set in `~/.zprofile` to move configs into `$XDG_CONFIG_HOME/` - Bookmarks in text files used by various scripts (like `~/.local/bin/shortcuts`) - - File bookmarks in `~/.config/files` - - Directory bookmarks in `~/.config/directories` + - File bookmarks in `$XDG_CONFIG_HOME/files` + - Directory bookmarks in `$XDG_CONFIG_HOME/directories` ## Want even more?