Linuxデスクトップの多彩さと進化に驚いた。Xfce4でMac風ChromeOS風デスクトップをつくる

偉そうで恐縮ですが最近のLinuxDE(DesktopEnvironment)の進化に驚いています。完全に主観ですが、以前に比べ機能的にも見た目的にもブラッシュアップされています。DEカスタマイズ記事は今更感ありありですが現在(2018/04)時点におけるカスタマイズで、
  1. Mac風デスクトップ
  2. ChromeOS風デスクトップ
のかっこいいクローンが作れます。アプリをOS公式リポジトリからインストールし簡単な設定を済ませるだけで、





追記:2020年版を更新しました。最新のカスタマイズ方法をどうぞご覧ください









1, Mac風デスクトップ
Chromium & Chrome のメニューバーもマウントできる。 クリック・タップで拡大


2, ChromeOS風デスクトップ
クリック・タップで拡大

のカスタマイズ可能です。使用アプリとかセッティング方法とかを記事にしてみました。





使用OSはManjaroLinux

Arch BasedなManjaroLinuxで、DistroWatchでも上位ランクの人気OSとなっています。https://distrowatch.com/?language=JP
デフォルトDEはXfce4。公式パッケージマネージャのPacmanのみを使いそれぞれデスクトップの作ります。AURパッケージは除外しています。




使用PC:ThinkPadE530 メルカリで5500円でゲットしたノートパソコン スペックとか

  • モデル名 ThinkPadE530
  • CPU Core i3 2348M 2.30GHz SandyBridge  
  • メモリ 4GB
  • HDD(マウンタあり)、DVDドライブなし。
ManjaroLinuxをインストールしたところからカスタマイズを始めます。







Xfce4 Mac風デスクトップ

  1. メニューバーが上部パネルにある
  2. ランチャードックがある
  3. ウィンドウのナビゲーションボタン(閉じる、最大化、最小化)が左にある
あたりがMac風の条件な気がします。



Mac風デスクトップの構築方法 2つのアプリをインストール

  • appmenu(ウィンドウのメニューバーをパネルに表示する拡張)
  • dockbarxX(ドックランチャー)
以下のコマンドをターミナルから
$ pacman -S appmenu-gtk-module appmenu-qt4 vala-panel-appmenu-registrar vala-panel-appmenu-valapanel vala-panel-appmenu-xfce xfce4-dockbarx-plugin libdbusmenu-glib  libdbusmenu-gtk2  libdbusmenu-gtk3

$ `xsettings -p /Gtk/ShellShowsMenubar -n -t bool -s true` `xfconf-query -c xsettings -p /Gtk/ShellShowsAppmenu -n -t bool -s true`

※トップパネルにメニューバーが表示されないときは、一度ログインしなおしてください。

xfce4のパネルのロックを外し、クリックドラッグでパネルを上部へ持っていき、appmenuのアップレットを配置すれば完了。



メニューバーをパネルに表示するGlobalMenuの歴史・変遷

GlobalMenuは、UbuntuのUnityDesktopで標準採用されておりました。それ以前は、gnome2デスクトップアプレットで使うものでしが。メニューバーのマウントはgtkアプリ限定で、firefoxやchromiumの他、libreofficeなどのJava製アプリでは使えませんでした。

gnome以外にも、xfce4やlxdeでアップレットとして使えるようになり、gnome3にポートされたり、色々あってgtk2系で使い続けられるようにフォークされたTopMenuが派生していたと記憶しています。

TopMenu: https://git.javispedro.com/cgit/topmenu-gtk.git/
TopMenuのコミット履歴をみると、直近が2年前くらいなのであまり開発が活発な様子ではないのだろうか?

今回インストールしたAppmenuはこちら
https://github.com/rilian-la-te/vala-panel-appmenu
現在(2018/04/26時点)でもアップデートされているっぽいのが、公式リポジトリから(つまりPacmanから)インストールできるappmenu。Gitページには、
Vala Panel Application Menu is a Global Menu applet for use with Vala Panel, xfce4-panel and mate-panel (Budgie 10.x is also planned). unity-gtk-module is used as a backend, and thus must also be installed (see instructions, below).
引用元: https://github.com/rilian-la-te/vala-panel-appmenu
とあり、globalmenuのxfce4 mate budgie向けの拡張なんですね。



AppMenu メニュバーマウンタの機能

インストールするだけで、gtk,qt製アプリのメニューバーをマウントして使えていますし、gtkテーマのとの整合性もとれています。AppMenuで追加されている機能にアプリが何も起動していない状況でも文字が表示される、があります。

enter image description here
globalmenuやTopmenuは、アプリが起動していないと、パネルに文字が表示されませんでした。
よりMac風になりました。表示されている文字は、ホームディレクトリのフォルダたち。ポップダウンウィンドウでファイルマネージャによる参照が可能になっています。


ランチャードックアプリDockbarX

ManjaroのリポジトリからインストールできるDockbarx。これ自体単体でもドックとしてつかえますが、dockbarx-xfce4は、dockbarをxfce4のアプレットとして格納できるようにするものです。アプリの起動とアイコンクリックによるタスクスウィッチングが可能。パネルの設定よりアプレットを追加する。


ナビゲーションボタンを左へ

  1. xfce4の設定>ウィンドウマネージャより設定。
  2. Chromiumは、タブバーの何もないところで右クリック>システムとタイトルバーと枠線を使用をチェック。
ChromiumのGtk3テーマ統合がかなりいい感じ。Macデスクトップはこれで以上です。つづいてChromeOS風デスクトップです。




Xfce4 ChromeOS風デスクトップ

私のメインPCがChromeBookなので、Windows風ではなくChromeOS風としてます。
これがどうしてChromeOS風デスクトップなのかというと
  • パネルが下部配置のWindowsスタイル
  • ChromiumのナビゲーションバーがGtk3Themeと統合された
という理由から。Chromium & Chrome がGtkネイティブテーマと統合されたというのが大きな理由



ツールボタンの挙動(というか見た目)がChromeOS風

ChromeOSのAURAデスクトップでは、ウィンドウを最大化すると、ナビゲーションボタン(最小化、最大化、閉じる)バーの高さが小さくなる、というウィンドウマネージャの挙動があります。


ChromeOS
enter image description here
unMaximized Window


enter image description here
Maximized Window


Chromium on ManjaroLinux
enter image description here

enter image description here


Gtkテーマと統合的になり、ウィンドウマネージャのツールボタンハイトが最大化しているときは小さく、そうでないときは多き目という動作をLinuxにおける最近のChromiumは獲得しています。

細かいですけど、よりデスクトップテーマの一体感が増しました。デスクトップの概観を好きなようにカスタマイズすると、以前はChromiumだけ独自テーマという状態だったので、メインブラウザで使用頻度が高いアプリのにカスタマイズに今一歩感がでて、なんだかなぁでした。現行Chromium(・∀・)イイ!!




ChromeOSにあって、Xfce4にもほしい機能(挙動)

  1. ウィンドウ最大化ときのスムース遷移アニメーション効果、
  2. 下部タスクパネルの透明度変化ギミック
はまだxfce4デスクトップにはありません。xfce4デスクトップはChromeOSデスクトップを目指しているわけではないので、実装される予定はないと思います。






さいごに 〜風デスクトップカスタマイズの意味

デスクトップのカスタマイズは基本的には、個人の満足以外にないと思いますが、〜風デスクトップカスタマイズのメリットを3つあげると、
  1. Linuxへの移行ハードルを下げる
  2. 画面面積を有効に使う
  3. Mac風デスクトップを自分好みにしたい需要に答える
    が挙げられます。
は、例えば、MacユーザーはMac風デスクトップを使うことで、WindowsユーザーはWindows風を使うことで、Linuxデスクトップとの操作感の違いを極力吸収し、メインPCをLinuxへ移行しやすくさせます。

は、Mac風デスクトップの場合、アプリウィンドウのメニューバー1行分をなくすことができるので、画面を広く使えるようになりますね。

Macは画面の小さいパソコンでこそ使いやすいOSだと思います。逆に大画面では、各ウィンドウにメニューバーがあったほうが、マウスの移動距離が少なくて効率よいのでは?とか思ったり。

は、例えば、Mac風メニューバースタイルでも、ウィンドウのナビゲーションボタンは右側にほしい、とか変態的なカスタマイズが可能です。

私は右ききなので、実はMacのナビゲーションボタンが左にあるスタイルが慣れないと感じていました。ボタンは右にあると嬉しいWindows派です。だから、メニューバーは上部パネル表示で、ナビゲーションボタンは右に、ドックは右にというような、WindowsとMac混合スタイルが一番しっくりくる。実際。ユーザーの好みに合わせたデスクトップをつくれます。あとやっぱりデスクトップカスタマイズってハマり要素ですよね






まとめ Linuxは下位目標なことを忘れてる

LinuxDEカスタマイズは楽しいので、お部屋の模様替え感覚で定期的にデスクトップをいじって気分をリフレッシュし、モチベーション維持するなんてどうでしょうか?

LinuxでもChromeやChromiumが動きますのでフルLinuxでも困難はないものです。

ここにきて自身への戒めをこめて言うのですが、非理系+事務作業でしかPCを使わないいわば文系サンデープログラマーにとっては

Linuxは下位目標である

ということを忘れてはならないです。

私のようなLinuxerへのメタワードは、インストール厨、ブラウザだけあえば生活できる、パソコンオタク、etc。

つまり、Linuxを使って何を実現したいのか?が大事です。

上位目標を何に設定するか?を見失わないようにしないといけません。私の上位目標は、今のところ(2018/04/26現在)
  • Webサーバーを立ててMCSを運営する
  • ルーターサーバーを立てる
  • Inkscapeでドローイングする
  • ラズベリーパイとarduinoでものづくりをする
  • Sambaサーバーを立てる
です。どの目標もちょっとづつしか進んでいかないのですけど、かならずやり遂げたい。


コメント

item