1

Je voudrais utiliser Gvc (libgnome-volume-control) as used in Gnome Shell GIR dans GJS, mais ne peux pas trouver un moyen d'y accéder, sauf dans l'environnement Gnome Shell (par exemple, une extension Gnome Shell). En fait, je ne peux même pas comprendre où c'est. Est-ce possible?Est-il possible d'importer le typelib Gvc en dehors de l'environnement Gnome Shell?

MISE À JOUR

Conformément à un commentaire de Philip Withnall (sur une solution de contournement hacky), je l'ai trouvé est possible d'importer comme ceci:

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; 

Répondre

1

Oui. Libgnome-volume-control est currently only meant to be used as a submodule

gnome-shell le répertorie dans son .gitmodules file pour importer le code, puis dans meson.build pour le construire.

Il devrait être possible d'utiliser libgnome-volume-control dans votre projet de la même manière.

(je déterminésses en utilisant git grep -i gvc sur le code gnome-shell.)

+0

Ah, malheureusement, mon projet est une GJS (uniquement) extension du shell, juste avec un démon GJS en cours d'exécution en dehors de l'environnement de Shell (puisque les extensions shell sont désactivé sur les changements "en mode session"). Répond toujours à ma question, merci pour la réponse rapide. –

+0

Ne pouvez-vous pas compiler libgvc en tant que sous-module et expédier '.so' et' .typelib' en privé à côté de votre démon? –

+0

Je pense que cela dépendrait de l'architecture non? Même si ce n'est pas le cas, l'étendue de la transparence dans le processus d'examen extensions.gnome.org est généralement "faire le travail" -> "rejeter/accepter". Je me demande si je pourrais déposer un bug sur l'envoi séparément car c'est ce que Cinnamon/Mint semble faire (gir1.2-cvc-1.0 dans les repos Ubuntu), ou s'il y a une bonne raison pour le sous-module. –