I have been further testing ways of migrating buster to beowulf.
With a install of xfce4 and lightdm, the cleanest way I can come up with is:
# Migrate from Debian buster to Devuan beowulf
# Install devuan-keyring
wget
http://pkgmaster.devuan.org/devuan/pool/main/d/devuan-keyring/devuan-keyring_2017.10.03_all.deb
dpkg -i devuan-keyring_2017.10.03_all.deb
# Change APT sources
cat > /etc/apt/sources.list <<EOF
deb
http://pkgmaster.devuan.org/merged beowulf main
deb
http://pkgmaster.devuan.org/merged beowulf-security main
EOF
apt update
# If you have libpam-systemd installed this is an optional and very hackish fix
# for Debian #935304 which is now closed with wontfix.
#
# Don't do this if you are at all unsure.
#
# 1) Ensure you create a backup!
# 2) Open /var/lib/dpkg/status with an editor
# 3) Find libpam-systemd Depends. The line looks like
# Depends: libc6 (>= 2.28), libpam0g (>= 0.99.7.1), systemd (= 241-7~deb10u1), libpam-runtime (>= 1.0.1-6), dbus, systemd-sysv
# 4) Remove ', systemd-sysv from the end of the line, leaving the rest of the line intact
# 5) Save file
cp /var/lib/dpkg/status /var/lib/dpkg/status.save
editor /var/lib/dpkg/status
# Install new init and dbus.
# Ensure we will have dbus-x11 to provide dbus-session-bus after systemd is gone.
# Remove libnss-systemd to avoid delays on nss lookups after reboot.
apt install --purge sysvinit-core dbus dbus-x11 libnss-systemd-
reboot
# If you have policykit-1 installed, update it.
# This will also purge systemd* and install libpam-elogind
apt install --purge policykit-1
# The rest of the migration (base-files, eudev, etc)
# This will also purge sytemd* if not already done.
apt --purge full-upgrade
# Optionally, if you didn't edit /var/lib/dpkg/status above
# Reinstall whatever desktop and display manager was removed
# apt install xfce4 lightdm
# Change ens3 to eth0 in /etc/network/interfaces
sed s/ens3/eth0/ -i /etc/network/interfaces
reboot
# Remove cruft
apt autoremove --purge
Done!
The transitional systemd-sysv package I talked about a few days ago to smooth
over #935304 isn't going to work as I had forgotten that sysvinit-core conflicts
with systemd-sysv.
The hack to work around #935304 by editing /var/lib/dpkg/status is not pretty at
all. If you don't want it you will have to accept removal of some GUI components
with libpam-systemd and then reinstall them after libpam-elogind is in place.
I hope the instructions are reasonably clear.
Do give feedback.
Thanks
Mark