1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

DebianAdvent Calendar 2024

Day 14

C++アプリを配布!LaunchpadでPPAを公開するガイド

Last updated at Posted at 2024-12-13

C++で作成したアプリケーションを多くのユーザーに配布するためには、PPA (Personal Package Archive) を利用する方法が便利です。本記事では、C++のアプリをLaunchpadを利用してPPAとして公開する具体的な手順を解説します。

注意: 本記事では、Ubuntuを前提に進めます。他のディストリビューションでは手順が異なる可能性があります。

1. 必要な環境の準備

まず、以下のツールをインストールしておきます。

sudo apt update
sudo apt install -y git gnupg devscripts dh-make dput

また、Launchpadアカウントを作成し、SSHキーとGPGキーを登録しておく必要があります。

  1. Launchpadアカウント作成: Launchpad公式サイトでアカウントを作成。
  2. SSHキー登録:
    ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    cat ~/.ssh/id_rsa.pub
    
    上記のコマンドで生成した公開鍵をLaunchpadに登録します。
  3. GPGキー登録:
    gpg --full-generate-key
    gpg --list-keys
    gpg --export --armor your_key_id
    
    GPGキーもLaunchpadに登録します。

2. Debianパッケージの作成

dh_makeを使用した初期設定

Debianパッケージの作成にはdh_makeコマンドを使用します。以下の手順で進めます。

  1. プロジェクトフォルダを作成します。
    この時、プロジェクト名_バージョンの形式で作ること!
    プロジェクト名は、全部小文字であること

    mkdir your-project_version
    cd your-project_version
    
  2. 必要なソースコード(例: main.cpp)とMakefileを準備します。

    Makefileの例:

    all:
        g++ -o your-app main.cpp
    
  3. dh_makeを実行してDebian用のテンプレートを生成します。

    dh_make --createorig -s -p your-app_1.0
    dch -r
    
    • -sはシングルバイナリパッケージを意味します。
    • -pでパッケージ名とバージョンを指定します。

    実行後、debianディレクトリが作成され、必要なテンプレートファイルが生成されます。

必要なファイルの編集

テンプレートファイルを修正して、パッケージ化の準備を進めます。

  • controlファイルの編集:

    Source: your-app
    Section: utils
    Priority: optional
    Maintainer: Your Name <your_email@example.com>
    Build-Depends: debhelper (>= 9)
    Standards-Version: 4.1.3
    Homepage: https://your-app-homepage.com
    
    Package: your-app
    Architecture: any
    Depends: ${shlibs:Depends}, ${misc:Depends}
    Description: Short description of your app
     A longer description of your app.
    
  • changelogファイルの編集:

    your-app (1.0-1) unstable; urgency=medium
    
      * Initial release.
    
     -- Your Name <your_email@example.com>  Fri, 13 Dec 2024 12:00:00 +0000
    

ビルドとパッケージ化

以下のコマンドでDebianパッケージをビルドします。

dpkg-buildpackage -us -uc

親ディレクトリに生成された.debファイルを確認してください。

3. PPAへのアップロード

次に、作成したパッケージをPPAにアップロードします。

  1. .changesファイルの生成:
    debuild -k<Your-GPG-Key-ID> -S -sa
    
    -kの後にあなたのgpgIDを入力してください
    GPGKeyがわからない場合はここから確認できます。
    gpg --list-keys
    
  2. PPAにアップロード:
    dput ppa:your-launchpad-id/your-ppa-name your-app_version_source.changes
    

アップロードが成功すると、Launchpadでビルドが始まります。ビルドが完了したら、PPAからインストール可能になります。

4. ユーザーへの提供

ユーザーは以下の手順でPPAからアプリをインストールできます。

sudo add-apt-repository ppa:your-launchpad-id/your-ppa-name
sudo apt update
sudo apt install your-app

まとめ

本記事では、C++のアプリケーションをPPAとして公開する手順を解説しました。dh_makeを活用すれば、Debianパッケージ作成の初期設定が簡単になります。Launchpadを利用して、パッケージ管理と配布を効率化しましょう!

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?