Αποστολέας Θέμα: προσθήκη εικονιδίου γλώσσας για όλους τους χρήστες  (Αναγνώστηκε 1796 φορές)

ChrsMel

  • Βετεράνος
  • ****
  • Μηνύματα: 76
Πώς μπορώ να προσθέσω εικονίδιο γλώσσας για όλους τους χρήστες (μέσω script ή αντιγραφής κάποιου αρχείου)
ή να δημιουργείται αυτόματα το εικονίδιο κατά τη δημιουργία του χρήστη;
Οι νέοι χρήστες έχουν εξ ορισμού το Atl-Shift αλλα όχι το εικονίδιο.

Wizard

  • Επισκέπτης
Απ: προσθήκη εικονιδίου γλώσσας για όλους τους χρήστες
« Απάντηση #1 στις: 27 Ιαν 2009, 02:33:18 μμ »
Για να έχουν οι χρήστες προκαθορισμένες αρχικές ρυθμίσεις στην επιφάνεια εργασίας τους, αυτό που κάνω είναι να φτιάξω έναν επιπλέον χρήστη, να κάνω όποιες ρυθμίσεις θέλω και μετά να κάνω copy και chown τον φάκελο ~/.gconf στον κανονικό χρήστη.
Κάπως έτσι:
Κώδικας: [Επιλογή]
sudo cp -r /home/MYDEFAULTUSER/.gconf  /home/user1/.gconf
sudo chown -R user1:user1 /home/user1/.gconf

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 4879
    • alkisg@im.sch.gr
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: προσθήκη εικονιδίου γλώσσας για όλους τους χρήστες
« Απάντηση #2 στις: 28 Ιαν 2009, 09:18:10 πμ »
Αυτό που είπε ο Wizard δουλεύει μια χαρά και είναι πολύ βολικό στην πράξη, τυπικά όμως δεν επιτρέπεται να αντιγράφουμε το φάκελο gconf, γιατί μπορεί να περιέχει και πληροφορίες με διαδρομές (paths) μέσα, οπότε εν τέλει κάποια εφαρμογή του user1 να ψάχνει στα αρχεία του MYDEFAULTUSER.

Ο προτεινόμενος τρόπος γι' αυτή τη δουλειά θα ήταν το πρόγραμμα επεξεργασίας προφίλ χρηστών sabayon. Όμως το είχαν παρατήσει και πρόσφατα άρχισαν πάλι τη συντήρησή του, από το Ubuntu 9.04 (Jaunty) και μετά θα το ξαναδούμε σε ενεργό δράση.

Επομένως μέχρι να ετοιμαστεί το sabayon γυρνάμε στη μέθοδο του Wizard, προσθέτοντας όμως κάποιες βελτιώσεις:
http://library.gnome.org/admin/system-admin-guide/stable/gconf-8.html.en
Ειδικά για τα panels είναι η παράγραφος 1.6.6.2.

Περιληπτικά όπως το δοκίμασα στην 8.10:
  • Συνδεόμαστε με συνεδρία επισκέπτη ώστε να έχουμε ένα καθαρό περιβάλλον (αν δεν έχουμε 8.10, συνδεόμαστε ως κάποιος καινούργιος χρήστης).
  • Προσαρμόζουμε τα panels όπως θέλουμε.
  • Εξάγουμε τις ρυθμίσεις των panels:
Κώδικας: Text
  1. gconftool-2 --dump /apps/panel > /tmp/my-panel-setup.entries
  2.  
  • Εάν θέλουμε, ανοίγουμε με το gedit το αρχείο /tmp/my-panel-setup.entries για να δούμε μήπως μας ξέφυγε κάποιο path (MYDEFAULTUSER κτλ). Για τη γλώσσα προφανώς δεν υπάρχει περίπτωση να μας ξέφυγε κάτι.
  • Αποσυνδεόμαστε από επισκέπτες και επιστρέφουμε στο λογαριασμό μας.
  • Δίνουμε το παρακάτω ώστε να προστεθούν οι ρυθμίσεις στο αρχείο προεπιλογών:
Κώδικας: Text
  1. sudo gconftool-2 --direct \
  2.   --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \
  3.   --load /tmp/my-panel-setup.entries
  4.  

Πλέον έχουμε αλλάξει τις προεπιλεγμένες ρυθμίσεις για τους νέους χρήστες. Για να τις εφαρμόσουμε σε κάποιον υπάρχοντα χρήστη, αρκεί να χρησιμοποιήσουμε το gconftool-2 για να διαγράψουμε το /apps/panel του χρήστη.


...γι' αυτό λέω να φτιάξουμε ένα όμορφο interface με μια συλλογή από scripts που να κάνουν αυτόματα όλα τα παραπάνω, ώστε να παιδεύεται μια φορά αυτός που τα βρίσκει και οι υπόλοιποι να κάνουν απλά 2-3 κλικ... :)

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 4879
    • alkisg@im.sch.gr
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: προσθήκη εικονιδίου γλώσσας για όλους τους χρήστες
« Απάντηση #3 στις: 20 Μάι 2009, 09:02:15 πμ »
Να και ένας πιο αυτοματοποιημένος τρόπος για την προσθήκη μόνο του εικονιδίου γλώσσας για όλους τους χρήστες, χωρίς να πειράζονται οι υπόλοιπες ρυθμίσεις των πινάκων. Απλά κατεβάζετε και εκτελείτε το συνημμένο script με την εντολή
Κώδικας: Text
  1. sudo sh add-keyboard-applet.sh
  2.  

Η παραπάνω εντολή το βάζει ως προεπιλογή για νέους χρήστες.

Για τους υπάρχοντες χρήστες δυσκολεύουν ελαφρώς τα πράγματα, επειδή θα πρέπει να εκτελεστεί η εντολή sh add-keyboard-applet.sh για κάθε χρήση ξεχωριστά!
Να δύο τρόποι για να γίνει αυτό, ο ένας άμεσος και ο άλλος κατά το logon.

1ος τρόπος:
Αν όλοι οι επιθυμητοί χρήστες ανήκουν σε κάποιο group, για παράδειγμα στο fuse ή στο students, τότε μπορείτε να κάνετε
Κώδικας: Text
  1. USERS=$(getent group fuse | cut -d':' -f4 | tr ',' "\n")
  2. for U in $USERS
  3. do
  4.   sudo su $U -c 'sh add-keyboard-applet.sh'
  5. done
  6.  
Προσέξτε το add-keyboard-applet.sh να είναι στον τρέχοντα κατάλογο, αλλιώς βάλτε το πλήρες μονοπάτι.

2ος τρόπος:
Μπορείτε να το αντιγράψετε στον κατάλογο /etc/profile.d ώστε να εκτελείται όταν συνδέεται κάποιος χρήστης:
Κώδικας: Text
  1.   sudo cp add-keyboard-applet.sh /etc/profile.d/add-keyboard-applet.sh
  2.   chmod +x /etc/profile.d/add-keyboard-applet.sh
  3.  
Όταν περάσουν αρκετές μέρες και έχουν συνδεθεί τουλάχιστον από μία φορά όλοι οι χρήστες, θυμηθείτε να το διαγράψετε με
Κώδικας: Text
  1.   sudo rm /etc/profile.d/add-keyboard-applet.sh
  2.