Devuan vs Debian Init System Dependencies
Devuan is a direct fork of Debian designed specifically to provide users with "init freedom" by removing mandatory dependencies on systemd. While Debian adopted systemd as its default initialization system in 2014, Devuan strips systemd-specific dependencies from packages, allowing users to choose alternatives like SysVinit, OpenRC, or runit without losing core operating system functionality or desktop environment support.
The Origin of the Fork
Debian’s technical committee voted in 2014 to make systemd the
default init system for Debian 8 ("Jessie"). While Debian historically
maintained a policy of software neutrality, systemd merges the functions
of process supervision, device management, user session tracking, and
system logging into an interconnected suite. As upstream software like
GNOME began relying on systemd components such as
systemd-logind, Debian packages increasingly adopted hard
dependencies on systemd. A group of veteran Debian developers
subsequently created Devuan to reverse this tight coupling.
Package Dependency Management
In Debian, running an alternative init system is theoretically possible, but practically challenging. Many upstream packages—especially desktop environments, display managers, and network utilities—require libraries or services provided natively by systemd. Attempting to completely remove systemd packages on Debian often prompts package managers to uninstall essential components, including graphical interfaces.
Devuan solves this problem by maintaining its own package repository that mirrors Debian while modifying packages that enforce systemd dependencies. Devuan developers patch these packages to remove hard requirements for systemd as PID 1, ensuring that basic commands and GUI applications can be installed cleanly without pulling in the systemd suite.
Replacement Technologies and Shims
To maintain application compatibility without systemd, Devuan introduces replacement services and shims that emulate necessary systemd interfaces:
- Session and Power Management: Instead of
systemd-logind, Devuan uses standalone implementations such aselogindorseatdto handle seat management, user logons, and power events (reboot, shutdown, sleep) without running systemd as the init system. - Device Management: Devuan maintains standard
udevalternatives, such aseudev, a standalone fork developed to work independently of the systemd codebase. - Init System Choice: During the Devuan installation process, users are prompted to select their preferred init system, with full support for SysVinit, OpenRC, and runit.
Long-Term Architectural Divergence
Debian views systemd as its standard baseline, only supporting alternative inits as secondary options subject to maintainer interest. Consequently, Debian packages are built against systemd by default.
Devuan, by contrast, operates on the principle that the initialization system (PID 1) should remain strictly decoupled from base userland utilities and desktop environments. Devuan continuously tracks Debian's testing and stable branches, pulling in updates and stripping out systemd linkages to ensure that system architecture decisions remain entirely in the hands of the system administrator.