Tuesday, December 28, 2004

S.u.S.E. 9.2 Professional

One of the things on my wishlist was S.u.S.E. 9.2 Professional. It was, of course, in the very last box I opened.

My initial impression was that it was very impressive. The installation looks much more attractive than previous versions. The Professional edition comes with 2 DVD's (1 is source), and 5 CD's.

I installed from DVD. The only problem I've ran into is that my Lucent Winmodem doesn't seem to work. I had a few problems installing it in version 9.1, but the initial, 1st version of 9.1 detected the modem with no problems, so it's been a bit distressing that the driver seems to be getting worse, rather than better.

One pleasent surprise was that 9.2 was able to tell what "centimeters" setting I needed after I set my notebook to 1400x1050, something 9.1 didn't do. What this meant was that every time I booted 9.1 I got a message on the screen telling me the screen settings were not set completely. In 9.1 I had to guess the size, but 9.2 filled out the centimeters size for me after I selected the 1400x1050 resolution.

The user interface (UI) for the installer is much improved. KDE 3.3 and Gnome 2.6 are new, as is extra Bluetooth and WLAN support, but I haven't had the chance to test the WLAN support yet. I was having "throttling" problems under 9.1 when on an 802.11b network, I haven't had the chance to see if it's fixed yet because I'm on dialup at home.

The box includes the 64-bit version, so when I finally move to the AMD64 for my desktop machine it will be supported.

Inside are 2 thick manuals. The User Guide surprised me by including a very informative chapter on ergonomics. My sweetheart bought me a computer chair for Christmas, a nice leather, air powered chair, which puts me at a nice height for working. I'll be working on the lighting and temperature conditions. I haven't had a chance to get to the Administration Guide which is more than double the size of the User guide, but it looks well written.

It could just be me but the desktop seems to look more crisp. (screen shots forthcoming) The fonts seem to be rendered better than old versions of S.u.S.E. Linux.

Despite the winmodem problem I'd still suggest that S.u.S.E. 9.2-Professional is a very worthwhile buy. It works well, has more software than I remember on mirror sites, and simply looks better.


Thursday, December 23, 2004

Documentation and getting help

One of the biggest challenges for new Linux users is finding information and getting help with programs. If you have some Linux experience and just want to know what options a program has you can often type something like:

heroes3 -h

Heroes 3 happens to be the Linux version of Heroes of Might and Magic III. The -h switch prints out other switches heroes3 can take on the command line. This comes in handy if you're looking for an option like running heroes3 in fullscreen or windowed mode.

The standard way of learning more about a package is to look at its manual page. To look at the manual page for a program type:

man heroes3

Not every program will have a manual page. In our case heroes3 does not, but most tools and command line programs will. A related, but longer information document, can sometimes be found by typing:

info heroes3

Because there is no information page for heroes3, info loads the standard info file which displays in the information files for standard utilities like the bash shell.
There are a few places on a Linux system that might prove helpful because they often hold a number of different documentation sources.

/usr/share/doc

On my S.u.S.E. system this directory contains HOWTO help files, books, packages, some tour files, and administrative documentation. If you browse through all the sub-directories in /usr/share/doc you'll notice that there is nothing for heroes3. Because heroes3 is not a part of a standard Linux distribution it smartly puts itself in a separate directory:

/usr/local/games/Heroes3

Look to /usr/local for programs and information that is not a part of the typical distribution. Lastly, don't forget that if you install a package from a rpm package you can always do a:

rpm -ql packagename | more

This will list where all the files from the package are stored. If there are help files you'll be able to see where they're stored.

Over the past decade there has been a trend towards downsizing documentation in the software industry. When I first started selling software for a small computer shop back in 1987 many programs came bound in a small binder that had movable documentation pages – this was truly a great way of providing documentation because you could put pages you used most at the first. After that documentation seemed get thinner and thinner, witness the documentation included with Windows 95, a book that wasn't even a quarter inch thick. Many people feel this is a good thing, you should be able to just use an operating system without reading a big book, but I don't. Because of this mentality we've become less educated about what's going on behind the scenes. Many Microsoft Windows users don't realized that MS Windows comes with a lot of software that is not a part of the start menu. I've been reading Adler's How to Read a Book again, and as I was also reading through Linux Programming much of what Adler says about reading for information and understanding became more apparent. Knowing a bit about source code files, library files, etc., gave me a bit more understanding about what's on my system. I would encourage you to read as widely as possible about your system – you'll find that the more you know, the more enjoyable Linux will be to use.

Wednesday, December 22, 2004

Playing Games in Linux

It's the Christmas season, and it's time to look at playing around, games in particular. I've already mentioned Transgaming in a previous rant. I mentioned that I wasn't completely happy with the direction Transgaming is headed, but they have continued to make Windows-based games work in Linux. As a bit of a holiday treat I thought I would show a few screen shots from one of my favourite games of all time, Diablo II.

Diablo 2 running under Linux
Diablo II can be run in full screen mode, but for the purposes of this article I set the game to run in an 800x600 window. Note the black borders surrounding the game. And though I was able to get Diablo II Lord of Destruction working once before with Cedega, only the original Diablo II seems to work for me in the latest Cedega 4.2. I find Diablo II doesn't work as well as I'd like it to. Certain things, the ESC key for example, do not work as they do under Microsoft Windows. But all things considered the game runs pretty smoothly under Linux.

I should qualify my rant a little. My computer does not meet the specifications Transgaming software needs. The video chipset on my notebook is 8MB, but not a supported 3D chipset. I'm sure that an Athlon 64 armed with the hottest NVIDIA card would run Diablo II beautifully, perhaps even better so than Microsoft Windows, but not on my notebook.

Another game which doesn't require a 3D chipset, and second on my list of all time favourite games, is a game that I discovered first on the Linux platform, Heroes of Might and Magic III. Heroes III is more of a strategy game than Diablo II. Though both games can be played for hours, weeks, and months, I love the fact that Heroes III has a native version, thanks to the now defunct Linux game company Loki.

If you're new to Linux you probably don't remember the first big push towards Linux. There was a time a few years back, when Linux exploded on to the market place. Almost every computer retailer stocked at least one Linux distribution on their shelves. About this time a small company called Loki started porting Windows games to Linux. Unfortunately the Linux game market simply wasn't hot, and Loki was way ahead of their time. But good things did come out of Loki's demise, more and more people started writing games that looked similar to games on Windows. There are in fact a number of the latest Windows games which companies are also releasing in a Linux version, and why not since Sony's Playstation 2 is Linux-based.


Heroes III for Linux

Heroes III for Linux is not as feature rich as Heroes Complete for Windows, but one has to realize that they are different products released at different times. Heroes III for Linux was released much earlier than Complete, which was released with a couple of expansion packs. Heroes Complete also comes with a map maker. Near the end of their existence Loki did start working on a map maker for the Linux version of Heroes III, but it doesn't include a number of the features the Windows version does and some of the functions are not implemented. So what's a gamer to do? Install the map maker using Transgaming's Cedega, or the straight version of WINE. Heroes Complete doesn't work under Cedega, but the map maker works enough that you can edit maps you've created in the Linux map maker and add details where necessary.

The Linux version of Heroes III runs very smoothly, there is no slow down of video. It can be run in full screen or windowed mode, and it can be played for hours. Extra maps from the Internet can be downloaded and placed in: ~/.loki/heroes3/maps. There are 3 modes,Single, Multi-player, and Campaign mode. In single mode you play one map and at the end your hero is rated for his ability to complete the map. In campaign mode your hero(es) can continue on to other maps which make up part of a larger campaign. Heroes don't necessarily continue, it depends on what the map maker specifies. Sometimes you'll finish one quest, start with new heroes on another map, and then have the option of either set of previous heroes for a third map. Campaign mode is by far the most fun because at higher levels some of the heroes can do some amazing things, converting hundreds of dead enemies into Skeletal Warriors for example. Multiplayer mode over TCP/IP crashes on my system, but Hot seat mode does not. Heroes III for Linux is agreat game. The best place to look for the Linux version is on sites like Ebay, or Amazon. Happy gaming and Merry Christmas.

Tuesday, December 21, 2004

Intermediate rpm

A few articles back I talked a bit about the basics of installing and upgrading a package using rpm, the Red Hat Package Manager. This article covers some rpm tips and tricks that might come in handy when you're trying to find out more information about software installed on your system.
To begin with, open a x-terminal and type:

rpm -qa

A long list of software will scroll by quickly, don't worry at this point. The -q stands for query, the -a for all. We can add commands to this one by using the pipe symbol |, followed by the command. So, if we wanted to pause the listing we would type:

rpm -qa | more

After you execute this command, at the bottom of your screen you'll see a highlighted more text. If you press the enter key you can scroll to the next screen. If you want to quit the listing at this point press :q. It might seem like a strange way of exiting, but if you ever use the vi text editor you'll use the same command to exit the editor.

We can expand this command even more by adding a sort to it. Sort is a Linux command, not an option of a command, so it's possible to get more information about sorting by typing:

man sort

If you look at the man(ual) page for sort you'll see that the -r switch will sort in reverse. Let's combine a reverse sort with our previous command:

rpm -qa | sort -r | more

Now we get a list of managed packages that begin with the letter z. Pretty neat stuff, eh? Let's say you're like me and you like to install a lot of software and remove packages later. One of the things you might want to do is generate a list of software packages and redirect that list to an actual file. While you could simply open a second x-terminal and use the rpm and more commands to pause through the package listing there is a redirection symbol, >, that makes it possible to redirect output to a file.

rpm -qa > packages.installed | sort

The main caveat to this command is that you need to be sure you're in a directory you can write to. If, for example, you're logged in as a regular user, but in the /usr/bin directory you won't be able to run this command because you won't have permission to store the file packages.installed in /usr/bin.

Now let's say we want to look for a specific package and we know a little about that package, but not everything. Let's say I wanted to know if the game frozen-bubble was installed. I could run a sorted listing of all the rpms and space down until I got to the f's. But it's easier to use a handy command called grep:

rpm -qa | grep frozen

Grep will search the package listing and display only the packages that contain the word frozen in it. If there is no package with the word frozen in it you will not see anything. For the sake of this article I'm going to say it is installed, it is on my system. Now I want to get a bit more information about what the package is and what it does. To get information about frozen-bubble we would type:

rpm -qi frozen-bubble

Notice I did not type all the version numbers after the filename, in almost all cases you don't have to type a version number after the package name. Expanding our repertoire even further we can list what files the frozen-bubble package actually puts on our system and where those files are located. This might not seem useful at first, but it comes in really handy when you're looking for something like documentation. The command to see the installed files is:

rpm -ql frozen-bubble | more

Note that the switch beside the q is a small L, not a number one. Using this command I can see that there is a README file located at /usr/share/doc/packages/frozen-bubble/, truly handy. I can also see the location of some of the graphics and music files. If I was truly adventurous I might replace some of these files with graphics of my own.

If you have frozen-bubble installed and have been following along you'll notice that there are quite a few files installed by the frozen bubble package. We can get a count of how many by using the word count program along with the switch to count the number of lines:

rpm -ql frozen-bubble | wc -l

On my computer this command spits out 298. So frozen-bubble consists of 298 files. If you're planning on trimming software from your system word count can come in handy.

In this article you've digested a lot about rpm. Amazingly, rpm can do a whole lot more when combined with other commands. One of the great things about Linux is how flexible and expandable it is. This is just a small example of Linux's flexibility. Until next time, happy rpmming.

Transgaming, definately not my thing.

A few months back I decided to shell out the cash for a Transgaming membership. For those not aware, Transgaming makes a specialized version of WINE, the Windows Emulator for Linux, which is designed around running games -- just not the kind of games I like to play.

Of the 45 or so Windows games in my collection, only a couple work flawlessly under Cedega, a.k.a. WineX. The best of the crop is the ever-popular Diablo II LOD, and it worked better under VMWare with Windows beneath.

I like older strategy games, but the direction of Transgaming seems to be headed more towards the 3D shoot'em up games. RPG's are my favourite, but not the 3D ones. Though I must say my favourite game is probably Heroes of Might and Magic III, which I bought in a Linux version before ever buying the Windows version. Unfortunately the Linux port doesn't have all the extra goodies the Heroes III Complete package for Windows does: a fully-functional map editor and the Shadows package.

I can't say I'm completely unhappy having bought a sub to Transgaming, I do get to vote, but my vote is usually lost in the sea of 3D gamer votes. I am somewhat happy knowing that my money is going to a company associated with Linux, it's just a shame it's not a company porting software to Linux like Loki.

I miss Loki Software. Transgaming just doesn't seem to be what I thought it would be. The software certainly isn't worth the money I spent for it because almost none of my applications work with it. C'est la vie.

Saturday, December 18, 2004

Customizing KDE/SuSE

Whenever I install a new linux box I inevitably end up customizing my desktop. Though the stock Gnome and KDE desktops are pretty cool, I always have an itch to change it to something that is more functional and looks better.

The first convenience I do is dragging and dropping icons from the KDE/Gnome menu to the taskbar - this provides one click access to software I commonly use.

The next thing I do is change the KDM background. Click the Chameleon kicker (start button) and then Control Centre. Once the Control Centre has loaded click System Administration. Click Login Manager to load the KDM settings. In order for the settings to take you have to save them as Administrator. Now click the Administrator Mode button at the bottom of the KDE settings window. You will be prompted for the root password, enter it. Choose the Background tab and select a different background. Now choose the Users tab and click on the icon below the user name in order to change the icon which appears at the KDM login.

There seems to be a bit of a bug with the Control Centre. If you change your settings the Control Centre seems to want to auto-login your main user. To prevent this from happening click the Convenience tab and uncheck the Enable auto-login option.

Now click Apply and close the Login Manager control centre.

Changing the background is as simple as it is in Microsoft Windows. Simply right-click on any empty space on the desktop. Choose Configure Desktop from the list that appears. Select Background, then browse to the file you want in the background.

A few simple customizations can make the Linux desktop more personal.

Friday, December 17, 2004

Editorial rant: USAF to standardize on Microsoft software

With all the crusading about homeland and national security you would think that executive decision makers would start to get a clue about security. Unfortunately it seems that some decision makers still don't understand security. Take the 'brass' at the USAF, United States Air Force, for example. SC Magazine reported in December that the USAF plans on consolidating 38 contracts by standardizing on Microsoft software. Air Force CIO John Gilligan explained to SC Magazine that the problem has to do with patching all the different kinds of computers the air for maintains. Someone should have mentioned SC Magazine's retrospective in the same issue which states “just as in 2003, Microsoft seemed to miss the mark with its latest attempt to address the inherent security problems of rising IT complexity.”

Gilligan only needed to take notice of all the organizations switching from Internet Explorer to Mozilla because of the rash of security exploits in IE.
The SC Magazine article further goes on to state that the USAF expects to save over $100 million dollars in the next six years, but it fails to mention the $200 million the USAF will probably have to spend when Microsoft decides it's time for them to upgrade.

Does anyone remember the Navy ship that sat dead in the water – a glitch attributed to Microsoft software? It boggles my mind how the USAF expects to save money and be secure with Microsoft software when everyone who has ANY clue knows that Microsoft has a habit of doing what it wants, regardless if that means leaving security wide open, leaving off promised features, or releasing broken software – in the process trampling all competitors.

If the USAF standardized on Linux patching would be much simpler and less expensive than the Microsoft option. Microsoft's “Windows is cheaper than Linux” is a crock, everyone knows the studies are funded by Microsoft and skewed in Microsoft's favour. For example, the study mentions less patching required than Linux, but fails to note that Microsoft software suffers from more critical flaws, and there are a lot fewer software packages in a Windows install than on your typical Linux box.

I can just see the new year headline, “Cannot drop cruise missile, please upgrade to version 5.0.”

Thursday, December 16, 2004

Getting help!

With the rapidly changing pace of technology it's difficult to make a go of anything these days without some kind of help. Whether it's help from a local LUG, Linux User Group, from a close friend running Linux, or from a non-linux source such as a cafe with wireless access, help is everywhere if you look hard enough.

I'd like to take the time to acknowledge some people and organizations that have helped me over the years. First and formost my parents Bill & Gloria and Paul and Judy. My brother Michael was first to introduce me to Linux back in 1996. My other brother David helped by giving me hardware over the years. Back in 1983 I joined my first computer group, The Barrie User's Group (BUG). The group put up with my teenage antics for many years. Thanks to Chris C. who helped me run Passion Station, a romance-oriented bulletin board I ran out of Toronto back in 1992-3. Special thanks to Paul N. for starting The Working Centre Linux Project and Bill R. for providing the facilities and MCing many of the KWLUG meetings. A pat on the back to Richard for taking up the challenge of MCing the LUG, Bill can certainly use the break.

A big thanks to the good folks at Slashdot and Freshmeat for publishing some of my Linux-related book reviews. O'Reilly provided our LUG with the books I reviewed.

Marcel Gagne, the "Linux Chef," columnist for Linux Journal and now Editor-in-Chief of Tux, http://www.tuxmagazine.com/, has graciously donated his time to speak at our LUG a number of years and has been both an inspiration and vault of information.

And a big final thanks to all the Linux community who have all donated their time writing documentation, answering questions, and making Linux the usable operating system it is today!

Installing software on Linux

This article is the first in a series of articles about the many different ways to install software on a linux system. Installing software can be a simple task, or it can be a difficult task depending on a number of factors. New linux users have a bit more difficult time because many come from the end-user side of the Windows world. Single-user operating systems like Windows 95/98/ME gave users free unrestricted access to the entire system, the freedom to install any software, anywhere, and mess up the system completely. Linux is a bit more fussy. In order to install packaged software you need to become the "root" user.

If that isn't enough to confuse new linux users there are also a couple of package management formats, rpm, Redhat Package Management, and deb, Debian GNU/Linux package format. And then there are programs which are simply compressed source code, which further confuses new linux users. Well, the time for confusion is gone. This article will hopefully clear up some of the linux software installation mysticism.

To make things easier on new linux users many linux distributions include graphical software management tools. SuSE has yast2 yet another setup tool, and Fedora Core (and Red Hat) has up2date. The problem with these package managers is that they are limited to the software that is contained on the software source, usually a mirror of the distribution. This means new linux users miss out on a lot of great, cool software.

Learning the basics of installing software from the command line will open up a huge world of software to new users. To simplify things we'll leave compiling source code for another article.

As I mentioned earlier, there are basically two different formats linux software comes in: 1) .rpm, Redhat Package Management; and 2) .deb, Debian format. Some linux distributions use one format, some use another, and a few are capable of doing both.

Red Hat/Fedora Core, SuSE, and Mandrake linux all natively use software in .rpm format. All can be made to accept .deb, Debian files, but doing so requires installing more software.

Installing .rpm software can be as simple as opening up a terminal, changing to the directory where you downloaded the .rpm and typing:

rpm -iVh packagename.rpm

This assumes packagename.rpm is the name of the .rpm package you want to install. If the package is already installed rpm will notify you. Where people run into problems is when a program depends on another program. If you come from the Windows world and have been a Microsoft Windows users for some time you might have downloaded a program only to find that the program you downloaded requires a file called VBRUN300.DLL. Some linux software packages similarly require other files to run, these files are called dependencies. For example, before the multimedia package xine can be installed a package named xine-lib must first be installed. xine-lib actually depends on a number of other packages before it can be installed. Luckily, if the package you're installing depends on other packages, rpm will let you know which packages your program depends on.

If you're upgrading to a new version of a program the syntax for rpm is slightly different:

rpm -Uvh programname.rpm

That's the very basics of using the Redhat Package Manager. Let's move on to Debian packages.

If you have high speed Internet access Debian has a nice program called apt-get which takes care of downloading dependencies for you. If you know the name of the program you want to download simply type:

apt-get programname

If the program is in the Debian GNU/Linux archive apt will go out and fetch it plus all its dependencies and install them all in the correct order.

If you've downloaded a .deb package you use a different program, dpkg, to install the package. The format for this command is:

dpkg -i programname.deb

Not so difficult. Again, Debian packages might require dependencies. Unlike apt-get, the dpkg tool does not automatically fetch all a program's dependencies, so if you need to install a program that depends on other software you will have to install the other Debian packages first.

That's it for this introduction to software installation on a linux system. There are many tricks and shortcuts. It's important to remember that none of rpm, apt-get, nor dpkg will work correctly if you don't "su" to root first.

Gaining acceptance in the desktop market

Now more than ever Linux seems to be gaining more acceptance in the desktop market - despite the fact that it is much more difficult to get a "boxed" edition of any Linux distribution than it use to be - at least here in southern Ontario, Canada.

The increase in desktop usage is probably a combination of the fantastic work of developers who have put a lot into making Linux very robust as a desktop Operating System (OS) and the fact that people are tiring of not being able to control more of their operating system.

Last night I was explaining to my house mate, who runs Linux at his other home, the Red Hat Package Manager (rpm). I was relating how when you install boxed Microsoft Windows-based software, you generally don't know where all the files are being stored, and finding out this fact can be difficult even for experienced Windows users because of how much the OS hides. By contrast the command rpm -ql packagename.rpm lists not only all the files in packagename.rpm but their location on installation. It was nice to see his face light up over this little tidbit of information.

He's not alone in the new Linux user segment. When I attended the December meeting of my local Linux User Group (LUG), KWLUG, I met a new Linux user who was simply tired of how basic Microsoft Windows was - this from someone who had not even touched a computer before 6 months ago.

I want to go off on a tangent for a moment. As a Linux user among a lot of Microsoft Windows users I've heard many of the problems Windows users have with Linux. What seems common to a lot of the problems is that the Windows user gives up too easily and relies on old habits. My philosophy has always been use what works best for you, so I don't fault Windows users for returning to Windows. But sometimes I think they give up far too quickly. I am reminded of Mortimer J. Adler's 1939 book How to Read a Book in which he explains that there are three types of reading: reading for information, reading for entertainment, and reading for understanding. Adler explains that you can read a book and get information from it. Perhaps you understand a little about what the information means, but you don't have real understanding, the third type of reading he suggests, until you put enough active effort into trying to understand. Adler further goes on to suggest that the real value and entertainment from a book comes from shifting from simply gleaning information to true understanding. This is one of the joys of Linux. When you understand something you previously were challenged by it's an exciting feeling.

Using Linux reminds me of the early days I attended BUG, the Barrie User's Group. Back in 1984, 1985, our Commodore computer group had some really interesting presentations that included things like how to make a light pen out of a magic marker and other parts. Cool demonstrations like the lightpen demo fell by the wayside as the group expanded into the Windows market. Linux brings much of that unexplorer-territory excitement back.

I love Linux because it is infinitely customizable and it works incredible with my hardware. In fact, my notebook sports a Designed for Microsoft Windows XP sticker, but the standard Professional edition of Windows XP fails to even get past the initial installation screen. I've run SuSE, Red Hat, and Knoppix on the same notebook without any problem. SuSE is my distribution of choice for my notebook, despite being a Red Hat and Debian GNU/Linux user for many years. I like SuSE because the updates work extremely smoothly, but that's a whole other matter.

My switch to SuSE, however, seems to be a trend. Tuxmagazine, a new Linux magazine aimed at the growing Linux desktop market, recently took a survey of what desktop Linux users were running, and the distribution of choice was SuSE! It seems to me that Novell has a golden opportunity to make inroads in the desktop market. They don't necessarily need to spend billions on marketing to push Linux on the desktop market, it's been tried before. But if Novell can get their boxed editions widely distributed enough so that anyone can order SuSE from a metropolitan city near them, then they might be able to make a go of the desktop market again.

I love the fact that there are a lot of Linux-related books available in book stores, but I miss being able to walk to a computer store and pick my favourite Linux distribution off the shelves.