4.5 KiB
Executable File
4.5 KiB
Executable File
Changelog
All notable changes to this project will be documented in this file.
The format follows Keep a Changelog.
Versions follow MAJOR.MINOR.PATCH-REVISION_STAGE_N (e.g. 3.99.1-4_rc_1).
[3.99.2-4_rc_2] — 2026-04-21
Fixed
prompt.sh—\$Last_Commandin PS1 was escaped, preventing the exit code from ever appearing in the prompt (the local variable no longer exists when PS1 is rendered by bash). Removed the backslash so the value is embedded atset_promptbuild time.filefct.sh—file_stats()— a stray unconditionalshiftafteresacdoubled-shifted arguments already shifted by eachcasebranch; successive options such as-H -dwere silently skipped.packages.sh—pkgs()— replaced the unreliable binary-presence test (command -v dpkg / rpm) with the newget_pkgmgrfunction. Also corrected a typo in the "no package manager" error message (avialable→available).processes.sh—kt()— copy-paste error: usage error message read"Usage: ppg <string>"instead of"Usage: kt <pid>".
Added
packages.sh—get_pkgmgr()— new exported helper that detects the active package manager of the running distribution. Detection first reads/etc/os-release(IDthenID_LIKE), then falls back to a fixed-priority binary scan. Supported families:apt,dnf,yum,zypper,pacman,apk,portage,xbps,nix. Returns 1 when nothing is identified. Available to all future commands inpackages.sh.
[3.99.1-4_rc_1] — 2026
Added
- Theming system —
load_themeinprofile.d/prompt.shloads.themefiles fromprofile.d/themes/(or a custom directory set viaPROMPT_THEME_DIR). Theme files are parsed, not executed — no shell code ever runs from a theme. - Built-in themes —
default,dark,light,solarized(24-bit true-colour),solarized-light(24-bit),monokai,monochrome,abyss,plasma,adwaita. [prompt]section —PROMPT_THEMEandPROMPT_THEME_DIRkeys to select a theme; elevenPROMPT_COLOR_*keys for per-key overrides inprofile.conf.- Standard colour variables as theme keys — theme files may also override
the
disp.shcolour variables (Black,Blue,On_IBlack, …) to remap the terminal palette used byls,grep, and colour-aware tools. - Module configuration defaults — all modules now expose their hardcoded
defaults as
profile.confkeys:TAZ_*,UTAZ_*,EXPANDLIST_*,CLEAN_*,RMSPC_*,FINDBIG_*,RAIN_*,MATRIX_*,SSH_DEFAULT_OPT,GENPWD_*,PWDSCORE_*,BUSY_*,METEO_DEFAULT_CITY,DWL_*,MYEXTIP_*,PKGS_*,PPU_*,KU_*,UPDT_DEFAULT_BRANCH. UPDT_DEFAULT_BRANCH— configures the git branch used bycheck_updatesandprofile_upgrade. Changing the key causesprofile_upgradeto automatically switch the local checkout to the new branch and display a warning.doc/directory —CONTRIBUTING.md,FAQ.md,profile.conf.example(annotated template),todo.md..gitignore—profile.confis now git-ignored so personal settings are never accidentally staged.
Changed
- README §2 now explains how to create
profile.conffromdoc/profile.conf.example(new section 2.1 "Initial configuration"). - README §4 updated with full module-defaults tables, theming reference, and a
note about
profile.confbeing git-ignored. - Theme values no longer carry the
exportkeyword (they are not shell variables, only data).
Security
load_themeuses a strict allowlist (noeval, no sourcing). OnlyPROMPT_COLOR_*keys and knowndisp.shcolour variable names are accepted. Values must match\$[A-Za-z_][A-Za-z0-9_]*or\\e\[[0-9;]*m; any other value is discarded with a warning.
Note: Versions prior to
3.95.x-4_betadid not maintain a formal changelog. The full history of earlier changes is available through the git log (git log --oneline).
[3.95.3-4_beta_3] — 2024
Added
- Initial public release candidate series.
- Core modules:
compress,disp,filefct,fun,help,info,lang,net,packages,processes,prompt,pwd,rain,ssh,updates. - Bar-style prompt with time, command duration, and exit code.
taz/utazarchive helpers.genpwd/pwdscorepassword tools.matrix/rainscreensavers.profile_upgradewith git and archive download support.