Tux Machines

Do you waddle the waddle?

Other Sites

Internet Society

Expanding Internet Access in Rural Latin America, One Course at a Time

If, in 2018, you had told Alan Ramírez, a Peruvian telecommunications engineer and university lecturer, that a short training course would one day shape national Internet policy and connect thousands more rural Peruvians, he might have laughed. But just five years later, that’s exactly what happened.

9to5Linux

VirtualBox 7.1.10 Is Out with Initial Support for Linux 6.15 and 6.16 Kernels

While Oracle is working hard on the next major release of its powerful virtualization software, VirtualBox 7.2, which promises a revamped UI and improvements to ARM virtualization, VirtualBox 7.1.10 is here to introduce initial support for the latest and greatest Linux 6.15 kernel series for both Linux guests and hosts.

Ubuntu Touch OTA-9 Released with VoLTE and Waydroid Improvements

Ubuntu Touch OTA-9 is here three months after Ubuntu Touch OTA-8 to update VoLTE support so that it works out-of-box with more carriers on several Volla devices, update Waydroid with initial support for upcoming official Android 13 images, and introduce a new Noto Color Emoji font to improve support for some newer emojis.

LinuxGizmos.com

FriendlyElec NanoPi M5 Offers RK3576, Dual LAN, MIPI-CSI, and 6 TOPS NPU

FriendlyElec has introduced the NanoPi M5, a compact single-board computer based on the Rockchip RK3576 processor. It features a 6 TOPS INT8 NPU, supports LPDDR4X or LPDDR5 memory, and offers UFS 2.0 storage along with dual Gigabit Ethernet and MIPI-CSI/DSI interfaces.

Bash-5.2 Release available

posted by Roy Schestowitz on Sep 27, 2022

Introduction
============

The first public release of bash-5.2 is now available with the URLs
ftp://ftp.cwru.edu/pub/bash/bash-5.2.tar.gz ftp://ftp.gnu.org/pub/gnu/bash/bash-5.2.tar.gz
and from the master branch of the bash git repository (http://git.savannah.gnu.org/cgit/bash.git/log/) and the usual GNU mirror sites.
Bash is the GNU Project's Bourne Again SHell, a complete implementation of the POSIX shell spec, but also with interactive command line editing, job control on architectures that support it, csh-like features such as history substitution and brace expansion, and a slew of other features. For more information on the features of Bash that are new to this type of shell, see the file `doc/bashref.texi'. There is also a large Unix-style man page. The man page is the definitive description of the shell's features.
This tar file includes the formatted documentation (pdf, postscript, dvi, info, and html, plus nroffed versions of the manual pages).
Please use `bashbug' to report bugs with this version. It is built and installed at the same time as bash.
Installation ============
Please read the README file first.
Installation instructions are provided in the INSTALL file.
New Features ============
This is an update to the fifth major release of bash.
Read the file NEWS in the bash-5.2 distribution for a complete description of the new features. A copy of the relevant portions is included below.
This release fixes several outstanding bugs in bash-5.1 and introduces a number of new features.
There are a number of bug fixes, including several bugs that caused the shell to crash. Complete details are available in the CHANGES file.
The most notable new feature is the rewritten command substitution parsing code, which calls the bison parser recursively. This replaces the ad-hoc parsing used in previous versions, and allows better syntax checking and catches syntax errors much earlier. The shell attempts to do a much better job of parsing and expanding array subscripts only once; this has visible effects in the `unset' builtin, word expansions, conditional commands, and other builtins that can assign variable values as a side effect. The `unset' builtin allows a subscript of `@' or `*' to unset a key with that value for associative arrays instead of unsetting the entire array (which you can still do with `unset arrayname'). There is a new shell option, `patsub_replacement'. When enabled, a `&' in the replacement string of the pattern substitution expansion is replaced by the portion of the string that matched the pattern. Backslash will escape the `&' and insert a literal `&'. This option is enabled by default. Bash suppresses forking in several additional cases, including most uses of $( All the new features are described below.
Readline has new features as well. There is a new option: `enable-active-region'. This separates control of the active region and bracketed-paste. It has the same default value as bracketed-paste, and enabling bracketed paste enables the active region. Users can now turn off the active region while leaving bracketed paste enabled. Two new bindable string variables are available; their values are terminal escape sequences that set the color used to display the active region and turn it off, respectively. If set, these are used in place of terminal standout mode. Finally, Readline now checks for changes to locale settings (LC_ALL/LC_CTYPE/ LANG) each time it is called, and modifies the appropriate locale-specific display and key binding variables when the locale changes.
There are a few incompatible changes between bash-5.1 and bash-5.2. Here- documents and here-strings use temporary files if the shell compatibility level is 50 or lower. The `unset' builtin in bash-5.2 treats array subscripts `@' and `*' differently than previous versions, and differently depending on whether the array is indexed or associative. Bash-5.2 attempts to prevent double-expansion of array subscripts under certain circumstances, especially arithmetic evaluation, by acting as if the `assoc_expand_once' shell option were set. Set the compatibility level appropriately to revert to previous behavior; details are in the file COMPAT.
Bash can be linked against an already-installed Readline library rather than the private version in lib/readline if desired. Only readline-8.1 and later versions are able to provide all of the symbols that bash-5.2 requires; earlier versions of the Readline library will not work correctly.
A complete list of changes between bash-5.1 and bash-5.2 is available in the file CHANGES; the complete list is too large to include in this message.
Readline ========
Also available is a new release of the standalone Readline library, version 8.2, with its own configuration scripts and Makefiles. It can be retrieved with the URLs
ftp://ftp.cwru.edu/pub/bash/readline-8.2.tar.gz ftp://ftp.gnu.org/pub/gnu/readline/readline-8.2.tar.gz
and from the master branch of the GNU readline git repository (http://git.savannah.gnu.org/cgit/readline.git/log/) and the usual GNU mirror sites.
The formatted Readline documentation is included in the readline distribution tar file.
The changes in Readline are described in a separate announcement.
As always, thanks for your help.
Chet
+========== NEWS ==========+ This is a terse description of the new features added to bash-5.2 since the release of bash-5.1. As always, the manual page (doc/bash.1) is the place to look for complete descriptions.
1. New Features in Bash
a. The bash malloc returns memory that is aligned on 16-byte boundaries.
b. There is a new internal timer framework used for read builtin timeouts.
c. Rewrote the command substitution parsing code to call the parser recursively and rebuild the command string from the parsed command. This allows better syntax checking and catches errors much earlier. Along with this, if command substitution parsing completes with here-documents remaining to be read, the shell prints a warning message and reads the here-document bodies from the current input stream.
d. The `ulimit' builtin now treats an operand remaining after all of the options and arguments are parsed as an argument to the last command specified by an option. This is for POSIX compatibility.
e. Here-document parsing now handles $'...' and $"..." quoting when reading the here-document body.
f. The `shell-expand-line' and `history-and-alias-expand-line' bindable readline commands now understand $'...' and $"..." quoting.
g. There is a new `spell-correct-word' bindable readline command to perform spelling correction on the current word.
h. The `unset' builtin now attempts to treat arguments as array subscripts without parsing or expanding the subscript, even when `assoc_expand_once' is not set.
i. There is a default value for $BASH_LOADABLES_PATH in config-top.h.
j. Associative array assignment and certain instances of referencing (e.g., `test -v' now allow `@' and `*' to be used as keys.
k. Bash attempts to expand indexed array subscripts only once when executing shell constructs and word expansions.
l. The `unset' builtin allows a subscript of `@' or `*' to unset a key with that value for associative arrays instead of unsetting the entire array (which you can still do with `unset arrayname'). For indexed arrays, it removes all elements of the array without unsetting it (like `A=()').
m. Additional builtins (printf/test/read/wait) do a better job of not parsing array subscripts if array_expand_once is set.
n. New READLINE_ARGUMENT variable set to numeric argument for readline commands defined using `bind -x'.
o. The new `varredir_close' shell option causes bash to automatically close file descriptors opened with {var} p. The `$0' special parameter is now set to the name of the script when running any (non-interactive) startup files such as $BASH_ENV.
q. The `enable' builtin tries to load a loadable builtin using the default search path if `enable name' (without any options) attempts to enable a non-existent builtin.
r. The `printf' builtin has a new format specifier: %Q. This acts like %q but applies any specified precision to the original unquoted argument, then quotes and outputs the result.
s. The new `noexpand_translations' option controls whether or not the translated output of $"..." is single-quoted.
t. There is a new parameter transformation operator: @k. This is like @K, but expands the result to separate words after word splitting.
u. There is an alternate array implementation, selectable at `configure' time, that optimizes access speed over memory use (use the new configure --enable-alt-array-implementation option).
v. If an [N]<&WORD- or [N]>&WORD- redirection has WORD expand to the empty string, treat the redirection as [N]<&- or [N]>&- and close file descriptor N (default 0).
w. Invalid parameter transformation operators are now invalid word expansions, and so cause fatal errors in non-interactive shells.
x. New shell option: patsub_replacement. When enabled, a `&' in the replacement string of the pattern substitution expansion is replaced by the portion of the string that matched the pattern. Backslash will escape the `&' and insert a literal `&'.
y. `command -p' no longer looks in the hash table for the specified command.
z. The new `--enable-translatable-strings' option to `configure' allows $"..." support to be compiled in or out.
aa. The new `globskipdots' shell option forces pathname expansion never to return `.' or `..' unless explicitly matched. It is enabled by default.
bb. Array references using `@' and `*' that are the value of nameref variables (declare -n ref='v[@]' ; echo $ref) no longer cause the shell to exit if set -u is enabled and the array (v) is unset.
cc. There is a new bindable readline command name: `vi-edit-and-execute-command'.
dd. In posix mode, the `printf' builtin checks for the `L' length modifier and uses long double for floating point conversion specifiers if it's present, double otherwise.
ee. The `globbing' completion code now takes the `globstar' option into account.
ff. `suspend -f' now forces the shell to suspend even if job control is not currently enabled.
gg. Since there is no `declare -' equivalent of `local -', make sure to use `local -' in the output of `local -p'.
2. New Features in Readline
a. There is now an HS_HISTORY_VERSION containing the version number of the history library for applications to use.
b. History expansion better understands multiple history expansions that may contain strings that would ordinarily inhibit history expansion (e.g., `abc!$!$').
c. There is a new framework for readline timeouts, including new public functions to set timeouts and query how much time is remaining before a timeout hits, and a hook function that can trigger when readline times out. There is a new state value to indicate a timeout.
d. Automatically bind termcap key sequences for page-up and page-down to history-search-backward and history-search-forward, respectively.
e. There is a new `fetch-history' bindable command that retrieves the history entry corresponding to its numeric argument. Negative arguments count back from the end of the history.
f. `vi-undo' is now a bindable command.
g. There is a new option: `enable-active-region'. This separates control of the active region and bracketed-paste. It has the same default value as bracketed-paste, and enabling bracketed paste enables the active region. Users can now turn off the active region while leaving bracketed paste enabled.
h. rl_completer_word_break_characters is now `const char *' like rl_basic_word_break_characters.
i. Readline looks in $LS_COLORS for a custom filename extension (*.readline-colored-completion-prefix) and uses that as the default color for the common prefix displayed when `colored-completion-prefix' is set.
j. Two new bindable string variables: active-region-start-color and active-region-end-color. The first sets the color used to display the active region; the second turns it off. If set, these are used in place of terminal standout mode.
k. New readline state (RL_STATE_EOF) and application-visible variable (rl_eof_found) to allow applications to detect when readline reads EOF before calling the deprep-terminal hook.
l. There is a new configuration option: --with-shared-termcap-library, which forces linking the shared readline library with the shared termcap (or curses/ncurses/termlib) library so applications don't have to do it.
m. Readline now checks for changes to locale settings (LC_ALL/LC_CTYPE/LANG) each time it is called, and modifies the appropriate locale-specific display and key binding variables when the locale changes.
-- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, UTech, CWRU chet@case.edu http://tiswww.cwru.edu/~chet/

Other Recent Tux Machines' Posts

This Week in Plasma: Plasma 6.4 stabilizes
Welcome to a new issue of This Week in Plasma
Wine 10.9 Released
Wine 10.9 is out
Android Leftovers
New EU Rules May Force 5 Years of Android Updates to All Brands
Alpine Linux 3.22 Released with GNOME 48, KDE Plasma 6.3, and LXQt 2.2
The Alpine Linux team announced today the release and general availability of Alpine Linux 3.22 as another major update to this independent and security-oriented GNU/Linux distribution.
GNOME Foundation Report and This Week in GNOME
Some GNOME news
 
Open Hardware/Modding: Arduino, ESP32, and More
Hardware picks
FriendlyElec NanoPi M5 Offers RK3576, Dual LAN, MIPI-CSI, and 6 TOPS NPU
The board supports several operating systems, including Android 14, Debian 12, Ubuntu 24.04 (Desktop and Core)
today's howtos
idroot and more
Raspberry Pi Imager 1.9.4 Adds UI Improvements, New Translations, and Bugfixes
Raspberry Pi Imager 1.9.4 has been released today as the latest stable version of this user-friendly tool for creating bootable media for Raspberry Pi devices, which brings various UI improvements, new translations, and bug fixes.
Games: SteamOS, Modding Games, and More
11 stories for today
Sponsorships Seem to Be Coming to Arch Linux!
A proposal looks to introduce a transparent sponsorship process to Arch Linux
Stretch Break Linux App Reminds You to Stop Pixel-Gawping
Ubuntu 25.04 with GNOME 48 introduced new Wellbeing controls which
zplug is a next-generation plugin manager for zsh
This is free and open source software. It’s not actively developed
postmarketOS in 2025-05: Continuous testing, downstream split, niri, os-installer
We have a lot to talk about, but let's start with what you can see in the header image
VirtualBox 7.1.10 Is Out with Initial Support for Linux 6.15 and 6.16 Kernels
Oracle released VirtualBox 7.1.10 today as the fifth maintenance update to the latest VirtualBox 7.1 stable series of this popular, free, open-source, and cross-platform virtualization software for Linux, macOS, and Windows.
Today in Techrights
Some of the latest articles
Ubuntu Touch OTA-9 Released with VoLTE and Waydroid Improvements
The UBports Foundation released Ubuntu Touch OTA-9 today as the ninth stable update to their Ubuntu Touch mobile operating system based on Ubuntu 20.04 LTS (Focal Fossa) for supported Linux devices.
Android Leftovers
Google Maps for Android Auto expands directions, arrival time with new instrument cluster pop-up in some vehicles
Oracle Linux 9.6 Released with UEK 8 and Enhanced Security Features
Oracle Linux 9.6 is out now, featuring UEK 8, enhanced security
Ubuntu Touch OTA-9 Rolls Out With VoLTE and Waydroid Upgrades
Ubuntu Touch OTA-9 is out with VoLTE improvements
My Winter Of ’99: The Year Of The Linux Desktop Is Always Next Year
Wasn’t Linux the future of desktop operating systems?
6 things I wish I knew about Arch Linux before switching
I first tried Arch Linux to play around with Hyprland
I Turned a USB Drive Into a Linux App Swiss Army Knife
If you're like me, you have multiple devices running different Linux distributions
NST is a bootable ISO live USB flash drive
Network Security Toolkit (NST) is a bootable ISO live USB Flash Drive (NST Live) is based on Fedora
This is free and open source software
Klaro is a simple and fast translation app for KDE Plasma that helps you translate text between different languages
FreeBSD 14.3-RC1 Now Available
almost there now
Security Leftovers
Security picks
GNU/Linux and Free Software Leftovers
some more links for today
Programming Leftovers
Development picks
Audiocasts/Shows: Late Night Linux, Linux User Space, Destination Linux, GNU Manifesto
new video/audio
Open Hardware, Raspberry Pi, and More
hardware picks
Server Software: Kubernetes, Grafito, and More
FOSS updates
Games: DOOM, Godot, Crosswords, and More
4 gaming related picks
Programming Leftovers
only 3 for now
today's howtos
mostly from idroot
New in Red Hat's Site
redhat.com
Raspberry PI Pico W Weather Monitor with e-Paper
his tutorial will show you how to create a cool Raspberry PI Pico Weather Display with an e-Paper (e-Ink) monitor showing the weather status and forecasts
Liberux NEXX Linux phone with RK3588S and 32GB RAM hits Indiegogo
But the Liberux NEXX is a work-in-progress Linux phone that could be the most powerful to date
This Is My Favorite Video Editing App for Linux
After spending a considerable amount of time testing various video editors on Linux
OpenMamba: Eat your greens, they're good for you
OpenMamba is an independent Italian distribution which uses Fedora's packaging tools and offers a choice of KDE Plasma or LXQt
13 Time-Saving Linux Terminal Tricks You Should Be Using
When using the Linux terminal, we often make mistakes
Malicious Pull Requests? Not on Linus Torvalds' Watch
A new Linux kernel drama? Yes, but it's been handled
Games: Horripilant, shapez 2, XWVM, and More
8 items from GamingOnLinux
elementary OS 8 Updates Deliver New Dock Features
The team behind elementary OS recently detailed a number of improvements to recently roll out to users of the distro
Vgmi is a Gemini client written in C
This is free and open source software
Today in Techrights
Some of the latest articles
Turning 21 a Week From Now [original]
We want to extend our thanks to Susan again
Android Leftovers
EU’s new rules will shake up Android update policies
Linux App Release Roundup: May 2025
May has been and gone — but delivered another sizeable set of Linux app updates for us to enjoy
Audacious 4.5 Beta Brings New Plugins, Better PipeWire Support
The first beta of Audacious 4.5
Free and Open Source Software
This is free and open source software
AxOS is an Arch-based Linux distribution for the desktop
Built upon the foundations of Arch Linux
Revisiting X11 vs Wayland With Multiple Displays
Recently, during the soft freeze before the Plasma 6.4 Beta was released, I used mainly X11 on both my laptops
I finally found a visually-pleasing Linux distro that doesn't skimp on performance
If you're looking for a new distribution that's as functional as it is beautiful
Why I'm done with Firefox for good - and which browser I'm using instead
I've used practically every browser out there and keep coming back to Firefox-based browsers
Free, Libre, and Open Source Software Leftovers
FOSS bits for today
Programming Leftovers
Development stuff for today
GNU/Linux and Various Distributions and Operating Systems
today's leftovers
Games: New Steam Games with Native GNU/Linux Clients and More
gaming picks
BSD: Pledge, OpenBSD, and More
BSD Leftovers
Open Hardware/Modding: ESP32, Precision Clock, and More
hardware picks
today's howtos
half a dozen, mostly idroot
Games' Popularity, Developing Games, and Politics
gaming stuff
Debian Developers' Reports: Guido Günther, Ben Hutchings, Emmanuel Kasper
technical posts
Android Leftovers
Notification Cooldown is Finally Back in Android—Here’s How It Works
KDE is bringing memory optimizations and more to Plasma 6.5
The KDE team has released the latest issue of This Week in Plasma, and it's packed with goodies
Raspberry PI OS Lite vs Desktop: Comparison Between the Distributions
People new to the Raspberry Pi computer board world often ask themselves which Operating System to use on their new board
The reasons people hate Linux are why I love it
If you spend time talking to most Linux enthusiasts
Free and Open Source Software
This is free and open source software. It is not actively developed
Review: Picking up a Pico
In early April I shared that I'd been experimenting with an add-on device to the Raspberry Pi series of computers
Summer of GNOME OS
So far, GNOME OS has mostly been used for testing in virtual machines
Today in Techrights
Some of the latest articles