package/skeleton-init-common: add /bin/sh to /etc/shells

Add the default shell /bin/sh to /etc/shells only if BR2_SYSTEM_BIN_SH_NONE
is not selected.

Signed-off-by: Romain Naour <romain.naour@smile.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>o
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018.05.x
Romain Naour 2018-01-19 11:15:01 +01:00 committed by Thomas Petazzoni
parent b55c0c7cd5
commit c493b2a5fa
1 changed files with 7 additions and 0 deletions

View File

@ -79,6 +79,13 @@ define SKELETON_INIT_COMMON_SET_BIN_SH
rm -f $(TARGET_DIR)/bin/sh
endef
else
# Add /bin/sh to /etc/shells otherwise some login tools like dropbear
# can reject the user connection. See man shells.
define SKELETON_INIT_COMMON_ADD_SH_TO_SHELLS
grep -qsE '^/bin/sh$$' $(TARGET_DIR)/etc/shells \
|| echo "/bin/sh" >> $(TARGET_DIR)/etc/shells
endef
SKELETON_INIT_COMMON_TARGET_FINALIZE_HOOKS += SKELETON_INIT_COMMON_ADD_SH_TO_SHELLS
ifneq ($(SKELETON_INIT_COMMON_BIN_SH),)
define SKELETON_INIT_COMMON_SET_BIN_SH
ln -sf $(SKELETON_INIT_COMMON_BIN_SH) $(TARGET_DIR)/bin/sh