Howto install archlinux arm

From Vidalinux Wiki
Jump to navigation Jump to search

download image

download raspbian lite image:

wget https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2023-02-22/2023-02-21-raspios-bullseye-armhf-lite.img.xz

download archlinuxarm image for raspberrypi 4:

wget http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-aarch64-latest.tar.gz

umcompress rasbian lite image:

xz -d 2023-02-21-raspios-bullseye-armhf-lite.img.xz

rename rasbian lite image:

mv 2023-02-21-raspios-bullseye-armhf-lite.img $(date +%F)-archlinuxarm.img

install multipath-tools:

pacman -S multipath-tools

mount the image with kpart:

kpartx -va $(date +%F)-archlinuxarm.img

mount partitions:

mkdir /mnt/archarm
mount /dev/mapper/loop0p2 /mnt/archarm
mount /dev/mapper/loop0p1 /mnt/archarm/boot

remove all content:

rm -rf /mnt/archarm/*

copy archlinuxarm image content to mountpoint:

tar xvf ArchLinuxARM-rpi-aarch64-latest.tar.gz -C /mnt/archarm/
sync

WARNING ONLY USE THE FOLLOWING COMMAND ON RASPBERRY PI 4

update /etc/fstab for the different sd block device compared to the raspberrypi 2 or 3:

sed -i 's/mmcblk0/mmcblk1/g' /mnt/archarm/etc/fstab

umount partitions:

umount /mnt/archarm/boot
umount /mnt/archarm
kpartx -d /dev/loop0
losetup -d /dev/loop0

connect sd card to your computer and detect drive letter:

dmesg 
fdisk -l /dev/sde

write image to sd card:

dd if=$(date +%F)-archlinuxarm.img of=/dev/sde status=progress

user information:

user: root
pass: root

user: alarm
pass: alarm

configure network

configure wifi:

wpa_passphrase ssid-name password > /etc/wpa_supplicant/wpa_supplicant.conf
wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf &
dhcpcd wlan0

configure lan:

ip addr add 192.168.75.55/24 dev eth0
ip link set up eth0
ip route add defualt via 192.168.75.1
echo 'nameserver 4.2.2.1' > /etc/resolv.conf
echo 'nameserver 4.2.2.2' >> /etc/resolv.conf

enable ssh

start and enable ssh:

systemctl enable sshd
systemctl start sshd

connect from external machine to raspberrypi:

ssh alarm@ip-address-of-raspberry

update system and install packages

set timezone:

timedatectl set-timezone America/Puerto_Rico

set clock month day hour year:

date 012003312022

initialize the pacman keyring and populate signing keys:

pacman-key --init
pacman-key --populate archlinuxarm

update system:

pacman -Syuuu

install base-devel package:

pacman -S base-devel libnewt git

add alarm user to sudoers:

echo 'alarm ALL=(ALL) ALL' >> /etc/sudoers

networkmanager

install networkmanager:

pacman -S networkmanager

start and enable networkmanager:

systemctl start NetworkManager
systemctl enable NetworkManager

configure wireless using nmcli:

nmcli device wifi rescan
nmcli device wifi list
nmcli device wifi connect ssid-name --ask

configure lan using nmcli:

systemctl start NetworkManager && \
systemctl enable NetworkManager && \
nmcli con del "Wired connection 1" && \
nmcli con del eth0 && \
nmcli con add con-name eth0 ifname eth0 ipv4.method manual ipv4.address 192.168.75.114/24 ipv4.gateway 192.168.75.1 ipv4.dns 4.2.2.1,4.2.2.2 type ethernet autoconnect yes

expand sd card

expand sd card:

pacman -S parted
curl -ko /usr/local/bin/expand-sd https://img.vidalinux.com/files/expand-sd
chmod +x /usr/local/bin/expand-sd
expand-sd

install desktop

install xorg:

pacman -S alsa-utils alsa-oss xorg xorg-server xf86-video-fbdev xorg-xrefresh adobe-source-han-sans-cn-fonts ttf-dejavu ttf-bitstream-vera wqy-zenhei ttf-arphic-ukai ttf-arphic-uming opendesktop-fonts ttf-inconsolata ttf-ubuntu-font-family adobe-source-code-pro-fonts

install xfce4:

pacman -S xfce4 xfce4-goodies lightdm-gtk-greeter accountsservice gvfs gvfs-mtp ntfs-3g exfat-utils p7zip file-roller fcitx fcitx-configtool fcitx-googlepinyin fcitx-cloudpinyin fcitx-gtk2 fcitx-gtk3 network-manager-applet gnome-keyring

enable and start lightdm

systemctl enable lightdm
systemctl start lightdm

configure remote connection

installing yay:

su - alarm
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

install nomachine:

yay -S nomachine

edit file "/usr/NX/etc/server.cfg", set "StartNXDaemon" to "Automatic":

StartNXDaemon Automatic

then restart nxserver service:

systemctl restart nxserver

from your desktop computer or another computer install nomachine client:

  • for windows:
https://download.nomachine.com/download/7.7/Windows/nomachine_7.7.4_1.exe
  • for mac:
https://download.nomachine.com/download/7.7/MacOSX/nomachine_7.7.4_1.dmg
  • for linux .rpm:
https://download.nomachine.com/download/7.7/Linux/nomachine_7.7.4_1_x86_64.rpm
  • for linux .deb:
https://download.nomachine.com/download/7.7/Linux/nomachine_7.7.4_1_amd64.deb

references