-
profile.sh v4.2.0 released Stable
released this
2026-10-13 18:29:55 +02:00 | 0 commits to 4.x since this releaseI introduced a full review of every module and of profile.sh: many bug fixes, comments and documentation updated. For the first time with the help of AI.
Added
* pkgi (install) and pkgr (uninstall; -p/--purge, -d/--deps). * utaz -i/--ignore-case and -s/--case-sensitive, default set by UTAZ_DEFAULT_IGNORE_CASE; .zst and .tzst support. * SETTRACE_DEFAULT_ENABLED key ([debug] section). * --help for backtrace, locale_check and get_pkgmgr; support functions added to the README table and to help.Changed
* Internal helpers moved to the new helpers/ directory: common.sh (shared) and <module>.sh (private to a module, loaded by the module itself). * Option parsing and trap restoration no longer use xargs or eval (_getopt_split, _trap_restore). * myextip uses an HTTPS service (ipinfo.io) by default. * showinfo prefers fastfetch over neofetch.Fixed
* Security: prompt injection through git branch / environment names, genpwd weak random source, unsafe handling of values read from the network or from the configuration. * Many functional bugs in taz/utaz, conf_save/conf_dump, term_set, disp/mdcat, findzero, gprune, setlocale, dwl, ku/kt, pkgf, rmhost, rain/matrix, profile_upgrade and the prompt exit status. * profile.sh: shell check, option handling when sourced, PATH and PROMPT_COMMAND handling, configuration parsing. * Debug traces go to stderr; ((x++)) patterns no longer fail under set -e. * Copyright years and license headers; the whole project is now shellcheck clean (.shellcheckrc added).Downloads