I’m trying to customize my Ubuntu Budgie 18.04 desktop to have a look and behaviour similar to MacOS.
I have successfully installed SlingSwarm, which is a GTK3 port of Slingscold, and it serves as a full screen launcher for my programs. I have placed this on my dock, and it works like a charm.
But now, I’m trying to figure out how can I change the Super key to launch this new menu instead of the default Budgie Menu.
I tried the most obvious solution of using the Dconf editor, and editing the org/gnome/mutter/overlay-key to disable the Super key.
But even with this, in the keyboard settings I can’t create a new keyboard shortcut, because the Super key is not accepted.
So I suppose that this function is hardcoded.
Is there any configuration text file that I can edit to change what program is activated with the Super key?
navigate to org.gnome.mutter.overlay_key and you will see that the default “Super_L” is defined. You can remove that or change the keybinding - so a little surprise you are having difficulty remapping it.
Thanks, but the thing that I want to change is not the Super key, but the action that invokes the super key.
Currently, when you press the super key, the Budgie Menu is launched.
But the thing that I want to configure, is that instead of launching the Budgie Menu, the Super key will launch the slingswarm-launcher command, opening the new full screen menu that I have installed.
In the dconf section that you are referring, you can set the value of the key. But you can’t change the action that is invoked.
I’ve created a new “mini app” called budgie-extras-daemon over the weekend. It reads simple config files where you define a shortcut key combination and then invokes a command.
I’ll need to test if it can take as the shortcut “super_L” - will ping here later.
A small dirty hack to re-bind the super key to whatever you like, which works for me:
Open dconf-editor
go to /com/solus-project/budgie-wm/experimental-enable-run-dialog-as-menu and enable this option
Create a superkey.sh bash script in your preferred location, make it executable (chmod +x superkey.sh), and enter in it the command(s) you wish to be activated by the super key.
Then, in a terminal, enter:
sudo mv /usr/bin/budgie-run-dialog /usr/bin/budgie-run-dialog.old
sudo ln -s /LOCATIONHERE/superkey.sh /usr/bin/budgie-run-dialog
This hack may not survive Ubuntu or Budgie upgrades, but doesn’t take too long to re-enable. It also breaks the Budgie Run menu (bound to F2 by default), but you can rebind Alt-F2 to /usr/bin/budgie-run-dialog.old or use any number of third party run menus or app launchers instead.
# Example file for services that require global keybinding
# services drop a .bde extension file into
# /etc/budgie-extras-daemon/bde/ or the install location appended with bde
# either/both toggle / command need to be specified
#
# [Daemon]
# shortcut=key shortcut to bind e.g. <ctrl><alt>s
# toggle=GSettings full-gsettings-path key-is-bool-to-toggle-when-shortcut-activated
# command=command line to execute when shortcut activated
# onlyactivate=GSettings full-gsettings-path key-is-bool-bind-shortcut-only-when-true
# overlay=GSettings full-gsettings-path key-is-string-set-to-empty
# used with onlyactivate to set key to '' if true or reset to default key
# value if onlyactivate is false
# name=short name to describe what this shortcut is all about.