gnu/linux

iBusのアップデートでGNOMEのIMEの問題が直った

GitHub のプロジェクトのページを見ている感じではリリースは夏ごろかなと思っていたのだが, 今日 ArchLinux でアップデートが来た. Wayland でインプットメソッドが使えない問題も直ったので,Xorg から Wayland に切り替えることができた. Wayland に切り替えて何が嬉しいかというと,割と簡単に小数単位のスケーリングができることだ. 先日,ThinkPad X1 Carbon が届いたのだが,今回はちゃんとフルハイの解像度のを選んだので 画面の表示が小さすぎて辟易していた.それで今日のアップデートで大きく表示できるようになったので 快適になった. ただ,この小数単位でのスケーリングは問題もはらんでいるようで,GNOME のアプリ以外の多くのアプリは の解像度が低いままで拡

GNOME Shell 3.36 で IBus が使えない対処

IBus が自動起動しない(というか起動はしてるけど使えない)のは Wayland のときだけらしい。 たしかに GNOME on Xorg のセッションにすると問題なく IBus が GNOME Shell から 使えるようになっている。 この原因は,Unix ソケットを作るときに Xorg のときは DISPLAY 環境変数を見て, Wayland のときは WAYLAND_DISPLAY 環境変数を見ないといけないところを, IBus はどちらの場合も DISPLAY を見ているというところにあるらしい。 今まで Wayland でも動いていたということは GNOME Shell の実装が非標準だった ということだろうか(よく分からない)。 https://github.com/ibus/ibus/pull/2195 この PR で直っているみたいなので IBus の次のリリースには GNOME Shell on Wayland でも IBus が動くようになっているはず。 それまでは Wayland じゃなくて Xorg 使うか……。 そういえば ibus-daemon -drx とすれば wayland でも IBus が使えるようにな

SVG でターミナルを録画できる termtosvg

いろんなワードで pacman -Ss してみて眺めていたら,termtosvg というやつを 見つけたので試してみた。 結論:すごい。ただ alternative screen buffer ができないみたい。 ソース見たら CSS で表示位置をずらしてアニメーションしているように見せているっぽい? よくわからぬ。

rootfs に NTFS を使う?

しかも ArchLinux でやってる。エモい。 https://github.com/nikp123/ntfs-rootfs/wiki 正気か?POSIX のパーミッションをサポートしてないので無理な気がしたけど 非公式のサポートがあるらしい。誰得なんだろ。 安定しているの? シャットダウンできないことを除けばとても安定している。 🤔 パーミッション周りをゴニョゴニョやってるせいでパフォーマンスは悪いらしい。

ls --hyperlink の Feature Request を見つけた

https://lists.gnu.org/archive/html/coreutils/2017-05/msg00000.html こんな変なものも割と簡単に受け入れられるんだな,と思った。 で,ここにパッチとかも入ってるメール。 https://lists.gnu.org/archive/html/coreutils/2017-08/msg00038.html

Linux From Scratch

有名すぎて今更感あるけど(でも実際にやった人はあまりいないと思われ)やってみたい。 grub のコマンドを編集すると bash を init ってことにして 立ち上げたりできるので(シングルユーザーモードで起動するみたいな話), 特定の処理専用の Linux を作れるよな,と思ったところから, Linux From Scratch したいみたいな発想になってしまった。 http://lfsbookja.osdn.jp/7.10/ 翻訳のバージョンはちょっと古そうだが,英語を読むという辛さがないし, 参考にしながら腕試しがてらやってみるのもいいかな,という気持ちになった (持てる知識だけで新しい構成にしつつ起動するところまでいけるのかは微妙)。 そもそもこれは systemd じゃなさそうだし,systemd にするにはいろいろ変える必要がありそう。 まあ僕は

すごい syslog の話

なんか /var/log あたりを見ても syslog がないな,と思っていたら, systemd がすごい syslogd をやってるらしい。systemd 肥大化しすぎでは……。 で,そのログを見るには, $ journalctl とかする。 でも,これは保存されているログが古い方から全部出てしまうのでたいていの場合は用途に合わない気がする。 僕の場合は 12 月のログとかが最初に出てきてうーん,となった。 たいていの場合はログは新しい方から見たいんではないかと思うので,そういう場合は, $ journalctl --reverse とかすると,新しいものから表示してくれる。 あと --grep オプションとかもあって, $ cat /var/log/syslog | grep foobar みたいにやってたところを 1 つのコマンドで済ませられるっぽい。うーん,でもこれはなんかなー。 他には --since とか --until とかもあるっぽ

Cron

Systemd の timer という「すごい cron」があるけど,Unit ファイル作らないといけないし, 手軽さがないよなあ……。 cron は決してきれいではないけど,手軽なので使ってしまう。

Minecraft のマップの改造など

ブロックの高さと名前が出せるようになった。 パーサーをサーバーとして実行てきるようにして,PHP で Unix ドメインソケットで話させる みたいな感じにした。 サーバーの実装だけど,最初 wait してなかったせいで,大量のゾンビプロセスを作ってしまった。 これは,犠牲となる子プロセスを作ったあと,そのプロセス内でプロセスを立ち上げて レスポンスを返す感じにして,即座に終了する最初の子プロセスをwaitするようにして解決した。

PAM で遊んでみた

PAM で遊んでみた。PAM ってのは Pluggable Authentication Manager の略らしく, Linux のユーザー認証のしくみで,これの設定次第でユーザーが自由に認証の方法を変更できる。 例えばパスワード認証の代わりに指紋認証を使いたいみたいな場合もこの PAM のモジュールで実現できるはず。 当たり前だが,設定次第で認証システムを破綻(?)させることも可能で,常にログインできる PAM モジュールを使ってパスワードなしでログイン可能にしてしまったり,逆に絶対にログインできない PAM モジュールで全ユーザーを締め出したりもできてしまう。てなわけでまあ割とヤバイ部分で遊んだ。 PAM のモジュールを書くのはとても簡単な部類で,常にログインできるやつとかだと下みたいなコードで できたり