[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Packaging GNUstep automatically



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

Am 26.12.2013 15:36, schrieb gregor herrmann:
> On Thu, 26 Dec 2013 12:12:56 +0800, Paul Wise wrote:
> 
>> On Thu, Dec 26, 2013 at 11:06 AM, Markus Hitter wrote:
>>> Packaging is out of the scope of Debian? That's an unexpected
>>> response. :-)
>> You asked about automated packaging, which isn't something we do
>> in Debian right now AFAIK.
> 
> And IMO all attempts that we've seen so far were of rather poor 
> quality. I mean, there _is_ a reason why we have Linux
> distributions and human packagers :)

And there's also a reason why there's a severe shortage of these human
packagers. Else there weren't thousands of easily fixable lintian
errors and else I wouldn't have to show up here to fix our own
packages, right? :-)

>> On the developer side I see pretty much the opposite: a process
>> far more complex than what developers feel capable of dealing
>> with, while iPhone developers simply drop their binary package
>> somewhere.
> 
> Upstream development and packaging are two different tasks and two 
> different skill sets. Of course it's possible to do both but then
> one has to learn both.

Sounds like you're actually proud of packaging being so alien to
developers.



>> 9) Build a package locally with "debuild ... "
>> 
>> Uhm, here I'm stuck. Some instructions recommend "debuild -d",
>> some "debuild -i -uc -us", some "debuild -S -sd". All of them
>> fail with the
[...]
> 
> Well, to build a package for the new release you need the tarball
> of the new upstream release, and it must be named according to what
> the error message tells you.

Hmm. "Upstream release" is the SCM repo I currently work in. This
would lead to the following procedure:

1) - 8)

9) Tar these modified upstream sources up (sort of tar-yourself-up):

  export TAR_DIR=$(basename "${PWD}") && \
    (cd .. && \
     tar -cvzf ${PKG_NAME}_${GNUSTEP_MAKE_VERSION}.orig.tar.gz \
         --exclude .git --exclude .pc "${TAR_DIR}") && \
    unset TAR_DIR

Let's see:
$ debuild -S -sd
 dpkg-buildpackage -rfakeroot -d -us -uc -S -sd
[...]
patching file TestFramework/GNUmakefile.in
Reversed (or previously applied) patch detected!  Skipping patch.
[...]
dpkg-buildpackage -rfakeroot -d -us -uc -S -sd failed


OK, apparently debuild wants a tar of the unpatched files in
combination with patched files inside the current directory. Let's try
again:

9) Tar these modified upstream sources up (sort of tar-yourself-up),
but only in the unpatched state:

  quilt pop -a
  export TAR_DIR=$(basename "${PWD}") && \
    (cd .. && \
     tar -cvzf ${PKG_NAME}_${GNUSTEP_MAKE_VERSION}.orig.tar.gz \
         --exclude .git --exclude .pc "${TAR_DIR}") && \
    unset TAR_DIR
  quilt push -a
  debuild -S -sd

A bit more wrestling with the changelog file, because the GPG key name
is picked from there and dch doesn't agree with gpg on who am I, and:

  ==> Successfully signed dsc and changes files

10) Upload the package:

  dput ppa:mah-jump-ing/ppa ../${PKG_NAME}*.changes


O-o, it worked. Now waiting for this stuff to show up in the PPA:

https://launchpad.net/~mah-jump-ing/+archive/ppa

Thanks a lot for the help, everybody.



Markus

... and please at least consider streamlining packaging with typical
development procedures. Thanks.

- -- 
- - - - - - - - - - - - - - - - - - - -
Dipl. Ing. (FH) Markus Hitter
http://www.reprap-diy.com/
http://www.jump-ing.de/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.14 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJSvIXuAAoJEKuzOwuAbzo+XOoH+gPdUtDlLLSVyZmBFDiFbIiO
xbaG4yLge1IQT/eoju8EYnjx1N5guKiqfjZHNREgGzimyUvkUoCcF8LmM6HBL13X
S04O0MSY5rbd1yQykKfeEf/r5RbD1MfNyJzyKGFYlx8I6NfEfFWF9sCvp+WFcR84
88Kkxp1eHOLWaTCNyGI3B9FIDHI1Y53hJHUyQ8fHRGwx1CW6zWoYVPw571VDa85i
RXw7Nm9RTUoJU9hJgwoCCVSNvJ1HiVQeyggxw8QCGUI4BB56cyjTNcuQb8I7y3NR
0fjHtkMBdJiMhmUaHB29uEsGTC5uRmVN/yykIrhHtIiTYOnamC9VPF2fz3poUVw=
=Zasw
-----END PGP SIGNATURE-----


Reply to: