SET(VERSION "${VERSION_MAJOR}.0.2")
INSTALL(FILES ${CMAKE_SOURCE_DIR}/config/group_id_setting DESTINATION /usr/share/security-config)
+IF(WOS)
+ INSTALL(FILES ${CMAKE_SOURCE_DIR}/config/configure_wos DESTINATION /usr/share/security-config)
+ENDIF(WOS)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/config/set_label DESTINATION /usr/share/security-config)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/config/set_capability DESTINATION /usr/share/security-config)
INSTALL(FILES ${CMAKE_SOURCE_DIR}/config/mdm_blacklist DESTINATION /usr/share/security-config)
--- /dev/null
+#!/bin/bash
+set -euo pipefail
+
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+
+function add_groups {
+ groupadd --force system_access
+ groupadd --force app_access
+}
+
+function add_services_to_system_access_group {
+ for service_path in "$@"; do
+ unit_name="${service_path##*/}"
+ mkdir -p "/etc/systemd/system/${unit_name}.d/"
+ cat > "/etc/systemd/system/${unit_name}.d/system_access.conf" <<- EOF
+ [Service]
+ SupplementaryGroups=system_access
+ EOF
+ done
+ systemctl daemon-reload
+}
+
+head -n "$((LINENO - 1))" "${BASH_SOURCE[0]}"
+
+echo 'services=('
+grep -iP '[^,]\.service' test/new_service_test/systemd_service.csv | sed "s/^\([^,]*\),.*/\t'\1'/"
+echo ')'
+
+echo 'add_groups'
+echo 'add_services_to_system_access_group "${services[@]}"'
%build
+%if "%{?dev_wos}" == "1"
+config/generate_configure_wos > config/configure_wos
+%endif
+
%cmake . -DARCH=%{_arch} \
+%if "%{?dev_wos}" == "1"
+ -DWOS=ON \
+%endif
-DSYSTEMD_INSTALL_DIR=%{_unitdir}
%install
%post
/usr/share/security-config/group_id_setting
+%if "%{?dev_wos}" == "1"
+/usr/share/security-config/configure_wos
+%endif
/usr/share/security-config/set_label
mkdir -p /opt/share/security-config/result
mkdir -p /opt/share/security-config/log
%attr(755,root,root) /usr/share/security-config/set_capability
%attr(755,root,root) /usr/share/security-config/mdm_blacklist
%attr(755,root,root) /usr/share/security-config/change_permission
+%if "%{?dev_wos}" == "1"
+%attr(755,root,root) /usr/share/security-config/configure_wos
+%endif
%attr(700,root,root) /usr/share/security-config/update_privacy_mount_list.sh
%attr(644,root,root) /usr/lib/tmpfiles.d/security-config.conf
%attr(755,root,root) %{SECURITY_TEST_DIR}/image_test.sh