From: Samir Benmendil Date: Tue, 9 Jul 2019 10:29:39 +0000 (+0100) Subject: Makefile: use XDG_* env when available X-Git-Url: https://git.rmz.io/dotfiles.git/commitdiff_plain/fe0b3f4cc70ff890b67fca36c6d4ada71b916aec Makefile: use XDG_* env when available --- diff --git a/Makefile b/Makefile index e67827e..0671e47 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,8 @@ APATH := $(realpath .) +XDG_CONFIG_HOME ?= ~/.config +XDG_DATA_HOME ?= ~/.local/share + FILES := bin DOTFILES := goobookrc msmtp* profile tmux.conf weechat Xresources CONFIGFILES := compton.conf mpv offlineimap ranger retroarch xbindkeys xkb @@ -7,70 +10,70 @@ CONFIGFILES := compton.conf mpv offlineimap ranger retroarch xbindkeys xkb .PHONY: install $(FILES) $(DOTFILES) $(CONFIGFILES) install: $(FILES) $(DOTFILES) $(CONFIGFILES) -~/.config: - mkdir -p ~/.config +$(XDG_DATA_HOME) $(XDG_CONFIG_HOME): + mkdir -p $@ -task: ~/.config - ln -sfT $(APATH)/taskrc ~/.config/taskrc +task: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/taskrc $(XDG_CONFIG_HOME)/taskrc -git: ~/.config - ln -sfT $(APATH)/git ~/.config/git - ln -sfT $(APATH)/tig ~/.config/tig +git: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/git $(XDG_CONFIG_HOME)/git + ln -sfT $(APATH)/tig $(XDG_CONFIG_HOME)/tig .PHONY: git -vim: ~/.config - ln -sfT $(APATH)/vim ~/.config/vim - mkdir -p ~/.local/share/vim - git clone https://github.com/gmarik/vundle ~/.local/share/vim/vundle +vim: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/vim $(XDG_CONFIG_HOME)/vim + mkdir -p $(XDG_DATA_HOME)/vim + git clone https://github.com/gmarik/vundle $(XDG_DATA_HOME)/vim/vundle .PHONY: vim -mutt: ~/.config - ln -sfT $(APATH)/mutt ~/.config/mutt +mutt: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/mutt $(XDG_CONFIG_HOME)/mutt .PHONY: mutt gdb: - mkdir ~/.local/share/gdb + mkdir $(XDG_DATA_HOME)/gdb ln -sfT $(APATH)/gdbinit ~/.gdbinit ln -sfT $(APATH)/cgdb ~/.cgdb .PHONY: gdb -awesome: ~/.config - ln -sfT $(APATH)/awesome ~/.config/awesome +awesome: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/awesome $(XDG_CONFIG_HOME)/awesome .PHONY: awesome -qutebrowser: ~/.config - ln -sfT $(APATH)/qutebrowser ~/.config/qutebrowser +qutebrowser: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/qutebrowser $(XDG_CONFIG_HOME)/qutebrowser mkdir -p ~/downloads .PHONY: qutebrowser mpd: systemd - ln -sfT $(APATH)/mpd ~/.config/mpd - mkdir -p ~/.local/share/mpd/playlists + ln -sfT $(APATH)/mpd $(XDG_CONFIG_HOME)/mpd + mkdir -p $(XDG_DATA_HOME)/mpd/playlists systemctl --user enable mpd systemctl --user start mpd .PHONY: mpd -ncmpcpp: ~/.config - ln -sfT $(APATH)/ncmpcpp ~/.config/ncmpcpp - mkdir -p ~/.local/share/mpd/lyrics +ncmpcpp: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/ncmpcpp $(XDG_CONFIG_HOME)/ncmpcpp + mkdir -p $(XDG_DATA_HOME)/mpd/lyrics .PHONY: ncmpcpp -systemd: ~/.config - ln -sfT $(APATH)/$@ ~/.config/$@ +systemd: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@ .PHONY: systemd gnupg: systemd - ln -sfT $(APATH)/$@ ~/.config/$@ + ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@ systemctl --user enable gpg-agent.socket gpg-agent-extra.socket gpg-agent-browser.socket dirmngr.socket systemctl --user start gpg-agent.socket gpg-agent-extra.socket gpg-agent-browser.socket dirmngr.socket .PHONY: gnupg -zsh: ~/.config +zsh: $(XDG_CONFIG_HOME) ln -sfT $(APATH)/zshrc ~/.zshrc ln -sfT $(APATH)/zprofile ~/.zprofile ln -sfT $(APATH)/zshenv ~/.zshenv - ln -sfT $(APATH)/zsh ~/.config/zsh - ln -sfT $(APATH)/aliases ~/.config/aliases + ln -sfT $(APATH)/zsh $(XDG_CONFIG_HOME)/zsh + ln -sfT $(APATH)/aliases $(XDG_CONFIG_HOME)/aliases mkdir -p ~/.cache/zsh .PHONY: zsh @@ -78,12 +81,12 @@ xprofile: ln -sfT $(APATH)/xprofile ~/.xprofile .PHONY: xprofile -dircolors: ~/.config - ln -sfT $(APATH)/dircolors ~/.config/dircolors +dircolors: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/dircolors $(XDG_CONFIG_HOME)/dircolors .PHONY: dircolors -urxvt: ~/.config - ln -sfT $(APATH)/urxvt ~/.config/urxvt +urxvt: $(XDG_CONFIG_HOME) + ln -sfT $(APATH)/urxvt $(XDG_CONFIG_HOME)/urxvt .PHONY: urxvt $(FILES): @@ -108,13 +111,13 @@ $(DOTFILES): fi; ln -sfT $(APATH)/$@ ~/.$@ -$(CONFIGFILES): ~/.config - @if [[ -e ~/.config/$@ && ! -L ~/.config/$@ ]]; then \ +$(CONFIGFILES): $(XDG_CONFIG_HOME) + @if [[ -e $(XDG_CONFIG_HOME)/$@ && ! -L $(XDG_CONFIG_HOME)/$@ ]]; then \ if [[ -d .config/$@ ]]; then \ - cp -r ~/.config/$@/* $@; \ + cp -r $(XDG_CONFIG_HOME)/$@/* $@; \ else \ - cp -r ~/.config/$@ $@; \ + cp -r $(XDG_CONFIG_HOME)/$@ $@; \ fi; \ - rm -r ~/.config/$@; \ + rm -r $(XDG_CONFIG_HOME)/$@; \ fi; - ln -sfT $(APATH)/$@ ~/.config/$@ + ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@