AppImageのバックグラウンドストーリー [Interview]

Linuxユーザーとして、あなたは出くわしたかもしれません AppImages。 これは、任意のLinuxディストリビューションでアプリケーションを実行できるようにするポータブルパッケージ形式です。

AppImageの使用は本当に簡単です。 Windowsの.exeファイルのように、実行権限を付与し、ダブルクリックして実行する必要があります。 これにより、Linuxの主要な問題が解決されます。これは、さまざまな種類のディストリビューションがさまざまな種類のパッケージ形式を使用しているためです。 (Debian / Ubuntuの).debファイルをにインストールすることはできません Fedora およびその逆。

AppImageの開発者であるSimonに、このプロジェクトを作成した方法と理由について話を聞きました。 サイモンがAppImageについて共有している興味深い背景ストーリーと洞察のいくつかを読んでください。

AppImageの作成者であるSimonPeterとのやり取り

それはFOSSです:AppImageの背後にいる人物について知っている人はほとんどいません。 あなた自身についての少しの背景情報を共有するのはどうですか?

サイモン: こんにちは、私はドイツのフランクフルト近郊に拠点を置くサイモンピーターです。 私の経歴は経済学と経営学ですが、私は自由な時間に常にいじくり回し、ハッカーであり、卒業してからずっと技術に携わっています。

ただし、AppImageは厳密には趣味であり、余暇に取り組むことを楽しんでいます。 ここからあちらへ行く電車の中で、AppImageの仕事をたくさんしています。 どういうわけか私はいつも動いているようです。 専門的には、大手電気通信会社の製品管理に携わっています。

FOSSです:なぜAppImageを作成したのですか?

サイモン: 私が手にした最初のコンピューターは マッキントッシュ 80年代後半に。 私にとって、これはシンプルさと使いやすさに関するベンチマークです。 デスクトップでLinuxを試し始めたとき、私は常に、Linuxがエレガントで操作が簡単で、初期のMacと同じくらいの柔軟性が得られることを望んでいました。

90年代後半に初めてLinuxを試したとき、ハードディスクのフォーマットとパーティション分割、インストールなどの面倒なプロセスを実行する必要がありました。これには多くの時間がかかり、非常に面倒でした。 数年後、Linux LiveCD-ROMを試してみました。 それは完全なゲームチェンジャーでした。 CDを取り出してコンピュータを起動すると、箱から出してすぐにすべてが機能しました。 インストールも構成もありません。 マシンを再起動するたびに、システムは常に工場出荷時の状態でした。 まさに私がそれを好きだった方法。

欠点は1つだけでした。読み取り専用CDに追加のアプリケーションをインストールできませんでした。 パッケージは常に/ usrへの書き込みを要求しましたが、LiveCDは書き込み可能ではありませんでした。 したがって、私は自分自身に問いかけました。Macから使用しているのに、USBドライブやネットワーク共有など、好きな場所にアプリケーションを配置できないのはなぜですか。 すべてのアプリケーションが、必要な場所に配置できる1つのファイルだけだったとしたら、どれほどすばらしいでしょうか。 このようにして、AppImageのアイデアが生まれました(当時は「klik」という名前で)。

時間の経過とともにライブシステムの機能は向上しましたが、「1つのアプリ= 1つのファイル」というアイデアに伴うシンプルさと自由が今でも気に入っています。 にとって example、ハードディスクのどこにあるかを制御したい。 何を更新するか、いつ更新しないかを決めたい。 ほとんどのタスクでは、最新のアプリケーションを備えた、安定した、めったに変更されないオペレーティングシステムが必要です。 今日まで私が実行しているのはライブシステムだけです。オペレーティングシステムは、インストールや構成を行わなくても、箱から出してすぐに「機能」し、マシンを再起動するたびに、「工場出荷時の新品」であることがわかっています。州。

それはFOSSです:あなたは過去にどのような課題に直面しましたか、そしてあなたは現在どのような課題に直面していますか?

サイモン: 人々はそのアイデアはくだらないと私に言いました、そして私は「Linuxで物事がどのように行われるか」についての手がかりがありませんでした。 私が諦め始めたちょうどその頃、Linux用のアプリケーションの配布に関して私がいつも感じていたのと同じことの多くについて不平を言っていることに気付いたすべての人々のLinusTorvaldsのビデオに出くわしました。 彼の暴言を見ていると、AppImageが実際にこれらの問題の多くを解決していることに気づきました。 しばらくして、LinusはAppImageに出くわし、彼はそのアイデアを気に入ったようです。 それは私に考えさせられました、多分それは人々がそれまでずっと私を信じさせたのでそれほど愚かな考えではありません。

今日、人々はAppImageをSnapや Flatpak。 リンゴとオレンジを比較していると思います。 AppImageは「新しい」ものではないだけでなく(10年以上前から存在しています)、他のシステムとは非常に異なる目的と設計原則を持っています。 AppImageは、Webブラウザーとファイルマネージャー以外の何物でも「管理」できない単一ファイルのアプリケーションバンドルに関するものです。 これは、システム管理者ではなく、エンドユーザーである「単なる道徳」を対象としています。 パッケージマネージャー、root権限、システムにインストールする必要はありません。 これにより、アプリケーション開発者とユーザーに完全な自由が与えられます。

それはFOSSです:AppImageは「ユニバーサルパッケージングシステム」であり、Snap(Ubuntuが支援)やFlatpak(が支援)と競合します Fedora)。 これらの大企業とどのように「戦う」予定ですか?

サイモン: 見る? それが私の言いたいことです。 AppImageは、まったく異なる競技場で再生されます。

AppImageは、Windows用のexeファイルまたはPortableAppsと、Mac上のdmgファイル内のアプリになりたいと考えていますが、それよりも優れています。

その上、スナップ( カノニカル)そのままでは機能しません Fedora、およびFlatpak( Red Hat)Ubuntuではそのままでは機能しません。 AppImagesは、何もインストールしなくても、どちらのシステムでも実行できます。

それはFOSSです:AppImageの採用をどのように見ていますか? その成長に満足していますか?

サイモン: 2020年の初めの時点で、互換性テストに合格し、まだサポートされている最も古いUbuntu LTSリリースで実行できる、それぞれのアプリケーション作成者によって作成された約1,000の公式AppImageがあり、さらに数百が作業中です。 Inkscape、Kdenlive、KDevelop、LibreOffice、PrusaSlicer、Scribus、Slic3r、Ultimaker Cura(すべてに名前を付けるには多すぎる)などの「世帯名」アプリケーションがAppImage形式で配布されています。 これは私をとても幸せにします、そして私がリリースされている新しいバージョンについて読んだとき私はいつも興奮しています Twitter、そして、Linuxディストリビューションがその新しいバージョンを運ぶのを待たずに、そして新しいバージョンを試してみたいという理由だけで古い(既知の良い)バージョンを捨てる必要なしに、AppImageを即座にダウンロードして実行することができます(ブリーディングエッジ)1つ。

AppImageの採用は、夜間および継続的ビルドで特に強力です。 これは、AppImageの「1つのアプリ= 1つのファイル」の概念が、テスト目的で複数のバージョンを保持し、実行中のシステムに何もインストールする必要がないソフトウェアを試すのに特に適しているためです。 AppImageで発生する可能性のある最悪の事態は、アプリケーションが起動しないことです。 その場合は、バグを報告し、ファイルを削除してください。 配布パッケージで発生する可能性のある最悪の事態:完全なシステムの破損…

FOSS:AppImageの大きな問題の1つは、すべての開発者がAppImageのバージョンを更新する簡単な方法を提供しているわけではないということです。 それを処理するための提案はありますか?

サイモン: AppImageには、この「バイナリデルタ更新」の概念があります。 これを「アプリケーションの差分」と考えてください。 新しいバージョンのアプリケーションが出てきます。変更された部分だけをダウンロードして、古いバージョンに適用します。 その結果、古いバージョンと新しいバージョンの両方を取得し、古いバージョンが不要であると判断して破棄するまで、それらを並行して保持できます。

一般的に、私はAppImageで何も強制したくありません。 アプリケーションの作成者は、エクスペリエンス全体を自由に制御できます。 これまで、アプリケーションの作成者は、この更新機能を使用してAppImagesを作成するために、いくつかのセットアップ作業を行う必要があります。 そうは言っても、開発者がバイナリデルタ更新を「無料」で簡単に実行できるようにすれば、多くの人がそれらを提供すると確信しています。 この目的のために、私は現在、Goで記述された新しいツールのセットに取り組んでおり、ほぼ自動的に更新をセットアップします。これにより、この機能を備えたAppImageの割合が大幅に増えることを願っています。

それはFOSSです:Nitruxは、AppImageに大きく依存している珍しいディストリビューションの1つです。 または他のそのようなディストリビューションはありますか? AppImageの人気を高めるために何ができるでしょうか?

サイモン: Linuxディストリビューションは、従来、ベースオペレーティングシステム自体だけでなく、アプリケーションディストリビューションも制御したいと考えていました。 現在、AppleとMicrosoftがデスクトッププラットフォームでのアプリケーション配布をより細かく制御しようとしているため、Linuxの世界では傾向が徐々に逆転しており、ベースオペレーティングシステムに焦点を当てれば、配布がはるかに洗練される可能性があることを人々はゆっくりと理解し始めています。アプリケーションのパッケージ化はアプリケーションの作成者に任せました。

AppImageの人気を高めるには、ユーザーとアプリケーションの作成者は、アップストリームで提供されるAppImageが多くの場合、配布パッケージよりもうまく機能しているということを広め続ける必要があると思います。 AppImageを使用すると、アプリケーションの作成者がどのバージョンのライブラリが連携して動作するかを選択し、機能とパフォーマンスの両方をテストおよび調整できるソフトウェアスタックを取得できます。 ディストリビューションのリリースがまとめられた特定のランダムな時点で、Linuxディストリビューションにたまたまあったバージョンの「ランダムな」組み合わせよりも、結果がうまく機能する傾向があることに誰が驚いていますか?

デスクトップ環境は、AppImagesだけでなく、インストールされていない他の種類の「サイドロード」アプリケーションのユーザビリティを大幅に向上させる可能性があります。 デスクトップ環境が、実行可能ビットが欠落している実行可能ファイルのダブルクリックをどのように処理するかを確認してください。 この点で素晴​​らしい仕事をしている人もいます。 Deepin Linux。 スタッフは、本来あるべき場所で「正しく機能する」傾向があります。

最後に、私は現在、Goで記述された新しいツールのセットに取り組んでいます。これにより、AppImageの作成と使用が大幅に簡素化され、さらに楽しくなることを願っています。 ここでの私の目標は、初期のMacintoshのように、ユーザーにとっての複雑さを軽減し、構成の必要性をなくし、「正しく機能する」ようにすることです。 この取り組みに参加することに興味を持っているGo開発者はいますか?

FOSSです。利用可能なAppImageアプリケーションを一覧表示するWebサイトがあることがわかります。 Linux上の他のソフトウェアマネージャーと統合したり、AppImageのソフトウェアマネージャーを作成したりする予定はありますか?

サイモン: appimage.github.io まだサポートされている最も古いUbuntuLTSリリースでの互換性テストに合格したAppImagesを一覧表示します。 アプリストアやソフトウェアマネージャーを作成するプロジェクトは、このデータを自由に使用できます。 私自身は、それぞれのプロジェクトのダウンロードページからAppImagesをダウンロードするので、これらのことにあまり興味がありません。 私の典型的なAppImageディスカバリーは次のようになります。

  1. 読む Twitter PrusaSlicerにはこのクールな新機能があります
  2. PrusaSlicer GitHubプロジェクトに移動し、そこでリリースノートを読んでください
  3. そこにいる間に、AppImageをダウンロードして、数秒後に実行します

ですから、個人的にはアプリセンターやアプリストアは必要ありませんが、気に入ったらAppImagesを自由に配置できます。 必要性を感じたことはありません…

それはFOSSです:今後AppImageについてどのような計画がありますか(追加する予定の新機能)?

サイモン: 物事をさらに簡素化し、構成オプションを削除し、物事を「正しく機能」させます。 バイナリデルタ更新、サンドボックスなどの側面を含む、AppImageを生成および消費するためのコアAppImageエクスペリエンスを取得するために必要なGitHubプロジェクトの数を減らします。使いやすさを向上させます。

それはFOSSです:AppImageプロジェクトはお金を稼ぎますか? エンドユーザーにどのようなサポート(ある場合)を求めていますか?

サイモン: いいえ、AppImageはまったくお金を稼ぎません。

読者のみなさんに広めていただきたいと思います。 お気に入りのアプリケーションの作成者に、AppImageを表示したいこととその理由を伝えます。

チームIt’sFOSSは、サイモンの懸命な努力を祝福します。 コメント欄でメッセージや質問をお気軽に伝えてください。