GithubHelp home page GithubHelp logo

cerebruxcode / archon Goto Github PK

View Code? Open in Web Editor NEW
49.0 7.0 13.0 589 KB

Ο πρώτος Ελληνικός Arch Linux Installer

License: GNU General Public License v3.0

Shell 100.00%
arch-linux archon installer greek arch archlinux

archon's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

archon's Issues

Εγκατάσταση σε Fast-mode

Αν έχω καταλάβει σωστά την φιλοσοφία του project, θα ήταν ωραίο να βάλουμε μια παράμετρο (επιλογή) με την οποία το script θα εκτελείτε αποφεύγοντας τις εντολές sleep για να μην είναι τόσο χρονοβόρα η διαδικασία για αυτούς που θα το χρησιμοποιήσουν για πολλές εγκαταστάσεις.
Σε συνδυασμό με το εξωτερικό configuratio αρχείο θα ήταν μια καλή επιλογή.

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

Πιστεύω ότι θα ήταν πιο ωραίο να μην εμφάνιζε τα αποτελέσματα της εντολής 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

Προετοιμασία της v2.0 release

  • Κλειστά όλα τα bugs και enhancements

  • Πέρασμα απο Shellcheck

  • Επικαιροποίηση του README (εάν χρειάζεται)

  • Επικαιροποίηση των contributors

  • Release Candidate tests

Αλλαγή του console font

Επειδή είναι λίγο "αχνά" τα γράμματα, σκέφτομαι να τα αλλάξω σε πιο bold.
Σκεφτόμουν το gr928a-8x16.psfu
Αν έχετε κάποια πρόταση δείτε εδώ και πείτε τη γνώμη σας.

Προετοιμασία της 4.0 release

  • Κλειστά όλα τα bugs και enhancements
  • Πέρασμα από Shellcheck
  • Επικαιροποίηση του README (εάν χρειάζεται)
  • Επικαιροποίηση των contributors
  • Release Candidate tests

Η εγκατάσταση δεν ακυρώνεται όταν κάποια εντολή αποτύχει

Προσπάθησα να κάνω εγκατάσταση σε δίσκο που είχε ήδη κάποιο partition με αποτέλεσμα οι εντολές parted και mkfs ναι με προειδοποιούν για αυτό και να μου δίνουν την επιλογή αν θέλω να συνεχίσω. Το πρόβλημα είναι ότι όπως φαίνεται και στην εικόνα αν επιλέξω "No" η εγκατάσταση συνεχίζει κανονικά χωρίς να διαμορφώσει σωστά τον δίσκο.

screenshot from 2017-09-27 14-15-41

Νομίζω το πρόβλημα είναι ότι στις εντολές αυτές (parted και mkfs) δεν γίνεται κάποιος έλεγχος για το αν εκτελέστηκαν σωστά ή αν ο χρήστης τις ακύρωσε.

Μια λύση είναι στην αρχή του προγράμματος να βάλουμε set -e ούτως ώστε όταν κάποια εντολή αποτύχει το πρόγραμμα να κάνει exit. Αλλιώς μπορούμε ξεχωριστά για κάθε εντολή να ελέγχουμε αν εκτελέστηκε.

Έλεγχος αν είναι Root

Κανονικά δεν χρειάζεται, μιας και οταν τρέχεις το liveCD είσαι ήδη root αλλά, ας υπάρχει

Νέο Dektop installer

Έχει γίνει factor και merge το main archon.sh κώδικας που δίνει 14 διαθέσιμα προς εγκατάσταση γραφικά περιβάλλοντα.: Pull #61

Ερώτηση Feature Request

Γίνετε να κάνετε τον Archon έτσι ώστε να εμφανίζονται οι εντολές πριν από την εκτέλεση τους;

Έλεγος αν τρέχει Arch

Ένας τυπικώς έλεγχος για το αν τρέχει κανείς το Archon σε περιβάλλον Arch Linux θα είναι καλό να υπάρχει

Προετοιμασία της v3.0 release

  • Κλειστά όλα τα bugs και enhancements
  • Πέρασμα από Shellcheck
  • Επικαιροποίηση του README (εάν χρειάζεται)
  • Επικαιροποίηση των contributors
  • Release Candidate tests

Προετοιμασία της v1.2 release

  • Κλειστά όλα τα bugs και enhancements

  • Πέρασμα απο Shellcheck

  • Επικαιροποίηση του README (εάν χρειάζεται)

  • Επικαιροποίηση των contributors

Contribute / συνεισφορά κώδικα

Θα πρέπει να συνταχθεί το αρχείο Contribute με οδηγίες για το πως και που θα δεχόμαστε συνεισφορά κώδικα

Duall boot υποστηρίζει το Archon v1.1;

Να ξεκαθαρίσουμε στην παρούσα φάση στο Readme, τι υποστηρίζει out of the box ώστε να μην χρειάζεται να κάνει ο χρήστης ερώτημα. Να το διαβάζει και να καταλαβαίνει.

Να διορθωθεί ως hotfix για την υπάρχουσα έκδοση.

Αν η αλλαγή password του root χρήστη δεν είναι επιτυχής

Αν η αλλαγή password του root χρήστη δεν είναι επιτυχής, να κάνουμε ένα while loop ούτως ώστε σε περίπτωση λάθους να μην προχωρά η εγκατάσταση.

Μπορούμε να το κάνουμε και για τον κανονικό χρήστη (αλλά νομίζω δεν είναι απαραίτητο)

Εξωτερικό configuration

Έχω ξεκινήσεις να το φτιάχνω, αυτήν την στιγμή είναι δυνατή η αυτοματοποίηση της εγκατάστασης του arch χωρίς επιλογές για dual boot. Θα περιμένω να τελειώσει το κομμάτι του dual boot για να προσθέσω τις αντίστοιχες επιλογές στο configuration.
Έχω φτιάξει ένα branch στο fork που έχω με όνομα external-conf οπότε μπορείτε να κάνετε και εσείς δοκιμές με αυτό.
Όλες οι επιλογές ρυθμίζονται από το αρχείο εκτός από τους κωδικούς χρήστη και root, τους οποίους πιστεύω για προφανείς λόγους θα ήταν καλύτερο να μην υπάρχουν στο αρχείο.

ip address

Εάν κάνεις εγκατάσταση και χρησιμοποιήσεις στατική ip, στο τέλος στη ρύθμιση του δικτύου το archon σε γυρνάει dhcp, και έτσι στην επανεκκίνηση αναγκάζεσαι να κάνεις ρύθμιση δικτύου. Αυτό ίσως να μπορεί να διορθωθεί?

Αδυναμία εύρεσης και τροποποίησης nvme δίσκων

Στον κώδικα δεν συμπεριλαμβάνεται η ανάγνωση τον nvme δίσκων. Καθώς προχωράει η τεχνολογία όλο και περισσότεροι nvme δίσκοι θα εμφανίζονται και πρέπει να υπάρχει και αυτή η επιλογή για τους χρήστες.

Εγκατάσταση σε VM με EFI (Επιλογή δίσκου)

Προσπάθησα να εγκαταστήσω το archon σε VM από Parallels αλλά δυστυχώς το σύστημα παρουσιάζει πρόβλημα αμέσω μετά την εύρεση ως εξής:

Χρησιμοποιείς PC με UEFI

Error: Could not stat a device a - No such file or directory.
Retry/Cancel?

και μένει εκεί για πάντα

Στέλνω και screenshot από τη διαδικάσία

Screen Shot 2020-05-08 at 5 57 15 PM

Καμμία ιδέα;

Επιλογή για LTS πυρήνα

Νομίζω ότι είναι καλό να δίνουμε την επιλογή του LTS πυρήνα αν ο χρήστης θέλει να το έχει για server ή γενικά θέλει κάτι πιο long term.

no module named reflector

μολις δημιουργηθουν οι κατατμησεις και ξεκινα την εγατασταση:
/usr/bin/python3 : no module named Reflector και σε πεταει εξω

Ενοποίηση του archon.sh και του archon.2

Να προσπαθήσουμε να ενοποιήσουμε τα 2 script σε ένα. Το πρόβλημα εντοπίζεται όταν γίνεται το chroot για αυτό χρειάστηκε εξ αρχής να σπάσει το script σε 2.

Δεν κατεβαίνει σωστά το script από το shortlink

Δεν κατεβαίνει σωστά το script από το shortlink. Κατεβαίνει χωρίς κατάληξη και επίσης το unzip δεν είναι εγκατεστημένο στο liveCD του Arch.

Για να το εγκαταστήσω χρειάστηκε να κατεβάσω manually τα 2 αρχεία (archon.sh και archon.2).

Προετοιμασία της v1.1

  • Κλειστά όλα τα bugs και enhancements

  • Δημιουργία shortlink https://git.io/Archon

  • Αφαίρεση δεύτερου wget απο το Archon.2

  • Επικαιροποίηση του README

  • Επικαιροποίηση Archon και Archon.2 με note στην αρχή για Άδεια και δημιουργούς

Το Systemd-swap δεν ενεργοποιείται

############################ Installing Zswap ###############################

Υπάρχει ένα regrassion στο οποίο δεν ενεργοποιείται το Systemd-swap.

το journal εμφανίζει μήνυμα:

var-lib-systemd-swap-swapfc--1.swap : Value of What= not valid, not loaded.

Στο τερματικό φαίνεται οτι προσπαθεί να φτιάξει chunks και αποτυγχάνει και έπειτα ξανακάνει μια προσπάθεια.

Το yaourt δεν υποστηρίζεται πλέον

Το 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

Δεν έχω Ethernet αλλά μόνο Wifi

ethernet=$(ip link | grep "2: "| grep -oE "(en\w+)")

Σε περίπτωση που ο χρήστης έχει μόνο Wifi ή έχει ξεκινήσει την εγκατάσταση με χρήση Wifi, στην επανεκκίνηση δεν θα είναι συνδεδεμένος.

κάνοντας χρήση του σκριπτ develop απέτυχε ασύρματη κάρτα δικτύου

Έχω κάνει εγκατάσταση σεπραγματικό HW κάνοντας χρήση του σκριπτ από το branch develop και απέτυχε να σετάρει την ασύρματη κάρτα δικτύου, επίσης έβγαλε μνμ πως πέτυχε, αλλά φάνηκε από του printout των commands πως απέτυχε.

Originally posted by @dimkatsi91 in #69 (comment)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.