Tag Archives: Linux

BlackBox 0.35.0

Introduction

The choice of window manager is often a very emotive subject for a Linux user. Some swear by the simplicity of Fvwm2 — often a standard install for a Linux distribution. Others prefer something that looks like Windows 95 (there are a number that do this). Yet another group prefer a more all-embracing ‘environment’ such as KDE or GNOME.

Now I’m not advocating any particular manager here (for the record, I normally use AfterStep), I just want to get my work done.

So, we come to one of the newer, lesser know alternatives called BlackBox.

What is a Window Manager?

I suspect that most people here know what a window manager is, but for people that are more familiar with the way Microsoft Windows does things I’ll give a quick overview.

With all versions of Windows, the look and feel — the way that every window has a minimise button and that the desktop has a taskbar and a ‘My Computer’ icon — is tied directly to the underlying GUI framework (without getting into some programming jargon it’s difficult to be much more precise).

With Unix and X things are different. X is the underlying GUI framework. Using it you can paint things on a ‘generic’ screen rather than worrying about what graphics card you have, you can find the location of the mouse and what the keyboard is doing. But X doesn’t say what the windows look like (in fact, it doesn’t even insist that you have them), which buttons go where or what they look like. Window Managers (and widget libraries such as Qt or GTK) add this on top of X.

Like most other things, the Unix approach is far more complex but more powerful.

Look and feel

First impressions are good. When BlackBox starts, an almost CDE-like tool bar sits at the bottom of the screen, resplendent in its 3D-effect, gradated-filled boxes. On the right is the time; on the left is a box showing the current work-space (virtual desktop) and the number of windows open (why?); to the right of this are buttons to move around the various workspaces and to switch to minimise windows; in the middle is a huge gap that, as far as I can tell, serves no useful purpose. Perhaps the authors have plans?

The default application menu, available by right-clicking on the desktop, has a number of useful programs immediately available. Again, it looks good but is not entirely intuitive. For example, menu items with a circle to the left open out sub-menus. Would it not make more sense to have an arrow on the right?

Small programs such as xterm appear immediately, showing that BlackBox is relatively efficient.

Window furniture is fairly standard. The ‘minimise’ button is in the top left, and makes the window vanish. It can be restored by clicking the ‘Icons’ button on the tool bar and then the window name. I generally prefer a more visual approach such as the way Window 95 does it, but this is a perfectly valid and popular approach. On the far right is the close widget and to its left is a ‘fill the whole screen’ button.

Window sizing and moving is implemented in a Mac-like way: drag and drop the title to move the window; drag and drop the bottom right of the window to resize. It might be considered heretical to say so, but I think I prefer the Microsoft drag-and-drop-any-corner approach.

Configuration

Black box is easy to install. Type “xmkmf -a ; make ; make install” and you’re well away. There are a few options that you can change before you start the build, but nothing much worth changing. No option for the installation directory is given which is a shame as I prefer to put non-RPM software in /usr/local rather than any of the ‘normal’ locations.

Like almost everything UNIX, to alter any configuration options on a day-to-day basis requires the editing of a text file (the short-cut menu has a promising sounding ‘Reconfigure’ option, but this just re-reads the file). While the format of the file isn’t too daunting, I’d have preferred a dialog based interface. This is a very common problem with window managers.

All the standard things can be changed, the font, the colours, etc. The configuration file looks similar to the Xdefaults file rather than the more usual Windows ini file — it’s good that BlackBox has some consistency with the rest of X.

Conclusion

BlackBox is a neat piece of software. The look and feel are impressive, the performance is good, installation is simple, stability for beta software is excellent (one crash during testing), but there is something missing.

I think that something must be individuality. I don’t see much here that can’t be achieved by configuring many other window managers.

AfterStep 1.4

Introduction

Many people believe that wine gets better as it gets older. This, however, is only partly true. Some wines taste much better young and all go bad eventually.

What does this have to do with Linux software?

Well, AfterStep is my window manager of choice (see my review of BlackBox for a discussion on what a window manager is) but, more because of laziness than anything else, I’ve been using version 1.0. I never got around to upgrading, but since I was going to do a review I figured that I’d better move to release 1.4 — the latest stable version.

Perhaps I’m getting old; perhaps it’s inertia of some kind; perhaps I just haven’t given 1.4 a chance to prove itself; but I prefer good old 1.0.

What is AfterStep?

I’m getting ahead of myself here. What is AfterStep?

Fairly apparent from the title, it’s a window manager that tries to look and feel like NeXTstep, Steve Jobs rather fabulous follow-up to the Macintosh.

Version 1 took that quite literally. It had a dock (“wharf” in AfterStep-speak) to the right of the screen, pop-up menu’s and gradiated title bars just like the NeXT machine. The dock is a column of large coloured icons that can either launch applications, shrink an application such as xload to display useful information, or both. It’s now in a number of other window managers, notably WindowMaker, but AfterStep was there first. 1 had little else — simple but effective.

For later versions, the authors obviously thought they needed to add stuff. (They seem not to subscribe to the ‘perfection is not when you can add nothing, but when you can take nothing away’ school of thought.) 1.4 takes the basics and adds more docks, more furniture on the windows, themes and support applications.

Installation

You know me by now — basically capable, but lazy. Rather than grab the source, I downloaded an RPM file and upgraded from 1. I expected 1.4 to take all my current settings, but it didn’t quite work like that.

In fact, the first time I tried it didn’t work. XDM simply flashed out of existence for a second and then reappeared.

Okay, dive back in as root and read the documentation. What’s needed is a GNUstep directory that can be copied from a shared directory. It’s not difficult and it is documented, but why can’t AfterStep do it for you? And how much do I have to copy? My home directory now have loads of icons in it — don’t think /home can put up with so much detritus for long.

And copying lots of configuration data from a central location meant that all my setting from 1 were lost. I’d quite like my old settings back, please.

In Use

It took me a while to get AfterStep to how I like it. I wanted a single dock filled with my favorite apps, a clock, resource monitor and something to track my PPP connection to the Internet. It’s all in a configuration file (much like AS1 but in a different place) the basics of which are relatively simple. I think I’ll use the separately available configuration program for anything more complex.

1.4 seems to have a much greater emphasis on multiple desktops, so much so that in the default configuration there are 16 of them! It’s quite neat that they can be split into categories rather (the defaults are Work, WWW, Mail and Games), but I suspect that most people would run out of memory before they run out of desktops. Personally I’ve never got used to multiple desktops and usually just have one very busy one.

Overall

Much in the same way that people use Windows because they don’t know anything better exists, I’ve used AfterStep for well over a year. I thought doing this review would kick start me into using something newer and better.

It didn’t. In many objective ways the newer version is an improvement. It looks better, it’s more configurable and more easily configured and it’s more standard. But something is missing. It doesn’t seem to be a huge improvement over 1, yet has a much larger memory foot-print and popular support is waning in favour of WindowMaker which seems to be advancing much more quickly.

So, sorry guys, but I’m sticking with version 1 and am very tempted to take a look at some alternatives.

About “The Penguin Says”

Why?

I’ve been using Linux since 1994, just after the first non-beta release version of the kernel came available (I think it was 1.0.9, but don’t quote me on it). In the early days I was a bit lost, I didn’t know much UNIX and I didn’t know much about the web, so I stuck to using the packages that came with the Slackware distribution. (At the time I didn’t need much more than the core development tools, anyway.)

Since then, I’ve got to know more about UNIX, Linux and the Internet and have started downloading and looking at a number of applications. Some of them are fabulous, others aren’t worth the time or bandwidth. But how should I know which is which?

As far as I can tell, there isn’t a way. Although there are loads of sites with links to programs and applications, there doesn’t seem to be anywhere that reviews and rates them. Until now.

The task ahead

There are thousands of programs out there, and all of them have a new version popping out once a month or even more frequently. How can I keep up?

I can’t. So, we need some ground rules:

  1. I’m not going to review everything. I want to promote Linux as a usable operating system, so, in the main, I’m going to look at ‘user’ programs — word-processors, web browsers — rather than the new version of GCC.
  2. I’m not going to review every release. I’m not even going to update old reviews. Each review will have a version number attached, leaving the user to decide whether it’s up to date enough to be relied upon.
  3. You’re going to help me! If you’re interested in helping, mail me.

Logo

‘The Penguin Says’ logo isn’t really mine. I took one of the logo’s found on Andreas Dilger‘s page and changed the wording (using Paint Shop Pro — I would have done this using the GIMP, but PSP is much better at resizing images). The Penguin was originally drawn by Larry Ewing, the logo ‘concept’ by Allen Petlock. I hope they don’t mind.

Me

I’m Stephen Darlington. I’ve been using Linux for a number of years now, and various forms of free software for much longer. This is my vague attempt to put something back — I spend all day writing computer programs so the last thing I want to do in the evening is more! I can, however, manage to bang a few words together.

Abacus 0.9.3

Introduction

Linux seems to have many word processors, text editors and email programs, but other office applications seem to be rather thin on the ground. I’ve been looking for a decent spreadsheet for sometime as I have to switch back to Windows to use Excel every time I want to use one!

For all it’s faults, Microsoft Excel is a superb application and any other spreadsheet is going to have to try and compete with it at some level. I hoped Abacus would be it…

Installation

I normally prefer my applications to be available in RPM format, but if I can’t a GNU autoconf script is a fine substitute. Abacus, it would seem, has neither. It took far too much work to get it to run.

The main problem is not with the code, but with the documentation — there isn’t any in the distribution! I typed make to see whether it would work. Surprisingly, most of it seemed to run okay. It couldn’t find ‘yacc’ on my PC, which is quite reasonable as I have Bison instead. I loaded a few of the makefiles until I found the reference to yacc and changed it to ‘bison -y’ to force Bison to emulate yacc. This didn’t work either — it complained about some problems with the grammar. (I thought that Bison was upwardly compatible with yacc?)

I’d had a long day, so I was getting ready to pack the whole thing in as a bad job. After a strong coffee I decided to continue. I dug around for my RedHat installation disc and installed byacc and changed all the references from Bison back to yacc. This time it worked.

This was not the end of the installation problems, though. Typing ‘abacus’ resulted in the following error:

.//abacus: /tcl_interf/nxlc: No such file or directory

Again, someone without any development experience wouldn’t have realized that this meant that an environment variable hadn’t been set (it was expecting a pointer to the Abacus home directory). A quick scour through the source revealed that I needed to set ABACUS_HOME.

But even this didn’t solve the build problems! To cut a long story short, it was looking for a file called ‘version’ so it could display its version number when it started. (The distribution does have a symbolic link called ‘version’ but it doesn’t point at anything.) Having created the file, Abacus starts. Finally.

In use

Abacus starts with a splash screen with a professional looking logo. When the main screen appears, disappointment sets in. The majority of the screen is filled with a grid — what did you expect, it is a spreadsheet — while the top has the menu bar and a random assortment of garishly coloured controls scattered around.

When I first test a spreadsheet program, I usually create a few random numbers, total them and create a graph of some of the numbers. This covers much of the functionality that I use on a day-to-day basis and gives me a good impression of how easy it is to use. For the sake of comparison, it took me about two minutes in Excel 95, most of which was me playing about with some of the many options.

It took more than two minutes with Abacus. As I’ve been brainwashed in the ways of Microsoft, I entered what I thought was an appropriate formula for a random number: =rnd. While I now accept that this wasn’t the right formula, I still fairly certain that it shouldn’t have core dumped claiming that there had been a segmentation fault.

I never did find how to create a random number. I looked in the ‘function’ dialog box. There was a RAND function which sounded right, but whenever I selected it, Abacus added a quote at the front making it text rather than a formula. I’m not sure what was going on there.

Having given up on the random numbers, I entered some numbers manually and summed then using the AutoSum button on the tool-bar. After my experience up to this point I was surprised when it worked as advertised. You have to use it in a call immediately below or next to the cells you want to sum, unlike Excel, but I think I can live with that.

Next test: graphs. Step one: select the numbers. (Fine.) Step two: select ‘New graph’ from the menu. (Fine.) Step three: select the type of graph from the resulting dialog. (Fine.) Step four: draw out the area you want the graph to be drawn in. (Not so good.)

For the last step, the computer changed the mouse pointer to half a set of cross-hairs and seemed to forget about the graph. Left clicking the matrix didn’t do anything. Right clicking produced a run-time error from TCL.

Conclusion

I have to say at this point that I suspect that I hardly touched the surface of Abacus’ functionality. It may not seem reasonable to criticize a program having just a cursory look, but if the program is not easily capable of doing the very basic functions that I need I see no point in looking further. Numbers, formulae and graphs are the staple diet of any spreadsheet user and Abacus seemed to hinder any progress on this front.

Unfortunately, it looks as though I’m going to have to continue returning to Windows and Excel when I want to use a spreadsheet. Although Abacus is fully featured, it has more than enough annoying quirks to send me running away even if I discount the stability problems that I encountered.

However, it does show promise. Recode the user interface in C instead of TCL and write some documentation and it may be a winner.

Installing Oracle 8i R2


Introduction

Everyone will be very pleased to hear that Oracle’s third attempt at producing a usable database product on Linux has largely been successful. The first two usually worked but only after much aggravation. Forget all the extras that 8.1.6 provides, you can get the thing installed with much less grief!

Of course, I wouldn’t go so far as to say that it was simple and straight-forward all the time. It is Oracle that we’re talking about here.

I’ll start by describing how I got Oracle installed on my box and finish off with some questions and answers, much in the same format as the HOWTO. It’s probably worth having a look at the HOWTO still as many of the problems are similar and the solutions given there may give you some idea of where to start looking.

My machine

First, some news on my ‘server’ configuration: I still have the same Celeron 466 with 128Mb of memory. On the software side I’ve upgraded to Mandrake 7.1 (if I’d been running a production Oracle server I wouldn’t have taken the risk). I didn’t remove my old installation of Oracle before starting on the new one and I didn’t attempt to perform an upgrade.

I did remove JRE (Blackdown 1.1.6v5) and my installation of JDK (1.2.2) from my path. Oracle now comes with its own JRE, so even having the risk of it using the wrong one made me paranoid.

The last thing to note is that this time I downloaded my copy rather than using a CD. This seems to be what most other people do, so my tale here should be closer to ‘real life.’

My successful install

The process was as follows:

  1. Download Oracle 8i R2
  2. Extract the archive
  3. Create the required users and groups
  4. Make sure X is set up correctly
  5. Start the installer
  6. Quick tests

Firstly, the download. It’s big, nearly 300Mb. Don’t attempt it without something like Gozilla or wget even if you’re on a fast corporate connection.

Secondly the extraction. You’ll find that it comes in a standard tar archive compressed with GNU Zip. This command should get all the files out:

tar zxvf oracle8161.tar.gz

When you extract it, remember that the files coming out are slightly bigger (301807K on my machine). So you need over 500Mb of disk space before you even start the installation!

Before you actually start the installation, you’ll need to switch to “root” for a couple of commands. Start by creating a group called “dba” and a user “oracle”. Your new user should be in the new group. Log in as your new “oracle” user and make sure your X Windows system is working properly. (If you can fire up a new ‘xterm’ you’re fine.) The Oracle installer, as before, works only in a graphical environment.

Go to where you extracted the software archive. You’ll find a directory has been created (“Oracle8iR2”). Move into it and you’re ready to start the installation!

(A quick note: in the same directory there’s “index.htm” which is the root page for all the Oracle installation document. This seems to be improved over earlier releases and is worth a read.)

Type:

./runInstaller

A splash screen should appear, followed by a Windows-style Wizard/Installer. I find the default options for almost everything to be fine. Broadly speaking, and assuming some common-sense is used, just clicking “Next” continually should result in a working installation. In slightly more detail…

(Note that there are a few points where the installer asks you to log in as “root” to run some shell scripts. To simplify the text below, I’ve missed these steps out. Simply do as it says and click “Retry” once it’s done.)

  1. Welcome screen. Click “Next.”
  2. File Locations screen. The top box should be correct; it displays the location of the archive containing all the software about to be installed. The second box is the “base” of you Oracle installation. I chose “/home/ora816” but this is not recommended. Have a read of the OFA (Oracle Flexible Architecture) documentation.
  3. Available Products screen. If you’re installing a server, select “Oracle 8i Enterprise Edition 8.1.6.1.0”; otherwise select “Oracle 8i Client 8.1.6.1.0”. I’m assuming that you’re building a server and click the first option.
  4. Installation Types screen. Do you want a “Typical”, “Minimal” or “Custom” installation. Unless you really know what you’re doing, pick “Typical”.
  5. Upgrading or Migrating an Existing Database screen. If you have a previous installation, Oracle will ask whether you want to upgrade your database to the new 8.1.6 format. I didn’t. I’d recommend doing this yourself once the installation process is complete even if you do.
  6. Database Identification screen. Here Oracle asks you for a Global Database Name and a SID. As before, this is something your DBA probably has an opinion on. If you’re the DBA and you don’t know what it’s asking for, enter “dev1” for both.
  7. Database File Location screen. Now Oracle knows what you want to call your database, it asks you where you want to put all the files that make up the database. Think back to your reading of the OFA documentation for this.
  8. Summary screen. Oracle now tells you what it’s planning on installing. Click “Install” if you’re sure, or go to the “Previous” screen an juggle the options around.
  9. Configuration Tools. First Oracle runs the Net8 Configuration Assistant and then runs the Database Configuration Assistant. Basically, it sets up your networking and creates the database you asked for. No user intervention is required. (Note: the SYS account password is “change_on_install” and the SYSTEM password is “manager”. You should change both using the SQL*Plus “password” command as soon as possible.)
  10. End of Installation. That’s it, you have a complete installation!

If you want to install Oracle Programmer (Pro*C, etc), you need to follow the same process as before: go back through the installation process, but this time following the “Oracle Client” route. The rest of the process is similar to the above and very straight-forward. The new installer even asks you if you want to start again once your database has been created.

And if you want to set up a network connection to another machine, the process is exactly the same as for Oracle 8i (and is covered in the main HOWTO).

Questions and answers

Java problems?

As before, many of the problems come from your choice of Java Virtual Machine. R2 actually comes with a runtime environment this time (JRE 1.1.8), which does make things easier. However I have heard reports that older versions sometimes work better. The older version is normally Blackdown’s 1.1.6v5 release, the same Oracle used to recommend with their 8.1.5 release.

Memory requirements

One thing that is exactly the same is the amount of memory required. I don’t remember seeing a figure in their old documentation, but they say you need 400Mb this time, either real or virtual, for 8.1.6. I have 384Mb in total on my machine and it was fine. The default database configuration seems to use more memory but, as always, you can change that.

Running Redhat 7 or another glibc 2.2 based distribution

Short answer: add “export LD_ASSUME_KERNEL=2.2.5” to your profile and then type “. /usr/i386-glib21-linux/bin/i386-glibc21-linux-env.sh”.

Long answer: look at my page on the subject.