Существует простой способ сделать это с помощью dconf:
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/command "'move-window.sh'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/binding "'<Primary><Alt>Page_Down'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/name "'move-window'"
Использование gsettings:
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ name "'move-window'"
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding "'<Primary><Alt>Page_Down'"
gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ command "'/usr/local/bin/move-window.sh'"
Вам нужно увеличить число в [ f5] для добавления дополнительных привязок, т.е. custom1, custom2 и т. д.
Чтобы сделать его постоянным, просто добавьте его в .bash_profile или похожий скрипт, запускаемый командами входа. Просто не делайте этого для не-login shells .bashrc, потому что по моему опыту эти dconf и gsettings значительно замедляют его. Изменение / добавление 30 привязок занимает второе место! Вы не хотите этого в оболочке без входа (.bashrc)!