Manually Created .deb, how do I upload to a PPA?
Solution 1:
No, you cannot do that. Launchpad does not allow uploading of binary packages directly. It needs you to upload the dsc
file along changes
and original tarball. Then the build system builds it in a clean chrooted environment
How did you build this tarball? You had the packaging directory which was debian/
directory? Right?
This is how I do:
Unzip/untar an upstream tarball. Say
foo-x.y.tar.gz
Then put the debian/ directory inside that extracted directory
Put an entry in the debian/changelog file(either manually or using
dch -i
. If the version number reads sayx.y
Rename that
foo-x.y.tar.gz
tofoo_x.y.orig.tar.gz
. Please see how the orig tarball should be named -sourcepackagename_x.y.orig.tar.gz
Now change to the directory where you have debian/ directory
Run
debuild -S -k9E6622AB
where 9E6622AB is my GPG key. You need to sign your packages.
If everything was fine, then three files are created - that .orig.tar.gz
file, a .dsc
file and a third is .changes
file
I hope you would be using pbuilder/cowbuilder or any such builder of your choice to create the deb file.
Rest you have to do is
dput ppa:yourusername/ppaname foo.changes
Ofcourse you need to create a PPA of that name
In case your dependencies are ruby gems which use incompatible packaging system, then you can use postinst
, preinst
, postrm
, and prerm
files for better control over the packaging process
Solution 2:
You can't upload a .deb, you need to upload the sources for the .deb for the PPA to make them (this, if your .deb is architecture-dependant, allows it to be built for both 32bit and 64bit then!). See here on getting started with that.