LINUX.ORG.RU

Gnome3@Extensions. Как создавать свои расширения?

 , , , ,


0

1

Коллеги, озадачился созданием своего расширения для Gnome 3.
Естественно начал с генерации шаблона:

    $ gnome-shell-extension-tool --create-extension
Создались файлы шаблона.
    stylesheet.css
    extension.js
    metadata.json
Из названий понятно для чего эти файлы предназначены.

extension.js
В первых строках extension.js идет определение интерфейсов, используемых в скрипте.
    const St = imports.gi.St;
    const Mainloop = imports.mainloop;
    const Main = imports.ui.main;

Что означает каждая строка и что за ней кроется? Укажите, плз, где про это почитать или объясните.

В других расширениях этих определений побольше.

    const Main = imports.ui.main;
    const Soup = imports.gi.Soup;
    const Lang = imports.lang;
    const Config = imports.misc.config;
    const MessageTray = imports.ui.messageTray;
    const ExtensionSystem = imports.ui.extensionSystem;
    const FileUtils = imports.misc.fileUtils;
    const Gio = imports.gi.Gio;
    const GLib = imports.gi.GLib;
    const Gettext = imports.gettext.domain('gnome-shell-extension-updater');
    const _ = Gettext.gettext;


Вопросы те же.



Последнее исправление: Axa (всего исправлений: 2)

Немного офтоп, но не хочу отдельную тему создавать, существует ли механизм автоматического обновления этих расширений не из репозитария? Ну, т.е. что-то вроде как у фокса. Или надо вручную за ними следить, качать, обновлять?

Ok
()
Ответ на: комментарий от Ok

https://extensions.gnome.org/about/

How do I update my extensions?

To update your extension to the latest version, go to the extension's page, or the «Installed Extensions» page, and click the green update arrow. If there is no arrow, your extensions should be fully up to date.

An automatic updating extension framework has been added to GNOME 3.6, which should update your extensions automatically.

olibjerd ★★★★★
()
Ответ на: комментарий от Ok

Осталось узнать когда они перестанут устаревать после каждого обновления гнома. Или когда их начнут регулярно обновлять.

kerneliq ★★★★★
()
Ответ на: Этта.... от Axa

А где посмотреть список библиотек и функций?

Должно работать с любой библиотекой, обмазанной gobject-introspection.
ls /usr/share/gir-1.0/

ratvier ★★
()
const St = imports.gi.St;

GObject Introspection.

const Mainloop = imports.mainloop;

GLib MainLoop.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.