Month: February 2011

The best way to fix up pkgsrc…

… is to make its patches unnecessary, by getting the changes needed for any program to compile on DragonFly built right into the program.  (Often called “pushing patches upstream”)  That usually means creating a patch and then tracking down the program authors to get them to include those changes in the next release of a project.  That tracking down can be a majority of the work.  In that case: thanks, Rumko!

Update: Also, thanks, Matthias Rampke!  He did the same thing for pcc.

Posted by     Categories: DragonFly, pkgsrc     0 Comments

What’s coming: gcc 4.6

It’s not even released yet, but John Marino and Sascha Wildner have been laying the foundation for using gcc 4.6 in DragonFly.  gcc 4.6 looks to have some new things in it; more Objective-C support and Go, too, based on my quick perusal of the gcc website.

Posted by     Categories: DragonFly, Goings-on     15 Comments

Anatomy of a Summer of Code proposal

“Arjun S R” wrote to the kernel@ mailing list asking about the Google Summer of Code projects for DragonFly that he found interesting.  Samuel Greear has a response so detailed it includes links to a similar project proposed last year.  It also works as a good model for how much thought needs to go in before you start.

Update: there’s more, plus some pertinent advice!

pkgsrc packages removes, Postfix to test

Matthias Scheler is looking for Postfix testers.  If you run it, he has a patch to version 2.8.1 he’d like you to try.

Also, the final list of GTK1-using packages that are not actively updated has been determined.  These packages are leaving pkgsrc next week unless there’s any last-minute intercessions.

Posted by     Categories: Goings-on, pkgsrc     0 Comments

Summer of Code ideas page, expanded

I’ve linked to it before, but it’s expanded since: the Google Summer of Code projects page on has a whole lot of ideas listed.  Please add to it, especially if there’s a project you’d like to be doing.  (Here’s more thoughts, for example.)

virtio drivers and GSoC 2011

Stéphanie Ouillon expressed interest in the virtio drivers as a Google Summer of Code project for DragonFly; Aggelos Economopoulos followed up with an explanation of the various work that’s been done, and further resources.  I chimed in with my usual warning.

Posted by     Categories: DragonFly, Google Summer of Code     0 Comments

Meteor(4) fizzles out

Sascha Wildner’s removed the meteor(4) code because it apparently no longer builds, and it’s unlikely anyone uses an actual video board that requires this driver, at this point.  If you do, speak up.

Posted by     Categories: Device support, DragonFly     0 Comments

Bridge building better

Matthew Dillon’s improved bridging to the point where you can now modify the MAC address of the bridge and most everything, including ARP, will come from it correctly.   It’s even possible to bond 2 or more interfaces together, with the side effect of having a lot more bandwidth.

Update: the config for his bonded interfaces has been posted as an example.

Update 2: More notes here.

Posted by     Categories: Committed Code, DragonFly     0 Comments

pcc near 1.0; try on DragonFly?

The pcc compiler is nearing 1.0. (via) This is seen as a gcc alternative, and it’s present in NetBSD/OpenBSD. I recall it didn’t work for DragonFly because of a lack of TLS support… Might be different now, if anyone wants to try.  (see prior mentions on the Digest)

Posted by     Categories: DragonFly, Goings-on, NetBSD, OpenBSD     4 Comments

Better bridge built

Matthew Dillon has continued his bridge work, with another commit adding various features.  Go, read.

Posted by     Categories: Committed Code, DragonFly     3 Comments

Scheduling, fair or not

Venkatesh Srinivas did a comparison of the default scheduler in DragonFly with the “fairqueue” scheduler, using Interbench, the “interactivity benchmark”.  The numbers don’t show a deficit relative to either side, which is OK I guess?  I’m not sure how to analyze it.

Posted by     Categories: DragonFly, Goings-on     0 Comments

DragonFly network handicap

I posted before about a move to use AT&T’s U-Verse fiber/DSL product for’s connection.  It led Matt Dillon to try to add features to compensate for the service’s shortcomings, but it’s still problematic.  He’s written up just how broken U-Verse is, calling it “almost a complete failure” as a business connection.  The bulk of the problems seem to come from the 2Wire DSL modem supplied by AT&T.

Remember when the Internet used to be the place to find long technical writeups of a product directly from people who were using it?  Much of that has disappeared into comment forms and ephemeral Facebook posts.  That’s too bad.

Posted by     Categories: DragonFly, Goings-on     2 Comments

Ways to play music

If you’re like me, you’ve been using XMMS for music playback since just about forever.  It’s ancient, though.  It uses GTK1, and since Thomas Klausner is trying to get GTK1 dependencies out of pkgsrc, he listed a roundup of alternatives on the pkgsrc-users mailing list, most/all of which are in pkgsrc.  Pouya Tafti added some more.

Posted by     Categories: Goings-on, pkgsrc     2 Comments

Lazy Reading

You can probably infer the new (to me) blog I found this week from some of the links…

  • Adding IPv6 to a FreeBSD Mail/Web Server – from Michael Lucas, repeat BSD author.  I link to this because we’re all going to have to do something similar in the next year or so, I bet..
  • A visual guide to TMUX, part 1 and part 2.  tmux has usually been introduced to me as “It’s BSD-licensed and not screen”, which is good, but not compelling on its own.  The first of the articles linked here goes over the comparative differences in some detail.  (via)
  • Speaking of screen-ish things, do you leave an irssi session running in screen so that you can rejoin IRC conversations at any time?  I sure do.  Sometimes I even reconnect through ConnectBot on my Android phone.  There’s now a Connectbot variation for irssi, just for people who do such a thing.  Don’t forget: #dragonflybsd on EFNet.
  • Also still on the topic: forgetting to use screen and then being stuck with a long-running process is lousy.  There’s ways to deal with it, though.  (via, from a blogroll link)
  • Hey, it’s neat to see a new business built on BSD – OpenBSD, in this case: Tunnelr.  (via)
  • We’re still doing great in terms of pkgsrc packages building successfully on DragonFly.
  • An hour+ recording of the recent NYCBUG meeting about BSD networking is online.  (Link is to a MP3 – via)
  • How not to comment code.
  • AT&T -> BSD -> AT&T.

Transparent bridging added

Matthew Dillon has added transparent bridging, mostly to overcome issues with the AT&T DSL modem he’s using.  With this non-default feature, IP packets retain the original MAC address when retransmitted through a new interface.

Posted by     Categories: Committed Code, DragonFly     2 Comments

Getting old GTK to go

Thomas Klausner is planning to get rid of the last bits of GTK1 in pkgsrc, which means some old/non-updated software has to go too.   Speak up on the mailing list if you need some of that listed software, or (better yet) provide patches to move it to GTK2.

Posted by     Categories: pkgsrc     0 Comments

New network for

The sites (well, www anyway) are getting a new network connection, so expect a bit of downtime due to the transition.

Posted by     Categories: DragonFly, Goings-on     0 Comments

IPv6 options

For those of you thinking of IPv6 (and you should be), Matthias Rampke reported good luck with an IPv6 tunneling service.  He points out that the /48 address he now has at home is larger than the entire IPv4 network.

Posted by     Categories: DragonFly     1 Comment

VirtIO-net drivers disappear

The virtio network drivers for DragonFly (mentioned previously here, here, and here) went away.  Apparently the original FreeBSD code was not supposed to be available publicly, under a BSD license, and it’s having a knock-on effect for DragonFly and probably NetBSD.

(virtio drivers, if this is an unfamiliar term, are for devices in virtual environments, as when DragonFly is running under VMWare or something similar.)

Posted by     Categories: Device support, DragonFly, Goings-on     0 Comments

BSD Magazine: ZFS

February’s BSD Magazine is headlining “ZFS on FreeBSD”, along with a bunch of other material, including an interview/example for the next BSDCan convention.  There’s some BSD-project-specific news in there from this site about DragonFly, along with MirOS, MidnightBSD, and FreeBSD.

pkgin update to 0.4

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.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     0 Comments

WD disk notes

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.

Posted by     Categories: Device support, DragonFly     0 Comments

tmpfs loses the locks

The tmpfs(5) filesystem now runs without multiprocessor locks.  Yay!  Another hurdle down.

Posted by     Categories: Committed Code, DragonFly     0 Comments

New ps option

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.

Posted by     Categories: Committed Code, DragonFly     2 Comments

Assume it’s multiprocessor-safe

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.

Posted by     Categories: Committed Code, DragonFly, Goings-on     0 Comments

Google Code-In winners listed

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.

Posted by     Categories: DragonFly, Google Code-In     0 Comments

Netgraph 7 work, anyone?

Nuno Antunes has been working on upgrading netgraph(4) to version 7.  His initial patches are available for testing.

Posted by     Categories: DragonFly, Goings-on     0 Comments

Lazy Reading

I’m going to just title these “Lazy Reading” – I end up with too much diverse information/links to fit within the title.

Posted by     Categories: Device support, Lazy Reading, UNIXish     3 Comments

fork and exit more mpsafe

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…

Posted by     Categories: Committed Code, DragonFly     0 Comments

sh updates

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.

Posted by     Categories: DragonFly, FreeBSD, Goings-on     0 Comments

Scheduler updates

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.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Binary pkgsrc updates: an experiment

So, I felt lucky recently.  I updated 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.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     0 Comments

GSoC 2011: want to mentor?

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.

OpenSSL update, MFC’d

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.

Posted by     Categories: DragonFly, Goings-on     0 Comments

BIND 9.5 reaches End of Life

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.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     0 Comments

cryptdisk and keymaps

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.

Posted by     Categories: DragonFly, Someday you will need this     0 Comments

bin-install does it all

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.

Posted by     Categories: DragonFly, pkgsrc     0 Comments

New pkgin version for testing

If you’re using the binary pkgsrc package installer pkgin, version 0.4 is available for testing.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     0 Comments

More Google Code-In work arrives

Samuel J. Greear committed some more code that happened to come from DragonFly/Google Code-In projects.  There’s a surprising large amount of code that came from those projects…

Posted by     Categories: Committed Code, DragonFly, Google Code-In     0 Comments

pkgsrc-2010Q4 binaries out

They’re finally uploaded!  See my rather lengthy post about it on users@ for all the details.

Posted by     Categories: DragonFly, Goings-on, pkgsrc     0 Comments

How rc works

Chris Turner went off into some extra detail on how the rc system works, with extra links for anyone interested in some history.

Posted by     Categories: BSD, DragonFly, Goings-on     0 Comments

Good news for people with excess memory

Matthew Dillon’s made some changes that will speed up the booting process for people with a ridiculous amount of memory, like 64G.  This is x86_64 only, but that should not be a surprise if you think about it.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Frequent updater? Update more

Due to a crash yesterday on, the Git repo was not up to date, briefly.  It’s been fixed.  This will only really matter if you’re running bleeding-edge DragonFly and rebuilt your system in the last 24 hours or so.

Posted by     Categories: DragonFly, Goings-on     0 Comments

January OSBR: Recent Research

The theme for this month’s Open Source Business Resource is “Recent Research“.  The topic’s broad, so there’s something for everyone.  The article on licensing (BSD and otherwise) is of interest.

Posted by     Categories: BSD, Goings-on, Periodicals     0 Comments