Φτιάξε τα δικά σου πακέτα deb

Από Hellug Wiki
Αναθεώρηση ως προς 12:27, 13 Μαρτίου 2012 από τον Archmage (συζήτηση | συνεισφορές)
(διαφορά) ← Παλαιότερη αναθεώρηση | Τελευταία αναθεώρηση (διαφορά) | Νεότερη αναθεώρηση → (διαφορά)

Μόνο για μικρά προγράμματα και με μικρή μεταβολή στα dependencies σε σχέση με την προηγούμενη έκδοση (Μην το δοκιμάσετε με το OpenOffice ή το Amarok)

Τρόπος πρώτος: Rebuild from source

Πρέπει να έχουμε ήδη τα build-essential, devscripts και fakeroot:

sudo apt-get install build-essential devscripts fakeroot

Κατεβάζεις από το επίσημο testing / unstable repository της διανομής σου τα εξής αρχεία. Για παράδειγμα κατεβάζουμε στο φάκελο ~/fakelos το πρόγραμμα transmission, δηλαδή τα παρακάτω αρχεία:

  • transmission_0.93.dfsg.orig.tar.gz
  • transmission_0.93.dfsg-2.diff.gz
  • transmission_0.93.dfsg-2.dsc

Τρέχουμε στην κονσόλα τα εξής:

cd ~/fakelos
sudo dpkg-source -x transmission_0.93.dfsg-2.dsc

Αν δε δουλέψει χρησιμοποιούμε το fakeroot:

fakeroot dpkg-source -x transmission_0.93.dfsg-2.dsc

Δημιουργήθηκε ένα νέο directory, με το όνομα (εδώ) transmission-0.93.dfsg

Δημιουργούμε το πακέτο με τις εντολές:

cd transmission-0.93.dfsg
sudo dpkg-buildpackage

Αν εμφανίσει ότι υπάρχουν unmet dependencies, εγκαθιστούμε τα πακέτα που λείπουν σε μια δεύτερη κονσόλα:

su - apt-get install <paste τα πακέτα που λείπουν>

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

Μετά την εγκατάσταση των τυχόν επιπλέον πακέτων:

sudo dpkg-buildpackage

Αγνοούμε τυχόν προειδοποιήσεις για gpg signature.

  • Εγκαθιστούμε το πακέτο με:
dpkg -i transmission_0.93.dfsg-2.deb

Τρόπος δεύτερος: checkinstall

Παίρνουμε μόνο τον κώδικα του προγράμματος και έχοντας ήδη εγκατεστημένο το checkinstall δίνουμε διαδοχικά τα κλασικά με την παρακάτω διαφορά:

./configure
make
make checkinstall   (αντί για σκέτο make install)

Το πακέτο είναι έτοιμο προς εγκατάσταση.

Περισσότερα: http://www.psychocats.net/ubuntu/installingsoftware#deb

Θυμίσου ότι πρέπει και εδώ να έχεις εγκατεστημένο από τα πριν το build-essential και πιθανώς και και κάποια άλλα πακέτα.