====== X: try them all ======
:!: Assumes %%FreeBSD%% 11.4-RELEASE or %%FreeBSD%% 12.1-RELEASE with ZFS.
Use [[unitrunker/BE|ZFS Boot Environments]] and [[unitrunker/desktop-installer|desktop-installer]] to test out all major DEs and WMs.
Choosing and installing an X environment - whether a simple WM or complete DE - is a major undertaking that
can impact the usablility of your workstation. A simple mistake can break your environment. Getting back to a
known good state can be difficult. You want a safety net; a clean way to undo any changes that you later
found disastrous, unwanted or just not your preference.
[[unitrunker/BE|ZFS Boot Environments]] or "BE"s can cover this. Obviously, you must have installed %%FreeBSD%% with ZFS as the boot partition to make use of BEs.
===== Update Base =====
For starters, update your base install.
$ su -
(enter root password)
# freebsd-update fetch
# freebsd-update install
# reboot
On a fresh install, your BE name is 'default'. We want to make minimal changes to this
BE as this is our known good working state.
# bectl list
(verify you're using the default BE)
===== Install desktop-installer =====
Here is the only change we're going to make to the 'default' BE.
# pkg install desktop-installer
===== Create Namesake BEs =====
Use 'bectl' to create separate namesake BEs for each environment you wish to try:
# bectl create cinnamon
# bectl create fluxbox
# bectl create gnome
# bectl create icewm
# bectl create kde
# bectl create lxqt
# bectl create lumina
# bectl create Mate
# bectl create windowmaker
# bectl create xfce
# bectl list
(see all those boot environments you just created - check spelling)
===== Another Precaution =====
Now this next command is going to confuse you.
# pkg remove desktop-installer
Why do this? Simple. You cloned the namesake BEs while desktop-installer was present in the current BE. The namesake BEs also have desktop-installer. As a precaution to avoid accidentally running desktop-installer on your clean, pristine BE, we remove it. If you trash all your namesake BEs, you still have this one to return home.
===== Trial =====
All of the above BEs just created are clones of the current, default BE. Because you installed desktop-installer into the current BE, they too have desktop-installer ready to run. Decide which environment to try first, for example 'fluxbox'. Run these commands to activate the fluxbox BE -
which takes effect after reboot.
# bectl activate fluxbox
# reboot
After reboot, log back as root and run ...
# desktop-installer
Follow the [[unitrunker/desktop-installer|desktop-installer]] prompts and choose "Fluxbox". All changes made by desktop installer to your system occur
in the 'fluxbox' BE.
To go back to your system as it existed before running [[unitrunker/desktop-installer|desktop-installer]] ...
# bectl activate default
# reboot
To try out yet another environment - 'xfce' for example, activate the BE namespake and run [[unitrunker/desktop-installer|desktop-installer]] again.
# bectl activate xfce
# reboot
Log back in as root and run [[unitrunker/desktop-installer|desktop-installer]] yet again, this time choosing 'xfce'.
Repeat as many times as needed to find the environment that works for you.
===== Cleanup =====
When done experimenting, you can delete the unwanted BEs by using ''%%bectl destroy -o %%''. Any important data
you wish to keep must be moved elsewhere before destroying the BE.
Once you've settled on one environment - you can make that your new 'default' BE. First, destroy the old default with
'bectl destroy default'. Use the 'bectl rename %%<%%old-be> %%<%%new-ne>' to rename the BE. You need not reboot right away. It will take effect the
next time you boot.
===== See Also =====
You can also apply BEs to make upgrades safer.
[[unitrunker/base-upgrade|Pain Free Base Upgrade]]
----
{{tag>HowTo}}