FC2ブログ

独自GNOME Shellテーマの作り方?

★画像アップ先の不調により、過去のエントリーで画像が見られないものが多数あります。もし画像の見たいものがありましたらご連絡いただければ復活するようにします。

GNOME Shell Extensions(機能拡張)の設定の仕方を勉強した のエントリーで、「(UbuntuのShellテーマを)別途テーマファイル化する方法をご存知でしたら教えてください」と書いたところ、yakoba さんからヒントとなるコメントをいただいたのでご紹介します。

参考となるGDM Arch wikiサイトGDM
GNOME Shellテーマの作り方


\もしよかったらお願いします。/
●受取人の欄にmoebuntu★gmail.com(「★」は「@」に置き換える)で寄付(15円〜)できます。
Amazonギフト券(Eメールタイプ)
Amazonギフト券(Eメールタイプ)

コメントの内容

ExtensionsのUser Themesを使わずに変更する場合は
/usr/share/gnome-shell/のgnome-shell-theme.gresourceの編集が必要です。
GDM Arch wikiを参考に
gresourceを展開。
gnome-shell-theme.gresource.xmlを作成。
中のgnome-shell.cssの編集。
glib-compile-resourcesでgresourceを作成。
元のファイルを上書き。
になります。

手順

具体的な手順は上記サイトGDM の「設定」の項目に書かれています。

GNOME Shell テーマの抽出

GNOME Shellのテーマはバイナリ形式のファイル (gresource) に保存されているので、エディター開いて以下のスクリプトをコピペして「extractgst.sh」の名前で保存、そのスクリプトを走らせればホームディレクトリに抽出されるようです。

#!/bin/sh

workdir=${HOME}/shell-theme
if [ ! -d ${workdir}/theme ]; then
  mkdir -p ${workdir}/theme
fi
gst=/usr/share/gnome-shell/gnome-shell-theme.gresource

for r in `gresource list $gst`; do
    gresource extract $gst $r >$workdir/${r#\/org\/gnome\/shell/}
done

抽出してみる

上記スクリプトを自身のホームに置いておき端末(Ctrl+Alt+T)を開いて以下を入力適用すればOKです。($は含まない)

$ sh extractgst.sh

抽出した内容
GNOME Shellテーマの作り方

見事「GNOME Shellテーマ」の抽出ができました。ただし、これUbuntu 17.10上でやったのですが、Ubuntu 17.10のテーマは「ubuntu.css」でそれに相当する「gresource」ファイルは見当たりません。その辺がわかれば応用でUbuntuのShellテーマを抽出できそうです。詳しい方教えていただけると助かります。

gnome-shell-theme.gresource.xmlの作成

テーマファイルとして再コンパイルする際に以下のような「gnome-shell-theme.gresource.xml」ファイルを作る必要があるようです。これはディレクトリ内のファイル構成を示すものですね。

テーマファイル名を変えたい場合は「gnome-shell.css」と「gnome-shell-theme.gresource.xml」の「gnome-shell-theme」の名前を変えるのでしょうか? これも教えていただけると助かります。

また、この「filename」のところは背景画像のファイル名に置き換えるとありますが、背景画像を含めない場合は省いてよさそうな? Ubuntu 17.10 (Artful Aardvark)でログイン画面に好きな背景画像を設定する方法では背景画像は「gdm3.css」で指定されています。

GNOME Shellテーマの作り方

独自カラーのテーマを準備

抽出した中にある画像ファイルとgnome-shell.cssを編集(色変え)すれば独自のテーマとなると思われます。ただし上記でも書きましたが、Ubuntu 17.10の場合は使われているのはubuntu.cssとなります。

ちなみに上記cssは「#◯◯◯◯◯◯」のHTMLカラーコードとRGBAカラー(透明度が必要な部分)で構成されています。

テーマファイルを作成

必要なデータが揃ったら以下のコマンドで「gnome-shell-theme.gresource」ができるので、「/usr/share/gnome-shell」にコピーすればいいらしい。事前になにかコンパイル用の“アイテム”がいるのかな?

$ glib-compile-resources gnome-shell-theme.gresource.xml

【追記】
コメント頂きました。事前に「libxml2-utils」をインストールしておかないと、XMLLINT へのパスが見つからないというようなエラーメッセージが出るそうです。

まとめ

とりあえずいただいたヒントを元にまとめてみました。これで大まかな流れはだいたいわかりましたが、わたしのレベルではまだわからない点がたくさんあるので、詳しい方教えていただけると助かります。

関連記事

テーマ : Linux
ジャンル : コンピュータ

コメントの投稿

非公開コメント

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます

Re: No title

tapaboy さん、こんにちは。

コメより先にご覧になられていると思いますが、おかげさまでとりあえず萌え化テーマ完成しました。

> 私の環境ではうまくいきませんでした。

わたしが弄った時点からアップデートとかで環境が変わったのかもしれませんね。

関係ないかもしれませんが↓によるとWayland環境だとsudo nautilusとかできないとか?
Ubuntu 17.10 その98 - Ubuntu 17.10の既知の問題
https://kledgeb.blogspot.jp/2017/10/ubuntu-1710-98-ubuntu-1710.html

あと↓ここでGDM3のCSSファイルの変更について言及があります。
Ubuntu 17.10 - 「A」から始まりGNOMEに原点回帰
http://ubuntuapps.info/blog-entry-993.html

> おそらく、Ubuntuカスタマイズ版ではなく、素の GNOME-Shell を使うときには、 gnome-shell-theme.gresource の方を読み込むのではないかと想像してます。

わたしもそんな気がしています。Ubuntuの方はテーマの扱いとかまだ荒削りみたいですね。

> なお、glib-compile-resources を使う際には、あらかじめ libxml2-utils をインストールしておかないと、XMLLINT へのパスが見つからないというようなエラーメッセージが出ます。

情報ありがとうございます。
プロフィール

TOY

Author:TOY
萌え萌えmoebuntu
ようこそ!
moebuntuサイト
moebuntu wiki
お気軽にコメントください。

Auto-Translate
最新記事
最新コメント
tweet
萌え萌えAD




月別アーカイブ
12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01 
カテゴリークラウド
RSSリンクの表示
リンク
QRコード
QRコード
最新トラックバック