Σελίδα 1 από 1

Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Κυρ Ιουν 07, 2015 09:34 am
από dglent
Έκανα μια νέα εγκατάσταση με Cauldron RC 5, δεν μπορώ να ανοίξω το msecgui «Ασφάλεια» > «Ρυθμίστε την ασφάλεια του συστήματος, τις άδειες και τους ελέγχους ασφαλέιας»

Αν το εκτελέσω από το τερματικό (ως διαχειριστής):

Κώδικας: Επιλογή όλων

Traceback (most recent call last):
  File "/usr/share/msec/msecgui.py", line 1791, in <module>
    gui = MsecGui(log, msec, perms, msec_config, perm_conf, exceptions, embed=PlugWindowID)
  File "/usr/share/msec/msecgui.py", line 248, in __init__
    self.main_notebook.append_page(self.create_summary_ui(), Gtk.Label(label=_("Overview")))
  File "/usr/share/msec/msecgui.py", line 664, in create_summary_ui
    label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xce in position 0: ordinal not in range(128)
Είναι σε python θα μπορέσω να το δω αλλά θα ήθελα να ξέρω αν συμβαίνει και σε άλλους.
Το περιβάλλον θα πρέπει να είναι σε ελληνική γλώσσα ώστε να βγάλει το παραπάνω unicode error

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Κυρ Ιουν 07, 2015 09:48 am
από airmaik
το ιδιο πρόβλημα έχω και εγώ

Κώδικας: Επιλογή όλων

Traceback (most recent call last):
  File "/usr/share/msec/msecgui.py", line 1789, in <module>
    gui = MsecGui(log, msec, perms, msec_config, perm_conf, exceptions, embed=PlugWindowID)
  File "/usr/share/msec/msecgui.py", line 173, in __init__
    self.reload_config()
  File "/usr/share/msec/msecgui.py", line 457, in reload_config
    self.exceptions.load()
  File "/usr/share/msec/config.py", line 319, in load
    self.log.info(_("loading exceptions file %s: %s") % (self.config, sys.exc_value[1]))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xce in position 0: ordinal not in range(128)

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Κυρ Ιουν 07, 2015 09:51 am
από dglent
Ευχαριστώ Πρόδρομε, με αυτήν την αλλαγή δουλεύει:

--- msecgui.origin.py 2015-05-20 01:05:09.000000000 +0200
+++ msecgui.py 2015-06-07 09:27:46.631790909 +0200
@@ -657,9 +657,11 @@
table.attach(label, 2, 3, row, row + 1, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, 0, 0, 0)
row += 1
for check, logfile, updated_n, updated in tools.periodic_check_status(log):
+ if isinstance(updated, str):
+ updated_uni = updated.decode('utf-8')
if not updated:
updated = _("Never")
- label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated))
+ label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated_uni))
label.set_property("xalign", 0.0)
table.attach(label, 2, 3, row, row + 1, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, 0, 0, 0)


δοκίμασέ το (είναι το αρχείο /usr/share/msec/msecgui.py στη γραμμή 660)

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Κυρ Ιουν 07, 2015 10:26 am
από dglent
Διορθώνω το παραπάνω

Κώδικας: Επιλογή όλων

--- msecgui.origin.py   2015-05-20 01:05:09.000000000 +0200
+++ msecgui.py  2015-06-07 10:23:23.124910462 +0200
@@ -659,6 +659,9 @@
         for check, logfile, updated_n, updated in tools.periodic_check_status(log):
             if not updated:
                 updated = _("Never")
+            else:
+                if isinstance(updated, str):
+                    updated = updated.decode('utf-8')
             label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated))
             label.set_property("xalign", 0.0)
             table.attach(label, 2, 3, row, row + 1, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, 0, 0, 0)
Μπορείς να δοκιμάσεις με

Κώδικας: Επιλογή όλων

LC_ALL=C msecgui
για να αφαιρέσεις προσωρινά το ελληνικό περιβάλλον

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Δευ Ιουν 08, 2015 13:18 pm
από dglent

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Τρί Ιουν 09, 2015 06:37 am
από dglent
Πρόδρομε,

αντέγραψε το παρακάτω και σώστο σε ένα αρχείο κειμένου με όνομα αρχείου msecgui-unicode.patch

Κώδικας: Επιλογή όλων

--- /usr/share/msec/msecgui.py	2015-05-20 01:05:09.000000000 +0200
+++ /usr/share/msec/msecgui.patched.py	2015-06-07 19:29:55.161228339 +0200
@@ -659,7 +659,11 @@
         for check, logfile, updated_n, updated in tools.periodic_check_status(log):
             if not updated:
                 updated = _("Never")
-            label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated))
+            try:
+                label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated))
+            except UnicodeDecodeError:
+                updated = updated.decode('utf-8')
+                label = Gtk.Label(label=_("Check: %s. Last run: %s") % (check, updated))
             label.set_property("xalign", 0.0)
             table.attach(label, 2, 3, row, row + 1, Gtk.AttachOptions.EXPAND | Gtk.AttachOptions.FILL, 0, 0, 0)

Στη συνέχεια εκτέλεσε ως root και από τον κατάλογο που έχεις αποθηκεύσει το αρχείο:

Κώδικας: Επιλογή όλων

[root@localhost dglent]# patch -p0 /usr/share/msec/msecgui.py msecgui-unicode.patch

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Τετ Ιουν 10, 2015 20:13 pm
από airmaik
δεν μου το ανοίγει ακόμα

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Τετ Ιουν 10, 2015 20:42 pm
από dglent
Για τρέξτο από το τερματικό να δούμε

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Πέμ Ιουν 11, 2015 19:08 pm
από airmaik

Κώδικας: Επιλογή όλων

patching file /usr/share/msec/msecgui.py
patch unexpectedly ends in middle of line
Hunk #1 succeeded at 659 with fuzz 2.

Re: Ελληνικοί χαρακτήρες στο msecgui

Δημοσιεύτηκε: Παρ Ιουν 12, 2015 05:37 am
από dglent
Άνοιξε πάλι το αρχείο msecgui-unicode.patch και πρόσθεσε μια γραμμή στο τέλος

στη συνέχεια διέγραψε αν έχουν δημιουργηθεί τα
/usr/share/msec/msecgui.py.rej
/usr/share/msec/msecgui.patched.py

λόγω της αποτυχίας παρσαρίσματος

στη συνέχεια για να επαναφέρεις τα αρχικά αρχεία:

Κώδικας: Επιλογή όλων

urpmi --replacefiles --replacepkgs msec-gui
Και ξανά:

Κώδικας: Επιλογή όλων

patch -p0 /usr/share/msec/msecgui.py msecgui-unicode.patch