Is it possible to backup the custom keyboard shortcuts and restore them when doing a fresh install?
-
1I also have the same question. I took the privilege to rephrase your question. – user10853 Nov 02 '16 at 14:00
-
1Those are likely stored in .dconf. You can export and import those through `gsettings`. It is best to save the "setting" of these as a command. See http://askubuntu.com/questions/597395/how-to-set-custom-keyboard-shortcuts-from-terminal for example; all you need to find is the one you edited ;) – Rinzwind Nov 02 '16 at 15:50
-
1How did you configure your keyboard shortcuts? Through the systems settings application or are you using custom-crafted XKB hooks? – David Foerster Nov 02 '16 at 15:57
-
@DavidFoerster yes through the systems settings (in my case I'm using Ubuntu Gnome) – user10853 Nov 02 '16 at 21:15
-
A relevant answer has [a Perl script that exports & imports shortcuts](https://askubuntu.com/a/217310/110181). The script works but it didn't save my custom shortcuts. – user10853 Nov 05 '16 at 22:17
1 Answers
Gnome-Control-Center (used by Unity and Gnome Shell) stores its key bindings in the per-user Dconf database directories /org/gnome/desktop/wm/keybindings/ and /org/gnome/settings-daemon/plugins/media-keys/ (source).
The easiest way to keep them across system re-installations is to keep the per-user configuration directories (
~/.configor more specifically~/.config/dconf/userfor Dconf only). Most of the time it's not necessary or desirable to purge the per-user configuration files anyway.If you can't or won't keep your old Dconf database you can use the
dconfcommand to export (“dump”) parts of it into a file and import (“load”) it later. The relevant Dconf directories are/org/gnome/desktop/wm/keybindings/for pre-defined shortcuts and/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/for custom, user-defined shortcuts.
The following example saves the above Dconf directories to two files
keybindings.dconfandcustom-keybindings.dconfand then restores them from the same files:dconf dump '/org/gnome/desktop/wm/keybindings/' > keybindings.dconf dconf dump '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/' > custom-keybindings.dconf dconf load '/org/gnome/desktop/wm/keybindings/' < keybindings.dconf dconf load '/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/' < custom-keybindings.dconf
If you find that you export your keybindings often, it might be convenient to script the required steps.
- 378
- 2
- 11
- 35,754
- 55
- 92
- 145
-
Thanks for the explanation. I moved the user file to user.bk and my custom shortcuts still work (needs a reboot because a new file was created & seems to restore my preferences?) Also for `dconf` that directory (/org) doesn't exist – user10853 Nov 05 '16 at 21:52
-
Where did you get the idea that there's no `/org/` directory in the Dconf database? Both Unity and Gnome wouldn't work very well without it. – David Foerster Nov 05 '16 at 21:57
-
-
2You can't “change the working directory” to be a Dconf database directory because they're not part of a file system. Instead they are key prefixes in a hierarchical key-value store. Yes, the Dconf database is stored as a file but its contents aren't files. – David Foerster Nov 06 '16 at 04:15
-
3For custom bindings, the path is `/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/`. I'm on Debian Buster running Gnome 3.30.2. – Sufian Aug 27 '19 at 03:15