• v4.2.0 069457b3e9

    fatalerrors released this 2026-10-13 18:29:55 +02:00 | 0 commits to 4.x since this release

    I 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