Don't Work For The Wrong Reason

"As Bradbury suggests, we create work for ourselves when it isn't necessary, and we focus on the wrong reasons for working. Stop wasting time creating work for yourself because you want to feel productive, get away from being busy just to busy, and find something you you really enjoy working on. You need money to carry on in this world, no doubt, but don't let it be your only driving factor. You'll end up bored and hating every minute of your work."
-- Ray Bradbury, emphasis added
You don't feel busy or bored if you're doing something that excite you, and you're earning enough money to survive. However, the older you get, the more bitter, grumpier, and cynical you're and hardly anything excites you these days.

For the past two weeks, I've been listening to quite a few people pitching their ideas and visions. Some are like old wine new bottles, others are okish, and only a few are well-thought off and reasonable. Expect more pitching this coming month. 

AMD Radeon R7 260X

R7 260X, that's probably the best budget (less than USD100) graphic card you can buy right now which have good support for both FOSS and proprietary driver for GNU/Linux. I'm still contemplating about getting this card.

Two reasons. The hefty price, average local price is around MYR470+ and unsure support in Debian Wheezy with backports kernel (>= 3.13). If possible, I would like to stick with Debian Wheezy and FOSS driver. It would be even better if I can get WebGL to work in Chrome.

Finally, a quieter workstation.

After so many weeks, I've managed to remove the "vacuum cleaner" noise from the HP Proliant ML 110 server and turned it into a usable workstation. I should have done this earlier but it took me a while to take the initiative to figure out how to solve it.

The changes were so simple that I laughed at my own over-analyzed solution and bought unnecessary replacement accessory parts. Since the noise was caused by the high speed fan at 4000 RPM, the best way was just to replace it with fan of lower RPM.

Two major issues I faced. First, is very hard to get a cheap PWM 4 pins 92mm fan in MY unless you bought it together with the heatsink or your source it from Taobao. Second, you can reuse the existing 6 pins JWT A2504 connector instead of buying a new one. Even so, I can't get the exact model but similar 6 pins 2510 connector works just fine.

In the end of the day, I've learned so much about casing and heatsink fan and their related power connector. Such knowledge should be quite handy in case I need to build another workstation in coming future.

Result before and after replacement.
$ sudo apt-get install freeipmi-tools lm-sensors

Default server fans
$ sudo /usr/sbin/ipmi-sensors | grep Fan
1344  | REAR FAN         | Fan                      | 4000.00   | RPM   | 'OK'
1408  | CPU FAN          | Fan                      | 4000.00   | RPM   | 'OK'

After replacement with lower RPM fans.
$ sudo /usr/sbin/ipmi-sensors | grep Fan
1344  | REAR FAN         | Fan                      | 1803.07    | RPM   | 'OK'
1408  | CPU FAN          | Fan                      | 2241.20    | RPM   | 'OK'

I forgot to capture the result before the replacement but I recall it should be the same, roughly around 35C to 39C.
$ sudo sensors-detect
$ watch -n 1 -d sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0:       +37.0°C  (high = +83.0°C, crit = +99.0°C)
Core 1:       +36.0°C  (high = +83.0°C, crit = +99.0°C)
Core 2:       +38.0°C  (high = +83.0°C, crit = +99.0°C)
Core 3:       +35.0°C  (high = +83.0°C, crit = +99.0°C)

Neglected Raspberry Pi

"A bunch of nerds could order one, then wait six months for it to arrive. They could install a version of Linux on it, play around with it for about 20 minutes, and then talk about how maybe they'll use it for XMBC. Then they could just let it gather dust on some shelf until it gets thrown away in a few years."
-- kamapuaa, emphasis added
My sentiment exactly. Especially regarding Raspberry Pi or similar devices. Due to the low spec, slow updates from distro, and lack of an optimized GPU support, you can't do much with the tiny devices unless you want to learn more about electronic. Must figure out a way to do with the abandon Pi at home, maybe I can turn it into a wireless print server instead.

Debian Wheezy Backports Kernel

So I assumed, upgrading your Debian Wheezy to later kernel version through backports, is relatively easy, you've just to
$ echo "deb http://ftp.debian.org/debian/ wheezy-backports main non-free contrib" | sudo tee -a /etc/apt/sources.list.d/wheezy-backports.list

$ echo "deb-src http://ftp.debian.org/debian/ wheezy-backports main non-free contrib" | sudo tee -a /etc/apt/sources.list.d/wheezy-backports.list

$ sudo apt-get update
$ sudo apt-get -t wheezy-backports install linux-image-amd64
$ sudo apt-get -t wheezy-backports install linux-headers-amd64 
$ uname -a
Linux butterfly 3.14-0.bpo.1-amd64 #1 SMP Debian 3.14.7-1~bpo70+1 (2014-06-21) x86_64 GNU/Linux

Easy right? Straight forward right? Wait until you reboot your machine...
$ sudo reboot

X can't start due to incompatible Nvidia drivers with the Kernel. Virtualbox also won't load as well. Remove and update the Virtualbox's Dynamic Kernel Module Support (DKMS) since it's does not come together with the GNU/Linux source.
$ sudo apt-get remove virtualbox-dkms
$ sudo apt-get -t wheezy-backports install virtualbox-dkms
$ sudo reboot

Everything seems okay. No conflict and failure during booting.

Next, the Nvidia's DKMS.
$ sudo apt-get remove nvidia-kernel-dkms
$ sudo apt-get -t wheezy-backports install nvidia-kernel-dkms
$ sudo reboot

Still can't get X to show up. Check the kernel log.
$ dmesg | grep nvidia

[   65.677942] nvidia: Unknown symbol acpi_os_wait_events_complete (err 0)

acpi_os_wait_events_complete (err 0)? It seems the Nvidia is/was ? A bit lacking behind following changes with the Kernel API with their driver. Patching it manually did not solve the issue.

Unfortunately have to purge all Nvidia driver and switch to
$ dpkg --get-selections | grep nvidia | xargs sudo aptitude purge --assume-yes
$ sudo rm /etc/X11/xorg.conf
$ sudo rm /etc/X11/Xorg.conf.d/20-nvidia.conf
$ sudo apt-get install -t wheezy-backports xserver-xorg-video-nouveau
$ sudo reboot

Update the xrandr to relect driver changes so that the dual-monitors will work again. Nouveau driver is noticeable dog slow, not a pleasant experience especially when watch YouTube as it can hang occasionally for some unknown reason.

Lesson learned. Upgrading backports kernel in Debian is not that straight forward. Should I switch to to AMD ATI card instead? Do not foresee myself getting any Nvidia hardware in coming years.