Practical Technology

for practical people.

August 1, 2006
by sjvn01
0 comments

Linspire goes free, bundles proprietary goodies

Linspire CEO Kevin Carmony unveiled Freespire, a no-cost version of Linspire’s Linux distribution, in his keynote address at the Desktop Linux Summit on April 24. Freespire will be offered in both a completely open-source version as well as one that includes proprietary software, Carmony said.

The first beta release of Freespire will be made available for download in August, according to Carmony.

In his remarks, Carmony explained that Freespire will be a community-driven distribution, but that unlike other Linux distributions, it will allow users the choice of downloading a version that is almost entirely open source, or one that includes proprietary software.

Hot-button issue

Including proprietary software within a Linux distribution has long been a hot-button issue in Linux circles. Arguments over how proprietary or license-restricted code can — and cannot — be used with Linux have been raging for years.

Perhaps the most famous example was the use of TrollTech’s Qt library in the popular KDE Linux desktop. It wasn’t until Trolltech made the C++ library and related tools available under a dual license plan, with a GPLed version for Linux and other open-source uses, that the heated debate over the issue finally subsided.

In recent years, Linux distributors have tended to make some proprietary desktop programs, such as Adobe Acrobat and RealNetworks RealPlayer, available as optional downloads. However, in the case of drivers — such as laptop WiFi drivers — that work in closer association with the Linux kernel, distributors have generally avoided including them.

For example, in SUSE 10.1 betas and release candidates, the madwifi driver for the popular Atheros WiFi devices (ath_pci) no longer works by default. Here, the common problem of some of the code being under the GPL, while some is under a proprietary license, arises. The end result is that SUSE no longer ships this driver in its default distribution.

Overcoming desktop resistance

Freespire is thus venturing into new territory by offering a community Linux distro that includes the option to include legally licensed proprietary software pieces within the core distribution.

Carmony explained that Linspire was making this move because Linux on the desktop was meeting resistance due to its lack of native support for some hardware, file types, and multimedia formats.

Freespire addresses this hurdle by offering proprietary drivers and software as a choice, and gives desktop Linux users the option of “out-of-the-box” legal support for MP3, DVD, Windows Media, QuickTime, Java, Flash, Real, ATI drivers, nVidia drivers, Adobe Acrobat Reader, third-party fonts, etc.

Once released, a list of all of Freespire’s different proprietary codecs, drivers, and software will be made available at the site, along with the detailed licensing information needed to help others to modify and redistribute the core.

“Freespire is about choice,” Carmony stated. “The user should be free to decide what software they want to install on their systems, be that proprietary or open source. Linspire fully embraces and supports the open source model, but if Linux is to gain mainstream acceptance, it needs to work with iPods and DVD players, and fully support hardware, such as 3D graphic cards, WiFi, sound, and printers. Until there are viable open source replacements, Freespire sets out to at least provide the option of legally and easily using certain proprietary codecs, drivers, and software.”

No one doubts that many of these licenses are legal in and of themselves. The questions have always arisen in the murky area of how and whether the software they license is legal to distribute with Linux, which falls under the GPL 2.

While this is a matter that developers wrestle with constantly, for users, it usually amounts to having to separately download and install a number of desired proprietary programs and drivers when they start using their Linux systems.

Many proprietary codecs, drivers, and application programs will be offered in Freespire’s core distribution, while a few that have a larger per-unit licensing fee, such as legal DVD decryption, must be purchased and installed via Linspire’s CNR (click and run) service.

Based on Debian, Linspire, Ubuntu, DCC

As part of the Freespire project, Linspire’s CNR technology (a one-click, download-and-install software management system based on the Debian DEB package format), will be open-sourced to facilitate what Carmony calls a truly “free marketplace” for the distribution of all Linux software, including proprietary, open source, free, and commercial.

The new distribution will be based on Debian, Linspire, and Ubuntu, but will mostly be a direct derivative from Debian (Sid). It is also based on the DCC Alliance’s LSB (Linux Standard Base) compliant core Linux.

Initially, the Freespire desktop will be built around the KDE 3.5x environment, but as a community project, GNOME variations could be baked in, Carmony said.

At first, Freespire will only be available for the PC x86 platform. Linspire will be encouraging others to port Freespire to other platforms and architectures such as AMD64, Intel Core Duo, and POWER.

Community involvement

The Freespire project will be open to community development, comment, and contribution. A community forum is now live. The project will be governed by a Leadership Board that includes prominent Linux community members.

The board, which only has half of its members at this point, according to Carmony, currently includes: Carmony; Ian Murdock, founder of Debian, and now the LSB leader; Jim Curtin, CEO of Win4Lin; and Martin Michlmayr, a prominent Debian developer. Carmony said that the board’s other members will be appointed over the next two weeks.

Last summer, an unsanctioned Freespire Linux distribution, which also aimed to provide a free version of Linspire Linux, briefly appeared on the scene. Within a couple of weeks, the distro’s developer reportedly agreed to change the name of his project following a conversation with Carmony, and Linspire offered free copies of Linspire Linux “for a few days” as part of the arrangement.

The new, fully-sanctioned Freespire project will now provide the first sanctioned “free as-in-beer” binary version of Linspire’s Linux.

Novell launched OpenSUSE, the free SUSE Linux project, last summer at LinuxWorld in San Francisco. Red Hat launched Fedora, the free Red Hat Linux project, in 2001.

A version of this story first appeared in DesktopLinux.

July 12, 2006
by sjvn01
0 comments

Microsoft: Too Big for the Law?

A $10 million fine here, a $100 million lawsuit settlement there; it’s just another day of Microsoft doing business.So, the EU finally let Microsoft have it. European Union regulators fined the boys from Redmond 280.5 million euros—thats 357.3 million American dollars—for defying a 2004 antitrust ruling and warned the company that bigger fines were to come.

How big? It could go up to 3 million euros a day after July 31 if Microsoft doesnt toe the line and finally give up proprietary information on how its software works. And I think we can say its a safe bet that Microsoft is not going to cooperate.

To which, I say, “So what?”

In Microsofts last reported quarter, the companys net income was $2.98 billion. Thats what? About $33 million a day of profit—not revenue—profit? So, to Microsoft, paying off the Europeans every day would be about what most of us pay for our morning café latte vente and a cookie at Starbucks.

More >

June 19, 2006
by sjvn01
0 comments

Linux 2.6.17 kernel: better WiFi, faster performance

This past Saturday, June 17th, saw the arrival of the latest stable version of the Linux kernel: Linux 2.6.17.

While this new kernel doesn’t boast any earth-shaking additions, it does include numerous improvements to Linux for both users and developers.

For many laptop users, the most important news is that Linux now includes built-in driver support for the Broadcom 43xx based wireless card family. This WiFi chip family is found in many laptops such as many models from Acer, Apple (those using Airport Extreme), Compaq, and Dell.

This driver support depends upon another new enhancement to the kernel — the addition of a Softmac layer in the wireless stack. Softmac is a software MAC (machine access control) layer that works with Linux’s built-in 802.11 layer. This provides a great deal of WiFi protocol management features for chips that, unlike the Intel ProSet Wireless chip family, don’t handle these details in hardware.

Softmac is not the only open-source project that takes this approach. MADWiFi, for example, uses one to support Atheros WiFi chips. Since Softmac is now part of the kernel, however, it can be used by developers to more easily support other WiFi chips. There have already been efforts at supporting the Prism54 and the Ralink rt2* 802.11 chip families using Softmac.

Linux’s wireless improvements also include support for Cisco’s LEAP (Lightweight Extensible Authentication Protocol). LEAP is used in Cisco’s and other vendors’ wireless devices, including clients, switches, access points, and RADIUS servers that use 802.1X authentication. In turn, this enables network administrators to easily set up dynamic per-user, per-session WEP (Wired Equivalent Privacy) secured sessions. The bottom line is that it will be much easier to use Linux systems in LEAP-secured networks.

For users, what all this means is that they’ll be much more likely to be able to use their laptops’ WiFi without any fuss or muss.

The new Linux kernel also includes automatic support for SMP (Symmetric Multiprocessing) computers on the i32 and 64 families. With this, Linux distributions will detect how many processors, or conceivably processor cores, are running on the system at boot time. The distribution will then automatically adjust to make the most of the existing architecture.

While at first, this might not appear that useful for many users, with the increasing use of virtual CPUs in virtualization systems like Xen, it might become very helpful in high-powered servers.

Another new development that should be especially useful in servers is the arrival of the new kernel system call, “splice.”

Regarding what splice does, Linus Torvalds wrote:

“So in a very real (but abstract) sense, “splice()” is nothing but read()/write() to a kernel buffer.”

Now, to get slightly less abstract, there are two important practical details.” First, “the “buffer” implementation is nothing but a regular old-fashioned UNIX pipe.”

This actually makes sense on so many levels, but mostly simply because that is exactly what a UNIX pipe has always been: it’s a buffer in kernel space. That’s what a pipe has always been. So the splice usage isn’t conceptually anything new for pipes – it’s just exposing that old buffer in a new way.

The second part of the deal is that the buffer is actually implemented as a set of reference-counted pointers, which means that you can copy them around without actually physically copy memory.”

For those who don’t speak programmer, what this means is that with splice, and other new related calls such as tee and vmsplice, your computer will perform faster. That’s because it will no longer be wasting time copying redundant data from one chunk of memory to another or to a disk.

To cite an example from the new kernel’s changelog, “For example, you could forward data that comes from a MPEG-4 hardware encoder, and tee() it to duplicate the stream, and write one of the streams to disk, and the other one to a socket for a real-time network broadcast. Again, all without actually physically copying it around in memory.”

Speaking of performance boosts, the new kernel has also given the popular Ext3 file system a kick in the pants by supporting mapping multiple block file input/output to disk. In the past, Ext3 could only map one block at a time. This lead to a real speed bump, especially when it came to handling sequential I/O workloads.

Early tests have shown that users could see as much as 50 percent speed increases in some disk writing operations.

There are, of course, many other changes in the new kernel. Not the least of which, is that Linux is now supported on Sun’s new Niagara chip architecture. To sum it all up, though, better WiFi support and performance are the hallmarks of this latest kernel.

For a detailed list of all the changes, see the latest Linux changelog.

A version of this story first appeared in Linux-Watch.

June 15, 2006
by sjvn01
0 comments

First impressions of Google Earth for Linux

Only a few weeks after releasing its first Linux application — the photo editing program, Picasa — Google has released its second application for Linux: Google Earth for Linux 4.

Unlike Picasa, however, which runs with its own bundled copy of WINE, an open-source implementation of the Windows API (application programming interface), Google Earth is a native Linux application.

It may not appear that way to some users, since many of the files look like they’re connected with Windows. But, a closer look shows them to be Qt application libraries.

The result is an application that enables users to tour about the globe. Much of North America, Australia, and Europe can now be seen with up to 1-meter per pixel resolution.

How good is that? When I zoomed in on my house, I could make out the two DirecTV dish antennas on my roof.

The free-for-personal use Google Earth is more than just an incredibly neat toy, though. With a variety of data layers available, the displays and maps can be remarkably useful for everything from literally looking over a new route to grandma’s house, to determining the best place for a microwave tower.

That said, it’s also a really great toy.

Of course, for such goodies as GPS device support or the ability to import spreadsheets, you’ll need to buy the Plus Edition for $20. And for commercial work, you’ll need to buy Google Earth Pro for $400. Neither of those versions, however, is available yet for Linux.

Based on what I saw of this beta version of Google Earth, I don’t think eager Linux users will need to wait long for the final versions of Plus and Pro to make their appearance.

I tested the beta on two systems. The first was my workhorse desktop. This PC has a 2.8 GHz Pentium IV, 512 MB of RAM, and an Ultra ATA/100, 7200 RPM, 60 GB hard drive, and runs OpenSUSE 10.1. The other test box was my HP Pavilion a250n. This PC ran Ubuntu 6.06, aka Dapper Drake, on a 2.6GHz Pentium 4 processor with 800MHz bus speed, and a GB of PC2700 DDR (double-data-rate) RAM. For graphics, it uses a low-end NVIDIA GeForce 4 MX 3D graphics card.

The recommended minimum system is a 500 MHz Pentium 3 with 128 MB of RAM, but you’ll be much better off with 512 MB of RAM. For full details, visit the Google Earth download page.

Two other factors really determine what kind of performance you’ll see. The first is a supported 3D graphics card with at least 32 MB of RAM. At best, the program will run adequately without one that uses “Mesa” (all software rendered OpenGL 3D graphics). The other limiting factor is your network connection.

Graphics rendering with Mesa alone is slow, but the idea of trying to use Google Earth with its minimum recommended connection speed of 128Kbps would keep me from ever running it.

Personally, I wouldn’t want to run it with less than the 3Mbps download speed my ADSL Internet connection gives me.

Downloading and installing Google Earth are both straightforward.

It comes as a bin file. To install it, you simply run it from a terminal window as a shell program. So, I simply typed in:

sh /home/sjvn/Desktop/GoogleEarthLinux.bin

And in less time than it took me to write this paragraph, the program was installed.

Once in place, I had one unexpected crash on the Ubuntu system, but it otherwise has run without a hitch.

You can, however, run into trouble with either using an older version of the glibc library or with a case of the drivers for either ATI or NVIDIA 3D graphics cards conflicting with glibc’s pthread. The quick and dirty fix, in any of these cases, is to export the environment variable LD_ASSUME_KERNEL=2.4.10 to the system before running Google Earth.

A better approach would be to upgrade your graphic card drivers, and make sure that you’re running glibc 2.3.5 (or later) with NPTL (Native POSIX Thread Library) support.

A minor problem that some users have run into is that the program really wants to use the Bitstream Vera Sans font. Personally, I found that with, or without, that font, the program still needs some fine-tuning with its character display. It was never bad enough to be unusable, or even difficult, but the text information was simply not as clear as it should have been.

Despite these quibbles, I still have to say I’ve seen shipping products that weren’t as impressive as this beta. I’m pleased that Google Earth is finally here for Linux, and even more pleased that Google is continuing to bring more programs to desktop Linux.

A version of this story first appeared in Desktop Linux.

May 26, 2006
by sjvn01
0 comments

Google’s Picasa for Linux arrives

Google and CodeWeavers Inc. have released the first Google program, the popular beginner-level photography program, Picasa, for Linux. Although the Linux Picasa implementation includes most of the feature set of the Windows Picasa 2.x software. It is not, strictly speaking, a port of Picasa to Linux.

Instead, Linux Picasa combines Windows Picasa code and Wine technology to run Picasa on Linux.

Wine is an open-source implementation of the Windows API (application programming interface). It runs, in turn, on top of the X Window System and Linux. Wine is not, as has sometimes been said, a Windows emulator. Wine provides a Windows API middleware layer that enables Windows programs, such as Office 2003, to run on Linux without the slowing effects of operating system emulation or a virtual machine.

The new program has been re-tooled to work well with CodeWeavers’s CrossOver Office Wine emulation. Thus, Linux Picasa uses the program’s own native Windows DLLs (dynamic link libraries). Wine enables developers to use Windows DLLs, when they’re available, for greater speed.

The free Linux Picasa download includes a runtime version of CodeWeavers’s modified Wine, so that users can simply download the package from Google and run it on their Linux system. Users will not need to download and install Wine, or purchase CodeWeavers’s commercial version of Wine, CrossOver Office.

Thus, to run it, most x86 Linux users will only need to download the package and use their native package manager to install it. One of Google and CodeWeavers’s goals was to make Picasa as easy to install on Linux as it is on Windows. Therefore, the program comes with installers for RPM, Debian packages, and a Windows-style installer.

Picasa comes with the necessary Wine files for the required APIs, as well as Gecko, the Mozilla rendering engine, for displaying the photographs. Thus, you shouldn’t need to install any additional libraries or software to run it.

The program has been tested and installs and runs on most modern Debians, Ubuntu 5.1, Linspire 5, Mandriva 2005 and up, Red Hat Workstation, Fedora 4 and up, and SUSE 9.3 and 10. DesktopLinux.com has also tested Picasa for Linux on SUSE 10.1, and it ran well.

With the program, users can download images from cameras, and organize, edit, and print their photos and other images. Picasa can work with JPG, BMP, GIF, PNG, PSD, TIF, and RAW data files, including but not limited to, cameras from Canon, Nikon, Kodak, Minolta, and Pentax. For camera support, it uses the gphoto library. Thus, any camera supported by gphoto should also work with Picasa.

Picasa for Linux requires glibc 2.3 or greater, and a working X11 display system to perform basic work. You’ll need an XVideo extension on your display driver to view full-screen images, and a Linux kernel 2.6.13 (or better) kernel to be notified of file changes during run-time and automatically detect new media and camera attachments.

While the program’s desktop integration features require a current version of GNOME or KDE, the program also works with more obscure window managers like XFCE and Blackbox.

Google states that this is a “pre-beta” release, but we found it to be more polished than many final releases. It is, however, available only in the U.S. with an English interface at this time.

While the program uses the exact same binary as the Windows version, it is missing two features: CD-ROM burning and movie playback. According to the Picasa for Linux developers site, that’s because the CD driver used by Picasa is hard to support under Wine, and Wine doesn’t have the necessary codecs for Picasa movie-playback.

Those features will probably appear in an update to the program. Dan Kegel, a Picasa for Linux team programmer, explained that these “were beyond the scope of this first port.”

While the Wine libgphoto and Gecko parts of the package are open-source, Picasa itself is a proprietary program.

If the Linux Picasa project is successful, you can expect to see more Google Windows programs migrating to Linux via Wine and CodeWeavers. In addition, work is proceeding on native Linux Google applications. The first of these is expected to be Google Talk for Linux.

Picasa for Linux can be downloaded from Google’s Picasa for Linux web page.

A version of this story first appeared in DesktopLinux.

May 19, 2006
by sjvn01
0 comments

Banshee — the next best thing to Linux iTunes

I want an audio player that will do everything that Apple’s iTunes does — including working with my iPod — and do it natively on Linux. That’s a tall order. I’ve tried many fine Linux programs — KDE’s amaroK, RealPlayer 10 for Linux, Xine, etc. — but none have scratched my itch.

So, I’ve been running Windows iTunes 4.9x running atop CrossOver Office 5.01. Apple’s favorite audio program runs decently on CrossOver Office, but I wanted something that worked better and was a “real” Linux program.

Although I haven’t quite found exactly what I want in a Linux app, Banshee comes pretty darn close.

To start with the basics, Banshee can play all the most common music formats, such as Apple’s AAC (Advanced Audio Coding), MP3s, and Ogg Vorbis. Better still, the tracks I’ve burned from my CD collection sound pretty darn good on the old bookcase JBL J2060 speakers.

You can also use the program to rip and burn CDs. When you burn CDs, you can do it either as MP3s or as conventional audio CDs.

Unlike many audio programs, controlling Banshee is as easy as pie. Want to add your collection, point at the appropriate directory and watch it build its library. Want to display your music in artist order? Album order? Make a playlist? No problem.

It also supports iPod synchronization. I was able to bring tunes in from my iPod and to put new songs on the iPod. I could also place my music on a network drive and then use iTunes to play them when I’m on my Mac or use Banshee to listen to them when I’m on one of my Linux systems.

For that matter, Banshee can also work as both a DAAP (Digital Audio Access Protocol) client and server for sharing music on a SOHO network. While there are reports of Banshee’s DAAP not working, it worked for me.

I now run Banshee on several systems. My primary test system, though, was my faithful old SUSE 10.1 workstation. This PC is an Insignia 300a with a 2.8 GHz Pentium IV, 512 MB RAM, and an Ultra ATA/100, 7200 RPM, 60 GB hard drive.

With this system, I had no trouble bringing Banshee up. That’s not surprising, since Banshee is included with SUSE.

I was also able to bring it up on a Ubuntu system with a little work. Other supported Linuxes include Mandriva and Fedora Core 4. You can, of course, build it from source.

Banshee is a Linux-native audio player that is built on top of Mono and Gtk#. Experts will realize that Banshee is a GNOME program. However, speaking as a KDE 3.51 user, I can assure you that it runs just fine with the KDE desktop.

Behind the scenes, Banshee uses Gstreamer play, encode, and decode Ogg Vorbis, MP3s, and most of it other supported audio formats. The major exception is Apple’s AAC (Advanced Audio Coding) format. To play those, Banshee relies on RealNetworks Helix media framework to do the AAC decoding.

Since the AAC is a proprietary format, Helix includes a license for it. Because of this, you’ll need to agree to install this non-open-source based software. The relevant files are banshee-engine-helix-0.10.9-21.i586.rpm and helix-dbus-server-0.2.2-6.i586.rpm, which are available on SUSE 10.1 with the distribution’s useful Add-On, Non-OSS CD.

If you already have RealPlayer 10.x or Helix 1.x, you should already have the necessary Helix files.

Even with these files installed, you will not be able to play any songs you’ve downloaded from the iTunes music store. That’s because Banshee doesn’t support the iTunes DRM (digital rights management) scheme. There is, however, a Banshee project working on solving this problem.

In addition, one of the things I like most about iTunes is the access it gives me to live music streaming from the Web. In particular, may I bring Boot Liquor Radio, music for saddle-weary drunkards, to your attention?

However, the functionality is already in Banshee, and the interface to access it should be available soon.

So it is, that while Banshee isn’t quite everything I want it to be yet, it’s already closer than anything else out there. I highly recommend it to anyone who wants a stable, simple-to-use, iPod-compatible Linux-based audio player.

A version of this story first appeared in Linux-Watch.