100 lines
2.3 KiB
Makefile
100 lines
2.3 KiB
Makefile
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 $(MNTDIR)
|
|
|
|
base:
|
|
$(call vinstall,base-system)
|
|
|
|
set-loc:
|
|
echo $(BVCLOC) >> $(MNTDIR)/etc/default/libc-locales
|
|
chroot $(MNTDIR) xbps-reconfigure -f 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: tools
|
|
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
|
|
chroot $(MNTDIR) ln -s /usr/share/zoneinfo/$(TIMEZN) /etc/localtime
|
|
echo $(HSTNM) > $(MNTDIR)/etc/hostname
|
|
cp first-boot.sh $(MNTDIR)/usr/local/bin/first-boot.sh
|
|
chmod 755 $(MNTDIR)/usr/local/bin/first-boot.sh
|
|
|
|
nuser:
|
|
chroot $(MNTDIR) useradd $(NUSRNAME) -G wheel
|
|
chroot $(MNTDIR) passwd $(NUSRNAME)
|
|
|
|
laptop: metal wifi xorg audio post-install nuser
|
|
|
|
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)
|
|
|