web-dev-qa-db-ja.com

単一のアプリケーションを表示するために使用できるUbuntuの最も基本的なウィンドウマネージャーは何ですか

Xinitを使用して、ウィンドウマネージャーなしでフルスクリーンアプリケーションを起動しようとしましたが、これは機能しますが、画面の左上から起動する代わりに、画面の中央のどこかで起動します。

/ usr/share/xsessionsのカスタムエントリを使用して同じことを試み、デフォルトのubuntuウィンドウマネージャの代わりにlightdmから起動しましたが、同じ結果が得られます。

その後、ubuntuウィンドウマネージャーのスタートアップアプリケーションにアプリケーションを追加しましたが、これは正常に動作しますが、デスクトップ全体を起動したくありません。

したがって、おそらく単純なウィンドウマネージャーを使用して、アプリケーションが読み込まれるとすぐに起動し、その結果、画面の左上隅から全画面表示されるように定義できると考えています。

したがって、基本的には、アプリケーション以外のすべてを無効にすることができるウィンドウマネージャーです。 (そして、アプリケーションの読み込みが完了するまで画面が黒になるように、デフォルトで背景は完全に黒でなければなりません

7
TimothyP

ratpoisonウィンドウマネージャー は、あなたが望むものです。

  1. Ratpoisonをインストールする

    Sudo apt-get install ratpoison
    
  2. ユーザーを作成し、そのユーザーに自動的にログインさせます。

  3. /usr/share/xsessions/kiosk.desktopにデスクトップファイルを作成します

    [Desktop Entry]
    Encoding=UTF-8
    Name=Browser Mode
    Comment=Kiosk desk Session
    Exec=/usr/share/xsessions/run_kiosk.sh
    Type=Application`
    
  4. /usr/share/xsessions/run_kiosk.shを作成します。以下を変更して開始します

    #!/bin/bash
    /usr/bin/ratpoison &
    
    TERMINAL=`who | awk '{print $2}'`
    
    if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
            eval 'dbus-launch --sh-syntax --exit-with-session'
    fi
    
    rm -Rf ~/.config/google-chrome
    dbus-launch /usr/bin/google-chrome --no-default-browser-check
    rm -Rf ~/.config/google-chrome
    
    kill `ps | grep dbus-launch | grep -v grep | awk '{print $1}'`
    
  5. これにより、起動ごとにChromeがリセットされます。 /opt/google/chrome/master_preferencesのデフォルトの設定を使用して、Chromeを設定します。

  6. デフォルトのデスクトップをキオスクとして設定します。

    Sudo /usr/lib/lightdm/lightdm-set-defaults -s kiosk
    
10
Ryan Collins

素晴らしいウィンドウマネージャー ;をご覧ください。それはタイルウィンドウマネージャーです。非常に軽量です。

デフォルトで全画面レイアウト、黒い背景に設定することができます-構成システムの感触をつかむためにウィキを見てください。あなたの場合の最小限の設定には次のようなものが含まれます:

依存関係が必要です:

require("awful")
require("awful.layout")
require("awful.util")
require("awful.tag")
require("screen")
require("freedesktop.utils")
require("freedesktop.desktop")

次の方法でレイアウトをフルスクリーンに制限します。

layouts =
{
    awful.layout.suit.max.fullscreen
}

次に、アプリケーションのタグを定義します。

-- {{{ Tags
-- Define a tag table which will hold all screen tags.
tags = {
     names = {"your_app" },
     layout = {layouts[1]}
}
for s = 1, screen.count() do
   -- Each screen has its own tag table.
   tags[s] = awful.tag(tags.names, s, tags.layout)
end
-- }}}

アプリケーションを開始するには、構成の最後に次を追加します。

awful.util.spawn("/usr/bin/your_app --with --options")
2
Tom Regner

私は個人的な経験はありませんが、「linux kiosk」を検索すると多くの結果が得られ、そのトップは http://www.techrepublic.com/blog/doityourself-it-guy/diy-tiny- core-linux-a-great-kiosk-and-emergency-platform/1565

1
Karthik T