sudo gedit /etc/init.d/mobile-broadband-connect
Затем скопируйте и вставьте этот (Изменить для ваших нужд):
Примечание
: Замените <Your Mobile Broadband Connection Name Here> с именем вашего . соединение
#!/bin/bash
case "$1" in
start)
echo "Starting Mobile Broadband Connection."
while true; do
# testing...to see if gsm is on the list of active devices
LC_ALL=C nmcli -t -f TYPE,STATE dev | grep -q "^gsm:disconnected$"
if [ $? -eq 0 ]; then
break
else
# not connected, sleeping for a second
sleep 1
fi
done
# now once GSM modem shows up, run these commands
nmcli -t nm wwan on
nmcli -t con up id <Your Mobile Broadband Connection Name Here>
;;
stop)
echo "Stopping Mobile Broadband Connection."
nmcli -t con down id <Your Mobile Broadband Connection Name Here>
nmcli -t nm wwan off
;;
status)
# Check to see if the process is running with Network Manager dev status
nmcli -p dev
;;
*)
echo "Mobile Broadband Startup Service"
echo $"Usage: $0 {start|stop|status}"
exit 1
esac
exit 0
Измените разрешения этого файла для выполнения
:
sudo chmod +x /etc/init.d/mobile-broadband-connect
Для того, чтобы запустить этот сценарий имеет сервис, сделайте следующее:
sudo update-rc.d mobile-broadband-connect defaults
[d6 ] скрипт регистрируется в качестве службы запуска системы, так что вы можете запускать, останавливать, или проверить состояние сценария с:!.!
sudo service mobile-broadband-connect start
sudo service mobile-broadband-connect stop
sudo service mobile-broadband-connect status
Reboot для завершения установки и автоматического подключения
[d8 ] Перезагрузите систему, чтобы завершить установку. После перезагрузки требуется до 60 секунд, прежде чем устройство USB будет активным. Когда активен - мобильное широкополосное соединение будет активировано и автоматически подключено.
Выполнено ...
Проблема с январским решением состоит в том, что он не играет хорошо с индикатором Unity.
Ниже представлен небольшой скрипт python, который вы можете использовать вместо setxkbmap:
#!/usr/bin/env python
import argparse
from gi.repository import Gio
setting = Gio.Settings.new("org.gnome.desktop.input-sources")
keymaps = [keymap for (_, keymap) in setting['sources']]
parser = argparse.ArgumentParser(prog='keymap_cycle', description='Cycle through a subset of enabled keymaps.')
group = parser.add_mutually_exclusive_group(required=False)
group.add_argument('-s', '--show', action='store_true', help='show available keymaps')
group.add_argument('-k', '--keymaps', default=','.join(keymaps), help='cycle through keymaps (default: %(default)s)')
arguments = parser.parse_args()
if arguments.show:
print 'Available keymaps: %s' % ', '.join(keymaps)
else:
cycle = arguments.keymaps.split(',')
current_language = keymaps[setting['current']]
try:
current_cycle_index = cycle.index(current_language)
desired_cycle_index = (current_cycle_index + 1) % len(cycle)
except ValueError:
desired_cycle_index = 0
desired_language = cycle[desired_cycle_index]
try:
desired_language_index = keymaps.index(desired_language)
setting['current'] = desired_language_index
except ValueError:
pass
[d2 ] Сохраните его до $HOME/.local/bin (или любого другого места, которое вам нравится), затем chmod +x его. Добавьте все карты, которые вы хотите, с помощью стандартного экрана конфигурации клавиатуры Ubuntu. Тогда исходный вопрос можно решить, связывая ярлык для каждой из следующих команд:
keymap_cycle --keymap en
keymap_cycle --keymap pt
keymap_cycle --keymap it
Но это может сделать еще больше! Например, keymap_cycle --keymap en,it будет циклически запускать раскладки клавиатуры, такие как en-> it-> en-> it ... для каждого вызова.
Чтобы показать все доступные раскладки клавиатуры, добавленные с помощью экрана конфигурации клавиатуры клавиатуры Ubuntu .
Престижность @bjonen и его ответ на магическое понимание gsettings.
Вы можете использовать команду gsettings с пользовательскими ярлыками. Подробнее читайте здесь: https://askubuntu.com/a/984981/6193