Apple Silicon

I don't expect to have an ARM-based PC any time soon

The ARM-related news of the time interval is of course that Applehas announced several ARM-based Mac laptops and that early (andpreliminary) leaks are that they perform very well and are definitelycompetitive. This raises the great hope in many technical people'sminds of ARM based laptops and desktops from more than Apple, ARMPCs that would run more than Apple's OS X macOS. Thisis especially a dream for many Unix people, who already run littleor no commercial binary software and so in


Linux servers can still wind up using SATA in legacy PATA mode

Over the course of yesterday and today, I've been turning over aseries of rocks that led to a discovery :

One of the things that the BIOS on this machine (and others [of ourservers]) is apparently doing is setting the SATA ports to legacyIDE/ata_piix mode instead of AHCI mode. I wonder how many driver &hardware features we're missing because of that.

(The 'ata_piix' kernel module is the driver for legacy mode, while'ahci'


If you use Exim on Ubuntu, you probably want to skip Ubuntu 20.04

The Exim MTA (Mail Transfer Agent, akamailer) recently added a mandatory new security feature to 'taint'data taken directly from the outside world ,with the goal of reducing the potential for future issues like CVE-2019-13917 .Things that are tainted include not just obvious things like thecontents of message headers, but also slightly less obvious thingslike the source and especially destination addresses of messages,both their domains and their local parts. There are many commonuses of


Logging fatal exceptions in my Python programs is not enough

We have a few Python programs which run automatically, need toproduce very rigid output (or lack of output) to standard outputand even standard error, and are complex enough (and use enoughoutside code) that they may reasonably run into unhandled exceptions.One example is our program to report on email attachment typeinformation under Exim ; this runsa lot of code on untrusted input, and our Exim configuration expectsits output to have a pretty rigid format ( cf ).Allowing Python to dump out the normal unhandled


The problems inherent in building your own copies of software packages

In some quarters, it's accepted system administrator wisdom thatif you really care about a particular program you should be buildingyour own copy from the upstream sources instead of relying onwhatever may be supplied by your Unix distribution. I'm againstthis, but in the past I have been so on the grounds that this isa waste and a duplication of effort . Thesedays I think it's worse than that, in that there are potentiallysignificant problems if you build software packages yourself.As it happens


Getting the git tags that are before and after a commit (in simple cases)

When I investigate something in a code base, I often wind up wantingto know when a particular change became available in a release, orin general to know when it was made in terms not of time but ofreleases. Using release dates is both not reliable (since a changecan land early in a side branch and then be merged into mainlineonly much later) and a certain amount of pain (you have to look uprelease dates somewhere). For git-based projects, my general approachso far


Seriously using virtualization clashes with our funding model

In a comment on my entry on us needing to get experience withUbuntu 20.04 , Miksa pointedout the advantages of investing heavily in virtualization. Thesedefinitely exist, but among other practical issues, heavy investmentin virtualization clashes with our funding model, which you coulddescribe as 'erratic' or 'nonexistent'. Our equipment funding isquite erratic and as a result we have to buy stuff mostly inbursts .

A significant commitment to and investment in virtualization reallycalls for big servers, ones that have


Thinking about two different models of virtualization hosts

The conventional way to make a significant commitment to on-premisevirtualization is to buy a few big host machines that will each runa lot of virtual machines (possible with some form of shared storageand virtual machine motion from one server to another). In thismodel you're getting advantages of scale and also fluctuating usageof your virtual machines over time; probably not all of them areall active at once, so you can to some degree over-subscribe yourhost.

It has recently struck me that there


Turning on console blanking on a Linux machine when logged in remotely

When my office workstation is running my X session, I lock thescreen if it's idle, which blanks the display. However, if themachine winds up idle in text mode, the current Linux kerneldefaults keep the display unblanked .Normally this never happens, because I log in and start X immediatelyafter I reboot the machine and then leave it sitting there. However, ongoing world and local events have me workingfrom home and remotely rebooting my office workstation for kernelupgrades and even Fedora version upgrades . When


Console blanking now defaults to off on Linux (and has for a while)

For a long time, if you left a Linux machine sitting idle at a textconsole, for example on a server, the kernel would blank the displayafter a while. Years ago I wrote an entry about how you wantedto turn this off on your Linux servers , whereat the time the best way to do this was a kernel parameter. Forreasons beyond the scope of this entry, I recently noticed that wewere not setting this kernel parameter on our Ubuntu 18.04 serversyet I knew