* [PATCH V3 0/2] BlueZ 5.3 new package
@ 2013-03-25 13:07 Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 1/2] bluez5: new package for v5.3 Cristian Iorga
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Cristian Iorga @ 2013-03-25 13:07 UTC (permalink / raw)
To: openembedded-core
- BlueZ 5 v5.3 experimental new package;
- bluez5 package does not replace bluez4 package,
as a lot of components that interact with bluez
are not prepared to work correctly with bluez5;
- bluez5 is not an upgrade path from bluez4.
- bluez5 conflicts with/replaces bluez4.
Cristian Iorga (2):
bluez5: new package for v5.3
bluez4: conflicts with/replaces bluez5
meta/recipes-connectivity/bluez/bluez4_4.101.bb | 5 ++-
.../bluez5/bluez5-5.3/bluetooth.conf | 16 +++++++
.../bluez5/bluez5-5.3/fix-udev-paths.patch | 35 +++++++++++++++
meta/recipes-connectivity/bluez5/bluez5.inc | 45 ++++++++++++++++++++
meta/recipes-connectivity/bluez5/bluez5_5.3.bb | 38 +++++++++++++++++
5 files changed, 138 insertions(+), 1 deletion(-)
create mode 100644 meta/recipes-connectivity/bluez5/bluez5-5.3/bluetooth.conf
create mode 100644 meta/recipes-connectivity/bluez5/bluez5-5.3/fix-udev-paths.patch
create mode 100644 meta/recipes-connectivity/bluez5/bluez5.inc
create mode 100644 meta/recipes-connectivity/bluez5/bluez5_5.3.bb
--
1.7.10.4
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH V3 1/2] bluez5: new package for v5.3
2013-03-25 13:07 [PATCH V3 0/2] BlueZ 5.3 new package Cristian Iorga
@ 2013-03-25 13:07 ` Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 Cristian Iorga
2013-03-25 16:09 ` [PATCH V3 0/2] BlueZ 5.3 new package Koen Kooi
2 siblings, 0 replies; 11+ messages in thread
From: Cristian Iorga @ 2013-03-25 13:07 UTC (permalink / raw)
To: openembedded-core
- bluez5 does not replace bluez4
- bluez5 is integrated with systemd
- RCONFLICTS/RREPLACES bluez4
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
---
.../bluez5/bluez5-5.3/bluetooth.conf | 16 +++++++
.../bluez5/bluez5-5.3/fix-udev-paths.patch | 35 +++++++++++++++
meta/recipes-connectivity/bluez5/bluez5.inc | 45 ++++++++++++++++++++
meta/recipes-connectivity/bluez5/bluez5_5.3.bb | 38 +++++++++++++++++
4 files changed, 134 insertions(+)
create mode 100644 meta/recipes-connectivity/bluez5/bluez5-5.3/bluetooth.conf
create mode 100644 meta/recipes-connectivity/bluez5/bluez5-5.3/fix-udev-paths.patch
create mode 100644 meta/recipes-connectivity/bluez5/bluez5.inc
create mode 100644 meta/recipes-connectivity/bluez5/bluez5_5.3.bb
diff --git a/meta/recipes-connectivity/bluez5/bluez5-5.3/bluetooth.conf b/meta/recipes-connectivity/bluez5/bluez5-5.3/bluetooth.conf
new file mode 100644
index 0000000..ca5e9e4
--- /dev/null
+++ b/meta/recipes-connectivity/bluez5/bluez5-5.3/bluetooth.conf
@@ -0,0 +1,16 @@
+<!-- This configuration file specifies the required security policies
+ for Bluetooth core daemon to work. -->
+
+<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
+ "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
+<busconfig>
+
+ <!-- ../system.conf have denied everything, so we just punch some holes -->
+
+ <policy context="default">
+ <allow own="org.bluez"/>
+ <allow send_destination="org.bluez"/>
+ <allow send_interface="org.bluez.Agent"/>
+ </policy>
+
+</busconfig>
diff --git a/meta/recipes-connectivity/bluez5/bluez5-5.3/fix-udev-paths.patch b/meta/recipes-connectivity/bluez5/bluez5-5.3/fix-udev-paths.patch
new file mode 100644
index 0000000..37362f5
--- /dev/null
+++ b/meta/recipes-connectivity/bluez5/bluez5-5.3/fix-udev-paths.patch
@@ -0,0 +1,35 @@
+Add udevdir/udevrulesdir options
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
+Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
+
+Index: bluez-5.0/Makefile.am
+===================================================================
+--- bluez-5.0.orig/Makefile.am 2012-12-24 19:46:54.000000000 +0200
++++ bluez-5.0/Makefile.am 2013-01-30 14:33:15.760615474 +0200
+@@ -175,7 +175,7 @@
+ include Makefile.obexd
+
+ if HID2HCI
+-rulesdir = @UDEV_DIR@/rules.d
++rulesdir = @UDEV_RULES_DIR@
+
+ rules_DATA = tools/97-hid2hci.rules
+
+Index: bluez-5.0/configure.ac
+===================================================================
+--- bluez-5.0.orig/configure.ac 2012-12-24 19:46:54.000000000 +0200
++++ bluez-5.0/configure.ac 2013-01-30 14:34:59.068613895 +0200
+@@ -160,6 +160,11 @@
+ AC_SUBST(UDEV_DIR, [${path_udevdir}])
+ fi
+
++AC_ARG_WITH([udevrulesdir],
++ AS_HELP_STRING([--with-udevrulesdir=DIR], [udev rules directory]),
++ [], [with_udevrulesdir=/lib/udev/rules.d])
++AC_SUBST([UDEV_RULES_DIR], [$with_udevrulesdir])
++
+ AM_CONDITIONAL(HID2HCI, test "${enable_tools}" != "no" &&
+ test "${enable_udev}" != "no" && test "${enable_usb}" != "no")
+
diff --git a/meta/recipes-connectivity/bluez5/bluez5.inc b/meta/recipes-connectivity/bluez5/bluez5.inc
new file mode 100644
index 0000000..db9c766
--- /dev/null
+++ b/meta/recipes-connectivity/bluez5/bluez5.inc
@@ -0,0 +1,45 @@
+SUMMARY = "Linux Bluetooth Stack Userland V5"
+DESCRIPTION = "Linux Bluetooth stack V5 userland components. These include a system configurations, daemons, tools and system libraries."
+HOMEPAGE = "http://www.bluez.org"
+SECTION = "libs"
+LICENSE = "GPLv2+ & LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
+ file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \
+ file://src/main.c;beginline=1;endline=24;md5=9bc54b93cd7e17bf03f52513f39f926e"
+DEPENDS = "udev libusb dbus-glib glib-2.0 libcheck libical"
+
+PACKAGECONFIG ??= "\
+ ${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}\
+ ${@base_contains('DISTRO_FEATURES', 'pie', 'pie', '', d)}\
+"
+PACKAGECONFIG[alsa] = "--enable-alsa,--disable-alsa,alsa-lib"
+PACKAGECONFIG[pie] = "--enable-pie,--disable-pie,"
+
+ASNEEDED = ""
+
+SRC_URI = "\
+ ${KERNELORG_MIRROR}/linux/bluetooth/bluez-${PV}.tar.gz \
+"
+S = "${WORKDIR}/bluez-${PV}"
+
+inherit autotools pkgconfig systemd
+
+EXTRA_OECONF = "\
+ --disable-gstreamer \
+ --enable-usb \
+ --enable-tools \
+ --enable-bccmd \
+ --enable-hid2hci \
+ --enable-dfutool \
+ --disable-hidd \
+ --disable-pand \
+ --disable-dund \
+ --disable-cups \
+ --enable-test \
+ --enable-datafiles \
+ --with-udevdir=${base_libdir}/udev \
+ --with-udevrulesdir=${nonarch_base_libdir}/udev/rules.d \
+ ${@base_contains('DISTRO_FEATURES', 'systemd', '--with-systemdunitdir=${systemd_unitdir}/system/', '--disable-systemd', d)} \
+"
+
+SYSTEMD_SERVICE_${PN} = "bluetooth.service"
diff --git a/meta/recipes-connectivity/bluez5/bluez5_5.3.bb b/meta/recipes-connectivity/bluez5/bluez5_5.3.bb
new file mode 100644
index 0000000..36fa154
--- /dev/null
+++ b/meta/recipes-connectivity/bluez5/bluez5_5.3.bb
@@ -0,0 +1,38 @@
+require bluez5.inc
+
+SRC_URI += "file://bluetooth.conf \
+ file://fix-udev-paths.patch"
+
+SRC_URI[md5sum] = "44de20f6422bf90a01b8df48e7dfe4ed"
+SRC_URI[sha256sum] = "828e2cd1109835c2fc1d731fb7fd7b46951044e451cc8556a37e1312d8c8c9a6"
+
+RCONFLICTS_${PN} = "bluez4"
+RREPLACES_${PN} = "bluez4"
+
+do_install_append() {
+ install -d ${D}${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/profiles/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/profiles/network/network.conf ${D}/${sysconfdir}/bluetooth/
+ install -m 0644 ${S}/profiles/input/input.conf ${D}/${sysconfdir}/bluetooth/
+ # at_console doesn't really work with the current state of OE, so punch some more holes so people can actually use BT
+ install -m 0644 ${WORKDIR}/bluetooth.conf ${D}/${sysconfdir}/dbus-1/system.d/
+}
+
+ALLOW_EMPTY_libasound-module-bluez = "1"
+PACKAGES =+ "libasound-module-bluez ${PN}-test"
+
+FILES_libasound-module-bluez = "${libdir}/alsa-lib/lib*.so ${datadir}/alsa"
+FILES_${PN} += "${libdir}/bluetooth/plugins ${libdir}/bluetooth/plugins/*.so ${base_libdir}/udev/ ${nonarch_base_libdir}/udev/ ${systemd_unitdir}/ ${datadir}/dbus-1"
+FILES_${PN}-dev += "\
+ ${libdir}/bluetooth/plugins/*.la \
+ ${libdir}/alsa-lib/*.la \
+"
+
+FILES_${PN}-test = "${libdir}/bluez/test/*"
+
+FILES_${PN}-dbg += "\
+ ${libdir}/${PN}/bluetooth/.debug \
+ ${libdir}/bluetooth/plugins/.debug \
+ ${libdir}/*/.debug \
+ ${base_libdir}/udev/.debug \
+ "
--
1.7.10.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5
2013-03-25 13:07 [PATCH V3 0/2] BlueZ 5.3 new package Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 1/2] bluez5: new package for v5.3 Cristian Iorga
@ 2013-03-25 13:07 ` Cristian Iorga
2013-03-26 16:42 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests Iorga, Cristian
2013-03-25 16:09 ` [PATCH V3 0/2] BlueZ 5.3 new package Koen Kooi
2 siblings, 1 reply; 11+ messages in thread
From: Cristian Iorga @ 2013-03-25 13:07 UTC (permalink / raw)
To: openembedded-core
- RCONFLICTS/RREPLACES bluez5
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
---
meta/recipes-connectivity/bluez/bluez4_4.101.bb | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-connectivity/bluez/bluez4_4.101.bb b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
index 3ea2f25..2e98043 100644
--- a/meta/recipes-connectivity/bluez/bluez4_4.101.bb
+++ b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
@@ -1,6 +1,6 @@
require bluez4.inc
-PR = "r5"
+PR = "r6"
SRC_URI += "file://bluetooth.conf \
file://sbc_mmx.patch \
@@ -11,6 +11,9 @@ SRC_URI += "file://bluetooth.conf \
SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
+RCONFLICTS_${PN} = "bluez5"
+RREPLACES_${PN} = "bluez5"
+
do_install_append() {
install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
--
1.7.10.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH V3 0/2] BlueZ 5.3 new package
2013-03-25 13:07 [PATCH V3 0/2] BlueZ 5.3 new package Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 1/2] bluez5: new package for v5.3 Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 Cristian Iorga
@ 2013-03-25 16:09 ` Koen Kooi
2013-03-25 16:23 ` Burton, Ross
2 siblings, 1 reply; 11+ messages in thread
From: Koen Kooi @ 2013-03-25 16:09 UTC (permalink / raw)
To: Cristian Iorga; +Cc: openembedded-core
Op 25 mrt. 2013, om 14:07 heeft Cristian Iorga <cristian.iorga@intel.com> het volgende geschreven:
> - BlueZ 5 v5.3 experimental new package;
> - bluez5 package does not replace bluez4 package,
> as a lot of components that interact with bluez
> are not prepared to work correctly with bluez5;
> - bluez5 is not an upgrade path from bluez4.
So you say it's not an upgrade path, but...
> - bluez5 conflicts with/replaces bluez4.
... here you add RREPLACES. Why is that?
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH V3 0/2] BlueZ 5.3 new package
2013-03-25 16:09 ` [PATCH V3 0/2] BlueZ 5.3 new package Koen Kooi
@ 2013-03-25 16:23 ` Burton, Ross
2013-03-25 17:03 ` Martin Jansa
0 siblings, 1 reply; 11+ messages in thread
From: Burton, Ross @ 2013-03-25 16:23 UTC (permalink / raw)
To: Koen Kooi; +Cc: openembedded-core
On 25 March 2013 16:09, Koen Kooi <koen@dominion.thruhere.net> wrote:
> So you say it's not an upgrade path, but...
>
>> - bluez5 conflicts with/replaces bluez4.
>
> ... here you add RREPLACES. Why is that?
The logic was that if a *distro* does the upgrade from bluez4 to
bluez5, the package manager needs to be able to remove bluez4 when
installing bluez5, as otherwise they'd just conflict and the package
manager would error out.
Ross
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH V3 0/2] BlueZ 5.3 new package
2013-03-25 16:23 ` Burton, Ross
@ 2013-03-25 17:03 ` Martin Jansa
2013-03-25 17:14 ` Burton, Ross
0 siblings, 1 reply; 11+ messages in thread
From: Martin Jansa @ 2013-03-25 17:03 UTC (permalink / raw)
To: Burton, Ross; +Cc: Koen Kooi, openembedded-core
[-- Attachment #1: Type: text/plain, Size: 661 bytes --]
On Mon, Mar 25, 2013 at 04:23:26PM +0000, Burton, Ross wrote:
> On 25 March 2013 16:09, Koen Kooi <koen@dominion.thruhere.net> wrote:
> > So you say it's not an upgrade path, but...
> >
> >> - bluez5 conflicts with/replaces bluez4.
> >
> > ... here you add RREPLACES. Why is that?
>
> The logic was that if a *distro* does the upgrade from bluez4 to
> bluez5, the package manager needs to be able to remove bluez4 when
> installing bluez5, as otherwise they'd just conflict and the package
> manager would error out.
But opkg will still error out because of missing RPROVIDES, no?
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH V3 0/2] BlueZ 5.3 new package
2013-03-25 17:03 ` Martin Jansa
@ 2013-03-25 17:14 ` Burton, Ross
2013-03-26 10:20 ` Iorga, Cristian
0 siblings, 1 reply; 11+ messages in thread
From: Burton, Ross @ 2013-03-25 17:14 UTC (permalink / raw)
To: Martin Jansa; +Cc: Koen Kooi, openembedded-core
On 25 March 2013 17:03, Martin Jansa <martin.jansa@gmail.com> wrote:
> But opkg will still error out because of missing RPROVIDES, no?
I'll admit that I didn't test an upgrade path, but the scenario I can
see actually happening is that the distro flips its applications from
bluez4 to bluez5 so they rdepend on bluez5 now. bluez5 will get
pulled in through that dependency, nothing depends on bluez4 anymore,
so opkg should remove bluez4. bluez4 and bluez5 don't expose the same
ABI so they are not suitable RPROVIDES for eachother.
Ross
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH V3 0/2] BlueZ 5.3 new package
2013-03-25 17:14 ` Burton, Ross
@ 2013-03-26 10:20 ` Iorga, Cristian
0 siblings, 0 replies; 11+ messages in thread
From: Iorga, Cristian @ 2013-03-26 10:20 UTC (permalink / raw)
To: Burton, Ross, Martin Jansa
Cc: Koen Kooi, openembedded-core@lists.openembedded.org
Hello all,
I will test today an install path for bluez5 using the opkg manager in a existent image.
I will keep you updated.
Regards,
Cristian
-----Original Message-----
From: openembedded-core-bounces@lists.openembedded.org [mailto:openembedded-core-bounces@lists.openembedded.org] On Behalf Of Burton, Ross
Sent: Monday, March 25, 2013 7:15 PM
To: Martin Jansa
Cc: Koen Kooi; openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH V3 0/2] BlueZ 5.3 new package
On 25 March 2013 17:03, Martin Jansa <martin.jansa@gmail.com> wrote:
> But opkg will still error out because of missing RPROVIDES, no?
I'll admit that I didn't test an upgrade path, but the scenario I can see actually happening is that the distro flips its applications from
bluez4 to bluez5 so they rdepend on bluez5 now. bluez5 will get pulled in through that dependency, nothing depends on bluez4 anymore, so opkg should remove bluez4. bluez4 and bluez5 don't expose the same ABI so they are not suitable RPROVIDES for eachother.
Ross
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests
2013-03-25 13:07 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 Cristian Iorga
@ 2013-03-26 16:42 ` Iorga, Cristian
2013-03-26 17:50 ` Martin Jansa
0 siblings, 1 reply; 11+ messages in thread
From: Iorga, Cristian @ 2013-03-26 16:42 UTC (permalink / raw)
To: Burton, Ross, Koen Kooi, Martin Jansa
Cc: openembedded-core@lists.openembedded.org
Hello all,
Initial status:
QEmu machine core-image-sato.
Follow the /update/upgrade/install path as below:
Fact: bluez5, at this point, is not an upgrade path for bluez4.
Logical conclusion would be that bluez 5 and bluez4 should be provided only with RCONFLICTS (case 2), so that doing an:
opkg upgrade
would not work, otherwise, user will conclude that, at this stage, bluez5 is a replacement for bluez4, which, simply, is not true (Case 1).
Forcing user to remove bluez4 and install manually bluez5 will suggest that bluez5 is not compatible with bluez4, so not a replacement.
In conclusion, in my opinion, we should go with RCONFLICTS only for bluez5.3 PU.
See cases below.
Please advise.
Case 1:
bluez4 and bluez5: reciprocal RREPLACES and RCONFLICTS
root@qemux86:~# opkg update
Downloading http://192.168.7.1/upg-ipk/all/Packages.gz.
Inflating http://192.168.7.1/upg-ipk/all/Packages.gz.
Updated list of available packages in /var/lib/opkg/local_repo_all.
Downloading http://192.168.7.1/upg-ipk/i586/Packages.gz.
Inflating http://192.168.7.1/upg-ipk/i586/Packages.gz.
Updated list of available packages in /var/lib/opkg/local_repo_i586.
Downloading http://192.168.7.1/upg-ipk/qemux86/Packages.gz.
Inflating http://192.168.7.1/upg-ipk/qemux86/Packages.gz.
Updated list of available packages in /var/lib/opkg/local_repo_qemux86.
root@qemux86:~# opkg list-installed | grep bluez
bluez4 - 4.101-r6.0
libasound-module-bluez - 4.101-r6.0
root@qemux86:~# opkg list-upgradable | grep bluez
libasound-module-bluez - 4.101-r6.0 - 5.3-r0.0
bluez4 - 4.101-r6.0 - 5.3-r0.0
root@qemux86:~# opkg install bluez5
Multiple replacers for bluez5, using first one (bluez4).
Package bluez4 is already installed on root.
root@qemux86:~# opkg list-installed | grep bluez
bluez4 - 4.101-r6.0
libasound-module-bluez - 4.101-r6.0
root@qemux86:~# opkg upgrade
Upgrading libasound-module-bluez on root from 4.101-r6.0 to 5.3-r0.0...
Downloading http://192.168.7.1/upg-ipk/i586/libasound-module-bluez_5.3-r0.0_i586.ipk.
Removing obsolete file /usr/share/alsa/bluetooth.conf.
Removing obsolete file /usr/lib/alsa-lib/libasound_module_ctl_bluetooth.so.
Removing obsolete file /usr/lib/alsa-lib/libasound_module_pcm_bluetooth.so.
Upgrading bluez5 (5.3-r0.0) to root...
Downloading http://192.168.7.1/upg-ipk/i586/bluez5_5.3-r0.0_i586.ipk.
Installing libical (0.48-r0.0) to root...
Downloading http://192.168.7.1/upg-ipk/i586/libical_0.48-r0.0_i586.ipk.
Removing package bluez4 from root...
Configuring libical.
Configuring libasound-module-bluez.
Configuring bluez5.
root@qemux86:~# opkg list-installed | grep bluez
bluez5 - 5.3-r0.0
libasound-module-bluez - 5.3-r0.0
root@qemux86:~#
Case 2:
bluez4 and bluez5: reciprocal RCONFLICTS (only)
root@qemux86:~# opkg list-upgradable
libasound-module-bluez - 4.101-r6.0 - 5.3-r0.0
root@qemux86:~# opkg install bluez5
Installing bluez5 (5.3-r0.0) to root...
Collected errors:
* check_conflicts_for: The following packages conflict with bluez5:
* check_conflicts_for: bluez4 *
* opkg_install_cmd: Cannot install package bluez5.
root@qemux86:~# opkg upgrade bluez5
Installing bluez5 (5.3-r0.0) to root...
Collected errors:
* check_conflicts_for: The following packages conflict with bluez5:
* check_conflicts_for: bluez4 *
root@qemux86:~# opkg list-installed | grep bluez
bluez4 - 4.101-r6.0
libasound-module-bluez - 4.101-r6.0
root@qemux86:~# opkg remove bluez4
No packages removed.
Collected errors:
* print_dependents_warning: Package bluez4 is depended upon by packages:
* print_dependents_warning: ofono
* print_dependents_warning: packagegroup-base-bluetooth
* print_dependents_warning: connman
* print_dependents_warning: These might cease to work if package bluez4 is removed.
* print_dependents_warning: Force removal of this package with --force-depends.
* print_dependents_warning: Force removal of this package and its dependents
* print_dependents_warning: with --force-removal-of-dependent-packages.
root@qemux86:~# opkg remove --force-depends bluez4
Removing package bluez4 from root...
root@qemux86:~# opkg list-installed | grep bluez
libasound-module-bluez - 4.101-r6.0
root@qemux86:~# opkg install bluez5
Installing bluez5 (5.3-r0.0) to root...
Downloading http://192.168.7.1/upg-ipk/i586/bluez5_5.3-r0.0_i586.ipk.
Installing libical (0.48-r0.0) to root...
Downloading http://192.168.7.1/upg-ipk/i586/libical_0.48-r0.0_i586.ipk.
Configuring libical.
Configuring bluez5.
root@qemux86:~# opkg list-installed | grep bluez
bluez5 - 5.3-r0.0
libasound-module-bluez - 4.101-r6.0
root@qemux86:~#
-----Original Message-----
From: Iorga, Cristian
Sent: Monday, March 25, 2013 3:07 PM
To: openembedded-core@lists.openembedded.org
Cc: Iorga, Cristian
Subject: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5
- RCONFLICTS/RREPLACES bluez5
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
---
meta/recipes-connectivity/bluez/bluez4_4.101.bb | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-connectivity/bluez/bluez4_4.101.bb b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
index 3ea2f25..2e98043 100644
--- a/meta/recipes-connectivity/bluez/bluez4_4.101.bb
+++ b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
@@ -1,6 +1,6 @@
require bluez4.inc
-PR = "r5"
+PR = "r6"
SRC_URI += "file://bluetooth.conf \
file://sbc_mmx.patch \
@@ -11,6 +11,9 @@ SRC_URI += "file://bluetooth.conf \ SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
+RCONFLICTS_${PN} = "bluez5"
+RREPLACES_${PN} = "bluez5"
+
do_install_append() {
install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
--
1.7.10.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests
2013-03-26 16:42 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests Iorga, Cristian
@ 2013-03-26 17:50 ` Martin Jansa
2013-03-26 18:00 ` Iorga, Cristian
0 siblings, 1 reply; 11+ messages in thread
From: Martin Jansa @ 2013-03-26 17:50 UTC (permalink / raw)
To: Iorga, Cristian; +Cc: Koen Kooi, openembedded-core@lists.openembedded.org
[-- Attachment #1: Type: text/plain, Size: 7264 bytes --]
On Tue, Mar 26, 2013 at 04:42:07PM +0000, Iorga, Cristian wrote:
> Hello all,
>
> Initial status:
>
> QEmu machine core-image-sato.
>
> Follow the /update/upgrade/install path as below:
>
> Fact: bluez5, at this point, is not an upgrade path for bluez4.
> Logical conclusion would be that bluez 5 and bluez4 should be provided only with RCONFLICTS (case 2), so that doing an:
> opkg upgrade
> would not work, otherwise, user will conclude that, at this stage, bluez5 is a replacement for bluez4, which, simply, is not true (Case 1).
>
> Forcing user to remove bluez4 and install manually bluez5 will suggest that bluez5 is not compatible with bluez4, so not a replacement.
>
> In conclusion, in my opinion, we should go with RCONFLICTS only for bluez5.3 PU.
>
> See cases below.
>
> Please advise.
>
> Case 1:
> bluez4 and bluez5: reciprocal RREPLACES and RCONFLICTS
I'm bit surprised that it replaced bluez4 in this case, because last
time I tested this I also needed RPROVIDES (at least to keep ofono,
packagegroup-base-bluetooth, connman happy).
> root@qemux86:~# opkg update
> Downloading http://192.168.7.1/upg-ipk/all/Packages.gz.
> Inflating http://192.168.7.1/upg-ipk/all/Packages.gz.
> Updated list of available packages in /var/lib/opkg/local_repo_all.
> Downloading http://192.168.7.1/upg-ipk/i586/Packages.gz.
> Inflating http://192.168.7.1/upg-ipk/i586/Packages.gz.
> Updated list of available packages in /var/lib/opkg/local_repo_i586.
> Downloading http://192.168.7.1/upg-ipk/qemux86/Packages.gz.
> Inflating http://192.168.7.1/upg-ipk/qemux86/Packages.gz.
> Updated list of available packages in /var/lib/opkg/local_repo_qemux86.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez4 - 4.101-r6.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg list-upgradable | grep bluez
> libasound-module-bluez - 4.101-r6.0 - 5.3-r0.0
> bluez4 - 4.101-r6.0 - 5.3-r0.0
> root@qemux86:~# opkg install bluez5
> Multiple replacers for bluez5, using first one (bluez4).
> Package bluez4 is already installed on root.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez4 - 4.101-r6.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg upgrade
> Upgrading libasound-module-bluez on root from 4.101-r6.0 to 5.3-r0.0...
> Downloading http://192.168.7.1/upg-ipk/i586/libasound-module-bluez_5.3-r0.0_i586.ipk.
> Removing obsolete file /usr/share/alsa/bluetooth.conf.
> Removing obsolete file /usr/lib/alsa-lib/libasound_module_ctl_bluetooth.so.
> Removing obsolete file /usr/lib/alsa-lib/libasound_module_pcm_bluetooth.so.
> Upgrading bluez5 (5.3-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/bluez5_5.3-r0.0_i586.ipk.
> Installing libical (0.48-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/libical_0.48-r0.0_i586.ipk.
> Removing package bluez4 from root...
> Configuring libical.
> Configuring libasound-module-bluez.
> Configuring bluez5.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez5 - 5.3-r0.0
> libasound-module-bluez - 5.3-r0.0
> root@qemux86:~#
>
> Case 2:
Case 2 shows that if some distribution makes decision to replace bluez4
with bluez5 (e.g. doesn't have ofono, connman,
packagegroup-base-bluetooth in their images, only their own app adapted
to use bluez5), then they need to add RREPLACES to bluez4 by .bbappend.
That's why I was complaining about "upgrade path" when someone makes
decision to change bluez version.
On the other hand, having whole R* combo in bluez5 can cause issues to
people who don't want to upgrade yet (like in Case 1) - one answer to
that is that they just shouldn't build it (no bluez5 in binary feed
should prevent accidental opkg upgrade), but this works only until
someone does e.g. "bitbake world" :/.
> bluez4 and bluez5: reciprocal RCONFLICTS (only)
> root@qemux86:~# opkg list-upgradable
> libasound-module-bluez - 4.101-r6.0 - 5.3-r0.0
> root@qemux86:~# opkg install bluez5
> Installing bluez5 (5.3-r0.0) to root...
> Collected errors:
> * check_conflicts_for: The following packages conflict with bluez5:
> * check_conflicts_for: bluez4 *
> * opkg_install_cmd: Cannot install package bluez5.
> root@qemux86:~# opkg upgrade bluez5
> Installing bluez5 (5.3-r0.0) to root...
> Collected errors:
> * check_conflicts_for: The following packages conflict with bluez5:
> * check_conflicts_for: bluez4 *
> root@qemux86:~# opkg list-installed | grep bluez
> bluez4 - 4.101-r6.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg remove bluez4
> No packages removed.
> Collected errors:
> * print_dependents_warning: Package bluez4 is depended upon by packages:
> * print_dependents_warning: ofono
> * print_dependents_warning: packagegroup-base-bluetooth
> * print_dependents_warning: connman
> * print_dependents_warning: These might cease to work if package bluez4 is removed.
>
> * print_dependents_warning: Force removal of this package with --force-depends.
> * print_dependents_warning: Force removal of this package and its dependents
> * print_dependents_warning: with --force-removal-of-dependent-packages.
> root@qemux86:~# opkg remove --force-depends bluez4
> Removing package bluez4 from root...
> root@qemux86:~# opkg list-installed | grep bluez
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg install bluez5
> Installing bluez5 (5.3-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/bluez5_5.3-r0.0_i586.ipk.
> Installing libical (0.48-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/libical_0.48-r0.0_i586.ipk.
> Configuring libical.
> Configuring bluez5.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez5 - 5.3-r0.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~#
>
>
>
> -----Original Message-----
> From: Iorga, Cristian
> Sent: Monday, March 25, 2013 3:07 PM
> To: openembedded-core@lists.openembedded.org
> Cc: Iorga, Cristian
> Subject: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5
>
> - RCONFLICTS/RREPLACES bluez5
>
> Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
> ---
> meta/recipes-connectivity/bluez/bluez4_4.101.bb | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/meta/recipes-connectivity/bluez/bluez4_4.101.bb b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> index 3ea2f25..2e98043 100644
> --- a/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> +++ b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> @@ -1,6 +1,6 @@
> require bluez4.inc
>
> -PR = "r5"
> +PR = "r6"
>
> SRC_URI += "file://bluetooth.conf \
> file://sbc_mmx.patch \
> @@ -11,6 +11,9 @@ SRC_URI += "file://bluetooth.conf \ SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
> SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
>
> +RCONFLICTS_${PN} = "bluez5"
> +RREPLACES_${PN} = "bluez5"
> +
> do_install_append() {
> install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
> install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/
> --
> 1.7.10.4
>
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests
2013-03-26 17:50 ` Martin Jansa
@ 2013-03-26 18:00 ` Iorga, Cristian
0 siblings, 0 replies; 11+ messages in thread
From: Iorga, Cristian @ 2013-03-26 18:00 UTC (permalink / raw)
To: Martin Jansa; +Cc: Koen Kooi, openembedded-core@lists.openembedded.org
Hi Martin,
For Case 1, I have not tested how happy were connman, ofono, and others after the upgrade. :-) I guess they were not happy at all, at least at runtime.
Also, given your thoughts/observation, please advise on how we should proceed on this one.
An option to postpone this upgrade until 1.5 is also possible.
Regards,
Cristian
-----Original Message-----
From: Martin Jansa [mailto:martin.jansa@gmail.com]
Sent: Tuesday, March 26, 2013 7:51 PM
To: Iorga, Cristian
Cc: Burton, Ross; Koen Kooi; openembedded-core@lists.openembedded.org
Subject: Re: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests
On Tue, Mar 26, 2013 at 04:42:07PM +0000, Iorga, Cristian wrote:
> Hello all,
>
> Initial status:
>
> QEmu machine core-image-sato.
>
> Follow the /update/upgrade/install path as below:
>
> Fact: bluez5, at this point, is not an upgrade path for bluez4.
> Logical conclusion would be that bluez 5 and bluez4 should be provided only with RCONFLICTS (case 2), so that doing an:
> opkg upgrade
> would not work, otherwise, user will conclude that, at this stage, bluez5 is a replacement for bluez4, which, simply, is not true (Case 1).
>
> Forcing user to remove bluez4 and install manually bluez5 will suggest that bluez5 is not compatible with bluez4, so not a replacement.
>
> In conclusion, in my opinion, we should go with RCONFLICTS only for bluez5.3 PU.
>
> See cases below.
>
> Please advise.
>
> Case 1:
> bluez4 and bluez5: reciprocal RREPLACES and RCONFLICTS
I'm bit surprised that it replaced bluez4 in this case, because last time I tested this I also needed RPROVIDES (at least to keep ofono, packagegroup-base-bluetooth, connman happy).
> root@qemux86:~# opkg update
> Downloading http://192.168.7.1/upg-ipk/all/Packages.gz.
> Inflating http://192.168.7.1/upg-ipk/all/Packages.gz.
> Updated list of available packages in /var/lib/opkg/local_repo_all.
> Downloading http://192.168.7.1/upg-ipk/i586/Packages.gz.
> Inflating http://192.168.7.1/upg-ipk/i586/Packages.gz.
> Updated list of available packages in /var/lib/opkg/local_repo_i586.
> Downloading http://192.168.7.1/upg-ipk/qemux86/Packages.gz.
> Inflating http://192.168.7.1/upg-ipk/qemux86/Packages.gz.
> Updated list of available packages in /var/lib/opkg/local_repo_qemux86.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez4 - 4.101-r6.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg list-upgradable | grep bluez
> libasound-module-bluez - 4.101-r6.0 - 5.3-r0.0
> bluez4 - 4.101-r6.0 - 5.3-r0.0
> root@qemux86:~# opkg install bluez5
> Multiple replacers for bluez5, using first one (bluez4).
> Package bluez4 is already installed on root.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez4 - 4.101-r6.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg upgrade
> Upgrading libasound-module-bluez on root from 4.101-r6.0 to 5.3-r0.0...
> Downloading http://192.168.7.1/upg-ipk/i586/libasound-module-bluez_5.3-r0.0_i586.ipk.
> Removing obsolete file /usr/share/alsa/bluetooth.conf.
> Removing obsolete file /usr/lib/alsa-lib/libasound_module_ctl_bluetooth.so.
> Removing obsolete file /usr/lib/alsa-lib/libasound_module_pcm_bluetooth.so.
> Upgrading bluez5 (5.3-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/bluez5_5.3-r0.0_i586.ipk.
> Installing libical (0.48-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/libical_0.48-r0.0_i586.ipk.
> Removing package bluez4 from root...
> Configuring libical.
> Configuring libasound-module-bluez.
> Configuring bluez5.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez5 - 5.3-r0.0
> libasound-module-bluez - 5.3-r0.0
> root@qemux86:~#
>
> Case 2:
Case 2 shows that if some distribution makes decision to replace bluez4 with bluez5 (e.g. doesn't have ofono, connman, packagegroup-base-bluetooth in their images, only their own app adapted to use bluez5), then they need to add RREPLACES to bluez4 by .bbappend.
That's why I was complaining about "upgrade path" when someone makes decision to change bluez version.
On the other hand, having whole R* combo in bluez5 can cause issues to people who don't want to upgrade yet (like in Case 1) - one answer to that is that they just shouldn't build it (no bluez5 in binary feed should prevent accidental opkg upgrade), but this works only until someone does e.g. "bitbake world" :/.
> bluez4 and bluez5: reciprocal RCONFLICTS (only) root@qemux86:~# opkg
> list-upgradable libasound-module-bluez - 4.101-r6.0 - 5.3-r0.0
> root@qemux86:~# opkg install bluez5 Installing bluez5 (5.3-r0.0) to
> root...
> Collected errors:
> * check_conflicts_for: The following packages conflict with bluez5:
> * check_conflicts_for: bluez4 *
> * opkg_install_cmd: Cannot install package bluez5.
> root@qemux86:~# opkg upgrade bluez5
> Installing bluez5 (5.3-r0.0) to root...
> Collected errors:
> * check_conflicts_for: The following packages conflict with bluez5:
> * check_conflicts_for: bluez4 *
> root@qemux86:~# opkg list-installed | grep bluez
> bluez4 - 4.101-r6.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~# opkg remove bluez4
> No packages removed.
> Collected errors:
> * print_dependents_warning: Package bluez4 is depended upon by packages:
> * print_dependents_warning: ofono
> * print_dependents_warning: packagegroup-base-bluetooth
> * print_dependents_warning: connman
> * print_dependents_warning: These might cease to work if package bluez4 is removed.
>
> * print_dependents_warning: Force removal of this package with --force-depends.
> * print_dependents_warning: Force removal of this package and its
> dependents
> * print_dependents_warning: with --force-removal-of-dependent-packages.
> root@qemux86:~# opkg remove --force-depends bluez4 Removing package
> bluez4 from root...
> root@qemux86:~# opkg list-installed | grep bluez
> libasound-module-bluez - 4.101-r6.0 root@qemux86:~# opkg install
> bluez5 Installing bluez5 (5.3-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/bluez5_5.3-r0.0_i586.ipk.
> Installing libical (0.48-r0.0) to root...
> Downloading http://192.168.7.1/upg-ipk/i586/libical_0.48-r0.0_i586.ipk.
> Configuring libical.
> Configuring bluez5.
> root@qemux86:~# opkg list-installed | grep bluez
> bluez5 - 5.3-r0.0
> libasound-module-bluez - 4.101-r6.0
> root@qemux86:~#
>
>
>
> -----Original Message-----
> From: Iorga, Cristian
> Sent: Monday, March 25, 2013 3:07 PM
> To: openembedded-core@lists.openembedded.org
> Cc: Iorga, Cristian
> Subject: [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5
>
> - RCONFLICTS/RREPLACES bluez5
>
> Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
> ---
> meta/recipes-connectivity/bluez/bluez4_4.101.bb | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> index 3ea2f25..2e98043 100644
> --- a/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> +++ b/meta/recipes-connectivity/bluez/bluez4_4.101.bb
> @@ -1,6 +1,6 @@
> require bluez4.inc
>
> -PR = "r5"
> +PR = "r6"
>
> SRC_URI += "file://bluetooth.conf \
> file://sbc_mmx.patch \
> @@ -11,6 +11,9 @@ SRC_URI += "file://bluetooth.conf \ SRC_URI[md5sum] = "fb42cb7038c380eb0e2fa208987c96ad"
> SRC_URI[sha256sum] = "59738410ade9f0e61a13c0f77d9aaffaafe49ba9418107e4ad75fe52846f7487"
>
> +RCONFLICTS_${PN} = "bluez5"
> +RREPLACES_${PN} = "bluez5"
> +
> do_install_append() {
> install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/
> install -m 0644 ${S}/network/network.conf
> ${D}/${sysconfdir}/bluetooth/
> --
> 1.7.10.4
>
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2013-03-26 18:19 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-25 13:07 [PATCH V3 0/2] BlueZ 5.3 new package Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 1/2] bluez5: new package for v5.3 Cristian Iorga
2013-03-25 13:07 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 Cristian Iorga
2013-03-26 16:42 ` [PATCH V3 2/2] bluez4: conflicts with/replaces bluez5 - upgrade real-life tests Iorga, Cristian
2013-03-26 17:50 ` Martin Jansa
2013-03-26 18:00 ` Iorga, Cristian
2013-03-25 16:09 ` [PATCH V3 0/2] BlueZ 5.3 new package Koen Kooi
2013-03-25 16:23 ` Burton, Ross
2013-03-25 17:03 ` Martin Jansa
2013-03-25 17:14 ` Burton, Ross
2013-03-26 10:20 ` Iorga, Cristian
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.