No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-31 07:28:57 +02:00
completions asd 2026-10-08 22:22:25 +03:00
scripts added checkzfshit command 2026-10-30 00:08:24 +02:00
services Added services and completions 2026-09-28 15:40:36 +03:00
install-devuan-zfs.sh set gcc as default c compiler 2026-10-31 07:28:57 +02:00
README.md set gcc as default c compiler 2026-10-31 07:28:57 +02:00

Devuan installer

Features:

  • Devuan stable by default
  • ZFS on boot and root
  • GCC as default C compiler
  • SysVinit/OpenRC amalgamation as init system
  • XLibre by default
  • Bectl to manage boot environments
  • pkg wrapper (BSD style) (pkg install, pkg search etc...)
  • sysrc to manage services (sysrc ssh_enable="YES")

Installation

Get yourself a devuan stable image from: https://mirror.leaseweb.com/devuan/ Latest stable: Excalibur

after booting into the installer, clone this repo and excute the install script as root

git clone https://git.iostria.org/Katacc/devuan
sudo ./install-devuan-zfs.sh

If you want more minimal installation without anything, run it with this:

INSTALL_XLIBRE=0 \
INSTALL_DWM_DEPS=0 \
INSTALL_EXTRAS=0 \
sudo ./install-devuan-zfs.sh

This installs the system without any extra packages I install on a desktop system.
This is good for servers, or if you want to build yourself

Answer the prompts in the installer.

Update provided scripts and such

sudo devuan-update

Switch to unstable "ceres"

Create a boot environment to fall back to:

sudo bectl create pre-ceres

Set your /etc/apt/sources.list into the following:

# /etc/apt/sources.list
deb http://deb.devuan.org/merged ceres main non-free contrib non-free-firmware
deb-src http://deb.devuan.org/merged ceres main non-free contrib non-free-firmware

and run

sudo pkg update
sudo pkg install zfs-dkms zfsutils-linux zfs-initramfs
sudo pkg full-upgrade

Upgrade ZFS on its own first. In a single full-upgrade the new kernel is set up before zfs-dkms, so DKMS tries to build the old (stable) ZFS for the new kernel, fails, and dpkg stops half way. The new ZFS still builds for the running kernel, so installing it first lets the new kernel build it too.

If the upgrade stops with a dpkg error anyway, finish it with:

sudo dpkg --configure -a

Do not reboot until the new kernel has the ZFS module, or it cannot import the pool:

ls /lib/modules/                # the new kernel version
modinfo -k <version> zfs        # must print the module, not an error

If it never builds, reboot into pre-ceres from the GRUB menu.

Using the system

To manage applications:

sudo pkg search <application(s)>
sudo pkg install <application(s)>
sudo pkg list
sudo pkg remove <application(s)>
sudo pkg purge <application(s)>

Updates:

sudo pkg upgrade --update

Create a system snapshots before upgrades

sudo bectl create prior-upgrade
sudo zfs snapshot rpool/home@2026-09-27

Update the tools this installer provides from this repo:

sudo devuan-update                  # everything
sudo devuan-update scripts          # bectl, pkg, sysrc, devuan-update (scripts/ in this repo) + zsh completions and services/
sudo devuan-update bootenv          # bectl + the GRUB boot environment menu
sudo devuan-update -f chimerautils  # rebuild even if unchanged

If update fails, you can boot into the boot-environment you created, or this command To make it the new default.

sudo bectl activate prior-upgrade

Activate ssh:

sudo pkg install openssh-server
sudo sysrc ssh_enable="YES"
sudo service ssh start

Provided services

To enable provided services, run

sudo sysrc SERVICE-NAME_enable="YES"
sudo service SERVICE-NAME start

To disable:

sudo sysrc SERVICE-NAME_enable="NO"
sudo service SERVICE-NAME stop

List of provided services

  • power-profiles-daemon

Optimisations

ZFS ARC takes normally a lot of memory to minimize disk reads, to set it to more reasonable number:

# Set to 4gb for this session
echo $((4*1024**3)) | sudo tee /sys/module/zfs/parameters/zfs_arc_max

To make it permanent, modify /etc/modprobe.d/zfs.conf

# /etc/modprobe.d/zfs.conf

options zfs zfs_arc_max=4294967296

Afterwards:

sudo update-iniramfs -u -k all

Good to remember with ZFS

To check your real disk health and usage:

zpool list

Trim your rpool every once in a while:

sudo zpool trim arpool

Backup your home:

sudo zfs snapshot rpool/home@desc

Make a new boot environment:

sudo bectl create desc