Script para automatizar instalação do Gentoo

Publicado por Enio Ferlin (última atualização em 24/07/2023)

[ Hits: 4.462 ]

Homepage: http://lattes.cnpq.br/0097812690686190

Download gentooinstallscript2.sh

Download gentoo_install_script.sh (versão 2)




A ideia desse script é permitir as configurações logo ao início deixando a compilação e configuração autônoma, evitando ter que verificar passos após instalação de pacotes.

Para isso, leia os passos desse script e modifique qualquer linha que ache necessário, porém as configurações visam uma boa acomodação com a maior parte dos hardwares presentes, com enfoque maior em plataforma Intel.

Ele deve ser usado após o chroot inicial!

  



Versões atualizadas deste script

Versão 2 - Enviado por Enio Ferlin em 08/07/2023

Changelog: Adição de bluetooth no USE
Remoção das flags iwd e dhcpcd do networkmanager (conflito que não permitia encontrar as redes disponíveis)
Adição dos apps efibootmgr minidlna rtorrent newsboat cowsay fortune-mod cmatrix
Remoção do collision-protect (conflito com cpio)
Adicionado módulo tun do kernel, para o podman

Download gentoo_install_script.sh


Esconder código-fonte

#Script de automatização da instalação do Gentoo. 
#
#   A ideia desse script é permitir as configurações logo ao início
#deixando a compilação e configuração autônoma, evitando ter que
#verificar passos após instalação de pacotes. 
#   Para isso, leia os passos desse script e modifique qualquer passo que
#ache necessário, porém as configurações visam uma boa acomodação com
#a maior parte dos hardwares presentes, mas com enfoque maior em plataforma Intel.
#   Logo, uma vez montado a partição ou
#HD, extraído o stage escolhido e já dentro do chroot do sistema Gentoo, 
#é só copiar esse script, dar permissão de execução com 
#"chmod +x gentooinstallscript2.sh"
#e executá-lo com "./gentooinstallscript2.sh".
echo "pt_BR ISO-8859-1" >> /etc/locale.gen && \
echo "pt_BR.UTF-8 UTF-8" >> /etc/locale.gen && \
locale-gen && \
echo "LANG="pt_BR.UTF-8" \
LC_COLLATE="C" " >> /etc/env.d/02locale && \
env-update && source /etc/profile && \
emerge-webrsync && \
clear && \
echo "Digite sua senha root" && \
passwd && \
clear && \
eselect profile list && \
echo "Digite o número do profile desejado"
read PROFILE && \
eselect profile set $PROFILE && \
emerge cpuid2cpuflags && \
clear && \

#Make.conf mínimo, altere conforme suas configurações
echo 'CFLAGS="-march=native -mtune=native -O2 -pipe"
#CFLAGS="-march=native -mtune=native -O3 -pipe"
CXXFLAGS="${CFLAGS}"
FFLAGS="${CFLAGS}"
FCFLAGS="${FFLAGS}"
CHOST="x86_64-pc-linux-gnu"
FEATURES="parallel-fetch collision-protect noman noinfo nodoc"
ACCEPT_KEYWORDS="amd64"
GRUB_PLATFORMS="efi-32 efi-64 pc"

MAKEOPTS="-s -j4"
EMERGE_DEFAULT_OPTS="--jobs=4 --load-average=4 --autounmask-write=y --with-bdeps=y --keep-going=y"
ACCEPT_LICENSE="**"
ACCEPT_PROPERTIES="-interactive"
PORTDIR="/var/db/repos/gentoo"
DISTDIR="/var/cache/distfiles"
PKGDIR="/var/cache/binpkgs"
PORTAGE_NICENESS=10
AUTOCLEAN="yes"

LINGUAS="pt_BR.UTF-8 pt_BR.ISO8859-1 pt_BR.iso8859-1 pt_BR pt-BR"
L10N="pt_BR"

INPUT_DEVICES="libinput"

VIDEO_CARDS="intel i965 iris"

USE="X wayland xwayland -consolekit -systemd pulseaudio alsa pgo lto graphite drm imlib eudev udisks mtp nls icu elogind opencl opengl dri dri3 v4l libcaca vpx srt theora ogg vorbis vulkan x264 x265 matroska mkv aac lame mp3 webp tiff jpeg png raw gstreamer openssl ffmpeg googledrive pdfimport staging mono gecko gles2"

GENTOO_MIRRORS="http://gentoo.c3sl.ufpr.br/ \
                ftp://gentoo.c3sl.ufpr.br/gentoo/ \
                http://distfiles.gentoo.org/ \
                rsync://gentoo.c3sl.ufpr.br/gentoo/" ' > /etc/portage/make.conf && \
echo "*/* $(cpuid2cpuflags)" > /etc/portage/package.use/00cpu-flags && \
nano /etc/portage/make.conf && \
cd /etc/portage/package.use/ && sed -i 's/CPU_FLAGS_X86:/CPU_FLAGS_X86=/g' 00cpu-flags && \
nano /etc/portage/package.use/00cpu-flags && \
blkid && \
echo "Digite o nome do HD que irá armazenar o sistema (ex. sda)" && \
read HARDDISK
echo "Se seu sistema for UEFI, defina a partição para a criação do /boot/efi" && \
read EFIPART && \
mkdir -p /boot/efi && \
mount -t vfat /dev/$EFIPART /boot/efi && \
echo "Digite a partição root" && \
read ROOTPART && \
echo "/dev/$ROOTPART / ext4 noatime 0 1
/dev/$EFIPART /boot/efi vfat defaults,noatime 0 2
#/dev/sdb3 /home ext4 defaults 0 0
#proc /proc proc defaults 0 0
#tmpfs /dev/shm tmpfs defaults 0 0
#tmpfs /var/tmp/portage tmpfs rw,nodev,nosuid,size=8G
#devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620 0 0
" > /etc/fstab && \
nano /etc/fstab && \
echo "Digite o nome da máquina na rede" && \
read HOSTNAME && \
echo "hostname=$HOSTNAME" > /etc/conf.d/hostname && \
echo "sys-kernel/linux-firmware @BINARY-REDISTRIBUTABLE 
app-arch/unrar unRAR" | tee -a /etc/portage/package.license && \
emerge -1 sys-kernel/gentoo-kernel-bin && emerge app-admin/gentoo-perl-helpers && \
etc-update --automode -5 && \
emerge -1 sys-kernel/gentoo-kernel-bin && emerge app-admin/gentoo-perl-helpers && \
#Teclado e fuso horário
cd /etc/conf.d/ && sed -i 's/keymap="us"/keymap="br-abnt2"/g' keymaps && \
cp /usr/share/zoneinfo/America/Sao_Paulo /etc/localtime && \
echo "dev-lang/mono minimal
media-libs/libsndfile minimal
media-libs/freetype harfbuzz
sys-boot/grub mount
dev-util/ostree curl
dev-lang/python -bluetooth
media-libs/imlib2
media-libs/mesa -llvm -opencl -vaapi
net-dns/dnsmasq dbus
net-misc/networkmanager -gtk-doc iwd dhcpcd connection-sharing bluetooth iptables
www-client/w3m X fbcon gdk-pixbuf gpm unicode -imlib
" >> /etc/portage/package.use/packagesset && \
env-update && source /etc/profile && etc-update --automode -5 && \
emerge --update --newuse --deep --with-bdeps=y @world && \
etc-update --automode -5 && \
emerge linux-firmware sof-firmware dhcpcd dev-vcs/git syslog-ng cronie mlocate networkmanager mesa dvtm irssi w3m nload gentoolkit wpa_supplicant iwd superadduser grub os-prober xorg-server xinit mpv yt-dlp htop unrar zip unzip p7zip sys-apps/flatpak sys-auth/seatd gui-libs/xdg-desktop-portal-wlr feh picom scrot mpd ncmpcpp bluez media-libs/libva-intel-driver && \
etc-update --automode -5 && \
emerge linux-firmware sof-firmware dhcpcd dev-vcs/git syslog-ng cronie mlocate networkmanager mesa dvtm irssi w3m nload gentoolkit wpa_supplicant iwd superadduser grub os-prober xorg-server xinit mpv yt-dlp htop unrar zip unzip p7zip sys-apps/flatpak sys-auth/seatd gui-libs/xdg-desktop-portal-wlr feh picom scrot mpd ncmpcpp bluez media-libs/libva-intel-driver && \
rc-update add NetworkManager default && rc-update add syslog-ng default && rc-update add cronie default && rc-update add seatd default && \
etc-update --automode -5 && \
emerge @preserved-rebuild && \
eclean distfiles && \
eclean packages && \
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Gentoo Linux [GRUB]" --recheck /dev/$HARDDISK && \
#grub-install --target=i386-efi --efi-directory=/boot/efi --bootloader-id="Gentoo Linux [GRUB]" --recheck /dev/$HARDDISK && \
#grub-install --target=i386-pc --no-floppy /dev/$HARDDISK && \
grub-mkconfig -o /boot/grub/grub.cfg && \
echo "Finalizado o script! Reinicie quando for conveniente!
Com essa instalação você já tem conexão com internet (networkmanager),
 irssi (cliente mirc), w3m (navegador cli) , mpv (player multimídia), suporte a flatpak, podman, xorg e wayland"

Scripts recomendados

Script para pegar ip WAN para firewall com uma ou mais links de internet

Wake up, neo... 0.2

Script simples para verificar usuários logados na maquina e as postas abertas

Screenserver no modo texto - versão 2

Atualizando KDE 3x para KDE4.1 no Slackware 12


  

Comentários
[1] Comentário enviado por albfneto em 25/07/2023 - 16:14h

Vou testar o script. Favoritado.


¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
Albfneto,
Ribeirão Preto, S.P., Brasil.
Usuário Linux, Linux Counter: #479903.
Distros Favoritas: [i] Sabayon, Gentoo, OpenSUSE, Mageia e OpenMandriva[/i].


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts