Plamo Linux 日記

Plamo Linux に関係することだけではなく,最近は一般的なコンピュータやガジェット関係についても記載してます.

Qbilinux 開発について(その70): 現状のリリースバージョンの状況と開発版の状況など

Plamo Linux 6.x のソース一式からブランチして,Qbilinux という linux ディストリビューションをぼちぼちと作成.

いつまで続くのか.

情報などを記載したホームページは https://qbilinux.org/ に,ビルドスクリプトは https://github.com/qbilinux/qbilinux,バイナリは https://qbilinux.org/pub/ 以下にあります.

先日,開発用マシンの CPU 入れ替えなどを行なっていたら,環境が安定しなくなってしまったのでしばらく作業中断していました.最近,ようやく落ち着いてきたので,ぼちぼちと作業しています.トラブル詳細に関してはまた後日にでも書こうかなと思っています.結果的には全く安定しなかったので,マザーボードも交換しました.

で,相変わらず 0.4.0 の方はセキュリティフィックスとかバグ修正をぼちぼちと.

先日書いたように,一部のファイルは current の方から持ってくるように修正していたりします.あとは,ちょっと例外ですけど firefox とか openjdk は ESR, LTS のバージョンが上がったのでそちらのバージョンにアップデートしました.いつまで 0.4.x 系をメンテするか分からないので,最新 LTS にしておいた方が無難かなという判断です.

current の方から持ってきたファイルの中にはパッケージ管理周りのファイルもあったりするので,現状で 0.4.1 として一旦リリースしようかなと思っています.変更点としてはパッケージの xz ファイルの解凍を並列に行うように少しだけ手を入れてあります.このため,インストールやパッケージのアップデートが早くなっているかなと思います.また,それに関連して hdsetup パッケージもアップデートしているので get_pkginfo コマンドでパッケージの自動アップデート行おうとするとこけるので注意が必要です.詳細はリリースノートなどに記載します.

...ということで get_pkginfo コマンドのデバッグをしていたところ,全く動作しない.
症状としては wget でファイルとってくる時にエラーになっていました.どうして?って思ったらどうやら qbilinux.org サイトのサイト認証の期限が切れていてエラーになっている様子.Let's Encrypt を使っていて,かつ自動更新するように設定していたはずですが,どうやらホームページを更新した際に自動更新できなくなっていた様子.以前は concrete5 でホームページを作っていましたが,baser に入れ替えた時に設定変更するのを忘れていたらしい.

設定を変更したところ,無事更新もできて get_pkginfo コマンドも実行できるようになりました.ふう.

一方,current の方もぼちぼちと作業.

開発用のマシンの入れ替えしていた時に,何度も強制的に電源オフを繰り返していたせいで current 用の作業を行っていた SSD が使いもにならなくなってしまいました.パーティションにエラーが出まくって,いくら修復しても終わらない.仕方がないので再フォーマット.ということで,これまで行っていた作業は振り出しに戻ってしまいました.

仕方なく,gcc や glibc のアップデート作業から始めたんだけど,昔,どうやってアップデートしたのかすっかり忘れてしまって大ハマり.やっぱり,備忘録代わりにメモをきちんと残しておかないとダメですね.

対応方法の概略は過去の blog に少しだけ書いていますが,詳細に書いておくと,最初に gcc を更新した後に glibc を更新.その環境で gcc をコンパイルしようとすると glibc の /usr/include/bits/statx.h 中でエラーになります.どうやら #if __glibc_has_include ("linux/stat.h") のマクロ展開ができない様子.ファイルの有無を自分で調べて,if 文を使わないように手作業で修正.手元の環境ではファイルが存在しなかったので関連する箇所は全部コメントアウトしました.その状況で gcc をコンパイル.その後,glibc を再びコンパイルし直したらオッケーでした.

基本部分の入れ替えができたので,再び徐々に各種ツール類を最新にアップデートしている感じです.python 3.9 に入れ替えようとして結構苦戦.3.8 から 3.9 の差分って結構大きかったのね.

並行して,パッケージビルドスクリプト周りもちょっと気になる箇所があるので手を入れようかなと思っています.そのため,ビルドスクリプト自体は過去互換がなくなるかもしれないですが,まぁ,ビルドスクリプト自体を使っている方はほとんどいないかなと思いますので問題ないかなと.:-P

とりあえずそんな感じで作業しています.

まぁ,近いうちに 0.4.1b1 の iso ファイルを作成して公開するようにしたいと思っています.で,特に問題なければ 0.4.1 にしたいなと.(http サーバーの SSD 残容量がほとんどないので 0.4.1 関連を公開する時には Plamo って名前がついている過去のファイルは消してしまうかと思います...)