Tuesday 26 February 2008

Optimize Linux (Μέρος 2o - A faster Amarok)

Ο Amarok είναι απλά ο καλύτερος music player/organizer που υπάρχει. Και κατά την ταπεινή μου πάντα άποψη, είναι έτη φωτός μπροστά από οποιονδήποτε άλλο player/organizer...

Το μόνο του πρόβλημα είναι ότι χάνει σε ταχύτητα όταν χρησιμοποιούμε sqlite, ή όταν τον χρησιμοποιούμε σε Gnome αντί για KDE.

Η λύση στο πρόβλημα μας είναι απλή και λέγεται MySQL. Ρυθμίζοντας τον Amarok να χρησιμοποιεί την MySQL, ο αγαπημένος μας player αποκτάει ταχύτατες επιδόσεις ακόμα και μέσα σε Gnome!

Αν δεν με πιστεύετε δοκιμάστε το ;)

Τα βήματα που περιγράφω τα έκανα στην Fedora 8, αλλά με λίγες αλλαγές μπορείτε να τα μεταφέρετε σε οποιαδήποτε διανομή.

Ξεκινάμε με την εγκατάσταση της MySQL.
su -c 'yum install mysql mysql-server'

και την εκκίνηση του service
su -c '/etc/init.d/mysqld start'
su -c '/sbin/chkconfig mysqld on'

Ρυθμίζουμε ένα root password για την MySQL (αν δεν έχουμε ήδη) με
mysqladmin -u root password (ο επιθυμητός κωδικός)

mysql -p -u root
(μας ζητάει τον κωδικό που βάλαμε πάνω) και περνάμε στο "mysql prompt"

mysql> CREATE DATABASE amarok;
mysql> USE mysql;
mysql> GRANT ALL ON amarok.* TO amarok@localhost IDENTIFIED BY 'κωδικός για τον amarok';
mysql> FLUSH PRIVILEGES;
mysql> quit

τώρα ανοίγουμε τον Amarok και πάμε στα Settings->Configure Amarok
επιλέγουμε MySQL και ρυθμίζουμε username και pass όπως στο screenshot:


Μην ξεχάσετε να κάνετε rebuild την library αν είχατε φτιάξει άλλη παλιότερα με sqlite.

Καλή διασκέδαση!

Keywords: How to,Setup,Optimize,Amarok,with,MySQL

Optimize Linux (Μέρος 1ο)

Το Linux είναι γρήγορο,σταθερό και ασφαλές. Και βεβαία υπάρχουν τρόποι να γίνει γρηγορότερο,σταθερότερο και ασφαλέστερο.

Ο παρακάτω οδηγός απευθύνεται σε οικιακούς χρήστες που θέλουν να αυξήσουν την ταχύτητα χωρίς όμως να διακινδυνέψουν... πολύ, την σταθερότητα και την ασφάλεια του συστήματος.

Τα παρακάτω έχουν δοκιμαστεί με επιτυχία σε Ubuntu και σε Fedora και έχουν αυξήσει αρκετά την συνολική απόδοση του συστήματος.

Swappiness

Το σύστημα από προεπιλογή έχει την τάση να χρησιμοποιεί εικονική μνήμη ακόμα και οτάν δεν την χρειαζόμαστε, με αποτέλεσμα να χάνουμε σε ταχύτητα. Αυτό μπορούμε να το αλλάξουμε, αλλάζοντας την τιμή του vm.swappiness.
Για να έχουμε όφελος από την αλλαγή θα πρέπει το σύστημα μας να διαθέτει και αρκετή μνήμη βεβαία. Πχ 512mb+

από wikipedia->
"The backing store for a virtual memory operating system is typically many magnitudes slower than RAM. Therefore it is desirable to reduce or eliminate swapping, where practical. Some operating systems offer settings to influence the kernel's decisions.

1. Linux offers the /proc/sys/vm/swappiness parameter, which changes the balance between swapping out runtime memory, as opposed to dropping pages from the system page cache.
2. Windows 2000, XP, and Vista offer the DisablePagingExecutive registry setting, which controls whether kernel-mode code and data can be eligible for paging out."

Πάντα πριν πειράξουμε ένα αρχείο συστήματος το κάνουμε backup...
su -c 'cp /etc/sysctl.conf /etc/sysctl.conf.backup'

έπειτα το ανοίγουμε σαν root
su -c 'gedit /etc/sysctl.conf'

και προσθέτουμε την παρακάτω γραμμή ή αν υπάρχει αλλάζουμε την τιμή σε 0
vm.swappiness = 0


Noatime

Υπάρχουν αρκετά tips για να αυξηθεί η απόδοση του filesystem και κατά συνέπεια του συστήματος.
Αλλά πολλά απο αυτά επηρεάζουν αρνητικά την σταθερότητα του, όπως πχ το writeback στο ext3 ή η απενεργοποίηση του ελέγχου κατά το boot.
Ένα από τα χαρακτηριστικά του filesystem που σπάνια χρειάζεται ο οικιακός χρήστης είναι το "access time" των αρχείων.
Με την χρήση των noatime,nodiratime μπορούμε να βελτιώσουμε την απόδοση του συστήματος μας αρκετά.

από το kernel trap.org
"Atime updates are by far the biggest IO performance deficiency that Linux has today. Getting rid of atime updates would give us more everyday Linux performance than all the pagecache speedups of the past 10 years, _combined_."


κάνουμε backup το /etc/fstab:
su -c 'cp /etc/fstab /etc/fstab.backup'

και το ανοίγουμε με έναν επεξεργαστή κειμένου:
su -c 'gedit /etc/fstab'

στα mount options των ext3 δισκων μας προσθέτουμε το noatime,nodiratime.

Πχ το δίκο μου /etc/fstab μετά τις αλλάγες:
LABEL=/ / ext3 defaults,noatime,nodiratime 1 1
LABEL=/home /home ext3 defaults,noatime,nodiratime 1 2
LABEL=/disks/stuff /disks/stuff ext3 defaults,noatime,nodiratime 1 2
LABEL=/disks/multimedi /disks/multimedia ext3 defaults,noatime,nodiratime 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/sda3 swap swap defaults 0 0


Preload

Υπάρχουν διαφορές τεχνικές να επιταχύνουμε την απόδοση των εφαρμογών. O γρηγορότερος και ασφαλέστερος τρόπος κατά την ταπεινή μου άποψη είναι η χρήση του preload.

από wikipedia->
"preload is a Free Linux program written by Behdad Esfahbod which runs as a daemon and records statistics about usage of programs using Markov chains; files of more frequently-used programs are, during a computer's spare time, loaded into memory. This results in faster application startup times as less data needs to be fetched from disk. preload is often paired with prelink."

Απλά το εγκαθιστούμε:
su -c 'yum install preload' (σε Fedora)
sudo apt-get install preload (σε Debian,Ubuntu)
Kαι απολαμβάνουμε γρηγορότερα τις αγαπημένες μας εφαρμογές :)

Καλή διασκέδαση!

Keywords: Linux,Optimizing,Guide,preload,swappiness,noatime

Monday 18 February 2008

Drivel - Blog directly from your Gnome Desktop

Το drivel είναι μια εφαρμογή για gnome που επιτρέπει να γράψουμε και ποστάρουμε στο blog μας κατευθείαν απο το desktop.

  • Υποστηρίζει αρκετές διαδεδομένες πλατφόρμες όπως : LiveJournal, Blogger, MovableType, Advogato, και Atom journals (πχ WordPress και Drupal)

  • μπορούμε να ποστ άρουμε να σβήσουμε και να διορθώσουμε πρόσφατα ποστ

  • Έχει ενσωματωμένο ορθογραφικό έλεγχο

  • Μπορούμε να γράψουμε offline και να γίνει το post όταν συνδεθούμε και αλλά πολλά


  • Ξεκινώντας το drivel μας υποδέχεται μια login screen, οπού μπορούμε να δώσουμε τις απαραίτητες πληροφορίες για να συνδεθούμε.



    δίνουμε όνομα χρήστη, κωδικό και επιλέγουμε πλατφόρμα. Επιλέγοντας blogger διαπίστωσα οτι κάνει assign λάθος την διεύθυνση με αποτέλεσμα να μην μπορώ να συνδεθώ!

    Μέτα από λίγο ψάξιμο βρήκα ότι η σωστή διεύθυνση είναι -> http://www.blogger.com/api/RPC2

    Έπειτα μας υποδέχεται ο editor του drivel που υποστηρίζει κάποια στοιχειώδης μορφοποίηση που από ότι κατάλαβα επεκτείνετε ανάλογα με το τι υποστηρίζει η κάθε πλατφόρμα.



    Για κάποιο λόγο το view->more entry options μου είναι γκριζαρισμένο με αποτέλεσμα να μην βρίσκω πουθενά πεδίο για να βάλω το θέμα και τις ετικέτες!!

    Τα format options είναι πολύ βολικά, και υποστηρίζουν συμπαθητική μορφοποίηση του κειμένου καθώς και την προσθήκη εικόνων. Και αν έχετε παραπάνω απο ένα blog διαλέγετε σε ποιο από τα δύο θα ποστάρετε.

    Σε γενικές γραμμές το drivel με άφησε αρκετά ικανοποιημένος από την ταχύτητά του και την ευχρηστία του.
    Αν διαβάζετε αυτό το ποστ όλα πήγαν καλά και το drivel δουλεύει άψογα :D

    Happy Blogging!

    Keywords: Blogging,Software,Linux,Drivel,Blog,From,Your,Gnome,Desktop

    Sunday 17 February 2008

    Guake - Quake style terminal for Gnome

    Για πολύ καιρό στο KDE υπάρχει ένα καταπληκτικό, quake style terminal το yakuake

    Πρόκειται για ένα κέλυφος εντολών που κατεβαίνει από το πάνω μέρος της οθόνης με το πάτημα ενός κουμπίου, κρατάει το πλήρες session των όσων πληκτρολογήσαμε υποστηρίζει tabs, και όταν το "κλεινουμε" εξακολουθεί να παραμένει "ανοιχτό" και να εκτελεί λειτουργίες στο background.

    Στο gnome υπήρχε το tilda το οποίο όμως δεν με ενθουσίασε πότε όσο το yakuake.

    Καθώς ψαχούλευα τις προάλλες στο net ανακάλυψα ότι βγήκε παρόμοιο terminal με το yakuake για Gnome, το Guake:


    όπως χαρακτηριστικά λέει ο προγραμματιστής του Gabriel Falcão:

    "Have you ever been in need of a console terminal, but thought that switching windows is not smart enough for you?
    I think that need is the mother of invention. Since I use GNOME I always wish for some application in GTK that are already in QT/KDE. But I'd rather use GTK so, why not just create my own drop-down terminal?

    Guake follows the same line of Yakuake and Tilda, but I am trying to meld the best of them into a single GTK-based application.
    Guake has been written from scratch.

    In a nutshell, Guake is a drop-down terminal for Gnome Desktop Environment, so you just need to press a key to invoke him, and press again to hide."

    Το guake και το yakuake έχουν παρεμφερές look & feel και ίδια λειτουργικότητα. Η μονή διαφορά είναι ότι δεν χρησιμοποιεί qt βιβλιοθήκες αλλά gtk, και ότι είναι στα πρώιμα στάδια της ανάπτυξης του.
    Πάντως μέχρι στιγμής φαίνεται αρκετά σταθερό :)

    Το πρόγραμμα είναι διαθέσιμο σε πακέτο για deb και πηγαίο κώδικά.

    Tarball: guake-0.1.tar.gz - 481 KBs

    Debian Sid package : guake_0.1-1_i386.deb - 112KBs

    Developement version: git clone http://repos.guake-terminal.org/guake.git/

    Keywords:Quake,Like,Terminal,For,Gnome,Guake,Yakuake

    Dual Boot Ubuntu 7.10 and Fedora 8

    Τελευταία fedora που είχα δουλέψει ήταν η 6, και το μόνο που δεν μου άρεσε ήταν η απόδοση του yum. Το apt πιστεύω ότι είναι σαφώς ταχύτερο. Χτες λοιπόν έπεσε στα χέρια μου ένα dvd της Fedora 8 (είναι στο dvd του ελληνικού linux format αυτού του μήνα), όποτε μιας και είχα ένα 30αρή partition ελεύθερο, είπα να την εγκαταστήσω :)

    Θα καταγράψω τα βήματα που ακολούθησα, ίσως σε κάποιον να φανούν χρήσιμα...

    Η εγκατάσταση της fedora είναι πολύ απλή και ο γραφικός installer μας καθοδηγεί σε κάθε βήμα.
    Προσέξτε μόνο να επιλέξετε το advanced partition configuration γιατι μπορεί να χάσετε δεδομένα!

    Γενικά είμαi απόλυτα ικανοποιημένος από τον installer και το μόνο παράπονο που έχω είναι οτι ο grub δεν αναγνώρισε το ubuntu partition ενώ αν είχα windows θα τα είχε εντοπίσει τελεία! Αλλά μικρό το κακό.

    Bootαρουμε στο νέο μας σύστημα. Kαι τώρα είναι μια καλή ώρα να απ εγκαταστήσουμε ότι δεν θέλουμε, και να κλείσουμε ή/και να απεγκαταστήσουμε τα service που δεν χρησιμοποιούμε !

    Βεβαιωθείτε οτι δεν απεγκαθιστάτε dependencies πραγμάτων που θέλετε , ο package manager θα σας ενημερώσει για αυτό.
    Bεβαιωθείτε οτι δεν απενεργοποιείτε services που χρειάζεστε! Αν δεν είστε σίγουροι ή δεν ξέρετε πως. Kάντε skip αυτό το βήμα για την ώρα...

    Λογικά μέχρι τώρα θα έχει εμφανιστεί και το pop up ότι υπάρχουν updates. Ας κάνουμε τις αναβαθμίσεις πριν προχωρήσουμε.

    Μετά από ένα πολύωρο update λοιπον...

    Το πρώτο πράγμα που έκανα ήταν να ρυθμίσω το dual-boot Ubuntu/Fedora

    Αν δεν κάνατε mount το partition του ubuntu κατά την εγκατάσταση μπορείτε να το κάνετε τώρα.
    su (μπαίνουμε σε root mode)
    cd /
    φτιαχνούμε το mount-point πχ mkdir /disks/ubuntu

    Βλέπουμε με fdisk -l πως λένε το partition που έχουμε εγκαταστήσει το ubuntu
    πχ το output στο δικό μου σύστημα είναι αυτό

    Disk /dev/sda: 30.0 GB, 30020272128 bytes
    255 heads, 63 sectors/track, 3649 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Disk identifier: 0x1f0f1f0e

    Device Boot Start End Blocks Id System
    /dev/sda1 * 1 1275 10241406 83 Linux
    /dev/sda2 1276 3521 18040995 83 Linux
    /dev/sda3 3522 3649 1028160 82 Linux swap / Solaris

    Disk /dev/sdb: 250.0 GB, 250059350016 bytes
    255 heads, 63 sectors/track, 30401 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Disk identifier: 0x0001c5f7

    Device Boot Start End Blocks Id System
    /dev/sdb1 * 1 30401 244196001 83 Linux

    Disk /dev/sdc: 80.0 GB, 80026361856 bytes
    255 heads, 63 sectors/track, 9729 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Disk identifier: 0x105a6860

    Device Boot Start End Blocks Id System
    /dev/sdc1 * 1 3853 30949191 83 Linux
    /dev/sdc2 3854 9729 47198970 83 Linux


    Το Ubuntu το είχα εγκαταστήσει στο /dev/sda2 ενώ τη fedora στο /dev/sdc1, ο δε grub και το /home των δύο διανομών είναι στο /dev/sda1

    Κάνουμε mount λοιπόν το ubuntu με mount /dev/sda2/ /disks/ubuntu/
    ανοίγουμε με έναν editor πχ τον gedit το αρχείο /disks/ubuntu/boot/grub/menu.lst και βρίσκουμε το section που περιέγραφε τον τελευταίο μας πυρήνα στο παλιό grub το δικό μου πχ είναι αυτό:
    title Ubuntu 7.10, kernel 2.6.24-7-generic
    root (hd0,1)
    kernel /boot/vmlinuz-2.6.24-7-generic root=UUID=dc6cb68a-05ce-4586-bd18-2c4fd71c920e ro quiet splash
    initrd /boot/initrd.img-2.6.24-7-generic
    quiet
    το κάνουμε copy και ανοίγουμε /boot/grub/menu.lst που περιγραφεί το τρέχων grub και το κάνουμε paste:
    # grub.conf generated by anaconda
    #
    # Note that you do not have to rerun grub after making changes to this file
    # NOTICE: You do not have a /boot partition. This means that
    # all kernel and initrd paths are relative to /, eg.
    # root (hd2,0)
    # kernel /boot/vmlinuz-version ro root=/dev/sdc1
    # initrd /boot/initrd-version.img
    #boot=/dev/sda
    default=0
    timeout=10
    splashimage=(hd2,0)/boot/grub/splash.xpm.gz
    #hiddenmenu
    title Fedora (2.6.23.15-137.fc8)
    root (hd2,0)
    kernel /boot/vmlinuz-2.6.23.15-137.fc8 ro root=LABEL=/ rhgb quiet
    initrd /boot/initrd-2.6.23.15-137.fc8.img

    title Ubuntu 7.10, kernel 2.6.24-7-generic
    root (hd0,1)
    kernel /boot/vmlinuz-2.6.24-7-generic root=UUID=dc6cb68a-05ce-4586-bd18-2c4fd71c920e ro quiet splash rootflags=data=writeback
    initrd /boot/initrd.img-2.6.24-7-generic
    quiet

    Πλέον μπορούσα να κάνω dual boot :D

    Επειδή μου έσπασε τα νευρά που αναγκαστικά επρέπε να δουλέψω σαν root, η επομένη κίνηση μου ήταν η ρύθμιση της sudo!

    γράφουμε: su --login -c 'visudo' για να ανοίξει το αρχείο /etc/sudoers οπού μπορούμε να δώσουμε στον χρήστη μας δικαίωμα να χρησιμοποιεί την sudo

    κάτω από την γραμμή root ALL=(ALL) ALL βάζουμε τον χρήστη, που θέλουμε να έχει δυνατότητα για sudo:

    username ALL=(ALL) ALL
    (Για να ξεκινήσετε να γράφεται στον vi. πατήστε το i μετά μόλις τελειώσετε πατήστε ESC :wq)

    Μπορούμε να κάνουμε και εξτρά ρυθμίσεις αν θέλουμε δείτε την manpage->
    man sudoers

    Επόμενο η ρύθμιση της nvidia! Οι 3d accelerated drivers βρίσκονται ακόμα στην livna από ότι κατάλαβα οπότε πάμε να σετ άρουμε το repository της livna:
    ο πιο ευκόλος τροπός είναι με:
    sudo rpm -ihv http://rpm.livna.org/livna-release-8.rpm
    ( εχώ δώσει στον χρήστη μου πρόσβαση στη sudo, οπότε αν δεν το έχετε κάνει παρακάμψετε όπου γράφω sudo και κάντε το βήμα σαν root)

    Πλέον μπορούμε να εγκαταστήσουμε τoυς 3d accelerated drivers της nvidia:

    sudo yum install kmod-nvidia
    sudo /usr/sbin/nvidia-xconfig --composite --add-argb-glx-visuals

    κάνουμε reboot εγώ έκανα καμπόσο tweaking στο xorg.conf μου επειδή έχω και ταμπλέτα, το παραθέτω μήπως βοηθήσει κάποιον που έχει πρόβλημα με τις ρυθμίσεις του:
    Section "ServerLayout"
    Identifier "single head configuration"
    Screen 0 "Screen0" 0 0
    InputDevice "Mouse0" "CorePointer"
    InputDevice "Keyboard0" "CoreKeyboard"
    InputDevice "pad" "SendCoreEvents"
    InputDevice "eraser" "SendCoreEvents"
    InputDevice "stylus" "SendCoreEvents"
    InputDevice "cursor" "SendCoreEvents"
    EndSection

    Section "Files"
    ModulePath "/usr/lib/xorg/modules/extensions/nvidia"
    ModulePath "/usr/lib/xorg/modules"
    EndSection

    Section "Module"
    Load "freetype"
    Load "glx"
    Load "dbe"
    Load "extmod"
    EndSection

    Section "ServerFlags"
    Option "AllowMouseOpenFail" "yes"
    Option "AIGLX" "on"
    EndSection

    Section "InputDevice"
    # generated from default
    Identifier "Mouse0"
    Driver "mouse"
    Option "Protocol" "auto"
    Option "Device" "/dev/input/mice"
    Option "Emulate3Buttons" "no"
    Option "ZAxisMapping" "4 5"
    EndSection

    Section "InputDevice"
    Identifier "Keyboard0"
    Driver "kbd"
    Option "XkbModel" "pc105"
    Option "XkbLayout" "us+inet"
    EndSection

    Section "InputDevice"
    Identifier "pad"
    Driver "wacom"
    Option "Device" "/dev/input/wacom" # USB ONLY
    Option "Type" "pad"
    Option "USB" "on" # USB ONLY
    EndSection

    Section "InputDevice"

    # /dev/input/event
    # for USB
    Identifier "eraser"
    Driver "wacom"
    Option "Device" "/dev/input/wacom"# Change to
    Option "Type" "eraser"
    Option "USB" "on"
    #option "ForceDevice" "ISDV4"# Tablet PC ONLY
    EndSection

    Section "InputDevice"

    # /dev/input/event
    # for USB
    Identifier "stylus"
    Driver "wacom"
    Option "Device" "/dev/input/wacom"# Change to
    Option "Type" "stylus"
    Option "USB" "on"
    # option "ForceDevice" "ISDV4"# Tablet PC ONLY
    EndSection

    Section "InputDevice"

    # /dev/input/event
    # for USB
    Identifier "cursor"
    Driver "wacom"
    Option "Device" "/dev/input/wacom"# Change to
    Option "Type" "cursor"
    Option "USB" "on"
    #option "ForceDevice" "ISDV4"# Tablet PC ONLY
    EndSection

    Section "Monitor"
    Identifier "Monitor0"
    ModelName "LCD Panel 1280x1024"
    HorizSync 31.5 - 64.0
    VertRefresh 56.0 - 65.0
    Option "dpms"
    EndSection

    Section "Device"
    Identifier "Videocard0"
    Driver "nvidia"
    EndSection

    Section "Screen"
    Identifier "Screen0"
    Device "Videocard0"
    Monitor "Monitor0"
    DefaultDepth 24
    Option "AddARGBVisuals" "True"
    Option "AddARGBGLXVisuals" "True"
    SubSection "Display"
    Viewport 0 0
    Depth 24
    Modes "1280x1024" "1280x960" "1280x800" "1280x720" "1152x864" "1024x768" "800x600" "640x480"
    EndSubSection
    EndSection

    Section "Extensions"
    Option "Composite" "Enable"
    EndSection
    Μέτα πηγά απο Add/Remove programs για εξτρά compiz stuff, και ρύθμισα το compiz, μια αναζήτηση για compiz θα σας υποδείξει αρκετά πραγματάκια. Οπωσδήποτε βάλτε το ccsm πάντως για να μπορείτε να ρυθμίσετε τα plugins του compiz που θέλετε

    Εγκατέστησα τον vlc και τον exaile που είναι οι αγαπημένοι μου media players όταν είμαι σε gnome, και τα codecs για αναπαραγωγή dvd και mp3
    sudo yum install vlc libdvdcss libdvdplay exaile gstreamer-plugins-bad gstreamer-plugins-ugly
    Αμέσως μετά ξεφορτώθηκα τον totem, βασικά τον μετονόμασα και έκανα το totem symlink σε vlc
    δεν γίνεται να τον ξεφορτωθείτε τελείως διότι τα thumbnails των βίντεο του ναυτίλου γίνονται από τον totem-video-thumbnailer και αν τον απεγκαταστήσετε ο ναυτίλος σπάει.
    Μπορεί να αλλαχθεί ο thumbnailer από τον gconf editor πάντως, αλλά το άφησα για αλλά φορά. Σε αυτή τη φαση μπορούμε να δούμε dvd και divx και να ακούσουμε mp3. Aν θέλετε να κάνετε τον totem λειτουργικότερο ή απλά να βλέπετε τα thumbnails των divx στον ναυτίλο εγκαταστήστε το totem-gstreamer της livna ή το totem-xine
    sudo yum install totem-gstreamer
    Εγκατέστησα το preload για ταχύτερη πρόσβαση στα προγράμματα που χρησιμοποιώ συχνά
    sudo yum install preload

    και μερικές πολυ χρήσιμες προεκτάσεις του ναυτιλου
    sudo yum install nautilus-open-terminal nautilus-search-tool
    Και έτσι τελείωσε ουσιαστικά αυτό που θεωρώ βασική εγκατάσταση, και μπορώ να αρχίσω να δουλεύω με το σύστημα.

    Καλή διασκέδαση και ελπίζω όλος η μέρος του οδηγού να σας φάνηκε χρήσιμος ...

    Keywords:Dual,Boot,Fedora 8,Ubuntu 7.10,Installation,How to,Setup,Dvd Playback,Mp3 Support,nvidia,Accelerated Drivers,Config,sudo,xorg.conf,compiz

    Friday 15 February 2008

    Ανάθεση συντομεύσεων σε εφαρμογές

    Πολλές φορές υπάρχουν κάποιες εφαρμογές που τρέχουμε συνέχεια πχ το gedit ή τον firefox κτλ
    Δεν θα ήταν πολύ ωραίο να μπορούσαμε να τις ανοίξουμε με shortcut? πχ να παταμε F9 και να ανοίγει το gedit.

    Η διαδικασία για να το κάνουμε αυτό στο gnome είναι πολύ απλή και την περιγράφω παρακάτω.
    Πατάμε Alt+F2 και τρέχουμε τον gconf-editor.

    Ξεδιπλώνουμε την επιλογή "apps" και βρίσκουμε την επιλογή "metacity"

    Πάμε πρώτα στο keybinding_commands και βρίσκουμε ενα διαθεσίμο run_command.
    Εκεί γράφουμε την εντολή που θα τρέχει όταν πατάμε το shortcut,και μπορούμε να βάλουμε και κάποιο script εκεί(αν θέλουμε να εκτελέσουμε πολλές εντολές)
    πχ gedit



    Μέτα πάμε στα global_keybindings και βρίσκουμε το ίδιο run_command και του βάζουμε το shortcut που θέλουμε.
    πχ F9

    Πλέον πατώντας το συγκεκριμένο shortcut τρέχουμε το πρόγραμμα που επιλέξαμε.

    Keywords: gconf-editor,gnome,tips,tricks,how to,assign shortcuts on commands

    Thursday 14 February 2008

    Convert - THE command for image manipulation

    Πολλές φορές θέλουμε να μετατρέψουμε μία εικόνα σε κάποιο άλλο τύπο αρχείου πχ ενα png θέλουμε να το κάνουμε jpg κτλ. και συνήθως ανοίγουμε το Gimp για αυτή την δουλεία.

    Αν αυτό σας αφήνει το συναίσθημα ότι χρησιμοποιείτε πυρηνικό πύραυλο για να σκοτώσετε μια μύγα, δοκιμάστε την εντολή convert.

    Η εντολή convert είναι μέρος του Imagemagick και πολύ πιθανών είναι ήδη εγκατεστημένο στο σύστημα σας, αλλιώς το εγκαθιστάτε με -> sudo apt-get install imagemagick

    Συνήθεις χρήσεις της εντολής convert:

    Μετατροπή σε άλλο τύπο αρχείου:
    πχ convert image.png image.jpg

    Αλλαγή μεγέθους:
    πχ convert image.png -resize 50% new-image.png

    Στροφή της εικόνας
    πχ convert image.jpg -rotate 90% new-image.jpg

    Μπορούμε ακόμα με συνδυασμό εντολών να μετατρέψουμε ολόκληρους φακέλους με αρχεία ενός τύπου σε άλλο τύπο!
    πχ for f in *.png;do convert "$f" "${f%.png}.jpg";done

    Γενικά η convert είναι μια πολύ ισχυρή εντολή και μας βοηθάει να επιτύχουμε μια μεγάλη γκάμα εργασιών ευκόλα και γρήγορα :D

    Για να δείτε τις δυνατότητες της γράψτε:
    convert --help

    Keywords: Terminal,Command,Convert,Images,Resize,Rotate

    Tuesday 12 February 2008

    Glest 3.1.0

    Το glest είναι ένα real-time παιχνίδι στρατηγικής με καταπληκτικό game-play και γραφικά, το οποίο επιπλέον είναι και ανοιχτού κώδικα!



    Υπάρχουν δύο φυλές με μοναδικά τεχνολογικά δέντρα το καθένα: οι μάγοι και οι τεχνοκράτες.
    Στην νέα εκδοσή του που είναι η 3.1.0beta έχουν μπει αρκετές νέες βελτιώσεις μερικές εκ των οποίων:

    - Δικτυακό παιχνίδι μεσώ LAN/Internet
    - Νέα shortcuts για εντολές και επιλογή μονάδων
    - ενσωματωμένο chat
    - Balance changes & fixes

    - περισσότεροι multi-player χάρτες

    Για να το εγκαταστήσετε:
    Οι χρήστες windows αρκεί να κατεβάσουν τον installer και μετά να κάνουν copy paste τα περιεχόμενα του patch στον φάκελο του παιχνιδιού.
    Οι περισσότερες διανομές Linux άρχισαν σιγά σιγά να βγάζουν τα πακέτα της νέας έκδοσης,
    Πχ στην Fedora υπάρχει στα repositories το 3.0.0 και μπορείτε να το εγκαταστήσετε απο το Add/Remove Programs.

    άλλα για το Ubuntu δεν κατάφερα να βρω κάπου πακέτα για το glest 3.0.0 (πόσο μάλλον το 3.1.0).

    Αυτό όμως δεν είναι πρόβλημά γιατί μπορούμε πάντα να το κάνουμε και compile :)

    Θα χρειαστούμε κάποιες βιβλιοθήκες αν δεν έχουμε ξανά κάνει compile
    ο πιο εύκολος τρόπος είναι να ζητήσουμε τα building dependencies για ένα 3d παιχνίδι που υπάρχει στο repository πχ -> sudo apt-get build-dep gl-117
    και επείτα φέρνουμε τα dependencies που αφορούν το glest
    sudo apt-get install libxerces27-dev openal-dev libvorbis-dev jam

    -> Glest 3.0.0 + 3.1.0 patch

    Eν συνεχεία κατεβάζουμε τον κώδικα από εδώ και τα data απο εδώ και το patch απο έδω.

    Αποσυμπιέζουμε τα 3 αρχεία και πάμε πρώτα στον φάκελο με το patch.

    Αντιγράφουμε τα περιεχόμενα του στον φάκελο που αποσυμπιέσαμε τα data, κάνοντας overwrite οποίο αρχείο υπάρχει ήδη.

    Έπειτα πάμε στον φάκελο με τον κώδικα glest-source-3.0.0 και επειδή το building γινέται με το jam γράφουμε:
    ./configure
    ./jam
    Μετά από λίγη ώρα το compiling τελειώνει. Αντιγραφούμε τα αρχεία glest και glest.ini στον φάκελο που αποσυμπιέσαμε τα glest-data κάνοντας overwrite το glest.ini που έχει εκεί.
    Τρέχουμε το παιχνίδι από αυτόν το φάκελο με:
    ./glest

    -> Glest 3.1.0beta12-svn

    Εναλλακτικά μπορούμε να μην κατεβάσουμε αυτά τα 3 πακέτα, άλλα την svn εκδοσή που περιλαμβάνει την τελευταία εκδοσή του παιχνιδιού και τα δεδομένα του, καθώς γράφω αυτές τις γραμμές είναι η 3.1.0beta12.
    Πιθανώς όμως αυτή η εκδοσή να είναι πιο ασταθής μιας και σε αυτήν δουλεύουν οι προγραμματιστές.

    Για οποίον ενδιαφέρεται πάντως θα θα περιγράψω την διαδικασία.

    α) κατεβάζουμε το subversion αν δεν το έχουμε -> sudo aptitude install subversion
    β) κατεβάζουμε τον κώδικα/data του παιχνίδιου -> svn co https://glest.svn.sourceforge.net/svnroot/glest glest
    γ) πάμε στον φάκελο με τον κώδικα -> cd glest/trunk/mk/linux/
    δ) κάνουμε compile ->

    ./autogen.sh
    ./configure
    jam
    ε) αντιγράφουμε τα αρχεία glest και glest.ini στο glest/trunk/data/glest_game
    στ) τρέχουμε το παιχνίδι από αυτόν τον φάκελο με ./glest
    ζ) μπορείτε να φτιάξετε και ένα script για ευκολότερη πρόσβαση πχ
    gedit glest.sh
    #!/bin/bash
    pushd /home/xsyron/downloads/builds/glest/trunk/data/glest_game/
    ./glest
    popd
    chmod +x glest.sh
    nautilus .
    και κανουμε drag & drop το scriptaki στο desktop μας ;)


    Πιθανά προβλήματα:

    Εγώ αντιμετώπισα 2 προβλήματα:
    Α)Error accessing value: Fogofwar in: glest.ini
    Value not found in property Map: FogofWar, loaded from glest.ini


    Λύση: ανοιγούμε το glest.ini με εναν editor βρισκουμε την γραμμη: FocusArrows=1 και ακριβώς απο κάτω γράφουμε:
    FogOfWar=1

    B)Exception: Font not found.

    Λύση: ανοίγουμε το glest.ini με ενά editor και βρίσκουμε τις γραμμές με το font utopia και το αντικαθιστούμε με κάποιο font που έχουμε σίγουρα, εγώ πχ έβαλα το gentium ( sudo apt-get install ttf-gentium):
    FontConsole=-*-gentium-*-*-*-*-14-*-*-*-*-*-*-*
    FontDisplay=-*-gentium-*-*-*-*-14-*-*-*-*-*-*-*
    FontMenu=-*-gentium-*-*-*-*-14-*-*-*-*-*-*-*

    Περισσότερες πληροφορίες και τεχνική υποστήριξη μπορείτε να βρείτε στο φόρουμ του παιχνιδιού
    Καλή διασκέδαση!

    Keywords: Glest, 3.0.0, 3.1.0, Open-Source, Free, Strategy, Linux,Windows,Games

    Friday 8 February 2008

    Ubuntu Games (μέρος 3ο) - Playonlinux - Windows Games

    Στα δύο παλιότερα άρθρα είχαμε δει κάποια ενδιαφέροντα παιχνιδάκια για Linux, καθώς και τρόπους για να παίξουμε παλιά παιχνίδια του Dos.

    Σήμερα θα δούμε πως μπορούμε να τρέξουμε (κάποια) windows games με το wine και το Playonlinux. To wine είναι layer συμβατότητας με το API των windows και είχαμε τρέξει σε ένα παλιότερο άρθρο το Photoshop CS2 με αυτό.

    To playonlinux ουσιαστικά είναι ένα front end για το wine, με πολλές όμως σημαντικές δυνατότητές:

    • Μπορούμε να έχουμε ξεχωριστές ρυθμίσεις και .wine φάκελο για κάθε εφαρμογή
    • Εύκολο interface και installation scripts, με τα απαραίτητα overrides που χρειάζεται καθε εφαρμογή για να παίξει σωστά
    • Μπορούμε να εγκαταστήσουμε το DirectX για κάποια παιχνίδια
    • Εύκολο tweaking της απόδοσης του wine κτλ
    H εγκατάστασή του είναι πανεύκολη μια και υπάρχει σε repository. Οπότε ανοίγουμε το /etc/apt/sources.list με τον αγαπημένο μας text editor
    πχ sudo gedit /etc/apt/sources.list και προσθέτουμε την γραμμή:
    deb http://playonlinux.botux.net/ gutsy main

    Κανουμε update το apt
    sudo apt-get update

    και πλέον μπορούμε να εγκαταστήσουμε το playonlinux, και προαιρετικά το playonlinux-dosbox-support αν θέλουμε και υποστήριξη dos παιχνιδιών:
    sudo apt-get install playonlinux playonlinux-dosbox-support

    'Ας το δοκιμάσουμε!

    Για τις ανάγκες του πειράματος ξέθαψα ένα παλιό DVD του pcmagazine (4/2006) στο οποίο είχε δώρο το Ghostmaster.

    Για αυτό το παιχνίδι δεν υπάρχει installation script, όποτε ανοίγουμε το playonlinux, και επιλεγούμε install->Liveinstall

    Ακολουθούμε τις οδηγίες εγκατάστασης και καταλήγουμε σε μια τυπική next->next->next εγκατάστασή αλα windows:

    Μόλις τελειώσει ή εγκατάσταση επιλέγουμε το bottle του παιχνιδιού και κάνουμε 3 ακόμα βήματα πριν το τρέξουμε.

    Αυτά τα βήματα μπορούν να γίνουν και στο wine χωρίς το playonlinux, άλλα θα επηρέαζαν όλες τις εφαρμογές μας, και το 3ο απαιτεί πειραγμα της registry. Με το playonlinux επηρεάζουμε μόνο την επιλεγμένη εφαρμογή και είναι μερικά κλικ υπόθεση ;)
    • πάμε tools->Install DirectX (Αρχίζει να κατεβαίνει το directx και αμέσως μόλις τελειώσει εγκαθιστάτε αυτόματα.)
    • tools->Configure wine (και ρυθμίζουμε ενα virtual desktop πχ 1024χ768 στο tab graphics)
    • και τέλος tools->wine booster (εκεί εγώ ρύθμισα->rendermode->opengl, activate glsl support->Y, Video card ram->512,rendering mode->fbo και target locked mode->auto)

    Πλέον μπορούμε να τρέξουμε και να απολαύσουμε το παιχνίδι! Το οποίο τρέχει άψογα (εκτός από το intro video που πάει σαν την κότα, άλλα μπορεί κάλλιστα να γίνει skip)


    Παρομοίως μπορείτε να δοκιμάσετε να τρέξετε και το δικό σας αγαπημένο παιχνίδι ;)
    Καλή διασκέδαση!

    Keywords:Windows,Ubuntu Games,Linux,Playonlinux,POL,dosbox,wine,Ghostmaster,Howto

    Thursday 7 February 2008

    Tomboy Reminders

    Το tomboy ειναι μια εφαρμογή που επιτρέπει την δημιουργία sticky σημειώσεων στο desktop που μπορούν όμως να έχουν links σε άλλες σημειώσεις. Έτσι μπορούμε να οργανώσουμε τις σκέψεις μας ή να σημειώσουμε κάτι σημαντικό.


    Έρχεται προ εγκατεστημένο στις περισσότερες gnome-based διανομές όπως πχ το Ubuntu, και μπορείτε να το βρείτε στα Applications->Accessories->Tomboy Notes.

    Μπορείτε βεβαία να το βάλετε και στο panel του gnome με δεξί κλικ-> add to panel για ταχύτερη πρόσβαση.
    Ένα απο τα πιο όμορφα χαρακτηριστικά του είναι ότι μπορεί να επεκταθεί με την χρήση των λεγομένων add-ins.

    To πιο πρακτικό από αυτά είναι το Reminder addin που μας επιτρέπει να βάλουμε υπενθυμίσεις στις σημειώσεις μας και οταν έρθει η συγκεκριμένη ώρα εμφανίζονται για να μας ενημερώσουν :)


    H εγκατάσταση του είναι αρκετά απλή . Παμε στο site του νέου developer και κατεβαζουμε τον κωδικα ή το compiled dll.

    (To tomboy είναι εφαρμογή .net όποτε θα χρειαστείτε mono development libraries για να γίνει compile.)

    Αντιγράφουμε το tomboy-reminder.dll στο ~/.tomboy/addins
    cp tomboy-reminder.dll ~/.tomboy/addins/

    Κάνουμε επανεκκίνηση στο panel, αν έχουμε και εκεί το tomboy
    killall gnome-panel

    Και μετά κάνουμε δεξί κλικ, στο εικονίδιο του tomboy και πάμε preferences->add ins και ενεργοποιούμε το reminder Add In

    Πλέον μπορούμε να βάζουμε υπενθυμίσεις στις σημειώσεις μας.

    Γράφουμε μέσα στο σημείωμα:

    remind 'trigger',alert 'trigger' ή rappel 'trigger'

    To trigger μπορεί να είναι ημερομηνία ή ώρα

    πχ
    ή μόνο ημερομήνια

     28th july
    2005/05/03
    5th
    3 september 05
    next monday
    monday

    ή μόνο ώρα

    12am
    23:34
    10h
    10h am
    ή συνδυασμός
     3 july at 12am
    2004/04/02 a 22:50
    monday @ 2h am

    Keywords: Tomboy,Notes,Reminder,Plugin,Add in,How to

    Alien - Mετατροπή πακέτων σε πακέτα άλλης διανομής

    Πολλές φόρες ψάχνουμε απεγνωσμένα για ένα πρόγραμμα ή παιχνίδι, και διαπιστώνουμε οτι δεν υπάρχει για την διανομή μας. Τις περισσότερες φορές μπορούμε άπλα να κάνουμε compile τον κώδικα και μετά φτιάχνουμε και το πακέτο της διανομής μας το εγκαθιστάμε και ξεμπερδεύουμε.

    Σε κάποιες άλλες φάσεις βαριόμαστε να κάνουμε compile ή το compile του εν λόγω προγράμματος είναι πολύ χρονοβόρο κτλ

    Εκεί έρχεται να δώσει την απάντηση στο πρόβλημα μας το Alien. Με το Alien μπορούμε να μετατρέπουμε deb πακέτα σε rpm και το αντίστροφο.

    Ξεκινάμε με την εγκατάσταση του alien και του fakeroot (με το fakeroot δεν χρειάζεται να φτιάξουμε το πακέτο σαν root)

    Στο ubuntu αυτό γίνεται ως εξής:
    sudo apt-get install alien fakeroot

    Μέτα μπορούμε να ξεκινήσουμε την μετατροπή πακέτων:

    ->απο .rpm σε .deb
    fakeroot alien --to-deb package.rpm
    ή
    fakeroot alien package.rpm

    -> απο .deb σε .rpm
    fakeroot alien --to-rpm package.deb

    Πλέον μπορούμε να εγκαταστήσουμε τo πακέτο με το αντίστοιχο εργαλείο εγκατάστασης της διανομής μας.
    Στο ubuntu πχ.

    sudo dpkg -i πακετο.deb (για την εγκατάσταση)
    sudo apt-get install -f (για να βεβαιωθούμε οτι ολά τα dependencies ειναι σωστά)

    ΥΓ1. Για περισσότερες πληροφορίες και χρήσεις των alien, fakeroot δείτε τα manpages τους:
    man alien
    man fakeroot

    ΥΓ2. Διαφορετικές διανομές χρησιμοποιούν διαφορετικά dependency trees, μπορεί λοιπόν το alien πακέτο να εγκατασταθεί άλλα παρολαυτά να μην δουλέψει ή να χρειάζεται επιπλέον alien πακέτα.

    ΥΓ3. Μπορούμε να απεγκαταστήσουμε κανονικά τα alien πακέτα με το εργαλείο εγκατάστασης της διανομής μας.
    Στο ubuntu για παράδειγμα αν το πακετο λεγοταν πχ package_0.0.3-1.deb απ εγκαθιστούμε με:

    sudo apt-get remove package

    Keywords: alien,fakeroot,convert,install,debian,deb,rpm,packages

    Wednesday 6 February 2008

    Kde 4.0.1 Released!

    Κυκλοφόρησε η έκδοση 4.0.1 του KDE, με αρκετά bugfixes και βελτιώσεις! Καθώς βέβαια και μεταφράσεις σε περισσότερες γλώσσες. O konqueror και πολλές άλλες εφαρμογές πλέον δουλεύουν πιο σταθερά, και σιγά σιγά το όνειρο του KDE4 έχει αρχίσει να παίρνει μορφή! Άντε να δούμε πότε θα βγει ο Amarok 2 :(

    Περισσότερες πληροφορίες είναι διαθέσιμες όπως πάντα στην επίσημη ιστοσελίδα του KDE. :

    KDE 4.0.1 is a maintenance release which provides corrections of problems reported using the KDE bug tracking system and enhanced support for existing and new translations.

    Improvements in this release include, but are not limited to:

    • Konqueror, KDE's webbrowser has seen numerous stability and performance fixes in its HTML rendering engine KHTML, in its Flash plugin loader and in KJS, the JavaScript engine.
    • Stability problems have been addressed in components that are used all over the KDE codebase. Translations in this release are more complete.
    • KWin, the KDE window manager has improved detection of compositing support, some effects have been fixed.

    Aside from these fundamentals, work has also been done in many applications like Okular, System Settings and KStars. New translations include Danish, Frisian, Kazakh and Czech.

    For a more detailed list of improvements since the KDE 4.0 release in January 2008, please refer to the KDE 4.0.1 Changelog.

    Additional information about the enhancements of the KDE 4.0.x release series is available in the KDE 4.0 Announcement.

    Όποτε αναμένουμε σύντομα τα αναβαθμισμένα πακέτα στα repositories των διανομών.

    ΥΓ1.Ο Κώδικας του KDE 4.0.1 μπορεί να βρεθεί εδώ.
    ΥΓ2.Οι αναλυτικές οδηγίες για το compiling και την εγκατάσταση από κώδικα του KDE 4.0.1 είναι διαθέσιμες από εδώ.

    KEYWORDS: KDE4, 4.0.1, Release,Announcement

    Friday 1 February 2008

    Βοήθεια στην γραμμή εντολών Linux

    Πολλές φορές θέλουμε να κάνουμε μια εργασία στην γραμμή εντολών του Linux, άλλα δεν ξέρουμε ποια είναι η σωστή εντολή για αυτό που θέλουμε να κάνουμε.

    Έκτος από το πατροπαράδοτο google υπάρχουν και άλλοι τρόποι να κάνουμε αυτό που θέλουμε χωρίς να γνωρίζουμε το πως.

    Ας δούμε μερικές πολύ χρήσιμες εντολές:

    whatis μας περιγράφει τι κάνει μια εντολή :
    πχ
    $ whatis whatis
    whatis (1) - display manual page descriptions

    $ whatis ls
    ls (1) - list directory contents

    apropos μας λέει ποιες εντολές ή προγράμμα είναι κατάλληλο για μια δουλεία
    $ whatis apropos
    apropos (1) - search the manual page names and descriptions

    πχ
    $ apropos 'copy files'
    cp (1) - copy files and directories
    cpio (1) - copy files to and from archives

    $ apropos burn
    k3b (1) - KDE CD burning program

    whereis μας λέει που είναι μια εντολή ή ένα πρόγραμμα και το manual του
    $ whereis k3b
    k3b: /usr/bin/k3b /usr/share/man/man1/k3b.1.gz

    $ whereis cp
    cp: /bin/cp /usr/share/man/man1/cp.1.gz

    man Μπορούμε να δούμε το αναλυτικό manual μιας εντολής με την εντολή man (αν αυτό υπάρχει)
    Πχ
    $ man cp
    $man k3b
    κτλ

    Μεσα απο konqueror μπορουμε να δουμε και μια καλυτερα διαμορφωμενη manual page
    πχ
    $ konqueror man://ls


    Ένα ενδιαφέρον τέχνασμα για να ανακαλύψουμε νέες εντολές είναι το εξής:
    α) περνούμε έναν φάκελο που ξέρουμε οτι έχει πολλές εντολές πχ /bin
    και β) τρέχουμε το εξής:

    $whatis $(ls /bin/)|less

    και βλέπουμε την περιγραφή όλων των εντολών στο /bin !
    Όσες μας φανούν ενδιαφέρον τις μελετάμε απο το manual page τους.

    Keywords: Terminal,Linux,Help,apropos,man,whatis,whereis

    gnome-open - The one command to open them all...

    Ας δούμε σήμερα μια πολύ ενδιαφέρουσα εντολή της κονσόλας που σίγουρα θα σας λύσει τα χεριά.

    Η gnome-open είναι μια πραγματικά απίστευτη εντολή! Ουσιαστικά ανιχνεύει το mime-type ενός αρχείου και το ανοίγει αυτόματα με το κατάλληλο πρόγραμμα που έχουμε ως πρωτεύων να διαχειρίζεται αυτόν τον τύπο αρχείου.

    Ένα mp3 πχ θα το άνοιγε με τον audio player μας, ένα avi με τον video player μας, ένα directory με τον nautilus κτλ

    Πχ
    gnome-open mypainting.jpg ανοίγει το αρχείο εικόνας στον image viewer μας

    gnome-open /home/xsyron/ ανοίγει τον φάκελο στον ναυτίλο

    gnome-open mynovel.pdf ανοίγει το pdf για να το διαβάσουμε

    gnome-open dasong.mp3 ανοίγει το .mp3 με τον audio player μας

    gnome-open package.deb ξεκινάει την διαδικασία εγκατάστασης του πακέτου
    κτλ.

    Για οποιοδήποτε αρχείο η gnome-open θα σας κάνει τη δουλειά σωστά!

    Tuesday 29 January 2008

    Screenlets - Πως να έχουμε πάντα την τελευταία εκδόση!

    Προ ήμερων είχαμε δει πως να εγκαταστήσουμε και πως να ρυθμίσουμε τα Screenlets στο Ubuntu Desktop μας.

    Για όσους δεν γνωρίζουν τα screenlets είναι ένα σύστημα Widgets/Gadgets για το Linux. Από οτι φαίνεται ο ένας από τους προγραμματιστές άφησε το project. Ο άλλος προγραμματιστής συνεχίζει να δουλεύει στο project, κανονικά και με ταχείς ρυθμούς.

    Οι πρώτες βελτιώσεις έχουν αρχίσει και γίνονται ήδη ορατές:



    Όποτε ας δούμε πως μπορούμε να έχουμε στο pc μας την νέα ανανεωμένη εκδοσή των Screenlets διαρκώς από το Bazaar.

    Πρώτα από όλα αφαιρούμε τα παλιά repositories των screenlets απο το sources.list μας αν υπάρχουν...
    sudo gedit /etc/apt/sources.list

    Βρίσκουμε την γραμμή που είχαμε προσθέσει και την αφαιρούμε
    (η γραμμη του repo ηταν αυτη->deb http://hendrik.kaju.pri.ee/ubuntu/ gutsy screenlets)

    κάνουμε update το apt και αφαιρούμε τα παλιά screenlets
    sudo apt-get update
    sudo apt-get remove screenlets

    Το σύστημα μας είναι καθαρό και μπορούμε να προχωρήσουμε στην εγκατάσταση της bazaar έκδοσης :)
    Aν δεν έχουμε το bazaar το εγκαθιστούμε ->
    sudo apt-get install bzr

    Και μετά κατεβάζουμε την τελευταία εκδοσή με:
    bzr co http://bazaar.launchpad.net/~helder-fraga/screenlets/Screenlets-new

    Παμε στον φακελο ->
    cd Screenlets-new

    Και εγκαθιστούμε με->
    sudo python setup.py install

    ΥΓ. Πλέον μπορούμε να έχουμε πάντα την τελευταία εκδοσή πηγαίνοντας στον φάκελο Screenlets-new
    και γράφοντας:
    bzr update
    Αν υπάρχει νέα εκδοσή την εγκαθιστούμε όπως πάνω (με
    sudo python setup.py install)
    Εδω μπορουμε να βλέπουμε τις αλλαγές που έχουν γίνει και πριν ποση ώρα :)
    (EDIT 12/2: Εδώ περιέχεται μέχρι το revision 161 δείτε κάτω...)

    ΥΓ2. Αν θέλουμε να απεγκαταστήσουμε τα Screenlets πάμε στον φάκελο και γράφουμε:
    sudo make uninstall

    ΥΓ3. Η ρυθμίσεις για το widget layer παραμένουν οι ίδιες ( δείτε εδώ )

    EDIT 12/2: H 0.0.12 revision 174 μάλλον θα είναι η τελική 0.12 εκδοσή και για κάποιο λόγο την βάλανε εδώ:

    https://code.launchpad.net/~screenlets-dev/screenlets/trunk

    Επίσης υπάρχει και σε deb πακέτο.

    Αναλυτικά από την σελίδα του προγραμματιστή:

    Description:
    lots of new features including non composite support and more screenlets , also very improved code and much more bug free

    Changelog:
    revision 174 is the stable release and the last of the 0.0.12 version

    Download:

    Deb package: http://gnome-look.org/content/download.php?content=73346&id=1&tan=156682...
    Source: http://gnome-look.org/content/download.php?content=73346&id=2&tan=712502...


    Καλή διασκέδαση!

    Keywords: Compiz,Widget Layer,Screenlets,Widgets,Gadgets,Linux,Ubuntu,Gutsy,How to,Eye Candy,Desktop Effects, Bazaar


    Monday 28 January 2008

    Τρεχωντάς το Photoshop CS2 στο Ubuntu με Wine 0.9.54

    Με ρώταγε ένας φίλος τις προάλλες αν τρέχει το Photoshop στο Linux, μιας που μπήκα στην διαδικασία να το ψάξω, είπα να γράψω και έναν μίνι οδηγό.


    Η απάντηση είναι ναι, τρέχει... άλλα μεσώ wine. Το wine είναι ένα layer συμβατότητας με εφαρμογές Windows.


    Δεν είναι εξομοιωτής αφού η ταχύτητα των εφαρμογών είναι περίπου η ίδια με αυτήν των Windows, άλλα δυστυχώς δεν τρέχει όλες τις εφαρμογές. Και πολλές φόρες χρειάζονται ειδικές μόντες για να τρέξει μια εφαρμογή.


    Για την λίστα με τις συμβατές εφαρμογές δείτε http://appdb.winehq.org/ καθώς και την ιστοσελίδα http://frankscorner.org/ οπού έχει αρκετά tips για να τρέξετε Windows εφαρμογές.


    Ακολουθώντας τα παρακάτω βήματα μπορείτε να εγκαταστήσετε και να τρέξετε το Photoshop CS2 στο Linux.


    Θα χρειαστούμε το γνήσιο Photoshop, και το wine 0.9.54


    Ανοίγουμε μια κονσολα-> Applications->Accessories->Terminal


    Αν δεν έχουμε το wine το εγκαθιστούμε->
    sudo apt-get install wine


    Εγκαθιστουμε τις γραμματοσειρες των Windows και το visual c runtime->
    wget http://kegel.com/wine/winetricks
    sh winetricks corefonts vcrun6


    Πάμε στο φάκελο που ειναι το photoshop αν αυτό είναι το cd->
    cd /media/cdrom0


    Βρίσκουμε το setup.exe και τρέχουμε->
    wine Setup.exe


    Ακολουθούμε τις οδηγίες εγκατάστασης σαν να ήμασταν στα Windows κάνουμε το activation μας και πρέστο. Το Photoshop έχει εμφανιστεί στο μενού μας και παίζει στο Linux. Αν δεν έχει εμφανιστεί στο μενού ψάξτε στο /home/username/.wine/drive_c/Program Files/


    Τα Photoshop που δουλεύουν μέχρι στιγμής στο Linux είναι το 7, το 8 (CS) και το 9 (CS2)
    Το 7 είναι το ταχύτερο. Τα υπόλοιπα αργούν αρκετά στην εκκίνηση, κατά την ανίχνευση των plugins.


    Άμα λοιπόν το Photoshop δεν έχει κάποιο εξειδικευμένο επαγγελματικό εργαλείο που χρειάζεστε απελπισμένα, τοτε χρησιμοποιήστε το Gimp!


    Το Gimp είναι γρήγορο, ελαφρύ, υπέρ πλήρες και ανοιχτού κωδικά!!


    Όπως βολεύεται όμως κάνεις... Καλή διασκέδαση!


    ΥΓ. Άπαξ και έχουμε εγκαταστήσει το Wine, κάνοντας κλικ σε μια εφαρμογή προσπαθεί να την τρέξει σαν να ήμασταν στα Windows... Αυτό συμπεριλαμβάνει και τους ιούς των windows, για αυτό δεν τρέχουμε πότε το wine σαν root ή με sudo


    Keywords:How to Run,Setup,Photoshop CS2,Linux, Ubuntu,Wine,0.9.54




    Wednesday 23 January 2008

    Ubuntu Games (Μέρος 2ο)

    Και αφου ειδαμε μερικα πολυ ενδιαφεροντα παιχνιδια που τρεχουν natively στο ubuntu και γενικα στο Linux. Aς δουμε πως μπορουμε να τρεξουμε παλια αγαπημενα retro παιχνιδακια.

    Σιγουρα οι funs των adventure games θα λατρεψαν παλια κλασσικα παιχνιδια της Lucasarts οπως το Monkey Island ή το Loom.

    Πριν 8 μερες βγηκε η νεα εκδοση του αγαπημενου μας εξομοιωτη Scumm 0.11.

    Για οσους δεν το γνωριζουν το Scumm μας επιτρεπει να παιξουμε παλια adventurακια οπως πχ Τα Monkey Island I & II, Loom, The Dig, Simon the Sorcerer I&II,Day of the Tentacle κτλ

    ScummVM is a program which allows you to run certain classic graphical point-and-click adventure games, provided you already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed!
    Φυσικα θα πρεπει να εχετε τα γνησια παιχνιδια καπου στον δισκο σας :D

    δειτε εδω την λιστα συμβατοτητας

    Το προβληματακι τωρα ειναι οτι στα repo του ubuntu 7.10 υπαρχει ακομα η 0.9. Οποτε για την 0.11 μπορειτε ειτε να κατεβασετε τον κωδικα και να τον κανετε compile, ειτε να χρησιμοποιησετε τα πακετα για το Debian Etch. Ο κωδικας, οπως και εκδοσεις του scumm για αλλες διανομες πχ Fedora, υπαρχει εδω

    Για οσους θελουν να χρησιμοποιησουν τα Debian Etch πακετα οπως εκανα εγω, υπευθυνη τους φυσικα, περιγραφω την διαδικασια:

    Κατεβασα το deb για το Debian Etch ->http://prdownloads.sourceforge.net/scummvm/scummvm_0.11.0-0.etch.1_i386.deb?download
    Υπηρχε ενα unresolved dependency το libflac7 το οποιο προμηθευτηκα απο εδω:
    ->http://security.debian.org/debian-security/pool/updates/main/f/flac/libflac7_1.1.2-8_i386.deb
    Προχωραμε στην εγκατασταση με:
    sudo dpkg -i scummvm_0.11.0-0.etch.1_i386.deb libflac7_1.1.2-8_i386.deb
    sudo apt-get install -f
    η πρωτη γραμμη εγκαθιστα τα πακετα και η δευτερη προσθετει οτι dependencies λειπουν.

    και πρεστο το scumm δουλευει τελεια και μπορουμε πλεον να τρεξουμε τα παλια μας adventurακια στο Linux (alt+f2->scummvm)

    EDIT: Απο σημερα 25/1 μπορειτε να βρειτε και πακετα Ubuntu στο GetDeb.net

    Η δευτερη λυση για να παιξουμε παλια παιχνιδακια dos, ειναι το περιφημο Dosbox. Το οποιο εξομειωνει το περιβαλλον του Dos χρησιμοποιωντας την SDL για τα γραφικα.

    DOSBox is a DOS-emulator that uses the SDL-library which makes DOSBox very easy to port to different platforms. DOSBox has already been ported to many different platforms, such as Windows, BeOS, Linux, MacOS X...

    DOSBox also emulates CPU:286/386 realmode/protected mode, Directory FileSystem/XMS/EMS, Tandy/Hercules/CGA/EGA/VGA/VESA graphics, a SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with older games...

    You can "re-live" the good old days with the help of DOSBox, it can run plenty of the old classics that don't run on your new computer!

    H τρεχουσα εκδοση του ειναι η 0.72 μπορειτε να την βρειτε στο getdeb.net αν δεν εχει μπει ακομα στο repository του ubuntu. Μπορειτε να βρειτε την λιστα συμβατοτητας εδω.

    εγκαθισταμε παλι με:
    sudo dpkg -i ονομα-πακετου.deb
    sudo apt-get install -f

    Αν θελετε μπορειτε να βρειτε καποιο front-end για το Dosbox για να κανετε την ζωη σας πιο ευκολη. Tα παρακατω τρεχουν σε/και σε Linux:
    • DOSBoxGui
    A portable DOSBox frontend. Currently confirmed to run on Linux and Windows flavors.
    Needs Tcl/Tk.
    Website: http://losfinkos.googlepages.com/dosboxgui
    • DOSBOXer
    Scott Duensing at Jaeger Technologies has created "DOSBOXer" for most Intel x86 Linux distributions.
    Website: http://www.jaegertech.com/index.php?option=com_content&task=view&id=19&Itemid=40
    • DBoxFE
    DBoxFE creates and manages configuration files for DOSBox. You can create different profiles for your games, etc.
    Need to run:
    * KDE 3.1.x / 3.2.x
    * Qt 3.1.x / 3.2.x / 3.3.x
    Website: http://chmaster.freeforge.net/dboxfe-project.htm
    • pyDOSBox
    The program is still in alpha stage but usable.
    Website: http://www.panayotis.com/pydosbox/index.html
    • DBGL - DOSBox Game Launcher
    DBGL is an open-source, multi-platform frontend for DOSBox, based largely upon the proven interface of D-Fend.
    Website: http://home.quicknet.nl/qn/prive/blankendaalr/dbgl/

    Keywords: Dos, Games,Linux,Ubuntu,ScummVM,Dosbox

    Monday 21 January 2008

    Ubuntu Games (Μέρος 1ο)

    Ένα από τα βασικότερα επιχειρήματα που εμποδίζει πολλούς χρήστες να έρθουν στο Linux είναι ότι δεν έχουμε υποστήριξη στο θέμα των παιχνιδιών. Η αλήθεια είναι οτι πολλές εταιρίες δεν βγάζουν παιχνίδια για Linux. Έτσι η επιλογή πάντα ανάγεται στο πόσες ώρες χρησιμοποιουμε το pc για gaming και πόσες όχι.

    Αυτό βεβαία δεν σημαίνει οτι και εμείς οι Linuxαδες δεν έχουμε ευχάριστα παιχνιδάκια να παίξουμε στο αγαπημένο μας λειτουργικό.

    Θα αφήσω εξω τις εμπορικές λύσεις του στυλ cedega και τα διάφορα ports απο windows games που σιγά σιγά γίνονται όλο και πιο συχνά για Linux και θα δούμε μερικά πολύ όμορφα παιχνιδάκια ανοιχτού κωδικά (κυρίως) για τα οποία μάλιστα υπάρχουν και πακέτα για ubuntu, και έχω βάλει στο μάτι να δοκιμάσω τον μηνά που έρχεται.

    Ξεκινάμε λοιπόν!

    Alien Arena 2007 6.10 - Tuesday, 22 Jan 2008 23:40:46 CET - Watch demo video

    This game combines some of the very best aspects of such games as Quake III and Unreal Tournament and wraps them up with a retro alien theme, while adding tons of original ideas to make the game quite unique.
    Download: alien-arena (515.7 Kb) , alien-arena-data (241.9 Mb) , alien-arena-server (129.5 Kb)
    Note:This game requires a driver supporting 3D hardware acceleration.


    AssaultCube 0.93 - Saturday, 20 Oct 2007 14:40:58 CEST
    AssaultCube is a total conversion of Wouter van Oortmerssen's FPS called Cube. Set in a realistic looking environment, as far as that's possible with this engine, while gameplay stays fast and arcade. This game is all about team oriented multiplayer fun.
    Download: assaultcube (313.9 Kb) , assaultcube-data (17.7 Mb)

    DreamChess 0.2.0 - Friday, 04 Jan 2008 19:46:48 CET
    DreamChess features 3D OpenGL graphics and provides various chess board sets, ranging from classic wooden to flat figurines.
    Download: dreamchess (126.1 Kb) , dreamchess-data (5.0 Mb)

    FreeCiv 2.1.2 - Sunday, 06 Jan 2008 10:33:40 CET
    Freeciv is a Free and Open Source empire-building strategy game inspired by the history of human civilization. The game commences in prehistory and your mission is to lead your tribe from the stone age to the space age...
    Download: freeciv-client-gtk (421.1 Kb) , freeciv-client-xaw3d (394.9 Kb) , freeciv-data (11.2 Mb) , freeciv-server (519.8 Kb) , freeciv-client-sdl (488.6 Kb) , freeciv-sound-standard (138.9 Kb)

    OpenArena 0.7.1 - Tuesday, 06 Nov 2007 22:01:58 CET Watch demo video

    OpenArena is a free/open source 3D computer game that belongs to the "first-person shooter" genre
    Download: openarena (711.9 Kb) , openarena-data (270.5 Mb) , openarena-server (345.8 Kb)
    Note:This game requires a driver supporting 3D hardware acceleration.

    Pingus 0.7.2 - Wednesday, 31 Oct 2007 23:54:15 CET
    Pingus is a free Lemmings-like game covered under the GNU GPL. It features currently 22 playable levels and runs under a wide variety of operating systems (Linux, Windows, etc.)
    Download: pingus (896.2 Kb) , pingus-data (11.3 Mb)

    Scorched3D 41.2 - Sunday, 20 Jan 2008 12:28:49 CET - Watch demo video

    Scorched3D is a cross-platform 3D remake of the popular 2D artillery game Scorched Earth. Scorched3D can be played against the computer, other players, and remotely across the Internet or LAN.
    Download: scorched3d (2.1 Mb) , scorched3d-data (58.3 Mb)

    Second Life 1.18.5.3 - Friday, 11 Jan 2008 16:22:01 CET - Watch demo video

    Second Life is a 3-D virtual world entirely built and owned by its residents. Since opening to the public in 2003, it has grown explosively and today is inhabited by a total of 5,903,108 people from around the globe.
    Download: secondlife-install (152.6 Kb)
    Note:This package does not contain the game, it will download from SecondLife's site and install.

    UFO Alien Invasion 2.2 - Wednesday, 16 Jan 2008 21:41:18 CET
    UFO: Alien Invasion is a strategy game featuring turn-based tactical combat against hostile alien forces (human or computer controlled) which are infiltrating earth at this very moment. You are in command of a small special unit which has been founded to face the alien strike force. To be successful in the long run, you must research the alien technology in order to build bigger and better weapons against your foes.
    Download: ufoai (1.6 Mb) , ufoai-data (266.4 Mb) , ufoai-data-music (125.0 Mb) , ufoai-server (325.9 Kb) , ufoai-tools (199.8 Kb)
    Note:This game requires a driver supporting 3D hardware acceleration.

    Wormux 0.8.0~beta4 - Saturday, 19 Jan 2008 15:47:11 CET
    Wormux is a free game where funny animals fight on a 2D map with funny weapons.
    Download: wormux (624.5 Kb) , wormux-data (52.3 Mb)


    Eπισης πολλά ωραία παιχνιδάκια θα βρείτε και στο Add/Remove programs όπως πχ το Frozen Bubble κτλ
    Καθώς και στο http://www.getdeb.net/category.php?id=3 από οπού και προέρχονται τα παραπάνω Links :D

    Γενικά ψάχνοντας θα δείτε οτι υπάρχουν αρκετά ενδιαφέροντα παιχνίδια για Linux ώστε να περάσει ευχάριστα η ώρα.

    Καλή διασκεδαση!

    Keywords: Ubuntu,Linux,Open Source,Free,Games,Wormux,Ufo Alien Invasion,Second Life,Scorched 3d, Pingus,Open Arena,Freeciv,DreamChess,Assault Cube

    Edit 23/1: Added Alien Arena

    Friday 18 January 2008

    Internet TV - Miro 1.1 Released

    Σήμερα βγήκε η 1.1 έκδοση του Miro, με αρκετά bugfixes και καλύτερο bitorrent support. Για όσους δεν γνωρίζουν το πρόγραμμα, προκειτε για εναν open-source Internet TV και bitorrent client.
    Μπορείτε να το κατεβάσετε απο εδώ -> http://www.getmiro.com/download/

    Για το Ubuntu Gutsy η διαδικασία ειναι:
    Προσθέτουμε το repository στο /etc/apt/sources.list ανοίγουμε με ενα editor το αρχείο:
    sudo gedit /etc/apt/sources.list

    και προσθέτουμε την γραμμή:
    deb http://ftp.osuosl.org/pub/pculture.org/miro/linux/repositories/ubuntu gutsy/

    τρέχουμε:
    sudo apt-get update
    για να ανανεώσουμε την λίστα με τα repositories μας, και εγκαθιστούμε το miro με:
    sudo aptitude install miro

    UPDATE: 4/2/08 -> Mπορειτε να βρειτε την εκδοση 1.1.1 του Miro και στο getdeb.net:

    Download: miro (2.1 Mb) , miro-data (855.1 Kb)

    Σώζουμε και τα δυο .deb στον ίδιο φάκελο πχ ~/downloads/miro

    και από μια κονσόλα πάτε στο φακελο:
    cd ~/downloads/miro

    εγκαθιστάμε με:
    sudo dpkg -i *.deb

    τελος ελέγχουμε για τυχόν ελλειπή dependencies
    sudo apt-get install -f

    Το miro έχει μια μεγάλη πληθώρα δυνατοτήτων:


    Watch Fullscreen

    Since Miro works so well for HD content, you'll find lots of video that looks beautiful in fullscreen on even the largest displays.

    Resume from Where You Stopped
    Miro will remember where you stopped watching a video and will start at that point when you play it again.

    Play Almost Anything
    Forget about the format wars. Miro can play MPEG, Quicktime, AVI, H.264, Divx, Windows Media, Flash Video, and almost every other major video format.

    One After Another
    Set your Miro preferences to either play videos one after another (in the order they appear) or to play a video then stop. If you have Miro set to play videos one after another, you can always right-click on an individual video and have it play then stop.

    Keyboard Shortcuts
    Keyboard shortcuts for all the key playback commands makes it easy to configure a remote control.

    Video Playlists
    Bring together your favorite videos into a playlist. You can drag them one by one or select a few and right-click to add to a playlist or odd create a new playlist that they will be added to.


    full screen

    Thumbnail Creation
    Miro will create a thumbnail for any video that doesn't have one.

    Channel and Playlist Folders
    Group your channels by topic by creating folders. Do the same for playlists.

    Watch Any Folder
    Videos can come in from lots of places-- a web browser, email, a p2p application, or Miro. Miro can watch any folder on your computer and include those videos in your collection. So when you save something to your desktop, for instance, it will show up in Miro without needing to be added manually.

    Move Your Library
    Running out of space? Miro can move your video collection to any location on your system, such as an external hard drive.

    Bring Your Videos Together
    When you install Miro, you can search you computer to find all your video files and list them in your Miro Library.

    Seamless BitTorrent
    Miro can download individual BitTorrent files and torrents that are in feeds. When a video torrent is downloaded it will be in your channel and library ready to watch, just like any other video download.

    Individual Video Downloads
    A menu item lets you paste in individual video URLs to start downloads.

    Auto-Expire
    After you watch a video on a channel, it will stick around for a few days and then delete itself. You can choose to keep it permanently if you like and you can set the channel to save every video permanently, but most of the time we think you'll want to keep fresh stuff coming in and old stuff going out.

    full screen

    Simple Disk Management
    Simple tell Miro to reserve a certain amount of space on your hard drive and it will stop downloading new videos when it reaches that limit.

    Pause / Resume
    Easily pause and resume any individual download, all downloads in one channel, or all Miro downloads.

    Video RSS
    Video RSS feeds are at the core of our vision for internet TV. They provide a simple system that any publisher can use to distribute their content. Viewers can bring feeds from anywhere together into one place. Miro is compatible with more feeds than any other video app.

    Auto-Download
    Set any channel to download new videos as soon as they are published. You can also tell channels to stop downloading new stuff if unwatched videos are piling up.

    1-Click Subscribe Buttons
    If someone comes to your website to see a video, take the chance to turn them into a subscriber. 1-click subscribe buttons let users go from web to Miro with a single click.

    Watch the Bubbles
    Numbers in a blue bubble next to a channel name indicate that new videos have been published since you last viewed that channel. Green bubbles mean that there are new videos downloaded that you haven't watched yet. Move your cursor over a green bubble and it becomes a play button.


    full screen

    Rename Channels
    Right-click on any channel to rename it.

    Mac, Windows, Linux
    Miro works beautifully on all three major operating systems. We make this effort because a new model for internet television has to be accessible to everyone.

    Global Community
    Volunteers from around the world help test, translate, and code Miro. Only about 30% of our downloads come from the United States, where we're based.

    Translations
    Miro is translated by volunteers into more than 40 languages and the Miro Guide lists channels from around the world in dozens of languages.

    Open Source
    Miro is free, open-source software (licensed under the GPL). Anyone is free to change the source code, contribute bug fixes and features, and make new versions.

    Open Standards
    As important as open source code, Miro's embrace of open standards helps encourage innovation and competition. Unlike proprietary video delivery systems, Miro works like the internet itself, utilizing open standards like RSS, HTTP, HTML/CSS, and BitTorrent.

    Search Millions of Videos

    Miro can search and download from the biggest video sites including YouTube, Yahoo!, Google Video, Blip, and more.

    Create Search Channels

    Save any search to get new videos as they are published.

    Search Within a Channel
    Save any search within a video feed as it's own channel. Want to auto-download BoingBoing TV but only when they mention 'steampunks'? Miro makes it easy.

    search

    The Miro Guide

    miro guide

    Best of Its Kind
    The built-in and web accessible Miro Guide is a full-featured web service that is simply the most intuitive, most elegant, and most useful catalog of video RSS feeds anywhere.

    An Open Directory
    Anyone can submit an RSS feed to the Miro Guide.

    Rate Channels
    Like Netflix or Amazon, you can rate any channel in the Guide and get suggestions about channels you might like.

    Alternate Channel Guides
    Maybe the best thing about the Miro Guide is that it doesn't lock you in. Anyone can create an alternative guide of videos and feeds and you can add that guide to your Miro.

    Email Channels and Videos
    Every channel and video has an email button to quickly send a link to a friend.

    Post to Social Sites
    Each video has links to post to Digg, Reddit, del.icio.us, and Video Bomb.

    Import / Export Your Channels
    Got great collection of channels? Export your feeds as an OPML file and your friends can import it into their Miro or any other feed reader.

    Keywords: Miro, 1.1, Internet TV, Open Source, Bitorrent,Client,Youtube,Video

    Wednesday 16 January 2008

    Eγκατάσταση και ρυθμίσεις του KDE 4.0 στο Ubuntu 7.10

    Παροτι τα περισσοτερα features τις σειρας 4 του KDE, θα φανουν σε επομενες εκδοσεις, η εκδοση 4.0 εχει να προσφερει αρκετα ενδιαφεροντα στοιχεια και κενοτομιες.

    H εγκατασταση του KDE4 ειναι αρκετα ευκολη, αλλα μην ξεχασετε να απεγκαταστησετε τυχον παλια του πακετα. (To Κde 3 δεν ενοχλει και μπορει να υπαρχει παραλληλα με το 4 χωρις κανενα προβλημα)

    Ξεκιναμε λοιπον προσθετωντας το repository με τα πακετα στο source.list μας.

    To ανοιγουμε με εναν editor:
    sudo gedit /etc/apt/sources.list

    προσθετουμε την γραμμη:
    deb http://ppa.launchpad.net/kubuntu-members-kde4/ubuntu gutsy main

    σωνουμε το αρχειο και κλεινουμε τον editor

    Επειτα κανουμε update το apt και εγκατασταση:
    sudo apt-get update
    sudo apt-get install kde4-core
    Πλεον μπορουμε να κανουμε login και σε KDE4 session, οπως και να τρεξουμε kde εφαρμογες μεσα απο το Gnome.

    Kαποια χρησιμα tips τωρα:

    1) Μπορουμε να αλλαξουμε στο παραδοσιακο μενου του KDE αν δεν μας αρεσει το καινουργιο. Κανουμε δεξι κλικ πανω του και επιλεγουμε Remove, Κανουμε δεξι κλικ στο desktop και επιλεγουμε Add Widget, κανουμε drag & drop το widget Application Launcher Menu σε εναν αδειο χωρο στο μενου.

    2)Μπορουμε να εγκαταστησουμε περισσοτερα widgets με:
    sudo apt-get install extragear-plasma

    3) Μπορουμε να εγκαταστησουμε το καινουργιο Koffice με
    sudo apt-get install koffice-kde4

    4)Μια βολτα στο synaptic και αναζητηση για kde4 θα μας επιφερει αρκετες καινουργιες εφαρμογες.

    5)Τα νεα desktop effects πρεπει να ενεργοποιηθουν χειροκινητα, οποτε παμε System Settings->Desktop και επιλεγουμε Enable Desktop Effects

    6)Mε δεξι κλικ στο desktop μπορουμε να κλειδωσουμε τα widgets μας, με Lock Widget

    Tελος καποια χρησιμα shortcuts με τα Desktop Effects ενεργα:
    (Super =) --> zooms in
    (Super - )-->zooms out
    (Ctrl + F10) ή ποντικι στην αριστερη πανω γωνια --> expose
    (Ctrl + F8) --->view the desktop grid

    Kαλή διασκέδαση!

    Keywords: KDE4, KDE 4, How to, Install, Settings, Shortcuts, Lock Widgets, Enable Desktop Effects,Extra,Widgets,Plasma,Ubuntu,Gutsy

    Monday 14 January 2008

    Linux Terminal - Μάθημα 7ο - Εισαγωγή στο Scripting

    Κελύφη(shells) εντολών και scripting

    Ο μεταφραστής εντολών του Linux, ονομάζεται κέλυφος, επειδή αυτό που αφήνει καί φαίνεται είναι μόνο το εξωτερικό του, εσωτερικά υπάρχουν πολυ περισσότερα από οσα αντιλαμβάνεται ο χρήστης με μια πρώτη ματιά. Τα συστήματα τύπου UNIX, σαν το Linux, είναι μοναδικά στο να αφήνουν τον χρήστη να επιλέξει το κέλυφος εντολών που θα χρησιμοποιεί. Τα περισσότερα λειτουργικά συστήματα έχουν τον μεταφραστή εντολών ενσωματωμένο στο ίδιο το λειτουργικό σύστημα, μη αφήνοντας άλλη επιλογή στον χρήστη. Σε αντίθεση με αυτά στα συστήματα τύπου UNIX, ο μεταφραστής εντολών είναι ανέξαρτητος απο το λειτουργικό σύστημα, το οποίο ειναί σε θέση να λειτουργησεί και χωρίς τον μεταφραστή εντολών.

    Επιπλέον καθένα απο τα διαθέσιμα κελύφη παρέχει τις δικές του λειτουργίες και χαρακτηριστικά και φυσικά την δική του γλώσσα scripting. Εμείς θα εξετάσουμε τις δυνατότητες scripting που μας δίνει το bash/sh και θα δούμε περιεκτίκα τις διαφοροποιήσεις του με τα άλλα κελύφη εντολών.

    Το περιβάλλον(environment) εντολών του κελύφους

    Το ποίο κέλυφος χρησιμοποιούμε υπαγορεύει αρκετές διαφοροποιήσεις στον τρόπο που διαμορφώνουμε αλλά και δουλεύουμε στο λειτουργικό μας σύστημα (Linux). Για παράδειγμα, η σύνταξη με την οποία θέτουμε μεταβλητές στο περιβάλλον του shell και ο τρόπος που αυτές γίνονται διαθέσιμες ανάμεσα σε κάθε session εξαρτάται από το κέλυφος που χρησιμοποιούμε.

    Οι μεταβλητές στα διάφορα κελύφη

    Η μέθοδος για να θέτουμε μεταβλητές στο κέλυφος εντολών εξαρτάται προφανώς από την σύνταξη που καταλαβαίνει το κέλυφος αυτό. Ας δούμε τι κάνουμε σε μερικά από αυτά για να καταλάβετε καλύτερα τι εννοώ.

    1. SH/BASH

    Η σύνταξη για να θέσουμε μια μεταβλητή στο sh ή στο bash έχει την ακόλουθη μορφή:

    ΜΕΤΑΒΛΗΤΗ=τιμή.

    Κατά σύμβαση οι μεταβλητές του περιβάλλοντος υποδηλώνονται με ΚΕΦΑΛΑΙΑ για να διαχωρίζονται από τις εντολές του κελύφους ή του συστήματος. Όταν προσδιορίζουμε μια μεταβλητή στο κέλυφος εντολών τότε ορίζουμε την μεταβλητή αυτή μονο για την διάρκεια της τρέχουσας session και εξασφαλίζουμε την ορατότητα της μόνο από το τρέχον κέλυφος.
    Για να κάνουμε την μεταβλήτη αυτή ορατή σε υπό-κελύφη χρησιμοποιούμε την εντολή export, συντάσσοντας:

    export ΜΕΤΑΒΛΗΤΗ.

    Η εντολή export μπορεί να συνδυαστεί με την δήλωση της μεταβλητής: export ΜΕΤΑΒΛΗΤΗ=τιμή .

    2. C SHELL

    Για να θέσουμε μεταβλητές στο κέλυφος C ή κάποια παραλλαγή του, χρησιμοποιούμε την εσωτερική εντολή setenv.

    setenv ΜΕΤΑΒΛΗΤΗ τιμή

    Οπώς διαπιστώνετε ο τρόπος που δηλώσαμε την μεταβλητή είναι διαφορετικός από ότι στο SH. Δοκιμάζοντας την σύνταξη του SH στο Κέλυφος C, Θα πάρετε φυσικά μήνυμα λάθους.
    Σε αντίθεση με το κέλυφος Sh, στο κελύφος C, μπορούμε και να ξε-θέσουμε μια μεταβλητή χρησιμοποιώντας την εσωτερική εντολή unsetenv.

    unsetenv ΜΕΤΑΒΛΗΤΗ

    Για να τυπώσουμε όλες τις μεταβλητες του περιβάλλοντος, χρησιμοποιούμε την εντολή env. Ενώ για να τυπώσουμε την τιμή μιας συγκεκριμένης μεταβλήτης χρησιμοποιούμε την εντολή

    echo $ΜΕΤΑΒΛΗΤΗ ή printenv ΜΕΤΑΒΛΗΤΗ

    Aliases

    Τα περισσότερα κελύφη, μας δίνουν την δυνατότητα να δώσουμε ένα εναλλακτικό όνομα (alias) στις εντολές + παραμέτρους που χρησιμοποιούμε συχνότερα για λόγους ευκολίας και συντομίας. Παράδειγμα, χρησιμοποιώντας την σύνταξη του C κελύφους, θα μπορούσαμε να δημιουργήσουμε μια νέα εντολή ως εξής:

    alias la ls -la

    Αυτό θα όριζε την εντολή la, η οποία θα ήταν ισοδύναμη με την εντολή ls -la. Ομώς θα πρέπει να έχετε υπόψη ότι όπως οι μεταβλήτες, ετσι και οι εντολές που ορίζουμε, παυουν να υφιστανταί μόλις κάνουμε logout από το σύστημα εκτός και αν τις τοποθετήσουμε σε κάποιο αρχείο που περίεχει τους ορισμούς για το περιβάλλον. Το σε ποίο αρχείο θα τις τοποθετήσουμε εξαρτάται και πάλι από το κέλυφος που χρησιμοποίουμε.

    Τα αρχεία περιβάλλοντος

    Κάθε φορά που εκτελείται ένα κέλυφος, αναζητεί ένα συγκεκριμένο αρχείο, στο οποίο υπάρχουν ορισμένες οι μεταβλητές και οι aliases που θα πρέπει να ορίσει. Όπως είπαμε κάθε κέλυφος έχει το δικό του αρχείο για αυτή τη δουλεία. Έτσι:

    ΚΕΛΥΦΟΣ SH ΚΑΙ BASH
    Στα sh/bash το αρχείο βρίσκεται στο home κατάλογο του χρήστη και ονομάζεται $HOME/.profile ή $HOME/.bashrc (η τελεία πριν το όνομα του αρχείου υποδηλώνει ότι το αρχείο είναι κρυφό, ενώ με $HOME το κέλυφος υποδηλώνει το μονοπάτι που βρίσκεται ο κατάλογος home για σας δηλ συνήθως το /home/username).
    Το αρχείο .profile είναι ένα απλό αρχείο κειμένου το οποίο πρέπει να διορθώσετε με έναν επεξεργαστή κειμένου που ΔΕΝ κάνει αυτόματη μορφοποίηση (η μορφοποίηση γίνεται με χρήση αόρατων ascii χαρακτήρων που σε ένα αρχείο διαμόρφωσης θα προκάλουσαν πιθανώς λάθη.) H διαφορά των δύο αρχείων είναι ότι το .profile τρέχει μια φορά ενώ το .bashrc κάθε φορά που καλούμε το bash

    Μετά αυτό το μικρό σχόλιο είμαστε έτοιμοι να ανοίξουμε τον αγαπημένο μας επεξεργαστή κειμένου (δηλαδή το vi) και να κάνουμε κάποιες τροποποιήσεις στο .profile. To αρχείο .profile θα μοιάζει κάπως έτσι:

    # τα σχόλια γράφονται μετά τον χαρακτήρα #.
    # Θέτουμε το μονοπάτι πρώτης αναζήτησης εντολών κάπως έτσι:
    PATH="$PATH:/home/nexx0r/scripts/:/usr/games"
    # στην πάνω γραμμή με $PATH έχει συμβολίσει το σύστημα το προκαθορισμένο μονοπάτι οπού περιέχονται οι εντολές
    # του συστήματος, ενώ με : έχω προσθέσει στη συνέχεια δύο δικά μου μονοπάτια. Οποιαδήποτε εντολή πληκτρολογήσω
    # στο σύστημα μου χωρίς το σχετικό της μονοπάτι, και δεν είναι σε κάποιους από τους καταλόγους που όρισα εγώ ή το
    # σύστημα θα δώσει μήνυμα λάθους.
    PS1="[\u@\h ]\\$ "
    # Η παραπάνω γραμμή καθορίζει ότι αν η εντόλη είναι τόσο μεγάλη που καταλαμβάνει και δεύτερη θα πρέπει να το
    # υποδηλώσει με τον χαρακτήρα \ ακολουθόμενο απο το enter. Όπως επίσης και την μορφή που θα έχει το shell prompt,
    # δηλαδή [username@hostname]$
    USER='id -un'
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"
    HOSTNAME='/bin/hostname'
    HISTSIZE=1000
    HISTFILESIZE=1000
    #Οι δύο παραπάνω γραμμές καθορίζουν το μέγεθος του ιστορικού εντολών που θα κρατηθεί.
    # Μπορούμε να προσθέσουμε aliases ή ακόμα και custom συναρτήσεις...
    # Functions

    function ff()
    { find . -type f -iname '*'$*'*' -ls ; }

    # Aliases
    alias rm='rm -i'
    alias cp='cp -i'
    alias mv='mv -i'
    alias mkdir='mkdir -p'

    # η ακόμα και χρώματα με κωδικούς διαφυγής
    red='\e[0;31m'
    RED='\e[1;31m'
    blue='\e[0;34m'
    BLUE='\e[1;34m'
    NC='\e[0m' # καθαρισμός χρώματος


    # Τέλος με την export κάνουμε γνωστά στο σύστημα τα ορίσματά μας
    export PATH PS1 USER LOGNAME MAIL \
    HOSTNAME HISTSIZE HISTFILESIZE INPUTRC

    ΚΕΛΥΦΟΣ C
    Το αρχείο που χρησιμοποιεί το κέλυφος C είναι το .cshrc και έχει ελαφρά πολυπλοκότερη σύνταξη:
    # Τα σχόλια εξακολουθούν να είναι έτσι
    

    if($?PATH) then
    setenv PATH "{PATH}:/home/nexx0r/scripts/:/usr/games"
    else
    setenv PATH "/bin/:usr/bin/:/home/nexx0r/scripts/:/usr/games"
    endif
    # Στις 5 παραπάνω γραμμές απλά δήλωσα το path. Δεν μπορείτε να πείτε το C shell είναι πιο ψαγμένο!

    if($?prompt) then
    if($?tcsh) then
    set prompt='[%n@m %c]$ '
    else
    set prompt=\['id -nu'@'hostname -s'\]\$\
    endif
    endif

    # Στις 7 παραπάνω γραμμές απλά δήλωσα το shell prompt!

    setenv HOSTNAME '/bin/hostname'
    set history=1000
    κτλ

    Επιτέλους λίγο Scripting!

    Μέτα την μίκρη αλλά απαραίτητη εισαγώγη μας, ήρθε η στιγμή που όλοι περιμέναμε, να μπούμε δηλαδή στο scripting καθεαυτό. Όσα περιγραψούμε παρακάτω, δουλεύουν στο κέλυφος sh, στο κέλυφος bash, στο korn κέλυφος και τους κλώνους τους.

    To scripting για το κέλυφος δίνει στον διαχειριστή ή χρηστη του συστήματος την δυνατότητα να αυτοματοποιήσει ορισμένες διαδικασίες και να κάνει την ζωή του πιο εύκολη (ή δύσκολη!). Τα scripts είναι εύκολα να δημιουργηθούν και είναι αμέσα διαθέσιμα. Για να ξεκινήσετε το scripting, η πρώτη γραμμή που πρέπει να προσδιορίσετε είναι το κέλυφος για το οποίο προορίζεται το script, μετά τους χαρακτήρες #!. Δηλαδή:

    #!/bin/sh

    Μετά την γραμμή αυτή μπορούμε να κάνουμε οτι θέλουμε με το script μας αρκεί να υπακούσουμε φυσικά τους συντακτικούς κανόνες του κέλυφους. Ο πρώτος κανόνας που θα μάθουμε είναι πότε χρησιμοποίουμε ' και πότε ". Το οποίο είναι και το πρώτο πράγμα πού συνήθως μπερδεύουν όσοι ξεκινάνε μια γλώσσα script.
    Χρησιμοποιούμε τα ' για να αποτρέψουμε το κέλυφος από το να μεταφράσει το κενό. Πχ στην δήλωση μεταβλήτων:

    ΜΕΤΑΒΛΗΤΗ='τιμή1 τιμή2'

    Χρησιμοποιούμε τα " για να περικλύσουμε για παράδειγμα το όνομα μια μεταβλητής. Πχ:

    ΜΕΤΑΒΛΗΤΗ1="$ΜΕΤΑΒΛΗΤΗ2"

    Οπου η ΜΕΤΑΒΛΗΤΗ1 παίρνει την τιμή που έχει η ΜΕΤΑΒΛΗΤΗ2.

    Ελεγχος Εκφράσεων if-fi

    Ο έλεγχος μιας έκφρασης μπορεί να γίνει με δύο τρόπους. Χρησιμοποιώντας την εντολή If ή περικλύωντας την έκφραση σε αγκύλες []. Η εντολή If έχει το δίκο της σώμα του οποίου το ξεκίνημα υποδηλώνει το if και κλείνει το fi. Ο έλεγχος των εκφράσεων εξαρτάται από το τύπο των μεταβλήτων που ελέγχονται. Και σε αντίθεση με τις συνήθεις γλώσσες προγραμματισμού, εδώ θεωρούμε την συνθήκη αληθής όταν δώσει 0 και ΟΧΙ 1. Ακολούθεί ο πίνακας με τις ποιο χρησίμες εκφράσεις:

    Τύπος Δεδομένου Έλεγχος Περιγραφή Παράδειγμα
    Συμβολοσειρά (string) =

    !=

    Ελέγχει αν δύο string είναι ίσα

    Ελέγχει αν δύο string δεν είναι ισα

    if["$var1"="$var2"];

    then echo "Match Found" fi

    if["$var1"!="$var2"];

    then echo "Match not Found" fi

    Αριθμητικό -eq

    -nq

    -lt

    -gt

    -ge

    Ελέγχει αν δύο νούμερα είναι ίσα

    Ελέγχει αν δύο νούμερα δεν είναι ίσα

    Ελέγχει αν το πρώτο είναι μικρότερο

    Ελέγχει αν το πρώτο είναι μεγαλύτερο

    Ελέγχει αν το πρώτο είναι μεγαλύτερο ή ίσο

    if[$var1 -eq $var2];

    then echo "They are equal" fi

    if[$var1 -nq $var2];

    then echo "They are not equal" fi

    if[$var1 -lt $var2];

    then echo "var1

    if[$var1 -gt $var2];

    then echo "var1>var2" fi

    if[$var1 -ge $var2];

    then echo "var1>=var2" fi

    Αρχεία -f

    -d

    -r

    -w

    -x

    Έλεγχος για ύπαρξη αρχείου

    Ελεγχος για ύπαρξη καταλόγου

    Ελεγχος αν το αρχείο έχει άδεια ανάγνωσης

    Ελεγχος αν το αρχείο έχει άδεια εγγραφής

    Ελεγχος αν το αρχείο έχει αδεία εκτέλεσης

    if [-f "$filename"];

    then echo "file exists!" fi

    if [-d "$dirname"];

    then echo "dir exists!" fi

    if [-r "$filename"];

    then echo "We can read" fi

    if [-w "$filename"];

    then echo "We can write!" fi

    if [-x "$filename"];

    then echo "Its Executable!" fi

    Λογικές Πράξεις !

    -a

    -o

    Αρνήση Έλεγχου

    Λογικό KAI

    Λογικό Η'

    if [! -w "$filename"];

    then echo "We can't write it!" fi

    if [-f "$filename" -a -w "$filename2"];

    then echo "it Exists and can be written!" fi

    if [-f "$filename" -o -w "$filename2"];

    then echo " either exists or can be written!" fi

    Η εντολή case

    Με την εντολή case μπορούμε να ελέγξουμε αν μια σύνθηκη ικάνοποιεί κάποιες προυποθέσεις. Παραδείγματος χάριν, θέλουμε να έλεγξουμε την κατάληξη που έχει ένα αρχείο και να κάνουμε κάποιες εργασίες ανάλογα με αυτή. Κάτι τέτοιο με την χρήση της if θα γίνοταν πολύπλοκο, με την case ειναι παιχνιδάκι:

    case "$file" in
    
    *.c) echo "File is C source, so we compile with c compiler"
    ;;
    *.cc|*.cpp) echo "File is C++ source, so we compile with c++ compiler"
    ;;
    *.h|*.hpp) echo "File is Header, so we don't compile it"
    ;;
    Με το ;; υποδήλωνουμε οτι τέλειωσαν οι ενέργειες στην συγκεκριμένη περιπτώση. Οπώς βλέπετε δουλευεί και ο λογικος τελεστής | με τον οποίο μπορούμε να πετύχουμε ακόμα πιο πολύπλοκους ελέγχους.

    H δημιουργία βρόχων

    Οπως συμβαίνει στις περισσότερες γλώσσες προγραμμάτισμου, έτσι και εδώ έχουμε στην διαθέση μας τους αγαπήμενους μας βρόχους while και for.

    WHILE
    Ο βρόχος while επαναλαμβάνει ότι περιέχει στο σώμα του για όσο η συνθήκη που δώσαμε είναι αλήθης. Η σύνταξη είναι κάπως έτσι:

    while [Συνθήκη ]
    
    do
    εντολές
    done
    Παράδειγμα:
    i=0
    
    while [$i -lt 5]
    do
    echo $i
    i='expr "$i" + 1'
    done
    Σε αυτό το παράδειγμα όσο το i ήταν μικρότερο του 5, τυπωνόταν η τιμή του στην οθόνη και στη σύνεχεια αυξάνοταν κατα 1. Την αύξηση του i κατα 1 την πετύχαμε με την χρήση της εντολής expr, παρατηρήστε την διαφόρα στη χρήση των ' και των ".

    FOR
    Ας δούμε την σύνταξη του for με ένα ενδιαφέρον παράδειγμα:

    c=1
    
    for file in 'ls -R /home/*'
    do
    c='expr "$c" + 1'
    done
    echo "$c files are inside /home and its subdirectories"
    Θα πρέπει να παρατηρήσουμε οτι πάρα την ευελίξια της η for στο κέλυφος Bourne, έχει την ιδιομορφία να εκτελεί μια επανάληψη ακόμα και όταν η συνθήκη δεν ικανοποιείται.

    Χρήσιμες εντολές

    Η εντολή sleep

    Η εντολή sleep κάνει το κέλυφος να περιμένει για κάποιο αριθμό δευτερολέπτων.

    πχ sleep 2 # αναμονή 2 δευτερόλεπτα

    H εντολή read

    Η εντολή read γεμίζει μια μεταβλήτη με είσοδο του χρήστη απο το πληκτρολόγιο.

    πχ read answer # το προγραμμά σταματάει την εκτελέση του μεχρί να δώσουμε τιμή + enter

    H εντολή exit

    Η εντολή exit σταματάει την εκτέλεση του script και επιστρέφει μια τιμή ελέγχου στο κελύφος.

    πχ exit 0 # επιστρέφουμε στο κέλυφος οτι η εκτέλεση του script ήταν επιτυχής

    Η δυνατότητα επιστροφής μιας τίμης μας βοήθαει να καταλάβουμε σε ποίο σημείο του script κάναμε λάθος, και να το αποσφαλματώσουμε.

    Επίσης με την εντολή Help, μπορούμε να παρουμε βοήθεια

    πχ $help while

    while: while COMMANDS; do COMMANDS; done
    Expand and execute COMMANDS as long as the final command in the
    `while' COMMANDS has an exit status of zero.


    Αποσφαλματώνοντας το script σας

    Για να εκτέλεσουμε το script σε περιβάλλον αποσφαλμάτωσης χρησιμοποιούμε το ειδίκο ορίσμα -x κατα την εκτέλεση του. Αυτό μπορούμε να το προσδιορίσουμε στην αρχή του script, αρχίζωντας έτσι:

    #!/bin/sh -x ,

    ή κάτα την εκτέλεση, τρέχωντας το μέσα σε κάποιο άλλο κέλυφος:

    πχ sh -x myscript.sh .

    Όταν εκτελούμε το script σε περιβάλλον αποσφαλμάτωσης πριν την εκτέλεση κάποιας εντολής την τυπώνει στην οθόνη, έτσι μπορούμε να δούμε τις τιμές των μεταβλητών καθώς αυτές επεξεργάζονται από το script.

    Keywords: Linux, Terminal, Shell, Commands, Syntax, Tips n Tricks, Terminal Series,Scripting,
    
    bash,aliases,alias,if,while,for,case,read,sleep,exit,debug,variables