automount mmcblk devices

[ link: automount-mmcblk | tags: linux usb mmc disk | updated: Tue, 09 Apr 2013 14:26:10 ]

I put my camera SD/HC card into my laptop (running Debian/testing) and it didn't mount. Usually I would just run the mount command to get it going:

    dmesg | tail
    mount /dev/mmcblk0p1 /mnt

That unfortunately has some annoyances and I decided to solve this finally.

[Read More]

tunnelbroker vs IRC

[ link: tunnelbroker-irc | tags: ipv6 irc | updated: Sun, 17 Mar 2013 09:23:32 ]

IRC not working over 6in4 tunnel? read on...

I recently switched VPS's (to Digital Ocean) and because my new co-location provider does not come with native IPv6, I had to use a tunnel. Naturally I chose However, after reestablishing all important services, I noticed that TCP ports in the range 6666-6669 don't work -- not on IPv6 anyways. These are usually used by IRC servers.

I did a bit of detective work on trying to figure out what was going on. Initially looking for solutions on the internet, but all I found were other people having this same problem with tunnels.

[Read More]


[ link: hdd-to-ssd | tags: hw ssd | updated: Thu, 23 Jun 2011 21:28:39 ]

After reading and hearing everyone raving about SSDs for a couple of years it was hard to resists the upgrade.

So I got an Intel SSD 510 120GB to replace my Seagate 2.5" laptop HDD.

The prices in the ~120GB SSD category are pretty close. I chose the Intel based on reading that they have a low failure rate (I was unable to find the soruce when writing this up).

The Thinkpad X61 only has SATA-II; the drive supposedly has better performance on SATA3.

UPDATE: Samat K Jain points out that "the ThinkPad X61 is limited to 1.5 Gbps, even with SATA-II (Lenovo's excuse: power saving, by keeping bus clocks down)". Lots of discussion about that on the net.

[Read More]

how to manually create a 6in4 tunnel

[ link: 6in4-tunnel-script | tags: ipv6 linux script | updated: Tue, 17 May 2011 21:02:56 ]

I'm doing some IPv6 codig for a client and needed to setup a bunch of 6in4 tunnels.

Thre are many ways to do this through distribution init scripts (Debian, Fedora), but I wanted something less permanent and more dynamic for testing.

The procedure can be summarized in these steps:

  • create a tunnel mytun between local and remote

    ip tunnel add mytun mode sit local \
                    remote ttl 64 dev eth0
  • give the local end an address

    ip addr add dev mytun f8c0::
  • bring up the tunnel

    ip link set dev mytun up

[Read More]

Presentation slides published!

[ link: 20110501202915 | tags: ipv6 | updated: Tue, 03 May 2011 12:58:32 ]

What a busy week!

As the dust of the (extremely) well attended Ottawa IPv6 Summit settles, we are working through some post conference tasks.

I've just updated the presentation page on the site to include the slide decks of most of the presentations. I am still waiting for files from few speakers. You view the ones which are available on the presentation page.

As you may have noticed -- if you were lucky to get in before we sold out -- the talks were recorded. The results of the recordings will go up on our website within a few weeks.

Summit photos courtesy of RGB

What is IPv6, and why should I care?

[ link: ipv6-why | tags: ipv6 | updated: Sun, 01 May 2011 20:32:20 ]

[ NOTE: this article began as the front page of the IPv6 website ]

Whenever you use the Internet, you are using an Internet Protocol (IP) - a set of rules for communication between computers. Internet Protocol Version 6 (or IPv6 for short) is an upgrade to the most widely available Internet Protocol (version 4, or IPv4). These Internet Protocols are used to assign each computer with an address (called an IP address) that uniquely identifies it on the Web and allows other computers to communicate with it.

[Read More]

Ottawa IPv6 Summit 2011

[ link: | tags: ipv6 | updated: Sun, 01 May 2011 20:32:32 ]

In the summer of 2010 a half dozen OCLUG members decided it would be a good idea to put on an IPv6 conference for Ottawa. I was one of those people!

At the time IANA still had lots of IPv4 addresses, but it was projected to run out in May of 2011. It seemed that no one in Canada was doing anything about it, and people needed to be educated.

And so, the was born.

[Read More]

I am now an IPv6 Sage

[ link: ipv6-sage | tags: ipv6 | updated: Thu, 17 Mar 2011 10:36:28 ]

Long time no blog... I've been realy busy getting the Ottawa IPv6 Summit off the ground (along with several other people from OCLUG). I'll have to blog about that soon.

Anyway... I've also been learning a lot more about IPv6. Which reminded me that I never finished my IPv6 Certification from Hurricane Electric. I stopped at the Guri level because getting Sage (the top level) meant that I would have had to have a sane domain name registrar.

I actually registered with, and so I already had an IPv6 Glue record for this domain.

    # whois
    Domain name: 
    Name servers:       2001:470:1c:1cb::6:0

Anyway, long story short... I am now a Sage!

IPv6 Certification Badge for bartman


creating busybox symlinks

[ link: 20081011081638 | tags: busybox | updated: Sun, 07 Oct 2012 09:50:16 ]

Busybox should have a --create-symlinks-in=/sbin feature, but for now...

    ./busybox --help | grep 'Currently defined functions:' -A30 | grep '^\s.*,' | tr , '\n' | xargs -n1 -i{} ln -s busybox {}

update on 2012/03/22: Shawn Hicks points out that this works better (unverified by me):

    ./busybox --help | busybox grep 'Currently defined functions:' -A30 | busybox grep -v 'Currently defined functions:'|busybox tr , '\n'|busybox tr -d '\n\t'|busybox tr ' ' '\n'|busybox xargs -n 1 ln -s busybox

update on 2012/10/07: Nicholas Fearnley further updates the recipe to this:

    ./busybox --help | busybox grep 'Currently defined functions:' -A300 | busybox grep -v 'Currently defined functions:' | busybox tr , '\n' | busybox xargs -n1 busybox ln -s busybox

WeeChat spell suggestions

[ link: weechat-spell-suggestions | tags: weechat irc | updated: Mon, 23 May 2011 15:25:59 ]

I recently decided to give WeeChat a try. I found that it had a nice new feel and less complicated windowing structure then irssi -- at least more intuitive to a vim user.

Here is my weechat config.

On debian you can install it with

    apt-get install weechat-curses weechat-scripts weechat-plugins

I really liked the spell-checking plugin which uses aspell to highlight misspelled words as I type them. One thing I missed was the ability to tab complete words from the /usr/share/words list. So I wrote a short lua script to do it...

[Read More]

Bart's Blog


I am a Linux driver, kernel, and embedded software developer, currently working for Diablo Technologies Inc.

RSS Feed - Full Content

RSS Feed - Full Content

ipv6 ready

Valid XHTML 1.0 Transitional

Created with Vim

Created with Perl


busybox disk hw ipv6 irc linux mmc script ssd usb weechat


[ 20130409092758 ]
automount mmcblk devices

[ 20130316190507 ]
tunnelbroker vs IRC

[ 20110616180255 ]

[ 20110517204617 ]
how to manually create a 6in4 tunnel

[ 20110501202915 ]
Presentation slides published!

[ 20110320190458 ]
What is IPv6, and why should I care?

[ 20110309230106 ]
Ottawa IPv6 Summit 2011

[ 20110309225149 ]
I am now an IPv6 Sage

[ 20081011081638 ]
creating busybox symlinks

[ 20080105132854 ]
WeeChat spell suggestions

Bart Trojanowski