独自の deb パッケージを作成してインストールするための簡単なチュートリアル。
Debian、Ubuntu、または Debian ベースの OS 以外の何ものでもありません
Mypackageアプリを実行すると、Ubuntu の公式 Web サイトが開きます。
mypackage_1.0_all
フォルダーの命名法: package-name_version_architecture
。
パッケージ名 : mypackage
バージョン : 1.0
アーキテクチャ : サポートされているアーキテクチャのall
またはサブセットである可能性があります
生のパッケージのアーキテクチャ:
。 ━── mypackage_1.0_all # パッケージのメインフォルダ §── デビアン │ §── control # パッケージのメイン情報を含むファイル │ §── postinst # インストール後に実行されるスクリプト │ └── preinst # インストール前に実行するスクリプト §── オプト │ └── mypackage # 弊社ソフトウェアを含むフォルダ │ └── open_link.sh # ブラウザを開くスクリプトで ubuntu.com にアクセスします └── ユーザー └── シェア §── アプリケーション │ └── mypackage.desktop # ランチャー内のアプリ情報を含むファイル └── アイコン ━── mypackage.xpm # ランチャーアプリアイコン
DEBIAN/control
ファイルの詳細:
Package: mypackage
Version: 1.0 # package version
Architecture: all # our package sums up to a bash script and this is POSIX
Essential: no # essential to the system ?
Priority: optional # install order in package management system
Depends: curl,zenity # comma-separated dependency packages (,)
Maintainer: flavienbwk
Description: A sample package...
sudo を使用せずに deb アーカイブをインストールする方法もありますが、ほとんどの deb パッケージはシステム全体にインストールされるように設計されています。これは、 preinstおよびpostinstスクリプト、またはアーカイブに含まれるその他のバイナリは、システム上で制限なく実行できることを意味します (代替案については、 「スナップ パッケージ」を参照してください)。スクリプトを再確認し、他の人のコンピュータを壊さないように共有するときは注意してください。
建てる
dpkg-deb --build ./mypackage_1.0_all
インストール
sudo gdebi -n ./mypackage_1.0_all.deb # テスト (gdebi-core が必要) sudo dpkg -i ./mypackage_1.0_all.deb # インストール
注:
sudo apt autoremove mypackage
を使用してアンインストールします。
ランチャーにMypackageが表示されるはずです。
最初のオプションは最も簡単です。パッケージをローカルにインストールできます。
リポジトリを配置するフォルダーを作成し、その中に.deb
パッケージを移動します。
mkdir -p ./ミラー/プール cp ./mypackage_1.0_all.deb ./mirror/pool/
Packages
インデックスファイルを作成する
CD/ミラー dpkg-scanpackages -m ./pool > パッケージ
ディレクトリをシステムのソースに追加します
echo "deb [trusted=yes] file:/path/to/repository/mirror /" | sudo tee /etc/apt/sources.list.d/mypackage.list
パッケージ定義を更新してインストールする
sudo aptアップデート sudo apt install mypackage
ローカルにインストールされたリポジトリは、独自のマシン上の単純な Apache サーバーから提供できます。
Personal Package Archive (PPA) を作成し、 でホストし、簡単なadd-apt-repository ppa:<repository_name>
コマンドで誰でもアクセスできるようにすることもできます。
パッケージを Ubuntu のユニバース/マルチバース リポジトリに公開したい場合は、MOTU の承認を得る必要があるため、難しい場合があります。メインに公開しますか?これには、セキュリティやメンテナンス基準への取り組みなど、満たさなければならない多くの条件があります。
META パッケージは、依存関係のリストのみをインストールするパッケージです。
これにより、1 つのパッケージでデスクトップ全体をインストールできるようになります。
APT は、Debian とその派生製品 (Ubuntu を含む) で使用される従来のパッケージ管理システムです。 1998 年にデビューし、 .deb
パッケージを使用します。
Canonical が 2014 年に導入した Snap は、さまざまな Linux ディストリビューション間でパッケージを簡単に配布できるように設計された新しいパッケージ マネージャーです。各.snap
パッケージ内の依存関係をバンドルするため、パッケージ サイズは大きくなりますが、「依存関係地獄」は軽減されます。これは、特にオフライン システムで役立ちます。
主な違いは、スナップ パッケージがディストリビューション間の互換性と自己完結型、パッケージのサンドボックス化による潜在的なセキュリティの向上、および自動更新に重点を置いている点です。一方、APT はシステム全体のライブラリに依存するため、パッケージは小さくなりますが、依存関係の問題が発生する可能性があります。