Showing posts with label Debian. Show all posts
Showing posts with label Debian. Show all posts

Wednesday, October 17, 2012

To Install the Same Set of Packages as Another Debian Machine

I know this is a well-known trick with the Debian package system, but I'm going to sum it up here. Suppose that you want to install the same set of packages on box A as box B. At box B, type the following command to get the list of installed packages.



dpkg --get-selections > select.txt


Then, take select.txt to box A and run on box A:



apt-get update
dpkg --set-selections < select.txt
apt-get -u dselect-upgrade

Tuesday, October 16, 2012

Share your Linux desktop with x11vnc

x11vnc is a pretty useful program that you can use to share your Linux desktop with someone far away. To start x11vnc while using X11 windows, issue the following command:



x11vnc -display :0


This command will work in most cases, assuming there is only one instance of X11 Windows server running. However, the display number could be different. To be sure, type the following command:



xdpyinfo | head


x11vnc will output a lot of information, including the port number it runs on:



The VNC desktop is:      bootcd:2
PORT=5902


Subtracting 5900 from the port number (5902), you'll get the display number (2). Use this number to connect to your desktop remotely. I use gvncviewer.



gvncviewer 192.168.200.83:2


TightVNC viewer on Windows Vista




Administrator To Monitor Someone's Desktop with X11VNC



Let's assume that you are a system administrator with root privilege and want to monitor a user's X11 Windows desktop. You can't just run “x11vnc -display :0” because you are not the user currently using display :0. In that case, you need access to the X11 Windows' xauth file which is located at one of the following locations:




  • /var/lib/gdm
  • /var/lib/kdm
  • /var/lib/xdm/authdir/authfiles
  • /home/USER/.Xauthority


Once you locate the xauth file associated with the user's X11 desktop, you can use x11vnc to monitor his desktop activity.



x11vnc -display :0 -auth /var/lib/gdm/\:0.Xauth


Then, on your desktop as administrator, connect to the user's desktop with a vnc client.



gvncviewer 192.168.200.83:2


x11vnc with SSL



x11vnc supports various connection schemes, including SSL. On Debian and Ubuntu, type the following command to create a SSL certificate for use with x11vnc.



cat /etc/ssl/private/ssl-cert-snakeoil.key /etc/ssl/certs/ssl-cert-snakeoil.pem > /tmp/x11vnc.pem


Then, start x11vnc with -ssl option to run x11vnc in secure mode.



x11vnc -display :0 -auth /var/lib/gdm/\:0.Xauth -ssl /tmp/x11vnc.pem


ssvnc and gvncviewer can be used to connect to x11vnc via SSL connection. The following example command starts x11vnc in anonymous SSL mode that doesn't require X509 exchange.



x11vnc -display :0 -xauth /var/lib/xdm/authdir/authfiles/A\:0-R2x5Db -xkb -nopw -nc_cr -ssl /tmp/x11vnc.pem -vencrypt newdh:nox509:support

Setting Up XDM on Debian/Ubuntu Linux

XDM, short for X Display Manager, is my favorite login manager for its simplicity. Sure, gdm and kdm are visually pleasant, but why do I have to install all the dependencies if xdm provides the same functionality as them? After all, xdm can launch GNOME and KDE for you — you just need to fix your ~/.xsession file. This post will serve as my notes on installation, configuration and customization of xdm.



All configuration of xdm, except for distribution-specific settings, is done by modifying the files in the /etc/X11/xdm directory. For now, I'll just go over what I have in my xdm files.



/etc/X11/xdm/Xaccess



This file is used to tell xdm who can use xdm. Therefore, if you are happy to let anyone access the X-Windows desktop locally or remotely, then you would just put an asterisk (*) in Xaccess as I did.



*


If you are very keen on security, you would put only the following in Xaccess. This only allows local users to have access to xdm.



localhost
127.0.0.1


However, even if Xaccess is set up as above, remote xdm login may still be possible with SSH X11 forwarding.



/etc/X11/xdm/Xresources



Xresources file is used to fine-tune the behavior and appearance of XDM. Here is what I put in my Xresources file:



Xcursor.theme: redglass

xlogin*login.translations: #override \
Ctrl<Key>R: abort-display()\n\
<Key>F1: set-session-argument(failsafe) finish-field()\n\
<Key>Delete: delete-character()\n\
<Key>Left: move-backward-character()\n\
<Key>Right: move-forward-character()\n\
<Key>Home: move-to-begining()\n\
<Key>End: move-to-end()\n\
Ctrl<Key>KP_Enter: set-session-argument(failsafe) finish-field()\n\
<Key>KP_Enter: set-session-argument() finish-field()\n\
Ctrl<Key>Return: set-session-argument(failsafe) finish-field()\n\
<Key>Return: set-session-argument() finish-field()

xlogin*greeting: Welcome to CLIENTHOST
xlogin*namePrompt: Login:\040
xlogin*passwdPrompt: Password:\040
xlogin*fail: Login incorrect

xlogin*greetFace: Serif-21:bold:italic
xlogin*face: Sans-15
xlogin*promptFace: Sans-15:bold
xlogin*failFace: Sans-16:bold

xlogin*geometry: 600x400
xlogin*borderWidth: 1
xlogin*frameWidth: 5
xlogin*innerFramesWidth: 2
xlogin*shdColor: grey30
xlogin*hiColor: grey90
xlogin*background: grey
xlogin*greetColor: Blue3
xlogin*failColor: red
*Foreground: black
*Background: #fffff0

xlogin*logoFileName: /usr/share/X11/xdm/pixmaps/penguin_doll_200x300.xpm
xlogin*useShape: true
xlogin*logoPadding: 10


I think the settings are self-explanatory. This is how xdm would look with the above settings. The penguin image was taken from here.



xdm-screenshot

/etc/X11/xdm/Xresources



The Xresources file allows you to specify how many X servers to run and their command arguments. In my case, I run Xorg and Xvfb. Xorg is the standard X server, and Xvfb is a server that runs totally in memory without depending on the video hardware. To see what's going on with Xvfb, I use x11vnc and gvncviewer.



# Default X.org server
:0 local /usr/bin/Xorg :0 vt7 -br -dpi 96 -nolisten TCP

:1 local /usr/local/bin/Xvfb :1 -dpi 96 -screen 0 1024x768x16


/etc/X11/xdm/Xsetup



Xsetup allows you to write any command to run when xdm displays the login screen. In my case, I run gm to set up the background image and run x11vnc to remotely access Xvfb via VNC.



#!/bin/sh
#
# This script is run as root before showing login widget.

gm display -window root /usr/share/wallpapers/Board_Tile_Gray.jpg
xkbcomp -dflts -I/usr/share/X11/xkb /etc/X11/xkb/server-0.xkm $DISPLAY

PID_XVFB=$(pidof Xvfb)
PID_X11VNC=$(pidof x11vnc)
if [ -n "$PID_XVFB" -a -z "$PID_X11VNC" ]; then
x11vnc -display :1 -bg -xkb -nopw -nc_cr -forever -listen localhost -auth $(find /var/lib/xdm/authdir/authfiles -name \*:1\*) > /var/log/x11vnc.log 2>&1
fi


/etc/X11/xdm/xdm-config



In xdm-config, there is only one line that I bother to change. This line enables remote xdm logins.



! SECURITY: do not listen for XDMCP or Chooser requests
! Comment out this line if you want to manage X terminals with xdm
DisplayManager.requestPort: 177


/etc/X11/xdm/xdm-options



I think xdm-options is Debian specific. I don't think I made any change in this file.



# configuration options for xdm
# See xdm.options(5) for an explanation of the available options.

no-ignore-nologin
no-restart-on-upgrade
no-start-on-install
use-sessreg


Resetting XDM



There are other files in /etc/X11/xdm directory that you can safely leave as is. After you make any change with the files, have xdm reread the config files.



kill -1 $(pidof xdm)


If you want to force xdm to kill all running sessions and restart, enter the following command.



/etc/init.d/xdm restart


That's all I have to write about xdm for now. In summary, xdm is a simple, yet functional login manager that is easy to set up.

Monday, October 8, 2012

Linux: Building X.org Kdrive Server Xfbdev on Debian Wheezy

Kdrive is a minimal X11 server that runs as a single executable with little dependencies. I use Kdrive for my Web-only/Rescue Linux systems. Before compiling Kdrive, I installed the following packages on my box running Debian Sid — which will be eventually rolled into Wheezy release:



  • bison

  • g++-4.7

  • libexpat1-dev

  • libpciaccess-dev

  • libpixman-1-dev

  • libssl-dev

  • libudev-dev
  • libxdamage-dev

  • libxfont-dev

  • libxi-dev

  • libxkbfile-dev

  • libxmu-dev

  • libxxf86vm-dev

  • make

  • pkg-config

  • x11proto-bigreqs-dev

  • x11proto-composite-dev

  • x11proto-randr-dev

  • x11proto-render-dev

  • x11proto-resource-dev

  • x11proto-scrnsaver-dev

  • x11proto-video-dev

  • x11proto-xcmisc-dev

  • x11proto-xf86dga-dev

  • x11proto-xinerama-dev

  • xkb-data



Installing X Protocol Headers



The current RandR protocol headers from Debian didn't meet the required version, so I had to download the latest one from freedesktop.org. I installed randrproto like this.



tar xjvf randrproto-1.4.0.tar.bz2
cd randrproto-1.4.0
./configure --prefix=/usr
make install


Compiling Xfbdev



I got the latest X.org release from freedesktop.org. The following commands will build Xfbdev:



tar xjf xorg-server_1.13.0.tar.bz2

cd xorg-server-1.13.0/

./configure --prefix=/usr --disable-xorg --enable-kdrive --enable-kdrive-evdev --enable-config-udev --disable-aiglx --disable-glx --disable-dri --disable-dri2 --disable-drm --disable-record --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/var/lib/xkb --with-xkb-bin-directory=/usr/bin --with-default-xkb-rules=xorg --with-default-xkb-model=pc105 --with-default-xkb-layout=us

make

make install


Installed Files



The following files are installed after successfully building a Kdrive server.


/usr/bin/Xfbdev

/usr/bin/Xnest

/usr/bin/Xvfb

/usr/lib/xorg/protocol.txt

/usr/share/man/man1/Xnest.1

/usr/share/man/man1/Xserver.1

/usr/share/man/man1/Xvfb.1

/var/lib/xkb/README.compiled


To Use Xfbdev



An executable file Xfbdev will be created in /usr/bin. To be able to use the Xfbdev server, framebuffer video must be enabled either in the kernel or as a module. If CONFIG_FB_VESA option was enabled in the kernel, you can use the syslinux bootloader in the following way to boot Linux into a framebuffer video mode:



LABEL minimal
KERNEL vmlinuz-2.6.31.5
INITRD initramfs.lzma
APPEND vga=0x314 video=vesafb:mtrr


Once the framebuffer video has been activated, Xfbdev can be started in the following way:



Xfbdev :0 vt7 dpms -ac -br +bs -dpi 96 -mouse evdev,5,device=/dev/input/event2 -2button -keybd evdev,,device=/dev/input/event3 -fp /usr/local/share/fonts,/usr/share/fonts/X11/Type1,/usr/share/fonts/truetype/ttf-dejavu -nolisten TCP


Download my X.org build 1.13.0



Download

Here you can obtain my compiled binaries Xfbdev, Xnest and Xvfb:





Also Read:



Saturday, October 6, 2012

My Live CD based on Debian Linux Sid

I created a Live CD from my Debian Linux installation. It is based on the unstable version (Sid). However, the live CD still lacks the capability to automatically configure X-Windows and the network, and uses IceWM for minimalist desktop. It can be downloaded from Google Drive. This Live CD has many uses, such as:



  • To troubleshoot and fix computer problems
  • To create backups and restore them
  • To partition a hard drive before installing Windows or Linux
  • To set up GRUB bootloader or enter boot commands
  • To install Debian, Ubuntu or Fedora
  • To access a Windows partition when it is unbootable
  • To survey and diagnose wireless and wired networks
  • To enjoy the Internet with the Web, IM, IRC and VoIP
  • To run a simple FTP or HTTP server
  • To participate in peer-to-peer networks
  • To do basic word processing and spreadsheet
  • To listen to music or watch movies
  • To rip CD's and DVD's


livecd-001

The snapshot above shows idesk icons on the desktop. Idesk is a neat application that displays icons on the desktop for you to quickly launch. Currently, I use IceWM instead of GNOME or KDE desktop to save space on the CD. So idesk is used to provide desktop icons for IceWM.





livecd-002

The snapshot above shows mlterm running. mlterm is my favorite terminal application. It allows me to use many languages.



livecd-003

Gparted is a cool application to have on a live CD. It lets you divide the hard drive into many partitions so you can run multiple operating systems.



livecd-004

IceWeasel is rebranded Firefox from Debian. Sorry, Chrome is not included.



livecd-005

LibreOffice is a fork of OpenOffice.org suite. I use it to create documents or read Microsoft Office documents.



Specifying the locale at boot time



To see your own language with the live CD, select an entry from the menu, click Tab and append LANG= option to the command line. For example, if you speak French, append LANG=fr_FR.UTF-8.

Saturday, September 22, 2012

To Compile UnionFS-fuse 0.26 on Debian Linux

I am trying to switch to unionfs-fuse for my live CD, but so far I haven't much success yet. Debian's unionfs-fuse package in Sid is outdated (version 0.24), so I compiled version 0.26. I had to install libfuse-dev in order to be able to build UnionFS-fuse. I probably needed cmake too, but I didn't choose to install cmake.






  • cmake
  • gcc
  • libfuse-dev
  • make


I edited Makefile to change PREFIX.



PREFIX=/usr
BINDIR=/bin
SBINDIR=/sbin


I just typed make to begin compilation.



make
make install


The following files are installed.



/usr/bin/unionfs
/usr/sbin/mount.unionfs
/usr/share/man/man8/unionfs-fuse.8


To make it compatible with Debian and derivatives, I renamed unionfs.



mv /usr/bin/unionfs /usr/bin/unionfs-fuse

Saturday, August 21, 2010

Debian Linux: Simple steps to recover files from /lost+found

The following steps illustrate how one can use simple shell commands to recover files from the /lost+found directory in Linux. This assumes that you actually have some files in /lost+found.




  1. First, concatenate all the *.md5sums files in /var/lib/dpkg/info into a single file:


    cd /var/lib/dpkg/info
    cat *.md5sums | sort -k 2 > /tmp/all.md5


  2. Go to the /lost+found directory. fsck may have placed some files here after fixing the Linux partition. If you don't find any file here, you can relax and skip the following steps. Run md5sum on files in /lost+found.


    cd /lost+found
    md5sum * | sort > /tmp/lost.md5


  3. Put only the md5sum values into a temporary file, called 0.txt.


    awk '{print $1}' /tmp/lost.md5 > /tmp/0.txt


  4. Search all.md5 for the md5sum values in 0.txt and save the results in 1.txt.


    for f in $(cat /tmp/0.txt); do grep $f all.md5 >> /tmp/1.txt; done


  5. Put the names of files in /lost+found into a temporary fie 2.txt.


    awk '{print $2}' /tmp/lost.md5 > /tmp/2.txt


  6. Move the lost+found files to their original locations.


    cd /
    for $f in $(cat /tmp/2.txt); do MD5=$(grep $f /dev/shm/lost.md5 | awk '{print $1}'); ORIGIN=$(grep $MD5 /tmp/1.txt | awk '{print $2}'); mv /lost+found/$f /$ORIGIN; done

Wednesday, July 28, 2010

Checking Integrity of A Debian/Ubuntu System

Sometimes, a Linux filesystem becomes corrupted, system files are damaged, or some crucial files get lost. This often happens, regardless of which filesystem (ext2, ext3, ext4, jfs, reiserfs, reiser4, or xfs) is used. There are many possible reasons, such as:



  • Unstable hardware, for example, memory or hard drive problem
  • Overheat, power surge, quake or another environmental disaster
  • Buggy software, such as a bug in the kernel or the filesystem driver
  • Compromised security, for example, network intrusion or attack
  • Worm or virus infection


Files in Linux systems can be categorized into the following three:




  1. Verifiable System Files

    In Linux systems that are managed by packages (such as Debian and Ubuntu), these files are installed by packages and make up the bulk of the filesystem. These files reside in such directories as /bin, /lib, /sbin and /usr. They are usually static, which means they don't normally change except when the system is updated, or locally compiled binaries are installed.
  2. Changeable System Files

    These files are auxiliary system files for system configuration, initialization or customization, and system data (such as logs and cache). They reside in /boot, /etc, /opt, /srv and /var.
  3. User Data

    These files are created and used by superuser (a.k.a root) and normal users, or software-generated during casual user activities. Typically, they are in /home, /media, /mnt and /root.


This post focuses on verifiable system files (installed by packages). When the filesystem becomes corrupted (but not completely unreadable), it is possible to verify and restore the system integrity by using package checksums. Before you continue, make sure to fsck the filesystem.



e2fsck -r -v /dev/sda7


In this example, /dev/sda7 points to an ext2 partition we're going to check. Be aware that you cannot fsck a mounted filesystem. Therefore, boot with a Debian Live CD (or a Ubuntu CD) and run fsck. After you've performed fsck, there may be some files created in the /lost+found directory. We'll deal with them later. First, mount the filesystem.



mount -t ext2 /dev/sda7 /mnt


Go to /var/lib/dpkg/info. Then, concatenate all the md5sums files. Most, if not all, Debian and Ubuntu packages come with a md5sum file that we can use to check the integrity of the package and the files installed by the package.



cd /var/lib/dpkg/info
cat *.md5sums | sort > /dev/shm/all.md5


all.md5 has md5 checksums of all the files installed on the system. Now, check the files on the Debian/Ubuntu system against the concatenated md5sums file.



cd /
md5sum -c /dev/shm/all.md5 > /dev/shm/check.txt 2>&1


/dev/shm/check.txt now contains the results of the integrity check. It looks like this:



bin/bash: OK
bin/bunzip2: OK
bin/bzcat: FAILED


In this example, /bin/bzcat is damaged. To find all the missing or damaged files, use a command like this one:



grep -v ': OK$' /dev/shm/check.txt


Let's reinstall this file. First, find out which package this file belongs to.



dpkg -S /bin/bzcat


We'll see the following result.



bzip2: /bin/bzcat


Now we know that we need to reinstall bzip2. Let's download the package.



dpkg -p bzip2 | grep 'Filename: '


This command will let us know the name of the package to download. Use wget to download it.



wget ftp://ftp.us.debian.org/debian/pool/main/b/bzip2/bzip2_1.0.5-4_i386.deb


You can just reinstall the package.



dpkg -i bzip2_1.0.5-4_i386.deb


Or, you can just extract one file:



dpkg --fsys-tarfile bzip2_1.0.5-4_i386.deb | tar xf - ./bin/bzcat


Alternatively,



dpkg --fsys-tarfile bzip2_1.0.5-4_i386.deb | tar xOf - ./bin/bzcat > /mnt/bin/bzcat


To restore a file from the /lost+found directory, you can also use the MD5SUMS file. First, run md5sum on files in /lost+found.



cd /lost+found
md5sum *


You may get an output like this.



9aaa2176d20c1b1203e3abbac55a2513  #124531


To find out what #124531 file is originally, find its md5 checksum from the all.md5 file above.



grep 9aaa /dev/shm/all.md5


You'll get a result like this.



9aaa2176d20c1b1203e3abbac55a2513  bin/bzip2


Now you can just move it to its place.



mv \#124531 /mnt/bin/bzip2


After you restore all damaged files and restore files from /lost+found, you can find missing files in the system. Go to /var/lib/dpkg/info again and concatenate all the list files.



cd /var/lib/dpkg/info
cat *.list | sort | uniq > /dev/shm/all.txt


The .list files in the /var/lib/dpkg/info directore show the list of files installed by packages. Let's find what's missing from the system.



cd /
for f in $(cat /dev/shm/all.txt ); do test -e "$f" || echo "$f" >> /dev/shm/nonexist.txt ; done


The file /dev/shm/nonexist.txt will show which files are missing from the system. You can then replace the missing files as done previously.

Sunday, January 31, 2010

Use cdebootstrap to install Debian/Ubuntu Linux

Using the official CD from Debian or Ubuntu to install a fresh new system can be tedious if you just want a minimal or customized system. An alternative way to install Debian or Ubuntu is to use cdebootstrap. cdebootstrap is a simple command-line program that downloads packages from a Debian/Ubuntu archive, unpacks them into a mounted filesystem, and set 'em up. But it's not a full-fledged installer, so you need to take care of partitioning and setting up bootloader in order to complete the installation.



In order to use cdebootstrap, you need to have an already-running Linux system. However, any Linux live CD will suffice. Fortunately, I have created my own Debian Live CD with included cdebootstrap. I booted my Debian Live and opened mlterm.



If you don't have cdebootstrap, there are many ways to install it. Download a cdebootstrap-static package from http://packages.debian.org/sid/cdebootstrap-static that matches your architecture. If you are running an rpm-based system, such as Fedora, use ar, tar and gzip to unpack the package. For example:



wget http://ftp.us.debian.org/debian/pool/main/c/cdebootstrap/cdebootstrap-static_0.5.5_i386.deb

ar xv cdebootstrap-static_0.5.5_i386.deb

gzip -dc data.tar.gz > /tmp/data.tar

cd /; tar xvf /tmp/data.tar


Before running cdebootstrap, make sure that you have an empty partition and have mounted it. GParted can be used to create an empty partition. In the following example, I used cdebootstrap-static to install Ubuntu 6.06 Dapper into a filesystem mounted on /mnt.



cdebootstrap-static --allow-unauthenticated --flavour=minimal dapper /mnt http://archive.ubuntu.com/ubuntu


--allow-unauthenticated option is used in case ubuntu-archive-keyring or debian-archive-keyring is not installed. There are three flavours to choose from: minimal, standard and build. For suites other than dapper, you can choose one among etch, lenny, squeeze, sid, breezy, dapper, edgy, feisty, gutsy, hardy, intrepid, oldstable, stable, testing, unstable.. The URL at the end of command line is optional. For Debian, you can type http://archive.debian.org/debian.



cdebootstrap downloaded and installed the following set of packages into the new filesystem mounted at /mnt. This list is for a minimal flavour.



apt
base-files
base-passwd
bash
belocs-locales-bin
bsdutils
coreutils
debconf
debconf-i18n
debianutils
diff
dpkg
e2fslibs
e2fsprogs
findutils
gcc-4.0-base
gnupg
grep
gzip
hostname
initscripts
libacl1
libattr1
libblkid1
libbz2-1.0
libc6
libcap1
libcomerr2
libdb4.3
libgcc1
libgcrypt11
libgnutls12
libgpg-error0
libldap2
liblocale-gettext-perl
liblzo1
libncurses5
libopencdk8
libpam-foreground
libpam-modules
libpam-runtime
libpam0g
libreadline5
libsasl2
libsasl2-modules
libselinux1
libsepol1
libslang2
libss2
libssl0.9.8
libstdc++6
libtasn1-2
libtext-charwidth-perl
libtext-iconv-perl
libtext-wrapi18n-perl
libusb-0.1-4
libuuid1
locales
login
lsb-base
makedev
mawk
mount
ncurses-base
ncurses-bin
perl-base
python-minimal
python2.4-minimal
readline-common
sed
sysv-rc
sysvinit
tar
ubuntu-keyring
util-linux
zlib1g


In order to fine-tune the newly installed system, chroot into it and install additional packages.



chroot /mnt /bin/bash

Monday, January 4, 2010

Build GTK-gnutella on Debian 3.1 Sarge

I keep writing about Debian 3.1 Sarge which is an outdated release. Yet, Debian Sarge has some historical values. I use Sarge as the minimum base for my Internet computer. Today, I compiled GTK-gnutella on Debian Sarge. For preparation, I installed the following packages:



  • gcc
  • make
  • zlib1g-dev
  • libxml2-dev
  • libgtk2.0-dev


GTK-gnutella depends on GNUtls library for secure communication. I downloaded and compiled libgpg-error, libgcrypt, libtasn and gnutls in the order. They all have the same procedure.



./configure --build=i586-pc-linux-gnu --prefix=/usr --disable-shared
make
make install


Then, I unpacked gtk-gnutella source and configured it.


./Configure


Since I built gnutls statically, I had to modify src/Makefile slightly.


GNUTLS_LDFLAGS = -lgnutls -ltasn1 -lgcrypt -lgpg-error


I started compilation.



make
make install


The resulting executable depends on gtk+ 2.0 and libxml2 externally and works on Sarge, Etch, Lenny and Sid all.

Sunday, January 3, 2010

Compile Aria2c on Debian Linux

Aria2 is a fast download utility that you use in the Command Prompt or xterm. To compile aria2 for Linux, install the following packages.



  • ca-certificates
  • g++
  • make
  • libexpat1-dev
  • libsqlite3-dev
  • libssl-dev
  • zlib1g-dev


Although Debian 5.0 Lenny has libc-ares2, Debian 4.0 Etch and Debian 3.1 Sarge don't have it. As a user of Debian Sarge, I had to compile c-ares myself to enable asynchronous DNS resolution in Aria2c. I downloaded c-ares source from c-ares.haxx.se and compiled it statically.



tar xzvf c-ares-1.7.0.tar.gz

cd c-ares-1.7.0/

./configure --prefix=/usr --build=i586-pc-linux-gnu --disable-debug --disable-shared CFLAGS='-DCARES_STATICLIB'

make

make install


Then, I downloaded Aria2 source from aria2.sf.net and compiled it like this:



tar xzvf aria2-1.8.0.tar.gz

cd aria2-1.8.0

./configure --build=i586-pc-linux-gnu --prefix=/usr --enable-bittorrent --enable-metalink --enable-threads=posix --with-ca-bundle="/etc/ssl/certs/ca-certificates.crt" LIBS='-lrt -lcares' CPPFLAGS='-DCARES_STATICLIB'


You can optionally link aria2 with static libraries libssl and libcrypto. This is useful when you move aria2c to another system with a different version of OpenSSL library. To do so, open every Makefile in the aria2 source directory and change every line containing “-L/usr/local/lib -lssl -lcrypto” to “/usr/lib/libssl.a /usr/lib/libcrypto.a”. Then, run the following commands to build aria2.



make
make install


An executable /usr/bin/aria2c will be installed. To use it, open a xterm or rxvt and type its command. To see brief command-line options, type aria2c -h.

Saturday, January 2, 2010

To Compile aMule 2.2.6 on Debian 3.1 Sarge

aMule is a peer-to-peer file-sharing application. Although ed2k networks that aMule connects to have been shrinking in popularity, I prefer aMule over Bittorrent clients for its ability to create serverless P2P network (Kademlia). The aMule backported package for Debian 3.1 Sarge is outdated, so I compiled the latest version 2.2.6 of aMule on Debian Sarge. I installed the following packages first.



  • binutils-dev
  • bison
  • flex
  • g77
  • g++
  • gettext
  • make
  • libcrypto++-dev
  • libgd2-noxpm-dev (or libgd2-xpm-dev)
  • libgeoip-dev
  • libgtk2.0-dev
  • libjpeg62-dev
  • libpng12-dev
  • libreadline5-dev
  • libsm-dev
  • libtiff4-dev
  • libxpm-dev


aMule depends on wxGTK library, but wxGTK library in Debian Sarge is also outdated. So I downloaded the latest wxGTK source (wxGTK-2.8.10.tar.gz) from wxwidgets.org. I compiled wxGTK in the following way. The --disable-shared option causes a static library to be built. This allows me to install aMule on another system without having to install a separate wxGTK library.



tar xzvf wxGTK-2.8.10.tar.gz

cd wxGTK-2.8.10/

mkdir buildgtk

cd buildgtk

../configure --prefix=/usr --sysconfdir=/etc --build=i586-pc-linux-gnu --enable-monolithic --enable-optimise --enable-intl --enable-unicode --enable-threads --enable-mousewheel --with-gtk=2 --with-libpng --with-libjpeg --with-libtiff --with-libxpm --with-regex --with-zlib --with-expat --disable-shared --disable-abi-incompatible-features --disable-no_rtti --disable-no_exceptions --disable-joystick --disable-compat24

make

make install


aMule can use libupnp if available. I downloaded libupnp-1.6.6.tar.bz2 from pupnp.sf.net and compiled it statically like this:


tar xjvf libupnp-1.6.6.tar.bz2

cd libupnp-1.6.6/

./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --build=i586-pc-linux-gnu --disable-shared

make

make install


Then, I built aMule in the following way.


tar xjvf aMule-2.2.6.tar.bz2

cd aMule-2.2.6/

./configure --prefix=/usr --mandir=/usr/share/man --build=i586-pc-linux-gnu --enable-amule-daemon --enable-amulecmd --enable-webserver --enable-cas --enable-wxcas --enable-alc --enable-alcc --enable-geoip --disable-debug --enable-optimize

make

make install


The following files are installed on the system:


/usr/bin/alc
/usr/bin/alcc
/usr/bin/amule
/usr/bin/amulecmd
/usr/bin/amuled
/usr/bin/amuleweb
/usr/bin/autostart-xas
/usr/bin/cas
/usr/bin/ed2k
/usr/bin/wxcas
/usr/lib/xchat/plugins/xas.pl
/usr/share/amule/skins/gnome.zip
/usr/share/amule/skins/kde4.zip
/usr/share/amule/skins/tango.zip
/usr/share/amule/skins/xfce.zip
/usr/share/amule/webserver/chicane/aMule.tmpl
/usr/share/amule/webserver/chicane/add_server.gif
/usr/share/amule/webserver/chicane/arrow_down.gif
/usr/share/amule/webserver/chicane/arrow_down_logout.gif
/usr/share/amule/webserver/chicane/arrow_right.gif
/usr/share/amule/webserver/chicane/arrow_up.gif
/usr/share/amule/webserver/chicane/back.gif
/usr/share/amule/webserver/chicane/black.gif
/usr/share/amule/webserver/chicane/blank1x1.gif
/usr/share/amule/webserver/chicane/blue1.gif
/usr/share/amule/webserver/chicane/blue2.gif
/usr/share/amule/webserver/chicane/blue3.gif
/usr/share/amule/webserver/chicane/blue4.gif
/usr/share/amule/webserver/chicane/blue5.gif
/usr/share/amule/webserver/chicane/blue6.gif
/usr/share/amule/webserver/chicane/cp_download.gif
/usr/share/amule/webserver/chicane/cp_kad.gif
/usr/share/amule/webserver/chicane/cp_search.gif
/usr/share/amule/webserver/chicane/cp_servers.gif
/usr/share/amule/webserver/chicane/cp_settings.gif
/usr/share/amule/webserver/chicane/cp_shared.gif
/usr/share/amule/webserver/chicane/cp_stats.gif
/usr/share/amule/webserver/chicane/downloads.php
/usr/share/amule/webserver/chicane/emule.gif
/usr/share/amule/webserver/chicane/favicon.ico
/usr/share/amule/webserver/chicane/green.gif
/usr/share/amule/webserver/chicane/greenpercent.gif
/usr/share/amule/webserver/chicane/index.php
/usr/share/amule/webserver/chicane/l_cancel.gif
/usr/share/amule/webserver/chicane/l_connect.gif
/usr/share/amule/webserver/chicane/l_down.gif
/usr/share/amule/webserver/chicane/l_ed2klink.gif
/usr/share/amule/webserver/chicane/l_info.gif
/usr/share/amule/webserver/chicane/l_pause.gif
/usr/share/amule/webserver/chicane/l_resume.gif
/usr/share/amule/webserver/chicane/l_up.gif
/usr/share/amule/webserver/chicane/log.gif
/usr/share/amule/webserver/chicane/login.php
/usr/share/amule/webserver/chicane/login_bottom.gif
/usr/share/amule/webserver/chicane/login_downmain.gif
/usr/share/amule/webserver/chicane/login_lefttop.gif
/usr/share/amule/webserver/chicane/login_righttop.gif
/usr/share/amule/webserver/chicane/login_top.gif
/usr/share/amule/webserver/chicane/login_topdown.gif
/usr/share/amule/webserver/chicane/login_topseperator.gif
/usr/share/amule/webserver/chicane/logo.jpg
/usr/share/amule/webserver/chicane/main_bg.gif
/usr/share/amule/webserver/chicane/main_top_bg.gif
/usr/share/amule/webserver/chicane/main_topbar.gif
/usr/share/amule/webserver/chicane/main_topbardarker.gif
/usr/share/amule/webserver/chicane/main_topbarseperator.gif
/usr/share/amule/webserver/chicane/phpamule.png
/usr/share/amule/webserver/chicane/preferences.php
/usr/share/amule/webserver/chicane/red.gif
/usr/share/amule/webserver/chicane/search.php
/usr/share/amule/webserver/chicane/servers.php
/usr/share/amule/webserver/chicane/shared.php
/usr/share/amule/webserver/chicane/stat_graphs.php
/usr/share/amule/webserver/chicane/stat_tree.php
/usr/share/amule/webserver/chicane/transparent.gif
/usr/share/amule/webserver/chicane/tree-closed.gif
/usr/share/amule/webserver/chicane/tree-leaf.gif
/usr/share/amule/webserver/chicane/tree-open.gif
/usr/share/amule/webserver/chicane/yellow.gif
/usr/share/amule/webserver/default/aMule.tmpl
/usr/share/amule/webserver/default/add_server.gif
/usr/share/amule/webserver/default/arrow_down.gif
/usr/share/amule/webserver/default/arrow_right.gif
/usr/share/amule/webserver/default/arrow_up.gif
/usr/share/amule/webserver/default/back.gif
/usr/share/amule/webserver/default/black.gif
/usr/share/amule/webserver/default/blue1.gif
/usr/share/amule/webserver/default/blue2.gif
/usr/share/amule/webserver/default/blue3.gif
/usr/share/amule/webserver/default/blue4.gif
/usr/share/amule/webserver/default/blue5.gif
/usr/share/amule/webserver/default/blue6.gif
/usr/share/amule/webserver/default/cp_download.gif
/usr/share/amule/webserver/default/cp_kad.gif
/usr/share/amule/webserver/default/cp_search.gif
/usr/share/amule/webserver/default/cp_servers.gif
/usr/share/amule/webserver/default/cp_settings.gif
/usr/share/amule/webserver/default/cp_shared.gif
/usr/share/amule/webserver/default/cp_stats.gif
/usr/share/amule/webserver/default/downloads.php
/usr/share/amule/webserver/default/emule.gif
/usr/share/amule/webserver/default/favicon.ico
/usr/share/amule/webserver/default/green.gif
/usr/share/amule/webserver/default/greenpercent.gif
/usr/share/amule/webserver/default/index.php
/usr/share/amule/webserver/default/l_cancel.gif
/usr/share/amule/webserver/default/l_connect.gif
/usr/share/amule/webserver/default/l_down.gif
/usr/share/amule/webserver/default/l_ed2klink.gif
/usr/share/amule/webserver/default/l_info.gif
/usr/share/amule/webserver/default/l_pause.gif
/usr/share/amule/webserver/default/l_resume.gif
/usr/share/amule/webserver/default/l_up.gif
/usr/share/amule/webserver/default/log.gif
/usr/share/amule/webserver/default/login.php
/usr/share/amule/webserver/default/logo.jpg
/usr/share/amule/webserver/default/phpamule.png
/usr/share/amule/webserver/default/preferences.php
/usr/share/amule/webserver/default/red.gif
/usr/share/amule/webserver/default/search.php
/usr/share/amule/webserver/default/servers.php
/usr/share/amule/webserver/default/shared.php
/usr/share/amule/webserver/default/stat_graphs.php
/usr/share/amule/webserver/default/stat_tree.php
/usr/share/amule/webserver/default/transparent.gif
/usr/share/amule/webserver/default/tree-closed.gif
/usr/share/amule/webserver/default/tree-leaf.gif
/usr/share/amule/webserver/default/tree-open.gif
/usr/share/amule/webserver/default/yellow.gif
/usr/share/amule/webserver/litoral/amuleweb-main-dload.php
/usr/share/amule/webserver/litoral/amuleweb-main-kad.php
/usr/share/amule/webserver/litoral/amuleweb-main-log.php
/usr/share/amule/webserver/litoral/amuleweb-main-prefs.php
/usr/share/amule/webserver/litoral/amuleweb-main-search.php
/usr/share/amule/webserver/litoral/amuleweb-main-servers.php
/usr/share/amule/webserver/litoral/amuleweb-main-shared.php
/usr/share/amule/webserver/litoral/amuleweb-main-stats.php
/usr/share/amule/webserver/litoral/black.gif
/usr/share/amule/webserver/litoral/blank1x1.gif
/usr/share/amule/webserver/litoral/blue1.gif
/usr/share/amule/webserver/litoral/blue2.gif
/usr/share/amule/webserver/litoral/blue3.gif
/usr/share/amule/webserver/litoral/blue4.gif
/usr/share/amule/webserver/litoral/blue5.gif
/usr/share/amule/webserver/litoral/blue6.gif
/usr/share/amule/webserver/litoral/cancel.gif
/usr/share/amule/webserver/litoral/close.png
/usr/share/amule/webserver/litoral/col.png
/usr/share/amule/webserver/litoral/connect.gif
/usr/share/amule/webserver/litoral/down.png
/usr/share/amule/webserver/litoral/edkserv_0.png
/usr/share/amule/webserver/litoral/edkserv_1.png
/usr/share/amule/webserver/litoral/favicon.ico
/usr/share/amule/webserver/litoral/filter.png
/usr/share/amule/webserver/litoral/fond.gif
/usr/share/amule/webserver/litoral/fond_haut.png
/usr/share/amule/webserver/litoral/footer.php
/usr/share/amule/webserver/litoral/index.html
/usr/share/amule/webserver/litoral/kitty.gif
/usr/share/amule/webserver/litoral/log.php
/usr/share/amule/webserver/litoral/login.php
/usr/share/amule/webserver/litoral/loginfond.gif
/usr/share/amule/webserver/litoral/loginfond_haut.png
/usr/share/amule/webserver/litoral/loginlogo.jpg
/usr/share/amule/webserver/litoral/loginlogo.png
/usr/share/amule/webserver/litoral/logo.png
/usr/share/amule/webserver/litoral/maquette.dwt
/usr/share/amule/webserver/litoral/ok.png
/usr/share/amule/webserver/litoral/pause.png
/usr/share/amule/webserver/litoral/play.png
/usr/share/amule/webserver/litoral/red.gif
/usr/share/amule/webserver/litoral/refresh.png
/usr/share/amule/webserver/litoral/search_0.png
/usr/share/amule/webserver/litoral/search_1.png
/usr/share/amule/webserver/litoral/shared_0.png
/usr/share/amule/webserver/litoral/shared_1.png
/usr/share/amule/webserver/litoral/sheserv_0.png
/usr/share/amule/webserver/litoral/sheserv_1.png
/usr/share/amule/webserver/litoral/stats.php
/usr/share/amule/webserver/litoral/stats_0.png
/usr/share/amule/webserver/litoral/stats_1.png
/usr/share/amule/webserver/litoral/stats_tree.php
/usr/share/amule/webserver/litoral/style.css
/usr/share/amule/webserver/litoral/tab_bottom.png
/usr/share/amule/webserver/litoral/tab_bottom_left.png
/usr/share/amule/webserver/litoral/tab_bottom_right.png
/usr/share/amule/webserver/litoral/tab_left.png
/usr/share/amule/webserver/litoral/tab_right.png
/usr/share/amule/webserver/litoral/tab_top.png
/usr/share/amule/webserver/litoral/tab_top_left.png
/usr/share/amule/webserver/litoral/tab_top_right.png
/usr/share/amule/webserver/litoral/transf_0.png
/usr/share/amule/webserver/litoral/transf_1.png
/usr/share/amule/webserver/litoral/tree-closed.gif
/usr/share/amule/webserver/litoral/tree-leaf.gif
/usr/share/amule/webserver/litoral/tree-open.gif
/usr/share/amule/webserver/litoral/up.png
/usr/share/amule/webserver/litoral/yellow.gif
/usr/share/amule/webserver/php-default/amuleweb-main-dload.php
/usr/share/amule/webserver/php-default/amuleweb-main-kad.php
/usr/share/amule/webserver/php-default/amuleweb-main-prefs.php
/usr/share/amule/webserver/php-default/amuleweb-main-search.php
/usr/share/amule/webserver/php-default/amuleweb-main-servers.php
/usr/share/amule/webserver/php-default/amuleweb-main-shared.php
/usr/share/amule/webserver/php-default/amuleweb-main-stats.php
/usr/share/amule/webserver/php-default/apply.jpeg
/usr/share/amule/webserver/php-default/arrow-r.png
/usr/share/amule/webserver/php-default/cancel.gif
/usr/share/amule/webserver/php-default/connect.gif
/usr/share/amule/webserver/php-default/delete.jpeg
/usr/share/amule/webserver/php-default/down.jpeg
/usr/share/amule/webserver/php-default/favicon.ico
/usr/share/amule/webserver/php-default/footer.php
/usr/share/amule/webserver/php-default/index.html
/usr/share/amule/webserver/php-default/login.php
/usr/share/amule/webserver/php-default/pause.jpeg
/usr/share/amule/webserver/php-default/phpamule.png
/usr/share/amule/webserver/php-default/resume.jpeg
/usr/share/amule/webserver/php-default/stats.php
/usr/share/amule/webserver/php-default/stats_tree.php
/usr/share/amule/webserver/php-default/toolbutton-connect.jpeg
/usr/share/amule/webserver/php-default/toolbutton-download-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-download.jpeg
/usr/share/amule/webserver/php-default/toolbutton-filter.jpeg
/usr/share/amule/webserver/php-default/toolbutton-kad-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-kad.jpeg
/usr/share/amule/webserver/php-default/toolbutton-logout-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-logout.jpeg
/usr/share/amule/webserver/php-default/toolbutton-reload.jpeg
/usr/share/amule/webserver/php-default/toolbutton-search-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-search.jpeg
/usr/share/amule/webserver/php-default/toolbutton-servers-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-servers.jpeg
/usr/share/amule/webserver/php-default/toolbutton-settings-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-settings.jpeg
/usr/share/amule/webserver/php-default/toolbutton-shared-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-shared.jpeg
/usr/share/amule/webserver/php-default/toolbutton-stats-pressed.jpeg
/usr/share/amule/webserver/php-default/toolbutton-stats.jpeg
/usr/share/amule/webserver/php-default/top.html
/usr/share/amule/webserver/php-default/tree-closed.gif
/usr/share/amule/webserver/php-default/tree-leaf.gif
/usr/share/amule/webserver/php-default/tree-open.gif
/usr/share/amule/webserver/php-default/up.jpeg
/usr/share/applications/alc.desktop
/usr/share/applications/amule.desktop
/usr/share/applications/wxcas.desktop
/usr/share/cas/stat.png
/usr/share/cas/tmp.html
/usr/share/doc/aMule-2.2.6/ABOUT-NLS
/usr/share/doc/aMule-2.2.6/Changelog
/usr/share/doc/aMule-2.2.6/EC_Protocol.txt
/usr/share/doc/aMule-2.2.6/ED2K-Links.HOWTO
/usr/share/doc/aMule-2.2.6/INSTALL
/usr/share/doc/aMule-2.2.6/README
/usr/share/doc/aMule-2.2.6/TODO
/usr/share/doc/aMule-2.2.6/amule-win32.HOWTO.txt
/usr/share/doc/aMule-2.2.6/amulesig.txt
/usr/share/doc/aMule-2.2.6/license.txt
/usr/share/doc/aMule-2.2.6/socks4.protocol
/usr/share/locale/ar/LC_MESSAGES/amule.mo
/usr/share/locale/ast/LC_MESSAGES/amule.mo
/usr/share/locale/bg/LC_MESSAGES/amule.mo
/usr/share/locale/ca/LC_MESSAGES/amule.mo
/usr/share/locale/cs/LC_MESSAGES/amule.mo
/usr/share/locale/da/LC_MESSAGES/amule.mo
/usr/share/locale/de/LC_MESSAGES/amule.mo
/usr/share/locale/el/LC_MESSAGES/amule.mo
/usr/share/locale/en_GB/LC_MESSAGES/amule.mo
/usr/share/locale/es/LC_MESSAGES/amule.mo
/usr/share/locale/et_EE/LC_MESSAGES/amule.mo
/usr/share/locale/eu/LC_MESSAGES/amule.mo
/usr/share/locale/fi/LC_MESSAGES/amule.mo
/usr/share/locale/fr/LC_MESSAGES/amule.mo
/usr/share/locale/gl/LC_MESSAGES/amule.mo
/usr/share/locale/he/LC_MESSAGES/amule.mo
/usr/share/locale/hr/LC_MESSAGES/amule.mo
/usr/share/locale/hu/LC_MESSAGES/amule.mo
/usr/share/locale/it/LC_MESSAGES/amule.mo
/usr/share/locale/it_CH/LC_MESSAGES/amule.mo
/usr/share/locale/ja/LC_MESSAGES/amule.mo
/usr/share/locale/ko_KR/LC_MESSAGES/amule.mo
/usr/share/locale/lt/LC_MESSAGES/amule.mo
/usr/share/locale/nl/LC_MESSAGES/amule.mo
/usr/share/locale/nn/LC_MESSAGES/amule.mo
/usr/share/locale/pl/LC_MESSAGES/amule.mo
/usr/share/locale/pt_BR/LC_MESSAGES/amule.mo
/usr/share/locale/pt_PT/LC_MESSAGES/amule.mo
/usr/share/locale/ru/LC_MESSAGES/amule.mo
/usr/share/locale/sl/LC_MESSAGES/amule.mo
/usr/share/locale/sq/LC_MESSAGES/amule.mo
/usr/share/locale/sv/LC_MESSAGES/amule.mo
/usr/share/locale/tr/LC_MESSAGES/amule.mo
/usr/share/locale/uk/LC_MESSAGES/amule.mo
/usr/share/locale/zh_CN/LC_MESSAGES/amule.mo
/usr/share/locale/zh_TW/LC_MESSAGES/amule.mo
/usr/share/man/de/man1/alc.1
/usr/share/man/de/man1/alcc.1
/usr/share/man/de/man1/amule.1
/usr/share/man/de/man1/amulecmd.1
/usr/share/man/de/man1/amuled.1
/usr/share/man/de/man1/amuleweb.1
/usr/share/man/de/man1/cas.1
/usr/share/man/de/man1/ed2k.1
/usr/share/man/de/man1/wxcas.1
/usr/share/man/de/man1/xas.1
/usr/share/man/es/man1/alc.1
/usr/share/man/es/man1/alcc.1
/usr/share/man/es/man1/amule.1
/usr/share/man/es/man1/amulecmd.1
/usr/share/man/es/man1/amuled.1
/usr/share/man/es/man1/amuleweb.1
/usr/share/man/es/man1/cas.1
/usr/share/man/es/man1/ed2k.1
/usr/share/man/es/man1/wxcas.1
/usr/share/man/es/man1/xas.1
/usr/share/man/eu/man1/alc.1
/usr/share/man/eu/man1/alcc.1
/usr/share/man/eu/man1/amule.1
/usr/share/man/eu/man1/amulecmd.1
/usr/share/man/eu/man1/amuled.1
/usr/share/man/eu/man1/amuleweb.1
/usr/share/man/eu/man1/cas.1
/usr/share/man/eu/man1/ed2k.1
/usr/share/man/eu/man1/wxcas.1
/usr/share/man/eu/man1/xas.1
/usr/share/man/fr/man1/alcc.1
/usr/share/man/fr/man1/amule.1
/usr/share/man/fr/man1/amulecmd.1
/usr/share/man/fr/man1/amuled.1
/usr/share/man/fr/man1/amuleweb.1
/usr/share/man/fr/man1/ed2k.1
/usr/share/man/hu/man1/alc.1
/usr/share/man/hu/man1/alcc.1
/usr/share/man/hu/man1/amule.1
/usr/share/man/hu/man1/amulecmd.1
/usr/share/man/hu/man1/amuled.1
/usr/share/man/hu/man1/amuleweb.1
/usr/share/man/hu/man1/cas.1
/usr/share/man/hu/man1/ed2k.1
/usr/share/man/hu/man1/wxcas.1
/usr/share/man/hu/man1/xas.1
/usr/share/man/it/man1/amule.1
/usr/share/man/it/man1/amulecmd.1
/usr/share/man/it/man1/amuled.1
/usr/share/man/it/man1/amuleweb.1
/usr/share/man/it/man1/ed2k.1
/usr/share/man/man1/alc.1
/usr/share/man/man1/alcc.1
/usr/share/man/man1/amule.1
/usr/share/man/man1/amulecmd.1
/usr/share/man/man1/amuled.1
/usr/share/man/man1/amuleweb.1
/usr/share/man/man1/cas.1
/usr/share/man/man1/ed2k.1
/usr/share/man/man1/wxcas.1
/usr/share/man/man1/xas.1
/usr/share/pixmaps/alc.xpm
/usr/share/pixmaps/amule.xpm
/usr/share/pixmaps/wxcas.xpm

Wednesday, December 30, 2009

To Build Hanterm-xf 2.0.6 on Debian Linux

Hanterm-xf is a fast and functional X-terminal emulator. Although development of Hanterm-xf ceased long ago, I find hanterm-xf very useful because it has built-in Korean input system and displays Latin, Korean and Unicode well. Trying to find the hanterm-xf source was not so easy, but I found it here with Yahoo! search. I downloaded hanterm-xf-2.0.6-177.tar.gz Compiling Hanterm-xf requires the following development packages to be installed:



  • gcc
  • g77
  • make
  • libncursesw5-dev
  • libxft-dev
  • libxaw7-dev


Before compiling hanterm-xf, I had to make some symbolic links in /usr/include.


ln -s ncursesw /usr/include/ncurses
ln -s freetype2/freetype /usr/include


I unpacked the hanterm-xf source and entered the source directory:


tar xzvf hanterm-xf-2.0.6-177.tar.gz
cd hanterm-xf-2.0.6-177


I ran ./configure for hanterm-xf as follows:


./configure --prefix=/usr --host=i586-pc-linux-gnu --enable-doublechars --enable-freetype --enable-i18n --disable-input-method --disable-maximize --enable-pty-handshake --disable-tek4014 --enable-toolbar --disable-vt52 --enable-wide-chars --enable-chat --enable-now-chat


I had to modify the LIBS line of Makefile in order to successfully link hanterm with libncursesw5 later. Basically, I appended -lncursesw at the end of the LIBS line.



LIBS = -lXft -lfreetype -lXrender -lXrender -lXaw -lXmu -lXext -lXt -lSM -lICE -lX11 -lnsl -lncursesw


Then, I compiled hanterm-xf as follows:


make
make install


Packaging Hanterm-xf 2.0.6


I made a package of hanterm-xf with the following contents:


/usr/bin/hanterm
/usr/share/hangul_keyboard/2bul.kbd
/usr/share/hangul_keyboard/3bul_390.kbd
/usr/share/hangul_keyboard/3bul_final.kbd
/usr/share/hangul_keyboard/dvorak.map
/usr/share/hangul_keyboard/dvorak_2bul.kbd
/usr/share/hangul_keyboard/dvorak_3bul_390.kbd
/usr/share/hangul_keyboard/dvorak_3bul_final.kbd
/usr/share/man/man1/hanterm.1.gz
/etc/X11/app-defaults/Hanterm
/etc/X11/app-defaults/Hanterm-color

You can download my hanterm-xf packages here.




My .Xresources Setting for Hanterm-xf


To run hanterm-xf, you need a monospace Latin font and a Korean font. Before running hanterm-xf, put hanterm settings in your .Xresources file. The following is my hanterm settings in .Xresrources.


Hanterm*title: Hanterm
Hanterm*iconName: Hanterm
Hanterm*statusHangulLabel: [KO]
Hanterm*statusEnglishLabel: [EN]
Hanterm*statusWansungLabel: [WANS]
Hanterm*statusJohabLabel: [JHAB]
Hanterm*statusSebyolLabel: [3B]
Hanterm*statusDubyolLabel: [2B]
Hanterm*hangulKeyboard: 2
Hanterm*saveLines: 1024
Hanterm*VT100*color0: black
Hanterm*VT100*color1: red
Hanterm*VT100*color2: green3
Hanterm*VT100*color3: orange
Hanterm*VT100*color4: blue
Hanterm*VT100*color5: purple1
Hanterm*VT100*color6: DarkTurquoise
Hanterm*VT100*color7: grey90
Hanterm*VT100*color8: grey60
Hanterm*VT100*color9: salmon
Hanterm*VT100*color10: PaleGreen1
Hanterm*VT100*color11: khaki1
Hanterm*VT100*color12: DeepSkyBlue
Hanterm*VT100*color13: orchid1
Hanterm*VT100*color14: cyan
Hanterm*VT100*color15: white
Hanterm*background: black
Hanterm*foreground: gray90
Hanterm*rightScrollBar: on
Hanterm*Scrollbar*width: 16
Hanterm*Scrollbar*background: grey75
Hanterm*Scrollbar*foreground: grey30
Hanterm*SimpleMenu*background: DeepSkyBlue
Hanterm*SimpleMenu*foreground: black
Hanterm*VT100.cursorBlink: true
Hanterm*VT100.cursorColor: orange
Hanterm*VT100.hanCursorColor: DarkTurquoise
Hanterm*VT100.cutNewline: false
Hanterm*VT100.cutToBeginningOfLine: false
Hanterm*VT100.Translations: #override \n\
~Shift ~Ctrl ~Meta BackSpace: string(0x7F)\n\
~Shift ~Ctrl ~Meta Delete: string(0x1b) string("[3~")\n\
~Shift ~Ctrl ~Meta Home: string(0x1b) string("[1~")\n\
~Shift ~Ctrl ~Meta End: string(0x1b) string("[4~")\n\
Shift ~Ctrl ~Meta space: toggle-hangul()\n\
~Shift Ctrl ~Meta space: hanja-input()\n\
~Shift Ctrl ~Meta BackSpace: code-input()\n\
~Shift Ctrl ~Meta Return: toggle-chat()\n\
~Shift ~Ctrl Meta Up: change-code()\n\
~Shift ~Ctrl Meta Left: change-keyboard()\n\
~Shift ~Ctrl ~Meta : scroll-back(5,line)\n\
~Shift ~Ctrl ~Meta : scroll-forw(5,line)\n\
Shift ~Ctrl ~Meta : scroll-back(1,line)\n\
Shift ~Ctrl ~Meta : scroll-forw(1,line)\n\
~Shift Ctrl ~Meta : scroll-back(1,halfpage)\n\
~Shift Ctrl ~Meta : scroll-forw(1,halfpage)\n\
~Shift ~Ctrl Meta : scroll-back(1,page)\n\
~Shift ~Ctrl Meta : scroll-forw(1,page)
Hanterm*Font: -*-dejavu sans mono-medium-r-normal-*-*-110-*-*-*-*-iso8859-1
Hanterm*hangulFont: -*-hysinmyeongjo-medium-r-normal--*-130-*-*-*-*-ksc5601.1987-0
Hanterm*SimpleMenu*fontSet: -urw-Nimbus Sans L-regular-r-normal-*-*-110-*-*-p-*-iso8859-1,-hanyang-hygothic-medium-r-normal-*-*-110-*-*-*-*-ksc5601.1987-0
Hanterm*VT100*colorULMode: off
Hanterm*VT100*colorBDMode: off
Hanterm*VT100*colorBD: blue
Hanterm*VT100*colorUL: red
Hanterm*charClass: 37-38:48,42-43:48,45-47:48,63-64:48
Hanterm*pointerColor: DeepSkyBlue
Hanterm*pointerColorBackground: grey40
Hanterm*pointerShape: right_ptr
Hanterm*beNiceToColormap: false

Linux: To Build IceWM 1.2.37

IceWM is my favorite window manager. Though most distros provide icewm packages, I like to build IceWM on my own. The following packages are needed to build IceWM.




  • g++
  • make
  • libjpeg62-dev
  • libpng12-dev
  • libtiff4-dev
  • libungif4-dev
  • libxft-dev
  • libice-dev


IceWM 1.2.37 depends on Imlib11 which is an obsolete library. I couldn't find imlib11 in Debian Sid any longer. In order to build IceWM that will work on many systems ranging from Debian Sarge to Debian Sid, I wanted to compile Imlib11 statically and integrate imlib11 into the IceWM binaries. So I downloaded Imlib11 source (imlib-1.9.15.tar.gz) from ftp.gnome.org and compiled static imlib11.



tar xzvf imlib-1.9.15.tar.gz

cd imlib-1.9.15

./configure --build=i586-pc-linux-gnu --sysconfdir=/etc --enable-static --disable-shared --disable-modules

make

make install


Then, I downloaded the source of IceWM 1.2.37 (icewm-1.2.37.tar.gz) from icewm.sf.net. I unpacked the tarball into my home directory and compile IceWM.



tar xzvf icewm-1.2.37.tar.gz

cd icewm-1.2.37

./configure --build=i586-pc-linux-gnu --enable-gradients --disable-sm --disable-shaped-decorations --disable-xrandr --disable-xinerama --disable-x86-asm

make

cp src/icewm src/icewmtray /usr/local/bin

strip /usr/local/bin/ice*


I am setting up IceWM in a minimal package. The following set of files are to be copied to a new system.



/etc/im_palette-small.pal
/etc/im_palette-tiny.pal
/etc/im_palette.pal
/etc/imrc
/usr/local/bin/icewm
/usr/local/bin/icewmtray


To customize IceWM, settings and themes should be saved in /etc/icewm and /usr/local/share/icewm.

Monday, December 28, 2009

Linux: To Compile wpa_supplicant on Debian 3.1 Sarge

I was using good old Debian Linux 3.1 Sarge when I found out Sarge's wpasupplicant couldn't work well with ndiswrapper-supported Windows network drivers. So I set out to compile wpa_supplicant on my own. First, I installed the following development packages.



  • gcc-3.4
  • libssl0.9.7
  • make


Then, I downloaded the wpa_supplicant source (wpa_supplicant-0.6.9.tar.gz) from http://hostap.epitest.fi/wpa_supplicant. I unpacked the source and read the README files.



tar xzvf wpa_supplicant-0.6.9.tar.gz
cd wpa_supplicant-0.6.9/wpa_supplicant


I went into the wpa_supplicant subfolder and created .config to customize my build. The following is the contents of my .config:



CONFIG_WIRELESS_EXTENSION=y
CONFIG_DRIVER_HOSTAP=y
CONFIG_DRIVER_ATMEL=y
CONFIG_DRIVER_WEXT=y
CONFIG_DRIVER_RALINK=y
CONFIG_DRIVER_NDISWRAPPER=y
CONFIG_DRIVER_IPW=y
CONFIG_IEEE8021X_EAPOL=y
CONFIG_EAP_MD5=y
CONFIG_EAP_MSCHAPV2=y
CONFIG_EAP_TLS=y
CONFIG_EAP_PEAP=y
CONFIG_EAP_TTLS=y
CONFIG_EAP_GTC=y
CONFIG_EAP_OTP=y
CONFIG_EAP_SIM=y
CONFIG_EAP_AKA=y
CONFIG_EAP_PSK=y
CONFIG_EAP_SAKE=y
CONFIG_EAP_GPSK=y
CONFIG_EAP_PAX=y
CONFIG_EAP_LEAP=y
CONFIG_EAP_IKEV2=y
CONFIG_EAP=y
CONFIG_WPS=y


Then, I began compilation by running make.


make


The compilation was successful. I installed wpa_supplicant with the following command.



make install


The following files are copied to the system.



/usr/local/sbin/wpa_supplicant
/usr/local/sbin/wpa_passphrase
/usr/local/sbin/wpa_cli

Sunday, November 8, 2009

Distros Compatible with Linux kernel 2.2.x

I agree that Linux kernel 2.2.x is too old to use on latest computers. Linux kernel 2.2 series don't have support for USB storage or wireless LAN. However, a 2.2 kernel works fine with the problematic hard drive in my Compaq laptop (Presario V5306US). Most of the recent distros don't allow you to boot with a 2.2 kernel, not even 2.4 kernels. Following are some Linux distros known to work with Linux kernel 2.2.




  • Debian 3.1 “Sarge” release 8
  • Ubuntu 6.06 “Dapper”
  • Fedora Core 3
  • Haansoft Linux 2005
  • Mandriva 2006
  • SuSE 9.3
  • Slackware 10.1


To Download Debian Sarge 3.1r8


I prefer using jigdo-lite to assemble ISO images of Debian 3.1. jigdo-lite is contained in the package jigdo-file, so I installed jigdo-file first. Then, I typed jigdo-lite in a gnome-terminal and was asked for the location of a .jigdo file.


mkdir sarge
cd sarge
jigdo-lite

I searched the Internet for debian-31r8-i386-binary-1.jigdo and only found 2 locations. I picked the Japanese site and typed the following in response to the question:


http://hanzubon.jp/debian-cd/3.1_r8/i386/jigdo-dvd/debian-31r8-i386-binary-1.jigdo

Next, I got the prompt “Files to scan:” but just ignored it by pressing Enter. Then, I was asked for the URL of a Debian mirror, so I typed the following:


http://archive.debian.org/debian

jigdo-lite started downloading Debian packages. The MD5 checksums of Debian 3.1r8 DVD ISO's are as follows:


f2344c160a7ae6f54310111e50de84a7  debian-31r8-i386-binary-1.iso
d72ef7d74c77669db0abc42a530fbdfa debian-31r8-i386-binary-2.iso
5ad701912599ad985369d028d993acbc debian-update-3.1r8-i386-DVD-1.iso

After downloading and burning the ISO files, insert the DVD and run apt-cdrom to use them with apt or dselect:


apt-cdrom add


To Download Fedora Core 3


I want to try Fedora Core 3. But since Fedora Core 3 is an old release, I had difficulty finding an ISO image of Fedora Core 3 DVD edition. After searching the Internet for a long time using the term fc3-i386-dvd.iso, I found the DVD image at the following locations:




The correct md5sum of Fedora Core 3 DVD is ca49964739f84848ca78fc03662272fb.



To Download Mandriva Free 2006


Mandriva is said to be a very easy-to-use Linux distribution. Download Mandriva Free 2006 DVD at the following locations:



The correct md5sum of Mandriva Free 2006 DVD is c7a0a1b8ccc2d81206c0ff4e48ef3057.



Use a downloader like aria2 to download from multiple locations.

Saturday, October 24, 2009

Linux: To Compile X.org Server 1.6.5 on Debian 5.0 Lenny

I compiled X.org server 1.6.5 on Debian 5.0 Lenny because Lenny's X Windows couldn't run optimally on my Toshiba NB205 netbook's 1024x600 screen. To prepare for compilation, I installed the following packages:



  • bison
  • g++-4.3 or g++-3.4
  • libexpat1-dev
  • libpciaccess-dev
  • libssl-dev
  • libxdamage-dev
  • libxfont-dev
  • libxi-dev
  • libxkbfile-dev
  • libxmu-dev
  • libxxf86vm-dev
  • make
  • x11proto-bigreqs-dev
  • x11proto-composite-dev
  • x11proto-gl-dev
  • x11proto-render-dev
  • x11proto-resource-dev
  • x11proto-scrnsaver-dev
  • x11proto-video-dev
  • x11proto-xcmisc-dev
  • x11proto-xf86dga-dev
  • x11proto-xf86dri-dev
  • x11proto-xinerama-dev
  • xkb-data


g++-3.4 can be found in Debian Etch. I will put my compiled X.org 1.6.5 and dependencies in /usr/local to avoid any conflict with Debian packages:



Compiling Pixman and libDRM


  1. First, I downloaded pixman_0.16.2.orig.tar.gz from Debian Sid's libpixman-1-dev page and compiled pixman as follows:


    tar xzf pixman_0.16.2.orig.tar.gz
    cd pixman-0.16.2/
    ./configure
    make install

    The following files are created:


    /usr/local/include/pixman-1/

    /usr/local/lib/libpixman-1.a

    /usr/local/lib/libpixman-1.la

    /usr/local/lib/libpixman-1.so.0

    /usr/local/lib/libpixman-1.so.0.16.2

    /usr/local/lib/libpixman-1.so

    /usr/local/lib/pkgconfig/pixman-1.pc


  2. I downloaded libdrm_2.4.15.orig.tar.gz from Debian Sid's libdrm-dev page and compiled libdrm2 like this:


    tar xzf libdrm_2.4.14.orig.tar.gz
    cd libdrm-2.4.14/
    ./configure
    make install


    This creates the following files:


    /usr/local/include/drm/

    /usr/local/include/intel_bufmgr.h

    /usr/local/include/xf86drm.h

    /usr/local/include/xf86drmMode.h

    /usr/local/lib/libdrm.la

    /usr/local/lib/libdrm.so

    /usr/local/lib/libdrm.so.2

    /usr/local/lib/libdrm.so.2.4.0

    /usr/local/lib/libdrm_intel.la

    /usr/local/lib/libdrm_intel.so

    /usr/local/lib/libdrm_intel.so.1

    /usr/local/lib/libdrm_intel.so.1.0.0

    /usr/local/lib/pkgconfig/libdrm.pc

    /usr/local/lib/pkgconfig/libdrm_intel.pc



Installing X Protocol Headers


  1. Then, I downloaded x11proto-dri2_2.1.orig.tar.gz from Debian Sid's x11proto-dri2-dev page and compiled dri2proto like this:


    tar xzf x11proto-dri2_2.1.orig.tar.gz
    cd dri2proto-2.1/
    ./configure
    make install

    This installs the following files:


    /usr/local/include/X11/extensions/dri2proto.h

    /usr/local/include/X11/extensions/dri2tokens.h

    /usr/local/lib/pkgconfig/dri2proto.pc


  2. I downloaded x11proto-core_7.0.16.orig.tar.gz from x11proto-core-dev and installed xproto:


    tar xzf x11proto-core_7.0.15.orig.tar.gz
    cd xproto-7.0.15
    ./configure
    make install


    I downloaded x11proto-xext_7.0.4.orig.tar.gz from Debian Sid's x11proto-xext-dev page and installed xextproto:


    tar xzf x11proto-xext_7.0.4.orig.tar.gz
    cd xextproto-7.0.4
    ./configure
    make install

    The following files are created.


    /usr/local/lib/pkgconfig/xproto.pc
    /usr/local/lib/pkgconfig/xextproto.pc
    /usr/local/include/X11/extensions/dpms.h
    /usr/local/include/X11/extensions/dpmsstr.h
    /usr/local/include/X11/extensions/extutil.h
    /usr/local/include/X11/extensions/ge.h
    /usr/local/include/X11/extensions/geproto.h
    /usr/local/include/X11/extensions/Xge.h
    /usr/local/include/X11/extensions/lbxbuf.h
    /usr/local/include/X11/extensions/lbxbufstr.h
    /usr/local/include/X11/extensions/lbxdeltastr.h
    /usr/local/include/X11/extensions/lbximage.h
    /usr/local/include/X11/extensions/lbxopts.h
    /usr/local/include/X11/extensions/lbxstr.h
    /usr/local/include/X11/extensions/lbxzlib.h
    /usr/local/include/X11/extensions/MITMisc.h
    /usr/local/include/X11/extensions/mitmiscstr.h
    /usr/local/include/X11/extensions/multibuf.h
    /usr/local/include/X11/extensions/multibufst.h
    /usr/local/include/X11/extensions/security.h
    /usr/local/include/X11/extensions/securstr.h
    /usr/local/include/X11/extensions/shape.h
    /usr/local/include/X11/extensions/shapestr.h
    /usr/local/include/X11/extensions/shmstr.h
    /usr/local/include/X11/extensions/sync.h
    /usr/local/include/X11/extensions/syncstr.h
    /usr/local/include/X11/extensions/Xag.h
    /usr/local/include/X11/extensions/Xagstr.h
    /usr/local/include/X11/extensions/Xcup.h
    /usr/local/include/X11/extensions/Xcupstr.h
    /usr/local/include/X11/extensions/Xdbe.h
    /usr/local/include/X11/extensions/Xdbeproto.h
    /usr/local/include/X11/extensions/XEVI.h
    /usr/local/include/X11/extensions/XEVIstr.h
    /usr/local/include/X11/extensions/Xext.h
    /usr/local/include/X11/extensions/XLbx.h
    /usr/local/include/X11/extensions/XShm.h
    /usr/local/include/X11/extensions/xtestext1.h
    /usr/local/include/X11/extensions/XTest.h
    /usr/local/include/X11/extensions/xteststr.h
    /usr/local/include/X11/Xfuncproto.h
    /usr/local/include/X11/Xpoll.h
    /usr/local/include/X11/ap_keysym.h
    /usr/local/include/X11/DECkeysym.h
    /usr/local/include/X11/HPkeysym.h
    /usr/local/include/X11/keysymdef.h
    /usr/local/include/X11/keysym.h
    /usr/local/include/X11/Sunkeysym.h
    /usr/local/include/X11/Xalloca.h
    /usr/local/include/X11/Xarch.h
    /usr/local/include/X11/Xatom.h
    /usr/local/include/X11/Xdefs.h
    /usr/local/include/X11/XF86keysym.h
    /usr/local/include/X11/Xfuncs.h
    /usr/local/include/X11/X.h
    /usr/local/include/X11/Xmd.h
    /usr/local/include/X11/Xosdefs.h
    /usr/local/include/X11/Xos.h
    /usr/local/include/X11/Xos_r.h
    /usr/local/include/X11/Xproto.h
    /usr/local/include/X11/Xprotostr.h
    /usr/local/include/X11/Xthreads.h
    /usr/local/include/X11/Xw32defs.h
    /usr/local/include/X11/XWDFile.h
    /usr/local/include/X11/Xwindows.h
    /usr/local/include/X11/Xwinsock.h


  3. I downloaded x11proto-input_1.5.0.orig.tar.gz from Debian Sid's x11proto-input-dev page and installed inputproto:


    tar xzf x11proto-input_1.5.0.orig.tar.gz
    cd inputproto-1.5.0/
    ./configure
    make install

    The following files are copied to the system.


    /usr/local/include/X11/extensions/XI.h

    /usr/local/include/X11/extensions/XInput.h

    /usr/local/include/X11/extensions/XIproto.h

    /usr/local/lib/pkgconfig/inputproto.pc


  4. I downloaded x11proto-randr_1.3.1.orig.tar.gz from Debian Sid's x11proto-randr-dev page and installed randrproto like this:


    tar xzf x11proto-randr_1.3.0.orig.tar.gz
    cd randrproto-1.3.0/
    ./configure
    make install

    This installs the following files:


    /usr/local/include/X11/extensions/randr.h

    /usr/local/include/X11/extensions/randrproto.h

    /usr/local/lib/pkgconfig/randrproto.pc

    /usr/local/share/doc/randrproto/randrproto.txt


  5. I downloaded xtrans_1.2.5.orig.tar.gz from Debian Sid's xtrans-dev page and installed xtrans like this:


    tar xzf xtrans_1.2.4.orig.tar.gz
    cd xtrans-1.2.4
    ./configure
    make install

    The following files are installed:


    /usr/local/include/X11/Xtrans/

    /usr/local/lib/pkgconfig/xtrans.pc

    /usr/local/share/aclocal/xtrans.m4



Compiling Mesa 3D Library


Then, I downloaded mesa_7.6.orig.tar.gz from Debian and compiled Mesa 7.6 as follows:


tar xzf mesa_7.6.orig.tar.gz
cd mesa-7.6/
./configure
make
make install

The following files are installed:


/usr/local/include/GL/GLwDrawA.h

/usr/local/include/GL/GLwDrawAP.h

/usr/local/include/GL/GLwMDrawA.h

/usr/local/include/GL/GLwMDrawAP.h

/usr/local/include/GL/dmesa.h

/usr/local/include/GL/ggimesa.h

/usr/local/include/GL/gl.h

/usr/local/include/GL/gl_mangle.h

/usr/local/include/GL/glew.h

/usr/local/include/GL/glext.h

/usr/local/include/GL/glfbdev.h

/usr/local/include/GL/glu.h

/usr/local/include/GL/glu_mangle.h

/usr/local/include/GL/glut.h

/usr/local/include/GL/glutf90.h

/usr/local/include/GL/glx.h

/usr/local/include/GL/glx_mangle.h

/usr/local/include/GL/glxew.h

/usr/local/include/GL/glxext.h

/usr/local/include/GL/internal/dri_interface.h

/usr/local/include/GL/mesa_wgl.h

/usr/local/include/GL/mglmesa.h

/usr/local/include/GL/osmesa.h

/usr/local/include/GL/svgamesa.h

/usr/local/include/GL/vms_x_fix.h

/usr/local/include/GL/wglew.h

/usr/local/include/GL/wglext.h

/usr/local/include/GL/wmesa.h

/usr/local/lib/dri/EGL_i915.so

/usr/local/lib/dri/ffb_dri.so

/usr/local/lib/dri/i810_dri.so

/usr/local/lib/dri/i915_dri.so

/usr/local/lib/dri/i965_dri.so

/usr/local/lib/dri/mach64_dri.so

/usr/local/lib/dri/mga_dri.so

/usr/local/lib/dri/r128_dri.so

/usr/local/lib/dri/r200_dri.so

/usr/local/lib/dri/r300_dri.so

/usr/local/lib/dri/r600_dri.so

/usr/local/lib/dri/radeon_dri.so

/usr/local/lib/dri/s3v_dri.so

/usr/local/lib/dri/savage_dri.so

/usr/local/lib/dri/sis_dri.so

/usr/local/lib/dri/swrast_dri.so

/usr/local/lib/dri/tdfx_dri.so

/usr/local/lib/dri/trident_dri.so

/usr/local/lib/dri/unichrome_dri.so

/usr/local/lib/libEGL.so

/usr/local/lib/libEGL.so.1

/usr/local/lib/libEGL.so.1.0

/usr/local/lib/libGL.so

/usr/local/lib/libGL.so.1

/usr/local/lib/libGL.so.1.2

/usr/local/lib/libGLU.so

/usr/local/lib/libGLU.so.1

/usr/local/lib/libGLU.so.1.3.070600

/usr/local/lib/libGLw.so

/usr/local/lib/libGLw.so.1

/usr/local/lib/libGLw.so.1.0.0

/usr/local/lib/libglut.so

/usr/local/lib/libglut.so.3

/usr/local/lib/libglut.so.3.7.1

/usr/local/lib/pkgconfig/dri.pc

/usr/local/lib/pkgconfig/gl.pc

/usr/local/lib/pkgconfig/glu.pc

/usr/local/lib/pkgconfig/glut.pc

/usr/local/lib/pkgconfig/glw.pc


Compiling X.org Server


Then, I downloaded xorg-server_1.6.5.orig.tar.gz from Debian and compiled X.org server. The X.org server depends on libpciaccess0 library, so be sure to install libpciaccess-dev before building a X.org server.


tar xzf xorg-server_1.6.5.orig.tar.gz

cd xorg-server-1.6.5/

./configure --sysconfdir=/etc --localstatedir=/var --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/var/tmp

make

make install

The following files are installed:


/usr/local/bin/X
/usr/local/bin/Xnest
/usr/local/bin/Xorg
/usr/local/bin/Xvfb
/usr/local/bin/cvt
/usr/local/bin/gtf
/usr/local/include/xorg/BT.h
/usr/local/include/xorg/IBM.h
/usr/local/include/xorg/TI.h
/usr/local/include/xorg/XIstubs.h
/usr/local/include/xorg/bstore.h
/usr/local/include/xorg/bstorestr.h
/usr/local/include/xorg/bt829.h
/usr/local/include/xorg/cfb8_16.h
/usr/local/include/xorg/closestr.h
/usr/local/include/xorg/closure.h
/usr/local/include/xorg/colormap.h
/usr/local/include/xorg/colormapst.h
/usr/local/include/xorg/compiler.h
/usr/local/include/xorg/cursor.h
/usr/local/include/xorg/cursorstr.h
/usr/local/include/xorg/damage.h
/usr/local/include/xorg/damagestr.h
/usr/local/include/xorg/dbestruct.h
/usr/local/include/xorg/dgaproc.h
/usr/local/include/xorg/dix.h
/usr/local/include/xorg/dixaccess.h
/usr/local/include/xorg/dixevents.h
/usr/local/include/xorg/dixfont.h
/usr/local/include/xorg/dixfontstr.h
/usr/local/include/xorg/dixgrabs.h
/usr/local/include/xorg/dixstruct.h
/usr/local/include/xorg/dri.h
/usr/local/include/xorg/dri2.h
/usr/local/include/xorg/dristruct.h
/usr/local/include/xorg/edid.h
/usr/local/include/xorg/exa.h
/usr/local/include/xorg/exevents.h
/usr/local/include/xorg/extension.h
/usr/local/include/xorg/extinit.h
/usr/local/include/xorg/extnsionst.h
/usr/local/include/xorg/fb.h
/usr/local/include/xorg/fbdevhw.h
/usr/local/include/xorg/fboverlay.h
/usr/local/include/xorg/fbrop.h
/usr/local/include/xorg/fi1236.h
/usr/local/include/xorg/fourcc.h
/usr/local/include/xorg/gc.h
/usr/local/include/xorg/gcstruct.h
/usr/local/include/xorg/geext.h
/usr/local/include/xorg/geint.h
/usr/local/include/xorg/globals.h
/usr/local/include/xorg/glyphstr.h
/usr/local/include/xorg/hotplug.h
/usr/local/include/xorg/i2c_def.h
/usr/local/include/xorg/input.h
/usr/local/include/xorg/inputstr.h
/usr/local/include/xorg/mi.h
/usr/local/include/xorg/mibank.h
/usr/local/include/xorg/mibstore.h
/usr/local/include/xorg/micmap.h
/usr/local/include/xorg/micoord.h
/usr/local/include/xorg/mifillarc.h
/usr/local/include/xorg/mifpoly.h
/usr/local/include/xorg/migc.h
/usr/local/include/xorg/miline.h
/usr/local/include/xorg/mipict.h
/usr/local/include/xorg/mipointer.h
/usr/local/include/xorg/mipointrst.h
/usr/local/include/xorg/misc.h
/usr/local/include/xorg/miscstruct.h
/usr/local/include/xorg/mispans.h
/usr/local/include/xorg/mistruct.h
/usr/local/include/xorg/miwideline.h
/usr/local/include/xorg/mizerarc.h
/usr/local/include/xorg/msp3430.h
/usr/local/include/xorg/opaque.h
/usr/local/include/xorg/os.h
/usr/local/include/xorg/picture.h
/usr/local/include/xorg/picturestr.h
/usr/local/include/xorg/pixmap.h
/usr/local/include/xorg/pixmapstr.h
/usr/local/include/xorg/privates.h
/usr/local/include/xorg/property.h
/usr/local/include/xorg/propertyst.h
/usr/local/include/xorg/ptrveloc.h
/usr/local/include/xorg/randrstr.h
/usr/local/include/xorg/region.h
/usr/local/include/xorg/regionstr.h
/usr/local/include/xorg/registry.h
/usr/local/include/xorg/renderedge.h
/usr/local/include/xorg/resource.h
/usr/local/include/xorg/rgb.h
/usr/local/include/xorg/rrtransform.h
/usr/local/include/xorg/sarea.h
/usr/local/include/xorg/screenint.h
/usr/local/include/xorg/scrnintstr.h
/usr/local/include/xorg/selection.h
/usr/local/include/xorg/servermd.h
/usr/local/include/xorg/shadow.h
/usr/local/include/xorg/shadowfb.h
/usr/local/include/xorg/shmint.h
/usr/local/include/xorg/site.h
/usr/local/include/xorg/swaprep.h
/usr/local/include/xorg/swapreq.h
/usr/local/include/xorg/tda8425.h
/usr/local/include/xorg/tda9850.h
/usr/local/include/xorg/tda9885.h
/usr/local/include/xorg/uda1380.h
/usr/local/include/xorg/validate.h
/usr/local/include/xorg/vbe.h
/usr/local/include/xorg/vbeModes.h
/usr/local/include/xorg/vgaHW.h
/usr/local/include/xorg/wfbrename.h
/usr/local/include/xorg/window.h
/usr/local/include/xorg/windowstr.h
/usr/local/include/xorg/xaa.h
/usr/local/include/xorg/xaaWrapper.h
/usr/local/include/xorg/xaalocal.h
/usr/local/include/xorg/xaarop.h
/usr/local/include/xorg/xf86.h
/usr/local/include/xorg/xf86Crtc.h
/usr/local/include/xorg/xf86Cursor.h
/usr/local/include/xorg/xf86DDC.h
/usr/local/include/xorg/xf86Modes.h
/usr/local/include/xorg/xf86Module.h
/usr/local/include/xorg/xf86Opt.h
/usr/local/include/xorg/xf86Optrec.h
/usr/local/include/xorg/xf86Parser.h
/usr/local/include/xorg/xf86Pci.h
/usr/local/include/xorg/xf86PciInfo.h
/usr/local/include/xorg/xf86Priv.h
/usr/local/include/xorg/xf86Privstr.h
/usr/local/include/xorg/xf86RAC.h
/usr/local/include/xorg/xf86RamDac.h
/usr/local/include/xorg/xf86RandR12.h
/usr/local/include/xorg/xf86Rename.h
/usr/local/include/xorg/xf86Resources.h
/usr/local/include/xorg/xf86Xinput.h
/usr/local/include/xorg/xf86_OSlib.h
/usr/local/include/xorg/xf86_OSproc.h
/usr/local/include/xorg/xf86cmap.h
/usr/local/include/xorg/xf86fbman.h
/usr/local/include/xorg/xf86i2c.h
/usr/local/include/xorg/xf86int10.h
/usr/local/include/xorg/xf86sbusBus.h
/usr/local/include/xorg/xf86str.h
/usr/local/include/xorg/xf86xv.h
/usr/local/include/xorg/xf86xvmc.h
/usr/local/include/xorg/xf86xvpriv.h
/usr/local/include/xorg/xisb.h
/usr/local/include/xorg/xkbfile.h
/usr/local/include/xorg/xkbrules.h
/usr/local/include/xorg/xkbsrv.h
/usr/local/include/xorg/xkbstr.h
/usr/local/include/xorg/xorg-server.h
/usr/local/include/xorg/xorgVersion.h
/usr/local/include/xorg/xserver-properties.h
/usr/local/include/xorg/xvdix.h
/usr/local/include/xorg/xvmcext.h
/usr/local/lib/X11/Options
/usr/local/lib/pkgconfig/xorg-server.pc
/usr/local/lib/xorg/modules/extensions/libdbe.la
/usr/local/lib/xorg/modules/extensions/libdbe.so
/usr/local/lib/xorg/modules/extensions/libdri.la
/usr/local/lib/xorg/modules/extensions/libdri.so
/usr/local/lib/xorg/modules/extensions/libdri2.la
/usr/local/lib/xorg/modules/extensions/libdri2.so
/usr/local/lib/xorg/modules/extensions/libextmod.la
/usr/local/lib/xorg/modules/extensions/libextmod.so
/usr/local/lib/xorg/modules/extensions/libglx.la
/usr/local/lib/xorg/modules/extensions/libglx.so
/usr/local/lib/xorg/modules/libexa.la
/usr/local/lib/xorg/modules/libexa.so
/usr/local/lib/xorg/modules/libfb.la
/usr/local/lib/xorg/modules/libfb.so
/usr/local/lib/xorg/modules/libint10.la
/usr/local/lib/xorg/modules/libint10.so
/usr/local/lib/xorg/modules/libshadow.la
/usr/local/lib/xorg/modules/libshadow.so
/usr/local/lib/xorg/modules/libshadowfb.la
/usr/local/lib/xorg/modules/libshadowfb.so
/usr/local/lib/xorg/modules/libvbe.la
/usr/local/lib/xorg/modules/libvbe.so
/usr/local/lib/xorg/modules/libvgahw.la
/usr/local/lib/xorg/modules/libvgahw.so
/usr/local/lib/xorg/modules/libwfb.la
/usr/local/lib/xorg/modules/libwfb.so
/usr/local/lib/xorg/modules/libxaa.la
/usr/local/lib/xorg/modules/libxaa.so
/usr/local/lib/xorg/modules/libxf8_16bpp.la
/usr/local/lib/xorg/modules/libxf8_16bpp.so
/usr/local/lib/xorg/modules/linux/libfbdevhw.la
/usr/local/lib/xorg/modules/linux/libfbdevhw.so
/usr/local/lib/xorg/modules/multimedia/bt829_drv.la
/usr/local/lib/xorg/modules/multimedia/bt829_drv.so
/usr/local/lib/xorg/modules/multimedia/fi1236_drv.la
/usr/local/lib/xorg/modules/multimedia/fi1236_drv.so
/usr/local/lib/xorg/modules/multimedia/msp3430_drv.la
/usr/local/lib/xorg/modules/multimedia/msp3430_drv.so
/usr/local/lib/xorg/modules/multimedia/tda8425_drv.la
/usr/local/lib/xorg/modules/multimedia/tda8425_drv.so
/usr/local/lib/xorg/modules/multimedia/tda9850_drv.la
/usr/local/lib/xorg/modules/multimedia/tda9850_drv.so
/usr/local/lib/xorg/modules/multimedia/tda9885_drv.la
/usr/local/lib/xorg/modules/multimedia/tda9885_drv.so
/usr/local/lib/xorg/modules/multimedia/uda1380_drv.la
/usr/local/lib/xorg/modules/multimedia/uda1380_drv.so
/usr/local/lib/xorg/protocol.txt
/usr/local/share/X11/xkb/compiled/README.compiled
/usr/local/share/aclocal/xorg-server.m4
/usr/local/share/man/man1/Xnest.1
/usr/local/share/man/man1/Xorg.1
/usr/local/share/man/man1/Xserver.1
/usr/local/share/man/man1/Xvfb.1
/usr/local/share/man/man1/cvt.1
/usr/local/share/man/man1/gtf.1
/usr/local/share/man/man4/exa.4
/usr/local/share/man/man4/fbdevhw.4
/usr/local/share/man/man5/xorg.conf.5


Compiling X.org Keyboard and Mouse Driver


Then, I downloaded xserver-xorg-input-keyboard_1.4.0.orig.tar.gz from Debian Sid's xserver-xorg-input-kbd page. Also, I downloaded xserver-xorg-input-mouse_1.5.0.orig.tar.gz from Debian Sid's xserver-xorg-input-mouse page. The keyboard and mouse drivers are compiled as follows.


tar xzf xserver-xorg-input-keyboard_1.3.2.orig.tar.gz
cd xf86-input-keyboard-1.3.2/
./configure
make
make install
cd ..
tar xzf xserver-xorg-input-mouse_1.4.0.orig.tar.gz
cd xf86-input-mouse-1.4.0/
./configure
make
make install


Compiling Intel Video Driver


Then, I downloaded xf86-video-intel-2.9.1.tar.bz2 from intellinuxgraphics.org and compiled it.


tar xzf xf86-video-intel-2.9.1.tar.bz2
cd xf86-video-intel-2.9.1
./configure
make
make install

The following files are installed after compilation:


/usr/local/lib/xorg/modules/drivers/ch7017.la
/usr/local/lib/xorg/modules/drivers/ch7017.so
/usr/local/lib/xorg/modules/drivers/ch7xxx.la
/usr/local/lib/xorg/modules/drivers/ch7xxx.so
/usr/local/lib/xorg/modules/drivers/intel_drv.la
/usr/local/lib/xorg/modules/drivers/intel_drv.so
/usr/local/lib/xorg/modules/drivers/ivch.la
/usr/local/lib/xorg/modules/drivers/ivch.so
/usr/local/lib/xorg/modules/drivers/sil164.la
/usr/local/lib/xorg/modules/drivers/sil164.so
/usr/local/lib/xorg/modules/drivers/tfp410.la
/usr/local/lib/xorg/modules/drivers/tfp410.so
/usr/local/share/man/man4/intel.4


List of Produced Files


The following is the list of all files created in /usr/local:


/usr/local/bin/X
/usr/local/bin/Xnest
/usr/local/bin/Xorg
/usr/local/bin/Xvfb
/usr/local/bin/cvt
/usr/local/bin/gtf
/usr/local/include/GL/GLwDrawA.h
/usr/local/include/GL/GLwDrawAP.h
/usr/local/include/GL/GLwMDrawA.h
/usr/local/include/GL/GLwMDrawAP.h
/usr/local/include/GL/dmesa.h
/usr/local/include/GL/ggimesa.h
/usr/local/include/GL/gl.h
/usr/local/include/GL/gl_mangle.h
/usr/local/include/GL/glew.h
/usr/local/include/GL/glext.h
/usr/local/include/GL/glfbdev.h
/usr/local/include/GL/glu.h
/usr/local/include/GL/glu_mangle.h
/usr/local/include/GL/glut.h
/usr/local/include/GL/glutf90.h
/usr/local/include/GL/glx.h
/usr/local/include/GL/glx_mangle.h
/usr/local/include/GL/glxew.h
/usr/local/include/GL/glxext.h
/usr/local/include/GL/internal
/usr/local/include/GL/internal/dri_interface.h
/usr/local/include/GL/mesa_wgl.h
/usr/local/include/GL/mglmesa.h
/usr/local/include/GL/osmesa.h
/usr/local/include/GL/svgamesa.h
/usr/local/include/GL/vms_x_fix.h
/usr/local/include/GL/wglew.h
/usr/local/include/GL/wglext.h
/usr/local/include/GL/wmesa.h
/usr/local/include/X11/DECkeysym.h
/usr/local/include/X11/HPkeysym.h
/usr/local/include/X11/Sunkeysym.h
/usr/local/include/X11/X.h
/usr/local/include/X11/XF86keysym.h
/usr/local/include/X11/XWDFile.h
/usr/local/include/X11/Xalloca.h
/usr/local/include/X11/Xarch.h
/usr/local/include/X11/Xatom.h
/usr/local/include/X11/Xdefs.h
/usr/local/include/X11/Xfuncproto.h
/usr/local/include/X11/Xfuncs.h
/usr/local/include/X11/Xmd.h
/usr/local/include/X11/Xos.h
/usr/local/include/X11/Xos_r.h
/usr/local/include/X11/Xosdefs.h
/usr/local/include/X11/Xpoll.h
/usr/local/include/X11/Xproto.h
/usr/local/include/X11/Xprotostr.h
/usr/local/include/X11/Xthreads.h
/usr/local/include/X11/Xtrans
/usr/local/include/X11/Xtrans/Xtrans.c
/usr/local/include/X11/Xtrans/Xtrans.h
/usr/local/include/X11/Xtrans/Xtransint.h
/usr/local/include/X11/Xtrans/Xtranslcl.c
/usr/local/include/X11/Xtrans/Xtranssock.c
/usr/local/include/X11/Xtrans/Xtranstli.c
/usr/local/include/X11/Xtrans/Xtransutil.c
/usr/local/include/X11/Xtrans/transport.c
/usr/local/include/X11/Xw32defs.h
/usr/local/include/X11/Xwindows.h
/usr/local/include/X11/Xwinsock.h
/usr/local/include/X11/ap_keysym.h
/usr/local/include/X11/extensions/MITMisc.h
/usr/local/include/X11/extensions/XEVI.h
/usr/local/include/X11/extensions/XEVIstr.h
/usr/local/include/X11/extensions/XI.h
/usr/local/include/X11/extensions/XInput.h
/usr/local/include/X11/extensions/XIproto.h
/usr/local/include/X11/extensions/XLbx.h
/usr/local/include/X11/extensions/XShm.h
/usr/local/include/X11/extensions/XTest.h
/usr/local/include/X11/extensions/Xag.h
/usr/local/include/X11/extensions/Xagstr.h
/usr/local/include/X11/extensions/Xcup.h
/usr/local/include/X11/extensions/Xcupstr.h
/usr/local/include/X11/extensions/Xdbe.h
/usr/local/include/X11/extensions/Xdbeproto.h
/usr/local/include/X11/extensions/Xext.h
/usr/local/include/X11/extensions/Xge.h
/usr/local/include/X11/extensions/dpms.h
/usr/local/include/X11/extensions/dpmsstr.h
/usr/local/include/X11/extensions/dri2proto.h
/usr/local/include/X11/extensions/dri2tokens.h
/usr/local/include/X11/extensions/extutil.h
/usr/local/include/X11/extensions/ge.h
/usr/local/include/X11/extensions/geproto.h
/usr/local/include/X11/extensions/lbxbuf.h
/usr/local/include/X11/extensions/lbxbufstr.h
/usr/local/include/X11/extensions/lbxdeltastr.h
/usr/local/include/X11/extensions/lbximage.h
/usr/local/include/X11/extensions/lbxopts.h
/usr/local/include/X11/extensions/lbxstr.h
/usr/local/include/X11/extensions/lbxzlib.h
/usr/local/include/X11/extensions/mitmiscstr.h
/usr/local/include/X11/extensions/multibuf.h
/usr/local/include/X11/extensions/multibufst.h
/usr/local/include/X11/extensions/randr.h
/usr/local/include/X11/extensions/randrproto.h
/usr/local/include/X11/extensions/security.h
/usr/local/include/X11/extensions/securstr.h
/usr/local/include/X11/extensions/shape.h
/usr/local/include/X11/extensions/shapestr.h
/usr/local/include/X11/extensions/shmstr.h
/usr/local/include/X11/extensions/sync.h
/usr/local/include/X11/extensions/syncstr.h
/usr/local/include/X11/extensions/xtestext1.h
/usr/local/include/X11/extensions/xteststr.h
/usr/local/include/X11/keysym.h
/usr/local/include/X11/keysymdef.h
/usr/local/include/drm/drm.h
/usr/local/include/drm/drm_mode.h
/usr/local/include/drm/drm_sarea.h
/usr/local/include/drm/i915_drm.h
/usr/local/include/drm/mach64_drm.h
/usr/local/include/drm/mga_drm.h
/usr/local/include/drm/nouveau_drm.h
/usr/local/include/drm/r128_drm.h
/usr/local/include/drm/r300_reg.h
/usr/local/include/drm/radeon_drm.h
/usr/local/include/drm/savage_drm.h
/usr/local/include/drm/sis_drm.h
/usr/local/include/drm/via_3d_reg.h
/usr/local/include/drm/via_drm.h
/usr/local/include/drm/xgi_drm.h
/usr/local/include/intel_bufmgr.h
/usr/local/include/pixman-1/pixman-version.h
/usr/local/include/pixman-1/pixman.h
/usr/local/include/xf86drm.h
/usr/local/include/xf86drmMode.h
/usr/local/include/xorg/BT.h
/usr/local/include/xorg/IBM.h
/usr/local/include/xorg/TI.h
/usr/local/include/xorg/XIstubs.h
/usr/local/include/xorg/bstore.h
/usr/local/include/xorg/bstorestr.h
/usr/local/include/xorg/bt829.h
/usr/local/include/xorg/cfb8_16.h
/usr/local/include/xorg/closestr.h
/usr/local/include/xorg/closure.h
/usr/local/include/xorg/colormap.h
/usr/local/include/xorg/colormapst.h
/usr/local/include/xorg/compiler.h
/usr/local/include/xorg/cursor.h
/usr/local/include/xorg/cursorstr.h
/usr/local/include/xorg/damage.h
/usr/local/include/xorg/damagestr.h
/usr/local/include/xorg/dbestruct.h
/usr/local/include/xorg/dgaproc.h
/usr/local/include/xorg/dix.h
/usr/local/include/xorg/dixaccess.h
/usr/local/include/xorg/dixevents.h
/usr/local/include/xorg/dixfont.h
/usr/local/include/xorg/dixfontstr.h
/usr/local/include/xorg/dixgrabs.h
/usr/local/include/xorg/dixstruct.h
/usr/local/include/xorg/dri.h
/usr/local/include/xorg/dri2.h
/usr/local/include/xorg/dristruct.h
/usr/local/include/xorg/edid.h
/usr/local/include/xorg/exa.h
/usr/local/include/xorg/exevents.h
/usr/local/include/xorg/extension.h
/usr/local/include/xorg/extinit.h
/usr/local/include/xorg/extnsionst.h
/usr/local/include/xorg/fb.h
/usr/local/include/xorg/fbdevhw.h
/usr/local/include/xorg/fboverlay.h
/usr/local/include/xorg/fbrop.h
/usr/local/include/xorg/fi1236.h
/usr/local/include/xorg/fourcc.h
/usr/local/include/xorg/gc.h
/usr/local/include/xorg/gcstruct.h
/usr/local/include/xorg/geext.h
/usr/local/include/xorg/geint.h
/usr/local/include/xorg/globals.h
/usr/local/include/xorg/glyphstr.h
/usr/local/include/xorg/hotplug.h
/usr/local/include/xorg/i2c_def.h
/usr/local/include/xorg/input.h
/usr/local/include/xorg/inputstr.h
/usr/local/include/xorg/mi.h
/usr/local/include/xorg/mibank.h
/usr/local/include/xorg/mibstore.h
/usr/local/include/xorg/micmap.h
/usr/local/include/xorg/micoord.h
/usr/local/include/xorg/mifillarc.h
/usr/local/include/xorg/mifpoly.h
/usr/local/include/xorg/migc.h
/usr/local/include/xorg/miline.h
/usr/local/include/xorg/mipict.h
/usr/local/include/xorg/mipointer.h
/usr/local/include/xorg/mipointrst.h
/usr/local/include/xorg/misc.h
/usr/local/include/xorg/miscstruct.h
/usr/local/include/xorg/mispans.h
/usr/local/include/xorg/mistruct.h
/usr/local/include/xorg/miwideline.h
/usr/local/include/xorg/mizerarc.h
/usr/local/include/xorg/msp3430.h
/usr/local/include/xorg/opaque.h
/usr/local/include/xorg/os.h
/usr/local/include/xorg/picture.h
/usr/local/include/xorg/picturestr.h
/usr/local/include/xorg/pixmap.h
/usr/local/include/xorg/pixmapstr.h
/usr/local/include/xorg/privates.h
/usr/local/include/xorg/property.h
/usr/local/include/xorg/propertyst.h
/usr/local/include/xorg/ptrveloc.h
/usr/local/include/xorg/randrstr.h
/usr/local/include/xorg/region.h
/usr/local/include/xorg/regionstr.h
/usr/local/include/xorg/registry.h
/usr/local/include/xorg/renderedge.h
/usr/local/include/xorg/resource.h
/usr/local/include/xorg/rgb.h
/usr/local/include/xorg/rrtransform.h
/usr/local/include/xorg/sarea.h
/usr/local/include/xorg/screenint.h
/usr/local/include/xorg/scrnintstr.h
/usr/local/include/xorg/selection.h
/usr/local/include/xorg/servermd.h
/usr/local/include/xorg/shadow.h
/usr/local/include/xorg/shadowfb.h
/usr/local/include/xorg/shmint.h
/usr/local/include/xorg/site.h
/usr/local/include/xorg/swaprep.h
/usr/local/include/xorg/swapreq.h
/usr/local/include/xorg/tda8425.h
/usr/local/include/xorg/tda9850.h
/usr/local/include/xorg/tda9885.h
/usr/local/include/xorg/uda1380.h
/usr/local/include/xorg/validate.h
/usr/local/include/xorg/vbe.h
/usr/local/include/xorg/vbeModes.h
/usr/local/include/xorg/vgaHW.h
/usr/local/include/xorg/wfbrename.h
/usr/local/include/xorg/window.h
/usr/local/include/xorg/windowstr.h
/usr/local/include/xorg/xaa.h
/usr/local/include/xorg/xaaWrapper.h
/usr/local/include/xorg/xaalocal.h
/usr/local/include/xorg/xaarop.h
/usr/local/include/xorg/xf86.h
/usr/local/include/xorg/xf86Crtc.h
/usr/local/include/xorg/xf86Cursor.h
/usr/local/include/xorg/xf86DDC.h
/usr/local/include/xorg/xf86Modes.h
/usr/local/include/xorg/xf86Module.h
/usr/local/include/xorg/xf86Opt.h
/usr/local/include/xorg/xf86Optrec.h
/usr/local/include/xorg/xf86Parser.h
/usr/local/include/xorg/xf86Pci.h
/usr/local/include/xorg/xf86PciInfo.h
/usr/local/include/xorg/xf86Priv.h
/usr/local/include/xorg/xf86Privstr.h
/usr/local/include/xorg/xf86RAC.h
/usr/local/include/xorg/xf86RamDac.h
/usr/local/include/xorg/xf86RandR12.h
/usr/local/include/xorg/xf86Rename.h
/usr/local/include/xorg/xf86Resources.h
/usr/local/include/xorg/xf86Xinput.h
/usr/local/include/xorg/xf86_OSlib.h
/usr/local/include/xorg/xf86_OSproc.h
/usr/local/include/xorg/xf86cmap.h
/usr/local/include/xorg/xf86fbman.h
/usr/local/include/xorg/xf86i2c.h
/usr/local/include/xorg/xf86int10.h
/usr/local/include/xorg/xf86sbusBus.h
/usr/local/include/xorg/xf86str.h
/usr/local/include/xorg/xf86xv.h
/usr/local/include/xorg/xf86xvmc.h
/usr/local/include/xorg/xf86xvpriv.h
/usr/local/include/xorg/xisb.h
/usr/local/include/xorg/xkbfile.h
/usr/local/include/xorg/xkbrules.h
/usr/local/include/xorg/xkbsrv.h
/usr/local/include/xorg/xkbstr.h
/usr/local/include/xorg/xorg-server.h
/usr/local/include/xorg/xorgVersion.h
/usr/local/include/xorg/xserver-properties.h
/usr/local/include/xorg/xvdix.h
/usr/local/include/xorg/xvmcext.h
/usr/local/lib/X11/Options
/usr/local/lib/dri/EGL_i915.so
/usr/local/lib/dri/ffb_dri.so
/usr/local/lib/dri/i810_dri.so
/usr/local/lib/dri/i915_dri.so
/usr/local/lib/dri/i965_dri.so
/usr/local/lib/dri/mach64_dri.so
/usr/local/lib/dri/mga_dri.so
/usr/local/lib/dri/r128_dri.so
/usr/local/lib/dri/r200_dri.so
/usr/local/lib/dri/r300_dri.so
/usr/local/lib/dri/r600_dri.so
/usr/local/lib/dri/radeon_dri.so
/usr/local/lib/dri/s3v_dri.so
/usr/local/lib/dri/savage_dri.so
/usr/local/lib/dri/sis_dri.so
/usr/local/lib/dri/swrast_dri.so
/usr/local/lib/dri/tdfx_dri.so
/usr/local/lib/dri/trident_dri.so
/usr/local/lib/dri/unichrome_dri.so
/usr/local/lib/libEGL.so
/usr/local/lib/libEGL.so.1
/usr/local/lib/libEGL.so.1.0
/usr/local/lib/libGL.so
/usr/local/lib/libGL.so.1
/usr/local/lib/libGL.so.1.2
/usr/local/lib/libGLU.so
/usr/local/lib/libGLU.so.1
/usr/local/lib/libGLU.so.1.3.070600
/usr/local/lib/libGLw.so
/usr/local/lib/libGLw.so.1
/usr/local/lib/libGLw.so.1.0.0
/usr/local/lib/libdrm.la
/usr/local/lib/libdrm.so
/usr/local/lib/libdrm.so.2
/usr/local/lib/libdrm.so.2.4.0
/usr/local/lib/libdrm_intel.la
/usr/local/lib/libdrm_intel.so
/usr/local/lib/libdrm_intel.so.1
/usr/local/lib/libdrm_intel.so.1.0.0
/usr/local/lib/libglut.so
/usr/local/lib/libglut.so.3
/usr/local/lib/libglut.so.3.7.1
/usr/local/lib/libpixman-1.a
/usr/local/lib/libpixman-1.la
/usr/local/lib/libpixman-1.so
/usr/local/lib/libpixman-1.so.0
/usr/local/lib/libpixman-1.so.0.16.2
/usr/local/lib/pkgconfig/dri.pc
/usr/local/lib/pkgconfig/dri2proto.pc
/usr/local/lib/pkgconfig/gl.pc
/usr/local/lib/pkgconfig/glu.pc
/usr/local/lib/pkgconfig/glut.pc
/usr/local/lib/pkgconfig/glw.pc
/usr/local/lib/pkgconfig/inputproto.pc
/usr/local/lib/pkgconfig/libdrm.pc
/usr/local/lib/pkgconfig/libdrm_intel.pc
/usr/local/lib/pkgconfig/pixman-1.pc
/usr/local/lib/pkgconfig/randrproto.pc
/usr/local/lib/pkgconfig/xextproto.pc
/usr/local/lib/pkgconfig/xorg-server.pc
/usr/local/lib/pkgconfig/xproto.pc
/usr/local/lib/pkgconfig/xtrans.pc
/usr/local/lib/xorg/modules/drivers/ch7017.la
/usr/local/lib/xorg/modules/drivers/ch7017.so
/usr/local/lib/xorg/modules/drivers/ch7xxx.la
/usr/local/lib/xorg/modules/drivers/ch7xxx.so
/usr/local/lib/xorg/modules/drivers/intel_drv.la
/usr/local/lib/xorg/modules/drivers/intel_drv.so
/usr/local/lib/xorg/modules/drivers/ivch.la
/usr/local/lib/xorg/modules/drivers/ivch.so
/usr/local/lib/xorg/modules/drivers/sil164.la
/usr/local/lib/xorg/modules/drivers/sil164.so
/usr/local/lib/xorg/modules/drivers/tfp410.la
/usr/local/lib/xorg/modules/drivers/tfp410.so
/usr/local/lib/xorg/modules/extensions/libdbe.la
/usr/local/lib/xorg/modules/extensions/libdbe.so
/usr/local/lib/xorg/modules/extensions/libdri.la
/usr/local/lib/xorg/modules/extensions/libdri.so
/usr/local/lib/xorg/modules/extensions/libdri2.la
/usr/local/lib/xorg/modules/extensions/libdri2.so
/usr/local/lib/xorg/modules/extensions/libextmod.la
/usr/local/lib/xorg/modules/extensions/libextmod.so
/usr/local/lib/xorg/modules/extensions/libglx.la
/usr/local/lib/xorg/modules/extensions/libglx.so
/usr/local/lib/xorg/modules/input/kbd_drv.la
/usr/local/lib/xorg/modules/input/kbd_drv.so
/usr/local/lib/xorg/modules/input/mouse_drv.la
/usr/local/lib/xorg/modules/input/mouse_drv.so
/usr/local/lib/xorg/modules/libexa.la
/usr/local/lib/xorg/modules/libexa.so
/usr/local/lib/xorg/modules/libfb.la
/usr/local/lib/xorg/modules/libfb.so
/usr/local/lib/xorg/modules/libint10.la
/usr/local/lib/xorg/modules/libint10.so
/usr/local/lib/xorg/modules/libshadow.la
/usr/local/lib/xorg/modules/libshadow.so
/usr/local/lib/xorg/modules/libshadowfb.la
/usr/local/lib/xorg/modules/libshadowfb.so
/usr/local/lib/xorg/modules/libvbe.la
/usr/local/lib/xorg/modules/libvbe.so
/usr/local/lib/xorg/modules/libvgahw.la
/usr/local/lib/xorg/modules/libvgahw.so
/usr/local/lib/xorg/modules/libwfb.la
/usr/local/lib/xorg/modules/libwfb.so
/usr/local/lib/xorg/modules/libxaa.la
/usr/local/lib/xorg/modules/libxaa.so
/usr/local/lib/xorg/modules/libxf8_16bpp.la
/usr/local/lib/xorg/modules/libxf8_16bpp.so
/usr/local/lib/xorg/modules/linux/libfbdevhw.la
/usr/local/lib/xorg/modules/linux/libfbdevhw.so
/usr/local/lib/xorg/modules/multimedia/bt829_drv.la
/usr/local/lib/xorg/modules/multimedia/bt829_drv.so
/usr/local/lib/xorg/modules/multimedia/fi1236_drv.la
/usr/local/lib/xorg/modules/multimedia/fi1236_drv.so
/usr/local/lib/xorg/modules/multimedia/msp3430_drv.la
/usr/local/lib/xorg/modules/multimedia/msp3430_drv.so
/usr/local/lib/xorg/modules/multimedia/tda8425_drv.la
/usr/local/lib/xorg/modules/multimedia/tda8425_drv.so
/usr/local/lib/xorg/modules/multimedia/tda9850_drv.la
/usr/local/lib/xorg/modules/multimedia/tda9850_drv.so
/usr/local/lib/xorg/modules/multimedia/tda9885_drv.la
/usr/local/lib/xorg/modules/multimedia/tda9885_drv.so
/usr/local/lib/xorg/modules/multimedia/uda1380_drv.la
/usr/local/lib/xorg/modules/multimedia/uda1380_drv.so
/usr/local/lib/xorg/protocol.txt
/usr/local/share/X11/xkb/compat
/usr/local/share/X11/xkb/compat.dir
/usr/local/share/X11/xkb/compiled/README.compiled
/usr/local/share/X11/xkb/geometry
/usr/local/share/X11/xkb/geometry.dir
/usr/local/share/X11/xkb/keycodes
/usr/local/share/X11/xkb/keycodes.dir
/usr/local/share/X11/xkb/keymap
/usr/local/share/X11/xkb/keymap.dir
/usr/local/share/X11/xkb/rules
/usr/local/share/X11/xkb/semantics
/usr/local/share/X11/xkb/semantics.dir
/usr/local/share/X11/xkb/symbols
/usr/local/share/X11/xkb/symbols.dir
/usr/local/share/X11/xkb/types
/usr/local/share/X11/xkb/types.dir
/usr/local/share/aclocal/xorg-server.m4
/usr/local/share/aclocal/xtrans.m4
/usr/local/share/doc/randrproto/randrproto.txt
/usr/local/share/man/man1/Xnest.1
/usr/local/share/man/man1/Xorg.1
/usr/local/share/man/man1/Xserver.1
/usr/local/share/man/man1/Xvfb.1
/usr/local/share/man/man1/cvt.1
/usr/local/share/man/man1/gtf.1
/usr/local/share/man/man4/exa.4
/usr/local/share/man/man4/fbdevhw.4
/usr/local/share/man/man4/intel.4
/usr/local/share/man/man4/kbd.4
/usr/local/share/man/man4/mousedrv.4
/usr/local/share/man/man5/xorg.conf.5


Post Compilation


After compilation, I typed the following command:


ldconfig

You can remove the following packages if you are to use the self-compiled X.org server.


  • libgl1-mesa-dri
  • libglu1-mesa
  • x11proto-core-dev
  • x11proto-input-dev
  • x11proto-xext-dev
  • xserver-xorg-core
  • xtrans-dev

I edited the configuration file of my display manager SLiM so that SLiM will start the new X server at /usr/local/bin/Xorg.

About This Blog

KBlog logo This blog is about current events and issues concerning general population. Thanks for visiting the blog and posting your comments.

© Contents by KBlog

© Blogger template by Emporium Digital 2008

Followers

Total Pageviews

icon
Powered By Blogger