My PPA package uploads are not showing up

Asked by Michal Migurski on 2016-04-08

I am attempting to upload a test package to this PPA: https://launchpad.net/~migurski/+archive/ubuntu/hello

This is my first time experimenting with building Debian packages or writing to PPAs.

My local package has been signed using `debuild -k'8CBDE645' -S`, then I run `dput ppa:migurski/hello hellodeb_0.1_source.changes`. I see output like “Uploading to ppa (via ftp to ppa.launchpad.net)”, and then the file `hellodeb_0.1_source.ppa.upload` is created with the following content:

    Successfully uploaded hellodeb_0.1.dsc to ppa.launchpad.net for ppa.
    Successfully uploaded hellodeb_0.1.tar.gz to ppa.launchpad.net for ppa.
    Successfully uploaded hellodeb_0.1_source.changes to ppa.launchpad.net for ppa.

I expected to see the test package on the PPA page above, but instead see “This PPA does not contain any packages yet.”

Question information

Language:
English Edit question
Status:
Solved
For:
Launchpad itself Edit question
Assignee:
No assignee Edit question
Solved by:
Michal Migurski
Solved:
2016-04-19
Last query:
2016-04-19
Last reply:
2016-04-19
Colin Watson (cjwatson) said : #1

Our logs say that we sent you an automatic rejection email which should have looked roughly like this:

  From: Launchpad PPA <email address hidden>
  To: migurski <email address hidden>
  Subject: [~migurski/ubuntu/hello] hellodeb_0.1_source.changes (Rejected)

  Rejected:
  migurski: no @ found in email address part.
  Unable to identify 'Michal Migurski':<migurski@test-ppa> in launchpad
  Further error processing not possible because of a critical previous error.

  hellodeb (0.1) trusty; urgency=medium

    * Initial release. (Closes: #XXXXXX)

  ===

  If you don't understand why your files were rejected please send an email
  to <email address hidden> for help (requires membership).

  --
  https://launchpad.net/~migurski/+archive/ubuntu/hello
  You are receiving this email because you made this upload.

In other words, the email address you used in the top entry in debian/changelog was badly malformed. Firstly, the quoting and colon and such in there is weird and so it failed to parse as an email address; secondly, migurski@test-ppa is not a real email address and so it would have been rejected after that point anyway. You need to make sure that the email address is written in a valid way and associated with your Launchpad account. So you probably want the last line of the top changelog entry to look something like this:

 -- Michal Migurski <email address hidden> Sat, 09 Apr 2016 17:57:50 +0100

The "dch" program can help you with getting this right, as long as you set DEBFULLNAME and DEBEMAIL properly in the environment (for instance, I have DEBFULLNAME='Colin Watson' and <email address hidden>).

Michal Migurski (migurski) said : #2

Thank you, this is helpful. I’ve ensured that future mails to that address don’t wind up in spam, and I’ll search for where this email address was generated. `test-ppa` is the hostname for the machine where I’m working on this.

Michal Migurski (migurski) said : #3

I’m continuing to see related errors after fixing the email address. Previously, I was using this dch command: `dch --create -v 0.1 --package hellodeb`. After reading the docs I found the DEBEMAIL setting and changed it to this: `env <email address hidden> dch --create -v 0.1 --package hellodeb`

This is the content of my debian/changelog file:

    hellodeb (0.1) trusty; urgency=medium

      * Initial release. (Closes: #XXXXXX)

     -- Michal Migurski <email address hidden> Sun, 17 Apr 2016 19:23:14 -0700

I’m still seeing the "no @ found in email address part" error via email, but since I’m using dch to generate these changelogs I am finding it difficult to diagnose the problem.

William Grant (wgrant) said : #4

That changelog looks fine now, so I suspect the Maintainer field in debian/control has a similar problem.

Michal Migurski (migurski) said : #5

Thank you William, changing that field helped me make progress.

I am now seeing a new error:

    Rejected:
    hellodeb_0.1.dsc: Unknown section '-'
    hellodeb_0.1.tar.gz: Unknown section '-'
    Further error processing not possible because of a critical previous error.

In hellodeb_0.1.dsc, there are lines with dashes that delimit PGP message sections; it looks like this:

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1

    Format: 1.0
    Source: hellodeb
    Binary: hellodeb
    Architecture: all
    Version: 0.1
    Maintainer: <email address hidden>
    Package-List:
     hellodeb deb testing optional
    Checksums-Sha1:
     9377e145a483bb668551b71719cca62b07f343a7 782 hellodeb_0.1.tar.gz
    Checksums-Sha256:
     d76c33fbc9b7acf7bfea82a46125a36c22d700bafceaaa20cba7ee72514262e0 782 hellodeb_0.1.tar.gz
    Files:
     1e6b1e28e8d415c2b01f28b0de14e3aa 782 hellodeb_0.1.tar.gz

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1

    iEYEARECAAYFAlcVgO4ACgkQNyBQgYy95kXFIQCgj5Y/zagKYnWUE6je7bAOdfDc
    cwkAnArjTWIKTS1b7niinBNPKh9GG143
    =wQOu
    -----END PGP SIGNATURE-----

William Grant (wgrant) said : #6

Those OpenPGP section delimiters aren't the issue; you're probably missing Section fields in your debian/control file.

Michal Migurski (migurski) said : #7

I do have a `Section: testing` line in my control file; it looks like this (modified starting from a tutorial I am following, hence sonce of the weird URLs):

    Source: hellodeb
    Maintainer: <email address hidden>
    Priority: optional
    #Version: 0.1
    #Installed-Size: 6

    Package: hellodeb
    Architecture: all
    Depends: bash
    Section: testing
    Homepage: http://askubuntu.com
    Description: This is my first debian package.
     Guided by Totti Torvalds.
     In Description new line start with a space.

William Grant (wgrant) said : #8

Which tutorial are you following? Installed-Size and Version are fields from a binary package's DEBIAN/control file, not a source package debian/control. I'd suggest going through http://packaging.ubuntu.com/html/packaging-new-software.html and https://www.debian.org/doc/debian-policy/ch-controlfields.html.

The specific problem that's causing your latest rejection, though, is that you need a Section field in the Source stanza too.

Michal Migurski (migurski) said : #9

ACCEPTED. Thank you William.

In your second link it says that Section fields are “recommended,” does Ubuntu have a “required” policy different from Debian’s? I have added a Section field to the first stanza. After I resubmitted I learned that “testing” is not a valid Section, and have changed it to “utils”.

So, the package now exists. I’m moving on to trying to get it installed, and `apt-add-repository ppa:migurski/hello` is telling me that the signing key fingerprint does not exist. Is that due to the delay described here? https://help.launchpad.net/Packaging/PPA#Your_PPA.27s_key

Thanks again for your ongoing help with this. I have been following this tutorial from Ask Ubuntu: http://askubuntu.com/a/493577.

I read a few other sources as well:

* https://help.launchpad.net/Packaging/PPA/BuildingASourcePackage
* https://wiki.debian.org/HowToPackageForDebian#Building_Debian_packages
* https://help.launchpad.net/Packaging/PPA/Uploading
* https://wiki.debian.org/IntroDebianPackaging

They were somewhat helpful as background information, but I was hoping to pass all the way through the process before going back to learn about each piece after I knew I was on the right track with a working, published, package.

Michal Migurski (migurski) said : #10

Waited a while, and the key became available. I appreciate your help, William and Colin.