Расширения отключаются после перезагрузки [закрыто]

35

Я использую Ubuntu Gnome 13.10 с Gnome 3.10. Моя проблема в том, что при каждой перезагрузке ОС все расширения оболочки отключаются. Странно то, что их настройки сохраняются. Они просто выключены, и мне приходится каждый раз включать их снова. Как я могу сделать их постоянными.

Благодарность

Обновить

Сегодня Ubuntu 13.10 была официально выпущена, и после того, как я обновился, моя проблема все еще там. Вот моя системная информация:

$ uname -a
Linux ubuntu-desktop 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Любые идеи?

Sidenote - Может кто-нибудь сказать, по крайней мере, были ли сохранены настройки состояния расширений ( вкл / выкл)? Я удалил все расширения

rm -r ~/.local/share/gnome-shell/extensions/*
rm -r /usr/share/gnome-shell/extensions/*

и я установил те, которые я использую. Поэтому я думаю о создании cronjob и включении их всех при каждой загрузке системы. По крайней мере, пока я не найду, как это исправить.

Христос Базиотис
источник
Не могли бы вы объяснить, почему понизить голос?
Христос Базиотис
У меня та же проблема
Касим
Я знаю, что уже немного поздно, но я реализовал скрипт решения на python, если приведенный выше не удовлетворяет вас. https://github.com/loric-/enableGnomeExtensions.py Надеюсь, что проблема будет решена в ближайшее время.
Loric-
Да, эта ошибка наконец исправлена!
Вилли

Ответы:

18

Это работает в Gnome 3.8.4 и должно работать в более поздних версиях.

Установите все расширения, на которых вы хотите быть. Затем запустите:

gsettings get org.gnome.shell enabled-extensions

Это должно придумать что-то вроде

$ gsettings get org.gnome.shell enabled-extensions
['user-theme@gnome-shell-extensions.gcampax.github.com', 'status-area-horizontal-spacing@mathematical.coffee.gmail.com', 'CoverflowAltTab@palatis.blogspot.com']

Скопируйте вывод и запустите gnome-session-properties

Нажмите добавить, а затем введите выходные данные gsettings get org.gnome.shell enabled-extensions "['use... ...blogspot.com']"- Однако, как было любезно указано, измените значение getна setпри вводе в окне команд, как показано на рисунке ниже. ВСТАВЬТЕ ДВОЙНЫЕ ЦИТАТЫ, В противном случае ЭТО НЕ БУДЕТ РАБОТАТЬ (Если не уверены, сначала протестируйте команду в терминале - если нет обратной связи, это сработало).

РЕДАКТИРОВАТЬ: Для более новых версий без gnome-session-properties, вам, вероятно, потребуется вручную создать файл .desktop~/.config/autostart - некоторые инструменты с графическим интерфейсом могут быть доступны через Gnome Tweak Tool или аналогичные.

Например:

Описание 1

Затем убедитесь, что это включено:

Описание 2

Теперь при каждом входе в систему должна запускаться команда для восстановления всех расширений!

NB. Если вы вносите изменения в свои активированные расширения, это нужно будет обновить.


Чтобы автоматизировать этот процесс, кажется, что этот скрипт работает:

#!/bin/bash
active_extensions=$(gsettings get org.gnome.shell enabled-extensions)
autostart_file=$HOME/.config/autostart/restore-extensions.desktop
echo -e "Currently active extensions:\n\e[34m$active_extensions\e[0m"
echo -e "[Desktop Entry]\nType=Application" > $autostart_file
echo Exec=gsettings set org.gnome.shell enabled-extensions \"$active_extensions\" >> $autostart_file
echo -e "Hidden=false\nNoDisplay=false\nX-GNOME-Autostart-enabled=true\nName=Restore Extensions\nComment=Restore enabled extensions on login" >> $autostart_file
echo "Command to restore currently active extensions added to $HOME/.config/autostart/restore-extensions.desktop"
exit

Сохраните скрипт ~/.local/bin/extension-update, сделайте его исполняемым (установите его в окне свойств файла или запустите chmod +x ~/.local/bin/extension-update) .

Затем каждый раз, когда вы запускаете extension-update, он будет обновлять файл автозапуска в ~/.config/autostart/restore-extensions.desktop (он, вероятно, будет отличаться от другой записи автозапуска, если вы создали ее вручную, как описано выше, поэтому, если вы создали ее вручную, вы можете удалить ее) - вы можете проверить, gnome-session-propertiesчтобы удостовериться.

Уилф
источник
Здравствуйте, @Qasim, это решает вашу проблему?
Уилф
1
Правой строкой в ​​ответе wilf будет gsettings set org.gnome.shell enabled-extensions "['use ... ... blogspot.com']" (изменил "get" на "set", включив расширения). (Простите за плохой английский).
1
Это отличное решение! Я использую его, когда гном сбой и все расширения отключены
PythoNic
1
Тот же скрипт переписан на Python: gist.github.com/sirex/ddf64bb5697271f8da02
sirex
9

Редактировать: мне кажется, что выбор 'System Default' вместо 'gnome' на экране входа в систему мне подходит

Это известная ошибка: https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1236749

Похоже, что связано с расширением TopIcons, попробуйте отключить это сейчас: https://extensions.gnome.org/extension/495/topicons/

user203863
источник
У меня та же проблема, что и у @sijoune. У меня есть проблема независимо от того, установлен ли TopIcons.
Swarnendu Biswas
Я удалил TopIcons и проблема не исчезла. В моей установке Arch, хотя все работает без нареканий ... странно.
Христос Базиотис
Я вижу, что если я сначала войду в cinnamon, а затем в gnome shell, тогда расширения будут включены.
Сварненду Бисвас
То же самое у меня та же проблема
Касим
Для тех, кто не выбирает среду рабочего стола при выборе «Системного значения по умолчанию», попробуйте выполнить следующие действия на терминале и перезагрузите компьютер: gsettings set org.gnome.desktop.session session-name 'gnome'
amfcosta
4

В меню входа в систему установите параметр «системное значение по умолчанию» вместо «gnome или classic», расширения должны оставаться включенными после перезагрузки. Работал на меня!

Ubuntuser
источник
1
Не работает, если вы решили включить автоматический вход после.
Хунсу
Для тех , кто не получит рабочую среду при выборе «System Default», выполните следующие действия на терминале и перезагрузку gsettings набора org.gnome.desktop.session сессионных-имя «гном»
amfcosta
-1

Я исправил проблему (в openSUSE, но может быть такой же для вас), удалив ключ dconf для включенных расширений, перезапустив оболочку или выйдя из системы, а затем повторно активировав расширения в инструменте настройки.

Некоторые расширения в dconf на самом деле не были установлены ... похоже, это проблема, так как она работает сейчас ...

Надеюсь, это поможет.

brainstormtrooper
источник