Κυριακή, 29 Μαΐου 2011

ΕΛΛΑΚ και ευρωπαϊκά ερευνητικά προγράμματα

Η ολοένα αυξανόμενη χρήση και δημοφιλία του ΕΛΛΑΚ, καθώς και η ευκολία μελέτης του (λόγω του ότι τα περισσότερα δεδομένα είναι διαθέσιμα: κώδικας, ιστορικό, αρχεία λιστών ταχυδρομείου, IRC logs κλπ κλπ) έχουν οδηγήσει τα τελευταία χρόνια σε αντίστοιχα αυξημένο ενδιαφέρον για το ΕΛΛΑΚ από την ακαδημαϊκή/ερευνητική κοινότητα.

Τα τελευταία χρόνια έχουν τρέξει και τρέχουν αρκετά ευρωπαϊκά ερευνητικά προγράμματα που ασχολούνται με το ΕΛΛΑΚ:

  • Τα projects EDOS και MANCOOSI που ασχολούνται κυρίως με θέματα package management και διαχείριση dependencies. Η σχετική ερευνητική ομάδα απασχολεί μάλιστα και τον τωρινό DPL. Τα projects αυτά έχουν ήδη προσφέρει χρήσιμα εργαλεία, όπως το debian weather.
  • Τα projects FLOSSMETRICS, QUALOSS και SQO-OSS που ασχολούνται με την ποιότητα των διαθέσιμων πακέτων ΕΛΛΑΚ.
  • Το project OSEPA με στόχο την προώθηση του ΕΛΛΑΚ στη δημόσια διακυβέρνηση
  • Μια πιο πλήρη εικόνα μπορείτε να δείτε εδώ και εδώ.


    More computer science humour ...

    Two tables are sitting in a bar and in comes a query: "May I join you?"

    Your mother is so fat that if she sits on a binary tree she will make a list out of it in constant time ...

    Two bytes meet. The first byte asks, “Are you ill?”
    The second byte replies, “No, just feeling a bit off.”

    Eight bytes walk into a bar. The bartender asks, “Can I get you anything?”
    “Yeah,” reply the bytes. “Make us a double.”

    There are only 10 kinds of people in this world: those who know binary and those who don’t.

    My new computer is so fast it can execute an infinite loop in 3 seconds ...

    From the Random Shack Data Processing Dictionary:

    Endless Loop: n., see Loop, Endless.
    Loop, Endless: n., see Endless Loop.

    Πέμπτη, 26 Μαΐου 2011

    ADSL modems και NetworkManager: status update

    Αυτή τη στιγμή τα patches για PPPoA και PPPoE support βρίσκονται σε ένα upstream branch με στόχο να ενσωματωθούν στο NetworkManager 0.9.2.

    Πρόσφατα ήρθε και το πρώτο εξαιρετικό review από τον David Woodhouse ο οποίος αναφέρθηκε στην υποστήριξη για multi-port PCI ADSL modems, IPv6, στην πιθανή αντικατάσταση του br2684ctl με NetworkManager internal κώδικα καθώς και στο patch του Dan Williams που μόλις στάλθηκε στη
    λίστα netdev του Linux με θέμα την προσθήκη "index" στις ATM συσκευές.

    Τετάρτη, 25 Μαΐου 2011

    DIY One Touch Backup στο Linux Part 1: Reverse engineering

    Σε διάφορα forums, σε threads που έχουν να κάνουν με backup, χρήστες των windows έχουν κάνει σχόλια του στυλ: "Δεν μπορεί να είναι τόσο δύσκολο, εγώ για να πάρω backup απλά τοποθετώ τον εξωτερικό δίσκο και πατάω το κουμπάκι που λέει One Touch Backup".

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

    Τρίτη, 24 Μαΐου 2011

    USB Reverse engineering με virtualbox και usbmon

    Στις μέρες μας η πιο διαδεδομένη μορφή συνδεσιμότητας για περιφερειακές συσκευές είναι ο USB (Universal Serial Bus - Οικουμενικός Σειριακός Δίαυλος). Πολλές φορές, διάφορες χρήσιμες  / ενδιαφέρουσες USB συσκευές έρχονται με υποστήριξη μόνο για windows, οπότε η ικανότητα να μπορεί κάποιος να καταλάβει τον τρόπο λειτουργίας τους (reverse engineering) και να τις κάνει να υποστηρίζονται στο Linux είναι αρκετά σημαντική για κάθε επίδοξο "Linux ninja".

    Heads up: Pristine source debian packages και PPAs

    Η κλασική μέθοδος για να κάνει κάποιος "port" ένα πακέτο από το debian στο ubuntu PPA του είναι:

    dget http://.../file.dsc
    dpkg-source -x *.dsc
    cd ...
    dch -i     # εδώ βάζουμε το δικό μας όνομα, σχόλιο κλπ
    debuild -S
    cd ..
    dput ppa *.changes
    

    Τελευταία, σε ορισμένα πακέτα, το debuild -S δε συμπεριλαμβάνει στο description του upload το .orig.tar.gz αρχείο (για λόγους που δε χρειάζεται να περιγράψω εδώ). Αυτό μπορεί να οδηγήσει σε μήνυμα λάθους του στυλ:

    "Unable to find blabla.orig.tar.gz in upload or distribution.
    Files specified in DSC are broken or missing, skipping package unpack verification."

    Η λύση σε αυτή την περίπτωση είναι η χρήση του
    debuild -S -sa
    

    Απλό :)

    Σάββατο, 21 Μαΐου 2011

    Και λίγο χιούμορ ...

    COSTELLO CALLS TO BUY A COMPUTER FROM ABBOTT

    ABBOTT: Super Duper computer store. Can I help you?

    COSTELLO: Thanks. I'm setting up an office in my den and I'm thinking about buying a computer.

    ABBOTT: Mac?

    COSTELLO: No, the name's Lou.

    Τετάρτη, 18 Μαΐου 2011

    x86 emulator σε javascript από το Fabrice Bellard

    Εχθές, ο Fabrice Bellard (ffmpeg, qemu, tcc, ...) δημοσίευσε ένα πλήρη x86 emulator γραμμένο σε Javascript (!) αρκετά πλήρη ώστε να τρέχει ένα πυρήνα Linux 2.6.20. Από ότι φαίνεται η εξομοιωμένη μηχανή είναι επιπέδου 486 με MMU αλλά χωρίς FPU (το οποίο δεν είναι πρόβλημα για το Linux αφού περιλαμβάνει FPU emulator) και έχει δύναμη περίπου ίση με ένα 486 DX/40.

    Για το demo: http://bellard.org/jslinux
    Για περισσότερες πληροφορίες: http://bellard.org/jslinux/tech.html
    Και για μια πιο εκλαϊκευμένη εξήγηση του πώς δουλεύει ο emulator δείτε εδώ: http://www.quora.com/CPU-Emulation/How-does-bellard-org-jslinux-work

    Επιλογές παρουσιάσεων από EclipseCon 2011

    Εχθές βράδυ κοίταγα τις παρουσιάσεις της EclipseCon 2011 (τουλάχιστον αυτές που έχουν δημόσια διαθέσιμο το υλικό τους) και επειδή στο σύνολο οι παρουσιάσεις είναι πραγματικά πολλές, σκέφτηκα να μοιραστώ τις επιλογές μου (και για δικό μου future reference):

    Τρίτη, 17 Μαΐου 2011

    Υποστήριξη για ADSL modems στο NetworkManager (update)

    Μόλις έστειλα αρχικές υλοποιήσεις για υποστήριξη pppoa και pppoe συνδέσεων από ADSL modems, στη λίστα του NetworkManager. Υπάρχει ακόμα αρκετή δουλειά να γίνει βέβαια και ο κώδικας αυτός αφορά μόνο το core του NetworkManager και όχι το γραφικό interface (αν και έχω κάποιες ιδέες / preliminary κώδικα και γι αυτό) οπότε μάλλον είναι λίγο νωρίς για να δηλώσουμε επιτυχία στο project.

    Παρόλα αυτά, το γεγονός ότι οι γραμμές αυτές γράφονται από μια PPPoE ADSL σύνδεση (LLC Encapsulation) που δημιουργήθηκε από ένα version του NetworkManager με τα patches μου, δείχνει ότι πιθανότατα δεν είμαστε και τόσο μακριά ...

    Αν κάποιος θα ήθελε να βοηθήσει στο project ας επικοινωνήσει μαζί μου μέσω της φόρμας ή στο γνωστό email.

    Παντελής



    Σάββατο, 14 Μαΐου 2011

    Systemd στη Fedora 15

    Λίγο πριν δημοσιευτεί η έκδοση 15 της Fedora, ένα από τα πιο ενδιαφέροντα χαρακτηριστικά είναι η χρήση του systemd ως παροχέα για το /sbin/init. Ως κάποιος που παρακολουθεί τις διαφορετικές προσπάθειες για σοβαρότερο process / service management στο Linux τα τελευταία 10 χρόνια πιστεύω ότι το systemd είναι μια φιλόδοξη και πολλά υποσχόμενη προσπάθεια.

    Ο δημιουργός του systemd, Lennart Poettering, έχει γράψει μία πολύ ενδιαφέρουσα σειρά από blog posts όπου παρουσιάζονται τα χαρακτηριστικά αυτού του service manager:


    • Why systemd
    • Systemd for administrators (PDF με τα άρθρα της σειράς)

    Όσοι ενδιαφέρονται για init systems και service management θα ήταν πολύ χρήσιμο να ρίξουν μια ματιά ...

    Τρίτη, 10 Μαΐου 2011

    Εντυπώσεις από τη FOSSCOMM 2011

    Από το καράβι της επιστροφής από τη FOSSCOMM 2011, θα ήθελα να μοιραστώ τις εντυπώσεις μου από πιθανότατα το σημαντικότερο γεγονός σε επίπεδο Free Software κοινοτήτων στην ελλάδα.

    Ως εκδήλωση, η FOSSCOMM περιλαμβάνει booths κοινοτήτων και εταιρειών που ασχολούνται με το ελεύθερο λογισμικό (και μπορούν να επιδοθούν σε "marketing"/"advocacy" και ενημέρωση για τις δραστηριότητες και τα προϊόντα τους), καθώς και παρουσιάσεις και workshop από developers και μέλη της γενικότερης κοινότητας του ΕΛΛΑΚ που θέλουν να μοιραστούν τις εμπειρίες τους με τους υπόλοιπους.

    Τετάρτη, 4 Μαΐου 2011

    Compiling latest versions of NetworkManager and nm-applet on Natty

    You might want to play with the new support for WiMax devices in NetworkManager, or you may even want to hack it to support a feature that you always wanted. But it would also be nice if this can be done without disrupting your current well-maintained ubuntu system. When you are done playing with the new versions, you should be able to return back to the system-provided ones and things should be as if nothing ever happened.

    The following is the process I used for achieving these goals, in case it is useful to someone else as well: The key is to install under a different prefix (e.g., /opt/nm.git) and modify all the "attachment points" of NM to the system to pick the alternative version. Using dpkg-divert we can ensure that this won't break our system and updates to the system-versions will keep being applied undisturbed (to the renamed files instead of the original ones).