Universal Source Manifest

Billy Barrow d0fbc06eaa Make build path optional for install verb 10 месяцев назад
scripts 180529cbea Fix acquire script 10 месяцев назад
src d0fbc06eaa Make build path optional for install verb 10 месяцев назад
.gitignore 2aa0c9dcbb Initial commit 10 месяцев назад
MANIFEST.usm 449925f716 More features 10 месяцев назад
README.md 2aa0c9dcbb Initial commit 10 месяцев назад

README.md

Universal Source Manifest

Manifest format (MANIFEST.usm)

{
  "name": "my-package",
  "version": "1.0.5+2",
  "summary": "A sample package",
  "licences": [ {"name": "GPLv3", "category": "libre", "text": "src/LICENSE"} ],
  "provides": {
    "bin:hello-world": "hello-world",
    "app:hello-world.desktop": "hello-world.desktop",
    "res:usr/share/icons/hicolor/scalable/hello-world.svg": "icons/hello-world.svg"
  },
  "depends": {
    "runtime": [
      "lib:libgtk-4.so.1",
    ],
    "build": [
      "bin:valac",
      "bin:meson",
      "inc:gtk-4.0"
    ],
    "manage": [
      "bin:bash"
    ]
  },
  "execs": {
    "install": "usp-exec/install",
    "remove": "usp-exec/remove",
    "build": "usp-exec/build",
    "rebuild": "usp-exec/rebuild"
  }
}

Optional extended properties

{
  "md": "src/DESCRIPTION.md",
  "url": "https://my.package.com",
  "screenshots": [ "hello-world-screenshot.png" ],
  "icon": "hello-world.svg",
  "git": { "origin": "https://git.my.package.com/hello-world", "commit": "8d9f3b198e3a767d41f3c33fac2fbd8496f23ed2" },
  "metainfo": "hello-world.appdata.xml",
  "extras": { "customData": "whatever" }
}

Resource types

  • "res": Generic resource: file path without leading "/"
  • "bin": Binary executable: file name locatable in $PATH
  • "lib": Shared library: file name locatable by LD
  • "app": Desktop entry: file name in /usr/share/applications
  • "inc": Include: file name in /usr/include