From 3e61255d437dbc67e6528dcc687f44c7246995db Mon Sep 17 00:00:00 2001 From: Breadway Date: Wed, 17 Jun 2026 17:45:07 +0800 Subject: [PATCH] Default to zsh distro-wide (live user + useradd default) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit BOS shipped zsh + a p10k skel .zshrc and Calamares' userShell was already /bin/zsh, but two paths still defaulted to bash: - /etc/default/useradd had SHELL=/usr/bin/bash, so any plain `useradd` (and anything not going through Calamares) created bash users. - bos-live-setup created the live ISO user with -s /bin/bash, so the live session ran bash instead of the BOS zsh setup. Ship /etc/default/useradd with SHELL=/usr/bin/zsh and create liveuser with zsh so the whole distro — live and installed — defaults to zsh. Co-Authored-By: Claude Opus 4.8 --- iso/airootfs/etc/default/useradd | 7 +++++++ iso/airootfs/usr/local/bin/bos-live-setup | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) create mode 100644 iso/airootfs/etc/default/useradd diff --git a/iso/airootfs/etc/default/useradd b/iso/airootfs/etc/default/useradd new file mode 100644 index 0000000..f16b7d8 --- /dev/null +++ b/iso/airootfs/etc/default/useradd @@ -0,0 +1,7 @@ +SHELL=/usr/bin/zsh +GROUP=users +HOME=/home +INACTIVE=-1 +EXPIRE= +SKEL=/etc/skel +CREATE_MAIL_SPOOL=no diff --git a/iso/airootfs/usr/local/bin/bos-live-setup b/iso/airootfs/usr/local/bin/bos-live-setup index 0fbe5bd..32a83f6 100644 --- a/iso/airootfs/usr/local/bin/bos-live-setup +++ b/iso/airootfs/usr/local/bin/bos-live-setup @@ -11,7 +11,7 @@ set -e # (breadd + breadbar + breadbox + keybinds) — proper live-media functionality, # not an installer kiosk. if ! id liveuser &>/dev/null; then - useradd -m -s /bin/bash liveuser + useradd -m -s /usr/bin/zsh liveuser for g in wheel video input audio storage power; do getent group "$g" >/dev/null 2>&1 && gpasswd -a liveuser "$g" >/dev/null || true done