2.1. Gnome desktop

2.1.1. Gnome settings

Customize the settings using the Gnome Settings dialog or the command line:

  • Wi-Fi: configure as needed

  • Network: configure as needed

  • Background ‣ Add Picture: configure as needed

  • Appearance ‣ Desktop Icons ‣ Show personal folder = Off

    gsettings org.gnome.shell.extensions.ding show-home false
    
  • Appearance ‣ Style = Dark

    gsettings org.gnome.desktop.interface color-scheme 'prefer-dark'
    gsettings org.gnome.desktop.interface gtk-theme 'Yaru-dark'
    gsettings org.gnome.gedit.preferences.editor scheme 'Yaru-dark'
    
  • Appearance ‣ Configure dock behaviour ‣ Show Volumes and Devices = Off

    gsettings org.gnome.shell.extensions.dash-to-dock show-mounts false
    
  • Appearance ‣ Configure dock behaviour ‣ Show Trash = Off

    gsettings org.gnome.shell.extensions.dash-to-dock show-trash false
    
  • Privacy ‣ Thunderbolt: authorize as needed (check the BIOS too)

  • Privacy ‣ Screen ‣ Screen Lock ‣ Blank Screen Delay = 3 minutes

    gsettings set org.gnome.desktop.session idle-delay 180
    
  • Privacy ‣ Screen ‣ Screen Lock ‣ Automatic Screen Lock = On

    gsettings set org.gnome.desktop.screensaver lock-enabled true
    
  • Privacy ‣ Screen ‣ Screen Lock ‣ Automatic Screen Lock Delay = 30 seconds

    gsettings set org.gnome.desktop.screensaver lock-delay 30
    
  • Privacy ‣ Screen ‣ Screen Lock ‣ Lock Screen On Suspend = On

    gsettings set org.gnome.desktop.screensaver ubuntu-lock-on-suspend true
    
  • Power ‣ Power Saving Options ‣ Automatic Suspend ‣ On Battery Power = 5 minutes

    gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type 'suspend'
    gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout 300
    
  • Power ‣ Power Saving Options ‣ Automatic Suspend ‣ Plugged In = 20 minutes

    gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'suspend'
    gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-timeout 1200
    
  • Power ‣ Suspend & Power button ‣ Power Button Behaviour : Hibernate

    gsettings set org.gnome.settings-daemon.plugins.power power-button-action 'hibernate'
    
  • Power ‣ Suspend & Power button ‣ Show Battery Percentage = On

    gsettings set org.gnome.desktop.interface show-battery-percentage true
    
  • Displays ‣ Fractional Scaling = On

    gsettings set org.gnome.mutter experimental-features "['x11-randr-fractional-scaling']"
    
  • Displays ‣ Night Light = On

    gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled true
    
    # 1. automatic schedule
    gsettings set org.gnome.settings-daemon.plugins.color night-light-schedule-automatic true
    
    # 2. manual schedule
    gsettings set org.gnome.settings-daemon.plugins.color night-light-schedule-automatic false
    gsettings set org.gnome.settings-daemon.plugins.color night-light-schedule-from 20.0
    gsettings set org.gnome.settings-daemon.plugins.color night-light-schedule-to 7.0
    
  • Users: add a picture

  • Date & Time ‣ Automatic Date & Time = On

    timedatectl set-ntp 1
    

2.1.2. Gnome tweaks

Install Gnome Tweaks to enable more customizations:

sudo apt install -y gnome-tweaks

Customize the settings using the Gnome Tweaks dialog or the command line:

  • Appearence ‣ Background ‣ Image : choose an image

    cp Nebulous_Gem_3840x2160.jpg "$HOME/.local/share/backgrounds/"
    gsettings set org.gnome.desktop.background picture-uri "file://$HOME/.local/share/backgrounds/Nebulous_Gem_3840x2160.jpg"
    gsettings set org.gnome.desktop.background primary-color '#000000000000'
    gsettings set org.gnome.desktop.background secondary-color '#000000000000'
    
  • Appearence ‣ Lock Screen ‣ Image : choose an image

    cp Mustafarian_Sunrise_3840x2160.jpg "$HOME/.local/share/backgrounds/"
    gsettings set org.gnome.desktop.screensaver picture-uri "file://$HOME/.local/share/backgrounds/Mustafarian_Sunrise_3840x2160.jpg"
    gsettings set org.gnome.desktop.screensaver primary-color '#000000000000'
    gsettings set org.gnome.desktop.screensaver secondary-color '#000000000000'
    
  • Keyboard & Mouse ‣ Mouse Click Emulation = Area

    gsettings set org.gnome.desktop.peripherals.touchpad click-method 'areas'
    
  • Top Bar ‣ Clock ‣ Weekday = On

    gsettings set org.gnome.desktop.interface clock-show-weekday true
    
  • Top Bar ‣ Calendar ‣ Week Numbers = On

    gsettings set org.gnome.desktop.calendar show-weekdate true
    
  • Windows ‣ Attach Modal Dialogs = Off

    gsettings set org.gnome.mutter attach-modal-dialogs false
    
  • Enable Click to Minimize:

    gsettings set org.gnome.shell.extensions.dash-to-dock click-action 'minimize'
    
  • Force Alt-Tab to switch on current workspace only:

    gsettings set org.gnome.shell.window-switcher current-workspace-only true
    gsettings set org.gnome.shell.app-switcher    current-workspace-only true
    

2.1.3. Gnome extensions

Install GNOME Extensions Manager:

1sudo apt install -y gnome-shell-extension-manager

Install the following extensions with the command line or with the GNOME Extensions Manager.

Add Username to Top Panel

Simply add your username to topbar panel aggregate menu. [Link]

Auto Move Windows

Move applications to specific workspaces when they create windows. [Link]

Awesome Tiles

Tile windows using keyboard shortcuts. [Link]

Control the Blur Effect On Lock Screen

Remove the blur effect on the lock screen. [Link]

Date Menu Formater

Customize the date and time format displayed in clock in the top bar in GNOME Shell. [Link]

Settings:

  • Pattern = EEEE d MMMM y - kk:mm

dconf write org/gnome/shell/extensions/date-menu-formatter/pattern "'EEEE d MMMM y - kk:mm'"

GSConnect

Connect to devices to securely share content like notifications or files and other features like SMS messaging and remote control. [Link]

Night Theme Switcher

Make your desktop easy on the eye, day and night. Automatically toggle the color scheme between light and dark, switch backgrounds and run custom commands at sunset and sunrise. [Link]

Places Status Indicator

Add a menu for quickly navigating places in the system. [Link]

Refresh Wifi Connections

This extension adds a refresh button to the Wifi connection selection dialog to request for a network scan manually. [Link]

Remove App Menu

Remove the Application Menu on the top bar. [Link]

Sound Input & Output Device Chooser

Shows a list of sound output and input devices (similar to gnome sound settings) in the status menu below the volume slider. [Link]

Workspace Matrix

Arrange workspaces in a two dimensional grid with workspace thumbnails. [Link]

Settings:

  • Number of columns = 2

  • Number of rows = 2

  • Show workspace thumbnails = On

  • Show workspace grid in the overview = On

dconf write /org/gnome/shell/extensions/wsmatrix/num-columns '2'
dconf write /org/gnome/shell/extensions/wsmatrix/num-rows '2'
dconf write /org/gnome/shell/extensions/wsmatrix/show-overview-grid 'true'
dconf write /org/gnome/shell/extensions/wsmatrix/show-thumbnails 'true'

Pomodoro Timer

sudo apt install -y gnome-shell-pomodoro

2.1.4. Files associations

Files associations are quite a mess!

The following files are used:

Path

Usage

A

/etc/gnome/defaults.list

Gnome defaults

B

/usr/share/applications/defaults.list

Distribution defaults

C

~/.config/mimeapps.list

User settings

D

~/.local/share/applications/mimeapps.list

User settings

About user settings:

Some applications still use ~/.local/share/applications/mimeapps.list.

Although deprecated, several applications still read/write to file D. To simplify maintenance, simply create a symbolic link:

ln -s ~/.config/mimeapps.list ~/.local/share/applications/mimeapps.list