include config.mk

define vinstall
	export XBPS_ARCH=$(VOID_ARCH) && xbps-install -Suy -R $(VOID_REPO) -r $(MNTDIR) $(1)
endef

base-fs:
	$(call vinstall,base-files)

mnt-system:
	mount -t proc proc $(MNTDIR)/proc
	mount -t sysfs sys $(MNTDIR)/sys
	mount -o bind /dev $(MNTDIR)/dev
	mount -t devpts pts $(MNTDIR)/dev/pts

umnt-system:
	umount $(MNTDIR)/proc
	umount $(MNTDIR)/sys
	umount $(MNTDIR)/dev/pts
	umount $(MNTDIR)/dev

mnt-drive:
	mount $(DRIVE) $(MNTDIR)

umnt-drive:
	umount $(DRIVE)

base: base-fs mnt-system
	$(call vinstall,base-system)

base-from-archive:
	tar -xpf $(VOID_ARCHIVE) -C $(MNTDIR)
	mount -t proc proc $(MNTDIR)/proc
	mount -t sysfs sys $(MNTDIR)/sys
	mount -o bind /dev $(MNTDIR)/dev
	mount -t devpts pts $(MNTDIR)/dev/pts

set-term:
	cp -r files/terminfo $(MNTDIR)/usr/share/
	chmod -R 755 $(MNTDIR)/usr/share/terminfo

set-resolv:
	cp files/resolv.conf.head $(MNTDIR)/etc/resolv.conf.head
	cp files/resolv.conf.head $(MNTDIR)/etc/resolv.conf

tools:
	$(call vinstall,base-devel git tcc wget vim-x11 tmux)

archive:
	tar -cvpjf void-fs.tar.bz2 \
	--exclude=./dev/* \
	--exclude=./proc/* \
	--exclude=./sys/* \
	--exclude=./tmp/* \
	--exclude=./run/* \
	-C $(MNTDIR) .

set-fstab:
	cp files/fstab $(MNTDIR)/etc/fstab
	echo "$(shell file -s $(DRIVE)|tr ' ' '\n'|grep UUID) / ext4 rw,noatime,discard 0 1" >> $(MNTDIR)/etc/fstab

scripts:
	cp scripts/* $(MNTDIR)/usr/local/bin/
	chmod 755 $(MNTDIR)/usr/local/bin/*

lilo: set-fstab scripts
	$(call vinstall,lilo)
	chroot $(MNTDIR) lilo-conf-mkr.sh $(LBOOT)