名もなき未知

エンジニアリングとか、日常とかそういうのをまとめる場所。アクセス解析のためGAを利用、Googleに情報を送信しています。商品紹介のためAmazonアフィリエイトを利用、Amazonに情報を送信しています。記事に関しては私が書いていない引用文を除いて自由にご利用ください。

トリプルディスプレイにしたら捗っている気がする話

最近、トリプルディスプレイにしたので、その感想を述べる。

3枚目のディスプレイ状況

Twitter に書いたが、こんな感じ。

https://twitter.com/__yumechi/status/1345655156214386688

ディスプレイの活用方法

  • もっぱら YouTube を流すだけのディスプレイにしている
    • 解像度が HD で 7 インチのディスプレイであるため、細かいものを見るのには向いていない
    • 特にテキスト系を流すのには向いていないので、Twitter とかログを流すのもあきらめた
      • ログを流すのは解像度によっては有効かもしれない、あえて解像度を落として大きく文字を表示する手もある
    • 元々 Raspberry Piデバッグ用に買ったが、それでも小さすぎて封印されていたという過去がある
  • たまにポモドーロタイマーを映すこともある
    • 時間は意識しておきたいので

現在の状況

こういう配置をしている。

f:id:MireiMixin:20210110160800p:plain

メインとサブのディスプレイはウィンドウを横に 2 分割、またはいい感じの 3 分割をしている。これらは机の上に置いている。

YouTube 用のディスプレイは机に付属している棚の上に載っている。すごく危ういバランスなので、机自体をそろそろ買い換えたい。

そのためにテレビをそろそろ処分するか悩み中。

使っているディスプレイについて

今だともう少しいいものがあると思うので(探してはない)、参考程度に。

たまたま自分の棚の上にはフィットするサイズだったので助かっている。あと HDMI に対応しているのもでかい。

DisplayPort -> HDMI の出力に関して

使っているのがゲーミング PC で、DisplayPort が 3 つ、HTDI が 1 つという構成になっている。

なので DisplayPort -> HDMI の変換が必要となる。

少し調べると DisplayPort が映像情報をパラレルに送ることに対して、HDMI は単一信号を送るような形になっているらしい(正しく理解しているわけではない)。

https://yuutosi.net/post-1064/

DisplayPort は単一信号で送ることも可能であるため、変換は容易にできる、とのことだったので変換アダプタを使って活用している。

また上記の内容からも DisplayPort -> HDMI は変換可能だが、 HDMI -> DisplayPort はできても大きく劣化するだろう。多分やらない。

一応 Wikipedia も眺めておく。

https://ja.wikipedia.org/wiki/DisplayPort

まとめ

今までサブディスプレイに YouTube 映してたのですが、サブディスプレイにはチャットを移していることもあり、切り替えを頻繁にしていた。

その手間からも解放されたしいい気分。

ただディスプレイはもう 1 枚くらい置きたい(垂れ流しにするチャットとか見る用)がほしいので、次はディスプレイアームでかなり上に吊るとかする必要がありそう。

これも今年中にチャレンジする。たぶん。

plyerをWSL2で動かす

plyer · PyPI というライブラリを使ってみた。

通知が簡単に出せるらしい。Python でバルーン(通知)出したいとき Plyer 使うとメチャ楽 - Qiita

ハマりどころ

エラーメッセージの全文は覚えていないが、ディスプレイ環境がないWSL2の環境でインストールすると失敗する。

大体「Python dbus package」あたりでこける。そもそもディスプレイがないのでインストールされていなくても仕方がないのだが…。

原因は何か

フルパス貼るといろいろ微妙(ユーザ名とか)になるので、要約だけ貼るとまず上のほうにこれが出ている。

UserWarning: The Python dbus package is not installed.
Try installing it with your distribution's package manager, it is usually called python-dbus or python3-dbus, but you might have to try dbus-python instead, e.g. when using pip.

python3-dbus なり dbus-python がないと警告が出ている。

最後に出ているのは implemention error なので、差し替えようとしているライブラリがなさそう。

NotImplementedError: No usable implementation found!

dbus-python を入れてみようとするもエラー。

pip install dbus-python

なんか無限にエラーログが出る。

これと雰囲気似てそう。

https://stackoverflow.com/questions/61285415/no-package-dbus-1-found

glib あたりが足りないので、入れてみたら dbus-python のインストールに成功した。

sudo apt install libdbus-glib-1-dev libgirepository1.0-dev

が。実際にスクリプトを実行すると、まあ動かない。下記のエラーが見える。

dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11

うーんわからん。

DISPlAY 設定周りを見てみると、Xサーバーアプリが必要なので、VcXsrv を入れてみる。設定はこの辺をパクる。

後は notification 周りの設定をなんややかんやして、なんかする(正直このあたりから覚えてない)

立ち上がる際の設定値に Exec=/usr/lib/notification-daemon/notification-daemon とあるので、 notification-deamon 入れたり、notify-send 自体が動いているかどうか確認するためにこの周りのライブラリをいれたりした。

最終的に画面の左上に通知が出るようになった。が、なんかWSL側のウィンドウの認識が少し変で、3枚のディスプレイを1枚のディスプレイとみなして通知してくるっぽい。自分の配置では一番左上のディスプレイは少し小さいものにしているので、最初動いていることに気が付かなかった。

ディスプレイ設定は xrandr で見た。見方は下記のブログを参考にした。

https://kzmmtmt.pgw.jp/?p=1733

ほか

Windows 側で動かせばすぐ動くので、すぐ動かしたい場合は Windows 側で環境構築して書くほうが早いかも。てか、そのほうが手っ取り早い。わざわざいろいろ経由して表示するのは大変すぎる。

まとめ

最初できないと書くつもりでしたが、エラーを解決してるうちに動いていたので、困ったもんです。

技術書典10関連で買った本

買った本とザクっと理由だけ

技術書典9で買った本はオンライン生活とか、リモートワークに関する本とかが多かったので、少し傾向を変えてみた(ただ技術書典9で買った本もまだ読み切ってない、読まねば)

終わり。