Patchwork opkg-build and dpkg-deb 1.17.x

login
register
mail settings
Submitter Thilo Cestonaro
Date Feb. 25, 2014, 3:15 p.m.
Message ID <530CB3A6.3060404@cestona.ro>
Download mbox | patch
Permalink /patch/67419/
State New
Headers show

Comments

Thilo Cestonaro - Feb. 25, 2014, 3:15 p.m.
Hey all,

with a recent change in dpkg-deb (
http://anonscm.debian.org/gitweb/?p=dpkg/dpkg.git;a=commitdiff;h=547dca4c3ff23df5dfa554f1943b371cd7056ee4
), the packages generated by opkg-build will not be accepted by dpkg-deb
anymore. The change disallows that the data.tar.gz is packed into the
ipk or deb before the control.tar.gz.

Supplied patch for opkg-utils repo fixes this.

Greetings
Thilo
Paul Barker - Feb. 25, 2014, 3:34 p.m.
On 25 February 2014 15:15, Thilo Cestonaro <thilo@cestona.ro> wrote:
> Hey all,
>
> with a recent change in dpkg-deb (
> http://anonscm.debian.org/gitweb/?p=dpkg/dpkg.git;a=commitdiff;h=547dca4c3ff23df5dfa554f1943b371cd7056ee4
> ), the packages generated by opkg-build will not be accepted by dpkg-deb
> anymore. The change disallows that the data.tar.gz is packed into the
> ipk or deb before the control.tar.gz.
>
> Supplied patch for opkg-utils repo fixes this.
>
> Greetings
> Thilo
>

This needs to be sent to the yocto@yoctoproject.org mailing list
rather than the openembedded-core@lists.openembedded.org mailing list.

It should also be sent using 'git send-email' if possible and the
description of why this change is needed needs to be included in the
commit message for the patch.

You'll also need to add a 'Signed-off-by' line to the patch.

The full contribution guidelines for opkg-utils are now in the file
'CONTRIBUTING' in the root of the source tree. See
https://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/tree/CONTRIBUTING
for an online copy.

Regarding the change itself, is the 'debian-binary' file still allowed
to be infront of the 'control.tar.gz' file in the archive? Other than
that question, the change looks good at first glance.

If any of that doesn't work for you, let me know and I'll try to help out.

Thanks,
Thilo Cestonaro - Feb. 25, 2014, 8:24 p.m.
Hey Paul,

thx for your hints. I managed to get git send-email to work and send it
with signed-off-by line.

Regarding your question; The debian-binary needs to be the first member
of the archive, then control.tar.gz and then the data.tar.gz.

Have a look at "man 5 deb" there is a detailed description how the
archive should look like.

Greetings,
Thilo

Am 25.02.2014 16:34, schrieb Paul Barker:
> On 25 February 2014 15:15, Thilo Cestonaro <thilo@cestona.ro> wrote:
>> Hey all,
>>
>> with a recent change in dpkg-deb (
>> http://anonscm.debian.org/gitweb/?p=dpkg/dpkg.git;a=commitdiff;h=547dca4c3ff23df5dfa554f1943b371cd7056ee4
>> ), the packages generated by opkg-build will not be accepted by dpkg-deb
>> anymore. The change disallows that the data.tar.gz is packed into the
>> ipk or deb before the control.tar.gz.
>>
>> Supplied patch for opkg-utils repo fixes this.
>>
>> Greetings
>> Thilo
>>
> 
> This needs to be sent to the yocto@yoctoproject.org mailing list
> rather than the openembedded-core@lists.openembedded.org mailing list.
> 
> It should also be sent using 'git send-email' if possible and the
> description of why this change is needed needs to be included in the
> commit message for the patch.
> 
> You'll also need to add a 'Signed-off-by' line to the patch.
> 
> The full contribution guidelines for opkg-utils are now in the file
> 'CONTRIBUTING' in the root of the source tree. See
> https://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/tree/CONTRIBUTING
> for an online copy.
> 
> Regarding the change itself, is the 'debian-binary' file still allowed
> to be infront of the 'control.tar.gz' file in the archive? Other than
> that question, the change looks good at first glance.
> 
> If any of that doesn't work for you, let me know and I'll try to help out.
> 
> Thanks,
>

Patch

From a39842073547d5ff67d609a6f19a2c5c4069e5f7 Mon Sep 17 00:00:00 2001
From: Thilo Cestonaro <thilo@cestona.ro>
Date: Tue, 25 Feb 2014 10:09:36 +0100
Subject: [PATCH] create dpkg-deb compatible ipks/opks again

---
 opkg-build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/opkg-build b/opkg-build
index 90a7111..e314712 100755
--- a/opkg-build
+++ b/opkg-build
@@ -247,9 +247,9 @@  fi
 
 rm -f $pkg_file
 if [ "$outer" = "ar" ] ; then
-  ( cd $tmp_dir && ar -crf $pkg_file ./debian-binary ./data.tar.gz ./control.tar.gz )
+  ( cd $tmp_dir && ar -crf $pkg_file ./debian-binary ./control.tar.gz ./data.tar.gz )
 else
-  ( cd $tmp_dir && tar -cz --format=gnu -f $pkg_file ./debian-binary ./data.tar.gz ./control.tar.gz )
+  ( cd $tmp_dir && tar -cz --format=gnu -f $pkg_file ./debian-binary ./control.tar.gz ./data.tar.gz )
 fi
 
 rm $tmp_dir/debian-binary $tmp_dir/data.tar.gz $tmp_dir/control.tar.gz
-- 
1.9.0