Postsync update gentoo

This commit is contained in:
fabolous005 2024-10-04 23:41:48 +02:00
parent 19bd693fc5
commit 2bf9b7e592
3 changed files with 348 additions and 0 deletions

View File

@ -0,0 +1,127 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit desktop pax-utils unpacker xdg
DESCRIPTION="Spotify is a social music platform"
HOMEPAGE="https://www.spotify.com/download/linux/"
SRC_BASE="http://repository.spotify.com/pool/non-free/s/${PN}-client/"
BUILD_ID_AMD64="364.gf06e5cee"
SRC_URI="${SRC_BASE}${PN}-client_${PV}.${BUILD_ID_AMD64}_amd64.deb"
LICENSE="Spotify"
SLOT="0"
KEYWORDS="amd64"
IUSE="libnotify local-playback pax-kernel pulseaudio"
RESTRICT="mirror strip"
BDEPEND="
>=dev-util/patchelf-0.10
sys-devel/gettext
"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
dev-libs/openssl:0=
dev-python/dbus-python
media-libs/alsa-lib
media-libs/fontconfig
media-libs/harfbuzz
media-libs/mesa
net-misc/curl[ssl]
net-print/cups[ssl(+)]
sys-apps/dbus
sys-libs/zlib
x11-libs/cairo
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXrandr
x11-libs/libdrm
x11-libs/libxcb
x11-libs/libxkbcommon
x11-libs/pango
!gnome-extra/gnome-integration-spotify
libnotify? ( x11-libs/libnotify )
dev-libs/libayatana-appindicator
local-playback? ( media-video/ffmpeg:0/56.58.58 )
pulseaudio? ( media-libs/libpulse )
!pulseaudio? ( media-sound/apulse )
"
#gnome-integration-spotify causes spotify to fail to launch
#sys-libs/glibc
S="${WORKDIR}/"
QA_PREBUILT="
opt/spotify/spotify-client/spotify
opt/spotify/spotify-client/libEGL.so
opt/spotify/spotify-client/libGLESv2.so
opt/spotify/spotify-client/libcef.so
opt/spotify/spotify-client/libvk_swiftshader.so
opt/spotify/spotify-client/libvulkan.so.1
opt/spotify/spotify-client/swiftshader/libEGL.so
opt/spotify/spotify-client/swiftshader/libGLESv2.so
"
src_prepare() {
default
# Spotify links against libcurl-gnutls.so.4, which does not exist in Gentoo.
patchelf --replace-needed libcurl-gnutls.so.4 libcurl.so.4 usr/bin/spotify \
|| die "failed to patch libcurl library dependency"
}
src_install() {
SPOTIFY_PKG_HOME=usr/share/spotify
insinto /usr/share/pixmaps
doins ${SPOTIFY_PKG_HOME}/icons/*.png
# install in /opt/spotify
SPOTIFY_HOME=/opt/spotify/spotify-client
insinto ${SPOTIFY_HOME}
doins -r ${SPOTIFY_PKG_HOME}/*
fperms +x ${SPOTIFY_HOME}/spotify
dodir /usr/bin
SPOTIFY_HOME=${SPOTIFY_HOME} LIBDIR=$(get_libdir) \
envsubst '$SPOTIFY_HOME $LIBDIR' \
< "${FILESDIR}/spotify-wrapper" > "${D}/usr/bin/spotify" || die
fperms +x /usr/bin/spotify
local size
for size in 16 22 24 32 48 64 128 256 512; do
newicon -s ${size} "${S}${SPOTIFY_PKG_HOME}/icons/spotify-linux-${size}.png" \
"spotify-client.png"
done
domenu "${S}${SPOTIFY_PKG_HOME}/spotify.desktop"
if use pax-kernel; then
#create the headers, reset them to default, then paxmark -m them
pax-mark C "${ED}${SPOTIFY_HOME}/${PN}" || die
pax-mark z "${ED}${SPOTIFY_HOME}/${PN}" || die
pax-mark m "${ED}${SPOTIFY_HOME}/${PN}" || die
eqawarn "You have set USE=pax-kernel meaning that you intend to run"
eqawarn "${PN} under a PaX enabled kernel. To do so, we must modify"
eqawarn "the ${PN} binary itself and this *may* lead to breakage! If"
eqawarn "you suspect that ${PN} is being broken by this modification,"
eqawarn "please open a bug."
fi
}
pkg_postinst() {
xdg_pkg_postinst
ewarn "If Spotify crashes after an upgrade its cache may be corrupt."
ewarn "To remove the cache:"
ewarn "rm -rf ~/.cache/spotify"
}

View File

@ -0,0 +1,96 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MY_PN="${PN/-bin/}"
inherit pax-utils unpacker xdg
DESCRIPTION="Allows you to send and receive messages of Signal Messenger on your computer"
HOMEPAGE="https://signal.org/
https://github.com/signalapp/Signal-Desktop"
SRC_URI="https://updates.signal.org/desktop/apt/pool/s/${MY_PN}/${MY_PN}_${PV}_amd64.deb"
S="${WORKDIR}"
LICENSE="GPL-3 MIT MIT-with-advertising BSD-1 BSD-2 BSD Apache-2.0 ISC openssl ZLIB APSL-2 icu Artistic-2 LGPL-2.1"
SLOT="0"
KEYWORDS="-* amd64"
IUSE="+sound"
RESTRICT="splitdebug"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
dev-libs/nss
>=media-fonts/noto-emoji-20231130
media-libs/alsa-lib
media-libs/mesa[X(+)]
net-print/cups
sys-apps/dbus[X]
x11-libs/cairo
x11-libs/gtk+:3[X]
x11-libs/libdrm
x11-libs/libX11
x11-libs/libxcb
x11-libs/libxkbcommon
x11-libs/libXcomposite
x11-libs/libXdamage
x11-libs/libXext
x11-libs/libXfixes
x11-libs/libXrandr
x11-libs/pango
sound? (
|| (
media-libs/libpulse
media-sound/apulse
)
)
"
QA_PREBUILT="
opt/Signal/chrome_crashpad_handler
opt/Signal/chrome-sandbox
opt/Signal/libEGL.so
opt/Signal/libGLESv2.so
opt/Signal/libffmpeg.so
opt/Signal/libvk_swiftshader.so
opt/Signal/libvulkan.so.1
opt/Signal/resources/app.asar.unpacked/node_modules/*
opt/Signal/signal-desktop
opt/Signal/swiftshader/libEGL.so
opt/Signal/swiftshader/libGLESv2.so"
src_prepare() {
default
sed -e 's| --no-sandbox||g' \
-i usr/share/applications/signal-desktop.desktop || die
unpack usr/share/doc/signal-desktop/changelog.gz
}
src_install() {
insinto /
dodoc changelog
doins -r opt
insinto /usr/share
if has_version media-sound/apulse[-sdk] && ! has_version media-sound/pulseaudio; then
sed -i 's/Exec=/Exec=apulse /g' usr/share/applications/signal-desktop.desktop || die
fi
doins -r usr/share/applications
doins -r usr/share/icons
fperms +x /opt/Signal/signal-desktop /opt/Signal/chrome-sandbox /opt/Signal/chrome_crashpad_handler
fperms u+s /opt/Signal/chrome-sandbox
pax-mark m opt/Signal/signal-desktop opt/Signal/chrome-sandbox opt/Signal/chrome_crashpad_handler
dosym -r /opt/Signal/${MY_PN} /usr/bin/${MY_PN}
}
pkg_postinst() {
xdg_pkg_postinst
elog "For using the tray icon on compatible desktop environments, start Signal with"
elog " '--start-in-tray' or '--use-tray-icon'."
}

View File

@ -0,0 +1,125 @@
# Copyright 2011-2024 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 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 pax-utils unpacker xdg
DESCRIPTION="The web browser from Google"
HOMEPAGE="https://www.google.com/chrome"
if [[ ${PN} == google-chrome ]]; then
MY_PN=${PN}-stable
else
MY_PN=${PN}
fi
MY_P="${MY_PN}_${PV}-1"
SRC_URI="https://dl.google.com/linux/chrome/deb/pool/main/g/${MY_PN}/${MY_P}_amd64.deb"
S=${WORKDIR}
LICENSE="google-chrome"
SLOT="0"
KEYWORDS="-* amd64"
IUSE="qt5 qt6 selinux"
RESTRICT="bindist mirror strip"
RDEPEND="
>=app-accessibility/at-spi2-core-2.46.0:2
app-misc/ca-certificates
dev-libs/expat
dev-libs/glib:2
dev-libs/nspr
>=dev-libs/nss-3.26
media-fonts/liberation-fonts
media-libs/alsa-lib
media-libs/mesa
net-misc/curl
net-print/cups
sys-apps/dbus
sys-libs/glibc
sys-libs/libcap
x11-libs/cairo
x11-libs/gdk-pixbuf:2
|| (
x11-libs/gtk+:3
gui-libs/gtk:4
)
x11-libs/libdrm
x11-libs/libxkbcommon
x11-libs/libxshmfence
x11-libs/pango
x11-misc/xdg-utils
qt5? (
dev-qt/qtcore:5
dev-qt/qtgui:5[X]
dev-qt/qtwidgets:5
)
qt6? ( dev-qt/qtbase:6[gui,widgets] )
selinux? ( sec-policy/selinux-chromium )
"
QA_PREBUILT="*"
QA_DESKTOP_FILE="usr/share/applications/google-chrome.*\\.desktop"
CHROME_HOME="opt/google/chrome${PN#google-chrome}"
pkg_nofetch() {
eerror "Please wait 24 hours and sync your tree before reporting a bug for google-chrome fetch failures."
}
pkg_pretend() {
# Protect against people using autounmask overzealously
use amd64 || die "google-chrome only works on amd64"
}
pkg_setup() {
chromium_suid_sandbox_check_kernel_config
}
src_unpack() {
:
}
src_install() {
dodir /
cd "${ED}" || die
unpacker
rm -r etc usr/share/menu || die
mv usr/share/doc/${MY_PN} usr/share/doc/${PF} || die
gzip -d usr/share/doc/${PF}/changelog.gz || die
gzip -d usr/share/man/man1/${MY_PN}.1.gz || die
if [[ -L usr/share/man/man1/google-chrome.1.gz ]]; then
rm usr/share/man/man1/google-chrome.1.gz || die
dosym ${MY_PN}.1 usr/share/man/man1/google-chrome.1
fi
pushd "${CHROME_HOME}/locales" > /dev/null || die
chromium_remove_language_paks
popd > /dev/null || die
if ! use qt5; then
rm "${CHROME_HOME}/libqt5_shim.so" || die
fi
if ! use qt6; then
rm "${CHROME_HOME}/libqt6_shim.so" || die
fi
local suffix=
[[ ${PN} == google-chrome-beta ]] && suffix=_beta
[[ ${PN} == google-chrome-unstable ]] && suffix=_dev
local size
for size in 16 24 32 48 64 128 256 ; do
newicon -s ${size} "${CHROME_HOME}/product_logo_${size}${suffix}.png" ${PN}.png
done
pax-mark m "${CHROME_HOME}/chrome"
}