Gnome
GSettings
The gsettings
utility provides a way to get to GSettings which is more or less like a Windows registry containing key value pairs.
GSetting values are different for each user. To modify or view values for a different user, launch a dbus session as the user via sudo
:
# sudo -H -u lightdm dbus-launch --exit-with-session gsettings list-recursively
Lock Screen
To enable or disable the lockscreen and the ability to lock the workstation:
# gsettings set org.gnome.desktop.lockdown disable-lock-screen true
Gnome Terminal
Have control tab working, run:
$ gsettings set org.gnome.Terminal.Legacy.Keybindings:/org/gnome/terminal/legacy/keybindings/ next-tab '<Primary>Tab'
$ gsettings set org.gnome.Terminal.Legacy.Keybindings:/org/gnome/terminal/legacy/keybindings/ prev-tab '<Primary><Shift>Tab'
Desktop Icons
Desktop icons used to be provided by the File program (Nautilus?) by drawing a transparent window containing icons over the desktop. This has since been removed in Gnome 3.28 and has been replaced by the gnome-shell-extension-desktop-icons extension. Install this and restart Gnome.
Previously, icons could be enabled with a gsettings value:
$ gsettings set org.gnome.desktop.background show-desktop-icons true
Nautilus No Breadcrumbs
Change the path with ctrl
+l
. To make it permanent, set the appropriate key with gsettings:
$ gsettings set org.gnome.nautilus.preferences always-use-location-entry true
Screensaver Timeout
The amount of idle time before the screensaver starts is set using:
# gsettings get org.gnome.desktop.session idle-delay
uint32 60
# gsettings set org.gnome.desktop.session idle-delay 3600
The amount of time before the screen is locked is set:
## Instantly locks when the screensaver starts
# gsettings set org.gnome.desktop.screensaver lock-delay 0
## Or a delay in seconds. Eg: 1 minute
# gsettings set org.gnome.desktop.screensaver lock-delay 60
Keychain + Nextcloud
Nextcloud requires libgnome-keyring
to be installed and the gnome-keyring-daemon
daemon running. Without the keychain, Nextcloud will prompt for credentials on every start up.
Ensure that gnome-keyring-daemon
is in the .xinitrc
file or that your .bash_profile
contains:
if [ -n "$DESKTOP_SESSION" ];then
eval $(gnome-keyring-daemon --start)
export SSH_AUTH_SOCK
fi
Stop gnome-software on startup
I don't really know how this gets started, but you can run the following to create a service file that stops it on startup.
$ cat <<EOF > $HOME/.config/systemd/user/stop-gnome-software.service
[Unit]
Description=Stop gnome software.
[Service]
ExecStartPre=/bin/sleep 15
ExecStart=/usr/bin/killall gnome-software
[Install]
WantedBy=default.target
EOF
$ systemctl --user daemon-reload
$ systemctl --user enable stop-gnome-software --now
Extensions
Some noteworthy extensions. Install the Gnome tweak tool to easily configure these extensions as well as other Gnome desktop behaviors.
Panel OSD
Adjust notification toast location with Panel OSD. The X and Y location of the notification can be adjusted using this shell extension.
Dash to Panel
Dash to Panel makes Gnome look and feel closer to a Windows 7 (and higher) desktop.
ArcMenu
In addition to Dash to Panel, ArcMenu creates a start menu similar to that of Windows 7.
Applications Menu
The applications menu brings back the old applications menu dropdown similar to Gnome 2 and Windows.
Kstatusnotifieritem/appindicator support
System tray has been removed from Gnome. This extension brings back the ability to show any background applications that are running. Requires the shell to be restarted in order to take effect.
CPU Power Manager
Interfaces with the intel_pstate CPU frequency scaling driver. Allows laptops to conserve power by throttling CPU.
Troubleshooting
No such schema
If you attempt to run gsettings
set on a key without a schema defined on the system, you'll get an error similar to: No such schema "org.gnome.nautilus.preferences"
.
You can still set the key with dconf manually:
$ dconf write /org/gnome/nautilus/preferences/enable-interactive-search false
The default type is boolean (true
or false
). If you need to set a string, enclose the value in single quotes.
$ dconf write /org/gnome/nautilus/preferences/recursive-search "'never'"
Nautilus no longer supports type-ahead
Nautilus doesn't support type-ahead anymore and instead uses search-as-you-type within the file manager. What I want is to have it behave similar to Windows Explorer where typing within the file manager will jump to and select the file in the current directory with the search. What I don't want is Nautilus's behavior where the entire contents of the current directory is replaced by only search results.
It turns out, the Gnome developers in their infinite wisdom removed the type-ahead feature replaced it with search.
See also:
- https://askubuntu.com/questions/967022/how-do-i-disable-search-as-you-type-text-in-ubuntu-17-10-and-later
- https://github.com/lubomir-brindza/nautilus-typeahead
Workaround is to use another file manager such as Thunar or the patched version of Nautilus. There are precompiled binaries of the patched version for Ubuntu, but I don't see anything for NixOS.
See also
- http://blog.tordeu.com/?p=292
- http://superuser.com/questions/727120/make-gnome-screen-lock-after-1-hour-not-15-minutes