git: c1e57b671c5d - main - finance/quba-viewer: New port

From: Muhammad Moinur Rahman <bofh_at_FreeBSD.org>
Date: Sat, 05 Oct 2024 10:23:56 UTC
The branch main has been updated by bofh:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c1e57b671c5d7f3765828d4e78ccc7c5f1cc6e25

commit c1e57b671c5d7f3765828d4e78ccc7c5f1cc6e25
Author:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
AuthorDate: 2024-10-05 07:56:17 +0000
Commit:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
CommitDate: 2024-10-05 10:23:42 +0000

    finance/quba-viewer: New port
    
    Cross platform application to display hybrid electronic invoices
    
    Quba-Viewer is a cross platform open source application to display
    structured (i.e., XML) and hybrid (Factur-X/ZUGFeRD PDF) electronic
    invoices.
    
    WWW: https://www.quba-viewer.org/
    
    Sponsored by:   Nepustil
---
 finance/Makefile                              |   1 +
 finance/quba-viewer/Makefile                  |  95 ++++++++++++
 finance/quba-viewer/distinfo                  |   5 +
 finance/quba-viewer/files/patch-package.json  |  50 +++++++
 finance/quba-viewer/files/quba-viewer.desktop |   8 +
 finance/quba-viewer/pkg-descr                 |   3 +
 finance/quba-viewer/pkg-plist                 | 203 ++++++++++++++++++++++++++
 7 files changed, 365 insertions(+)

diff --git a/finance/Makefile b/finance/Makefile
index e084a747132d..b6bf71352c0e 100644
--- a/finance/Makefile
+++ b/finance/Makefile
@@ -145,6 +145,7 @@
     SUBDIR += py-ystockquote
     SUBDIR += qtbitcointrader
     SUBDIR += quantlib
+    SUBDIR += quba-viewer
     SUBDIR += quickfix
     SUBDIR += rubygem-money
     SUBDIR += skrooge
diff --git a/finance/quba-viewer/Makefile b/finance/quba-viewer/Makefile
new file mode 100644
index 000000000000..5da378888923
--- /dev/null
+++ b/finance/quba-viewer/Makefile
@@ -0,0 +1,95 @@
+PORTNAME=	quba-viewer
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.4.0
+CATEGORIES=	finance deskutils
+MASTER_SITES=	LOCAL/pi/finance/${PORTNAME}/:npm
+DISTFILES=	${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}:npm
+
+MAINTAINER=	pi@FreeBSD.org
+COMMENT=	Cross platform application to display hybrid electronic invoices
+WWW=		https://www.quba-viewer.org/
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+ONLY_FOR_ARCHS=	amd64 # Will need to be tested on aarch64
+
+.if defined(MAINTAINER_MODE)
+PATCH_DEPENDS=	npm:www/npm-node20
+.endif
+BUILD_DEPENDS=	\
+		app-builder>0:devel/app-builder \
+		electron${ELECTRON_VER_MAJOR}:devel/electron${ELECTRON_VER_MAJOR} \
+		npm:www/npm-node20
+LIB_DEPENDS=	\
+		libdrm.so:graphics/libdrm \
+		libepoll-shim.so:devel/libepoll-shim \
+		libffi.so:devel/libffi \
+		libopus.so:audio/opus \
+		libpci.so:devel/libpci
+
+USES=		desktop-file-utils gettext-runtime gl nodejs xorg
+USE_GITHUB=	yes
+GH_ACCOUNT=	ZUGFeRD
+USE_GL=		gl
+USE_XORG=	x11 xcb xext xi
+
+MAKE_ENV+=	ELECTRON_OVERRIDE_DIST_PATH=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR} \
+		HOME=${WRKDIR} \
+		USE_SYSTEM_APP_BUILDER=true \
+		SOURCE_DATE_EPOCH=${_BUILD_DATE} \
+		PATH=${WRKSRC}/node_modules/.bin:${LOCALBASE}/bin:${PATH}
+
+_BUILD_DATE=	$$(date +'%s')
+
+_ELECTRON_VERSION=	32
+.include <../../devel/electron${_ELECTRON_VERSION}/Makefile.version>
+
+NODE_ARCH=	${ARCH:S/aarch64/arm64/:S/amd64/x64/}
+ELECTRON_DIST=${LOCALBASE}/share/electron${ELECTRON_VER_MAJOR}
+APP_OUT_DIR=	linux-unpacked
+
+.include <bsd.port.pre.mk>
+
+post-patch:
+	${REINPLACE_CMD} -e 's|%%ELECTRON_VERSION%%|${ELECTRON_VER}|; s|%%ELECTRON_DIST%%|${ELECTRON_DIST}|' \
+		${WRKSRC}/package.json
+
+do-build:
+	${ECHO_CMD} offline=true >> ${WRKSRC}/.npmrc
+	cd ${WRKSRC} && \
+		${SETENV} ${MAKE_ENV} npm config set cache ${WRKDIR}/node_modules
+	cd ${WRKSRC} && \
+		${SETENV} ${MAKE_ENV} npm install --prefer-offline
+	${CP} ${LOCALBASE}/bin/app-builder ${WRKSRC}/node_modules/app-builder-bin/linux/${NODE_ARCH}/app-builder
+	cd ${WRKSRC} && \
+		${SETENV} ${MAKE_ENV} ${PACKAGE_ENV} npm run build
+
+do-install:
+	${MKDIR} ${STAGEDIR}${DATADIR}
+	cd ${BUILD_WRKSRC}/release/${APP_OUT_DIR} && \
+		${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}
+
+	${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps
+	${INSTALL_DATA} ${WRKSRC}/assets/img/logo_small_icon_only.png \
+		${STAGEDIR}${PREFIX}/share/pixmaps/quba-desktop.png
+	${INSTALL_DATA} ${FILESDIR}/${PORTNAME}.desktop \
+		${STAGEDIR}${PREFIX}/share/applications
+
+	${RLN} ${STAGEDIR}${DATADIR}/quba ${STAGEDIR}${PREFIX}/bin
+
+.if defined(MAINTAINER_MODE)
+_make_npm-cache: extract patch post-patch
+	@${ECHO_MSG} "===> Creating npm cache tarball"
+	${RM} -r ${WRKSRC}/node_modules
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm cache clean --force
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm config set cache ${WRKDIR}/node_modules
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm install
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm install --cache ${WRKDIR}/node_modules --prefer-offline
+	cd ${WRKDIR} && ${TAR} -czf \
+		${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX} -C ${WRKDIR} node_modules
+	scp ${WRKDIR}/${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX} \
+		pi@freefall.freebsd.org:public_distfiles/finance/${PORTNAME}/
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/finance/quba-viewer/distinfo b/finance/quba-viewer/distinfo
new file mode 100644
index 000000000000..75a79ae71f54
--- /dev/null
+++ b/finance/quba-viewer/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1728019691
+SHA256 (quba-viewer-npm-cache-1.4.0.tar.gz) = 5713cae1c02db81d66f1a3ca7816f66f842e0e5ce6b81c4fdfe9796449ca791c
+SIZE (quba-viewer-npm-cache-1.4.0.tar.gz) = 146464701
+SHA256 (ZUGFeRD-quba-viewer-v1.4.0_GH0.tar.gz) = 3b1854feb2f644b16fdd27a963798d59826123d8bb4143352f1b57d4262959fe
+SIZE (ZUGFeRD-quba-viewer-v1.4.0_GH0.tar.gz) = 17988268
diff --git a/finance/quba-viewer/files/patch-package.json b/finance/quba-viewer/files/patch-package.json
new file mode 100644
index 000000000000..24ec3013d62a
--- /dev/null
+++ b/finance/quba-viewer/files/patch-package.json
@@ -0,0 +1,50 @@
+--- package.json.orig	2024-01-12 15:03:14 UTC
++++ package.json
+@@ -2,15 +2,18 @@
+   "name": "Quba",
+   "version": "1.4.0",
+   "description": "Viewer",
+-  "author": "Quba",
++  "author": {
++    "name": "Quba",
++    "email": "pi@FreeBSD.org"
++  },
+   "scripts": {
+     "serve": "vue-cli-service serve",
+-    "build": "vue-cli-service build && electron-builder build --win --publish never",
++    "build": "vue-cli-service build && electron-builder build --linux --publish never",
+     "i18n:report": "vue-cli-service i18n:report --src \"./src/**/*.?(js|vue)\" --locales \"./src/locales/**/*.json\"",
+     "pack": "npm run build && electron-builder build --publish=never",
+-    "start": "vue-cli-service build && electron .",
++    "start": "vue-cli-service build && %%ELECTRON_DIST%%/electron .",
+     "dist": "electron-builder",
+-    "publish": "electron-builder build --win --publish always"
++    "publish": "electron-builder build --linux --publish always"
+   },
+   "main": "app/main.js",
+   "dependencies": {
+@@ -41,17 +44,17 @@
+     "@vue/cli-plugin-babel": "5.0.4",
+     "@vue/cli-service": "5.0.4",
+     "@vue/compiler-sfc": "3.2.36",
+-    "electron": "20.0.0",
+-    "electron-builder": "23.0.3",
++    "electron-builder": "^24.13.3",
++    "electron-forge": "^5.2.4",
+     "vue-cli-plugin-i18n": "2.3.1"
+   },
+   "build": {
+     "appId": "org.quba-viewer.viewer",
+-    "mac": {
+-      "category": "Document",
+-      "icon": "./assets/img/logo_small_icon_only.png"
+-    },
+-    "win": {
++    "electronDist": "%%ELECTRON_DIST%%",
++    "electronVersion": "%%ELECTRON_VERSION%%",
++    "linux": {
++      "target": [ "dir" ],
++      "executableName": "quba",
+       "icon": "./assets/img/logo_small_icon_only.png"
+     },
+     "directories": {
diff --git a/finance/quba-viewer/files/quba-viewer.desktop b/finance/quba-viewer/files/quba-viewer.desktop
new file mode 100644
index 000000000000..07abecd5dff8
--- /dev/null
+++ b/finance/quba-viewer/files/quba-viewer.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Quba Viewer
+Comment=Quba - Invoice Viewer
+Icon=quba-desktop
+Exec=quba -- %u
+Terminal=false
+Categories=Utility;
diff --git a/finance/quba-viewer/pkg-descr b/finance/quba-viewer/pkg-descr
new file mode 100644
index 000000000000..02899048e86b
--- /dev/null
+++ b/finance/quba-viewer/pkg-descr
@@ -0,0 +1,3 @@
+Quba-Viewer is a cross platform open source application to display
+structured (i.e., XML) and hybrid (Factur-X/ZUGFeRD PDF) electronic
+invoices.
diff --git a/finance/quba-viewer/pkg-plist b/finance/quba-viewer/pkg-plist
new file mode 100644
index 000000000000..c05dcbe58369
--- /dev/null
+++ b/finance/quba-viewer/pkg-plist
@@ -0,0 +1,203 @@
+bin/quba
+share/applications/quba-viewer.desktop
+share/pixmaps/quba-desktop.png
+%%DATADIR%%/LICENSE.electron.txt
+%%DATADIR%%/LICENSES.chromium.html
+%%DATADIR%%/chrome_100_percent.pak
+%%DATADIR%%/chrome_200_percent.pak
+%%DATADIR%%/chromedriver
+%%DATADIR%%/gen/electron/buildflags/buildflags.h
+%%DATADIR%%/gen/v8/embedded.S
+%%DATADIR%%/libEGL.so
+%%DATADIR%%/libGLESv2.so
+%%DATADIR%%/libffmpeg.so
+%%DATADIR%%/libvk_swiftshader.so
+%%DATADIR%%/libvulkan.so
+%%DATADIR%%/locales/af.pak
+%%DATADIR%%/locales/am.pak
+%%DATADIR%%/locales/ar.pak
+%%DATADIR%%/locales/bg.pak
+%%DATADIR%%/locales/bn.pak
+%%DATADIR%%/locales/ca.pak
+%%DATADIR%%/locales/cs.pak
+%%DATADIR%%/locales/da.pak
+%%DATADIR%%/locales/de.pak
+%%DATADIR%%/locales/el.pak
+%%DATADIR%%/locales/en-GB.pak
+%%DATADIR%%/locales/en-US.pak
+%%DATADIR%%/locales/es-419.pak
+%%DATADIR%%/locales/es.pak
+%%DATADIR%%/locales/et.pak
+%%DATADIR%%/locales/fa.pak
+%%DATADIR%%/locales/fi.pak
+%%DATADIR%%/locales/fil.pak
+%%DATADIR%%/locales/fr.pak
+%%DATADIR%%/locales/gu.pak
+%%DATADIR%%/locales/he.pak
+%%DATADIR%%/locales/hi.pak
+%%DATADIR%%/locales/hr.pak
+%%DATADIR%%/locales/hu.pak
+%%DATADIR%%/locales/id.pak
+%%DATADIR%%/locales/it.pak
+%%DATADIR%%/locales/ja.pak
+%%DATADIR%%/locales/kn.pak
+%%DATADIR%%/locales/ko.pak
+%%DATADIR%%/locales/lt.pak
+%%DATADIR%%/locales/lv.pak
+%%DATADIR%%/locales/ml.pak
+%%DATADIR%%/locales/mr.pak
+%%DATADIR%%/locales/ms.pak
+%%DATADIR%%/locales/nb.pak
+%%DATADIR%%/locales/nl.pak
+%%DATADIR%%/locales/pl.pak
+%%DATADIR%%/locales/pt-BR.pak
+%%DATADIR%%/locales/pt-PT.pak
+%%DATADIR%%/locales/ro.pak
+%%DATADIR%%/locales/ru.pak
+%%DATADIR%%/locales/sk.pak
+%%DATADIR%%/locales/sl.pak
+%%DATADIR%%/locales/sr.pak
+%%DATADIR%%/locales/sv.pak
+%%DATADIR%%/locales/sw.pak
+%%DATADIR%%/locales/ta.pak
+%%DATADIR%%/locales/te.pak
+%%DATADIR%%/locales/th.pak
+%%DATADIR%%/locales/tr.pak
+%%DATADIR%%/locales/uk.pak
+%%DATADIR%%/locales/ur.pak
+%%DATADIR%%/locales/vi.pak
+%%DATADIR%%/locales/zh-CN.pak
+%%DATADIR%%/locales/zh-TW.pak
+%%DATADIR%%/mksnapshot
+%%DATADIR%%/node_headers/include/node/common.gypi
+%%DATADIR%%/node_headers/include/node/config.gypi
+%%DATADIR%%/node_headers/include/node/cppgc/allocation.h
+%%DATADIR%%/node_headers/include/node/cppgc/common.h
+%%DATADIR%%/node_headers/include/node/cppgc/cross-thread-persistent.h
+%%DATADIR%%/node_headers/include/node/cppgc/custom-space.h
+%%DATADIR%%/node_headers/include/node/cppgc/default-platform.h
+%%DATADIR%%/node_headers/include/node/cppgc/ephemeron-pair.h
+%%DATADIR%%/node_headers/include/node/cppgc/explicit-management.h
+%%DATADIR%%/node_headers/include/node/cppgc/garbage-collected.h
+%%DATADIR%%/node_headers/include/node/cppgc/heap-consistency.h
+%%DATADIR%%/node_headers/include/node/cppgc/heap-handle.h
+%%DATADIR%%/node_headers/include/node/cppgc/heap-state.h
+%%DATADIR%%/node_headers/include/node/cppgc/heap-statistics.h
+%%DATADIR%%/node_headers/include/node/cppgc/heap.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/api-constants.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/atomic-entry-flag.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/base-page-handle.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/caged-heap-local-data.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/caged-heap.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/compiler-specific.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/finalizer-trait.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/gc-info.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/logging.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/member-storage.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/name-trait.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/persistent-node.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/pointer-policies.h
+%%DATADIR%%/node_headers/include/node/cppgc/internal/write-barrier.h
+%%DATADIR%%/node_headers/include/node/cppgc/liveness-broker.h
+%%DATADIR%%/node_headers/include/node/cppgc/macros.h
+%%DATADIR%%/node_headers/include/node/cppgc/member.h
+%%DATADIR%%/node_headers/include/node/cppgc/name-provider.h
+%%DATADIR%%/node_headers/include/node/cppgc/object-size-trait.h
+%%DATADIR%%/node_headers/include/node/cppgc/persistent.h
+%%DATADIR%%/node_headers/include/node/cppgc/platform.h
+%%DATADIR%%/node_headers/include/node/cppgc/prefinalizer.h
+%%DATADIR%%/node_headers/include/node/cppgc/process-heap-statistics.h
+%%DATADIR%%/node_headers/include/node/cppgc/sentinel-pointer.h
+%%DATADIR%%/node_headers/include/node/cppgc/source-location.h
+%%DATADIR%%/node_headers/include/node/cppgc/testing.h
+%%DATADIR%%/node_headers/include/node/cppgc/trace-trait.h
+%%DATADIR%%/node_headers/include/node/cppgc/type-traits.h
+%%DATADIR%%/node_headers/include/node/cppgc/visitor.h
+%%DATADIR%%/node_headers/include/node/js_native_api.h
+%%DATADIR%%/node_headers/include/node/js_native_api_types.h
+%%DATADIR%%/node_headers/include/node/libplatform/libplatform-export.h
+%%DATADIR%%/node_headers/include/node/libplatform/libplatform.h
+%%DATADIR%%/node_headers/include/node/libplatform/v8-tracing.h
+%%DATADIR%%/node_headers/include/node/node.h
+%%DATADIR%%/node_headers/include/node/node_api.h
+%%DATADIR%%/node_headers/include/node/node_api_types.h
+%%DATADIR%%/node_headers/include/node/node_buffer.h
+%%DATADIR%%/node_headers/include/node/node_object_wrap.h
+%%DATADIR%%/node_headers/include/node/node_version.h
+%%DATADIR%%/node_headers/include/node/uv.h
+%%DATADIR%%/node_headers/include/node/uv/aix.h
+%%DATADIR%%/node_headers/include/node/uv/bsd.h
+%%DATADIR%%/node_headers/include/node/uv/darwin.h
+%%DATADIR%%/node_headers/include/node/uv/errno.h
+%%DATADIR%%/node_headers/include/node/uv/linux.h
+%%DATADIR%%/node_headers/include/node/uv/os390.h
+%%DATADIR%%/node_headers/include/node/uv/posix.h
+%%DATADIR%%/node_headers/include/node/uv/sunos.h
+%%DATADIR%%/node_headers/include/node/uv/threadpool.h
+%%DATADIR%%/node_headers/include/node/uv/tree.h
+%%DATADIR%%/node_headers/include/node/uv/unix.h
+%%DATADIR%%/node_headers/include/node/uv/version.h
+%%DATADIR%%/node_headers/include/node/uv/win.h
+%%DATADIR%%/node_headers/include/node/v8-array-buffer.h
+%%DATADIR%%/node_headers/include/node/v8-callbacks.h
+%%DATADIR%%/node_headers/include/node/v8-container.h
+%%DATADIR%%/node_headers/include/node/v8-context.h
+%%DATADIR%%/node_headers/include/node/v8-cppgc.h
+%%DATADIR%%/node_headers/include/node/v8-data.h
+%%DATADIR%%/node_headers/include/node/v8-date.h
+%%DATADIR%%/node_headers/include/node/v8-debug.h
+%%DATADIR%%/node_headers/include/node/v8-embedder-heap.h
+%%DATADIR%%/node_headers/include/node/v8-embedder-state-scope.h
+%%DATADIR%%/node_headers/include/node/v8-exception.h
+%%DATADIR%%/node_headers/include/node/v8-extension.h
+%%DATADIR%%/node_headers/include/node/v8-external.h
+%%DATADIR%%/node_headers/include/node/v8-forward.h
+%%DATADIR%%/node_headers/include/node/v8-function-callback.h
+%%DATADIR%%/node_headers/include/node/v8-function.h
+%%DATADIR%%/node_headers/include/node/v8-handle-base.h
+%%DATADIR%%/node_headers/include/node/v8-initialization.h
+%%DATADIR%%/node_headers/include/node/v8-internal.h
+%%DATADIR%%/node_headers/include/node/v8-isolate.h
+%%DATADIR%%/node_headers/include/node/v8-json.h
+%%DATADIR%%/node_headers/include/node/v8-local-handle.h
+%%DATADIR%%/node_headers/include/node/v8-locker.h
+%%DATADIR%%/node_headers/include/node/v8-maybe.h
+%%DATADIR%%/node_headers/include/node/v8-memory-span.h
+%%DATADIR%%/node_headers/include/node/v8-message.h
+%%DATADIR%%/node_headers/include/node/v8-microtask-queue.h
+%%DATADIR%%/node_headers/include/node/v8-microtask.h
+%%DATADIR%%/node_headers/include/node/v8-object.h
+%%DATADIR%%/node_headers/include/node/v8-persistent-handle.h
+%%DATADIR%%/node_headers/include/node/v8-platform.h
+%%DATADIR%%/node_headers/include/node/v8-primitive-object.h
+%%DATADIR%%/node_headers/include/node/v8-primitive.h
+%%DATADIR%%/node_headers/include/node/v8-profiler.h
+%%DATADIR%%/node_headers/include/node/v8-promise.h
+%%DATADIR%%/node_headers/include/node/v8-proxy.h
+%%DATADIR%%/node_headers/include/node/v8-regexp.h
+%%DATADIR%%/node_headers/include/node/v8-sandbox.h
+%%DATADIR%%/node_headers/include/node/v8-script.h
+%%DATADIR%%/node_headers/include/node/v8-snapshot.h
+%%DATADIR%%/node_headers/include/node/v8-source-location.h
+%%DATADIR%%/node_headers/include/node/v8-statistics.h
+%%DATADIR%%/node_headers/include/node/v8-template.h
+%%DATADIR%%/node_headers/include/node/v8-traced-handle.h
+%%DATADIR%%/node_headers/include/node/v8-typed-array.h
+%%DATADIR%%/node_headers/include/node/v8-unwinder.h
+%%DATADIR%%/node_headers/include/node/v8-value-serializer.h
+%%DATADIR%%/node_headers/include/node/v8-value.h
+%%DATADIR%%/node_headers/include/node/v8-version.h
+%%DATADIR%%/node_headers/include/node/v8-wasm.h
+%%DATADIR%%/node_headers/include/node/v8-weak-callback-info.h
+%%DATADIR%%/node_headers/include/node/v8.h
+%%DATADIR%%/node_headers/include/node/v8config.h
+%%DATADIR%%/node_headers/include/node/zconf.h
+%%DATADIR%%/node_headers/include/node/zlib.h
+@(,,755) %%DATADIR%%/quba
+%%DATADIR%%/resources.pak
+%%DATADIR%%/resources/app-update.yml
+%%DATADIR%%/resources/app.asar
+%%DATADIR%%/snapshot_blob.bin
+%%DATADIR%%/v8_context_snapshot.bin
+%%DATADIR%%/v8_context_snapshot_generator
+%%DATADIR%%/vk_swiftshader_icd.json