tak0kadaの何でもノート

発声練習、生存確認用。

医学関連は 医学ノート

Gnome 3でモニタの回転を保存する

結論としては~/.config/autostartにシェルスクリプトを実行するdesktopファイルを置くのが楽。GPUを2枚積んでいて、uefiからは1枚目が優先されるようだが、nvidiaのドライバを入れるとGPUの認識順が逆になって1枚目につないだモニタが機能しなくなるのも注意点だった。理由は不明。

~/.config/autostart

arandrやnvidia-settingsを使って適当に画面の回転や上下関係を調節した後、arandrで設定ファイルをシェルスクリプトで書き出す。arandrはxrandrを動かすもので、出力されるスクリプトもxrandrを実行するものになる。

以下をターミナルにコピペする

mkdir -p ~/.config/autostart
cat << EOF > ~/.config/autostart/update-monitor-position.desktop
[Desktop Entry]
Type=Application
Exec=/usr/bin/xrandr --output USB-C-0 --off --output HDMI-1 --off --output HDMI-0 --primary --mode 1920x1200 --pos 0x400 --rotate normal --output DP-3 --mode 1680x1050 --pos 2970x0 --rotate left --output DP-2 --off --output DP-1 --off --output DP-0 --mode 1680x1050 --pos 1920x0 --rotate left
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[en_US]=Update Monitors Position
Name=Update Monitors Position
Comment[en_US]=Force monitors position using xrandr
Comment=Force monitors position using xrandr
Icon=display
EOF

あるいはgnome-session-propertiesを使って手作業でも登録できる。

参考: conkyのセットアップ(gnome-session-propertiesで自動起動) - toshi_hirasawaの日記

うまく行かなかった方法たち

  • /etc/X11/xorg.conf
  • /etc/X11/xorg.conf.d/20-nvidia.conf
  • /etc/X11/xorg.conf.d/10-monitor.conf
  • nvidia-settings --load-config-only
  • xinitrc
  • /etc/gdm/Init/Default
  • systemdにサービス登録
  • monitors.xmlはxmlを書くのが難しかったので試さず
  • cronもまだ試していない