#Arch Linux
#Personalizar ISO do Arch Linux.
#1 - Instalar o pacote archiso
$sudo pacman -S archiso
#2 - Verificar e copiar pasta para diretório do usuário.
$ls -l /usr/share/archiso/configs/
#Verifique as pastas:
#Configuração minimalista, que inclui apenas os pacotes mínimos necessários para arrancar o ambiente vivo a partir do meio
#Utilizado para criar a ISO oficial de instalação mensal. Ela pode ser usada como ponto de partida para a criação de uma imagem ISO personalizada.
#copiar o conteúdo da pasta 'releng' para diretório do usuário fornecendo um nome da pasta (no meu exemplo #'archlive').
$cp -r /usr/share/archiso/configs/releng/ archlive
#3 - editar o arquivo 'package.x86_64' para selecionar os pacotes que quer incluir.
#
# no final do texto incluir os pacotes abaixo
#
#*****************Configuração pessoal******************
#
#******************Vídeo******************
xorg
xf86-video-intel
xf86-video-amdgpu
nvidia
nvidia-settings
#nvidia-utils
networkmanager
network-manager-applet
#***************** XFCE4 *******************
#xfce4-goodies
#xfce4-terminal
#*************** CINNAMON ******************
#cinnamon-translations
#nemo-terminal
#************** PLASMA *********************
plasma
konsole
dolphin
#************* SOFTWARES COMPLEMENTARES *********
gnome-calculator
gnome-disk-utility
firefox
gvfs
pulseaudio
pavucontrol
file-roller
gparted
sddm
bluez
bluez-utils
blueman
pulseaudio-bluetooth
xdg-user-dirs
gsmartcontrol
mousepad
#*************** Softwares opcionais **************
okular
ristretto
cheese
libreoffice-still
flatpak
cups
system-config-printer
vlc
gimp
thunderbird
thunderbird-i18n-pt-br
#***************************************END*************************
#
#4 - Pacote multlib
# editar 'pacman.conf' e descomentar(remover #) as linhas abaixo:
[multilib]
Include = /etc/pacman.d/mirrorlist
#
#5 - Adicionar arquivos no diretório root e de usuários
#Para adicionar um arquivo ao diretório home do usuário instalador,coloque-o em archlive/airootfs/root/.
#Para adicionar um arquivo a todos os outros diretórios residenciais dos usuários, coloque-o em #archlive/airootfs/etc/skel/
# se necessário crie a pasta/diretório 'skel' com comando mkdir.
#
#6 - systemd units
# habilitar display-manager.service ('sddm' no meu caso)
#crie o link para habilitação
$ln -s /usr/lib/systemd/system/sddm.service ~/archlive/airootfs/etc/systemd/system/display-manager.service
# habilitar bluetooth caso instalar os pacotes
#crie a pasta bluetooth.target.wants
$mkdir ~/archlive/airootfs/etc/systemd/system/bluetooth.target.wants
#crie o link dentro da pasta
$ln -s /usr/lib/systemd/system/bluetooth.service ~/archlive/airootfs/etc/systemd/system/bluetooth.target.wants/bluetooth.service
# habilitar cups (printer) caso instale os pacotes
# crie a pasta printer.target.wants
$makdir ~/archlive/airootfs/etc/systemd/system/printer.target.wants
#crie os link dentro da pastaprinter.target.wants e multi-user.target.wants
$ln -s /usr/lib/systemd/system/cups.service ~/archlive/airootfs/etc/systemd/system/printer.target.wants/cups.service
$ln -s /usr/lib/systemd/system/cups.service ~/archlive/airootfs/etc/systemd/system/multi-user.target.wants/cups.service
# crie o link para NetworkManager
$ln -s /usr/lib/systemd/system/NetworkManager.service ~/archlive/airootfs/etc/systemd/system/multi-user.target.wants/NetworkManager.service
# usuários (liveuser) e senhas
# Para criar um usuário que estará disponível no ambiente live, você deve editar manualmente #archlive/airootfs/etc/passwd,
# archlive/airootfs/etc/shadow, archlive/airootfs/etc/group e archlive/airootfs/etc/gshadow.
# se necessário crie os arquivos abaixo e configure conforme indicado.
# os arquivos ficam no diterótio ~/archlive/airootfs/etc
#
# archlive/airootfs/etc/passwd:
root:x:0:0:root:/root:/usr/bin/zsh
liveuser:x:1000:1000::/home/liveuser:/bin/bash
#
# archlive/airootfs/etc/shadow:
root::14871::::::
liveuser::14871::::::
#
# archlive/airootfs/etc/group:
root:x:0:root
adm:x:4:liveuser
wheel:x:10:liveuser
uucp:x:14:liveuser
liveuser:x:1000:
#
# archlive/airootfs/etc/gshadow:
root:!*::root
liveuser:!*::
#
# Certifique-se de que /etc/shadow e /etc/gshadow tenham as permissões corretas:
# archlive/profiledef.sh:
file_permissions=(...
["/etc/shadow"]="0:0:0400"
["/etc/gshadow"]="0:0:0400"
)
#
#Criar a pasta 'sudoers.d' na pasta 'etc' para dar permissão ao usuário 'liveuser'.
$mkdir ~/archlive/airootfs/etc/sudoers.d
#crie o arquivo 'g_wheel'
$touch ~/archlive/airootfs/etc/sudoers.d/g_wheel
$nano ~/archlive/airootfs/etc/sudoers.d/g_wheel
# edite o arquivo g_wheel incluindo o texto '%wheel ALL=(ALL:ALL) NOPASSWD: ALL' (sem as aspas) e salve com #control+o e para sair control+x.
#confirme com o cat o texto acima.
$cat ~/archlive/airootfs/etc/sudoers.d/g_wheel
#
# Na pasta 'syslinux' Edite o arquivo 'archiso_sys-linux.cfg' e altere as duas linhas incluindo ** cow_spacesize=512M #copytoram=n ** Padrão 256M **
APPEND archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID% cow_spacesize=512M copytoram=n
APPEND archisobasedir=%INSTALL_DIR% archisodevice=UUID=%ARCHISO_UUID% accessibility=on cow_spacesize=512M copytoram=n
#
# Edite o arquivo grub.cfg na pasta grub
# Altere as linhas abaixo para incluir cow_spacesize=512M copytoram=n ** Padrão 256M **:
menuentry "Arch Linux install medium (x86_64, UEFI)" --class arch --class gnu-linux --class gnu --class os --id 'archlinux' {
set gfxpayload=keep
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID} cow_spacesize=512M copytoram=n
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
menuentry "Arch Linux install medium with speakup screen reader (x86_64, UEFI)" --hotkey s --class arch --class gnu-linux --class gnu --class os --id 'archlinux-accessibility' {
set gfxpayload=keep
linux /%INSTALL_DIR%/boot/x86_64/vmlinuz-linux archisobasedir=%INSTALL_DIR% archisodevice=UUID=${ARCHISO_UUID} accessibility=on cow_spacesize=512M copytoram=n
initrd /%INSTALL_DIR%/boot/intel-ucode.img /%INSTALL_DIR%/boot/amd-ucode.img /%INSTALL_DIR%/boot/x86_64/initramfs-linux.img
}
#
# se necessário criar os diretório 'work' e 'out' com o comando 'mkdir'
$mkdir ~/archlive/work
$mkdir ~/archline/out
#
# Construir a ISO:
$sudo mkarchiso -v -w ~/archlive/work -o ~/archlive/out ~/archlive
#
# o arquivo ISO será criado no diretório ~/out, demora um pouco dependendo da sua configuração.
# para efetuar novo processo deletar todo conteúdo do diretório 'work' e 'out' com o comando rm
#Atenção para o comando rm, o caminho tem que ser bem informado ou garanta que esteja dentro do diretório #~/archlive/work ou ~/archlive/out com o comando pwd.
$sudo rm -r ~/archlive/work/*
$sudo rm ~/archlive/out/*
# Lembrando que (#) serve para comentários nas linhas
# '~ ' representa o diretório do usuario ex.: /home/jorge
# Veja o tutorial no site https://wiki.archlinux.org/title/Archiso_(Portugu%C3%AAs)
# - para mais #configurações
Seja Feliz!
Comments