Skip to content

Compilation el GR

ArchiBot edited this page Jul 8, 2025 · 36 revisions

Συλλογή

Η μεταγλώττιση είναι η διαδικασία δημιουργίας εκτελέσιμου αρχείου. Αυτό είναι που θέλετε να κάνετε αν θέλετε να προσθέσετε τις δικές σας αλλαγές στην ASF, or if you for any reason don't trust executable files provided in official releases. Αν είστε χρήστης και όχι προγραμματιστής, πιθανότατα θέλετε να χρησιμοποιήσετε ήδη προμεταγλωττισμένα binaries, αλλά αν θα θέλατε να χρησιμοποιήσετε τις δικές σας ή να μάθετε κάτι νέο, συνεχίστε την ανάγνωση.

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


.NET SDK

Ανεξάρτητα από την πλατφόρμα, θα πρέπει να έχετε πλήρη .NET SDK (όχι μόνο runtime) προκειμένου να μεταγλωττίσει ASF. Οδηγίες εγκατάστασης μπορούν να βρεθούν στην σελίδα .NET download σελίδα. Θα πρέπει να εγκαταστήσετε την κατάλληλη έκδοση .NET SDK για το λειτουργικό σας σύστημα. Μετά την επιτυχή εγκατάσταση, η εντολή dotnet πρέπει να λειτουργεί και να λειτουργεί. Μπορείτε να επαληθεύσετε αν λειτουργεί με το dotnet --info. Εξασφαλίστε επίσης ότι .NET SDK σας ταιριάζει με τις απαιτήσεις χρόνου εκτέλεσης ASF .


Συλλογή

Υποθέτοντας ότι έχετε λειτουργία .NET SDK και στην κατάλληλη έκδοση, απλά πλοηγηθείτε στον πηγαίο κατάλογο ASF (κλωνοποιημένο ή κατεβασμένο και αποσυμπιεσμένο ASF repo) και εκτελέστε:

dotnet publish ArchiSteamFarm -c "Release" -o "out/generic"

Αν χρησιμοποιείτε Linux/macOS, μπορείτε να χρησιμοποιήσετε το σενάριο cc.sh το οποίο θα κάνει το ίδιο, με λίγο πιο περίπλοκο τρόπο.

Αν η μεταγλώττιση έληξε με επιτυχία, μπορείτε να βρείτε το ASF σας σε πηγή γεύση σε out/generic. Αυτό είναι το ίδιο με την επίσημη γενική έκδοση ASF, but it has forced UpdateChannel and UpdatePeriod of 0, το οποίο είναι κατάλληλο για αυτοκατασκευές.

Ειδικό OS-

Μπορείτε επίσης να δημιουργήσετε OS-συγκεκριμένο πακέτο .NET εάν έχετε μια συγκεκριμένη ανάγκη. In general you shouldn't do that because you've just compiled generic flavour that you can run with your already-installed .NET runtime that you've used for the compilation in the first place, but just in case you want to:

dotnet publish ArchiSteamFarm -c "Release" -o "out/linux-x64" -r "linux-x64" --self-contained

Φυσικά, αντικαταστήστε το linux-x64 με αρχιτεκτονική OS που θέλετε να στοχεύσετε, όπως το win-x64. Αυτή η έκδοση θα έχει επίσης απενεργοποιημένες ενημερώσεις. When building --self-contained you can also optionally declare two more switches: -p:PublishTrimmed=true will produce trimmed build, while -p:PublishSingleFile=true will produce a single file. Η προσθήκη και των δύο θα έχει ως αποτέλεσμα τις ίδιες ρυθμίσεις που χρησιμοποιούμε για τα δικά μας κτίρια.

ASF-ui

Ενώ τα παραπάνω βήματα είναι όλα όσα απαιτούνται για να έχουν μια πλήρως λειτουργική κατασκευή του ASF, μπορεί να επίσης να ενδιαφέρεστε για την οικοδόμηση ASF-ui, γραφική διεπαφή ιστού. Από την πλευρά του ASF, το μόνο που χρειάζεται να κάνετε είναι να ρίξετε την έξοδο κατασκευής ASF-ui στην τυπική θέση ASF-ui / dist , στη συνέχεια την οικοδόμηση ASF μαζί του (πάλι, αν χρειαστεί).

Το ASF-ui είναι μέρος του δέντρου προέλευσης του ASF ως υπομονάδα git, βεβαιωθείτε ότι έχετε κλωνοποιήσει το repo με git clone --αναδρομική, γιατί αλλιώς δεν θα έχετε τα απαιτούμενα αρχεία. Θα χρειαστείτε επίσης ένα λειτουργικό NPM, Node.js έρχεται με αυτό. Αν χρησιμοποιείτε Linux/macOS, σας συνιστούμε cc μας. h σενάριο, το οποίο θα καλύπτει αυτόματα την οικοδόμηση και τη ναυτιλία ASF-ui (αν είναι δυνατόν, δηλαδή, αν ικανοποιείτε τις απαιτήσεις που μόλις αναφέρατε).

Εκτός από το cc. σενάριο h , επισυνάπτουμε επίσης τις παρακάτω απλοποιημένες οδηγίες κατασκευής, αναφέρεται στο ASF-ui repo για πρόσθετη τεκμηρίωση. Από τη θέση πηγαίου δέντρου του ASF, έτσι όπως παραπάνω, εκτελέστε τις ακόλουθες εντολές:

rm -rf "ASF-ui/dist" # Το ASF-ui δεν καθαρίζεται μετά την παλαιά κατασκευή

npm ci --prefix ASF-ui
npm run-script deploy --prefix ASF-ui

rm -rf "out/generic/www" # Βεβαιωθείτε ότι η έξοδος κατασκευής μας είναι καθαρή από τα παλιά αρχεία
dotnet δημοσιεύει το ArchiSteamFarm -c "Release" -o "out/generic" # Ή αναλόγως προς αυτό που χρειάζεστε σύμφωνα με τα παραπάνω

Θα πρέπει τώρα να μπορείτε να βρείτε τα αρχεία ASF-ui στο φάκελο out/generic/www. Το ASF θα μπορεί να εξυπηρετεί αυτά τα αρχεία στον περιηγητή σας.

Εναλλακτικά, μπορείτε απλά να οικοδομήσουμε ASF-ui, είτε χειροκίνητα είτε με τη βοήθεια του repo, στη συνέχεια αντιγράψτε την έξοδο κατασκευής στο φάκελο ${OUT}/www χειροκίνητα, όπου ${OUT} είναι ο φάκελος εξόδου του ASF που έχετε ορίσει με την παράμετρο -o. Αυτό ακριβώς κάνει η ASF ως μέρος της διαδικασίας οικοδόμησης. αντιγράφει ASF-ui/dist (αν υπάρχει) στο ${OUT}/www, τίποτα φανταχτερό.


Ανάπτυξη

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

Αν δεν έχετε μια καλύτερη επιλογή, μπορούμε να συστήσουμε τελευταίο Visual Studio Code, το οποίο είναι επαρκές για ακόμη πιο προηγμένες ανάγκες. Φυσικά μπορείτε να χρησιμοποιήσετε ό, τι θέλετε, για αναφορά χρησιμοποιούμε JetBrains Rider για την ανάπτυξη του ASF, αν και δεν είναι μια ελεύθερη λύση.


Ετικέτες

κύρια υποκατάστημα δεν είναι εγγυημένη για να είναι σε μια κατάσταση που επιτρέπει την επιτυχή μεταγλώττιση ή άψογη εκτέλεση ASF κατά πρώτο λόγο, αφού είναι κλάδος ανάπτυξης ακριβώς όπως αναφέρεται στον κύκλο κυκλοφορίας . Αν θέλετε να συντάξετε ή να αναφέρετε ASF από την πηγή, τότε θα πρέπει να χρησιμοποιήσετε την κατάλληλη ετικέτα για το σκοπό αυτό, που εγγυάται τουλάχιστον επιτυχή μεταγλώττιση και πολύ πιθανό και άψογη εκτέλεση (αν η κατασκευή είχε επισημανθεί ως σταθερή απελευθέρωση). Για να ελέγξετε την τρέχουσα "υγεία" του δέντρου, μπορείτε να χρησιμοποιήσετε το CI μας - GitHub.


Επίσημες κυκλοφορίες

Οι επίσημες εκδόσεις ASF καταρτίζονται από GitHub, με τις τελευταίες . ET SDK που ταιριάζει με τις απαιτήσεις ASF χρόνου εκτέλεσης. Μετά τη διέλευση δοκιμών, όλα τα πακέτα αναπτύσσονται ως η απελευθέρωση, επίσης στο GitHub. Αυτό εγγυάται επίσης τη διαφάνεια, καθώς το GitHub χρησιμοποιεί πάντα επίσημη δημόσια πηγή για όλα τα κτίρια, και μπορείτε να συγκρίνετε checksums των τεχνουργημάτων GitHub με τα περιουσιακά στοιχεία απελευθέρωσης GitHub. Οι προγραμματιστές ASF δεν συντάσσουν ή δημοσιεύουν κατασκευές, εκτός από τη διαδικασία ιδιωτικής ανάπτυξης και την αποσφαλμάτωση.

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

Clone this wiki locally