Haloo..... Linux mania. Kali ini kami akan mencoba membagikan
kode sumber (Source Code) dari salah satu applikasi buatan kami yang berjalan di Linux.
Applikasi Alarm versi 0.1. Bagi teman-teman di /bsp, mungkin pernah melihat
alarm komputernya Eddo (D-12) yang bisa membangunkan tetangga sebelah (Applikasi
Windows). Nah alarm yang kami buat ini adalah versi Linuxnya.
Ok, langsung aja kite kemon......
Pembukaan:
Program ini dibuat dengan script "bash" yang dipadu dengan Kdialog.
Bagi anda yang belum mengenal KDIALOG, silahkan buka http://developer.kde.org/documentations/tutorials/kdialog/t1.html.
Kdialog adalah salah satu applikasi dari KDE yang mampu membuat suatu bentuk
gui dengan pemrograman bash script.
Requirements:
1. Linux OS
2. KDE 3.X
3. crond
4. kdialog
5. xmms
6. mp3 file
7. Speaker Aktif
Cara pakai:
Copy & Paste program di bawah ini.
Simpan dengan nama Alarm (atau terserah anda).
Lalu set attributnya supaya bisa di execute dengan perintah "chmod
+x alarm" tanpa tanda kutip di konsol anda.
Ingat, sebelum melakukan perintah tersebut anda harus sudah berada di direktori tempat anda menyimpan file tersebut.
Lalu jalankan dengan perintah "./alarm"
tanpa tanda kutip.
Syarat yang cukup penting yaitu komputer anda harus nyala 24 jam, dan volume
speaker aktif di set secukupnya. Ikuti petunjuknya.
Program telah di test di:
1. Fedora Core 2
2. Slackware 9.1
3. Mandrake 10
4. SecretColonyX
Berikut snapshot dari program tersebut (diambil dari Fedora Core 2):






Selamat mencoba. Silahkan di kembangkan jika diperlukan
Berikut kode sumber (source code) program Alarm mulai dari tanda "#" dibawah ini:
############################################################################
# Copyright (C) 2004 by KillFinger & aW^ #
# [email protected] || aW^ of /bsp/mnt #
# #
# This program is free software; you can redistribute it and#or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation; either version 2 of the License, or #
# (at your option) any later version. #
# #
# This program is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with this program; if not, write to the #
# Free Software Foundation, Inc., #
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #
############################################################################
#!/bin/bash
# $Id: Alarm,v 0.1 2004/11/14 22:38:11 Source Code Publish Exp $
# Alarm - Copyright (C) 2004 KillFinger ([email protected]) & aW^ of /bsp/mnt
kdialog --title "SecretColony Lab n Research" --warningcontinuecancel "Selamat, anda sedang menggunakan file \
konfigurasi alarm. \nCode by: \nKillFinger of \"SecretColony\" --- aW^ of \"/bsp/mnt\""
if [ $? = 0 ]
then
std=`kdialog --menu "Silahkan Pilih option dibawah ini" a "Baca help file" b "konfigurasi ke system" c "Reset alarm"`
case $std in
a)
echo "Read me
Program alarm ini dibuat oleh KillFinger & aW^ dalam rangka pengembangan penggunaan linux ke tingkat
yang lebih dari sekedar buka-tutup applikasi saja. Dengan Linux anda bisa memanfaatkan imajinasi
menjadi suatu yang nampak nyata. Syaratnya: kemauan. Requirement: Linux OS, KDE 3.X, crond, xmms, mp3 file,
kdialog, speaker aktif. Publisher: SecretColony Lab n Research (www.geocitites.com/killfinger)." > /tmp/read.txt
kdialog --textbox /tmp/read.txt 800 600
kdialog --title "Konfirmasi" --yesno "Apakah anda ingin melanjutkan pemakaian program?"
if [ $? = 0 ]
then
./`basename $0`
else
exit $?
fi
;;
b)
kdialog --msgbox "Anda melanjutkan proses konfigurasi."
jam="`kdialog --title "Alarm Konfigurasi" --inputbox "Masukkan jam alarm anda. Range: 0-23" "5"`"
menit="`kdialog --title "Alarm Konfigurasi" --inputbox "Masukkan menit alarm anda. Range: 0-59" "0"`"
kdialog --msgbox "Lanjutkan dengan memilih lagu alarm anda."
lagu="`kdialog --getopenfilename . "*.mp3"`"
xhost + localhost
crontab -l > /tmp/crondata
cat /tmp/crondata | grep "*" > /tmp/cronfile; rm -rf /tmp/crondata
chmod 600 /tmp/cronfile; cp /tmp/cronfile /var/tmp/cronfile
echo -e "#!/bin/bash" > /tmp/cronsong
echo -e "export DISPLAY=:0.0" >> /tmp/cronsong
echo -e "/usr/bin/xmms -p $lagu &" >> /tmp/cronsong
chmod +x /tmp/cronsong
echo -e "$menit $jam * * * /tmp/cronsong" >> /tmp/cronfile
crontab /tmp/cronfile
kdialog --msgbox "Anda telah mengkonfigurasi alarm pada: \nJam = $jam \nMenit ke = $menit \nLagu = $lagu.\n\n\n -= SecretColony Lab n Research =-"
rm -rf /tmp/cronfile
;;
c)
kdialog --title "Konfirmasi" --yesno "Apakah anda ingin mereset alarm?"
if [ $? = 0 ]
then
crontab /var/tmp/cronfile
rm -rf /var/tmp/cronfile
rm -rf /tmp/cronfile
kdialog --msgbox "Alarm sudah di reset."
else
kdialog --msgbox "Anda tidak mereset alarm."
fi
exit $?
;;
esac
else
kdialog --msgbox "Anda tidak melanjutkan proses konfigurasi.\n -= SecretColony Lab n Research =-"
exit $?
fi
exit 0