Next Previous Contents

3. Konfigurasi perangkat lunak

3.1 bash(1)

Untuk mengubah perilaku bash , berikut adalah berkas-berkas yang disunting:

Contoh dari berkas-berkas di atas ditunjukkan di bawah ini. Pertama-tama, yang paling penting: /etc/profile. Yang digunakan untuk mengkonfigurasi banyak hal di sistem Linux anda, seperti yang akan kita lihat berikut ini.


# /etc/profile

# System wide environment and startup programs
# Functions and aliases go in /etc/bashrc

# This file sets the following features:
#
#   o path
#   o prompts
#   o a few environment variables
#   o colour ls
#   o less behaviour
#   o keyboard settings
#
# Users can override these settings and/or add others in their
# $HOME/.bash_profile

# set a decent path

echo $PATH | grep X11R6 > /dev/null
if [ $? = 1 ] ; then   # add entries to the path
  PATH="$PATH:/usr/X11R6/bin:$HOME/bin:."
fi

# notify the user: login or non-login shell. If login, the prompt is
# coloured in blue; otherwise in magenta. Root's prompt is red.

USER=`whoami`
if [ $LOGNAME = $USER ] ; then
  COLOUR=44
else
  COLOUR=45
fi

if [ $USER = 'root' ] ; then
  COLOUR=41
fi

# put a real escape character instead of ^[
PS1='^[[$COLOUR;37;1m$HOSTNAME:^[[37;40;1m\w\$ '
PS2="Continue> "

# no core dumps, please

ulimit -c 0   

# set umask

if [ `id -gn` = `id -un` -a `id -u` -gt 14 ]; then
        umask 002
else
        umask 022
fi

# a few variables

USER=`id -un`
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
EDITOR=jed
HOSTNAME=`/bin/hostname`
HISTSIZE=1000
HISTFILESIZE=1000
export PATH PS1 PS2 USER LOGNAME MAIL EDITOR HOSTNAME HISTSIZE HISTFILESIZE

# enable colour ls

eval `dircolors /etc/DIR_COLORS -b`
export LS_OPTIONS='-F -s -T 0 --color=tty'

# customize less

LESS='-M-Q'
LESSEDIT="%E ?lt+%lt. %f"
LESSOPEN="| lesspipe.sh %s"
VISUAL=jed
LESSCHARSET=latin1
export LESS LESSEDIT LESSOPEN VISUAL LESSCHARSET

# customise the keyboard

/sbin/kbdrate -s -r 16 -d 500

for i in /etc/profile.d/*.sh ; do
        if [ -x $i ]; then
                . $i
        fi
done

Ini adalah /etc/bashrc:


# /etc/bashrc

# System wide functions and aliases
# Environment stuff goes in /etc/profile

alias which="type -path"
alias d="ls"
alias dir="d"

This is .bashrc:


# $HOME/.bashrc
# Source global definitions

if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# this is needed to notify the user that they are in non-login shell

COLOUR=45
# put a real escape character instead of ^[
PS1='^[[$COLOUR;37m$USER:^[[37;40m\w\$ '

# aliases

alias cp='cp -i'
alias l=less
alias lyx='lyx -width 900 -height 700'
alias mv='mv -i'
alias rm='rm -i'
alias x=startx

# A few useful functions

inst() # Install a .tar.gz archive in the current directory.
{ gzip -dc $1 | tar xvf - }

cz() # List the contents of a .zip archive.
{ unzip -l $* }

ctgz() # List the contents of a .tar.gz archive.
{
  for file in $* ; do
    gzip -dc ${file} | tar tf -
  done
}

tgz() # Create a .tgz archive a la zip.
{
  name=$1 ; tar -cvf $1 ; shift
  tar -rf ${name} $*
  gzip -S .tgz ${name}
}

Ini adalah .bash_profile:


# $HOME/.bash_profile

# User specific environment and startup programs
# This file contains user-defined settings that override
# those in /etc/profile

# Get aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# re-get PS1 settings

if [ $USER = 'root' ] ; then
  COLOUR=41
else
  COLOUR=44
fi

# put a real escape character instead of ^[
PS1='^[[$COLOUR;37;1m$HOSTNAME:^[[37;40;1m\w\$ '

export PS1

Ini adalah .bash_logout:


# $HOME/.bash_logout
clear

Ini adalah .inputrc:


# $HOME/.inputrc

# key bindings

"\e[1~": beginning-of-line
"\e[3~": delete-char
"\e[4~": end-of-line
# (F1 .. F5) are "\e[[A" ... "\e[[E"
"\e[[A": "info \C-m"

set bell-style visible         # please don't beep
set meta-flag On               # allow 8-bit input (i.e, accented letters)
set convert-meta Off           # don't strip 8-bit characters
set output-meta On             # display 8-bit characters correctly
set horizontal-scroll-mode On
set show-all-if-ambiguous On

Supaya tombol backspace dan delete dapat bekerja dengan benar di xterm dan aplikasi-aplikasi X11 lainnya, yang berikut ini juga diperlukan:

Info lebih lanjut di halaman-halaman 'man' dari bash(1) dan readline(3).

Jangan beranggapan bahwa semua aplikasi akan berjalan mulus! Jika anda menjalankan joe di xterm misalnya, beberapa tombol tidak bekerja; juga untuk rxvt. Kabarnya ada masalah dengan termcap.

3.2 ls(1)

ls dapat menampilkan isi direktori menggunakan warna untuk menyorot jenis-jenis berkas yang berbeda. Untuk dapat menggunakan fasilitas ini, tambahkan baris-baris berikut ke /etc/profile:

eval `dircolors /etc/DIR_COLORS -b`
export LS_OPTIONS='-F -T 0 --color=tty'

akan mengeset environment variable LS_COLORS sehingga berisi daftar warna yang tercantum di /etc/DIR_COLORS. Catatan: jangan bertanya mengapa, tetapi hal ini tidak bekerja dengan beberapa versi dari rxvt; gunakanlah xterm sebagai pengganti. Sepertinya rxvt mengandung bug yang mencegahnya untuk mengambil variabel-variabel environment dengan benar dalam keadaan-keadaan tertentu.

3.3 less(1)

Dengan menggunakan program bagus ini anda bukan saja bisa melihat isi berkas teks, tetapi juga yang dipadatkan dengan gzip, tar dan zip, halaman-halaman 'man', dan sebagainya. Konfigurasinya meliputi beberapa langkah:

3.4 emacs(1)

Beberapa distribusi emacs tidak dikonfigurasi untuk menggunakan warna dan penyorotan sintaks (syntax highlighting). Tambahkan di .emacs:

(global-font-lock-mode t)
(setq font-lock-maximum-decoration t)

Ini hanya bekerja di X11. Silakan membaca dokumentasi emacs untuk mengkonfigurasi penuh sesuai keinginan anda (kemungkinan bisa memakan waktu berbulan-bulan).

3.5 joe(1)

Periksalah di /usr/bin/ apakah jmacs, jstar, and jpico adalah symlinks (symbolic links) ke joe atau merupakan berkas-berkas biner sendiri; dalam hal yang terakhir, anda dapat mengubahnya ke symlinks untuk menghemat ruang harddisk:

~# cd /usr/bin
/usr/bin# ln -sf joe jmacs ; ln -sf joe jstar ; ln -sf joe jpico

Kemudian, anda tinggal menyalin berkas /usr/lib/joe/joerc ke direktori home sebagai .joerc dan menyuntingnya.

3.6 jed

Ini adalah editor favorit penulis, jed mengerjakan apa yang penulis butuhkan, lebih kecil dan lebih mudah dikonfigurasi daripada emacs, dan menurut hemat penulis mengemulasikan editor lain lebih baik. Banyak pengguna di universitas penulis ingin jed supaya mengemulasikan EDT, editor sistem VMS.

Berkas-berkas konfigurasinya adalah .jedrc and /usr/lib/jed/lib/*; yang pertama bisa dicontoh dari jed.rc di direktori yang terakhir disebut.

3.7 TeX dan kawan-kawan

Penulis beranggapan anda memiliki distribusi TeTeX. Beberapa hal:

3.8 PPP

Penulis beranggapan bahwa kernel anda sudah memliki dukungan PPP dan TCP/IP di dalamnya, menggunakan loopback, dan anda sudah memasang paket pppd dengan benar. (Syarat-syarat tersebut biasanya sudah terpasang secara default). Ada dua cara untuk menggunakan PPP: a) konfigurasi manual, dan b) menggunakan program yang menjalankannya secara otomatis. Pertama, manual.

Misalkan data-data dari ISP anda sbb:

Untuk konfigurasi manual koneksi PPP, lakukan:

Fuih! Jika anda beruntung, semestinya sudah bisa bekerja. Jika tidak, bersiap-siaplah mempelajari PPP-HOWTO.

Sudah cukup dengan konfigurasi manual. Ada paket bagus yang mengotomatisasi hal-hal di atas bernama ezppp dan bisa didapat dari http://www.serv.net/~cameron/ezppp/index.html.

3.9 Klien POP

Untuk mengambil mail-mail anda dari sebuah server POP, gunakan program/klien POP seperti fetchpop atau fetchmail. Yang terakhir mungkin satu-satunya pilihan jika server POP ISP anda mempunyai masalah dengan perintah LAST.

Untuk mengkonfigurasi klien-klien tersebut:

3.10 Sistem X Window

Setelah X bekerja (video card yang benar, dll.), ada banyak kemungkinan untuk konfigurasi; tergantung pada window manager yang anda gunakan. Pada dasarnya, anda menyunting berkas-berkas ASCII di direktori home anda. Untuk window managernya:

Sebagai tambahan, jangan lupa untuk membuat .xinitrc. Contoh:

#!/bin/sh

# $HOME/.xinitrc

# set a few keys correctly

usermodmap=$HOME/.Xmodmap 
xmodmap $usermodmap

xset s noblank  # turn off the screen saver
xset s 300 2    # screen saver start after 5 min
xsetroot -solid "medium blue" &

# rxvt saves memory, but has a few bugs:
#   - home and end keys are not recognised;
#   - backspace and delete don't work as in console;
#   - colours are not properly inherited by the environment;
#   - problems with the environment in general;
# xterm is therefore better in many cases. However, rxvt is best
# for running some colour apps like mc.

xterm -ls -bg black -fg white -sb -sl 500 -j -ls -fn 10x20 -fb 10x20bold \
-title "Color xterm" -geometry 80x25+150+0 &

fvwm95-2

3.11 Fortran

Menurut pengalaman penulis, jika anda membutuhkan Fortran, alternatif yang baik untuk g77 adalah penerjemah Fortran ke C f2c dan yaf77 sebagai front-end.

Dapatkan yaf77 dari ftp://sunsite.unc.edu/pub/Linux/devel/languages/fortran/yaf77-1.4.tgz dan mirror-mirrornya.

3.12 Konfigurasi untuk pengguna

Penulis menganjurkan supaya pengguna baru sudah memiliki berkas-berkas konfigurasi yang siap digunakan ketika mereka pertama kali login. Letakkan berkas-berkas berikut di bawah /etc/skel/: bashrc, bash_profile, bash_logout, inputrc, less, xinitrc, fvwmrc, fvwm2rc95, Xmodmap, Xdefaults, jedrc, joerc, emacs.

(Catatan: karena masalah sewaktu mem-format dokumen ini, penulis terpaksa menghilangkan tanda titik (`.') di awal nama berkas-berkas di atas)

Ketahuilah bahwa .pinerc tidak bisa sepenuhnya dikonfigurasi; pastikan bahwa minimal user-domain, smtp-server, and nntp-server terdefinisi dengan benar.


Next Previous Contents