Linux - General

I began using linux several years ago, I started with RedHat 6.2 and used RedHat up until they discontinued RedHat for the desktop. I began noticing several problems with RedHat 9, and needed to find another distro that would suit my needs anyway. I have tried Fedora, Suse, Mandrake, Slackware, Gentoo, and Debian. In the end I choose Debian/GNU over all the others. The worst part about Debian in my opinion is the install process, but after you get it figured out, thats not to bad either. This section of the site is a guide to all of the things that I had to do to get Debian set up just the way I like it. It took a lot of googling to get all of this information together so I wanted to put it here to help anyone else who may be new to Debian.


Debian - Installation

This is by far the biggest hurdle anyone runs into when setting up a debian linux system. If you downloaded and installed the stable version (currently 3.0r2 Woody), then most of the packages are ancient and most would probably want newer packages. Start the install by typing `bf24` at the boot prompt. This will install a (fairly new) 2.4.18 kernel, if you just press enter a 2.2 kernel will be installed. Everything else is pretty simply until you get to the package selection (after the reboot). The best way to totally customize your system is to not install anything at this point (remember those are old packages anyway). Cancel tasksel and dselect and continue on to the boot prompt. Debian is installed. Use apt-get to install whatever packages you desire. This way you only get the packages you need.

Debian - Issues

Nvidia video driver build error (*** [select_makefile] Error 1)
 

First off you must have the kernel headers intalled, as well as gcc, make, binutils, modutils, and libc6-dev  To install all of these type
`apt-get install gcc make binutils libc6-dev modutils kernel-headers-$(uname -r)`

Next you need to create a symlink to the headers.
`ln -s /usr/src/kernel-headers-$(uname -r) /lib/modules/$(uname -r)/build

Now you should be able to build the driver using the the nvidia script
`sh NVIDIA-Linux-x86-1.0-5336-pkg1.run`

After this completes successfully, You need to edit /etc/X11/XF86config-4
 `dpkg-reconfigure xserver-xfree86`
On the first screen you should choose "nvidia" for the driver, also under the modules section you need to unckeck "GLcore" and "Dri", and make sure that "GLX" is checked. Write the file when prompted and you should be good to go.

Mouse stutters, Movies stutter and everything is just too slow!

This problem is a common one, and it is the fact that DMA is not enabled on the HDD. You can check to see with
`hdparm /dev/hda`
Check the line "Using_dma", if it is set to 0 then DMA is turned off. You may be able to simply turn it on with
`hdparm -d1 /dev/hda`
If you receive an error message then you need to rebuild the kernel to get it working. This may not be working for two reasons. (1. You are using generic IDE chipset drivers) or (2. Your IDE chipset driver is a module, not built into the kernel.)
When you rebuild the kernel make sure that you compile your IDE chipset into the kernel rather than as a module. If you are not familiar with building kernels I suggest you take a look at the Linux kernel HOW-TO.

dpkg-reconfigure xserver-xfree86 does not write new /etc/X11/XF86config-4

If you manually edit /etc/X11/XF86config-4 or edit it with something other than `dpkg-reconfigure xserver-xfree86`, then debian will refuse to write a new one using the latter command. To fix this run
`dexconf -output=/tmp/foo ; pager /tmp/foo `
Now dpkg-reconfigure will write the new XF86config-4 file.

Setting up printing

This is a good one, First of all I have two printers a Lexmark x1150 all-in-one and a Canon i860 photo printer. Neither of which are supported under linux by their manufacturers. So what should I do? Improvise. Lets start with the Lexmark.
-Lexmark X1150 all-in-one-
The Lexmark X60x series of printer driver will work with this printer, however it is only available for RedHat in .rpm format not .deb, don't worry though Linux is Linux, no matter what name is on it. If you would like a very simple way to do this you can download the driver, and a script I wrote, put them both in the same folder and my script will do everything for you, simply by typing `sh lexmarkx1150inst.sh`

---Manually installing the driver---
First lets download the Lexmark Z601 driver here.
Next you need to create a symlink for libtk8.4.so.0 because the Lexmark installer will look for libtk8.3.so do this with `ln -s /usr/lib/libtk8.4.so.0 /usr/lib/libtk8.3.so`
Now extract the files in the Lexmark archive `tar -xzf CJLZ600LE-CUPS-1.0-1.TAR.gz`
Now run the script that was extractd ` sh z600cups-1.0-1.gz.sh --keep`
There should now be a folder called "install" in the directory. Change to that directory and notice the two .rpms.
Next you need to download a program called "alien" that can convert .rpms to .debs. You can get it with `apt-get install alien`
Now run `alien -d *.rpm` to convert both files to .debs.
Now that we have two .deb files were almost done. You now need to install the two .deb files like this `dpkg -i *.deb`
Now you need to go to the /usr/share/cups/model directory, and extract the
Lexmark-Z600-lxz600cj-cups.ppd.gz like this `gunzip Lexmark-Z600cj-cups.ppd.gz`
Last lets add the printer with this command `/usr/sbin/lpadmin -p Lexmark_X1150 -E -v usb:/dev/usb/lp0 -m Lexmark-Z600-lxz600cj-cups.ppd`
Everything should be setup now and working. Try to print.
-Canon i860-
The first thing you need to do is get the driver `apt-get install cupsomatic-ppd`
Next install the driver through your software, I used kde print manager. Install the BJC-800
driver.
Now you should be all set.


Sharing the x1150 with Windows hosts via samba
Use the z60x series drivers on the windows side. Also make sure you disable "Bidirectional printing" and "Enable Advanced Printing features" or you will not be able to print correctly from windows.