All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] rauc: bump version to 0.2
@ 2017-11-14  4:31 Andrey Yurovsky
  2017-11-22  4:17 ` [Buildroot] [PATCH v2] rauc: bump to version 0.2 Andrey Yurovsky
  0 siblings, 1 reply; 12+ messages in thread
From: Andrey Yurovsky @ 2017-11-14  4:31 UTC (permalink / raw)
  To: buildroot

From: Andrey Yurovsky <yurovsky@gmail.com>

Version 0.2 provides various bug fixes and feature enhancements.

Signed-off-by: Andrey Yurovsky <yurovsky@gmail.com>
---
 package/rauc/rauc.hash | 4 ++--
 package/rauc/rauc.mk   | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/package/rauc/rauc.hash b/package/rauc/rauc.hash
index 78c3e27..649d195 100644
--- a/package/rauc/rauc.hash
+++ b/package/rauc/rauc.hash
@@ -1,3 +1,3 @@
 # Locally calculated, after verifying against
-# https://github.com/rauc/rauc/releases/download/v0.1.1/rauc-0.1.1.tar.xz.asc
-sha256 d2901d493f1d3210aef6411e83b02edac3a678d6d825d71a1c61b5b6afc7e478 rauc-0.1.1.tar.xz
+# https://github.com/rauc/rauc/releases/download/v0.2/rauc-0.2.tar.xz.asc
+sha256 83aa3ac3716e1c29315162e3cbf5d4db79f26dd95efe1bc634bbce364b95491a rauc-0.2.tar.xz
diff --git a/package/rauc/rauc.mk b/package/rauc/rauc.mk
index 479a583..11991ed 100644
--- a/package/rauc/rauc.mk
+++ b/package/rauc/rauc.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-RAUC_VERSION = 0.1.1
+RAUC_VERSION = 0.2
 RAUC_SITE = https://github.com/rauc/rauc/releases/download/v$(RAUC_VERSION)
 RAUC_SOURCE = rauc-$(RAUC_VERSION).tar.xz
 RAUC_LICENSE = LGPL-2.1
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-14  4:31 [Buildroot] [PATCH] rauc: bump version to 0.2 Andrey Yurovsky
@ 2017-11-22  4:17 ` Andrey Yurovsky
  2017-11-22  7:53   ` Thomas Petazzoni
  2017-11-22 20:33   ` Thomas Petazzoni
  0 siblings, 2 replies; 12+ messages in thread
From: Andrey Yurovsky @ 2017-11-22  4:17 UTC (permalink / raw)
  To: buildroot

Version 0.2 provides various bug fixes and feature enhancements.

Also the rauc host tool needs mksquashfs so it must select the squashfs
package.

Signed-off-by: Andrey Yurovsky <yurovsky@gmail.com>
---
 package/rauc/Config.in.host | 1 +
 package/rauc/rauc.hash      | 4 ++--
 package/rauc/rauc.mk        | 4 ++--
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/package/rauc/Config.in.host b/package/rauc/Config.in.host
index a58685a..1bd9a79 100644
--- a/package/rauc/Config.in.host
+++ b/package/rauc/Config.in.host
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_HOST_RAUC
 	bool "host rauc"
+	select BR2_PACKAGE_HOST_SQUASHFS # run-time dependency
 	help
 	  RAUC is the Robust Auto-Update Controller developed by
 	  Pengutronix. Enable this option to build the rauc
diff --git a/package/rauc/rauc.hash b/package/rauc/rauc.hash
index 78c3e27..a0503b2 100644
--- a/package/rauc/rauc.hash
+++ b/package/rauc/rauc.hash
@@ -1,3 +1,3 @@
 # Locally calculated, after verifying against
-# https://github.com/rauc/rauc/releases/download/v0.1.1/rauc-0.1.1.tar.xz.asc
-sha256 d2901d493f1d3210aef6411e83b02edac3a678d6d825d71a1c61b5b6afc7e478 rauc-0.1.1.tar.xz
+# https://github.com/rauc/rauc/releases/download/v0.2/rauc-0.2.tar.xz.asc
+sha256 83aa3ac3716e1c29315162e3cbf5d4db79f26dd95efe1bc634bbce364b95491a rauc-0.2.tar.xz
diff --git a/package/rauc/rauc.mk b/package/rauc/rauc.mk
index 479a583..4909062 100644
--- a/package/rauc/rauc.mk
+++ b/package/rauc/rauc.mk
@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-RAUC_VERSION = 0.1.1
+RAUC_VERSION = 0.2
 RAUC_SITE = https://github.com/rauc/rauc/releases/download/v$(RAUC_VERSION)
 RAUC_SOURCE = rauc-$(RAUC_VERSION).tar.xz
 RAUC_LICENSE = LGPL-2.1
@@ -29,7 +29,7 @@ ifeq ($(BR2_PACKAGE_SYSTEMD),y)
 RAUC_DEPENDENCIES += systemd
 endif
 
-HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2
+HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2 host-squashfs
 HOST_RAUC_CONF_OPTS += --disable-network --disable-json --disable-service
 
 $(eval $(autotools-package))
-- 
2.9.5

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22  4:17 ` [Buildroot] [PATCH v2] rauc: bump to version 0.2 Andrey Yurovsky
@ 2017-11-22  7:53   ` Thomas Petazzoni
  2017-11-22  8:37     ` Baruch Siach
  2017-11-22 20:33   ` Thomas Petazzoni
  1 sibling, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2017-11-22  7:53 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue, 21 Nov 2017 20:17:47 -0800, Andrey Yurovsky wrote:

> diff --git a/package/rauc/Config.in.host b/package/rauc/Config.in.host
> index a58685a..1bd9a79 100644
> --- a/package/rauc/Config.in.host
> +++ b/package/rauc/Config.in.host
> @@ -1,5 +1,6 @@
>  config BR2_PACKAGE_HOST_RAUC
>  	bool "host rauc"
> +	select BR2_PACKAGE_HOST_SQUASHFS # run-time dependency

If it's a runtime dependency...

> -HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2
> +HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2 host-squashfs

...you don't need to list it in <pkg>_DEPENDENCIES.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22  7:53   ` Thomas Petazzoni
@ 2017-11-22  8:37     ` Baruch Siach
  2017-11-22  8:49       ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Baruch Siach @ 2017-11-22  8:37 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

On Wed, Nov 22, 2017 at 08:53:27AM +0100, Thomas Petazzoni wrote:
> On Tue, 21 Nov 2017 20:17:47 -0800, Andrey Yurovsky wrote:
> 
> > diff --git a/package/rauc/Config.in.host b/package/rauc/Config.in.host
> > index a58685a..1bd9a79 100644
> > --- a/package/rauc/Config.in.host
> > +++ b/package/rauc/Config.in.host
> > @@ -1,5 +1,6 @@
> >  config BR2_PACKAGE_HOST_RAUC
> >  	bool "host rauc"
> > +	select BR2_PACKAGE_HOST_SQUASHFS # run-time dependency
> 
> If it's a runtime dependency...
> 
> > -HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2
> > +HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2 host-squashfs
> 
> ...you don't need to list it in <pkg>_DEPENDENCIES.

This is probably right in this case, since there is no in-tree host-rauc 
dependency. But in the general case a host package might be used at any point 
in the build. So you need to make sure that, e.g., host-squashfs is ready when 
host-rauc is to run, right?

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22  8:37     ` Baruch Siach
@ 2017-11-22  8:49       ` Thomas Petazzoni
  0 siblings, 0 replies; 12+ messages in thread
From: Thomas Petazzoni @ 2017-11-22  8:49 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 Nov 2017 10:37:10 +0200, Baruch Siach wrote:

> > If it's a runtime dependency...
> >   
> > > -HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2
> > > +HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2 host-squashfs  
> > 
> > ...you don't need to list it in <pkg>_DEPENDENCIES.  
> 
> This is probably right in this case, since there is no in-tree host-rauc 
> dependency. But in the general case a host package might be used at any point 
> in the build. So you need to make sure that, e.g., host-squashfs is ready when 
> host-rauc is to run, right?

Hum, you are right. I was thinking that host-rauc tools would be use
only in a post-image script, or after the build has finished. But
indeed, the tools can also be used by another package that depends on
host-rauc.

So: you're right, adding host-squashfs to <pkg>_DEPENDENCIES is needed.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22  4:17 ` [Buildroot] [PATCH v2] rauc: bump to version 0.2 Andrey Yurovsky
  2017-11-22  7:53   ` Thomas Petazzoni
@ 2017-11-22 20:33   ` Thomas Petazzoni
  2017-11-22 21:23     ` Andrey Yurovsky
  1 sibling, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2017-11-22 20:33 UTC (permalink / raw)
  To: buildroot

Hello,

On Tue, 21 Nov 2017 20:17:47 -0800, Andrey Yurovsky wrote:

> -RAUC_VERSION = 0.1.1
> +RAUC_VERSION = 0.2
>  RAUC_SITE = https://github.com/rauc/rauc/releases/download/v$(RAUC_VERSION)
>  RAUC_SOURCE = rauc-$(RAUC_VERSION).tar.xz
>  RAUC_LICENSE = LGPL-2.1
> @@ -29,7 +29,7 @@ ifeq ($(BR2_PACKAGE_SYSTEMD),y)
>  RAUC_DEPENDENCIES += systemd
>  endif
>  
> -HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2
> +HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2 host-squashfs
>  HOST_RAUC_CONF_OPTS += --disable-network --disable-json --disable-service

Another question about this dependency: how is it possible that
host-squashfs is a runtime dependency of the host variant of rauc, but
that squashfs is not a runtime dependency of the target variant of
rauc ?

I can imagine that host-mksquashfs is needed by host-rauc to prepare
some filesystem image. But how does the target build of RAUC know that
it doesn't need mksquashfs ?

Is host-mksquashfs always needed by host-rauc, or only under certain
conditions/configurations ?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22 20:33   ` Thomas Petazzoni
@ 2017-11-22 21:23     ` Andrey Yurovsky
  2017-11-22 21:44       ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Andrey Yurovsky @ 2017-11-22 21:23 UTC (permalink / raw)
  To: buildroot

On Wed, Nov 22, 2017 at 12:33 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Tue, 21 Nov 2017 20:17:47 -0800, Andrey Yurovsky wrote:
>
>> -RAUC_VERSION = 0.1.1
>> +RAUC_VERSION = 0.2
>>  RAUC_SITE = https://github.com/rauc/rauc/releases/download/v$(RAUC_VERSION)
>>  RAUC_SOURCE = rauc-$(RAUC_VERSION).tar.xz
>>  RAUC_LICENSE = LGPL-2.1
>> @@ -29,7 +29,7 @@ ifeq ($(BR2_PACKAGE_SYSTEMD),y)
>>  RAUC_DEPENDENCIES += systemd
>>  endif
>>
>> -HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2
>> +HOST_RAUC_DEPENDENCIES = host-pkgconf host-openssl host-libglib2 host-squashfs
>>  HOST_RAUC_CONF_OPTS += --disable-network --disable-json --disable-service
>
> Another question about this dependency: how is it possible that
> host-squashfs is a runtime dependency of the host variant of rauc, but
> that squashfs is not a runtime dependency of the target variant of
> rauc ?
>
> I can imagine that host-mksquashfs is needed by host-rauc to prepare
> some filesystem image. But how does the target build of RAUC know that
> it doesn't need mksquashfs ?
>
> Is host-mksquashfs always needed by host-rauc, or only under certain
> conditions/configurations ?

On the host side we use rauc to make a software update bundle. It does
this by shelling out to mksquashfs in order to turn a directory of
files (including a manifest) into a signed squashfs image. On the
device side bundles are not created (so mksquashfs isn't needed),
however the Linux kernel must have squashfs file system support
enabled and loop mount enabled. rauc loop mounts the bundle and then
deals with the contents. As such mksquashfs is a run-time host
dependency because we assume on the host rauc is used only to generate
bundles. While it could theoretically generate bundles on the target,
I don't think anyone would use it that way. There are some more subtle
dependencies for example on the target rauc may shell out to mkfs.vfat
if a vfat partition must be made (but that depends on the system slot
configuration and manifest) or it could shell out to mkfs.ext4 for
similar reasons.

> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22 21:23     ` Andrey Yurovsky
@ 2017-11-22 21:44       ` Thomas Petazzoni
  2017-11-23  2:11         ` Andrey Yurovsky
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2017-11-22 21:44 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 Nov 2017 13:23:35 -0800, Andrey Yurovsky wrote:

> > Is host-mksquashfs always needed by host-rauc, or only under certain
> > conditions/configurations ?  
> 
> On the host side we use rauc to make a software update bundle. It does
> this by shelling out to mksquashfs in order to turn a directory of
> files (including a manifest) into a signed squashfs image.

Isn't that specific to your RAUC use case? I assume other people can
use RAUC without using signed squashfs images.

So perhaps we shouldn't make host-mksquashfs a mandatory dependency
like your patch does?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-22 21:44       ` Thomas Petazzoni
@ 2017-11-23  2:11         ` Andrey Yurovsky
  2017-11-23  8:21           ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Andrey Yurovsky @ 2017-11-23  2:11 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

On Wed, Nov 22, 2017 at 1:44 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Wed, 22 Nov 2017 13:23:35 -0800, Andrey Yurovsky wrote:
>
>> > Is host-mksquashfs always needed by host-rauc, or only under certain
>> > conditions/configurations ?
>>
>> On the host side we use rauc to make a software update bundle. It does
>> this by shelling out to mksquashfs in order to turn a directory of
>> files (including a manifest) into a signed squashfs image.
>
> Isn't that specific to your RAUC use case? I assume other people can
> use RAUC without using signed squashfs images.
>
> So perhaps we shouldn't make host-mksquashfs a mandatory dependency
> like your patch does?

No, that's just how rauc works, there's no other use case. That is, it
always make a signed squashfs image (there's no option to make
unsigned images or any other format). If mksquashfs isn't present, the
host tool is effectively useless since it can't make bundles, that's
why I feel that it's a run-time dependency and needs to be selected.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-23  2:11         ` Andrey Yurovsky
@ 2017-11-23  8:21           ` Thomas Petazzoni
  2017-11-23 16:33             ` Andrey Yurovsky
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Petazzoni @ 2017-11-23  8:21 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 Nov 2017 18:11:12 -0800, Andrey Yurovsky wrote:

> > Isn't that specific to your RAUC use case? I assume other people can
> > use RAUC without using signed squashfs images.
> >
> > So perhaps we shouldn't make host-mksquashfs a mandatory dependency
> > like your patch does?  
> 
> No, that's just how rauc works, there's no other use case. That is, it
> always make a signed squashfs image (there's no option to make
> unsigned images or any other format). If mksquashfs isn't present, the
> host tool is effectively useless since it can't make bundles, that's
> why I feel that it's a run-time dependency and needs to be selected.

OK, thanks for the explanation! Is this dependency new in 0.2, or it
was already needed for the current 0.1.1 version of RAUC ?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-23  8:21           ` Thomas Petazzoni
@ 2017-11-23 16:33             ` Andrey Yurovsky
  2017-11-23 16:39               ` Thomas Petazzoni
  0 siblings, 1 reply; 12+ messages in thread
From: Andrey Yurovsky @ 2017-11-23 16:33 UTC (permalink / raw)
  To: buildroot

On Thu, Nov 23, 2017 at 12:21 AM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Wed, 22 Nov 2017 18:11:12 -0800, Andrey Yurovsky wrote:
>
>> > Isn't that specific to your RAUC use case? I assume other people can
>> > use RAUC without using signed squashfs images.
>> >
>> > So perhaps we shouldn't make host-mksquashfs a mandatory dependency
>> > like your patch does?
>>
>> No, that's just how rauc works, there's no other use case. That is, it
>> always make a signed squashfs image (there's no option to make
>> unsigned images or any other format). If mksquashfs isn't present, the
>> host tool is effectively useless since it can't make bundles, that's
>> why I feel that it's a run-time dependency and needs to be selected.
>
> OK, thanks for the explanation! Is this dependency new in 0.2, or it
> was already needed for the current 0.1.1 version of RAUC ?

It was there in 0.1.1 as well, unfortunately I missed it when I sent
the original patch because my systems had mksquashfs available and I
didn't catch this until later so I was hoping to correct it now. The
0.2 changes are described here:
https://github.com/rauc/rauc/blob/master/CHANGES and are mainly bug
fixes and minor (though certainly worthwhile) improvements.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [Buildroot] [PATCH v2] rauc: bump to version 0.2
  2017-11-23 16:33             ` Andrey Yurovsky
@ 2017-11-23 16:39               ` Thomas Petazzoni
  0 siblings, 0 replies; 12+ messages in thread
From: Thomas Petazzoni @ 2017-11-23 16:39 UTC (permalink / raw)
  To: buildroot

Hello,

On Thu, 23 Nov 2017 08:33:40 -0800, Andrey Yurovsky wrote:

> > OK, thanks for the explanation! Is this dependency new in 0.2, or it
> > was already needed for the current 0.1.1 version of RAUC ?  
> 
> It was there in 0.1.1 as well, unfortunately I missed it when I sent
> the original patch because my systems had mksquashfs available and I
> didn't catch this until later so I was hoping to correct it now. The
> 0.2 changes are described here:
> https://github.com/rauc/rauc/blob/master/CHANGES and are mainly bug
> fixes and minor (though certainly worthwhile) improvements.

OK. Then we need two separate patches:

 - One that adds the host-mksquashfs dependency, which we will push to
   the master branch (it is a fix)

 - One that bumps rauc to 0.2, which we will push to the next branch
   (we're approaching the release, so we only accept fixes for the
   master branch).

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2017-11-23 16:39 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-14  4:31 [Buildroot] [PATCH] rauc: bump version to 0.2 Andrey Yurovsky
2017-11-22  4:17 ` [Buildroot] [PATCH v2] rauc: bump to version 0.2 Andrey Yurovsky
2017-11-22  7:53   ` Thomas Petazzoni
2017-11-22  8:37     ` Baruch Siach
2017-11-22  8:49       ` Thomas Petazzoni
2017-11-22 20:33   ` Thomas Petazzoni
2017-11-22 21:23     ` Andrey Yurovsky
2017-11-22 21:44       ` Thomas Petazzoni
2017-11-23  2:11         ` Andrey Yurovsky
2017-11-23  8:21           ` Thomas Petazzoni
2017-11-23 16:33             ` Andrey Yurovsky
2017-11-23 16:39               ` Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.