このリポジトリは、Bottles の非公式 Appimage を作成および配布します。
免責事項
モチベーション
施工方法
Conty を使用してボトルを構築する
なぜコンティなのか?
Conty を AppImage に組み込む理由
ダウンロード
以前の代替方法
トラブルシューティング
クレジット
インストールとアップデートが簡単にできる
公式ボトルパッケージはフラットパックとしてのみ入手可能です。
すべてのビルド方法は、https://aur.archlinux.org/packages/bottles にある非公式 AUR パッケージに基づいています。
あらゆる苦情は、この精神的閉鎖によるものにすぎません。
パッケージャーとして、私はアップストリームまたは非公式開発者から与えられたものに従うことしかできません。
開発者とパッケージャーは、まったく反対の 2 つのカテゴリです。
開発者がプログラムを作成する
パッケージャーは、コンピテンスのプラットフォーム用にそれをバンドルして配布します (deb、rpm、 flatpak、snap、appimage など)。
開発者は、自分のアプリケーションがどこでも動作することを確認することに確かに興味があるため、パッケージがプラットフォーム上で動作するかどうかにかかわらず、互換性を持たせるのはパッケージャの責任です。
Bottles プロジェクトの最大の障害は、Flatpak を唯一のパッケージ形式としてサポートするために、代替のパッケージ形式を使用するというあらゆる要求や提案に断固として NO を突きつける一部の協力者です。このような傲慢な人々に出会ったことは、彼らの言ったことと反対のことをやり続ける動機となりました。
何度も試みた後、ヒントやテクニックを教えて AppImage の構築を手伝ってくれた Bottles の開発者 @mirkobrombin に感謝します。グラツィエ・ミルコ!
私は、Flatpak 以外のユーザーが別の方法でボトルを使用できるように何度も試みてきましたが、問題なく使用できませんでした。
現時点では、確実に機能する唯一の方法は Conty を使用することです。
現在、私が作成した AppImage には次の構造が含まれています。
|---- AppRun |---- com.usebottles.bottles.desktop |---- com.usebottles.bottles.svg |---- conty.sh
AppRun は AppImage のコア スクリプトです
ボトルの .desktop ファイル
ボトルのアイコン
「conty.sh」という名前の Arch Linux コンテナ。ボトル、WINE、グラフィック ドライバーが含まれています。
ポイント 1、2、および 3 は、AppImage の重要な要素です。
このAppImageの要素の中で大きいのが(4)のスクリプト「conty.sh」です。
これが私のワークフローの各ファイルの目的です。
create-arch-bootstrap.sh は Arch Linux chroot を作成し、そこにボトルが AUR からインストールされます。これは、使用される最初のスクリプトです (「root」が必要です)。
create-conty.sh は、このプロセスで使用される 2 番目のスクリプトで、「create-arch-bootstrap.sh」によって作成された Arch Linux chroot を、「conty-start.sh」を含む「conty.sh」という名前の大きなスクリプトに変換します。 ";
conty-start.sh は、Conty を動作させるための起動初期化プロセスを担当するスクリプトです。これには、必要な Nvidia ドライバーのバージョンを検出する機能が含まれており、必要に応じてスクリプトがダウンロードして ~/.local/share/Conty にインストールします。また、「バブルラップ」を使用して、Conty とホスト システムを完全に統合する責任もあります。
utils_dwarfs.tar.gz には、ファイルシステムを圧縮するための squashfs に似たツールのセットである「dwarfs」が含まれており、「conty.sh」を可能な限り圧縮するために必要です。
bottle-conty-builder.sh は、AppRun、.desktop ファイル、アイコンの近くに「conty.sh」をまとめてすべてを AppImage に変換するために作成したスクリプトです。これは github アクションで使用することを目的としていますが、Conty のフォークからの "conty.sh" のテスト リリースを使用して、ローカルで実行して AppImage をビルド作成することもできます。
ファイル 1、2、3、および 4 は、https://github.com/Kron4ek/Conty の私のフォークから取得したものです。
ファイル 1、2、および 3 は、元のファイルを改造してサイズを小さくし、ボトルを機能させるために必要なものだけを追加したものです。
「Conty」について詳しく知り、より完全なビルドをダウンロードするか、独自のビルドを作成する方法について詳しく知りたい場合は、プロジェクトの公式リポジトリにアクセスしてください。
Conty は、独自のリソースを備えたポータブルな Arch Linux コンテナです。
これは、コンテナー自体で利用できない場合に、Nvidia ドライバーの独自のコピーをインストールする唯一のソリューションです (下の図を参照)。
ドライバーは ~/.local/share/Conty ディレクトリにインストールされ、最大 700 MB のスペースを占有する場合があります。
Bottles が最初に起動し、必要なライブラリをダウンロードし、WINE 用のプロファイルを作成すると、~/.local/share/bottles のスペースが約 1.4 GB に達することを考慮すると、このサイズは許容範囲以上であると言えます。
これは、Flatpak ランタイムのインストールに少し似ています。でも、一つだけ。残りのファイルは Conty 自体に保存されます。
Conty を AppImage にラップすると、パッケージ マネージャー「AM」を使用して Conty を (bubblewrap サンドボックス経由で) 分離できるようになります。
この AppImage は新世代のもの (Type3 AppImage) であるため、それを使用するためにシステムにlibfuse2
がインストールされている必要はありません。
AppImage は https://github.com/ivan-hc/Bottles-appimage/releases/tag/continuous からダウンロードできます。
利用できるリソースがほとんどないということは、私が自分の可能性の限界内で多かれ少なかれ効果的な試行錯誤を繰り返して進めるきっかけとなったのです。
Conty の使用は、長いシリーズの最新のものにすぎません。
古い構築スクリプトは、このリポジトリのディレクトリで入手できます。
「レガシー」には、JuNest 上に AppImage を構築する実験的なスクリプトが含まれていますが、ハードウェア アクセラレーションが不足しています。ivan-hc/ArchImage#20 を参照してください。
「ハイブリッド」は、私の 2 つのプロジェクトである AppImaGen と ArchImage (Arch Linux と Debian パッケージを組み合わせたもの) を組み合わせたおかげで機能したものでした。これは新しいディストリビューションでのみ機能し、重要な Arch Linux パッケージ (Python) に新しい変更が加えられるまでは機能しませんでしたが、この方法を維持し続けるのは適切ではありませんでした。この方法で唯一利用可能なリリースは、https://github.com/ivan-hc/Bottles-appimage/releases/tag/51.11-2 でダウンロードできます。
このリポジトリの「問題を抱えた」歴史を考えると、Conty が私のワークフローにとって究極のソリューションであるかどうかはわかりません。それはすべて、上流の開発者またはサードパーティが提供するパッケージに依存します。
最初の起動時に、必要に応じて、Conty 経由でビデオ カードのドライバーがダウンロードされます (上のスクリーンショットを参照)。これには数秒、場合によっては数分かかる場合があります。この動作は、最初の起動時にランチャーを使用せずにターミナルからボトルを起動した場合にのみ認識されます。
bottles-cli
使用法この Appimage のシンボリックリンク「 bottles-cli
」を作成し、それを $PATH に追加します。これにより、プログラムをデスクトップに追加するときに、関連するアイコンのあるメニューからそのプログラムを起動できるようになります。この機能は、「AM」と「AppMan」を使用して「ボトル」をインストールするとすでに利用可能です。
@mirkobrombin 忍耐力と対応力を見せてくれてありがとう
コンティ https://github.com/Kron4ek/Conty
「AM」/「AppMan」は、APT が DEB パッケージを管理したり、RPM を DNF したりするのと同じ方法で、AppImage パッケージやその他のポータブル形式をインストール、更新、管理するためのスクリプトとモジュールのセットです... Arch ユーザー リポジトリからインスピレーションを得たシェル スクリプトの大規模なデータベース。それぞれがアプリまたはアプリケーションのセット専用です。
「AM」/「AppMan」のエンジンは「APP-MANAGER」スクリプトで、インストール方法または名前変更方法に応じて、アプリをシステム全体(単一のシステム管理者向け)またはローカル(各ユーザー向け)にインストールできます。 )。
「AM」/「AppMan」は、すべての AppImage パッケージのデフォルトのパッケージ マネージャーとなり、それらにホームを提供することを目指しています。
管理対象アプリの全リストは、 portable-linux-apps.github.io/ apps で参照できます。
「AM」をインストールする | 利用可能なアプリをすべて表示 | ko-fi.com でサポートしてください | PayPal.me でサポートしてください |
---|