web-dev-qa-db-ja.com

すべての新規ユーザーに同じテーマをChromiumに自動的に適用するにはどうすればよいですか?

注:Chromiumとは、Google ChromeとChromiumの両方を意味します。

アプリケーションに同じ設定をすべての新しいユーザーに適用することについて知っていることは、/usr/share/glib-2.0/schemasでスキーマ/オーバーライドファイルを定義するか、フォルダー/ファイルを/etc/skelにコピーすることです。

新しいユーザーが作成されると、そのユーザーには自動的にgsettings/configファイルが与えられます。

私の質問は-Chromiumにテーマを適用し、これをすべてのユーザーに適用するにはどうすればよいですか? Chromiumはgsettingsタイプの設定を使用しますか?もしそうなら、どれ?

Chromiumは設定ファイルを使用しますか(例:~/.config)?もしそうなら、どれ?

私はたまたまGnomeまたはUnityのいずれかを使用していますが、どの答えもデスクトップ環境に当てはまると思います。


私はこれを見つけました link Chromeの同様のQに対して-しかしWindowsの場合。

これは何らかの形でUbuntuに適用されますか?Chromiumにも適用されますか?


一般的な部屋で簡単なチャットをしていた... /etc/chromium-browser/customizationsが言及されました-これは、テーマのために何をする必要があるかについての手がかりを与えるかもしれません。

7
fossfreedom

ユーザー設定ディレクトリ

Chromiumは~/.configディレクトリ(Google Chromeでは~/.config/chromium-~/.config/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(またはGoogle Chromeの場合は/etc/opt/chrome/policies)を使用することです。 Chromium 管理者向けドキュメント には、Windows、Mac、および Linux のページがあります。

基本的に、Linuxでは、policies/managedおよびpolicies/recommendedのJSONファイルを使用します。 managedディレクトリは、強制される設定用です-ユーザーはそれらを変更できません。

Linuxに指定された例を適用します。

$ cat /etc/chromium/policies/managed/test_policy.json
{
  "HomepageLocation": "www.chromium.org",
  "HomepageIsNewTabPage": false
}

現在、Chromiumでは、ホームページはwww.chromium.orgにロックされています。同様に、ファイルがrecommendedにあった場合、ユーザーはホームページを変更できます。

現在のポリシーのリストが利用可能です here 。ポリシー、その説明、および値の例をリストします。

テーマまたは拡張機能をインストールするには、 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 Extension および GData Centers 1 Council Bluffs、Iowa テーマがインストールされます。


/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が示すことにも関わらず、何らかの理由で、Ubuntu 14.04の 2ビットパッケージ のみがあり、 64ビットの1つ。)

Chromiumのコマンドラインフラグのリストは、 http://peter.sh/experiments/chromium-command-line-switches/ にあります。
Chromiumウェブサイト

discover_registration実行可能コマンド ではないようです-シェル関数かもしれませんが、これらのファイルは通常のシェルでは解析されないのではないかと疑っています。いずれにせよ、この方法は十分に用途が広くないと思います。andユーザーがいくつかの設定で開始するだけなら、オーバーライドするのは難しいですそれらを後で変更させます。そして、フラグはテーマや拡張機能をインストールする方法を提供していないようです。


GSettings

システム上のdconf-editorのクイックスキャンは、Google Chromeがそれを使用していないことを示しています。どちらも、 明らかに(@Sergに感謝) 、Chromiumはありません。


結論

つまり、最初の2つの方法のいずれかを使用でき、Google ChromeはChromiumがサポートするものをすべてサポートしますが、パスは異なります。 Chromiumには/etc/chromium-browser~/.config/chromiumがありますが、Google Chromeにはそれぞれ/etc/opt/chrome~/.config/google-chromeがあります。最初の方法は1回限りの初期化には問題ありませんが、それ以外の場合は2番目の方法が必要になります。

ポリシーを使用してすべての設定を構成できるわけではないため、両方を使用する必要がある場合があります。

4
muru