barzvoid/Makefile

83 lines
1.8 KiB
Makefile

include config.mk
define vinstall
export XBPS_ARCH=$(VOID_ARCH) && xbps-install -Suy -R $(VOID_REPO) -r $(MNTDIR) $(1)
endef
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-system:
umount $(MNTDIR)/proc
umount $(MNTDIR)/sys
umount $(MNTDIR)/dev
umount $(MNTDIR)/run
mnt-drive:
mount $(DRIVE) $(MNTDIR)
umnt-drive: umnt-system
umount $(DRIVE)
base:
$(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:
$(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
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
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)
metal: mnt-drive mnt-system base set-resolv set-fstab set-root grub
laptop: metal wifi