Skip to contentSkip to conversation

Add /sbin/sushell when SELinux is enabled

PATCH In review Kai Kang 1 participant 3 messages Jul 6, 2015 – Jul 7, 2015

lore
Share & tools
lore

Kai Kang

author
#0 lore raw

cover Add /sbin/sushell when SELinux is enabled

The following changes since commit 8ad9a434c9fd0300cf5c38c368b181b78421e95a:

bitbake: tests/data: Add new data tests (2015-07-01 15:40:21 +0100)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib kangkai/initscripts
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=kangkai/initscripts

Kai Kang (1):
initscripts: add /sbin/sushell for systemd service debug-shell

 meta/recipes-core/initscripts/initscripts-1.0/sushell |  5 +++++
 meta/recipes-core/initscripts/initscripts_1.0.bb      | 10 +++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-core/initscripts/initscripts-1.0/sushell
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH 1/1 initscripts: add /sbin/sushell for systemd service debug-shell

Add file /sbin/sushell for systemd service debug-shell which starts with /bin/sushell when SELinux is enabled. Copy and add sushell file from Fedora 22.

Add runtime dependency bash as well when systemd is enabled to eliminate QA warning:

WARNING: QA Issue: /sbin/sushell_initscripts contained in package initscripts requires /bin/bash, but no providers found in its RDEPENDS [file-rdeps]

---
 meta/recipes-core/initscripts/initscripts-1.0/sushell |  5 +++++
 meta/recipes-core/initscripts/initscripts_1.0.bb      | 10 +++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-core/initscripts/initscripts-1.0/sushell
meta/recipes-core/initscripts/initscripts-1.0/sushell new file +5 -0
new file mode 100644
index 0000000..7d96941
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+[ -z "$SUSHELL" ] && SUSHELL=/bin/bash
+
+exec $SUSHELL
meta/recipes-core/initscripts/initscripts_1.0.bb +9 -1
index a086591..c2e815f 100644
@@ -33,6 +33,7 @@ SRC_URI = "file://functions \
            file://GPLv2.patch \
            file://dmesg.sh \
            file://logrotate-dmesg.conf \
+           ${@bb.utils.contains('DISTRO_FEATURES','systemd','file://sushell','',d)} \
 "
 
 S = "${WORKDIR}"
@@ -46,7 +47,9 @@ DEPENDS_append = " update-rc.d-native"
 DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
 
 PACKAGES =+ "${PN}-functions"
-RDEPENDS_${PN} = "${PN}-functions"
+RDEPENDS_${PN} = "${PN}-functions \
+                  ${@bb.utils.contains('DISTRO_FEATURES','systemd','bash','',d)} \
+		 "
 FILES_${PN}-functions = "${sysconfdir}/init.d/functions*"
 
 ALTERNATIVE_PRIORITY_${PN}-functions = "90"
@@ -104,6 +107,11 @@ do_install () {
 	if [ "${TARGET_ARCH}" = "arm" ]; then
 		install -m 0755 ${WORKDIR}/alignment.sh	${D}${sysconfdir}/init.d
 	fi
+
+	if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+		install -d ${D}/${base_sbindir}
+		install -m 0755 ${WORKDIR}/sushell ${D}/${base_sbindir}
+	fi
 #
 # Install device dependent scripts
 #
Signature · 1 line
1.9.1
author
#2 lore raw

Re: [PATCH 1/1] initscripts: add /sbin/sushell for systemd service debug-shell

Quoted 33 lines · Kai Kang

Add file /sbin/sushell for systemd service debug-shell which starts with /bin/sushell when SELinux is enabled. Copy and add sushell file from Fedora 22.

Add runtime dependency bash as well when systemd is enabled to eliminate QA warning:

WARNING: QA Issue: /sbin/sushell_initscripts contained in package initscripts requires /bin/bash, but no providers found in its RDEPENDS [file-rdeps]

---
  meta/recipes-core/initscripts/initscripts-1.0/sushell |  5 +++++
  meta/recipes-core/initscripts/initscripts_1.0.bb      | 10 +++++++++-
  2 files changed, 14 insertions(+), 1 deletion(-)

create mode 100644 meta/recipes-core/initscripts/initscripts-1.0/sushell

meta/recipes-core/initscripts/initscripts-1.0/sushell new file +5 -0
new file mode 100644
index 0000000..7d96941
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+[ -z "$SUSHELL" ] && SUSHELL=/bin/bash
+
+exec $SUSHELL
meta/recipes-core/initscripts/initscripts_1.0.bb +0 -0
index a086591..c2e815f 100644

meta/recipes-core/initscripts/initscripts_1.0.bb SRC_URI = "file://functions \ · line 36

Quoted 4 lines
meta/recipes-core/initscripts/initscripts_1.0.bb +1 -0
@@ -33,6 +33,7 @@ SRC_URI = "file://functions \
             file://GPLv2.patch \
             file://dmesg.sh \
             file://logrotate-dmesg.conf \
+           ${@bb.utils.contains('DISTRO_FEATURES','systemd','file://sushell','',d)} \

It should check distro feature selinux rather than systemd that only when selinux is enabled, debug-shell.service from systemd starts with sushell.

I'll send V2.

Thanks,
Kai

Quoted 26 lines
meta/recipes-core/initscripts/initscripts_1.0.bb +8 -1
  "
 
  S = "${WORKDIR}"
@@ -46,7 +47,9 @@ DEPENDS_append = " update-rc.d-native"
  DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd-systemctl-native','',d)}"
 
  PACKAGES =+ "${PN}-functions"
-RDEPENDS_${PN} = "${PN}-functions"
+RDEPENDS_${PN} = "${PN}-functions \
+                  ${@bb.utils.contains('DISTRO_FEATURES','systemd','bash','',d)} \
+		 "
  FILES_${PN}-functions = "${sysconfdir}/init.d/functions*"
 
  ALTERNATIVE_PRIORITY_${PN}-functions = "90"
@@ -104,6 +107,11 @@ do_install () {
  	if [ "${TARGET_ARCH}" = "arm" ]; then
  		install -m 0755 ${WORKDIR}/alignment.sh	${D}${sysconfdir}/init.d
  	fi
+
+	if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+		install -d ${D}/${base_sbindir}
+		install -m 0755 ${WORKDIR}/sushell ${D}/${base_sbindir}
+	fi
  #
  # Install device dependent scripts
  #
Signature · 2 lines
Regards,
Neil | Kai Kang