067f2a6e4497cdd7e88517d88fc3c0e37cb0644b
[AGL/meta-agl.git] / meta-app-framework / recipes-config / agl-session / agl-session_0.1.bb
1 SUMMARY = "AGL user session"
2 LICENSE = "Apache-2.0"
3 LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
4
5 SRC_URI = "\
6     file://agl-session@.service \
7     file://agl-session.target \
8     file://50-xdg-data-dirs.sh \
9 "
10
11 inherit systemd allarch useradd
12
13 USERADD_PACKAGES = "${PN}"
14 USERADDEXTENSION = "useradd-staticids"
15 GROUPADD_PARAM:${PN} = "\
16         --system display ; \
17         --system video ; \
18         --system pipewire ; \
19         -g 1001 agl-driver ; \
20         -g 1003 applaunchd ; \
21 "
22 # agl-driver user needs to be part of applaunchd group for D-Bus activation to still work
23 # should be removed after everything is converted to gRPC for enhanced security
24 USERADD_PARAM:${PN} = "\
25   -g 1001 -u 1001 -G video,display,pipewire,applaunchd -o -d /home/agl-driver -m -K PASS_MAX_DAYS=-1 agl-driver ; \
26   -g 1003 -u 1003 -o -d / -K PASS_MAX_DAYS=-1 applaunchd ; \
27 "
28
29 SYSTEMD_PACKAGES = "${PN}"
30 # Instantiate session for the 'agl-driver' user, so we don't have to hardcode
31 # the user name/ID in the service file itself
32 SYSTEMD_SERVICE:${PN} = "agl-session@agl-driver.service"
33 SYSTEMD_AUTO_ENABLE:${PN} = "enable"
34
35 do_install() {
36     install -d ${D}${systemd_system_unitdir}
37     install -m 0644 ${WORKDIR}/agl-session@.service ${D}${systemd_system_unitdir}
38
39     install -d ${D}${systemd_user_unitdir}
40     install -m 0644 ${WORKDIR}/agl-session.target ${D}${systemd_user_unitdir}
41
42     install -d ${D}${libdir}/systemd/user-environment-generators
43     install -m 0755 ${WORKDIR}/50-xdg-data-dirs.sh ${D}${libdir}/systemd/user-environment-generators/
44 }
45
46 FILES:${PN} += " \
47     ${systemd_system_unitdir} \
48     ${systemd_user_unitdir} \
49     ${libdir}/systemd/user-environment-generators/ \
50 "