Note: Last years I funded my semi-lab with 15+ various TVboxes by my private money and decided to stop investing my private money - effectively just (and seems only) - to increase sells of tv box vendors.
If you want me to work on various issues or add new hardware support - pls consider donation to help me get required hardware to work on. Please note that this will also increase my satisfaction from - currently free of charge - work on minimyth2/miniarch.
MiniArch is ArchLinux ARM set of SD card images offering plug&run ArchLinux on ARM SBC/TVbox. It is very minimal ArchLinux distribution with bootloader/Linux kernel maximally supporting given TVBox/SBC then offering https://wiki.archlinux.org
Currently supported (and tested) SBC/TVboxes
MiniArch artefact is part of following GAR based build ecosystem:
-Installing ArchLinux ARM on ARM SBC is currently multistep process (example)
MiniArch goal is to simplify above whole process to:
- Download of MiniArch SD card image prepared for your SBC/TVbox
- burn image on SD card
- insert SD Card into SBC/TVbox
- power-on
- do update (see Quick Start below)
- enjoy full ArchLinux capabilities
-Adding to ArchLinux ARM ecosystem MiniMyth2 developed support for SBC/TVboxes including hardware video decode capabilities (with following results)
Requirements:
- Make sure your box is connected to Eth, has IP and Internet access
Note: pls do all below steeps in exact order like below. Otherwise install will fail!
- Download SD card Image
- burn image on SD card
- insert SD Card into SBC/TVbox
- power-on
- do update
- local login as root:root (ssh user:pass are alarm:alarm)
- type
start
- select (1) to init keyring and key
- type
start
- select (2) to do full update
- reboot
- type
start
- select (4) to resize root partition to full possible size
- type
start
- select (5) to update MiniArch artefacts
- reboot
- enjoy (i.e. install EndeavourOS by typing
start
then (6) or setup ArchLinux OS acordingly to Archlinux Wiki
Note: pls do all below steeps in exact order like below. Otherwise install will fail!
- Download SD card Image
- burn image on SD card
- insert SD Card into SBC/TVbox
- power-on
- do update
- local login as root:root (ssh user:pass are alarm:alarm)
- type
start
- select (1) to init keyring and key
- type
start
- select (2) to do full update
- reboot
- type
start
- select (5) to update MiniArch artefacts
- reboot
- transfer system to eMMC
- type
start
- select (3)
- when script ends with success, remove SD Card and reboot
- type
- Continue install
- type
start
- select (4) to resize root partition to full possible size
- reboot
- type
- enjoy (i.e. install EndeavourOS by typing
start
then (6) or setup ArchLinux OS acordingly to Archlinux Wiki
NOTE: do not skip step (update MiniArch artefacts) as this step - beside updating MiniArch components - also fixes bugs/issues/show stoppers in Generic AArch64 ArchLinux ARM code
NOTE2: sometimes there are issues with Archlinux ARM mirrors avaliability. In such case do full update (option 2 in start) will be constantly failing. To overcome this You may change mirror to other one with hope other one will work better. In such case look on list of avaliable servers is here list of mirrors and do following:
On command prompt do:
(example for chnaging mirror to http://de3.mirror.archlinuxarm.org):
mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak
echo Server = 'http://de3.mirror.archlinuxarm.org/$arch/$repo' >> /etc/pacman.d/mirrorlist
Verify Your change by:
cat /etc/pacman.d/mirrorlist
Try again with update by start 1
Currently automated MiniArch build process is following:
- cross building current mainline Linux kernel and firmware with MiniMyth2 applied patches to offer support of SBC/TVboxes
- cross-building selected SBC/TVbox bootloader files
- cross-building ArchLinux kernel and firmware PKGs from p.1
- downloading ArchLinux ARM Generic AArch64 ArchLinux ARM rootfs
- unpacking rootfs from p.4 on x86 host
- cross-installing ArchLinux kernel and firmware PKGs generated in p.3 on unpacked rootfs from p.5 on x86 host
- cross-regenrating initramfs on rootfs from p.6
- packing above rootfs to Generic AArch64 Installation archive for upload to MiniArch github
- preparing SD card image with updated rootfs and bootloader prepared in p.2 and p.7
- xz packing SD card image for upload to MiniArch github
In above context, we may say: MiniArch is minimally required changed ArchLinux ARM to boot and work on Your box and it offers maximum compatibility with ArchLinux ARM (except kernel modules).
MiniArch specific components:
- linux-aarch64
- linux-aarch64-headers
- linux-aarch64-api-headers
- linux-firmware
- miniarch-meta
are blocked in ArchLinux ARM pacman official repo updates and are separately offered in dedicated repo called MiniArch
Any MiniMyth2 kernel update will also produce updated above PKGs.
You can update MiniArch with kernel/firmware by:
- login as root:root
- type 'start'
- select (4) to do "update MiniArch artefacts"
Happy burning!
For building / developing MiniArch - pls go to: building wiki or developing wiki