diff options
Diffstat (limited to 'packages/net-im/discord')
| -rw-r--r-- | packages/net-im/discord/discord-1.0.161.exheres-0 | 120 | ||||
| -rw-r--r-- | packages/net-im/discord/files/discord-launcher | 4 | ||||
| -rw-r--r-- | packages/net-im/discord/files/discord.desktop | 9 | ||||
| -rw-r--r-- | packages/net-im/discord/files/manifest.json | 11 |
4 files changed, 144 insertions, 0 deletions
diff --git a/packages/net-im/discord/discord-1.0.161.exheres-0 b/packages/net-im/discord/discord-1.0.161.exheres-0 new file mode 100644 index 0000000..403a5ca --- /dev/null +++ b/packages/net-im/discord/discord-1.0.161.exheres-0 @@ -0,0 +1,120 @@ +# Copyright 2026 Gurov <thuggerthugger1@duck.com> +# Distributed under the terms of the GNU General Public License v2 + +require freedesktop-desktop freedesktop-mime gtk-icon-cache + +SUMMARY="Voice, video, and text chat client" +HOMEPAGE="https://discord.com/" + +DISCORD_BASE="https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/${PV}" +UPDATE_DISABLER_COMMIT="2f26748a667045d26bc19841f1a731b4be7a7514" +DISCORD_MODULES=( + discord_desktop_core discord_erlpack discord_spellcheck discord_utils + discord_voice discord_zstd discord_rpc discord_game_utils discord_krisp +) + +DOWNLOADS=" + ${DISCORD_BASE}/full.distro -> ${PNV}.distro + https://github.com/flathub/com.discordapp.Discord/raw/${UPDATE_DISABLER_COMMIT}/disable-breaking-updates.py + -> ${PN}-disable-breaking-updates-${UPDATE_DISABLER_COMMIT}.py +" +for module in "${DISCORD_MODULES[@]}"; do + DOWNLOADS+=" ${DISCORD_BASE}/${module}/1/full.distro -> ${PNV}-${module}.distro " +done + +LICENCES="all-rights-reserved" +SLOT="0" +PLATFORMS="~amd64" +RESTRICT="mirror strip test" + +DEPENDENCIES=" + build: + app-arch/brotli + app-arch/zip + + run: + dev-lang/python:*[>=3] + dev-libs/at-spi2-core + dev-libs/expat + dev-libs/glib:2 + dev-libs/nspr + dev-libs/nss + media-libs/fontconfig + net-print/cups + sys-apps/dbus + sys-apps/util-linux + sys-libs/wayland + sys-sound/alsa-lib + x11-dri/libdrm + x11-dri/mesa + x11-libs/cairo + x11-libs/gdk-pixbuf:2.0 + x11-libs/gtk+:3 + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXrandr + x11-libs/libxcb + x11-libs/libxkbcommon + x11-libs/libxshmfence + x11-libs/pango +" + +WORK="${WORKBASE}/discord" + +pkg_setup() { + exdirectory --allow /opt +} + +src_unpack() { + edo mkdir -p "${WORK}" + edo brotli -d "${FETCHEDDIR}/${PNV}.distro" -o "${WORKBASE}/${PNV}.tar" + edo tar -xf "${WORKBASE}/${PNV}.tar" -C "${WORK}" + edo rm "${WORKBASE}/${PNV}.tar" + + local module + for module in "${DISCORD_MODULES[@]}"; do + edo mkdir -p "${WORKBASE}/${module}" + edo brotli -d "${FETCHEDDIR}/${PNV}-${module}.distro" -o "${WORKBASE}/${module}.tar" + edo tar -xf "${WORKBASE}/${module}.tar" -C "${WORKBASE}/${module}" + edo pushd "${WORKBASE}/${module}/files" + edo zip -qr "${WORK}/files/resources/bootstrap/${module}.zip" . + edo popd + edo rm -r "${WORKBASE}/${module}" "${WORKBASE}/${module}.tar" + done +} + +src_prepare() { + edo cp "${FILES}/manifest.json" "${WORK}/files/resources/bootstrap/manifest.json" +} + +src_install() { + edo mkdir -p "${IMAGE}/opt/discord" + edo cp -r "${WORK}/files/." "${IMAGE}/opt/discord/" + edo chmod 4755 "${IMAGE}/opt/discord/chrome-sandbox" + + insinto /opt/discord + newins "${FETCHEDDIR}/${PN}-disable-breaking-updates-${UPDATE_DISABLER_COMMIT}.py" disable-breaking-updates.py + edo chmod 755 "${IMAGE}/opt/discord/disable-breaking-updates.py" + + insinto /usr/share/icons/hicolor/256x256/apps + newins "${WORK}/files/discord.png" discord.png + insinto /usr/share/applications + doins "${FILES}/discord.desktop" + exeinto /usr/$(exhost --target)/bin + newexe "${FILES}/discord-launcher" discord +} + +pkg_postinst() { + freedesktop-mime_pkg_postinst + freedesktop-desktop_pkg_postinst + gtk-icon-cache_pkg_postinst +} + +pkg_postrm() { + freedesktop-mime_pkg_postrm + freedesktop-desktop_pkg_postrm + gtk-icon-cache_pkg_postrm +} diff --git a/packages/net-im/discord/files/discord-launcher b/packages/net-im/discord/files/discord-launcher new file mode 100644 index 0000000..4c7a969 --- /dev/null +++ b/packages/net-im/discord/files/discord-launcher @@ -0,0 +1,4 @@ +#!/bin/sh + +/usr/bin/env python3 /opt/discord/disable-breaking-updates.py +exec /opt/discord/Discord "$@" diff --git a/packages/net-im/discord/files/discord.desktop b/packages/net-im/discord/files/discord.desktop new file mode 100644 index 0000000..1418496 --- /dev/null +++ b/packages/net-im/discord/files/discord.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Discord +Comment=Voice, video, and text chat +Exec=discord --url -- %u +Icon=discord +Type=Application +Categories=Network;InstantMessaging; +StartupWMClass=discord +MimeType=x-scheme-handler/discord; diff --git a/packages/net-im/discord/files/manifest.json b/packages/net-im/discord/files/manifest.json new file mode 100644 index 0000000..1359c6e --- /dev/null +++ b/packages/net-im/discord/files/manifest.json @@ -0,0 +1,11 @@ +{ + "discord_desktop_core": 1, + "discord_erlpack": 1, + "discord_spellcheck": 1, + "discord_utils": 1, + "discord_voice": 1, + "discord_zstd": 1, + "discord_rpc": 1, + "discord_game_utils": 1, + "discord_krisp": 1 +} |
