#!/bin/bash SWAP=/dev/sda2 SYS=/dev/sda1 CHROOT=/mnt/gentoo STAGE3=stage3-amd64-20170907.tar.bz2 SNAPSHOT=portage-20171006.tar.bz2 REPO=https://repo.jmanson.fr mkfs.ext4 $SYS mkswap $SWAP swapon $SWAP mount $SYS $CHROOT wget $REPO/$STAGE3 wget $REPO/$SNAPSHOT tar xjpf $STAGE3 -C $CHROOT --xattrs --numeric-owner tar xjpf $SNAPSHOT -C $CHROOT/usr chmod 1777 $CHROOT/tmp mount -t proc /proc $CHROOT/proc mount --rbind /sys $CHROOT/sys mount --make-rslave $CHROOT/sys mount --rbind /dev $CHROOT/dev mount --make-rslave $CHROOT/dev test -L /dev/shm && rm /dev/shm && mkdir /dev/shm mount -t tmpfs -o nosuid,nodev,noexec shm /dev/shm chmod 1777 /dev/shm echo "Europe/Paris" > $CHROOT/etc/timezone cp /etc/resolv.conf $CHROOT/etc/resolv.conf mirrorselect -i -c FR -o >> $CHROOT/etc/portage/make.conf NJOBS=$(grep '^processor' /proc/cpuinfo | sort -u | wc -l) MAKEOPTS="-j$((NJOBS+1)) -l${NJOBS}" echo MAKEOPTS='"'$MAKEOPTS'"' >> $CHROOT/etc/portage/make.conf EMERGE_DEFAULT_OPTS="--jobs=${NJOBS} --load-average=${NJOBS}" echo EMERGE_DEFAULT_OPTS='"'$EMERGE_DEFAULT_OPTS'"' >> $CHROOT/etc/portage/make.conf mkdir $CHROOT/etc/portage/repos.conf cp $CHROOT/usr/share/portage/config/repos.conf $CHROOT/etc/portage/repos.conf/gentoo.conf chroot $CHROOT /bin/bash -c "emerge --config sys-libs/timezone-data" echo "fr_FR.UTF-8 UTF-8" >> $CHROOT/etc/locale.gen chroot $CHROOT /bin/bash -c "locale-gen" echo 'LANG="fr_FR.UTF-8"' > $CHROOT/etc/env.d/02locale echo 'LC_COLLATE="C"' >> $CHROOT/etc/env.d/02locale echo "app-admin/sudo -sendmail" >> $CHROOT/etc/portage/package.use/sudo.use chroot $CHROOT /bin/bash -c "emerge sudo" echo 'GRUB_PLATFORMS="pc"' >> $CHROOT/etc/portage/make.conf echo "sys-boot/grub -fonts -themes" >> $CHROOT/etc/portage/package.use/grub.use chroot $CHROOT /bin/bash -c "emerge genkernel" chroot $CHROOT /bin/bash -c "emerge gentoo-sources" chroot $CHROOT /bin/bash -c "emerge grub" echo MAKEOPTS='"'-j${NJOBS}'"' >> $CHROOT/etc/genkernel.conf chroot $CHROOT /bin/bash -c "genkernel all" chroot $CHROOT /bin/bash -c "grub-install /dev/sda" chroot $CHROOT /bin/bash -c "grub-mkconfig -o /boot/grub/grub.cfg" echo 'GRUB_CMDLINE_LINUX_DEFAULT="quiet"' >> $CHROOT/etc/default/grub chroot $CHROOT /bin/bash -c "useradd -p \`openssl passwd -1 password\` -G wheel joe" echo "%wheel ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/wheel sed -i 's/keymap="us"/keymap="fr"/g' $CHROOT/etc/conf.d/keymaps