在 Ubuntu 14.04 上将 gnomekeyring 模块与 Python 和 GTK3 结合使用
Use gnomekeyring module with Python and GTK3 on Ubuntu 14.04
我正在使用 Linux Mint 17,基于 Ubuntu 14.04
我已经安装:
- python-gnomekeyring 2.3.2#
- python-gi 3.12
- python-gtk2 2.24
我有以下脚本:
#!/usr/bin/python
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
import gnomekeyring
但是我得到一个错误:
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning:
g_boxed_type_register_static: assertion 'g_type_from_name (name) == 0'
failed import gobject._gobject
我该怎么做才能解决这个问题?
编辑:
python-gnomekeyring使用Gtk+2,不能和Gtk+3在同一个进程中使用。
您应该可以使用来自 gi.repository 的 GnomeKeyring-1.0:
import gi
gi.require_version('Gtk', '3.0')
gi.require_version('GnomeKeyring', '1.0')
from gi.repository import Gtk, GnomeKeyring
正如 oxidworks 在评论中指出的那样,当前的 GnomeKeyring 已将其全部标记为 API 已弃用:libsecrets "Secret" D-Bus API(在 GNOME 上由 GNOME 密钥环提供)应该能够做同样的事情。
有一个 Python API reference but the canonical reference has some python examples 以及关于从 gnome-keyring 迁移的建议——但请注意,后者将主要讨论 C API.
我正在使用 Linux Mint 17,基于 Ubuntu 14.04
我已经安装:
- python-gnomekeyring 2.3.2#
- python-gi 3.12
- python-gtk2 2.24
我有以下脚本:
#!/usr/bin/python
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
import gnomekeyring
但是我得到一个错误:
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning: g_boxed_type_register_static: assertion 'g_type_from_name (name) == 0' failed import gobject._gobject
我该怎么做才能解决这个问题?
编辑:
python-gnomekeyring使用Gtk+2,不能和Gtk+3在同一个进程中使用。
您应该可以使用来自 gi.repository 的 GnomeKeyring-1.0:
import gi
gi.require_version('Gtk', '3.0')
gi.require_version('GnomeKeyring', '1.0')
from gi.repository import Gtk, GnomeKeyring
正如 oxidworks 在评论中指出的那样,当前的 GnomeKeyring 已将其全部标记为 API 已弃用:libsecrets "Secret" D-Bus API(在 GNOME 上由 GNOME 密钥环提供)应该能够做同样的事情。
有一个 Python API reference but the canonical reference has some python examples 以及关于从 gnome-keyring 迁移的建议——但请注意,后者将主要讨论 C API.