Installing Debian on an Angel 3000C / Clevo M350C

My wife and I recently bought an Angel
3000C laptop. The store claimed that they'd pre-install Linux on
it, but they had some trouble. Once they told us the machine was
actually a relabelled Clevo
M350C, we were able to get things done.

If you want to use RedHat on this machine, there's another site by someone
else, though it's sometimes down.

You can contact us at linux at paip dot net if you've got
questions or comments. Please include the word "Clevo" in your subject
line, or we're likely to miss it. :-p

This will make your kernel actually able to do
suspend-to-disk. The BIOS in this laptop doesn't support APM,
and also doesn't support S1 ACPI mode; all it supports is S3
(suspend-to-memory) and S4 (suspend-to-disk). Suspend-to-memory
doesn't work under Linux for various reasons you can find on the
net, so we need to patch the kernel to support S4.

From now on, when you boot, you'll have three choices at the
lilo prompt. [Press "Shift" when you see "LILO 22.2" to get the
prompt.] "Linux" is the default, and should be what you'll use
most of the time. "linux-orig" is the kernel that came with
Debian. You can use this to boot if something went wrong with
building the new kernel. "noresume" is for booting after
suspend-to-disk, if you just want a clean boot, and not to
resume from the saved state.

X Windows

This is going to be a little tricky. Support for the video card in
this laptop was only added to XFree86 version 4.3.x, which isn't even in
Debian unstable (at time of writing), but it is in experimental.

Edit your /etc/apt/sources.list:

Remove the reference to the CDROM

For everything except the security.debian.org line, change
"stable" to "unstable".

Examine that Packages file, and for each of the following, note
the version of the package listed. (That's the version that's
currently in experimental, and it's the version you'll need to
explicitly specify.). In parentheses, I've also listed the version
that was there at the time of writing, but it changes rapidly, so
it'll likely be wrong for you. It's likely they will all be the same
version, but not for sure.

lbxproxy (4.3.0-0pre1v5)

libice6 (4.3.0-0pre1v5)

libsm6 (4.3.0-0pre1v5)

libx11-6 (4.3.0-0pre1v5)

libx11-dev (4.3.0-0pre1v5)

libxaw7 (4.3.0-0pre1v5)

libxext-dev (4.3.0-0pre1v5)

libxext6 (4.3.0-0pre1v5)

libxft1 (4.3.0-0pre1v5)

libxi6 (4.3.0-0pre1v5)

libxmu6 (4.3.0-0pre1v5)

libxmuu1 (4.3.0-0pre1v5)

libxp6 (4.3.0-0pre1v5)

libxpm4 (4.3.0-0pre1v5)

libxrandr2 (4.3.0-0pre1v5)

libxt6 (4.3.0-0pre1v5)

libxtrap6 (4.3.0-0pre1v5)

libxtst6 (4.3.0-0pre1v5)

proxymngr (4.3.0-0pre1v5)

twm (4.3.0-0pre1v5)

x-dev (4.3.0-0pre1v5)

x-window-system (4.3.0-0pre1v5)

x-window-system-core (4.3.0-0pre1v5)

xbase-clients (4.3.0-0pre1v5)

xdm (4.3.0-0pre1v5)

xfonts-100dpi (4.3.0-0pre1v5)

xfonts-75dpi (4.3.0-0pre1v5)

xfonts-base (4.3.0-0pre1v5)

xfonts-scalable (4.3.0-0pre1v5)

xfree86-common (4.3.0-0pre1v5)

xfs (4.3.0-0pre1v5)

xfwp (4.3.0-0pre1v5)

xlibmesa-dri (4.3.0-0pre1v5)

xlibmesa-gl (4.3.0-0pre1v5)

xlibmesa-gl-dev (4.3.0-0pre1v5)

xlibmesa-glu (4.3.0-0pre1v5)

xlibmesa-glu-dev (4.3.0-0pre1v5)

xlibs (4.3.0-0pre1v5)

xlibs-data (4.3.0-0pre1v5)

xnest (4.3.0-0pre1v5)

xprt (4.3.0-0pre1v5)

xserver-common (4.3.0-0pre1v5)

xserver-xfree86 (4.3.0-0pre1v5)

xterm (4.3.0-0pre1v5)

xutils (4.3.0-0pre1v5)

xvfb (4.3.0-0pre1v5)

Use the version numbers you found to construct an apt-get
install command (this is all one single command on one line):

Now go back and remove the "experimental" line from your
/etc/apt/sources.list files. Leave the "unstable" lines alone.

apt-get update

Now install Gnome (this will install a whole lot of packages):

apt-get install gnome

If it gives you an error about gnome-games, do "mkdir
/var/games" and try again. Don't worry, you won't have to
download anything a second time.

Install gdm:

apt-get install gdm

Select it as your default display manager

Answer Y to all questions about replacing configuration files.

Edit /etc/X11/XF86Config-4 to reflect the amount of video RAM
you configured way above (minus a little for overhead). Find the
line that says "VideoRam", and change the value to 32626. (Assuming
you chose 32MB video RAM.)

Try it out!

/etc/init.d/xfs start

/etc/init.d/gdm start

You should see the gdm screen come up, and the mouse should
work. Switch back to the text console with Ctrl-Alt-F1.

Trackpad scroll buttons

If you want the up/down scroll button on the trackpad to work, you need
to install a special driver.

(Set your own country, of course. You can use /usr/src/slmdm-2.7.10/slver -c to get a list of countries.)

update-modules

Test it:

apt-get install minicom

minicom

You should see lines like "AT S7=45 S0=0"... and "OK". If
you see the "OK", the modem is responding properly.

Type Ctrl-A followed by X to exit Minicom.

Leftovers

Using Fn-F6 to switch CRT/LCD output works fine at the LILO prompt,
but not once the machine is booted, for some reason. (The machine seems
to crash hard.) I don't know why that is. But if you just leave the
machine in the state where it outputs to both the LCD and the CRT, it
seems to happily stay there, even across reboots. So then just plugging
in something to the VGA port will work.

I haven't tested the S-Video Out, but I doubt it'd work; I've never
seen that work under Linux.

I think Firewire is the only thing left. Unfortunately, we don't have
any Firewire devices to test with. The kernel build, above, compiled
Firewire support as modules, so it may very well work, or it may need
some more hacking.