画像もなしにあれなんだけど、Fedora のログイン画面を GDM に戻した話

Fedora 30 から 31 にアップグレードしたら、デスクトップのログイン画面がものすごく古くさいというか、ダサい感じになってしまった。

調べてみるとどうやらこれは、LightDM というもので、今まで使われていたモダンなログイン画面は GDM というものらしかった。
これらのソフトウェアのことを、ディスプレイマネージャと呼ぶらしい。

名前さえ解ってしまえば解決策はすぐに検索できた。

$ sudo systemctl disable lightdm.service
$ sudo systemctl enable gdm.service

PHPerKaigi 2020 に参加しています

去年に引き続き、今年も PHPerKaigi に参加しています。
ただ去年と違うのは、なんと、会社のお金で、業務時間中に参加しています!
なので、しっかり技術を身に付けて帰らないとね。

PHPerKaigi は他の勉強会と比べると、コミュニケーションに重きを置いた勉強会で、登壇者や参加者同士でコミュニケーションし合うための仕組みがたくさん用意されています。
その中でも、Ask the Speaker という企画では、発表直後に発表者に話しかけに行くことができ、今回はこの制度を使ってたくさんの登壇者の方とお話しすることができました。
(どの登壇者とどんなお話をしたかは、時間がないので後で書くかも……)

また、ゲーム企画である PHPer チャレンジにも、ゆるーく参加しています。
去年の順位はおそらく 8 位で、高い順位を維持するために必死にトークンを探していたのですが、今年は勉強会そのものを楽しむために、優先順位を下げています。
とはいえ現在 10 位で、明日ももう少し頑張ってしまうかもしれません。

と、こんな感じで、今年も楽しく参加しています。
練馬が遠くて、朝早起きしないといけないのだけがつらいのですが、明日も頑張って朝から参加します!

Firefox で隠していた新規タブボタンが再出現

Firefox でツリー型タブを導入した際に、タイトルバーにあるタブや新しいタブを開くボタンは、userChrome.css で隠していたのですが、Firefox をバージョンアップしたことで隠せなくなっていたので、再び隠す方法を調べました。

以前は .tabs-newtab-button に対して CSS をあてていたのですが、class だったのが id になったらしく、#tabs-newtab-button にあてる必要があるようです。

新しい書き方はこんな感じ。

/* 新しいタブを開くボタンの非表示 */
#tabs-newtab-button {
    display: none !important;
}

4 ヶ月連続でカンファレンスに参加してみて

昨年 12 月の PHP Conference 2018、今年 1 月の YAPC::Tokyo 2019、2 月の Laravel JP Conference、そして 3 月の PHPerKaigi 2019 と、4 ヶ月連続でカンファレンスに参加しました。
もともと学生の頃から、勉強会に参加するのは好きでしたが、こんなにも続けて参加したのは初めてかもしれません。

最近カンファレンスジャンキーという言葉をよく耳にするようになりましたが、僕もそうなりかけているのかも?
とは言っても、発表はまだしていないのだけれど。

カンファレンスのいいところは、聞いてるだけで新しい知識や情報が入ってくるところ。そして解らないことがあれば簡単に質問できて、すごい人達からアドバイスがもらえるところ。
カンファレンスで知ったことを仕事やプライベートで試してみて、仕事やプライベートで出てきた課題を解決するためにカンファレンスで学ぶ。そういうループを回していることで、だんだん成長できてる気がしています。

composer モジュールのバージョンの調べ方

composer モジュールのバージョンは composer.lock に記録されていますが、これを取り出すコマンドを考えてみました。

まずは composer コマンドを使う方法。

$ composer show --ansi laravel/framework | less -R

composer--ansi は出力結果を常に色付きにするためのオプションで、less-R は色情報を解釈してカラー表示にしてくれるオプションです。

これだと色んな情報が一度に出力されてしまうので、バージョン番号だけほしいときはちょっと不便。

なので jq を使って JSON ファイルを直接漁る方法も考えてみました。

$ cat composer.lock | jq -r '.packages | map(select(.["name"] == "laravel/framework")) | .[0].version'

jq-r は出力する文字列のダブルクォーテーションを外すためのオプションです。

Hyper-V 上の Fedora が grub2 メニュー後の解像度が切り替わるタイミングで固まる

普段から開発に使っている Hyper-V 上の Fedora 27 が起動しなくなってしまったので、その一時回避策をメモしておきます。

通常 Fedora を起動すると、初めに grub2 のメニューが表示され、タイムアウトで自動的にメニュー項目が選択されると、画面解像度が切り替わって、グラフィカルな進捗バー(スプラッシュ画面と呼ぶらしい)が表示され、その後、ログイン画面が表示されるといった流れになるかと思うのですが、画面解像度が切り替わるタイミングで以下のように上辺に赤いノイズの入った画面が表示され、そのまま固まってしまうという現象が起こりました。
Hyper-V 上の Fedora 27 が起動時に固まったときの様子

Firefox Quantum & ツリー型タブでタイトルバーにタイトルを表示する方法

ツリー型タブを使うとタブをサイドバーに表示できるようになってとても便利なのですが、Firefox Quantum 版の場合、ブラウザの制約から上にあるタブも残ってしまいます。
そこで、userChrome.css を使って Firefox 自体に独自の CSS をあてると、このタブを非表示にすることができるのですが、そうすると今度はタイトルバーに何も表示されずデッドスペースが生まれます。
タブブラウザの欠点として、タブ幅の制約からページタイトルを全て表示しきれないというところが前から不便で気になっていたのですが、折角あいたデッドスペースがあるので、そこにページタイトルを表示する方法がないか調べてみました。

Firefox Quantum は前のバージョンと比べるとカスタマイズがしにくくなっていて、アドオンを入れたら一発で解決というわけにはいきません。
ただ、userChrome.css を使って見た目を調整することはできるので、Firefox がもともと用意している要素をうまく使って、この要件をうまく実現できないか試行錯誤してみました。

AutoHotKey を更新したら Invalid Hotkey といわれた

Windows 10 のクリーンインストールに伴って、色んなソフトを入れ直していたのですが、その中で AutoHotKey 1.1 系の最新版を入れたところ、今まで使っていたスクリプトが読み込めなくなってしまいました。

読み込めなくなったのは以下の設定

; Ctrl + 無変換 で ESC キー
^vk1Dsc07B::Send, {Esc}

調べてみると vk__sc___ という表記の仕方に仕様変更があったみたいで、修正が難しそうだったので、ひとまず AutoHotKey のバージョンを最後のこの表記が有効だった 1.1.26.01 に戻したら、無事スクリプトが読み込まれました。

古いディスクからレジストリ情報を抽出

Windows 10 をクリーンインストールしたので、インストールしていたソフトを片っ端からインストールし直しています。

最近は C:\Users\<ユーザー名>\AppData\Roaming に設定を保存してくれているものが多いので、ここのファイルをコピーするだけで半分くらいのソフトは復元できました。
ただ、レジストリに設定を保存しているタイプのソフトは復元が難しく、今まで不可能だと思い込んでいたのですが、レジストリの情報はファイルに保存されているらしく、そのファイルから値を取り出せば、設定を復元できるようです。

クリーンインストールしたらブルースクリーンが出なくなった!

ブルースクリーンが出て Windows が起動しなくなったのですが、新しい SSD に Windows 10 をクリーンインストールしたら、ブルースクリーンが出なくなりました。

Windows 10 のインストール時に、インストール先のドライブを選択するところで 0x80300024 というエラーが出たのでググってみたら、どうやらドライブを接続する順番に制約があるらしく、それを直したら無事インストールできました。

もしかしたらブルースクリーンの INACCESSIBLE BOOT DEVICE の原因ってこれだったのかも……?