Yay Dion

I updated this DragonFly system from 1.12.1 to 1.12.2 Sunday night, and PHP (and therefore this WordPress-based Digest) stopped working. Dion (dblazakis in #dragonflybsd) found the reason and fixed it, for which I am very grateful.

I had a number of posts I had made ahead of time, so there’s no actual gap in posts from when the server wasn’t responding.  Make sure you catch the past few days of articles.

HAMMER, and lots of it

I have a number of HAMMER-related news items, so I’ll break out the bullet points:

  • We have a detailed explanation of how HAMMER’s pruning system will work – follow the thread for more details and ideas.
  • Matthew Dillon is trying HAMMER for his backup system. His original UFS system used hardlinks to keep all the backups together; the inodes used would be more than fsck could handle with that system’s RAM. HAMMER doesn’t need those hardlinks because of the snapshot ability, and completes the backup process much faster.
  • There’s also blogbench numbers comparing UFS and HAMMER; strangely, UFS sees a performance degradation when using a large number of files when HAMMER does not. This may mean a real speed advantage or a testing anomaly; it certainly deserves investigation.
Ports/pkgsrc at a smaller level

One of the big wins for BSD has been the packaging system.  It’s very easy to use ports or pkgsrc to download all the dependencies for a given application automatically, and even Linux tools like yum or apt-get handle this nowadays.

Ruby, Perl, Python, and etc. have the disadvantage that if you write a interpreted script that uses libraries not in the standard distribution of that language, users of that script need to perform additional software installation, assuming they have access to do so, just to run that script.  This is a major disadvantage compared to “compiled” software.  To overcome this, additional steps that turn the script and needed libraries into a single executable are required.

‘_why the lucky stiff’ has a solution that matches: Shoes, a Ruby GUI toolkit, goes and gets any needed libraries as part of its startup process. Why didn’t someone think of this 10 years ago so that it could be commonplace?

Old, old bug

I posted a little about this before, but here’s more prompted by several people mentioning it: a seekdir() bug found and fixed by Marc Balmer is apparently present in all BSDs, going back at least 25 years. 25 years! That’s older than some of you reading this post. His blog post delivers a very nice summary. (Thanks, Undeadly, Richard, Nega)

Advocacy for languages or operating systems

This Perl Buzz post talks about improving the perception and use of Perl, one of my favorite languages. I link to it in part because it’s well written, but also to suggest something: read the article, and substitute “BSD” everywhere you read “Perl”. The same suggestions apply.

The prime motivator for this digest was providing more of an atmosphere for DragonFly, and to some extent for the idea of BSD itself. Lots of people aspire to be a BSD developer/committer, when really what we need is someone having a conversation that involves BSD.