Add ISU package 11/300011/1
authorAdam Michalski <a.michalski2@partner.samsung.com>
Tue, 13 Jun 2023 15:52:56 +0000 (17:52 +0200)
committerChanwoo Choi <cw00.choi@samsung.com>
Fri, 13 Oct 2023 10:16:10 +0000 (19:16 +0900)
commit13e851a21420ac3e4f98c5f1f08f5134af240c24
treecbc36d5e47f25a9843c2d45db91011f1e8d6bc59
parent776e2d7c66c4449f17fb942d24e5f09e0a17fe05
Add ISU package

The following changes have been made for ISU:
* isu/isu.cfg - ISU configuration file.
    [isu] section:
        `name` and `version` have been filled by using the #NAME# and #VERSION#
        patterns that in turn will be replaced by the `%isu_package` RPM macro
        into the name and version of the RPM package.
        `system_service` is the systemd service name and must be the same as the
        original one.
    [files] section:
        contains a list of all files that should be added to the ISU package.
        Since we only want to replace the binary, there is only one file here.
* isu/deviced.service - modified ISU service file.
    Compared to the original 'deviced.service' the following changes have been
    made for ISU:
    - `EnvironmentFile=/etc/isu/service-common.inc` - to include ISU-specific
      variables
    - `ExecStart=` has been changed to launch sandbox application with default
      parameters (`ISU_SANDBOX_INVOCATION`), ISU-provided
      `#ISU_RUN_PATH#/deviced/rootfs/usr/bin/deviced` is visible as
      `/usr/bin/deviced` in the sandbox
    - `NotifyAccess=all` has been set as there is one intermediate process
      (`isu-sandbox`) between `systemd` and `/usr/bin/deviced`
* isu/CMakeLists.txt - CMake config file for the ISU.
    Added installing ISU config file and the service file to the appropriate
    locations (/etc/isu/*)
* CMakeLists.txt - main config file for CMake.
    We've added the `isu` subdirectory where we placed the isu configuration
    file and the modified service file that will run `dlog` in a sandboxed
    environment.
* packaging/deviced.spec - main `deviced` RPM spec file.
    We've made the following changes:
    - added `Requires: %{name}-isu = %{version}-%{release}` tag in the main
      spec section which will cause the ISU package to be installed when the
      original package is installed.
    - added the `%isu_package` macro invocation right before the `%prep` section
      which will cause the configuration to be placed in the correct location
      with all ISU-related files packaged into the `*-isu` RPM package.

Change-Id: I8c81d0df6d81afae50d1e703940d1889df0b68bf
Signed-off-by: Adam Michalski <a.michalski2@partner.samsung.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
CMakeLists.txt
isu/CMakeLists.txt [new file with mode: 0644]
isu/deviced.service [new file with mode: 0644]
isu/isu.cfg [new file with mode: 0644]
packaging/deviced.spec