zsh: fix shell not sourcing /etc/profile
authorJohn Audia <[email protected]>
Fri, 4 Jul 2025 10:16:07 +0000 (06:16 -0400)
committerRobert Marko <[email protected]>
Fri, 4 Jul 2025 13:18:32 +0000 (15:18 +0200)
Currently our zsh package does not source /etc/profile which is the
expected behavior to setup environment configs.

Build system: x86/64
Build-tested: x86/64
Run-tested: x86/64

Signed-off-by: John Audia <[email protected]>
utils/zsh/Makefile
utils/zsh/files/zprofile [new file with mode: 0644]

index eedf6364a68a59cef2223a3f3ab16a12e4de3912..ccd50cf4686d3372dfe9958b5e616792cf9c8476 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=zsh
 PKG_VERSION:=5.9
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=@SF/zsh
@@ -66,6 +66,8 @@ define Build/Configure
                --enable-fndir=$(CONFIGURE_PREFIX)/share/zsh/$(PKG_VERSION)/functions \
                --enable-site-fndir=$(CONFIGURE_PREFIX)/share/zsh/site-functions \
                --enable-function-subdirs \
+               --enable-etcdir=/etc/zsh \
+               --enable-zprofile=/etc/zsh/zprofile \
                --with-tcsetpgrp \
                --with-term-lib="ncursesw", \
                zsh_cv_shared_environ=yes \
@@ -109,12 +111,14 @@ endef
 define Package/zsh/install
        $(INSTALL_DIR) $(1)/bin
        $(INSTALL_DIR) $(1)/$(CONFIGURE_PREFIX)/bin
+       $(INSTALL_DIR) $(1)/etc/zsh
        $(INSTALL_DIR) $(1)/$(CONFIGURE_PREFIX)/share/zsh/$(PKG_VERSION)
        $(INSTALL_DIR) $(1)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh
        $(INSTALL_DIR) $(1)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh/net
        $(INSTALL_DIR) $(1)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh/param
 
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/$(CONFIGURE_PREFIX)/bin/zsh $(1)/$(CONFIGURE_PREFIX)/bin/
+       $(INSTALL_DATA) ./files/zprofile $(1)/etc/zsh
        $(CP) $(PKG_INSTALL_DIR)/$(CONFIGURE_PREFIX)/share/zsh/$(PKG_VERSION)/* $(1)/$(CONFIGURE_PREFIX)/share/zsh/$(PKG_VERSION)/
        $(CP) $(PKG_INSTALL_DIR)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh/* $(1)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh/
        $(CP) $(PKG_INSTALL_DIR)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh/net/* $(1)/$(CONFIGURE_PREFIX)/lib/zsh/$(PKG_VERSION)/zsh/net/
diff --git a/utils/zsh/files/zprofile b/utils/zsh/files/zprofile
new file mode 100644 (file)
index 0000000..6bfcdf7
--- /dev/null
@@ -0,0 +1 @@
+emulate sh -c 'source /etc/profile'