Universal Source Manifest

Billy Barrow a582b3e052 Implement remove verb vor 10 Monaten
scripts 180529cbea Fix acquire script vor 10 Monaten
src a582b3e052 Implement remove verb vor 10 Monaten
.gitignore 2aa0c9dcbb Initial commit vor 10 Monaten
MANIFEST.usm 449925f716 More features vor 10 Monaten
README.md 2aa0c9dcbb Initial commit vor 10 Monaten

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