diff options
Diffstat (limited to 'app-office/joplin-desktop/joplin-desktop-3.1.24.ebuild')
-rw-r--r-- | app-office/joplin-desktop/joplin-desktop-3.1.24.ebuild | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/app-office/joplin-desktop/joplin-desktop-3.1.24.ebuild b/app-office/joplin-desktop/joplin-desktop-3.1.24.ebuild new file mode 100644 index 000000000000..64c2fd46b4e0 --- /dev/null +++ b/app-office/joplin-desktop/joplin-desktop-3.1.24.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# NOTICE: This is a Electron app (oh my) and the upstream only provides AppImages. + +EAPI=8 + +APPIMAGE="Joplin-${PV}.AppImage" + +inherit desktop xdg + +DESCRIPTION="Secure note taking and to-do app with synchronization capabilities" +HOMEPAGE="https://joplinapp.org/ + https://github.com/laurent22/joplin/" +SRC_URI="https://github.com/laurent22/joplin/releases/download/v${PV}/${APPIMAGE}" + +LICENSE="AGPL-3+" +SLOT="0" +KEYWORDS="-* ~amd64" +RESTRICT="bindist" + +RDEPEND=" + >=app-accessibility/at-spi2-core-2.46.0:2 + app-crypt/libsecret[crypt] + app-misc/ca-certificates + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + media-libs/alsa-lib + || ( + media-libs/libcanberra-gtk3 + media-libs/libcanberra[gtk3(-)] + ) + media-libs/libglvnd + media-libs/mesa + net-misc/curl + net-print/cups + sys-apps/dbus + sys-libs/zlib + sys-process/lsof + x11-libs/cairo + x11-libs/gtk+:3 + x11-libs/libdrm + x11-libs/libnotify + x11-libs/libX11 + x11-libs/libxcb + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libxkbcommon + x11-libs/libxkbfile + x11-libs/libXrandr + x11-libs/libXScrnSaver + x11-libs/pango + x11-misc/xdg-utils +" + +QA_PREBUILT="*" + +src_unpack() { + mkdir -p "${S}" || die + cp "${DISTDIR}/${APPIMAGE}" "${S}" || die + + cd "${S}" || die # "appimage-extract" unpacks to current directory. + chmod +x "${S}/${APPIMAGE}" || die + "${S}/${APPIMAGE}" --appimage-extract || die +} + +src_prepare() { + # Fix permissions. + find "${S}" -type d -exec chmod a+rx {} + || die + find "${S}" -type f -exec chmod a+r {} + || die + + default +} + +src_install() { + cd "${S}/squashfs-root" || die + + insinto /usr/share + doins -r ./usr/share/icons + + local apphome="/opt/${PN}" + local toremove=( + .DirIcon + @joplinapp-desktop.desktop + @joplinapp-desktop.png + AppRun + LICENSE.electron.txt + LICENSES.chromium.html + resources/app.asar.unpacked/node_modules/7zip-bin-linux/arm + resources/app.asar.unpacked/node_modules/7zip-bin-linux/arm64 + resources/app.asar.unpacked/node_modules/node-notifier + usr + ) + rm -f -r "${toremove[@]}" || die + + mkdir -p "${ED}/${apphome}" || die + cp -r . "${ED}/${apphome}" || die + + dosym -r "${apphome}/@joplinapp-desktop" "/usr/bin/${PN}" + make_desktop_entry "${PN}" Joplin @joplinapp-desktop "Office;" \ + "StartupWMClass=Joplin\nMimeType=x-scheme-handler/joplin;" +} |