Friday, December 5, 2008

Tilted Twister

Probably the coolest thing I've seen built with the Lego Mindstorms NXT set. The builder has posted source code, building instructions, and a 3 minute video of his Tilted Twister solving a Rubik's Cube:



Information is available at tiltedtwister.com.

Labels:

#fedora-townhall

The last townhall meeting for the Fedora Board elections was held today on #fedora-townhall. It occurred at 5:00 AM in my time zone, which is a bit too early for me to be coherent, so I was not present for that debate.

If anyone has any questions for me, email me or find me on IRC.

Labels:

Thursday, December 4, 2008

Fantastic Day For Fedora

Today is one of the most exciting development days for me ever on Fedora. Why?

libdhcp has been removed from the distribution.

It no longer exists. It's a dead.package. Likewise, libdhcp4client and libdhcp6client are gone since they only ever existed for libdhcp. It took too long to get rid of these, but whatever, they are gone now.

Any bugs opened against libdhcp will be marked as CLOSED WONTFIX (because we don't have CLOSED DONTCARE).

That is all.

Labels:

Monday, November 10, 2008

Attaching Things To Bugzilla Entries

This is meant as helpful information for people reporting bugs.

When attaching files to a bug that you file at http://bugzilla.redhat.com, take care to watch the type that the attachment is assigned. Bugzilla seems to do a pretty bad job at figuring out file types. The most common problem I see is application/octet-stream when people attach log files.

If you are attaching anything that can be viewed with more, less, most, or your favorite text editor, make sure the type is set to text/plain, please. It's also helpful if you do not tar up or compress log files and then attach them to bugs. Just attach the log files and set the type to text/plain. Makes viewing them easier.

For patches that you want to attach, here are a couple of suggestions. Make sure you are creating unified diffs with diff -u. When you attach the file to the bug, check the box marked Patch so that it's flagged as a patch in Bugzilla. This makes viewing and saving the patch a little easier.

I have seen a number of odd attachments show up in Bugzilla. People turning log files in to OpenOffice documents (and sometimes even presentations), for example. Or taking photos of a log file they are viewing with more, one photo for each screen of text (yes, that was around 20 photos attached to the bug report).

If the person handling the bug requests some information from you in the form of a log file or something similar, but you don't know how to get it, ask. Don't assume you are on your own for collecting the requested information.

Labels:

Tuesday, November 4, 2008

Automator

I discovered a problem recently on my MacBook (MacOS X 10.5) where the default browser and default RSS reader would get reset to Safari each time I'd reboot. It was getting a bit annoying, so I dug around online to see if other people were having the problem. To my surprise, I saw a lot of people having this problem.

Consensus was that it's a known bug and happens when you are using the built-in disk encryption in OS X. I'm using that because I wanted to know that if someone ripped off my laptop, I'd at least make it more difficult for them to get in to it.

Apple users tend to be different sorts of problem solvers than Linux users. As a Linux user, I expect to find a patch or be able to make a patch myself and recompile the software. Apple users don't really do that, they tend to find workarounds in other ways.

The recommended workaround was to use Automator to open Safari (which controls the default browser and rss reader settings), open the Preferences window, select Firefox for the browser, and NetNewsWire for the RSS reader. Save the resulting script from Automator and have it run when you log in.

While this solution is clunky, it does work (it's also amusing to watch the script launch when I log in. It's like someone else is controlling my system for a minute). What was more interesting to me is using Automator. It's a drag and drop scripting environment for the GUI. I was able to script mouse actions using this system. I think this is pretty cool. It hides everything from me and just lets me graphically put together a script.

My question for Linux users is do we have anything like Automator for GNOME? Or really any desktop environment?

Labels:

Monday, November 3, 2008

IP Phone Finally Working

It's taken me weeks, but I finally have a working IP phone. I have my Red Hat extension configured as line 1 and my Fedora extension configured as line 2.

There was a post somewhat recently from someone who purchased a Grandstream GXP-2000 IP phone and got it working with talk.fedoraproject.org. Having had no luck with my Cisco 7960G, I decided to go with the Grandstream phone.

Configuration of the GXP-2000 is certainly easier, but getting an IP phone to work on your LAN behind whatever you're using for a firewall is a royal PITA.

I tried STUN since the phone can do that. The phone was able to register itself and I could make and receive calls, but you'd never hear anything. Someone pointed out that I needed to forward tens of thousands of ports for the RTP traffic. I found some iptables PREROUTING and FORWARD rules that seemed to be correct. Still didn't help.

I fooled around with NAT settings, but nothing ever worked. Other people I talked to suggested running Asterisk locally or running siproxd or some other stack of software that would let the phone connect. The whole point of having the physical IP phone was to avoid any sort of software on my workstations and servers to make the phone work. Running siproxd wasn't really an option because I use OpenWRT on a WHR-G54-HP for my router/firewall/vpnc box. Not enough space to store siproxd.

Digging around online pointed me to an iptables kernel patch. It added the ip_conntrack_sip.o and ip_nat_sip.o modules. I'm using OpenWRT 0.9, the last whiterussian release. One thing that I find irritating is when I mention OpenWRT people, I am immediately told to change to DD-WRT or to upgrade to Kamikaze or something else. Why? I don't care and 0.9 works fine for me. Unless there is something I really can't get working under 0.9, I don't want to change or upgrade.

However, these kernel modules almost caused me to look in to DD-WRT, but I couldn't find any evidence that DD-WRT would make my SIP situation any easier. OpenWRT runs 2.4.30. My device is MIPS, so compiling these modules for 2.4.30 for MIPS was going to be annoying and/or impossible.

Finding the patch was the first trick. The OpenWRT dev team removed the iptables SIP patch about 3 years ago due to licensing concerns. I found that svn revision 3289 was the last time they had the SIP patch. I checked that out from svn.openwrt.org and proceeded to build for my router. It took a little while, but I eventually got the two modules and copied them to the router.

With the modules loaded and the following iptables rules in place:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p udp --dport 5060 -j ACCEPT
iptables -A FORWARD -o vlan1 -p udp --dport 5060 -j ACCEPT
iptables -t nat -A POSTROUTING -o vlan1 -j SNAT --to-source [public IP]

The phone finally works. The kernel modules are making life easier for me because I don't need a lot of iptables rules to get the phone working.

For details on my OpenWRT configuration, go here.

My talk.fedoraproject.org extension is 5100345.

Labels:

Monday, October 27, 2008

Non-member Purchasing at Costco

In the United States, we have these stupid warehouse sized stores under the names Costco, Sam's Club, B.J.'s, and others. The stores advertise really low prices, but you have to buy in bulk. Few people have a need for a 55 gallon drum of pickles, or a dump truck full of rice, but that doesn't stop people from going to these stores to buy ridiculous amounts of things.

The catch is that these clubs are member-only facilities. You pay some amount of money per year to shop in the store. The return is that you get the super low low prices the store offers. I really don't like the concept and I don't like having to buy huge quantities of things just to save money.

Federal regulations prohibit Costco and stores like it from requiring a store membership to use the pharmacy. Anyone can go in and use the pharmacy and get the low Costco prices.

What else can you buy at these stores without a membership? Well, this one is regulated by states rather than the federal government, but in some states it's possible to buy alcohol without having a store membership. I tested this out on Saturday at Costco in Honolulu.

Getting in the store is a bit tricky since they check for membership cards at the door. I'll leave that one up to you.

Once you get in the store, know that you can only buy drugs or alcohol without having a membership. I tested the purchasing ability with beer. The cashier was unaware of any such Hawaii law that would let me buy alcohol there without a membership. Asking for an explanation, I gave him what the Liquor Commission told me. Section 281-31 of the Hawaii Revised Statutes prohibits class 4 (retail, off premises consumption) liquor license holders from restricting the sale of alcohol based on membership status at the merchant. After calling a supervisor and ultimately the store manager, the store manager was the only one who knew of the law and let the transaction go through.

Now, I knew this would be difficult or impossible, which is why I asked the Liquor Commission if it was possible before going. Armed with their response and vague instructions, I set out to see what I could buy at Costco. It worked, but Costco and I imagine the other warehouse stores want to keep this quiet. It is the cheapest place to get alcohol on island. A 24 pack of beer in bottles cost me $27. A 6 pack here typically costs between $8 and $10.

Aside from some fly-over states and California, I do know that you can do this same trick in Massachusetts. Westford office, enjoy!

NOTES: Every state is different. Some states may allow the retailer to make you go through a different procedure to purchase without a membership.

Labels:

Tuesday, October 21, 2008

Figure Out The State

Dear lazyweb,

When I go to an online store to purchase something, it's the usual routine. You ask me to fill up my shopping cart, select a shipping method, and then log in with the account I made -or- sign up. I give you a billing address and a shipping address, but why do you always insist on having me scroll through a combo box as tall as the browser window to select my state? I give you my city and ZIP code, can't you figure it out from there? I have even been to some sites that figure out the city/location name based on your ZIP code. I *know* you can do this, so how about you stop asking me for my state all the time. Let me give you the ZIP and you go from there.

Is there a legitimate reason that online shopping carts can't figure out the US state based on ZIP code?

Labels:

Sunday, October 12, 2008

Old Desktop Screenshots

Another nerd post.

I was cleaning out some old directories on my laptop and came across a very old picture archive. Among the photos, I found four desktop screenshots from systems I had over the years. It's fun coming across these. I can see how my taste in user interfaces has changed over the years, as well as the set of software I regularly use.

I noticed one thing I failed to do in any of these screenshots. I don't have anything indicating the date. I should have run date in a terminal window somewhere. Oh well. [UPDATE: I meant years, people. And I see now that the clock in blackbox does display the year, so that was nice.]

Without further delay, here are the four in the chronological order I remember:
  • nomex-afterstep.jpg - I was a big fan of the Afterstep 1.0 window manager (note that the 1.0 is important because that was the code base that was closer to fvwm configuration than the newer AfterStep). I ran this window manager for YEARS before finally going with something else. A tour around the screen starting in the upper left corner: rxvt with a background listing my MP3 collection, x11amp, x48 calculator emulator, pine in an rxvt, Slashdot in Netscape Navigator, Licq for instant messaging, and the GIMP since all screenshots had to contain the GIMP. Along the right edge of the screen is the Wharf, which was supposed to look like the Dock in NEXTSTEP. I've got a clock/calendar, network monitor, CPU monitor, a button with a penguin, a button with the Netscape logo, other buttons, and what I think is a pager in the last one. Also notice the lower right corner of the screen. You'll see my system log tailing messages right on to the root window. That was roottail, a neat program that worked by magic I think. (taken October 28, 1998)
  • nomex-blackbox.jpg - Blackbox was introduced to me by my friend Logan. He was in to lean user interfaces and blackbox was quite nice. I used it for a while. You can see I am just running Netscape Navigator, xterms, and Licq for instant messaging. You can also see me running ytalk. Wow. (taken September 25, 2000)
  • goretex.jpg - Still using blackbox here. You can see this is when I was working for Slackware because the top two terminals are logins to accounts on bob, which was our main server for basically everything, including email. On the left, I am logged in as myself. On the right, I am logged in as support. Yes, I answered lots of support at slackware.com email. (taken February 9, 2001)
  • sgi-o2.jpg - In California, I bought an SGI O2. It was an R5000 at 180MHz, so not super speedy. But it was really fun to use. It came with a camera too (think 8 years ago and how that wasn't really the norm yet). The O2 was fun, but eventually I got rid of it.
The system names were part of my naming style. I used to name systems after Dupont fabric names or textile names that I thought were cool. My server was kevlar, nomex was my workstation. I had burlap for a while. Also had mylar, tyvek, and goretex. I also had warp, weft, and woof. Yeah, getting obscure now. The SGI systems I had followed a different naming system for some reason, mostly arbitrary. Originally the O2 was named o2d2 (also attributed to Logan). I cannot remember what it was named after that. I had an Indy at one point named turtle. I also had an Octane2 named aki (anti-knock index, get it?). SGI systems were non-standard, so it made sense for the naming system to be nonstandard too.

What were the specs of these systems. Nomex was a dual Pentium Pro system with 128MB of RAM on an Intel PR440FX motherboard. It was also a 100% SCSI system. The first CPUs I had were 180Mhz with 256KB of L2 cache, I think. I eventually ended up with 200Mhz processors with 1MB of L2 cache each and I think more RAM. Maybe 256MB of 512MB when it was all said and done. I used this system for a very long time.

Goretex was a Sun Ultra 5, complete with all of the design problems Sun was kind enough to put in to the system. The shitty IDE controller, the shitty floppy controller, the shitty CD-ROM drive, and the shitty framebuffer. The system had a 360Mhz UltraSPARC-IIi processors and 256MB of RAM or maybe more, I forget.

The O2 was a 180MHz MIPS R5000 processor. It had 256MB of RAM, a 9.1GB SCSI disk, and an integrated CD-ROM (this was a big deal for SGI as pretty much every workstation they made lacked the ability to have an internal CD-ROM drive). It also had the AV board for audio/video input/output.

What do I use nowadays? I use Fedora Linux, Red Hat Enterprise Linux, and MacOS X. MacOS X is pretty easy to figure, I use its interface. On the Linux systems, I am entirely apathetic now. I use whatever is the default, which is GNOME.

Labels:

Friday, October 10, 2008

Huh...wha? I just don't understand

Nerd post follows.

My job presents me with challenging and, sometimes, annoying problems to solve. I write software, which means I also write software bugs. I work on a number of projects, but the one that takes a majority of my time is the installation program for Fedora and RHEL called anaconda.

Lately, I have been in the process of moving the network configuration code to use NetworkManager. This hasn't been easy, despite NetworkManager's web page promising pain-free networking. DHCP installs have worked for a while, but getting manual IP configuration installs to work was another story. I got those working the other day, but guess what stopped working? DHCP installs. I just don't understand.

NetworkManager insists on starting the DHCP client and then immediately stopping it and taking the network interface down. What? Why? I reported the problem to NetworkManager, so we'll see what happens.

It seems that I can't fix everything, I can only shift around the window of things-that-work. Something will always be broken.

[UPDATE: As of 5:00 PM HST 10-Oct-2008, I have DHCP and static IP configuration installs working again. The problem was not in NetworkManager, it was in anaconda after all. Definitely a difficult one to track down.]

Unrelated, but still nerdy, is a tip for users of RPM. Do you use a Linux operating system that uses RPM for package management? If so, do you run on x86_64, s390x, or another 64-bit platform (perhaps even really obscure ones that no one uses anymore)? If you do, you probably have both 32-bit and 64-bit software installed. When you do something like 'rpm -qa', you might see something listed twice. The two entries are for the 32-bit and 64-bit versions of that package. Want to always see the architecture in 'rpm -qa' output? Add this to your ~/.rpmmacros file:
    %_queryformat \
"%{name}-%{version}-%{release}.%{arch}\n"
You should add it all on one line in your .rpmmacros file, I am breaking the line here so it won't wrap on this page. Now type 'rpm -qa' and see the architecture listed alongside the name-version-release (NVR).

Labels:

Tuesday, September 23, 2008

Apple Store Waikiki Opening September 27

My inbox has a message from Apple announcing the grand opening of the Apple Store in the Royal Hawaiian in Waikiki. Doors open at 10:00 AM HST on September 27. The first 1000 or so people in line (line?) get a free t-shirt.

While I don't care about the t-shirt, it will be nice having an Apple Store literally around the corner from me. Now, if the Royal Hawaiian could also get a Lego Store and a Tower Records [sic], that would be awesome.

O'ahu now has 3 Apple crack deal^H^H^H^H^H^H^H^H^H^H Stores for your spending pleasure. The Waikiki store is the largest. The Ala Moana and Kahala stores are the same layout. Mall stores that look like shotgun houses. The Waikiki store opens on to Kalakaua Ave and will probably have a big giant Apple logo hanging from the building.

Labels:

Thursday, September 11, 2008

Back from FUDCon Brno 2008

Left Vienna at 10:10 AM on 10-Sep-2008 and arrived around 9:00 PM on 10-Sep-2008 in Honolulu. Before leaving Vienna, I called home and it was Tuesday night. Oh yeah. I calculated up how much awake time I had and it was a little over 30 hours. I expect it to catch up with me at some point.

FUDCon was great. I am very glad that I got to meet Fedora people in Europe as well as a lot of Red Hat people in our Brno and Stuttgart offices. I have been working online with those people for years and finally got to meet them in person. All great people.

Both Brno and Vienna were very interesting and I wished I had more time while I was there. But I am glad to be back home and am getting back in to normal work mode. I plan on posting something more detailed about my trip later.

Labels:

Monday, September 8, 2008

Last Day in Brno

FUDCon Brno 2008 is over and I must say it went really well. Hackfests on the first day and last day. The presentations were very interesting too. Martin Sivak and I did a crash course in the Czech language as the last session on the barcamp day. It was pretty fun for everyone. Martin wrote up a possible story that would play out during the social event later that evening. I would read the English, he would say it in Czech, and the everyone else was to repeat. Pictures are on on the Flickr group.

The social event at FUDCon was really good too and we also had a good time hanging out after FUDCon on Sunday night. Met lots of great people from all over Europe. Some people I've been talking to online for a while and finally got to meet them in person.

I am currently at the Red Hat Brno office waiting for our team meeting in a few minutes. After the meeting, I'm going to head back to Vienna taking the night train. I fly back home on Wednesday.

Labels:

Saturday, September 6, 2008

FUDCon Brno 2008

I haven't posted anything since I got to Europe. Why? Well, Internet access has been harder than I thought it would be. And phone access.

I arrived in Vienna on Tuesday, September 2. I left Sunday night from Honolulu, so it was almost 24 hours of travel. I knew this would exhaust me, so I wanted to get to the hotel and try to nap.

Vienna is very easy to navigate. The map I purchased at Borders before leaving didn't really help that much because the grid quadrant I was staying in wasn't on the map I had bought. You could visualize the roads extending past the end of the map, and that's how I figured out where to go, but otherwise it wasn't a helpful map.

The hotel in Vienna was nice as well. It advertised free Internet access in all rooms....EXCEPT the part of the building I was staying in. Great. I asked the front desk if there was a public area with wifi and was told no. They suggested I try the cafe at the end of the block, but when I went there, they told me they didn't have Internet access and were surprised the hotel sent me there. I tried 3 other cafes before calling it a night.

I was not planning on getting a SIM card for my phone in Austria because that would cost more to use in Brno once I got there. My plan was to email home from Vienna and get a SIM card in Brno. Seems doable, right? Wrong.

The lack of Internet also posed problems because I was planning on finding the train station on Google Maps. I was also planning on emailing the office in Brno so they would meet me at the train station. All of this was fail. Once again, I depended on the Internet and was let down.

I woke up on September 3rd, packed up, checked out of the hotel, and then headed to the train station. It ended up being easier to find than I thought. I took the U4 line to a station that had the word Bahnhoff in it, exited, and followed the signs to the words that matched what was printed on my ticket. There was a bit of a mixup with the signs. Apparently the area around the train station is under construction and all signs were gone once I got to the surface. I walked around trying to find the entrance for almost an hour. Eventually made it.

At the station, I got some water and tried to find wifi. Fail. I found phone booths that would take credit cards, so I called home. I talked to Karen for a while, which was nice, and asked her to contact the Brno office so they knew I was coming. This was the first time I was able to call home since I had left.

The train left shortly after that. I found my car and seat and slept most of way. I bought a Pepsi on the train (it came in an actual glass bottle). Once we crossed the Austria-Czech border, a new guy came on to restamp your ticket. There were a few stops before Brno.

I got to the Brno station and started looking for who was meeting me. I realized I didn't have a clue what anyone in the Brno office looked like. After a half hour, I called home again and Karen said that they replied to her and were on their way, but would be 20 minutes late. They thought I was arriving on Thursday. Not a big deal. Got to the office and then Radek took me to where I was staying for that night.

The day I traveled from Vienna to Brno was when the jet lag really hit me. The entire day I was battling a headache. Finally around 5pm I got really hungry and proceeded to find some food. The Czech language is more or less impossible for an American speaker to grasp. I was doing ok in Austria, but Czech is a different animal. That, combined with the fact that fewer people understand basic English in the Czech Republic compared to Austria. That's not really their fault, I mean, I should be speaking the local language. However, no time for that, I wanted to find dinner.

The lady at the hotel told me to walk 300 meters down the road to a yellow building. Good enough for me. I walked down the road and found the building. It was even marked with a sort of international food icon (circle with a fork and spoon in it). Strange. However, this was fail because it was closed. Exhausted, starving, wanting to call home, and generally feeling not well, I looked in all directions to where I was standing. Nothing. I walked around the corner and saw what looked like a house, but was really a restaurant. I went there and fumbled through the menu and was able to order spaghetti and meat balls and Nestea. The total was 179 Kč. After that I went back to the hotel and fell asleep. At 9pm, two other Fedora guys showed up who were also staying in this room and were banging on the door for me to let them in. They couldn't believe I was asleep, but I explained where I flew from and they understood. I think they left and locked me in the room, but I didn't care. Too tired.

The next day I was fine. Got to the office and did some work for the day and then met up with more Fedora people and we went out for drinks and dinner. Dinner was good, but paying for it was made more difficult because of some people we were with. We had a large party and I was ok with just dividing the check evenly. However, some people only wanted to pay for their share. The waiter walked around both tables and recalculated individual checks by hand for everyone and each person paid. Amazing.

FUDCon is going well. There are some posts from people here appearing on http://planet.fedoraproject.org/. There's also a Flickr group where people are posting pictures they are taking. I am giving a talk at 14:20, so I have some time.

I have not obtained a SIM card for my phone in Brno because I haven't been successful finding a vendor (that is, fail). At this point I don't know if I'll bother. Though it really is annoying not being able to call home.

Some things about Brno that I have to point out. Some of these overlap with Chris' discoveries.
  • The company no longer has the apartment in Brno, so got to stay in two different hotels in Brno. Coming from the US, hotels here are very different. Things you take for granted in a US hotel just aren't present here. For example, a TV, a phone, or even a comfortable bed. Beds are the size of coffee tables and have a rock hard mattress. You get one towel per bed, but the towel is like the size of a large dish towel. Most of the Europeans who came here from other countries brought their own towel. Noted for future trips.
  • Bathrooms are strange here. A lot of places will have a single door in to a WC and inside there is a sink or two and then two different doors for men and women facilities. So, they share a sink setup, but have different toilets.
  • Bathrooms in the hotel are different. The toilet has its own room. The sink and shower has a different room. Both have doors that lock.
  • Hotel rooms have actual real keys instead of plastic magstripe keycards. There's also one key per room, so if you are sharing with someone, you need to work out the key protocol.
  • You don't take the key with you when you leave the hotel. It's the same in Austria. You give your key to the front desk and when you come back, you just tell them your room and get your key. They don't want to lose the keys, which I guess are expensive or they don't want to force you to carry them around.
  • As I discovered on my London and Brussels trip, light switches are backwards and doors open the wrong way. Hot and cold are swapped in some places.
Public transit in Brno and Vienna is useful and understandable. The names of locations in Brno is more difficult for me, but I am slowly getting the hang of it.

The currency in the Czech Republic is also more difficult to get used to. First, there are no fractional amounts. The smallest is 1 Kč (one crown). Typical prices for things are 15 Kč for a 60 minute tram pass, 30 Kč for a beer, and 150 Kč for something for dinner. The currency comes in the following coins: 1, 2, 5, 10, 20, 50. It also comes in the following notes: 50, 100, 200, 500, 1000. The thing I'm having to get used to is the large amounts. I go somewhere and spend hundreds of crowns and it's just bizarre.

I am giving a talk at FUDCon today on anaconda. It got a lot of interest, so I hope I can make it interesting. I have met a lot of people here who I have talked to a lot online. A lot of the guys in the Brno office have met me now, which is good.

FUDCon is run in a barcamp format. That just means that any attendee can pitch a session. If there's enough interest, you get to give that session. Anyone can pitch any idea, but since we are all here for the same purpose, the topics are usually related to Fedora and software development.

While we were pitching the sessions for the barcamp, I suggested to Martin (on anaconda team, here in the Brno office) that he pitch a session idea on rudimentary Czech language skills. That idea got a round of applause and a lot of interest. Should be fun.

Time for lunch.

Labels:

Tuesday, August 26, 2008

NetworkManager in Fedora Installer

(this is a work post)

Yesterday, I committed a large number of code changes to the Fedora installer ("anaconda") that change how we do network device configuration. The move shifts us over to using NetworkManager. A lot of Linux users already know about NetworkManager because it's how you change wireless networks on your running system, but it can do more. We're using it early in the installation process so we can gain all of the functionality it supports.

For example, we will be able to do encrypted wireless installs using WPA passphrases or WEP keys. It's not quite ready yet, but I'm working on it. I have a few large items that I want to get cleaned up over the next few days, as well as backend code cleanup (lots of things can go now), and make sure that wireless installs can actually work.

For Fedora 10, users can expect NetworkManager in the installation process now. It's rough around the edges in rawhide at the moment, but it is working.

Also, this means the end of libdhcp, the piece of shit library I inherited at Red Hat that replaced libpump.

Labels:

Friday, August 15, 2008

Bitten by D-Link....AGAIN

Ten years ago at Georgia Tech, my friend Chris was having trouble configuring his LAN. He had just a handful of computers and others shared by the people in his dorm room. Everyone checked their TCP/IP configurations again and again, they remade cables again, checked drivers on the cards, and even connected systems directly to each other just to see if they could ping. Everything looked fine, they systems even worked with crossover cables. But why wasn't there a consistent connection using the hub? Some systems could see others. Sometimes they would disappear. Eventually another hub showed up and the D-Link one was replaced. Suddenly everything started working perfectly. What the hell was the deal with the D-Link hub?

I think Chris swore off D-Link equipment at that point.

Nine and a half years ago, the same D-Link problem affected my father's business. They couldn't understand why some computers were only visible to certain computers on the network. I went to investigate and found a D-Link hub in service. Basing my decision on the experience Chris had, I decided we should hit the nearest electronics store and get another hub that wasn't from D-Link. Guess what? That solved the problem. Never buy D-Link again, I told myself.

At the end of last year I was stocking my two development systems before shipping them to Hawai'i. I wanted to add at least another NIC to each system (I prefer two NICs in each system because I do network development). Searching online, I decided to order parts and ended up with D-Link gigabit PCI Express or PCI whatever adapters. Sure, fine, drop them in the system and go.

I recently upgraded the processors in the development boxes and also upgraded the BIOS. After the upgrade, the BIOS would not respond to the Del key to let me in to the setup program. What? Very frustrating.

Last night it dawned on me that it might be conflicting hardware, so I started removing things. When I removed the D-Link card, everything started working. WTF?

So yeah, bitten by D-Link again. How are these people in business? Why does their hardware suck so much?

Labels:

Tuesday, August 5, 2008

WorkBot


My office was getting out of hand. Stacks of things all over. Piles that served as organization methods, but it started to become a walking hazard (as in, walking around the room was a hazard, not the items in the room started walking around).

This past weekend, I went to City Mill and purchased shelving parts for all of my work equipment.That was the first goal. Get everything off the floor and organized in to a cart. The cart is about 86 cm tall and sits on large casters. There are three shelves, which are 46x46 cm each. This is wide enough to hold two mini tower computers side by side and still have room to put all of the supplementary parts (power strips, KVM switch, Ethernet switch, and so on). The top shelf is currently just used for storage, but that's way better than the floor.

As I was putting it together, Karen and I noticed it sort of looked like the beginnings of a robot. I started calling it WorkBot. The really nice thing about WorkBot is that I can roll it out and turn it around to change cables. Everything is tied down with over 125 zipties. Only the wires I need coming off of it are free (e.g., power strip hookup). My Flickr page has more pictures of WorkBot.

Labels:

Saturday, August 2, 2008

109 Years of Kama'aina Living

City Mill has been celebrating being around for 109 years. That's a long time for a hardware store to be in business. I like City Mill. They don't feel like Home Depot or Lowes.

The past few days, I have been to the Kaimuki location a lot. First to get parts to fix a toilet. Second to get what I forgot the first time. Third, to get parts to build a computer rack for the office. And fourth, to get the parts for the rack I forgot. (Post about the computer rack coming later.)

The other day at the store, I got to the cashier and she started scanning the items I had in my cart. The store was pretty busy and there were only two cashiers working. Not really a big deal, but lines were forming, so she was trying to work fast.

After scanning everything, she looked at the screen on the register and noticed it had stopped responding at some point, so no transaction had started. She cycled the power and waited for it to boot up. City Mill uses POS devices running what looks like Red Hat Linux 7.3 (kernel 2.4.20-8bigmem). What was even more interesting is to see they were using /bin/login as the cashier login handler. The shell (I'm guessing) was configured to be the POS software.

I enjoy seeing my company's software in use in the world. I've seen RHEL and other products everywhere now and it's always in the places I never expect.

I eventually left knowing my credit card data was more safe on a RH-based system than something else. I also left with a t-shirt that says 109 Years of Kama'aina Living.

Labels:

Thursday, June 26, 2008

NetworkManager Hacking

While in Boston for the Red Hat Summit, FUDCon, and team meetings in the Westford office, I was also able to get some coding done. One of the big things I've been working on in Fedora is IPv6 in userland, specifically the installer. I've have started looking more closely at NetworkManager in Fedora and worked up some patches (along with Dan Williams) to add IPv6 support to NetworkManager. The first level of support is there now, Dan committed it to the repository on gnome.org tonight. It's actually moving faster than I thought it would, which is nice. It's also fun hacking on a project like NetworkManager because it's a tool that Fedora users run all the time.

What is NetworkManager? Put simply, it's designed for laptop users who move around frequently and connect to different wired or wireless networks. NetworkManager runs in the task bar and presents a simple menu to select your wireless network. It remembers networks you've connected to so when you go back to those places, it will automatically connect. This is a feature that Macs have had for a while and I think Windows does it probably.

NetworkManager is undergoing some improvements and changes so it can be used by more than just laptop users. Support for static network configuration as well as support for other types of networks (modems, mobile broadband, and so on).

Aside from the coding, my team has been meeting all week to plan out improvements to the installer. We have come up with a lot of ideas and have some really good plans in place. But it'll keep us busy for some time.

Tomorrow is my last work day in the Westford office. I'll be down in the Boston area for the weekend and fly back home on Monday morning.

Labels:

Sunday, June 22, 2008

Red Hat Summit and FUDCon 10

It was a busy week. Up really early, all day at conferences, then out late with people. It was fun, but exhausting. What occurred?

On the Monday and Tuesday before the conference started, I was in the Westford office. Among other things, I met with two IBM System z guys from Stuttgart. We had a lot of discussions about how to work out installation issues on the System z platform.

On Wednesday, I headed to the Red Hat Summit at the Hynes Convention Center. Busy day. Talked with a lot of people and hacked on some projects. Thursday was the day I gave my talk. It went really well. Room was packed and no one got up to leave, which to me meant it was actually interesting to the people there. I had a lot of people who wanted to talk after the presentation. Friday I spent most of the day hacking on NetworkManager code again.

Every day at the Summit at 4:00 PM, they had free beer. That was fun.

Parties each night after the Summit. The first night was at Fenway Park. The entire facility was rented out, food catered, open bar, band, etc. It was fun. They tried to organize a pub crawl after the Fenway party, but a group of us wandered off the path and ended up bowling at midnight near the convention center.

Final day of FUDCon 10 was yesterday at Boston University followed by free food and drinks at the BU Pub. Mostly just hacked on code all day at FUDCon. All in all, a busy week.

Tomorrow starts the week long anaconda team meeting. We are planning to plan and other such things. Early each day, which will be challenging. This trip is turning out to be incredibly exhausting. More details later.

Labels:

Wednesday, June 11, 2008

Heading to the Mainland

It's currently 2:30 PM on Wednesday and I am in the process of getting everything ready for my trip to the mainland. The first part of this trip is to attend a wedding of two of Karen's friends. After that, Karen comes back home and I head on to Boston where I will stay until the end of June. The first week is the Red Hat Summit and FUDCon. I finally finished up my presentation for the Summit and I'm looking forward to that.

We just got back from running errands. Went to the drug store and picked up medication refills, OTC drugs, and other stuff for the trip. Needed a few random things for the trip too, so went over to Wal-Mart for that. Back at home now.

Completely unrelated, but very annoying, I was told yesterday by my company that I have to get new health insurance because our current PPO plan offered to US employees is not valid in Hawaii. They are researching alternatives for me. Unfortunately, this notice comes at a bad time because I am traveling until the end of June and the end of June is when I have to have new insurance in place. Hopefully I can get it all sorted out by the end of the month.

Flying United this time because it was the cheapest. $25 to check an extra bag. Fun.

OK, time to finish packing.

Labels:

Wednesday, June 4, 2008

Cyberpizza Hawaii

Last night, Warren Togami and I gave a presentation about Fedora 9 at the Cyberpizza Hawaii.  We discussed a lot of the new features of Fedora 9.  I gave information about some of the installer improvements we've made and we also talked a lot about the LiveUSB with persistence and the LiveUSB Creator for Windows.  The presentation went over well and the group seemed pretty interested in the LiveUSB capability.  We had a number of 2GB USB jumpdrives preloaded with Fedora 9 as giveaways.

It's still surprising to me that in 2008, Linux is still really new to a lot of people.  When you've been working with Linux for over 10 years, you tend to forget that there are still people who have only heard about it.  Maybe they were given a really old CD of a release from many many years ago and they "have been meaning to try it out."  The LiveUSB method with Fedora makes that a little more accessible.  In Fedora world, it's impossible to wait to try a release.  You can't get an installable CD and shelve it for a year and then try it out.  By then, we've made two more releases.  It just moves so fast.  So we need a fast way for people to try it out.  The LiveUSB method is great for that.

I leave in a week and will eventually make it to Boston for the Red Hat Summit and FUDCon.  I am speaking at the Summit about installation in large enterprise environments.  More on that in another post.

Labels:

Tuesday, May 27, 2008

Long Live NetworkManager

(this is a work post)

Fedora 9 is out, Red Hat Enterprise Linux 5.2 is out, so what next?  Well, Fedora 10 of course (and RHEL 5.3, but I don't want to talk about that).  Right now I am working on some rather large changes for Fedora that I want to have incorporated by the time F-10 is ready to go to an alpha release (read: a test release, not the processor).

I have been working on all things network related in anaconda since the Fedora Core 5 time frame (that release and all subsequent releases).  I removed the use of libpump in favor of libdhcp so we could gain (a) better DHCP support by using ISC's client and (b) gain IPv6 support.  That was a very rocky rock and I stumbled down it pretty terribly, but I can say that IPv6 support has been there to some degree since Fedora Core 5.

Now, we are entering a new world of thinking for anaconda.  Relying less on our own tools and using more of the standard system offerings.  In the network camp, that means getting NetworkManager in to the installer.  Yes, that program that you can use to find nearby wireless networks and connect to them.  NetworkManager controls all of the active network links, with some limitations.  You can also talk to it via D-Bus, which opens the door for more interesting developments.  What I am specifically doing at the moment is:
  • Preparing a set of patches for rawhide anaconda that will remove libdhcp and all internal network configuration with code that runs NetworkManager.  After talking with dcbw, it was decided the best course of action now is to have anaconda write out the /etc/sysconfig files and then fire up NetworkManager.  Anaconda still prompts for network settings and then writes out the files and starts the daemon.  With these patches also come some more network related library functions that use libnl.  Those are mostly boring to average users, but I find it interesting.
  • Getting IPv6 support in to NetworkManager.  This is where NM drops the ball.  It's a great tool, but only for IPv4.  I am also preparing a set of patches for NetworkManager to get IPv6 (static, DHCPv6, and automatic neighbor discovery) supported.
  • libnl fixes.  This sort of falls back on NetworkManager too.  libnl is a userspace library for communicating with the kernel Netlink API.  This is how NetworkManager and anaconda do (or should) communicate with network interfaces.  There are a few things that don't totally work in the library, but I think that may or may not be working now (haven't looked in a few days).  I am also replacing the remaining uses of /sbin/ip in NetworkManager with libnl code.
That's a whole lot of stuff.  I am happy to report that it's coming along nicely and I hope to have NetworkManager working for all of my test cases in anaconda pretty soon (days) now.

Labels: