Raspberry pi 3向けのアプリ配布にapt-getを利用しようとパッケージ化にチャレンジした。必要なファイルを用意して、sudo debuild -us -ucを実行したところ、lintianがエラーを出力する。
例えば、
Now running lintian...
:
E: conductorlite: helper-templates-in-copyright
E: conductorlite: extended-description-is-empty
:
上記の"conductorlite"は作ろうしているパッケージの名称。
簡単なpythonプログラムを配布しようとしているだけなのにチェックが厳しく難しい。ここでは、3点ほどわかった点を掲載しておきます。
(1) helper-templates-in-copyright
copyrightファイルにテンプレートの要素が残っているとのエラーメッセージらしい。が、どこが間違っているのかわかりにくい。私のケースは、
Upstream Author(s):
name <mail address>
の"(s)"が残っていたところがエラーでした。作者は1名だけなのでこれを削除して、
Upstream Author:
name <mail address>
としたところ、エラーは消えました。
言うまでもなく、上記のnameと<mail address>はここでのサンプルです。また、インデントにはタブを使う必要があり、このあたりも厳しくチェックされます。
(2) extended-description-is-empty
こちらは比較的簡単。controlファイルのDescription:に詳細説明が必要というエラーです。詳細説明はタブでインデントをつけて記載する必要があります。下記の例では2行目が"extended-description"に相当します。
Description: The home automation system for raspberry pi
Remote control and programable timer software.
(3) パッケージ名
パッケージ名はcontrolファイルのPackageの部分に名称を記載します。下記は例。
Package: conductorlite
一方で、パッケージを行うために、ディレクトリにはパッケージ名+"-バージョン番号"という名称をつけます。バージョン番号とパッケージ名の区切りには"-"(ハイフン)を使うのでパッケージ名には"-"を使うべきではないようです。
例:
conductorlite-0.1.3