将自己的 Debian 软件包部署到 Launchpad

将自己的 Debian 软件包部署到 Launchpad

我正在尝试生成一个debian 软件包用于部署到 Launchpad。我可以使用以下方法生成仅二进制版本:

dpkg-buildpackage -b -pgpg [email protected] 
dpkg-buildpackage: source package netatmo-indicator
dpkg-buildpackage: source version 0.1-1
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by Mihai Galos <[email protected]>
dpkg-buildpackage: host architecture amd64
 dpkg-source --before-build netatmo-indicator
 fakeroot debian/rules clean
dh clean
   dh_testdir
   dh_auto_clean
   dh_clean
 debian/rules build
dh build
   dh_testdir
   dh_update_autotools_config
   dh_auto_configure
   dh_auto_build
   dh_auto_test
 fakeroot debian/rules binary
dh binary
   dh_testroot
   dh_prep
   dh_auto_install
   dh_install
   dh_installdocs
   dh_installchangelogs
   dh_perl
   dh_link
   dh_strip_nondeterminism
   dh_compress
   dh_fixperms
   dh_installdeb
   dh_gencontrol
dpkg-gencontrol: warning: Depends field of package netatmo-indicator: unknown substitution variable ${python:Depends}
   dh_md5sums
   dh_builddeb
dpkg-deb: building package 'netatmo-indicator' in '../netatmo-indicator_0.1-1_all.deb'.
 dpkg-genchanges -b >../netatmo-indicator_0.1-1_amd64.changes
dpkg-genchanges: binary-only upload (no source code included)
 dpkg-source --after-build netatmo-indicator
dpkg-buildpackage: binary-only upload (no source included)
 signfile netatmo-indicator_0.1-1_amd64.changes

You need a passphrase to unlock the secret key for
user: "Mihai Galos <[email protected]>"
2048-bit RSA key, ID 174B180D, created 2018-10-26

(done)

到目前为止一切顺利,但 Launchpad 仅接受纯源代码构建。因此我使用以下方式构建-S

dpkg-buildpackage -S -pgpg [email protected]
dpkg-buildpackage: source package netatmo-indicator
dpkg-buildpackage: source version 0.1-1
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by Mihai Galos <[email protected]>
 dpkg-source --before-build netatmo-indicator
 fakeroot debian/rules clean
dh clean
   dh_testdir
   dh_auto_clean
   dh_clean
 dpkg-source -b netatmo-indicator
dpkg-source: error: can't build with source format '3.0 (quilt)': no upstream tarball found at ../netatmo-indicator_0.1.orig.tar.{bz2,gz,lzma,xz}
dpkg-buildpackage: error: dpkg-source -b netatmo-indicator gave error exit status 255

我的 debian/source/format 文件包含3.0 (quilt)

这可能是什么问题?

提前谢谢了!

答案1

您收到的错误信息:

dpkg-source: error: can't build with source format '3.0 (quilt)': no upstream tarball found at ../netatmo-indicator_0.1.orig.tar.{bz2,gz,lzma,xz}

Debian 打包程序方式

在正常的工作流程中,打包器首先下载*.orig.tar.gz档案然后解压。因此原始档案已经就位。

  • Debian 软件包可分为两类:原生‘ 3.0 (native)’和非原生‘ 3.0 (quilt)’。

    他们的建造方式略有不同。检查Debian导师常见问题或者man dpkg-source

  • 无论如何,只需在父文件夹中创建一个原始源档案,并使用精确命名和允许的格式之一即可。例如:netatmo-indicator_0.1.orig.tar.gz

上游开发者方式

  • 还有其他辅助工具可以直接从源代码树构建 Debian 软件包,而无需原始档案。查找:git-buildpackage、、bzr-builddeb...

相关内容