X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=Makefile;h=fe48ead1705d8ec382847d97fb39c367be9f8fa0;hb=9e4b0a7a58b3d7803c171eab2d146237b55521c0;hp=d083411aae6bf46e8bb17a9c70b907d31dd7e67c;hpb=5766752382003533273c91d4349f4f99894a5212;p=khome.git diff --git a/Makefile b/Makefile index d083411..fe48ead 100644 --- a/Makefile +++ b/Makefile @@ -1,31 +1,37 @@ MAKEFLAGS := --no-builtin-rules -DPKG_SELECTIONS := system/debian/dpkg-selections -APT_SOURCES := system/debian/apt-sources.list +.PHONY: home pkgs_install pkgs_purge pkgs deps -.PHONY: update install install_packages - -install: - @cp -Rp home/bin $(HOME)/ - @cp -Rp home/lib $(HOME)/ +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/.xbindkeysrc $(HOME)/ - -# May still need to run: -# 1. dselect update -# 2. interactive dselect with install, -# 3. apt update -# 4. apt upgrade -install_packages: $(DPKG_SELECTIONS) - @dpkg --set-selections < $< - @apt-get -u dselect-upgrade - -update: - @dpkg --get-selections > $(DPKG_SELECTIONS) - @cp /etc/apt/sources.list $(APT_SOURCES) + @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)/ + +pkgs: + $(MAKE) pkgs_install + $(MAKE) pkgs_purge + $(MAKE) pkgs_snap_classic + +pkgs_install: list pkgs-install + sudo apt install $(shell ./list pkgs-install) + +pkgs_purge: list pkgs-purge + sudo apt purge $(shell ./list pkgs-purge) + +pkgs_snap_classic: list pkgs-snap-classic + @$(MAKE) $(foreach p,$(shell ./list pkgs-snap-classic),pkg_snap_classic_$(p)) + +# Depends on 'snapd' deb pkg being already installed +pkg_snap_classic_%: + sudo snap install --classic $* + +deps: + @$(foreach d,$(wildcard deps/*),cd $(d) && make)