Initial commit
This commit is contained in:
2
net-im/equibop-bin/Manifest
Normal file
2
net-im/equibop-bin/Manifest
Normal file
@@ -0,0 +1,2 @@
|
||||
DIST equibop_3.1.6_amd64.deb 161105846 BLAKE2B d67dee0568a1b57012e55569c66b0f2fb19e07278433a1b2c16407c2065c26924cefe22036fee05cf5b0f1feddaddfc0a1bd08c3608de4f524a5235b613d182d SHA512 28c480f3f95a7a146416f13b9efd6989ec175823c55f9d7da47ece5d70aa7d35fbf7f13e81bccd10df3fc405e3960b7048235be3a4712ef7b45ece3b3de28ad0
|
||||
DIST equibop_3.1.6_arm64.deb 153728354 BLAKE2B 998338b53b085d470f5cf47d0a95a816c15a34dbec9da855a7bb64ed82e1e7c5e7217f18f40a83848212c35eff99b5d36e8e15ca7d35b442f5afa9c27c8f348f SHA512 e83d992f44b61e7314eedc0b68d7b9155879340371f7bf942293f149c4fc7de80ef708c072aa39cd88c3989d9f5ce0ab44cbe9de5772a0fadb021b44d05a9c4b
|
||||
156
net-im/equibop-bin/equibop-bin-3.1.6.ebuild
Normal file
156
net-im/equibop-bin/equibop-bin-3.1.6.ebuild
Normal file
@@ -0,0 +1,156 @@
|
||||
# Copyright 2023-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
CHROMIUM_LANGS="
|
||||
af am ar bg bn ca cs da de el en-GB en-US es es-419 et fa fi fil fr gu he hi
|
||||
hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr sv
|
||||
sw ta te th tr uk ur vi zh-CN zh-TW
|
||||
"
|
||||
|
||||
inherit chromium-2 desktop linux-info optfeature unpacker xdg
|
||||
|
||||
DESCRIPTION="Discord Desktop with Equicord preinstalled"
|
||||
HOMEPAGE="https://github.com/Equicord/Equibop"
|
||||
SRC_URI="
|
||||
amd64? ( https://github.com/Equicord/Equibop/releases/download/v${PV}/equibop_${PV}_amd64.deb )
|
||||
arm64? ( https://github.com/Equicord/Equibop/releases/download/v${PV}/equibop_${PV}_arm64.deb )
|
||||
"
|
||||
S="${WORKDIR}"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~arm64"
|
||||
IUSE="+seccomp wayland"
|
||||
RESTRICT="bindist mirror strip"
|
||||
|
||||
RDEPEND="
|
||||
>=app-accessibility/at-spi2-core-2.46.0:2
|
||||
dev-libs/expat
|
||||
dev-libs/glib:2
|
||||
dev-libs/nspr
|
||||
dev-libs/nss
|
||||
media-libs/alsa-lib
|
||||
media-libs/fontconfig
|
||||
media-libs/mesa[gbm(+)]
|
||||
net-print/cups
|
||||
sys-apps/dbus
|
||||
sys-apps/util-linux
|
||||
x11-libs/cairo
|
||||
x11-libs/gdk-pixbuf:2
|
||||
x11-libs/gtk+:3
|
||||
x11-libs/libdrm
|
||||
x11-libs/libX11
|
||||
x11-libs/libXScrnSaver
|
||||
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
|
||||
sys-libs/glibc
|
||||
"
|
||||
|
||||
DESTDIR="/opt/equibop"
|
||||
|
||||
QA_PREBUILT="*"
|
||||
|
||||
CONFIG_CHECK="~USER_NS"
|
||||
|
||||
src_configure() {
|
||||
default
|
||||
chromium_suid_sandbox_check_kernel_config
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Remove post-install scripts
|
||||
rm -f opt/Equibop/postinst.sh opt/Equibop/resources/apparmor-profile ||
|
||||
die "removal of unneeded post-install scripts failed"
|
||||
|
||||
# Cleanup languages
|
||||
pushd "opt/Equibop/locales/" >/dev/null || die "location change for language cleanup failed"
|
||||
chromium_remove_language_paks
|
||||
popd >/dev/null || die "location reset for language cleanup failed"
|
||||
|
||||
# Fix .desktop exec location
|
||||
sed --in-place --expression "s:/opt/Equibop/equibop:equibop:g" \
|
||||
usr/share/applications/equibop.desktop ||
|
||||
die "fixing of exec location on .desktop failed"
|
||||
|
||||
# Update exec location in launcher
|
||||
sed --expression "s:@@DESTDIR@@:${DESTDIR}:" \
|
||||
"${FILESDIR}/launcher.sh" > "${T}/launcher.sh" || die "updating of exec location in launcher failed"
|
||||
|
||||
# USE seccomp in launcher
|
||||
if use seccomp; then
|
||||
sed --in-place --expression '/^EBUILD_SECCOMP=/s/false/true/' \
|
||||
"${T}/launcher.sh" || die "sed failed for seccomp"
|
||||
fi
|
||||
|
||||
# USE wayland in launcher
|
||||
if use wayland; then
|
||||
sed --in-place --expression '/^EBUILD_WAYLAND=/s/false/true/' \
|
||||
"${T}/launcher.sh" || die "sed failed for wayland"
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
doicon usr/share/icons/hicolor/scalable/apps/equibop.svg
|
||||
|
||||
# Install .desktop file
|
||||
domenu usr/share/applications/equibop.desktop
|
||||
|
||||
exeinto "${DESTDIR}"
|
||||
|
||||
doexe opt/Equibop/equibop opt/Equibop/chrome-sandbox \
|
||||
opt/Equibop/libEGL.so opt/Equibop/libffmpeg.so \
|
||||
opt/Equibop/libGLESv2.so opt/Equibop/libvk_swiftshader.so
|
||||
|
||||
insinto "${DESTDIR}"
|
||||
doins opt/Equibop/chrome_100_percent.pak opt/Equibop/chrome_200_percent.pak \
|
||||
opt/Equibop/icudtl.dat opt/Equibop/resources.pak \
|
||||
opt/Equibop/snapshot_blob.bin opt/Equibop/v8_context_snapshot.bin \
|
||||
opt/Equibop/vk_swiftshader_icd.json
|
||||
|
||||
# Install vulkan library if present
|
||||
[[ -f opt/Equibop/libvulkan.so.1 ]] && doexe opt/Equibop/libvulkan.so.1
|
||||
|
||||
insopts -m0755
|
||||
doins -r opt/Equibop/locales opt/Equibop/resources
|
||||
|
||||
# Chrome-sandbox requires the setuid bit to be specifically set.
|
||||
# see https://github.com/electron/electron/issues/17972
|
||||
fowners root "${DESTDIR}/chrome-sandbox"
|
||||
fperms 4711 "${DESTDIR}/chrome-sandbox"
|
||||
|
||||
# Crashpad is included in the package once in a while and when it does, it must be installed.
|
||||
# See #903616 and #890595
|
||||
[[ -x opt/Equibop/chrome_crashpad_handler ]] && doins opt/Equibop/chrome_crashpad_handler
|
||||
|
||||
exeinto "/usr/bin"
|
||||
newexe "${T}/launcher.sh" "equibop" || die "failing to install launcher"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
optfeature_header "Install the following packages for additional support:"
|
||||
optfeature "screenshare audio support (Equibop feature)" media-video/pipewire
|
||||
optfeature "legacy sound support" media-sound/pulseaudio media-sound/apulse[sdk]
|
||||
optfeature "emoji support" media-fonts/noto-emoji
|
||||
optfeature "password storage" app-crypt/libsecret gnome-base/gnome-keyring
|
||||
|
||||
if has_version kde-plasma/kwin[-screencast] && use wayland; then
|
||||
einfo " "
|
||||
einfo "When using KWin on Wayland, the kde-plasma/kwin[screencast] USE flag"
|
||||
einfo "must be enabled for screensharing."
|
||||
einfo " "
|
||||
fi
|
||||
}
|
||||
|
||||
22
net-im/equibop-bin/files/launcher.sh
Normal file
22
net-im/equibop-bin/files/launcher.sh
Normal file
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
declare -a equibop_flags
|
||||
|
||||
# Variables set during ebuild configuration
|
||||
EBUILD_SECCOMP=false
|
||||
EBUILD_WAYLAND=false
|
||||
|
||||
# Seccomp sandbox
|
||||
"${EBUILD_SECCOMP}" || equibop_flags+=( --disable-seccomp-filter-sandbox )
|
||||
|
||||
# Wayland support
|
||||
if "${EBUILD_WAYLAND}" && [[ -n "${WAYLAND_DISPLAY}" ]]; then
|
||||
equibop_flags+=(
|
||||
--enable-features=UseOzonePlatform
|
||||
--ozone-platform=wayland
|
||||
--enable-wayland-ime
|
||||
)
|
||||
fi
|
||||
|
||||
exec @@DESTDIR@@/equibop "${equibop_flags[@]}" "$@"
|
||||
|
||||
Reference in New Issue
Block a user