summaryrefslogtreecommitdiffstats
path: root/meta-app-framework/recipes-core
diff options
context:
space:
mode:
Diffstat (limited to 'meta-app-framework/recipes-core')
-rw-r--r--meta-app-framework/recipes-core/af-binder/af-binder-devtools-native_git.bb8
-rw-r--r--meta-app-framework/recipes-core/af-binder/af-binder_git.bb117
-rw-r--r--meta-app-framework/recipes-core/af-binder/af-binder_git.inc22
-rw-r--r--meta-app-framework/recipes-core/af-binder/nativesdk-af-binder-devtools_git.bb8
-rw-r--r--meta-app-framework/recipes-core/af-main/af-main_git.bb122
-rw-r--r--meta-app-framework/recipes-core/af-main/af-main_git.inc30
-rw-r--r--meta-app-framework/recipes-core/af-main/nativesdk-af-main_git.bb28
-rw-r--r--meta-app-framework/recipes-core/af-platform-setup/af-platform-setup_1.0.bb16
-rw-r--r--meta-app-framework/recipes-core/af-platform-setup/files/udev-shared.conf4
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service12
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-web@.service11
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app@.service8
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd/applaunchd.service13
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd/no-network.conf2
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd/private-tmp.conf2
-rw-r--r--meta-app-framework/recipes-core/applaunchd/applaunchd_git.bb78
-rw-r--r--meta-app-framework/recipes-core/base-files/base-files_%.bbappend32
-rw-r--r--meta-app-framework/recipes-core/nss-localuser/nss-localuser_0.1.bb39
-rw-r--r--meta-app-framework/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend2
-rw-r--r--meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework-examples.bb14
-rw-r--r--meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework.bb20
-rw-r--r--meta-app-framework/recipes-core/security-manager/security-manager/0001-Adapt-rules-to-AGL.patch50
-rw-r--r--meta-app-framework/recipes-core/security-manager/security-manager_%.bbappend7
-rw-r--r--meta-app-framework/recipes-core/shadow/shadow_%.bbappend6
-rw-r--r--meta-app-framework/recipes-core/systemd-sync/systemd-agl-sync_1.0.bb39
25 files changed, 126 insertions, 564 deletions
diff --git a/meta-app-framework/recipes-core/af-binder/af-binder-devtools-native_git.bb b/meta-app-framework/recipes-core/af-binder/af-binder-devtools-native_git.bb
deleted file mode 100644
index 70dafb38c..000000000
--- a/meta-app-framework/recipes-core/af-binder/af-binder-devtools-native_git.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require af-binder_${PV}.inc
-
-DEPENDS = "json-c-native"
-
-inherit cmake pkgconfig native
-
-EXTRA_OECMAKE_append = " -DONLY_DEVTOOLS=TRUE"
-
diff --git a/meta-app-framework/recipes-core/af-binder/af-binder_git.bb b/meta-app-framework/recipes-core/af-binder/af-binder_git.bb
deleted file mode 100644
index cf20e25a1..000000000
--- a/meta-app-framework/recipes-core/af-binder/af-binder_git.bb
+++ /dev/null
@@ -1,117 +0,0 @@
-require af-binder_${PV}.inc
-
-DEPENDS = "file json-c libmicrohttpd systemd util-linux openssl cynara"
-
-inherit cmake pkgconfig
-
-EXTRA_OECMAKE_append_class-target = "\
- -DUNITDIR_SYSTEM=${systemd_system_unitdir} \
-"
-
-EXTRA_OECMAKE_append_agl-devel = " \
- -DAGL_DEVEL=ON \
- -DINCLUDE_MONITORING=ON \
- -DINCLUDE_SUPERVISOR=ON -DAFS_SUPERVISION_SOCKET=/run/platform/supervisor \
-"
-
-pkg_postinst_${PN}() {
- mkdir -p "$D${libdir}/afb"
-}
-
-do_install_append_agl-devel_class-target() {
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d -m 0755 ${D}${systemd_system_unitdir}/multi-user.target.wants
- ln -s ../afm-api-supervisor.service ${D}${systemd_system_unitdir}/multi-user.target.wants/afm-api-supervisor.service
- fi
-}
-
-#############################################
-# main package
-#############################################
-
-FILES_${PN}_append_agl-devel = " ${libdir}/afb/monitoring ${systemd_system_unitdir}"
-
-RDEPENDS_${PN}-dev += "libafbwsc-dev"
-
-#############################################
-# intrinsic binding packages
-#############################################
-PACKAGES =+ "${PN}-intrinsic-bindings"
-ALLOW_EMPTY_${PN}-intrinsic-bindings = "1"
-
-PACKAGES_DYNAMIC = "${PN}-binding-*"
-
-python populate_packages_prepend () {
- afb_libdir = d.expand('${libdir}/afb')
- postinst = d.getVar('binding_postinst', True)
- pkgs = []
-
- pkgs += do_split_packages(d, afb_libdir, '(.*)-api\.so$', d.expand('${PN}-binding-%s'), 'AFB binding for %s', postinst=postinst, extra_depends=d.expand('${PN}'))
- pkgs += do_split_packages(d, afb_libdir, '(.*(?!-api))\.so$', d.expand('${PN}-binding-%s'), 'AFB binding for %s', postinst=postinst, extra_depends=d.expand('${PN}'))
-
- d.setVar('RDEPENDS_' + d.getVar('PN', True) + '-intrinsic-bindings', ' '.join(pkgs))
-}
-
-#############################################
-# tool package
-#############################################
-PACKAGES =+ "${PN}-tools"
-
-FILES_${PN}-tools = "\
- ${bindir}/afb-client-demo \
-"
-
-#############################################
-# setup libafbwsc package
-#############################################
-PACKAGES =+ "libafbwsc libafbwsc-dev"
-
-FILES_libafbwsc = "\
- ${libdir}/libafbwsc.so.* \
-"
-FILES_libafbwsc-dev = "\
- ${includedir}/afb/afb-wsj1.h \
- ${includedir}/afb/afb-ws-client.h \
- ${libdir}/libafbwsc.so \
- ${libdir}/pkgconfig/libafbwsc.pc \
-"
-
-#############################################
-# devtool package
-#############################################
-PACKAGES =+ "${PN}-devtools"
-
-FILES_${PN}-devtools = "\
- ${bindir}/afb-exprefs \
- ${bindir}/afb-json2c \
- ${bindir}/afb-genskel \
-"
-
-#############################################
-# supervisor package
-#############################################
-PACKAGES_append_agl-devel = " ${PN}-supervisor "
-
-FILES_${PN}-supervisor_agl-devel = "\
- ${bindir}/afs-supervisor \
- ${systemd_system_unitdir} \
-"
-
-#############################################
-# setup sample packages
-#############################################
-PACKAGES =+ "${PN}-samples"
-
-FILES_${PN}-samples = "\
- ${datadir}/af-binder \
-"
-
-#############################################
-# meta package
-#############################################
-PACKAGES =+ "${PN}-meta"
-ALLOW_EMPTY_${PN}-meta = "1"
-
-RDEPENDS_${PN}-meta += "${PN} ${PN}-tools libafbwsc ${PN}-intrinsic-bindings"
-RDEPENDS_${PN}-meta_append_agl-devel = " ${PN}-supervisor "
-
diff --git a/meta-app-framework/recipes-core/af-binder/af-binder_git.inc b/meta-app-framework/recipes-core/af-binder/af-binder_git.inc
deleted file mode 100644
index fbaa47bc7..000000000
--- a/meta-app-framework/recipes-core/af-binder/af-binder_git.inc
+++ /dev/null
@@ -1,22 +0,0 @@
-SUMMARY = "HTTP REST interface to automotive backends for HTML5 UI support"
-DESCRIPTION = "Automotive-Framework-Binder Daemon provides a HTTP REST \
-interface to various automotive-oriented bindings, \
-allowing HTML5 UIs to send platform-specific requests in a secure way."
-
-HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/app-framework-binder"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
-
-SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/app-framework-binder;protocol=https;branch=${AGL_BRANCH}"
-
-SRCREV = "1b6249810b3ab2d0c7467355fa22fbf19ae4a725"
-PV = "${AGL_BRANCH}+git${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-CFLAGS_append_agl-devel = " -DAGL_DEVEL"
-
-EXTRA_OECMAKE_append = "\
- -DAGLVERSION=${AGLVERSION} \
-"
-
diff --git a/meta-app-framework/recipes-core/af-binder/nativesdk-af-binder-devtools_git.bb b/meta-app-framework/recipes-core/af-binder/nativesdk-af-binder-devtools_git.bb
deleted file mode 100644
index 3223dd05d..000000000
--- a/meta-app-framework/recipes-core/af-binder/nativesdk-af-binder-devtools_git.bb
+++ /dev/null
@@ -1,8 +0,0 @@
-require af-binder_${PV}.inc
-
-DEPENDS = "nativesdk-json-c"
-
-inherit cmake pkgconfig nativesdk
-
-EXTRA_OECMAKE_append = " -DONLY_DEVTOOLS=TRUE"
-
diff --git a/meta-app-framework/recipes-core/af-main/af-main_git.bb b/meta-app-framework/recipes-core/af-main/af-main_git.bb
deleted file mode 100644
index 917eaa414..000000000
--- a/meta-app-framework/recipes-core/af-main/af-main_git.bb
+++ /dev/null
@@ -1,122 +0,0 @@
-require af-main_${PV}.inc
-
-# NOTE: using libcap-native and setcap in install doesn't work
-# NOTE: maybe setting afm_name to agl-framework is cleaner but has implications
-# NOTE: there is a hack of security for using groups and dbus (to be checked)
-# NOTE: using ZIP programs creates directories with mode 777 (very bad)
-
-inherit cmake pkgconfig useradd systemd
-BBCLASSEXTEND = "native"
-
-SECTION = "base"
-
-DEPENDS = "openssl libxml2 xmlsec1 systemd libzip json-c systemd security-manager af-binder sed m4"
-DEPENDS_class-native = "openssl libxml2 xmlsec1 libzip json-c"
-RDEPENDS_${PN}_class-target += "af-binder-tools nss-localuser cynagoauth"
-
-PACKAGE_WRITE_DEPS_append_with-lsm-smack = " smack-native libcap-native"
-
-EXTRA_OECMAKE_append_class-native = "\
- -DUSE_LIBZIP=1 \
- -DUSE_SIMULATION=1 \
- -DUSE_SDK=1 \
- -DAGLVERSION=${AGLVERSION} \
- -Dafm_name=${afm_name} \
- -Dafm_confdir=${afm_confdir} \
- -Dafm_datadir=${afm_datadir} \
-"
-
-EXTRA_OECMAKE_append_class-target = "\
- -DUSE_LIBZIP=1 \
- -DUSE_SIMULATION=0 \
- -DUSE_SDK=0 \
- -DAGLVERSION=${AGLVERSION} \
- -Dafm_name=${afm_name} \
- -Dafm_confdir=${afm_confdir} \
- -Dafm_datadir=${afm_datadir} \
- -Dsystemd_units_root=${systemd_units_root} \
- -DUNITDIR_USER=${systemd_user_unitdir} \
- -DUNITDIR_SYSTEM=${systemd_system_unitdir} \
-"
-
-# ------------------------ WARNING WARNING WARNNING ---------------------------
-#
-# ATM (FF.rc2), forcing all apps to be signed is an issue when building without
-# agl-devel feature. A workaround is to define ALLOW_NO_SIGNATURE=ON for all
-# builds but this must be removed later. See SPEC-1614 for more details.
-#
-# A variable AGL_FORBID_UNSIGNED_APPS is introduced to enable/disable this
-# workaround in local.conf and allow transition to signed apps:
-# * forbid unsigned apps by setting: AGL_FORBID_UNSIGNED_APPS="1"
-# * [DEFAULT] allow unsigned apps: do nothing (or set: AGL_FORBID_UNSIGNED_APPS="0")
-AGL_FORBID_UNSIGNED_APPS ?= "0"
-#
-# WORKAROUND:
-EXTRA_OECMAKE_append_agl-devel = " -DAGL_DEVEL=1"
-EXTRA_OECMAKE_append = " ${@bb.utils.contains('AGL_FORBID_UNSIGNED_APPS','1','','-DALLOW_NO_SIGNATURE=ON', d)}"
-#
-# Correct version (IMPORTANT TODO: to be restored later):
-#EXTRA_OECMAKE_append_agl-devel = " -DAGL_DEVEL=1 -DALLOW_NO_SIGNATURE=ON"
-#
-# ------------------------ WARNING WARNING WARNNING ---------------------------
-
-
-USERADD_PACKAGES = "${PN}"
-USERADD_PARAM_${PN} = "--system --gid ${afm_name} --home-dir ${afm_datadir} ${afm_name}"
-GROUPADD_PARAM_${PN} = "--system ${afm_name}"
-
-RDEPENDS_${PN}_append_with-lsm-smack = " smack bash"
-DEPENDS_append_with-lsm-smack = " smack-native"
-
-do_install_append_class-target() {
- install -d ${D}${bindir}
- install -d -m 0775 ${D}${systemd_units_root}/system
- install -d -m 0775 "${D}${systemd_units_root}/system/multi-user.target.wants"
- install -d -m 0775 "${D}${systemd_units_root}/system/afm-user-session@.target.wants"
- install -d -m 0775 ${D}${systemd_units_root}/user
- install -d -m 0775 ${D}${systemd_units_root}/user/default.target.wants
- install -d -m 0775 ${D}${systemd_units_root}/user/sockets.target.wants
- install -d ${D}${afm_datadir}/applications
- install -d ${D}${afm_datadir}/icons
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- install -d -m 0755 ${D}${systemd_system_unitdir}/multi-user.target.wants
- install -d -m 0755 ${D}${systemd_system_unitdir}/sockets.target.wants
- ln -sf ../afm-system-setup.service ${D}${systemd_system_unitdir}/multi-user.target.wants/afm-system-setup.service
- ln -sf ../afm-system-daemon.service ${D}${systemd_system_unitdir}/multi-user.target.wants/afm-system-daemon.service
- ln -sf ../afm-system-daemon.socket ${D}${systemd_system_unitdir}/sockets.target.wants/afm-system-daemon.socket
- fi
-}
-
-pkg_postinst_ontarget_${PN}() {
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- chgrp ${afm_name} $D${systemd_units_root}/system
- chgrp ${afm_name} $D${systemd_units_root}/system/afm-user-session@.target.wants
- chgrp ${afm_name} $D${systemd_units_root}/user/default.target.wants
- chgrp ${afm_name} $D${systemd_units_root}/user/sockets.target.wants
- fi
- chown ${afm_name}:${afm_name} $D${afm_datadir}
- chown ${afm_name}:${afm_name} $D${afm_datadir}/applications
- chown ${afm_name}:${afm_name} $D${afm_datadir}/icons
-}
-
-pkg_postinst_ontarget_${PN}_append_with-lsm-smack() {
- if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
- chsmack -a 'System::Shared' -t $D${systemd_units_root}/system
- chsmack -a 'System::Shared' -t $D${systemd_units_root}/system/afm-user-session@.target.wants
- chsmack -a 'System::Shared' -t $D${systemd_units_root}/user/default.target.wants
- chsmack -a 'System::Shared' -t $D${systemd_units_root}/user/sockets.target.wants
- fi
- chsmack -a 'System::Shared' -t $D${afm_datadir}
- chsmack -a 'System::Shared' -t $D${afm_datadir}/applications
- chsmack -a 'System::Shared' -t $D${afm_datadir}/icons
-}
-FILES_${PN} += "${systemd_units_root}/* ${systemd_system_unitdir} ${systemd_user_unitdir}"
-FILES_${PN}_append_agl-sign-wgts = " ${datadir}/afm"
-
-PACKAGES =+ "${PN}-binding ${PN}-binding-dbg"
-FILES_${PN}-binding = " ${afb_binding_dir}/afm-main-binding.so "
-FILES_${PN}-binding-dbg = " ${afb_binding_dir}/.debug/afm-main-binding.so "
-
-PACKAGES =+ "${PN}-tools ${PN}-tools-dbg"
-FILES_${PN}-tools = "${bindir}/wgtpkg-*"
-FILES_${PN}-tools-dbg = "${bindir}/.debug/wgtpkg-*"
diff --git a/meta-app-framework/recipes-core/af-main/af-main_git.inc b/meta-app-framework/recipes-core/af-main/af-main_git.inc
deleted file mode 100644
index 7eb94b23c..000000000
--- a/meta-app-framework/recipes-core/af-main/af-main_git.inc
+++ /dev/null
@@ -1,30 +0,0 @@
-SUMMARY = "AGL Framework Main part"
-DESCRIPTION = "\
-This is a core framework component for managing \
-applications, widgets, and components. \
-"
-
-HOMEPAGE = "https://gerrit.automotivelinux.org/gerrit/#/admin/projects/src/app-framework-main"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
-
-SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/app-framework-main;protocol=https;branch=${AGL_BRANCH}"
-
-SRCREV = "af8db35cc01c57b7d1d2e4fa7815df8c16f8454f"
-PV = "${AGL_BRANCH}+git${SRCPV}"
-
-S = "${WORKDIR}/git"
-
-afm_name = "afm"
-afm_confdir = "${sysconfdir}/${afm_name}"
-afm_datadir = "/var/local/lib/${afm_name}"
-afb_binding_dir = "${libdir}/afb"
-systemd_units_root = "/var/local/lib/systemd"
-
-CFLAGS_append_agl-devel = " -DAGL_DEVEL"
-# only install sample keys in agl-devel mode
-# for production you need to deploy real keys
-EXTRA_OECMAKE_append_agl-sign-wgts = " ${@bb.utils.contains('DISTRO_FEATURES', 'agl-devel', '-DINSTALL_SAMPLE_KEYS=ON', '-DINSTALL_SAMPLE_KEYS=OFF', d)}"
-
-
-
diff --git a/meta-app-framework/recipes-core/af-main/nativesdk-af-main_git.bb b/meta-app-framework/recipes-core/af-main/nativesdk-af-main_git.bb
deleted file mode 100644
index 88ab4ae68..000000000
--- a/meta-app-framework/recipes-core/af-main/nativesdk-af-main_git.bb
+++ /dev/null
@@ -1,28 +0,0 @@
-require af-main_${PV}.inc
-
-inherit nativesdk cmake pkgconfig
-
-SECTION = "base"
-
-DEPENDS = "nativesdk-openssl nativesdk-libxml2 nativesdk-xmlsec1 nativesdk-libzip nativesdk-json-c"
-
-EXTRA_OECMAKE = "\
- -DUSE_LIBZIP=1 \
- -DUSE_SIMULATION=1 \
- -DUSE_SDK=1 \
- -DAGLVERSION=${AGLVERSION} \
- -Dafm_name=${afm_name} \
- -Dafm_confdir=${afm_confdir} \
- -Dafm_datadir=${afm_datadir} \
-"
-
-do_install_append() {
- # remove unused .pc file we don't want to package
- rm -rf ${D}/${libdir}
-}
-
-PACKAGES = "${PN}-tools ${PN}-tools-dbg"
-FILES_${PN}-tools = "${bindir}/wgtpkg-* ${afm_confdir}/*"
-FILES_${PN}-tools_append_agl-sign-wgts = " ${datadir}/afm"
-FILES_${PN}-tools-dbg = "${bindir}/.debug/wgtpkg-*"
-
diff --git a/meta-app-framework/recipes-core/af-platform-setup/af-platform-setup_1.0.bb b/meta-app-framework/recipes-core/af-platform-setup/af-platform-setup_1.0.bb
deleted file mode 100644
index eb473cd14..000000000
--- a/meta-app-framework/recipes-core/af-platform-setup/af-platform-setup_1.0.bb
+++ /dev/null
@@ -1,16 +0,0 @@
-HOMEPAGE = "here"
-
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-
-SRC_URI = "file://udev-shared.conf"
-
-S = "${WORKDIR}"
-
-do_install() {
- d=${D}${systemd_system_unitdir}/systemd-udevd.service.d
- install -d $d
- install -m 0644 ${S}/udev-shared.conf $d
-}
-
-FILES_${PN} = "${systemd_system_unitdir}"
diff --git a/meta-app-framework/recipes-core/af-platform-setup/files/udev-shared.conf b/meta-app-framework/recipes-core/af-platform-setup/files/udev-shared.conf
deleted file mode 100644
index cce02bc58..000000000
--- a/meta-app-framework/recipes-core/af-platform-setup/files/udev-shared.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-[Service]
-ExecStartPre=/bin/mkdir -p /run/udev
-ExecStartPre=/usr/bin/chsmack -r -a System::Shared -t /run/udev
-
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service
new file mode 100644
index 000000000..a9a2527e0
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-flutter@.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=%I
+
+[Service]
+Type=simple
+User=agl-driver
+Environment=FLUTTER_VERSION=3.3.7
+Environment=FLUTTER_RUNTIME=release
+EnvironmentFile=-/etc/default/flutter
+EnvironmentFile=-/etc/default/%I
+Environment=XDG_RUNTIME_DIR=/run/user/1001/
+ExecStart=/usr/bin/flutter-auto --b=/usr/share/flutter/%I/${FLUTTER_VERSION}/${FLUTTER_RUNTIME} --xdg-shell-app-id=%I
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-web@.service b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-web@.service
new file mode 100644
index 000000000..e0353b6ae
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app-web@.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=%I
+
+[Service]
+Type=simple
+User=agl-driver
+EnvironmentFile=-/etc/default/WebAppMgr.env
+Environment=XDG_RUNTIME_DIR=/run/user/1001/
+Environment=AGL_APP_WAM_DIR=%I
+ExecStart=/usr/bin/WebAppMgrCli --appid=%I --app-install-dir=/usr/lib/wam_apps/${AGL_APP_WAM_DIR}/
+
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app@.service b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app@.service
new file mode 100644
index 000000000..234348846
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/agl-app@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=%I
+
+[Service]
+Type=simple
+User=agl-driver
+Environment=XDG_RUNTIME_DIR=/run/user/1001/
+ExecStart=%i
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/applaunchd.service b/meta-app-framework/recipes-core/applaunchd/applaunchd/applaunchd.service
new file mode 100644
index 000000000..73d36bd0c
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/applaunchd.service
@@ -0,0 +1,13 @@
+[Unit]
+Wants=network.target polkit.service
+After=network.target polkit.service
+
+[Service]
+Type=notify
+User=applaunchd
+Environment=XDG_DATA_DIRS=/usr/share
+ExecStart=/usr/bin/applaunchd
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/no-network.conf b/meta-app-framework/recipes-core/applaunchd/applaunchd/no-network.conf
new file mode 100644
index 000000000..c7c4f8a31
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/no-network.conf
@@ -0,0 +1,2 @@
+[Service]
+PrivateNetwork=true
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd/private-tmp.conf b/meta-app-framework/recipes-core/applaunchd/applaunchd/private-tmp.conf
new file mode 100644
index 000000000..0bdba7c99
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd/private-tmp.conf
@@ -0,0 +1,2 @@
+[Service]
+PrivateTmp=yes
diff --git a/meta-app-framework/recipes-core/applaunchd/applaunchd_git.bb b/meta-app-framework/recipes-core/applaunchd/applaunchd_git.bb
new file mode 100644
index 000000000..c1bafad8e
--- /dev/null
+++ b/meta-app-framework/recipes-core/applaunchd/applaunchd_git.bb
@@ -0,0 +1,78 @@
+SUMMARY = "AGL Application Launcher service"
+DESCRIPTION = "AGL Application Launcher service build with recipe method"
+HOMEPAGE = "https://git.automotivelinux.org/src/applaunchd"
+SECTION = "apps"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=ae6497158920d9524cf208c09cc4c984"
+
+DEPENDS = " \
+ glib-2.0 \
+ glib-2.0-native \
+ protobuf-native \
+ grpc-native \
+ grpc \
+ systemd \
+"
+
+PV = "2.0+git${SRCPV}"
+
+SRC_URI = " \
+ git://gerrit.automotivelinux.org/gerrit/src/applaunchd;protocol=https;branch=${AGL_BRANCH} \
+ file://applaunchd.service \
+ file://agl-app@.service \
+ file://agl-app-web@.service \
+ file://agl-app-flutter@.service \
+ file://no-network.conf \
+ file://private-tmp.conf \
+"
+SRCREV = "c32fe42f40d0af8b31b6113a3140f52b83be7769"
+
+S = "${WORKDIR}/git"
+
+inherit meson pkgconfig systemd useradd features_check
+
+REQUIRED_DISTRO_FEATURES = "systemd polkit"
+
+USERADD_PACKAGES = "${PN}"
+USERADDEXTENSION = "useradd-staticids"
+GROUPADD_PARAM:${PN} = "-g 1003 applaunchd ; "
+USERADD_PARAM:${PN} = "\
+ -g 1003 -u 1003 -o -d / -K PASS_MAX_DAYS=-1 applaunchd ; \
+"
+
+SYSTEMD_SERVICE:${PN} = "applaunchd.service"
+
+do_install:append() {
+ # Install generic template for all agl-app services
+ install -d ${D}${systemd_system_unitdir}
+ install -m 644 ${WORKDIR}/applaunchd.service ${D}${systemd_system_unitdir}/
+ install -m 644 ${WORKDIR}/agl-app@.service ${D}${systemd_system_unitdir}/
+ install -m 644 ${WORKDIR}/agl-app-web@.service ${D}${systemd_system_unitdir}/
+ install -m 644 ${WORKDIR}/agl-app-flutter@.service ${D}${systemd_system_unitdir}/
+
+ # Install individual sandboxing overrides/drop-ins to be used by apps
+ install -d ${D}${systemd_system_unitdir}/sandboxing
+ install -m 644 ${WORKDIR}/no-network.conf ${D}${systemd_system_unitdir}/sandboxing/
+ install -m 644 ${WORKDIR}/private-tmp.conf ${D}${systemd_system_unitdir}/sandboxing/
+}
+
+PACKAGE_BEFORE_PN += "${PN}-template-agl-app ${PN}-template-agl-app-web ${PN}-template-agl-app-flutter"
+
+FILES:${PN} += "${systemd_system_unitdir}"
+
+FILES:${PN}-template-agl-app = "${systemd_system_unitdir}/agl-app@.service"
+
+FILES:${PN}-template-agl-app-web = "${systemd_system_unitdir}/agl-app-web@.service"
+
+FILES:${PN}-template-agl-app-flutter = "${systemd_system_unitdir}/agl-app-flutter@.service"
+
+RDEPENDS:${PN} += " \
+ agl-users \
+ polkit-rule-agl-app \
+"
+
+RDEPENDS:${PN}-template-agl-app = "${PN}"
+
+RDEPENDS:${PN}-template-agl-app-web = "${PN}"
+
+RDEPENDS:${PN}-template-agl-app-flutter = "${PN}"
diff --git a/meta-app-framework/recipes-core/base-files/base-files_%.bbappend b/meta-app-framework/recipes-core/base-files/base-files_%.bbappend
deleted file mode 100644
index 1dddcd6f2..000000000
--- a/meta-app-framework/recipes-core/base-files/base-files_%.bbappend
+++ /dev/null
@@ -1,32 +0,0 @@
-RDEPENDS_${PN}_append_with-lsm-smack = " smack"
-PACKAGE_WRITE_DEPS_append_with-lsm-smack = " smack-native"
-
-do_install_append() {
- install -m 0700 -d ${D}/${sysconfdir}/skel
- chmod -R 0700 ${D}/${sysconfdir}/skel
- install -m 0700 -d ${D}/${sysconfdir}/skel/app-data
- install -m 0700 -d ${D}/${sysconfdir}/skel/.config
- install -m 0755 -d ${D}/var
- if [ -d ${D}/usr/local ]; then
- mv ${D}/usr/local ${D}/var
- else
- install -m 0755 -d ${D}/var/local
- fi
- ln -s ../var/local ${D}/usr/local
-}
-
-do_install_append_with-lsm-smack () {
- install -d ${D}/${sysconfdir}/smack/accesses.d
- cat > ${D}/${sysconfdir}/smack/accesses.d/default-access-domains-no-user <<EOF
-System User::App-Shared rwxat
-System User::Home rwxat
-EOF
- chmod 0644 ${D}/${sysconfdir}/smack/accesses.d/default-access-domains-no-user
-}
-
-pkg_postinst_${PN}_append_with-lsm-smack() {
- chsmack -r -a 'User::Home' -t -D $D/${sysconfdir}/skel
- chsmack -a 'User::App-Shared' -D $D/${sysconfdir}/skel/app-data
- cp -rTf --preserve=all $D/${sysconfdir}/skel $D/${ROOT_HOME}
-}
-
diff --git a/meta-app-framework/recipes-core/nss-localuser/nss-localuser_0.1.bb b/meta-app-framework/recipes-core/nss-localuser/nss-localuser_0.1.bb
deleted file mode 100644
index 45861f7cc..000000000
--- a/meta-app-framework/recipes-core/nss-localuser/nss-localuser_0.1.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Name Service Switch module for resolving the local user hostname"
-
-DESCRIPTION = "plugin for the GNU Name Service Switch (NSS) \
-functionality of the GNU C Library (`glibc`) providing host name \
-resolution for *"localuser"* family of virtual hostnames."
-
-HOMEPAGE = "https://git.automotivelinux.org/src/nss-localuser/"
-
-LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=79ad77111c398994735201536a4749ba"
-
-SRC_URI = "git://gerrit.automotivelinux.org/gerrit/src/nss-localuser;protocol=https;branch=${AGL_BRANCH}"
-SRCREV = "66803c6fdb609ed83a78b9194ecb23e9c1b773e7"
-PV = "${AGL_BRANCH}+git${SRCPV}"
-
-RDEPENDS_${PN} = "base-files"
-
-S = "${WORKDIR}/git"
-
-do_compile() {
- make
-}
-
-do_install() {
- make nssdir=${D}${libdir} install
-}
-
-pkg_postinst_ontarget_${PN} () {
- sed -e '/^hosts:/s/\<localuser\>\s*//' \
- -e 's/\(^hosts:\s\s*\)\(.*\)/\1localuser \2/' \
- -i $D${sysconfdir}/nsswitch.conf
-}
-
-pkg_prerm_${PN} () {
- sed -e '/^hosts:/s/\<localuser\>\s*//' \
- -i $D${sysconfdir}/nsswitch.conf
-}
-
-INSANE_SKIP_${PN} = "ldflags"
diff --git a/meta-app-framework/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend b/meta-app-framework/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
deleted file mode 100644
index fc73e8f3d..000000000
--- a/meta-app-framework/recipes-core/packagegroups/nativesdk-packagegroup-sdk-host.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
-RDEPENDS_${PN} =+ "nativesdk-af-main-tools nativesdk-af-binder-devtools"
-
diff --git a/meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework-examples.bb b/meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework-examples.bb
deleted file mode 100644
index 7ba909162..000000000
--- a/meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework-examples.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "AGL Application Framework examples"
-DESCRIPTION = "The set of examples associated to the AGL Application Framework"
-LICENSE = "MIT"
-
-inherit packagegroup
-
-PACKAGES = "\
- packagegroup-agl-app-framework-examples \
- "
-
-ALLOW_EMPTY_${PN} = "1"
-
-RDEPENDS_${PN} += "\
- "
diff --git a/meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework.bb b/meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework.bb
deleted file mode 100644
index 854835d4c..000000000
--- a/meta-app-framework/recipes-core/packagegroups/packagegroup-agl-app-framework.bb
+++ /dev/null
@@ -1,20 +0,0 @@
-SUMMARY = "AGL Application Framework core packages"
-DESCRIPTION = "The set of packages required by the AGL Application Framework"
-LICENSE = "MIT"
-
-inherit packagegroup
-
-PACKAGES = "\
- packagegroup-agl-app-framework \
- "
-
-ALLOW_EMPTY_${PN} = "1"
-
-RDEPENDS_${PN} += "\
- af-binder \
- libafbwsc \
- af-main \
- nss-localuser \
- systemd-agl-sync \
- af-platform-setup \
- "
diff --git a/meta-app-framework/recipes-core/security-manager/security-manager/0001-Adapt-rules-to-AGL.patch b/meta-app-framework/recipes-core/security-manager/security-manager/0001-Adapt-rules-to-AGL.patch
deleted file mode 100644
index 4c91f7fa3..000000000
--- a/meta-app-framework/recipes-core/security-manager/security-manager/0001-Adapt-rules-to-AGL.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 935e4e4e746b5ffcda80c80097dc75c2581c1a89 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Jos=C3=A9=20Bollo?= <jose.bollo@iot.bzh>
-Date: Wed, 19 Oct 2016 13:45:54 +0200
-Subject: [PATCH] Adapt rules to AGL
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-AGL distribution uses the repository https://github.com/01org/meta-intel-iot-security.git
-as basis for the integration of security framework. The security framework
-that it provides is an evolution of the security framework of tizen refited
-to the distribution Ostro of Intel. This refit took the decision to simplify
-the model by removing the running label "User". More can be viewed here:
-https://github.com/01org/meta-intel-iot-security/pull/116
-
-This commits adapt the template to the rules that are now needed
-after this evolution.
-
-It also integrates one other evolutions: the shared label becomes User::App-Shared instead
-of User::App::Shared to avoid collision with application of id "Shared".
-
-Change-Id: Ieb566b63f8c8e691b5f75e06499a3b576d042546
-Signed-off-by: José Bollo <jose.bollo@iot.bzh>
----
- policy/app-rules-template.smack | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/policy/app-rules-template.smack b/policy/app-rules-template.smack
-index 1311169..b4cd2e3 100644
---- a/policy/app-rules-template.smack
-+++ b/policy/app-rules-template.smack
-@@ -1,12 +1,10 @@
--System ~APP~ rwx
-+System ~APP~ rwxa
-+System ~PKG~ rwxat
- ~APP~ System wx
- ~APP~ System::Shared rx
- ~APP~ System::Run rwxat
- ~APP~ System::Log rwxa
- ~APP~ _ l
--User ~APP~ rwxa
--User ~PKG~ rwxat
--~APP~ User wx
- ~APP~ User::Home rxl
--~APP~ User::App::Shared rwxat
-+~APP~ User::App-Shared rwxat
- ~APP~ ~PKG~ rwxat
---
-2.7.4
-
diff --git a/meta-app-framework/recipes-core/security-manager/security-manager_%.bbappend b/meta-app-framework/recipes-core/security-manager/security-manager_%.bbappend
deleted file mode 100644
index 3306d4c72..000000000
--- a/meta-app-framework/recipes-core/security-manager/security-manager_%.bbappend
+++ /dev/null
@@ -1,7 +0,0 @@
-FILESEXTRAPATHS_prepend := "${THISDIR}/security-manager:"
-
-EXTRA_OECMAKE =+ " -DGLOBALUSER=afm"
-SRC_URI += " \
- file://0001-Adapt-rules-to-AGL.patch \
-"
-
diff --git a/meta-app-framework/recipes-core/shadow/shadow_%.bbappend b/meta-app-framework/recipes-core/shadow/shadow_%.bbappend
deleted file mode 100644
index 4f594d47c..000000000
--- a/meta-app-framework/recipes-core/shadow/shadow_%.bbappend
+++ /dev/null
@@ -1,6 +0,0 @@
-
-do_install_append() {
- sed -i '/^UMASK/s:^.*$:UMASK 077:' ${D}${sysconfdir}/login.defs
-}
-
-
diff --git a/meta-app-framework/recipes-core/systemd-sync/systemd-agl-sync_1.0.bb b/meta-app-framework/recipes-core/systemd-sync/systemd-agl-sync_1.0.bb
deleted file mode 100644
index 389ab2424..000000000
--- a/meta-app-framework/recipes-core/systemd-sync/systemd-agl-sync_1.0.bb
+++ /dev/null
@@ -1,39 +0,0 @@
-SUMMARY = "Systemd synchronization script"
-DESCRIPTION = "\
-Systemd synchronization script \
-reload daemon at the first boot. \
-"
-LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
-
-#This script should be the last to be execute at the first boot
-POST_INSTALL_LEVEL = "X0"
-POST_INSTALL_SCRIPT ?= "${POST_INSTALL_LEVEL}-${PN}.sh"
-
-do_install() {
- install -d ${D}/${sysconfdir}/agl-postinsts
- cat > ${D}/${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT} <<EOF
-#!/bin/sh -e
-echo "restart daemon ..."
-result=0
-systemctl daemon-reload
-if [ \$? -ne 0 ]; then
- result=1
-fi
-systemctl restart sockets.target
-if [ \$? -ne 0 ]; then
- result=1
-fi
-
-if [ \$result -eq 0 ]; then
- echo "restart daemon OK"
- exit \$result
-else
- echo "restart daemon failed"
- exit \$result
-fi
-EOF
- chmod a+x ${D}/${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT}
-}
-
-FILES_${PN} = "${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT}"