##EFI, no swap, ext4, OpenRc ####################### chroot to middle of install mount /dev/sda3 /mnt/gentoo && \ mount /dev/sda1 /mnt/gentoo/efi && \ mount --types proc /proc /mnt/gentoo/proc && \ mount --rbind /sys /mnt/gentoo/sys && \ mount --make-rslave /mnt/gentoo/sys && \ mount --rbind /dev /mnt/gentoo/dev && \ mount --make-rslave /mnt/gentoo/dev && \ mount --bind /run /mnt/gentoo/run && \ mount --make-slave /mnt/gentoo/run && \ chroot /mnt/gentoo /bin/bash source /etc/profile && export PS1="(chroot) ${PS1}" ####################### ## ssh set up rc-service sshd start && passwd ## partitioning && mount cfdisk /dev/sda #GPT, sda1 type - efi, sda2 type - Linux root (x86-64) mkfs.fat -F 32 /dev/sda1 && \ mkfs.ext4 /dev/sda2 && \ mkdir --parents /mnt/gentoo && \ mount /dev/sda3 /mnt/gentoo && \ mkdir --parents /mnt/gentoo/boot \ mount /dev/sda1 /mnt/gentoo/boot ## download and extract stage3 cd /mnt/gentoo links https://www.gentoo.org/downloads/mirrors/ tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner ## portage set nano /mnt/gentoo/etc/portage/make.conf COMMON_FLAGS="-march=native -O2 -pipe" MAKEOPTS="-j2 -l4" USE="-gtk -gnome qt5 kde alsa" VIDEO_CARDS="intel" ACCEPT_LICENSE="*" GRUB_PLATFORMS="efi-64" ## chroot time cp --dereference /etc/resolv.conf /mnt/gentoo/etc/ && \ mount --types proc /proc /mnt/gentoo/proc && \ mount --rbind /sys /mnt/gentoo/sys && \ mount --make-rslave /mnt/gentoo/sys && \ mount --rbind /dev /mnt/gentoo/dev && \ mount --make-rslave /mnt/gentoo/dev && \ mount --bind /run /mnt/gentoo/run && \ mount --make-slave /mnt/gentoo/run && \ chroot /mnt/gentoo /bin/bash source /etc/profile && export PS1="(chroot) ${PS1}" ## portage repo mkdir --parents /etc/portage/repos.conf && \ cp /usr/share/portage/config/repos.conf /etc/portage/repos.conf/gentoo.conf && \ cat /etc/portage/repos.conf/gentoo.conf emerge-webrsync && \ emerge app-portage/mirrorselect && \ mirrorselect -i -o >> /etc/portage/make.conf ## profile select eselect profile list eselect profile set {{number}} ## CPU flags emerge app-portage/cpuid2cpuflags && \ echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags ## Updating the @world set emerge --ask --verbose --update --deep --newuse @world emerge --ask --depclean ## Timezone echo "Europe/Prague" > /etc/timezone && \ emerge --config sys-libs/timezone-data ## Locale nano /etc/locale.gen locale-gen eselect locale list eselect locale set {{number}} env-update && source /etc/profile && export PS1="(chroot) ${PS1}" ## Linux Firmware for non-FOSS emerge sys-kernel/linux-firmware && \ emerge --depclean && \ emerge sys-kernel/installkernel && \ emerge sys-kernel/gentoo-sources && \ emerge sys-kernel/dracut && \ emerge sys-kernel/genkernel genkernel --no-mountboot --install all eselect kernel list eselect kernel set 1 genkernel --no-mountboot --install all ## Fstab set nano /etc/fstab /dev/sda1 /efi vfat umask=0077 0 2 /dev/sda2 none swap sw 0 0 /dev/sda3 / xfs defaults,noatime 0 1 ## Networking echo gentoo > /etc/hostname emerge --ask --noreplace net-misc/netifrc nano /etc/conf.d/net config_enp0s18="192.168.6.9 netmask 255.255.255.0 brd 192.168.6.255" #config_eth0="dhcp" routes_enp0s18="default via 192.168.6.1" cd /etc/init.d && \ ln -s net.lo net.enp0s18 && \ rc-update add net.enp0s18 default nano /etc/hosts ## Password passwd ## RC-init set, Cron, Time synchronization, Ext4 manipulation nano /etc/rc.conf nano /etc/conf.d/keymaps emerge app-admin/sysklogd && \ rc-update add sysklogd default && \ emerge sys-process/cronie && \ rc-update add cronie default && \ rc-update add sshd default && \ emerge net-misc/chrony && \ rc-update add chronyd default && \ emerge sys-fs/e2fsprogs ## Grub install emerge sys-boot/grub grub-install --efi-directory=/efi grub-mkconfig -o /boot/grub/grub.cfg ## Done exit cd && umount -l /mnt/gentoo/dev{/shm,/pts,} && umount -R /mnt/gentoo && shutdown now