Debian と Gnome で画面の回転を設定する

Debian と Gnome で画面の回転を設定する

gpd Pocket 2 に Debian 10 をインストールしたところ、ログイン時に画面が継続的に回転しない点を除けば、問題なく動作しています。

現在、ログイン時にギアメニューから「GNOME on xorg」を選択して実行することで画面を回転できますが、xrandr --screen 0 -o rightこれはすぐに古くなります。

私はいくつかのxorgソリューションを試しましたが、成功しませんでした。私は次のスクリプトを作成しました。https://github.com/joshskidmore/gpd-pocket-2-arch-guide#install-xorg-packagesそしてhttps://unix.stackexchange.com/questions/103460/how-to-change-gnome-default-screen-rotation:

Section "Monitor"
  Identifier    "eDP1"
  Option        "Rotate"                 "right"
EndSection

そして、次の場所にインストールしました:

  • /etc/X11/xorg.conf (現在の「モニター」セクションを編集する)
  • /etc/X11/xorg.conf.d/ (このディレクトリを作成し、上記の設定で「30-display.conf」を作成しました)
  • /usr/share/X11/xorg.conf.d (「30-display.conf」ファイルを追加しました)

そして、ログイン時にすべてがちらつきます。黒いフラッシュが表示され (xrandrログイン後に実行したときと同様)、次に静的な灰色で塗りつぶされた四角形が 1 秒ほど 2 回連続して表示され、その後、画面が「通常」/横向きの向きで読み込まれます。

~/.profile に入れてもxrandr --screen 0 -o right、同じ効果が見られます。これを ~/.bashrc に入れると機能しますが、ログイン後であり、この構成を自動化したいと思います。

Debian は設定を実装しようとしているが、何かが矛盾しているような気がします。この試みをどのように進めればよいでしょうか?

編集:いくつかの新しい情報

スクリーンマネージャーを決定https://unix.stackexchange.com/a/20376/293647それは次のとおりです。

/usr/sbin/gdm3

次のリンクを読んだ後、GDM について次のことを発見しました。

https://wiki.archlinux.org/index.php/GDM#ログイン画面の回転

Changes will take effect on logout. This is necessary because GDM does not respect xorg.conf.

おそらくこれが、xorg で回転を実現できない理由です。では、次は何でしょうか?

編集2:

https://www.reddit.com/r/GPDPocket/comments/ao95t9/tracking_touch_screen_calibration_issue_on_pocket/eg0odbe?utm_source=share&utm_medium=web2x

gnome はまだ対応していませんが、上記リンクのこのコードは grub に対応しています。

sudo vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="fbcon=rotate:1 quiet"
sudo update-grub # a lot of guides are missing this step

答え1

ハッキーな解決策を見つけましたが、Debian を新規インストールする必要があります。説明させてください。


画面を修復するために、Intel ビデオ ドライバーを更新しました。

https://gitlab.freedesktop.org/xorg/driver/xf86-video-intel

私が予想していなかったのは、このドライバーが gnome をブロックしてsettings-> display->を使用して変更できないようにすることでしたorientation。そのため、コードベースのソリューションを探していました。上記の編集で述べたように、Debian 10 と GNOME を搭載した GPD Pocket 2 システムでは、GDMデフォルトでスクリーン マネージャーとして使用されるため、xorg ベースのソリューションはどれも失敗します。

そこで、この問題の解決の第一歩は Debian を再インストールすることでした。Pocket 2 の設定作業中だったので、私の場合はこれが可能でしたが、同様の状況すべてでこれが受け入れられるわけではないことも認識しています。そのため、私は自分の回答を受け入れるつもりはなく、画面を永久に修復するためのより徹底した説明と解決策を待ちます。しかし、それまでは、次のハッキーな手順を検討してください。


1) 新規インストールしたと仮定して、まず grub を修正しましょう。ターミナルで:

sudo vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="fbcon=rotate:1 quiet"
sudo update-grub                    # a lot of guides are missing this step

これにより、起動時のシステム出力と GRUB コンソール (たとえば、function+ alt+2キーバインド経由) が方向付けられますが、ログイン画面は修正されません。これは、このパズルのピースとしてまだ解決方法が見つかっていないままですが、先に進みます。

2) 次に、ハッキーな自動画面方向を組み立ててみましょう。

まず、settings-> display->に移動してorientation、 の方向portrait leftと の解像度を選択します1200x1920

ここまで読んで、目を細めても問題ないのであれば、これで完了です。デスクトップ環境はこれらの設定で起動するはずです。

3) 改善されたオリエンテーションを自動的にロードしたい場合は、次のようにします。

次に、Tweaks[->]に移動してStartup Applications[ターミナル] を選択します。

最後に、~/.bashrc ファイルの任意の場所に次のコードを入力します。

res=$(xrandr | grep \* | cut -d' ' -f4)
if [ "$res" != "600x960_60.00" ]; then
    xrandr --newmode "600x960_60.00" 47.25 600 640 696 792 960 963 973 996 -hsync +vsync
    # the above line informed from: https://superuser.com/a/716837/1078490
    # you may have to configure the line according to your cvt output
    xrandr --addmode eDP-1 "600x960_60.00"
    xrandr --output eDP-1 --mode "600x960_60.00"
fi

これで、ログインするとターミナルが起動し、.bashrc が解像度の設定を自動的に処理します。蓋を開閉するとこのスクリプトが実行されないため、ターミナルを再度開く必要があるため、理想的ではありません。ただし、蓋を閉じる前に電源ボタンを約 3 秒間押し続けると、サスペンド/ウェイク サイクルを通じて解像度が維持されます。

関連情報