つれづれ日記 2021年5月

予定

毎日


2021年5月24日 (月曜日)

08:44:24 # Life memtest86+が起動しなかった。ふと調べたらどうも5.01 は2014年から更新されていないバージョンっぽい。 なんかだめっぽいので調べていたら新バージョンがでているっぽい。 ソースを眺めてみると大きいメモリに対応しているような気がする。 SMBIOSのフィルドsizeが最大値になるとext_sizeというフィールドを参照するようになっているのかな。このサイズはなにかよくわからないけど良さそう。 SMBIOSのスペックを眺めてみると、32GB 以上の場合は適用されるのかな。

2021年5月23日 (日曜日)

11:27:03 # Life 先週土曜日はDebian勉強会でした。今回はGoの話をしました。知らないことを調べながら発表する感じだったのですがいかがでしょうか。なんかもっと詳しい人に話をしてほしい気もするんですが、まぁこれぞ勉強会。 そこで今回ちょっとあせったのが画面の共有。Debianのデフォルトは最近Waylandなんですが、どうもChromeからX11以外の画面の共有ができないっぽい。 EmacsのWindowはX11なので共有できるんだけどGNOMEのアプリケーションのWindowが共有できないのでした。 バグ報告はしてみたんだけどここ、どうなるかな? いまんところWaylandで困っているのはIMEと画面キャプチャーということになるのかな。

OBSでXcompositeキャプチャーで同じ症状なのでこれは不便だな。

2021年5月22日 (土曜日)

16:30:55 # Life 今月読んだ本の読書メモ。

2021年5月16日 (日曜日)

10:04:25 # Life ChromeBoxとDebianマシンでのKVM Switchの利用メモ。 KVMといえばカーネル仮想化なんだけど以前はKVM Switchのことだった時代がありました。 そのころはPS/2とかDSUB 15ピンだったんだけど最近はUSB+HDMIが主流みたい。 USB-C(dP alt mode)だったら電源も含めて一本ですむんじゃないかとか思うけどそれはあまり普及していない気がする。 パソコンとディスプレイと周辺機器の間にそれぞれUSBケーブルとHDMIケーブル3本づつくらいつなげることになる。 買ったのはよくわからないけど適当にやすかったので ES-Tune KVM切替器 2入力1出力 HDMIモニター USB切替器 2入力4出力 USBハブ 手動式。 自動である必要ないかなというかむしろコンピューターがサスペンドするたびに勝手に切り替わっていくのは微妙かも。本体は小さいんだけど太いケーブルがたくさんつながるので邪魔になるのでテーブルの裏に這わせている。 結果として有線のリモコンがついているのもよいかなと思った。キーボード・ショートカットもあるっぽいんだけど使ってない。 サスペンドからのリジュームが鬼門で、どうもパソコン側から給電している仕組みらしくそうするとリジュームのタイミングでUSBハブが反応しないことがある。デバイス自体はSuperTop USB Hub 14cd:8601 のようだ。 そして、切り替えの仕組み的にはパソコンから見えるにはUSBケーブルは抜けているような挙動になっているようです。HDMIのほうは特に検出していないような。 たまにサスペンドリジュームでUSBハブが復活に失敗している模様でその状態になるとキーボードに反応しないので焦るんだけどUSBケーブルの抜き差しでなおります。 音はUSB Mixer経由で録音、HDMIディスプレイ経由で再生、どちらも昔のKVMにはなかった仕組みで多分当時は3.5mmアナログミニプラグ端子で接続していたんだろうな。

[105071.287587] usb usb3-port2: Cannot enable. Maybe the USB cable is bad?
[105072.187749] usb usb3-port2: Cannot enable. Maybe the USB cable is bad?
[105072.187836] usb usb3-port2: attempt power cycle
	

2021年5月15日 (土曜日)

08:58:47 # Life pomodoro timerのElisp。 興味があればどうぞ、ここにおいておきます。 markdownでとっているメモと統合されているのと、あと終了通知を 最初はnotification-notifyをつかっていたんですがOSC9/OSC777経 由で音がならないなぁと思った結果ssh経由のraspberrypi経由で ChromeCast経由で音を鳴らせてみました。

15:42:37 # Life DebianのSystemdでネットワークに依存するサービスを起動する。 DebianのInitシステムはSystemdです。Serviceファイルでサービスの起動を管理します。 ネットワークに依存しているサービスは network-online.target に依存するようにします。 しかしどうもサービスが起動してからDHCPがうごいているっぽくてネットワークがないというエラーをはいていました。 Debianのネットワーク管理ツールはメジャーなところでNetworkManager, systemd-networkd, ifupdown (デフォルト)の三種類があり、調べてみたところ、それぞれの仕組みが別のようです。NetworkManager-wait-online.service/usr/lib/systemd/system/ifupdown-wait-online.serviceとかがあります。 結局、ifupdown用のサービスを有効にすると起動時に待つようになりました。 しかしこれはデフォルトで有効になっているべきではないのかな?ということで一応報告してみた: 988533

	  $ sudo systemctl enable ifupdown-wait-online.service
	  $ systemctl list-dependencies network-online.target
network-online.target
● ├─ifupdown-wait-online.service
● └─networking.service

	

2021年5月8日 (土曜日)

10:03:31 # Life Linux KernelのCコメント形式。 JavaDocとは若干違うので調べてみた。@argumentとなってたり。 kernel-docのドキュメントをながめてみると結構違う。 うーむ。Emacsでうまく扱う方法はないのだろうか。

2021年5月5日 (水曜日)

09:23:12 # Life pomodoro timerをElispで実装してみた。 ここ一週間くらいはEmacs中心の日々を送っているので久々にEmacs Lispでコードをかいてみることに。 lexical binding がサポートされていたり、コールバックの扱いで悩んだり。 org modeに手を出さないで手元はシンプルな環境にしているのだけど、必要な部分は必要なだけ再実装するという方針で。 notifications-notify は結構普通に動いて音も出てくれて便利。 あらゆるメモを突っ込むMarkdownのファイルを月に一個作る運用にしているんだけどそこにPomodoroの記録も突っ込む感じで。 無事に成功したかどうかは特にトラッキングせず。

2021年5月3日 (月曜日)

08:53:38 # Life やっと新マシンでメールが読めるようになった。 procmail/formailの組み合わせで作っていたメール取得システムを書き直そうとおもって、golangで昔のシェル(sed)スクリプトを書き直した。どのメールをどのフォルダに振り分けるかというルールをシェルと20年前にSedで書いていたのだがもはや読みたくない感じになっていたので。 formail -xでヘッダを取得する部分とそれについてツールを作成する部分がカオスだったのをgolangで書いたらだいぶすっきりした。 4行のシェルスクリプトが行数は100倍くらいになっているのだけど、ユニットテストもかけたしよいか。 一番時間がかかったのはユニットテストの書き方を調べるところとgo.modの管理の仕方を調べるところ。

2021年5月1日 (土曜日)

10:43:43 # Life Lenovo ThinkCenter M75s gen2から音を出したいと思い調べてみました。 DSUB15ピンケーブルを使ってたときにはそういう仕組みはなかった気がするんですがパソコンでHDMI経由で接続している場合、 ディスプレイ経由でデジタル信号をHDMI経由で出してHDMI出力で音を出すことが可能です。 ただし、おそらく音質重視で設計はされていないきがするのでディスプレイ経由の音がよいかどうかはディスプレイによるとは思いますが。 パソコンの裏を見た感じdP2本とHDMI1本が出ています。aplay -l の出力を眺めると なんかHDMIが0から3まであります。あまりヒントがないのですが適当に試してみたらdevice 3の0番が今つなげているKVM経由のディスプレイのようでした。 card 0, device 3, subdevice 0ということのようです。 あと、使う予定はないけど内蔵のサウンドカードのヘッドホン端子がCard1にあるっぽい。まぁKVMで切り替わってくれたほうが便利なんじゃないかな。

$ aplay -l 
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 7: HDMI 1 [HDMI 1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 8: HDMI 2 [HDMI 2]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Generic [HD-Audio Generic], device 9: HDMI 3 [HDMI 3]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: Generic_1 [HD-Audio Generic], device 0: ALC623 Analog [ALC623 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
	

Junichi Uekawa