Примечание: когда я говорю «хром», я имею в виду и Google Chrome, и хром.
Что я знаю о применении одинаковых настроек для приложений ко всем новым пользователям, так это либо определение файла схемы / переопределения в /usr/share/glib-2.0/schemas
, либо копирование папки / файла в /etc/skel
.
Когда создается новый пользователь, ему автоматически предоставляется файл gsettings / config.
Итак, мой вопрос - как применить тему к Chromium и сделать так, чтобы она применялась ко всем пользователям? Использует ли Chromium настройки типа gsettings
? Если да, то какие?
Использует ли Chromium файлы конфигурации (например, в ~/.config
)? Если да, то какие?
Я использую Gnome или Unity, но я подозреваю, что любой ответ будет применим к любой среде рабочего стола.
Я нашел эту ссылку для аналогичного Q для Chrome - но для Windows.
Относится ли это как-то к Ubuntu ..., а также к Chromium?
Быстро поболтать в общей комнате ... /etc/chromium-browser/customizations
было упомянуто - так что это может дать подсказку на то, что, возможно, должно быть сделано для тем.
Хром действительно использует a ~/.config
каталог (~/.config/chromium
- ~/.config/google-chrome
для Google Chrome), настраиваемое использование флага командной строки:
~ man google-chrome | perl -00 -ne 'print if /\.config/'
--user-data-dir=DIR
Specifies the directory that user data (your "profile") is kept
in. Defaults to ~/.config/google-chrome . Separate instances
of Google Chrome must use separate user data directories;
repeated invocations of google-chrome will reuse an existing
process for a given user data directory.
Так, самый простой способ создать новую конфигурацию состоит в том, чтобы выполнить любой из них с --user-dir=newconfig
, настройте по мере необходимости, затем скопируйте по newconfig
каталог к /etc/skel/.config/chromium
и /etc/skel/.config/google-chrome
.
Последнее, но возможно самое гибкое, путь состоял бы в том, чтобы использовать /etc/chromium-browser/policies
(или /etc/opt/chrome/policies
для Google Chrome). Документация Хрома для Администраторов имеет страницы для Windows, Mac и Linux.
По существу, на Linux, Вы используете файлы JSON в policies/managed
и policies/recommended
. managed
каталог для настроек, которые осуществляются - пользователь не может изменить их.
Я просто адаптирую пример, данный к Linux:
$ cat /etc/chromium/policies/managed/test_policy.json
{
"HomepageLocation": "www.chromium.org",
"HomepageIsNewTabPage": false
}
Теперь, на Хроме, домашняя страница заблокирована к www.chromium.org
. Соответственно, если файл был в recommended
, пользователь может изменить их домашнюю страницу.
Текущий список политик доступен здесь. Это перечисляет политики, их описания и значения в качестве примера.
Устанавливать тему или расширение, ExtensionInstallForcelist
политика может использоваться. Это не может быть recommended
, только managed
:
$ cat /etc/chromium/policies/managed/test_policy.json
{
"ExtensionInstallForcelist": [
"gighmmpiobklfepjocnamgkkbiglidom;https://clients2.google.com/service/update2/crx",
"jeonacmfdmkgfmmdejlinolgjomhcbmh;https://clients2.google.com/service/update2/crx",
],
}
Это установит Расширение Adblock и Центры GData 1 Каунсил-Блафс, тема Айовы.
/etc/chromium-browser/customizations
/etc/chromium-browser/customizations/00-example
кажется, указывает, что это может только использоваться для обнаружения плагинов и добавления флагов командной строки:
$ cat etc/chromium-browser/customizations/00-example
## Register plugins this way. The two parameters are yours to fill.
#discover_registration /path/to/plugin/plugin.info library-name
## A way to influence the running. This is read-write for you. Please
## Append only.
#CHROMIUM_FLAGS="${CHROMIUM_FLAGS} --option=value"
## Read-only variables guaranteed to be set, with example values.
#APPNAME='chromium-browser'
#BUILD_DIST='Ubuntu 14.04'
#DESKTOP_SESSION='ubuntu'
#LIBDIR='/usr/lib/chromium-browser'
#UPSTREAM_VERSION='34.0.1847.131'
(Это от 48.0.2564.116-0ubuntu0.14.04.1.1111
, между прочим, несмотря на какой UPSTREAM_VERSION
мог бы указать. И по некоторым причинам, только 32-разрядный пакет на Ubuntu 14.04 имеет его, не 64-разрядный.)
Список флагов командной строки для Хрома может быть найден по http://peter.sh/experiments/chromium-command-line-switches/, согласно
веб-сайт Хрома.
discover_registration
кажется, не исполняемая команда - это могла бы быть функция оболочки, но я склонен подозревать, что эти файлы не анализируются нашими нормальными оболочками. В любом случае я думаю, что этот метод не достаточно универсален, и трудно переопределить, если все, что Вы хотите, для пользователей для начинаний с некоторыми настройками, позволяя им изменить их позже. И флаги, кажется, не дают возможность установки темы или расширения.
Быстрое сканирование dconf-editor
в моей системе указывает, что Google Chrome не использует ее. Ни один, по-видимому (благодарит @Serg), не делает Хрома.
Все сказали, любой из первых двух методов может использоваться, и поддержки Google Chrome, которые любой Хром делает, но с различными путями. Где Хром имеет /etc/chromium-browser
и ~/.config/chromium
, Google Chrome имеет /etc/opt/chrome
и ~/.config/google-chrome
, соответственно. Первый метод хорошо для одноразовой инициализации, что-либо больше потребовало бы второго метода.
С тех пор не все настройки могут быть настроены с помощью политик, Вам, возможно, придется использовать их обоих.