We’re in the picking and choosing stage of Summer of Code. I posted a note to kernel@ describing the next dates to watch for.
New builds of dports have been uploaded and updated, for x86_64 and i386. (x86_64 was already done; I linked the note about i386) This means you can change PACKAGESITE in /usr/local/etc/pkg.conf to point at LATEST instead of RELEASE and get newer packages. ’pkg upgrade’ is all it takes, with dports.
The May issue of BSD Magazine is out with a number of pf articles, plus others.
Super-compact links week!
- New Vim 7.4, soon. It’s mostly because the patchlevel is going to exceed 999.
- 10 Golden Rules for Making the Perfect Cup of Tea. (via I forget)
- Stop Avoiding Regular Expressions Damn It. Iffy example, but correct sentiment. (via)
- Ode to a shipping label. (via)
- The Luck of the Listserv. (via)
- Introduction to Machine Code for Beginners. (PDF) (via)
- DragonFly-specific improvements in the Phoronix test suite.
- Hand-drawn Emacs instructions, and printable. (via)
The other bit is that, having just released an Absolute OpenBSD update, his Absolute FreeBSD book will not see an update… until the FreeBSD installer gets more coherent.
(If you manage DNS in any fashion, buy DNSSEC Mastery.)
From the man page: “The tpm driver provides support for various trusted platform modules (TPM) that can store cryptographic keys.” Crypto keys stored in hardware, where they are in theory unmangleable, instead of on the disk. At least, that’s my impression after 30 seconds of research.
Michael W. Lucas recently wrote and self-published a new book, DNSSEC Mastery. He asked me to review it, and I’ve been reading it in bits and starts over the past few very busy weeks.
First, the background: If you’re not familiar with the acronym, it’s a method of securing DNS information so that you can trust that domain name information is actually from the machine that’s supposed to provide it. DNS information is basic to Internet operation, but it traditionally has been provided without any mechanisms to deal with misinformation or malicious use. This seems to happen with protocols that have been around for many years, as any mail administrator can tell you…
In any case, ‘DNS poisoning’ (or as Wikipedia calls it, ‘DNS Spoofing‘) attacks such a basic part of how the Internet works that it will completely bypass any security methods that assume name information is correct. DNSSEC is a way to deal with that. It introduces public-key encryption into the process of sharing and updating DNS information. The idea has been around for a while, but it’s only been completely implemented recently.
DNSSEC Mastery goes over this history, and through the setup required to get (recent) BIND working with DNSSEC. Lucas seems to be starting a series of ‘Mastery’ books, where he covers all the territory around a specific topic. This one, like his previous title, is exactly what it says. As long as you have some existing clue around zone files and DNS, the book will take you from no DNSSEC at all to fully implemented in less than 100 pages. (well, at least in the PDF version, but that gives you an idea of the size.)
Use it to learn, or use it as a quick reference – either way will work. If you have any DNS server(s) to manage, you’re the target audience. I expect DNS without these security extensions will go the way of telnet vs. ssh.
A book covering things like new encrypted hash zone record types is going to be a bit dry, but there’s an appropriate sprinkling of humor through the book. I’ve reviewed other Lucas books before, and I’ve got another on my plate right now, but this is the same: there’s plenty of funny to make the lessons go down easier.
I’m inexplicably short on links this week; I blame my schedule/the nice weather for much for much of the U.S./the class I’m teaching ending/my trip to TCAF for this. More Lazy Reading next week! Meanwhile, I have a book review coming up as an alternative.
Lots of links, not a lot of commentary, this week. Enjoy!
- What is your most productive shortcut with Vim? The first very extensive answer is actually all vi, not vim. (via)
- Found via previous link: vi / vim graphical cheat sheet.
- The site where that image site sells a vi emulator for Visual Studio/Word/Outlook. I can totally understand why you’d want that.
- Memory of a Broken Dimension, a game that starts as a command-line shell and breaks out into a 3D glitchy world. This is what Tron should have been. Mac/Windows only right now, unfortunately. (via)
- TCP Headers in Lego. (via)
- The History of ASCII art. (via)
- QWERTY, DVORAK, KALQ.
- “Hey, a dot out!“
Your unrelated link of the week: Baman Piderman. It’s a series of Youtube videos. Just… roll with it.
I’ve put the 3.4 release images up on terasaur, a Bittorrent seeding site. Please try pulling them and let me know how it goes. I haven’t torrented many things, so I am unsure how to even verbify “torrent’. Hopefully that sentence and those links work out.
If you’ve ever wondered about how you can resize/move a HAMMER filesystem, follow this thread for a variety of answers.
It’s been 2 years since the pkgsrc packages for DragonFly 2.12/2.13 were getting updated, so I am going to remove them. If you’re running DragonFly 2.12, you’ll want to either build from source or upgrade DragonFly.
‘william opensource4you’ posted a summary of the steps he took for setting up a DragonFly system with XFCE4, using dports. It’s pretty straightforward, and thanks to dport’s binary nature, should be exactly reproducible.
John Marino brought up a point every operating system project will have to think about: when does support for i386 (i.e. 32-bit x86 processors) stop? Follow the thread for details. There’s no final answer, yet.
As posted in my email to users@: Version 3.4 of DragonFly is officially out.
The release ISO/IMG files are all available at the usual mirrors:
The release notes have details on all the changes:
If you are planning to try the new dports system for installing third-party software, check the DPorts Howto page:
If you have an installed DragonFly 3.2 system and you are looking to upgrade, these (not directly tested) steps should work, as root:
git fetch origin
git branch DragonFly_RELEASE_3_4 origin/DragonFly_RELEASE_3_4
git checkout DragonFly_RELEASE_3_4
… And then go through the normal buildworld/buildkernel process found in /usr/src/UPDATING. If you are running a generic kernel, that can be as simple as
make buildworld && make buildkernel && make installkernel && make installworld && make upgrade
(and then reboot)
If you encounter problems, please report them at bugs.dragonflybsd.org. I get better at testing for each release, but I also get better at discovering new problems just after release.
These are getting denser and denser with links, in part because I’m looking harder and in part because Hacker News is becoming a better and better source of links; there seems to be a new go-to site for tech links every 8-12 months. Slashdot, then Digg, then Reddit, then Hacker News…
- Intel has published a HTML5 development environment. I don’t even know if it would work on DragonFly or even any BSD, but I feel efforts to make tools that are actually, genuinely, crossplatform should be looked at. Defensive platform-specific content seems to still be a thing.
- The Eternal Mainframe. The argument is a little wild-eyed, but the underlying thesis: “Cloud == Mainframe” is valid. (via)
- A Primer on IPv4, IPv6, and Transition. I signed up for an IPv6 tunnel recently, but I’m not directing traffic over it. I should be. (via)
- How to make Your Open Source Project Really Awesome. The title is linkbaity, but the steps listed are correct. You will look at the “If you want to completely screw your users…” notes and nod to yourself, recognizing something that bit you. (via)
- There’s still Apple ][ software being sold. I vaguely feel like I bought from there before… (via)
- Everything’s being put into a git repo these days. (via) Wait, spoke too soon. (thanks, ‘bla’ in comments)
- Scaling Pinterest. I like seeing what technology is used as a site transitions from “oh yeah, running on leftover hardware in my basement” to “we need to hire yet another person to keep this all running”. (via)
(Did I just sneak in two unrelated links? Yes I did.)
As I described in a post to the kernel@ mailing list, the DragonFly 3.4 images are getting uploaded for mirroring and downloaded for testing. Assuming no surprises happen, we will be able to release very soon.
For those of us still on IPv4 networks, the BSD-specific OpenGrok site bxr.su should now be available in general, not just on IPv6.
The April 2013 issue of BSD Magazine is all about FreeNAS. I mean, every article is FreeNAS related. If you’re curious about the product, this is the place to start. (The magazine is also now available in ePub format in addition to PDF.)
Does FreeNAS count as another BSD flavor, rather than an appliance? I’m not sure.
Now’s the time to put in your application for Summer of Code projects, if you’re a student. The application period runs until May 3rd. There’s already been some proposals on the mailing lists; now they can be put in officially.
I’ll point out the last link is from a returning GSoC student, and has a lot of detail; use that as an example if you’re thinking about your own application.
I think spring has arrived; everything’s turning green, and a young man’s thoughts turn to computer hardware upgrades. Time to move to 64-bit! Anyway, lots of links this week. These are getting more and more content-filled over time, but I don’t think anyone minds…
- For the Bitcoin enthusasts: ‘…when my wife refuses to bring him cake on our sofa, he calls it a “denial-of-service attack”’ (via)
- Make It So, coverage of computer interfaces from movies. I always thought that was what Enlightenment was trying to achieve: the Interface From The Future. (via several places)
- Same computer interface topic, but from anime movies. It would be nice if this became something people actively worked on, instead of Bitcoin selling and Facebook monetizing. (via)
- Flat icons/monochromatic icons seem to be another microtrend. This is probably because few people do small dimensional icons well. My favorite was always the BeOS set.
- On benchmarks. It says what you should already know, but I like the Phoronix/MD5 benchmarking joke. (via EFNet #dragonflybsd)
- This article titled “The Meme Hustler” draws a finer line than I’ve seen before between “open source” and “free software”. The author, Evgeny Morozov, seems to also have a hate-on for Tim O’Reilly. See some reviews of a recent Morozov book for a counterpoint, of sorts.
- Spacewar championship, 1972, in Rolling Stone. Exactly two years before I was born! At this point, finding things older than me makes me a bit happy. There’s a picture of a Dynabook in there, photographed by Annie Liebowitz. It’s entertaining to read this 40-year-old story and see how well it predicts the future. I’m also sort of amazed it exists, in Rolling Stone. More Spacewar links here.
- Meet the Web’s Operating System: HTTP. ”Because HTTP is ultimately the one social contract on the web that, amidst a million other debates over standards, rules, policies, and behavior, we have collectively agreed to trust.” (via)
- Ancient computers in use today. I’ve linked to a story about that IBM 402 before, but the following pages about VAX and Apple ][e systems are new. Well, new to read, certainly not new hardware. (via)
- Yahoo Chat! A Eulogy. The spray of forbidden words is an entertaining acknowledgement message. (via)
- The $12 Gongkai Phone. Bunnie Huang breakdowns are always fun, and he’s describing a strange sort of open source that isn’t through license. (via)
- The FreeBSD Foundation is looking to hit a million dollars donated this year, which seems quite possible given last year’s performance. Donate if you can; their activities help the whole BSD community.
- A Complete History of Breakout. It’s not actually complete, but that’s OK. It includes Steve Jobs being a jerk and Steve Wozniak being very clever, which is their traditional roles. (via)
- Ack 2.0 is out. It’s a very useful utility; I’d like to see more standalone utilities created this way.
- Space Claw, Flickr via BBS. You’ll need telnet. (via)
Peter N. M. Hansteen has a long writeup about using and creating ports on OpenBSD, which is apparently a reprint of an article he wrote for BSD Magazine back in 2008. I don’t remember if I read it, so it’s new to me, in any case. Port and package creation across the BSDs is juuuust close enough that reading about one version will leave you with a good guess about the others.
John Marino has a concise explanation of why dports mostly uses gcc 4.4 still to compile, even if you’re building DragonFly itself with the default 4.7. It’s a reason to not use NO_GCC44 – yet.
Eric Radman sent along a plug for a utility he is working on called entr(1). The desciption is “Run arbitrary commands when files change.” The site for it has several nifty examples – run make when *.c files change, or convert Markdown files to HTML as soon as they are modified. The really nice thing about it is that it’s perfectly BSD-friendly, and uses kqueue, but will also work on Linux. This beats the “This runs on the one flavor of Linux I use, in one particular shell!” approach I’ve seen from some other developers. See the reddit discussion of it for comparisons to inotify.
No, it’s not in pkgsrc/ports yet.
This is interesting: Verisign is sponsoring a new BSD convention (PDF link) in October, in Dulles, Virginia, USA. Apparently the use of BSD systems at the company is increasing, and they want to host something for it. The pkgNG presentation may be very interesting for DragonFly users. See the announcement. A new convention to support increased BSD uptake is really a nice surprise.
NASA’s International Space Apps Challenge is this weekend, 4/20/2013. Fancy as it sounds, it’s really a single-day hackathon around open software and hardware, with the problems to fix coming from NASA and therefore probably very unique. It’s happening in a bunch of places around the world, but there’s one right here in my town.
Peter Hansteen has an extensive writeup of how he has managed the bsdly.net spam blacklists. Normally I’d stick this article in the Lazy Reading links, but the article is good enough to call out separately. It’s excellent not just for the mechanical aspects of how the blacklists were maintained, but for his strict description on how the process is simple, verifiable, and transparent. That last item, transparency, is how many anti-spam groups fall down.
We are very close to the next release. As always, it comes down to building third-party software. Lots of material here to read, until then.
- E-TeX: Guidelines for Future TeX Extensions – revisited. It’s interesting to look at a software project that has had 20 years to run, with a very specific problem domain, and see that there’s always something more that could be done. (via)
- You SHOULD CONSIDER RFC6919. (via)
- The largest computer ever built. Why are there no SAGE emulators? (also via)
- The newlisp.org logo is a dragonfly, similar to ours. I don’t know why. Oh, wait: I bet it’s parentheses for the wings, which makes sense for Lisp. (thanks, Charles Rapenne)
- UNIX V5, OpenBSD, Plan 9, FreeBSD, and GNU coreutils implementations of echo.c. Not necessarily a fair comparison, but interesting; there’s some useful links in the comments, such as this similar exercise for cat.c. (via)
- Top 10 reasons I Like Postgres Over SQL Server. SQL Server is not that bad a product, but I do wish Postgres was run more often.
- Our Regressive Web. A story on how we’re losing the tools that let us focus on content on the web. The author doesn’t say, but should, that this is partially because we’re using platforms owned by other companies (Facebook, Twitter) instead of talking on our own. (email, blogs) (via)
- The earliest known version of D&D, the “Dalluhn Manuscript“, is on display at a museum right around the corner from me. (via)
- Workflow in Tmux. (via)
Here’s a status report on the 3.4 release, pulled right from my mailing list post:
- We have the ability to use pkgsrc or dports (building from source in either case) now
- Several people have committed the remaining last-minute fixes
- I’m not going to have pkgsrc binaries built for the release.
- dports binaries – John Marino and Francois Tigeot are uploading now.
I’d like to have the release available with binary packages for dports immediately, because I anticipate a number of people wanting to try it out. So, the release will be delayed a few days while the packages upload.
DPorts is based off of FreeBSD’s ports, but it’s possible to add software packages to it that don’t exist in FreeBSD’s ports system and have them build as any other packages. This is briefly detailed in this GitHub bug report, along with a number of the ports that already exist that way.
For anyone who is a student considering Google Summer of Code this year: this timeframe we’re in right now is listed by Google as time for “students discuss project ideas with mentoring organizations”. This is the perfect time to find out what the people in an organization are like, and get early feedback on your project ideas.
Chances are, if you’re submitting a proposal for an idea from an org’s project list, you’re one of a number of students all trying for the same thing. The best way to get accepted instead of any other applicant is to be the person they already know.
BSDTalk 244 is Marshall Kirk McKusick and George Neville-Neil talking about the FreeBSD Foundation, for a generous half-hour.
The DragonFly page on the Summer of Code site is set up. If you are a potential mentor that I’ve talked to before, I’ve already sent you an email with details. If you are a potential mentor I haven’t talked to, you can email me or send a request via the DragonFly page. (Google has a new ‘connections’ method for signup this year.)
If you’re an interested student, take a look at the DragonFly Projects Page. Keep in mind that your proposal does not have to be one of those ideas – new projects are always welcome, and often have the advantage of being unique instead of being one of several similar proposals. (hint, hint)
We’re accepted! The application requirements, etc. will be up on the Google Summer of Code site as soon as I can fill out the forms.
It’s a week past Easter and I’m actually tired of eating chocolate. I never thought I’d say that.
- On fat men and jellybeans, about how the press is reporting DDOS attacks. Related: Reporting on tech stories is very difficult; there’s very little photogenic material. I’d love to have more pictures on the Digest, but what would I show?
- Lisp: A Language for Stratified Design. (PDF) There’s got to be a few readers that will find this a very enjoyable read. (via)
- If you’re using Google Chrome, check your extensions list. Even though it’s not supposed to be possible, I had an spyware extension auto-install itself, from a page that I was going to link here – but now will not.
- Music From Mathematics. Electronic music created with an IBM 7090. (via)
- At first I was like “Yeah, yeah, another terminal emulator”, but then I watched the demo movie for Terminology and was quite impressed. It doesn’t seem to exist in dports/pkgsrc yet. (also via)
- April 1st always leads to a number of announcements of varying quality. I like OpenBSD’s announcement, though.
- The Untold Story behind Apple’s $13000 Operating System. The article hypes up something that wasn’t that exciting, but I like the pictures of the old Apple ][ material. (via)
- Everyone Who Tried to Convince Me To Use Vim Was Wrong. Spoiler: he uses Vim. But: The author makes a very good point about how to get there. (via)
- How the Chess Set Got Its Look and Feel.
- HOWTO turn your shell prompt into a hamburger. The advice is for a Unicode-friendly Mac shell; don’t know if this works on DragonFly. (via)
- Start talking about nail polish, finish by talking about the limited 16-color palette of early PC computers. (via)
- Hello World cake. Based on a programming language called Chef where programs look like recipes. I can’t even make these things up. (via)
- Dragonflies are Monsters.
Your unrelated link of the week: nothing. I didn’t find anything off-the-wall enough to use here. Geez.
It looks like Postgres versions less than 9.0 are going to be removed from pkgsrc soon. Be ready to update, if you are running one of those extremely older editions.
Constantine Aleksandrovich Murenin has put together a new site, bxr.su. His announcement to users@ goes into a lot of detail, but here’s a preview: it’s an OpenGrok site that has a forked version of OpenGrok that’s both speedy and takes BSD into account, along with other nice features.
Here’s the catch: it’s currently IPv6 only. IPv4 will be on as a test just today, and on for good shortly after. Read that announcement I mentioned for details.
John Marino has posted about the state of dports: over 19500 ports built, build logs available, and patches to add even more can be sent through github. XFCE4, KDE3, and KDE4 are building, though he could use some help with GNOME2.
Man, I’m stretching it to make that “Over nine thousand!” joke, now.
If you have a DragonFly 3.2 system and you want to try the 3.4 release candidate, you can delete your local source, edit the Makefile to pull down 3.4 instead of 3.2, and run it.
rm -rf src
(in vi) :%s/DragonFly_RELEASE_3_2/DragonFly_RELEASE_3_4/g
(save, quit vi)
… then proceed to make buildworld and so on, as normal.
The caveats: I haven’t tested this yet, and this assumes you don’t have any local changes in /usr/src that you want to save. The usual warnings about lighting your computer on fire, etc., apply.
The DragonFly Git repository of pkgsrc now has the 2013Q1 branch. You can switch to it by editing your /usr/Makefile (look for existing references to either pkgsrc master or pkgsrc-2012Q3) and using the normal commands.
If you have a mfi(4) device – in other words, a LSI MegaRAID SAS driver – you can now see/import/clear/etc. foreign configurations, thanks to this commit from Sascha Wildner, tested by Francois Tigeot, and originally from FreeBSD.
For the confused, ‘foreign’ means any disk hooked to a RAID controller that isn’t part of a configuration the RAID device already knows about. A replacement disk, or more worryingly, a good disk gone bad/unrecognizable. (I’ve had both.)
If you have an ath(4), wpi(4) or iwi(4) wireless network link, and you’re running DragonFly-master, please update. Sepherosa Ziehau has pushed Johannes Hoffman’s wlan_serialize branch, which means bringing up wlan0 is a bit easier – and less crashy.
It needs to be tested for wpi(4) and iwi(4), however, so if you have success or failure with those devices, please say so in reply.
(new post category starting now: “Please test”)
DragonFly 3.4 is branched – as a release candidate, with the current target for 3.4.0 release as the weekend of April 13-14. See the tagging commit note for a list of all the commit messages.
Note that in previous releases, we tagged “x.y.0″ on branch, and “x.y.1″ on release. I’m now tagging “x.y.0rc” for the release candidate at branch time, and we’ll tag with a more normal (to my ears) “x.y.0″ for the release.
If you build a 3.4.0rc image right now, you’ll get an older quarterly release of pkgsrc. That’ll be changed tomorrow as the DragonFly pkgsrc git source is updated and I change where 3.4′s /usr/Makefile points.
The 2013Q1 branch of pkgsrc has been announced. Along with the normal quarterly material, there’s several notes: preliminary Cygwin support is present, ruby 1.8 will be retired in favor of 1.9 after this release, and the pkgsrc.org web page now has a very nice new look and logo.
I plan to branch DragonFly 3.4 very soon, and that version will have 2013Q1 as default.
Update: The 2013Q1 branch should be available by tomorrow on DragonFly’s git; the repository needs to update and convert from NetBSD’s CVS and that takes a little time. I’ll post when it’s ready.
I hope you like reading; there’s some very meaty links this week. Go get a cup of tea and settle in. You drink tea, don’t you? You ought to.
- Reading about KDE’s repository near-meltdown makes me think we need more checks for DragonFly. We have the advantage of Hammer, of course, which would help in the same way that the linked article names ZFS as a ‘fix’. (via multiple places)
- We know that Apple will reject apps it disagrees with. Google also will do so. Has there ever been a program rejected from pkgsrc or (FreeBSD/OpenBSD) ports on content grounds? Not that I know of – anyone remember differently? I’d argue that’s a favorable point for the BSD packaging systems, though it may just be that no application has tested those boundaries yet.
- Portscanning all IPv4 addresses on the planet. Possibly the largest distributed effort ever? The detail in the maps and returned services is especially interesting. (via)
- Scale Fail, a Youtube video of a 2011 talk about screwing up your services. Mostly about the humor, but the underlying points are valid. (via #dragonflybsd IRC)
- There’s still improvement possible to fsck, apparently based on this. That’s UFS2 fsck.
- What is your most productive shortcut with Vim? A very thorough explanation of verbs, marks, and registers. Holy cow, I wish I had known about ‘: … v’ before. It’s long, but worth it. (via)
- Matthew Garret’s description of Secure Boot vs. Restricted Boot with UEFI, (via a coworker who went to Libreplanet 2013). I’m still not sure what DragonFly will need to do about this.
- I missed mentioning this earlier: 20 years of NetBSD. We’re coming up on 10 soon.
- Dragonfly drones. Unrelated except for name.
- That guy who starts to froth madly every time BSD is mentioned on Phoronix is still there (see comments).
- Mainframe computer supercut. (via)
Your unrelated comics link of the week: Tom Spurgeon of the Comics Reporter asked people for their lists of webcomics that could go in a ‘Hall of Fame’. The resulting list is a lot of really, really good material. Go use up a few hours reading.
I saw this Hacker News post and figured I should emphasize: pkgsrc is still going to be available in the 3.4 release of DragonFly; we’re not suddenly switching to dports. I don’t want anyone to think they’re going to have to rip out all their packages and go to a new, untried system, all at once.
If you were thinking, “Hey, I’d like to try an early version of DragonFly 3.4 before it’s released”, I’ll just point you at the recent daily snapshots of 3.3. These are close enough to a release candidate, I think.
The next release of DragonFly will be 3.4, and it’s probably going to be mid-April.