X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=conf%2Funit%2Fafm-unit.conf.in;h=02dd82d093d43884f8036639274b7783b8bc8f44;hb=efabde7b7be19fbd35c886ad3dfd3431a24c5478;hp=0cbe10300c132fa4bf4625e967fc294156dc4b60;hpb=8c7132a146aa744f167ea2fc45dcd8d53018ecc0;p=src%2Fapp-framework-main.git diff --git a/conf/unit/afm-unit.conf.in b/conf/unit/afm-unit.conf.in index 0cbe103..02dd82d 100644 --- a/conf/unit/afm-unit.conf.in +++ b/conf/unit/afm-unit.conf.in @@ -83,7 +83,7 @@ # auto generated by wgtpkg-unit for {{:id}} version {{:version}} target {{:#target}} of {{:idaver}} %nl %systemd-unit system -%systemd-unit service afm-{{#required-permission.urn:AGL:permission::public:hidden}}service{{/required-permission.urn:AGL:permission::public:hidden}}{{^required-permission.urn:AGL:permission::public:hidden}}appli{{/required-permission.urn:AGL:permission::public:hidden}}-{{:id}}--{{:ver}}--{{:#target}}@ +%systemd-unit service afm-{{#required-permission.@afm_prefix@permission::public:hidden}}service{{/required-permission.@afm_prefix@permission::public:hidden}}{{^required-permission.@afm_prefix@permission::public:hidden}}appli{{/required-permission.@afm_prefix@permission::public:hidden}}-{{:id}}--{{:ver}}--{{:#target}}@ [Unit] Description={{description}} X-AFM-description={{description}} @@ -104,13 +104,21 @@ X-AFM--content={{content.src}} X-AFM--type={{content.type}} X-AFM--wgtdir={{:#metadata.install-dir}} X-AFM--workdir=/home/%i/app-data/{{:id}} +X-AFM--visibility={{#required-permission.@afm_prefix@permission::public:hidden}}hidden{{/required-permission.@afm_prefix@permission::public:hidden}}{{^required-permission.@afm_prefix@permission::public:hidden}}visible{{/required-permission.@afm_prefix@permission::public:hidden}} %nl Requires=afm-user-session@%i.target After=user@%i.service +After=Network.target # Adds check to smack ConditionSecurity=smack %nl # Automatic bound to required api +{{#required-binding}} +{{#value=extern}} +BindsTo=afm-link-{{name}}@%i.service +After=afm-link-{{name}}@%i.service +{{/value=extern}} +{{/required-binding}} {{#required-api}} {{#value=auto|ws}} BindsTo=afm-api-{{name}}@%i.service @@ -119,27 +127,31 @@ After=afm-api-{{name}}@%i.service {{/required-api}} {{#provided-api}} {{#value=ws|auto}} -Requires=afm-api-{{name}}@%i.service -After=afm-api-{{name}}@%i.service +Requires=afm-api-{{name}}@%i.socket +After=afm-api-{{name}}@%i.socket {{/value=ws|auto}} {{/provided-api}} %nl [Service] EnvironmentFile=-@afm_confdir@/unit.env.d/* +EnvironmentFile=-@afm_confdir@/widget.env.d/{{:id}}/* SmackProcessLabel=User::App::{{:id}} SuccessExitStatus=0 SIGKILL User=%i Slice=user-%i.slice -#CapabilityBoundingSet= +CapabilityBoundingSet= #AmbientCapabilities= -{{#required-permission.urn:AGL:permission::platform:no-oom}}OOMScoreAdjust=-500{{/required-permission.urn:AGL:permission::platform:no-oom}} -{{#required-permission.urn:AGL:permission::partner:real-time}}IOSchedulingClass=realtime{{/required-permission.urn:AGL:permission::partner:real-time}} -{{#required-permission.urn:AGL:permission::public:display}}SupplementaryGroups=display{{/required-permission.urn:AGL:permission::public:display}} -{{^required-permission.urn:AGL:permission::public:syscall:clock}}SystemCallFilter=~@clock{{/required-permission.urn:AGL:permission::public:syscall:clock}} +{{#required-permission.@afm_prefix@permission::platform:no-oom}}OOMScoreAdjust=-500{{/required-permission.@afm_prefix@permission::platform:no-oom}} +{{#required-permission.@afm_prefix@permission::partner:real-time}}IOSchedulingClass=realtime{{/required-permission.@afm_prefix@permission::partner:real-time}} +{{#required-permission.@afm_prefix@permission::public:display}}SupplementaryGroups=display{{/required-permission.@afm_prefix@permission::public:display}} +{{^required-permission.@afm_prefix@permission::public:syscall:clock}}SystemCallFilter=~@clock{{/required-permission.@afm_prefix@permission::public:syscall:clock}} %nl WorkingDirectory=-/home/%i/app-data/{{:id}} ExecStartPre=/bin/mkdir -p /home/%i/app-data/{{:id}} +Environment=AFM_ID={{idaver}}{{^#target=main}}@{{:#target}}{{/#target=main}} Environment=AFM_APP_INSTALL_DIR={{:#metadata.install-dir}} +Environment=AFM_WORKDIR=/home/%i/app-data/{{:id}} +Environment=AFM_WSAPI_DIR=@afm_users_rundir@/%i/apis/ws Environment=PATH=/usr/sbin:/usr/bin:/sbin:/bin:{{:#metadata.install-dir}}/bin Environment=LD_LIBRARY_PATH={{:#metadata.install-dir}}/lib Environment=XDG_DATA_HOME=/home/%i/app-data/{{:id}} @@ -156,7 +168,7 @@ StandardError=journal ;--------------------------------------------------------------------------------- {{#content.type=text/html|application/vnd.agl.native|application/vnd.agl.service}} {{^content.type=application/vnd.agl.service}} -X-AFM--http-port={{:#metadata.http-port}} +X-AFM--http-port={{:#metatarget.http-port}} {{/content.type=application/vnd.agl.service}} Type=notify ExecStart=/usr/bin/afb-daemon \ @@ -166,21 +178,26 @@ ExecStart=/usr/bin/afb-daemon \ {{#content.type=application/vnd.agl.service}} \ --no-httpd \ {{/content.type=application/vnd.agl.service}}{{^content.type=application/vnd.agl.service}} \ - --port={{:#metadata.http-port}} \ + --port={{:#metatarget.http-port}} \ --random-token \ - --roothttp={{#required-permission.urn:AGL:permission::public:no-htdocs}}.{{/required-permission.urn:AGL:permission::public:no-htdocs}}{{^required-permission.urn:AGL:permission::public:no-htdocs}}htdocs{{/required-permission.urn:AGL:permission::public:no-htdocs}} \ + --roothttp={{#required-permission.@afm_prefix@permission::public:no-htdocs}}.{{/required-permission.@afm_prefix@permission::public:no-htdocs}}{{^required-permission.@afm_prefix@permission::public:no-htdocs}}htdocs{{/required-permission.@afm_prefix@permission::public:no-htdocs}} \ {{/content.type=application/vnd.agl.service}} \ - {{#required-permission.urn:AGL:permission::public:applications:read}}--alias=/icons:{{:#metadata.icons-dir}}{{/required-permission.urn:AGL:permission::public:applications:read}} \ + {{#required-permission.@afm_prefix@permission::public:applications:read}}--alias=/icons:{{:#metadata.icons-dir}}{{/required-permission.@afm_prefix@permission::public:applications:read}} \ {{#required-api}} \ {{#value=auto|ws}}--ws-client=unix:@afm_users_rundir@/%i/apis/ws/{{name}}{{/value=auto|ws}} \ {{#value=dbus}}--dbus-client={{name}}{{/value=dbus}} \ - {{#value=link}}--binding=@afm_users_rundir@/%i/apis/lib/{{name}}{{/value=link}} \ {{#value=cloud}}--cloud-client={{name}}{{/value=cloud}} \ {{#value=local}}--binding={{:#metadata.install-dir}}/{{name}}{{/value=local}} \ + {{#value=tcp}}--ws-client=tcp:{{name}}{{/value=tcp}} \ {{/required-api}} \ + {{#required-binding}} \ + {{#value=local}}--binding={{:#metadata.install-dir}}/{{name}}{{/value=local}} \ + {{#value=extern}}--binding=@afm_users_rundir@/%i/apis/link/{{name}}{{/value=extern}} \ + {{/required-binding}} \ {{#provided-api}} \ {{#value=auto|ws}}--ws-server=sd:{{name}}{{/value=auto|ws}} \ {{#value=dbus}}--dbus-server={{name}}{{/value=dbus}} \ + {{#value=tcp}}--ws-server=tcp:{{name}}{{/value=tcp}} \ {{/provided-api}} \ {{#content.type=text/html}}--exec /usr/bin/web-runtime http://localhost:@p/{{content.src}}?token=@t{{/content.type=text/html}} \ {{#content.type=application/vnd.agl.native}}--exec {{:#metadata.install-dir}}/{{content.src}} @p @t{{/content.type=application/vnd.agl.native}} @@ -191,19 +208,20 @@ ExecStart=/usr/bin/afb-daemon \ {{#content.type=application/x-executable}} ExecStart={{:#metadata.install-dir}}/{{content.src}} {{/content.type=application/x-executable}} -{{#required-permission.urn:AGL:permission::system:run-by-default}} +{{#required-permission.@afm_prefix@permission::system:run-by-default}} ;--------------------------------------------------------------------------------- ; auto start ;--------------------------------------------------------------------------------- [Install] WantedBy=afm-user-session@.target %systemd-unit wanted-by afm-user-session@.target -{{/required-permission.urn:AGL:permission::system:run-by-default}} +{{/required-permission.@afm_prefix@permission::system:run-by-default}} %end systemd-unit ;------------------------------------------------------------------------------- ;---- P R O V I D E D A P I S ---- ;------------------------------------------------------------------------------- {{#provided-api}} +{{#value=ws|auto}} ;------------------------------------------------------------------------------- ;---- T H E S E R V I C E O F T H E A P I ---- ;------------------------------------------------------------------------------- @@ -216,21 +234,16 @@ Description=Provides api {{name}} for user %i X-AFM-API-TYPE={{value}} Requires=afm-user-setup@%i.service After=afm-user-setup@%i.service -{{#value=ws|auto}} Requires=afm-api-{{name}}@%i.socket After=afm-api-{{name}}@%i.socket -{{/value=ws|auto}} [Service] Type=oneshot RemainAfterExit=yes -{{#value=ws|auto}} ExecStart=/bin/true -{{/value=ws|auto}} %end systemd-unit ;------------------------------------------------------------------------------- ;---- T H E S O C K E T O F T H E A P I ---- ;------------------------------------------------------------------------------- -{{#value=ws|auto}} %begin systemd-unit # auto generated by wgtpkg-unit for {{:id}} version {{:version}} target {{:#target}} of {{:idaver}} %systemd-unit system @@ -246,10 +259,31 @@ SmackLabelIPIn=System SmackLabelIPOut=System ListenStream=@afm_users_rundir@/%i/apis/ws/{{name}} FileDescriptorName={{name}} -Service=afm-{{#required-permission.urn:AGL:permission::public:hidden}}service{{/required-permission.urn:AGL:permission::public:hidden}}{{^required-permission.urn:AGL:permission::public:hidden}}appli{{/required-permission.urn:AGL:permission::public:hidden}}-{{:id}}--{{:ver}}--{{:#target}}@%i.service +Service=afm-{{#required-permission.@afm_prefix@permission::public:hidden}}service{{/required-permission.@afm_prefix@permission::public:hidden}}{{^required-permission.@afm_prefix@permission::public:hidden}}appli{{/required-permission.@afm_prefix@permission::public:hidden}}-{{:id}}--{{:ver}}--{{:#target}}@%i.service %end systemd-unit {{/value=ws|auto}} {{/provided-api}} +;------------------------------------------------------------------------------- +;---- P R O V I D E D B I N D I N G ---- +;------------------------------------------------------------------------------- +{{#provided-binding}} +;------------------------------------------------------------------------------- +;---- T H E S E R V I C E O F T H E B I N D I N G ---- +;------------------------------------------------------------------------------- +%begin systemd-unit +# auto generated by wgtpkg-unit for {{:id}} version {{:version}} target {{:#target}} of {{:idaver}} +%systemd-unit system +%systemd-unit service afm-link-{{name}}@ +[Unit] +Description=Provides binding {{name}} for user %i +Requires=afm-user-setup@%i.service +After=afm-user-setup@%i.service +[Service] +Type=oneshot +RemainAfterExit=yes +ExecStart=/bin/ln -sf {{:#metadata.install-dir}}/{{value}} @afm_users_rundir@/%i/apis/link/{{name}} +%end systemd-unit +{{/provided-binding}} {{/targets}} ;--------------------------------------------------------------------------------- ; End of file afm-unit.conf mode RELEASE