How to install minimal Ubuntu desktop

Last updated on September 23, 2020 by Dan Nanni

Question: I want to use Ubuntu Desktop on my hardware, but without all the bloatware pre-installed (e.g., LibreOffice, media players, etc). How can I install a minimal Ubuntu desktop?

If you want to set up a stripped down Ubuntu desktop, a clean approach is to first install Ubuntu server on your hardware, and then manually add desktop component to it.

Assuming that you already installed Ubuntu server on your computer, you can install minimal Ubuntu desktop as follows.

Install Minimal Unity Desktop

The following command installs Unity desktop and its hard dependencies, but nothing else.

$ sudo apt-get install --no-install-recommends ubuntu-desktop

To see what packages are included in such minimal desktop, use the following command.

$ apt-cache show ubuntu-desktop | grep "Depends"
Depends: alsa-base, alsa-utils, anacron, at-spi2-core, baobab, bc, ca-certificates, checkbox-qt, dmz-cursor-theme, doc-base, eog, evince, file-roller, fonts-freefont-ttf, foomatic-db-compressed-ppds, foomatic-filters, gcalctool, gedit, genisoimage, ghostscript-x, gnome-control-center, gnome-font-viewer, gnome-media, gnome-menus, gnome-power-manager, gnome-screenshot, gnome-session, gnome-session-canberra, gnome-system-log, gnome-system-monitor, gnome-terminal, gstreamer0.10-alsa, gstreamer0.10-plugins-base-apps, gstreamer0.10-pulseaudio, gucharmap, gvfs-bin, inputattach, language-selector-gnome, libatk-adaptor, libgd2-xpm, libnotify-bin, libpam-ck-connector, libpam-xdg-support, libsasl2-modules, libxp6, lightdm, nautilus, nautilus-sendto, notify-osd, openprinting-ppds, printer-driver-pnm2ppa, pulseaudio, rfkill, seahorse, software-center, software-properties-gtk, ssh-askpass-gnome, system-config-printer-gnome, ttf-dejavu-core, ubuntu-artwork, ubuntu-drivers-common, ubuntu-extras-keyring, ubuntu-release-upgrader-gtk, ubuntu-settings, ubuntu-sounds, unity, unity-greeter, unzip, update-manager, update-notifier, wireless-tools, wpasupplicant, xdg-user-dirs, xdg-user-dirs-gtk, xdiagnose, xkb-data, xorg, xterm, yelp, zenity, zip

To check what packages are missing on the minimal desktop, run:

$ apt-cache show ubuntu-desktop | grep "Recommends"
Recommends: acpi-support, activity-log-manager-control-center, aisleriot, app-install-data-partner, apport-gtk, avahi-autoipd, avahi-daemon, bluez, bluez-alsa, bluez-cups, bluez-gstreamer, branding-ubuntu, brasero, brltty, cups, cups-bsd, cups-client, deja-dup, empathy, example-content, firefox, firefox-gnome-support, fonts-kacst-one, fonts-khmeros-core, fonts-lao, fonts-liberation, fonts-lklug-sinhala, fonts-nanum, fonts-sil-abyssinica, fonts-sil-padauk, fonts-takao-pgothic, fonts-thai-tlwg, fonts-tibetan-machine, gcc, gnome-accessibility-themes, gnome-bluetooth, gnome-disk-utility, gnome-mahjongg, gnome-orca, gnome-screensaver, gnome-sudoku, gnomine, gvfs-fuse, gwibber, hplip, ibus, ibus-gtk3, ibus-pinyin, ibus-pinyin-db-android, ibus-table, im-switch, kerneloops-daemon, landscape-client-ui-install, laptop-detect, libgail-common, libnss-mdns, libpam-gnome-keyring, libproxy1-plugin-gsettings, libproxy1-plugin-networkmanager, libqt4-sql-sqlite, libreoffice-calc, libreoffice-gnome, libreoffice-help-en-us, libreoffice-impress, libreoffice-math, libreoffice-ogltrans, libreoffice-pdfimport, libreoffice-presentation-minimizer, libreoffice-presenter-console, libreoffice-style-human, libreoffice-writer, libwmf0.2-7-gtk, linux-headers-generic, make, mousetweaks, nautilus-share, network-manager-gnome, network-manager-pptp, network-manager-pptp-gnome, onboard, overlay-scrollbar, pcmciautils, plymouth-theme-ubuntu-logo, policykit-desktop-privileges, printer-driver-c2esp, printer-driver-foo2zjs, printer-driver-min12xxw, printer-driver-ptouch, printer-driver-pxljr, printer-driver-sag-gdi, printer-driver-splix, pulseaudio-module-bluetooth, pulseaudio-module-gconf, pulseaudio-module-x11, python3-aptdaemon.pkcompat, qt-at-spi, remmina, rhythmbox, rhythmbox-plugin-magnatune, rhythmbox-ubuntuone, shotwell, simple-scan, sni-qt, speech-dispatcher, telepathy-idle, thunderbird, thunderbird-gnome-support, totem, totem-mozilla, transmission-gtk, ttf-indic-fonts-core, ttf-punjabi-fonts, ttf-ubuntu-font-family, ttf-wqy-microhei, ubuntu-docs, ubuntuone-client-gnome, ubuntuone-control-panel-qt, unity-webapps-common, usb-creator-gtk, vino, whoopsie, xcursor-themes, xdg-utils, xul-ext-ubufox, xul-ext-unity

Install Minimal KDE Desktop

If you want to add minimal KDE desktop to Ubuntu server, run the command below. It will not install any recommended extra packages, but only those required to run KDE desktop.

$ sudo apt-get install --no-install-recommends kubuntu-desktop 

Install Minimal Xfce Desktop

To install minimal Xfce GUI on Ubuntu server:

$ sudo apt-get install --no-install-recommends xubuntu-desktop 

Install Minimal LXDE Desktop

To set up LXDE desktop on Ubuntu server, use this command.

$ sudo apt-get install lubuntu-desktop

The lubuntu-desktop package, by design, does not install any extra recommended packages, so you don't need to supply --no-install-recommends argument.

Support Xmodulo

This website is made possible by minimal ads and your gracious donation via PayPal (Credit Card) or Bitcoin (1M161JGAkz3oaHNvTiPFjNYkeABox8rb4g).

Please note that this article is published by Xmodulo.com under a Creative Commons Attribution-ShareAlike 3.0 Unported License. If you would like to use the whole or any part of this article, you need to cite this web page at Xmodulo.com as the original source.

Xmodulo © 2021 ‒ AboutWrite for UsFeed ‒ Powered by DigitalOcean