Showing posts with label gentoo. Show all posts
Showing posts with label gentoo. Show all posts

Sunday, May 09, 2010

Gentoo pwn3d Snow Leopard

2 comments
Sebenarnya sudah lama juga baca-baca soal Gentoo Prefix ini, tetapi belum juga kesampaian untuk mencobanya, sampai akhirnya pagi ini baru ada waktu lowong sambil ngerjain pekerjaan listrik-melistrik :lol: dan juga baru selesai nge-backup ke TimeMachine sehingga tidak ada alasan lagi untuk tidak mencobanya.

Gentoo Prefix adalah salah satu projekt yang bertujuan agar sistem operasi Gentoo khususnya package manager (portage) yang dimiliki oleh Gentoo dapat di nikmati di berbagai Arsitektur dan sistem operasi lain, Sejauh ini Gentoo Prefix telah berjalan di Mac OS X (PPC atau intel), Linux (x86, x86_64 dan ia64), Solaris 10 (Sparc, Sparc/64, x86 dan x86_64), FreeBSD (x86), AIX (PPC), Interix (x86), Windows (x86 dengan Interix) and HP-UX (PARISC dan ia64)

Adapun kelebihan yang menonjol dari Gentoo Prefix, selain karena ini Gentoo :) adalah:

  1. Memberikan dukungan userland dari berbagai Tools GNU di berbagai sistem operasi (sed, awk, grep, tar, dsb)
  2. Installasi aplikasi tidak akan merusak host OS 
  3. Kemampuan Instalasi dan operasi tanpa Privilige Administratif
  4. Untuk meng-uninstall-nya cukup dengan menghapus (rm -rf) Prefix direktori ($EPREFIX)
Cara instalasi untuk OSX di jabarkan dengan jelas di sini, gw membutuhkan waktu lebih kurang 8 jam untuk melakukan instalasi (bagi anda yang tpernah melakukan instalasi Gentoo, hal ini tidaklah aneh dan masih termasuk waktu yang cepat :P), tetapi hal ini juga dikarenakan koneksi super cepot yang gw miliki :P (mungkin bagi pemilik koneksi super cepat akan lebih cepat) serta Lebih kurang 1 GB alokasi space.

Baiklah, agar lebih mudah untuk dimengerti sebagai contoh sederhana adalah instalasi Aplikasi Nikto yang tidak terdapat pada MacPort tree, meskipun kita bisa saja melakukan instalasi/kompilasi aplikasi tersebut secara manual. 


Tetapi, dikarenakan nikto terdapat pada Portage Tree milik Gentoo (prefix) maka kita cukup melakukan emerge paket Nikto, dan kita juga pahami disini bahwa eksekusi nikto hanya dan akan berjalan di Prefix ($EPREFIX) yang sudah kita tentukan. Gentoo Prefix, juga merupakan salah satu Alternatif selain MacPort, dan Fink.

Dan tentunya banyak lagi hal-hal yang bisa anda eksplorasi karena anda memiliki sistem operasi Gentoo didalam Snow Leopard anda :). Layak untuk di coba khususnya untuk anda yang merasa rindu dengan Gentoo :)

Tuesday, December 08, 2009

Installing Pentoo Linux 2009.0

11 comments
Baru hari ini bisa kembali mencoba-coba meluangkan waktu sedikit untuk "kembali ke jalur" dan untuk meng-update blog ini, setelah beberapa minggu ini di sibukkan dengan Mac server, Open Directory, Apache, PHP, Mysql, ssl dkk terkait migrasi, upgrade, installasi dkk.


Hari ini juga baru sempat cobain pentoo linux, suatu distribusi linux berbasiskan gentoo yang mengkhususkan untuk penetration testing dan security assessment. Setelah sekilas mencoba pentoo linux live-cd, akhirnya gw putuskan untuk melakukan installasi.

Petunjuk installasi live CD dapat dilihat di http://trac.pentoo.ch/wiki/Livecd/Installation, jangan lupa mengkonfigurasi file /etc/fstab, grub.conf, file konfigurasi di /etc/conf.d, dokumentasi inipun menjadi sangat berguna, setelah hampir beberapa bulan tidak menggunakan Gentoo :)

Sebelumnya, pilihan gw adalah backtrack-4 "pwnsauce" , Tetapi setelah melihat tampilan dari Enlightenment Window Manager yang digunakan oleh Pentoo sangat bertolak belakang dengan KDE yang digunakan oleh bt4, serta theme yang simple tapi powerfull membuat gw tertarik untuk melakukan installasi-nya, di samping Gentoo yang menjadi basis dari distro ini.

Penggunaan distro yang di khususkan untuk pentest dan assessment ini sangat memudahkan gw, walau tetap saja kustomisasi sangat perlu di lakukan untuk kebutuhan gw. Mudah-mudahan, akan banyak cerita yang akan gw bagi disini tentang Pentoo, karena otomatis Pentoo akan menjadi salah satu distribusi yang akan sering gw pakai disamping OS reguler dari mac pro :D

Monday, October 12, 2009

RT @Gentoo Blog: Happy Tenth Birthday, Gentoo!

3 comments
Happy Tenth Birthday, Gentoo!

Update Gentoo Live DVD 10.1

Gentoo Linux is proud to announce the immediate availability of a new,
special edition LiveDVD
to celebrate this monumental occasion. The LiveDVD
features a superb list of packages, some of which are listed below.



  • System packages include: Linux Kernel 2.6.30 (with gentoo patches),
    Accessibility Support with Speakup 3.1.3, BASH 4.0, GLIBC 2.9, GCC 4.3.2.
    Binutils 2.18, Python 2.6.2, Perl 5.8.8, and more.
  • Desktop Environments and window managers include: KDE 4.3.1, GNOME
    2.26.3, Xfce 4.6.1, Enlightenment 0.16.8.15, Openbox 3.4.7.2, Fluxbox 1.1.1,
    TWM 1.0.4, and more.
  • Office, graphics, and productivity applications include: OpenOffice
    3.1.1, G/Vim 7.2.182, Abiword 2.6.4, GNUCash 2.2.9, Scribus 1.3.3.11, GIMP
    2.6.4, Inkscape 0.46, Blender 2.49a, XSane 0.996, and much more.
  • Web browsers include: Mozilla Firefox (Minefield) 3.5.3, Arora
    0.7.11, Opera 10.0, Epiphany 2.26.3, Galeon 2.0.4, Seamonkey 1.1.17, and
    other favorites.
  • Communication tools include: Pidgin 2.5.9, Quassel 0.5, Mozilla
    Thunderbird 2.0.23, Claws Mail 3.7.2, Ekiga 2.0.12, Qtwitter 0.7.1, irssi
    0.8.13, and many more.
  • Multimedia applications include: Amarok 2.1.1, MPlayer 1.0_rc4,
    DvdAuthor 0.6.14, LAME 3.98.2, FFMPEG 0.5_p19928, GNOME-MPlayer 0.9.7,
    SMPlayer 0.6.6, and several others.
The Gentoo-Ten LiveDVD is available in two flavors, a hybrid x86/x86_64
version, and an x86_64-only version. The livedvd-x86-amd64-32ul-10.0 will work on x86 or
x86_64. If your arch is x86, then boot with the default gentoo kernel. If
your arch is amd64 boot with the gentoo64 kernel. This means you can boot a 64bit kernel and install a customized 64bit userland while using the provided 32bit userland. The livedvd-amd64-multilib-10.0 version is for x86_64 only.


Please select your architecture to be redirected to a mirror for download: x86 amd64

A FAQ is available to assist you. We have also started a thread in our Forum. Please post any bugs you encounter.

In addition, we have some exceptional new artwork from Ben Stedman, and Gentoo Developer Alex Legler.

Thank you for your continued support,
Gentoo Linux Developers, The Gentoo Linux Foundation, and The Gentoo-Ten Project

Kinda late, but why bother ... hurry up grab your 10.0 gentoo dvd RT @Gentoo Blog: Happy Tenth Birthday, Gentoo!

Friday, July 17, 2009

Bug lucu pada ebuild ruby-gnomecanvas2

3 comments
Sebenarnya ini termasuk bug lucu, cuma karena versi paket yang dibutuhkan itu sebenarnya belum tersedia di portage tree, ntah para developer ruby yang mungkin kurang kordinasi atau komunikasi saat merilis paket terbaru, jadinya salah satu ebuild main tunjuk aja ke paket yang belum ada di portage tree.

Bug ini gw temui hari ini dan juga saat gw periksa ternyata sudah di daftarkan di bugs.gentoo.org (gw emang selalu telat kalo mo daftarin bug :P) dengan nomer bug 278061 pada hari ini dan belum ada respon dari pengembang ruby-gnomecanvas2.


Hal ini gw temui saat akan seperti biasa gw mengupdate "world" di neo-venom gw yang ber-OS gentoo,
venom ~ # emerge -upv world

These are the packages that would be merged, in order:

Calculating dependencies... done!

emerge: there are no ebuilds to satisfy ">=dev-ruby/ruby-libart2-0.19.0".
(dependency required by "dev-ruby/ruby-gnomecanvas2-0.19.0" [ebuild])
(dependency required by "dev-ruby/ruby-gnome2-0.19.0" [ebuild])
(dependency required by "dev-ruby/ruby-libglade2-0.19.0" [ebuild])
(dependency required by "world" [argument])


* IMPORTANT: 1 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.
Yup, sedikit kaget juga dengan error seperti ini, karena lucu sahaja, akhirnya gw coba cek itu versi libart2 gw, sapa tau ga up-to-date.
venom ruby-gnomecanvas2 # emerge --search libart2
Searching...
[ Results for search key : libart2 ]
[ Applications found : 1 ]

* dev-ruby/ruby-libart2
Latest version available: 0.16.0
Latest version installed: 0.16.0
Size of files: 1,180 kB
Homepage: http://ruby-gnome2.sourceforge.jp/
Description: Ruby Libart2 bindings
License: Ruby
gak ada yang salah ,versi yang terinstall == versi yang tersedia, akhirnya gw cek aja langsung ebuild dari paket yang komplain, e.g ruby-gnomecanvas2-0.19.0
---- ruby-gnomecanvas2-0.19.0.ebuild ---

RDEPEND="${RDEPEND}
>=gnome-base/libgnomecanvas-2.2
>=dev-ruby/ruby-gtk2-${PV}
>=dev-ruby/ruby-libart2-${PV}"

----
Ya, betul, terdapat dependensi ke libart2(-0.19.0), akhirnya gw search ke bugs.gentoo.org dan menemukan submit untuk bug tersebut, dan jadilah gw memutuskan untuk me"masking" dahulu upgrade ruby-gnomecanvas2 dkk yang terlibat skandal rikues paket yang belum ada :lol:, dibandingkan gw melakukan patch ebuildnya, karena toh apabila beneran tuh paket di rilis, gw tinggal buka maskingnya ..
venom ruby-gnomecanvas2 # cat /etc/portage/package.mask
#paket dodol yang ngerikues paket tuk libart2-0.19.0
>=dev-ruby/ruby-libglade2-0.19.0
>=dev-ruby/ruby-gnome2-0.19.0
>=dev-ruby/ruby-gnomecanvas2-0.19.0
dan jadilah gw ngupdate "world" gw... funny bug f0r t0dayz ..anyway

Thursday, May 28, 2009

Sinkronisasi itouch di Gentoo, Rhythmbox dan GTKpod

0 comments
Mungkin sudah agak lama keinginan gw untuk dapat mensikronisasikan ex1a gw dengan neo-venom gw, terutama untuk urusan maintain lagu, sekaligus maintain photos dsb, untuk urusan kalender dan email langsung gw serahkan ke aplikasi resmi dari ipod touch sendiri untuk berhubungan dengan gmail :).

Berikut adalah kurang lebih cara untuk melakukannya, Langkah pertama dan harus dilakukan adalah melakukan Jailbreak terhadap itouch/iphone milik anda terlebih dahulu, karena jika tidak, gw mohon ga usah diteruskan membaca ini :), Kemudian, di itouch/iphone anda perlu untuk di install applikasi sbb:

- BSD Subsystem
- OpenSSH
- mobile terminal

Selanjutnya, pastikan bahwa kernel di komputer yang dimiliki mendukung FUSE, silahkan periksa file konfigurasi kernel anda,

cat /usr/src/linux/.config | grep CONFIG_FUSE
CONFIG_FUSE_FS=y

Apabila belum?, silahkan kompile ulang kernel anda, dan pastikan fuse terinstall dan di load oleh kernel. Selanjutnya anda harus melakukan instalasi sshfs-fuse, yaitu Fuse-filesystem yang memanfaatkan layanan SFTP/SSH services (layanan ini sangat bermanfaat buat pengguna sftp/scp),

emerge sshfs-fuse

Kemudian, konfigurasikan ssh dengan dukungan tanpa password, anda dapat memanfaatkan dukungan otentikasi RSA. Lalu, anda bisa secara manual melakukan mounting dan unmounting, serta mengkonfigurasikan secara manual folder hasil mount anda yang akan dibutuhkan oleh aplikasi rhytmbox/gtkpod untuk dapat melakukan mounting itouch/iphone anda nantinya,
mounting manual dapat dilakukan dengan perintah
ammar@lenovo9 / $sshfs root@ipod:/var/root/Media /media/ipod

dan unmounting dengan
ammar@lenovo9 / $fusermount -u /media/ipod

Atau anda dapat menggunakan script dari ipod-convenience, tetapi dengan catatan anda merubah terlebih dahulu scriptnya, karena anda akan mendapatkan error "Please add yourself to the fuse group, logout/in and try again.", hal ini disebabkan pada Gentoo (tidak tau pada versi unix/linux lainnya) tidaklah dialokasikan specific user/group untuk fuse (apabila anda melakukan instalasi via portage, lain cerita jika anda mengkompilasi sendiri), sehingga anda perlu memodifikasi script tersebut agar tidak melakukan pemeriksaan saat di eksekusi.

Remark/Delete baris ke 44 sampai 48 pada file/script "ipod-touch-mount & ipod-touch-umount" yang berisi "perintah memeriksa user di grup FUSE" yang tidak berlaku pada Gentoo, menjadi

#Make sure we are in the fuse group
#if ! groups | grep fuse 2>&1 > /dev/null; then
# echo "Please add yourself to the fuse group, logout/in and try again."
# exit 4
#fi

Selanjutnya, anda cuma perlu mengkonfigurasikan file "ipod-convenience (ikuti readme)" dan untuk memudahkan proses mounting anda dapat membuatkan alias untuk device anda (device ex1a gw diberi alias ipod)
ammar@lenovo9 / $ cat /etc/default/ipod-convenience
# iPod Convenience Settings

#This is the area that you will be using
#To mount your iPod or iPhone at
MOUNTPOINT=/media/ipod

#This is the ip address that your iPod or
#iPhone has on your network. It is highly
#recommended that you use DNS or a static
#address
IPADDRESS=ipod

ammar@lenovo9 / $ cat /etc/hosts | grep ipod
192.168.16.113 ipod
ammar@lenovo9 / $

Aplikasi di gentoo yang gw gunakan untuk melakukan manajemen ipod gw adalah RhythmBox dan GTKpod. Adapun untuk aplikasi gtkpod sendiri anda disarankan untuk menggunakan versi gtkpod 0.99.12 atau yang terbaru (gw menggunakan versi 0.99.14), dengan libgpod versi 0.7.2.

Selanjutnya silahkan melakukan add ipod repository di gtkpod anda, dan open folder di Rhythmbox (apabila tidak muncul secara otomatis). Sedikit tips apabila terjadi kegagalan karena DBversion bisa dilihat di sini, meskipun tidak gw temui dan gw berhasil tanpa merubah/menurunkan DBversion di ex1a gw. Beberapa bacaan bagus bisa di lihat disini dan disana.

Oke, selamat menikmati sinkronisasi itouch/iphone anda di GNU/linux dan semoga artikel singkat ini dapat bermanfaat.

Thursday, May 14, 2009

Dissapear but not Gone !

3 comments
"To those who understand, I extend my hand. To the doubtful I demand, take me as I am. Not under your command, I know where I stand. I won't change to fit your plan, Take me as I am" - As I am - Dream Theater

Potongan lirik di atas gw persembahkan buat semua temen yang "concern" tentang blog ini, sebenarnya tidak begitu lama blog ini belum gw update, terakhir gw nulis pada 2 Mei lalu ( tepat 2 hari kelahiran Ali dan ultah Ibu tercinta). Jadi, intinya gw sedikit terharu dengan perhatian teman-teman yang menanyakan "Kok blognya ga ngupdate-ngupdate lagi Om/bos/mar/dips ?"

Baiklah, sebagai "intermezzo" maka posting kalo ini tujuannya buat klarifikasi, informasi, sama nutrisi buat keinginan nulis gw biar ga makin tumpul. Kebetulan 2 minggu kebelakang terjadi hal yang sangat menakjubkan dalam hidup gw, dan kebetulan juga sebagai seorang "pekerja" minggu belakangan ini jadual kerja sangat padat, sehingga lengkaplah sudah, "part time researcher" hanya tinggal seonggok keinginan di otak gw yang ternyata tidak bisa diajak kompromi dengan waktu dan kebutuhan fisik gw untuk istirahat.

Supaya posting ini gak terkesan nge-junk banget, maka berikut trik dari gw dalam melakukan traceroute menggunakan nmap (untuk keperluan mapping jaringan kala pentest net infrastructure), teknik ini sebenarnya untuk mengakali firewall yang melakukan blocking terhadap standard traceroute yang memanfaatkan UDP dengan nomor port tujuan dari 33434 - 33534, atau sebagian OS yang mengikutkan paket traceroute menggunakan ICMP request (echo request, tipe 8). Sebenarnya bisa juga menggunakan tcptraceroute, atau traceroute dengan opsi "-p", tetapi tetap saja paket data (datagram) yang dikirimkan sama, sehingga tidak berlaku untuk jenis firewall yang melakukan inspeksi lebih kepada paket yang di kirim. Selain itu pemilihan nmap lebih karena keluwesan opsi dukungan lainnya seperti "decoy", bypass check host dengan "-PN". Berikut gambaran dari cerita di atas :

angel / # traceroute -p 443 www.very.seku.re
traceroute to www.very.sekure (212.19.2.1), 30 hops max, 60 byte packets
1 192.168.16.1 (192.168.16.1) 0.215 ms 0.215 ms 0.219 ms
2 199.57.68.161 (199.57.68.161) 72.277 ms 72.558 ms 72.987 ms
3 204.99.195.10 (204.99.195.10) 23.367 ms 45.063 ms 47.104 ms
4 some.isp.net (221.147.179.12) 22.612 ms 23.036 ms 45.306 ms
5 other.mama.isp.net (108.10.27.129) 47.765 ms 73.462 ms 101.273 ms
6 another.papa.isp.net (108.100.27.166) 253.139 ms 268.934 ms 296.479 ms
7 112.55.0.129 (112.55.0.129) 45.718 ms 24.767 ms 50.157 ms
8 224.1.165.130 (224.1.165.130) 22.423 ms * 28.496 ms
9 * * *
--- truncated --
30 * * *
angel / #

Dan berikut menggunakan nmap,

angel / # nmap -PN --traceroute --source-port 53 www.very.seku.re

Starting Nmap 4.85BETA8 ( http://nmap.org ) at 2009-05-13 10:50 UTC
Interesting ports on 212.19.2.1:
Not shown: 999 filtered ports
PORT STATE SERVICE
443/tcp open https

TRACEROUTE (using port 443/tcp)
HOP RTT ADDRESS
1 0.13 192.168.16.1
2 880.78 199.57.68.161
3 27.28 204.99.195.10
4 17.56 some.isp.net (221.147.179.12)
5 23.42 other.mama.isp.net (108.10.27.129)
6 751.83 another.papa.isp.net (108.100.27.166)
7 83.74 112.55.0.129
8 76.36 224.1.165.130
9 1328.03 212.19.2.1

Nmap done: 1 IP address (1 host up) scanned in 69.53 seconds
Yes, way to go kiddo :) , sebenarnya banyak lagi jutsu-jutsu mantap yang bisa di gunakan dengan nmap, tetapi yang menarik adalah pernyataan dari fyodor bahwa dalam melakukan OS fingerprinting/scanning " Your best bet is to use numerous reconnaissance methods to explore a network, and don't trust any one of them". Ada satu kasus dalam ujicoba gw bahwa nmap secara pasti memberikan hasil 86% Os dari target adalah FreeBSD, padahal sesungguhnya windows server 2003, hal ini dikarenakan konfigurasi firewall, Os, open port, penghilangan banner dari service/aplikasi dsb, gw kasih trik untuk mendeteksi server windows, lakukan scan dengan opsi "-sU" untuk melakukan scanning port UDP yang terbuka khususnya port 135, 139, 445, dan banyak teknik lain yang bisa di kombinasikan.

Di 2-3 hari terakhir ini gw sibuk mengupdate "partial" gentoo gw ke gnome terbaru "Gnome 2.26", dan seperti biasanya (hehehe), gw perlu waktu cukup lama untuk melakukan "stabilisasi sistem" disamping secara berbarengan terjadi ugrade Xorg dan python, sehingga satu tips/pesan dari gw apabila kalian menemukan kegagalan sistem atau sistem tidak berjalan sempurna setelah melakukan "partial" upgrade dan bukan merupakan kesalahan/bug dari paket atau "ebuild", jalankan "revdep-rebuild" dan "python-updater" (menginggat sebagian aplikasi Gnome saat ini di bangun dengan python).

Yah, mudah-mudahan sedikit sharing kolaborasi 2 minggu terakhir ini dapat menghibur :).

Gambar adalah milik http://stephen60.wordpress.com

Sunday, April 12, 2009

Tutor lengkap upgrade Gentoo 2007.0 ke rilis terbaru

14 comments
Rilis terakhir gentoo sebenarnya adalah Rilis 2008.0 pada juli tahun lalu, dan ini sekaligus menjadi "starting point" terdekat untuk memulai menggunakan gentoo. Sebagaimana keunikan gentoo yang tidak memiliki versi rilis terpisah (seperti distro lainnya), dalam artian tinggal pilih "starting point" selanjutnya tinggal melakukan update menggunakan gentoo package manager seperti portage yang menjadi default, paludis ataupun pkgcore.

Nah, kisah ini dimulai saat neo-venom gw yang kala itu telah ber-kernel 2.6.29 mengalami masalah, ya yang menurut hasil investigasi gw, masalah kompleks ini yang melibatkan hardisk gw. Detil gejalanya adalah sebagai berikut, setelah mesin gw sukses melakukan booting kernel, maka selanjutnya kernel harusnya akan me-load initramfs, nah saat akan melakukan hal inilah, sang kernel menemukan kebingungan, karena beliau tidak menemukan root block device. Banyak jurus yang sudah gw lakukan, dari mengkopi lengkap kernel, sytem-map dan intiramfs dari suksesnya menjalankan live-cd, melakukan mount manual ke partisi /root, melakukan chrooted dan kompile kernel ulang, melakukan perbaikan filesystem dengan fsck, satu yang tidak berhasil dan merupakan hasil diskusi dengan the_hydra adalah mengkompilasi ulang initramfs :(

Sekarang, mau tau apakah tersangkanya?, tersangkanya adalah file truecrypt yang gw mount ke satu partisi windows (ntfs) yang berjalan sebagai guest di vmware (ber-filesystem ext3) gw yang terletak di sebuah partisi ntfs (yang akan di mount gentoo gw dengan ntfs-3g, otomatis via /etc/fstab) windows xp dual-boot gw, oleh karena satu dan lain hal di suatu waktu gw main matikan saja itu neo-venom. Jadi, bukan maksud hati gw membuat ini terkesan berliku-liku, tetapi begitulah keadaannya :P

Karena keterbatasan jutsu gw, maka gw tidak berhasil untuk menyembuhkannya, gw tidak terlalu mengkuatirkan data-data gw, karena mereka aman di fileserver, di hardisk eksternal gw dan juga di partisi /home, juga gw tidak terlalu khawatir dengan berbagai konfigurasi, toh gw tinggal salin direktori "/etc", "/home", "/usr/portage" dsb, maka beres. Permasalahan sesungguhnya apabila gw menginstall ulang gentoo gw adalah waktu dan effort yang di perlukan untuk mem-build semua paket. Ya sudahlah, emang gw lagi apes dan hati gw sudah kekunci dengan gentoo, jadilah perjalanan panjang ini (1 minggu).

Pertama-tama, gw pilih 2008.0 sebagai permulaan, dan ternyata XFCE sudah menjadi satu-satunya pilihan desktop manager yang disediakan, gw tidak ada permusuhan dengan xfce, tetapi rasanya gnome lebih memenuhi kriteria yang gw butuhkan, jadi gw pilih balik mundur menggunakan cd gentoo 2007.0 yang men-default-kan gnome sebagai desktop manager untuk menjadi permulaan, dan ternyata ini bukanlah pilihan yang terbaik, karena apa? perlu banyak usaha, google, dan jurus-jurus yang di keluarkan untuk menghasilkan gentoo yang seharusnya (rilis terakhir), khususnya untuk arsitektur neo-venom gw. Untuk mempermudah siapapun yang membutuhkan untuk melakukan upgrade dari 2007.0, maka gw bubuhi postingan ini dengan langkah-langkahnya.

Adapun link yang gw temui cukup membantu, tetapi tidak semuanya bisa langsung di aplikasikan adalah:

1. http://blog.jolexa.net/2009/03/25/gentoo-tips-to-upgrade-your-really-old-installation

Dan berikut ini adalah 2 buah link yang berisi kumpulan percobaan gw dengan gentoo,

2. Koleksi postingan tentang gentoo di blog gw
3. Petunjuk troubleshoot gentoo di neo-venom

Ok, here are the Jutsu to Upgrade your Gentoo from 2007.0 to the current release :)
Pertama-tama untuk mempercepat proses build kita nantinya, adalah hal yang wajib untuk terlebih dahulu melakukan optimasi kompilasi, Selanjutnya tinggal melakukan:

#emerge sync

upgrade profile ke 2008.0 dengan,
# eselect profile set (nomer profile 2008.0)

Kemudian build paket portage terbaru dengan,
# emerge portage
dan apabila anda menemukan error yang berkaitan dengan paket python, maka anda harus mem-build python terlebih dahulu, tetapi yang menjadi masalah adalah bahwa untuk mengkompilasi python terbaru anda butuh paket portage terbaru, dan begitu pula sebaliknya (hayoo :(), maka satu-satunya cara adalah membangun python dengan tanpa ketergantungan dengan portage.

#emerge --nodep python
#emerge portage
#emerge lzma-utils bash


Kemudian untuk memperbaiki ss/com_err/e2fsprogs/e2fsprogs-libs blocker, lakukan
#emerge -f e2fsprogs e2fsprogs-libs
#emerge -C ss com_err e2fsprogs
#emerge e2fsprogs
#hash -r

Untuk mengatasi mktemp/coreutils/util-linux blocker, lakukan
#emerge -C mktemp util-linux
#emerge coreutils util-linux
#hash -r


Apabila menemukan error "file collision(s)" (yang akan sering ditemui) maka gunakan opsi IGNORE, sebagai contoh menemukan error tersebut saat akan mem-build e2fsprogs
#COLLISION_IGNORE="/usr" emerge -av e2fsprogs

Kemudian lakukan build ulang system dan world. Untuk memudahkan, berikut skrip sederhana dari hasil googling yang akan melakukan auto resume apabila ada proses emerge yang gagal

#for type in system world ; do
emerge -e ${type}
while [ $? -gt 0 ]; do
emerge --resume -e ${type}
done
done

Tips n trick

1. Gunakan flag USE, untuk (tidak) meng-"include"-kan suatu aplikasi ke aplikasi lain, sebagai contoh:
Apabila ditemui error saat php menjadi default untuk di ikutkan saat membangun gnome, untuk mengatasinya gunakan

#USE=-php emerge gnome atau,
#echo "gnome-base/gnome -php" > /etc/portage/package.use

2. Jalankan "module-rebuild rebuild" selesai melakukan kompilasi kernel
3. Mengeksekusi program "revdep-rebuild"
4. Sebaiknya mem-backup konfigurasi file anda, sepeti xorg.conf, make.conf, dkk :P
Ok, sekarang neo-venom gw telah sembuh seperti sediakala, petunjuk ini untuk mereka yang mau mencoba dan sangat amat disarankan bagi yang memiliki waktu luang :). Terbukti, gw butuh waktu lebih kurang 1 minggu (memanfaatkan sisa waktu kerja, dan aktifitas penting lainnya) untuk membangun ulang gentoo gw untuk menjadi sedikit sama atau mungkin sedikit lebih baik dari sebelumnya.

Mudah-mudahan bermanfaat :)

Gambar adalah properti http://www.nixbasics.com

Monday, March 30, 2009

Gentoo: kernel 2.6.29, intel graphics card, lenovo r60

4 comments
Sejak di keluarkannya kernel rilis 2.6.28 dengan dukungan drm pada kartu grafis, maka sejak itulah oldconfig tidak berdaya lagi, terutama untuk penggunaan jurus kompilasi standar "genkernel --oldconfig all" :), dan sejak itulah setiap rilis kernel 2.6.28 gw cuekin, dikarenakan gw memikirkan "effort" yang nantinya harus gw keluarkan jika gw (seandainya) sudah berkernel 2.6.28 (misalkan, kompilasi ulang vmware-server beserta modul-modulnya, kompilasi module lainnya dengan jurus "module-rebuild")

Adapun Tawaran yang menggiurkan yang di tawarkan kernel 2.6.28 adalah versi stabil dari filesystem ext4, yang karena satu dan lain hal juga belum terlalu menjadi prioritas gw, maka lengkaplah untuk membuat gw semakin cuek dengan kernel 2.6.28 yang di rilis di penghujung tahun lalu sebagai hadiah tahun baru 2009. Sampai akhirnya versi stabil kernel 2.6.29 di publikasikan beberapa hari yang lalu (23 March 2009) dan membuat semangat gw terbersit kembali untuk memperbaharui kernel di neo-venom, apalagi beberapa minggu ini urusan ISMS (ISO 27001:2005) membuat sisi teknikal gw seperti menumpul :lol:.

Kompilasi pertama dengan jurus oldconfig (menggunakan konfigurasi 2.6.27) juga menemui kegagalan saat proses booting, khususnya saat akan meload gdm (memasuki Xorg state; init 5) maka layar akan membeku (freeze) dan satu-satunya cara adalah dengan melakukan hard reset. Setelah hampir 4 kali melakukan kompilasi ulang serta hasil googling sana-sini, maka dibawah adalah konfigurasi untuk kernel 2.6.29 khususnya bagian grafis dan framebuffer terakhir yang berjalan sempurna untuk neo-venom (ibm lenovo r 60, dengan Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03))

Berikut informasi detil versi Xorg-server dan Xorg driver untuk intel yang gw miliki:
venom ~ # emerge --search xf86-video-intel
Searching...
[ Results for search key : xf86-video-intel ]
[ Applications found : 1 ]

* x11-drivers/xf86-video-intel
Latest version available: 2.6.3-r1
Latest version installed: 2.6.3-r1
Size of files: 771 kB
Homepage: http://xorg.freedesktop.org/
Description: X.Org driver for Intel cards
License: xf86-video-intel

venom ~ # emerge --search Xorg-server
Searching...
[ Results for search key : Xorg-server ]
[ Applications found : 1 ]

* x11-base/xorg-server
Latest version available: 1.5.3-r5
Latest version installed: 1.5.3-r5
Size of files: 5,545 kB
Homepage: http://xorg.freedesktop.org/
Description: X.Org X servers
License: xorg-server MIT

Berikut konfigurasi kernel yang gw gunakan untuk Grafis dan Framebuffer
#
# Graphics support
#
CONFIG_AGP=y
CONFIG_AGP_INTEL=m
CONFIG_DRM=m
CONFIG_DRM_I915=m
CONFIG_DRM_I915_KMS=y

CONFIG_VGASTATE=m
CONFIG_VIDEO_OUTPUT_CONTROL=m
CONFIG_FB=y
CONFIG_FB_BOOT_VESA_SUPPORT=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_TILEBLITTING=y

#
# Frame buffer hardware drivers
#
CONFIG_FB_VGA16=m
CONFIG_FB_VESA=y
CONFIG_BACKLIGHT_LCD_SUPPORT=y
CONFIG_LCD_CLASS_DEVICE=m
CONFIG_LCD_PLATFORM=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_PROGEAR=m

Satu hal menarik lainnya adalah penggantian bootsplash linux yang sejak dahulu kala menggunakan maskotnya tux, maka untuk dan hanya untuk rilis kali ini diganti dengan tuz yang merupakan maskot konferensi linux 2009 (linux.conf.au), sebagai suatu bentuk dukungan untuk melestarikan tasmanian devil yang sudah hampir punah.

Baiklah, mudah-mudahan informasi diatas bermanfaat.. Enjoy(tm)

Updated: Saat ini akhirnya dengan berat hati dan terpaksa, kernel 2.6.29 gw biarkan menganggur lagi, karena ada sedikit banyak masalah. Saat ini gw dengan berat hati masih menggunakan 2.6.27 (previous kernel yang gw miliki).

Tuesday, December 23, 2008

Gentoo: Installing vmware-server 2.0

4 comments
Akhirnya, setelah lelah dengan 2 bug vmware-server 1.x yang belum ada pemecahannya, baik dari gw sendiri maupun dari hasil googling, kedua bug itu adalah 1) mapping keyboard yang ngaco setelah kita berinteraksi (fullscreen) dengan guest OS (pernah gw singgung di acara idsecconf2008), meskipun seorang teman telah mengklaim mer-resolve bug ini, tetapi gw sendiri tidak bisa memvalidasinya sejak gw mengupgrade kernel ke versi 2.6.27 (saat ini r7), bug ke 2) vmware-modules 1.0.0.15-r1 yang di butuhkan oleh vmware-server 1.0.8.126538 gagal di "build" sempurna di versi kernel > 2.6.25-r5, meskipun gw telah mencoba beberapa cara, dengan menggunakan modules patch yang disarankan.

Kemarin, karena gw males memperbaiki kernel 2.6.25 gw yang telah terobrak-abrik, diantaranya mengakibatkan sound gw jadi amburadul, khususnya apabila audiacious di pause/stop maka sound-nya akan sangat mengganggu, maka gw memutuskan untuk mencoba vmware server versi 2 yang belum di rilis resmi pada portage tree gentoo di kernel 2.6.27-r7 gw.

Berikut adalah cara gw melakukan installasi vmware-server 2 di gentoo linux, yang kemungkinan akan lebih mudah di distribusi lainnya, untuk installasi kali ini gw memilih untuk menggunakan source yang gw unduh dari vmware.com (sekaligus untuk mendapatkan nomer registrasi) dibandingkan dengan mengunakan layout yang dibuat beberapa teman dikomunitas.

Untuk langkah langkah installasi bisa mengikuti petunjuk yang di buat oleh takahisa, (pastikan anda sudah meng-unmerge vmware-server yang pernah terinstall, serta membersihkan sisa-sisa modules di kernel anda) hal yang paling menjengkelkan adalah saat diminta mendefinisikan letak rc0.d/ sampai rc6.d/

What is the directory that contains the init directories (rc0.d/ to rc6.d/)?
bagi yang sudah pernah menginstall vmware-server sebelumnya (via emerge vmware-server) maka dapat mengarahkannya ke /etc/vmware/init.d/, lanjutkan installasi mengikuti petunjuk tersebut diatas, kemungkinan terdapat sedikit perbedaan, tetapi anda akan bisa melaluinya dengan mudah (ow really) :P

Satu hal yang perlu diingat adalah untuk memasukkan key yang di dapat (via email saat anda registrasi) saat proses instalasi, selanjutnya diujung proses instalasi dan konfigurasi Virtual machine daemon, VMware Virtual Infrastructure Web Access, vmci, vmmon akan menyala, dan sebagaimana kita semua ketahui, di versi kedua ini vmware-server menggunakan basis web untuk user interface (adminsitrasi dan manajemen, bahkan remote-console guest os dilakukan under web). Silahkan menuju http://127.0.0.1:8222 untuk melakukan manajemen secara lokal (gw gak panjang lebar bahas hal ini, silahkan baca sendiri :P)

Error pertama yang gw temui adalah masalah komplain vmware terhadap /dev/rtc yang tidak di temui, padahal kernel yang gw miliki sudah mendukung, untuk mengatasinya cukup buatkan symbolic link secara otomatis di /etc/udev/rules.d/60-symlinks.rules
KERNEL=="rtc*", SYMLINK+="rtc" 
Setelah melakukan hal tersebut maka vmware tidak akan komplain mengenai resolution timer device (RTC), Error kedua yang gw temui adalah saat akan menjalankan VMware remote-console plugins (sebelumnya anda harus menginstall add-ons untuk firefox yang disediakan oleh vmware) yang ternyata tidak berfungsi baik dengan firefox, untuk memperbaikinya, anda harus menjalankan firefox dengan dukungan VMWARE_GTK
$VMWARE_USE_SHIPPED_GTK=yes firefox

atau, langsung menambahkannya ke launcher firefox di /usr/bin/firefox
venom ~ # cat /usr/bin/firefox
#!/bin/sh
export LD_LIBRARY_PATH="/usr/lib/mozilla-firefox"
export VMWARE_USE_SHIPPED_GTK=yes
exec "/usr/lib/mozilla-firefox"/firefox "$@"
dan ingat letaknya sebelum eksekusi firefox.

Selanjutnya selamat menikmati Vmware-server 2.0 anda di Gentoo, jangan lupa upgrade versi Virtual Machine hardware anda, serta install VMware tools agar fungsi mouse, grafis dsbnya berfungsi dengan baik. Enjoy(tm)

Saturday, December 20, 2008

Gentoo: Xorg bug, keyboard dan mouse tidak berfungsi saat login & vmware bug

5 comments
Setelah kegiatan idsecconf2008 selesai, akhirnya gw bisa melakukan upgrade paket (karena setelah melakukan upgrade, berarti mesin gw masuk ke state arch lagi, not stable :p) , seusai updet dan saat menyalakan kembali dan masuk ke halaman login gnome maka hampir seluruh "key" pada keyboard dan mouse akan menjadi tidak berfungsi. Sebenarnya bug ini tidak terlalu kritikal, tetapi yang menarik adalah proses pencarian gw untuk me-resolve-nya dengan cara mencari paket yang ber-bug tsb, baik secara manual maupun "googling" dan berkunjung ke http://bugs.gentoo.org.

Pencarian manual adalah dengan mengasumsikan bug tersebut berdasarkan tingkah laku, suspect gw adalah gnome, gdm, x11-input-keyboard, x11-input-mouse, x11-input-evdev, gnome-settings-daemon, dan synaptics, (pokoknya salah satu dari mereka ini: asusmsi gw kala itu) selanjutnya adalah tinggal mencek tanggal ebuild terbaru (kalo bener tanggalnya baru (minimal setelah idsecconf) maka kemungkinan benar), kemudian di downgrade, ternyata cara ini tidak berlaku. Kesalahan suspect juga berujung kesalahan dalam menjadikan keyword untuk googling dan searching di situs bugs gentoo. Sampai beberapa hari gw harus mengalami hal ini, dengan workaround merestart XDM (gdm) setelah masuk halaman login (tekan alt + f1, login dari console, /etc/init.d/xdm restart).

Sampai akhirnya gw menemukan juga paket yang mengakibatkan hal ini terjadi, yaitu xorg-server, tanggalnya menunjukkan waktu yang tepat dengan waktu pertama kali gejala ini muncul (17 desember 2008), biasanya gw selalu membuat temporary file saat mengupgrade berisi list file yang di upgrade, untuk memudahkan kalo terjadi beginian: "emerge -upv world > temp-pack.txt", eh kali ini gw lupa :(

Setelah itu langsung saja meluncur ke bugs.gentoo.org dan menemukan laporan guide untuk mengupgrade xorg-server-1.5.3, ada 3 cara yang di sarankan remi untuk mengatasi hal ini:
1) membangun ulang xorg-server dengan flags USE=-hal
2) menambahkan pilihan AutoAddDevices/AutoEnableDevices/AllowEmptyInput di xorg.conf
3) menghilangkan seluruh pilihan input (input sections) dari xorg.conf dan menyeting ulang HAL

Gw memilih cara nomer 2, yang juga diusulkan pada saat thread ini dibuat.tambahkan
Section "ServerFlags"
Option "AllowEmptyInput" "false"
EndSection
voila, sekarnag semuanya berjalan sempurna.

1 buah bug lagi yang belum resolve adalah terkait dengan vmware, bug ini cukup kompleks terutama bagi yang telah melakukan upgrade kernel >2.6.25-gentoo-r5 termasuk gw :P (tetapi untungnya itu versi kernel 2.6.25-gentoo-r5 milik gw belun gw libas). Permasalahnnya adalah vmware-server 1.0.8.126538 hanya bisa bekerja dengan vmware-modules-1.0.0.15-r1 (terlihat dari dependensi di vmware-server ebuild, karena memang modules yang bisa bekerja di vmware server 1.0.8 adalah versi 1.0.0.15-r1 kebawah), sedangkan vmware-modules-1.0.0.15-r1 ini tidak bisa di bangun/kompilasi (rebuild) dengan kernel > 2.6.25-gentoo-r5, nah lo!

Ada selentingan bahwa modulesnya (vmmon, vmnet, vmblock) akan di include-kan pada rilis kernel terbaru tanpa harus mengkompilasi-nya (ow indahnya), ya kita lihat saja nanti :). Happy trouble shoot

Monday, December 08, 2008

Art of my hard drive

5 comments
This is the Art of my hard drive :), thx to Marzocca for creating a program called Baobab "Disk Usage Analyzer is a graphical, menu-driven application to analyse disk usage in any Gnome environment. Disk Usage Analyzer can easily scan either the whole filesystem tree, or a specific user-requested directory branch (local or remote). It also auto-detects in real-time any changes made to your home directory as far as any mounted/unmounted device. Disk Usage Analyzer also provides a full graphical treemap window and a ringschart for each selected folder"

And this is my Disk usage details generated by baobab. "A beautiful image", how about yours ?

Tuesday, November 25, 2008

Gentoo: Tambah pilihan Gnome-screensaver, install iotop dan nettop

0 comments
Akhirnya sempet juga nambahin pilihan "screensaver" di gentoo gw, setelah gnome-screensaver didaulat sebagai pilihan utama (default) sebagai aplikasi screensaver, maka otomatis pilihan yang disediakan hanya sedikit saja.

Beberapa tahun yang lalu aku masih sering menggunakan Xscreensaver (ber-KDE) yang notabene memiliki banyak sekali pilihan screensaver, salah satunya yang berkesan adalah GLmatrix yang di rilis di 2004, dan bahkan saat screensaver ini berjalan pernah seorang ibu bertanya apakah saya sedang meng-generate sesuatu atau meng-crack sesuatu di komputer saya :) (korban  film kayaknya neh :P)

Akhirnya bertemu sebuah artikel/cara untuk memigrasikan berbagai screensaver dari Xscreensaver ke gnome-screensaver dengan  script yang sudah disediakan oleh gnome-screensaver, meskipun anda tetap bisa melakukannya secara manual :).

Sebelumnya, agar tidak bentrok antara gnome-screensaver dengan Xscreensaver, pastikan anda tambahkan "-gnome" pada saat membuildnya,

#echo "x11-misc/xscreensaver -gnome" >> /etc/portage/package.use
setelah itu silahkan install/re-install (emerge/re-emerge)
#emerge xscreensaver
#emerge  gnome-screensaver
#cd /usr/share/doc/gnome-screensaver-2.24.1/
#mkdir /tmp/sampah
#cp migrate-xscreensaver-config.sh.bz2 xscreensaver-config.xsl.bz2 /tmp/sampah
#cd /tmp/sampah
#bunzip2 *
#chmod +x migrate-xscreensaver-config.sh
#./migrate-xscreensaver-config.sh /usr/share/xscreensaver/config/*.xml
#mv *.desktop /usr/share/applications/screensavers/
#cp /usr/lib/misc/xscreensaver/* /usr/libexec/gnome-screensaver
 Step-step tersebut berlaku untuk gentoo, untuk sistem operasi lain, silahkan cari letak direktori yang mungkin sekali berubah.

Kemarin juga sempat melakukan installasi 2 buah utiliti bagus untuk anda yang suka melakukan benchmarking, atau lebih penasaran dengan sistem anda sendiri, yang pertama adalah iotop, sebuah utility bagus yang dibuat dengan bahasa pemrogan python, dan berfungsi untuk melihat proses I/O dimesin anda.

Utility ini aku ketahui setelah membaca ulasan di blog milik dberkholz yang merupakan salah seorang developer gentoo yang termausk dalam gentoo-council. Untuk dapat melakukan installasi, setidaknya kernel yang anda gunakan lebih dari versi 2.6.20 (mengaktifkan task i/o auditing), jika and abelum mengaktifkan fitur ini maka anda perlu mengkompile kernel anda ulang :), dan juga utility ini membutuhkan Python versi 2.5 untuk dukungan AF_NETLINK sockets.

Utiliy lainnya adalah nettop, Nettop adalah program yang tampilannya kan mirip seperti top, tetapi ini berfungsi untuk menampilkan statistik paket di jaringan (network packets). Untuk menjalankannya, seperti halnya aplikasi jaringan lain, nettop juga membutuhkan libpcap and slang untuk terlebih dahulu di install di komputer. untuk melakukan installasinya cukup dengan melakukan "emerge nettop".

Thats all folk, mudah-mudahan bermanfaat :)
Enjoy(tm)

Thursday, November 13, 2008

Gentoo: Pembuat Patch Kesiangan

3 comments
Akhirnya ada juga kejadian lucu terkait gentoo (biasanya kan selalu serius), tepatnya hari ini sebelum memulai jam kantor, sempet-sempetnya aku mengupgrade gentoo di neo-venom dengan koneksi 3G ala kadarnya.

(emerge --sync ; emerge -uf world; emerge upv world),

di saat proses kompilasi wine terbaru (wine-1.1.8) gagal, dan menampilkan pesan error seperti berikut:


parser.y:320: error: expected ';' before '}' token
make[2]: *** [parser.tab.o] Error 1
make[2]: Leaving directory
`/var/tmp/portage/app-emulation/wine-1.1.8/work/wine-1.1.8/dlls/jscript'
make[1]: *** [jscript] Error 2
make[1]: Leaving directory
`/var/tmp/portage/app-emulation/wine-1.1.8/work/wine-1.1.8/dlls'
make: *** [dlls] Error 2
*
* ERROR: app-emulation/wine-1.1.8 failed.

maka dengan bergegas  aku segera membuat patch-nya, toh ini cuma keteledoran programmer saja (kurang ";" pada skrip) serta tidak memakan waktu untuk membuatkan patchnya (kecuali menunggu proses kompilasi wine yang memakan waktu relatif lama, untuk konfirmasi pacth), setelah terbukti bekerja maka dengan semangat 45, serta tanpa menghiraukan jam kerja yang sudah tiba (diatas jam 9 WIB), aku kemudian memposting bug berklasifikasi rendah ini beserta patch-nya ke bugs.gentoo.org disertai keyakinan bahwa belum ada yang memposting bug ini (hasil searching wine-1.1.8).

Alhasil beberapa menit berselang, sebuah email masuk dari bugzilla-daemon yang memberitakan bahwa bug yang aku laporkan itu duplicate bug , yang artinya bug ini telah dilaporkan terlebih dahulu oleh individu lainnya bebarapa saat/hari sebelumnya. Hal ini akan relatif sering terjadi dengan metoda "portage" pada gentoo serta kebebasan bereksplorasi dengan skrip dan pemaketan, akan membuat bug lebih cepat di temukan dan diperbaiki.

Dan jadilah hari ini aku sebagai sang "Pembuat patch kesiangan". :lol:

Monday, November 10, 2008

Gentoo: Keyjnote, GCC dan Pdftk

3 comments
Sudah lama gw memang ngefans sama keynote, sebuah aplikasi untuk berpresentasi besutan Apple. Dan di karenakan belum ada minat (sebenarnya belum ada uang rejeki) maka sampai saat ini gw belum pernah menggunakan OS-X dan keynote-nya. Sampai akhirnya gw mendengar sebuah apliksi opensource dengan nama yang mirip dan di akui banyak individu memiliki kemampuan unik dalam membantu presentasi, yaitu keyjnote.

KeyJnote is a program that displays PDF presentation slides with style. Smooth alpha-blended slide transitions are provided for the sake of eye candy, but in addition to this, KeyJnote offers some unique tools that are very useful for presentations.
Keyjnote yang dibuat oleh KeyJ terakhir dirilis versi 0.10.2 di bulan februari tahun ini, dibuat dengan bahasa pemrograman python dan terlepas dari "kungkungan" OS (OS independent) membuat aplikasi ini dapat digunakan di berbagai platform.

Sudah sejak lama saya ingin menginstall applikasi ini, dan untuk sistem operasi Gentoo, anda cukup melakukan "emerge keyjnote", yup betul semudah itu. Tetapi tidak buat saya dan anda semua yang sudah menggunakan GCC 4.3.X, kita akan menemukan masalah besar dengan kompilasi pdftk,
Pdftk allows you to manipulate PDF easily and freely. It does not require Acrobat, and it runs on Windows, Linux, Mac OS X, FreeBSD and Solaris
Dan dikarenakan salah satu engine yang digunakan oleh Keyjnote dalam memanipulasi file presentasi yang berformat PDF, maka mau tidak mau harus menginstall pdftk sebagai pendukungnya.

Isu kompilasi pdftk sudah lama menyebar bahkan beberapa patch sudah gw coba, tetapi masih belum berhasil, akhirnya terpaksa "roll back" menggunakan GCC 4.2.4 untuk melakukan kompilasi pdftk,

venom ~ # gcc-config -l
[1] i686-pc-linux-gnu-4.1.2
[2] i686-pc-linux-gnu-4.2.4 *
[3] i686-pc-linux-gnu-4.3.2


sehingga akhirnya gw berhasil melakukan installasi Keyjnote di Gentoo dan pertama kali di gunakan pada acara Seminar dan CTF Hacking Game di Palcomtech, palembang kemarin :).

Happy presenting guyz,

images are from : http://freshmeat.net/screenshots/56112/60292/

Tuesday, October 21, 2008

Gentoo: mempercepat proses kompilasi

7 comments
Sebagaimana kita semua ketahui, Gentoo Linux adalah suatu distribusi GNU/Linux yang memakai source sebagai paket software, dan inilah yang menjadi suatu kelebihan dan mungkin buat sebagian orang malah menganggap sebagai kekurangannya. Berbeda dengan distribusi lainnya, sebagai contoh: Debian dan Ubuntu yang menggunakan .deb paket, Mandrake menggunakan .rpm paket, dsb.

Dari sejarahnya (sumber wikipedia), Gentoo linux adalah distro pertama yang melakukan optimasi peningkatan kecepatan kompilasi GCC sampai 10% lebih, dan akhirnya secara resmi modifikasi GCC milik Gentoo (Enoch kala itu) di jadikan bagian dari GCC dan digunakan secara luas oleh distribusi lainnya.

Adapun salah satu kelebihan dari sistem pemaketannya, maka Gentoo dapat dioptimisasi dan dikustomisasi untuk hampir segala jenis aplikasi atau kegunaan sesuai dengan hardware dan arsitektur mesin yang dimiliki. Dengan kemampuan adaptasi Gentoo yang hampir tidak ada batasnya, maka Gentoo GNU/Linux sering disebut juga sebagai MetaDistribusi.

Kalo dari saya selaku pribadi, memilih gentoo sebagai distribusi yang digunakan dikarenakan berbagai alasan, hanya ingin bernostalgia, senang troubleshoot, ingin belajar gnu/linux lebih dalam, sudah tidak tau mo ngapain lagi dengan distribusi lain yang menjadi "sangat cantik" kala ini, tetapi juga karena ingin merasakan update aplikasi yang relatif lebih cepat khususnya bagi para developer yang merilis dalam bentuk "source" sampai membuat skrip kompilasi sendiri.

Disamping berbagai kelebihan yang didapatkan, ada satu titik lemah yang tidak bisa saya pungkiri, yaitu "waktu" kompilasi (saya menghabiskan hampir 10 jam untuk mengkompilasi Paket lengkap Openoffice , dan lebih lama lagi untuk versi sebelumnya sewaktu belum saya optimasi). Untuk itu banyak sekali tips yang dapat digunakan untuk mempercepat proses kompilasi dengan cara mengoptimasi mesin/compiler/environtment yang kita miliki.

Berikut adalah dua buah tips yang saya anggap kritikal untuk dilakukan

1. CFLAGS
CFLAGS adalah C compiler flags, umumnya merupakan opsi dari GCC (GNU Compiler Collection). CFLAGS digunakan untuk mengkustomisasi dan mengoptimasi aplikasi dari source. CFLAGS umumnya digunakan untuk mendefinisikan arsitektur dari komputer/mesin yang dimiliki, semisal CPU yang digunakan and opsi spesial lainnya. Daftar CFLAGS untuk Gentoo GNU/Linux telah dibuatkan di Safe CFLAGs Guide. (saat ini situs gentoo-wiki sedang tidak aktif, anda dapat mengakses cache-nya di google). Untuk komputer saya (Lenovo R60) yang berprocessor Intel Core Duo (silahkan anda sesuaikan dengan arsitektur anda), maka cukup mengubah CFLAGS di /etc/make.conf menjadi
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
2. CCACHE
CCACHE adalah cache yang digunakan oleh kompiler, efeknya akan meningkatkan kecepatan kompilasi 5-10 kali lebih cepat pada saat kompilasi berikutnya, CCAHE akan melakukan caching kompilasi sebelumnya dan mendeteksi apabila jenis kompilasi yang sama dilakukan lagi (dan ini sangat sering terjadi pada penginstallan aplikasi di Gentoo).

Proses installasi
# emerge --version
Portage 2.2_rc12 (default/linux/x86/2008.0/desktop, gcc-4.3.2, glibc-2.8_p20080602-r0, 2.6.25-gentoo-r5 i686)
# emerge -av dev-util/ccache
# emerge --info | grep CHOST
CHOST="i686-pc-linux-gnu"
# ccache-config --install-links i686-pc-linux-gnu

tambahkan ke /etc/make.conf untuk konfigurasi
FEATURES="ccache"
CCACHE_DIR="/var/tmp/ccache"
CCACHE_SIZE="976.6M"
Selanjutnya tinggal memeriksa apakah cache anda berjalan dengan perintah "ccache -s".

Selamat mencoba, enjoy(tm) :)

Monday, September 22, 2008

Gentoo: Two Bug for this week

0 comments
One of Gentoo advantages is by regularly syncing the portage tree, Gentoo users are able to use the most up to date packages available, rather than remaining fixed at a particular release date. This typically results in newer versions of software being available within the package manager than are available for other Linux distributions at any given time, particularly those which are fixed at a particular release (albeit with security updates). This is also a drawback; when updating a Gentoo system, no guarantees are made on the backwards-compatibility of any package updates, whereas distributions which only make a limited release set of packages available are able to better maintain compatibility within each release. - source: wikipedia.org

And this is the Two Bug that i found and solved within last weekend,

1.GCC installs .la files containing broken paths
I hate to admit it, but this bug has a (very) long journey, the age of this reported bug is almost about two years, and only one working patch are produced (altough symlinks wont kill the cat), and i dont know why nobody is maintaining the bug or at least put this patch into portage tree. Yet, this bug isnt so critical but very annoying when you run the "revdep-rebuild", yes, we need to recompile GCC again, and just imagine if you have more than one GCC installed on your machine (well, i do have 3). Here are (my) the preview..
venom ~ # revdep-rebuild
* Configuring search environment for revdep-rebuild

* Checking reverse dependencies
* Packages containing binaries and libraries broken by a package update
* will be emerged.

* Collecting system binaries and libraries
* Generated new 1_files.rr
* Collecting complete LD_LIBRARY_PATH
* Generated new 2_ldpath.rr
* Checking dynamic linking consistency
[ 38% ] * broken /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcjawt.la (requires /usr/lib/lib-gnu-java-awt-peer-gtk.la)
* broken /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgij.la (requires /usr/lib/libgcj.la)
* broken /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgij.la (requires /usr/lib/libgcj.la)
* broken /usr/lib/gcc/i686-pc-linux-gnu/4.3.1/libgij.la (requires /usr/lib/libgcj.la)
* broken /usr/lib/gcj-4.2.4/libjvm.la (requires /usr/lib/libgcj.la)
* broken /usr/lib/gcj-4.3.1-9/libjvm.la (requires /usr/lib/libgcj.la)
[ 100% ]
* Generated new 3_broken.rr
* Assigning files to packages
* /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgcjawt.la -> sys-devel/gcc
* /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libgij.la -> sys-devel/gcc
* /usr/lib/gcc/i686-pc-linux-gnu/4.2.4/libgij.la -> sys-devel/gcc
* /usr/lib/gcc/i686-pc-linux-gnu/4.3.1/libgij.la -> sys-devel/gcc
* /usr/lib/gcj-4.2.4/libjvm.la -> sys-devel/gcc
* /usr/lib/gcj-4.3.1-9/libjvm.la -> sys-devel/gcc
* Generated new 4_raw.rr and 4_owners.rr
* Cleaning list of packages to rebuild
* Generated new 4_pkgs.rr
* Assigning packages to ebuilds
* Generated new 4_ebuilds.rr
* Evaluating package order
* Generated new 5_order.rr
* All prepared. Starting rebuild
emerge --oneshot sys-devel/gcc:4.1
sys-devel/gcc:4.2
sys-devel/gcc:4.3
.......^C
Altough Symlinking is a harmless solution, but (yet) it doesnt solve the bug/problem anyway. AFAIK, i`ve already symlinking this when i install GCC 4.2, and after i upgraded it to 4.3, i broke and will meet this problem again.(n.. again?)
ln -s /usr/lib/gcc/i686-pc-linux-gnu/x.x.x/lib-gnu-java-awt-peer-gtk.la lib-gnu-java-awt-peer-gtk.la
ln -s /usr/lib/gcc/i686-pc-linux-gnu/x.x.x/libgcj.la libgcj.la
and here are the patch, if u hate to do symlinking.


2. svgalib fails to build on kernel 2.6.26
This Problem Occurs when im trying to install svgalib (needed by mplayer also vlc) into kernel 2.6.25-26, to resolve this problem, im also using this fedora guys patch, off course we need to tweak it and put it into the svgalib ebuild files, but when its done, it will solve the "revdep-rebuild" process.

This is my short instruction for patching it and adding it into svgalib ebuild file (but, if you arent sure, dont follow this :))

#go to svgalib directory
cd /usr/portage/media-libs/svgalib/files/

#download and get the pacth (for example,file svgalib-1.9.25-kernel-2.6.patch)
#edit the ebuild, and add the bold one (make sure your filename format)into the src_unpack routine


26 src_unpack() {
27 unpack ${A}
28 cd "${S}"
29 epatch "${FILESDIR}"/${PN}-1.9.25-linux2.6.patch
30 epatch "${FILESDIR}"/${PN}-1.9.19-pic.patch #51698
31 epatch "${FILESDIR}"/${PN}-1.9.25-build.patch
32 epatch "${FILESDIR}"/${PN}-1.9.25-kernel-2.6.patch
33 }
34

#re-create the manifest
ebuild svgalib-1.9.25.ebuild manifest

#re-emerge svgalib
emerge svgalib
Ok,The Two Bug are solved. Gentoo always teach me (many) new things, hope this article help.
Enjoy(tm)

images are property of gentoo.org and junauza.com

Wednesday, July 16, 2008

Firefox slow scroll on intel

0 comments
venom ~ # lspci -v | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) (prog-if 00 [VGA controller])

Aku temukan ini cukup mengganggu dan mengurangi kenikmatan dalam melakukan scrolling di firefox/adobe acrobat reader, dsb, setelah googling sana-sini aku temukan bahwa driver milik intel untuk Gentoo (kemungkinan distro lain dnegan driver yang sama) yaitu xf86-video-i810-2.2.1 harus ditambahkan instruksi secara manual. jadi buka file xorg.conf milikmu dan tambahkan di Section "Device"
Option "AccelMethod" "XAA"
Option "XAANoOffscreenPixmaps" "true"
, Seharusnya XAA (XFree86 Acceleration Architecture) arsitektur sudah digantikan oleh EXA, tetapi driver milik Intel belumlah mengimplementasikan EXA saat ini, jadi satu-satunya cara adalah mengkonfigurasikan diver tersebut untuk menggunakan arsitektur XAA.

Enjoy(tm)

images are property of http://artfiles.art.com

Monday, July 14, 2008

Performa lambat pada Gentoo (solved)

2 comments
Baiklah, sebenarnya masalah ini sudah cukup lama, tepatnya sejak aku memutuskan untuk mengupgrade secara berkala venom yang masih bersistem operasikan Gentoo 2007.0 ke Gentoo 2008.0. Sejak itulah perubahan performa secara significant cukup terasa khususnya apabila melakukan multitasking dan multiprocess di system ini dan lebih spesifik lagi apabila melakukan aktifitas baca/tulis ke hardisk (khususnya dalam jumlah besar, waktu yang lama dan melibatkan cache, kerja processor, spare memori dsb), sebagai contoh: saat mengkopikan file sebesar 1GB dari flashdisk ke hardisk akan mengakibatkan processor bekerja hingga 100%, memaksa aplikasi yang lain menjadi tidak bisa diakses secara sempurna (pemutar musik, memutar lagu tersendat-sendat).

Cukup lama bagiku untuk melakukan troubleshooting permasalahan ini, mulai dari melakukan inspeksi pada penggunaan virtual memory dan membatasinya di kernel, lalu kemungkinan hal ini diakibatkan salah konfigurasi parameter processor, dan setting processor pada kernel telah aku lakukan, dan benar, hal ini meningkatkan kinerja processor dan virtual memori, tetapi ternyata tetap tidak signifikan mengatasi permasalahan performa ini (saat dihadapkan dengan kegiatan tulis/baca ke disk/cd-rom/removable media)

Aku masih terpaku bahwa penyebab hal ini adalah kemungkinan "dual processor" yang kau miliki tidak secara maksimal digunakan oleh system, dan untuk itu aku telah meng-optimasi dual processor yang aku miliki agar berjalan sebagaimana mestinya, dan benar saja kinerja dual-processor milikku semakin meningkat, tetapi sayangnya akan tidak berdaya terhadap permasalahan tulis/baca ke disk/cd-rom/removable media.

Sampai akhirnya hari ini aku berkesimpulan pasti ada yang salah dengan performa hardisk yang aku miliki,kemudian sampailah aku kesebuah artikel untuk meningkatkan performa IDE device menggunakan hdparm.
Hdparm is a tool that allows you to set IDE device settings. This includes things such as DMA modes, transfer settings and various other settings that can help improve the speed of your hard disks and CDROMs
These settings are not enabled by default, so you will probably want to enable them
Dan akhirnya hal ini menyadarkan aku bahwa aku tidak pernah melakukan pemeriksaan terhadap settingan baca/tulis ke disk, pertama-tama lakukan pemeriksaan disk kita (/dev/hda), aku pernah sekali berpikir mengapa disk yang kumiliki dikenali dengan hd bukan sd (sata)
venom ~ # hdparm -i /dev/hda

/dev/hda:

Model=HITACHI HTS541680J9SA00, FwRev=SB2IC7EP, SerialNo=SB2241SGJ3SN9E
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=DualPortCache, BuffSize=7516kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=156301488
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2 udma3 udma4 *udma5
AdvancedPM=yes: mode=0x80 (128) WriteCache=enabled
Drive conforms to: ATA/ATAPI-7 T13 1532D revision 1: ATA/ATAPI-2,3,4,5,6,7

* signifies the current active mode
kemudian lakukan benchmarking kecepatan caching dan buffering
venom ~ # hdparm -tT /dev/hda

/dev/hda:
Timing cached reads: 144 MB in 2.00 seconds = 71.96 MB/sec
Timing buffered disk reads: 4 MB in 3.38 seconds = 1.18 MB/sec
terlihat waktu buffering sangat lambat sekali, dan aku rasa memang hal inilah yang menyebabkan prosesor bekerja mati-matian untuk menjaga proses baca/tulis, sekarang kita liat info parameter hardisk yang dimiliki
venom ~ # hdparm /dev/hda

/dev/hda:
multcount = 16 (on)
IO_support = 0 (default)
16-bit)
unmaskirq = 0 (off)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 256 (on)
geometry = 16383/255/63, sectors = 156301488, start = 0
venom ~ #
Dan terlihat bahwa IO_support yang ter-set untuk 16 bit (here are ther real problems), apalagi saat kucoba untuk menyalakan dukungan DMA maka akan mendapati error, sehingga optimasi yang dilakukan diantaranya adalah men-set dukungan IO untuk 32 bit sync (c3),set Xfer mode ke udma (X69), set unmasking (u1), meng-enable Read look-ahead (A1), serta mengenable write-caching (W1)
venom boot # hdparm -A1 -u1 -c3 -X69 -W1 -m16 /dev/hda

/dev/hda:
setting 32-bit IO_support flag to 3
setting multcount to 16
setting unmaskirq to 1 (on)
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
setting xfermode to 69 (UltraDMA mode5)
setting drive read-lookahead to 1 (on)
setting drive write-caching to 1 (on)
multcount = 16 (on)
IO_support = 3 (32-bit w/sync)
unmaskirq = 1 (on)
using_dma = 0 (off)
look-ahead = 1 (on)
write-caching = 1 (on)
baiklah, semua telah tersetting, sekarang aku lakukan kembali benchmarking
venom boot # hdparm -tT /dev/hda

/dev/hda:
Timing cached reads: 1596 MB in 2.00 seconds = 798.47 MB/sec
Timing buffered disk reads: 12 MB in 3.48 seconds = 3.45 MB/sec
dan terlihat satu hasil yang cukup significant baik waktu caching dan buffering, tetapi tidak cukup memuaskan. Untuk membuat parameter ini selalu di gunakan saat komputer menyala, maka tambahkan parameter ini ke file konfigurasi hdparm di /etc/conf.c/hdparm,

hda_args="-A1 -d1 -u1 -c3 -X69 -W1 -m16"

dan pastikan service hdparm selalu menyala setiap booting dengan menggunakan perintah "rc-update add hdparm default"

Karena hasil yang belum maksimal (dikarenakan DMA belum diset) maka aku melakukan sedikit pencarian di google dan menemukan artikel menarik tentang isu yang di miliki oleh Intel Corporation 82801GBM/GHM sata controller
a). There was an issue concerning the Intel Corporation 82801GBM/GHM (ICH7 Family) Sata IDE Controller (rev 02) working in concert with the TSSTCorp CD/DVDW TS-L632D. DMA could not be enabled on /dev/hdc, resulting in slow performance of the CD/DVD drive. Attempts to enable dma using hdparm resulted in:

/dev/hdc
setting using_dma to 1 (on)
HDIO_SET_DMA failed: Operation not permitted
using_dma = 0 (off)

(after considerable consternation, I finally found a solution for this).

..in -Device Drivers --> ATA/ATAPI/MFM/RLL support -->

disable: < > Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support" (all of the subcategories will also disappear from the list).

..verify under - Serial ATA (prod) and Parallel ATA (experimental) drivers -->

ensure that this is on: < * > Intel PATA MPIIX support (it should also work fine if it's a module).
Dan kemudian melakukan kompile kernel kembali, anda dapat lebih mudah melakukannya dengan aplikasi "genkernel"
#genkernel --menuconfig --boorloader=grub all

Dan, jangan lupa untuk merubah parameter di grub, untuk path dari "/dev/hda/" ke "/dev/sda" sebelum anda melakukan restart, karena disinilah kita akan mengembalikan deteksi hardisk murni ke SATA dengan kompilasi yang kita lakukan
Setelah restart, coba lakukan benchmarking kembali, dan hasil yang di dapatkan sangat memuaskan serta semua masalah yang selama ini aku rasakan telah teratasi (saat ini dipikiranku adalah, "default" kernel parameter khususnya bagian device driver untuk disk-lah yang menyebabkan hal ini terjadi sejak melakukan upgrading ke 2008.0 dan kernel)
venom ~ # hdparm -tT /dev/sda

/dev/sda:
Timing cached reads: 2364 MB in 2.00 seconds = 1183.32 MB/sec
Timing buffered disk reads: 64 MB in 3.06 seconds = 20.89 MB/sec
Untuk melakukan setting parameter, kita sudah harus menggunakan sdparm, bukan hdparm, karena akan menghasilkan error pembacaan parameter.
venom ~ # hdparm /dev/sda

/dev/sda:
IO_support = 0 (default)
16-bit)
HDIO_GET_UNMASKINTR failed: Inappropriate ioctl for device
HDIO_GET_DMA failed: Inappropriate ioctl for device
HDIO_GET_KEEPSETTINGS failed: Inappropriate ioctl for device
readonly = 0 (off)
readahead = 256 (on)
geometry = 9729/255/63, sectors = 156301488, start = 0

venom ~ # sdparm /dev/sda
/dev/sda: ATA HITACHI HTS54168 SB2I
Read write error recovery mode page:
AWRE 1
ARRE 0
PER 0
Caching (SBC) mode page:
WCE 1
RCD 0
Control mode page:
SWP 0

venom ~ # sdparm -a /dev/sda
/dev/sda: ATA HITACHI HTS54168 SB2I
Read write error recovery mode page:
AWRE 1
ARRE 0
TB 0
RC 0
EER 0
PER 0
DTE 0
DCR 0
RRC 0
COR_S 0
HOC 0
DSOC 0
WRC 0
RTL 0
Caching (SBC) mode page:
IC 0
ABPF 0
CAP 0
DISC 0
SIZE 0
WCE 1
MF 0
RCD 0
DRRP 0
WRP 0
DPTL 0
MIPF 0
MAPF 0
MAPFC 0
FSW 0
LBCSS 0
DRA 0
NV_DIS 0
NCS 0
CSS 0
Control mode page:
TST 0
TMF_ONLY 0
D_SENSE 0
GLTSD 1
RLEC 0
QAM 0
QERR 0
RAC 0
UA_INTLCK 0
SWP 0
ATO 0
TAS 0
AUTOLOAD 0
BTP -1
ESTCT 30
ok, thats all folk, semoga sedikit banyak bisa membantu, khususnya bagi pengguna Gentoo yang merasakan performa yang menurun setelah melakukan upgrading system atau kernel.

good luck
images are taken from here