Archive for the ‘Computers’ Category

Debian on a Lenovo x121e

Sunday, May 4th, 2014

I was looking for an ultramobile notebook with the following requirements:

  • Smaller than the Lenovo Thinkpad x230
  • Trackpoint
  • Decent hardware (especially RAM)
  • Long battery

and finally found a good contester: Lenovo Thinkpad x121e.

Since barely any models with a compatible formfactor feature a trackpoint, the alternatives like the Edge E135 or E145 were also from lenovo.

The decision towards the x121e was made because of the supposedly more sturdy housing, the still decent hardware and the lower price.

I didnt find a well priced model with the Intel i3, so i got one with the AMD 450 and the RAM upgraded to 8GB. Instead of the 320GB harddrive, i invested in a Samsung 840 Evo SSD with 120GB.

Operating System Install
The OS should be a Debian, so i got the 7.4 amd64 netinstall CD and connected an external USB-CDROM drive to the x121e. As always with no-drive notebooks, installing the OS could be also done by putting the SSD into a different computer or booting via network.

Wired network is required anyway though, since the driver for the wireless adapter is not included. Also make sure the battery is fully charged or use the power adapter.

The install procedure itself is pretty straight forward, once booted from the CD, i basically just did:

  1. in the inital boot menu, select expert install
  2. Choose language and keyboard
  3. choose extra packages: network console to continue via ssh (optional)
  4. detect network (only finds wired connection), rtlwifi/rtl8192cfw.bin for wireless is missing (will install later)
  5. configure network: dhcp or static, according to network infrastructure
  6. continue installation remotely (define a password and note the ip adress, optional)
  7. partition disks: guided encrypted lvm (but deleted logical volumes to change sizes), 4.4GB (swap), 10GB (root), 105GB (home) to 8GB, 20GB, 91GB (/boot is not encrypted at around 250MB)
  8. linux-kernel-amd64 and targeted
  9. deselect desktop environment, choose ssh-server to continue install remotely (see screenshot)
  10. install bootloader (grub) and finish installation
Selection in Debian Installer

Selection in Debian Installer

Some information could be used from a similar device/OS description from debian wiki.

Directly after basic install:

root@x121e:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 19223252 1154332 17092436 7% /
udev 10240 0 10240 0% /dev
tmpfs 778596 368 778228 1% /run
/dev/mapper/x121e-root 19223252 1154332 17092436 7% /
tmpfs 5120 0 5120 0% /run/lock
tmpfs 1557180 0 1557180 0% /run/shm
/dev/sda1 233191 10600 210150 5% /boot
/dev/mapper/x121e-home 88123672 188124 83459032 1% /home

root@x121e:~# free -m
total used free shared buffers cached
Mem: 7603 250 7353 0 26 147
-/+ buffers/cache: 76 7527
Swap: 7719 0 7719

Additional packages
Packages needed to tweak the performance, silence the fan and get a GUI are the following (root required)

apt-get update

apt-get install i3 firmware-realtek thinkfan lm-sensors lightdm lxterminal

and packages i like to have as well

apt-get install screen sudo htop powertop vim xinput wicd chromium xfce4-power-manager alsa

Configure Thinkfan
Without thinkfan, the fan is quite noisy. There are a couple of resources for thinkfan or in german on Also, more specifically for the x121e, i found descriptions at and solutionlocker blog.

Watch out, if the x121e has an AMD CPU, there is no coretemp module, instead its called ‘k10temp’.

Configure Graphics Card
To get the most out of the graphics hardware, the proprietary “fglrx” drivers worked for me. The performance of “flg_glxgears” improved from around 40FPS to 330FPS. Instructions on how to install the drivers can be found in debian WIKI. It basically boils down to the following

sudo apt-get install fglrx-drivers

sudo aticonfig –initial

Attention, this way will download quite some packages in order to compile the drivers via DKMS.

Other Notes

  • with xinput installed, disable touchpad:

    xinput –list && xinput set-prop ID “Device Enabled” 0

  • suspend/hibernate just worked out of the box via xfce4-power-manager, otherwise extra packages might have to be installed

    Playing Fallout 3 on Linux with PlayOnLinux and Steam

    Wednesday, September 25th, 2013

    This week I bought a bottle of “Nuka Cola” ( in a geek shop which has opened in Munich recently. This remembered me of the good time I had when playing Fallout 3 – so I decided to give it a try to get the game running on my current Mint 14 machine.

    Remembering I had the game running once using Wine on Snow Leopard, I was confident get it working on Linux, too. I read about something called “PlayOnLinux” some time ago, I wanted to try this handy tool also. And, it really helped me and saved precious time which I would have normally wasted on configuring Wine.
    To keep the long story short, here my approach:

    – get PlayOnLinux (apt-get install playonlinux)
    – install Steam inside of PlayOnLinux (the automatically chosen version of Wine 1.5.25 works fine for me)
    – install d3dx9 and msasn1 packages for the Steam virtual drive
    – start steam, log in with your account and install Fallout 3
    – launch Fallout 3 and have fun!

    The game runs fine with me GeForce 210 graphics card and the NVIDIA binary Xorg driver (304).

    Fast merge of multiple jpgs to a single pdf

    Wednesday, May 9th, 2012

    If you want to merge several images (e.g.) jpg to a single pdf, probably after scanning them, just use

    convert *.jpg output.pdf

    So simple.

    How to resize your virtualbox harddrive

    Tuesday, July 26th, 2011

    This was my situation: Ubuntu 10.04 i686 Host, Ubuntu 10.04 i686 Guest, VirtualBox 4.0.12, dynamic virtual guest hard drive with 8GB, which were simply too few.

    Searching the VBox-Forums, it seems there are a couple of ways to increase the disc space of your dynamic virtual harddrive, the way also depends on your host/guest combination.

    You might want to look into CloneVDI, a tool that lets you do many things with your VDI. The Post on the VBox-Forums can be found here: CloneVDI Discussion and Support.

    I followed the instructions from this post, which seemed to fit my combination just fine. All you need is another guest linux, which happened to be another Ubuntu 10.04 for me. I will call this guest tmp-guest.

    First, shut down the guest with the too-small harddrive, which i will call original.vdi. Then goto the vbox settings of your tmp-guest and select the storage tab. There you can add another harddrive to the controller, which will be a new harddrive. Follow the guide to create a harddrive with the desired size (e.g. 15GB for me). I will call this the new.vdi.

    After that, stay in this section and also add the original.vdi harddrive (by choosing “select existing harddisk” in the guide). You should now have the harddisk of the tmp-guest, the newly created big new.vdi and the original.vdi attached to your tmp-guest.

    Now boot up your tmp-guest and install e.g. “gparted” by doing:

    sudo apt-get install gparted

    The operations done by gparted could also be done via the LiveCD, where the .iso can be mounted by virtualbox, if you dont want to install gparted to your tmp-guest.

    Before we can resize the virtual harddrives, we need to clone the original.vdi to the new.vdi. This can be achieved with the following command:

    dd if=/dev/[device of original.vdi] of=/dev/[device of new.vdi] bs=1M conf=noerror

    The device will probably be /dev/sdb for the original.vdi and /dev/sdc for the new.vdi, /dev/sda is the harddrive of your tmp-guest. Depending on your configuration this could be totally different though, so its better to verify that you copy the right devices.


    If you know the harddrives UUID’s, you could use the command


    to identify the devices. Another option is to use

    fdisk /dev/sdb

    and hit the “p” option to show the details of this device. Pay attention to quit fdisk with “q” so that no changes are written. The new.vdi will not display proper information, since now partitions were created in it.

    One could also install “smartmontools” (sudo apt-get install smartmontools) and use the command:

    sudo smartctl –all /dev/sdc

    to get information on that device.

    Assuming the dd command was successfull, you will see the transfer stats like

    8589934592 bytes (8.6 GB) copied, 416.04 s, 20.6 MB/s

    Now new.vdi contains an exact mirror of original.vdi, but the extra space is not yet available. This will be fixed by gparted.

    Start gparted and select the new.vdi device from the top right (should be 15GB or whatever your new size is). Right click on the 8.6GB of partition (left) and select resize. Draw the border all the way to the right (this uses all the available space) and click OK. These changes have to be applied (green arrow on middle).

    Now your new.vdi contains the data of your original.vdi but has some extra space.

    Shut down your tmp-guest, go back to the settings, detach the new.vdi and original.vdi from your tmp-guest, remove the original.vdi from your original guest and add the new.vdi instead. You should be able to boot the new.vdi without problems and TADA, more space!

    One note, if you have different snapshots and want to merge them into a .vdi, you have to delete the previous stages from the snapshowview. Otherwise, snapshots are stored as a difference to the vdi and you will have an old snapshot in your new.vdi.

    See this post on how to merge a vdi with a snapshot.

    If you have trouble, removing your original.vdi, e.g. because of the error

    “… has more than one child hard disk”

    it might still be attached somewhere. This can be resolved in the Virtual Media Manager, which shows the machines, an image is attached to. For further guidance, please see this post or this blog entry.

    For windows guests, this blogpost might be helpful.

    Fujitsu Point 510

    Thursday, October 21st, 2010
    So i have this Fujitsu Point 510 ancient TabletPC that i play with once every 6 months. Its a pretty old device (i think from 1991 or so) but that doesnt make it any less intresting!

    It features a 10.4″ resistive touchscreen, some extra buttons (for rightclick, contrast, soundlevel), indicator lights for HDD, battery, operation, builtin mic and speaker, a place for the pen to reside, IR, DSUB-9 serial, PS2 for a keyboard, two (i think) proprietary connectors (printer/dockingstation maybe) and a PCMCIA Slot for 16bit cards. Yes, its one slot, but it can handle those cards that need two slots because of their size.

    Internally it has a 100Mhz AMD CPU and 8MB of soldered RAM which can be expanded easily with two modules. More on those two later. Also, there is room for a 2.5″ IDE harddrive (i have read about some upper size limits somewhere) which is about 3GB big.

    On the CPU and again on the case itself, it states that this machine is designed for Windows 95. Actually, Windows 95 runs pretty smoothly on there (check out the Solitaire Animation on YouTube) and there are actually still drivers available from here (just select TabletPC->Point, all the drivers there should work since the hardware didnt really change between the versions). But then again, Windows 95 is just not quite ready for nowadays tasks, especially network/internet or multimedia. And who still supports Win95?

    So now there are two options: install Windows98SE or install Linux. For the Linux part (which i will do eventually hopefully [probably in 6 months, or later], please check the links at the end). For the Windows98SE part, go on reading.

    Since the Point 510 doesnt provide a Floppy or CD drive (one could try PXE or CD via PCMCIA), its probably the easiest to take out the harddrive, plug it onto a 2.5″ to 3.5″ adapter and put it into a regular PC. Taking out the harddrive is quite easy since its installed in a booth which can be taken out after loosening one screw on the side.

    Once you have the Win98 (se) CD in the drive (you either need a bootfloppy or a bootcdrom, i used a win98 boot cdrom which loads CD-Rom drivers from the installation is relativly straight forward. One thing i strongly advice is to boot up your system on the Host and copy the whole CD contents to the harddrive. Windows98 will ask you for the CD whenever you even think about changing a driver or adding a new software component. You should also install the touchscreen drivers (using the windows 95 ones works just fine), because otherwise you will be stuck with a system that you cant control. Afterwards, put the harddrive back and it should work allright.

    Things i didnt get to work: any form of networking :(

    In order to get a little more bang out of your point, you can overclock the CPU to 133Mhz and install more RAM. First the easier part, which is installing more RAM.

    On the back of the Point 510 is a compartment which houses two slots for 72pin 3.3V EDO SODIMM Laptop RAM modules. Those a quite rare nowaydays but i found a store on Ebay that still sells them. They ship overseas, are totally nice and: it works! I ordered two 16MB modules and two 32MB modules just to try some combinations. Everything but the 32MB+32MB+8MB (builtin) combination worked. The 64MB would show up in the BIOS check, but the system wont continue to boot. So if one were to remove the internal 8MB, it might work. So my machine runs with 56MB (32MB+16MB+8MB).

    bios point 510

    Another intresting detail in the above image is the frequency of the AMD CPU beeing 133Mhz instead of 100Mhz. This can be achieved by a hardware modification.

    Be warned, this should just show you how to do it, its not a garantuee that you wont break your device. All modifications are done at your own risk!

    First of all, you need to disassemble the whole device. Its always good to remove the battery, harddrive and RAM, then loosen all screws (you will need torx and a phillips screwdriver) and then cautiously crack open the case. Some wire will be attaching the screen and the board, but they can be unplugged easily. The next step is to unmount the motherboard from the case since the CPU is on the other side underneath a silver heatdissipater, which you have to remove as well. You should see the following:

    Point510 Board before modification
    Point510 Board before modification

    Now according to this Post, Pin11 of the CPU selects the frequency. If its high or undefined, the selektor will result in 100Mhz, but if its pulled to ground, it will result in 133Mhz. Luckily, the layout of the board already has a little slot for R7, which is not equipped but will connect Pin11 to ground. So the modification is rather simple. Just take the leg of a resistor (or some other wire), cut it to length, connect the two points of R7 and Pin11 will be grounded. My modification looks like this:

    Point510 modification
    Point510 modification

    Before you reassemble the Point, try out if it still boots (hookup the screen and power). If it does: congratulations!

    Since Windows98SE didnt quite fullfill my needs, installing Linux (some stripped down gentoo maybe) will be one of my future projects.

    UPDATE: another modification i did was to take a cf-to-ide (2.5) adapter and plug it into the Point510, instead of the harddrive. Now its totally passive, should use less power and is of course much more quiet. works like a charm. maybe its even faster. The adapter can be also bought at ebay.

    Links for Linux on the Point 510:

    More Infos on the Point 510: