git: 9f4bead980ae - main - net-im/webinar: + An online conferences application.

From: Gleb Popov <arrowd_at_FreeBSD.org>
Date: Thu, 02 Mar 2023 12:59:24 UTC
The branch main has been updated by arrowd:

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

commit 9f4bead980aecdd682a49b4ef49188172f6e2c93
Author:     Gleb Popov <arrowd@FreeBSD.org>
AuthorDate: 2023-02-27 15:20:23 +0000
Commit:     Gleb Popov <arrowd@FreeBSD.org>
CommitDate: 2023-03-02 12:59:02 +0000

    net-im/webinar: + An online conferences application.
    
    Sponsored by:   Serenity Cybersecurity, LLC
---
 net-im/webinar/Makefile         | 102 ++++++++++++++++++++++++++++++++++++++++
 net-im/webinar/distinfo         |   3 ++
 net-im/webinar/files/webinar.in |   8 ++++
 net-im/webinar/pkg-descr        |   3 ++
 net-im/webinar/pkg-plist        |  83 ++++++++++++++++++++++++++++++++
 5 files changed, 199 insertions(+)

diff --git a/net-im/webinar/Makefile b/net-im/webinar/Makefile
new file mode 100644
index 000000000000..c4942351b43a
--- /dev/null
+++ b/net-im/webinar/Makefile
@@ -0,0 +1,102 @@
+# This port will not be packaged by the official FreeBSD build cluster, because
+# its license doesn't permit redistribution.
+#
+# To build this port locally with minimal effort use
+# cd <PORTSDIR>/net-im/webinar
+# pkg install -A webcamd `make -V 'electron${ELECTRON_VERSION}'`
+# make USE_PACKAGE_DEPENDS_ONLY=yes install clean
+
+PORTNAME=	webinar
+PORTVERSION=	1.0.11
+CATEGORIES=	net-im net-p2p
+# distfile is obtained by running "snap download webinar" on Linux
+DISTNAME=	webinar_2
+EXTRACT_SUFX=	.snap
+
+MAINTAINER=	arrowd@FreeBSD.org
+COMMENT=	Platform for organizing online conferences
+WWW=		https://webinar.ru/products/webinar/
+
+LICENSE=	Proprietary
+LICENSE_NAME=	Proprietary license with a small trial period
+LICENSE_TEXT=	See https://webinar.ru/legal/license-agreement.pdf
+LICENSE_PERMS=
+
+EXTRACT_DEPENDS=	unsquashfs:sysutils/squashfs-tools
+BUILD_DEPENDS=		electron${ELECTRON_VERSION}:devel/electron${ELECTRON_VERSION}
+RUN_DEPENDS=		electron${ELECTRON_VERSION}:devel/electron${ELECTRON_VERSION} \
+			webcamd>0:multimedia/webcamd
+
+# All deps below are there only to please stage-qa
+
+LIB_DEPENDS=	libatk-bridge-2.0.so:accessibility/at-spi2-atk \
+		libatspi.so:accessibility/at-spi2-core \
+		libsnappy.so:archivers/snappy \
+		libopus.so:audio/opus \
+		libdbus-1.so:devel/dbus \
+		libnspr4.so:devel/nspr \
+		libFLAC.so:audio/flac \
+		libpci.so:devel/libpci \
+		libdrm.so:graphics/libdrm \
+		libpng.so:graphics/png \
+		libwayland-client.so:graphics/wayland \
+		libwebp.so:graphics/webp \
+		libopenh264.so:multimedia/openh264 \
+		libharfbuzz.so:print/harfbuzz \
+		libexpat.so:textproc/expat2 \
+		libnss3.so:security/nss \
+		libxkbcommon.so:x11/libxkbcommon \
+		libxshmfence.so:x11/libxshmfence \
+		libfontconfig.so:x11-fonts/fontconfig \
+		libcups.so:print/cups
+
+USES=		desktop-file-utils gettext-runtime gl gnome iconv:wchar_t jpeg \
+		xorg
+
+USE_GL=		gbm gl
+USE_GNOME=	atk cairo gdkpixbuf2 glib20 gtk30 libxml2 libxslt pango
+USE_XORG=	x11 xcb xcomposite xdamage xext xfixes xi xrandr xrender xtst
+
+SUB_FILES=	webinar
+NO_BUILD=	yes
+STRIP=
+UNSQUASHFS=	${LOCALBASE}/bin/unsquashfs
+
+ELECTRON_VERSION=	18
+ELECTRON_FILES=		chromedriver \
+			libEGL.so \
+			libGLESv2.so \
+			libffmpeg.so \
+			libvk_swiftshader.so \
+			libvulkan.so \
+			resources.pak \
+			snapshot_blob.bin \
+			v8_context_snapshot.bin
+
+do-extract:
+	${UNSQUASHFS} -dest ${WRKSRC} -no-xattrs ${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}
+
+post-patch:
+	${REINPLACE_CMD} -i '' -e 's|Icon=.*$$|Icon=webinar|' ${WRKSRC}/meta/gui/webinar.desktop
+
+do-install:
+	cd ${WRKSRC} && ${COPYTREE_SHARE} \* ${STAGEDIR}${DATADIR}
+	${INSTALL_PROGRAM} ${WRKDIR}/webinar ${STAGEDIR}${PREFIX}/bin
+	${INSTALL_DATA} ${WRKSRC}/meta/gui/webinar.desktop ${STAGEDIR}${DESKTOPDIR}/webinar.desktop
+	${INSTALL_DATA} ${WRKSRC}/meta/gui/icon.png ${STAGEDIR}${PREFIX}/share/pixmaps/webinar.png
+
+post-install:
+	${RM} ${STAGEDIR}${DATADIR}/chrome-sandbox
+	${RM} ${STAGEDIR}${DATADIR}/libvulkan.so.1
+	${RM} -r ${STAGEDIR}${DATADIR}/usr/lib/
+	${RM} -r ${STAGEDIR}${DATADIR}/lib/
+	${RM} -r ${STAGEDIR}${DATADIR}/meta
+	${FIND} ${STAGEDIR}${DATADIR} -type d -empty -delete
+.for f in ${ELECTRON_FILES}
+	${RM} ${STAGEDIR}${DATADIR}/${f}
+	${LN} -s ${LOCALBASE}/share/electron${ELECTRON_VERSION}/${f} ${STAGEDIR}${DATADIR}/${f}
+.endfor
+# We have to copy the electron binary instead of symlinking
+	${CP} ${LOCALBASE}/share/electron${ELECTRON_VERSION}/electron ${STAGEDIR}${DATADIR}/webinar
+
+.include <bsd.port.mk>
diff --git a/net-im/webinar/distinfo b/net-im/webinar/distinfo
new file mode 100644
index 000000000000..1a40b449babd
--- /dev/null
+++ b/net-im/webinar/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1677512448
+SHA256 (webinar_2.snap) = e05cd7ca3fac3d419e96ecccecc93a3914fa4aa1a12f693874823a63d8ca3cad
+SIZE (webinar_2.snap) = 74293248
diff --git a/net-im/webinar/files/webinar.in b/net-im/webinar/files/webinar.in
new file mode 100644
index 000000000000..f3372524f6c1
--- /dev/null
+++ b/net-im/webinar/files/webinar.in
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+# workaround Chromium bug https://bugs.chromium.org/p/chromium/issues/detail?id=918234
+if [ "$DBUS_SESSION_BUS_ADDRESS" = "" ]; then
+    export DBUS_SESSION_BUS_ADDRESS="autolaunch:"
+fi
+
+exec %%DATADIR%%/webinar "$@"
diff --git a/net-im/webinar/pkg-descr b/net-im/webinar/pkg-descr
new file mode 100644
index 000000000000..8ee5a9f5c176
--- /dev/null
+++ b/net-im/webinar/pkg-descr
@@ -0,0 +1,3 @@
+Obsidian is an Electron-based desktop application that allows creating a
+knowledge base from Markdown-formatted notes. Notes can be connected and
+visualized as a graph.
diff --git a/net-im/webinar/pkg-plist b/net-im/webinar/pkg-plist
new file mode 100644
index 000000000000..c3ac1876d56b
--- /dev/null
+++ b/net-im/webinar/pkg-plist
@@ -0,0 +1,83 @@
+bin/webinar
+share/applications/webinar.desktop
+share/pixmaps/webinar.png
+%%DATADIR%%/chrome_100_percent.pak
+%%DATADIR%%/chrome_200_percent.pak
+%%DATADIR%%/chrome_crashpad_handler
+%%DATADIR%%/chromedriver
+%%DATADIR%%/command.sh
+%%DATADIR%%/desktop-common.sh
+%%DATADIR%%/desktop-gnome-specific.sh
+%%DATADIR%%/desktop-init.sh
+%%DATADIR%%/icudtl.dat
+%%DATADIR%%/libEGL.so
+%%DATADIR%%/libGLESv2.so
+%%DATADIR%%/libffmpeg.so
+%%DATADIR%%/libvk_swiftshader.so
+%%DATADIR%%/libvulkan.so
+%%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/vi.pak
+%%DATADIR%%/locales/zh-CN.pak
+%%DATADIR%%/locales/zh-TW.pak
+%%DATADIR%%/resources.pak
+%%DATADIR%%/resources/app.asar
+%%DATADIR%%/resources/assets/assets.d.ts
+%%DATADIR%%/resources/assets/entitlements.mac.plist
+%%DATADIR%%/resources/assets/icon.icns
+%%DATADIR%%/resources/assets/icon.ico
+%%DATADIR%%/resources/assets/icon.png
+%%DATADIR%%/snapshot_blob.bin
+%%DATADIR%%/swiftshader/libEGL.so
+%%DATADIR%%/swiftshader/libGLESv2.so
+%%DATADIR%%/v8_context_snapshot.bin
+%%DATADIR%%/vk_swiftshader_icd.json
+%%DATADIR%%/webinar