How to remove systemd from an Ubuntu Xenial installation
This page describes how to run a simple XFCE installation without systemd on Ubuntu 16 Xenial.
The replacement init system will be upstart+sysvinit.
Replacing the init
The first step is to install SysV init:
apt-get install upstart-sysv sysvinit-utils -y update-initramfs -u
Reboot your system so that systemd is no more the init system. Enjoy this and the next moments with a good drink of your choice.
Now install systemd-free packages that are necessary for the good functioning of XFCE, two approaches are available:
- build the .deb packages manually: https://github.com/gdm85/ubuntu16-no-systemd
- use the PPA: https://launchpad.net/~no-systemd/+archive/ubuntu/ppa
Make sure that systemd-free versions of gvfs, udisks2, policykit-1 and the logout-modded version of xfce4-session are installed and held so that future package upgrades will not affect them.
Rip out systemd
Now proceed to make sure systemd will be gone for good and cannot be installed again through pinning:
apt-get remove --purge --auto-remove systemd systemd:i386 -y echo -e 'Package: systemd\nPin: release *\nPin-Priority: -1' > /etc/apt/preferences.d/systemd echo -e '\n\nPackage: *systemd*\nPin: release *\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd echo -e '\nPackage: systemd:amd64\nPin: release *\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd echo -e '\nPackage: systemd:i386\nPin: release *\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd
If you get dependencies problems, check again at previous steps if correct systemd-purified versions of the packages have been correctly installed.
Custom XFCE session logout dialog
Install the custom logout dialog through this script: https://github.com/gdm85/ubuntu16-no-systemd/blob/master/install-custom-session-logout.sh