Centralized graphedit plugin database
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
gtz-agent 416158ba7d feat(db): register TAPN 1.0.0
TAPN and TAPN Views 1.0.0 of graphedit-tapn (timed-arc Petri nets) for
linux-x86_64 and windows-x86_64.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KBTirfCEWY1pj2vppMPxeH
2026-10-11 19:25:40 +02:00
scripts feat(db): list the builds of plugins by platform 2026-10-07 23:05:18 +02:00
LICENSE feat(db): the plugin database of graphedit, with NTTA and NTTA Views 2.0.0 2026-10-07 22:38:47 +02:00
plugins.json feat(db): register TAPN 1.0.0 2026-10-11 19:25:40 +02:00
README.md feat(db): register TAPN 1.0.0 2026-10-11 19:25:40 +02:00

graphedit-plugindb

The plugin database of graphedit: the plugins that the plugins panel of the editor can install.

Using it

Add the url of plugins.json to the plugin databases of the editor settings (pluginDatabases in ~/.config/graphedit/settings.json):

https://git.gtz.dk/agj/graphedit-plugindb/raw/branch/main/plugins.json

The plugins panel lists the plugins of the database. Install downloads the library into the plugin directory of the user (~/.local/share/graphedit/plugins); the editor loads it after a restart.

Plugins

Plugin Repository Contents
NTTA graphedit-ntta networks of tick tock automata: the syntax, the checker, aaltitoad and H-UPPAAL import and export
NTTA Views graphedit-ntta how NTTA models look in the editor (install it together with NTTA)
TAPN graphedit-tapn timed-arc Petri nets: the syntax, TAPAAL import and export, and checking and debugging with verifytapn-ls (installed separately)
TAPN Views graphedit-tapn how TAPN models look in the editor (install it together with TAPN)

The format

plugins.json is the document that graphedit reads (see "Plugin databases" in docs/file-format.md of graphedit):

{
    "db": {
        "<plugin name>": {
            "<version>": {
                "<os>-<arch>": "<url of the plugin library>"
            }
        }
    }
}
  • The plugin name is the name of the plugin's metadata, the version its version.
  • A version has a build per platform: <os>-<arch>, where the os is linux, windows or macos and the arch the cpu architecture as Qt names it (x86_64, arm64), e.g. linux-x86_64. The editor offers the versions that have a build for its platform. (A url instead of the object is a build for every platform, which only suits plugins without native code; graphedit before 2.1 only reads that form.)
  • Every url points to one plugin library (e.g. a release asset). The file name of the url is the name of the installed file, so it must be the name of the library (libgraphedit-ntta.so). Plugins that consist of several libraries (like a core plugin and its gui plugin) are registered as several plugins.
  • Plugins must be built against the same major version of graphedit and the same Qt as the editor that loads them.

Registering a plugin

  1. Publish the plugin libraries of a release of the plugin for each platform, e.g. as assets of a release v<version> of its repository.
  2. Add the plugin (or the version, or the platform) to plugins.json, and the plugin to the table above.
  3. Check it: scripts/check.sh --fetch (the form, the formatting, and that every url can be downloaded).
  4. Commit it (conventional commits: feat(db): register NTTA 2.0.1).