web-dev-qa-db-ja.com

Linuxの壁紙としてHTMLページを設定する

Linuxの壁紙としてJavaScriptを使用してHTMLファイルを設定したいと思います。 Openboxを実行していますが、これがデスクトップの背景になるように設定するにはどうすればよいですか?

6
ShadowPrince

前に提案したように、バックグラウンドで軽量ブラウザを実行することをお勧めします。

このブラウザ これを使用して単一のページを背景として設定するだけなので、完璧なはずです。 WebKitを使用しているので、すべてが正常に表示され、起動がすぐにできるほど軽量です。

Gtk、webkit-gtk、python、およびwebkit-gtkのpythonバインディング(多くのディストリビューションにデフォルトでインストールされ、ほとんどのパッケージマネージャーから利用可能))がある限り、それを保存できます。たとえば、browser.pyとしてホームディレクトリに追加し、次のようなものを追加します。

python ~/browser.py YOUR_WEBSITE &     #browser.py requires http:// before remote urls

〜/ .config/openbox/autostartに移動して、openboxと一緒に起動します。

次に、〜/ .config/openbox/rc.xmlを編集して、<applications>セクションの下に次のようなものを含めることができます。

<application class="Browser.py">
  <decor>no</decor>
  <maximized>yes</maximized>
  <layer>below</layer>
  <desktop>all</desktop>
</application>

「W-d」のようなキーバインディングを機能させるには、wmctrl(ほとんどのパッケージマネージャーでも利用可能)をインストールすることをお勧めします。

このスクリプトは、開始されているかどうかに関係なく、「デスクトップ」に移動するはずです(元のスクリプトについては、 ここ を参照してください。また、スクリプトの前に実際のデスクトップが表示されるのにわずかな遅延がある場合がありますブラウザに焦点を合わせますが、面倒になるほどで​​はありません。):

#!/bin/sh

terminal_wm_class="Browser.py"
terminal_exec="python ~/browser.py YOUR_WEBSITE"

# no terminal started, so start one
if [ -z "`wmctrl -lx | grep Browser.py`" ]; then
    $terminal_exec &
else
    wmctrl -x -a $terminal_wm_class
fi;

それをshowdesktop.shのようなものとしてホームディレクトリに保存してから、〜/ .config/openbox /rc.xmlのデフォルトのW-dキーバインドを置き換えることができます。

<keybind key="W-d">
  <action name="ToggleShowDesktop"/>
</keybind>

<keybind key="W-d">
  <action name="ToggleShowDesktop"/>
  <action name="Execute">
    <command>~/showdesktop.sh</command>
  </action>
</keybind>

完了したら、Aタブで前のウィンドウに戻ることができます。

(ウィンドウレイアウトを保持したい場合は、CA-LeftまたはW-F4などを使用して空のデスクトップに切り替え(デフォルトのrc.xmlを参照)、次にCA-RightまたはW-F1などを使用して戻すのがおそらく最も簡単です。 。、キーバインドと現在のデスクトップによって異なります。)

何らかの理由でスタートページから移動した場合は、ウィンドウを閉じて(A-F4のデフォルト)、W-dを押してshowdesktop.shを実行し、ホームページに戻ることができます。

これらはどれも変更したり、他のものなしで使用したりできるので、自分に最適なものを自由に使用してください。

6
RandomPseudonym

HTMLファイル自体を壁紙として使用することはできないかもしれませんが、おそらくxsetroot -bitmap filename...を使用してかなり近づくことができます。毎分HTMLをビットマップとしてレンダリングするcronジョブを設定し、xsetrootを実行します。背景画像にします。 Googleは私に this をHTMLからビットマップへのレンダラーとして提供します。私はそれを試したことがないので、ダウンローダーに注意してください。

2