{
 "app_id": "com.cqrlog.cqrlog",
 "source_url": "https://raw.githubusercontent.com/ok2cqr/cqrlog/master/flatpak/com.cqrlog.cqrlog.yml",
 "runtime": "org.kde.Platform",
 "runtime_version": "6.10",
 "sdk": "org.kde.Sdk",
 "finish_args": [
  "--env=LD_LIBRARY_PATH=/app/lib",
  "--share=network",
  "--socket=wayland",
  "--socket=x11",
  "--socket=pulseaudio",
  "--share=ipc",
  "--device=all",
  "--talk-name=org.freedesktop.Flatpak",
  "--filesystem=home"
 ],
 "module_count": 6,
 "fetched_at": "2026-09-20T12:55:00.017476+00:00",
 "manifest": {
  "app-id": "com.cqrlog.cqrlog",
  "runtime": "org.kde.Platform",
  "runtime-version": "6.10",
  "sdk": "org.kde.Sdk",
  "command": "cqrlog",
  "build-options": {
   "append-path": "/app/lib/sdk/freepascal/bin",
   "env": {
    "PPC_CONFIG_PATH": "/app/lib/sdk/freepascal/etc",
    "FPCDIR": "/app/lib/sdk/freepascal/fpcsrc",
    "FPC_DIR": "/app/lib/sdk/freepascal/fpcsrc",
    "LAZARUSDIR": "/app/lib/sdk/freepascal/share/lazarus"
   }
  },
  "cleanup-commands": [
   "rm -rf /app/lib/sdk/freepascal"
  ],
  "cleanup": [
   "/include",
   "/lib/pkgconfig",
   "/lib/cmake",
   "/share/aclocal",
   "/share/man",
   "*.a"
  ],
  "finish-args": [
   "--env=LD_LIBRARY_PATH=/app/lib",
   "--share=network",
   "--socket=wayland",
   "--socket=x11",
   "--socket=pulseaudio",
   "--share=ipc",
   "--device=all",
   "--talk-name=org.freedesktop.Flatpak",
   "--filesystem=home"
  ],
  "modules": [
   {
    "name": "fpc",
    "sources": [
     {
      "type": "archive",
      "only-arches": [
       "x86_64"
      ],
      "url": "https://downloads.sourceforge.net/project/freepascal/Linux/3.2.2/fpc-3.2.2.x86_64-linux.tar",
      "sha256": "5adac308a5534b6a76446d8311fc340747cbb7edeaacfe6b651493ff3fe31e83"
     },
     {
      "type": "archive",
      "only-arches": [
       "aarch64"
      ],
      "url": "https://downloads.sourceforge.net/project/freepascal/Linux/3.2.2/fpc-3.2.2.aarch64-linux.tar",
      "sha256": "b39470f9b6b5b82f50fc8680a5da37d2834f2129c65c24c5628a80894d565451"
     },
     {
      "type": "archive",
      "url": "https://downloads.sourceforge.net/project/freepascal/Source/3.2.2/fpcbuild-3.2.2.tar.gz",
      "sha256": "85ef993043bb83f999e2212f1bca766eb71f6f973d362e2290475dbaaf50161f"
     },
     {
      "type": "patch",
      "options": [
       "-d",
       "fpcsrc"
      ],
      "path": "fpc-3.2.0--glibc-2.34.patch"
     }
    ],
    "buildsystem": "simple",
    "build-options": {
     "env": [
      "fpcver=3.2.2",
      "PREFIX=/app/lib/sdk/freepascal"
     ],
     "arch": {
      "aarch64": {
       "env": [
        "PPNAME=ppca64"
       ]
      },
      "x86_64": {
       "env": [
        "PPNAME=ppcx64"
       ]
      }
     }
    },
    "build-commands": [
     "mkdir -p ${PREFIX} && cp -r fpcsrc ${PREFIX}/",
     "mkdir fpcpre",
     "tar --no-same-owner -xf binary.*.tar && tar --no-same-owner -C fpcpre -xf base.*.tar.gz",
     "rm *.tar.gz *.tar",
     "make -C fpcsrc compiler_cycle PP=`pwd`/fpcpre/lib/fpc/${fpcver}/${PPNAME}",
     "make -C fpcsrc rtl_clean rtl_smart PP=`pwd`/fpcsrc/compiler/${PPNAME}",
     "make -C fpcsrc packages_smart utils_all PP=`pwd`/fpcsrc/compiler/${PPNAME}",
     "make -C fpcsrc compiler_distinstall rtl_distinstall packages_distinstall utils_distinstall INSTALL_PREFIX=${PREFIX} PP=`pwd`/fpcsrc/compiler/${PPNAME} FPCMAKE=`pwd`/fpcsrc/utils/fpcm/bin/${FLATPAK_ARCH}-linux/fpcmake",
     "${PREFIX}/lib/fpc/${fpcver}/samplecfg ${PREFIX}/lib/fpc/${fpcver} ${PREFIX}/etc",
     "echo '-Fl/app/lib' >> ${PREFIX}/etc/fpc.cfg",
     "ln -s ../lib/fpc/${fpcver}/${PPNAME} ${PREFIX}/bin/${PPNAME}",
     "ln -s ppca64 ${PREFIX}/bin/ppcaarch64"
    ]
   },
   {
    "name": "lazarus",
    "sources": [
     {
      "type": "archive",
      "url": "https://gitlab.com/freepascal.org/lazarus/lazarus/-/archive/lazarus_4_2/lazarus-lazarus_4_2.tar.gz",
      "sha256": "3e3b037ffb81a479db54abb94242d7f42fe9dd6d1a431a914336a99e211162a8"
     }
    ],
    "buildsystem": "simple",
    "build-options": {
     "append-path": "/app/lib/sdk/freepascal/bin",
     "env": [
      "INSTALL_PREFIX=/app/lib/sdk/freepascal"
     ]
    },
    "build-commands": [
     "find . -type f -iname makefile.fpc -exec fpcmake -Tall '{}' ';'",
     "make lazbuild OPT='-gl'",
     "touch lazarus startlazarus",
     "make install",
     "sed -i -e \"s#__LAZARUSDIR__#$LAZARUSDIR/#\" -e \"s#__FPCSRCDIR__#$FPCDIR/#\" -e \"s#/app/bin/fpc#$INSTALL_PREFIX/bin/fpc#\" tools/install/linux/environmentoptions.xml",
     "install -Dm644 -t $LAZARUSDIR tools/install/linux/environmentoptions.xml"
    ]
   },
   {
    "name": "qt6pas",
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/davidbannon/libqt6pas/archive/refs/tags/v6.2.10.tar.gz",
      "sha256": "dbcc13559f991958fb69de31d67c85575bbe278fdff0813b51787da50720d591"
     }
    ],
    "buildsystem": "qmake",
    "subdir": "cbindings",
    "build-commands": [
     "sed -e\"s/target.path = .\\+/target.path = '\\/app\\/lib'/\" -i ./Qt6Pas.pro"
    ]
   },
   {
    "name": "mariadb-connector-c",
    "buildsystem": "cmake-ninja",
    "config-opts": [
     "-DCMAKE_POLICY_VERSION_MINIMUM=3.5",
     "-DCMAKE_C_FLAGS=-std=gnu17",
     "-DCMAKE_BUILD_TYPE=RelWithDebInfo",
     "-DINSTALL_LIBDIR=lib",
     "-DINSTALL_INCLUDEDIR=include/mariadb",
     "-DINSTALL_PLUGINDIR=lib/mariadb/plugin",
     "-DWITH_UNIT_TESTS=OFF",
     "-DWITH_SSL=OPENSSL"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/mariadb-corporation/mariadb-connector-c/archive/refs/tags/v3.4.3.tar.gz",
      "sha256": "7c2180a62a3ca7ae58a1cbb1d912ab1c19bb5c112db2f6742b809d134bdac169"
     }
    ],
    "post-install": [
     "ln -sf libmariadb.so   ${FLATPAK_DEST}/lib/libmysqlclient.so",
     "ln -sf libmariadb.so.3 ${FLATPAK_DEST}/lib/libmysqlclient.so.18",
     "ln -sf libmariadb.so.3 ${FLATPAK_DEST}/lib/libmysqlclient.so.19",
     "ln -sf libmariadb.so.3 ${FLATPAK_DEST}/lib/libmysqlclient.so.20",
     "ln -sf libmariadb.so.3 ${FLATPAK_DEST}/lib/libmysqlclient.so.21"
    ]
   },
   {
    "name": "hamlib",
    "buildsystem": "autotools",
    "config-opts": [
     "--disable-static",
     "--without-cxx-binding"
    ],
    "sources": [
     {
      "type": "archive",
      "url": "https://github.com/Hamlib/Hamlib/releases/download/4.5.5/hamlib-4.5.5.tar.gz",
      "sha256": "601c89f32ed225e9527ade3d64d0d05d23202c05ae21ffa77e59d70ee4597fcd"
     }
    ]
   },
   {
    "name": "cqrlog",
    "buildsystem": "simple",
    "build-options": {
     "arch": {
      "x86_64": {
       "env": {
        "PPC": "ppcx64"
       }
      },
      "aarch64": {
       "env": {
        "PPC": "ppca64"
       }
      }
     }
    },
    "build-commands": [
     "make clean",
     "lazbuild --ws=qt6 -q --compiler=/app/lib/sdk/freepascal/bin/$PPC --pcp=. --lazarusdir=\"$LAZARUSDIR\" src/cqrlog.lpi",
     "gzip -c tools/cqrlog.1 > tools/cqrlog.1.gz",
     "make DESTDIR=${FLATPAK_DEST} WS=qt6 install",
     "mv ${FLATPAK_DEST}/share/applications/cqrlog.desktop ${FLATPAK_DEST}/share/applications/${FLATPAK_ID}.desktop",
     "desktop-file-edit --set-icon=${FLATPAK_ID} ${FLATPAK_DEST}/share/applications/${FLATPAK_ID}.desktop",
     "sed -i \"s#cqrlog.desktop#${FLATPAK_ID}.desktop#\" ${FLATPAK_DEST}/share/metainfo/com.cqrlog.cqrlog.appdata.xml",
     "mv ${FLATPAK_DEST}/share/metainfo/com.cqrlog.cqrlog.appdata.xml ${FLATPAK_DEST}/share/metainfo/${FLATPAK_ID}.metainfo.xml",
     "for s in 32 48 64 128 256; do mv ${FLATPAK_DEST}/share/icons/hicolor/${s}x${s}/apps/cqrlog.png ${FLATPAK_DEST}/share/icons/hicolor/${s}x${s}/apps/${FLATPAK_ID}.png; done"
    ],
    "sources": [
     {
      "type": "dir",
      "path": "..",
      "skip": [
       ".git",
       ".flatpak-builder",
       "flatpak_app",
       "cqrlog.flatpak"
      ]
     }
    ]
   }
  ]
 }
}