Add ISU package 62/309962/1 accepted/tizen/7.0/unified/20240429.173902
authorMateusz Moscicki <m.moscicki2@samsung.com>
Wed, 7 Jun 2023 08:58:34 +0000 (10:58 +0200)
committerAdam Michalski <a.michalski2@partner.samsung.com>
Thu, 18 Apr 2024 10:46:12 +0000 (10:46 +0000)
This patch is a fixed version of commit:

6f01f2f1087bb3d5adf988fc66585be9b23ed02f

which was reverted due to the use of the rpm macro.

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: Ib648b62bcaa3e005095c25af2818a261d2becaaf
Signed-off-by: Mateusz Moscicki <m.moscicki2@samsung.com>
(cherry picked from commit 9d5ddb916eb42ebf48d56750b886a35a3ef1609d)

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 7c7358b5eb68d811b8bbdfdc31180ced13628015..09444c7b73539aece580e19219f808d518a9a99e 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 0e530c98406826bf042494b3ddcb50afb330cd8e..39e65e8b6f0cc06cde9c4c87d971883bcad24d10 100644 (file)
@@ -97,6 +97,13 @@ Group: System/Libraries
 %description tests
 Tests binary for internal API in enlightenment
 
+%package isu
+Summary: ISU package for enlightenment
+Group:   Graphics/EFL
+
+%description isu
+Configuration files to generate the ISU (Individual Service Upgrade) package
+
 %prep
 %setup -q -n %{name}-%{version}
 cp %{SOURCE1001} .
@@ -159,3 +166,7 @@ cp %{SOURCE1002} %{buildroot}/%{_sysconfdir}/resourced/vip-process.d/enlightenme
 %files tests
 %defattr(-,root,root,-)
 %attr(550,root,root) %{_bindir}/enlightenment-tests
+
+%files isu
+/etc/isu/enlightenment/isu.cfg
+/etc/isu/enlightenment/system-services/display-manager.service