[openwrt/openwrt] base-files: split /etc/profile
LEDE Commits
lede-commits at lists.infradead.org
Thu Nov 20 08:48:21 PST 2025
robimarko pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/eb71d1000968ff45f6ed5aeda87a86548eb0685a
commit eb71d1000968ff45f6ed5aeda87a86548eb0685a
Author: Konstantin Demin <rockdrilla at gmail.com>
AuthorDate: Thu Sep 4 15:36:56 2025 +0300
base-files: split /etc/profile
- move extra parts to /etc/profile.d/*
- improve syntax and messages
Signed-off-by: Konstantin Demin <rockdrilla at gmail.com>
Link: https://github.com/openwrt/openwrt/pull/19953
Signed-off-by: Robert Marko <robimarko at gmail.com>
---
package/base-files/files/etc/profile | 67 +++++++---------------
.../files/etc/profile.d/00-passwordless-root.sh | 11 ++++
.../files/etc/profile.d/apk-cheatsheet.sh | 21 +++++++
3 files changed, 54 insertions(+), 45 deletions(-)
diff --git a/package/base-files/files/etc/profile b/package/base-files/files/etc/profile
index f9acdb439f..9ce59c87e9 100644
--- a/package/base-files/files/etc/profile
+++ b/package/base-files/files/etc/profile
@@ -1,61 +1,38 @@
+unset FAILSAFE
[ -e /tmp/.failsafe ] && export FAILSAFE=1
[ -f /etc/banner ] && cat /etc/banner
-[ -n "$FAILSAFE" ] && cat /etc/banner.failsafe
+[ -n "$FAILSAFE" ] && [ -f /etc/banner.failsafe ] && cat /etc/banner.failsafe
-grep -Fsq '/ overlay ro,' /proc/mounts && {
- echo 'Your JFFS2-partition seems full and overlayfs is mounted read-only.'
- echo 'Please try to remove files from /overlay/upper/... and reboot!'
-}
+if grep -Fsq '/ overlay ro,' /proc/mounts ; then
+cat << EOF
+
+ === WARNING! ======================================
+ Your JFFS2-partition seems full and overlayfs is
+ mounted as READ-ONLY!
+ Please try to remove files from /overlay/upper/...
+ and reboot!
+ ---------------------------------------------------
+
+EOF
+fi
export PATH="%PATH%"
-export HOME=$(grep -e "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6)
-export HOME=${HOME:-/root}
+HOME=$(grep -E "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6)
+HOME=${HOME:-/root}
+export HOME
export PS1='\u@\h:\w\$ '
export ENV=/etc/shinit
case "$TERM" in
xterm*|rxvt*)
- export PS1='\[\e]0;\u@\h: \w\a\]'$PS1
- ;;
+ export PS1='\[\e]0;\u@\h: \w\a\]'"$PS1"
+ ;;
esac
-[ -n "$FAILSAFE" ] || {
- for FILE in /etc/profile.d/*.sh; do
- [ -e "$FILE" ] && . "$FILE"
+if [ -z "$FAILSAFE" ] ; then
+ for FILE in /etc/profile.d/*.sh ; do
+ [ -f "$FILE" ] && . "$FILE"
done
unset FILE
-}
-
-if ( grep -qs '^root::' /etc/shadow && \
- [ -z "$FAILSAFE" ] )
-then
-cat << EOF
-=== WARNING! =====================================
-There is no root password defined on this device!
-Use the "passwd" command to set up a new password
-in order to prevent unauthorized SSH logins.
---------------------------------------------------
-EOF
-fi
-
-if [ -x /usr/bin/apk ]; then
-cat << EOF
-
- OpenWrt recently switched to the "apk" package manager!
-
- OPKG Command APK Equivalent Description
- ------------------------------------------------------------------
- opkg install <pkg> apk add <pkg> Install a package
- opkg remove <pkg> apk del <pkg> Remove a package
- opkg upgrade apk upgrade Upgrade all packages
- opkg files <pkg> apk info -L <pkg> List package contents
- opkg list-installed apk info List installed packages
- opkg update apk update Update package lists
- opkg search <pkg> apk search <pkg> Search for packages
- ------------------------------------------------------------------
-
-For more https://openwrt.org/docs/guide-user/additional-software/opkg-to-apk-cheatsheet
-
-EOF
fi
diff --git a/package/base-files/files/etc/profile.d/00-passwordless-root.sh b/package/base-files/files/etc/profile.d/00-passwordless-root.sh
new file mode 100644
index 0000000000..fe98045e07
--- /dev/null
+++ b/package/base-files/files/etc/profile.d/00-passwordless-root.sh
@@ -0,0 +1,11 @@
+if grep -Esq '^root::' /etc/shadow ; then
+cat << EOF
+
+ === WARNING! =====================================
+ There is no root password defined on this device!
+ Use the "passwd" command to set up a new password
+ in order to prevent unauthorized SSH logins.
+ --------------------------------------------------
+
+EOF
+fi
diff --git a/package/base-files/files/etc/profile.d/apk-cheatsheet.sh b/package/base-files/files/etc/profile.d/apk-cheatsheet.sh
new file mode 100644
index 0000000000..4193367a1c
--- /dev/null
+++ b/package/base-files/files/etc/profile.d/apk-cheatsheet.sh
@@ -0,0 +1,21 @@
+if [ -x /usr/bin/apk ] ; then
+cat << EOF
+
+ OpenWrt recently switched to the "apk" package manager!
+
+ OPKG Command APK Equivalent Description
+ ------------------------------------------------------------------
+ opkg install <pkg> apk add <pkg> Install a package
+ opkg remove <pkg> apk del <pkg> Remove a package
+ opkg upgrade apk upgrade Upgrade all packages
+ opkg files <pkg> apk info -L <pkg> List package contents
+ opkg list-installed apk info List installed packages
+ opkg update apk update Update package lists
+ opkg search <pkg> apk search <pkg> Search for packages
+ ------------------------------------------------------------------
+
+For more information visit:
+https://openwrt.org/docs/guide-user/additional-software/opkg-to-apk-cheatsheet
+
+EOF
+fi
More information about the lede-commits
mailing list