Category: Someday you will need this
For those of you looking to rent a place to run DragonFly, Nuno Antunes has very helpfully written out his procedure for installing DragonFly on a Digital Ocean ‘droplet’.
Another week where there’s so much to link to, it overflows into next week.
- Inaugural SemiBUG meeting notes. Next meeting is December 15th, with Josh Grosse presenting on bulk package builds in OpenBSD.
- Yahoo and FreeBSD (1997). For those who enjoy correlation without clear causation, there’s a relationship between Yahoo’s fortunes as a company, and reducing their usage of BSD. (via)
- “…I use BSD for my websites for a reason.” Similar material sprinkled through the comments. (via)
- What are some active BSD-focused blogs or news sites you follow? My answer’s in there.
- Setting color temperature.
- Try to make Graylog2 working on FreeBSD (and failed)
- Various options for presentation software on the BSDs. (Follow thread)
- rough code and working consensus, working in a group at the recent u2k15 hackathon.
- Speaking of which, one more u2k15 report.
- NetBSD machines at Open Source Conference 2015 Tokushima.
- Samba QoS? (FreeBSD)
- DiscoverBSD for 2015/11/16.
- OPNsense 15.7.19 Released.
Imre Vadász fixed top so that hitting ‘c’ filters displayed processes by command name. I am mentioning this not because it’s a huge change, but because I forget about all the interactive elements that are possible with top.
This is the week for entertainment, not deep thought.
- Not Even Close: The State of Computer Security (with slides) – James Mickens. I am always up for more Mickens. (via)
- Ferrolic. A sort of dali clock in real life, except crazy expensive and fragile.
- Inside The Machine, midcentury graphic images of computing.
- 80s computer hacking: a supercut. Here’s some good discussion. (via)
- Everything is turning into a service mediated by other companies. Everything. (via many places)
- Amiga 30 and the Unkillable Machine. (via)
- Touching the Internet, a story about MAE-East. (also via)
- The Big List of Naughty Strings. Good for testing input. (via)
- “Means Well” Technology and the Internet of Good Intentions. (via)
- Illuminascii, stretching the definition of roguelike.
- An excerpt from the new book Dungeon Hacks. (via)
- The Name Game: Rebranding the Roguelike. (also via)
- A Brief History of Character Codes. Relevant for all the locale work going into DragonFly right now. (via)
- “RegEx match open tags except XHTML self-contained tags“. See first answer. (via)
- The 8th Underhanded C Contest is now open. (via)
- The ARM processor architecture: Somebody else’s introduction.
- CSVfix. This will be handy to someone.
- Cameron’s World. A concentrated dose of Geocities. (via)
If you are sure you don’t need to look at your boot menu for very long in DragonFly, you can make it zip by quickly.
NYCBUG is having a chronologically appropriate speaker: Steven Kreuzer, talking about the Precision Time Protocol. It’s 6:45 PM (EDT) tonight, at the Stone Creek Bar & Lounge in New York City.
DragonFly builds two compilers by default. If you weren’t interesting in building both, there were switches to build only the default, like NO_GCC47. This changed with every compiler update.
With the switch to GCC 5, the new switch is “NO_ALTCOMPILER”. That will last through compiler changes. I’m mentioning this now because sooner or later, you’ll want to gain back some time on a buildworld.
I have had trouble with my daily/weekly periodic reports never making it to my GMail account. Sascha Wildner pointed out to me that periodic.conf has its own answer already:
… and newsyslog is already set to take care of them. There’s more in the periodic.conf man page.
John Marino’s written an extensive page about wireless and DragonFly, on dragonflybsd.org.
It’s been a quiet week in BSD-land, at least in terms of me finding links.
- “I know BSD isn’t secure because I can’t install Norton.“
- “Oops” and there’s D-Link DIR-655 support in FreeBSD.
- The ata driver in FreeBSD is
removedmodified. (see comments)
- Steam available on PC-BSD. Old news, but always good.
- service(8) now available in NetBSD too.
- How to check out older revisions of pkgsrc packages.
- Tips on a DB9-RJ45 serial cable for Sun hardware, from OpenBSD.
- URL blacklisting in OpenBSD.
- lmc(4) and san(4), removed from OpenBSD.
- RFC7427 support in OpenBSD.
- DiscoverBSD for 2015/03/23.
If you’re looking to change your DragonFly system’s keymapping to support a non-US character set, use this users@ post from Adolf Augustin as a cheat sheet to make all the right changes.
The other day, I updated some packages using pkg. The default version of PHP went from 5.4 to 5.6. I ended up doing what /usr/dports/UPGRADING says and making a list of all PHP packages on my system, before removing PHP and its dependencies. I then reinstalled the packages that used PHP, bringing the needed packages back in at the right version. pkg 1.4 didn’t handle the transition cleanly, unfortunately. I also had to specify mod_php56 because pkg was trying to get the 5.4 version despite it not being default.
None of these are insurmountable problems, but it never hurts to be forewarned. pkg 1.5 is on the horizon and may have an easier time with sorting these types of dependency/version changes. This may apply to FreeBSD in addition to DragonFly.
If you have a HDMI-connected monitor, but no sound, this trick about increasing available memory may help.
John Marino has written up an extensive how-to for slider, the history tool for Hammer filesystems, including screenshots.
For whatever reason, I’ve seen several people in the last week or so have mouse problems on install, and they were often solved by running moused. So, there’s your little reminder.
John Marino has created something very useful: a graphical tool for Hammer file history. It’s called ‘Slider’, and it uses curses to work in a terminal. It shows historic versions of files and can restore those old versions as needed. This was already possible in Hammer, of course, but it required a sequence of commands that were not straight-forward. I’ve been slow enough posting it that version 2.0 is already out, offering a way to see files that no longer exist, but are still in history. (i.e. deleted some time ago) ‘Time Machine’ sounds like the best name, but that seems to be taken.
One way to keep file history on an very active Hammer disk from eating up all the space: more snapshots. This may seem counterproductive, but disk pruning eliminates historical data between snapshots, so you can keep older data at the cost of some temporal accuracy.
From a question about mixing in a SSD and a very slow disk: swapcache can make things better, though I suggest other crazy arrangements.
Get ready for some reading.
- There’s some packages moving from pkgsrc-wip to pkgsrc proper.
- pkgsrc-2014Q4 branching is planned for Monday the 15th.
- PC-BSD now has an automatic package/security patch upgrade mechanism.
- Steam on PC-BSD. Holy grail, there.
- PC-BSD needs testers for the new Update Manager, for moving from 10 to 10.1
- NetBSD has imported BIND 9.10.1-P1.
- OpenBSD has added skgpio(4), a driver for the Soekris net6501 GPIO port and LEDs.
- OpenBSD has updated Unbound to 1.5.1.
- Some Japanese input methods for OpenBSD that may work on other BSDs, too.
- pfqstat, a replacements for pfstat designed to work with Charted.
- I don’t know what the ‘BERI Virtio Networking Frontend’ is, but FreeBSD’s got it.
- fstyp(8), the filesystem detector.
- FreeBSD has added AES-ICM and AES-GCM modes to OpenCrypto.
- If you’re stopping in NYC, NYCBUG would like to hear you talk on a topic of interest.
- The case for distributed operating systems in the data center. Sounds like DragonFly’s original charter. (via)
- BSDNow wants to hear your getting-into-BSD story.
- OpenBSD libc version 78.
- There’s a lot of FreeBSD systems at NYI.
- “FreeBSD Mastery: Storage Essentials” is now in physical print.
- “Networking for System Administrators” is next to come out.
- And “Tarsnap Mastery” is next to be written.
- …We’re all benefiting from Michael Lucas going full-time on writing.
It’s possible, if you are several releases (years) behind, to end up with a DragonFly system that can’t compile and install the current release, due to incremental changes over time. It’s rare, but it could happen now between, say, version 3.4 and 4.0. The usual solution would be to incrementally upgrade in order, which is a lot of building and updating. The alternative is the new installworld-force option from Matthew Dillon that forces a new set of binaries into place. Use as a last resort.
This page, Varialus et Anisoptera, set up by… I’m not sure of the real name but it’s ‘varialus’ on IRC – has a detailed description of the DragonFly install process and installation of MATE, plus extra notes. I always find these sorts of cheatsheets entertaining.
Predrag Punosevac posted his writeup of using LDAP and DragonFly, which I’m noting here for the next person that needs LDAP authentication.
It seems pkg 1.3.6 was slightly scrambled. If you happen to have built and installed it, John Marino has special instructions on how to update to 1.3.7. If you are on DragonFly 3.8, you can follow those instructions now, and if you are on 3.9, that repo should be ready for an update in the next few days.
You should perform a full world and kernel install if on master.
Several people (including me) have been getting bit by a problem: when performing an installworld with a changed kernel, the vn kernel module is loaded, but it was built by the previous kernel and may cause problems when it doesn’t match up.
To fix that, vn is now built in, instead of being a separate module. The rescue initrd (which is what is being mounted when it has this problem) is now installed via a ‘make rescue‘ command that can wait until a successful installworld and reboot.
If you have a DragonFly system with an iwn wireless chipset, and you are having trouble connecting and running in the 5Ghz part of the spectrum only, here’s a tip: the -ht switch may fix it.
While Matthew Dillon was testing the new up-to-256-processor support for DragonFly, he added a few sysctls, one of which helps qemu performance when emulating a lot of processors. I note it here in case it’s helpful to someone else.
A note for everyone: use Hammer default on a very busy filesystem, and you will eat a lot of disk space since all file changes are recorded. (I’ve done this to myself a few times.) Francois Tigeot has a list of tips on how to keep that from happening.
O’Reilly is running a 50% off special on a variety of books on electronics, with coupon code WKECTRC. I’m posting it now because it only lasts for this week.
Update: another offer just popped up in my email – 50% off various “web performance and operations” books with the code CFVLTY4.
If you’re building ports, it will treat OpenSSL as a dependency and bring in whatever version is available. If perhaps you want to use the version of OpenSSL installed as part of your base system, Robin Hahling has the answer for how. (This probably works on FreeBSD too.)
Remember the joke I and probably a zillion others made about OpenOpenSSL? It’s happening, except it’s called LibreSSL. (thanks, Tomáš Bodžár)
If you noticed the lack of a GUI DVD image for the 3.6 release of DragonFly, I posted a followup note on the users@ list that talks about the steps to get X installed. It’s not much work, with pkg set up.
There’s been periodic commits updating the USB4BSD support in DragonFly; I haven’t been linking to them because they are generally incremental. However, it’s good to (re?)mention just how you can build DragonFly with that new USB support.
Recent updates to tzcode apparently fixed a long-standing time zone bug in DragonFly. POSIX says the America/New_York timezone is picked as default if nothing else has been selected. That didn’t happen in DragonFly – until recently. If your timezone seemed to suddenly jump to U.S. Eastern time, that’s because you never picked before.
I didn’t post this before, and should have: Matthew Dillon posted a summary of all the trackpad improvements he added, and how to make use of the various features.
There’s a lot this week, so let’s get started:
Unix: 14 things to do or stop doing in 2014. These tips are actually useful and contain no buzzwords.
TrewGrip, another item in my quest for interesting keyboards I don’t use.
4043 bytes to recreate a mid-80s IBM PC. There are less bytes of data in the program than there were transistors in the CPU that it emulates. It can run MS Flight Simulator. It was for the International Obfuscated C Code Contest, which should surprise you not at all. (via)
The World’s Most Pimped-Out ZX81. I don’t think it can run Doom, though.
Technology used to suck even when it was cutting-edge, and we’ll still feel that way in the future. (via)
Able to be turn on, and that is it. Sci-fi movies ignore where technology comes from.
True Nuke Puke Story. My mine coworkers once did something similar to a copier repairman; got him so worried about going underground that he had a panic attack when he had to step on the hoist. We had to get a new repairman.
If you want to track the bleeding edge of DragonFly, which is currently version 3.7, I happened to describe it in a reply to Filippo Moretti, on users@. Long-time users will know this/do this already, but it’s worth repeating just because new users may not realize how easy it is.
Here’s how my upgrade from DragonFly 3.4 to 3.6 for this server went.
The system install went normally. I rebooted before performing ‘make upgrade’, as noted in UPGRADING and elsewhere.
I already have dports installed, so a binary upgrade should be possible. I had heard of people with older version of pkg, having trouble getting it to notice upgrades. I rebuilt pkg, and ran ‘pkg upgrade’. A number of the updates coredumped. Here’s one example:
[156/160] Upgrading gtk2 from 2.24.19 to 2.24.19_2...Segmentation fault (core dumped)
After the upgrade, I had two problems: PHP wasn’t working for the website, and some programs would segfault.
The random segfault was fixable by forcing a binary upgrade of all packages. Since there were some programs on the system that were still new enough that the version number was the same as on the remote repository, pkg didn’t upgrade them. Those packages were linked against old versions of system libraries that predated the locale changes in DragonFly 3.6, so they’d crash. Forcing the update for all packages fixed the issue.
The other problem, PHP on the web server, is not new to me. The binary package for PHP does not include the module for Apache. The solution is to build from source with that option selected. I understand that pkg is destined to support (some?) port options in the future. There’s also an immediate workaround for locking it.
However, the port would not build because of a security issue. The binary package installed without any warning. This, I am told, will change to pkg giving you the option to install if you are aware of the security problem, and whether it really affects you. (which is just what I want, yay!)
Anyway, other than the system changes biting me because I didn’t realize some packages weren’t updated, it went very quickly. That is the reason for binary updates through pkg, or at least a major one.
Still quiet out there, but I found some good reading.
Another Perl One-Liners review.
Vim plugins you should know about. From that One-Liners author.
Speaking of Perl, here’s a Larry Wall interview. An old-school hacker – he wrote patch, too.
Moonpig: a billing system that doesn’t suck. An in-depth review of system design. More Perl, too.
Three Books You Should Read… Mostly BSD content.
Your unrelated comics link of the week: Cookie Puss.
Things are very quiet this week; I’ve had nothing to post for some days – DragonFly or even for other BSDs. The end of the year has most people distracted, I think. This makes it a good time to bring up something that’s been bothering me: the state of software firewalls in BSD. The pf utility is a BSD advantage; I’ve heard people say “I used iptables on Linux and pf is a much better alternative.” I know that’s anecdotal, but there it is. Here’s the question, and the reason I’m writing this: which pf?
DragonFly has a version of pf equivalent to what was shipped in OpenBSD 4.4. FreeBSD has a version equivalent, I think, to OpenBSD
3.8 4.5’s pf, and it has been further modified. NetBSD has a similar, older pf, but there’s people working on a NetBSD-specific version called npf, which isn’t yet ready. And of course, OpenBSD has its version of pf. If you feel good about these different alternatives, you call it divergence. If you don’t feel good about it, you call it fragmentation.
Compare this to OpenSSH – it works the same on each platform. There’s no confusion on how to configure it, or interoperability problems. It would be wonderful to have the equivalent for pf, where other BSD platforms would import a portable version. This software firewall is a strength, and it’s much easier to tout it when there’s only one.
I doubt there’s a way to bring it all back to one source tree. There’s a lot vested in the different forks out there. You know what would take a lot less effort: a compatibility test suite. Agreeing on a common syntax and set of functions would make life easier for every end user. It would incidentally make vendors a lot happier, too. Even if a user or vendor wasn’t hoping to move between BSD flavors, a test suite would still guarantee a certain known level of functionality for any BSD release.
How likely is this? I don’t know. But I want to bring up the notion before it gets missed. Now is a good time, with each pf version still being relatively close to one another.
Update/note: Henning Brauer is willing to help.
Happy birthday to me!
- Is Your Stack Protector Working? On Undeadly, so it’s OpenBSD.
- ChaCha20 and Poly1305 in OpenSSH. (via)
- The next PC-BSD 10.0 image is available.
- Reid Linnemann is the latest in the Faces of FreeBSD series.
- NetBSD has updated file.
- FreeBSD’s iwn(4) driver has some updates (also in DragonFly).
- FreeBSD now has casperd, for controlling access to out-of-sandbox capabilities.
- FreeBSD’s oce(4) driver now supports 40Gb devices. (yay for manufacturer support)
- FreeBSD has Hyper-V drivers.
- OpenBSD’s ifconfig now shows the NWID, channel, and BSSID for IBSS networks.
- OpenBSD has updated to pixman 0.32.4.
- pkgsrc’s 2013Q4 freeze will start on the 16th.
- How old is who? (Don’t tell me 900 years.)
- There’s a broken builds list for pkgsrc-2013Q4 for anyone who wants to help.
- Hacker News had a link to the FreeBSD version of the BSD Family Tree, which is not unique, but the comments led to some interesting links, like this story of an 8-year NetBSD uptime.
- FreeBSDNews’s summary.
- All the AsiaBSDCon 2013 videos. (Last week’s link was just OpenBSD ones.)
- FreeBSD authentication against Samba 4 LDAP. I’m going to need this for the DragonFly machine I’m setting up in the same role at work… in my copious spare time.
This post from Konrad Neuwirth asking how to do a minimal installation of DragonFly led to this list of all the ‘knobs’ you can set to make your installation smaller, from John Marino. (And your buildworld faster, if that’s appealing to you.) I also pointed at rconfig and PFI, which are criminally underdocumented.
If you’re planning to run DragonFly in KVM, remember this post from Matthew Dillon, giving the settings he uses. This will save you a bit of time.
It’s been snowing this week in the northeast US, which makes me happy.
- Unix: sending signals to processes. Signals have always struck me as a somewhat byzantine messaging system that everyone uses for the equivalent of Ctrl-C.
- Unix: Debugging your scripts. This will be useful if it’s not already familiar to you.
- Compatibility is Hard. Contrary to popular belief, Microsoft Word documents are not backward or forward compatible, from release to release.
- From that previous link: Why Microsoft Word Must Die. The worst problems to troubleshoot are when someone says “Word/Excel is acting funny”. There’s so many intermediate layers of software in those programs that it’s difficult to find the actual data and the actions being performed on it, much less troubleshoot any process.
- SparkFun.com moved from MySQL/MariaDB to Postgres. I agree with the sentiments in the article, but I want to know the technical reasons that made Postgres the choice for scaling. (via)
- Apple ][ DOS source code. I don’t have anything I can actually do with the source, but there’s a 1977 price list pictured in the the article that shows some interesting numbers: A 4Kb RAM system costs about $1300, and the prices just go up from there.
Your unrelated comics link of the week: the first four pages of Necropolis. This comic looks to be fun.
If you’ve seen my previous two reviews of Michael W. Lucas’s ‘Mastery’ books – DNSSEC Mastery and SSH Mastery – then you can guess what this will be: his newest book, focusing on a single software topic. This time it’s sudo.
The one downside of reading this book: I now am aware I’m using sudo wrong. Perhaps not wrong, but not anywhere near its potential. Sudo – and I’m not the only person who has experienced this – is used as a “Let’s install sudo so we don’t have to tell anyone the root password”. Sudo works for that sort of thing, but there’s a lot more possibilities.
Sudo is designed to be deployable across multiple systems, as part of a security policy. It’s an easy way to create purpose-shaped roles with different users, especially with users that have specialized skills and tasks, like database maintenance.
Obviously I think better of sudo after reading the book; there’s a lot of program capabilities of which I was unaware, but it’s the book that sells them. Michael W. Lucas’s humor is on display again, to break up some very technical material. Here’s some bits, pulled out.
Remember that “syntactically valid” is not the same as “does what you want.”
Pressing Q tells visudo to break sudo until you log in as root and fix it. Do not press this button. You won’t like it.
Here I create the TAPEMONKEYS alias for the people who manage backups.
And if Carl tries to configure Oracle on the PostgreSQL server, senior sysadmin Thea needs to have sharp words with him. Probably involving a tire iron.
The book is in-depth enough to cover more complex topics like using sudo and Active Directory, and sudo as an intrusion detection tool, of all things.
The usual reasons to buy a Mastery book are all still there: it specifically mentions working on BSD systems instead of pretending Linux is the only system out there. It’s available through a DRM-free seller (Smashwords) in addition to Amazon. It’s a self-published effort, not shovelware. It’s available now as an ebook, and in physical form soon. Lucas talks about it on BSDNow 010, too.
I have one last nontechnical note. Since these Mastery books are working into a series, I’d like to see a whole printed run of visually matching books. Something with the equivalent of the O’Reilly animals or the Pelican or even Little Blue Books common look and feel.
The takeaway: You should be reading this book if you plan to use sudo in any sort of multiuser environment. It’s available as an e-book direct from the author, via Amazon, via Smashwords, and possibly Barnes & Noble at some point in the near future. Physical books are available, and you can buy both forms together, apparently.
And of course this sudo joke.
I spent this entire week saying things like “Wait, today’s Tuesday?” and “I thought this was Wednesday, not Thursday.”
- Welcome to my GUI Gallery, a whole lot of different GUI screenshots. This mention of the “Salto” Alto emulator brought me there, and there’s some material I’ve never seen before. Also, there’s Bob. Not “Bob” the prophet, but Bob, the computer mistake. Speaking of problematic designs, see the Windows 8 page.
- 5 Cool UNIX Hacks. Sounds linkbaity, but it’s useful. I didn’t realize that CTRL-a is the non-destructive version of CTRL-u. (via)
- This seems strange, but I never heard of PLATO, even though it seems to be the precursor to so much. (via)
- “Goodbye Google“, in terms of switching to your own platform, seems to be a new trend.
- arkOS, a similar idea.
- Finding Files Your Way. I can never remember all the arguments to ‘find’.
- Google has a Shell Style Guide. Which equates to a Bash Style Guide, but that’s OK. Shell scripts are sometimes considered the most disposable form of programming, so it’s good to see a full guide. (via)
There’s a surprisingly large list this week.
- FreeBSD has updated netmap.
- FreeBSD supports VT-d DMAR hardware. Not totally sure what that is.
- FreeBSD supports the RealTek RTL8168G, RTL8168GU, RTL8411B, and RTL8168EP.
- FreeBSD updated byacc to version 20130925.
- FreeBSD has binary packages again.
- Managed Services using FreeBSD at NYI, a whitepaper.
- NetBSD has imported OpenBSD’s support for ASIX AX88178a and AX88179 USB network interfaces, in the axen(4) driver.
- NetBSD supports the Broadcom BCM56340 iProc based switch.
- OpenBSD supports unattended installation. See Also on Undeadly.
- OpenBSD has softraid booting documentation. Someone will find this useful, I’m sure.
- OpenBSD 5.4 is released.
- Inspecting Packets with OpenBSD and pf, the presentation from vBSDCon.
- Lua in pkgsrc has been modified.
- Ocaml in pkgsrc has been updated to 4.0.1.
- The BSD Router Project has hit 1.5. (via)
- PC-BSD 10 alpha images are available for testing.
- PC-BSD is doing weekly updates, an idea I support, unsurprisingly.
- No BSD systems in Google Code-In this year, darnit.
I think I’m finally catching up on the backlog.
- Unix: Flexibly moving files with lftp. I usually copy and paste a shell script together.
- BANCStar source code. In that sort of environment, there’s no good or bad code. It has moved beyond such considerations. (via)
- The Lenna Story. About the 1972 Playboy centerfold image used to test image compression. I mentioned it once before in passing. (via)
- If you find regular expressions difficult, putting another layer of expression on top doesn’t help. (via)
- How not to check the validity of an email address. I had a similar experience at an old job in 1999, where a coworker set a site’s main page to get all news stories and then showed the 10 most recent. This started to really slow things down when we reached over 5,000 stories… (via)
- Achieving Rapid Response Times in Large Online Services. A PDF of slides. (via)
- It’s described as “the best programming fonts“, but it’s really the most popular monospaced typefaces. Who cares about correct language – it has visual examples. (via)
- Phone keypads could have been very different. (via)
- Sudo Mastery’s first draft is complete. You can buy it now and get updates as it gets polished.
- Have yourself a keysigning party. GPG is complicated. I know there’s reasons, but still, this is the sort of thing that would be better with as little barrier to entry as possible.
- The Internet, via Commodore64 and Neuromancer.
Your unrelated link of the week: The Alan Lomax recordings.
Another week of links completed early. And there’s a lot, so get clicking!
- 1BSD, the installation. Interesting to see the procedure and the tools used.
- Over the Rainbow, polychromatic type from Microsoft. I don’t know if this is as exciting as they seem to think it is.
- Do your own backups. Yeesh, what an unfortunate event. I’m fixing up my backups now, after my own troubles.
- Operating System Development series. Dry but interesting. (via)
- Windowing operating systems are too messy, too restrictive. From 1984. (via)
- Home Automation via the Internet. For those who don’t want to deal with x10.
- Chess implemented in Sed. No en passant? Sheesh, I was on board until that point. (I’m making a joke) (via)
- Managing sshd in Ansible. Ansible’s getting more popular, it seems.
- Remember that PDF compression/scanning error I mentioned a few weeks ago? Xerox has fixed it for their devices, and the patch is available. One of the ways to apply the patch is to print the file to a copier, via LPR/raw. Firmware updates via printing – that seems like a good and bad idea all at the same time.
- An XKCD cartoon slightly related to the previous link.
- Learn to code. (via)
Again, lots of links. Some of these are overflow from previous weeks where I just said “That’s enough; let’s work on the next Lazy Reading.”
- Perl, the Detroit of scripting languages. The slides are entertaining, but it’s also interesting for the discussion of how to handle a very old code base and a community. (which are BSD issues too) (via)
- Ruins of Forgotten Empires: APL languages. “APL uses one thread per CPU, which is how sane people do things.” (via)
- Remember when we used mega- prefixes to measure disk and memory, and not bandwidth?
- Ian Lance Taylor’s 20-part series on ELF linkers and linking. (via EFNet #dragonflybsd)
- PDF compression formats. Incidentally, here’s an answer on the Xerox number alternation issue, where compression means one number gets misidentified and substituted for another. The Economist has a not-crazy take on it. It’s not a Xerox problem but rather a JBIG2 compression issue. I have a number of Xerox models at work and have not seen this issue, but also haven’t checked for it.
- OSI, the Internet That Wasn’t. People only ever care about levels 1, 2, 3, and 7 in the OSI model. And this joke. (via)
- The Toshiba Libretto. You can get more powerful, smaller computers now, but they’re cheap netbooks and totally uncool.
- A crash course in tmux. (via)
- Whatever room you keep your primary computer in – clean it, please.
- Robots for destroying buildings. This is not some speculative article; these are robots you can buy right now. Screw the flying cars joke everyone makes; the future is now. (via)
- How to shutdown computer under Linux? A rough summary of how Linux can be a moving target for actual usage.
- Vim 7.4 out, mostly so there isn’t so many patches to apply.
- Goto is making a comeback. (via Eric Radman)
Your unrelated link of the week: Mighty Taco radio ads. Mighty Taco is a Mexican fast food place from Buffalo, New York, USA. It’s about as authentically Mexican as fast food from a city on the edge of Canada can be, which is ‘not much’. I’ve always loved the food, though, and the commercials are just the right mix of amateur joke and commercial advertising.
killall -T will now kill all processes associated with the current tty, except parents of the killall process itself. It’s a shortcut to “kill all these runaway items I started by accident”.
Last week was relatively light, but somehow this week I read a zillion interesting things. It’s been too dang hot to do much else, other than flop in a chair and point a fan at my head.
- Chopping up CSV files. Tabular format will never die, and for good reason.
- Reanimated: The story of Vampire: The Masquerade Bloodlines. I like this idea that someone can just keep working on a project long after the originating company disappeared, just to improve it for their own benefit – no mention of open source or even a plan for it. See also Oblivion Lost or Complete for some of my personal game fix/improvement modification favorites. (via)
- I don’t think this systemd/Debian news is accurate in its reasoning, and they don’t say what’s going to happen with non-Linux Debian. However, it’s still crappy, any way you slice it. (via)
- The paranoid #! Security Guide. Lots of details that won’t necessarily apply to your BSD system, but the descriptions of various attacks are neat. (via)
- Another reminder of how easy it is to deal with a lot of text data at a Unix-ish command line. (via)
- Those ssh password attempts are still going, and have been for a decade. (via)
- Don’t care about the story, but I like the dragonfly illustration.
- Linus Torvalds swears a lot. The problem is not ‘office politics’ as he sees it, but that if you swear all the time as the leader of a project, it becomes commonplace. Linus really has to really freak out for people to notice something new. There’s other issues, like how other people emulate the behavior, but I’m pointing out the ‘verbal base sweariness’ of a project affects the entire tone.
- Quine Relay, where programming languages write each other. The Ouroboros illustration is appropriate. (via many places)
- History of emacs and vi keys. I like how this shows that the command styles in both editors was shaped by the available hardware. (via)
- Fear and Loathing in Debian^H^H^H^H^H^H/Ubuntu (or: who needs /etc/motd). A wonderful rant about the creeping complication of operating systems. Let’s place bets on when people start complaining about Linux bloat. (via luxh on EFNet #dragonflybsd)
Your unrelated link of the week: Bones Don’t Lie. An anthropologist who blogs about various discoveries of human remains. I really enjoy blogs where someone is talking about a subject they care about – not to sell a product, not to be paid (directly), but just because they like the topic and they want to share it with others. Of course I would think that, wouldn’t I?
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
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.
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)
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.
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.
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.
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.
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.