Month: June 2012
Will Backman, the usual interview in BSDTalk episodes, gets interviewed himself by Paul Schenkeveld, for 14 minutes.
Attention students and mentors: the Summer of Code midterms open up on July 9th. This means students fill out an evaluation, and mentors also fill out an evaluation. Don’t forget, because completed evals from mentor and student both are necessary for a project to continue being funded.
More benchmarks, in this case a comparison of Debian GNU/kFreeBSD and DragonFly. I’m not even sure how to derive meaning from it.
It’s almost an all-Vim week.
- Unix as IDE, a 6 part completed series. (via)
- VimOrganizer, Emac’s Org-mode for Vim. (via)
- The Vim Clutch. This is hilarious. (via) Also see “Chindogu“, though this might be too useful.
- Those who know UNIX are doomed to reinvent it. (via same place)
- Falsehoods programmers believe about time. Taken from the same thing about names. (via) Also, when someone says, “Oh, I can just look for email addresses using a regular expression”, you’re stepping over a similar cliff.
- Welcome image in your terminal. (via) Will this work in an xterm? rxvt? I don’t know…
- CanI make this Lazy Reading post more nerdy? Yes! Arbitrage and Equilibrium in the Team Fortress 2 Economy. I already enjoy economics writing, and this one is about virtual economies and games. The only thing I know of close to this is the economist that works on EVE Online.
If you have an Intel processor with multiple cores and hyperthreading support, you can compile a new kernel and try out Mihia Carabas’s GSoC work already; he’s created a test using the OpenSSL test case to time scheduling performance vs. number of threads.
Mihai Carabas posted some benchmarks for his work with the DragonFly default scheduler and hyperthreaded CPUs. The end result, for those who don’t like number analysis, is that CPU-dependent speeds are reliably constant because tasks are being evenly scheduled across available CPUs.
(Well, CPU threads, since this is hyperthreading, but you get the idea.)
Emacs in pkgsrc is going to be all numbered versions, as in emacs24 and emacs25, etc. Installing just ’emacs’ will get the current default version, which is emacs
2.4 24.1 right now and I think will be emacs 2.5. All this will come after the pkgsrc freeze for 2012Q2 is over, which means it will be next month. Follow the thread on email@example.com for details, or to figure out what I said wrong in my summary.
I always talk about vi and vi-like items here, so here’s my ‘equal time’ post.
Update: as several people pointed out, I had version numbers wrong. The story is corrected to make it slightly less wrong.
I think it’s week four, at least.
Mihai Carabas, Vishesh Yadav, and Ivan Sichmann Freitas all have their weekly status reports up for Summer of Code. Unfortunately, Loganaden Velvindron received a great job offer out of the blue, so he no longer has time for Summer of Code. (He plans to continue involvement in DragonFly, however.)
I have such a surplus of links these days that I started this Lazy Reading two weeks ago.
- Setting Up spamd(8) With Secondary MXes In Play In Four Easy Steps. Reprinted from bsdly.
- A Brief History of Videogames. (via) A 3 minute movie.
- Networking by Example with the Packet Construction Set. An mp3 of the NYCBUG presentation from George Neville-Neil. I wish I was just a little closer to NYC so I could attend these… but then I’d be in Syracuse or Albany, and that’s not as cool as Rochester.
- I knew Interix existed, but I had never looked at it. Apparently there’s community-created bundles of software to go with it. I think pkgsrc works with it too.
- SSD prices appear to be crashing. Now may be a good time to buy. Having a SSD is possibly the bestest part of my work laptop.
- Buffers, Windows, and Tabs in Vim. A good explanation for terms unfortunately used somewhat differently in Vim that you’d expect. (via)
- Magenta, Darwin/BSD (so sorta FreeBSDish?) on top of Linux. Quoted from page: “This is a very weird project.” As time goes on, what you would think of as BSD goes through new mutations and growths. (also via)
- Some selected BSD desktops. XFCE seems to be the most popular; that may not be a surprise in an environment where you are compiling or installing yourself. Various Linux distributions coming with a set desktop hide the pain of compiling all of GNOME/KDE from the user. Whether that is good or bad is a matter of debate.
- I never heard the term troll-hugging before, but this description of how a caustic software community will become a smaller software community makes sense. (via)
- This emulated VMSCluster setup cost probably close to $150. It would have cost a quarter million or more when I was in college. (via)
- It’s a Learning Perl book, from Wrox. But the whole thing appears to be available online at O’Reilly’s site for free? I’m not sure what that is.
- Zork 1 played via Twitter.
- The Interrupted Unix FAQ. (via) Funny, but probably also a good thing to memorize.
Your unrelated comics link of the week: Elfquest, every issue ever. The dialogue is cheesy but the original art is fun, in a way that grabbed me when I read it at 10 years of age.
I know I already posted that this was on the way, but this time, the quarterly pkgsrc freeze is starting with a detailed announcement. 2 weeks until the next release, if everything goes well.
Sascha Wildner has made it easier to use alternative syntax checking systems as a “lint” make target in DragonFly. His usage of coccinelle, as one of these alternatives, has already found many bugs – just today, for instance.
Is “alternative syntax checking systems” the right phrase for this? I don’t know. “Correctness checker”? My phrases all sound like something you’d read on a government form.
If you’re involved in application development or BSD development in any way, and you write about it somewhere on a personal blog or page or publication, please let me know. (firstname.lastname@example.org)
My goal is to point out as much interesting development as possible, and I find that getting notes right from the people that make them is the best way. Trade publications and magazines will skip over that stuff and go to the press releases, but that doesn’t work for BSD. I’ve found better, more interesting writing watching Peter Hansteen’s blog or Trivium. If you have someplace you write about technology, and especially BSD-related development, please point me at your RSS feed.
The freeze for pkgsrc-2012Q2 starts on the 16th of June, as recently announced. Freezes are usually 2 weeks, so that means 2012Q2 should be tagged at the end of June.
Seen multiple places, but Tomas Bodzar was the first to tell me: there’s a new BSD in town, called Bitrig. It’s forked from OpenBSD. The first release is planned for the end of the month, and it appears to have a more aggressive intended development plan than OpenBSD.
This is my 5,000th published post. This Digest has been running for approximately 9 years, so that’s an average of a post and a half per day, for around 3200 days. Yeesh!
The short version: MySQL, compiled a certain way, will allow 1 out of 256 root login attempts to work no matter what. I was going to link to this for the startlingly large number of MySQL installations found allowing connections from the public Internet, which means breaking into any affected servers would be easy. Then I thought about it… I don’t see a my.cnf installed by pkgsrc for at least MySQL 5.1 by default.
To fix this for your own installation, put
in /usr/pkg/etc/my.cnf to disallow remote connections. I don’t know if MySQL on DragonFly from pkgsrc is vulnerable to the issue, but it’s a good idea to not allow remote connections to the database, and ought to be on by default.
Or just use Postgres, if possible.
The June issue of BSD Magazine is out as a free PDF download. The theme is the same as last month – security – and there’s a number of other topics covered.
I got to use the ‘roguelike’ tag again this week, which always makes me happy. Surprisingly, it’s not about… that roguelike.
- RSA encryption explained. (via)
- Someone from Google went to BSDCan 2012 and blogged about it. The takeaways are interesting, especially something I’ve seen elsewhere: “Don’t buy systems that can’t take registered RAM in a bazillion sockets”.
- Occam’s Razor applies here, but still: trust nobody. (via)
- Bash One-liners Explained, part 1.
- They’re switching from ‘cvs import’ to ‘cvs add’ in pkgsrc. Now if they’d just switch the ‘cvs’ part out…
- Not even vaguely computer related: Please won’t someone make these commercially available? Wait, someone did!
- The Mechanics and Meaning of That Ol’ Dial-Up Modem Sound. (via) I feel nostalgic, but on the other hand… nobody missed 14.4 kbaud.
- Advanced Vim Macros. “As is typical in Vim, the rabbit hole of functionality goes much deeper than most users will ever plumb.” (via)
- Also at the same place: Vim Koans.
- Hey, there’s a DragonFly page on the Wine Wiki. It’s short but probably very useful if you want to run Wine.
- Also, an OpenCV fix for DragonFly, pushed upstream by a pkgsrc developer. That’s always nice to see.
- Fish, a new shell with some nice features. (via) Does this compile on DragonFly?
- Found near the same place: a screen saver that auto-plays Angband. OS X only, unfortunately. There must be an easy way to do the same with xscreensaver.
- CLANG, but not the compiler. Watch the movie.
Your unrelated link of the week: I happen to work at a salt mining operation, which leads to some unique problems (more). Mining in the US is regulated by MSHA, which has been cracking down since the Upper Big Branch incident. MSHA issues ‘fatalgrams‘ every time a miner dies. MSHA also shows up on site as soon as possible, which means they are there taking pictures within a few minutes, with equipment still running. It’s essentially crime scene photos, and a little worrying; many of the deaths are of people around my age with similar experience.
Pkgsrc already runs on a large number of different platforms, but that’s not what I’m talking about. In this case, Joyent, which uses pkgsrc internally, has a suggested change that makes binaries usable on both 32 and 64 bit systems. I don’t know if this will go into pkgsrc proper, but it’s interesting to see.
Reading this HAMMER2 commit carefully shows some future plans: remote cluster control, and the ability to mount nonlocal HAMMER2 volumes. A reminder: those are future plans, not what you can do now.
There’s a number of packages out there that assume you are using the GNU versions of ls, wc, and so on. However, you aren’t when using a BSD system. Pkgsrc has historically dealt with this when GNU tools are needed for a package by prefixing them with a ‘g’. ‘ls’ becomes ‘gls’, and so on. Aleksey Cheusov proposed a fix to keep these utilities under their original names, which I think will go into the next quarterly pkgsrc release.
Pkgsrc packages that have source files that can’t be redistributed, and go missing for the length of an entire quarterly release, will get removed. They are effectively broken at that point anyway.
That policy is now formally in place; I don’t think there was a clear prescription before.
I think I’ve mentioned building DragonFly with clang before, but not pkgsrc. There’s two variables to set, plus some special handling for libf2c. Thomas Klausner has details. This is not tested on DragonFly.
So many links this week I’m already working on next week’s entry. Enjoy!
- git aliae so that you never lose work (part 2). (via) Aliae is the plural of alias?
- The Setup; people’s work environments. I’ve linked to it before, when nabbing links from Trivium, but I never realized how many people there were to look at. People like Chet Faliszek, Gabe Newell, ‘bunnie’ Huang, _why the lucky stiff, Lee Hardcastle, Joel Johnson, MC Frontalot, Derek Yu, Eric Meyer, Anil Dash, Jordan Mechner, Andy Hertzfeld, and Ryan North. There’s a lot more. If any of those names are unfamiliar, you should go look them up and be pleasantly surprised.
- How to use DragonFly to troll Amiga users. Funny/sad, like most trolling.
- One does not simply run Unicorn in DragonFlyBSD. Not sure what Unicorn is, but I feel bad that it crashed.
- Become a Vim Master By Learning these 30+ Key Bindings. Well, it’s vim, not vi, but oh well. It’s the standard list of commands that normally makes up articles like this, but I still look, in the hopes that I’ll permanently absorb another movement pattern and get that much faster.
- Which hashing algorithm is best for uniqueness and speed? (via) The colorized hash maps are a pretty interlude in a technical discussion.
- Speaking of Vim, here’s the M command, implemented for a web page. (via) The only better thing would be a vertical split screen view.
- End of a Fishing Expedition. Makes a good point about the recently-lost-by-Oracle lawsuit about copyrighting APIs: if that was possible, most Unixish operating systems, including BSD, would suddenly have legal problems. Also, the judge in the case apparently knows how to program, and actually established a point of law instead of shrugging and saying “These kids and their newfangled Internets confuse me.”
- CPU wars. (via) A trump cards game based on CPUs. Super-nerdy!