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.62.tar.gz 3000116 BLAKE2B 2a033f9e3449dc839aa31c82cde0d8aeb20467425dc3253a721c13b0d068d731e4dab94cb7840febbdfd5c67e39aed2dc3b5a05d0587470f1399d7c8a3c806ea SHA512 0f1638d17ed28f8d8710e31391c516df631f42f5b3f187fa2b8227e9e1819b48a4c9fbca1ee35e7c1de6f3b52135a67ce720f26c531767ade7f0e242a8599e84
|
||||||
DIST steam_1.0.0.59.tar.gz 2899959 BLAKE2B e213cdd417b795f90b9ff6081a3b43b058068ba153b0fad8658d648d6ba8840a644956a666955a99dae2c3eae490059522053fd85a20046b95fd4c22d04255fa SHA512 c5cbe0849b93076bf375de86c78c351af5841163825f2581d54ef98d2501f002d35b18c93b95dba1a7c65444a137bdd5e30f63ca0e72ae6ad526b11a50018276
|
|
||||||
|
@ -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