Showing posts with label Linux. Show all posts
Showing posts with label Linux. Show all posts

Friday, January 09, 2009

2009: Year of the Linux Handheld?

Palm's new Pre handheld will run a Linux-based OS

A common inside joke on Slashdot is the "Year of the Linux Desktop", a revelation about each upcoming year being the mythical time when Linux will obtain wide-scale adoption on desktop PCs. Although the number of PCs running Linux has increased each year, a new emergent trend is that Linux is becoming a popular on more consumer handheld devices.

The reason for Linux's rise in popularity on cellphones is that cell manufacturers (Eg. Motorola) are being forced to ditch their simpler, proprietary operating systems that run on the "dumbphones" they sell because a more powerful operating system is needed to handle better multitasking and internet connectivity. Windows Mobile has been a popular pick with manufacturers because it meets the needs of smartphones, but the licensing costs are enough to make manufacturers like HTC experiment with other platforms, like they did with Google's Android on their HTC G1.

Similarly, Palm has just announced their brand new Pre smartphone, which just so happens to be powered by Linux. Palm's "OS 2.0" (or WebOS, as it is now known as) has been in the works for as long as anyone can remember, and if you check out Engadget's videos of the Pre, you'll find out just how hard they were working.

With the devices like the Palm Pre and the upcoming swath of Android phones, 2009 might be the year that Linux starts challenging Microsoft's dominance in the smartphone arena. At the same time, it will be interesting to see how Linux holds up in the ongoing netbook race as well.

If devices like the Asus Eee PC continue to ship with Linux, it would not be surprising if Microsoft started offering manufacturers crippled versions of Vista for netbooks at a significantly discounted price. If Microsoft were to do that, I think we'd see Linux's market share on netbooks decline because a crippled Vista would be easier for average Joe to use for email/web/IM than Linux and the cost advantage of Linux would not be as good. Still, Microsoft already missed the boat with netbooks - There is no Windows Vista Netbook Edition, as there needed to have been early last year in order for Microsoft to have crushed Linux on netbooks. Instead, manufacturers found that companies like Xandros were willing to provide small, fast, and flexible Linux distributions to meet the needs of their netbook target audience, while Microsoft wasn't interested. This was undoubtedly a good thing for Linux adoption.

The Linux-powered Pandora gaming handheld is due out in Q1 2009. (Yes, this render looks like it was made in 3D Studio Max circa 1998...)

In 2009, Linux will also see interesting applications in devices like the Pandora gaming handheld (a spiritual successor to the GP2X). A 600 MHz ARM processor, 800x480 screen, 802.11g, Bluetooth, USB 2.0 host, and a purported 10 hours of battery life - This handheld sounds like a gamer's dream.

However, the success of any handheld device hinges on one thing being done superbly well; Software, software, software. If the games for Pandora are bad, not even hackability can save it. If the software on the Palm Pre turns out to be garbage, same fate. One can start to see a pattern emerging though - Linux has been successful on netbooks because the software stack of Firefox/Thunderbird/Pidgin is rock solid. The software that tackles the primary use cases of netbooks is fantastic (largely in part because Firefox, Thunderbird, and Pidgin are simply mature, well-run software projects). The tricky part with Pandora is that its primary use-case (gaming) does not have a fantastic stack of off-the-shelf open source software to run, perhaps beyond emulators. No offense, but Supertux isn't exactly what I'd like to be playing on Pandora.

There is nothing magical about running Linux that will make a device better for end-users. It can cut down development and licensing costs, but ultimately the fate of Linux on handhelds in 2009 will come down to the quality of the software that runs on it. Let's hope it goes better than last year.

Sunday, September 07, 2008

Has Linux lost the ISV battle?

For as long as anyone can remember, one of the big problems with Linux has been the lack of commercial applications. Independent software vendors (ISVs) are generally sticking to Windows or OS X, resulting in very little commercial software being available for Linux. Free software ideologies aside, there are many commercial applications that Linux would benefit from being able to run.

As a cross-platform software developer, there are many challenging issues that are unique to developing on Linux. First and foremost, there is the issue of binary compatibility.

In order to build a x86 Linux binary that runs on as many desktop Linux distributions as possible, the most widely documented procedure is to simply build your application on the oldest distribution you can find. Most Linux libraries are backwards-compatible, meaning an application compiled against older version will run with newer versions of the library. In theory, this seems like a reasonable way to make a universal Linux binary. In practice, things are very different - Do you statically link or dynamically link and bundle the libraries? How exactly does one do all of this? Is it practical to roll this procedure into your build system? Furthermore, where is the official documentation for this procedure? What are the best practices for producing a universal x86 Linux binary?

Another issue is software distribution. As a commerical software developer, how do you distribute your software to as many customers as possible? You'd need to create DEB and RPM packages, and probably have some generic graphical installer package as well. On Windows, a single installer .EXE will install on 2000, XP, Vista, etc. On Linux, you either need to create tons of packages, or you have to limit your customer base by creating packages for only the most popular distros. Already you've multiplied the amount of effort required to develop for Linux manyfold.

Additionally, you're fighting an uphill battle against open source software. If Adobe made a version of Photoshop for Linux (and allowed you to buy DEBs from their site), most people would still just install GIMP through Synaptic or Ubuntu's Add/Remove Applications dialog. Even worse (for Adobe), GIMP is installed on every Ubuntu system by default. The best Adobe can hope for is to offer DEBs via their site, and hope that people have a priori knowledge of their product, and go to their website to buy it. There is no "App Store" for Ubuntu, and perhaps there should be because distributions certainly don't make it easy to sell your software for Linux.

Many of these issues that are hindering independent software vendors from developing applications for Linux could be alleviated by much better organization by the Linux Foundation. When I originally heard about the Linux Standard Base (LSB), I was excited at the prospect of finally having universal x86 binaries for Linux, and perhaps it would finally open the door for more commercial Linux applications, I thought. However, to date, I can count the number of LSB certified applications on one hand. Mass adoption of Linux by ISVs did not happen, and I can't say that I blame them. If I were a developer coming from Windows, I wouldn't know where to start. The Linux Foundation's getting started guide includes an article on porting your application to the LSB, but that's for existing Linux applications, not for applications that already run on another platform.

If I were a developer looking to write a new application on Linux, I would not know where to begin. Do I use GTK or QT? wxWidgets? What are the standard system libraries on Linux? Where is everything documented? There is no central documentation repository that guides Linux developers and provides answers to this question. Windows developers have MSDN, OS X developers have Apple's Developer Connection, Linux developers have nothing but a bunch of scattered webpages, each trying to convince you that their library is the best one to use. This is not a productive approach, and an organization like the Linux Foundation should make a serious effort to give developers the information they need to develop their applications quickly. You can't expect developers coming from Windows to know what libraries to use by googling for answers - There needs to be some centralized site that provides developers with the answers they need. To me, this highlights the lack of leadership in the Linux desktop community.

In the kernel, it's very clear who is in charge. There is a clear structure of command, and this allows the kernel developers to work as an effective organization. Within the userspace (ie. libraries and software applications), we do not see the same command structure. We have Freedesktop.org creating "standards" and backend software for the Linux platform, but of the software hosted on it, it claims:

None of this is "endorsed" by anyone or implied to be standard software, remember that freedesktop.org is a collaboration forum, so anyone is encouraged to host stuff here if it's on-topic.


What desktop Linux appears to have is a plethora of organizations acting independently (creating libraries, etc.), with no clear cross-organization leadership. Freedesktop.org has been successful in getting many of these organizations to cooperate and has undoubtably resulted in an improved desktop Linux (see HAL and DBus), but it doesn't seem to be preaching a clear vision to those organizations, nor providing any guidance for new developers wishing to take advantage of the new technologies it has fostered.

Many of my views presented here have been shaped by my experience writing proprietary software on an embedded Linux platform. I've worked with engineers who've never written software for Linux, and they have a hard time answering the questions they have because Linux doesn't have something like MSDN. It's very easy to make bad decisions about what libraries to use on Linux due to the lack of centralized documentation.

The nightmare of binary compatibility, lack of support from Linux distributions, and the absence of centralized documentation and guidance for Linux software developers make it a difficult and expensive platform to develop on. It's a great platform to slap together little applications on, but when you have to deal seriously with the issues that independent software vendors have to deal with when developing desktop applications, Linux as a platform simply isn't worth the effort.


* Update: According to Phoronix, CyberLink DVD playing software appears to be for sale for Ubuntu in the Canonical Store. Two thoughts on this:
  1. Might this be start of the Ubuntu app store?
  2. CyberLink is just experimenting with this, they don't expect to make a lot of money from it. They make their money from distribution deals like getting bundled with DVD-ROMs, or more recently, getting bundled with Linux-based Netbooks/MIDs, not from selling their software in stores. I suspect this is also an experiment on Canonical's part, as they gauge the response of Ubuntu users and find the optimal way to integrate this into Ubuntu (hopefully in Add/Remove Applications one day).

Ubuntu and the ASUS P5Q-E Motherboard

I built a brand new PC a few weeks ago, and getting my ASUS P5Q-E motherboard to work in Linux took a few tweaks. I had taken my harddrive out of my old PC and dropped it right into the new PC, expecting it to work. Ubuntu managed to start booting, but it hanged at the earliest bootup splash screen, where the progress bar bounces back and forth. GRUB had managed to boot the kernel image, but something was wrong - The kernel image couldn't find my hard disks, so it wasn't booting.

To solve this problem, I had to change the following BIOS options:

  1. Under MAIN / Storage Configuration, I had to change "Configure SATA as ..." to [AHCI]. This allowed the kernel to find my disks and boot.
  2. I experienced some weird USB problems while booting, and so under ADVANCED / USB Configuration, I had to change "BIOS EHCI Hand-Off" to [Disabled].
  3. For good luck, I also made sure ACPI 2.0 was enabled under power saving.
Hopefully someone finds this useful. When I first booted and Ubuntu didn't boot, I thought to myself, "Damn, I should have checked if this new Intel chipset has good support in the kernel". I was worried the motherboard just wasn't going to work. However, after tweaking those BIOS options, things are working fine. +1 for Linux.

Sunday, June 22, 2008

To iPhone or not to iPhone...


$199 USD for a 3G iPhone, with a soul-stealing ridiculously-priced contract.

Is it worth it?

I've been considering getting an iPhone when it launches in Canada on July 11th, but rumours indicate that it's going to cost about $90 CAD/month for service with Rogers. I currently pay about $10 CAD/month for a cheapo prepaid cellphone. In 2 months I'll be moving across the country, so now is a convenient time to reconsider my options. I've decided that if I were to get an iPhone, it'd replace my landline. Does it make it any more affordable? No, $90/month on a contract for 3 years still seems insane to me.

The massive draw with the iPhone for me is the software. The sheer amount of cool applications that are going to be released for it make it very appealing, plus the stock software (email, web browser) are top notch. On the other hand, it's a nightmare if you want to make it sync with Linux.

What're my other options? Stick with the $10 CAD/month cheapo phone, and possibly invest in something else for mobile internet. This is where Linux comes back into play...



The Nokia N810 WiMAX Edition has caught my eye. A little known fact is that Canada already has a nation-wide WiMAX network, with access offered by both of our big telcos (as Rogers Portable Internet and Bell Sympatico Unplugged). For about $60 CAD/month (tax inc.), it looks like I can get 1.5 Mbps WiMAX which I believe will work with the N810. As an added bonus, I could just use this WiMAX connection as my internet connection at home too.

Lastly, did I mention that the N810 runs Linux? Nokia's device runs OS 2008 and it looks Android-ready too. I'm a fan of Linux-based embedded devices (like the GP2X), so this adds a bit of hackability to the thing. Unfortunately, the N810 WiMAX Edition doesn't look like it comes out for another month, so we'll have to see what the reviews are like when it's released. Until then, I'll keep pondering...

Friday, January 11, 2008

HOWTO: Figure out what's using your soundcard in Linux

It's 2008, and while Linux audio is getting better for desktop users, I still occasionally find myself running into a situation where one application is tying up my soundcard. Sometimes I'll try to run jackd through qjackctl and it'll fail because Firefox has a flash video loaded in it or something like that.

Anyways, to figure out what's using your soundcard on Linux, you can run:

sudo fuser -v /dev/dsp*
sudo fuser -v /dev/snd/*

The first command above will list all the OSS applications using your sound hardware, and the latter will tackle ALSA applications.

For example, if I run those commands with nothing running:

gamegod@home:~/$ sudo fuser -v /dev/dsp*
gamegod@home:~/$ sudo fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: gamegod 6236 F.... mixer_applet2

The output above is showing me that GNOME's mixer applet is using the "control" interface on my soundcard. This won't interfere with any applications, so you can always safely keep this running.

As another example, if I run Mixxx (software for DJs) before running those commands, I'll see:

gamegod@home:~/$ sudo fuser -v /dev/dsp*
gamegod@home:~/$ sudo fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: gamegod 6236 F.... mixer_applet2
/dev/snd/pcmC0D0p: gamegod 12936 F...m mixxx
/dev/snd/seq: gamegod 12936 F.... mixxx

This time the output above is showing me that Mixxx is using my soundcard's audio first ouput interface (pcmC0D0p corresponds to ALSA's hw:0,0), as well as ALSA's MIDI interface.

Monday, November 12, 2007

So you remember all of those Mac vs. Vista ads...

... and you remember the whole "deny or allow" thing?

Well, I don't know why Apple was making fun of Vista, because they decided to join in on the fun in Leopard:

Yes, I know Skype is an application from the Internet. Where the hell do you think I get 99% of my applications from?

It seems like Linux is the only OS moving forwards these days...

Saturday, September 15, 2007

New iPod Firmware Screws Linux Users

Miguel de Icaza writes:

Yesterday after rumors that new iPods require a cryptographic checksum on the song database we confirmed that Banshee can no longer store songs on the new iPods.

The new firmware will now refuse to play any songs that you legally own unless you use Apple's iTunes (which is only supported for Windows and MacOS)

Read on...

In the meantime, I'll be sticking to my iRiver U10. (Cowon MP3 players are supposed to be pretty Linux friendly as well.)

Update: And thus begins the game of cat-and-mouse - The new iPod checksum has been cracked.

Tuesday, May 22, 2007

Weekly Blog Round-up

The blogosphere's full of good reads this week:

  • I found Paul Buchheit's Amazingly Bad APIs funny because it chronicles my experience with Java quite nicely. (... and man, people do love over-complicating their abstraction patterns in Java)
  • Benjamin Otte's "Distros..." is another rant I can related to. It'd be nice if the libraries you relied on "upstream" always worked, but the truth is, they don't. I often wonder if we're the only ones who actually use a certain library (who's name I won't mention), because we seem to be the only ones complaining about certain issues we've had. (The solution? Fix it ourselves - we've started getting involved with the upstream guys to help them out....)
  • Free Gamer's still rocking, and I was pleased to read that a Linux build of SoulFu is kicking around. (SoulFu's written by the same author(s) as Egoboo, which was a little 3D hack-and-slash game.)
  • MacSlow's been working on more eye-candy goodness, this time a little video player using gstreamer, OpenGL, Cairo, and GTK+. He's hoping one day some of this stuff might end up helping beautify Totem, which I'm all for.

Monday, April 16, 2007

Wine-Doors Screencast

I just noticed a short screencast of Wine-Doors in action over on their site:



Looking pretty slick...

Saturday, March 03, 2007

Mixxx 1.5.0 Released

If you're looking for good free DJ software, Mixxx is the king of the hill. Not only is it much more mature than any other open source DJ application, but it also beats all the spyware riddled freeware apps that do similar things.


After two years of work, the Mixxx team has released version 1.5.0, which adds a decent amount of new features as well as a ton of bug fixes. Mixxx is an interesting project to take a look into because there's something to be learnt from it's history. It started in 2001 as one of the first "digital DJ" apps, before big commercial competitors like Traktor entered the scene. Unfortunately, after several years of development and a couple of releases, the project ended up somewhat abandoned. However, last year the project was revived by a couple of developers and after many months of hard work, they've whipped the project back into shape and finally made a new release. One of the reasons it took so long to fix Mixxx was because it's development seemed to have lost focus - There were tons of unmaintained features added to it over the years, many of which didn't end up working properly on all platforms. (Mixxx is a cross-platform application, and that makes certain things like hardware controller support very tricky.) However, things are looking much better for Mixxx now.

At the end of the day, Mixxx (as an open source project) is a good example of three things:
1) A very well written program who's original developers thought long and hard when designing it.
2) A project that lost it's way as more developers got involved. It looks like not enough discretion was used when screening patches, which eventually lead to tons of bugs and half-working features.
3) The way in which the open source process can give new life to a dead project. After switching maintainers, the project's focus was tightened up and forced developers to fix bugs rather than create them. Now that the ball's rolling once again, you can certainly expect cool new stuff to come from Mixxx in the future.

That being said, if you're interested in DJing, Mixxx is a must-have application for Linux. For more information, check out Mixxx's features or head on over and give it a download (Windows, OS X, and Linux).

Wednesday, February 07, 2007

Visio, and another reason I love Linux


Today I had a nice reminder of one of the things I like best about Linux.

I've found myself being forced to draw some UML diagrams in Microsoft Visio 2003, and to be quite honest, I've been totally disappointed with the software. One of the things that bugs me is that Visio seems to have absolutely no intelligence whatsoever when it comes to laying out labels on associations - It'll blindly draw numbers on top of your classes and other diagrams.

You would think after Visio 2000 and Visio 2002 that stupid stuff like this would be fixed, but nope, this is Microsoft, and this is exactly why I love Linux.

Stupid bugs like this get fixed in open source software, because the users are the developers. With each release of Ubuntu (and other good pieces of open source software), there are not only new features added, but also a ton of bug fixes. I've yet to be affected by a bug in Ubuntu that's persisted across releases, and these guys release a new version every six months - not every couple of years (a la Microsoft). That's pretty damn good.

I think another reason why problems get fixed in open source projects is because their software development processes sometimes leave big companies like Microsoft in the dust. Quite honestly, Launchpad and other bug trackers (and the way in which they are used transparently) seems to play a large role in many projects' rapid success by providing developers with organization and a strong continual link to their users. It's this constant interaction, an excellent feedback loop, that some companies seem to lack.

Sure, many open source projects don't follow strict development processes, but you know what?
They not only get their software built, but they get it built faster and better.


Note: If you're looking for a good open source Visio replacement, here's some good ones:

Wednesday, December 20, 2006

PDF + Cube = PDF Cube?



PDF Cube uses the OpenGL API to add spinning cube page transitions to PDF documents

PDF Cube is an OpenGL API-based PDF viewer that adds a compiz/Keynote-like spinning cube trasition effect to your PDF presentations (including Latex, Beamer and Prosper). You can also zoom on 5 predefined areas of any presentation page with a smooth zooming effect.


That pretty much says it all. It's still pretty alpha-quality, but it might be part of a cool solution to the presentation software dilemma some day. If you're interested, check it out.

Thursday, December 14, 2006

GPL kernel modules, reverse DRM, and the future of Linux

I was doing my daily read of Digg today, and I stumbled across this: Linus Torvalds on the "GPL only modules" debate.

The issue at hand is whether the kernel should only be allowed to load GPLed modules (that is, drivers). That's right, some of the Linux kernel developers want to do away completely with binary-only (ie. closed source/proprietary) drivers, like the (good) Nvidia and ATI ones.

On the one hand, Andrew Morton writes:

Give people 12 months warning (time to work out what they're going to do,
talk with the legal dept, etc) then make the kernel load only GPL-tagged
modules.

I think I'd favour that. It would aid those people who are trying to
obtain device specs, and who are persuading organisations to GPL their drivers.

(Whereas the patch which is proposed in this thread hinders those people)


The patch in question would allow more components of drivers to be handled outside of the kernel, thus allowing developers of binary-only drivers (like Nvidia) to write GPLed skeleton drivers that actually just move their proprietary stuff outside of the kernel. So really, it doesn't solve anything, as Linus himself argues:

It will only result in _exactly_ the crap we were just trying to avoid,
namely stupid "shell game" drivers that don't actually help anything at
all, and move code into user space instead.

What was the point again?

Was the point to alienate people by showing how we're less about the
technology than about licenses?

Was the point to show that we think we can extend our reach past derived
work boundaries by just saying so?

The silly thing is, the people who tend to push most for this are the
exact SAME people who say that the RIAA etc should not be able to tell
people what to do with the music copyrights that they own, and that the
DMCA is bad because it puts technical limits over the rights expressly
granted by copyright law.

Doesn't anybody else see that as being hypocritical?


Linus then goes on to argue that decisions in the kernel should be based on technical merit, and shouldn't seek to limit how people are allowed to write/use drivers for Linux.

Because the history of Linux is so deeply intertwined with that of the Open Source/Free Software movement, many people feel that the kernel should only accept GPLed modules. The idea is that this would put pressure on companies like Nvidia and ATI to release GPLed ("Free") drivers. However, the flip-side is that it may well just end up in the same companies simply shunning Linux all together, or just moving their proprietary code out of the kernel. (The only thing the latter case seems to accomplish is a philosophical cleansing of the kernel.) Furthermore, proponents of this approach seem to be ignoring the other important component of "Free" - that is, being able to do what you like with it.


A "Free" kernel should let the user insert any modules they want in it, regardless of the license. It's almost reverse DRM - Instead of restricting users from freely using something, users would instead be restricted to only using something "Freely" (that is, only in ways that are compatible with their definition of "free"). Lastly, it just so happens that allowing binary kernel modules (as is the case currently) is the best technical decision, at least in the short-term, because Linux does not have the consumer base to persuade vendors to release open source drivers. Think about it - Linux is most popular in server market right now, and all of the popular binary drivers (Nvidia, Ati, Wifi) are needed on desktop Linux, not on servers.

Moving forward, the Linux kernel must continue to walk the narrowing line that balances between commercial success and philosophy. The next few years are certainly going to be interesting, particularly if ATI and/or Nvidia open source their drivers. Keep on the look-out.

Saturday, December 09, 2006

HOWTO: Banshee 0.11.3 on Ubuntu

Update: Banshee 0.13.1 can be installed in Ubuntu 7.10 (Gutsy Gibbon) by running "sudo apt-get install banshee".



Banshee 0.11.3 was released today and features a bunch small new features and bug fixes, but also includes some pretty big performance enhancements. If you're a Banshee user, it's definitely worth upgrading to this new release for the speed improvements alone (switching to your library doesn't take a ridiculously long time anymore.) Since I've already written a HOWTO for Banshee 0.11, I decided to updated it for Banshee 0.11.3. This guide was written for Ubuntu 6.10/Edgy Eft, but there's only one little change necessary for it to work on Ubuntu 6.06/Dapper Drake (which is explained inline below.) On with the installation instructions:

:)

IMPORTANT NOTE:
If you have the QuinnStorm repositories enabled (for Compiz/XGL stuff), you might encounter this compile error: "/bin/grep: can't read /usr/lib/libXrender.la: No such file or directory" or something along those lines. The necessary fix can be found here. (I just ended up removing the "/usr/lib/libXrender.la" part of that line and it fixed it, and I think that's probably a safer route.)

To follow this HOWTO, just punch (ie. copy and paste) the commands listed into a terminal. Good luck!

1. Install prerequisites

First, make sure you have the universe repository enabled. If you're unsure, here's instructions on how to check and enable it.
Next, install the software required to build Banshee:

sudo apt-get build-dep banshee
sudo apt-get install libavahi-cil mono libgconf2.0-cil
sudo apt-get build-dep libipoddevice0
sudo apt-get install libgtop2-7 libgtop2-common libgtop2-dev libsgutils1 libsgutils1-dev
wget \http://banshee-project.org/files/libipoddevice/libipoddevice-0.5.2.tar.gz
wget http://banshee-project.org/files/ipod-sharp/ipod-sharp-0.6.2.tar.gz
tar -xvzf libipoddevice-0.5.2.tar.gz
tar -xvzf ipod-sharp-0.6.2.tar.gz


Note: If you're an Ubuntu 6.06/Dapper Drake user, the above "sudo apt-get install..." line might fail. If it does, try running the following:
sudo apt-get install libsgutils libsgutils-dev
(Note: If this fails, just keep going to with the rest of the HOWTO...)

Now, in order to have iPod support, we're going to install libipoddevice and ipod-sharp:

cd libipoddevice-0.5.2
./configure --prefix=/usr
make
sudo make install
cd ..

cd ipod-sharp-0.6.2
./configure --prefix=/usr --disable-docs
make
sudo make install

(The above iPod steps can be safely left out if you don't need iPod support...)

2. Download Banshee 0.11.3

wget http://banshee-project.org/files/banshee/banshee-0.11.3.tar.gz
wget http://www.banshee-project.org/files/banshee-official\
-plugins/banshee-official-plugins-0.11.3.tar.gz

3. Extract and configure

tar -xvzf banshee-0.11.3.tar.gz
tar -xvzf banshee-official-plugins-0.11.3.tar.gz
cd banshee-0.11.3
./configure --prefix=/usr --enable-avahi --disable-docs

I suggest leaving Avahi enabled here as I did so that DAAP sharing works. (It lets you share your music library with iTunes, Limewire, etc. users, as well as listen to other peoples'.) iPod support should be automatically detected if you followed the iPod steps above.

4. Build and install Banshee

make
sudo make install


5. Configure, build, and install the plugins

cd banshee-official-plugins-0.11.3
./configure --prefix=/usr
make
sudo make install


6. Run Banshee!

Either from the console run "banshee" or launch it from the "Applications->Sound & Video" menu in GNOME.


That's it! I've tested this on Ubuntu 6.10/Edgy Eft machine, but if this doesn't work for you, leave a comment and I can try to help you figure it out. :)

Lastly:
Digg!

Thursday, November 30, 2006

Ecksdee 0.0.9 Release and Developer Interview

For those of you who remember my Next-Gen Linux Game Roundup, you might recall Ecksdee as one of the games that was highlighted. In the months that have passed, the developers of Ecksdee have been hard at work tweaking and adding new features to the game, which has started to evolve into a playable fast-paced racer. A few days ago, the team released Ecksdee 0.0.9, which features the slick new Ciy map (video) along with some new ships.

With this new release, I had the opportunity to ask two of the Ecksdee developers, Vincent Knecht (vknecht) and Amir Taaki (genjix), a few questions:

Q. What was your original motivation for creating Ecksdee?

VK: I had free time when Amir came up with his hovercraft prototype, and thought it deserved a game project, like XRacer. At that time I was making a visualization application with Crystal Space, and wanted to do something more
fun with CS...

AT: I found myself working with the Crystal Space community, and on a under development game called Crystal Core. Since it was set in the future I imagined some type of hovering vehicle would be useful and began work on a CEL property class for hovering (basically like a kernel module that can be loaded in your game to do stuff). To go with it I made a demo to demonstrate it.

Since Vincent is an active Crystal Space developer, he managed to catch wind of it and started asking questions about the status of it - "Is it a game?", for which I had no ideas about :D Needless to say a week later I got a tarball back with a build system and proper application architecture... This was a great blank canvas to start working from since now everything was properly organised as it should and from there that was real good kick starter. I doubt I ever would've gone at this on my own otherwise.

Nonetheless after some time, the game started to play but looked crap -there were no ships, a poorly designed main menu... Luckily Pascal (who is also a Crystal Core artist), made us all the ships (we've taken some out for this release), the Ciy level and other textures and special effects.

Q. How has your decision to use the Crystal Space engine impacted the development of Ecksdee?

VK: Well, I've be following Crystal Space development and learning it since a few years. When we started, Crystal Core (technical demo for CS) was one of the best source of inspiration to kickstart Ecksdee. So I think Ecksdee wouldn't exist without CS :-)

AT: Very much, all of us come from the Crystal Space community. Using CEL is the biggest help since it simplifies many worked concepts in game development.



Q. What about Python?

VK: Currently, we're using Crystal Entity Layer XML scripting, which is great for simple things. However, we will switch to CEL python scripting to get more control and possibilities. Hopefuly, it will be easier to read and modify too.

Q. You're one of the only open source games that uses Nvidia's Cg Toolkit. How has this enhanced Ecksdee's graphics?

VK: Cg support is actually a Crystal Space feature, so all projects using CS use Cg to some extent. So far, we don't have really specific shaders, and use the ones provided with CS. Afaik, Cg is about shader portability, and is supported by CS since a few years.



Q. Can you tell us more about the Blender integration you're working on? How will it make content development easier?

VK: Basically, it's about having a straightforward way to get Blender models and maps running in the game. Blender and blender2crystal export script are the recommended tools for Ecksdee content creation. There are a couple of HOWTOs in our wiki about that.

AT: Hopefully Ecksdee will become more and more easier to modify in the future. I am also a blender2crystal developer and want to make it easier for people to quickly build levels and ships to make a huge load of quality content rather than developing a game like a traditional closed team.

At the moment you can set a few properties in blender, and click "Run" in the b2cs overlay and just start playing your level. With ships you can make a ship, drag it to a specific directory and the game will automatically show it in the menu.

For those who are interested I encourage them to check out the Blender conference video about Crystal Space, the blender2crystal page and the artists documentation section of our site.

Q. Lastly, what's on the roadmap for Ecksdee in the future?

VK: First there will be some porting from XMLScript to Python, especially for menus and head-up-display handling. Sure, there will be new tracks and ships. We also will look at networking and multiplayer support, though we cannot say now when that will be added.

AT: The addition of python will allow some interesting things like little drones following your ship (as a weapon system) and easier extending of the game for new features and options to the main menu among other things.

~

To wrap up, I'd like to thank Vince and Amir for the time they've both graciously spent on Ecksdee and this interview. Ecksdee is in good hands, and I'm looking forward to the future of the project. Finally, if anyone would like to get involved with Ecksdee (be it artists or coders), the Ecksdee documentation is a good place to start.

Links:

Tuesday, November 21, 2006

Show Ballmer the Money



"Mr. Ballmer, Since you live in a fantasy world, thought we'd pay some fantasy money for your fantasy claim."


I think Tristan Sloughter might be on to something.

If you haven't been following the whole Novell-Microsoft deal, Novell's customers basically get protection from being sued by Microsoft. Microsoft believes that the Linux kernel infringes intellectual property it owns (heard this before?), and that Linux users are liable.

That's right, Microsoft wants you to think it's going to sue you for using Linux. (It's yet to be shown if they actually have a case or not. Many Linux advocates believe they don't.)

In either case, I find it ironic that Novell, who takes a strong stance against proprietary drivers in their kernels, admits that it thinks there's "proprietary" intellectual property in heart of it's Linux distribution, SUSE. That doesn't make very much sense, does it?



Little associated with Microsoft seems to make sense these days...

Monday, October 16, 2006

NVIDIA Root Explot

The following says it all:

   The NVIDIA Binary Graphics Driver for Linux is vulnerable to a
buffer overflow that allows an attacker to run arbitrary code as
root. This bug can be exploited both locally or remotely (via
a remote X client or an X client which visits a malicious web page).
A working proof-of-concept root exploit is included with this
advisory.

Yeah, so apparently we don't need Internet Explorer and Windows anymore to have malicious software silently installed on our computers - we just need NVIDIA's closed-source graphics driver. Update: Fortunately, the bug has been fixed in NVIDIA's 1.0-9625 beta driver. The thing is, you need Xorg 7.1 to run that, so everyone running Ubuntu 6.06/Dapper Drake is still vulnerable.

On that note - are there any analogous driver exploits in Windows like this? I didn't even think something like this was possible in Linux...

(Thanks Hubert...)

Sunday, October 15, 2006

Portland, TC:E, GWoot, Automatix 2, Mute

First off, it's been quite a busy couple of weeks for me and I'd like to apologize for the lack of news. Luckily, the world doesn't revolve around me and so some interesting stuff happened in the last few weeks:

  • The Portland project made their first release. The Portland project is a kind of vague teaming up of various desktop environment developers with the aim of making it easier for software vendors to create Linux software that worked consistently across the various desktop environments (KDE, GNOME, etc.) out there. The first release consists of a daemon that applications can interface with through DBUS and some command line tools to perform various tasks like installing an application's icon or disabling the screensaver. The way a programmer would normally go about doing stuff like this is specific to each desktop environment (in general), and so Portland's DAPI solves that problem by offering a single unified way of going about that. I don't think there's anything in Portland right now that would convince Adobe to release a supportable version of Photoshop for Linux, but making companies like Adobe's lives easier is what Portland aims to do. I think it's a small step in the right direction, but once it reaches critical mass, it'll become a crucial part of the Linux desktop.
  • True Combat: Elite 0.49 was finally released after a long period of waiting. TC:E is a realistic combat mod for Enemy Territory that's similar to Counter-Strike. However, TC:E has plenty of unique features like the iron-sights system that make it a fun, memorable play. Several of the maps have been updated in this version, as well as new ones being added. Additionally, several of the weapons were tweaked and there are some new snazzy graphics effects as well.
True Combat: Elite 0.49

  • For any Woot.com fans, someone created GWoot, which might be handy.
  • Automatix 2 for Ubuntu 6.10/Edgy Eft has been released. This thread has some extra screenshots of it, and it seems like it's come quite a ways from the cheap bash script it once was. Good job Automatix team!

    Automatix 2 for Ubuntu 6.10 looks much better than the original


  • The under-appreciated Linux Rock Star blog uncovered Mute, which is a new rewrite of the incredibly powerful Jeskola Buzz. Buzz is a Windows-only modular synth "tracker-on-steroids" whose source code was lost in 2000, but continued to be developed through clever add-on hacks. The Buzz community has been waiting for something to replace it for a while, and it looks like Mute is a good contender. (Buzztard is another one to get excited about too.) While you're at it, check out the Mute screenshots - it's a pretty impressive clone of Buzz. (I currently use Buzz under WINE for music production as a hobby, but unfortunately it has some issues.)

    Mute's user interface is almost identical to Buzz

Also, I upgraded to Edgy last week. If I told you it was easy to do, I'd be lying. Long story short: Wait until it's officially released unless you're prepared to file bug reports. It's working great now though and I've been able to play with some brand new software that wouldn't run in Dapper. I'm enjoying the built-in AIGLX now too - No more hacks to make OpenGL games run with Compiz/Beryl. :)

Thursday, October 05, 2006

Freespire's sketchiness and a word on DistroWatch

Linspire's sister distribution Freespire is reportedly using sketchy tactics to inflate their rank at DistroWatch... again.
I have to admit that I've seen the advertisement in question on Linux Revolution, but the URL pointed to the Freespire wiki.



DistroWatch's ranking index provides a rough sketch of the relative popularity of almost all of the various Linux distributions out there. Why would you want to be near the top? DistroWatch's 50,000 hits/day seems like a decent reason (it makes my blog look like, well, a blog). After keeping an eye on it for many years, it seems like at least the top three distributions are probably correct in their popularity with desktop users. The index is also a good way to find out what the next big Linux distribution is going to be (openSUSE has jumped quite a ways recently).

Firefox Copyright Dilemma

"I used to be cool"

There's been quite a bit of noise in the Linux community lately over this 'bug' in Debian. That's right, the Mozilla Firefox name goes under the same crappy copyright license as the artwork, so Debian isn't "allowed" to use the name. (This is why Ubuntu and Debian ship Firefox with that uninspiring blue globe icon instead of the Firefox icon.)

So what's Ubuntu going to do about it?
Well, the users clearly want the official logo in addition to keeping the name, and I don't blame them. Firefox made the transition from Windows to Linux quite a bit easier for myself, and I'm sure others have found the same thing. The matter is still up in the air, as the only official word on this has been been from Canonical's Matt Zimmerman saying he's "discussing the relevant issues with representatives from Mozilla."
In the meantime, I was shocked to discover that those crazy GNU people are now maintaining "Gnuzilla" and "IceWeasel", the latter of which I originally thought was a joke.

I think I can honestly say that I wish IceWeasel was joke, because this whole Mozilla trademark thing is ridiculous. Aren't we all playing on the same team?