24 Hours with openSUSE 11.1

Christmas came a week early for openSUSE users!

Back in June I blogged about my first experiences with openSUSE 11.0. Although there were some groundbreaking improvements, the general tenor of my experience was negative. I did eventually move to 11.0, as I saw improvements appear from the community (such as a recipe for making Firefox3 use the system's Cairo library, thus enabling subpixel hinting.) I also suggested that 11.1 would fix all major issues introduced in 11.0, but not add any substantially new features. I stand corrected: 11.1 does fix the issues I whined about, but does also, amazingly, incorporate quite a bit of 'newness'.

I'm happy to say that both of my major gripes with 11.0 are completely resolved in 11.1, and then some.

Control and display for my integrated Intel wireless are working beautifully; the light works; the light blinks with traffic; pressing the button turns off wireless, and pressing it again turns it back on. Yay. Kudos to the NetworkManager team for moving past some blame issues with the wireless switches, and to Intel for getting the new driver in better working condition.

The default font configuration is easy-on-the-eyes, literally. The standard fonts are very well rendered, and appear consistent across, well, everything. From GTK apps, to Firefox (my other big complaint last time around), to OpenOffice.org, to Java apps, everything looks the same in the workspace, and a look under the magnifying glass proves it out. Also, out of the box, subpixel hinting can be enabled from the Appearance Control Panel app; gone are the days of installing someone else's freetype library. Big yay!

Fonts render consistently across applications.

Fonts render consistently across applications, despite variances in design.

Don't be fooled; openSUSE 11.1 is more than a bugfix release; it incorporates a variety of new features and improvements.

I won't bother repeating the published improvements, you can read the openSUSE blog post for all that. But I've noticed some changes, (some big, some small) that aren't covered.

Sleep mode works. Finally. It may not work for you, but my Centrino-based HP Compaq 6710b sleeps. Hibernate has worked since 10.3, but sleep takes the ease-of-use way up. The only reason I can see to reboot now is for kernel updates.

X86-64. Finally. I've been itching to use a 64-bit OS. Not that I'm using more than 4GB of RAM, but more that I want the optimizations that come along with it (I cringe every time I see a .i386.rpm). With browser plug-ins finally making the leap (Flash & openJAVA both are avialable), so did I. And contrary to the horror stories I've heard in the past, everything, everything has been smooth, and just a bit faster, methinks.

GDM got the once-over. Gone are the full-screen themed-up days of Gnome Desktop Manager. GDM now sports a very desktop-ish look, complete with function tray icons, and drop-down menus for selecting auth points (like Active Directory domains), remote X servers, and Desktop Environments. I don't know if I like it as much as the smooth green & gray GDM theme from 11.0, which blended seamlessly with the Bootsplash, but I can see obvious improvement in access to the full range of GDM's feature set.

GDM on openSUSE 11.1

Fast, Easy mounting of remote filesystems. In openSUSE 10.3, opening a samba share in Nautilus took about 30 seconds. 11.0 cleared that up, most likely as a result of the new GVFS integration. 11.1 takes it up a notch, easily mounting anything I can throw at it, adding an icon to the desktop while its mounted, offering the option to bookmark it, and making the files accessible through a local mount, easing the pain of working with those files in programs that don't make good use of remote paths (*cough* OpenOffice.org *cough*). Oh yeah, there's a nifty little unmount button on Natilus' Places list,and tabs too (the Ubuntu guys have been bragging about this in their 8.10 release).

Injet Disc Printing. This has long been on my list of 'Reasons why I still have to use Windows (occasionally).' I use an Epson RX580 to print directly on CD-R & DVD-R printable media, via Epson's rather limited software. Now, I'm able to do the same with Gimp, Foomatic & Gutenprint. Apparently this isn't totally new, but its the first time I've been able to make it work. I think the best reason I have for keeping Windows around now is the shiny sticker they put on my laptop at the factory.

Direct label printing with GIMP.

KDE 4.2 Backports. Although I've gone Gnome, I still try to keep up with KDE. There's been a good bit of whining about KWin's compositing effects, namely the lack of a a 'desktop cube' effect, for which Compiz is so famous. KDE 4.2 will ship with a desktop cube; KDE 4.1 for openSUSE 11.1 ships with it as well, as the effects have been backported for the release. Nice work, guys!

OpenSUSE Build Service. If you build software, or just hack around a bit, you should have an OBS account. OBS uses virtualization to build software from your source for a variety of distros, including a spectrum of SUSE, Fedora, and Ubuntu targets, all at once. In addition, openSUSE 11.1 was built completely on OBS. One of the strongest side-benefits was that applicable patches automatically backported to prior releases. This is the first time I've seen a rash of updates to an old release the weeks leading up to a new release.

Of course, there are still some improvements I'd like to see.

SAX2, the X11 setup tool, still doesn't handle setup of xrandr well. In order to get good behavior out of xrandr, I have to tell SAX2 I'm using a monitor capable of handling any resolution I expect to see, otherwise the specified resolution will be used as a cap by xrandr. So, counterintuitively, I set my laptop's LCD to 1600x1200, which allows xrandr to set it at the native 1280x800, and any external display at a resolution up to 1600x1200.

Something's funky in Firefox; my mouse cursor disappears while if its over a page area thats still rendering. Something to do with Xulrunner and Cairo, I'm sure, but hopefully it goes away soon; having the cursor disappear in your browser is disconcerting.

The Intel video driver still prevents me from using Compiz on multiple monitors. Intel chipsets, starting with the i945, are capable of handling textures up to 8096x8096, earlier chipsets (down to the i810) has a max texture of 2048x2048. Despite the physical capability, and the presence of patches that prove it works, the intel driver still ships with the lower limit, which prevents Compiz from rendering a texture across my two 1200px-wide monitors. Sigh.

All in all, openSUSE 11.1 is an extremely well-polished release. If you've been waiting to give it a shot, now is a great time. If you're wondering what differentiates openSUSE from other distro's, here's a quick rundown of this capable, flexible OS:

  • Desktop Environment options. OpenSUSE is one of few, and the only major Linux distribution, to comprehensively integrate more than one DE. OpenSUSE 11.1 gives you a well-tended desktop experience in Gnome, KDE (4.1 & 3.5) and XFCE. Enlightenment, ICEWM, WindowMaker, and FVWM are also included, though not as well manicured as Gnome, KDE & XFCE. In contrast, Ubuntu ships only with Gnome, and leaves integration of other DEs to the community. Fedora Core 10 has received quite a bit of bad commentary for the poor integration of KDE 4.1.

  • Download how-you-want. Software.opensuse.org provides a simple path to downloads of both full DVDs, CD sets, live CDs, bittorent links, and network installs for x86, x86-64, PowerPC, for Gnome Live, or KDE 4.1 Live. Did I mention it's actually easy?

  • The desktop is the server. In addition to the great desktop integration, SUSE releases have always made excellent servers. Setting up a LAMP stack, for example, is a one-click affair during install. Same as 'games'. ;-)

  • A huge universe of software. The above-mentioned OBS allows developers to upload code, and the service compiles it for them, and optionally, publishes it for install. Any time the codebase changes, or a depency changes, the software is automatically rebuilt, and if you have subscribed to a package's repository, you'll get an automatic update.

  • OpenOffice.org Novell Edition. Retailing for $120 for Windows, OpenOffice.org Novell Edition includes a variety of enhancements that have not yet been included in the upstream OOo package, such as PDF Import, better Excel formula integration, and improved import of MS OOXML documents.

  • The OpenSUSE community. OpenSUSE is working aggressively to step up the role of community, which typically is the group of people posting in forums or chat. OpenSUSE recently held an election of a steering board, which will guide the principles and direction for OpenSUSE. Voting was open to 'members', contributing participants in the the various openSUSE projects; this is a subset of registered 'users'. In addition, you have the larger, official support interests. Since openSUSE feeds into Novell's SUSE Linux Enterprise products, the documentation is well maintained, and installation support is still available with the boxed release.

  • Green is better than orange. Really, it is.

I use openSUSE Linux as my primary OS both at home & work, and SUSE Linux Enterprise Server at work as well. If you've got questions about using SUSE at work, even in a mostly-Windows shop, feel free to email me at bear454 [at] opensuse [dot] org.


Basecamp API for BungeeConnect

+ = ?

12 classes. 60 functions. 6 test applications. 30 unit test functions. One big fat API wrapper. BungeeConnect applications can now completely integrate with 37signals' Basecamp Project Management application.


Well, 37s are an arrogant group of developers; they even admit to it in their book. Ask them for a new feature and the answer is "no", or in my case "there's an API, build it yourself." So I am, in BungeeConnect, and you can too. (My own itch is moving todo-items from one project to another, something 37s has been reluctant to offer.)

Getting Started.
  • Login to the Bungee Builder, and create a new Solution.
  • Modify the Solution's Depencies to include the Basecamp API
  • If you want to modify the API, Import it (you'll probably want to, as there aren't any inbuilt Adapters).
  • In a class in your TypeLib, add BasecampAPI as a field.
  • Before you can go to town, you'll have to setup the API. Now there's nothing stopping you!
I've got two rather minor functions that are still throwing 404 errors - I'm working with 37s (via the forums) to get to the bottom of it, but again, they are minor, and I don't consider them showstoppers.

A bit larger, is an issue I found with BungeeConnect: their HTTP Utility doesn't properly auth PUTs, so none of the Update functions currently work. Bungee Labs has labeled this as Issue #7889 - hopefully it will be resolved sooner rather than later.

In Conclusion...

I'll be maintaining the BungeeConnect code until someone else steps up with better code, so drop me a line with any issues you encounter, or just let me know what cool tool you're building!

P.S. I'll be dropping another blog post soon about a new site I'm building for making Basecamp better using a variety of small tools.


37Signals says IE6 sucks

In a recent blog post, 37 Signals, originators of Ruby on Rails, and a series of extremely popular web applications, reminded users of their intent to stop supporting Microsoft's Internet Explorer 6.

Jason Fried, President of 37Signals blogged yesterday:
"We will not intentionally break IE 6 compatibility, but we will also not invest significant time or resources into making sure we are backward compatible with IE 6 after October 1, 2008."
What's a poor IE6 user to do?
"In order to continue using the products without any hiccups, Internet Explorer 6 users should upgrade to a newer browser..."
... like Firefox, or Safari, or maybe even Google Chrome (if you can work around their EULA).

Why drop support for a browser you've invested so much work in already?
"Continued support of IE 6 means that we can't optimize our interfaces or provide an enhanced customer experience in our apps. Supporting IE 6 means slower progress, less progress, and, in some places, no progress. We want to make sure the experience is the best it can be for the vast majority of our customers, and continuing to support IE 6 holds us back."
This reflects strongly on the culture of 37Signals and their customer base. In the original post, it was noted that, "..IE 6 usage has finally dipped below a small minority threshold of our customers...". This is contrary to browsers overall, as w3Counter still reports IE6 as the top browser in their August '08 stats, accounting for 29.91% of all browser hits. 37Signals is an amazingly successful, forward-thinking, and arrogant set of developers. Their customers, by reflection are mostly the same, and I'm proud to be counted among them. I just hope Firefox 2 isn't next on their hit list...

Of course, if you're using GNU/Linux or a Mac, this doesn't effect you anyway. ;-)


Silicon Mechanics: 'Wow'ing the Customer

Silicon Mechanics is building a new server for my company right now. They advertise 'Expert Included', implying you will receive top-notch support along with an excellent server. What that fails to imply is the amazing support you'll get before you order.

I submitted a quote through their web site, and requested the idle noise level of the server: something they're not currently publishing. Within 48 hours I got an email from Tim Groen, a member of their sales team, apologizing for the delay. In the meantime they had pulled a server, ordered a sound level meter, found a quiet room and tested the server. Wow #1.

Unfortunately, the server as quoted was louder than I was willing to tolerate (I work in the same room as our server rack). Tim asked a few questions about my priorities on the system, and what I would be willing to give up to get it quieter.

Shortly thereafter, I got another quote via email. Same system, but labeled 'quiet cousin'. Instead of chopping out any of my requested features, they opted to custom tune the system, with a guaranteed maximum SPL within my tolerances. Wow #2.

I got a call from Tim today, informing be the system was going to be a tad more expensive than originally quoted, as they were replacing the standard fans with something quieter. I approved the price change and got another email, which showed the fans they were including: maglev fans. Wow #3. I had no idea there were such things, but having experienced a maglev train I am expecting a rather quiet server.

Tim also told me to expect delivery next week; a full week ahead of their original estimate. Wow #4.


The server was delivered today, and unwrapped Christmas-morning-style. My co-hort and I bench-tested the server, and were very pleased with the noise level. Then the fans spun down after POST. I admit it; we giggled. The system is quieter than we expected, by far. Wow #5.

In the rack, compared to the rest of the noisemakers, I can't tell the server is running, save for a subtle low-frequency hum. Now to get openSUSE running on it, and start virtualizing (noisy boxes go first)!

Full disclosure: Silicon Mechanics sponsors my local Linux event, Linuxfest Northwest.


Freezing Rails 2.10 with MS SQL Server

So I'm starting to catch up with a lot of the deployment improvements in Rails up to 2.1.0; I'm freezing Rails, and any associated gems. Some of my apps run against Microsoft SQL Server, so the activerecord-sqlserver-adapter is required. That's where I ran into trouble; trying to freeze that in... apparently a frozen instance of Rails expects the adapters to be frozen as well!

So, here's my recipe for freezing Rails into your app, with support for Microsoft SQL Server:
  1. If you've already frozen rails, you'll need to unfreeze it:
    rake rails:unfreeze
  2. add the gem dependency to your environment.rb:
    config.gem "activerecord-sqlserver-adapter",
    :lib => "active_record/connection_adapters/sqlserver_adapter",
    :source => "http://gems.rubyonrails.org"
  3. Install your gem(s) if you haven't already:
    rake gems:install
  4. Freeze your gem(s):
    rake gems:unpack
  5. Refreeze Rails (I use my gems - you could do this from edge instead):
    rake rails:freeze:gems
Viola! Your Rails app now includes the Rails version it runs against, and any requried gems, including ActiveRecord's SQL Server Adapter.

P.S. This would be easily adaptable for any external ActiveRecord adapter (Oracle, db2, etc.)


Ruby, JRuby, and Rails Application Development (with Passion!)

Starting July 15th, Sang Shin, a Java architect and evangelist from Sun Microsystems, will be leading an online course on developing Ruby on Rails applications, including the use of JRuby. The free course includes 20 weekly lessons (including homework - bah) starting with Ruby fundamentals and working through all the major Rails areas, closing with four complete Rails applications. Of course, Sang will focus the materials on using the free, open-source NetBeans IDE and JRuby runtime.

I'll be acting as an Advisor for the course (the open-source version of a T.A.) along with five other members of a very diverse group. With 998 members and counting, anyone should be able to find a study-group to help out; groups have already formed with cultural themes - Indians, Brazilians, Mexicans, Syrians, etc.

So, if you're interested in learning the nuts and bolts of building a Rails application, join the group by sending an email to ruby-on-rails-programming-with-passion-subscribe@googlegroups.com or visiting the group site.


Tango for Free!

Jimmac announced today on the Tango Mailing List that thanks to about a bazillion requests and the negotiation skills of Michael Meeks, the Tango Icon Library will be changing licenses from CCASA2.5 to Public Domain. Yes, folks, free as in free. Put those beautiful icons in any app you want; they're yours!

There are a few sticky issues that have to be resolved; the free icons will likely publish from a new repository, and only icons where the authors have explicitly approve the license change will appear there.

For me, this should mean better adoption in the BungeeConnect platform, where I maintain a set of the Tango Icons.

Here's the original post:
[Tango-artists] relicensing tango-icon-theme

Jakub Steiner Tue, Jul 8, 2008 at 4:25 AM
To: Tango Artists List
Cc: Steven Garrity , Ulisse Perusin , Rodney Dawes
Hello fellow tango artists!

One of the most frequent debates here has been the licensing surrounding
the tango style's first implementation, the tango-icon-theme. Licensed
Creative Commons Attribution Share Alike 2.5, it has been problematic to
ship along with GPLed software and create derivative artwork for many
major software projects. The licensing has created a barrier where we
needed quick adoption.

A lot of time has been wasted recreating the same asset in
gnome-icon-theme and OpenOffice. So I'm relieved that after a _long_
debate with Novell legal and the open source review board, Novell is
agreeing to relicense its share of tango-icon-theme under a more liberal
license. The talk has been about CC-BY-SAv3, LGPL, but in the end the
license that is the least restricting and clear wrt to artwork (as
opposed to code) is giving up copyright and going Public Domain. This
will allow the assets to be used in free software regardless of the
projects' license as well as proprietary software. Huge thanks goes out
to Michael Meeks who has been the negotiator finally managing getting
this through.

I've done the majority of work on tango icon theme, but there is a lot
more contributors. I'd like to ask everyone to either approve or refuse
their work to be relicensed to public domain. I have cc:ed people listed
in the AUTHORS file. Luckily I have been mandating people to provide the
authorship metadata in the SVGs themself, so we can figure this out on a
per-icon basis.

One negative aspect of the theme may be that people are free to claim
authorship of your work. But realistically, people who do that, will do
it regardless of the license (as has been seen on many occasions in the
past). We can simply keep on kindly asking for people to give proper
credits to the tango project and linking to the website. Suggest rather
than mandate.

I don't know how this applies to the autotools scripts and
configurations. I would take this opportunity and suggest to start from
scratch on the new 'tango-icon-theme'[1]. Create a git repository on
freedesktop in place of the clumsy CVS, stop worrying about legacy
(icon-naming-utils), stop depending on a build system for an icon theme,
and simply use an artist-friendly workflow to edit icons in vector form.
I have been very happy using a one-canvas workflow I will follow up on.

Let's resurrect and scavenge the good that's left in tango icon theme!


[1] I actually have -- http://jimmac.musichall.cz/i.php?i=Tango-NG
Jakub Steiner <jimmac@novell.com>
Novell, Inc.

Tango-artists mailing list


24 hours with openSUSE 11.0

24 hours. Not 'a day'; not figuratively; I've spent 24 hours with the recently released update to my long-running favorite OS: openSUSE 11.0, and I've got some things to say...

OpenSUSE Linux 11.0 is revolutionary, but my enthusiasm is tempered by substantial regressions.

The Good, The Bad, The Ugly

This release brings some amazing new features, evidencing a great deal of creative problem-solving and innovative thought on the part of both the SuSE team in Germany, and the Novell folks on this side of the planet.

Installation is a breeze. The DVD installer performed a very effective upgrade of my 10.3 install, but the real show is on the Live CDs. I tried out the Gnome CD, and found myself in front of a Desktop in record time (I wish I'd actually timed it). Using an innovative imaging transfer instead of the typical package installation, I went from boot to live disc desktop, to an installed OS in under 20 minutes!

Package management that rocks. I've always been able to tout the package management provided by major Linux distributions as one of the big upsides of using a Linux desktop: despite whatever internal failings are dealt with, we've always had a centralized system for updating every piece of software in the distribution, be it YaST, yum, apt-get, packman, whatever: it blows the doors of the dozens of independent update sources you have to manage on a Windows desktop. OpenSUSE 11.0 takes it up a notch, posting extremely fast database management, super-lean memory use, broad compatibility, and a huge library of software enhanced by the OpenSUSE Build Service. Smarter than Smart, thanks to new math that I don't have to understand to appreciate. Smaller than yum. Faster than apt-get. Wee!

Aesthetics. From the animation on the boot menus to the complete desktop, openSUSE 11.0 is beautiful. A strong green & charcoal theme pervades the early experience, coloring the boot manager, the installers, login managers and splash screens. Its bright, clean, elegant, and decidedly non-orange! I would have liked to see the default Gnome theme bring it home with the new palette, but they've stuck with the equally elegant Gilouche style, which mixes some subtle, business-y blue & beige into an otherwise stark style. Darkilouche, with that strong green (instead of the default orange) makes for an amazingly stark desktop aesthetic, and will be my style-of-choice. Not to be left out, 11.0 is the first major distro release I've seen that works KDE4 into the mix. KDE4 is now the default KDE desktop, relegating 3.5 to its rightful role as a 'legacy' desktop. The theming for KDE trends stronger towards the blues, most likely to not clash with the Oxygen graphics. Thank you SUSE for finally showing a well-integrated KDE4 desktop.

Broken Laptop/Wireless Support. I run an HP Compaq 6710b laptop. Its Centrino, including the 3945ABG chipset. This isn't a toy: its a business laptop. Its built for stability & compatibility, not performance, style, or elegance. It is certified by Novell for SLED. It is certified by Red Hat. Back when the SDB meant something, it had a green check mark. And when I installed 10.3, everything worked out of the box. Everything: suspend/resume, sleep modes, wifi, brightness control, cpu scaling, all the Fn-buttons and soft-switches. Everything just worked, which is how it should be. 11.0, not so much. I thought wireless didn't work, turns out it does, but the killswitch doesn't. A search on Novell's bugzilla just turned up a big argument about whether the problem is with NetworkManager or HAL, but no solution. Oh yeah, and the wireless activity light doesn't do anything, not even when I am connected an working. Small issue? Maybe, but a big downer; especially since the light is under the soft-switch (which doesn't work in 11.0) making it hard to tell if its on/off/blocked/killed whatever. I've spent a year telling people that if you don't want to have a headache with wireless on Linux, get a Centrino laptop. Thanks, 11.o, for blowing that.
Firefox 3 doesn't respect me. Call me picky, call me a font nazi, whatever. I run my laptop with subpixel hinting enabled (in freetype2). Its the only way to use the screen without getting a migraine after an hour. I keep my dpi on target, and I'm very selective about the fonts I use, and it works well for me.
So, along comes Firefox 3, and its built-in rendering engine. And suddenly, the menus, the content, everything inside the window frame is rendered differently than the rest of my system. This is a one-way ticket to a migraine. Download day, I had a migrane. Next day, migaine. Thursday, migraine. Friday I had an epiphany, and switched to Epiphany.
The geniuses at Mozilla decided the best way to get stable rendering with all the goodies is to put everything under the hood, including their own copies of system libraries (*cough* cairo *cough*). But, like everything in the world of subpixel hinting, the goodies are turned off to avoid any liability with Microsoft/Apple patents in that area. Fine, whatever. Just tell me where the switch is to fix it myself.
It turns out there is a fix - the Ubuntu folks have been working on it since April; you can compile firefox with a flag called -enable-system-cairo, which enables firefox to use the system's font rendering, among other things, and allows the fonts in ff3 to look like the rest of your system. Too bad that the cairo library that SUSE is shipping is too old to work with ff3. So, your choices are: (1) live with ugly, non-subpixed-hinted fonts all around, or (2) have a browser that doesn't look like the rest of your system, or (3) downgrade back to ff2.

History Repeating

For anyone who has used SuSE Linux for a while, the mixed bag that comprises an x.0 release shouldn't be any suprise. For the unfamiliar, SuSE (and now openSUSE) follow the Windows upgrade rule: wait for SP1. In the case of openSUSE, that's the x.1 release. In my experience (which started with SuSE Linux 7.2) the release cycle is like this:
  • x.0: Big bang, big casualties.
  • x.1: Bugfix to x.0 to get back to x-1.3 quality/support/compatibility.
  • x.2: Incremental improvements since x.0 that were held up bugfixing for x.1.
  • x.3: A stable, polished, albeit aging release.
So, needless to say, I'll be doing my day-to-day work on openSUSE 10.3, for at least a few more months. 11.0 is installed on my laptop, too (thank you grub for making that easy), but I don't see myself touching it until I see some bugfixes come out of Novell.


Firefox wants a World Record

Download Day
Download Day: June 17, 2008

Mozilla's trying to get into the Guinness World Records, and it shouldn't be too hard: no one else has tried to set a record for "Most Downloads in 24 Hours."

But hey, why not? I know I'm anxious for the FF3 release!



BungeeConnect Delivers on 'Rocket' Promise -or- Real-Time Smart Trips Statistics!

The news is starting to get out that Whatcom County, WA's Smart Trips program is not just environmentally smart, but tech-savvy too. Last week they launched a Web Service providing real-time stats on the environmental impact of not driving alone. This is something I've been pushing for, in order to make the impressive stats a bit more accessible.

A few hours after receiving a link to the WSDL, I had a working demo running in BungeeConnect. A bit of wrangling back and forth on the style, and within a couple days, I have a functioning Google Gadget that mimics a printed poster of the statistics. Of course the poster's size is more impressive, but it's not real-time!

This is, without a doubt, the fastest I've ever delivered anything on the web. It's also my first Google Gadget, and the first time I've consumed a WSDL.

Props to the team at Bungee Labs for making it easy, Yamato Engine Specialists for sponsoring the effort, and the staff at Smart Trips for being flexible enough to jump into the web services pool.

So, add it to your iGoogle page, or any web page for that matter!


LinuxFest Northwest 2008: Saturday & Sunday April 26th, 27th

You should go to LinuxFest Northwest 2008, Saturday & Sunday April 26th, 27th at Bellingham Technical College, in Bellingham, WA. No admission, no need to register, although I do recommend bringing a few $ for the salmon barbecue and the World Famous Raffle. Print out a poster and stick it somewhere visible. Or connect other attendees, through the social nets. And don't forget to thank our sponsors.


As a presenter, I feel compelled to plug myself:
  • I'll be presenting on my experiences implementing FOSS in an established business, Sunday afternoon at 1:00pm.
  • I'll be cloning myself and participating in two Birds of a Feather sessions; openSUSE users, and multi-OS environments, Sunday afternoon at 3:00 pm.
  • I'll be doing a bit of booth duty for openSUSE Sunday morning.
As a well supported BCDN developer, I feel compelled to plug Bungee Labs:
  • 'Reverend' Ted Haeger will be talking about Software-as-a-Service (and his new favorite buzzphrase Platform-as-a-Service I'm sure) and open-source. Licensing coolness and making money, and hopefully, showing off the BungeeConnect environment, on Saturday at 1:30pm.
The full presenter schedule is online, but subject to change until the day-of.

As a member of BLUG, I've been otherwise armtwisted, cajoled, and downright shamed into plugging the event.

So come. Please. Before those with more infuence than I start doing worse than armtwisting... ;)


I've Been Podcasted!

At the tail end of their most recent podcast, Ted Haeger, (co-)host of the Bungee Line, mentioned yours truly. Feels like winning something on the radio. There goes 3 more of my 15 seconds.

Oh yeah, he mentions the upcoming LinuxFest Northwest 2008 as well. I'll be presenting on some lessons I've learning bringing open source into a business. Ted will be presenting on sneaky ways of making money renting free software ;-)


Proper Punishment

If only I had a chalkboard and compliant users...


dd gotcha on openSUSE 10.3 - solved!

Among other things, I'm responsible for a few kiosk workstations, which needed some attention. They had been running openSUSE Linux 10.1, with KDE 3.5, using KDE's Kiosktool to lock things down, but since I'm moving to Gnome, I thought I should bring them along. So I grabbed one machine, and installed openSUSE 10.3, and started to learn:
Kiosk Linux: Ubuntu was an extremely helpful document.

The last stumbling block was some leftover cruft in /tmp, so I added a line to the user-home-fixer-upper script to clear anything from /tmp related to the kioskuser, and viola, a relatively un-muckable desktop.

So I put the machine back out, and let it marinate in user sauce for a week, and the only thing that had changed was the volume (I'll figure that out eventually). So I called it good, and created an image of the drive to copy to the other systems:
  • I plugged in my handy USB drive (labeled Phasmatis ex Machina, from the tool I used before dd ) and did "dd if=/dev/sda ibs=4096 conv=noerror | gzip > kioskimage.dd.gz", then unplugged it (I love that I can do that on a live system).
  • I booted the next system with a rescue cd, plugged in Phasmatis and "gunzip -c driveimage.dd.gz | dd of=/dev/sda". Reboot, done... or so I thought.
Although grub came up fine, and via the rescue system all was good, the system wouldn't boot.
"Waiting for device /dev/disk/by-id/scsi-SATA_ST340015A_5LA83RY9-part2 to appear: .............. Could not find"
After a bit of stumbling around with Google, and the help of countd on #opensuse at freenode, I nailed down the problem:
  • /boot/grub/menu.lst was using the drive-id instead of the old-school partition device (/dev/sda).
  • ditto for /etc/fstab .
So I changed those files to use /dev/sdaN instead of /dev/disk/by-id/....partN and bam; a working copy.

Thanks to opengecko for his excellent post, which summarizes my path to clonedom.