fosstodon.org is one of the many independent Mastodon servers you can use to participate in the fediverse.
Fosstodon is an invite only Mastodon instance that is open to those who are interested in technology; particularly free & open source software. If you wish to join, contact us for an invite.

Administered by:

Server stats:

10K
active users

Alan Coopersmith

Today we've released 11.4.72, our quarterly feature update. The announcement is at blogs.oracle.com/solaris/post/ and lists the new features and software upgrades included.

In 11.4.72, setting the mountpoint of a clone to 'clonedir' will now cause that clone to be mounted under the head filesystem's .zfs/clone directory. Doing a mkdir of a clone name in the .zfs/clone directory will create a snapshot of the dataset and then clone it. The zfs(8) man page was updated with more information.

NFS mounts in 11.4.72 can now use the 'noresvport' option, similar to Linux, to use random port numbers above 1023 for connecting to NFS servers, which can be helpful when multiple clients are behind the same NAT gateway.

Since no Solaris systems existed before 1970, the timestamp field in the lastlog, utmpx, and wtmpx files in 11.4.72 has been redefined as an unsigned 32-bit int, where it was previously signed. This moves the range of possible timestamps from 1901–2038 to 1970–2106. The core OS software has been modified to reflect this, but other software may need changes to handle timestamps in these files with the highest bit set as being post-2037 instead of pre-1970.

The value of IOV_MAX in the <limits.h> header has been raised from 16 to 1024 in 11.4.72. This increases the number of members which may be passed in an iovec array in each call to the functions listed on the send(3c), recv(3c), write(2), and read(2) man pages. The higher value will also be returned when calling sysconf(_SC_IOV_MAX), except in Solaris 10 branded zones.

The umask(2) system call does not allow querying the current umask without specifying a new process-wide umask to put in place, making it problematic in multi-threaded programs. 11.4.72 adds a new getumask(2) system call to read the current umask value without setting it. A new pr_umask field was also added to the /proc/pid/psinfo file, and the pfiles(1) command has been modified to print the current umask value for the target process.

Packages removed from the package repository in the 11.4.72 SRU:
- gnome-common
- vino & vinagre
- libconfuse
- libtorrent and rtorrent
- Apache Tomcat 8.5
- Python 3.7

Tomcat 9.0, Python 3.9, and Python 3.11 are available to replace the removed versions.

Recent additions to the EOF list include:
- Snort
- GTK2
- perl 5.36
- Node.js 18
- yelp, devhelp & webkitgtk4

The full EOF list, as always, can be seen at oracle.com/solaris/technologie .

Also removed in 11.4.72 was the release note that previous SRU's had warning that the text installer would run out of memory with the documented minimum requirements of 4GB of RAM. The note was added after the Python 2->3 conversion of the installer, and removing it was done after a series of fixes, including changes in the kernel virtual memory manager, moving to Python 3.9, switching to rapidjson, and backporting github.com/python/cpython/pull to 3.9 so we could use posix_spawn().

GitHubgh-113117: Support posix_spawn in subprocess.Popen with close_fds=True by kulikjak · Pull Request #113118 · python/cpythonBy kulikjak

More details and more new features in 11.4.72 are provided in the "What's New in SRU 72" blog at blogs.oracle.com/solaris/post/

Diffs of the core OS man pages between 11.4.69 and 11.4.72 are at gist.github.com/alanc/6588edeb so you can see more about what changed in the software, as well as some of the documentation cleanups we did.

My personal contributions to 11.4.72 include cleanup/editing passes over section 4, 4fs, & 4i man pages; adopting the POSIX.1-2024 "manager" and "subsidiary" terms for ptys in our man pages; removing gnome-common, vino, & vinagre; tagging libvisual as legacy for removal in a later SRU; updating pinentry to 1.2.1 and enabling libsecret support in it; and correcting the dependencies in our xinit package.

For those who want to upgrade to 11.4.72 but who aren't ready to lose the Python 3.7 packages yet, Vlad has posted our new solution for handling that:
blogs.oracle.com/solaris/post/

@alanc vino & vinagre are the best names ever! It would be fun if "vino" were to be renamed to "vinagre" after the maintainer decided to stop supporting the software.

@lucasvr I don't know who in the GNOME project originally picked the Vino & Vinagre names for their VNC server & client, but I think they ended vinagre maintenance before vino, instead of letting the decaying vino turn into vinagre.

@alanc ha! Thanks for the context :-)

@alanc @lucasvr vino was started and named by Sun’s very own Mark McLoughlin. I think vinagre was originally the work of John Wendell, a Brazilian developer who works for Red Hat these days.

@alanc @lucasvr Those PNG attachments, for posterity…

@alanc

So basically time_t is now unsigned for ILP32 binaries? Nice!

@alanc

Though my birthday (which is oddly enough today) now falls outside of that range.

Viva LP64!

@danmcd Happy Birthday! And hopefully many happy returns past the end of the old range!

@danmcd not in general, since that has a lot of other implications. We just changed the structs for lastlog, utmpx, & wtmpx to use uint32_t instead of time32_t.

@danmcd it helped that all the software in the core OS that reads or writes those files is already converted to LP64, so we didn't have to invent new unsigned_strftime calls or anything, just let it handle the conversion from uint32_t to the 64-bit time_t without doing sign extensions.

@alanc I never understood why time_t is signed anyway...is there a good reason?

@olbohlen I don't know, my best guess would be they wanted to preserve timestamps when moving files/data from older systems.

@alanc thanks for continuing these announcements, I appreciate them!