これは、xrandr
バージョン1.5.1
がUbuntuでいつ公開されるかを調べるには、どこに行くべきかという疑問のほうが多いと思いますか?これはすでにArch Linuxで利用可能で、2019年8月にリリースされました。 2010からのバグ 修正したいと思います。
Ubuntu 16.04.6 LTSの現在のバージョンは次のとおりです。
$ xrandr --version
xrandr program version 1.5.0
Server reports RandR version 1.5
私はこの問題に精通していませんが、1.5.1
ソースコードを取得してコンパイルできますか?または、xrandr
などのミッションクリティカルなアプリをソースからコンパイルしないでください。
誰もがプラットフォームでこれらの短いテストを試して、xrandr
バージョンの重要性とガンマのバグを確認できます。
現在のUbuntuバージョンには、9年間存在するバグがあります。
$ xrandr --version
xrandr program version 1.5.0
Server reports RandR version 1.5
基本的な問題はxrandr
が間違ったガンマ値を報告することです:
$ xrandr --verbose | grep ^DP-1-1 -A5
DP-1-1 connected 3840x2160+1920+0 (0xa5) normal (normal left inverted right x axis y axis) 1600mm x 900mm
Identifier: 0x43
Timestamp: 538179391
Subpixel: unknown
Gamma: 1.0:1.1:1.3
Brightness: 0.63
私の "redshift-like"アプリケーションはガンマをRed= 1.0
、Green= .88
に設定しましたおよびBlue= .77
ですが、RGBは1.0:1.1:1.3
として誤って報告されます。ここで、イメージングで明るさを.65に増やします。同時にガンマを変更しない場合、ガンマの既存の設定は1:1:1
にリセットされます。したがって、現在の値であると考えるものを渡します。
$ xrandr --output DP-1-1 --brightness .65 --gamma 1.0:1.1:1.3
画面を低くすると、画面が非常に青みがかった緑色になり、夜間の赤みがかった設定が無効になります。現在の設定をもう一度確認すると、値が再び反転していることがわかります。
$ xrandr --verbose | grep ^DP-1-1 -A5
DP-1-1 connected 3840x2160+1920+0 (0xa5) normal (normal left inverted right x axis y axis) 1600mm x 900mm
Identifier: 0x43
Timestamp: 541629314
Subpixel: unknown
Gamma: 1.0:0.91:0.77
Brightness: 0.65
したがって、xrandr --verbose
がどの値を報告していても、赤、緑、青のチャネルで実際のガンマを取得するには、常に1 / gamma
を使用する必要があります。コードを修正した後、バージョン1.5.1
がコードを正しくないかどうかをテストし、返されたガンマ値を使用する必要があります。バグがバージョン1.5.1
で修正されていると仮定すると、まだコンパイルしてテストしていません。
実際、libXrandr.so.2
とは異なり、xrandr
プログラムはミッションクリティカルではありません。これは単なるXクライアントであり、システムディレクトリの破壊を避けるためにホームディレクトリにインストールできる非特権アプリです。これを行う方法を次に示します(通常の非rootユーザーとして!):
cd ~/Downloads
wget https://xorg.freedesktop.org/archive/individual/app/xrandr-1.5.1.tar.xz
tar xvf xrandr-1.5.1.tar.xz
cd xrandr-1.5.1
./configure --prefix=$HOME/opt/xrandr/
make install
コンパイルを機能させるには、ビルドの依存関係をインストールする必要があります。つまり、次のコマンドで実行できます。
Sudo apt build-dep x11-xserver-utils
次に、インストールディレクトリから起動します。
$ ~/opt/xrandr/bin/xrandr --version
xrandr program version 1.5.1
Server reports RandR version 1.5
または、PATH
の前に$HOME/opt/xrandr/bin
を付加して、通常のシステムxrandr
と同じように起動できます。必要に応じて動作することを確認したら、システム/usr/bin/xrandr
(おそらくバックアップしたもの)を交換して、他のユーザーがデフォルトで実行できるようにすることができます。
システムバイナリを置き換える場合は、忘れずに hold 対応するパッケージ(Ubuntu 16.04ではx11-xserver-utils
)を使用して、更新によって(おそらく)以前のバージョンに置き換えられないようにしてください。
Debianの上流を見てみましょう:
関連するパッケージはx11-xserver-utils
。これが 荷物追跡システム ページです。
そのパッケージは、Debian X Strike Forceによって保守されています。 メーリングリストアーカイブ と QAトラッカー を次に示します。
バグを追跡しているので、 そのパッケージのDebianバグ追跡ページ も役立つ可能性があります。
これを書いている時点で、最新のDebianアップロードは2018年3月であり、Launchpadはそれが現在のUbuntu 19.10のバージョンでもあることを示しています。
そのため、UbuntuとDebianのどちらにも現在、パッケージ化されたxrandr 1.5.1はまったくないようです。
待ちきれない場合は、ソースからxrandr
をインストールできます。
tar.xz
ファイルをダウンロードします。
cd /tmp
wget https://xorg.freedesktop.org/archive/individual/app/xrandr-1.5.1.tar.xz{,.sig}
次に、ソースを抽出してビルドします
tar xvf xrandr-1.5.1.tar.xz
cd xrandr-1.5.1/
./configure --prefix=/usr
make
Sudo make install
次に、バージョンを確認します。
xrandr --version
xrandr program version 1.5.1
Server reports RandR version 1.5