]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
flatpak: Add manifests
authorLorenz Wildberg <lorenz@wild-fisch.de>
Mon, 10 Apr 2023 19:56:32 +0000 (21:56 +0200)
committerRico Tzschichholz <ricotz@ubuntu.com>
Tue, 30 May 2023 12:23:25 +0000 (14:23 +0200)
org.freedesktop.Sdk.Extension.vala-nightly builds the Vala Sdk extension
and dev.vala.valac is for quickly providing a development environment.

.gitignore
build-aux/flatpak/dev.vala.valac.json [new file with mode: 0644]
build-aux/flatpak/org.freedesktop.Sdk.Extension.vala-nightly.appdata.xml [new file with mode: 0644]
build-aux/flatpak/org.freedesktop.Sdk.Extension.vala-nightly.yml [new file with mode: 0644]

index 21a2dba5a5ce6c1c57bda2b5daa5e9e3e795da22..51191aa0d15ff4473dd4d426e8976479f22b1cca 100644 (file)
@@ -12,7 +12,13 @@ Makefile
 .libs
 libvala-*.vapi
 
-build-aux
+build-aux/compile
+build-aux/depcomp
+build-aux/install-sh
+build-aux/ltmain.sh
+build-aux/missing
+build-aux/test-driver
+build-aux/ylwrap
 config.*
 aclocal.m4
 autom4te.cache
@@ -40,3 +46,5 @@ Makecache
 
 *.dll
 *.exe
+
+.flatpak-builder
\ No newline at end of file
diff --git a/build-aux/flatpak/dev.vala.valac.json b/build-aux/flatpak/dev.vala.valac.json
new file mode 100644 (file)
index 0000000..8ac0caf
--- /dev/null
@@ -0,0 +1,41 @@
+{
+    "id": "dev.vala.valac",
+    "runtime": "org.gnome.Platform",
+    "sdk": "org.gnome.Sdk",
+    "runtime-version": "44",
+    "sdk-extensions" : [
+        "org.freedesktop.Sdk.Extension.vala"
+    ],
+    "build-options": {
+        "append-path" : "/usr/lib/sdk/vala/bin",
+        "append-ld-library-path" : "/usr/lib/sdk/vala/lib"
+    },
+    "command": "valac",
+    "modules": [
+        {
+            "name": "valac",
+            "buildsystem": "autotools",
+            "sources": [
+                {
+                    "type": "git",
+                    "url": "https://gitlab.gnome.org/gnome/vala",
+                    "branch": "main"
+                }
+            ],
+            "run-tests": true,
+            "modules": [
+                {
+                    "name": "graphviz",
+                    "buildsystem": "autotools",
+                    "sources": [
+                        {
+                            "type": "archive",
+                            "url": "https://gitlab.com/graphviz/graphviz/-/archive/7.1.0/graphviz-7.1.0.tar.gz",
+                            "sha256": "8b28a283644a8442e6925b15d95055228d25172c7c30681810625616cbb23913"
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}
diff --git a/build-aux/flatpak/org.freedesktop.Sdk.Extension.vala-nightly.appdata.xml b/build-aux/flatpak/org.freedesktop.Sdk.Extension.vala-nightly.appdata.xml
new file mode 100644 (file)
index 0000000..62b02d5
--- /dev/null
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2022 Lorenz Wildberg <lorenz@wild-fisch.de> -->
+<component type="runtime">
+  <id>
+    org.freedesktop.Sdk.Extension.vala-nightly
+  </id>
+  <metadata_license>
+    CC0-1.0
+  </metadata_license>
+  <name>
+    Vala nightly Sdk extension
+  </name>
+  <summary>
+    An object-oriented programming language with a self-hosting compiler that
+    generates C code and uses the GObject system
+  </summary>
+  <description>
+    <p>
+      Vala is a programming language using modern high level abstractions
+      without imposing additional runtime requirements and without using
+      a different ABI compared to applications and libraries written in C.
+      Vala uses the GObject type system and has additional code generation
+      routines that make targeting the GNOME stack simple.
+      Vala has many other uses where native binaries are required.
+    </p>
+  </description>
+  <project_license>
+    LGPL-2.1-only
+  </project_license>
+  <url type="homepage">
+    https://wiki.gnome.org/Projects/Vala/
+  </url>
+  <url type="bugtracker">
+    https://gitlab.gnome.org/GNOME/vala/-/issues
+  </url>
+  <translation/>
+  <update_contact>
+    lorenz@wild-fisch.de
+  </update_contact>
+  <releases>
+    <release version="0.57.1"/>
+  </releases>
+</component>
diff --git a/build-aux/flatpak/org.freedesktop.Sdk.Extension.vala-nightly.yml b/build-aux/flatpak/org.freedesktop.Sdk.Extension.vala-nightly.yml
new file mode 100644 (file)
index 0000000..39776e2
--- /dev/null
@@ -0,0 +1,117 @@
+id: "org.freedesktop.Sdk.Extension.vala-nightly"
+branch: "master"
+runtime: "org.freedesktop.Sdk"
+build-extension: true
+sdk: "org.freedesktop.Sdk"
+runtime-version: "22.08"
+sdk-extensions: ["org.freedesktop.Sdk.Extension.vala"]
+separate-locales: false
+appstream-compose: false
+build-options:
+  prefix: "/usr/lib/sdk/vala-nightly"
+  prepend-pkg-config-path: "/usr/lib/sdk/vala-nightly/lib/pkgconfig/:/usr/lib/sdk/vala/lib/pkgconfig/"
+  prepend-path: "/usr/lib/sdk/vala-nightly/bin/:/usr/lib/sdk/vala/bin/"
+cleanup:
+  - "/share/info"
+  - "/share/man"
+  - "/share/doc"
+  - "/share/gir-1.0"
+  - "/lib/girepository-1.0"
+  - "/share/aclocal"
+  - "/include"
+  - "/lib/pkgconfig"
+  - "*.la"
+  - "/share/vala/Makefile.vapigen"
+  - "/lib/libgvpr.so*"
+  - "/share/graphviz/gvpr"
+modules:
+  - name: valac
+    buildsystem: autotools
+    sources:
+      - type: git
+        url: https://gitlab.gnome.org/gnome/vala.git
+        branch: main
+        disable-shallow-clone: true
+    run-tests: false
+    modules:
+      - name: graphviz
+        buildsystem: autotools
+        sources:
+          - type: archive
+            url: "https://gitlab.com/graphviz/graphviz/-/archive/7.1.0/graphviz-7.1.0.tar.gz"
+            sha256: "8b28a283644a8442e6925b15d95055228d25172c7c30681810625616cbb23913"
+            x-checker-data:
+              type: anitya
+              project-id: 1249
+              stable-only: true
+              url-template: "https://gitlab.com/graphviz/graphviz/-/archive/$version/graphviz-$version.tar.gz"
+        cleanup: ["/include", "*.pc", "/share/graphviz/doc", "/bin"]
+      - name: dbus-run-session
+        sources:
+          - type: archive
+            url: "https://gitlab.freedesktop.org/dbus/dbus/-/archive/dbus-1.15.4/dbus-dbus-1.15.4.tar.gz"
+            sha256: "dc31de363ae150d3caef7a5b5afd0b1205c74a743fe17a446a2f049a1dde5e60"
+            x-checker-data:
+              type: anitya
+              project-id: 5356
+              stable-only: true
+              url-template: "https://gitlab.freedesktop.org/dbus/dbus/-/archive/dbus-$version/dbus-dbus-$version.tar.gz"
+        buildsystem: autotools
+        cleanup: ["*"]
+  - name: vls
+    buildsystem: meson
+    sources:
+      - type: git
+        url: "https://github.com/vala-lang/vala-language-server.git"
+        branch: "master"
+    build-options:
+      env:
+        {
+          XDG_DATA_DIRS: "/usr/lib/sdk/vala/share/:/usr/lib/sdk/vala-nightly/share/",
+        }
+    modules:
+      - name: jsonrpc
+        buildsystem: meson
+        sources:
+          - type: git
+            url: "https://gitlab.gnome.org/GNOME/jsonrpc-glib.git"
+            branch: "main"
+      - name: gee
+        buildsystem: autotools
+        sources:
+          - type: archive
+            url: "https://download.gnome.org/sources/libgee/0.20/libgee-0.20.6.tar.xz"
+            sha256: "1bf834f5e10d60cc6124d74ed3c1dd38da646787fbf7872220b8b4068e476d4d"
+            x-checker-data:
+              type: gnome
+              name: libgee
+              stable-only: true
+      - name: uncrustify
+        buildsystem: cmake-ninja
+        config-opts:
+          - "-DCMAKE_BUILD_TYPE=Release"
+        builddir: true
+        sources:
+          - type: archive
+            url: "https://github.com/uncrustify/uncrustify/archive/uncrustify-0.75.1.tar.gz"
+            sha256: "fd14acc0a31ed88b33137bdc26d32964327488c835f885696473ef07caf2e182"
+  - name: scripts
+    buildsystem: simple
+    sources:
+      - type: script
+        commands:
+          - export PATH=/usr/lib/sdk/vala-nightly/bin/:$PATH
+          - export LD_LIBRARY_PATH=/usr/lib/sdk/vala-nightly/lib/:$LD_LIBRARY_PATH
+        dest-filename: "enable.sh"
+    build-commands:
+      - cp enable.sh /usr/lib/sdk/vala-nightly/
+  - name: appdata
+    buildsystem: simple
+    sources:
+      - type: file
+        path: "org.freedesktop.Sdk.Extension.vala-nightly.appdata.xml"
+    build-commands:
+      - mkdir -p ${FLATPAK_DEST}/share/metainfo
+      - cp ${FLATPAK_ID}.appdata.xml ${FLATPAK_DEST}/share/metainfo
+      - appstream-compose --basename ${FLATPAK_ID} --prefix=${FLATPAK_DEST} --origin=flatpak
+        ${FLATPAK_ID}