GNOME
Base GNOME packages for the full GNOME experience. Bundle with other packages to prevent package conflicts providing the same functionality.
TIP: Include any and all packages you want installed in a list to pacman
. That way pacman
will resolve package dependencies correctly and not install packages that would cause conflicts with other packages later on in the setup; e.g. the gnome
group installs pulseaudio
, but pulseaudio
and pipewire
(see below) are conflicting packages, meaning they can't both be installed at the same time prompting you to remove one or the other. Explicitly selected packages take precedence over packages auto-selected via dependencies.
pacman -S gnome gnome-extra
Setting up display manager
Start GDM on boot
Start the GNOME Display Manager (GDM) on boot to be presented with a graphical login screen.
systemctl enable gdm
When using NVIDIA proprietary drivers
For the longest time NVIDIA only supported their EGLStreams interface for Wayland sessions. Despite GNOME having support for both EGLStreams and the more popular GBM interface, the GNOME Display Manager disables the Wayland session via a udev
rule, if it detects the proprietary driver is in use, to prevent problems with the login screen not showing.
To force enable GNOME's Wayland session even with the proprietary NVIDIA driver installed, check the following files:
/etc/gdm/custom.conf
: Make sure the lineWaylandEnable=false
is commented out (should be by default)/usr/lib/udev/rules.d/61-gdm.rules
: Rename the file and create a symbolic link to/dev/null
ln -s /dev/null /usr/lib/udev/rules.d/61-gdm.rules
Keep in mind that Wayland depends on Kernel Mode Setting to function properly, so it is necessary to include the appropriate kernel modules in the initramfs and setting the kernel commandline parameter to enable KMS support for the proprietary NVIDIA driver!
See Graphics Cards on how to set up early KMS with the proprietary NVIDIA driver.
Set Keymap for GDM
NOTE: Executing this command while chroot
ed into an installation will produce an error that the locale could not be found. Set after rebooting the system, press CTRL + ALT + F3
when GDM shows up (or any F-key between 2 and 7) to switch tty, log in via the command line and execute the command as root
.
localectl set-x11-keymap de
See instructions at Plymouth page on how to set up Plymouth.
Misc additional packages
Additional packages you might want:
Name | Description |
---|---|
gthumb |
Image viewer with simple editing capabilities |
lollypop |
Music player for GNOME |
seahorse |
Secrets manager (login credentials, SSH keys, GPG keys) |
fwupd |
Firmware update manager; allows UEFI capsule updates in GNOME Software if supported by firmware |
pacman -S gthumb lollypop seahorse fwupd
Replace repo packages with Flatpak packages
If you wish to use the Flatpak versions of packages that the GNOME desktop team maintains themselves, you can uninstall the packages that are available as Flatpak in GNOME Software.
Remove the repo packages with pacman
:
pacman -Rn gnome-{calculator,calendar,characters,clocks,connections,contacts,font-viewer,logs,maps,music,text-editor,weather,games} epiphany totem loupe snapshot simple-scan baobab evince sushi cheese seahorse dconf-editor endeavour d-spy gnome-tweaks
Install the core GNOME apps as Flatpaks:
flatpak install flathub org.gnome.{Calculator,Calendar,Snapshot,Characters,clocks,Connections,Contacts,baobab,SimpleScan,Extensions,font-viewer,Loupe,Logs,Maps,Music,TextEditor,Weather,Epiphany,Papers,meld,seahorse.Application,} ca.desrt.dconf-editor io.github.alainm23.planify page.tesk.Refine io.bassi.Amberol com.rafaelmardojai.Blanket page.kramo.Cartridges dev.geopjr.Collision re.sonny.Commit re.sonny.OhMySVG com.github.huluti.Curtail com.belmoussaoui.Decoder app.drey.Dialect app.drey.EarTag io.github.mrvladus.List com.github.finefindus.eyedropper com.github.ADBeveridge.Raider com.mardojai.ForgeSparks de.haeckerfelix.Fragments org.gnome.gitlab.YaLTeR.Identity io.gitlab.adhami3310.Impression org.gnome.World.Iotas io.gitlab.news_flash.NewsFlash com.belmoussaoui.Obfuscate org.gnome.World.PikaBackup org.gnome.Podcasts de.schmidhuberj.DieBahn net.nokyan.Resources com.rafaelmardojai.SharePreview io.gitlab.adhami3310.Converter dev.geopjr.Tuba io.github.idevecore.Valuta org.gnome.gitlab.YaLTeR.VideoTrimmer com.rafaelmardojai.WebfontKitGenerator com.github.hugolabe.Wike dev.bragefuglseth.Keypunch io.github.bytezz.IPLookup io.github.giantpinkrobots.varia com.github.johnfactotum.QuickLookup org.telegram.desktop com.vysp3r.ProtonPlus com.mattjakeman.ExtensionManager com.github.tchx84.Flatseal io.github.flattool.Warehouse dev.vencord.Vesktop org.nickvision.tubeconverter org.libreoffice.LibreOffice com.obsproject.Studio org.prismlauncher.PrismLauncher com.heroicgameslauncher.hgl net.lutris.Lutris org.scummvm.ScummVM org.pipewire.Helvum io.github.ronniedroid.concessio net.natesales.Aviator de.hummdudel.Libellus com.github.geigi.cozy com.github.johnfactotum.Foliate dev.qwery.AddWater io.github.realmazharhussain.GdmSettings io.github.dzheremi2.lrcmake-gtk me.sanchezrodriguez.passes garden.jamie.Morphosis io.gitlab.elescoute.password io.github.vmkspv.netsleuth io.github.amit9838.mousam info.rttr.Return-To-The-Roots io.github.flattool.Ignition de.k_bo.Televido org.gnome.GHex app.drey.KeyRack org.gnome.Showtime io.github.nokse22.inspector it.mijorus.smile org.gnome.Evolution com.cassidyjames.butler org.pitivi.Pitivi cafe.avery.Delfin io.github.giantpinkrobots.flatsweep org.gnome.Gtranslator io.openrct2.OpenRCT2 org.tabos.saldo org.gnome.design.Contrast io.github.Foldex.AdwSteamGtk com.github.taiko2k.avvie org.nickvision.tagger org.gnome.gitg com.belmoussaoui.ReadItLater xyz.ketok.Speedtest org.gabmus.whatip org.gustavoperedo.FontDownloader com.belmoussaoui.snowglobe org.gnome.Geary org.gnome.Calls io.github.celluloid_player.Celluloid io.github.zhrexl.thisweekinmylife fr.handbrake.ghb org.soundconverter.SoundConverter io.missioncenter.MissionCenter org.gnome.NetworkDisplays com.makemkv.MakeMKV org.gnome.gitlab.somas.Apostrophe
List of GNOME core apps on Flathub:
Name | ID | Description |
---|---|---|
Calculator | org.gnome.Calculator | Perform arithmetic, scientific or financial calculations |
Calendar | org.gnome.Calendar | Manage your schedule |
Calls | org.gnome.Calls | Make phone and SIP calls |
Camera | org.gnome.Snapshot | Take pictures and videos |
Characters | org.gnome.Characters | Character map application |
Clocks | org.gnome.clocks | Keep track of time |
Color Profile Viewer | org.gnome.ColorViewer | Inspect and compare installed color profiles |
Connections | org.gnome.Connections | View and use other desktops |
Contacts | org.gnome.Contacts | Manage your contacts |
Disk Usage Analyzer | org.gnome.baobab | Check folder sizes and available disk space |
Document Scanner | org.gnome.SimpleScan | Make a digital copy of your photos and documents |
Document Viewer | org.gnome.Evince | Document viewer for popular document formats |
Extensions | org.gnome.Extensions | Manage your GNOME Extensions |
Fonts | org.gnome.font-viewer | View fonts on your system |
Image Viewer | org.gnome.Loupe | View images |
Logs | org.gnome.Logs | View detailed event logs for the system |
Maps | org.gnome.Maps | Find places around the world |
Music | org.gnome.Music | Play and organize your music collection |
Text Editor | org.gnome.TextEditor | Edit text files |
Videos | org.gnome.Totem | Play movies |
Weather | org.gnome.Weather | Show weather conditions and forecast |
Web | org.gnome.Epiphany | Browse the web |
List of GNOME internet communication apps on Flathub:
Name | ID | Description |
---|---|---|
Eolie | org.gnome.Eolie | Web browser |
Evolution | org.gnome.Evolution | Manage your email, contacts and schedule |
Fractal | org.gnome.Fractal | Chat on Matrix |
Geary | org.gnome.Geary | Send and receive email |
Polari | org.gnome.Polari | Talk to people on IRC |
List of GNOME multimedia apps on Flathub:
Name | ID | Description |
---|---|---|
Cheese | org.gnome.Cheese | Take photos and videos with your webcam, with fun graphical effects |
Decibels | org.gnome.Decibels | Play audio files |
EasyTAG | org.gnome.EasyTAG | Edit audio file metadata |
Eye of GNOME | org.gnome.eog | Browse and rotate images |
gThumb Image Viewer | org.gnome.gThumb | View and organize your images |
Identity | org.gnome.gitlab.YaLTeR.Identity | Compare images and videos |
Lollypop | org.gnome.Lollypop | Play and organize your music collection |
Photos | org.gnome.Photos | Access, organize and share your photos on GNOME |
Podcasts | org.gnome.Podcasts | Listen to your favorite shows |
Rhythmbox | org.gnome.Rhythmbox3 | Play and organize all your music |
Shotwell | org.gnome.Shotwell | Digital photo organizer |
Showtime | org.gnome.Showtime | Watch without distraction |
Sound Juicer | org.gnome.SoundJuicer | CD ripper with a clean interface and simple preferences |
Sound Recorder | org.gnome.SoundRecorder | A simple, modern sound recorder for GNOME |
Video Trimmer | org.gnome.gitlab.YaLTeR.VideoTrimmer | Trim videos quickly |
List of GNOME productivity apps on Flathub:
Name | ID | Description |
---|---|---|
Apostrophe | org.gnome.gitlab.somas.Apostrophe | Edit Markdown in style |
Bookup | org.gnome.gitlab.ilhooq.Bookup | Streamline notes with Markdown! |
Break Timer | org.gnome.BreakTimer | Computer break reminders for GNOME |
Citations | org.gnome.World.Citations | Manage your bibliography |
Endeavour | org.gnome.Todo | Manage your tasks |
Fava | org.gnome.gitlab.johannesjh.favagtk | Do your finances using fava and beancount |
Getting Things GNOME! | org.gnome.GTG | Personal tasks and TODO-list items organizer |
Gnote | org.gnome.Gnote | A simple note-taking application |
Hamster | org.gnome.Hamster | Personal time keeping tool |
Iotas | org.gnome.World.Iotas | Simple note taking |
Notes | org.gnome.Notes | Notes for GNOME |
Papers | org.gnome.Papers | Read documents |
Pinpoint | org.gnome.Pinpoint | Excellent presentations for hackers |
Pulp | org.gnome.gitlab.cheywood.Pulp | Skim excessive feeds |
Recipes | org.gnome.Recipes | GNOME loves to cook |
Solanum | org.gnome.Solanum | Balance working time and break time |
Translation Editor | org.gnome.Gtranslator | Translate and localize applications and libraries |
List of GNOME games on Flathub:
Name | ID | Description |
---|---|---|
Aisleriot Solitaire | org.gnome.Aisleriot | Play many different solitaire games |
GNOME Chess | org.gnome.Chess | Play the classic two-player board game of chess |
Crossword Editor | org.gnome.Crosswords.Editor | Create crossword puzzles |
Crosswords | org.gnome.Crosswords | Solve crossword puzzles |
Four-in-a-row | org.gnome.Four-in-a-row | Make lines of the same color to win |
HexGL | org.gnome.HexGL | Space racing game |
Hitori | org.gnome.Hitori | Play the Hitori puzzle game |
GNOME Klotski | org.gnome.Klotski | Slide blocks to solve the puzzle |
Lights Off | org.gnome.LightsOff | Turn off all the lights |
Mahjongg | org.gnome.Mahjongg | Match tiles and clear the board |
GNOME Mines | org.gnome.Mines | Clear hidden mines from a minefield |
Nibbles | org.gnome.Nibbles | Guide a worm around a maze |
Quadrapassel | org.gnome.Quadrapassel | Fit falling blocks together |
Reversi | org.gnome.Reversi | Dominate the board in a classic reversi game, or play the reversed variant |
GNOME Robots | org.gnome.Robots | Avoid the robots and make them crash into each other |
GNOME Sudoku | org.gnome.Sudoku | Test yourself in the classic puzzle |
Swell Foop | org.gnome.SwellFoop | Clear the screen by removing groups of colored and shaped tiles |
Tali | org.gnome.Tali | Roll dice and score points |
GNOME Taquin | org.gnome.Taquin | Slide tiles to their correct places |
GNOME Tetravex | org.gnome.Tetravex | Reorder tiles to fit a square |
GNOME 2048 | org.gnome.TwentyFortyEight | Obtain the 2048 tile |
Atomix | org.gnome.atomix | Build molecules out of single atoms |
Five or More | org.gnome.five-or-more | Remove colored balls from the board by forming lines |
gbrainy | org.gnome.gbrainy | gbrainy is a game to train memory, arithmetical, verbal and logical skills. |
Convolution | org.gnome.gitlab.bazylevnik0.Convolution | Maze escaping game |
List of GNOME tools on Flathub:
Name | ID | Description |
---|---|---|
Brasero | org.gnome.Brasero | Create and copy CDs and DVDs |
Buffer | org.gnome.gitlab.cheywood.Buffer | Embrace ephemeral text |
Cowsay | org.gnome.gitlab.Cowsay | State of the art Cowsay generator |
Déjà Dup Backups | org.gnome.DejaDup | Protect yourself from data loss |
File Roller | org.gnome.FileRoller | Open, modify and create compressed archive files |
Firmware | org.gnome.Firmware | Install firmware on devices |
gedit | org.gnome.gedit | Text editor |
GMetronome | org.gnome.gitlab.dqpb.GMetronome | Maintain a steady tempo |
GNOME Network Displays | org.gnome.NetworkDisplays | Screencasting for GNOME |
Keysign | org.gnome.Keysign | OpenPGP Keysigning helper |
Passwords and Keys | org.gnome.seahorse.Application | Manage your passwords and encryption keys |
Pika Backup | org.gnome.World.PikaBackup | Keep your data safe |
Secrets | org.gnome.World.Secrets | Manage your passwords |
Sushi | org.gnome.NautilusPreviewer | Provide a facility for quickly viewing different kinds of files |
List of GNOME development apps on Flathub:
Name | ID | Description |
---|---|---|
Boxes | org.gnome.Boxes | Virtualization made simple |
Builder | org.gnome.Builder | Create applications for GNOME |
D-Spy | org.gnome.dspy | Analyze D-Bus connections |
Devhelp | org.gnome.Devhelp | A developer tool for browsing and searching API documentation |
GHex | org.gnome.GHex | Inspect and edit binary files |
gitg | org.gnome.gitg | Graphical user interface for git |
Glade | org.gnome.Glade | Create or open user interface designs for GTK+ applications |
Meld | org.gnome.meld | Compare and merge your files |
GNOME Keyring
Gnome Keyring is a useful tool for securely storing and managing passwords, SSH keys, and other sensitive information.
As gnome-keyring
is already a member of the gnome
package group, it should already be installed.
To manage the contents of gnome-keyring
install seahorse
:
pacman -S seahorse
SSH Keys
You can use gnome-keyring
to store the passphrases of your SSH keys for passwordless authentication. However, the systemd user service file does not include the ssh
component.
To include the ssh
component, edit the systemd unit file:
systemctl edit --user gnome-keyring-daemon
This opens an editor with a temporary drop-in file. In here you can override the parameters of the systemd unit file:
NOTE: To properly replace a parameter, it first needs to be empty and then repeated on the next line with the value you want it to have. Additionally, setting the SSH_AUTH_SOCK
environment variable will make applications aware of an already unlocked SSH key.
[Service]
ExecStart=
ExecStart=/usr/bin/gnome-keyring-daemon --foreground --components="pkcs11,secrets,ssh" --control-directory=%t/keyring
Save the file and close the editor. It will get automatically reloaded by systemd if necessary.
In order to reveal to applications that an SSH key has already been unlocked, set an environment variable for the current user:
echo SSH_AUTH_SOCK=$XDG_RUNTIME_DIR/keyring/ssh >> ~/.config/environment.d/envvars.conf
Re-login for the changes to take effect.
Remove potentially unwanted packages
GNOME Dev Tools
pacman -Rsc accerciser devhelp glade gnome-builder sysprof
User Software
pacman -Rsc gnome-recipes
Games
pacman -Rsc five-or-more four-in-a-row gnome-chess gnome-klotski gnome-mahjongg gnome-mines gnome-nibbles gnome-sudoku gnome-taquin gnome-tetravex hitori iagno lightsoff polari quadrapassel swell-foop tali