Προς το περιεχόμενο

Βασικές απορίες για το AUR & non-AUR build


thessalonik

Προτεινόμενες αναρτήσεις

Να διαβασω αυτα που λετε αλλα πως θα βρω απαντηση σε αυτο ακριβως που ρωταω δεν γνωριζω.

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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντ. 67
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Σκεφτομαι αυτή τη διάκριση:
Γράφεις ένα πρόγραμμα σε C. Για να τρέξει πρέπει να το κάνεις compile.
Γράφεις ένα πρόγραμμα σε shell (.sh). Για να τρέξει απλά το κάνεις "chmod +x" και το τρέχεις. <-- Αυτό δεν χρειάζεται compile
 
Αρα στην 1η περιπτωση βαζουμε μεσα στο pkgbuild(text file, pure bash?!) ως πληροφορια πηγης το compiled source(binary). Σωστα το λεω-καταλαβα ?
 
Στην 2η περιπτωση βαζουμε μεσα στο pkgbuild(text file, pure bash?!) ως πληροφορια πηγης σκετο το source(bash script ειναι). Σωστα το λεω-καταλαβα ?
 
 
Και στις 2 περιπτωσεις, πακεταρουμε τα ανωθεν αποτελεσματα σε μορφη πακετου σωστα?
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ξαναδιάβασε τα προηγούμενα post.

Στην πρώτη περίπτωση στο PKGBUILD θα βάλεις τις οδηγίες για το πως να γίνει το compile και να δημιουργηθεί το εκτελέσιμο. Κατ' ευθείαν binaries συμπεριλαμβάνονται σπάνια και συνήθως για κλειστό λογισμικό.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

To PKGBUILD δεν τα κάνει compile, απλά γράφει που πρέπει να πάνε κατά την εγκατάσταση, περιγραφει τις εξαρτησεις τους, αν γινονται με καποιο αλλο πακετο conflict. Τετοια πραγματα. Precompiled ειναι ηδη κατα την ταπεινη μου γνωμη.

 

πχ, sudo pacman -S thunderbird-bin καθως και διαφορα αλλα πακετα που ειναι επισης ανοικτου κωδικα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Το PKGBUILD δινει οδηγιες. Ειτε να κανει compile το source code (παραδειγμα), ειτε απλα να αντιγραψει ενα ετοιμο binary/shell script/κλπ (παραδειγμα)

 

Και παρεχει info για εξαρτησεις κλπ.

 

Εχω συγκεκριμμενη ερωτηση

Τα links που σου εδωσαν απαντανε συγκεκριμενα και ρητα.

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Σε ευχαριστω πολυ για το ξεκαθαρισμα.

 

Αρα εχουμε 3 περιπτωσεις:

 

source(C code) => makepkg (source code compilation + metadata for dependencies + conflict check) => pacman (package installation)

 

source(shell script) => makepkg (bash shell copy directive + metadata for dependencies + conflict check) => pacman (package installation)

 

source(binary) => makepkg (binary copy directive + metadata for dependencies + conflict check) => pacman (package installation)

 

Συμφωνουμε?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Κοινως:

Οτιδηποτε απο AUR->makepkg->pacman

Τωρα η πηγη μπορει να ειναι οτιδηποτε (source code, script, ετοιμο binary, πακετο απο αλλη διανομη, σκετα fonts, το δεξι μου π@@ρι κλπ κλπ)

 

Το PKGBUILD δινει τις καταλληλες οδηγιες για την δημιουργια του πακετου. 

 

Δηλαδη θες να φτιαξεις πακετο στο arch: Πρεπει να φτιαξεις PKGBUILD.

 

Αυτα για το AUR.

 

Τωρα για τα κανονικα repos:

 

Official repos->pacman (αφου ειναι ετοιμο το πακετο, προς εγκατασταση)

 

Νταξ, τα ξεκαθαρισαμε?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μου αρεσει ο τροπος που σκεφτεσαι! Το εννοω, εχεις εναν υπερ-απλουστεθτικο τροπο σκεψης ενω εγω ο μ.....ς τεινω να περιπλεκω τα πραγματα!

 

Για το AUR τα ξεκαθαρισμαε τελεια! (η τελευταια πηγη με εκαν επραγματικα και γελασα και ξεαγχωθηκα)

 

Στην περιπτωση τωρα των επισημων αποθετηριων:

 

απουσιαζει το makepkg γιατι ηδη το εχουν δημιουργησει το πακετο οι Arch Develpopers, οι οποιοι ειναι και οι mainteners του, σωστα?

 

Η πηγη ενος επισημου πακετου μπορει να ειναι ΤΙ ΑΚΡΙΒΩΣ? ΟΤΙ ΚΑΙ ΣΤΟ AUR ή μονο ετοιμο binary(compiled source δηλαδη) ?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

απουσιαζει το makepkg γιατι ηδη το εχουν δημιουργησει το πακετο οι Arch Develpopers, οι οποιοι ειναι και οι mainteners του, σωστα?

Ναι, υπαρχει ηδη το πακετο. Απλα το περνας με τον pacman.

 

Η πηγη ενος επισημου πακετου μπορει να ειναι ΤΙ ΑΚΡΙΒΩΣ? ΟΤΙ ΚΑΙ ΣΤΟ AUR ή μονο ετοιμο binary(compiled source δηλαδη) ?

Ξανα, οτιδηποτε.

 

Η σειρα ειναι:

 

πηγη (οτιδηποτε) -> PKGBUILD/makepkg -> πακετο -> pacman

 

Απλα στο AUR ξεκινας την διαδικασια απτο makepkg, για να φτιαξεις το πακετο πρωτα.

 

Στα κανονικα repos υπαρχουνε ετοιμα τα πακετα (καποιος εκανε το PKGBUILD/makepkg για να το εχεις ετοιμο)

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Να 'ξερες...

 

Εχει ενα θεμα με τα wiki/google κλπ.

 

 

Πάντως ένα είναι το μόνο σίγουρο. Αν δεν ψάχνεις, δεν βρίσκεις....

 

Αλλά τι κάθομαι και λέω τώρα...

http://meta.stackexchange.com/questions/19665/the-help-vampire-problem

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Μαλιστα! Πολυ ωραια εξηγηση!

 

Και οταν λεμε την φραση "precompiled package"? Τι ακριβως εννουμε?

 

Οταν παω να το σκεφτω ελληνικα πχ μεταγλωτιμσνεο πακετο δεν βγαζω νοημα!

Το νοημα για παραδειγμ απου θα εβγαζα αν ελεγα μεταγλωτισμενος πηγαιος κωδικας C++, αυτο μαλιστα!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Λεμε precompiled το πακετο γιατι ηδη εχει χτιστει/δημιουργηθει (περασε την διαδικασια του PKGBUILD/makepkg)

 

Πακετα που δεν εχουν χτιστει/δημιουργηθει ακομα ειναι στο aur, στα οποια τρεχεις εσυ το makepkg.

 

Φυσικα ενα ετοιμο (precompiled) πακετο ειναι προφανες* οτι περιεχει και μεταγλωτισμενο τον κωδικα του ταδε προγραμματος μεσα, ετοιμο προς εγκατασταση.

 

 

 

 

*ελπιζω/προσδοκω οτι ειναι...

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Mαλιστα!

 

Αρα με αλλα λογια οταν εχεις:

 

μοναχο του το PKGBUILD ειναι εν δυναμει πακετο. (σκετο το  bash script του PKGBUILD δηλαδη πριν το makepkg)

precompiled ειναι το το παραπανω οταν εχει περασει την διαδικασια του makepkg.

 

 

Αρα οταν ακουω σκετη την λεξη πακετο να καταλαβαινω μονο το αρχειο οδηγιων δημιουργιας πακετου, ενω μονο οταν ακουω την λεξη precompiled να καταλαβαινω οτι εχει υποστει makepkg σωστα?

 

 

Nαι ειναι προφανες οτι αφου εχει περασει την διαδικασια του makepkg καi εφοσον η πηγη του ηταν πηγαιος κωδικας(π.χ C++) εχει μεταγλωτισθει κιoλας.

 

αν ομως η πηγη του ηταν bash shell script or python script, τοτε δεν υπαρχει η εννοια της μεταγλωτισης εντος, σωστα?

 

 

υ.γ: Οσο πιο πολυ το δουλεευω στο μυαλο μου τοσο πιο πολυ τεινω να αντιλαμβανομαι το πακετο ως ειδους container.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...