こんにちは、最近ブログをサボり気味のハヤオです。いろいろリアルが面倒だったり親がうるさかったりするんですよ。まぁあと数日で受験なんですが全く過去問やってませんやばいですはい。
そんなプライベートは置いておいて(おい)、今ハヤオが開発してるSereneLinuxの新機能についての紹介です。新機能と言っても小さいものですが、役に立つとは思います。
GUI Installer
今私が作っているのは、GUIのパッケージインストーラーです。ソフトウェアセンターなどがある今になってなぜそんなものを作っているか説明しますね。SereneLinuxでは、初期の頃から「セットアップウィザード」なるものを作ろうとしてきました。しかし、思うようにいかず途中で止まっていたんです。そこでbash1Linuxのシェルのこととzenity2bashでGUIを使用できるツールを利用して簡単にできないかなと思って作ったのがこのパッケージインストーラーです。
百聞は一見に如かず、スクショを見たほうが早いでしょう!

メインの画面はこれです。ここから、様々なアプリを数クリックでインストールできます。
また、このインストーラーは300行程度のスクリプトで書かれているため非常に軽快に動作します。
パッケージのアップグレードや、クリーンアップなどもボタンをぽちぽちすればできるスグレモノです。
こいつを初期セットアップにすることで、追加のソフト(ライセンスの関係で同梱できないソフトなど)を簡単にインストールできるようになります。SereneLinuxには最低限のパッケージしかありませんから、これはすごく役に立つと思っています。

こいつが最初に表示されるメニューです。ここからアップデートなどを行うことができます。
SereneLinuxで動かす
このスクリプトを現在SereneLinuxへ移植する作業が行われています。近々このスクリプトがSereneLinuxバージョンに生まれ変わって搭載されると思います。(あれ?採用してくれるよね?)
(2020/01/22追記)
Serene-Startdashとして採用されました!
以下の動画はSereneLinux 19Q1.3.6.4(現在の最新Beta)で動作させた動画です。ターミナル3背景の黒いずらーっと文字が出てるなんかハッカーっぽい画面が表示されているのはデバッグ用です。
今後も対応ソフトを増やしていく予定だそうです!(他人事)
開発者目線でのすごいところ
これのすごいところはディストリビューション非依存なんです。ArchLinuxでもDebianでもSereneLinuxでも!きっとFedoraでも動くでしょう。
パッケージマネージャが違うって?pacaptという、様々なパッケージマネージャに使用できるラッパーを使用しているんです!そのためほとんどのパッケージマネージャに対応することができています。4インストールスクリプトはそれぞれで記述する必要があります。理由はディストリビューションごとにパッケージ名が異なる場合があるからです
さらに!項目の追加が簡単なんです。例えば、SereneLinuxの古い起動画面(重心が偏ったハンドスピナー)がほしいとしましょう。通常ならば、パッケージを作成してリポジトリを構築して…と非常に面倒です。しかし、このインストーラーでは、インストールとアンインストールのスクリプトを直接記述するため、簡単に使用できます5アップデートなどをしっかり行う予定の場合は独自でパッケージを作成しましょう。
また、パッケージをインストールしたあとに追加でこの処理をしたい!といったことも簡単に追加できます。一つの項目につき一つのファイルを用意するんですが、「install」関数と「uninstall」関数にインストールとアンインストールのスクリプト書くことで追加できます。
ソースについて
そんな個人的にかなり自信のあるスクリプトですが、ソースはGitHubで公開しています。
MITライセンスなので誰でも自由に使用できます。
竹林人間さん!NNLinuxへの搭載、どうですか?(露骨な宣伝)
ソースコードはこちら!
コメント