parent
ff1b396c33
commit
5df41677d7
@ -1,2 +1 @@
|
||||
DIST steam_1.0.0.56.tar.gz 2899122 BLAKE2B a4955975b36d7916d634cd076356f61a90751bdda07aa87ea79ea2237c0b17b1377685f3d6ff41ad82e3921580dc4f3524fbfe45e5918a52c146ea4bd5393c5f SHA512 17fdd26b829a5860520d955326af88ebacda18183fbf9a70cbb38a9c593cc6c3e85237ec0be598e80a3e1d2bc4354a4933e372321ce0b8716ac481cfb3d7a5e0
|
||||
DIST steam_1.0.0.59.tar.gz 2899959 BLAKE2B e213cdd417b795f90b9ff6081a3b43b058068ba153b0fad8658d648d6ba8840a644956a666955a99dae2c3eae490059522053fd85a20046b95fd4c22d04255fa SHA512 c5cbe0849b93076bf375de86c78c351af5841163825f2581d54ef98d2501f002d35b18c93b95dba1a7c65444a137bdd5e30f63ca0e72ae6ad526b11a50018276
|
||||
DIST steam_1.0.0.62.tar.gz 3000116 BLAKE2B 2a033f9e3449dc839aa31c82cde0d8aeb20467425dc3253a721c13b0d068d731e4dab94cb7840febbdfd5c67e39aed2dc3b5a05d0587470f1399d7c8a3c806ea SHA512 0f1638d17ed28f8d8710e31391c516df631f42f5b3f187fa2b8227e9e1819b48a4c9fbca1ee35e7c1de6f3b52135a67ce720f26c531767ade7f0e242a8599e84
|
||||
|
@ -1,69 +0,0 @@
|
||||
/* Copyright 1999-2019 Gentoo Authors */
|
||||
/* Distributed under the terms of the GNU General Public License v2 */
|
||||
|
||||
#define _GNU_SOURCE
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include <errno.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#define STEAM_PRELOAD_QUOTE(name) #name
|
||||
#define STEAM_PRELOAD_STR(macro) STEAM_PRELOAD_QUOTE(macro)
|
||||
#define GLIBDIR_STR STEAM_PRELOAD_STR(GLIBDIR)
|
||||
|
||||
int (*execve_real)(const char *filename, char *const argv[], char *const envp[]) = NULL;
|
||||
|
||||
int execve(const char *filename, char *const argv[], char *const envp[]) {
|
||||
if (execve_real == NULL) {
|
||||
execve_real = dlsym(RTLD_NEXT, "execve");
|
||||
}
|
||||
|
||||
if (strcmp(filename, "./steamwebhelper") == 0) {
|
||||
fputs("Gentoo caught steamwebhelper invocation\n", stderr);
|
||||
|
||||
unsigned int i;
|
||||
for (i = 0; envp[i] != NULL; i++);
|
||||
char **envp2 = malloc(sizeof(char*) * i);
|
||||
|
||||
if (envp2 == NULL) {
|
||||
errno = ENOMEM;
|
||||
return -1;
|
||||
}
|
||||
|
||||
int ret;
|
||||
char *llp = NULL;
|
||||
|
||||
for (i = 0; envp[i] != NULL; i++) {
|
||||
if (strncmp(envp[i], "LD_LIBRARY_PATH=", 16) == 0) {
|
||||
const char *gl_ldpath = getenv("GL_LDPATH");
|
||||
|
||||
if (gl_ldpath) {
|
||||
ret = asprintf(&llp, "LD_LIBRARY_PATH=%s:" GLIBDIR_STR ":%s", gl_ldpath, envp[i] + 16);
|
||||
} else {
|
||||
ret = asprintf(&llp, "LD_LIBRARY_PATH=" GLIBDIR_STR ":%s", envp[i] + 16);
|
||||
}
|
||||
|
||||
if (ret < 0) {
|
||||
free(envp2);
|
||||
errno = ENOMEM;
|
||||
return -1;
|
||||
}
|
||||
|
||||
fprintf(stderr, "Gentoo reinvoking steamwebhelper with %s\n", llp);
|
||||
envp2[i] = llp;
|
||||
} else {
|
||||
envp2[i] = envp[i];
|
||||
}
|
||||
}
|
||||
|
||||
envp2[i] = NULL;
|
||||
ret = execve_real(filename, argv, envp2);
|
||||
free(envp2);
|
||||
free(llp);
|
||||
return ret;
|
||||
} else {
|
||||
return execve_real(filename, argv, envp);
|
||||
}
|
||||
}
|
@ -1,19 +0,0 @@
|
||||
diff -Naur a/steam b/steam
|
||||
--- a/steam 2016-08-14 18:44:23.069675427 +0100
|
||||
+++ b/steam 2016-10-04 12:52:42.144904337 +0100
|
||||
@@ -38,6 +38,15 @@
|
||||
# Gentoo's lsb-release doesn't set this.
|
||||
export DISTRIB_RELEASE="2.2"
|
||||
|
||||
+# Finds joystick devices so we can coerce Steam's old SDL library into using them
|
||||
+IFS=$'\n'
|
||||
+for f in $(find /dev/input -maxdepth 1 -type c | sort --version-sort); do
|
||||
+ if udevadm info --query=property --name="$f" 2>/dev/null | grep --quiet ID_INPUT_JOYSTICK=1; then
|
||||
+ export SDL_JOYSTICK_DEVICE+=${SDL_JOYSTICK_DEVICE+:}$f
|
||||
+ fi
|
||||
+done
|
||||
+unset IFS
|
||||
+
|
||||
function show_message()
|
||||
{
|
||||
style=$1
|
@ -1,24 +0,0 @@
|
||||
diff -Naur a/steam b/steam
|
||||
--- a/steam 2016-03-29 21:03:30.000000000 +0100
|
||||
+++ b/steam 2016-08-14 18:31:09.449120220 +0100
|
||||
@@ -17,6 +17,20 @@
|
||||
# Set up domain for script localization
|
||||
export TEXTDOMAIN=steam
|
||||
|
||||
+# A libpcre.so.3 symlink to libpcre.so.1 is installed here. It's
|
||||
+# needed by some games when not using the Steam runtime.
|
||||
+export LD_LIBRARY_PATH+="${LD_LIBRARY_PATH+:}@@DEBIAN_COMPAT@@"
|
||||
+
|
||||
+# Steam appends /usr/lib32 to LD_LIBRARY_PATH. We need to make sure that
|
||||
+# OpenGL implementation dir goes before that, so we need to append it
|
||||
+# to user's LD_LIBRARY_PATH ourselves. But that's needed only with
|
||||
+# the new eselect-opengl that uses 000opengl file.
|
||||
+if [[ -f "/etc/env.d/000opengl" ]]; then
|
||||
+ . "/etc/env.d/000opengl"
|
||||
+ # Append only when LDPATH is non-empty -- i.e. using nvidia or ati.
|
||||
+ [[ -n "${LDPATH}" ]] && LD_LIBRARY_PATH+=":${LDPATH}"
|
||||
+fi
|
||||
+
|
||||
function show_message()
|
||||
{
|
||||
style=$1
|
@ -1,35 +0,0 @@
|
||||
diff -Naur a/steam b/steam
|
||||
--- a/steam 2019-03-24 23:05:23.035074609 +0000
|
||||
+++ b/steam 2019-03-24 23:15:11.768471262 +0000
|
||||
@@ -17,6 +17,31 @@
|
||||
# Set up domain for script localization
|
||||
export TEXTDOMAIN=steam
|
||||
|
||||
+# Add paths to occasionally needed libraries not found in /usr/lib.
|
||||
+export LD_LIBRARY_PATH+="${LD_LIBRARY_PATH+:}@@GENTOO_LD_LIBRARY_PATH@@"
|
||||
+
|
||||
+# Steam appends /usr/lib32 to LD_LIBRARY_PATH. We need to make sure that
|
||||
+# OpenGL implementation dir goes before that, so we need to append it to
|
||||
+# user's LD_LIBRARY_PATH ourselves. But that's needed only with the new
|
||||
+# eselect-opengl that uses 000opengl file. GL_LDPATH is also used by
|
||||
+# by Gentoo's execve wrapper.
|
||||
+if [[ -f /etc/env.d/000opengl ]]; then
|
||||
+ export GL_LDPATH=$(. /etc/env.d/000opengl >/dev/null; echo "${LDPATH}")
|
||||
+
|
||||
+ # Append only when GL_LDPATH is non-empty -- i.e. using nvidia or ati.
|
||||
+ if [[ -n ${GL_LDPATH} ]]; then
|
||||
+ LD_LIBRARY_PATH+=":${GL_LDPATH}"
|
||||
+ else
|
||||
+ unset GL_LDPATH
|
||||
+ fi
|
||||
+else
|
||||
+ unset GL_LDPATH
|
||||
+fi
|
||||
+
|
||||
+# Preload Gentoo's execve wrapper so that steamwebhelper prefers system
|
||||
+# libraries over older bundled libraries.
|
||||
+[[ ${STEAM_RUNTIME} = 0 ]] && export LD_PRELOAD+="${LD_PRELOAD+:}@@GENTOO_LD_PRELOAD@@"
|
||||
+
|
||||
function show_message()
|
||||
{
|
||||
style=$1
|
@ -1,14 +0,0 @@
|
||||
diff -Naur a/steam b/steam
|
||||
--- a/steam 2016-08-14 18:34:25.911287460 +0100
|
||||
+++ b/steam 2016-08-14 18:38:10.673046304 +0100
|
||||
@@ -31,6 +31,10 @@
|
||||
[[ -n "${LDPATH}" ]] && LD_LIBRARY_PATH+=":${LDPATH}"
|
||||
fi
|
||||
|
||||
+# Set a default STEAM_RUNTIME value.
|
||||
+: ${STEAM_RUNTIME:=@@STEAM_RUNTIME@@}
|
||||
+export STEAM_RUNTIME
|
||||
+
|
||||
function show_message()
|
||||
{
|
||||
style=$1
|
@ -1,13 +0,0 @@
|
||||
diff -Naur a/steam b/steam
|
||||
--- a/steam 2016-08-14 18:38:48.226504733 +0100
|
||||
+++ b/steam 2016-08-14 18:43:41.709271991 +0100
|
||||
@@ -35,6 +35,9 @@
|
||||
: ${STEAM_RUNTIME:=@@STEAM_RUNTIME@@}
|
||||
export STEAM_RUNTIME
|
||||
|
||||
+# Gentoo's lsb-release doesn't set this.
|
||||
+export DISTRIB_RELEASE="2.2"
|
||||
+
|
||||
function show_message()
|
||||
{
|
||||
style=$1
|
@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Set a default STEAM_RUNTIME value.
|
||||
: ${STEAM_RUNTIME:=@@STEAM_RUNTIME@@}
|
||||
export STEAM_RUNTIME
|
||||
|
||||
# Gentoo's lsb-release doesn't set this.
|
||||
export DISTRIB_RELEASE="@@PVR@@"
|
||||
|
||||
# Find joystick devices to make Steam's old SDL library use them.
|
||||
IFS=$'\n'
|
||||
for f in $(find /dev/input -maxdepth 1 -type c | sort --version-sort); do
|
||||
if udevadm info --query=property --name="$f" 2>/dev/null | grep --quiet ID_INPUT_JOYSTICK=1; then
|
||||
export SDL_JOYSTICK_DEVICE+=${SDL_JOYSTICK_DEVICE+:}$f
|
||||
fi
|
||||
done
|
||||
unset IFS
|
||||
|
||||
# Add paths to occasionally needed libraries not found in /usr/lib.
|
||||
export LD_LIBRARY_PATH+="${LD_LIBRARY_PATH+:}@@GENTOO_LD_LIBRARY_PATH@@"
|
||||
|
||||
# Steam appends /usr/lib32 to LD_LIBRARY_PATH. We need to make sure
|
||||
# that OpenGL implementation dir goes before that, so we need to
|
||||
# append it to user's LD_LIBRARY_PATH ourselves. But that's needed
|
||||
# only with the new eselect-opengl that uses 000opengl file.
|
||||
if [[ -f "/etc/env.d/000opengl" ]]; then
|
||||
. "/etc/env.d/000opengl"
|
||||
# Append only when LDPATH is non-empty -- i.e. using nvidia or ati.
|
||||
[[ -n "${LDPATH}" ]] && LD_LIBRARY_PATH+=":${LDPATH}"
|
||||
fi
|
||||
|
||||
. "${0%/*}"/../lib/steam/bin_steam.sh
|
@ -1,162 +0,0 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
# Please report bugs/suggestions on: https://github.com/anyc/steam-overlay
|
||||
# or come to #gentoo-gamerlay in freenode IRC
|
||||
|
||||
inherit eutils gnome2-utils linux-info prefix udev xdg
|
||||
|
||||
DESCRIPTION="Installer, launcher and supplementary files for Valve's Steam client"
|
||||
HOMEPAGE="http://steampowered.com"
|
||||
SRC_URI="http://repo.steampowered.com/steam/pool/steam/s/steam/steam_${PV}.tar.gz"
|
||||
|
||||
KEYWORDS="amd64 x86"
|
||||
LICENSE="ValveSteamLicense"
|
||||
|
||||
RESTRICT="bindist mirror"
|
||||
SLOT="0"
|
||||
IUSE="+steamruntime"
|
||||
|
||||
RDEPEND="
|
||||
app-arch/tar
|
||||
app-shells/bash
|
||||
net-misc/curl
|
||||
|| (
|
||||
>=gnome-extra/zenity-3
|
||||
x11-terms/xterm
|
||||
)
|
||||
|
||||
steamruntime? (
|
||||
virtual/opengl[abi_x86_32]
|
||||
x11-libs/libX11[abi_x86_32]
|
||||
x11-libs/libXau[abi_x86_32]
|
||||
x11-libs/libxcb[abi_x86_32]
|
||||
x11-libs/libXdmcp[abi_x86_32]
|
||||
)
|
||||
!steamruntime? (
|
||||
>=games-util/steam-client-meta-0-r20141204[steamruntime?]
|
||||
)
|
||||
|
||||
amd64? (
|
||||
>=sys-devel/gcc-4.6.0[multilib]
|
||||
>=sys-libs/glibc-2.15[multilib]
|
||||
)
|
||||
x86? (
|
||||
>=sys-devel/gcc-4.6.0
|
||||
>=sys-libs/glibc-2.15
|
||||
)"
|
||||
|
||||
S=${WORKDIR}/steam/
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/steam-fix-ld-library-path.patch
|
||||
"${FILESDIR}"/steam-runtime-default.patch
|
||||
"${FILESDIR}"/steam-set-distrib-release.patch
|
||||
"${FILESDIR}"/steam-fix-joystick-detection.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
linux-info_pkg_setup
|
||||
|
||||
if ! { linux_config_exists && linux_chkconfig_present INPUT_UINPUT; }; then
|
||||
ewarn "If you want to use the Steam controller, please make sure"
|
||||
ewarn "CONFIG_INPUT_UINPUT is enabled in your kernel config."
|
||||
|
||||
# Device Drivers
|
||||
# -> Input device support
|
||||
# -> Miscellaneous devices
|
||||
# -> User level driver support
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
xdg_environment_reset
|
||||
default
|
||||
|
||||
sed -i 's:TAG+="uaccess":\0, TAG+="udev-acl":g' \
|
||||
lib/udev/rules.d/60-steam-input.rules || die
|
||||
|
||||
sed -i \
|
||||
-e "s:@@DEBIAN_COMPAT@@:${EPREFIX}/usr/$(get_libdir)/debiancompat$(use amd64 && echo "\\:${EPREFIX}/usr/$(ABI=x86 get_libdir)/debiancompat"):g" \
|
||||
-e "s:@@STEAM_RUNTIME@@:$(usex steamruntime 1 0):g" \
|
||||
steam || die
|
||||
|
||||
# use steam launcher version as release number as it is a bit more helpful than the baselayout version
|
||||
sed -i -e "s,export DISTRIB_RELEASE=\"2.2\",export DISTRIB_RELEASE=\"${PVR}\"," steam || die
|
||||
|
||||
# Still need EPREFIX in the DEBIAN_COMPAT sed replacement because
|
||||
# the regular expression used by hprefixify doesn't match here.
|
||||
hprefixify steam
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
:
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin steam
|
||||
|
||||
insinto /usr/lib/steam/
|
||||
doins bootstraplinux_ubuntu12_32.tar.xz
|
||||
|
||||
udev_dorules lib/udev/rules.d/60-steam-input.rules lib/udev/rules.d/60-steam-vr.rules
|
||||
|
||||
dodoc debian/changelog steam_subscriber_agreement.txt
|
||||
doman steam.6
|
||||
|
||||
domenu steam.desktop
|
||||
|
||||
cd icons/ || die
|
||||
for s in * ; do
|
||||
doicon -s ${s} ${s}/steam.png
|
||||
done
|
||||
|
||||
# tgz archive contains no separate pixmap, see #38
|
||||
insinto /usr/share/pixmaps/
|
||||
newins 48/steam_tray_mono.png steam_tray_mono.png
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
xdg_pkg_preinst
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
gnome2_icon_cache_update
|
||||
udev_reload
|
||||
|
||||
elog "Execute ${EPREFIX}/usr/bin/steam to download and install the actual"
|
||||
elog "client into your home folder. After installation, the script"
|
||||
elog "also starts the client from your home folder."
|
||||
elog ""
|
||||
|
||||
if use steamruntime; then
|
||||
ewarn "You enabled the Steam runtime environment. Steam will use bundled"
|
||||
ewarn "libraries instead of Gentoo's system libraries."
|
||||
ewarn ""
|
||||
else
|
||||
elog "We disable STEAM_RUNTIME in order to ignore bundled libraries"
|
||||
elog "and use installed system libraries instead. If you have problems,"
|
||||
elog "try starting Steam with: STEAM_RUNTIME=1 steam"
|
||||
ewarn ""
|
||||
ewarn "Notice: Valve only supports Steam with the runtime enabled!"
|
||||
ewarn ""
|
||||
fi
|
||||
|
||||
if ! has_version "gnome-extra/zenity"; then
|
||||
ewarn "Valve does not provide a xterm fallback for all calls of zenity."
|
||||
ewarn "Please install gnome-extra/zenity for full support."
|
||||
ewarn ""
|
||||
fi
|
||||
|
||||
ewarn "The Steam client and the games are _not_ controlled by Portage."
|
||||
ewarn "Updates are handled by the client itself."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
xdg_pkg_postrm
|
||||
gnome2_icon_cache_update
|
||||
}
|
Loading…
Reference in new issue