]> git.rmz.io Git - dotfiles.git/blobdiff - Makefile
nvim: track lazy-lock
[dotfiles.git] / Makefile
index 71ed29c8c8f791b79d997cda6b947f1d2071863c..5a64e888bb086574b5675f31fc2bc2573c1a7c4e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,11 +5,14 @@ XDG_CACHE_HOME  ?= ~/.cache
 XDG_DATA_HOME   ?= ~/.local/share
 
 FILES := bin
-DOTFILES := goobookrc profile tmux.conf Xresources
-CONFIGFILES := compton.conf mpv offlineimap ranger retroarch xbindkeys xkb
+DOTFILES := goobookrc profile Xresources
+CONFIGFILES := mpv offlineimap ranger retroarch xbindkeys xkb
 
 .PHONY: core_files
-core_files: dircolors git ssh systemd vim zsh
+core_files: dircolors git nvim ranger ssh systemd tmux zsh
+
+.PHONY: desktop
+desktop: core_files awesome kitty picom qutebrowser rofi xkb
 
 .PHONY: install $(FILES) $(DOTFILES) $(CONFIGFILES)
 install: $(FILES) $(DOTFILES) $(CONFIGFILES)
@@ -17,19 +20,21 @@ install: $(FILES) $(DOTFILES) $(CONFIGFILES)
 $(XDG_DATA_HOME) $(XDG_CONFIG_HOME):
        mkdir -p $@
 
-awesome: $(XDG_CONFIG_HOME)
+awesome: $(XDG_CONFIG_HOME) xinit
        ln -sfT $(APATH)/awesome $(XDG_CONFIG_HOME)/awesome
+       ln -sfT $(APATH)/zlogin ~/.zlogin
+       git submodule update --init \
+               awesome/widgets/pomodoro \
+               awesome/widgets/net_widgets
 .PHONY: awesome
 
 dircolors: $(XDG_CONFIG_HOME)
        ln -sfT $(APATH)/dircolors $(XDG_CONFIG_HOME)/dircolors
 .PHONY: dircolors
 
-gdb:
+gdb: $(XDG_CACHE_HOME) $(XDG_DATA_HOME)
        mkdir $(XDG_DATA_HOME)/gdb
        ln -sfT $(APATH)/gdb $(XDG_CONFIG_HOME)/gdb
-       ln -sfT $(APATH)/gdbinit ~/.gdbinit
-       ln -sfT $(APATH)/cgdb ~/.cgdb
 .PHONY: gdb
 
 git: $(XDG_CONFIG_HOME)
@@ -39,10 +44,24 @@ git: $(XDG_CONFIG_HOME)
 
 gnupg: systemd
        ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+       chmod 700 $(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
+       sudo ln -sfT $(APATH)/bin/pinentry /usr/local/bin/pinentry
 .PHONY: gnupg
 
+khal: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: khal
+
+khard: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: khard
+
+kitty:
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: kitty
+
 mpd: systemd
        ln -sfT $(APATH)/mpd $(XDG_CONFIG_HOME)/mpd
        mkdir -p $(XDG_DATA_HOME)/mpd/playlists
@@ -71,46 +90,112 @@ ncmpcpp: $(XDG_CONFIG_HOME)
        mkdir -p $(XDG_DATA_HOME)/mpd/lyrics
 .PHONY: ncmpcpp
 
-qutebrowser: $(XDG_CONFIG_HOME)
+pacman: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: pacman
+
+picom: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: picom
+
+qute_scripts := $(wildcard qutebrowser/userscripts/*)
+$(qute_scripts):
+       mkdir -p $(XDG_DATA_HOME)/qutebrowser/userscripts
+       ln -sfT $(APATH)/$@ $(XDG_DATA_HOME)/$@
+.PHONY: $(qute_scripts)
+
+qutebrowser: $(XDG_CONFIG_HOME) $(qute_scripts)
        ln -sfT $(APATH)/qutebrowser $(XDG_CONFIG_HOME)/qutebrowser
        mkdir -p ~/downloads
 .PHONY: qutebrowser
 
+rofi: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: rofi
+
+rofimoji: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@.rc $(XDG_CONFIG_HOME)/$@.rc
+.PHONY: rofimoji
+
 ssh:
        ln -sfT $(APATH)/ssh/config ~/.ssh/config
 .PHONY: ssh
 
-systemd: $(XDG_CONFIG_HOME)
+# copy system files, do not link, it doesn't work if home is encrypted
+/etc/systemd/system/%: systemd/system/%
+       sudo cp $(APATH)/$< $@
+
+systemd-system: $(patsubst %,/etc/%,$(wildcard systemd/system/*))
+       sudo systemctl daemon-reload
+.PHONY: systemd-system
+
+systemd-user: $(XDG_CONFIG_HOME) 
        ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: systemd-user
+
+systemd: systemd-user systemd-system
+       systemctl --user daemon-reload
 .PHONY: systemd
 
 task: $(XDG_CONFIG_HOME)
-       ln -sfT $(APATH)/taskrc $(XDG_CONFIG_HOME)/taskrc
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
 .PHONY: task
 
+tmux: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/tmux $(XDG_CONFIG_HOME)/tmux
+       git submodule update --init \
+               tmux/plugins/nord-tmux \
+               tmux/plugins/tpm
+.PHONY: tmux
+
 urxvt: $(XDG_CONFIG_HOME)
        ln -sfT $(APATH)/urxvt $(XDG_CONFIG_HOME)/urxvt
 .PHONY: urxvt
 
+vdirsyncer: $(XDG_CACHE_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+       mkdir -p $(XDG_DATA_HOME)/vdirsyncer/{contacts,calendars}
+.PHONY: vdirsyncer
+
 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
+       
+nvim: $(XDG_CONFIG_HOME) vim
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: nvim
 
 yay: $(XDG_CONFIG_HOME)
        ln -sfT $(APATH)/yay $(XDG_CONFIG_HOME)/yay
        mkdir -p $(XDG_CACHE_HOME)/yay
 
-xprofile:
-       ln -sfT $(APATH)/xprofile ~/.xprofile
+xinit: $(XDG_CONFIG_HOME) xprofile
+       ln -sfT $(APATH)/$@rc ~/.$@rc
+       ln -sfT $(APATH)/$@   $(XDG_CONFIG_HOME)/$@
+.PHONY: xinit
+
+xprofile: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@   ~/.$@
+       ln -sfT $(APATH)/$@.d $(XDG_CONFIG_HOME)/$@.d
 .PHONY: xprofile
 
+wakeonlan: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: wakeonlan
+
 weechat: $(XDG_CONFIG_HOME) $(XDG_CACHE_HOME)
        ln -sfT $(APATH)/weechat $(XDG_CONFIG_HOME)/weechat
        mkdir -p $(XDG_CACHE_HOME)/weechat
 .PHONY: weechat
 
+wezterm: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: wezterm
+
+zathura: $(XDG_CONFIG_HOME)
+       ln -sfT $(APATH)/$@ $(XDG_CONFIG_HOME)/$@
+.PHONY: zathura
 
 zsh: $(XDG_CONFIG_HOME)
        ln -sfT $(APATH)/zshrc ~/.zshrc
@@ -119,6 +204,7 @@ zsh: $(XDG_CONFIG_HOME)
        ln -sfT $(APATH)/aliases $(XDG_CONFIG_HOME)/aliases
        mkdir -p $(XDG_CACHE_HOME)/zsh
        mkdir -p $(XDG_DATA_HOME)/zsh
+       git submodule update --init zsh/lib/zsh-syntax-highlighting
 .PHONY: zsh
 
 $(FILES):