Steve Kemp: I know how to make a Holy Bartender
I've made a new release of my sift IMAP utility, which now adds a few new types of rules:
- Match message bodies against regular expressions.
- Match recipients against regular expressions.
I've made a new release of my sift IMAP utility, which now adds a few new types of rules:
Regular readers may remember that I stood in the board election of Software in the Public Interest, the main democratic free software corporation, a few weeks ago. Well, the result is posted with David Graham and Jimmy Kaplowitz are re-elected. Well done and good luck to both.
Thanks to the other board members for running the election and restarting the voting machine as necessary. The postponed July meeting might happen in irc.oftc.net #spi today (Wednesday) at 1900UTC, but I expect they’ll announce it in the usual place before it happens.
Naturally, I’m disappointed that more news, members’ panels and the annual report weren’t attractive enough to get more votes, and that old untruths were being reposted to some forums, but I can’t get too upset about this year’s result because both elected candidates had fine manifestos. I’m glad that Jimmy Kaplowitz’s platform includes posting more news and look forward to seeing that.
Slightly worrying are the low turnout (down for the third year) and that over 80% of those few voters were from debian (my estimate). I’ve my suspicions why, but I’d love any non-voters to leave me a comment telling me why you think it is.
The apology: the summary of responses to my questions about SPI membership will appear next week because I made a mistake on one site, set the closing date a week late and I don’t see any way to edit surveys after they’ve opened. Oops. Sorry. (Now, if that site was running free software, I’d see if I could fix the user interface to allow previews.)
(Aside: I was going to include a bar chart of the voting, like last year, but Wordpress’s stupid post editor strips style attributes from li tags. I’ll go looking for that with a hack-axe Real Soon Now, before it causes me serious trouble.)
As some of you know, I’ll stop working on Galician translations (of everything) after Lenny is released (or after the end of October, if Lenny is not released before). Before that, I’m going to start documenting several aspects of my work on it in several blog posts. I’m not going to follow any particular order; when everything’s written, I’ll collate the documents and make them available together in a single coherent document.
Although it is written for the future Galician team, this work (even the final document) will be written in English. If it is a problem for anyone, I don’t want them as translators. And, also, this will make this document potentially useful for other teams.
The Grade-II-listed Grand Pier Weston-super-Mare has burned down. It was right in the centre of the next bay south from me, facing down the main street between the town centre and seafront, visible all the way around Weston Bay. There’s been a half-mile exclusion zone in the middle of town, but I’ve not been travelling that way today. I go past the pier four or more times a week. It will be very strange for it to be missing. Pictures by a nearby resident really capture the scale of the shock.
The pier is literally an icon, used for the WsM Forum that I help to run for the town. At least those landside towers are still standing. More reaction on WsM Forum.
Lenny has been frozen some four hours ago and still nobody blogged it yet, so I decided to break the news to those who care more about blogs and planets then old fashioned nice mailing-lists :-)
over 96% successfulhttp-addr.c: In function 'httpGetHostByName':
http-addr.c:464: error: invalid 'asm': invalid operand for code 'w'
http-addr.c:464: error: invalid 'asm': invalid operand for code 'w'
/trunk/n/ncurses/trunk/ncurses-5.6+20080713/ncurses/curses.priv.h:1417: warning: parameter names (without types) in function declaration
/trunk/n/ncurses/trunk/ncurses-5.6+20080713/ncurses/curses.priv.h:1418: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_nc_to_widechar'
authkeys.c: In function 'authencrypt':
authkeys.c:445: error: invalid 'asm': invalid operand for code 'w'
authkeys.c:445: error: invalid 'asm': invalid operand for code 'w'
Ryan kindly sent me a copy of the ACPI tables for his motherboard, so I've had the opportunity to look at them in a little more detail. There's nothing especially surprising. The first method of interest is OSFL, which I've annotated below:
Method (OSFL, 0, NotSerialized)
If (LNotEqual (OSVR, Ones))
Return (OSVR)
This block simply skips the checks if they've already been evaluated and returns the cached value
If (LEqual (PICM, Zero))
Store (0xAC, DBG8)
If the programmable interrupt controller has been set up in PIC mode rather than APIC mode, 0xAC is written to i/o port 0x80. This would then show up on a plug-in card if one were attached. Simply debug code
Store (One, OSVR)
Set OSVR to 1, which in this case clearly means "Unknown OS"
If (CondRefOf (_OSI, Local1))
This checks whether the OS supports the _OSI method. If it does, the following block is executed. If not, the older _OS method is used to detect the OS
If (_OSI ("Windows 2000"))
Store (0x04, OSVR)
Newer versions of Windows will also claim to support the interfaces defined in older versions, so this set of checks is done in release order
If (_OSI ("Windows 2001"))
Store (Zero, OSVR)
If (_OSI ("Windows 2001 SP1"))
Store (Zero, OSVR)
If (_OSI ("Windows 2001 SP2"))
Store (Zero, OSVR)
If (_OSI ("Windows 2001.1"))
Store (Zero, OSVR)
If (_OSI ("Windows 2001.1 SP1"))
Store (Zero, OSVR)
If (_OSI ("Windows 2006"))
Store (Zero, OSVR)
If we've got this far, OSVR is now set to 0. Linux will claim to support all of these interfaces, and so OSVR should be 0 on Linux systems. Note that there is no _OSI check for Linux - the 2.6.24 change to remove Linux from the set of claimed interfaces is therefore irrelevant
Else
Linux supports _OSI, so we should never be here. But if we somehow are...
If (MCTH (_OS, "Microsoft Windows NT"))
Store (0x04, OSVR)
Linux has responded to _OS with "Microsoft Windows NT" since 2.6.9. MCTH is simply a string matching routine defined elsewhere in the DSDT. So, worst case here is that OSVR is 4
Else
If (MCTH (_OS, "Microsoft WindowsME: Millennium Edition"))
Store (0x02, OSVR)
If (MCTH (_OS, "Linux"))
Store (0x03, OSVR)
..because this could never be true unless you're running 2.6.8.1 or earlier. But even so, getting here would still indicate failure - we've supported _OSI since before then, and so should never come anywhere near this code block.
Return (OSVR)
In summary, we end up with the following values:| Value | OS |
| 0 | Windows XP, 2003 or Vista. Linux (assuming absence of bugs) |
| 1 | Unknown OS |
| 2 | Windows ME |
| 3 | A version of Linux that doesn't implement _OSI and is from before 2.6.9 |
| 4 | Windows NT 4 and 2000. A version of Linux that doesn't implement _OSI and is 2.6.9 or later (I don't believe any such version exists |
If (LEqual (OSFL (), Zero))
Store (0x59, SMIC)
Else
If (LEqual (OSFL (), 0x04))
Store (0x5A, SMIC)
Else
Store (0x58, SMIC)
This writes different values to SMIC (which turns out to be i/o port 0xb2) depending on the OS. 0xb2 is the standard(ish) way to trigger a system management interrupt, which causes the CPU to execute some code from a memory region that can't be accessed by the OS. This isn't that unusual, but it's a little weird. In any case, note that there's no check for whether OSFL is 3 here (which would be true if the _OS call returned Linux), and so Linux is being treated identically to Windows ME and any unknown OS. In reality, Linux will be treated identically to either Vista or 2000. This block provides no evidence of conspiracy. Finally, the OS version flag is written to a region of memory before suspend and read back afterwards. Nothing appears to be done with this information - it's conceivable that the low-level resume code in the BIOS has conditionals based on this, but I suspect that it's just boilerplate code that's ignored.
As an update to this, it turns out that I can't read and talking about _OSI isn't very helpful when the DSDT in question is calling _OS, but it does leave me somewhat more confused - Linux has claimed to be Windows NT since approximately forever. Without the original DSDT I've got absolutely no clue what's going on, but comments like:
For a week now, I couldn t get rid of this smile on my face (again).
Another point release for Etch has been done; now it's the time for the CD
team to roll out new images after the next mirror pulse. The official
announcements (prepared by Alexander Reichle-Schmehl, thanks!) will follow
shortly afterwards. FTP master of the day was Joerg Jaspert, who
did his first point release since Woody, as he told us on IRC. We
appreciate your work and you spending your time that shortly before
going to Argentina.
This point release includes the etchnhalf update introducing a new kernel
image (based on 2.6.24) and some driver updates. Additionally the
infamous openssl hole will be fixed for good, even for new installs.
Again I want to present you a list of people who contributed to this
release. It cannot be complete as I got the information out of the
Changed-by fields of the uploads.
This weekend, I will be mostly watching the Tour de France. It’s been a very good tour for software and cooperatives. Look at the current leaderboards:-
Sometimes things like these happen. Noone really did expect it, but it did: blosxom Version 2.1 got released by the new Upstream Team. It does incorporate all previous Debian patches which I'm quite happy about, and contains other long standing and needed fixes and changes.
Though, there is also a tiny drawback in that, especially for the Debian package: some of the changes might not be totally approved by all the users of the Debian package. This is unfortunate, but it had to be done to get the package finally yet in a cleaner state (maybe you remember the cleanup run when I originally took over the package). Please be sure to read the NEWS.Debian entry (apt-listchanges might help here) about the most important changes, one of them might even mean that upgrades to this package will flood planets. This is extremely unfortunate but for getting things clean unavoidable:
blosxom (2.1.0-1) unstable; urgency=low
* This update is a major switch, all local patches have been incorporated
into upstream version again. Furthermore, html and rss flavours are now
included in the blosxom script directly and the old 1993 and index
flavours are not included anymore, to get rid of some further historical
annoyances with the packaging.
* MOST IMPORTANTLY: This update adds a new tag into rss feeds:
<guid isPermanentLink="true"> which helps to notice duplicates and not let
them appear again on planets. Though, for the time of switching it might
mean that your last entries might appear as new when planet doesn't check
<link> (which already should be cached) when finding <guid>. This is
unfortunate but not really avoidable. To limit impact a new plugin was
added: 00RssLimit which turns the syndicated feed in only pick up the last
5 entries.
* The plugin timezone got disabled and gets only installed into a new
/etc/blosxom/plugins-available directory which is the first step to the
planned blosxom-plugins package. If you found it useful and made use of it
just symlink it from the plugins directory.
-- Gerfried Fuchs <rhonda@debian.at> Fri, 25 Jul 2008 16:19:49 +0200
Technically it means you might want to tweak the included 00RssLimit plugin to even just 1 until you blogged some more and raise it with time if your blog runs through some planet. If you do the upgrade, did set 00RssLimit to 1 and do not reappear with your last entry on your planet sites feel free to switch it back.
Again, this is an unfortunate situation, and it's not really related to the Debian package only–the addition of the <guid> tag happened upstream and will affect all users of blosxom. It's just that I added the selfwritten 00RssLimit plugin to reduce the impact for the Debian users. Hope you don't mind. ;)
Ah yes, and if you might ask where the package is: I did put it into my website for now so people have some time to stumble upon this blog entry before they install the package from unstable without prior notice and maybe not even using apt-listchanges. I will upload the package within the next day.
Next.