Linux For Cynics One user's experiences with Linux


Valve Announcements


New Valve announcement.
Yep, it's SteamBox:

But what's interesting is that it's not just a console made by Valve. They say they've got other manufactures ready to make their own machines running SteamOS. Not to mention that they clarified that SteamOS is meant to be run on any PC hardware, not just especially made hardware. Finally:

Can I hack this box? Run another OS? Change the hardware? Install my own software? Use it to build a robot?

I'm so glad they get it.

So, to sum up the last two announcements: "We made a Linux distro, we are making hardware companies support Linux, and we are selling Linux boxes"


Ubuntu Phone Edge Fundraiser

Tagged as: , No Comments

Virtualization: Gaming on Xen

I've been doing a little reading on virtualization and came across Xen and IOMMU (VT-d) which allows PCI passthrough. Here's a good resource on setting up a Xen hypervisor with a couple guests.

Here's an impressive example of such a set up in action:

Very cool. If I had beefy enough hardware for it, I would definitely set it up like this.


Which Architecture

A common question a lot of new users have is, what is an "architecture" and which one does my computer use?

If you really want to know what is meant by computer architecture, then there's always wikipedia to learn from.

In the context of Linux users, I usually hear this question in a couple different scenarios:

Q: I want to install a Linux distribution, which version do I need, 32 or 64 bit?

A: You can't go wrong by installing a 32 bit distribution, because hardware designed to run 64 bit software, can run 32 bit software with no problem. Here's a list of 64bit CPUs. If your CPU is on your list, you might want to use a 64 bit version of your distro instead. A little tip: If you really need to ask this question and the answer confuses you, just go with the 32 bit version.

Q: I already have Linux running on this machine, now I want to know if it's a 32 bit kernel, or a 64 bit kernel.

A: Easy!

uname -m

will give you the architecture of your kernel. i386, i686 are 32 bit, and amd64 is 64 bit!

Q: Okay, how do I find out if my CPU is 32 or 64 bit, regardless of what Linux kernel it's running?

A: There are actually a few ways to do this:


displays cpu info, and will tell you the architecture of your CPU and if it can use 64 bit op-mode. This is probably the easiest way.

Another way:

grep lm /proc/cpuinfo

searches for the "lm" string in /proc/cpuinfo/. If it's found, that means the CPU is capable of 64 bit mode. Btw, lm means "long mode".

Tagged as: No Comments

Disable PC Speaker Beep

This will work in Ubuntu, Debian, Arch, or pretty much any other distro. The PC speaker can be disabled by unloading the pcspkr kernel module like so:

sudo rmmod pcspkr

To make this permanent, blacklist the pcspkr module by adding this line:

blacklist pcspkr

to a file in /etc/modprobe.d/. Name the file something that ends with ".conf". This is how I did it:

echo "blacklist pcspkr" > /etc/modprobe.d/nobeep.conf

You're notice pcspkr is blacklisted by default in Ubuntu. Here's a line from /etc/modprobe.b/blacklist.conf in 12.10:

# ugly and loud noise, getting on everyone's nerves; this should be done by a
# nice pulseaudio bing (Ubuntu: #77010)
blacklist pcspkr

I agree! It is an ugly noise that gets on my nerves. Be gone!

Filed under: Hardware, How to No Comments

Ubuntu on Asus Eee PC 1201N

asus1201nA few years ago netbooks were quite popular and although I am not usually a hardware early adopter, I fell for this fad and got an Asus eeePC 1201N, one of the first with the Nvidia Ion card. It came with Windows 7, I installed Ubuntu, but kept the Windows partition for games (yes, this netbook can run some games).

This post is probably years over due, but recently I dusted off the old netbook and decided I would install Crunchbang 10 on it. I reformatted the Windows partition. After giving #! a shot I went back to Ubuntu (Xubuntu, actually).

[[EDIT: There is more that needs to be done to make Ubuntu behave properly on the 1201N. I will summarize what've read, but here are the sources: , , ]]

Anyway, here's what I did to make it usable:


To get the majority of the hotkeys to function properly, you need to modify how GRUB boots Linux, as follow.

Open a terminal and edit your Grub configuration file:

sudo gedit /etc/default/grub

And change the option GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" as follow:

GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi=Linux acpi_backlight=vendor splash"

Then update Grub installation with the command:

sudo update-grub

and restart your netbook.

Super Hybrid Engine: Heat, Fan Control, Cpu Frequency Scaling

Unfortunately, the Eee PC 1201N is incompatible with cpufrequtils. As far as I know, there's no way to control cpu frequency on this machine. Instead, front side bus freqency is controlled by Asus's "Super Hybrid Engine". In order to make use of this, we can install the power control applet Jupiter)

First we need to install laptop mode:

sudo apt-get install laptop-mode-tools

Then we proceed to install Jupiter:

Step 1 : Run the following command to add the PPA for Jupiter on your Ubuntu system.
sudo add-apt-repository ppa:webupd8team/jupiter
Step 2 : Update your Ubuntu system.
sudo apt-get update
Step 3 : Now install Jupiter on your Ubuntu system.
sudo apt-get install jupiter
Step 4 : Finally install support for EeePC - required for SHE (Super Hybrid Engine) on your Ubuntu system.
sudo apt-get install jupiter-support-eee

It still runs a little hot my system, but it is a huge improvement.


Nvidia loses 10 million GPU order due to poor Linux support

Here's the full article:

The Chinese government wanted GPUs to use for their Longsoon processors, which are MIPS based. But Nvidia's Linux drivers do not support MIPS architecture. The Chinese government responded by giving the order to AMD.

Filed under: Hardware, Opinion No Comments

How to Build a Linux PC: Hardware

This post is the first in a series (possibly just two or three posts). It'll be a short list of tips to follow when faced with the task of building a machine to run Linux.

You probably already know this, but, just in case, do yourself a favor and check the Linux Hardware List - just like Mac people have to check for Mac compatibility - you need to get used to checking whether Linux is compatible and whether the specific hardware works easily, hard or not at all. By picking full Linux compatible hardware, your life will be much easier - much easier.

Printers and scanners - don't buy Canon they have ZERO support for Linux. Brand new models may not be supported from any manufacturer. OTOH, some printers are literally plug-n-play and they work, completely just by connecting with USB.

This goes towards disk controllers, RAID controllers, WiFi adapters, network chips and cards, graphics cards, almost everything. WiFi chips are especially important if you have a laptop. Don't blame Linux, blame the hardware vendors for not releasing their proprietary MS-Windows-only drivers.

Binary driver releases for Linux will probably cause problems when you migrate to a new kernel thru normal patching processes too. In a few years, those binary drivers may not be maintained on the current kernel. You really want FLOSS drivers. As an example, I purchases a RAID card that was "linux compatible" and fairly popular. I thought I'd done my homework. The vendor had only provided binary drivers for a 2 yr old kernel, nothing for the current kernels. Fortunately, the Linux kernel recognized the RAID card as a JBOD, but not for any RAID capabilities. I ended up using that card, but had to use software RAID. All the disks were just presented as individual disks. Live and learn.

Filed under: Hardware, How to No Comments

toshset: required kernel toshiba support not enabled

Toshiba Laptop

Save me!


You updated your Toshiba machine's Ubuntu installation and now toshset, the handy command-line tool that gives us control over Toshiba's hardware interface, no longer works and simply says: "required kernel toshiba support not enabled". This problem has been diagnosed to death: The experimental toshiba patch was dropped from the kernel, with the intention to see if this breaks something for anyone. Well, it broke something for me and many others. Does that matter? No, the kernel team has pushed this responsibility onto the "driver people." What this actually means is that you, dear all-important user, has to fix it.


The quick and dirty instructions are below, most of the instructions come from the Ubuntu KernelCustomBuild webpage. I might have missed something, please post any corrections.
1) Get ubuntu kernel source package and kernel building tools packages (I had all these installed, so I don't know what is required)
get the kernel source package:

#> sudo apt-get install linux-source-2.6.35

get the kernel building source packages:

#> sudo apt-get install kernel-package libncurses5-dev fakeroot wget bzip2

(maybe not all these packages are necessary, but I don't think it will harm to install them)

#> cd /usr/src


#> sudo wget


#> sudo tar -jxf linux-source-2.6.35.tar.bz2


#> cd linux-source-2.6.35


#> sudo patch -p1 < ../toshiba_acpi-current.patch


#> cd drivers/platform/x86/

8) I only wanted to build the toshiba_acpi module. So I commented out all the other modules from the Makefile. Using sudo make a backup copy of the Makefile, then edit the Makefile to only build the toshiba_acpi module. Just put # in front
of the other modules.

sudo make -C /usr/src/linux-headers-`uname -r` M=`pwd` modules


sudo make -C /usr/src/linux-headers-`uname -r` M=`pwd` modules_install


sudo depmod -a

12) Driver should be into /lib/modules/*/extra/toshiba_acpi. rmmod and modprobe
to load the new module. (Rebooting should work as well)
Copy the file toshiba_acpi.ko to /lib/modules/*/extra (replace * with your current kernel version).
remove the old module:

#> sudo rmmod toshiba_acpi

and load the new module:

#> sudo modprobe toshiba_acpi

(or simply reboot)


Tagged as: 3 Comments