Το πρόβλημα με τα δικαιώματα στα flatpaks

Η λύση είναι να μεταφέρει ο δημιουργός της διανομής το θέμα του σε Flatpak. Στο Pop OS για παράδειγμα αυτό έχει υλοποιηθεί για dark/light theme.

Αυτό περισσότερο έχει να κάνει με το ότι ο μέσος χρήστης δεν καταλαβαίνει τι ακριβώς σημαίνει sandboxing μιας εφαρμογής. Και sandboxing σημαίνει περιορισμούς στο τι ακριβώς μπορεί να κάνει ένα πρόγραμμα. Είναι λοιπόν θέμα εξοικείωσης με την τεχνολογία. Ακόμα θυμάμαι τις “γκρίνιες” όταν κάποια προγράμματα απαγόρευσαν το τρέξιμο τους σαν root, ή όταν κάποιες διανομές πέρασαν στο sudo.

Εδώ έχουμε την κατάρα των διαλόγων των Windows θέλεις να κάνεις αυτό; Ο μέσος χρήστης δεν καταλαβαίνει τι τον ρωτάει ο υπολογιστής. Οι χρήστες των Windows ακολουθούσαν μια από τις δυο στρατηγικές. Να λένε πάντα ΟΧΙ τις πρώτες μέρες, για να καταλήξουν μετά από λίγες μέρες να λένε πάντα ΝΑΙ. Ο μέσος χρήστης του Android θα κάνει το ίδιο. Όσο για την εμπειρία χρήσης, όλοι μας αγαπούσαμε το UAC των Windows, έτσι δεν είναι;

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

Το μόνο πρόβλημα είναι άλλο, πως ο ίδιος ο προγραμματιστής καθορίζει ότι θέλει, αν έχεις όμως αμφιβολίες για την εντιμότητα (ή την ικανότητα) του κάθε προγραμματιστή που τρέχεις ένα πρόγραμμα του, τότε έχεις έτσι και αλλιώς κάποιο πρόβλημα. Και παρακάμπτοντας την κάθε διανομή, που μπορεί να θέλει να έχει την δική της πολιτική ασφάλειας και έλεγχο για το τι βάζει μέσα, σαν δημιουργός μιας διανομής χάνεις τον έλεγχο για λογαριασμό των χρηστών σου. Εδώ θα πρέπει να βρεθεί κάποια λύση, το κλασικό πακετάρισμα δεν είναι λύση, μιας και συνήθως δεν κάνεις χωριστό sandboxing. Ίσως στο μέλλον δούμε διανομές να ακολουθούν μια τέτοια προσέγγιση.

Με βάση τα παραπάνω, αυτή είναι η καλύτερη λύση. Το flatseal έχει παρουσιαστεί εδώ μέσα. Αυτό που χρειάζεται όμως είναι η ενσωμάτωση του στο shop της κάθε διανομής καθώς και στο control panel. Το gnome είναι στο σωστό δρόμο

Μα η ενσωμάτωση έχει γίνει με κάποιο API. Και αυτό αφορά μόνο όσους φτιάχνουν τα ToolBoxes έτσι και αλλιώς. Κανένας δεν θα ξεκινήσει μια εφαρμογή λέγοντας, α θα ξεκινήσω φτιάχνοντας το δικό μου gtk/qt. Και είναι καλύτερα έτσι. Αν κάποιος θέλει να ανοίξει ένα αρχείο δεν θα αλλάξει καθόλου ο κώδικας, ούτε πρέπει να μάθει να χρησιμοποιεί ένα καινούργιο παράξενο API αν θέλει να κάνει χρήση των Flatpaks. Απλά πακετάρεις την εφαρμογή και δουλεύει. Η δύναμη του abstraction.

Αυτό είναι πράγματι μια μεγάλη κουβέντα, αλλά να θυμίσω την προηγούμενη προσπάθεια το LSB; Αυτή την στιγμή η τάση είναι σε OS Tree σε immutable root με Wayland και polikit και dbus. Είναι ένας μακρύς δρόμος και όταν βαδίζεις ένα δρόμο τον βλέπεις. Σιγά σιγά οι διανομές θα κάνουν καλύτερη ενσωμάτωση των Flatpak και οι χρήστες θα ξέρουν τι να περιμένουν. Θα πρέπει να μάθουμε πολλά νέα πράγματα, να αλλάξουμε κάποιες συνήθειες. Το Android κάπως μας εκπαίδευσε. Η μπορεί κάποια ομάδα αύριο να παρουσιάσει κάποια καλύτερη λύση, ποτέ δεν ξέρεις.

Στα κλειστά λειτουργικά η ανάπτυξη γίνετε και πίσω απο κλειστές πόρτες. Ο τελικός χρήστης παίρνει ένα έτοιμο προϊόν και δεν βλέπει ποτέ, ούτε μπορεί να εκφέρει γνώμη για την εξέλιξη των τεχνολογιών που θα χρησιμοποιήθουν. Εμείς οι χρήστες του Linux όμως βλέπουμε όλο τον δρόμο, αν και συχνά δεν ξέρουμε τον προορισμό, γιατί κάποιες φορές είμαστε προσκολλημένοι στο αγνό μας παρελθόν. Μέσα στις χαρές του ταξιδιού είναι και αυτές οι συζητήσεις.

1 «Μου αρέσει»