summaryrefslogtreecommitdiffstats
path: root/build-aux/flatpak
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux/flatpak')
-rw-r--r--build-aux/flatpak/.gitignore2
-rw-r--r--build-aux/flatpak/0-readme.md8
-rwxr-xr-xbuild-aux/flatpak/1-build-and-install.sh3
-rwxr-xr-xbuild-aux/flatpak/2-run-app.sh3
-rwxr-xr-xbuild-aux/flatpak/3-teardown.sh3
-rwxr-xr-xbuild-aux/flatpak/generate-json-manifest.sh11
-rw-r--r--build-aux/flatpak/org.gnome.gedit.json115
-rw-r--r--build-aux/flatpak/org.gnome.gedit.yml93
8 files changed, 238 insertions, 0 deletions
diff --git a/build-aux/flatpak/.gitignore b/build-aux/flatpak/.gitignore
new file mode 100644
index 0000000..7949add
--- /dev/null
+++ b/build-aux/flatpak/.gitignore
@@ -0,0 +1,2 @@
+.flatpak-builder/
+build/
diff --git a/build-aux/flatpak/0-readme.md b/build-aux/flatpak/0-readme.md
new file mode 100644
index 0000000..8506797
--- /dev/null
+++ b/build-aux/flatpak/0-readme.md
@@ -0,0 +1,8 @@
+gedit flatpak
+=============
+
+First, you need to set up gnome-nightly:
+
+https://wiki.gnome.org/Apps/Nightly
+
+And install its runtime and SDK.
diff --git a/build-aux/flatpak/1-build-and-install.sh b/build-aux/flatpak/1-build-and-install.sh
new file mode 100755
index 0000000..cb96038
--- /dev/null
+++ b/build-aux/flatpak/1-build-and-install.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+flatpak-builder --force-clean --user --install build org.gnome.gedit.yml
diff --git a/build-aux/flatpak/2-run-app.sh b/build-aux/flatpak/2-run-app.sh
new file mode 100755
index 0000000..1dc2b58
--- /dev/null
+++ b/build-aux/flatpak/2-run-app.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+flatpak run org.gnome.gedit
diff --git a/build-aux/flatpak/3-teardown.sh b/build-aux/flatpak/3-teardown.sh
new file mode 100755
index 0000000..99cbb06
--- /dev/null
+++ b/build-aux/flatpak/3-teardown.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+flatpak uninstall --user org.gnome.gedit
diff --git a/build-aux/flatpak/generate-json-manifest.sh b/build-aux/flatpak/generate-json-manifest.sh
new file mode 100755
index 0000000..c8544e3
--- /dev/null
+++ b/build-aux/flatpak/generate-json-manifest.sh
@@ -0,0 +1,11 @@
+#!/bin/sh
+# SPDX-FileCopyrightText: Copyright 2022 Jake Dane
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+# yq: A portable command-line YAML processor.
+# Currently hosted here: https://github.com/mikefarah/yq
+
+# At the time of writing, some tools around Flatpak (for example gnome-builder)
+# only supports the *.json format, but *.yml is easier to edit.
+
+yq eval 'org.gnome.gedit.yml' --output-format json > 'org.gnome.gedit.json'
diff --git a/build-aux/flatpak/org.gnome.gedit.json b/build-aux/flatpak/org.gnome.gedit.json
new file mode 100644
index 0000000..12d9a74
--- /dev/null
+++ b/build-aux/flatpak/org.gnome.gedit.json
@@ -0,0 +1,115 @@
+{
+ "app-id": "org.gnome.gedit",
+ "runtime": "org.gnome.Platform",
+ "runtime-version": "master",
+ "sdk": "org.gnome.Sdk",
+ "command": "gedit",
+ "tags": [
+ "nightly"
+ ],
+ "desktop-file-name-prefix": "(Nightly) ",
+ "finish-args": [
+ "--share=ipc",
+ "--socket=x11",
+ "--socket=fallback-x11",
+ "--socket=wayland",
+ "--metadata=X-DConf=migrate-path=/org/gnome/gedit/",
+ "--filesystem=host",
+ "--filesystem=xdg-run/gvfsd",
+ "--talk-name=org.gtk.vfs.*"
+ ],
+ "build-options": {
+ "cflags": "-O2 -g",
+ "cxxflags": "-O2 -g",
+ "env": {
+ "V": "1"
+ }
+ },
+ "cleanup": [
+ "/include",
+ "/lib/pkgconfig",
+ "/share/pkgconfig",
+ "/share/aclocal",
+ "/man",
+ "/share/man",
+ "/share/gtk-doc",
+ "/share/vala",
+ "/share/gir-1.0",
+ "*.la",
+ "*.a"
+ ],
+ "modules": [
+ {
+ "name": "libpeas",
+ "buildsystem": "meson",
+ "config-opts": [
+ "-Dlua51=false",
+ "-Dvapi=true",
+ "-Ddemos=false",
+ "-Dglade_catalog=false"
+ ],
+ "sources": [
+ {
+ "type": "archive",
+ "url": "https://download.gnome.org/sources/libpeas/1.34/libpeas-1.34.0.tar.xz",
+ "sha256": "4305f715dab4b5ad3e8007daec316625e7065a94e63e25ef55eb1efb964a7bf0"
+ }
+ ]
+ },
+ {
+ "name": "gspell",
+ "cleanup": [
+ "/bin"
+ ],
+ "sources": [
+ {
+ "type": "archive",
+ "url": "https://download.gnome.org/sources/gspell/1.12/gspell-1.12.0.tar.xz",
+ "sha256": "40d2850f1bb6e8775246fa1e39438b36caafbdbada1d28a19fa1ca07e1ff82ad"
+ }
+ ]
+ },
+ {
+ "name": "amtk",
+ "buildsystem": "meson",
+ "sources": [
+ {
+ "type": "archive",
+ "url": "https://download.gnome.org/sources/amtk/5.6/amtk-5.6.1.tar.xz",
+ "sha256": "d50115b85c872aac296934b5ee726a3fa156c6f5ad96d27e0edd0aa5ad173228"
+ }
+ ]
+ },
+ {
+ "name": "tepl",
+ "buildsystem": "meson",
+ "sources": [
+ {
+ "type": "git",
+ "url": "https://gitlab.gnome.org/swilmet/tepl.git",
+ "branch": "main"
+ }
+ ]
+ },
+ {
+ "name": "gedit",
+ "buildsystem": "meson",
+ "sources": [
+ {
+ "type": "git",
+ "url": "https://gitlab.gnome.org/GNOME/gedit.git"
+ }
+ ]
+ },
+ {
+ "name": "gedit-plugins",
+ "buildsystem": "meson",
+ "sources": [
+ {
+ "type": "git",
+ "url": "https://gitlab.gnome.org/GNOME/gedit-plugins.git"
+ }
+ ]
+ }
+ ]
+}
diff --git a/build-aux/flatpak/org.gnome.gedit.yml b/build-aux/flatpak/org.gnome.gedit.yml
new file mode 100644
index 0000000..bd6ab12
--- /dev/null
+++ b/build-aux/flatpak/org.gnome.gedit.yml
@@ -0,0 +1,93 @@
+# After editing this file run generate-json-manifest.sh.
+# Don't edit the *.json manifest file by hand.
+---
+app-id: org.gnome.gedit
+runtime: org.gnome.Platform
+runtime-version: master
+sdk: org.gnome.Sdk
+command: gedit
+tags:
+ - nightly
+desktop-file-name-prefix: "(Nightly) "
+
+finish-args:
+ - "--share=ipc"
+ - "--socket=x11"
+ - "--socket=fallback-x11"
+ - "--socket=wayland"
+ - "--metadata=X-DConf=migrate-path=/org/gnome/gedit/"
+ # Needed at least for the integrated file browser plugin:
+ - "--filesystem=host"
+ # GVfs GIO APIs access using backend URIs
+ - "--filesystem=xdg-run/gvfsd"
+ # For opening files from remote locations (with GVfs):
+ - "--talk-name=org.gtk.vfs.*"
+
+build-options:
+ cflags: "-O2 -g"
+ cxxflags: "-O2 -g"
+ env:
+ V: '1'
+
+cleanup:
+ - "/include"
+ - "/lib/pkgconfig"
+ - "/share/pkgconfig"
+ - "/share/aclocal"
+ - "/man"
+ - "/share/man"
+ - "/share/gtk-doc"
+ - "/share/vala"
+ - "/share/gir-1.0"
+ - "*.la"
+ - "*.a"
+
+modules:
+ - name: libpeas
+ buildsystem: meson
+ config-opts:
+ - "-Dlua51=false"
+ - "-Dvapi=true"
+ - "-Ddemos=false"
+ - "-Dglade_catalog=false"
+ sources:
+ - type: archive
+ url: https://download.gnome.org/sources/libpeas/1.34/libpeas-1.34.0.tar.xz
+ sha256: 4305f715dab4b5ad3e8007daec316625e7065a94e63e25ef55eb1efb964a7bf0
+
+ - name: gspell
+ cleanup:
+ - "/bin"
+ sources:
+ - type: archive
+ url: https://download.gnome.org/sources/gspell/1.12/gspell-1.12.0.tar.xz
+ sha256: 40d2850f1bb6e8775246fa1e39438b36caafbdbada1d28a19fa1ca07e1ff82ad
+
+ - name: amtk
+ buildsystem: meson
+ sources:
+ - type: archive
+ url: https://download.gnome.org/sources/amtk/5.6/amtk-5.6.1.tar.xz
+ sha256: d50115b85c872aac296934b5ee726a3fa156c6f5ad96d27e0edd0aa5ad173228
+
+ - name: tepl
+ buildsystem: meson
+ sources:
+ - type: git
+ url: https://gitlab.gnome.org/swilmet/tepl.git
+ branch: main
+
+ - name: gedit
+ buildsystem: meson
+ sources:
+ - type: git
+ url: https://gitlab.gnome.org/GNOME/gedit.git
+ # To build a local branch, comment out 'url' and uncomment:
+ # path: ../../
+ # branch: wip/misc
+
+ - name: gedit-plugins
+ buildsystem: meson
+ sources:
+ - type: git
+ url: https://gitlab.gnome.org/GNOME/gedit-plugins.git