JSON is usually the least bad option for machine-readable output formats
Over on the Fediverse, I said something :
In re JSON causing problems, I would rather deal with JSON than yetanother bespoke 'simpler' format. I have plenty of tools that can dealwith JSON in generally straightforward ways and approximately nonethat work on your specific new simpler format. Awk may let me build atool, depending on what your format is, and Python definitely will,but I don't want to.
This is re:
This is my view as a
My (current) view on open source moral obligations and software popularity
A while back I said something pretty strong in a comment on my entryon the Linux kernel CVE story :
(I feel quite strongly that the importance of a project cannot createsubstantial extra obligations on the part of the people working onthe project. We do not get to insist that other people take on morework just because their project got popular. In my view, this is acore fallacy at the heart of a lot of "software supply chain security"stuff, and I think things like the Linux kernel
I used libvirt's '<code>virt-install</code>' briefly and it worked nicely
My normal way of using libvirt based virtual machines has been to initially create them in virt-manager using its convenient GUI, if necessaryuse virt-viewer to access their consoles, and use virsh for basic operations likestarting and stopping VMs and rolling VMs back to snapshots, whichI make heavy use of. Then recently I wrote about why and how Ikeep around spare virtual machines ,and wound up discovering virt-install , which is supposedto let you easily create (and install) virtual machines from thecommand
What a POSIX shell has to do with $PWD
It's reasonably well known about Unix people that '
$PWD' is ashell variable with the name of the current working directory. Well,sort of, because sometimes $PWD isn't right or isn't even set(all of this is part of the broader subject of shells and thecurrent directory ). Until recently, Ihadn't looked up what POSIX has to say about$PWD, and when I did I was surprised, partly because I didn't expectPOSIX to say
Some brief notes on '<code>numfmt</code>' from GNU Coreutils
Many years ago I learned about numfmt ( also )from GNU Coreutils (see the comments on this entry and then this entry ). An additional source of informationis Pádraig Brady's numfmt - A number reformatting utility . Today I was facedwith a situation where I wanted to compute and print multi-day,cumulative Amanda dump total sizes for filesystems in a readableway, and the range went from under a GByte to several TBytes, so Ididn't want to just convert everything to TBytes (
It's not simple to add function keyword arguments to Go
I recently read An unordered list of things I miss in Go ( via ).One of those things is 'keyword and default arguments for functions',which in the article was not labeled as requiring a major revisionto the language. In one sense this is true, but in another senseit's not, because adding keyword arguments to any compiled languageraises ABI questions. This is especially the case in Go, which is generallysupposed to be a low-overhead language in terms of how things arestored
A downside or two of function keyword arguments (and default values)
Recently I read An unordered list of things I miss in Go ( via ).One of the things is 'keyword and default arguments for functions',to which I had a reaction :
Hot take: having keyword arguments and optional arguments (and defaultvalues) for function calls in your language encourages people to makefunctions that take too many arguments.
(I can see why Python did it, because on the one hand class/objectconstruction and on the other hand, in a dynamic language it letsyou change
Why and how I keep around spare libvirt based virtual machines
Recently I mentioned in passing that I keep around spare virtualmachines , and in comments Todd quitereasonably asked how one has such a thing (and sort of why one wouldbother). There are two parts to the answer, a general one and alibvirt one.
The general part is that one sort of my virtual machines aredirectly on the network, not NAT'd , usingspecifically assigned static IPs. In order to avoid ever having twoVMs accidentally use the same IP, I pre-create a VM
FreeBSD's 'root on ZFS' default appeals to me for an odd reason
For reasons beyond the scope of this entry, we're probably goingto take a look at FreeBSD as an alternative to OpenBSD for some ofour uses of the latter. This got me to grab a 14.1 ISO image andtry a quick install on a spare virtual machine (I keep spare VMsaround for just such occasions). This caused me to discover thatmodern FreeBSD defaults to using ZFS for its root filesystem (althoughI didn't do this on my VM test install, because my
Workarounds are often forever (unless you work to make them otherwise)
Back in 2018, ZFS on Linux had a bug that could panic the systemif you NFS-exported ZFS snapshots .We were setting up ZFS based NFS fileservers and we knew about this bug, so atthe time we set things so that only filesystems themselves were NFSexported and available on our servers. Any ZFS snapshots on filesystems were only visible if youdirectly logged in to the fileservers, which was (and is) somethingthat only core system staff could do. This is somewhat inconvenient;we
Menu