Arch linux vs Apple iMac 20″ mid 2007 (A1224)

Instal·lació de Arch linux en un iMac de fa uns anys. La instal·lació s’ha provat només amb 2 GB de RAM.

Hem reemplaçat el disc que portava de fàbrica per un SSD: WDC WDS250G1B0A-00H9H0

El procediment del canvi de disc el podem trobar aquí:

https://www.ifixit.com/Device/iMac_Intel_20%22_EMC_2133_and_2210

Crearem o un DVD amb la ISO de Archlinux o una memòria USB.

dd status=progress if=/home/sergi/Baixades/archlinux-2021.12.01-x86_64.iso of=/dev/sdd oflag=direct bs=1M

Un cop creat el sistema d’instal·lació procedirem a iniciar el Mac amb la tecla ALT premuda mentre encenem l’ordinador.

Quan sorti la icona de disc dur amb el nom de EFI BOOT l’iniciarem amb aquesta opció.

Un cop iniciat el sistema procedirment a realitzar la instal·lació del sistema.

Seguirem la guia d’instal·lació

https://wiki.archlinux.org/title/installation_guide

Preparem la sessió per la instal·lació, conectem la tarja de xarxa via cable:

echo "nameserver 8.8.8.8" >/etc/resolv.conf
dhclient ens5
timedatectl set-ntp true

Podem provar que tenim accés a internet mitjaçant amb un ping

Ara prepararem el disc per fer la instal·lació

Utilitzarem GPT i crearem un partició EFI, una per swap i l’altre pel sistema

[root@imac ~]# fdisk -l /dev/sda
Disk /dev/sda: 232,89 GiB, 250059350016 bytes, 488397168 sectors
Disk model: WDC WDS250G1B0A-
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: EFFC5045-4E52-4533-9B6C-A7E4E6DE9CCD

Dispositiu   Start     Final   Sectors   Size Tipus
/dev/sda1     2048   1026047   1024000   500M EFI System
/dev/sda2  1026048   9414655   8388608     4G Intercanvi Linux
/dev/sda3  9414656 488397134 478982479 228,4G Linux filesystem

Donarem format a les particions

mkfs.ext4 /dev/sda3
mkswap /dev/sda2
mkfs.fat -F 32 /dev/sda1

Ara muntarem les particions per iniciar la instal·lació

mount /dev/sda3 /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot
swapon /dev/sda2

Crearem el sistema base

pacstrap /mnt base linux linux-firmware

Generarem el fitxer /etc/fstab per configurar els sistemes de fitxers al muntar el sistema

genfstab -U /mnt >> /mnt/etc/fstab

Canviarem la sessió amb el sistema instal·lat al disc

arch-chroot /mnt

Configurarem el timezone i posarem el rellotge del hardware en hora

ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
hwclock --systohc

Generarem el locale

locale-gen

Editarem /etc/locale.gen de manera que descomentarem la opció d’idioma que ens interessi

# /etc/locale.gen 
ca_ES.UTF-8 UTF-8
ca_ES ISO-8859-1
ca_ES@euro ISO-8859-15
eca_ES.UTF-8 UTF-8

Ara sobre el fitxer /etc/locale.conf i /etc/vconsole.conf

#/etc/locale.conf

LANG=ca_ES.UTF-8

#/etc/vconsole.conf

KEYMAP=es

Ara li posarem un nom a l’ordinador

echo "imac" >/etc/hostname

Ara crearem la imatge de initrd

mkinitcpio -P

I establirem la paraula de pas de l’usuari root

passwd

Configurarem el gestor d’arrencada

pacman -S grub 
pacman -S efibootmgr
sed -i "s/GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT=\"loglevel=3 quiet acpi_backlight=native\"/g" /etc/default/grub
echo "GRUB_DISABLE_OS_PROBER=false" >>/etc/default/grub
grub-mkconfig -o /boot/grub/grub.cfg
grub-install --target=x86_64-efi --efi-directory=/boot/EFI -bootloader-id=GRUB

En aquest punt reiniciem i desconnectem la memòria USB o DVD utilitzats per la instal·lació.


Un cop iniciat el sistema procedirem a instal·lar diferents paquets que ens faran falta per la configuració.

Utilitzarem el gestor de finestres XFCE (el meu preferit) que té un equilibri entre consum de recursos i funcionalitats.

Entorn gràfic:

pacman -S xorg-server xorg-apps xf86-video-fbdev
X -config /root/xorg.conf.new -retro
cp xorg.conf.new /etc/X11/xorg.conf

Malauradament no podrem utilitzar el driver ‘radeon’ (el driver radeon per això si el farem servir per control·lar la intensitat de la pantalla) i farem servir framebuffer. L’experiència de rendiment és acceptable per l’ús que se li pot donar a aquest ordinador avui dia que és bàsicament un ús de caire ofimàtic.

Ara instal·larem el gestor de finestes i el de inici de sessió gràfica

pacman -S xfce4 xfce4-goodies
pacman -S lightdm-gtk-greeter
pacman -S lightdm
systemctl enable lightdm
systemctl start lightdm

Ara realitzarem una instal·lació de paquets per complementar el nostre sistema

pacman -S firefox firefox-i18n-ca-es irefox-i18n-ca tilix lm_sensors xfce4-notifyd powerdevil alsa-utils alsa-plugins pavucontrol pulseaudio libreoffice-still
pacman -S --needed base-devel 
pacman -S ttf-caladea ttf-carlito ttf-dejavu ttf-gentium-basic ttf-liberation ttf-linux-libertine-g noto-fonts adobe-source-code-pro-fonts adobe-source-sans-fonts adobe-serif-fonts
pacman -S ttf-caladea ttf-carlito ttf-dejavu ttf-gentium-basic ttf-liberation ttf-linux-libertine-g noto-fonts adobe-source-code-pro-fonts adobe-source-sans-fonts adobe-source-serif-fonts
pacman -S ttf-caladea ttf-carlito ttf-dejavu ttf-liberation ttf-linux-libertine-g noto-fonts adobe-source-code-pro-fonts adobe-source-sans-fonts adobe-source-serif-fonts
pacman -S hunspell  hyphen-es hyphen-en libmythes gimp inkscape audacity thunderbird geany owncloud-client transmission-gtk freerdp  nfs-utils bluez bluez-utils blueman-applet blueman bluez-hcitool
pacman -S rfkill bluetooth wget make gcc linux-headers inxi dmidecode usbutils bluez bluez-libs bluez-utils bluez4 bluez-hid2hci bluez-plugins bluez-tools hdparm smartmontools vi sudo cheese vlc

Per poder utilitzar el Bluetooth i la xarxa inalàmbrica ens caldrà instal·lar el firmware que li correspon:

pacman -S b43-fwcutter
pacman -S b43-firmware
pacman -S wireless_tools iw wpa_supplicant iwd

Establir l’idioma per les X:

localectl set-locale LANG=ca_ES.UTF-8
localectl set-x11-keymap es

Establir el nostre usuari perquè pugui fer SUDO

groupadd sudo
usermod -a -G sudo sergi

Pel control dels ventilados como usuari normal instal·larem

git clone https://aur.archlinux.org/mbpfan-git.git
cd mbpfan-git/
makepkg -si

Per configurar el teclat de l’apple

cat >/etc/modprobe.d/hid_apple.conf <<EOF
options hid_apple fnmode=2 iso_layout=0 swap_opt_cmd=0
EOF