Debian(.deb)パッケージを生成

リポジトリに上げておきました。
https://github.com/MichinariNukazawa/debian_package_c_application_automate_example

公式の「 Chapter 4. Simple Example」を、bashスクリプトで自動化したものです。



以下、エラーメッセージとその対処など、リポジトリに上がっていない情報をいくつか。


## DEBEMAILなどを指定していないと吐くエラー

debmakeなどのDebianパッケージ関連コマンドは、製作者情報を環境変数から読むので、セットしておく必要がある。
(コマンド毎に引数指定しても行けるはずと思いますが、コマンド毎に引数指定を調べるのが面倒だったので、そちらは試していない。)

```
$ debmake
I: set parameters
Traceback (most recent call last):
  File "/usr/bin/debmake", line 28, in <module>
      debmake.main()
        File "/usr/lib/python3/dist-packages/debmake/__init__.py", line 104, in main
        para = debmake.para.para(para)
          File "/usr/lib/python3/dist-packages/debmake/para.py", line 44, in para
              debmail = os.getlogin() + '@localhost'
          FileNotFoundError: [Errno 2] No such file or directory


```
忘れずに環境変数に製作者情報をセットしておく。

```
export DEBEMAIL="michinari.nukazawa@gmail.com"
export DEBFULLNAME="Michinari.Nukazawa"

```


## 秘密鍵のエラー

```
W: debhello: binary-without-manpage usr/bin/hello
Finished running lintian.
Now signing changes and any dsc files...
 signfile debhello_0.0-1.dsc Michinari.Nukazawa <michinari.nukazawa@gmail.com>
 gpg: "Michinari.Nukazawa <michinari.nukazawa@gmail.com>"をスキップします: 秘密鍵が利用できません
 gpg: /tmp/debsign.Fwk1I2Pw/debhello_0.0-1.dsc: clearsign failed: 秘密鍵が利用できません
 debsign: gpg error occurred!  Aborting....
 debuild: fatal error at line 1295:
 running debsign failed
 error:packaging_deb.sh(53) "debuild" ""

```
などと出るが、とりあえずパッケージは出来ている。

サインはDebianLinuxの公式な開発者として配布するときに付けるもので、個人使用のパッケージでは不要とのこと。
.debファイルを直接ダウンロード配布するときもとりあえず無くてもインストールできる模様。
```
debuild -us -uc
```
とする。
(manpageに、このオプションは`dpkg-buildpackage`と共通、みたいなことが書いてある。)






## 動作確認


```
dpkg -i debhello_0.0-1_amd64.deb
hello
sudo dpkg -r debhello

```

以上です。

0 件のコメント:

コメントを投稿

Linuxコマンドライン上でSVGベクタ画像をJPG等へラスタライズ変換する

 Linuxコマンドライン上でSVGベクタ画像をJPG等へラスタライズ変換することができるが、上手く変換されない場合がある。   以前作った魔法陣イラスト素材をイラスト素材ストックサイトへ登録しようと思い立ち、改めて素材用にラスタライズ変換をかけようとした。   ラスタライズ変換...