Browse Source

chore(deploy): keep our own copy of the flatpak manifest in this repo

This allows us to easily add dependencies or change the build for new
features, but has the downside that we have to sync to the flathub.org
repo on a release
reviewable/pr5245/r3
sudden6 7 years ago committed by Anthony Bilinski
parent
commit
90171366bd
No known key found for this signature in database
GPG Key ID: 2AA8E0DA1B31FB3C
  1. 14
      flatpak/build.sh
  2. 157
      flatpak/io.github.qtox.qTox.json
  3. 14
      flatpak/patches/build_directory.patch
  4. 3
      flatpak/patches/ci_fixes.patch

14
flatpak/build.sh

@ -14,8 +14,6 @@ readonly BUILD_DIR="/build" @@ -14,8 +14,6 @@ readonly BUILD_DIR="/build"
readonly QTOX_BUILD_DIR="$BUILD_DIR"/qtox
readonly FP_BUILD_DIR="$BUILD_DIR"/flatpak
readonly APT_FLAGS="-y --no-install-recommends"
# flatpak manifest file
readonly QTOX_MANIFEST="https://raw.githubusercontent.com/flathub/io.github.qtox.qTox/master/io.github.qtox.qTox.json"
# flatpak manifest download location
readonly MANIFEST_FILE="flatpak/io.github.qtox.qTox.json"
# directory containing necessary patches
@ -41,18 +39,6 @@ cd "$BUILD_DIR" @@ -41,18 +39,6 @@ cd "$BUILD_DIR"
cp -r "$QTOX_SRC_DIR" "$QTOX_BUILD_DIR"
cd "$QTOX_BUILD_DIR"
# download manifest file if not in repo, this allows an easy local override
if [ ! -f "$MANIFEST_FILE" ];
then
wget -O "$MANIFEST_FILE" "$QTOX_MANIFEST"
fi
# build from the local build directory instead of the git repo
patch "$MANIFEST_FILE" < "$PATCH_DIR"/build_directory.patch
# this patch should contain all other patches needed
patch "$MANIFEST_FILE" < "$PATCH_DIR"/ci_fixes.patch
# create flatpak build directory
mkdir -p "$FP_BUILD_DIR"
cd "$FP_BUILD_DIR"

157
flatpak/io.github.qtox.qTox.json

@ -0,0 +1,157 @@ @@ -0,0 +1,157 @@
{
"app-id": "io.github.qtox.qTox",
"runtime": "org.kde.Platform",
"sdk": "org.kde.Sdk",
"runtime-version": "5.10",
"command": "qtox",
"rename-icon": "qtox",
"finish-args": [
"--share=network",
"--socket=pulseaudio",
"--socket=wayland",
"--socket=x11",
"--share=ipc",
"--filesystem=xdg-desktop",
"--filesystem=xdg-documents",
"--filesystem=xdg-download",
"--filesystem=xdg-music",
"--filesystem=xdg-pictures",
"--filesystem=xdg-videos",
"--filesystem=/media",
"--device=all"
],
"build-options": {
"cflags": "-O3 -DSQLITE_HAS_CODEC",
"cxxflags": "-O3"
},
"cleanup": [
"/include",
"/lib/pkgconfig",
"/share/man"
],
"modules": [
{
"name": "libv4l2",
"config-opts":
[
"--disable-libdvbv5",
"--disable-v4l-utils",
"--disable-qv4l2"
],
"sources":
[
{
"type": "archive",
"url": "https://linuxtv.org/downloads/v4l-utils/v4l-utils-1.14.2.tar.bz2",
"sha256" : "e6b962c4b1253cf852c31da13fd6b5bb7cbe5aa9e182881aec55123bae680692"
}
]
},
{
"name": "ffmpeg",
"config-opts": [
"--disable-everything",
"--enable-gpl",
"--disable-debug",
"--enable-optimizations",
"--enable-shared",
"--disable-programs",
"--disable-protocols",
"--disable-doc",
"--disable-avfilter",
"--disable-avresample",
"--disable-filters",
"--disable-iconv",
"--disable-network",
"--disable-postproc",
"--enable-libv4l2",
"--enable-indev=v4l2",
"--enable-libxcb",
"--enable-indev=xcbgrab",
"--enable-demuxer=h264",
"--enable-demuxer=mjpeg",
"--enable-parser=h264",
"--enable-parser=mjpeg",
"--enable-decoder=h264",
"--enable-decoder=mjpeg",
"--enable-decoder=rawvideo"
],
"sources": [
{
"type": "archive",
"url": "https://ffmpeg.org/releases/ffmpeg-4.0.1.tar.bz2",
"sha256" : "7ee591b1e7fb66f055fa514fbd5d98e092ddb3dbe37d2e50ea5c16ab51c21670"
}
]
},
{
"name": "sqlcipher",
"rm-configure": true,
"config-opts": [
"--enable-tempstore=yes",
"--disable-tcl"
],
"sources": [
{
"type": "git",
"url": "https://github.com/sqlcipher/sqlcipher",
"tag": "v3.4.2",
"commit": "c6f709fca81c910ba133aaf6330c28e01ccfe5f8",
"disable-fsckobjects" : true
},
{
"type": "script",
"dest-filename": "autogen.sh",
"commands": [
"AUTOMAKE=\"automake --foreign\" autoreconf -vfi"
]
}
]
},
{
"name": "libsodium",
"sources": [
{
"type": "git",
"url": "https://github.com/jedisct1/libsodium",
"tag": "1.0.16",
"commit": "675149b9b8b66ff44152553fb3ebf9858128363d"
}
]
},
{
"name": "libqrencode",
"sources": [
{
"type": "git",
"url": "https://github.com/fukuchi/libqrencode",
"tag": "v4.0.2",
"commit": "59ee597f913fcfda7a010a6e106fbee2595f68e4"
}
]
},
{
"name": "c-toxcore",
"buildsystem": "cmake-ninja",
"sources": [
{
"type": "git",
"url": "https://github.com/toktok/c-toxcore",
"tag": "v0.2.3",
"commit": "ae7899cab8104fa3c3078a3e61ddfa58a826e39a"
}
]
},
{
"name": "qTox",
"buildsystem": "cmake-ninja",
"sources": [
{
"type": "dir",
"path": "/build/qtox/"
}
]
}
]
}

14
flatpak/patches/build_directory.patch

@ -1,14 +0,0 @@ @@ -1,14 +0,0 @@
97,103c97,101
< {
< "type": "git",
< "url": "https://github.com/qTox/qTox",
< "tag": "v1.15.0",
< "commit": "02d6c63acaac0ae95fa8be3a1b9301657e6a4a94"
< }
< ]
---
> {
> "type": "dir",
> "path": "/build/qtox/"
> }
> ]

3
flatpak/patches/ci_fixes.patch

@ -1,3 +0,0 @@ @@ -1,3 +0,0 @@
8,9d7
< "rename-desktop-file": "qtox.desktop",
< "rename-appdata-file": "qTox.appdata.xml",
Loading…
Cancel
Save