# pkg install kde5
Chapter 8. Desktop Environments
Table of Contents
8.1. Synopsis
While FreeBSD is popular as a server for its performance and stability, it is also well suited for day-to-day use as a desktop. With over 36000 applications available in the FreeBSD ports tree, it is straightforward to build a customized desktop that can run a wide variety of desktop applications. This chapter demonstrates how to install popular desktop environments as well as desktop applications such as web browsers, productivity software, document viewers, and financial software.
Prerequisites:
Readers of this chapter should already understand how to install either the X Window System or Wayland on FreeBSD.
Readers are instructed throughout this chapter to install official packages. Refer to the section on using the ports collection to build customized packages from ports.
8.2. Desktop Environments
This section describes how to install and configure some popular desktop environments on a FreeBSD system. A desktop environment can range from a simple window manager to a complete suite of desktop applications.
Name | License | Package |
---|---|---|
KDE Plasma | GPL 2.0 or later | x11/kde5 |
GNOME | GPL 2.0 or later | x11/gnome |
XFCE | GPL, LGPL, BSD | x11-wm/xfce4 |
MATE | GPL 2.0, LGPL 2.0 | x11/mate |
Cinnamon | GPL 2.0 or later | x11/cinnamon |
LXQT | GPL, LGPL | x11-wm/lxqt |
8.2.1. KDE Plasma
KDE Plasma is an easy-to-use desktop environment. This desktop provides a suite of applications with a consistent look and feel, a standardized menu and toolbars, keybindings, color-schemes, internationalization, and a centralized, dialog-driven desktop configuration. More information on KDE can be found at the KDE homepage. For FreeBSD-specific information, consult the FreeBSD homepage at KDE.
8.2.1.1. Install KDE Plasma meta package
To install the KDE Plasma meta package with KDE Frameworks, Plasma Desktop and Applications execute:
8.2.1.2. Minimal KDE Plasma installation
To install a minimal KDE Plasma execute:
# pkg install plasma5-plasma
This installation is really minimal. Konsole must be installed separately executing:
|
8.2.1.3. Configure KDE Plasma
KDE Plasma uses dbus-daemon(1) for a message bus and hardware abstraction. This application is automatically installed as a dependency of KDE Plasma.
Enable D-BUS service in /etc/rc.conf
to start at system boot:
# sysrc dbus_enable="YES"
To increase messages size execute:
sysctl net.local.stream.recvspace=65536
sysctl net.local.stream.sendspace=65536
8.2.1.4. Start KDE Plasma
# pkg install sddm
Enable SDDM service in /etc/rc.conf
to start at system boot:
# sysrc sddm_enable="YES"
The keyboard language can be set in SDDM by running the following command (for Spanish, for example):
# sysrc sddm_lang="es_ES"
A second method to start KDE Plasma is by manually invoking startx(1). For this to work, the following line is needed in ~/.xinitrc:
% echo "exec dbus-launch --exit-with-x11 ck-launch-session startplasma-x11" > ~/.xinitrc
8.2.2. GNOME
GNOME is a user-friendly desktop environment. It includes a panel for starting applications and displaying status, a desktop, a set of tools and applications, and a set of conventions that make it easy for applications to cooperate and be consistent with each other.
8.2.2.1. Install GNOME meta package
To install the GNOME meta package with GNOME Desktop and Applications, execute:
# pkg install gnome
8.2.2.2. Minimal GNOME installation
To install the GNOME-lite meta package with a GNOME desktop slimmed down for only the basics, execute:
# pkg install gnome-lite
8.2.2.3. Configure GNOME
GNOME requires /proc
to be mounted.
Add this line to /etc/fstab
to mount this file system automatically during system startup:
# Device Mountpoint FStype Options Dump Pass# proc /proc procfs rw 0 0
GNOME uses dbus-daemon(1) for a message bus and hardware abstraction. This application is automatically installed as a dependency of GNOME.
Enable D-BUS service in /etc/rc.conf
to start at system boot:
# sysrc dbus_enable="YES"
8.2.2.4. Start GNOME
GNOME Display Manager is the preferred display manager for GNOME. GDM is installed as part of the GNOME package.
Enable GDM in /etc/rc.conf
to start at system boot:
# sysrc gdm_enable="YES"
A second method to start GNOME is by manually invoking startx(1).
For this to work, the following line is needed in ~/.xinitrc
:
% echo "exec gnome-session" > ~/.xinitrc
8.2.3. XFCE
XFCE is a desktop environment based on the GTK+, lightweight and provides a simple, efficient, easy-to-use desktop. It is fully configurable, has a main panel with menus, applets, and application launchers, provides a file manager and sound manager, and is themeable. Since it is fast, light, and efficient, it is ideal for older or slower machines with memory limitations.
8.2.3.2. Configure XFCE
XFCE requires /proc
to be mounted.
Add this line to /etc/fstab
to mount this file system automatically during system startup:
# Device Mountpoint FStype Options Dump Pass# proc /proc procfs rw 0 0
XFCE uses dbus-daemon(1) for a message bus and hardware abstraction. This application is automatically installed as a dependency of XFCE.
Enable D-BUS in /etc/rc.conf
to start at system boot:
# sysrc dbus_enable="YES"
8.2.3.3. Start XFCE
x11/lightdm is a display manager that supports different display technologies and is a good choice as it is very lightweight, requires little memory usage, and has fast performance.
To install it, execute:
# pkg install lightdm lightdm-gtk-greeter
Enable lightdm in /etc/rc.conf
to start at system boot:
# sysrc lightdm_enable="YES"
A second method to start XFCE is by manually invoking startx(1).
For this to work, the following line is needed in ~/.xinitrc
:
% echo '. /usr/local/etc/xdg/xfce4/xinitrc' > ~/.xinitrc
8.2.4. MATE
The MATE Desktop Environment is the continuation of GNOME 2. It provides an intuitive and attractive desktop environment using traditional metaphors.
8.2.4.1. Install MATE meta package
To install the MATE meta package that includes the MATE Desktop with some extra applications such as text editor, archiver manager, etc., execute:
# pkg install mate
8.2.4.2. Minimal MATE installation
To install the MATE lite meta package with MATE desktop slimmed down for only the basics, execute:
# pkg install mate-base
8.2.4.3. Configure MATE
MATE requires /proc
to be mounted.
Add this line to /etc/fstab
to mount this file system automatically during system startup:
# Device Mountpoint FStype Options Dump Pass# proc /proc procfs rw 0 0
MATE uses dbus-daemon(1) for a message bus and hardware abstraction.
This application is automatically installed as a dependency of MATE.
Enable D-BUS in /etc/rc.conf
to start at system boot:
# sysrc dbus_enable="YES"
8.2.4.4. Start MATE
x11/lightdm is a display manager that supports different display technologies and is a good choice as it is very lightweight, requires little memory usage, and has fast performance.
To install it, execute:
# pkg install lightdm lightdm-gtk-greeter
Enable lightdm in /etc/rc.conf
to start at system boot:
# sysrc lightdm_enable="YES"
A second method to start MATE is by manually invoking startx(1).
For this to work, the following line is needed in ~/.xinitrc
:
% echo "exec dbus-launch --exit-with-x11 ck-launch-session mate-session" > ~/.xinitrc
8.2.5. Cinnamon
Cinnamon is a UNIX® desktop which provides advanced innovative features and a traditional user experience. The desktop layout is similar to Gnome 2. The underlying technology is forked from Gnome Shell. The emphasis is put on making users feel at home and providing them with an easy to use and comfortable desktop experience.
8.2.5.2. Configure Cinnamon
Cinnamon requires /proc
to be mounted.
Add this line to /etc/fstab
to mount this file system automatically during system startup:
# Device Mountpoint FStype Options Dump Pass# proc /proc procfs rw 0 0
Cinnamon uses dbus-daemon(1) for a message bus and hardware abstraction.
This application is automatically installed as a dependency of Cinnamon.
Enable D-BUS in /etc/rc.conf
to start at system boot:
# sysrc dbus_enable="YES"
8.2.5.3. Start Cinnamon
x11/lightdm is a display manager that supports different display technologies and is a good choice as it is very lightweight, requires little memory usage, and has fast performance.
To install it execute:
# pkg install lightdm lightdm-gtk-greeter
Enable lightdm in /etc/rc.conf
to start at system boot:
# sysrc lightdm_enable="YES"
A second method to start Cinnamon is by manually invoking startx(1).
For this to work, the following line is needed in ~/.xinitrc
:
% echo "exec dbus-launch --exit-with-x11 ck-launch-session cinnamon-session" > ~/.xinitrc
8.2.6. LXQT
LXQt is an advanced, easy-to-use, and fast desktop environment based on Qt technologies. It has been tailored for users who value simplicity, speed, and an intuitive interface. Unlike most desktop environments, LXQt also works fine with less powerful machines.
8.2.6.2. Configure LXQT
LXQT requires /proc
to be mounted.
Add this line to /etc/fstab
to mount this file system automatically during system startup:
# Device Mountpoint FStype Options Dump Pass# proc /proc procfs rw 0 0
LXQT uses dbus-daemon(1) for a message bus and hardware abstraction. This application is automatically installed as a dependency of LXQT.
Enable D-BUS in /etc/rc.conf
to start at system boot:
# sysrc dbus_enable="YES"
8.2.6.3. Start LXQT
# pkg install sddm
Enable SDDM service in /etc/rc.conf
to start at system boot:
# sysrc sddm_enable="YES"
The keyboard language can be set in SDDM by running the following command (for example, for Spanish):
# sysrc sddm_lang="es_ES"
A second method to start LXQT is by manually invoking startx(1).
For this to work, the following line is needed in ~/.xinitrc
:
% echo "exec dbus-launch --exit-with-x11 ck-launch-session startlxqt" > ~/.xinitrc
8.3. Browsers
This section describes how to install and configure some popular web browsers on a FreeBSD system, from full web browsers with high resource consumption to command line web browsers with reduced resource usage.
Name | License | Package | Resources Needed |
---|---|---|---|
Firefox | MPL 2.0 | Heavy | |
Chromium | BSD-3 and others | Heavy | |
Iridium browser | BSD-3 and others | Heavy | |
Falkon | MPL 2.0 | Heavy | |
Konqueror | GPL 2.0 or later | Medium | |
Gnome Web (Epiphany) | GPL 3.0 or later | Medium | |
qutebrowser | GPL 3.0 or later | Medium | |
Dillo | GPL 3.0 or later | Light | |
Links | GPL 2.0 or later | Light | |
w3m | MIT | Light |
8.3.1. Firefox
Firefox is an open source browser that features a standards-compliant HTML display engine, tabbed browsing, popup blocking, extensions, improved security, and more. Firefox is based on the Mozilla codebase.
To install the package of the latest release version of Firefox, execute:
# pkg install firefox
To instead install Firefox Extended Support Release (ESR) version, execute:
# pkg install firefox-esr
8.3.2. Chromium
Chromium is an open source browser project that aims to build a safer, faster, and more stable web browsing experience. Chromium features tabbed browsing, popup blocking, extensions, and much more. Chromium is the open source project upon which the Google Chrome web browser is based.
To install Chromium, execute:
# pkg install chromium
The executable for Chromium is /usr/local/bin/chrome, not /usr/local/bin/chromium. |
8.3.3. Iridium browser
Iridium is a free, open, and libre browser modification of the Chromium code base, with privacy being enhanced in several key areas. Automatic transmission of partial queries, keywords, metrics to central services is inhibited and only occurs with consent.
To install Iridium, execute:
# pkg install iridium-browser
8.3.4. Falkon
Falkon is a new-ish and very fast QtWebEngine browser. It aims to be a lightweight web browser available on all major platforms. Falkon has all standard functions someone can expect from a web browser. It includes bookmarks, history (both also in sidebar) and tabs. Beyond that, AdBlock plugin can block ads, Click2Flash can block Flash content and SSL Manager can edit the local CA Certificates database.
To install Falkon, execute:
# pkg install falkon
8.3.5. Konqueror
Konqueror is more than a web browser as it is also a file manager and a multimedia viewer. It supports WebKit, a rendering engine used by many modern browsers including Chromium, as well as its own KHTML engine.
To install Konqueror, execute:
# pkg install konqueror
8.3.6. Gnome Web (Epiphany)
Gnome Web (Epiphany) is a web browser designed to be as lightweight and fast as possible, at the expense of many of the features found in other browsers.
To install Gnome Web (Epiphany), execute:
# pkg install epiphany
8.3.7. qutebrowser
Qutebrowser is a keyboard-focused browser with a minimal GUI. It is based on Python and PyQt5 and free software, licensed under the GPL.
To install qutebrowser, execute:
# pkg install qutebrowser
8.3.8. Dillo
Dillo aims to be a multiplatform alternative browser that is small, stable, developer-friendly, usable, fast, and extensible. This new, experimental version of Dillo is based upon FLTK toolkit, rather than GTK1, and has been substantially rewritten.
To install Dillo, execute:
# pkg install dillo2
8.4. Development tools
This section describes how to install and configure some popular development tools on a FreeBSD system.
Name | License | Package | Resources Needed |
---|---|---|---|
Visual Studio Code | MIT | Heavy | |
Qt Creator | QtGPL | Heavy | |
Kdevelop | GPL 2.0 or later and LGPL 2.0 or later | Heavy | |
Eclipse IDE | EPL | Heavy | |
Vim | VIM | Light | |
Neovim | Apache 2.0 | Light | |
GNU Emacs | GPL 3.0 or later | Light |
8.4.1. Visual Studio Code
Visual Studio Code is a type of tool that combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle. It provides comprehensive editing and debugging support, an extensibility model, and lightweight integration with existing tools.
To install Visual Studio Code, execute:
# pkg install vscode
8.4.2. Qt Creator
Qt Creator is a cross-platform IDE (integrated development environment) tailored to the needs of Qt developers. Functionalities included with Qt Creator are:
code editor with C++, QML and ECMAscript support;
rapid code navigation tools;
static code checking and style hints as you type;
context sensitive help;
visual debugger;
integrated GUI layout and forms designer.
To install Qt Creator, execute:
# pkg install qtcreator
8.4.3. kdevelop
Open source, feature-full, plugin extensible IDE for C/C++ and other programming languages. It is based on KDevPlatform and the KDE and Qt libraries, and it has been under development since 1998.
To install kdevelop, execute:
# pkg install kdevelop
8.4.4. Eclipse IDE
The Eclipse Platform is an open extensible IDE for anything and yet nothing in particular. The Eclipse Platform provides building blocks and a foundation for constructing and running integrated software-development tools. The Eclipse Platform allows tool builders to independently develop tools that integrate with other people’s tools.
To install Eclipse IDE, execute:
# pkg install eclipse
8.4.5. Vim
Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems.
Vim is often called a "programmer’s editor," and so useful for programming that many consider it an entire IDE. It is not just for programmers, though. Vim is perfect for all kinds of text editing, from composing email to editing configuration files.
To install Vim, execute:
# pkg install vim
8.4.6. Neovim
Neovim is an aggressive refactor of editors/vim. It represents a complete overhaul of the codebase with many sanity improvements, including sensible defaults, a built-in terminal emulator, asynchronous plugin architecture, and powerful APIs designed for speed and extensibility. It retains full compatibility with almost all Vim plugins and scripts.
To install Neovim, execute:
# pkg install neovim
8.5. Desktop office productivity
When it comes to productivity, users often look for an office suite or an easy-to-use word processor. While some desktop environments like KDE Plasma provide an office suite, there is no default productivity package. Several office suites and graphical word processors are available for FreeBSD, regardless of the installed desktop environments.
This section demonstrates how to install the following popular productivity software and indicates if the application is resource-heavy, takes time to compile from ports, or has any major dependencies.
Name | License | Package | Resources Needed |
---|---|---|---|
LibreOffice | MPL 2.0 | Heavy | |
Calligra Suite | LGPL and GPL | Medium | |
AbiWord | GPL 2.0 or later | Medium |
8.5.1. LibreOffice
LibreOffice is a free software office suite developed by The Document Foundation. It is compatible with other major office suites and available on a variety of platforms. It is a rebranded fork of Apache OpenOffice and includes applications found in a complete office productivity suite: a word processor, spreadsheet, presentation manager, drawing program, database management program, and a tool for creating and editing mathematical formulæ. It is available in a number of different languages and internationalization has been extended to interfaces, spell checkers, and dictionaries. More information about LibreOffice can be found at libreoffice.org.
To install LibreOffice, execute:
# pkg install libreoffice
The LibreOffice package comes by default only in English. To have a localized version of LibreOffice it is necessary to install a language pack. For example, for the version localized in Spanish, it is necessary to install the package editors/libreoffice-es with the command:
# pkg install libreoffice-es
8.5.2. Calligra
The KDE Plasma desktop environment includes an office suite which can be installed separately from KDE Plasma. Calligra includes standard components that can be found in other office suites. Words is the word processor, Sheets is the spreadsheet program, Stage manages slide presentations, and Karbon is used to draw graphical documents.
To install Calligra, execute:
# pkg install calligra
8.5.3. AbiWord
AbiWord is a free word processing program similar in look and feel to Microsoft® Word. It is fast, contains many features, and is user-friendly.
AbiWord can import or export many file formats, including some proprietary ones like Microsoft® .rtf.
To install AbiWord, execute:
# pkg install abiword
8.6. Document Viewers
Some new document formats have gained popularity since the advent of UNIX® and the viewers they require may not be available in the base system. This section demonstrates how to install the following document viewers:
Name | License | Package | Resources Needed |
---|---|---|---|
Okular | GPL 2.0 | Heavy | |
Evince | GPL 2.0 | Medium | |
ePDFView | GPL 2.0 | Medium | |
Xpdf | GPL 2.0 | light | |
Zathura | Zlib | light |
8.6.1. Okular
Okular is a universal document viewer, part of the KDE Plasma project.
Okular combines excellent functionality with the versatility of supporting different kind of documents, like PDF, Postscript, DjVu, CHM, XPS, ePub and others.
To install Okular, execute:
# pkg install okular
8.6.2. Evince
Evince is a document viewer for multiple document formats including PDF and Postscript. Part of the GNOME project. The goal of evince is to replace document viewers such as ggv and gpdf with a single, simple application.
To install Evince, execute:
# pkg install evince
8.6.3. ePDFView
ePDFView is a lightweight PDF document viewer that only uses the Gtk+ and Poppler libraries. The aim of ePDFView is to make a simple PDF document viewer, similar to Evince but without using the GNOME libraries.
To install ePDFView, execute:
# pkg install epdfview
8.6.4. Xpdf
For users that prefer a small FreeBSD PDF viewer, Xpdf provides a light-weight and efficient viewer which requires few resources. It uses the standard X fonts and does not require any additional toolkit.
To install Xpdf, execute:
# pkg install xpdf
8.6.5. Zathura
Zathura is a highly customizable and functional document viewer. It provides a minimalistic and space saving interface as well as an easy usage that mainly focuses on keyboard interaction.
To install zathura, with PDF support, execute:
# pkg install zathura zathura-pdf-mupdf
Additionally, one can install graphics/zathura-pdf-poppler for alternative PDF support, graphics/zathura-ps for PostScript support, graphics/zathura-djvu for DjVu support, and graphics/zathura-cb for comic book support.
8.7. Finance
For managing personal finances on a FreeBSD desktop, some powerful and easy-to-use applications can be installed. Some are compatible with widespread file formats, such as the formats used by Quicken and Excel.
This section covers these programs:
Name | License | Package | Resources Needed |
---|---|---|---|
KMyMoney | GPL 2.0 | Heavy | |
GnuCash | GPL 2.0 and GPL 3.0 | Heavy |
8.7.1. KMyMoney
KMyMoney is a personal finance application created by the KDE community. KMyMoney aims to provide the important features found in commercial personal finance manager applications. It also highlights ease-of-use and proper double-entry accounting among its features. KMyMoney imports from standard Quicken QIF files, tracks investments, handles multiple currencies, and provides a wealth of reports.
To install KMyMoney, execute:
# pkg install kmymoney
8.7.2. GnuCash
GnuCash is part of the GNOME effort to provide user-friendly, yet powerful, applications to end-users. GnuCash can be used to keep track of income and expenses, bank accounts, and stocks. It features an intuitive interface while remaining professional.
GnuCash provides a smart register, a hierarchical system of accounts, and many keyboard accelerators and auto-completion methods. It can split a single transaction into several more detailed pieces. GnuCash can import and merge Quicken QIF files. It also handles most international date and currency formats.
To install GnuCash, execute:
# pkg install gnucash
Last modified on: August 11, 2024 by Fernando Apesteguía