cerebruxcode / archon Goto Github PK
View Code? Open in Web Editor NEWΟ πρώτος Ελληνικός Arch Linux Installer
License: GNU General Public License v3.0
Ο πρώτος Ελληνικός Arch Linux Installer
License: GNU General Public License v3.0
Line 87 in d14dc04
το archonswap.conf αν και ωραίο, δεν είναι αντιπροσωπευτικό
θα πρέπει να είναι
systemd-swap.conf
Τι λέτε ?
Δεν εμφανίζεται στο echo η κάρτα δικτύου αλλά η μεταβλητή της $ethernet
.
Κάτι δε γίνεται καλά στο echo.
Αν έχω καταλάβει σωστά την φιλοσοφία του project, θα ήταν ωραίο να βάλουμε μια παράμετρο (επιλογή) με την οποία το script θα εκτελείτε αποφεύγοντας τις εντολές sleep για να μην είναι τόσο χρονοβόρα η διαδικασία για αυτούς που θα το χρησιμοποιήσουν για πολλές εγκαταστάσεις.
Σε συνδυασμό με το εξωτερικό configuratio αρχείο θα ήταν μια καλή επιλογή.
Πιστεύω ότι θα ήταν πιο ωραίο να μην εμφάνιζε τα αποτελέσματα της εντολής ping και απλά να είχε το τελικό μήνυμα του ελέγχου.
Με ένα redirect του stdout και του stderr στην null:
ping -c 5 www.google.com &> /dev/null
Δεν ξέρω αν πρέπει να ακολουθήσω την διαδικασία υποβολής για μια τόσο ασήμαντη και μικρή αλλαγή.
Θα μπορούσαμε στην αρχή της εκτέλεσης του Archon script να ζητάμε από τον χρήστη να επιλέγη γλώσσα εγκατάστασης του Archon.
Η ιδέα είναι να έχουμε ανάλογο αριθμό arrays με τις γλώσσες. Όπου υπάρχει μήνυμα μέσα στον κώδικα του script θα αντικατασταθεί από μια μεταβλητή τύπου array που θα έχει πάρει τιμές από το αντίστοιχο array της επιλεγμένης γλώσσας.
str_gr --> περιέχει τα μηνύματα όλα στα ελληνικά.
str_en --> περιέχει τα μηνύματα όλα στα αγγλικά.
Επιλογή [ 1. Ελληνικά Gr ] - [ 2. English En ]
Αν είναι το 1 τότε το str_lang θα παίρνει όλες τις τιμές του str_gr
Αν είναι το 2 τότε το str_lang θα παίρνει όλες τις τιμές του str_en
Εδώ θα ξεκινάει ο ήδη υπάρχων κώδικας του Archon script και όπου υπάρχει μήνυμα θα έχει αντικατασταθή από το ανάλογο στοιχείο του πίνακα str_lang.
Έτσι θα έχουμε πολυγλωσσικότητα με έναν κώδικα και όταν θα θέλουμε να προσθέσουμε μια νέα γλώσσα απλά θα προσθέτουμε ένα πίνακα με την μετάφραση της επιθυμητής γλώσσας.
Παραθέτω και ένα αρχικό δείγμα του κώδικα χωρίς προστασία από λάθος επιλογή από τον χρήστη κτλ, ώστε έτσι να μπούμε όλοι στο πνεύμα.
ΥΓ: η μετάφραση μπορεί να γίνει ακόμη και με google translate αφού τα μηνύματα ήδη είναι πολύ απλά και μπορούν να γίνουν ακόμη πιο απλά, έτσι ώστε να είναι πιο εύκολη και αξιόπιστη η google μεταφρασή τους. ;-)
test.txt
Κλειστά όλα τα bugs και enhancements
Πέρασμα απο Shellcheck
Επικαιροποίηση του README (εάν χρειάζεται)
Επικαιροποίηση των contributors
Release Candidate tests
Επειδή είναι λίγο "αχνά" τα γράμματα, σκέφτομαι να τα αλλάξω σε πιο bold.
Σκεφτόμουν το gr928a-8x16.psfu
Αν έχετε κάποια πρόταση δείτε εδώ και πείτε τη γνώμη σας.
Εγκατέστησα με BTRFS για να έχω snapshot δυνατότητες με το Timeshift. Αλλά φαίνεται η εγκατάσταση με BTRFS δεν έχει γίνει με subvolumes
Παράδειγμα διαδικασίας εγκατάστασης arch σε btrfs with subvolumes https://gist.github.com/idvoretskyi/9a516921fab0ad4e3ea0
- Κλειστά όλα τα bugs και enhancements
- Πέρασμα από Shellcheck
- Επικαιροποίηση του README (εάν χρειάζεται)
- Επικαιροποίηση των contributors
- Release Candidate tests
Στο βήμα 11 η αποδεκτές απαντήσεις είναι y / n ή Y / N. Το θέμα είναι αν γράψεις YIOSHD ή NSSFS το δέχεται και πράτει ανάλογα. Άρα διαβάζει τον πρώτο χαρακτήρα.
Θα κάνω εγώ shellcheck στο archon.2
Δεν κάνει σωστά τον έλεγχο για root και την παρουσία Arch περιβάλλοντος
archon.sh: 5: archon.sh: [[: not found
archon.sh: 12: archon.sh: [[: not found
Couldn't get a file descriptor referring to the console
Υπάρχουν δυo περιπτώσεις που θες LTS
Προσπάθησα να κάνω εγκατάσταση σε δίσκο που είχε ήδη κάποιο partition με αποτέλεσμα οι εντολές parted και mkfs ναι με προειδοποιούν για αυτό και να μου δίνουν την επιλογή αν θέλω να συνεχίσω. Το πρόβλημα είναι ότι όπως φαίνεται και στην εικόνα αν επιλέξω "No" η εγκατάσταση συνεχίζει κανονικά χωρίς να διαμορφώσει σωστά τον δίσκο.
Νομίζω το πρόβλημα είναι ότι στις εντολές αυτές (parted και mkfs) δεν γίνεται κάποιος έλεγχος για το αν εκτελέστηκαν σωστά ή αν ο χρήστης τις ακύρωσε.
Μια λύση είναι στην αρχή του προγράμματος να βάλουμε set -e ούτως ώστε όταν κάποια εντολή αποτύχει το πρόγραμμα να κάνει exit. Αλλιώς μπορούμε ξεχωριστά για κάθε εντολή να ελέγχουμε αν εκτελέστηκε.
Κανονικά δεν χρειάζεται, μιας και οταν τρέχεις το liveCD είσαι ήδη root αλλά, ας υπάρχει
Έχει γίνει factor και merge το main archon.sh κώδικας που δίνει 14 διαθέσιμα προς εγκατάσταση γραφικά περιβάλλοντα.: Pull #61
Init commit for Desktop Environment help script after base system installation ..
Γίνετε να κάνετε τον Archon έτσι ώστε να εμφανίζονται οι εντολές πριν από την εκτέλεση τους;
Μια βελτίωση για Usability στα μηνύματα του Archon με προσθήκη Sleep εκεί που χρειάζεται κενά και λίγο πιο περιγραφικά μηνύματα (π.χ. βήμα 2/10).
Ένας κώδικας δεοντολογίας είναι το Α-Ω στην δημιουργία της κοινότητας
Στην περίπτωση που ο χρήστης διαβάσει το αρχικό μήνυμα και δε θέλει να προχωρήσει στην εγκατάσταση, να μπορεί να επιλέγει όχι
και να σταματάει το script.
το αρχείο archon.2 δεν ξεκινάει με
#!/bin/bash
Ένας τυπικώς έλεγχος για το αν τρέχει κανείς το Archon σε περιβάλλον Arch Linux θα είναι καλό να υπάρχει
Enlightenment Acpid iwd missing
- Κλειστά όλα τα bugs και enhancements
- Πέρασμα από Shellcheck
- Επικαιροποίηση του README (εάν χρειάζεται)
- Επικαιροποίηση των contributors
- Release Candidate tests
Κλειστά όλα τα bugs και enhancements
Πέρασμα απο Shellcheck
Επικαιροποίηση του README (εάν χρειάζεται)
Επικαιροποίηση των contributors
Θα πρέπει να συνταχθεί το αρχείο Contribute με οδηγίες για το πως και που θα δεχόμαστε συνεισφορά κώδικα
Εδώ μπορούμε να συζητήσουμε το post install script για εφαρμογές μετά την εγκατάσταση της βάσης του Arch
https://github.com/CerebruxCode/Archon/commits/develop/post_programs_installer.sh
Να ξεκαθαρίσουμε στην παρούσα φάση στο Readme, τι υποστηρίζει out of the box ώστε να μην χρειάζεται να κάνει ο χρήστης ερώτημα. Να το διαβάζει και να καταλαβαίνει.
Να διορθωθεί ως hotfix για την υπάρχουσα έκδοση.
Line 69 in 6f0f2cd
Σε περίπτωση που ο dev του systemd-swap προσθέσει/αφαιρέσει κάτι, υπάρχει περίπτωση να μετακινηθούν η γραμμές η να αλλάξει η αρίθμηση.
Αν η αλλαγή password του root χρήστη δεν είναι επιτυχής, να κάνουμε ένα while loop ούτως ώστε σε περίπτωση λάθους να μην προχωρά η εγκατάσταση.
Μπορούμε να το κάνουμε και για τον κανονικό χρήστη (αλλά νομίζω δεν είναι απαραίτητο)
Έχω ξεκινήσεις να το φτιάχνω, αυτήν την στιγμή είναι δυνατή η αυτοματοποίηση της εγκατάστασης του arch χωρίς επιλογές για dual boot. Θα περιμένω να τελειώσει το κομμάτι του dual boot για να προσθέσω τις αντίστοιχες επιλογές στο configuration.
Έχω φτιάξει ένα branch στο fork που έχω με όνομα external-conf οπότε μπορείτε να κάνετε και εσείς δοκιμές με αυτό.
Όλες οι επιλογές ρυθμίζονται από το αρχείο εκτός από τους κωδικούς χρήστη και root, τους οποίους πιστεύω για προφανείς λόγους θα ήταν καλύτερο να μην υπάρχουν στο αρχείο.
Ελπίζω ότι μόλις ολοκληρωθεί η έκδοση v2.0 με την συνένωση του κώδικα, θα μπορούμε στην v3.0 με το εξωτερικό Conf να προσθέσουμε σενάρια για dualboot
Εάν κάνεις εγκατάσταση και χρησιμοποιήσεις στατική ip, στο τέλος στη ρύθμιση του δικτύου το archon σε γυρνάει dhcp, και έτσι στην επανεκκίνηση αναγκάζεσαι να κάνεις ρύθμιση δικτύου. Αυτό ίσως να μπορεί να διορθωθεί?
Στον κώδικα δεν συμπεριλαμβάνεται η ανάγνωση τον nvme δίσκων. Καθώς προχωράει η τεχνολογία όλο και περισσότεροι nvme δίσκοι θα εμφανίζονται και πρέπει να υπάρχει και αυτή η επιλογή για τους χρήστες.
Προσπάθησα να εγκαταστήσω το archon σε VM από Parallels αλλά δυστυχώς το σύστημα παρουσιάζει πρόβλημα αμέσω μετά την εύρεση ως εξής:
Χρησιμοποιείς PC με UEFI
Error: Could not stat a device a - No such file or directory.
Retry/Cancel?
και μένει εκεί για πάντα
Στέλνω και screenshot από τη διαδικάσία
Καμμία ιδέα;
Αυτή την στιγμή φαίνεται υπάρχει πρόβλημα αναγνώρισης δίσκων Nvme σε UEFI.
Απο το ιστορικό φαίνεται οτι προκλήθηκαν από τo παρακάτω merge:
e83db57?diff=split#diff-3496f46409c23dd2361aae2c7d54e00aR661
Νομίζω ότι είναι καλό να δίνουμε την επιλογή του LTS πυρήνα αν ο χρήστης θέλει να το έχει για server ή γενικά θέλει κάτι πιο long term.
Προστέθηκε η δυνατότητα εγκατάστασης του Arch σε δεύτερο δίσκο και εγκατάστασης GRUB σε επιλεγμένο δίσκο για να αναγνωρίσει τα λειτουργικά του πρώτου δίσκου και να βάλει τα κατάλληλα entries
Pull #61
μολις δημιουργηθουν οι κατατμησεις και ξεκινα την εγατασταση:
/usr/bin/python3 : no module named Reflector και σε πεταει εξω
Να προσπαθήσουμε να ενοποιήσουμε τα 2 script σε ένα. Το πρόβλημα εντοπίζεται όταν γίνεται το chroot
για αυτό χρειάστηκε εξ αρχής να σπάσει το script σε 2.
Δεν κατεβαίνει σωστά το script από το shortlink. Κατεβαίνει χωρίς κατάληξη και επίσης το unzip δεν είναι εγκατεστημένο στο liveCD του Arch.
Για να το εγκαταστήσω χρειάστηκε να κατεβάσω manually τα 2 αρχεία (archon.sh και archon.2).
Κλειστά όλα τα bugs και enhancements
Δημιουργία shortlink https://git.io/Archon
Αφαίρεση δεύτερου wget απο το Archon.2
Επικαιροποίηση του README
Επικαιροποίηση Archon και Archon.2 με note στην αρχή για Άδεια και δημιουργούς
Yaourt is not safe for use according to arch wiki
https://wiki.archlinux.org/index.php/AUR_helpers#Discontinued_or_problematic
Its better to replace with aurman
https://aur.archlinux.org/packages/aurman/
Line 80 in f70bdc8
Υπάρχει ένα regrassion στο οποίο δεν ενεργοποιείται το Systemd-swap.
το journal εμφανίζει μήνυμα:
var-lib-systemd-swap-swapfc--1.swap : Value of What= not valid, not loaded.
Στο τερματικό φαίνεται οτι προσπαθεί να φτιάξει chunks και αποτυγχάνει και έπειτα ξανακάνει μια προσπάθεια.
Το yaourt δεν υποστηρίζεται από πλέον. Ή θα βάλουμε άλλον AUR helper ή θα το βγάλουμε εντελώς. Προτείνω να βάλουμε το aurman
ή το yay
.
Το μόνο πρόβλημα μας είναι ότι το makepkg δεν υποστηρίζει root περιβάλλον. Άρα όταν μπαίνουμε στο εγκατεστημένο arch πρέπει με κάποιον τρόπο να βγαίνουμε από το root και να το εγκαθιστούμε
git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si
cd ..
rm -r yay
Line 19 in 6f0f2cd
Σε περίπτωση που ο χρήστης έχει μόνο Wifi ή έχει ξεκινήσει την εγκατάσταση με χρήση Wifi, στην επανεκκίνηση δεν θα είναι συνδεδεμένος.
Έχω κάνει εγκατάσταση σεπραγματικό HW κάνοντας χρήση του σκριπτ από το branch develop και απέτυχε να σετάρει την ασύρματη κάρτα δικτύου, επίσης έβγαλε μνμ πως πέτυχε, αλλά φάνηκε από του printout των commands πως απέτυχε.
Originally posted by @dimkatsi91 in #69 (comment)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.