The officially official Devuan Forum!

You are not logged in.

#1 Re: ARM Builds » Is any work planned for devuan on the raspberry pi 4? » 2020-12-02 23:18:17

but wasn't able to connect to it again after update.

The recent version of raspi-firmware has a bug deleteing arm_64bit=1 from config.txt in its upgrade and installation, as reported at … bug=975943. This bug makes linux-image-arm64 completely unbootable. Manually adding arm_64bit=1 to config.txt in the first DOS partition of an SD card make it bootable again...

#2 Devuan » QEMU autopkg testbed for Devuan » 2020-11-20 09:32:59

Replies: 0

Hi everyone,

For me it has been a bit difficult to build QEMU autopkg testbed for Devuan
(and Debian with sysvinit-core as /sbin/init).
Is it easy for you??

I made my own shell script to build a QEMU autopkg testbed for Devuan at … u-debiansh

A built image is placed at … md64.qcow2
(400 MB qcow2 image of 25 GB disk image).

With the above image and after installing ovmf and qemu-system-x86 packages,
I was able to test Devuan Ceres's apt as

autopkgtest-5.15 -B -u debci apt -- qemu --efi -q qemu-system-x86_64 --qemu-options "-machine q35" /var/tmp/autopkgtest-ceres-amd64.qcow2

It gave no error!

#3 ARM Builds » QEMU Image Builder » 2020-11-03 06:32:23

Replies: 0

I made a shell script for building Devuan image usable by QEMU (qemu-system-aarch64 or qemu-system-arm) at
I was able to build and boot images of Devuan Chimaera armel and Devuan Beowulf arm64. Other combinations of releases and architectures should also work. Host CPU can be anything, but recent ARM CPUs allow much faster QEMU emulation by KVM. The script just apt-get linux-image-arm64 (or linux-image-armmp-lpae) and grub-efi-aarch64 (or grub-efi-arm) to the image. It does nothing special.

#4 Re: ARM Builds » beowulf Raspberry Pi build, not responding » 2020-10-14 00:01:44

By the help of raspi3-firmware Devuan package, building an SD card image
has become much easier than before, for example  (can build Devuan image) … sh;hb=HEAD

Building one's own image may be a good alternative to download an image and write it to an SD card.

By the way, as far as I know, u-boot.bin can be bypassed with recent versions of mainline Devuan/Debian kernels.

#5 Re: ARM Builds » beowulf Raspberry Pi build, not responding » 2020-10-12 21:07:45

I and C0rnelious,
told you about it not being honouring the bootargs..
Tha's why we went with a udev rule..
But I haven't found a better way

FYI, Devuan Chimaera linux-image-rpi, linux-image-armmp, linux-image-armmp-lpae,
and linux-image-arm64 packages allows almost the same boot process with Rasibian OS,
by the help of raspi3-firmware package (in Devuan).
Thus  they use cmdline.txt.

Devuan Beowulf should be the same except Raspberry Pi 4, which needs
very recent kernels (e.g. 5.8).

To make a bootable filesystem, qemu-debootstrapping the following packages is enough:


#6 Re: ARM Builds » beowulf Raspberry Pi build, not responding » 2020-10-11 00:55:59

Hi hoopdriver, thank you for your reply and sorry for my comment being of no help.
It is beyond my understanding how cmdline.txt has no effect...
A possibility is that /boot/cmdline.txt and cmdline.txt in the first FAT partition of your SD card are different.
What is the output of "df"?? Where the first FAT partition is mounted?

If you don't mind Devuan Chimaera, you can try another image … mal.img.xz
with the minimal set of packages, empty /etc/network/interfaces
and root password=root. cmdline does have an effect and exists in /boot/firmware/cmdline.txt

#7 Re: ARM Builds » beowulf Raspberry Pi build, not responding » 2020-10-10 00:41:48

The major problem I had with the beowulf build was the network interface.  The target machine is remote and dead and I don't know what the MAC address is so I have had to fiddle with /etc/udev to name the interfaces to something sensible rather than base the name on the mac address.

Adding net.ifnames=0 to cmdline.txt should solve the problem, as written at … et_it_back

Raspberry Pi OS and Debian SD card images have net.ifnames=0 in cmdline.txt.
I am wondering why Devuan dropped it...

Devuan SD card images built by my script
also have net.ifnames=0, as the Devuan raspi-firmware package adds net.ifnames=0 to cmdline.txt.

#8 Re: ARM Builds » Is any work planned for devuan on the raspberry pi 4? » 2020-10-08 00:28:50

I posted an SD card image builder script for RPi series at
A created SD card works fine on RPi 4B 8GB model.

Edit: Built SD card images are available at … sp=sharing

#10 Re: ARM Builds » unofficial SD card images and their builder for RPi series (inc. RPi4) » 2020-10-07 05:37:39

I have no experience with ARM 32-bit computers, but Devuan Chimaera (arm64) seems to work fine on RPi 4B 8GB model.

#11 Re: ARM Builds » unofficial SD card images and their builder for RPi series (inc. RPi4) » 2020-10-06 23:35:41

I mean, if you are on x86, debootstraping for lets say arm64?

Thanks for your interest. Yes. mmdebstrap can handle different host and target architectures.
I am using an Intel laptop, and I can build a bootable filesystem of arm64 (and armhf, armeb etc...).
It is similar to qemu-debootstrap.

mmdebstrap can also install 64-bit kernel linux-image-arm64 and 32-bit armhf binaries by
giving --arcitectures=armhf,arm64. But due to the bug (?) in raspi-firmware … bug=971748
the resulting SD card does not boot (manual fix required to the SD card).

On the other hand, armhf emulation on Intel had been a bit buggy. One might
need a newer versions of qemu-user-static for armhf emulation.
Devuan qemu-user-static 5.1 or later are fine.

#12 ARM Builds » unofficial SD card images and their builder for RPi series (inc. RPi4) » 2020-10-06 08:25:57

Replies: 6

Edit: A bug-fixed version is available at
Edit: Built images are available at … sp=sharing

Hi everyone,

I made an automated shell script for building an SD card image
of pure Devuan Chimaera for Raspberry Pi 4 (and maybe 0, 1, 2, and 3)
as follows. It runs on a (Intel/AMD) computer with an SD card slot running Devuan
(or Debian or Ubuntu) with recent versions of qemu-user-static and
mmdebstrap packages. I tested it only on Raspberry Pi 4B (8GB model).
Created SD card does not have GUI, and it can be installed by tasksel etc.

An SD card should be accessible as /dev/mmcblk0, otherwise change the script.
The following script should be run as root.


apt-get -q -y install mmdebstrap qemu-user-static binfmt-support
mkdir /mnt /mnt2 2>/dev/null

echo -n "Swap partition size in GB, 0 means no swap partition: "

#dd if=/dev/zero of=$IMGFILE count=1 seek=`expr 4096 \* 1024 - 1`
#losetup -l
fdisk $DEVFILE <<EOF


partx $DEVFILE
if [ $SWAPGB -gt 0 ]; then
  fdisk $DEVFILE <<EOF

partx $DEVFILE
  mkswap -f -L RASPISWAP ${DEVFILE}p3
echo -n "Filesystem type of the root partition (ext4 or btrfs): "

echo -n "Variant of mmdebstrap (apt, required, important, or standard): "
cat <<EOF
Explanation of architectures:
armeb for Raspberry Pi Zero, Zero W and 1,
armhf for Raspberry Pi 2,
arm64 for Raspberry Pi 3 and 4.
32-bit kernel is unsupported on 64-bit ARM CPUs.
#echo -n 'Architecture ("armeb", "armhf", "arm64", or "armhf,arm64"):'
echo -n 'Architecture ("armeb", "armhf", or "arm64"):'
if [ $MMDEBARCH == armeb ]; then
elif [ $MMDEBARCH == armhf ]; then
echo "Selected kernel package is $KERNELPKG."
mount -o async,lazytime,discard,noatime ${DEVFILE}p2 /mnt
mmdebstrap --architectures=$MMDEBARCH --variant=$MMVARIANT --components="main contrib non-free" --include=${KERNELPKG},eudev,kmod,e2fsprogs,btrfs-progs,sysvinit-core,locales,tzdata,apt-utils,whiptail,ifupdown,wpasupplicant,crda,raspi-firmware,firmware-brcm80211,firmware-linux-free,firmware-misc-nonfree,keyboard-configuration,console-setup chimaera /mnt

mkfs.vfat -v -F 32 -n RASPIFIRM ${DEVFILE}p1
mount -o async,discard,lazytime,noatime ${DEVFILE}p1 /mnt2
cp -Rp /mnt/boot/firmware/* /mnt2
rm -rf /mnt/boot/firmware/*
umount /mnt2
mount -o async,discard,lazytime,noatime ${DEVFILE}p1 /mnt/boot/firmware

echo -n "Choose hostname: "
echo "$YOURHOSTNAME" >/mnt/etc/hostname
cat >/mnt/etc/fstab <<EOF
LABEL=RASPIROOT / ${FSTYPE} rw,async,lazytime,discard 0 1
LABEL=RASPIFIRM /boot/firmware vfat rw,async,lazytime,discard 0 2
if [ $SWAPGB -gt 0 ]; then
  echo 'LABEL=RASPISWAP none swap sw,discard 0 0' >>/mnt/etc/fstab

echo "IPv4 DHCP is assumed. Otherwise edit /etc/network/interfaces"
echo -n "Name of the primary network interface (eth0, wlan0, none): "
read NETIF

if [ $NETIF != none ]; then
  cat >>/mnt/etc/network/interfaces <<EOF
auto $NETIF
iface $NETIF inet dhcp
  if [ $NETIF == wlan0 ]; then
    echo -n "Your Wireless LAN SSID: "
    read SSID
    echo -n "Your Wireless LAN passphrease: "
    read PSK
    cat >>/mnt/etc/network/interfaces <<EOF
    wpa-ssid $SSID
    wpa-psk $PSK

set -x
#chroot /mnt pam-auth-update
chroot /mnt passwd root
chroot /mnt dpkg-reconfigure tzdata
chroot /mnt dpkg-reconfigure locales
chroot /mnt dpkg-reconfigure keyboard-configuration

#chroot /mnt apt-get -y --purge --autoremove purge python2.7-minimal

echo 'console=tty0 console=ttyS1,115200 root=LABEL=RASPIROOT rw net.ifnames=0 rootwait' >/mnt/boot/firmware/cmdline.txt

umount /mnt/boot/firmware/
umount /mnt

Board footer

Forum Software