From e23b37b2d9a2e766b1ad151f59a04eb68b6a3341 Mon Sep 17 00:00:00 2001 From: Hannu Nyman Date: Thu, 5 Dec 2024 22:28:45 +0200 Subject: [PATCH] busybox: Save shell history into /tmp Enable the busybox feature to save shell command history. (.apk size increase 0.5 kB) To prevent flash wear, * save history only at the exit from a shell session, and * set /tmp as the default location for the history file. The history is kept on ramdisk until a reboot, when the history is then lost. If the user wants to save history onto flash, he can change the location definition in /etc/profile.d/busybox-history-file.sh Signed-off-by: Hannu Nyman Link: https://github.com/openwrt/openwrt/pull/17179 Signed-off-by: Hauke Mehrtens --- package/utils/busybox/Config-defaults.in | 4 ++-- package/utils/busybox/Makefile | 4 +++- package/utils/busybox/files/busybox-history-file.sh | 2 ++ 3 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 package/utils/busybox/files/busybox-history-file.sh diff --git a/package/utils/busybox/Config-defaults.in b/package/utils/busybox/Config-defaults.in index 26d3e642ce..820c498eea 100644 --- a/package/utils/busybox/Config-defaults.in +++ b/package/utils/busybox/Config-defaults.in @@ -255,10 +255,10 @@ config BUSYBOX_DEFAULT_FEATURE_EDITING_HISTORY default 256 config BUSYBOX_DEFAULT_FEATURE_EDITING_SAVEHISTORY bool - default n + default y config BUSYBOX_DEFAULT_FEATURE_EDITING_SAVE_ON_EXIT bool - default n + default y config BUSYBOX_DEFAULT_FEATURE_REVERSE_SEARCH bool default n diff --git a/package/utils/busybox/Makefile b/package/utils/busybox/Makefile index 4f155b7a25..c2fc609610 100644 --- a/package/utils/busybox/Makefile +++ b/package/utils/busybox/Makefile @@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=busybox PKG_VERSION:=1.37.0 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_FLAGS:=essential PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 @@ -143,6 +143,8 @@ define Package/busybox/install $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_DIR) $(1)/usr/sbin $(CP) $(PKG_INSTALL_DIR)/* $(1)/ + $(INSTALL_DIR) $(1)/etc/profile.d + $(INSTALL_BIN) ./files/busybox-history-file.sh $(1)/etc/profile.d ifneq ($(CONFIG_BUSYBOX_$(BUSYBOX_SYM)_FEATURE_SYSLOG)$(CONFIG_BUSYBOX_$(BUSYBOX_SYM)_FEATURE_SYSLOGD_CFG),) touch $(1)/etc/syslog.conf endif diff --git a/package/utils/busybox/files/busybox-history-file.sh b/package/utils/busybox/files/busybox-history-file.sh new file mode 100644 index 0000000000..f286009627 --- /dev/null +++ b/package/utils/busybox/files/busybox-history-file.sh @@ -0,0 +1,2 @@ +export HISTFILE=/tmp/.busybox_ash_history + -- 2.30.2