[2024-jan-12] The Wiki has been upgraded and its template changed from MonoBook to Vector for a more modern look and feel.

Welcome to the Slackware Documentation Project

Slackware ARM project web site | Forum | Slackware ARM development documentation | Slackware ARM installation guides

Slackware ARM : Project Road Map

This road map represents intentions rather than commitments, but gives you some insight into some of the ARM-specific enhancements in the pipeline.

Prior to the development of the 64bit port, “Slackware ARM” also referred to the 32bit version of the Slackware Operating System.

“Slackware ARM” is the umbrella project name for all Slackware activities on the ARM platform.

Slackware AArch64 / ARM 64bit

“AArch64” is ARM's marketing name for their 64bit platform. In the user space the platform is 'aarch64' and 'arm64' within the Linux Kernel. The names are synonymous.

"Committed" / Definitley-going-to-be-done

Category Enhancement More Owner ETA (+When it's ready)
Hardware Model Support Support HoneyComb LX2 Manufacturer page, Grub integration into installer and kernel module loader integration complete. All that remains is a utility to flash the UEFI Firmware into SPI Flash or SD Card. mralk3@slackware 2023 some time
Docs / Installer HoneyComb Workstation Document installation process, see progress here and see notes here. Integration of UEFI firmware support. mralk3@slackware 2023 some time
Tutorial/Doc Complete document The Direct integration guide needs to be completed to enable the community to understand how to contribute Hardware Model support. A video will also be made to walk through it mozes@slackware Late 2023
Installer Upstream Installer improvements The ARM port has a number of improvements that should be merged upstream mozes@ -
Installer Make ARM Installer builder available The ARM Installer build system needs significant work to make it publicly available. Depends on upstreaming above mozes@ -

Complete

Category Enhancement More Date completed
Boot - OS Initial RAM disk os-initrd-mgr: Package only the Kernel modules required for the local environment. The generic OS InitRD contains the vast majority of Kernel modules in order to be able to support new Hardware Models. This inflates the InitRD by hundreds of MBs, delaying the booting of the OS. The kernel package will continue to ship a full-fat OS InitRD, and os-initrd-mgr will slim it down during the package post installation. If unable to collect the Kernel modules, os-initrd-mgr will preserve the previous set of Kernel modules. os-initrd-mgr will also be called from within the Installer, so the new OS has a trimmed initrd. May 2022
Tutorial/Doc Create a wiki doc and short video explaining how to use the Slackware ARM build system. There's a doc already in source/README.txt. This enables people to easily modify the Slackware Kernel and any packages required for their Hardware Model July 2022
pre-boot shell (slkpbs) stage 0 pre-script load n/a Insert a new first stage shell prior to the Kernel Module Loader scripts being executed. This enables them to be hacked upon which may make onboarding new HWMs easier. Dec 2022
All In One Installers Release and migrate Migrate to new AiO installers. Needs script work to modify paths and mask out the bare installers imgs, and update install guides. mozes@ Jan 2023
All In One Installers Upstream AiO for x86 Patch probe with filter code, write converter script for x86. Test and upstream Jan 2023
Video support VC4 Video support for RPi4 Seems stable with Linux 6.1 Jan 2023
RK3399 U-Boot (SPI) flashing tool within the OS Low (it's not ancitipated that a new release of U-Boot for Slackware will be frequent). Productised version of this tool. Add a new package a/hwm-bw-rk3399, have it ship new and previous fw in /usr/share with command line options to flash either one. Wanted to couple this with slackpkg so that an 'update your spi flash' message could be delivered. I don't think this is an appropriate candidate for automation - it always needs user confirmation. Aug 2023
Abstract HWM discovery into usr/sbin/slk-hwm-discover Development If the HWM discovery becomes more than DT and DMI decode, we'll want to move it into a standalone tool to avoid code duplication and long term maintenance. This script would be included in the OS InitRD, Installer and OS. The script would be referenced from /load-kernel-modules, and several of the Installer scripts. Script will return status codes and null if no model detected. If script doesn't exist, $HWM will be null and warning code will trigger. Scan source tree for /proc/device-tree/model to find all scripts. Oct 2023

"Exploring" (Thinking About It)

General updates

Idea / Category Priority Further information Owner
Tutorial/Doc: Non A-i-O Installation guides - Take the previous HTTP and USB installation guides and link to them from the AiO guides, should people prefer to use the bare installer. No priority
Enhancement, ease of installation - Add the Boot Loader to the AiO Installer image to avoid the initial boot loader flashing. This requires development within the installer to discover if the BL is in SPI flash and force a flash, or to offer if there's already a Slackware labeled boot Loader mozes
Enable installation from a greater range of Client hosts - Instructions for how to download and write the Installer image for MacOS and Windows
have a/kernel-firmware package trigger an initrd rebuild. Low This is to capture any new firmware for their Hardware Model. However, the HWM firmware changes rarely, and if anybody really wants the OS InitRD to receive new firmware, they can run os-initrd-mgr. mozes@slackware
Switch OSinitrd to use LZMA compression n/a os-initrd-mgr supports decompression of gzip and LZMA, but presently compresses with gzip. LZMA reduces size of initrd by ~10MB, but compression time is approx 4 mins compared to 1 minute for gzip; so increases time taken for kernel package upgrades and using os-initrd-mgr directly. kernel.SlackBuild would also need modifying to initially compress it. Unsure if it's worth the bother for the half second more it takes to load 10more MB. mozes@slackware
Improvement Low GRUB on HoneyComb: Enable selection of boot order from within the Installer. This enables user to select the Headed vs Headless (serial) option rather than editing the grub config manually. mozes@slackware

Hardware Model Support

Idea / Category Priority Further information Owner
New Hardware Model Slacking Support Pine64 PinePhone Pro. Battery life is very poor on all Linux distributions supporting this device, but not Slackware! Some hackery with the modem firmware is required to help prolong battery life. With a Slackware ARM installation, the Pinephone Pro has significantly better battery life. mralk3@slackware
New Hardware Model Slacking HoneyComb LX2160a Workstation Installation Documentation mralk3@slackware
New Hardware Model Low Honeycomb Workstation Cooling Fan Control mralk3@slackware
New Hardware Model High HoneyComb Workstation: Slackware built UEFI firmware (currently using the vendor's) and a UEFI firmware medium that can flash into SPI mralk3@slackware
New Hardware Model Start date: Post release of Slackware 15.1. Support being virtualised on the Apple M2 hardware mozes@slackware
Raspberry Pi4: Installer: Offer to upgrade the EEPROM firmware - It'd be a post installation script that checks if the relevant 2 packages are installed, validates if upgrade is available and offers. Not really sure it's worth it though as it'll always become out of date at some point - esp for a stable release.. mozes
Documentation: Install guide for QEMU Slacking QEMU is already supported by Slackware AArch64, just not documented. This will be useful for people who want to support a new Hardware Model using the Slackware ARM environment and development kit, without having to buy an existing supported Hardware Model. nobody yet-community?

Parked

These have been parked as they're fun projects but aren't sufficiently important to work on them in the near future.

Category Enhancement More Owner ETA (+When it's ready)
All In One Installers Create bootable USB AiOs for x86/64 Continue hacking on tool mozes@ May 2023
Disk Encryption Enhance the documentation of disk encryption Research how it will work on all supported hardware devices mralk3@slackware December 2023
RAID array Enhance the documentation with a separate doc discussing RAID configuration The x86 README_RAID.txt is sufficient but has some differences mralk3@slackware Some day? 2024?

Noticeable issues/bugs/feature gaps

Hardware Model Category Description Notes
Pinebook Pro Reboot U-boot doesn't find storage (mmc) after a first boot on a new installation LQ thread Workaround for now is to power off completely and boot it back up from power button.
Pinebook Pro / RockPro64 Audio Headphone and Speakers come muted by default LQ thread Work around is to unmute in alsamixer. Needs a default configuration for alsa / pulse
Pinebook Pro Video No support for HDMI over USB-C. LQ thread. Requires Linux 6.2: will resolve after Slackware AArch64 15.1 release
Pinebook Pro Power Management No hibernate Not supported upstream yet. Need to track - will revisit for Linux 6.2.
Pinebook Pro Power Management No suspend A patch existed for Linux 5.15. Will revisit for Linux 6.2.
Pinebook Pro Audio Conflict with Bluetooth and no sound after reboot LQ thread. Not currently looking into, but it might be better to switch to Pipewire instead. People are welcome to investigate
Raspberry Pi 4 KDE/Plasma KWin segfaults at start up It seems to be an issue with the Kernel, as community reports it working with the RPi Kernel fork. Will accept patches/tweaks to fix it but it'll probably have to wait until after Slackware 15.1 is released before moving past Linux 6.1
HoneyComb Workstation Cooling Loud heat sink fan The fan runs above 10,000 RPM constantly. It is working as designed by Solid-Run while booting the system with the UEFI system firmware. The stock fan is too loud to sit by for any significant amount of time. It is possible that a i2c device is exposed to configure the fan
HoneyComb Workstation Firmware Boot failure while attempting to restart the system after a fresh install A bug in the UEFI firmware is present while the firmware exists on the SD Card. Executing the “reboot” command after the installation process is complete fails. The work around is to use the “poweroff” command at that stage. Then to move the UEFI firmware to the SPI Flash chip post-installation.

Slackware ARM / 32bit

32bit Slackware ARM development ended with the release of Slackware 15.0.

Slackware ARM 32bit 15.0 is maintained with security fixes and other minor enhancements, however.

 slackwarearm:development-roadmap ()