summaryrefslogtreecommitdiffstats
path: root/meta-app-framework/recipes-core/af-main
AgeCommit message (Collapse)AuthorFilesLines
2018-04-06af-main: Refactor of user session managementJosé Bollo2-3/+5
This changes how user session are started and handled within systemd. This evolution add a tiny program to start and handle user sessions: afm-user-session. This is the first step of a serie because, actually, due to platform restrictions, the common users if started this way will not be able to run correctly (issues with wayland/weston and with handling of CGROUP2 with Smack LSM) Also fixes memory leaks and improves build process. Bug-AGL: SPEC-545 Bug-AGL: SPEC-1016 Change-Id: Icaf7c575633fc663a3df0ffee683b22cc087bb16 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-02-13Remove smack recipeJosé Bollo1-3/+3
smack user space library is provided by meta-security Change-Id: Ifb5e88e5f5a1aab3e695ab91a56d8c55c33fd004 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2018-02-13Rename smack OVERRIDE to with-lsm-smackJosé Bollo1-4/+4
Using the OVERRIDE "smack" came with the use of the layer meta-intel-iot-security. When switching to meta-security, it conflicts with the package name 'smack' that provide the smack user library. Yocto was reporting the following error: ERROR: .../meta-security/recipes-security/smack/smack_1.3.0.bb: QA Issue: Recipe .../meta-security/recipes-security/smack/smack_1.3.0.bb has PN of "smack" which is in OVERRIDES, this can result in unexpected behaviour. [pn-overrides] Change-Id: Id71b283bf1ce5682bd94bf96595eb32506acb1d5 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-12-13af-main: Fix a meaningless linkJosé Bollo1-1/+0
The removed line remained from some previous abandonned work. Change-Id: Ic4a56ed5aeae43a516f78711eb1aa684cbbe97e1 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/12429 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-11-30af-main: Handle users from the system scopeJosé Bollo4-91/+30
To simplify the management of users while keeping systemd as launcher, this evolution anchors the framework in the system level. This also introduce a new version of afm-system-daemon that is 100% a binding of the binder and that consequently offers natively a websocket API. Change-Id: I1bbb48d0c01d0f6fd3c8dfca90febbe8147cf204 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/12139 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-11-22afm-main: use AGL_BRANCH for naming packageJosé Bollo1-1/+1
Change-Id: I7ac64017cf21a0a29d6fa60ab12ab260589a1d50 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/12089 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-11-05Allow SRCREV handling through poky-agl.confJan-Simon Möller1-1/+1
This change simplifies the SRCREV handling by using - AGL_APP_REVISION and AGL_DEFAULT_REVISION in recipes. Also the AGL_BRANCH can be used to switch to release branches. Bug-AGL: SPEC-864 Change-Id: I9384c85d4f7434416d87359f88c482887ac2ead8 Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/11685 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
2017-09-15App-FW: Update namings and bug fixesJosé Bollo1-1/+1
af-main: ======== - set the version to 4.1 - make names of binder revelant for ps and journal: afbd-APPID - reduce the default verbosity to WARNING - when AGL_DEVEL - set default token to HELLO - include --monitoring - set the verbosity to NOTICE - fix subpath of libraries to 'lib' always - fix --no-httpd option af-binder: ========== - set the version to 4.1 - verbosity distinguishes WARNING and NOTICE - enforce use of AFB_ prefixed verbose macros - report verbose message in monitoring - check that API of --ws-server exists - atomically dump the stack on signals - fix starve bug (MAJOR) - fix @t bug on random token (CRITICAL: SPEC-854) - fix subcall bugs (MAJOR) - fix possible SIGSEGV in dlopen (MAJOR: SPEC-662) - fix memory leak when upgrading protocol Bug-AGL: SPEC-854 Bug-AGL: SPEC-662 Change-Id: Ifb7aee5e72c5f9d738c11b9b24e7e07b128e80fc Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10763 Reviewed-by: José Bollo <jobol@nonadev.net> Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-09-15Fix post install script dependencyRonan Le Martret1-1/+3
* Since yocto pyro we need to declare PACKAGE_WRITE_DEPS, dependency for post install script http://www.yoctoproject.org/docs/2.3/mega-manual/mega-manual.html#var-PACKAGE_WRITE_DEPS * we alsa need to explicit exit 1 if post script failed Bug-AGL: SPEC-646 Bug-AGL: SPEC-825 Change-Id: Ic15f8af884895fecacceb9886de5bebe591a2be0 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10883 Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Reviewed-by: Thomas Rini <trini@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org> Tested-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-09-08Upgrade to pyroChanghyeok Bae1-1/+1
u-boot: v2017.01 dlt-daemon: Remove gzipnative inheritance - gzipnative.bbclass is removed in pyro branch. - See ab0f46400c113c0d893be872727a67739d5e794d in poky. gpm: Remove bbappend file - upstream(meta-openembedded) is using git(v1.99.7) and this is not required anymore. gnutls: Remove bbappend file - The patch is already applied in upstream. agl-image-minimal: Remove ROOTFS_PKGMANAGE_BOOTSTRAP - ROOTFS_PKGMANAGE_BOOTSTRAP is removed in upstream. - Please see 529244ee212fe14019e35a5f163fab705ddbf141 in poky. freetype: Change hash value for v2.7.1 binary shadow: Remove shadow_%.bbappend - It's already applied upstream poky. Remove nativesdk-packagegroup-sdk-host.bbappend - It's already applied in upstream poky. faac: Remove bbappend file - It's already applied meta-openembedded upstream. pulseaudio: Change bbappend naming - Upstream yocto provides pulseaudio v10.0. weston: re-create patch to apply new version (v2.0.0) - Remove 0001-compositor-drm.c-Launch-without-input-devices.patch because it's already applied in new version. mesa: Remove 12.0.3 recipe and fix build error for qemux86-64 - Yocto upstream supports 17.0.2 and v12.0.3 is not required anymore in raspberrypi - Error: | configure: error: --enable-gallium-llvm selected but llvm-config is not found wayland-ivi-extension: Upgrade to latest master version - Due to weston upgrade, wayland-ivi-extension should be upgraded. packagegroup-ivi-common-core-multimedia: Remove alsa-lib - alsa-lib has empty package and it's not required anymore. Add agl-driver and agl-passenger in group and passwd - Parsing Error: agl-users: groupname agl-passenger does not have a static ID defined. poky-agl.conf: Change gstreamer default version to v1.10.x - Yocto upstream moves gstreamer to v1.10.4. af-main: Fix build error - Error: file /usr/local conflicts between attempted installs of af-main-1.0-r0.corei7_64 and base-files-3.0.14-r89.qemux86_64 intel-corei7-64: Change gstreamer-vaapi-1.0 name - gstreamer-vaapi-1.0 is moved to oe-core and its name is changed to gstreamer1.0-vaapi. linux-raspberrypi: Drop 4.4 bbappend - The upstream meta-raspberrypi doesn't support v4.4 anymore. - CVE patches are not required anymore. glibc: Remove bbappend - The bug-20116 is already applied in 2.25 cynara,security-manager: Fix build error - cynara: Replace bb.data to d - security-manager: Temporarily use 'no' in APPLY variable u-boot-ota: Add SRC_URI - In pyro, SRC_URI and S is moved from .inc to .bb linux-yocto: Remove 4.8 and 4.4 bbappend - Yocto 2.3 (Pyro) doesn't support v4.8 kernel anymore. - CVE patches in meta-agl-bsp are already applied in Yocto 2.3. tcf-agent: Remove bbappend file - This change is merged to upstream poky (pyro) bluez5: Remove recipe and add .bbappend - Yocto 2.3 (Pyro) already has same version. - bluetooth.conf file is added in .bbappend python-pycrypto: Remove recipe - meta-openembedded (Pyro) already has same version. meta-agl-bsp/classes/image.bbclass: Arrange for pyro - image.bbclass is taken from poky/meta/classes/image.bbclass and only changed IMAGE_TYPE_vm variable. libsoup: Fix native build error temporarily v2 (jsmoeller): meta-agl-bsp/meta-ti: - workaround patches in meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend - fix old python code in meta-ti/recipes-arago/ipumm-fw/ipumm-fw_3.00.13.00.bb - workaround patches in meta-ti/recipes-arago/weston/weston_%.bbappend - make specific to dra7xx-evm: -- meta-ti/recipes-bsp/alsa-state/alsa-state.bbappend -- meta-ti/recipes-bsp/u-boot/u-boot-ti-staging_%.bbappend -- rename meta-ti/recipes-multimedia/pulseaudio/pulseaudio/dra7xx-evm-set-default-sink-source.patch -- rename meta-ti/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend TODO/FIXME's in: - meta-agl-bsp/meta-ti/recipes-arago/gstreamer/gstreamer1.0-plugins-bad_%.bbappend - meta-agl-bsp/meta-ti/recipes-arago/weston/weston_%.bbappend - meta-agl-bsp/meta-ti/recipes-multimedia/pulseaudio/pulseaudio_%.bbappend - meta-ti/recipes-bsp/u-boot/u-boot-ti-staging_%.bbappend Bug-AGL: SPEC-646 Change-Id: I4162ae887d3334e9102575e3724483aa25f4bd9c Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com> Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10457
2017-08-21af-main: Fix 2 bugsJosé Bollo1-1/+1
Allow packaging of companion programs ------------------------------------- Allow to set executable permission on files of the widget. Then the files can be run by using their relative path within the widget. Bug-AGL: SPEC-384 Bug-AGL: SPEC-785 Allows content in subdirectory "htdocs" --------------------------------------- Fix the bug SPEC-808. The content of pure or hybrid HTML widget had to be in the subdirectory "htdocs" but the attribute "src" of the tag <content> shouldn't include the prefix "htdocs/". It caused installation to fail because it was checking that the file existed but in the root directory. This commit fixes the paradox by also trying to search the content in the subdirectory "htdocs". This is a temporary fix. Bug-AGL: SPEC-808 Change-Id: I512e47d35c135329ef99e3617909ba6fe78eaca7 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10603 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-25af-main: Install debugging features when agl-develJosé Bollo2-1/+3
When agl-devel is required, installs the debugging feature needed by XDS. Also, improves AGL_DEVEL setting of af-binder. Bug-AGL: SPEC-659 Change-Id: I90a1ecbaf78b860ded4f3a70d81ab6312d40772e Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10333 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-18af-main: add RDEPENDS on bashMartin Kelly1-1/+1
Currently, we get a file-rdeps QA warning because afm-install has a /bin/bash shebang line but does not RDEPENDS on bash. We could also use /bin/sh instead, but I'm not sure if we have some bashisms built-in to the script. For now, add RDEPENDS to fix the warning. Change-Id: I368da5e9e5c2d57d7bc2a1b674eb84c1147be5c1 Signed-off-by: Martin Kelly <mkelly@xevo.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10217 Reviewed-by: José Bollo <jobol@nonadev.net> Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-11Upgrade framework and binderJosé Bollo1-1/+1
This includes: - improvement of debugging (indication files) - not listing terminated processes - allow widget to not define icon (service) Bug-AGL: SPEC-702 Bug-AGL: SPEC-728 Bug-AGL: SPEC-729 Change-Id: Iee1f0df036a5708dfae169ac08ce281187f51f6f Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10147 Reviewed-by: Matt Ranostay <matt.ranostay@konsulko.com> Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-07af-main: Allow service to run by defaultJosé Bollo1-1/+1
The previous settings assumed that services were started by socket activation. This is not always the case. Change-Id: I9e8d6c7bdf961141964bb316e603018721a72054 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10101 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-07framework: update DAB for RC3José Bollo1-1/+1
This change includes - bug fixes - Fix bad error reporting (and of the not funny "Inappropriate ioctl for device") - Fix libmicrohttp version dependency - Fix start actions order - binding v2 improvements (SPEC-717) - reintroduce the field <info> when describing fields - enforce V2 binding writers to use AFB_ prefixed logging macros - make error status uniform even for call & subcall - debugging features (SPEC-729) - allow to export the http port in afm-unit.conf - enable setting of breakpoints/waitpoints when compiled with AGL_DEVEL Bug-AGL: SPEC-717 Bug-AGL: SPEC-729 Change-Id: If66e5524e6621107c7417f26439f90e7d47db89d Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10089 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-07af-main: make sockets.target accessible by groupJosé Bollo1-2/+2
Bug-AGL: SPEC-726 Change-Id: I8cb62fb6353e3985d1f7c9efc141bc35f4fa6d4b Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10087 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-07Framework: Leverage agl-devel and set PVJosé Bollo1-0/+3
It is time for the framework to include development specific features intended to be used when developing applications. This commit prepares such use. See: AGL-Bug: SPEC-594 It also changes the version PV to point the correct AGL distribution/branch and git commit. Change-Id: Ib6abbc3d83ee3eecb79b574f988b430221c45b33 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10085 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-07-06Executing /bin/bash explicitlyTadao Tanikawa1-1/+1
To resolve issue of SPEC-699, afm-install began to use PIPESTATUS[] to catch error from dbus-send. But the /bin/sh is still specified even though it is an unique function of Bash. Note: Because current AGL has Bash and /bin/sh is symbolic link to /bin/bash, it works with no error before this fix applied. Bug-AGL: SPEC-699 Change-Id: I730de85d593f6371210cf1424e7bc39ca9365f2f Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/10053 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-29afw: Fix error reportJosé Bollo1-1/+1
Also adds minor improvement in logging for the binder Change-Id: I34a56ed72fdedca3645c179e73978ff919860ecc Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9921 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-28af-main: moves reload of serviceJosé Bollo2-2/+2
Make the reload of services in the daemon and add an option to avoid the reload within system Change-Id: Iedd23ad1b3235a39e2a9b84771d0a9c78fbe4f2e Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9841 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-28af-main: report error status in afm-installJosé Bollo2-1/+2
The script afm-install wasn't able to report errors. This patch suggested by Tadao Tanikawa ensure that the status returned by dbus-send is reported to the caller and solves the issue. Bug-AGL: SPEC-699 Change-Id: Id9147794e534eeb9780ddfd4f4702becc87b2163 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9799 Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Matt Ranostay <matt.ranostay@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-24af-main: ensure socket activationJosé Bollo1-1/+1
When installing a widget, the sockets.target has to be restarted. This commit does it. AGL-Bug: SPEC-670 Change-Id: I7200749716c57778d165971a5abea27493ce0628 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9793 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-23af-main: Fix service and their socket activationJosé Bollo2-1/+3
The method to create shared services using websockets was buggy. This patch correct it. It creates the directories 'sockets.target.wants' were the socket activations units will be linked. It also makes correct reload and improves the used paths. Also fixes a masty infinite loop (spec-663). AGL-Bug: SPEC-670 AGL-Bug: SPEC-663 Change-Id: I39d93f669498354a1c2f96bd735c0318a2f0e93a Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9787 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Romain Forlot <romain.forlot@iot.bzh> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-14Framework: fix and upgradeStephane Desneux1-1/+1
App-framework-main: - Fix lack of error message on mustach issue - fix binding version to 1 - Fix service name within socket units App-framework-binder: - Removes reference to NULL in includes - Add comment for bindings v2 - Fix issue in using systemd socket activation - Moves tic-tac-toe sample to V2 - Refactor of the documentation Change-Id: I16361ef29634edc3cead0492caea1a49b4a61d3e Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9725 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Matt Ranostay <matt.ranostay@konsulko.com> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-06-08Framework: Fix and upgradeJosé Bollo1-1/+1
App-framework-main: - Deinstallation of units - Fix lack of message when setting exec bit App-framework-binder: - Binding V2 proposal finalized - Human readable option for afb-client-demo - Cleanup and improvement of API - Logging by request - Relax authorization for self - New hooking/tracing features (options --tracesvc and --traceevt) - Fix of many bugs AGL-Bug: SPEC-644 AGL-Bug: SPEC-645 Change-Id: Id980ebda486105044f9685ba50639a81766a7d72 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9609 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-05-16Run weston with dedicated 'display' user and groupRonan Le Martret1-10/+19
* Create a user/group display * Allow weston to start without mandatory root user * start weston-terminal for each user Bug-AGL: SPEC-546 Change-Id: Id50acdbf5f7c07d5e0440575d42998b8819b5547 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> Reviewed-on: https://gerrit.automotivelinux.org/gerrit/9135 Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org> Reviewed-by: Dominig ar Foll <dominig.arfoll@fridu.net> Reviewed-by: José Bollo <jobol@nonadev.net> Reviewed-by: Stéphane Desneux <stephane.desneux@iot.bzh> Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
2017-04-20af-main: Improve environment settingJosé Bollo3-16/+4
Some environment variable were set in the configuration files. This wasn't a valuable solution. Allowing now system tuning to put environment variables in files of /etc/afm/unit.env.d is much more flexible. This patch is introduced also to solve the folowing issue Bug-AGL: SPEC-547 Change-Id: I41183735b707a9d5d30805504c2676afe12c3b8d Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-04-04Handle systemd's "inactive" state as transientJosé Bollo1-1/+1
Inactive is returned sometimes but it means that the service is not started yet not that it failed to start. AGL-Issue: SPEC-520 Change-Id: I35bb6cf8e2c50fa46b23ce5d5817c4d139a42bf4 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2017-03-29Fix af-main buildRonan Le Martret1-5/+9
* remove bashism * do not install service for native build Change-Id: I53f9c06b3638f568058bfef3955230c63b935801 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh>
2017-03-27Move to AGL framework on top of systemdJosé Bollo6-60/+37
This new version of the framework leverages systemd features to launch its applications. Some of the advantages are: - possible use of systemd features (namespace, cgroups, autostart, dependency resolution, socket activation, ...) - more feature are let open to integrator's design Some of the drawbacks are: - not more possible to launch an other instance of an application already launched - pause/resume is no more available by the framework - the remote mode is to be redefined This commit integrates the first version of the framework on top of systemd. More work is to come. None of the current drawback is definitive. Bug-AGL: SPEC-138, SPEC-425, SPEC-426, SPEC-427 Change-Id: Idfb98761c0db23562bb783bed1b03aeb956fc587 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Upgrade application frameworkJosé Bollo1-1/+1
This is the last upgrade of the application framework before the switch to the systemd integrated application framework. Changes for AF-BINDER: ---------------------- - removal of legacy file include/afb/afb-plugin.h - removal of legacy call to readdir_r - allowing to repeat option --ldpaths - new options: --no-httpd, --exec, --random-token - reintegration of libmagic for content-types - fix crash on unhandled request - capable of socket activation by systemd Changes in AF-MAIN: ------------------- - handling of JSON-pointers in template unit - fix a bug in mustach evaluation - error message improvement - added afm-util commands: run-remote and start-remote - switch to cmake 3.4.3 - fix bug in file content helper - fix bug of labelling files that made issue when uninstalling Change-Id: Id18c5ff1edb2a7dee3813e996aed6300bcd97036 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27base-files for the frameworkJosé Bollo1-12/+0
This setting is introduced primarily to allow the recipe agl-users to run in a correct environment. Change-Id: Ib0bd7c8e6520bd87dbb26d9c011f5cb4672f44c7 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Removes systemd warningsJosé Bollo1-1/+1
Systemd was complaining that the service files were executable. This patch removes that issue. Change-Id: I77183bb142956fec84b3ca727f7084e8f652c292 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Fix the error of homescreen for QEMU x86-64Phong Tran1-0/+4
libEGL.so is not availabe in QEMU x86-64 env. This make the afm-user-daemon service is loaded failure. This make the homescreen fail to load. Remove LD_PRELOAD of libEGL.so for QEMU x86-64. Change-Id: Iba9a904cc7e4000861ec0e0d6f5c22f48428b954 Signed-off-by: Phong Tran <tranmanphong@gmail.com> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Update af-mainRonan Le Martret3-3/+3
* Fix wgtpkg-pack * Add json-c for native and nativesdk Change-Id: I9f2f6b55b729099a70e00f53c631e181d19cf1c9 Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Add afm-install used to install wgt at first bootRonan Le Martret2-0/+50
* afm-install can install wgt app like afm-util but use dbus "system" session instead of "user". #/usr/bin/afm-install install /usr/AGL/apps/$file.wgt Change-Id: Id7361350257347a8db32f539b3bdeb3f2d8f554c Signed-off-by: Ronan Le Martret <ronan.lemartret@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Authorize the requested permissionsJosé Bollo1-1/+1
Normally, the permissions of installed applications are subject to authorization and filtering. This patch removes that control and allows to set the requested permissions. It will allow to write correct config.xml and start using permissions and cynara. Related to SPEC-367. Change-Id: I92b366eaeaf0d452062752296848c04833bc87b1 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27af-main: remove --roothttp option from afm-launch.confStephane Desneux1-1/+1
For all application types except HTML5 (application/vnd.agl.html.hybrid), there's no need to specify a root http directory. Moreover, If such directory is not present in the packaging, launching the application will fail. Change-Id: Ib0b25f3d8bb9f63dde8610d96126639b846e245d Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Move all writable data used by security-manager and appfw to /varAnton Gerasimov4-7/+39
The purpose of these changes is to make OSTree and AppFw update domains compatible with each other. Some intergation code is also needed to deploy initial data to writable area (see SPEC-359 in Jira). Bug-AGL: SPEC-359 Change-Id: Iccba1e9916c569167df2922ad5e2d90cc33f06fe Signed-off-by: Anton Gerasimov <anton@advancedtelematic.com> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27af-main: fix exec flag and case sensitive idsJosé Bollo2-14/+1
The execute flags is now set for widgets of type application/vnd.agl.native. The ids of the applications are now enforced to lowercase for their storing and their smack label. Conversely, the id is no more case sensitive for launching or uninstalling widgets. Change-Id: I8857b10860acf464cc56939b4acc026319d65736 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27add native build for af-mainRonan1-0/+11
Change-Id: If9765fa5dbb5229a511b36cda83505cab75e7785 Signed-off-by: Ronan <ronan.lemartret@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27Improves places for QT_WAYLAND_SHELL_INTEGRATIONJosé Bollo2-2/+29
This define is currently needed by all applications launched by the framework. This commits allows that. Change-Id: Ia56268c1bca58f2da7c0152fa735751603d799bc Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27appfwk: improvementsJosé Bollo1-1/+1
This commit adds the following improvements to the application framework: - "once" method to launch applications at most one time - minor warning fixes when compiling - allowing % substitution in environment variables - export of the variable AFM_APP_INSTALL_DIR - set the execute flag on installed binaries Change-Id: I729d3b882089473c627e166c35bd0d96e70c9c53 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27meta-app-framework: fix unpackaged files in nativesdk-af-mainStephane Desneux1-0/+5
Recent changes in af-main now generate .pc (pkgconfig) files. These files shouldn't be packaged for nativesdk-af-main: they are just removed at the end of the install task to avoid the 'unpackaged files' error. Change-Id: I61364c430c0272e8e8a398e1e5640c856c668c1b Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27af-main: updateJosé Bollo1-1/+1
Include features for HomeScreen: - returns pids - renamed verbs: stop -> pause & continue -> resume - dbus manifests Change-Id: I24ea59f376f57182c7060aca1c96539866cdcaba Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27FWK: Adaptations for jethroJosé Bollo2-5/+17
Since introduction of ambient capabilities, systemd deprecated the use of Capabilities. With systemd 229 activated with krogoth, the use of Capabilities does nothing. This commits avoids to use SecureBits and Capabilities. It now relies on the fact that post installations are setting the capabilities to the file: - setcap cap_mac_override,cap_dac_override=ep afm-system-daemon - setcap cap_mac_override,cap_mac_admin,cap_setgid=ep afm-user-daemon Using p (permitted) instead of i (inherited) that was previously used. It also includes evolutions of the security model to be synchronized with the deletion of 'User'. The recommended version to use now is the commit 20bbb97f6d5400b126ae96ef446c3e60c7e16285. Change-Id: Id24ce7c7651e2fdf8d66b6e8286268e7d88508a0 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27app-framework: ImprovementsJosé Bollo1-1/+1
Within app-framework-binder: - fixes read and write lock (EAGAIN) - fixes SIGPIPE handling - improves the documentation Within app-framework-main: - improves documentation (for config.xml) - fixes setting of permissions Signed-off-by: José Bollo <jose.bollo@iot.bzh> Change-Id: If860d00204f82ee85ed1fd4ca9ac9820b844085f Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27app-framework: improvementsJosé Bollo1-1/+1
- Adds the handling of a root for HTTP files with the option --roothttp - Improves API for openning localized data - Adds the handling of language Change-Id: Ia0c6e840265595b6e0415e8ea7a9e6585d8bb88d Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
2017-03-27app-framework: fix minor bugsJosé Bollo1-1/+1
- fix event propagation to services - fix memory leaks Change-Id: I73432fd9f4a144d2790a7a67d471045048b5e537 Signed-off-by: José Bollo <jose.bollo@iot.bzh> Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>