include config.mk define vinstall export XBPS_ARCH=$(VOID_ARCH) && xbps-install -Suy -R $(VOID_REPO) -r $(MNTDIR) $(1) endef mnt-drive: mount $(DRIVE) $(MNTDIR) mnt-system: mkdir -p $(MNTDIR)/dev mkdir -p $(MNTDIR)/proc mkdir -p $(MNTDIR)/sys mkdir -p $(MNTDIR)/run mount --rbind /dev $(MNTDIR)/dev mount --rbind /proc $(MNTDIR)/proc mount --rbind /sys $(MNTDIR)/sys mount --rbind /run $(MNTDIR)/run mount --make-rslave $(MNTDIR)/dev mount --make-rslave $(MNTDIR)/proc mount --make-rslave $(MNTDIR)/sys mount --make-rslave $(MNTDIR)/run umnt: umount -R $(DRIVE) base: $(call vinstall,base-system) set-loc: echo $(BVLANG) >> $(MNTDIR)/etc/default/libc-locales chroot $(MNTDIR) xbps-reconfigure glibc-locales set-term: $(call vinstall,st-terminfo) set-root: chroot $(MNTDIR) chown root:root / chroot $(MNTDIR) chmod 755 / chroot $(MNTDIR) passwd root set-resolv: cp files/resolv.conf.head $(MNTDIR)/etc/resolv.conf.head cp files/resolv.conf.head $(MNTDIR)/etc/resolv.conf 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 grub: $(call vinstall,grub) mkdir $(MNTDIR)/boot/grub chroot $(MNTDIR) grub-mkconfig -o /boot/grub/grub.cfg chroot $(MNTDIR) grub-install $(BOOTLDR) wifi: $(call vinstall,NetworkManager) xorg: $(call vinstall,xorg) audio: $(call vinstall,alsa-utils) $(call vinstall,pulseaudio) $(call vinstall,apulse) $(call vinstall,alsa-plugins-pulseaudio) metal: mnt-drive mnt-system base set-loc set-resolv set-fstab set-root grub tools: $(call vinstall,base-devel git tcc wget vim-x11 tmux) post-install: cp post-install.sh $(MNTDIR)/usr/local/bin/ chmod 755 $(MNTDIR)/usr/local/bin/post-install.sh chroot $(MNTDIR) /usr/local/bin/post-install.sh laptop: metal wifi xorg audio archive: tar -cvpjf void-fs.tar.bz2 \ --exclude=./dev/* \ --exclude=./proc/* \ --exclude=./sys/* \ --exclude=./tmp/* \ --exclude=./run/* \ -C $(MNTDIR) . base-from-archive: tar -xpf $(VOID_ARCHIVE) -C $(MNTDIR)