Add ISU package 87/294787/8
authorMateusz Moscicki <m.moscicki2@samsung.com>
Wed, 7 Jun 2023 08:58:34 +0000 (10:58 +0200)
committerSooChan Lim <sc1.lim@samsung.com>
Thu, 7 Sep 2023 01:33:06 +0000 (01:33 +0000)
This commit adds Individual Service Upgrade (ISU) feature to
enlightenment package. When installed it will allow to upgrade this
service using ISU mechanism, without the need to perform full OS
Upgrade.

This commits add necessary configuration to create upgrade packages of
needed format.  ISU framework itself is maintained and installed
separately.

Change-Id: I17a7fa2aa58dbd705b582856de40b2a7f763401e
Signed-off-by: Mateusz Moscicki <m.moscicki2@samsung.com>
Makefile.am
isu/isu.cfg [new file with mode: 0644]
isu/system-services/display-manager.service [new file with mode: 0644]
packaging/enlightenment.spec

index 0539761..f3a3653 100644 (file)
@@ -64,6 +64,12 @@ pkgconfig_DATA = enlightenment.pc
 
 .PHONY: $(PHONIES)
 
+isudir = $(sysconfdir)/isu/enlightenment/
+isu_DATA = isu/isu.cfg
+
+isusystemservicesdir = $(sysconfdir)/isu/enlightenment/system-services/
+isusystemservices_DATA = isu/system-services/display-manager.service
+
 clean-local:
        rm -rf config/*.cfg config/*~
        rm -rf config/standard/*.cfg config/standard/*~
diff --git a/isu/isu.cfg b/isu/isu.cfg
new file mode 100644 (file)
index 0000000..da86f67
--- /dev/null
@@ -0,0 +1,7 @@
+[isu]
+name=#NAME#
+version=#VERSION#
+system_service=display-manager.service
+
+[files]
+/usr/bin/enlightenment
diff --git a/isu/system-services/display-manager.service b/isu/system-services/display-manager.service
new file mode 100644 (file)
index 0000000..aa017ee
--- /dev/null
@@ -0,0 +1,22 @@
+[Unit]
+Description=Display manager
+
+[Service]
+Type=notify
+NotifyAccess=all
+EnvironmentFile=/etc/sysconfig/enlightenment
+EnvironmentFile=/etc/isu/service-common.inc
+SmackProcessLabel=System
+ExecStartPre=-/usr/bin/keymap_update.sh
+ExecStart=/bin/isu-sandbox $ISU_SANDBOX_INVOCATION \
+          --bind #ISU_RUN_PATH#/enlightenment/rootfs/usr/bin/enlightenment /usr/bin/enlightenment \
+          --bind /sys /sys \
+          --tmpfs /tmp \
+          /usr/bin/enlightenment
+ExecStartPost=/usr/bin/bash -c "/usr/bin/touch $XDG_RUNTIME_DIR/.wm_ready; echo $MAINPID > $XDG_RUNTIME_DIR/enlightenment.pid"
+Restart=always
+RestartSec=10
+AmbientCapabilities=CAP_SETFCAP CAP_SETUID CAP_SETGID
+
+[Install]
+WantedBy=graphical.target
index a94a93a..04aeb54 100644 (file)
@@ -135,6 +135,7 @@ ln -sf %{_bindir}/enlightenment_input_key %{buildroot}%{_bindir}/input_keyevent
 mkdir -p %{buildroot}/%{_sysconfdir}/resourced/vip-process.d
 cp %{SOURCE1002} %{buildroot}/%{_sysconfdir}/resourced/vip-process.d/enlightenment.conf
 
+%isu_package
 %post
 /usr/bin/chsmack %{_bindir}/input_keyevent* -a "System::Tools"
 /usr/bin/chsmack %{_bindir}/enlightenment_input_key* -a "System::Tools"