Introduction
It is that time again. My last workstation has given good service for around a decade, but now, being a 200MHz Pentium Pro machine with only 96MB of RAM, it is showing its age. Under GNU/Linux, it has fared much better than with proprietary operating systems, that usually relegate their hardware to the dustbin every 3 years. Even now it is not scrapped, but has been fitted with the latest release of Debian and tucked away in the basement without screen, keyboard or mouse as a network printer driver.
NOTE THAT THIS MACHINE HAS NOT YET BEEN BUILT - THESE NOTES ARE, FOR THE MOMENT, JUST MUSINGS! Well, no more! The machine, after well over a year in the brewing due to financial constraints, is running, in fact I am editing this page on it! The article will be slowly refined to reflect the final build.
Disclaimer
This information is published in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Computer hardware manufacturers are notorious for changing the specification of their products, whilst keeping the same part numbers. What has worked for me might not work for you - proceed at your own risk.
Audience
This article assumes reasonable familiarity with assembling computers from component parts and a general basic knowledge of electronics. It also assumes familiarity with the GNU/Linux operating system and the application software commonly used with it.
The article also assumes the reader will be familiar with electrical and mechanical workshop safety procedures. If you are not, it is imperative that you take professional advice before proceeding.
Update
2007-06-19 Writeup after completion of machine.
Rationale
The basic requirements of the box are:
- Word Processing
- Web Browsing
- Software Development
- Web Site Development
- Graphics Processing
- Computer Aided Design
- Computer Music
- Playing and Editing Music
- Playing and Editing Video
- TV and Radio Recording and Playback
- Recharging digital portable music players
- Printing
- Scanning
The GNU/Linux operating system was chosen for ruggedness and resistance to virus attack.
This makes buying a complete machine off the shelf a waste of money, as one is nearly always forced to buy an unwanted proprietary operating system. I am just too busy at the moment to go through the palaver of claiming back the money on unused software licences, especially as I would have to do it in French!
Choosing the Components
A set of components must be chosen that are compatible with the GNU/Linux operating system. This is always something of a black art, as most component manufacturers seem to be frightened to mention GNU/Linux compatibility for fear of upsetting the large software vendors. Of those manufacturers that do support GNU/Linux, some do so only in the form of making available closed proprietary drivers, whilst others co-operate fully with the free software community by providing programming information and some even contribute to the development process.
I do not like to use proprietary drivers in my systems, both for ethical reasons and because it may compromise security. This means tracking down components from those manufacturers whose technologies are well understood by or who have co-operated with the free software community.
Thus the lack of GNU/Linux drivers offered with a product should not be taken as indicative of a problem, as GNU/Linux supports a wide variety of devices 'out-of-the-box' and supplemental binary drivers are not required.
As ever, the internet remains the best source of information, and a little bit of inspired searching will allow the requisite information to be ferreted out. There are a few links below.
The final criteria is that the components chosen must be available locally at a competitive price. For me, this means the computer shops around rue Montgallet in Paris, or on the Internet. Those of you in London have the Tottenham Court Road, and in Hong Kong there is the Mongkok District.
The only components not available locally were the ones not usually found in consumer machines: the RS-485 communications card and a PCI expansion card blanking plate fitted with a RS-232 connector to provide a connection to the second serial port on the motherboard.
Tower Case
This machine has been built around a large tower case, to allow plenty of room for expansion in the future. The component chosen comes with a generous 500 watt power supply, which will provide more than enough power for the unit.
Processor
I have tended to use Intel processors in the past, but have recently been looking into the AMD alternative. This machine will be used for producing large photo - montage work, video editing, audio composition and CAD work so plenty of processor power will be required. A 64 - bit dual core Athlon should be more than adequate. The processor is usually the last component bought, as the price is most likely to fall with time. A socket 939 device has been decided upon. It was initially decided to use a dual core Athlon 64 X2, but the supply of these in socket 939 dried up so an Opteron 150 was obtained instead.
Motherboard
Once the processor socket type was chosen, a suitable socket 939 motherboard had to be found. The main criteria here was to find one using a chipset well supported by free software. The current feeling is that a VIA K8T800 Pro chipset is the best supported chipset under GNU/Linux. The next question was the type of graphics card. The PCI Express variety is still relatively new, and to me at any rate an unknown quantity under GNU/Linux, so it was decided to go with an AGP 8x device. The machine will be used with several devices such as microcontroller programmers and digital cameras that have RS-232 interfaces, so having these on the motherboard is an asset. Likewise, the parallel port, which I feel still gives a more stable printer interface. These constraints narrowed the choice down somewhat, and the MSI K8T Neo2-F V2.0 was eventually chosen.
I have seen a few reports of problems with the earlier versions of this board, although some of these may have been fixed with bios upgrades. To date there have been no such problems with this board.
Expansion Cards
Expansion cards were added to the motherboard to provide graphics, tv and RS485 capabilities.
Graphics Card
As I have stated before, I prefer not to use proprietary binary - only drivers, and this impacts somewhat on the choice of graphics card. The current concensus appears to be that ATI products currently have the best support utilising the free drivers, so an ATI Radeon 9600 based card was chosen. The next question was the type of interface slot for the card. The PCI Express variety was relatively new at the time of component selection (2006), and to me at any rate an unknown quantity under GNU/Linux, so it was decided to go with an AGP 8x device. The card originally chosen was made by Asus, but appeared to be no longer available, so the PowerColor 9600 Pro card was fitted instead.
TV Tuner Card
As a Hauppauge WinTV-PCI-FM model 760 tv and radio card was left over from a previous machine build, it was decided to install this to see how it performed.
RS-485 Card
A Quatech SSCLP-200/300 card was fitted to provide an RS-485 facility which will be used in conjunction with my work on inductrial control systems and also projects such as the Open Weather Project.
Components Fitted
These are the components used to build the workstation. They were mostly bought in the computer shops in the twelfth district of Paris, or on the Internet . All prices are in Euros and include local taxes, but not shipping charges.
Component Photo Gallery
Construction
This space intentionally left blank
Changing the I/O Panel
Connections between peripherals and the system motherboard are made by means of connectors mounted behind an I/O panel. The panel provides electrical screening and protection from mechanical damage for the connectors. To facilitate different motherboard designs, the panel is removeable, and must be changed in this instance for the panel supplied with the motherboard.
The panel is a push fit in the panel aperture, and only needs to be pushed out and then replaced with the new panel, which is pushed into the resultant slot.
The panel is made of thin metal plate which may present sharp edges, so care must be taken not to injure oneself during the procedure. It is recommended that leather gloves be worn as protection.
Installing the Fans
Several auxiliary fans were fitted to augment the main case and power supply fans.
The Akasa fans used are supplied with a power supply adaptor comprising a molex plug/socket of the type used to connect disk drives at one end, and a socket to connect to the fan at the other. As several fans were to be fitted it was decided to make up a lead providing three fan sockets to one drive connector as this made the wiring tidier. This was achieved by cutting three sockets and a plug from the adaptors provided, soldering the wires together and insulating with heat shrink tubing. Note that the wires from the molex connector do not follow the normal colour coding for these connectors.
Main Case Fan
The case used was already fitted with a fan on the rear panel. This merely needed to be connected to the power supply.
Drive Bay Fan
The 80mm drive bay fan is installed in a clip in bracket at the front of the hard disk drive bay. It must be installed before the hard disk drives. To facilitate the fan wiring, the bracket was firstly removed, the fan fitted, and then the bracket was re-installed in the case. This allowed the fan power wiring to be routed through a void in the drive bay to exit at the rear of the bay.
Lower Front Fan
The 80mm lower front fan is installed in a clip in bracket below the hard disk drive bay. The fan is merely pushed into the bracket until it clicks in place.
Graphics Card Fan / Auxiliary Processor Fan
The case provides for the possibility of fitting fans to increase airflow to the case above the graphics card and to the inlet of the processor airflow duct. Because a heatpipe type of CPU cooler was installed the processor airflow duct was discarded and the size of the heatpipe radiator meant that there was no room to install either of these auxiliary fans.
Installing the CD/DVD Drive
The CD/DVD drive is installed in the drive bay using a system of sliding runners. Firstly, a pair of runners were unclipped from the bottom of the case and screwed to either side of the drive. Care must be taken to use the correct screws that do not protrude too far into the drive. Then one of the plastic blanking plates was removed by carefully pushing it from the rear with a screwdriver. The drive was then installed by engaging the runners with the side of the case and pushing the drive backwards until it clicked into place.
Installing the Floppy Drive
The floppy drive is installed in a removeable drive bay. Firstly, the drive bay is removed from the main chassis by unclipping a catch and sliding it backwards. As supplied, the floppy drive apertures in the metal chassis of the case are not completely removed, but left as 'knock - out' sections to preserve electrical screening if floppy drives are not required. In front of the metal chassis, a plastic drive panel comprises several plastic blanking plates corresponding to each drive position. The drive bay plastic blanking cover was removed by inserting a screwdriver through the metal knock - out section and gently pushing the cover. The metal knock - out section was then removed by placing a screwdriver through one of the holes in it and gently twisting until the metal 'bridges' joining the knock - out to the main chassis fractured. The floppy drive was then attached to the drive bay by using four of the screws supplied in the hardware kit. Care must be taken to use the correct screws that do not protrude too far into the drive. The drive bay was then carefully re-installed into the main case.
Installing the Processor
Firstly the motherboard was removed from and then placed on top of its anti-static bag.
The plastic mounting ring surrounding the processor socket is intended for mounting the OEM processor fan supplied with processor box sets. As a heat pipe cooler was to be fitted this plastic ring had to be unscrewed and discarded, however the metal plate under the socket to which it screws is used by the cooler and must be retained.
As the RAM module sockets were quite clode to the processor, it was decided to fit the modules at this point so that any clearance problems would be evident during the installation of the processor cooling system. The module socket retainers were opened fully, then the modules placed in the slots taking care that the key slots in the modules align with the keys in the sockets, then the modules were pressed fully home until the retainers clicked fully shut.
The lever on the processor socket was then raised to the upright position to open the socket ready for insertion of the processor.
The processor was removed from its protective packaging and gently inserted into the open CPU socket taking care that the index arrow on the processor aligned with the index arrow on the socket and on the board. The processor should just drop into the socket without any pressure being applied. The lever was then closed to retain the processor in the socket.
Installing the Processor Cooling System
This space intentionally left blank
Installing the Motherboard
This space intentionally left blank
Installing the Expansion Cards
This space intentionally left blank
Graphics Card
This space intentionally left blank
TV Tuner Card
The Hauppauge WinTV-PCI-FM model 760 tv and radio card was initially installed by plugging it in to the third white PCI bus socket, adjacent to the orange PCI communications socket.
When the machine was first powered up, it was discovered that none of the tv or radio applications could find the card. Looking at the output of lspci, no evidence could be found of the card in the system. The card was removed and inserted into the second white slot, whereupon it performed as expected.
RS-485 Card
This space intentionally left blank
Wireless Network Card
None Installed
Installing the Hard Disk Drives
This space intentionally left blank
System Drive
This space intentionally left blank
Data RAID System
This space intentionally left blank
Wiring Up
This space intentionally left blank
System Test
This space intentionally left blank
Software Installation
This space intentionally left blank
Upgrading the BIOS
This space intentionally left blank
Installing the Operating System
This space intentionally left blank
Installing Applications
This space intentionally left blank
OpenOffice.org
After installing OpenOffice.org I like to refine the installation by setting the default paper size to A4, the measurements to metric and the default font to DejaVu.
Default Fonts
- Select Tools - Options...
- Click the + next to OpenOffice.org Writer to expand the Writer options
- Highlight 'Basic Fonts (Western)'
- Select the desired default fonts from the drop - down lists
Default Paper Size
To change the default paper size in OOo, one has to create a template based on the desired paper size, then make this the default template.
- Select File - New - Text Document
- Select Format - Page...
- Select 'A4' from the 'Format' drop down list
- Click the 'OK' button
Save as a template:
- Select File - Templates - Save
- Enter a suitable name in the 'New Template' field
- Make sure 'My Templates' is highlighted in the 'Categories' Field
- Click the 'OK' button to save the file
Set as default:
- Select File - Templates - Organise
- Double Click 'My Templates'
- Right click on the template just saved
- Select 'Set as Default' from the drop down list
- Click the 'Close' button to close the Template Management window
Default Units
It is an amazing inconvenience that in a world where 93.5% live in metric countries most computer programs default to an older, difficult to use and obsolete system of units and to non ISO standard paper sizes.
Here is how to change OpenOffice.org to the metric system:
- Select Tools - Options...
- Click the + next to OpenOffice.org Writer to expand the Writer options
- Select 'General'
- Next to 'Measurement Unit' select 'Centimeter' from the drop-down list
- Set the tab stop to a round number - I use 1.25cm
- Select 'View'
- Next to 'Ruler' select 'Centimeter' from the drop-down list for each ruler
- Select 'Grid'
- Set the grid to a round number - I use 1cm
- Select 'Table'
- Set the keyboard handling to round numbers
Repeat these steps but for OpenOffice.org Writer - Web.
Then start OpenOffice.org Calc, then OpenOffice.org Impress and perform similar steps.
See the OpenOffice.org 2 User Guide for more details on setting up and using this program.
The Gimp
I always set the Gimp up to use metric units and resolutions, and to use Cubic Interpolation for scaling.
- Select File - Preferences
- Highlight 'New Image' in the left hand pane
- In 'Advanced Options' set the x and y resolutions to 50
- In 'Advanced Options' set the units to pixels/cm
- Highlight 'Default Grid' in the left hand pane
- In 'Spacing' and 'Offset' set the units to cm
- In 'Spacing' set the width and height to 50 pixels and 1cm
- Highlight 'Tool Options' in the left hand pane
- In 'Scaling' set 'Default interpolation' to 'Cubic (Best)'
- Click 'OK' to close the 'Preferences' box
Cinelerra
Cinelerra was not the easiest piece of software to get running as it appeared there were no precompiled packages available for the program on AMD_64 Opteron. It was thus a question of compiling from sources.
Libtool, autogen and automake were installed as these are a prerequisite for building most software.
Firstly the sources were checked out from SVN and configured as follows:
svn checkout svn://svn.skolelinux.org/cinelerra/trunk/hvirtual
aclocal
./autogen.sh
./configure
When configure ran, it listed several unfulfilled dependencies. These dependencies were mostly fulfilled by installing the development packages of the libraries listed using Adept.
Once the dependencies were all met, building the program with make was attempted. This revealed an outstanding dependency which was fulfilled by adding libavcodec-dev.
The build then failed during linking.
One of the libraries was rebuilt and some fiddling with the configuration as listed on:
https://help.ubuntu.com/community/amd64/Cinelerra
but to no avail.
Finally the page:
https://help.ubuntu.com/community/CinelerraOnFeistyAMD64
was discovered, and the package listed here installed until such time as the compilation can be sorted out.
This space intentionally left blank
This space intentionally left blank
In Conclusion
The idea with this machine was to obtain the components bit by bit, slowly building up the machine. I nearly became unstuck, as the socket 939 which I had decided upon was superceded by the AM2 socket in May 2006. Fortunately I realised the supply of processors was drying up and managed to obtain an Opteron 150. Had I not managed this, I would have had to find another motherboard, and may then have had problems finding one with an AGP graphics slot...
Performance
According to the Boinc application, this machine compares favourably with other machines to which I have access:
| Machine | Processor | Measured floating point speed | Measured integer speed |
|---|---|---|---|
| ORW | AMD Opteron(tm) Processor 150 | 1859.86 million ops/sec | 4409.18 million ops/sec |
| Dell Optiplex GX270 | Intel(R) Pentium(R) 4 CPU 2.80GHz | 715.88 million ops/sec | 1276.76 million ops/sec |
| USW | Intel(R) Celeron(R) CPU 3.20GHz | 956.25 million ops/sec | 2704.39 million ops/sec |
| USW | Intel(R) Pentium(R) 4 CPU 3.00GHz | 669.65 million ops/sec | 1417.24 million ops/sec |
It certainly is a nice machine to use; responsive and fast, even when operating on large multimedia files. Large programs open quickly and are completely stable.
Thanks
Linux Compatible
Linux Printing.org
Endnotes
2006-01-01 - 1st Draft
2006-04-05 - Update components list to reflect current thinking
2006-06-02 - Update page layout - add content
2006-06-07 - Add more photos
2007-05-29 - Update components list to reflect current thinking
2007-06-17 - Reformat page
The photographs were taken with a Kodak DC240 camera, with a piece of foil fitted to deflect the flash away from the subject. The subject was then lit with a high power flashgun bounced from the ceiling, and by a smaller diffused flash acting as a keylight closer to the subject.
The photographs were downloaded from the camera with gPhoto and retouched and resized using the GIMP.
Also available in OpenDocument format (xxxxxxx bytes).
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
All trademarks and tradenames are the property of their respective manufacturers/owners.
Copyright © 2005 - 2007 Pete Harlow All Rights Reserved
| Catnip Contents | Projects | OpenDocument |

