dotties/GNUmakefile

144 lines
3.6 KiB
Text
Raw Normal View History

DEFAULT_TARGETS += $(HOME)/.bash_profile \
2024-01-06 05:38:53 -06:00
$(HOME)/.vim/bundle/Vundle.vim $(HOME)/.vimrc \
2024-04-25 07:50:43 +00:00
$(HOME)/.inputrc \
$(HOME)/.config/alacritty/alacritty.toml \
aliases \
$(HOME)/.profile.d profileds
2024-01-30 06:48:26 -06:00
ALIASES = $(foreach a,$(wildcard .aliases/*),$(subst .aliases/,$(HOME)/.aliases/,$(a)))
PROFILEDS = $(foreach p,$(wildcard .profile.d/*),$(subst .profile.d/,$(HOME)/.profile.d/,$(p)))
2024-01-06 05:38:53 -06:00
UNAME = $(shell uname -s)
2024-01-06 05:38:53 -06:00
ifeq ($(UNAME),Darwin)
DEFAULT_TARGETS += /opt/local/etc/bashrc.mac \
2024-01-06 05:38:53 -06:00
/opt/local/etc/bashrc
PROFILE = .profile.mac
INSTALL = ginstall
OPEN = open
2024-04-14 23:50:10 -05:00
else ifeq ($(UNAME),FreeBSD)
2024-04-25 07:42:47 +00:00
DEFAULT_TARGETS += $(HOME)/.bashrc \
$(HOME)/.bashrc.freebsd \
$(HOME)/.profile.freebsd
PROFILE = .profile
INSTALL = ginstall
OPEN = xdg-open
else ifeq ($(UNAME),Linux)
DEFAULT_TARGETS += $(HOME)/.bashrc \
$(HOME)/.profile.linux
PROFILE = .profile
INSTALL = install
OPEN = xdg-open
2024-01-06 05:38:53 -06:00
else
DEFAULT_TARGETS += $(HOME)/.bashrc
2024-01-06 05:38:53 -06:00
PROFILE = .profile
INSTALL = install
OPEN = xdg-open
2024-01-06 05:38:53 -06:00
endif
install: $(DEFAULT_TARGETS)
2024-01-06 05:38:53 -06:00
### SHELL COMFY ################################################################
$(HOME)/.aliases/%: .aliases/%
$(INSTALL) -D -m 644 $< $@
2024-01-06 05:38:53 -06:00
aliases: $(ALIASES)
$(HOME)/.profile.d:
mkdir $@
$(HOME)/.profile.d/%: .profile.d/% $(HOME)/.profile.d
cp $< $@
profileds: $(PROFILEDS)
$(HOME)/.bash_profile: $(PROFILE)
2024-01-06 05:38:53 -06:00
cp $< $@
$(HOME)/.profile.%: .profile.%
2024-05-22 14:39:42 -05:00
cp $< $@
$(HOME)/.bashrc: .bashrc
cp $< $@
2024-04-25 07:48:32 +00:00
$(HOME)/.inputrc: .inputrc
cp $< $@
$(HOME)/.bashrc.%: .bashrc.%
2024-04-25 07:42:47 +00:00
cp $< $@
2024-01-06 05:38:53 -06:00
/opt/local/etc/bashrc: .bashrc
sudo cp $< $@
/opt/local/etc/bashrc.%: .bashrc.%
2024-01-06 05:38:53 -06:00
sudo cp $< $@
### TERMINAL EMULATOR ##########################################################
2024-01-06 05:38:53 -06:00
$(HOME)/.config/alacritty/alacritty.toml: .config/alacritty/alacritty.toml
$(INSTALL) -D -m 644 $< $@
alacritty: $(HOME)/.config/alacritty/alacritty.toml
### SWAY #######################################################################
$(HOME)/.sway/config: .sway/config
$(INSTALL) -D -m 644 $< $@
$(HOME)/.config/i3status/config: .config/i3status/config
$(INSTALL) -D -m 644 $< $@
i3status: $(HOME)/.config/i3status/config
sway: $(HOME)/.sway/config $(HOME)/.config/i3status/config
### VIM ########################################################################
$(HOME)/.vimrc: .vimrc
cp $< $@
$(HOME)/.vim/bundle:
mkdir -p $@
2024-01-06 05:38:53 -06:00
$(HOME)/.vim/bundle/Vundle.vim: $(HOME)/.vim/bundle
2024-02-16 07:13:15 -06:00
git clone https://github.com/VundleVim/Vundle.vim.git $@ || cd $@; git pull; exit 0
2024-01-06 05:38:53 -06:00
2024-10-16 13:11:39 -05:00
### PIPEWIRE ###################################################################
$(HOME)/.config/pipewire/pipewire.conf: .config/pipewire/pipewire.conf
$(INSTALL) -D -m 644 $< $@
restart-pw:
systemctl restart --user pipewire{,-pulse}{.service,.socket}
### X.ORG CRAP #################################################################
$(HOME)/.Xmodcapslock: x-crap/.Xmodcapslock
cp $< $@
$(HOME)/.Xdefaults: x-crap/.Xdefaults
cp $< $@
$(HOME)/.Xresources: x-crap/.Xresources
cp $< $@
$(HOME)/.xinitrc: x-crap/.xinitrc
cp $< $@
x-crap: $(HOME)/.Xmodcapslock $(HOME)/.Xdefaults $(HOME)/.Xresources $(HOME)/.xinitrc
### "PHONY" TARGETS ############################################################
.PHONY: aliases profileds README x-crap sway i3status restart-pw pipewire alacritty
### README #####################################################################
pub.css:
wget https://github.com/manuelp/pandoc-stylesheet/raw/acac36b976966f76544176161ba826d519b6f40c/pub.css
# Requires Pandoc to be installed
README.html: README.md pub.css
pandoc $< -s -c pub.css -o README.html
$(OPEN) README.html
README: README.html