Month: June 2013

Lazy reading for 2013/06/30

Some of the links this week go pretty in-depth.  Enjoy!

Your unrelated link(s) of the week: Candy Box and A Dark Room.  Both are text-only games, but they use HTML5 for animation.  They start minimal, and build up – be patient; there’s a lot of gameplay in there.  These minimal  games fascinate me.  It’s like reading a book, where it goes from just static text to an entire world being built.  (somewhat via)

Your bonus unrelated comics link of the week: Jack Kirby double-page spreads.  It’s not an exaggeration to say this artwork crackles.  (via I forget)


Posted by     Categories: Books, Goings-on, Lazy Reading, UNIXish     0 Comments

KDE 3.5 going out of dports

FreeBSD ports, and therefore Dragonfly dports, will drop KDE 3.5 items sometime very soon.  It’s possible to continue to build them in dports, but it’s extra work.  If you need them, volunteer, because otherwise they will be dropped.  (An idea I fully support.)

Posted by     Categories: DPorts, DragonFly     0 Comments

GSoC Hammer and compression performance numbers

Earlier this week, Daniel Flores posted the first-week report on his Google Summer of Code project, file compression in Hammer.  He mentioned that the LZ4 algorithm he is using seems to have the best performance with repeating text data, as in logfiles.  I asked for numbers, and he provided them.  The important data in the results is the total compression column.  It shows how many 64k blocks were able to be compressed, with that type of data.

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

mps(4) users, take note

If you have a mps(4) device (LSI Fusion-MPT 2 SAS disk controller), you may be interested in Matthew Dillon’s large commit of bugfixes from FreeBSD.  Specifically, he notes that the drive gets ‘overtagged’, and performance can be greatly improved by reducing the number of tags used.

Posted by     Categories: Device support, DragonFly     0 Comments

Netperf and Jain’s fairness index

Thanks to Sepherosa Ziehau, Netperf will now calculate Jain’s fairness index.  That is a formula that is both interesting and unfamiliar to me.  Not that I understand it, of course – it’s just because it has a neat name.

Posted by     Categories: Committed Code, DragonFly     0 Comments

OpenJDK7, everywhere

It looks like OpenJDK7 works in pkgsrc for DragonFly, thanks to Ryo ONODERA, and I think it’s working in dports too.

Posted by     Categories: DPorts, DragonFly, pkgsrc     0 Comments

Recompile needed for DragonFly 3.5 users

Because Sepherosa Ziehau changed mbstat, anyone on bleeding-edge DragonFly will need to rebuild world, or else netstat will become confused.

Posted by     Categories: Committed Code, DragonFly, Heads Up!     1 Comment

BSD, Playstation 4, and disk storage

Supposedly it’s FreeBSD 9.0 under the hood on the new Playstation 4 systems.  What does this mean for FreeBSD, or driver support, or BSD in general, or what you can run on that hardware?  Possibly nothing other than a vague sense of superiority.

On the other hand, this BoingBoing article makes a good point about commodity hardware and its immediate utility.  It’s an effective network storage device and it doesn’t even mention FreeNAS.

Posted by     Categories: BSD, FreeBSD     0 Comments

Summer of Code, first week reports

All the Summer of Code students for DragonFly have posted their first week reports:

If any of these projects are interesting to you, or if you have any tips for these students on work they are doing, please provide feedback.




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

Julio Merino and NetBSD, and volunteerism

Julio Merino is not renewing his membership of the NetBSD board of directors; he wrote an extensive post as to why.  I agree with some of the issues he raised; they are possible on any open source project.  I don’t necessarily think the solutions he proposes are correct.

I am clearly biased on this, but I think NetBSD needs a ‘NetBSD Digest’, to talk about the changes being made and the work being done.  I once asked someone experienced in dealing with volunteers how you motivate people without a paycheck, and he said “Celebrate their accomplishments”.  All the BSDs could use that.  (via EFNet #dragonflybsd)

Posted by     Categories: BSD, NetBSD     4 Comments

Lazy Reading for 2013/06/23

I was going to make excuses for a low link count because of being on the road this week – but somehow I managed to find a lot to read anyway.  We all win!

Your unrelated link of the week: Who you gonna call?  This kills me because there was some obvious prop work and setup just to create this 7 second joke.

Posted by     Categories: Lazy Reading, roguelike     0 Comments

A BSD without i386

There’s already been some previous conversation about how much longer to support the i386 platform for DragonFly.  It looks like PC-BSD will be the first ‘flavor’ of BSD to make the jump.  Support for PC-BSD on i386 will be dropped after release 9.2.  That includes ‘TrueOS‘, the version of PC-BSD for servers, which I did not know about until just now.

Posted by     Categories: BSD, DragonFly, PC-BSD     12 Comments

New timer available

There’s support for a new timer mechanism in DragonFly 3.5, for x86_64 users: TSC.  Sepherosa Ziehau added support and has described how to disable it – it’s on by default.  It speeds up some very basic (and frequently used) system calls.

Posted by     Categories: Committed Code, DragonFly     0 Comments

pkgsrc freeze for 2013Q2 is on

Whoops, I missed this when it happened, but: the freeze for pkgsrc-2013Q2 has started.  That new quarterly release is anticipated for the end of the month.

Posted by     Categories: Goings-on, pkgsrc     0 Comments

BSD Magazine for June 2013: Ruby

The June 2013 issue of BSD Magazine is out, and the focus is Ruby.  The PDF is free if you tell them your email address.

Posted by     Categories: BSD, Periodicals     2 Comments

Avoiding non-routeable IPs

It’s possible your Internet service provider uses a non-routeable IP range (like 10.*) and occasionally your border device picks that up via DHCP by accident instead of an Internet address.  If that happens to you, and you’re using DragonFly as your border gateway, it’s possible to prevent it with PF dhclient.

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

Another tip: cleaning up a really, really full Hammer drive

If you get your Hammer drive really full, a normal cleanup won’t make enough space.  When that happen, use ‘hammer reblock’ in increasing increments.  That works because it does cleanup in much smaller steps.

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

An X tip on terminal switching

Switching terminals in X with ctrl-alt-Fx requires a not-on-by-default option.  This could catch anyone used to the old behavior, so I might be doing you a favor by mentioning it.

Posted by     Categories: Someday you will need this, UNIXish     2 Comments

Lazy Reading for 2013/06/16

This is a text-heavy weekend, given yesterday’s post.  Enjoy!

Your unrelated link of the week: ScummVM in a browser.  Comes with some LucasArts game demos, too. (via many places)

Posted by     Categories: BSD, Lazy Reading, UNIXish     0 Comments

PRISM, privacy, and what you make yourself

If you’ve been reading the Digest for a while, you’ve seen me talk about the value of hosting or running your own services.  It’s not too much of a surprise in my case; if you are working on an open-source operating system, you want to run it.  It’s good to get the experience, and you can run programs the way you want, instead of picking from whatever vendors happen to sell you.

The PRISM disclosure, which I am going to assume everyone is familiar with at this point, is another facet.  Every time you use another company for your email, your entertainment, your software, and so on, their information on you can be accessed.    This isn’t a problem that can be fixed by going from one webmail provider to another.  You can shop around, but notice that the author in that link effectively throws his or her hands in the air and says, “there’s no way out” by the end of the article.  This is because corporations work as collecting agents for the government, even if they don’t plan to do so.

That sounds drastic, but there’s legal frameworks in every country for governments to require companies to give up data on any person, on request.  It happens.  I’ve seen it myself; I worked for Time Warner for several years, tracking down cable modem user information and handing it over as compelled by law.  I know the lawyers at TW Corporate didn’t like doing it, but they didn’t have a choice.  (I have some horrifying stories about what people would do to themselves and each other.)

Companies are increasingly working to create services to sell, not products to buy.  A service never stops being consumed, so it forms an ongoing revenue stream.  I’m not saying this is bad; I firmly believe that a financial incentive to be paid improves services.  However, as only a consumer, you can end up not owning what you use.  Other people have pointed this out, and I don’t want to sound like a frothing crazy person… but it is relevant, though not necessarily as catastrophic as some people pronounce.

What I’m working towards here is a reminder that you should run your own software, and running it on DragonFly is the best way.  (Or some other operating system, I guess.  If you have to.)  Instead of trying to figure out what the least-bad commercial option can be, run it yourself.  Good for privacy, good for learning.  I know that’s not an option for everyone; fighting with Sendmail (for instance) is not an activity that many people pick voluntarily.  But, if you’ve been thinking of setting up a replacement for Google Reader, or hosting your own mail, or own blog, etc… there’s never a better time than now.

(Follow all those links for some good information; consider it an early Lazy Reading post)


Rough network queues added

Sepherosa Ziehau has added a sort of queuing to altq, where TCP ACKs get higher priority.  You may have seen this in any number of pf configurations, where returning data is given its own queue to keep high-volume transfers from slowing themselves down because the acknowledgements can’t get back to the sender.  His commit has statistics on the performance improvement.  He also added a ‘netrate‘ tool for calculating results from using netperf.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Symbol versioning coming in, also buildworld

If you’re using DragonFly 3.5, your next update should be a full buildworld.  That’s because John Marino is adding the framework for symbol versioning.  This means that individual library (.so) files will internally keep track of newer and older symbols.  The current behavior is to name the files differently, which can cause problems if an expected, linked file is missing – even if the needed symbols are present.  The basic framework is being added now, and will be turned on all at once, to minimize the number of times that full buildworld is needed.

Posted by     Categories: Committed Code, DragonFly     0 Comments

Old amd64 removed and extra upgrade step added

The ‘amd64’ specific parts of kernel architecture have been removed, since x86_64 covers all that.  As a side effect of other changes, John Marino warns that upgrading DragonFly from a version older than 3.4, to a version newer than 3.4, will require an intermediate step of going to 3.4 first.  e.g. If your machine is a DragonFly 3.0 system, you will need to upgrade to 3.4 before moving to, say, 3.6 once it is out.  This won’t matter for some months, since the next release is months off.

2 more GSoC projects: Hammer compression, System V IPC

Larisa Grigore posted an introduction of her Summer of Code project: Userland System V IPC in userland, and Daniel Flores wrote out his initial ideas for Hammer compression.  That’s the remaining two projects introduced.  If any of these interest you or you want to make suggestions, respond on the lists.  Work starts on the 17th.

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

BSDCan 2013 videos has a nice summary up of video from all (?) the presentations at BSDCan 2013.   Of particular interest to DragonFly users: a video about pkg, the tool used for package maintenance in dports.  In this presentation, it’s talking about use on FreeBSD, but the future stuff applies to DragonFly too.

Posted by     Categories: BSD, Conventions, DPorts, DragonFly     0 Comments

GSoC project: checkpointing vkernels

Pawel Dziepak has posted details on his Summer of Code project for DragonFly.  He will be making it possible to checkpoint vkernels, restoring network and console state.  He even has a public repository for his work set up.

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

Lazy Reading for 2013/06/09

Not as wordy this week, but still wordy.  And linky!

  • Max Headroom and the Strange World of Pseudo-CGI. A discussion of how old fake CGI can look better than modern, real CGI. This is an opinion I’ve had for quite a while, and my children pretty much ignore it every time I bring it up.  (via)
  • The Colby Walkmac, which predates the Mac Luggable.  Linked to because it includes good pictures of what the (external) hardware was like.  I find all the old ports interesting, since it’s all USB and the occasional eSATA these days… not that I’m complaining!  I’ve never had a good experience with a 9-pin serial port.  (via)
  • A brief education on escaping characters.
  • I get worried when remotely rebooting a server in a different town or even state.  In Praise of Celestial Mechanics covers much more stressful circumstances: interplanetary reboots.  Does Voyager 1 or 2 have an ‘uptime’ function?
  • The equivalent of what you are doing right now, 20 years ago.  I personally never got to see this; my experience was MUDs.  Speaking of which…
  • The Birth of MMOs: World of Warcraft’s debt to MUD.  MUD == MMO, Roguelike == Diablo/Torchlight, Doom == almost everything else.  There’s a number of game archetypes that haven’t changed in some time.  (via)
  • Playing with powerlines.  I used to work at a company that used these lines for data transfer.  It was neat technology, but it sure wasn’t easy to set up.  Imagine wiring a city but only being able to use Ethernet hubs.  Not switches, hubs.  That, combined with undersized ARP caches/MAC tables, made it really difficult.
  • OpenVPN on FreeBSD, which will come in handy for at least several readers, I’m sure, as the directions should apply to any BSD.
  • Is there anything DNS can’t be used for?  Cause now it’s domain-based mail policy publishing.  (via ferz on EFNet #dragonflybsd)
  • Have you tried DragonFly?” posts on various forums seem to pop up with some regularity.
  • Uses of tmux, explained.  A slide show talking about how tmux works.  (via)

Unrelated link of the week: I’ve had several deadlines and a mail server with issues this week at work, so this is all I got.

Adding to dports

Since dports uses FreeBSD ports as a base, adding something to FreeBSD ports means it will show in dports, too.  However, it doesn’t have to go that way.  It’s possible to have dports packages that exist only in dports.  If you have changes to a port that make it compile on DragonFly, that can be added too.  For all of that, go to the dports issues page on GitHub.

pkgsrc-2013Q2 freeze coming up

The next pkgsrc freeze is planned for June 17th, 9 days from now.  So, get your changes in now, for 2013Q2…

Posted by     Categories: pkgsrc     0 Comments

Another Summer of Code project: vkernels and hardware

Another DragonFly/Google Summer of Code project introduction is up: Mihai Carabas wrote out his project on developing hardware nested page table support for vkernels.  If Mihai’s name seems familiar, it’s because he was in Summer of Code for DragonFly last year, with a successful project.

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

Creating new pkgsrc packages, a lesson

Johnathan Perkin has a nice tutorial up about creating pkgsrc packages.  It’s done on SmartOS, but I imagine it’ll generally apply to anything pkgsrc supports.

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

First Summer of Code description: Capsicum

Joris GIOVANNANGELI has posted a description of his Summer of Code project for DragonFly, implementing the Capsicum kernel APIs.  I expect the other students will post summaries soon, too.

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

Full buildworld, not quickworld

If you are running DragonFly 3.5, make sure you do a full buildworld depending on how recent your version is.  Just a quickworld will cause problems.  DragonFly 3.4.x users are unaffected.

Posted by     Categories: DragonFly, Heads Up!     0 Comments

Getting dports without pkg installed

I pointed out in my converting-to-dports post from yesterday that I had to download dports and build pkg by hand in order to install binary packages.  This was because my DragonFly system was upgraded from 3.2 to 3.4 and therefore didn’t have pkg installed.

John Marino has added a ‘pkg-bootstrap’ option to /usr/Makefile, for fixing exactly that problem.  It downloads a static version of pkg, which then lets you upgrade to the full pkg and install binaries as you’d expect.

Posted by     Categories: DPorts, DragonFly     0 Comments

Pkgsrc and xorg, native vs. packaged

NetBSD uses pkgsrc but ships a version of xorg with NetBSD.  This is effectively producing the same code twice.  There’s a long discussion on tech-pkg@ (first article linked; keep reading) about moving to the pkgsrc version of xorg for NetBSD, which seems like a good idea for focusing effort, as far as I can tell.  The thread goes on quite a way.

Posted by     Categories: NetBSD, pkgsrc     0 Comments

Switching to dports software

I changed over from pkgsrc to dports over the last 48 hours or so.  Here’s how it went, in a series of bullet points:

  • I had to download dports source and build the pkg tool by hand; since this system was upgraded from DragonFly 3.2 to DragonFly 3.4, pkg wasn’t automatically present as it would be for a new installation.
  • I took the output of ‘pkg_info’ and culled it down to the applications I knew I used, and that formed my ‘to-install’ list for dports.  That worked in a very straightforward way.
  • It took so long mostly because of two things: I was also dealing with an email problem at my workplace, which usually took precedence.  Also, I had several applications that I had previously installed by hand and needed to reconfigure to work as a dports item.
  • Installing from binaries is really fast!  Really, the dports part of this was possibly the most brief.
  • The only thing I needed to compile from source was php, in order to get the Apache plugin.  I’m sort of surprised the option isn’t on by default.
  • Using ‘pkg search packagename’ is a good idea, because ‘pkg install’ can pick up multiple versions of a package.  e.g. ‘pkg install mysql-server’ selects mysql-server51, mysql-server55, and mysql-server56.  You probably don’t want to install all three.  Or even one, depending on your opinions.
  • Overall, it went more easily than I had expected, given it only had half of my attention.
Posted by     Categories: About This Site, DPorts, DragonFly     4 Comments

Pardon my dust

I’m switching this server from pkgsrc to dports.  No post while I fight with old, stale configs and etc.

Posted by     Categories: About This Site, DPorts     0 Comments

Lazy Reading for 2013/06/02

Last week was a lot of very brief links.  I’ll go for verbosity this week…

  • Regular expressions and regular grammar.  I hope you like detailed explanations.  I’ve said it before: you should understand regular expressions.  The difference between knowing and not knowing is sometimes the difference between knowing how to finish a project, and being hopelessly swamped.  (via)
  • A plea for less (XML) configuration files.  From the same place.  I don’t advocate rejecting XML files out of hand like some people, but I think you need to have a certain existing level of complexity already in your program before you use XML.  For example, so complex that nobody will notice some XML sprinkled in there too.
  • Where Looks Don’t Matter and Only the Best Writers Get Laid, a talk about the Internet from roughly the late 90s to the 2000s.  Some parts of this get farther into political notes than I usually care to read, but I like the point made with “Many women and men alike are using, not building, the web.”  I am frustrated by how the Internet is effectively one-way transmission for so many, like TV.  (via I forget, sorry)
  • Bringing Unix commands to a Windows world.  It’s about Cygwin.  I’ve installed Cygwin a number of times, but it’s such a strange hybrid I eventually stop after using it for whatever specific reason caused the first install.  These days, it’s almost easier to set up a virtual machine on a Windows system and just switch over as needed.
  • The Weird Stuff Warehouse.  How much does this look like your basement?  I like looking in stores like there cause there’s always some hardware item that seems to be worth resurrecting.  (via)
  • Open Source Game Clones.  I feel iffy about these things.  This tends to be viewed as “I want a free game”, not “I want the right to modify a game”.  Also, you could argue it takes revenue away from the original artists who work on a product when it copies the original game methodology, reducing the incentive to produce.  That could be debated, but I am certain of this: I wish people tried original rather than rehashed ideas in open source, because it has a much lower threshold for success.   You don’t need a studio to tell you when you can be published…  which is sort of the idea behind “indie gaming“, I suppose.  (first link via)
  • Remember those old not-a-desktop-not-a-laptop computers?  They looked like this image I saw recently.  I actually learned to use vi in a mild panic on a Sparcstation Voyager, which would be another device in that land between categories.
  • SSH Tricks, found by accident while I was searching for how to do per-host configs in ssh, so that I only had to type a short name and leave off the long suffix (like when connecting to a server.  Someday I might even get remote port forwarding over ssh correct.
  • USSR’s old domain name attracts criminals.  Somehow I doubt you can identify a criminal site by domain suffix that easily.  (via)

Your unrelated link of the week: Massive Chalice, a Kickstarter for a new strategy and tactics game.  It’s by Double Fine, who has made some fantastic stuff, and it has permadeath, turn-based combat, randomly generated maps… it’s a roguelike!  It’s cross-platform, apparently, though I don’t know if it will work on any BSDs.


Posted by     Categories: Lazy Reading, roguelike, UNIXish     1 Comment