This stage shows how to install GNOME as possible as small, without complicated method.
We do not want to install GNOME selecting packages one-by-one just to make it smaller.
Tip
You should add non-free and contrib on APT sources for drivers if you use modern NVidia or AMD graphic cards.
In this guide, we basically assumes using Intel Core iGPU only.
Rev 4
Add GNOME tracker, gnome-sushi, and gvfs sections.
Fix GNOME share and search sections.
Why GNOME?
This is because X.org server could run as non-root only with gdm3, GNOME Display Manager.
The Xorg server no longer requires root
Only the gdm3 display manager supports running X as a non-privileged user in stretch.
-- Release Notes for Debian 9
So, let us use gdm3, at least.
Install GNOME essentials
This is easy,
root# apt install gnome-core # includes gdm3 and firefox-esr
However, we have to remove legacy xserver-xorg-video driver for Intel iGPUs.
- It is harmful for video motion quality with modern Intel Core iGPU.
- If you use Intel 6th generation Core architecture, you must do it.
Take a look at what xserver-xorg-video-intel says.
The use of this driver is discouraged if your hw is new enough (ca. 2007 and newer). You can try uninstalling this driver and let the server use it's builtin modesetting driver instead.
—from "xserver-xorg-video-intel" package, Debian GNU/Linux
It's for old Intel iGPUs, about 12 years ago.
- 1st gen. Core is released around 2008.
We assume modern Intel Core CPU. Let us remove it for better quality.
root# apt purge xserver-xorg-video-intel
Alternatives
There are other ways to install GNOME suite.
- task-gnome-desktop package
- This contains almost everything; it is too large, though it is simple.
- gnome package
- This might be smaller than above, but it still contains games, etc.
Hence, as a GUI for workstations (terminal, browser, office suite, and etc.), gnome-core is better than gnome package.
Applications (optional)
Mozilla Firefox-ESR is included in the gnome-core package.
So, it is almost about GUI-MUA and Office suite, etc.
We recommend Mozilla Thunderbird and LibreOffice.
root# apt install thunderbird # Mozilla Thunderbird
root# apt install libreoffice{,-gnome} # LibreOffice
Those are our favorites. Choose what you want.
Note
With Mozilla Firefox ESR, Thunderbird, and LibreOffice as shown above, /usr is used 1.8 GB and /usr/share is used 2.2 GB.
Hint about GNOME Terminal
GNOME Terminal has its shortcuts enabled.
This may confuse you, if you use something like byobu and/or vim.
- GNOME Terminal -> Edit -> Preferences
- Shortcuts tab
- Toggle OFF "Enable shortcuts"
Making GNOME more slim
GNOME is a big package, even we install it by gnome-core.
This guide shows how to slim it, especially system daemons.
plymouth (buster)
Debian buster gnome-core installs plymouth, boot animation, logger and I/O multiplexer.
In most cases it makes boot sequence better, but requires KMS, which could be potential issue under some problems.
In addition to that, LVM-over-LUKS passphrase be shown by hidden characters. It means you and other people can see the length of your passphrase.
So, we recommend removing plymouth.
root# apt purge plymouth
Network management
Most of us connect PC and/or workstations via routers except mobile devices, and obviously we installed the system by manual network settings on "ro" root filesystem.
Hence, we now uninstall the network-manager package.
root# apt purge network-manager
Note
You can remove the package before you install GNOME, but there are network-manager-gnome.
You should remove it after GNOME installation.
Same is modemmanager package.
root# apt purge modemmanager
Removing on your demand
Warning
Be careful when you uninstall GNOME related packages; it could uninstall gnome-shell and/or gdm3 and you would lose your Desktop.
Bluetooth
If you do not use any Bluetooth devices, especially keyboards and mice,
root# apt purge bluez{,-obexd}
This would remove gnome-core, though Desktop left intact.
Multimedia
If you do not play videos on local storage, consider removing Totem.
root# apt purge totem
Online Accounts Management
If you do not manage your online accounts by GNOME setting panel, you could remove related packages.
root# apt purge gnome-online-{accounts,miners}
GNOME sushi
This is a preview feature by left-click and hit space on nautilus.
These features are provided by JavaScript and it could read PDF files. We consider this as a potential security hole (suppose you got malicious PDF and accidentally preview it before you scan it).
root# apt purge gnome-sushi
GNOME Search (aka. tracker)
If you do not want GNOME trackers work background to provide some searching features, you could remove these.
They consume read/write IO operation resource AND reads your contents. From both performance and security reason, we recommend to purge these.
If you do need file content search feature, leave them.
root@stretch# apt purge tracker{,-extract,-gui,-miner-fs}
Debian buster has bit different dependency. We cannot remove tracker (nautilus would be gone, too).
root@buster# apt purge tracker{-extract,-miner-fs}
GNOME sharing (Apache WebDAV / ObexFTP)
It would be a potential security hole if you do not use public file sharing over your local network.
root# apt purge gnome-user-share
gvfs backends
gvfs-backends provides many protocols. Someone needs them, the others do not.
Take a look at what is, and decide whether you purge it or not.
root# apt show gvfs-backends
root# apt purge gvfs-backends # if you do not need them.
GNOME Help
You also do not need help support packages?
root# apt purge gnome-user-guide yelp # (buster) gnome-user-docs
GNOME Software
GNOME provides software management.
However, using Debian stable release, we should NOT use it.
We have APT and Debian security updates.
root# apt purge gnome-software
Cleanup
After above removals, then,
root# apt autoremove --purge # WATCH WHAT WOULD BE REMOVED!
(Is there gdm3, gnome-shell? then you MUST cancel it!)
If you do all the above, then /usr be in 1.9GB and /usr/share in 2.3GB.
Minor tweaks (optional)
We use GNOME almost defaults.
UI Animations
- Hit SUPER and type tweak, launch Tweak Tool.
- Appearance -> Enable animations OFF.
- This makes responses quick and nice.
Tip
If you can increase Intel Core CPU iGPU memory by BIOS, say 1GB, this is not significant.
UI animations are smooth with that video memory amount.