X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=Makefile;h=261b5a5eac59fd2610d84285a4966290dea66d09;hb=af6e57a29f394428d2fd5a1ddbf57b8c9eadb454;hp=8005c2c65fca519e98432b182dde27f2df74ba50;hpb=576ba7eda33bf81d0b7489bfc8f69e66b4fd1f29;p=khome.git diff --git a/Makefile b/Makefile index 8005c2c..261b5a5 100644 --- a/Makefile +++ b/Makefile @@ -1,21 +1,51 @@ MAKEFLAGS := --no-builtin-rules -DPKG_SELECTIONS := system/debian/dpkg-selections -APT_SOURCES := system/debian/apt-sources.list +DEPS := $(wildcard deps/*) -.PHONY: update install install_packages +.PHONY: home pkgs_deb_install pkgs_deb_purge pkgs deps $(DEPS) pkgs_snap_classic pkgs_snap_strict -install: - @cp -Rp home/bin $(HOME)/ - @cp -Rp home/lib $(HOME)/ - @cp home/.profile $(HOME)/ - @cp home/.fonts.conf $(HOME)/ - @fc-cache $(HOME)/.fonts +home: + @cp -Rp home/bin $(HOME)/ + @cp -Rp home/lib $(HOME)/ + @cp home/.compton.conf $(HOME)/ + @cp -Rp home/.config/ $(HOME)/ + @cp home/.profile $(HOME)/ + @cp home/.fonts.conf $(HOME)/ + @fc-cache $(HOME)/.fonts + @cp home/.Rprofile $(HOME)/ + @cp home/.mpdconf $(HOME)/ + @cp home/.tmux.conf $(HOME)/ + @cp home/.xbindkeysrc $(HOME)/ -install_packages: $(DPKG_SELECTIONS) - @dpkg --set-selections < $< - @apt-get -u dselect-upgrade +pkgs: + $(MAKE) pkgs_deb_install + $(MAKE) pkgs_deb_purge + $(MAKE) pkgs_snap_classic + $(MAKE) pkgs_snap_strict -update: - @dpkg --get-selections > $(DPKG_SELECTIONS) - @cp /etc/apt/sources.list $(APT_SOURCES) +pkgs_deb_install: list pkgs-deb-install.list + sudo apt install $(shell ./list pkgs-deb-install.list) + +pkgs_deb_purge: list pkgs-deb-purge.list + sudo apt purge $(shell ./list pkgs-deb-purge.list) + +pkgs_snap_classic: list pkgs-snap-classic.list + @$(MAKE) $(foreach p,$(shell ./list pkgs-snap-classic.list),pkg_snap_classic_$(p)) + +pkgs_snap_strict: list pkgs-snap-strict.list + @$(MAKE) $(foreach p,$(shell ./list pkgs-snap-strict.list),pkg_snap_strict_$(p)) + +# 'snap' command comes from 'snapd' deb pkg +pkg_snap_classic_%: + sudo snap install --classic $* +pkg_snap_strict_%: + sudo snap install $* + +deps: $(DEPS) + +define GEN_DEP_RULE +$(1): + cd $1 && make +endef + +$(foreach d,$(DEPS),$(eval $(call GEN_DEP_RULE,$(d))))