summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-10-15agl-service-voice-high: remove submodule usageScott Murray1-2/+3
Update agl-service-voice-high recipe to replace git submodule usage with DEPENDS on libafb-helpers and libappcontroller. nlohmann-json has been added also been added as a dependency since the json.hpp it provides is no longer available from libafb-helpers as it previously was from the submodule. Finally, the lua dependencies have been removed since nothing in the binding's controller usage requires them. Bug-AGL: SPEC-2854, SPEC-2856 Change-Id: I4ff980e6706c9e57da2c30181261f33c602f1515 Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit d56e487f85b69faa022580540f58ca244caf3520)
2019-10-08wam: bump revisionAntia Puentes1-1/+1
Includes commits: * [agl] Implement an envvar for launcher to wait for host process * [agl] Suspend/resume webapps depending on visibility * Create socket and lock files in XDG_RUNTIME_DIR. which are the fixes for the AGL issues: Bug-AGL: SPEC-2793 Bug-AGL: SPEC-1948 Bug-AGL: SPEC-2684 Change-Id: I1dc64ca013804c5df9a7f17f6d6722d40f3271f1 Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-10-07chromium68: bump revision, it fixes a WAM crash in rpiAntia Puentes1-1/+1
Includes commit: * Revert "[BACKPORT] [ozone/wayland] Use gbm with in-process-gpu mode" The original Chromium backport introduced a regression in the Raspberry Pi, resulting in a crash in the WebAppMgr. Bug-AGL: SPEC-2790 Change-Id: Ibc7af04cbd0b867d1488bcb18926d3337ad998ef Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-10-05meta-pipewire: add recipe to build the bluez-alsa-pipewire gstreamer helperhalibut_8.0.2halibut/8.0.28.0.2George Kiagiadakis4-0/+518
Unfortunately, the bluez-alsa PCM plugin does not work correctly when it is used through pipewire (or gstreamer, or anywhere really...). For this reason I have built a helper client that uses GStreamer to glue together the bluez-alsa sockets with pipewire. This helper is implemented as a patch to bluez-alsa so that it can use its internal private API. In the future this needs some re-thinking The helper is meant to run in the background as a service and it will create the appropriate streams in pipewire when it detects a new device on the bluealsa d-bus interface. Currently it only supports a2dp-sink and hfp modes (i.e. media player from a phone + calls). Bluetooth speakers need further policy work in wireplumber that is too complex to support on the current halibut version of pipewire/wireplumber. Bug-AGL: SPEC-2792 Change-Id: Ia0a0c4741dc6f28958e911436edde17ebde1a434 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-10-04Revert "pipewire: security-manager: add patch to grant dbus privilege to ↵George Kiagiadakis2-30/+1
pipewire" This reverts commit 1e7b764c947d05ad985040011b01c800bcd9d99c. Pipewire no longer needs dbus access, since the bluetooth impl is gone. Bug-AGL: SPEC-2792 Change-Id: Ie451cb5e43b6230eae6fa16b5d915b44b181a679 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-10-04Revert "pipewire config: enable bluez modules in pipewire and wireplumber"George Kiagiadakis3-11/+3
This reverts commit 9fc6d8e9bbc9746777c03471b643992abcb182a5. Native bluetooth implementation is no longer there. Bug-AGL: SPEC-2792 Change-Id: Ib45a0a3036aae8f3ac6dd29ed4e1f49e041af057 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-10-04wireplumber: update for halibutGeorge Kiagiadakis1-1/+1
George Kiagiadakis (6): Revert "mixer: search for "Alsa/Sink" instead of "Audio/Sink" now" Revert "simple-policy: handle bluez endpoints" Revert "bluez: set media class to Bluez/<direction>/<profile> and create softdsp-endpoints" Revert "alsa-udev: set media class to Alsa/<direction>" Revert "bluez: add bluez module" policy: add a hack that allows some clients to be linked always Bug-AGL: SPEC-2792 Change-Id: I8730a5395b869100f1f1c53d4fdd5d7526b7e3b0 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-10-04pipewire: update patches for halibutGeorge Kiagiadakis9-2826/+289
This removes the bluetooth-related patches that are superseeded by the bluez-alsa based implementation. Additionally, it adds a fix for a "sendmsg" error that was appearing randomly sometimes. Bug-AGL: SPEC-2792 Change-Id: I9835cbb5ec7cd21cbc5de2fd92a8a1c1356b0dea Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-10-03alexa-voiceagent-service: update config and database file pathsScott Murray2-0/+125
Add patch to alexa-voiceagent-service to update the default paths used for the database and configuration files to move them out of the binding installation hierarchy. This avoids the permissions problems stemming from the new security model of running as non-root. Also reworked the main configuration JSON file location logic to check for the file in /etc/xdg/AGL and then in AFM_WORKDIR (app-data directory), before falling back to the original location in var/config under the binding installation directory. Bug-AGL: SPEC-2845 Change-Id: Id7636435163005148a6291a56a1ada9896c0b3cc Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit c5b99b7e8608c1201293d84ba06e4a3ca501d9e8)
2019-10-01agl-voiceagent-alexa: mask out curl bbappendScott Murray1-0/+5
Mask out curl bbappend with BBMASK in agl-voiceagent-alexa.inc to avoid triggering significant rebuilds when enabling the feature. The required PACKAGECONFIG modification to enable nghttp2 is now done in meta-agl-profile-core. Bug-AGL: SPEC-2839 Change-Id: I8fdc9f75ecf20ae4c05dce585cef61cc923fac94 Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit f5c7abba750555d18ab711770de0fb61edb25b97)
2019-09-25alexa-voiceagent-service: Add patch to update audio device configurationScott Murray2-0/+198
Add patch to update audio device configuration to work with PipeWire changes to Auto SDK gstreamer output code. Bug-AGL: SPEC-2761 Change-Id: If7d1058a190bd91bd68151a5b54dc84db05a55bc Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit d46451a0bf7e7bb133b17b4ee22c0a241f4132dc)
2019-09-25meta-speech-framework: aac-module-gstreamer: Add PipeWire support patchScott Murray2-0/+98
Add a version of George's PipeWire support patch updated for the new gstreamer module in Alexa Auto SDK 2.0 to the aac-module-gstreamer bbappend. Bug-AGL: SPEC-2761 Change-Id: I4787d365664089848a9ffa3be1ee646766f6c931 Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit 15196563cf2d6cfc9b095319913d4bf448819559)
2019-09-20wam: auto-enable remote debug when agl-devel is onAntia Puentes1-0/+7
Apart from preventing remote debugging when agl-devel is not set, which was tackled in SPEC-2327, we are interested in having remote debugging available by default when agl-devel is set. WAM checks if files: * /var/agl-devel/preferences/devmode_enabled * /var/agl-devel/preferences/debug_system_apps exist to enable the dev mode and the remote web inspector, so we create those files by default when agl-devel is set. Bug-AGL: SPEC-2782 Change-Id: I557a633802e6baa15339708b00719d66adbcf1ac Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-09-18alexa-voiceagent-service: Update config.xml.inScott Murray2-0/+32
Add a patch to alexa-voiceagent-service recipe to update its config.xml.in to remove the now unneeded 4A dependency and add the now required new audio permission. Bug-AGL: SPEC-2765 Change-Id: I884bd7cfa45e598ecc06e1d6b1adde61a82f8db5 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2019-09-14Add agl-voiceagent-alexa featureScott Murray12-2/+121
Add feature and associated recipes and bbappends to enable building the Amazon Alexa voice agent for the speech framework using the Alexa Automotive SDK 2.0 release. A separate feature is used to accomodate potentially building with a different voiceagent provider. Some follow on development is required to add PipeWire support to the new gstreamer extension added in AAC 2.0, see SPEC-2767. Bug-AGL: SPEC-2765 Change-Id: Ie6e8f6a7965f8014ca2e64a2535faec073e320bc Signed-off-by: Scott Murray <scott.murray@konsulko.com> (cherry picked from commit e4a71cfe9b53795dd456cb8bd776c5196e924acf)
2019-09-05wireplumber: update to fix mixer issuehalibut_8.0.1halibut/8.0.18.0.1George Kiagiadakis1-1/+1
Bug-AGL: SPEC-2797 Change-Id: I8f1d13c4e816706f96f4a7628d238877a0cd4c02 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-09-03pipewire: security-manager: add patch to grant dbus privilege to pipewireGeorge Kiagiadakis2-1/+30
Bug-AGL: SPEC-2792 Change-Id: Ie241273679f88e61e418bbb5518551ad33ff4b65 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-09-02pipewire config: enable bluez modules in pipewire and wireplumberGeorge Kiagiadakis3-3/+11
In pipewire we only enable that if the bluez5 feature is enabled because otherwise the module is not compiled and will error out at runtime. In wireplumber we always enable it since it does not depend on bluez. Bug-AGL: SPEC-2792 Change-Id: I53bbc387bccd953633affd4fc34949a2fd488ed7 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-09-02wireplumber: update to 0.1.1, which includes patches for bluetooth supportGeorge Kiagiadakis1-3/+3
Bug-AGL: SPEC-2792 Change-Id: I6075539a4964e9fb638443e14cdcfa0d0028b81c Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-09-02pipewire: add patches for bluetooth supportGeorge Kiagiadakis7-1/+2865
Bug-AGL: SPEC-2792 Change-Id: Ida682a405c4cc5d2f84a98cb71f89a7bb41ad489 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-08-30chromium68: remove downstream backportsJacobo Aragunde Pérez3-175/+1
Bump revision to include: * 3169198 [BACKPORT] skia: Build skcms with -mfp16-format=ieee on GCC ARM builds * 6aa7e63 [BACKPORT] libavcodec: Remove dynamic relocs from h264idct_neon.S These patches were being kept in the recipe, but there is no need for that now. Bug-AGL: SPEC-2506 Bug-AGL: SPEC-2514 Change-Id: I7dcd221c7f4fc179f2e686c8cc4eb619917ad9ab Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com> (cherry picked from commit ca764441c712804d00562f838a4ef00c881750e9)
2019-08-22chromium68: bump revisionAntia Puentes1-1/+1
Commits included are backports from Chromium/Wayland upstream which are part of the on-going work carried on SPEC-2266: 6a0470f2d03 [BACKPORT] [ozone/wayland] rely on implicit sync for Broadcom and Intel GPUs. 55acfb83ea4 [BACKPORT] [ozone/wayland] Use gbm with in-process-gpu mode d58f1321884 [BACKPORT] ozone: xkbcommon: Pre-compute masks when setting keymap ce84756108d [BACKPORT] ozone/wayland: xkbcommon: Fix layout switching 5e8508b280e [BACKPORT] ozone/wayland: Support NumLock in non-chromeos builds 7e90082ccfc [BACKPORT] ozone/wayland: Remove WaylandXkbKeyboardLayoutEngine c74c5365d40 [BACKPORT] ozone/wayland: Fix NEO keyboards layout handling 1055757769d [BACKPORT] ozone/wayland: Support dead keys e2648e9c17b [BACKPORT] Move CharacterComposer into //ui/base/ime Besides: * 1055757769d [BACKPORT] ozone/wayland: Support dead keys fixes SPEC-2746 * 55acfb83ea4 [BACKPORT] [ozone/wayland] Use gbm with in-process-gpu mode fixes SPEC-2699 Bug-AGL: SPEC-2266 Bug-AGL: SPEC-2746 Bug-AGL: SPEC-2699 Change-Id: I19eaa6bf225ac478386c53b94955ccb0a4856e62 Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-07-30pipewire: add patch to fix non-S16 negotiation issuehalibut_8.0.0halibut/8.0.08.0.0George Kiagiadakis2-0/+45
Bug-AGL: SPEC-2674 Change-Id: Id5b099a8efed2a2f9bdae142ef69bbc09deae8e8 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-30wireplumber: add AGL-specific per-board configGeorge Kiagiadakis3-0/+125
Bug-AGL: SPEC-2662 Change-Id: If419c940e18feb46f42f9004479944bd395a3b4a Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-30wireplumber: update to fix some bugsGeorge Kiagiadakis1-1/+1
George Kiagiadakis (5): modules: initialize some spa_pod_builders inline proxy: fix the naming of variables that point to the instance and private structures Merge branch 'error-handling' into 'master' simple-policy: do not leak client endpoints when rescanning simple-policy: compare client creation times so that the "last one wins" Julian Bouzas (6): dsp: use the new WpProxyLink API proxy: throw an error if the proxy is destroyed during async constructions modules: handle error if the endpoint proxies could not be created simple-policy: fix bug when finding endpoints dsp: removed unneeded format property and always use the default format simple-endpoint-link: skip already output linked ports Bug-AGL: SPEC-2674 Change-Id: Ic35d9921dbd1e6d4f6302d326983a73436d2b8e6 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-25meta-html5-framework/wam: adjust how wam is startedStephane Desneux3-14/+249
WebAppMgr has to be launched for each user (but not through the systemd user session as it would require too much privileges for the user). For this purpose, we create a systemd service instanciated for each user by the application framework through afm-user-session@ service. This patch also distributes the environment and service file near the recipe instead of having those integration files in the sources (it's easier to follow AGL evolution without changing the upstream source code) Also, for the HTML5 demos to work, each app must request the following permissions in their config.xml: <param name="urn:AGL:permission::public:display" value="required" /> <param name="urn:AGL:permission::public:audio" value="required" /> Bug-AGL: SPEC-2586 Change-Id: I4286fd9e1d1a1dcff48d3fdbfab2bf8d57f0fa0e Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2019-07-25Update .gitreview for halibut branchJan-Simon Möller1-0/+1
Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Change-Id: I1f84c5dc8ef53d833bf2e8b4a1125178df21f964
2019-07-24add markdown documentation for all machines and featuresStéphane Desneux6-0/+54
THIS IS STILL WIP - not all features/machines are described Bug-AGL: SPEC-1902 Change-Id: I1808346276628caf6ae61d5e6d7ccade39241daf Signed-off-by: Stéphane Desneux <stephane.desneux@iot.bzh>
2019-07-13wam: bump revision, fixes related to the remote inspectorhalibut_7.99.3halibut/7.99.37.99.3Antia Puentes1-1/+1
Included changes: * 8271e13 [agl] Update the path for the Remote Web Inspector * f0166b5 [agl] Remote debugging should work only on debug mode AGL-bug: SPEC-2327 AGL-bug: SPEC-2328 Change-Id: Iaee96758831d0d1e809bd10e0ce6dff445d6210a Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-07-13wam: add AGL_DEVEL flag if 'agl-devel' distro feature is onAntia Puentes1-0/+1
We want the remote inspector to be available only in debug mode, i.e. when the 'agl-devel' feature is on. We will use this flag to check if that is the case. AGL-bug: SPEC-2327 Change-Id: Ib22c5f21bc79afa4544b884238ca971d7bef6991 Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-07-12wireplumber: add basic policy support based on role prioritiesGeorge Kiagiadakis1-1/+1
* Every client now has a priority based on its role * For playback, we allow only a single client to play at a time * For capture, we allow all clients to capture simultaneously * Every time the "selected" device changes (either because devices are discovered/removed or because the user changed the selection), the clients are re-linked to the new "selected" device. * When a playback client quits and there are others waiting unlinked, the highest priority one is linked automatically. * This also properly fixes re-linking the correct client(s) to the correct device(s) when wireplumber exits and restarts. George Kiagiadakis (7): m-client-permissions: ref-count the client data and re-work code for safety policy: take into account the role of the client when linking it Merge branch 'doc-fix' into 'master' Merge branch 'delay-unhandled-clients' into 'master' config: allow nested blocks, in case a property has a dictionary value policy: implement a basic policy based on role priorities simple-policy: remove the idle callback when the object finalizes Julian Bouzas (3): Fix doc warnings audio-client-module: added new module to load clients after softdsp endpoints are created simple-policy: delay unhandled enpoints if target is not found Bug-AGL: SPEC-2473 Change-Id: Ia37f236a8cac8b5f1f0d5e7409c50d4e7cb8a2da Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-12pipewire: add and enable native gstreamer audio source & sink elements for ↵George Kiagiadakis8-0/+1464
pipewire Bug-AGL: SPEC-2634 Change-Id: I10301e0c244fad60b31a4dfa6dc0dc61512a4867 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-12wireplumber: update to latest versionGeorge Kiagiadakis1-1/+1
George Kiagiadakis (18): Merge branch 'unregister-fix' into 'master' config: skip empty lines and comments (starting with #) config: implement reading properties for modules from the config file config: allow module property blocks to span multiple lines config: ensure that both ABI and MODULE are specified before the properties simple-policy: allow configuring the default audio devices via module arguments config: enhance the configuration file with comments Merge branch 'async-endpoint-links' into 'master' Merge branch 'link-fix' into 'master' softdsp-endpoint: actually register the streams softdsp-endpoint: dont't add the stream-id field on the description of the master controls softdsp-endpoint: move the selected control in the endpoint and simplify the id encoding alsa-udev/softdsp-endpoint: make the stream names & count configurable softdsp-endpoint/dsp: actually notify controls on the endpoint, not the dsp object simple-policy: match the requested role to a stream in find_endpoint mixer: implement listing controls of multiple streams Merge branch 'multistream-softdsp-ep' Merge branch 'stop-client' into 'master' Julian Bouzas (21): core: handle global references in a simpler way endpoint: remove unneeded ref/unref modules: unregister endpoints on global_removed instead of proxy destroyed modules: disconnect the signals when the endpoints are destroyed proxy: remove unneeded destroy signal endpoint-link: make contruction async factory: remove unneeded sync construction API simple-endpoint: handle both input and output directions simple-policy: handle both input and output clients simple-endpoint-link: dont link already linked ports softdsp-endpoint: add multiple streams support softdsp-endpoint: change the control value properly dsp: add support for convert mode module-pipewire: always include the node Id in the endpoint name proxy-link: add new API endpoint: allow derived classes of endpoint-link to finish async construction simple-endpoint-link: store the created links in a list endpoint: destroy the link before removing them from the lists endpoint: add wp_endpoint_unlink API simple-policy: unlink the target endpoint if it is already linked proxy: allow derived classes to finish its creation Bug-AGL: SPEC-2473 Bug-AGL: SPEC-2572 Change-Id: I1f9ca82ef907ce7f04c977692b3707fe3ef283d2 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-12pipewire: update patchesGeorge Kiagiadakis10-13/+429
0004 adds a useful cli utility 0006 aids debugging 0007 fixes audio in qemu (SPEC-2570) 0008 & 0009 add functionality necessary for implementing multiple streams per device The rest is the same as before Bug-AGL: SPEC-2570 Change-Id: If6736f0fc87491edce6981c0be44094239ddaa89 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-07-11chromium: fix launcher for halibutJacobo Aragunde Pérez1-2/+2
Bumps revision and points to newly created halibut branch. Included changes: * 7dabb46 Do not set the user-data-dir. * f0821a3 Add the new display permission to config.xml.in. AGL-Bug: SPEC-2612 Change-Id: Ie0bdc7dfc840523e262f34b53c2a6945743345dd Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com>
2019-07-04chromium68: do not set mksnapshot path env varsAntia Puentes1-3/+0
Bug-AGL: SPEC-2602 Change-Id: I7b8756d8be3384ccaff18ecbaf11bb163e2a3c3e Signed-off-by: Antia Puentes <apuentes@igalia.com>
2019-06-29chromium68: fix aarch64 link issuehalibut_7.99.2halibut/7.99.27.99.2Jacobo Aragunde Pérez2-1/+110
Backport upstream patch: https://chromium-review.googlesource.com/c/chromium/third_party/ffmpeg/+/1390286 Fix this error when linking libcbe.so: obj/third_party/ffmpeg/ffmpeg_internal/ autorename_libavcodec_aarch64_h264idct_neon.o: relocation R_AARCH64_ADR_PREL_PG_HI21 against symbol `ff_h264_idct8_add_neon' which may bind externally can not be used when making a shared object; recompile with -fPIC Also remove the mksnapshot path override for aarch64, it is not necessary now we run mksnapshot with qemu. This fixes the install step. Bug-AGL: SPEC-2506 Change-Id: Idb90c8c20910ec48ed01f1b02528f14781edc4a3 Signed-off-by: Nick Yamane <nickdiego@igalia.com> Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com>
2019-06-27pipewire: install environment variable filesGeorge Kiagiadakis4-2/+34
DISABLE_RTKIT saves us from nasty error messages about not being able to connect to dbus. This doesn't make sense anyway, real-time mode should not be enabled on embedded. PIPEWIRE_DEBUG/G_MESSAGES_DEBUG are put there in comments so that people can easily uncomment to figure out what is wrong with their pipewire setup. Bug-AGL: SPEC-2473 Change-Id: Id07d3d21f472885434158c300a227d53020c2189 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-27meta-pipewire: add patch to security-manager for pipewireGeorge Kiagiadakis3-1/+28
This grants permission to all applications to be able to communicate with pipewire. This is a temporary measure that we need to rethink in the future. This commit also changes the priority of the meta-pipewire layer because the security-manager patch needs to be applied after the patch to the same file from meta-app-framework, which has priority 70. Bug-AGL: SPEC-2554 Change-Id: I9df47ea1a40e1fa97900bb5dbc21bc11765eb7ab Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-27wireplumber: uprevGeorge Kiagiadakis1-1/+1
* adds support for managing client permissions (required for SPEC-2554) * properly defaults to the first non-loopback device available on the system * add support for linking all the stream channels instead of just one George Kiagiadakis (7): Merge branch 'registry' into 'master' remote-pipewire: emit global-added for all proxy types modules: add new module to manage client permissions Merge branch 'async-endpoints' into 'master' softdsp-endpoint: give a proper name to the endpoint based on alsa properties simple-policy: select by default the first non-loopback device softdsp-endpoint: fix compiler warnings Julian Bouzas (8): proxy: add wp_proxy_sync API and DONE signal proxy: don't remove the listener on destruction as it is not needed remote-pipewire: add registry listener modules: use the registry from WpRemotePipewire factory: add async support endpoint: add async initable interface boilerplate modules: make endpoint creation async modules: add support for multiple channels linking Bug-AGL: SPEC-2554 Change-Id: Ie1f42e096834c2cfbd2bade714e0546066f8fb7c Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-27pipewire: run with the System::Pipewire smack labelGeorge Kiagiadakis3-2/+19
Pipewire shares memory with its clients using open file descriptors (memfd or shared memory file) which are created within pipewire and therefore they have the same smack label as the pipewire process. Clients must be able to read and write to this memory, therefore they need rw acess to that smack label. Since all AGL apps have only write access to the System label, we need to use a different smack label which can be granted rw access from the applications that need to use audio. "System::Pipewire" is chosen here to follow the "System::Sub" pattern that is described in the documentation. Bug-AGL: SPEC-2554 Change-Id: I81cbf82adfde3ef4f67872bd91293370339b18d7 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-27wam: revision bump, fix linker issuesJacobo Aragunde Pérez1-1/+1
Included changes: * 574c65b [agl] Explictly link WAM binary with WAMCore lib * 9244327 [agl] Explicitly link WAM binary with ilmCommon library Bug-AGL: SPEC-2532 Change-Id: I8ea9ed51d404b902d954f3e90a05daced7119361 Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com>
2019-06-27wam: Remove any Qt dependencies and port to CMakeJacobo Aragunde Pérez2-10/+10
Recipe changed to use CMake instead of QMake. After Qt usage removal from WAM implementation, boost is now used for some functionalities previously provided by Qt (e.g: File system). Additionally, add glib-2.0 missing dependency. Finally, bump to latest WAM. Included changes: 3e9ce0d [agl][qtless] Port to CMake 971df2a [agl][qtless] Use unordered_map instead of std::map aaa56e3 [agl][qtless] Get rid of Qt usage in webos/DeviceInfoImpl 20a1ec2 [agl][qtless] Remove Qt dependency from qmake files 2615c15 [agl][qtless] Use const char arrays instead of macros for WindowTypes 42770ee [agl][qtless] Trim timestamp string in NetworkStatus 0c7d257 [agl][qtless] Replace QLocale by Boost.Locale 45108f9 [agl][qtless] Remove QVariant leftovers 00f7a1f [agl][qtless] Add Url parsing code 9f74ec6 [agl][qtless] QString-less WAM: Remove leftovers a5ebdc5 [agl][qtless] Migrate PalmSystem away from QString 41ecf4c [agl][qtless] Do not use QString in WebAppManagerConfig 815191c [agl][qtless] Do not use QString in NetworkStatus 47bd88b [agl][qtless] Do not use QString in WebPage ba7ece0 [agl][qtless] Migrate WebAppWayland away from QVariant 903e2fa [agl][qtless] QString-less WebApp: Remove leftovers 502b9f6 [agl][qtless] QString-less WebApp/WebPage: appId 20f57de [agl][qtless] QString-less WebAppManager: SystemLanguage and DeviceInfo e055f56 [agl][qtless] Do not use QString WebAppManager in JS strings building 8949895 [agl][qtless] Migrate WebAppManager away from QString 75aaf56 [agl][qtless] Get rid of QString usage in WebProcessManager 700e456 [agl][qtless] Migrate ApplicationDescription away from QString ba798eb [agl][qtless] Replace Qt data container types by their STL counterpars 159cef4 [agl][qtless] Fix error handling when converting strings to numbers 9c875f1 [agl][qtless] Add StringUtils initial implementation Bug-AGL: SPEC-1871 Change-Id: I7e7725e6a5e9790fd4660f104e4142084f100b62 Signed-off-by: Nick Diego Yamane <nickdiego@igalia.com> Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com> (cherry picked from commit fcfbd7497c73413bd35d1a641686f2c095626daa)
2019-06-26agl-service-audiomixer: switch to gerritGeorge Kiagiadakis1-3/+3
Bug-AGL: SPEC-2544 Change-Id: Ic9e2861518614425c394ab6b1dd050b221c0dc5a Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-25pipewire: build with -mno-unaligned-access on armGeorge Kiagiadakis2-0/+29
Bug-AGL: SPEC-2393 Change-Id: I2e4feef547642c2b3d34403f7a1a45999cd4db11 Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-24wireplumber: uprev to fix a few leaks and warningsGeorge Kiagiadakis1-1/+1
George Kiagiadakis (9): softdsp-endpoint: workaround pipewire bug Merge branch 'proxy-global-id' into 'master' core: destroy globals in _dispose() so that the global-removed signal is dispatched m-mixer: downgrade warnings about no backend to debug messages m-simple-policy: find_endpoint: ref the endpoint only if it's not NULL modules: do not leak references to the endpoints at their construction time meson: add option to disable gobject introspection proxy: avoid crashing when the WpProxy is unrefed in the "destroyed" signal handler remote-pipewire: do not leak the GSource Julian Bouzas (2): proxy: add global_id property audio-softdsp-endpoint: set module instead of core in the module data Change-Id: I1e08ad7245f09110d599163775ecb382298b111b Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-21pipewire: switch system-wide template systemd service & socket filesGeorge Kiagiadakis3-6/+58
This allows granting pipewire additional permissions, most notably the permission to access the alsa devices (SupplementaryGroups=audio) and therefore fixes pipewire for the "running as non-root" setup Bug-AGL: SPEC-2554 Change-Id: Ie9192a7f42f4929f70114ddc39a23d94f9ba84fc Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>
2019-06-20pipewire: Enable Bluetooth supportScott Murray1-0/+1
Add DISTRO_FEATURES based enabling of bluez5 support to pipewire recipe so the Bluetooth plugin is enabled for experimentation. Bug-AGL: SPEC-2473 Change-Id: Ic63df580c4005e924a2172d2d513dbdca94457f4 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2019-06-20chromium68: custom toolchain, target v8 snapshotJacobo Aragunde Pérez4-74/+298
Modify the chromium68 recipe to make it more like the one available in meta-browser: https://github.com/OSSystems/meta-browser Instead of passing Yocto's build flags to the cros (=ChromeOS) toolchain, generate a toolchain definition file specifically for this build. For the generation of the V8 memory snapshot, build the required files for the target architecture, then use qemu-native to run them. Upstream chromium addresses this problem by downloading a specific native toolchain for every target platform, which we cannot do in this context. The toolchain changes trigger an issue with ARMv7 builds; backported one patch to address that specific issue. This changes also triggered a problem with 32 bit targets, the generated binaries were too big. Forced the DEBUG_ARGS to use -g1 (or -g0 otherwise). Bug-AGL: SPEC-2514 Change-Id: Ib18431b628415c58a3c29595bfff10057e355a4b Signed-off-by: Jacobo Aragunde Pérez <jaragunde@igalia.com>
2019-06-18pipewire: uprev wireplumberGeorge Kiagiadakis1-1/+1
George Kiagiadakis (19): lib: add new WpPolicy class and basic policy management functionality modules: re-implement the simple policy module using WpPolicy m-pipewire: temporarily add the sync_core_with_cb hack WpPolicy: add a way of signaling policy changes Merge branch 'proxy-api' into 'master' lib: add a new WpRemote base class and move the pw_remote glue into a new WpRemotePipewire Merge branch 'use-proxy-api' into 'master' endpoint: maintain a weak ref to the core since construction time modules: fix some ref counting and memory {de-,}allocation issues proxy: maintain a weak ref to the core lib: add some debug statements to debug the destruction sequence Merge branch 'refcount-fix' into 'master' Merge branch 'unregister-endpoint' into 'master' policy: consume floating reference of GVariant in _find_endpoint() endpoint: add some useful API for querying info about streams & controls core: remove_global: remove object from the list before triggering the notification remote-endpoint: disconnect the control-value change callback when the proxy is destroyed modules: move the "selected" endpoint logic to the simple-policy module and improve it module-mixer: implement the "Mixer/Audio" endpoint provider Julian Bouzas (9): proxy: add API modules: use the new proxy API audio-softdsp-endpoint: fix proxy port property description alsa-udev: fix minor bug module-pipewire and simple-endpoint: use the new Proxy API modules: fix proxy ref-count proxy: add destroyed signal modules: unregister the endpoints when their proxy is destroyed proxy: remove unneeded core reference Bug-AGL: SPEC-2518 Change-Id: Ia4c68ea5aa173add542a96b76f34bce68dcf103d Signed-off-by: George Kiagiadakis <george.kiagiadakis@collabora.com>