是否可以在 Gnome Shell 环境之外导入 Gvc 类型库?
Is it possible to import the Gvc typelib outside of the Gnome Shell environment?
我想在 GJS 中使用 Gvc(libgnome-volume-control) as used in Gnome Shell GIR,但除了在 Gnome Shell 环境中(例如 Gnome Shell extension)。其实,我什至不知道它在哪里。这可能吗?
更新
根据 Philip Withnall 的评论(关于一个 hacky workaround),我发现可以像这样导入:
const GIRepository = imports.gi.GIRepository;
GIRepository.Repository.prepend_search_path("/usr/lib/gnome-shell");
GIRepository.Repository.prepend_library_path("/usr/lib/gnome-shell");
const Gvc = imports.gi.Gvc;
是的。
libgnome-volume-control currently only meant to be used as a submodule. gnome-shell lists it in its .gitmodules
file to import the code, and then in meson.build
构建它。
应该可以在您的项目中类似地使用 libgnome-volume-control。
(我在 gnome-shell 代码上使用 git grep -i gvc
确定了这一点。)
我想在 GJS 中使用 Gvc(libgnome-volume-control) as used in Gnome Shell GIR,但除了在 Gnome Shell 环境中(例如 Gnome Shell extension)。其实,我什至不知道它在哪里。这可能吗?
更新
根据 Philip Withnall 的评论(关于一个 hacky workaround),我发现可以像这样导入:
const GIRepository = imports.gi.GIRepository;
GIRepository.Repository.prepend_search_path("/usr/lib/gnome-shell");
GIRepository.Repository.prepend_library_path("/usr/lib/gnome-shell");
const Gvc = imports.gi.Gvc;
是的。
libgnome-volume-control currently only meant to be used as a submodule. gnome-shell lists it in its .gitmodules
file to import the code, and then in meson.build
构建它。
应该可以在您的项目中类似地使用 libgnome-volume-control。
(我在 gnome-shell 代码上使用 git grep -i gvc
确定了这一点。)