pkgin, the binary pkgsrc manager similar to apt/yum, is now at version 0.4.0. You can get it now if you use pkgsrc-current, or just wait for the next quarterly pkgsrc release.
Do you have a Western Digital model 1021 external disk drive? Matthias Rampke does, and he found he had to make some USB quirk entries to get it to work reliably.
The tmpfs(5) filesystem now runs without multiprocessor locks. Yay! Another hurdle down.
ps now has a new option: -R. This lists processes in order by parent/child status, and indents to make it visually clear. It looks like this. I wish someone had done this 15 years ago.
As Matthew Dillon notes in a recent post, procedures are now assumed to be MPSAFE (i.e. without the Giant Lock) by default. Any new work should follow this idea, and it doesn’t have to be documented specially. The inverse used to be true, where the code that happened to work without the Lock was rare, and therefore needed to be pointed out. Now, the good result is the norm.
The winners of Google Code-In have been posted. They win a trip to Google (remember, they are 13-18 years old) and an impressive item on their resume. And yes, some of those names there worked on DragonFly projects.
Nuno Antunes has been working on upgrading netgraph(4) to version 7. His initial patches are available for testing.
I’m going to just title these “Lazy Reading” – I end up with too much diverse information/links to fit within the title.
- Neal Stephenson’s thoughts on UNIX. (via)
- Also stolen from the same place: A comparison of text-based browsers.
- Have I mentioned clicky keyboards before? (yes) If you’re a fan of the IBM Model M-style buckling spring keyboard, this Apple keyboard review has links in the comments to clickykeyboards.com and pckeyboards.com, which both have options that may interest you. I’ve only linked one of those before.
- Robot orders coffee. (Youtube, via) The interesting part is that it’s relatively humdrum.
- Modern Perl is now available (free) in ePub format, in addition to PDF. I’ve been reading it; it’s a refreshingly straightforward book.
- It’s always nice to see DragonFly ideas spread.
- You may have heard of Debian GNU/kFreeBSD, the incredibly-awkwardly-named Linux kernel with FreeBSD userland FreeBSD kernel and GNU userland. (How did I manage to reverse that?) Did you know there’s a blend of Linux and NetBSD called SSDLinux? (via) It’s sold on commercial products! I know nothing of it past that link. Come to think of BSD mixes, there’s also that XNU/FreeBSD/NetBSD mix…
- Your DragonFly Pro Tip for the day: always use serial numbers to ID your disks. You’ll be glad you did.
- Git as a backup disk index mechanism. Strange. Git for mail storage, too. (via)
Matthew Dillon’s made fork() and exit() (mostly) multiprocessor-safe. It’s only two calls, but both are very frequently used. One more step closer to removing the Giant Lock…
Peter Avalos went looking for updates to /bin/sh, and found a lot of them, including regression tests. Even though sh is… 15 years old? Older? It dates back to BSD 4.4 and before – anyway, it’s been around forever, but there’s still things to do with it.
Matthew Dillon’s made some scheduler changes, which blogbench tests are showing give the default scheduler better performance under heavy load. It’s a pretty technical writeup, so I’ll just point you at it rather than attempt to summarize.
So, I felt lucky recently. I updated shiningsilence.com from DragonFly 2.6 to DragonFly 2.8, and wanted to upgrade my pkgsrc packages from pkgsrc-2010Q3 to pkgsrc-2010Q4.
You can do this with pkg_rolling-replace, or various other tools, but I wanted to see if I could do it completely with binary packages. I used pkg_radd -uv <pkgname> for each of the major packages I had installed.
Surprisingly, it worked, for every package. I had to force-install some Perl modules because I was moving from 5.10 to 5.12, but I think I may have been able to use an additional -u switch to get by that problem. I did use pkg_leaves to identify packages I didn’t need, and removed them to reduce the number of items to upload.
It was exactly what I wanted. Previous pkgsrc upgrades had taken most of a day, as I had to build from source and figure out what went where. We’ve had a better success rate in bulk builds recently, and this paid off in an upgrade process that only took perhaps an hour.
If you’re interested in mentoring for DragonFly and Google Summer of Code for 2011, please speak up. You don’t have to mentor if you don’t see any projects you like – I just need an initial count for the application. If you don’t want to mentor at all, but you’ve got ideas: there’s a place to tell people about it.
Peter Avalos updated OpenSSL to 1.0.0d, due to a recently discovered bug. He’s also brought the fix back to DragonFly 2.6 and 2.8, so it’s available for most anyone.
BIND version 9.5 has reached End of Life status. In fact, it did it some time ago. However, net/bind95 in pkgsrc has just been deleted. Update to 9.6/9.7, if you still had9.5 in place.
This is one of those scenarios that I’m noting because it might bite someone, some day: if your root partition is encrypted, you can’t fit in a different keymap. However, kernel options to build in a different keymap will fix this issue.
If you’ve ever installed pkgsrc packages from source, you probably typed ‘bmake install’. There’s a ‘bin-install’ target that will use binary packages if they are available, but you have to set the appropriate environment variables to do so.
It’s now much easier, on DragonFly. If you have pkgsrc-current as of yesterday or later, or pkgsrc-2011Q1 when it arrives, you can type ‘bmake bin-install’ for a pkgsrc application and it will download the binary package automatically, if it’s available, and build from source if it’s not.
This is a setup I’ve wanted for a while – the speed of a binary install, plus a fallback if the binary isn’t available.
If you’re using the binary pkgsrc package installer pkgin, version 0.4 is available for testing.
They’re finally uploaded! See my rather lengthy post about it on users@ for all the details.