rauc: bump version to 0.2
PATCH 1/1 rauc: bump version to 0.2
From: Andrey Yurovsky <[email protected]>
Version 0.2 provides various bug fixes and feature enhancements.
--- package/rauc/rauc.hash | 4 ++-- package/rauc/rauc.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-)
package/rauc/rauc.hash +2 -2
@@ -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
package/rauc/rauc.mk +1 -1
@@ -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
Signature · 1 line
2.9.5
PATCH v2 1/1 rauc: bump to version 0.2
Version 0.2 provides various bug fixes and feature enhancements.
Also the rauc host tool needs mksquashfs so it must select the squashfs package.
--- package/rauc/Config.in.host | 1 + package/rauc/rauc.hash | 4 ++-- package/rauc/rauc.mk | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-)
package/rauc/Config.in.host +1 -0
@@ -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
package/rauc/rauc.hash +2 -2
@@ -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
package/rauc/rauc.mk +2 -2
@@ -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))
Signature · 1 line
2.9.5
PATCH v2 1/1 rauc: bump to version 0.2
Hello,
package/rauc/Config.in.host line 3
Quoted 8 lines · Andrey Yurovsky
package/rauc/Config.in.host +1
-0@@ -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...
package/rauc/Config.in.host line 4
Quoted 2 lines
package/rauc/Config.in.host +1
-1-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
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v2 1/1 rauc: bump to version 0.2
Hi Thomas,
Quoted 13 lines · Thomas Petazzoni
package/rauc/Config.in.host line 3
Quoted 8 lines · Andrey Yurovsky
package/rauc/Config.in.host +1
-0@@ -1,5 +1,6 @@ config BR2_PACKAGE_HOST_RAUC bool "host rauc" + select BR2_PACKAGE_HOST_SQUASHFS # run-time dependencyIf it's a runtime dependency...
Quoted 4 lines
package/rauc/Config.in.host line 4
Quoted 2 lines
package/rauc/Config.in.host +1
-1-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
Signature · 3 lines
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 -PATCH v2 1/1 rauc: bump to version 0.2
Hello,
Quoted 11 lines · Baruch Siach
Quoted 6 lines
If it's a runtime dependency...
package/rauc/rauc.mk ifeq ($(BR2_PACKAGE_SYSTEMD),y) · line 32
Quoted 2 lines
package/rauc/rauc.mk +1
-1-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
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v2 1/1 rauc: bump to version 0.2
In reply to Andrey YurovskyHello,
package/rauc/rauc.mk ifeq ($(BR2_PACKAGE_SYSTEMD),y) · line 33
Quoted 12 lines · Andrey Yurovsky
package/rauc/rauc.mk +2
-2-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
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v2 1/1 rauc: bump to version 0.2
Quoted 22 lines · Thomas Petazzoni
Hello,
package/rauc/rauc.mk ifeq ($(BR2_PACKAGE_SYSTEMD),y) · line 33
Quoted 12 lines · Andrey Yurovsky
package/rauc/rauc.mk +2
-2-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-serviceAnother 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 ?
Quoted 6 lines
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.
Quoted 7 lines
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
PATCH v2 1/1 rauc: bump to version 0.2
Hello,
Quoted 6 lines · Andrey Yurovsky
Quoted 2 lines
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
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v2 1/1 rauc: bump to version 0.2
Hi Thomas,
Quoted 11 lines · Thomas Petazzoni
Hello,
Quoted 6 lines · Andrey Yurovsky
Quoted 2 lines
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.
Quoted 5 lines
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.
PATCH v2 1/1 rauc: bump to version 0.2
Hello,
Quoted 11 lines · Andrey Yurovsky
Quoted 5 lines
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
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v2 1/1 rauc: bump to version 0.2
Quoted 10 lines · Thomas Petazzoni
Hello,
Quoted 6 lines · Andrey Yurovsky
Quoted 5 lines
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?
Quoted 8 lines
Quoted 5 lines
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.
PATCH v2 1/1 rauc: bump to version 0.2
Hello,
Quoted 9 lines · Andrey Yurovsky
Quoted 2 lines
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
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com