Category Archives: DIY

Another quick Linux aside/breadcrumb, I had some hand-written Udev rules start causing errors on my Arch boxes a while back, and just got around to fixing them. The basic problem is that the Udev rule syntax has changed, and statements … Continue reading

Posted on by pappp | Leave a comment

The previous post ended with “I have no idea why the nodes won’t boot.” Now we know. The problem is that, in terms of the mkchroot-rh script that Warewulf3 comes with, Fedora 16 is not a Redhat derivative. This makes … Continue reading

Posted on by pappp | Leave a comment

Warewulf, and the Kernel Documentation

Earlier, while trying to instrument a failing boot from some peculiar nodes we were trying to provision, I came across the following gem in the Linux kernel documentation, from Documentation/filesystems/ramfs-rootfs-initramfs.txt:

Note: The cpio man page contains some bad advice that will break your initramfs archive if you follow it. It says “A typical way to generate the list of filenames is with the find command; you should give find the -depth option to minimize problems with permissions on directories that are unwritable or not searchable.” Don’t do this when creating initramfs.cpio.gz images, it won’t work. The Linux kernel cpio extractor won’t create files in a directory that doesn’t exist, so the directory entries must go before the files that go in those directories. The above script gets them in the right order.

Yup. If you follow the documentation for the tool, it renders your system unbootable. The linked documentation is actually pretty cool – it explains the rationale for the current state of the boot process, including that charming behavior, and links to the original discussions. But the particular behavior is still kind of psychotic.

Upside: After today’s digging I know all kinds of neat things about the current Linux boot process, which I hadn’t relearned after it changed at the the 2.4/2.6 transition. Similarly, the last couple times we had problems with Warewulf 3 (or, actually, Redhat-isims interfering with Warewulf) brought me back up to speed on interpreting raw packet logs from Wireshark, so this has all been thoroughly educational.
Downside: I have even less idea why the nodes won’t finish booting – the check I was adding was to test our theory that they were running out of memory, and they don’t seem to be.

Posted in Computers, DIY, General, School | Tagged , | 1 Comment

The best of 28C3

I already posted deeper thoughts about some particular talks, but I’ve been watching talks from 28C3 all week, and now that the high-quality permlink videos are up, I want to share some of my favoites. If you would like several hours of background video that will make you a smarter, and possibly better, person, these are excellent.

Roger Dingledine, Jacob Applebaum – How governments have tried to block Tor (Video)
This is the real hacking to change the world for the better situation. These are the hackers who are protecting the people who will get chopped up and mailed to their families for what they say. They deserve all the respect and support in the world. I’m not intellectually equipped to help with Tor, but it is always good to keep humanitarian aspects of engineering in mind – both what you can do to help, and when you may, even inadvertanly, do harm.

Bunnie Huang – Implementation of MITM Attack on HDCP-Secured Links (Video)
I hadn’t really considered the collection of non-infringing desirable things that HDCP ruins (Ever wonderd why Picture-in-Picture stopped being so common? Blame the copyright industry and HDCP.) Bunnie thought about it, and made a consumer-grade product that fixes it. The FPGA crypto+signal work is badass, the hardware platform is awesome, and seeing how it went together as a consumer product is inspiring.

Meredith Patterson – The Science of Insecurity (Video)
Thoughts in a previous post here.

Cory Doctorow – The Coming War on General Compution (Video)
This is why you invite SciFi authors to technical conferences. It lacks the technical depth of most of the other talks I bumped, but it’s insightful and far looking and right.

Evgeny Morozov – Marriage from Hell (video)
This was the keynote, and, unlike most keynotes, really did set the tone for much the conference. The basis of the talk was discussing the issues of large scale surveillance technology, and the role of western companies and governments in creating and perpetuating the industry. A big part of the message is that the technology being paid for for monitoring employees in commercial settings and “lawful intercept” is being sold to authoritarian governments for whom such technologies would otherwise be out of reach, to hunt their citizens.
I thought the Tor talk above actually made a more forceful argument, but this is a better starting point. The hackers have been harping about this for far longer than the rest of the world: these are the people who have been handling the forbidden knowledge computing opens up, and they saw the disaster coming. The freakout isn’t about what large scale surveillance is going to do to hackers – we have the tools to protect ourselves – it’s what it will do to everyone else.

Ang Cui, Jonathan Voris – Print Me If You Dare (Video)
There was some stupid news responses to this (of the “OMG T3H H4XORS WILL BLOW UP YOUR PRINTER” variety) when it was first disclosed, but the hack itself is terribly clever. The reverse engineering foo is tight, the hole they exploit is a classic “I would have done that but … facepalm” kind of hole, and the attacks it enables are a massive evolution of a known mechanism.

Geeks and depression panel(video)
The geek community tends to have depression issues – this isn’t news. The hacker community is an amazing, close, supportive community – this won’t surprise many geeks, but it might surprise others. They talk about this reality. The session is, by the way, really hard to watch. I’m not ashamed to say it made me tear up.

I haven’t seen every session, or even every English session, so I’m no doubt missing some good stuff. There were definitely some other awesome talks; the GSM and USB Reverse Engineering ones were awesome but don’t have quite the same “YOU MUST WATCH THIS” pull to them. I welcome suggestions for other amazing things I may have missed.

Posted in Computers, DIY, Electronics, Entertainment, General | Tagged , | 1 Comment

Touchpad Dual-Boot

I dual booted my Touchpad with CyanogenMod last week, and it has made me notice a lot of things about the Touchpad, WebOS, and Android that I hadn’t fully appreciated before. I wish I had thought to post these as snippets instead of a wall of text, but I foolishly gathered them up and am posting as a set.

Details about putting CM7 on the Toucpad are here in this RootzWiki forum thread. Yes, their page and documentation are a forum thread with 100+ pages of screeching morons obscuring the content – that’s how the Android community tends to be.
The whole CM7 install process is pretty graceful – I had a minor hiccup in that it claimed the gapps would be installed on the first ACME run if I put them in the cyanogeninstall directory, but I had to go in with ClockWork and flash them later – then it hung on the setup autorun on the next boot. Fine after that. During the initial install, I found myself using the phrase “Oh jeez, there is some Linux shit going on”  — it looks like the ACMEInstaller is just a fancy initrd image with some utilities and scripts baked in that does some FS manipulation and archive decompression.  I appreciate it when Linux is Linux. 
Onward to notes:
Continue reading

Posted in Computers, DIY, Electronics, Entertainment, General, Objects | Tagged , , | 1 Comment

Teaching Embedded Systems (with Arduino)

Now that the classes are winding down, I want to write up some internet-accessible notes about the embedded systems unit I designed and taught for EGR199 this semester. The unit went well, and I can see basically the same materials being reused, so having a nice content dump for me or any other instructor to use is worth the effort. Long winded version after the fold.
Continue reading

Posted in DIY, Electronics, General, Objects, School | Leave a comment

Touchpad

I picked up one of the $150 refurbished 32GB Touchpads in the last firesale on Sunday. It seems like HP has done their very best to get as many Touchpads into the hands of hackers as possible, so whether or not it is well supported by HP, the community will do something fun with it. Besides, a $150 ARM developement platform that will boot Android, various Linux chroots, AND let me play with WebOS was too appealing to pass up.
Continue reading

Posted in Announcements, Computers, DIY, Electronics, Entertainment, General, Objects | Leave a comment

Source Scroller

I’ve been working on a side project to make a source display widget for the aggregate.org SC’11 exhibit, and it is surprisingly problematic. The goals for the program are as follows:

  • Take a directory of source files as input
  • Automatically perform appropriate syntax highlighting on the source files.
  • Display (On a dark background – intended use is a floating projection display) all the source files consecutively.
  • Scroll automatically through the output in a pleasing, readable way.
  • Be capable of repeating this action unattended indefinitely.

Continue reading

Posted in Computers, DIY, General, School | Leave a comment

Arduino Promotion Behavior

I was pulling up an old project (A little Simon game which has apparently fallen off the ‘net when I moved my site- will have to repost) to use as a classroom demonstration, and discovered that sometime in the last couple years, the int->unsigned long promotion in Ardino/Processing broke/changed without comment.

The code uses using primitive nested counters and delays to generate sounds and control difficulty, which means rather large numbers (100-microsecond scale delays running for seconds) are being thrown about. To isolate the change, I wrote the following test:
Continue reading

Posted in Computers, DIY, Electronics, General, Objects | Tagged , | Leave a comment

X11


Dear AMD,
Randall Munroe has correctly pointed out that you are adversely affecting my quality of life. Please fix your shit.
Hate,
PAPPP

Posted in Computers, DIY, Entertainment, General | Leave a comment