Tag Archives

13 Articles
Multipath TCP (MPTCP)

Multipath TCP (MPTCP)

MPTCP adalah sebuah ekstensi protokol TCP untuk menggunakan beberapa IP sebagai jalur-jalur transportasi dalam jaringan. Hal ini menambah kehandalan dan kecepatan transfer. Fitur ini dapat dicapai dengan memodifikasi paket TCP.

Fitur ini tak asing lagi bila kita menggunakan SCTP. Sayangnya, secara de facto Internet masih menggunakan TCP/IP. Jadi, penambahan fitur seperti ini kepada TCP sangat bagus karena kompatibel dengan sebagian besar orang.

Siapa mau coba di peladennya?

Printer Scanner EPSON L210 in Ubuntu 13.10 Saucy

Printer Scanner EPSON L210 in Ubuntu 13.10 Saucy

Still in the same story of Ubuntu 13.10. The vendor also provided EPSON L210. This printer is economic and it has big toners. So, yeah, then again I think they made a good deal with this vendor.

Just google it up, because the EPSON Indonesia’s Terms of Use  prohibited me from taking any of their pictures.

According to OpenPrinting, EPSON L210 have epson-201207w official driver. Hmm… I wonder why they haven’t included it into the Installation CD in Indonesia. To download it, follow the link to the download page. They might be have updates from time to time. Or, just use the later.

I used the first method: (ethically, you must agreed with their terms first before you go download these)

$ wget http://a1227.g.akamai.net/f/1227/40484/7d/download.ebz.epson.net/dsc/f/01/00/01/87/87/126d18060d9881eaed0ff545ad711bd4e642b62a/epson-inkjet-printer-201207w_1.0.0-1lsb3.2_i386.deb

Download also the Scanner driver: (ethically, you must agreed with their terms first before you go download these)

$ wget http://a1227.g.akamai.net/f/1227/40484/7d/download.ebz.epson.net/dsc/f/01/00/02/50/83/cdca0d1272f76cb915b90784e27afc03a055ac19/iscan_2.29.3-1~usb0.1.ltdl7_i386.deb
$ wget http://a1227.g.akamai.net/f/1227/40484/7d/download.ebz.epson.net/dsc/f/01/00/02/50/83/cdca0d1272f76cb915b90784e27afc03a055ac19/iscan_2.29.3-1~usb0.1.ltdl7_i386.deb

Install all:

$ sudo dpkg -i *.deb

And it would be normally error because of the absent of dependencies. Install the dependencies and the packages:

$ sudo apt-get -f install

Install XSane for scanner application:

$ sudo apt-get install xsane

GIMP could detect XSane when installed and took it as GIMP’s plugin. Enjoy!


TP Link TL-WN725N in Ubuntu 13.10 Saucy

TP Link TL-WN725N in Ubuntu 13.10 Saucy

TL-WN725N, image taken from TP Link's site.

TL-WN725N, image taken as is from TP Link’s site. Used according to TP Link’s site Terms of Use.

I was helping some folks setting up their PC. They used Edubuntu 13.10 and using a broadband provider. They got a modem connected into a Wireless LAN Access Point (WLAN AP).

They brought TP Link TL-WN725N to connect into the AP. It was suggested by their vendor. Well, it was a cheap one, so I think the vendor was right.

Unfortunately, installing it on Ubuntu 13.10 (Saucy) variant wasn’t that easy. Ubuntu 13.10 came with 3.11 kernel. After a long search, I have came up with solution. So, I wrote this tutorial for others to find.

Cut The Chase and Go On

To install this, make sure the PC got the right packages for building kernel modules.

sudo apt-get install linux-headers-generic build-essential dkms

Optionally, if you haven’t got GIT, install it:

sudo apt-get install git

Then, grab the driver’s source code:

git clone https://github.com/lwfinger/rtl8188eu

Get into the directory.

cd rtl8188eu



And install.

sudo make install

Don’t forget to reload the kernel modules dependency.

sudo depmod -aq

Reboot, and enjoy.

Kompilasi Kernel BlankOn

Kompilasi Kernel BlankOn

cat > blankon-sources.list << .
deb-src http://kambing.ui.ac.id/blankon rote main extras
deb-src http://kambing.ui.ac.id/blankon rote-security main extras
deb-src http://kambing.ui.ac.id/blankon rote-updates main extras

sudo mv blankon-sources.list /etc/apt/sources.list.d/
sudo apt-get update

sudo apt-get install kernel-package fakeroot
apt-get source linux-3.2
cd linux-3.2.23

cp /boot/config-3.2.0-3-amd64 .config
make menuconfig

 Processor type and features  --->
    Processor family (Generic-x86-64) --->
        (X) Core 2/newer Xeon

Pilih-pilih yang lain! Kalau sudah puas pilih Exit beberapa kali dan Save.

make-kpkg clean
fakeroot make-kpkg --initrd --revision=24022013.jp1 kernel_image kernel_headers

Bermain bersama keluarga, menyapa Ayah/Ibu/Adik/Kakak, makan/bobok siang dulu. Lakukan itu sampai kompilasi habis.

sudo dpkg -i ../*.deb
Memasang pf-kernel untuk BlankOn Rote

Memasang pf-kernel untuk BlankOn Rote

Kernel pf-kernel merupakan kernel yang telah ditambal dengan hal-hal berikut:

  • Penjadwal CPU BFS yang dibuat oleh Con Kolivas. Penjadwal CPU ini dioptimasi untuk pengguna Desktop.
  • Penjadwal I/O BFQ. Penjadwal I/O ini dioptimasi seperti BFS sehingga memberikan optimasi kepada respon yang lebih interaktif.
  • TuxOnIce, sebuah infrastruktur  suspensi sistem yang cocok digunakan untuk laptop.
  • UKSM (Ultra KSM), sebuah perkakas kernel yang menyatukan setiap page di memori yang identik sehingga hanya satu saja. Cocok untuk aplikasi virtualisasi atau aplikasi yang menggunakan proses berbeda tetapi isinya sama (Google Chrome).

Seperti biasa, tambahan ini belum tentu untuk Anda. Jadi, berhati-hatilah dalam memasang kernel baru.

Untuk memasangnya:

$ wget http://pf.natalenko.name/binaries/debian/3.7.4/linux-{image,headers}-3.7.4-pf_1_i386.deb
$ sudo dpkg -i *.deb

Ganti i386 dengan amd64 untuk arsitektur 64bita. Saat ini yang terbaru adalah versi 3.7.4-pf.  Anda bisa cek versi yang lebih baru di situs utama.

Get Juicy Sound Out of OpenSound System 4 (OSS4)

Get Juicy Sound Out of OpenSound System 4 (OSS4)

Well, they said that 90% of the population would not notice the difference. But, since I have the right equipment, a good headset and a handful of ripped songs from original CD that I own, I think this could make the difference. To make it that nobody asking foolish question, I have set the requirement so that you could do this on your own:

  1. Know how to ask politely.
  2. Know how to compile.
  3. Can open a terminal.

If you can do that, then proceed.


The new kernel configuration take OSS names as ALSA’s. This makes people can’t load OSS4 on vanilla kernel. If you compile your kernel, please make sure that OSS preclaimed is disabled. In menuconfig the option is in:

Device Drivers -> Sound card support -> Preclaim OSS device numbers

Make sure to uncheck there and you can have ‘alternative’ OSS implementation, i.e. OSS4.

Fortunately, the stock kernel from Debian and Ubuntu don’t implement that, cmiiw.

Compile the kernel, install it and you’re set. Oh, btw, don’t forget to install Mercurial, the DVCS. Opensound uses it instead of GIT (no flamewars intended).

Get the OSS4

The opensound source have moved to Sourceforge for some times now. So, the command:

$ hg --verbose clone http://opensound.hg.sourceforge.net/hgweb/opensound/opensound/

Wait and you are done.

Configure OSS4

Go to the source directory and creates an empty directory to build the source. It is a new, and a good, convention to seperate build directory and source directory.

$ cd opensound && mkdir bangun-gentoo64 && cd bangun-gentoo64

Let’s configure it:

$ ../configure --config-vmix=FLOAT --config-midi=YES --enable-timings

There is a bug in installing OSS4 to my work machine (Gentoo 64bit). It failed to install because it failed to copy libraries into “/usr/lib”. Apperantly, the path is a symlink to “/usr/lib64”. So, if you are in the 64bit and having trouble, you could edit Makefile in your build directory (mine is “opensound/bangun-gentoo64”). Change




There is also a bug in the configure script that define the wrong value of maximum GRC  quality. Open “kernel/framework/include/local_config.h” and change




As I found out, there is a bug that makes me can’t install OSS4 because it failed to find “ubuntu_version_hack.inc”. The problem is because it doesn’t get copied. According to cesium, edit the  “setup/Linux/make.local” file and change

cp -R prototype/* /


(cd prototype; find -L . -type f | cpio -pud /)

That’s on line 6, in my case.

Compile and Install

Now, compile it and install it:

$ make -j4 && sudo make install

I edited the “/etc/oss.conf” and change the “/usr/lib/oss” into “/usr/lib64/oss”.

Reboot and enjoy. To enable OSS4, just do:

$ sudo soundon



Cesium. OSS4 Forum. http://www.4front-tech.com/forum/viewtopic.php?f=3&t=3543#p14102

Driver for U.r.U 4500 in Kernel 2.6.36

Driver for U.r.U 4500 in Kernel 2.6.36

It seems the Linux kernel getting another ABI change for USB in 2.6.36. function


is being deprecated for a while and now being removed. It is changed with function 


. The parameter also changed.

Here’s the chunk of changes that would gives you idea of what changed:

<2.6.36 2.6.36+
ioctl   = usbdpfp_ioctl
.unlocked_ioctl   = usbdpfp_ioctl
usbdpfp_ioctl(struct inode *inode, struct file *file, unsigned int cmd, usbdpfp_ioctl(struct file *file, unsigned int cmd,
static int usbdpfp_ioctl( static long usbdpfp_ioctl(

That’s not all of the code, but you get the idea. The


is changed. Every


calling is having one less parameter. The return is no longer





According to Alex comment in my previous post, the UDEV rule also changing. Every USB device is default installed in /dev/usb directory. That’s why we have to make an adjustment in udev rule. As usual, I’m uploading the whole code here. As usual, remove the .pdf extension.

Sedang Masak Apa?

Sedang Masak Apa?

Ugh, sebal sekali! Opera 10.60 saya baru saja menghapus sebuah entri panjang telah capek saya tulis! Ini sudah yang kesekian kali. Ingatkan saya untuk menulis blog dengan peramban yang stabil. [Ugh, padahal saya pencinta Opera, tidaaaaak…. ;-(] Maka, kali ini saya menulis dari Firefox 3.6.8 versi (jauh lebih) ringkas dari apa yang saya tadi tulis. Intinya, minggu ini adalah minggu optimasi dengan topik:

  1. Penataran aplikasi e-Akses dengan kemampuan CSS3, HTML5, dan Javascript.
  2. Penggunaan Hoard untuk Proxy.
  3. Optimasi kernel linux 2.6.35 untuk penggunaan I/O yang berat (dah-dah lemot!)

Read More

Journey Log 3: A Glitched Upgrade

Journey Log 3: A Glitched Upgrade

This morning I upgraded my workstation which runs Lucid. I have found that there are 2 failed upgrades. The solution to those packages are trivial.


The first problem  encountered is


that failed to found “


“.  After a quick check on “


” directory, I found out that the given file was named “


“. Thus, solution should be an alias:

$ sudo ln -s /lib/udev/firmware /lib/udev/firmware.sh

After  that, I ran the Debian’s configuration:

$ sudo dpkg --configure -a

It then hits the second configuration

Virtuoso Server fails

If you are using Kubuntu, which using Virtuoso for her semantic things, most likely you would encounter this error. The Virtuoso was 5.x version, but the one that would be installed is 6.x version. So, there are some new packages that need to be installed. Fortunately, it is easy enough to do so:

$ sudo apt-get install virtuoso-opensource-6.0-common
$ sudo apt-get install virtuoso-opensource-6.0

In Debian, *


is a virtual package to install the given software. But, here I must install the


virtual package manually. Well, after that two installs, the upgrade went smooth.


fix from :

Ubuntu/Lucid: recovering from yesterday’s messy update

Yesterday a silly oversight in the packaging of udev in Ubuntu/Lucid produced a breakage that consistently makes dpkg barf. Here’s a simple command line recipe to recover from it. In your terminal application, type: sudo sed -i ‘s#copy_exec /lib/udev/firmware.sh#copy_exec /lib/udev/firmware#’ /usr/share/initramfs-tools/hooks/udev && sudo dpkg -a –configure && sudo aptitude update && sudo aptitude safe-upgrade …then press enter.

$ wget http://launchpadlibrarian.net/39011493/udev-firmware.patch && sudo patch -p0 < udev-firmware.patch && sudo dpkg -a --configure && sudo aptitude update && sudo aptitude safe-upgrade
Driver for U.r.U 4500 in Kernel 2.6.31

Driver for U.r.U 4500 in Kernel 2.6.31

I was having trouble with using kernel 2.6.21 that get supported by default UrU kernel, the X server refused to run. So, in my despair, I view some LKML threads, patch here and there: Voila! I got a working  Kernel driver for U.r.U fingerprint for Linux kernel 2.6.31. [NOTE: Remove the .pdf extension.]This patched driver has been working in Debian’s 2.6.31-trunk and Ubuntu Karmic, my fave distro at the momen. The installation is simple and described here.For the sake of KISS, I will try to cover it for you.

$ mv dpfp-2.6.31.tar.gz.pdf dpfp-2.6.31.tar.gz
$ tar xvfz dpfp-2.6.31.tar.gz
$ cd source
$ make

And then install it to your kernel:

$ sudo mkdir /lib/modules/`uname -r`/kernel/drivers/biometric
$ sudo cp mod_usbdpfp.ko /lib/modules/`uname -r`/kernel/drivers/biometric/
$ sudo depmod -aq

Then you can abuse it the way you feel. This kernel has been tested worked on UrU 4500 and UrU4000B.