MAKEPKG(8)

ΟΝΟΜΑ
makepkg - δημιουργία πακέτων Slackware.

ΣΥΝΟΨΗ
makepkg [ -l, --linkadd y|n ] [ -c, --chown y|n ] όνομαπακέτου

ΠΕΡΙΓΡΑΦΗ
Το makepkg δημιουργεί ένα νέο πακέτο Slackware. Το πακέτο δημιουργείται από τα περιεχόμενα του τρέχοντος καταλόγου και όλων των υποκαταλόγων του. Αν υπάρχουν συμβολικοί δεσμοί, θα μετατραπούν σε κώδικα σεναρίων ώστε να δημιουργηθούν ξανά όταν εγκατασταθεί το πακέτο. Ο κώδικας αυτός θα προστεθεί στο τέλος των σεναρίων της κύριας εγκατάστασης ( install/doinst.sh ). ή, αν το σενάριο δεν υπάρχει ήδη, θα δημιουργηθεί με αυτά τα περιεχόμενα. Το πακέτο θα δημιουργηθεί με το όνομα όνομαπακέτου το οποίο θα πρέπει να είναι το πλήρες όνομα, συμπεριλαμβανόμενης της επέκτασης. Αυτή είναι συνήθως .tgz, αλλά τα .tbz, .tlz και .txz είναι επίσης αποδεκτά. Το αντίστοιχο εργαλείο συμπίεσης (gzip, bzip2, lzma ή xz) θα πρέπει να είναι εγκατεστημένο στο σύστημα.

ΕΠΙΛΟΓΕΣ

-l, --linkadd y|n
    Αν είναι y, γίνεται προσθήκη των συμβολικών δεσμών τα οποία βρίσκονται στο σενάριο εγκατάστασης (doinst.sh) και διαγραφή τους. Αυτή είναι η συνιστώμενη ενέργεια. Αν δεν χρησιμοποιηθεί αυτή η επιλογή, το makepkg θα εμφανίσει προτροπή αν βρεθούν συμβολικοί δεσμοί.

-p, --prepend
    Αν χρησιμοποιηθεί αυτή η επιλογή, τότε όσοι συμβολικοί δεσμοί βρίσκονται στο doinst.sh θα ενσωματωθούν στην αρχή του υπάρχοντος σεναρίου. Αυτό είναι χρήσιμο για πακέτου που περιέχουν κοινόχρηστες βιβλιοθήκες οι οποίες θα πρέπει πρώτα να συνδεθούν, γιατί υπάρχουν προγράμματα που θα τις χρησιμοποιήσουν αργότερα στο σενάριο doinst.sh.

-c, --chown y|n
    Αν είναι y, το makepkg θα επαναφέρει όλα τα δικαιώματα των καταλόγων στο 755 και την ιδιοκτησία τους στο root:root. Γενικά, θα πρέπει να ξέρετε ήδη τα δικαιωματά και τις ιδιοκτησίες ο ίδιος, οπότε το να βασίζεστε στο να θέτετε αυτή την επιλογή στο y είναι κάπως πρόχειρο. Δεν είναι η εξ' ορισμού επιλογή. Αν δεν δίνεται κάποια επιλογή, το makepkg θα εμφανίσει μια προτροπή.

ΣΕΝΑΡΙΑ ΕΓΚΑΤΑΣΤΑΣΗΣ
Υπάρχουν 3 είδη σεναρίων εγκατάστασης που υποστηρίζονται από το σύστημα πακέτων του Slackware.

Το πρώτο είναι το
    κύριο σενάριο εγκατάστασης. Αυτό βρίσκεται στον υποκατάλογο ./install και πρέπει να έχει το όνομα doinst.sh ώστε να αναγνωριστεί. Αυτό (και άλλα σενάρια εγκατάστασης) πρέπει να είναι γραμμένα με τη χρήστη βασικής σύνταξης του κελύφους Bourne, όπως αναγνωρίζεται από το κέλυφος ash, αφού αυτό είναι το κέλυφος που θα χρησιμοποιηθεί για την εκτέλεση των σεναρίων κατά την εγκατάσταση του Slackware. Αυτό είναι ένα συχνό πρόβλημα - προσοχή στη χρήση επεκτάσεων σύνταξης του bash, γιατί το σενάριο θα δουλεύει σωστά όταν τρέχει από ένα εγκατεστημένο σύστημα στο σκληρό δίσκο, αλλά θα εμφανίσει προβλήματα κατά την εγκατάσταση. Αν το πακέτο είναι για προσωπική χρήση, αυτό δεν είναι πρόβλημα. Αλλά δείξτε προσοχή αν θέλετε να μοιραστείτε το πακέτο με άλλους χρήστες. Το κυρίως σενάριο εγκατάστασης εκτελείται αμέσως μετά την εγκατάσταση του πακέτου με τα installpkg, pkgtool, ή setup..

Το δεύτερο είδος σεναρίου είναι το
    σενάριο ρυθμίσεων. Αυτό βρίσκεται στον υποκατάλογο ./var/log/setup και πρέπει να έχει όνομα που ξεκινά από setup. ώστε να μπορεί να αναγνωριστεί. Ένα παράδειγμα είναι το σενάριο ζώνης ώρας: /var/log/setup/setup.timeconfig. Αυτά τα σενάρια εκτελούνται κατά την φάση CONFIGURE της εγκατάστασης, και επανεκτελούνται κάθε φορά που ο χρήστης επιλέγει τη CONFIGURE από της εγκατάστασης. Μια τυπική χρήση είναι ο χρήστης να εκτελεί αυτή τη φάση της εγκατάστασης και να ακολουθεί η εγκατάσταση των πακέτων. Οτιδήποτε απαιτεί διάδραση θα πρέπει να βρίσκεται σε ένα από αυτά τα σενάρια για αποφυγή παρακώλυσης της διαδικασίας εγκατάστασης των πακέτων κατά την εγκατάσταση.

Ο τρίτος τύπος σεναρίου είναι το
    σενάριο μιαςφοράςμόνο. Όπως είναι εμφανές από το όνομα, αυτά εκτελούνται μόνο μία φορά όταν το πακέτο εγκαθίσταται, σε αντίθεση με τα τυπικά σενάρια εγκατάστασης. Αυτά τα σενάριο βρίσκονται επίσης στον κατάλογο ./var/log/setup και το όνομά τους πρέπει να ξεκινά από setup., αλλά επιπρόσθετα το όνομα πρέπει να περιέχει το onlyonce. Ένα παράδειγμα μπορεί να είναι το σενάριο με την ονομασία /var/log/setup/setup.onlyonce.testscript

ΜΟΡΦΗ ΠΑΚΕΤΩΝ
Το makepkg χρησιμοποιεί το GNU tar και το GNU gzip για τη δημιουργία των πακέτων. Ένας απλός τρόπος για την εξαγωγή των περιεχομένων των πακέτων (χωρίς τη χρήση των σεναρίων εγκατάσταστης φυσικά) είναι να χρησιμοποιήσετε αυτές τις εντολές ως εξής:

explodepkg πακέτο.tgz

Η, κάπως έτσι:

gzip -dc πακέτο.tgz | tar xvvf -

ΣΥΓΓΡΑΦΕΑΣ
Patrick J. Volkerding <volkerdi@slackware.com>

ΒΛΕΠΕ ΕΠΙΣΗΣ
installpkg(8), explodepkg(8), removepkg(8), pkgtool(8), upgradepkg(8)