rpms/pipelight/F-20 pipelight.spec,1.1,1.2
by Björn Esser
Author: besser82
Update of /cvs/nonfree/rpms/pipelight/F-20
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv21387/F-20
Modified Files:
pipelight.spec
Log Message:
fix build, link against mingw-winpthreads-static
Index: pipelight.spec
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/F-20/pipelight.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- pipelight.spec 10 Dec 2014 15:46:48 -0000 1.1
+++ pipelight.spec 11 Dec 2014 09:14:40 -0000 1.2
@@ -26,7 +26,7 @@
Name: pipelight
Version: 0.2.8
-Release: 1%{?gitrel}%{?dist}
+Release: 2%{?gitrel}%{?dist}
Summary: NPAPI Wrapper Plugin for using Windows plugins in Linux browsers
License: GPLv2+ or LGPLv2+ or MPLv1.1
@@ -45,8 +45,8 @@
BuildRequires: mingw32-gcc-c++
BuildRequires: mingw64-gcc-c++
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
-BuildRequires: mingw32-winpthreads
-BuildRequires: mingw64-winpthreads
+BuildRequires: mingw32-winpthreads-static
+BuildRequires: mingw64-winpthreads-static
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 7
Requires: mozilla-filesystem%{?_isa}
@@ -107,9 +107,6 @@
%{__cp} -a debian/changelog ChangeLog
%{__cp} -a debian/copyright COPYRIGHT
-# Remove extra static-flag from mingw-linker-flags.
-%{__sed} -i -e 's![ \t*]-static"$!"!g' configure
-
# Replace the install-dependency-script with a more recent version
# from upstream's scm and fix it's hashbang.
%{__gpg} --batch --no-default-keyring --no-options --skip-verify \
@@ -190,6 +187,9 @@
%changelog
+* Thu Dec 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-2
+- fix build, link against mingw-winpthreads-static
+
* Wed Dec 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-1
- new upstream release v0.2.8
9 years, 11 months
rpms/pipelight/devel pipelight.spec,1.2,1.3
by Björn Esser
Author: besser82
Update of /cvs/nonfree/rpms/pipelight/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv21228/devel
Modified Files:
pipelight.spec
Log Message:
fix build, link against mingw-winpthreads-static
Index: pipelight.spec
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/devel/pipelight.spec,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- pipelight.spec 11 Dec 2014 09:12:44 -0000 1.2
+++ pipelight.spec 11 Dec 2014 09:14:13 -0000 1.3
@@ -26,7 +26,7 @@
Name: pipelight
Version: 0.2.8
-Release: 1%{?gitrel}%{?dist}
+Release: 2%{?gitrel}%{?dist}
Summary: NPAPI Wrapper Plugin for using Windows plugins in Linux browsers
License: GPLv2+ or LGPLv2+ or MPLv1.1
@@ -187,9 +187,11 @@
%changelog
+* Thu Dec 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-2
+- fix build, link against mingw-winpthreads-static
+
* Wed Dec 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-1
- new upstream release v0.2.8
-- fix build, link against mingw-winpthreads-static
* Wed Sep 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-4
- update Flash to 15.0.0.152
9 years, 11 months
rpms/pipelight/devel pipelight.spec,1.1,1.2
by Björn Esser
Author: besser82
Update of /cvs/nonfree/rpms/pipelight/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv21080/devel
Modified Files:
pipelight.spec
Log Message:
fix build, link against mingw-winpthreads-static
Index: pipelight.spec
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/devel/pipelight.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- pipelight.spec 10 Dec 2014 15:46:17 -0000 1.1
+++ pipelight.spec 11 Dec 2014 09:12:44 -0000 1.2
@@ -45,8 +45,8 @@
BuildRequires: mingw32-gcc-c++
BuildRequires: mingw64-gcc-c++
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
-BuildRequires: mingw32-winpthreads
-BuildRequires: mingw64-winpthreads
+BuildRequires: mingw32-winpthreads-static
+BuildRequires: mingw64-winpthreads-static
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 7
Requires: mozilla-filesystem%{?_isa}
@@ -107,9 +107,6 @@
%{__cp} -a debian/changelog ChangeLog
%{__cp} -a debian/copyright COPYRIGHT
-# Remove extra static-flag from mingw-linker-flags.
-%{__sed} -i -e 's![ \t*]-static"$!"!g' configure
-
# Replace the install-dependency-script with a more recent version
# from upstream's scm and fix it's hashbang.
%{__gpg} --batch --no-default-keyring --no-options --skip-verify \
@@ -192,6 +189,7 @@
%changelog
* Wed Dec 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-1
- new upstream release v0.2.8
+- fix build, link against mingw-winpthreads-static
* Wed Sep 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-4
- update Flash to 15.0.0.152
9 years, 11 months
rpms/pipelight/F-19 install-dependency.sig, NONE, 1.1 pipelight.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
by Björn Esser
Author: besser82
Update of /cvs/nonfree/rpms/pipelight/F-19
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv30180/F-19
Modified Files:
.cvsignore sources
Added Files:
install-dependency.sig pipelight.spec
Log Message:
initial import of pipelight (F-19)
--- NEW FILE install-dependency.sig ---
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
#!/usr/bin/env bash
usage()
{
echo ""
echo "Usage: ./install-dependency DEPENDENCY1 [DEPENDENCY2 ...]"
echo ""
echo "Environment variables:"
echo " WINE path to the wine executable"
echo " WINEPREFIX usually \$HOME/.wine-pipelight"
echo " WINEARCH usually win32"
echo " QUIETINSTALLATION=1 don't show the original installation dialogs"
echo ""
echo "Package dependencies:"
echo " wine-silverlight4-installer"
echo " wine-silverlight5.0-installer"
echo " wine-silverlight5.1-installer"
echo " wine-flash-installer"
echo " wine-flash-debug-installer"
echo " wine-widevine-installer"
echo " wine-unity3d-installer"
echo " wine-x64-unity3d-installer"
echo " wine-adobereader-installer"
echo " wine-foxitpdf-installer"
echo " wine-shockwave-installer"
echo " wine-grandstream-installer"
echo " wine-hikvision-installer"
echo " wine-npactivex-installer"
echo " wine-roblox-installer"
echo " wine-vizzedrgr-installer"
echo " wine-viewright-caiway-installer"
echo ""
echo "Library dependencies:"
echo " wine-mpg2splt-installer"
echo " wine-wininet-installer"
echo " wine-mspatcha-installer"
echo ""
}
PRG=$(basename "$0")
# > Marks a file in order to delete it at program termination
# arguments:
# $1 - File to delete
ATEXIT_RM_LIST=()
atexit_add_rm()
{
ATEXIT_RM_LIST+=("$1")
}
atexit()
{
local file
for file in "${ATEXIT_RM_LIST[@]}"; do
echo "Deleting temporary '$file'."
rm "$file"
done
}
mktemp_with_ext()
{
file=$(mktemp --suffix=".$1" 2>/dev/null)
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
file=$(mktemp 2>/dev/null) # old version of mktemp
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
file=$(mktemp -t pipelight 2>/dev/null) # MacOS version of mktemp
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
return 1
}
# > Checks if a dependency is already installed
# arguments:
# $1 - SHA256
# $DEP
is_installed()
{
local SHA="$1"
local ckfile="$WINEPREFIX/$DEP.installed"
[ -f "$ckfile" ] && [ "$SHA" == "$(cat "$ckfile")" ]
return $?
}
# > Marks a dependency as already installed
# arguments: same as is_installed
mark_installed()
{
local SHA="$1"
local ckfile="$WINEPREFIX/$DEP.installed"
echo "$SHA" > "$ckfile"
}
# > Download a given dependency file
# arguments:
# $1 - URL
# $2 - SHA256
# $3 - Overwrite file extension
# returns:
# $DOWNLOADFILE
DOWNLOADFILE=""
download()
{
local URL="$1"; local SHA="$2"; local EXT="$3"
if [ -z "$EXT" ]; then
EXT=$(echo "$URL" | sed 's/.*\.//')
fi
# Reuse files from the netflix-desktop package if available
local dlfile="/var/lib/wine-browser-installer/$DEP.$EXT"
if [ -f "$dlfile" ] && [ "$SHA" == "$(sha256sum "$dlfile" | cut -d' ' -f1)" ]; then
DOWNLOADFILE="$dlfile"
return 0
fi
# Reuse existing download
local dlfile="/tmp/pipelight-$DEP.$EXT"
if [ -f "$dlfile" ] && [ "$SHA" == "$(sha256sum "$dlfile" | cut -d' ' -f1)" ]; then
DOWNLOADFILE="$dlfile"
return 0
fi
local trycount=3
local tmpfile=$(mktemp_with_ext "$EXT")
[ -f "$tmpfile" ] || return 1
local filesize=$(get_download_size "$URL")
# Download to tmpfile
while true; do
if [ "$trycount" -le 0 ]; then
rm "$tmpfile"
echo "[$PRG] ERROR: Downloading of $DEP failed multiple times. Please check:" >&2
echo "[$PRG]" >&2
echo "[$PRG] * that your internet connection is working properly" >&2
echo "[$PRG]" >&2
echo "[$PRG] * and that the plugin database is up-to-date. To update it just run:" >&2
echo "[$PRG] sudo pipelight-plugin --update" >&2
echo "[$PRG]" >&2
echo "[$PRG] If this doesn't help then most-likely the download URLs or checksums" >&2
echo "[$PRG] have changed. We recommend to open a bug-report in this case." >&2
return 1
fi
download_file "$tmpfile" "$URL" 2>&1 | progressbar "Please wait, downloading ..." "Downloading $DEP ($filesize MiB)"
if [ -f "$tmpfile" ] && [ "$SHA" == "$(sha256sum "$tmpfile" | cut -d' ' -f1)" ]; then
break
fi
(( trycount-- ))
sleep 2
done
# Move the downloaded file to the right path
if mv "$tmpfile" "$dlfile"; then
chmod 0644 "$dlfile"
DOWNLOADFILE="$dlfile"
return 0
fi
# Continue using the temp path
atexit_add_rm "$tmpfile"
DOWNLOADFILE="$tmpfile"
return 0
}
# > Sets a registry key
# arguments:
# $1 - key
# $2 - path
register_mozilla_plugin()
{
local KEY="$1"; local VAL="$2"
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
local valfile=$("$WINE" winepath --windows "$VAL" | sed 's/\\/\\\\/g')
(
echo "REGEDIT4"
echo ""
echo "[HKEY_LOCAL_MACHINE\\Software\\MozillaPlugins\\$KEY]"
echo "\"Path\"=\"$valfile\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Installer for Silverlight
# arguments:
# $1 - version
# $2 - short version
# $DOWNLOADFILE
install_silverlight()
{
local VER="$1"
local SHORTVER="$2"
# Remove the registry keys for Silverlight since other versions can prevent this one from installing
"$WINE" msiexec /uninstall {89F4137D-6C26-4A84-BDB8-2E5A4BB71E00};
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /noupdate 2>&1
else
"$WINE" "$DOWNLOADFILE" /q /doNotRequireDRMPrompt /noupdate 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local programfiles="$WINEPREFIX/drive_c/Program Files"
if [ ! -d "$programfiles/Microsoft Silverlight/$VER" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Move the installation to a version-specific folder that nothing will touch
mkdir -p "$programfiles/Silverlight"
mv "$programfiles/Microsoft Silverlight/$VER" "$programfiles/Silverlight/$VER"
# Create a short symlink if SHORTVER is provided.
if [ ! -z "$SHORTVER" ]; then
local shortsymlink="$programfiles/Silverlight/$SHORTVER"
if [ -L "$shortsymlink" ]; then
rm "$shortsymlink"
elif [ -e "$shortsymlink" ]; then
echo "[$PRG] ERROR: Unable to overwrite $shortsymlink, please delete this file manually." >&2
return 1
fi
ln -s "$VER" "$shortsymlink"
fi
# Remove the Silverlight menu shortcut
rm -f "$WINEPREFIX/drive_c/users/$USER/Start Menu/Programs/Microsoft Silverlight/Microsoft Silverlight.lnk"
# Workaround for users that are upgrading install-dependency before Pipelight release 0.2.6
if [ "$VER" == "5.1.30214.0" ]; then
if [ -d "$programfiles/Silverlight/5.1.20913.0" ]; then
mv "$programfiles/Silverlight/5.1.20913.0" "$programfiles/Silverlight/5.1.20913.0.orig"
fi
ln -s "$programfiles/Silverlight/$VER" "$programfiles/Silverlight/5.1.20913.0"
fi
# Successful
return 0
}
# > Extract cab library
# arguments:
# $1 - file to extract
# $DOWNLOADFILE
#
# optional arguments:
# --reg - run regsvr32.dll to register the dll
install_cabextract()
{
local FILE="$1"; shift
local system32="$WINEPREFIX/drive_c/windows/system32"
cabextract -d "$system32" "$DOWNLOADFILE" -F "$FILE"
if [ ! -f "$system32/$FILE" ]; then
echo "[$PRG] ERROR: Failed to extract $FILE from cab file." >&2
return 1
fi
# Process additional args
while [ $# -gt 0 ] ; do
local cmd=$1; shift
case "$cmd" in
--rename)
if ! mv "$system32/$FILE" "$system32/$1"; then
echo "[$PRG] ERROR: Unable to rename extracted file." >&2
return 1
fi
FILE="$1"; shift
;;
--reg)
"$WINE" regsvr32.exe "$FILE"
;;
*)
echo "[$PRG] ERROR: Internal error, install_cabextract called with argument: $cmd" >&2
return 1
;;
esac
done
# Successful
return 0
}
# > Install wininet.dll
# arguments:
# $DOWNLOADFILE
install_wininet()
{
if ! install_cabextract wininet.x86.5.0.3700.6713.dll --rename "wininet.dll"; then return 1; fi
# Setup wine dlloverride and adjust some wininet.dll related settings
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides]"
echo "\"*wininet\"=\"native,builtin\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings]"
echo "\"MaxConnectionsPerServer\"=dword:7fffffff"
echo "\"MaxConnectionsPer1_0Server\"=dword:7fffffff"
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install flash
# arguments:
# $1 - version path component
# $DOWNLOADFILE
install_flash()
{
VER="$1"
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" -install 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/windows/system32/Macromed/Flash"
local result=1
case "$WINEARCH" in
win32)
[ -f "$installdir/NPSWF32_$VER.dll" ]; result=$?
;;
win64)
[ -f "$installdir/NPSWF64_$VER.dll" ]; result=$?
;;
*)
[ -f "$installdir/NPSWF32_$VER.dll" ] || [ -f "$installdir/NPSWF64_$VER.dll" ]; result=$?
;;
esac
if [ "$result" -ne 0 ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
local flashconfig="$installdir/mms.cfg"
if ! grep -q "^OverrideGPUValidation=" "$flashconfig" 2>/dev/null; then
(
grep -v "^OverrideGPUValidation=" "$flashconfig" 2>/dev/null
echo "OverrideGPUValidation=true"
) > "$flashconfig.bak"
if ! mv "$flashconfig.bak" "$flashconfig"; then
echo "[$PRG] ERROR: Unable to change $DEP plugin settings." >&2
fi
fi
# Successful
return 0
}
# > Install shockwave
# arguments:
# $1 - version path component
# $DOWNLOADFILE
install_shockwave()
{
VER="$1"
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /S 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/windows/system32/Adobe/Director"
if [ ! -f "$installdir/np32dsw_$VER.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Switch to OpenGL mode and disable fallback mode
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\allowfallback]"
echo "@=\"n\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\renderer3dsetting]"
echo "@=\"2\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\renderer3dsettingPerm]"
echo "@=\"2\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Unity3D 32 bit
# arguments: None
# $DOWNLOADFILE
install_unity3d()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
else
"$WINE" "$DOWNLOADFILE" /S /AllUsers 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Unity/WebPlayer/loader"
if [ ! -f "$installdir/npUnity3D32.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Unity3D 64 bit
# arguments: None
# $DOWNLOADFILE
install_x64_unity3d()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
else
"$WINE" "$DOWNLOADFILE" /S /AllUsers 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Unity/WebPlayer64/loader-x64"
if [ ! -f "$installdir/npUnity3D64.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Foxit PDF
# arguments: None
# $DOWNLOADFILE
install_foxitpdf()
{
# Launch the installer
#if [ "$QUIETINSTALLATION" -eq 0 ]; then
# "$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
#else
"$WINE" msiexec.exe /i "$DOWNLOADFILE" ALLUSERS=1 /q /norestart MAKEDEFAULT=0 VIEW_IN_BROWSER=1 DESKTOP_SHORTCUT=0 AUTO_UPDATE=0 ADDLOCAL="FX_PDFVIEWER,FX_FIREFOXPLUGIN" REMOVE="ALL" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
#fi
local installdir="$WINEPREFIX/drive_c/Program Files/Foxit Software/Foxit Reader/plugins"
if [ ! -f "$installdir/npFoxitReaderPlugin.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Grandstream
# arguments: None
# $DOWNLOADFILE
install_grandstream()
{
local tmpfile=$(mktemp_with_ext "exe")
[ -f "$tmpfile" ] || return 1
if ! unzip -p "$DOWNLOADFILE" "chrome_firefox_plugine_1.0.0.7.exe" > "$tmpfile"; then
echo "[$PRG] ERROR: Unable to extract installer from zip file." >&2
rm "$tmpfile"
return 1
fi
# Launch the installer and delete the program afterwards
"$WINE" "$tmpfile" 2>&1
rm "$tmpfile"
local installdir="$WINEPREFIX/drive_c/Program Files/WebControl"
if [ ! -f "$installdir/npGS_Plugins.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install mspatcha.dll
# arguments: None
# $DOWNLOADFILE
install_mspatcha()
{
if ! install_cabextract mspatcha.dll; then return 1; fi
# Setup wine dlloverride
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides]"
echo "\"*mspatcha\"=\"native,builtin\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Adobe Reader
# arguments: None
# $DOWNLOADFILE
install_adobereader()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /msi EULA_ACCEPT=YES /qn 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Adobe/Reader 11.0/Reader/AIR"
if [ ! -f "$installdir/nppdf32.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Disable sandbox as it does not work with Wine
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Acrobat Reader\\11.0\\Privileged]"
echo "\"bProtectedMode\"=dword:00000000"
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Widevine
# arguments: None
# $DOWNLOADFILE
install_widevine()
{
local system32="$WINEPREFIX/drive_c/windows/system32"
if ! unzip -p "$DOWNLOADFILE" "plugins/npwidevinemediaoptimizer.dll" > "$system32/npwidevinemediaoptimizer.dll"; then
echo "[$PRG] ERROR: Unable to extract plugin from xip file." >&2
return 1
fi
# Successful
return 0
}
# > Install Hikvision
# arguments: None
# $DOWNLOADFILE
install_hikvision()
{
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /silent 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Web Components"
if [ ! -f "$installdir/npWebVideoPlugin.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install NP-ActiveX
# arguments:
# $1 - checksum of npactivex.dll
# $DOWNLOADFILE
install_npactivex()
{
DLLSHA="$1"
local system32="$WINEPREFIX/drive_c/windows/system32"
# The exit code is 1, but the output is still valid
unzip -p "$DOWNLOADFILE" "npactivex.dll" > "$system32/npactivex.dll"
local installfile="$system32/npactivex.dll"
if [ ! -f "$installfile" ] || [ "$DLLSHA" != "$(sha256sum "$installfile" | cut -d' ' -f1)" ]; then
echo "[$PRG] ERROR: Unable to extract plugin from crx file." >&2
return 1
fi
# Successful
return 0
}
# > Install Roblox
# arguments:
# $1 - version "number"
# $DOWNLOADFILE
install_roblox()
{
VER="$1"
"$WINE" "$DOWNLOADFILE" 2>&1
local installdir="$WINEPREFIX/drive_c/users/$USER/Local Settings/Application Data/RobloxVersions/version-$VER"
if [ ! -f "$installdir/NPRobloxProxy.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
if ! "$WINE" regsvr32 "$installdir/RobloxProxy.dll"; then
echo "[$PRG] ERROR: Unable to register Roblox Launcher class." >&2
return 1
fi
# Successful
return 0
}
# > Install Vizeed RGR
# arguments: None
# $DOWNLOADFILE
install_vizzedrgr()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" msiexec.exe /i "$DOWNLOADFILE" 2>&1
else
"$WINE" msiexec.exe /quiet /i "$DOWNLOADFILE" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Vizzed/Vizzed Retro Game Room"
if [ ! -f "$installdir/NpVizzedRgr.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install ViewRight Plugin for Caiway
# arguments: None
# $DOWNLOADFILE
install_viewright_caiway()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" msiexec.exe /i "$DOWNLOADFILE" 2>&1
else
"$WINE" msiexec.exe /quiet /i "$DOWNLOADFILE" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Verimatrix/ViewRight Web"
if [ ! -f "$installdir/npViewRight.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# Use fetch on FreeBSD if wget is not available
if command -v wget >/dev/null 2>&1; then
download_file()
{
wget -O "$1" "$2"
}
get_download_size()
{
local filesize="$(wget -O- "$1" --spider --server-response 2>&1 | sed -ne '/Content-Length/{s/.*: //;p}')"
local re='^[0-9]+$'
if [[ "$filesize" -ne "0" ]] && [[ "$filesize" =~ $re ]]; then
echo "$(($filesize/(1024*1024)))"
else
echo "N/A"
fi
}
elif command -v fetch >/dev/null 2>&1; then
download_file()
{
fetch -o "$1" "$2"
}
get_download_size()
{
echo "N/A"
}
else
download_file()
{
echo "ERROR: Could neither find wget nor fetch. Unable to download file!" >&2
return 1
}
get_download_size()
{
echo "N/A"
}
fi
# Use shasum instead of sha256sum on MacOS / *BSD
if ! command -v sha256sum >/dev/null 2>&1 && command -v shasum >/dev/null 2>&1; then
sha256sum()
{
shasum -a 256 "$1"
}
fi
# Use md5 instead of md5sum on MacOS / *BSD
if ! command -v md5sum >/dev/null 2>&1 && command -v md5 >/dev/null 2>&1; then
md5sum()
{
md5
}
fi
# Check if some visual feedback is possible
if command -v zenity >/dev/null 2>&1; then
progressbar()
{
WINDOWID="" zenity --progress --title="$1" --text="$2" --pulsate --width=400 --auto-close --no-cancel ||
WINDOWID="" zenity --progress --title="$1" --text="$2" --pulsate --width=400 --auto-close
}
elif command -v kdialog >/dev/null 2>&1 && command -v qdbus >/dev/null 2>&1; then
#Check if qdbus is symlinked to qtchooser (for Arch Linux)
QDBUSPATH=$(which qdbus)
QDBUSPATH=$(readlink "$QDBUSPATH")
if [ "$QDBUSPATH" == "qtchooser" ]; then
QDBUSPATH="qtchooser -run-tool=qdbus -qt=4"
else
QDBUSPATH="qdbus"
fi
progressbar()
{
local dcopref=$(kdialog --title "$1" --progressbar "$2" 10)
# Update the progress bar (not really the progress, but the user knows that something is going on)
(
local progress=1
while true; do
local err=$($QDBUSPATH $dcopref org.freedesktop.DBus.Properties.Set org.kde.kdialog.ProgressDialog value "$progress" 2>&1)
if [ ! -z "$err" ]; then break; fi
sleep 1
(( progress++ ))
if [ "$progress" -gt 10 ]; then progress=0; fi
done
) 0</dev/null &
local dialogpid="$!"
cat -
kill "$dialogpid"
$QDBUSPATH $dcopref org.kde.kdialog.ProgressDialog.close &> /dev/null
}
else
progressbar()
{
cat -
}
fi
# Print usage message when no arguments are given at all
if [ $# -eq 0 ]; then
usage
exit 0
fi
# Check for environment variables
if [ -z "$WINE" ] || [ -z "$WINEPREFIX" ]; then
echo "[$PRG] ERROR: Missing necessary environment variables WINE and WINEPREFIX." >&2
exit 1
fi
if [ ! -w "$WINEPREFIX" ]; then
WINEPREFIX_PARENT="$(dirname "$WINEPREFIX")"
if [ ! -w "$WINEPREFIX_PARENT" ] || [ ! -O "$WINEPREFIX_PARENT" ]; then
echo "[$PRG] ERROR: You're running this script as a wrong user - WINEPREFIX or parent directory not owned by you." >&2
exit 1
fi
fi
# Silent installation
if [ -z "$QUIETINSTALLATION" ]; then
QUIETINSTALLATION=0
fi
# Generate a lock file based on the wine prefix
LOCKFILE=$(echo "$WINEPREFIX" | md5sum | cut -d' ' -f1)
LOCKFILE="/tmp/wine-$LOCKFILE.tmp"
LOCKFD=9; eval "exec $LOCKFD> \"\$LOCKFILE\""
if ! flock -x -w 360 "$LOCKFD"; then
echo "[$PRG] ERROR: Failed to obtain an installation lock in 6 minutes." >&2
exit 1;
fi
# Close file descriptor (ensure that the lock is released when the installation is ready)
trap "EXITSTATUS=\$?; flock -u \"$LOCKFD\"; atexit; exit \"\$EXITSTATUS\"" 0
# Initialize wine if not done yet
if [ ! -f "$WINEPREFIX/system.reg" ]; then
# Directory exists, but without system.reg - wine will assume wrong platform, so create dummy system.reg
if [ -d "$WINEPREFIX" ] && [ ! -f "$WINEPREFIX/system.reg" ]; then
if [ "$WINEARCH" == "win32" ] || [ "$WINEARCH" == "win64" ]; then
echo -en "WINE REGISTRY Version 2\n\n#arch=$WINEARCH\n" > "$WINEPREFIX/system.reg"
echo "[$PRG] Forced creation of a $WINEARCH wine prefix."
fi
fi
DISPLAY="" "$WINE" wineboot.exe 2>&1 | progressbar "Please wait..." "Creating wine prefix"
fi
# Set default return value
RET=0
while [ $# -gt 0 ] ; do
DEP="$1"; INS=(); URL=""; SHA=""; EXT=""; DOWNLOADFILE=""; shift
case "$DEP" in
wine-prefix)
continue # The wine-prefix is created automatically for all packages
;;
wine-silverlight4-installer)
INS=(install_silverlight "4.1.10329.0")
URL="http://silverlight.dlservice.microsoft.com/download/6/A/1/6A13C54D-3F35-4..."
SHA="b0e476090206b2e61ba897de9151a31e0182c0e62e8abd528c35d3857ad6131c"
;;
wine-silverlight5.0-installer)
INS=(install_silverlight "5.0.61118.0")
URL="http://silverlight.dlservice.microsoft.com/download/5/5/7/55748E53-D673-4..."
SHA="dd45a55419026c592f8b6fc848dceface7e1ce98720bf13848a2e8ae366b29e8"
;;
wine-silverlight5.1-installer) # http://www.microsoft.com/getsilverlight/locale/en-us/html/Microsoft%20Sil...
INS=(install_silverlight "5.1.30514.0" "latest")
URL="http://silverlight.dlservice.microsoft.com/download/F/8/C/F8C0EACB-92D0-4..."
SHA="afa7a7081d30b00a4f57c32932bd6d84940bb43b3f5feb0828ff988c80e2d485"
;;
wine-flash-installer) # http://www.adobe.com/de/software/flash/about/
INS=(install_flash "16_0_0_235")
URL="http://fpdownload.macromedia.com/get/flashplayer/pdc/16.0.0.235/install_f..."
SHA="4e83b1af33587cc7bcab870b9f30395f2d78a249c46cf8953ffcd928c8f9f07c"
;;
wine-flash-debug-installer)
INS=(install_flash "16_0_0_235")
URL="http://download.macromedia.com/pub/flashplayer/updaters/16/flashplayer_16..."
SHA="08fc11fc121464412a278aa3aee67bec62348b8ea687cf65286edb86fff0aa74"
;;
wine-widevine-installer) # http://www.widevine.com/download/videooptimizer/index.html
INS=(install_widevine)
URL="https://dl.google.com/widevine/6.0.0.12442/WidevineMediaOptimizer_Win.xpi"
SHA="84cde1b83d8f5e4b287303a25e61227ce9a253268af6bd88b9a2f98c85129bc8"
EXT="zip"
;;
wine-unity3d-installer)
INS=(install_unity3d)
URL="http://webplayer.unity3d.com/download_webplayer-3.x/UnityWebPlayer.exe"
SHA="84568878b561f248869701f4f768ae22fb35ab025bb514919a86a5eeb4fe3e2f"
;;
wine-x64-unity3d-installer)
INS=(install_x64_unity3d)
URL="http://webplayer.unity3d.com/download_webplayer-3.x/UnityWebPlayerFull64.exe"
SHA="a4ae24820ec2f1c87e26123227c1ccd330c8b0f69f7e2f2586761e174a300802"
;;
wine-adobereader-installer) # http://get.adobe.com/de/reader/otherversions/
INS=(install_adobereader)
URL="http://ardownload.adobe.com/pub/adobe/reader/win/11.x/11.0.08/en_US/AdbeR..."
SHA="00dbd10f80e9451938d5a10e60b8c8dca2dac81c118618652bb49a62ca04c3b3"
;;
wine-foxitpdf-installer) # http://www.foxitsoftware.com/Secure_PDF_Reader/version_history.php
INS=(install_foxitpdf)
URL="http://cdn04.foxitsoftware.com/pub/foxit/reader/desktop/win/7.x/7.0/enu/E..."
SHA="4be8aadcc4fea96277b4d879bb0320a9bd027ebfb2de1306399b4c29abe94206"
;;
wine-shockwave-installer) # http://get.adobe.com/de/shockwave/otherversions/
INS=(install_shockwave "1215155")
URL="http://fpdownload.macromedia.com/get/shockwave/default/english/win95nt/la..."
SHA="ed1d5eda2ac41a311914f2b1fbaa6d60f7081c0fbea07c990d210a4313c696ba"
;;
wine-grandstream-installer)
INS=(install_grandstream)
URL="http://www.grandstream.com/products/tools/surveillance/webcontrl_plugin.zip"
SHA="1162798378997373701967f3f0f291ae4c858e8cae29e55a5249e24f47f70df2"
;;
wine-mpg2splt-installer)
INS=(install_cabextract mpg2splt.ax --reg)
URL="http://download.microsoft.com/download/8/0/D/80D7E79D-C0E4-415A-BCCA-E229..."
SHA="984ed15e23a00a33113f0012277e1e680c95782ce2c44f414e7af14e28e3f1a2"
;;
wine-wininet-installer)
INS=(install_wininet)
URL="http://download.microsoft.com/download/6/f/c/6fcc07f8-62e1-459e-aab3-06fa..."
SHA="b3f31b0d523f03123e8def4f91ba2e64aaceb31d9bfe851516ad7f61b0268d4a"
;;
wine-mspatcha-installer)
INS=(install_mspatcha)
URL="http://download.microsoft.com/download/WindowsInstaller/Install/2.0/NT45/..."
SHA="4c3516c0b5c2b76b88209b22e3bf1cb82d8e2de7116125e97e128952372eed6b"
;;
wine-hikvision-installer)
INS=(install_hikvision)
URL="http://cctvone.com/fillib/IP%20Camera/Hikvision-2DC-Series/CD/IE%20Client..."
SHA="04fec22ca61c657f6f46160e55334e3defeea0e193bc8ec6d7bb45c87e773361"
;;
wine-npactivex-installer) # https://code.google.com/p/np-activex/downloads/list
INS=(install_npactivex "6a31dac35cfda77ef4be724f226c5b54404aec61a81e663e47d39c7c9dd1580e")
URL="https://np-activex.googlecode.com/files/extension_1_5_0_7.crx"
SHA="12ba6c79079f53172ca897f717911c2613219236dca5ae58662d41636490e7a9"
EXT="zip"
;;
wine-roblox-installer)
INS=(install_roblox "632471a80776450d")
URL="http://setup.roblox.com/version-632471a80776450d-Roblox.exe"
SHA="901505c1311cb592521ea6bec09ec793194d1ecb0630686e72a948850e55d632"
;;
wine-vizzedrgr-installer)
INS=(install_vizzedrgr)
URL="http://www.vizzed.co/VizzedRgrPlugin-v2.0.msi"
SHA="ddc99b1a6902e30f355533620637a2d1b7d1ff3b1bd76a65cb1fbd78b2b396cb"
;;
wine-viewright-caiway-installer) # https://www.caiway.nl/site/nl/applicatie/multiscreentvplugins
INS=(install_viewright_caiway)
URL="https://www.caiway.nl/downloads/ViewRightWebInstaller-3.5.0.0_CaiW.msi"
SHA="9436dea83e42204d0a9bc4d128c2f2693dd9c5f9636d5fa57441ef5886f3ab43"
;;
*)
echo "[$PRG] ERROR: No installer script found for $DEP." >&2
RET=1
break
;;
esac
# Is already installed?
if is_installed "$SHA"; then
echo "[$PRG] $DEP is already installed in '$WINEPREFIX'."
continue
fi
echo "[$PRG] Downloading and running $DEP."
# Fetch the download
if ! download "$URL" "$SHA" "$EXT"; then
echo "[$PRG] ERROR: Download of $DEP failed." >&2
RET=1
break
fi
# Do the installation
if ! eval "${INS[@]}"; then
echo "[$PRG] ERROR: Execution of $DEP failed." >&2
RET=1
break
fi
# Mark the package as installed
mark_installed "$SHA"
done
exit "$RET"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBCAAGBQJUh5RCAAoJEAtrgXwcOwUzJ5AP/2vCwVW0SFCUEruC4KtSTTk7
fkgKjsEWvZNDVI/s3MEyR9U5Uty6TC8BxY18PbapErarU2OfBJHS1n1rLUou+B5s
Z6sUmaXacgqGB6EDp7Ppn3AKbjta1fYJGWnEl6+8q/74g8Klmk6bn0nZLug9hoXh
6xTrtfJrwwOgdKbW/NguVqGYtCJACrXSXfdI07OZdo/Gq9MvyXaUQuiybzsNG/EW
aEVjQVgS+XHCApsQltJ7/gXy4nI8xl3Mi2wWFn4sggPNWQl3w6/2lInme0JHiyxN
Qk3VNpgOu7Ycbyd4LMrcJARhKp9xddS2GNCbTV+xkWUABytmtTzl7MVQSboF8bs3
tbwSfgxM8H7FNHPp29xmfLFE13nSy7cGhMxV09VmCGWDyh/WK5YuZzbMirr9hxRr
4Xdxc2lu9aMKKS3Koxg4UM7tbswLHT+Cx8KjYnaxEcrw8GzFTxaGa+/Jh15CjWSr
MR5h9INFH0Elj5UaiutjYyn4b1njp9X3fhy4EwTM/dS/7UdzvsABPhnvNqkQrOMJ
/2vc2Ni7AQRx7+eJiaVVRUB1sVaWo+LyryvzwL6ox1CSo88weTWuDXTCgBCbO5gf
FXghAIRuqPgakeVtQD/UxcwJMKzMq78FpSvazo3kllsziiE7FZvMS4ZCytzVYD3s
LVgU5MzEaG9uhXus+wZ2
=7ctL
-----END PGP SIGNATURE-----
--- NEW FILE pipelight.spec ---
# Conditional for release and snapshot builds. Uncomment for release-builds.
%global rel_build 1
# General needed defines.
%global bburl https://bitbucket.org/mmueller2012/%{name}/
%global commit b7b5e5471d527a801ad63138e963e1839d61e872
%global shortcommit %(c=%{commit};echo ${c:0:12})
# Settings used for build from snapshots.
%{!?rel_build:%global commit_date 20140714}
%{!?rel_build:%global gitver git%{commit_date}-%{shortcommit}}
%{!?rel_build:%global gitrel .git%{commit_date}.%{shortcommit}}
%{?rel_build:%global gittar %{name}-%{version}.tar.gz}
%{!?rel_build:%global gittar %{name}-%{version}-%{gitver}.tar.gz}
# Setup define for used docdir.
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global pkgdocdir %{_docdir}/%{name}
%else # 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global pkgdocdir %{_docdir}/%{name}-%{version}
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 8
# lib%%{name}*.so* is a private lib in a private libdir with no headers,
# so we should not provide that.
%global __provides_exclude ^lib%{name}.*\\.so.*$
Name: pipelight
Version: 0.2.8
Release: 1%{?gitrel}%{?dist}
Summary: NPAPI Wrapper Plugin for using Windows plugins in Linux browsers
License: GPLv2+ or LGPLv2+ or MPLv1.1
URL: http://%{name}.net/
%{?rel_build:Source0: %{bburl}get/v%{version}.tar.gz#/%{?gittar}}
%{!?rel_build:Source0: %{bburl}get/%{shortcommit}.tar.gz#/%{?gittar}}
# Use the most recent dependency-installer-script provided in upstream's scm.
Source1: %{bburl}raw/master/share/install-dependency.sig
# Wine is available on these arches, only.
ExclusiveArch: %{arm} %{ix86} x86_64
BuildRequires: %{__gpg}
BuildRequires: libX11-devel
BuildRequires: mingw32-gcc-c++
BuildRequires: mingw64-gcc-c++
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
BuildRequires: mingw32-winpthreads
BuildRequires: mingw64-winpthreads
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 7
Requires: mozilla-filesystem%{?_isa}
Requires: %{name}-common == %{version}-%{release}
Requires: %{name}-selinux
Requires: wine%{?_isa} >= 1.7.22-2
Requires(post): %{_bindir}/bash
Requires(post): grep
Requires(post): sed
Requires(preun): %{_bindir}/bash
%description
Pipelight is a NPAPI wrapper plugin for using Windows plugins in Linux
browsers and therefore giving you the possibility to access services
which are otherwise not available for Linux users. Typical examples of
such services are Netflix and Amazon Instant, which both use the
proprietary browser plugin Silverlight. These services cannot normally
be used on Linux since this plugin is only available for Windows.
Pipelight helps you access these services by using the original
Silverlight plugin directly in your browser, all while giving you a
better hardware acceleration and performance than a virtual machine.
Besides Silverlight, you can also use a variety of other plugins that
are supported by Pipelight.
Pipelight will take care of installing, configuring and updating all
supported plugins. From the perspective of the browser these plugins
will behave just like any other normal Linux plugin after you have
enabled them.
For further information about all supported plugins, their installation,
configuration and usage, please visit %{url}.
%package common
Summary: Common files needed by %{name}
BuildArch: noarch
Requires: %{_bindir}/sha256sum
Requires: %{_bindir}/wget
Requires: %{_bindir}/zenity
Requires: %{__gpg}
Requires: %{name} == %{version}-%{release}
Requires: %{name}-selinux
Requires: wine >= 1.7.22-2
Requires(post): %{__cp}
%description common
This package contains common files needed by %{name}.
%prep
%setup -qn mmueller2012-%{name}-%{shortcommit}
# Copy changelog and licenses to toplevel.
%{__cp} -a debian/changelog ChangeLog
%{__cp} -a debian/copyright COPYRIGHT
# Remove extra static-flag from mingw-linker-flags.
%{__sed} -i -e 's![ \t*]-static"$!"!g' configure
# Replace the install-dependency-script with a more recent version
# from upstream's scm and fix it's hashbang.
%{__gpg} --batch --no-default-keyring --no-options --skip-verify \
--keyring "share/sig-install-dependency.gpg" \
--decrypt %{SOURCE1} > "share/install-dependency"
%build
%configure \
--with-win64 --wine-path=%{_bindir}/wine \
--so-mode=0755 --gpg-exec=%{__gpg}
%{__make} %{?_smp_mflags}
%install
%make_install
# Copy the packaged dependency-installer-script to some non-changing file.
# The original file will be %%ghost inside the build rpm in case of manual
# updates done by the user. The real file will be installed during %%post.
%{__mv} -f %{buildroot}%{_datadir}/%{name}/install-dependency \
%{buildroot}%{_datadir}/%{name}/install-dependency.real
%{_bindir}/touch %{buildroot}%{_datadir}/%{name}/install-dependency \
%{buildroot}%{_datadir}/%{name}/install-dependency.sig
%{__chmod} 0755 %{buildroot}%{_datadir}/%{name}/install-dependency
# Install %%doc to %%{pkgdocdir}.
%{__mkdir} -p %{buildroot}%{pkgdocdir}
cp -af ChangeLog COPYRIGHT LICENSE licenses %{buildroot}%{pkgdocdir}
%post
# This will not enable any plugins.
%{_bindir}/%{name}-plugin --create-mozilla-plugins &>/dev/null
%ifarch x86_64
for _plugin in $(%{_bindir}/%{name}-plugin | \
%{__grep} "x64" | \
%{__sed} -e 's!^[ \t]*!!g')
do
%{_bindir}/%{name}-plugin --unlock ${_plugin} &>/dev/null
done
%endif # arch x86_64
%post common
# Restore the dependency-installer-script shipped inside the recent package.
%{__cp} -af %{_datadir}/%{name}/install-dependency.real \
%{_datadir}/%{name}/install-dependency
%preun
# This will disable and remove all plugins, if the last instance of this
# package will be removed completely. This doesn't touch anything on updates.
if [ $1 -eq 0 ]
then
%{_bindir}/%{name}-plugin --disable-all &>/dev/null
%{_bindir}/%{name}-plugin --remove-mozilla-plugins &>/dev/null
fi
%files
%doc %dir %{pkgdocdir}
%doc %{pkgdocdir}/LICENSE
%{_bindir}/%{name}-plugin
%{_libdir}/%{name}
%{_mandir}/man1/%{name}-plugin.1*
%files common
%doc %exclude %{pkgdocdir}/LICENSE
%doc %{pkgdocdir}/*
%dir %{_datadir}/%{name}
%ghost %{_datadir}/%{name}/install-dependency
%ghost %{_datadir}/%{name}/install-dependency.sig
%{_datadir}/%{name}/*/
%{_datadir}/%{name}/install-dependency.real
%{_datadir}/%{name}/pluginloader*
%{_datadir}/%{name}/sig-install-dependency.gpg
%{_datadir}/%{name}/wine*
%changelog
* Wed Dec 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-1
- new upstream release v0.2.8
* Wed Sep 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-4
- update Flash to 15.0.0.152
- remove extra static-flag from mingw-linker-flags
- fix installing up-to-date install-dependency-script
- remove arched conditionals for minigw-related builds
* Fri Aug 15 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-3
- update Flash to 14.0.0.179 and AdobeReader to 11.0.08
* Wed Aug 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-2
- update Silverlight to 5.1.30514.0 and unity3d checksum
* Sun Jul 20 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-1
- new upstream release -- fixes 'pipelight-plugin --update' command
* Sat Jul 19 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.2-1
- new upstream release
- switch back to release-build
* Wed Jul 16 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.16.git20140714.61348bc7adad
- main-pkg should own %%dir %%{_datadir}/%%{name}, too
* Tue Jul 15 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.15.git20140714.61348bc7adad
- fix broken dependencies on grep and sed
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.14.git20140714.61348bc7adad
- update to new snapshot git20140714.61348bc7adad
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.13.git20140714.f28c55b42dbe
- update to new snapshot git20140714.f28c55b42dbe
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.12.git20140714.be8e5d96a755
- update to new snapshot git20140714.be8e5d96a755
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.11.git20140713.066356f40633
- replaced Requires: wine(compholio) with wine >= 1.7.22-2
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.10.git20140713.066356f40633
- added Requires for pipelight-selinux
- unlock all 'x64-*'-plugins on x86_64 by default
- added needed Requires and Requires(post)
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.9.git20140713.066356f40633
- unlock 'x64-flash'-plugin on x86_64 by default
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.8.git20140713.066356f40633
- update to new snapshot git20140713.066356f40633
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.7.git20140713.d79c1202f857
- update to new snapshot git20140713.d79c1202f857
- obsoleted pipelight-0.2.7.1.1_improve-buildsys.patch
- use signed updated install-dependency-script
- exclude lib%%{name}*.so* from auto-provides
- added / moved runtime-Requires between build packages,
Requires: wine(compholio), Requires(post) and Requires(preun)
- fixed typo in %%changelog
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.6.git20140711.035fa4908b63
- update to new snapshot git20140711.035fa4908b63
- license-change --> upstream dropped file (src/npapi-headers/npruntime.h)
covered by BSD-license
- upstream now ships proper licese-text-files in src-tarball
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.5.git20140711.8b41e9505f7a
- split files in %%{pkgdocdir} between main- and common-package
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.4.git20140711.8b41e9505f7a
- create common-subpackage
- the %%ghost install-dependency must have 0755-perms
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.3.git20140711.8b41e9505f7a
- package the %%ghost files to be 0-size
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.2.git20140711.8b41e9505f7a
- use the most recent dependency-installer-script provided in upstream's scm
- copy the original dependency-installer-script to some non-changing file and
package that one as existing file, the real dependency-installer-script as
%%ghost; restore the real dependency-installer-script during %%post from
the packaged one
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.1.git20140711.8b41e9505f7a
- update to new snapshot git20140711.8b41e9505f7a8710b3817ae93ac46b3be5f96f1f
- reworked spec-file for release or snapshot-builds
- updated Patch0 for changes in upstream-sources
- obsoleted Patch1 and Patch2 -- now in upstream-sources
* Thu Jul 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-4
- referenced urls to pull-requests for upstreaming patches
- referenced url to pull-request for adding the missing license-textfiles
* Thu Jul 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-3
- replaced Patch1 with a better solution, thanks to Michael Müller
- refactored pipelight-0.2.7.1_fix-missing-call-to-setgroups.patch
- improved pipelight-0.2.7.1_use-cp-a.patch to use `cp -af`
* Tue Jul 08 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-2
- added BSD to License (#1117403)
see: https://bugzilla.redhat.com/show_bug.cgi?id=1117403#c2
* Mon Jul 07 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-1
- initial rpm release (#1117403)
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/F-19/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 28 Sep 2014 11:08:51 -0000 1.1
+++ .cvsignore 10 Dec 2014 15:47:19 -0000 1.2
@@ -0,0 +1 @@
+pipelight-0.2.8.tar.gz
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/F-19/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources 28 Sep 2014 11:08:52 -0000 1.1
+++ sources 10 Dec 2014 15:47:19 -0000 1.2
@@ -0,0 +1 @@
+e75591e5f181a0a0a41c41290d8393af pipelight-0.2.8.tar.gz
9 years, 11 months
rpms/pipelight/F-20 install-dependency.sig, NONE, 1.1 pipelight.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
by Björn Esser
Author: besser82
Update of /cvs/nonfree/rpms/pipelight/F-20
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29932/F-20
Modified Files:
.cvsignore sources
Added Files:
install-dependency.sig pipelight.spec
Log Message:
initial import of pipelight (F-20)
--- NEW FILE install-dependency.sig ---
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
#!/usr/bin/env bash
usage()
{
echo ""
echo "Usage: ./install-dependency DEPENDENCY1 [DEPENDENCY2 ...]"
echo ""
echo "Environment variables:"
echo " WINE path to the wine executable"
echo " WINEPREFIX usually \$HOME/.wine-pipelight"
echo " WINEARCH usually win32"
echo " QUIETINSTALLATION=1 don't show the original installation dialogs"
echo ""
echo "Package dependencies:"
echo " wine-silverlight4-installer"
echo " wine-silverlight5.0-installer"
echo " wine-silverlight5.1-installer"
echo " wine-flash-installer"
echo " wine-flash-debug-installer"
echo " wine-widevine-installer"
echo " wine-unity3d-installer"
echo " wine-x64-unity3d-installer"
echo " wine-adobereader-installer"
echo " wine-foxitpdf-installer"
echo " wine-shockwave-installer"
echo " wine-grandstream-installer"
echo " wine-hikvision-installer"
echo " wine-npactivex-installer"
echo " wine-roblox-installer"
echo " wine-vizzedrgr-installer"
echo " wine-viewright-caiway-installer"
echo ""
echo "Library dependencies:"
echo " wine-mpg2splt-installer"
echo " wine-wininet-installer"
echo " wine-mspatcha-installer"
echo ""
}
PRG=$(basename "$0")
# > Marks a file in order to delete it at program termination
# arguments:
# $1 - File to delete
ATEXIT_RM_LIST=()
atexit_add_rm()
{
ATEXIT_RM_LIST+=("$1")
}
atexit()
{
local file
for file in "${ATEXIT_RM_LIST[@]}"; do
echo "Deleting temporary '$file'."
rm "$file"
done
}
mktemp_with_ext()
{
file=$(mktemp --suffix=".$1" 2>/dev/null)
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
file=$(mktemp 2>/dev/null) # old version of mktemp
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
file=$(mktemp -t pipelight 2>/dev/null) # MacOS version of mktemp
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
return 1
}
# > Checks if a dependency is already installed
# arguments:
# $1 - SHA256
# $DEP
is_installed()
{
local SHA="$1"
local ckfile="$WINEPREFIX/$DEP.installed"
[ -f "$ckfile" ] && [ "$SHA" == "$(cat "$ckfile")" ]
return $?
}
# > Marks a dependency as already installed
# arguments: same as is_installed
mark_installed()
{
local SHA="$1"
local ckfile="$WINEPREFIX/$DEP.installed"
echo "$SHA" > "$ckfile"
}
# > Download a given dependency file
# arguments:
# $1 - URL
# $2 - SHA256
# $3 - Overwrite file extension
# returns:
# $DOWNLOADFILE
DOWNLOADFILE=""
download()
{
local URL="$1"; local SHA="$2"; local EXT="$3"
if [ -z "$EXT" ]; then
EXT=$(echo "$URL" | sed 's/.*\.//')
fi
# Reuse files from the netflix-desktop package if available
local dlfile="/var/lib/wine-browser-installer/$DEP.$EXT"
if [ -f "$dlfile" ] && [ "$SHA" == "$(sha256sum "$dlfile" | cut -d' ' -f1)" ]; then
DOWNLOADFILE="$dlfile"
return 0
fi
# Reuse existing download
local dlfile="/tmp/pipelight-$DEP.$EXT"
if [ -f "$dlfile" ] && [ "$SHA" == "$(sha256sum "$dlfile" | cut -d' ' -f1)" ]; then
DOWNLOADFILE="$dlfile"
return 0
fi
local trycount=3
local tmpfile=$(mktemp_with_ext "$EXT")
[ -f "$tmpfile" ] || return 1
local filesize=$(get_download_size "$URL")
# Download to tmpfile
while true; do
if [ "$trycount" -le 0 ]; then
rm "$tmpfile"
echo "[$PRG] ERROR: Downloading of $DEP failed multiple times. Please check:" >&2
echo "[$PRG]" >&2
echo "[$PRG] * that your internet connection is working properly" >&2
echo "[$PRG]" >&2
echo "[$PRG] * and that the plugin database is up-to-date. To update it just run:" >&2
echo "[$PRG] sudo pipelight-plugin --update" >&2
echo "[$PRG]" >&2
echo "[$PRG] If this doesn't help then most-likely the download URLs or checksums" >&2
echo "[$PRG] have changed. We recommend to open a bug-report in this case." >&2
return 1
fi
download_file "$tmpfile" "$URL" 2>&1 | progressbar "Please wait, downloading ..." "Downloading $DEP ($filesize MiB)"
if [ -f "$tmpfile" ] && [ "$SHA" == "$(sha256sum "$tmpfile" | cut -d' ' -f1)" ]; then
break
fi
(( trycount-- ))
sleep 2
done
# Move the downloaded file to the right path
if mv "$tmpfile" "$dlfile"; then
chmod 0644 "$dlfile"
DOWNLOADFILE="$dlfile"
return 0
fi
# Continue using the temp path
atexit_add_rm "$tmpfile"
DOWNLOADFILE="$tmpfile"
return 0
}
# > Sets a registry key
# arguments:
# $1 - key
# $2 - path
register_mozilla_plugin()
{
local KEY="$1"; local VAL="$2"
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
local valfile=$("$WINE" winepath --windows "$VAL" | sed 's/\\/\\\\/g')
(
echo "REGEDIT4"
echo ""
echo "[HKEY_LOCAL_MACHINE\\Software\\MozillaPlugins\\$KEY]"
echo "\"Path\"=\"$valfile\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Installer for Silverlight
# arguments:
# $1 - version
# $2 - short version
# $DOWNLOADFILE
install_silverlight()
{
local VER="$1"
local SHORTVER="$2"
# Remove the registry keys for Silverlight since other versions can prevent this one from installing
"$WINE" msiexec /uninstall {89F4137D-6C26-4A84-BDB8-2E5A4BB71E00};
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /noupdate 2>&1
else
"$WINE" "$DOWNLOADFILE" /q /doNotRequireDRMPrompt /noupdate 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local programfiles="$WINEPREFIX/drive_c/Program Files"
if [ ! -d "$programfiles/Microsoft Silverlight/$VER" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Move the installation to a version-specific folder that nothing will touch
mkdir -p "$programfiles/Silverlight"
mv "$programfiles/Microsoft Silverlight/$VER" "$programfiles/Silverlight/$VER"
# Create a short symlink if SHORTVER is provided.
if [ ! -z "$SHORTVER" ]; then
local shortsymlink="$programfiles/Silverlight/$SHORTVER"
if [ -L "$shortsymlink" ]; then
rm "$shortsymlink"
elif [ -e "$shortsymlink" ]; then
echo "[$PRG] ERROR: Unable to overwrite $shortsymlink, please delete this file manually." >&2
return 1
fi
ln -s "$VER" "$shortsymlink"
fi
# Remove the Silverlight menu shortcut
rm -f "$WINEPREFIX/drive_c/users/$USER/Start Menu/Programs/Microsoft Silverlight/Microsoft Silverlight.lnk"
# Workaround for users that are upgrading install-dependency before Pipelight release 0.2.6
if [ "$VER" == "5.1.30214.0" ]; then
if [ -d "$programfiles/Silverlight/5.1.20913.0" ]; then
mv "$programfiles/Silverlight/5.1.20913.0" "$programfiles/Silverlight/5.1.20913.0.orig"
fi
ln -s "$programfiles/Silverlight/$VER" "$programfiles/Silverlight/5.1.20913.0"
fi
# Successful
return 0
}
# > Extract cab library
# arguments:
# $1 - file to extract
# $DOWNLOADFILE
#
# optional arguments:
# --reg - run regsvr32.dll to register the dll
install_cabextract()
{
local FILE="$1"; shift
local system32="$WINEPREFIX/drive_c/windows/system32"
cabextract -d "$system32" "$DOWNLOADFILE" -F "$FILE"
if [ ! -f "$system32/$FILE" ]; then
echo "[$PRG] ERROR: Failed to extract $FILE from cab file." >&2
return 1
fi
# Process additional args
while [ $# -gt 0 ] ; do
local cmd=$1; shift
case "$cmd" in
--rename)
if ! mv "$system32/$FILE" "$system32/$1"; then
echo "[$PRG] ERROR: Unable to rename extracted file." >&2
return 1
fi
FILE="$1"; shift
;;
--reg)
"$WINE" regsvr32.exe "$FILE"
;;
*)
echo "[$PRG] ERROR: Internal error, install_cabextract called with argument: $cmd" >&2
return 1
;;
esac
done
# Successful
return 0
}
# > Install wininet.dll
# arguments:
# $DOWNLOADFILE
install_wininet()
{
if ! install_cabextract wininet.x86.5.0.3700.6713.dll --rename "wininet.dll"; then return 1; fi
# Setup wine dlloverride and adjust some wininet.dll related settings
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides]"
echo "\"*wininet\"=\"native,builtin\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings]"
echo "\"MaxConnectionsPerServer\"=dword:7fffffff"
echo "\"MaxConnectionsPer1_0Server\"=dword:7fffffff"
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install flash
# arguments:
# $1 - version path component
# $DOWNLOADFILE
install_flash()
{
VER="$1"
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" -install 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/windows/system32/Macromed/Flash"
local result=1
case "$WINEARCH" in
win32)
[ -f "$installdir/NPSWF32_$VER.dll" ]; result=$?
;;
win64)
[ -f "$installdir/NPSWF64_$VER.dll" ]; result=$?
;;
*)
[ -f "$installdir/NPSWF32_$VER.dll" ] || [ -f "$installdir/NPSWF64_$VER.dll" ]; result=$?
;;
esac
if [ "$result" -ne 0 ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
local flashconfig="$installdir/mms.cfg"
if ! grep -q "^OverrideGPUValidation=" "$flashconfig" 2>/dev/null; then
(
grep -v "^OverrideGPUValidation=" "$flashconfig" 2>/dev/null
echo "OverrideGPUValidation=true"
) > "$flashconfig.bak"
if ! mv "$flashconfig.bak" "$flashconfig"; then
echo "[$PRG] ERROR: Unable to change $DEP plugin settings." >&2
fi
fi
# Successful
return 0
}
# > Install shockwave
# arguments:
# $1 - version path component
# $DOWNLOADFILE
install_shockwave()
{
VER="$1"
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /S 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/windows/system32/Adobe/Director"
if [ ! -f "$installdir/np32dsw_$VER.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Switch to OpenGL mode and disable fallback mode
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\allowfallback]"
echo "@=\"n\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\renderer3dsetting]"
echo "@=\"2\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\renderer3dsettingPerm]"
echo "@=\"2\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Unity3D 32 bit
# arguments: None
# $DOWNLOADFILE
install_unity3d()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
else
"$WINE" "$DOWNLOADFILE" /S /AllUsers 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Unity/WebPlayer/loader"
if [ ! -f "$installdir/npUnity3D32.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Unity3D 64 bit
# arguments: None
# $DOWNLOADFILE
install_x64_unity3d()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
else
"$WINE" "$DOWNLOADFILE" /S /AllUsers 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Unity/WebPlayer64/loader-x64"
if [ ! -f "$installdir/npUnity3D64.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Foxit PDF
# arguments: None
# $DOWNLOADFILE
install_foxitpdf()
{
# Launch the installer
#if [ "$QUIETINSTALLATION" -eq 0 ]; then
# "$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
#else
"$WINE" msiexec.exe /i "$DOWNLOADFILE" ALLUSERS=1 /q /norestart MAKEDEFAULT=0 VIEW_IN_BROWSER=1 DESKTOP_SHORTCUT=0 AUTO_UPDATE=0 ADDLOCAL="FX_PDFVIEWER,FX_FIREFOXPLUGIN" REMOVE="ALL" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
#fi
local installdir="$WINEPREFIX/drive_c/Program Files/Foxit Software/Foxit Reader/plugins"
if [ ! -f "$installdir/npFoxitReaderPlugin.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Grandstream
# arguments: None
# $DOWNLOADFILE
install_grandstream()
{
local tmpfile=$(mktemp_with_ext "exe")
[ -f "$tmpfile" ] || return 1
if ! unzip -p "$DOWNLOADFILE" "chrome_firefox_plugine_1.0.0.7.exe" > "$tmpfile"; then
echo "[$PRG] ERROR: Unable to extract installer from zip file." >&2
rm "$tmpfile"
return 1
fi
# Launch the installer and delete the program afterwards
"$WINE" "$tmpfile" 2>&1
rm "$tmpfile"
local installdir="$WINEPREFIX/drive_c/Program Files/WebControl"
if [ ! -f "$installdir/npGS_Plugins.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install mspatcha.dll
# arguments: None
# $DOWNLOADFILE
install_mspatcha()
{
if ! install_cabextract mspatcha.dll; then return 1; fi
# Setup wine dlloverride
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides]"
echo "\"*mspatcha\"=\"native,builtin\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Adobe Reader
# arguments: None
# $DOWNLOADFILE
install_adobereader()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /msi EULA_ACCEPT=YES /qn 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Adobe/Reader 11.0/Reader/AIR"
if [ ! -f "$installdir/nppdf32.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Disable sandbox as it does not work with Wine
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Acrobat Reader\\11.0\\Privileged]"
echo "\"bProtectedMode\"=dword:00000000"
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Widevine
# arguments: None
# $DOWNLOADFILE
install_widevine()
{
local system32="$WINEPREFIX/drive_c/windows/system32"
if ! unzip -p "$DOWNLOADFILE" "plugins/npwidevinemediaoptimizer.dll" > "$system32/npwidevinemediaoptimizer.dll"; then
echo "[$PRG] ERROR: Unable to extract plugin from xip file." >&2
return 1
fi
# Successful
return 0
}
# > Install Hikvision
# arguments: None
# $DOWNLOADFILE
install_hikvision()
{
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /silent 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Web Components"
if [ ! -f "$installdir/npWebVideoPlugin.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install NP-ActiveX
# arguments:
# $1 - checksum of npactivex.dll
# $DOWNLOADFILE
install_npactivex()
{
DLLSHA="$1"
local system32="$WINEPREFIX/drive_c/windows/system32"
# The exit code is 1, but the output is still valid
unzip -p "$DOWNLOADFILE" "npactivex.dll" > "$system32/npactivex.dll"
local installfile="$system32/npactivex.dll"
if [ ! -f "$installfile" ] || [ "$DLLSHA" != "$(sha256sum "$installfile" | cut -d' ' -f1)" ]; then
echo "[$PRG] ERROR: Unable to extract plugin from crx file." >&2
return 1
fi
# Successful
return 0
}
# > Install Roblox
# arguments:
# $1 - version "number"
# $DOWNLOADFILE
install_roblox()
{
VER="$1"
"$WINE" "$DOWNLOADFILE" 2>&1
local installdir="$WINEPREFIX/drive_c/users/$USER/Local Settings/Application Data/RobloxVersions/version-$VER"
if [ ! -f "$installdir/NPRobloxProxy.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
if ! "$WINE" regsvr32 "$installdir/RobloxProxy.dll"; then
echo "[$PRG] ERROR: Unable to register Roblox Launcher class." >&2
return 1
fi
# Successful
return 0
}
# > Install Vizeed RGR
# arguments: None
# $DOWNLOADFILE
install_vizzedrgr()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" msiexec.exe /i "$DOWNLOADFILE" 2>&1
else
"$WINE" msiexec.exe /quiet /i "$DOWNLOADFILE" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Vizzed/Vizzed Retro Game Room"
if [ ! -f "$installdir/NpVizzedRgr.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install ViewRight Plugin for Caiway
# arguments: None
# $DOWNLOADFILE
install_viewright_caiway()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" msiexec.exe /i "$DOWNLOADFILE" 2>&1
else
"$WINE" msiexec.exe /quiet /i "$DOWNLOADFILE" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Verimatrix/ViewRight Web"
if [ ! -f "$installdir/npViewRight.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# Use fetch on FreeBSD if wget is not available
if command -v wget >/dev/null 2>&1; then
download_file()
{
wget -O "$1" "$2"
}
get_download_size()
{
local filesize="$(wget -O- "$1" --spider --server-response 2>&1 | sed -ne '/Content-Length/{s/.*: //;p}')"
local re='^[0-9]+$'
if [[ "$filesize" -ne "0" ]] && [[ "$filesize" =~ $re ]]; then
echo "$(($filesize/(1024*1024)))"
else
echo "N/A"
fi
}
elif command -v fetch >/dev/null 2>&1; then
download_file()
{
fetch -o "$1" "$2"
}
get_download_size()
{
echo "N/A"
}
else
download_file()
{
echo "ERROR: Could neither find wget nor fetch. Unable to download file!" >&2
return 1
}
get_download_size()
{
echo "N/A"
}
fi
# Use shasum instead of sha256sum on MacOS / *BSD
if ! command -v sha256sum >/dev/null 2>&1 && command -v shasum >/dev/null 2>&1; then
sha256sum()
{
shasum -a 256 "$1"
}
fi
# Use md5 instead of md5sum on MacOS / *BSD
if ! command -v md5sum >/dev/null 2>&1 && command -v md5 >/dev/null 2>&1; then
md5sum()
{
md5
}
fi
# Check if some visual feedback is possible
if command -v zenity >/dev/null 2>&1; then
progressbar()
{
WINDOWID="" zenity --progress --title="$1" --text="$2" --pulsate --width=400 --auto-close --no-cancel ||
WINDOWID="" zenity --progress --title="$1" --text="$2" --pulsate --width=400 --auto-close
}
elif command -v kdialog >/dev/null 2>&1 && command -v qdbus >/dev/null 2>&1; then
#Check if qdbus is symlinked to qtchooser (for Arch Linux)
QDBUSPATH=$(which qdbus)
QDBUSPATH=$(readlink "$QDBUSPATH")
if [ "$QDBUSPATH" == "qtchooser" ]; then
QDBUSPATH="qtchooser -run-tool=qdbus -qt=4"
else
QDBUSPATH="qdbus"
fi
progressbar()
{
local dcopref=$(kdialog --title "$1" --progressbar "$2" 10)
# Update the progress bar (not really the progress, but the user knows that something is going on)
(
local progress=1
while true; do
local err=$($QDBUSPATH $dcopref org.freedesktop.DBus.Properties.Set org.kde.kdialog.ProgressDialog value "$progress" 2>&1)
if [ ! -z "$err" ]; then break; fi
sleep 1
(( progress++ ))
if [ "$progress" -gt 10 ]; then progress=0; fi
done
) 0</dev/null &
local dialogpid="$!"
cat -
kill "$dialogpid"
$QDBUSPATH $dcopref org.kde.kdialog.ProgressDialog.close &> /dev/null
}
else
progressbar()
{
cat -
}
fi
# Print usage message when no arguments are given at all
if [ $# -eq 0 ]; then
usage
exit 0
fi
# Check for environment variables
if [ -z "$WINE" ] || [ -z "$WINEPREFIX" ]; then
echo "[$PRG] ERROR: Missing necessary environment variables WINE and WINEPREFIX." >&2
exit 1
fi
if [ ! -w "$WINEPREFIX" ]; then
WINEPREFIX_PARENT="$(dirname "$WINEPREFIX")"
if [ ! -w "$WINEPREFIX_PARENT" ] || [ ! -O "$WINEPREFIX_PARENT" ]; then
echo "[$PRG] ERROR: You're running this script as a wrong user - WINEPREFIX or parent directory not owned by you." >&2
exit 1
fi
fi
# Silent installation
if [ -z "$QUIETINSTALLATION" ]; then
QUIETINSTALLATION=0
fi
# Generate a lock file based on the wine prefix
LOCKFILE=$(echo "$WINEPREFIX" | md5sum | cut -d' ' -f1)
LOCKFILE="/tmp/wine-$LOCKFILE.tmp"
LOCKFD=9; eval "exec $LOCKFD> \"\$LOCKFILE\""
if ! flock -x -w 360 "$LOCKFD"; then
echo "[$PRG] ERROR: Failed to obtain an installation lock in 6 minutes." >&2
exit 1;
fi
# Close file descriptor (ensure that the lock is released when the installation is ready)
trap "EXITSTATUS=\$?; flock -u \"$LOCKFD\"; atexit; exit \"\$EXITSTATUS\"" 0
# Initialize wine if not done yet
if [ ! -f "$WINEPREFIX/system.reg" ]; then
# Directory exists, but without system.reg - wine will assume wrong platform, so create dummy system.reg
if [ -d "$WINEPREFIX" ] && [ ! -f "$WINEPREFIX/system.reg" ]; then
if [ "$WINEARCH" == "win32" ] || [ "$WINEARCH" == "win64" ]; then
echo -en "WINE REGISTRY Version 2\n\n#arch=$WINEARCH\n" > "$WINEPREFIX/system.reg"
echo "[$PRG] Forced creation of a $WINEARCH wine prefix."
fi
fi
DISPLAY="" "$WINE" wineboot.exe 2>&1 | progressbar "Please wait..." "Creating wine prefix"
fi
# Set default return value
RET=0
while [ $# -gt 0 ] ; do
DEP="$1"; INS=(); URL=""; SHA=""; EXT=""; DOWNLOADFILE=""; shift
case "$DEP" in
wine-prefix)
continue # The wine-prefix is created automatically for all packages
;;
wine-silverlight4-installer)
INS=(install_silverlight "4.1.10329.0")
URL="http://silverlight.dlservice.microsoft.com/download/6/A/1/6A13C54D-3F35-4..."
SHA="b0e476090206b2e61ba897de9151a31e0182c0e62e8abd528c35d3857ad6131c"
;;
wine-silverlight5.0-installer)
INS=(install_silverlight "5.0.61118.0")
URL="http://silverlight.dlservice.microsoft.com/download/5/5/7/55748E53-D673-4..."
SHA="dd45a55419026c592f8b6fc848dceface7e1ce98720bf13848a2e8ae366b29e8"
;;
wine-silverlight5.1-installer) # http://www.microsoft.com/getsilverlight/locale/en-us/html/Microsoft%20Sil...
INS=(install_silverlight "5.1.30514.0" "latest")
URL="http://silverlight.dlservice.microsoft.com/download/F/8/C/F8C0EACB-92D0-4..."
SHA="afa7a7081d30b00a4f57c32932bd6d84940bb43b3f5feb0828ff988c80e2d485"
;;
wine-flash-installer) # http://www.adobe.com/de/software/flash/about/
INS=(install_flash "16_0_0_235")
URL="http://fpdownload.macromedia.com/get/flashplayer/pdc/16.0.0.235/install_f..."
SHA="4e83b1af33587cc7bcab870b9f30395f2d78a249c46cf8953ffcd928c8f9f07c"
;;
wine-flash-debug-installer)
INS=(install_flash "16_0_0_235")
URL="http://download.macromedia.com/pub/flashplayer/updaters/16/flashplayer_16..."
SHA="08fc11fc121464412a278aa3aee67bec62348b8ea687cf65286edb86fff0aa74"
;;
wine-widevine-installer) # http://www.widevine.com/download/videooptimizer/index.html
INS=(install_widevine)
URL="https://dl.google.com/widevine/6.0.0.12442/WidevineMediaOptimizer_Win.xpi"
SHA="84cde1b83d8f5e4b287303a25e61227ce9a253268af6bd88b9a2f98c85129bc8"
EXT="zip"
;;
wine-unity3d-installer)
INS=(install_unity3d)
URL="http://webplayer.unity3d.com/download_webplayer-3.x/UnityWebPlayer.exe"
SHA="84568878b561f248869701f4f768ae22fb35ab025bb514919a86a5eeb4fe3e2f"
;;
wine-x64-unity3d-installer)
INS=(install_x64_unity3d)
URL="http://webplayer.unity3d.com/download_webplayer-3.x/UnityWebPlayerFull64.exe"
SHA="a4ae24820ec2f1c87e26123227c1ccd330c8b0f69f7e2f2586761e174a300802"
;;
wine-adobereader-installer) # http://get.adobe.com/de/reader/otherversions/
INS=(install_adobereader)
URL="http://ardownload.adobe.com/pub/adobe/reader/win/11.x/11.0.08/en_US/AdbeR..."
SHA="00dbd10f80e9451938d5a10e60b8c8dca2dac81c118618652bb49a62ca04c3b3"
;;
wine-foxitpdf-installer) # http://www.foxitsoftware.com/Secure_PDF_Reader/version_history.php
INS=(install_foxitpdf)
URL="http://cdn04.foxitsoftware.com/pub/foxit/reader/desktop/win/7.x/7.0/enu/E..."
SHA="4be8aadcc4fea96277b4d879bb0320a9bd027ebfb2de1306399b4c29abe94206"
;;
wine-shockwave-installer) # http://get.adobe.com/de/shockwave/otherversions/
INS=(install_shockwave "1215155")
URL="http://fpdownload.macromedia.com/get/shockwave/default/english/win95nt/la..."
SHA="ed1d5eda2ac41a311914f2b1fbaa6d60f7081c0fbea07c990d210a4313c696ba"
;;
wine-grandstream-installer)
INS=(install_grandstream)
URL="http://www.grandstream.com/products/tools/surveillance/webcontrl_plugin.zip"
SHA="1162798378997373701967f3f0f291ae4c858e8cae29e55a5249e24f47f70df2"
;;
wine-mpg2splt-installer)
INS=(install_cabextract mpg2splt.ax --reg)
URL="http://download.microsoft.com/download/8/0/D/80D7E79D-C0E4-415A-BCCA-E229..."
SHA="984ed15e23a00a33113f0012277e1e680c95782ce2c44f414e7af14e28e3f1a2"
;;
wine-wininet-installer)
INS=(install_wininet)
URL="http://download.microsoft.com/download/6/f/c/6fcc07f8-62e1-459e-aab3-06fa..."
SHA="b3f31b0d523f03123e8def4f91ba2e64aaceb31d9bfe851516ad7f61b0268d4a"
;;
wine-mspatcha-installer)
INS=(install_mspatcha)
URL="http://download.microsoft.com/download/WindowsInstaller/Install/2.0/NT45/..."
SHA="4c3516c0b5c2b76b88209b22e3bf1cb82d8e2de7116125e97e128952372eed6b"
;;
wine-hikvision-installer)
INS=(install_hikvision)
URL="http://cctvone.com/fillib/IP%20Camera/Hikvision-2DC-Series/CD/IE%20Client..."
SHA="04fec22ca61c657f6f46160e55334e3defeea0e193bc8ec6d7bb45c87e773361"
;;
wine-npactivex-installer) # https://code.google.com/p/np-activex/downloads/list
INS=(install_npactivex "6a31dac35cfda77ef4be724f226c5b54404aec61a81e663e47d39c7c9dd1580e")
URL="https://np-activex.googlecode.com/files/extension_1_5_0_7.crx"
SHA="12ba6c79079f53172ca897f717911c2613219236dca5ae58662d41636490e7a9"
EXT="zip"
;;
wine-roblox-installer)
INS=(install_roblox "632471a80776450d")
URL="http://setup.roblox.com/version-632471a80776450d-Roblox.exe"
SHA="901505c1311cb592521ea6bec09ec793194d1ecb0630686e72a948850e55d632"
;;
wine-vizzedrgr-installer)
INS=(install_vizzedrgr)
URL="http://www.vizzed.co/VizzedRgrPlugin-v2.0.msi"
SHA="ddc99b1a6902e30f355533620637a2d1b7d1ff3b1bd76a65cb1fbd78b2b396cb"
;;
wine-viewright-caiway-installer) # https://www.caiway.nl/site/nl/applicatie/multiscreentvplugins
INS=(install_viewright_caiway)
URL="https://www.caiway.nl/downloads/ViewRightWebInstaller-3.5.0.0_CaiW.msi"
SHA="9436dea83e42204d0a9bc4d128c2f2693dd9c5f9636d5fa57441ef5886f3ab43"
;;
*)
echo "[$PRG] ERROR: No installer script found for $DEP." >&2
RET=1
break
;;
esac
# Is already installed?
if is_installed "$SHA"; then
echo "[$PRG] $DEP is already installed in '$WINEPREFIX'."
continue
fi
echo "[$PRG] Downloading and running $DEP."
# Fetch the download
if ! download "$URL" "$SHA" "$EXT"; then
echo "[$PRG] ERROR: Download of $DEP failed." >&2
RET=1
break
fi
# Do the installation
if ! eval "${INS[@]}"; then
echo "[$PRG] ERROR: Execution of $DEP failed." >&2
RET=1
break
fi
# Mark the package as installed
mark_installed "$SHA"
done
exit "$RET"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBCAAGBQJUh5RCAAoJEAtrgXwcOwUzJ5AP/2vCwVW0SFCUEruC4KtSTTk7
fkgKjsEWvZNDVI/s3MEyR9U5Uty6TC8BxY18PbapErarU2OfBJHS1n1rLUou+B5s
Z6sUmaXacgqGB6EDp7Ppn3AKbjta1fYJGWnEl6+8q/74g8Klmk6bn0nZLug9hoXh
6xTrtfJrwwOgdKbW/NguVqGYtCJACrXSXfdI07OZdo/Gq9MvyXaUQuiybzsNG/EW
aEVjQVgS+XHCApsQltJ7/gXy4nI8xl3Mi2wWFn4sggPNWQl3w6/2lInme0JHiyxN
Qk3VNpgOu7Ycbyd4LMrcJARhKp9xddS2GNCbTV+xkWUABytmtTzl7MVQSboF8bs3
tbwSfgxM8H7FNHPp29xmfLFE13nSy7cGhMxV09VmCGWDyh/WK5YuZzbMirr9hxRr
4Xdxc2lu9aMKKS3Koxg4UM7tbswLHT+Cx8KjYnaxEcrw8GzFTxaGa+/Jh15CjWSr
MR5h9INFH0Elj5UaiutjYyn4b1njp9X3fhy4EwTM/dS/7UdzvsABPhnvNqkQrOMJ
/2vc2Ni7AQRx7+eJiaVVRUB1sVaWo+LyryvzwL6ox1CSo88weTWuDXTCgBCbO5gf
FXghAIRuqPgakeVtQD/UxcwJMKzMq78FpSvazo3kllsziiE7FZvMS4ZCytzVYD3s
LVgU5MzEaG9uhXus+wZ2
=7ctL
-----END PGP SIGNATURE-----
--- NEW FILE pipelight.spec ---
# Conditional for release and snapshot builds. Uncomment for release-builds.
%global rel_build 1
# General needed defines.
%global bburl https://bitbucket.org/mmueller2012/%{name}/
%global commit b7b5e5471d527a801ad63138e963e1839d61e872
%global shortcommit %(c=%{commit};echo ${c:0:12})
# Settings used for build from snapshots.
%{!?rel_build:%global commit_date 20140714}
%{!?rel_build:%global gitver git%{commit_date}-%{shortcommit}}
%{!?rel_build:%global gitrel .git%{commit_date}.%{shortcommit}}
%{?rel_build:%global gittar %{name}-%{version}.tar.gz}
%{!?rel_build:%global gittar %{name}-%{version}-%{gitver}.tar.gz}
# Setup define for used docdir.
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global pkgdocdir %{_docdir}/%{name}
%else # 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global pkgdocdir %{_docdir}/%{name}-%{version}
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 8
# lib%%{name}*.so* is a private lib in a private libdir with no headers,
# so we should not provide that.
%global __provides_exclude ^lib%{name}.*\\.so.*$
Name: pipelight
Version: 0.2.8
Release: 1%{?gitrel}%{?dist}
Summary: NPAPI Wrapper Plugin for using Windows plugins in Linux browsers
License: GPLv2+ or LGPLv2+ or MPLv1.1
URL: http://%{name}.net/
%{?rel_build:Source0: %{bburl}get/v%{version}.tar.gz#/%{?gittar}}
%{!?rel_build:Source0: %{bburl}get/%{shortcommit}.tar.gz#/%{?gittar}}
# Use the most recent dependency-installer-script provided in upstream's scm.
Source1: %{bburl}raw/master/share/install-dependency.sig
# Wine is available on these arches, only.
ExclusiveArch: %{arm} %{ix86} x86_64
BuildRequires: %{__gpg}
BuildRequires: libX11-devel
BuildRequires: mingw32-gcc-c++
BuildRequires: mingw64-gcc-c++
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
BuildRequires: mingw32-winpthreads
BuildRequires: mingw64-winpthreads
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 7
Requires: mozilla-filesystem%{?_isa}
Requires: %{name}-common == %{version}-%{release}
Requires: %{name}-selinux
Requires: wine%{?_isa} >= 1.7.22-2
Requires(post): %{_bindir}/bash
Requires(post): grep
Requires(post): sed
Requires(preun): %{_bindir}/bash
%description
Pipelight is a NPAPI wrapper plugin for using Windows plugins in Linux
browsers and therefore giving you the possibility to access services
which are otherwise not available for Linux users. Typical examples of
such services are Netflix and Amazon Instant, which both use the
proprietary browser plugin Silverlight. These services cannot normally
be used on Linux since this plugin is only available for Windows.
Pipelight helps you access these services by using the original
Silverlight plugin directly in your browser, all while giving you a
better hardware acceleration and performance than a virtual machine.
Besides Silverlight, you can also use a variety of other plugins that
are supported by Pipelight.
Pipelight will take care of installing, configuring and updating all
supported plugins. From the perspective of the browser these plugins
will behave just like any other normal Linux plugin after you have
enabled them.
For further information about all supported plugins, their installation,
configuration and usage, please visit %{url}.
%package common
Summary: Common files needed by %{name}
BuildArch: noarch
Requires: %{_bindir}/sha256sum
Requires: %{_bindir}/wget
Requires: %{_bindir}/zenity
Requires: %{__gpg}
Requires: %{name} == %{version}-%{release}
Requires: %{name}-selinux
Requires: wine >= 1.7.22-2
Requires(post): %{__cp}
%description common
This package contains common files needed by %{name}.
%prep
%setup -qn mmueller2012-%{name}-%{shortcommit}
# Copy changelog and licenses to toplevel.
%{__cp} -a debian/changelog ChangeLog
%{__cp} -a debian/copyright COPYRIGHT
# Remove extra static-flag from mingw-linker-flags.
%{__sed} -i -e 's![ \t*]-static"$!"!g' configure
# Replace the install-dependency-script with a more recent version
# from upstream's scm and fix it's hashbang.
%{__gpg} --batch --no-default-keyring --no-options --skip-verify \
--keyring "share/sig-install-dependency.gpg" \
--decrypt %{SOURCE1} > "share/install-dependency"
%build
%configure \
--with-win64 --wine-path=%{_bindir}/wine \
--so-mode=0755 --gpg-exec=%{__gpg}
%{__make} %{?_smp_mflags}
%install
%make_install
# Copy the packaged dependency-installer-script to some non-changing file.
# The original file will be %%ghost inside the build rpm in case of manual
# updates done by the user. The real file will be installed during %%post.
%{__mv} -f %{buildroot}%{_datadir}/%{name}/install-dependency \
%{buildroot}%{_datadir}/%{name}/install-dependency.real
%{_bindir}/touch %{buildroot}%{_datadir}/%{name}/install-dependency \
%{buildroot}%{_datadir}/%{name}/install-dependency.sig
%{__chmod} 0755 %{buildroot}%{_datadir}/%{name}/install-dependency
# Install %%doc to %%{pkgdocdir}.
%{__mkdir} -p %{buildroot}%{pkgdocdir}
cp -af ChangeLog COPYRIGHT LICENSE licenses %{buildroot}%{pkgdocdir}
%post
# This will not enable any plugins.
%{_bindir}/%{name}-plugin --create-mozilla-plugins &>/dev/null
%ifarch x86_64
for _plugin in $(%{_bindir}/%{name}-plugin | \
%{__grep} "x64" | \
%{__sed} -e 's!^[ \t]*!!g')
do
%{_bindir}/%{name}-plugin --unlock ${_plugin} &>/dev/null
done
%endif # arch x86_64
%post common
# Restore the dependency-installer-script shipped inside the recent package.
%{__cp} -af %{_datadir}/%{name}/install-dependency.real \
%{_datadir}/%{name}/install-dependency
%preun
# This will disable and remove all plugins, if the last instance of this
# package will be removed completely. This doesn't touch anything on updates.
if [ $1 -eq 0 ]
then
%{_bindir}/%{name}-plugin --disable-all &>/dev/null
%{_bindir}/%{name}-plugin --remove-mozilla-plugins &>/dev/null
fi
%files
%doc %dir %{pkgdocdir}
%doc %{pkgdocdir}/LICENSE
%{_bindir}/%{name}-plugin
%{_libdir}/%{name}
%{_mandir}/man1/%{name}-plugin.1*
%files common
%doc %exclude %{pkgdocdir}/LICENSE
%doc %{pkgdocdir}/*
%dir %{_datadir}/%{name}
%ghost %{_datadir}/%{name}/install-dependency
%ghost %{_datadir}/%{name}/install-dependency.sig
%{_datadir}/%{name}/*/
%{_datadir}/%{name}/install-dependency.real
%{_datadir}/%{name}/pluginloader*
%{_datadir}/%{name}/sig-install-dependency.gpg
%{_datadir}/%{name}/wine*
%changelog
* Wed Dec 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-1
- new upstream release v0.2.8
* Wed Sep 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-4
- update Flash to 15.0.0.152
- remove extra static-flag from mingw-linker-flags
- fix installing up-to-date install-dependency-script
- remove arched conditionals for minigw-related builds
* Fri Aug 15 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-3
- update Flash to 14.0.0.179 and AdobeReader to 11.0.08
* Wed Aug 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-2
- update Silverlight to 5.1.30514.0 and unity3d checksum
* Sun Jul 20 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-1
- new upstream release -- fixes 'pipelight-plugin --update' command
* Sat Jul 19 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.2-1
- new upstream release
- switch back to release-build
* Wed Jul 16 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.16.git20140714.61348bc7adad
- main-pkg should own %%dir %%{_datadir}/%%{name}, too
* Tue Jul 15 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.15.git20140714.61348bc7adad
- fix broken dependencies on grep and sed
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.14.git20140714.61348bc7adad
- update to new snapshot git20140714.61348bc7adad
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.13.git20140714.f28c55b42dbe
- update to new snapshot git20140714.f28c55b42dbe
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.12.git20140714.be8e5d96a755
- update to new snapshot git20140714.be8e5d96a755
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.11.git20140713.066356f40633
- replaced Requires: wine(compholio) with wine >= 1.7.22-2
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.10.git20140713.066356f40633
- added Requires for pipelight-selinux
- unlock all 'x64-*'-plugins on x86_64 by default
- added needed Requires and Requires(post)
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.9.git20140713.066356f40633
- unlock 'x64-flash'-plugin on x86_64 by default
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.8.git20140713.066356f40633
- update to new snapshot git20140713.066356f40633
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.7.git20140713.d79c1202f857
- update to new snapshot git20140713.d79c1202f857
- obsoleted pipelight-0.2.7.1.1_improve-buildsys.patch
- use signed updated install-dependency-script
- exclude lib%%{name}*.so* from auto-provides
- added / moved runtime-Requires between build packages,
Requires: wine(compholio), Requires(post) and Requires(preun)
- fixed typo in %%changelog
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.6.git20140711.035fa4908b63
- update to new snapshot git20140711.035fa4908b63
- license-change --> upstream dropped file (src/npapi-headers/npruntime.h)
covered by BSD-license
- upstream now ships proper licese-text-files in src-tarball
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.5.git20140711.8b41e9505f7a
- split files in %%{pkgdocdir} between main- and common-package
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.4.git20140711.8b41e9505f7a
- create common-subpackage
- the %%ghost install-dependency must have 0755-perms
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.3.git20140711.8b41e9505f7a
- package the %%ghost files to be 0-size
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.2.git20140711.8b41e9505f7a
- use the most recent dependency-installer-script provided in upstream's scm
- copy the original dependency-installer-script to some non-changing file and
package that one as existing file, the real dependency-installer-script as
%%ghost; restore the real dependency-installer-script during %%post from
the packaged one
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.1.git20140711.8b41e9505f7a
- update to new snapshot git20140711.8b41e9505f7a8710b3817ae93ac46b3be5f96f1f
- reworked spec-file for release or snapshot-builds
- updated Patch0 for changes in upstream-sources
- obsoleted Patch1 and Patch2 -- now in upstream-sources
* Thu Jul 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-4
- referenced urls to pull-requests for upstreaming patches
- referenced url to pull-request for adding the missing license-textfiles
* Thu Jul 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-3
- replaced Patch1 with a better solution, thanks to Michael Müller
- refactored pipelight-0.2.7.1_fix-missing-call-to-setgroups.patch
- improved pipelight-0.2.7.1_use-cp-a.patch to use `cp -af`
* Tue Jul 08 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-2
- added BSD to License (#1117403)
see: https://bugzilla.redhat.com/show_bug.cgi?id=1117403#c2
* Mon Jul 07 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-1
- initial rpm release (#1117403)
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/F-20/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 28 Sep 2014 11:08:51 -0000 1.1
+++ .cvsignore 10 Dec 2014 15:46:48 -0000 1.2
@@ -0,0 +1 @@
+pipelight-0.2.8.tar.gz
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/F-20/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources 28 Sep 2014 11:08:52 -0000 1.1
+++ sources 10 Dec 2014 15:46:48 -0000 1.2
@@ -0,0 +1 @@
+e75591e5f181a0a0a41c41290d8393af pipelight-0.2.8.tar.gz
9 years, 11 months
rpms/pipelight/devel install-dependency.sig, NONE, 1.1 pipelight.spec, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2
by Björn Esser
Author: besser82
Update of /cvs/nonfree/rpms/pipelight/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv29681/devel
Modified Files:
.cvsignore sources
Added Files:
install-dependency.sig pipelight.spec
Log Message:
initial import of pipelight (devel)
--- NEW FILE install-dependency.sig ---
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
#!/usr/bin/env bash
usage()
{
echo ""
echo "Usage: ./install-dependency DEPENDENCY1 [DEPENDENCY2 ...]"
echo ""
echo "Environment variables:"
echo " WINE path to the wine executable"
echo " WINEPREFIX usually \$HOME/.wine-pipelight"
echo " WINEARCH usually win32"
echo " QUIETINSTALLATION=1 don't show the original installation dialogs"
echo ""
echo "Package dependencies:"
echo " wine-silverlight4-installer"
echo " wine-silverlight5.0-installer"
echo " wine-silverlight5.1-installer"
echo " wine-flash-installer"
echo " wine-flash-debug-installer"
echo " wine-widevine-installer"
echo " wine-unity3d-installer"
echo " wine-x64-unity3d-installer"
echo " wine-adobereader-installer"
echo " wine-foxitpdf-installer"
echo " wine-shockwave-installer"
echo " wine-grandstream-installer"
echo " wine-hikvision-installer"
echo " wine-npactivex-installer"
echo " wine-roblox-installer"
echo " wine-vizzedrgr-installer"
echo " wine-viewright-caiway-installer"
echo ""
echo "Library dependencies:"
echo " wine-mpg2splt-installer"
echo " wine-wininet-installer"
echo " wine-mspatcha-installer"
echo ""
}
PRG=$(basename "$0")
# > Marks a file in order to delete it at program termination
# arguments:
# $1 - File to delete
ATEXIT_RM_LIST=()
atexit_add_rm()
{
ATEXIT_RM_LIST+=("$1")
}
atexit()
{
local file
for file in "${ATEXIT_RM_LIST[@]}"; do
echo "Deleting temporary '$file'."
rm "$file"
done
}
mktemp_with_ext()
{
file=$(mktemp --suffix=".$1" 2>/dev/null)
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
file=$(mktemp 2>/dev/null) # old version of mktemp
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
file=$(mktemp -t pipelight 2>/dev/null) # MacOS version of mktemp
if [ "$?" -eq 0 ]; then echo "$file"; return 0; fi
return 1
}
# > Checks if a dependency is already installed
# arguments:
# $1 - SHA256
# $DEP
is_installed()
{
local SHA="$1"
local ckfile="$WINEPREFIX/$DEP.installed"
[ -f "$ckfile" ] && [ "$SHA" == "$(cat "$ckfile")" ]
return $?
}
# > Marks a dependency as already installed
# arguments: same as is_installed
mark_installed()
{
local SHA="$1"
local ckfile="$WINEPREFIX/$DEP.installed"
echo "$SHA" > "$ckfile"
}
# > Download a given dependency file
# arguments:
# $1 - URL
# $2 - SHA256
# $3 - Overwrite file extension
# returns:
# $DOWNLOADFILE
DOWNLOADFILE=""
download()
{
local URL="$1"; local SHA="$2"; local EXT="$3"
if [ -z "$EXT" ]; then
EXT=$(echo "$URL" | sed 's/.*\.//')
fi
# Reuse files from the netflix-desktop package if available
local dlfile="/var/lib/wine-browser-installer/$DEP.$EXT"
if [ -f "$dlfile" ] && [ "$SHA" == "$(sha256sum "$dlfile" | cut -d' ' -f1)" ]; then
DOWNLOADFILE="$dlfile"
return 0
fi
# Reuse existing download
local dlfile="/tmp/pipelight-$DEP.$EXT"
if [ -f "$dlfile" ] && [ "$SHA" == "$(sha256sum "$dlfile" | cut -d' ' -f1)" ]; then
DOWNLOADFILE="$dlfile"
return 0
fi
local trycount=3
local tmpfile=$(mktemp_with_ext "$EXT")
[ -f "$tmpfile" ] || return 1
local filesize=$(get_download_size "$URL")
# Download to tmpfile
while true; do
if [ "$trycount" -le 0 ]; then
rm "$tmpfile"
echo "[$PRG] ERROR: Downloading of $DEP failed multiple times. Please check:" >&2
echo "[$PRG]" >&2
echo "[$PRG] * that your internet connection is working properly" >&2
echo "[$PRG]" >&2
echo "[$PRG] * and that the plugin database is up-to-date. To update it just run:" >&2
echo "[$PRG] sudo pipelight-plugin --update" >&2
echo "[$PRG]" >&2
echo "[$PRG] If this doesn't help then most-likely the download URLs or checksums" >&2
echo "[$PRG] have changed. We recommend to open a bug-report in this case." >&2
return 1
fi
download_file "$tmpfile" "$URL" 2>&1 | progressbar "Please wait, downloading ..." "Downloading $DEP ($filesize MiB)"
if [ -f "$tmpfile" ] && [ "$SHA" == "$(sha256sum "$tmpfile" | cut -d' ' -f1)" ]; then
break
fi
(( trycount-- ))
sleep 2
done
# Move the downloaded file to the right path
if mv "$tmpfile" "$dlfile"; then
chmod 0644 "$dlfile"
DOWNLOADFILE="$dlfile"
return 0
fi
# Continue using the temp path
atexit_add_rm "$tmpfile"
DOWNLOADFILE="$tmpfile"
return 0
}
# > Sets a registry key
# arguments:
# $1 - key
# $2 - path
register_mozilla_plugin()
{
local KEY="$1"; local VAL="$2"
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
local valfile=$("$WINE" winepath --windows "$VAL" | sed 's/\\/\\\\/g')
(
echo "REGEDIT4"
echo ""
echo "[HKEY_LOCAL_MACHINE\\Software\\MozillaPlugins\\$KEY]"
echo "\"Path\"=\"$valfile\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Installer for Silverlight
# arguments:
# $1 - version
# $2 - short version
# $DOWNLOADFILE
install_silverlight()
{
local VER="$1"
local SHORTVER="$2"
# Remove the registry keys for Silverlight since other versions can prevent this one from installing
"$WINE" msiexec /uninstall {89F4137D-6C26-4A84-BDB8-2E5A4BB71E00};
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /noupdate 2>&1
else
"$WINE" "$DOWNLOADFILE" /q /doNotRequireDRMPrompt /noupdate 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local programfiles="$WINEPREFIX/drive_c/Program Files"
if [ ! -d "$programfiles/Microsoft Silverlight/$VER" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Move the installation to a version-specific folder that nothing will touch
mkdir -p "$programfiles/Silverlight"
mv "$programfiles/Microsoft Silverlight/$VER" "$programfiles/Silverlight/$VER"
# Create a short symlink if SHORTVER is provided.
if [ ! -z "$SHORTVER" ]; then
local shortsymlink="$programfiles/Silverlight/$SHORTVER"
if [ -L "$shortsymlink" ]; then
rm "$shortsymlink"
elif [ -e "$shortsymlink" ]; then
echo "[$PRG] ERROR: Unable to overwrite $shortsymlink, please delete this file manually." >&2
return 1
fi
ln -s "$VER" "$shortsymlink"
fi
# Remove the Silverlight menu shortcut
rm -f "$WINEPREFIX/drive_c/users/$USER/Start Menu/Programs/Microsoft Silverlight/Microsoft Silverlight.lnk"
# Workaround for users that are upgrading install-dependency before Pipelight release 0.2.6
if [ "$VER" == "5.1.30214.0" ]; then
if [ -d "$programfiles/Silverlight/5.1.20913.0" ]; then
mv "$programfiles/Silverlight/5.1.20913.0" "$programfiles/Silverlight/5.1.20913.0.orig"
fi
ln -s "$programfiles/Silverlight/$VER" "$programfiles/Silverlight/5.1.20913.0"
fi
# Successful
return 0
}
# > Extract cab library
# arguments:
# $1 - file to extract
# $DOWNLOADFILE
#
# optional arguments:
# --reg - run regsvr32.dll to register the dll
install_cabextract()
{
local FILE="$1"; shift
local system32="$WINEPREFIX/drive_c/windows/system32"
cabextract -d "$system32" "$DOWNLOADFILE" -F "$FILE"
if [ ! -f "$system32/$FILE" ]; then
echo "[$PRG] ERROR: Failed to extract $FILE from cab file." >&2
return 1
fi
# Process additional args
while [ $# -gt 0 ] ; do
local cmd=$1; shift
case "$cmd" in
--rename)
if ! mv "$system32/$FILE" "$system32/$1"; then
echo "[$PRG] ERROR: Unable to rename extracted file." >&2
return 1
fi
FILE="$1"; shift
;;
--reg)
"$WINE" regsvr32.exe "$FILE"
;;
*)
echo "[$PRG] ERROR: Internal error, install_cabextract called with argument: $cmd" >&2
return 1
;;
esac
done
# Successful
return 0
}
# > Install wininet.dll
# arguments:
# $DOWNLOADFILE
install_wininet()
{
if ! install_cabextract wininet.x86.5.0.3700.6713.dll --rename "wininet.dll"; then return 1; fi
# Setup wine dlloverride and adjust some wininet.dll related settings
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides]"
echo "\"*wininet\"=\"native,builtin\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings]"
echo "\"MaxConnectionsPerServer\"=dword:7fffffff"
echo "\"MaxConnectionsPer1_0Server\"=dword:7fffffff"
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install flash
# arguments:
# $1 - version path component
# $DOWNLOADFILE
install_flash()
{
VER="$1"
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" -install 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/windows/system32/Macromed/Flash"
local result=1
case "$WINEARCH" in
win32)
[ -f "$installdir/NPSWF32_$VER.dll" ]; result=$?
;;
win64)
[ -f "$installdir/NPSWF64_$VER.dll" ]; result=$?
;;
*)
[ -f "$installdir/NPSWF32_$VER.dll" ] || [ -f "$installdir/NPSWF64_$VER.dll" ]; result=$?
;;
esac
if [ "$result" -ne 0 ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
local flashconfig="$installdir/mms.cfg"
if ! grep -q "^OverrideGPUValidation=" "$flashconfig" 2>/dev/null; then
(
grep -v "^OverrideGPUValidation=" "$flashconfig" 2>/dev/null
echo "OverrideGPUValidation=true"
) > "$flashconfig.bak"
if ! mv "$flashconfig.bak" "$flashconfig"; then
echo "[$PRG] ERROR: Unable to change $DEP plugin settings." >&2
fi
fi
# Successful
return 0
}
# > Install shockwave
# arguments:
# $1 - version path component
# $DOWNLOADFILE
install_shockwave()
{
VER="$1"
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /S 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/windows/system32/Adobe/Director"
if [ ! -f "$installdir/np32dsw_$VER.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Switch to OpenGL mode and disable fallback mode
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\allowfallback]"
echo "@=\"n\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\renderer3dsetting]"
echo "@=\"2\""
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Shockwave 12\\renderer3dsettingPerm]"
echo "@=\"2\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Unity3D 32 bit
# arguments: None
# $DOWNLOADFILE
install_unity3d()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
else
"$WINE" "$DOWNLOADFILE" /S /AllUsers 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Unity/WebPlayer/loader"
if [ ! -f "$installdir/npUnity3D32.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Unity3D 64 bit
# arguments: None
# $DOWNLOADFILE
install_x64_unity3d()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
else
"$WINE" "$DOWNLOADFILE" /S /AllUsers 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Unity/WebPlayer64/loader-x64"
if [ ! -f "$installdir/npUnity3D64.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Foxit PDF
# arguments: None
# $DOWNLOADFILE
install_foxitpdf()
{
# Launch the installer
#if [ "$QUIETINSTALLATION" -eq 0 ]; then
# "$WINE" "$DOWNLOADFILE" /AllUsers 2>&1
#else
"$WINE" msiexec.exe /i "$DOWNLOADFILE" ALLUSERS=1 /q /norestart MAKEDEFAULT=0 VIEW_IN_BROWSER=1 DESKTOP_SHORTCUT=0 AUTO_UPDATE=0 ADDLOCAL="FX_PDFVIEWER,FX_FIREFOXPLUGIN" REMOVE="ALL" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
#fi
local installdir="$WINEPREFIX/drive_c/Program Files/Foxit Software/Foxit Reader/plugins"
if [ ! -f "$installdir/npFoxitReaderPlugin.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install Grandstream
# arguments: None
# $DOWNLOADFILE
install_grandstream()
{
local tmpfile=$(mktemp_with_ext "exe")
[ -f "$tmpfile" ] || return 1
if ! unzip -p "$DOWNLOADFILE" "chrome_firefox_plugine_1.0.0.7.exe" > "$tmpfile"; then
echo "[$PRG] ERROR: Unable to extract installer from zip file." >&2
rm "$tmpfile"
return 1
fi
# Launch the installer and delete the program afterwards
"$WINE" "$tmpfile" 2>&1
rm "$tmpfile"
local installdir="$WINEPREFIX/drive_c/Program Files/WebControl"
if [ ! -f "$installdir/npGS_Plugins.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install mspatcha.dll
# arguments: None
# $DOWNLOADFILE
install_mspatcha()
{
if ! install_cabextract mspatcha.dll; then return 1; fi
# Setup wine dlloverride
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Wine\\DllOverrides]"
echo "\"*mspatcha\"=\"native,builtin\""
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Adobe Reader
# arguments: None
# $DOWNLOADFILE
install_adobereader()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /msi EULA_ACCEPT=YES /qn 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Adobe/Reader 11.0/Reader/AIR"
if [ ! -f "$installdir/nppdf32.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Disable sandbox as it does not work with Wine
local tmpfile=$(mktemp)
[ -f "$tmpfile" ] || return 1
(
echo "REGEDIT4"
echo ""
echo "[HKEY_CURRENT_USER\\Software\\Adobe\\Acrobat Reader\\11.0\\Privileged]"
echo "\"bProtectedMode\"=dword:00000000"
) > "$tmpfile"
"$WINE" regedit "$tmpfile"
local res=$?
# Cleanup
rm "$tmpfile"
# Successful
return "$res"
}
# > Install Widevine
# arguments: None
# $DOWNLOADFILE
install_widevine()
{
local system32="$WINEPREFIX/drive_c/windows/system32"
if ! unzip -p "$DOWNLOADFILE" "plugins/npwidevinemediaoptimizer.dll" > "$system32/npwidevinemediaoptimizer.dll"; then
echo "[$PRG] ERROR: Unable to extract plugin from xip file." >&2
return 1
fi
# Successful
return 0
}
# > Install Hikvision
# arguments: None
# $DOWNLOADFILE
install_hikvision()
{
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" "$DOWNLOADFILE" 2>&1
else
"$WINE" "$DOWNLOADFILE" /silent 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Web Components"
if [ ! -f "$installdir/npWebVideoPlugin.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install NP-ActiveX
# arguments:
# $1 - checksum of npactivex.dll
# $DOWNLOADFILE
install_npactivex()
{
DLLSHA="$1"
local system32="$WINEPREFIX/drive_c/windows/system32"
# The exit code is 1, but the output is still valid
unzip -p "$DOWNLOADFILE" "npactivex.dll" > "$system32/npactivex.dll"
local installfile="$system32/npactivex.dll"
if [ ! -f "$installfile" ] || [ "$DLLSHA" != "$(sha256sum "$installfile" | cut -d' ' -f1)" ]; then
echo "[$PRG] ERROR: Unable to extract plugin from crx file." >&2
return 1
fi
# Successful
return 0
}
# > Install Roblox
# arguments:
# $1 - version "number"
# $DOWNLOADFILE
install_roblox()
{
VER="$1"
"$WINE" "$DOWNLOADFILE" 2>&1
local installdir="$WINEPREFIX/drive_c/users/$USER/Local Settings/Application Data/RobloxVersions/version-$VER"
if [ ! -f "$installdir/NPRobloxProxy.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
if ! "$WINE" regsvr32 "$installdir/RobloxProxy.dll"; then
echo "[$PRG] ERROR: Unable to register Roblox Launcher class." >&2
return 1
fi
# Successful
return 0
}
# > Install Vizeed RGR
# arguments: None
# $DOWNLOADFILE
install_vizzedrgr()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" msiexec.exe /i "$DOWNLOADFILE" 2>&1
else
"$WINE" msiexec.exe /quiet /i "$DOWNLOADFILE" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Vizzed/Vizzed Retro Game Room"
if [ ! -f "$installdir/NpVizzedRgr.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# > Install ViewRight Plugin for Caiway
# arguments: None
# $DOWNLOADFILE
install_viewright_caiway()
{
# Launch the installer
if [ "$QUIETINSTALLATION" -eq 0 ]; then
"$WINE" msiexec.exe /i "$DOWNLOADFILE" 2>&1
else
"$WINE" msiexec.exe /quiet /i "$DOWNLOADFILE" 2>&1 | progressbar "Please wait, installing ..." "Running $DEP"
fi
local installdir="$WINEPREFIX/drive_c/Program Files/Verimatrix/ViewRight Web"
if [ ! -f "$installdir/npViewRight.dll" ]; then
echo "[$PRG] ERROR: Installer for $DEP did not run correctly or was aborted." >&2
return 1
fi
# Successful
return 0
}
# Use fetch on FreeBSD if wget is not available
if command -v wget >/dev/null 2>&1; then
download_file()
{
wget -O "$1" "$2"
}
get_download_size()
{
local filesize="$(wget -O- "$1" --spider --server-response 2>&1 | sed -ne '/Content-Length/{s/.*: //;p}')"
local re='^[0-9]+$'
if [[ "$filesize" -ne "0" ]] && [[ "$filesize" =~ $re ]]; then
echo "$(($filesize/(1024*1024)))"
else
echo "N/A"
fi
}
elif command -v fetch >/dev/null 2>&1; then
download_file()
{
fetch -o "$1" "$2"
}
get_download_size()
{
echo "N/A"
}
else
download_file()
{
echo "ERROR: Could neither find wget nor fetch. Unable to download file!" >&2
return 1
}
get_download_size()
{
echo "N/A"
}
fi
# Use shasum instead of sha256sum on MacOS / *BSD
if ! command -v sha256sum >/dev/null 2>&1 && command -v shasum >/dev/null 2>&1; then
sha256sum()
{
shasum -a 256 "$1"
}
fi
# Use md5 instead of md5sum on MacOS / *BSD
if ! command -v md5sum >/dev/null 2>&1 && command -v md5 >/dev/null 2>&1; then
md5sum()
{
md5
}
fi
# Check if some visual feedback is possible
if command -v zenity >/dev/null 2>&1; then
progressbar()
{
WINDOWID="" zenity --progress --title="$1" --text="$2" --pulsate --width=400 --auto-close --no-cancel ||
WINDOWID="" zenity --progress --title="$1" --text="$2" --pulsate --width=400 --auto-close
}
elif command -v kdialog >/dev/null 2>&1 && command -v qdbus >/dev/null 2>&1; then
#Check if qdbus is symlinked to qtchooser (for Arch Linux)
QDBUSPATH=$(which qdbus)
QDBUSPATH=$(readlink "$QDBUSPATH")
if [ "$QDBUSPATH" == "qtchooser" ]; then
QDBUSPATH="qtchooser -run-tool=qdbus -qt=4"
else
QDBUSPATH="qdbus"
fi
progressbar()
{
local dcopref=$(kdialog --title "$1" --progressbar "$2" 10)
# Update the progress bar (not really the progress, but the user knows that something is going on)
(
local progress=1
while true; do
local err=$($QDBUSPATH $dcopref org.freedesktop.DBus.Properties.Set org.kde.kdialog.ProgressDialog value "$progress" 2>&1)
if [ ! -z "$err" ]; then break; fi
sleep 1
(( progress++ ))
if [ "$progress" -gt 10 ]; then progress=0; fi
done
) 0</dev/null &
local dialogpid="$!"
cat -
kill "$dialogpid"
$QDBUSPATH $dcopref org.kde.kdialog.ProgressDialog.close &> /dev/null
}
else
progressbar()
{
cat -
}
fi
# Print usage message when no arguments are given at all
if [ $# -eq 0 ]; then
usage
exit 0
fi
# Check for environment variables
if [ -z "$WINE" ] || [ -z "$WINEPREFIX" ]; then
echo "[$PRG] ERROR: Missing necessary environment variables WINE and WINEPREFIX." >&2
exit 1
fi
if [ ! -w "$WINEPREFIX" ]; then
WINEPREFIX_PARENT="$(dirname "$WINEPREFIX")"
if [ ! -w "$WINEPREFIX_PARENT" ] || [ ! -O "$WINEPREFIX_PARENT" ]; then
echo "[$PRG] ERROR: You're running this script as a wrong user - WINEPREFIX or parent directory not owned by you." >&2
exit 1
fi
fi
# Silent installation
if [ -z "$QUIETINSTALLATION" ]; then
QUIETINSTALLATION=0
fi
# Generate a lock file based on the wine prefix
LOCKFILE=$(echo "$WINEPREFIX" | md5sum | cut -d' ' -f1)
LOCKFILE="/tmp/wine-$LOCKFILE.tmp"
LOCKFD=9; eval "exec $LOCKFD> \"\$LOCKFILE\""
if ! flock -x -w 360 "$LOCKFD"; then
echo "[$PRG] ERROR: Failed to obtain an installation lock in 6 minutes." >&2
exit 1;
fi
# Close file descriptor (ensure that the lock is released when the installation is ready)
trap "EXITSTATUS=\$?; flock -u \"$LOCKFD\"; atexit; exit \"\$EXITSTATUS\"" 0
# Initialize wine if not done yet
if [ ! -f "$WINEPREFIX/system.reg" ]; then
# Directory exists, but without system.reg - wine will assume wrong platform, so create dummy system.reg
if [ -d "$WINEPREFIX" ] && [ ! -f "$WINEPREFIX/system.reg" ]; then
if [ "$WINEARCH" == "win32" ] || [ "$WINEARCH" == "win64" ]; then
echo -en "WINE REGISTRY Version 2\n\n#arch=$WINEARCH\n" > "$WINEPREFIX/system.reg"
echo "[$PRG] Forced creation of a $WINEARCH wine prefix."
fi
fi
DISPLAY="" "$WINE" wineboot.exe 2>&1 | progressbar "Please wait..." "Creating wine prefix"
fi
# Set default return value
RET=0
while [ $# -gt 0 ] ; do
DEP="$1"; INS=(); URL=""; SHA=""; EXT=""; DOWNLOADFILE=""; shift
case "$DEP" in
wine-prefix)
continue # The wine-prefix is created automatically for all packages
;;
wine-silverlight4-installer)
INS=(install_silverlight "4.1.10329.0")
URL="http://silverlight.dlservice.microsoft.com/download/6/A/1/6A13C54D-3F35-4..."
SHA="b0e476090206b2e61ba897de9151a31e0182c0e62e8abd528c35d3857ad6131c"
;;
wine-silverlight5.0-installer)
INS=(install_silverlight "5.0.61118.0")
URL="http://silverlight.dlservice.microsoft.com/download/5/5/7/55748E53-D673-4..."
SHA="dd45a55419026c592f8b6fc848dceface7e1ce98720bf13848a2e8ae366b29e8"
;;
wine-silverlight5.1-installer) # http://www.microsoft.com/getsilverlight/locale/en-us/html/Microsoft%20Sil...
INS=(install_silverlight "5.1.30514.0" "latest")
URL="http://silverlight.dlservice.microsoft.com/download/F/8/C/F8C0EACB-92D0-4..."
SHA="afa7a7081d30b00a4f57c32932bd6d84940bb43b3f5feb0828ff988c80e2d485"
;;
wine-flash-installer) # http://www.adobe.com/de/software/flash/about/
INS=(install_flash "16_0_0_235")
URL="http://fpdownload.macromedia.com/get/flashplayer/pdc/16.0.0.235/install_f..."
SHA="4e83b1af33587cc7bcab870b9f30395f2d78a249c46cf8953ffcd928c8f9f07c"
;;
wine-flash-debug-installer)
INS=(install_flash "16_0_0_235")
URL="http://download.macromedia.com/pub/flashplayer/updaters/16/flashplayer_16..."
SHA="08fc11fc121464412a278aa3aee67bec62348b8ea687cf65286edb86fff0aa74"
;;
wine-widevine-installer) # http://www.widevine.com/download/videooptimizer/index.html
INS=(install_widevine)
URL="https://dl.google.com/widevine/6.0.0.12442/WidevineMediaOptimizer_Win.xpi"
SHA="84cde1b83d8f5e4b287303a25e61227ce9a253268af6bd88b9a2f98c85129bc8"
EXT="zip"
;;
wine-unity3d-installer)
INS=(install_unity3d)
URL="http://webplayer.unity3d.com/download_webplayer-3.x/UnityWebPlayer.exe"
SHA="84568878b561f248869701f4f768ae22fb35ab025bb514919a86a5eeb4fe3e2f"
;;
wine-x64-unity3d-installer)
INS=(install_x64_unity3d)
URL="http://webplayer.unity3d.com/download_webplayer-3.x/UnityWebPlayerFull64.exe"
SHA="a4ae24820ec2f1c87e26123227c1ccd330c8b0f69f7e2f2586761e174a300802"
;;
wine-adobereader-installer) # http://get.adobe.com/de/reader/otherversions/
INS=(install_adobereader)
URL="http://ardownload.adobe.com/pub/adobe/reader/win/11.x/11.0.08/en_US/AdbeR..."
SHA="00dbd10f80e9451938d5a10e60b8c8dca2dac81c118618652bb49a62ca04c3b3"
;;
wine-foxitpdf-installer) # http://www.foxitsoftware.com/Secure_PDF_Reader/version_history.php
INS=(install_foxitpdf)
URL="http://cdn04.foxitsoftware.com/pub/foxit/reader/desktop/win/7.x/7.0/enu/E..."
SHA="4be8aadcc4fea96277b4d879bb0320a9bd027ebfb2de1306399b4c29abe94206"
;;
wine-shockwave-installer) # http://get.adobe.com/de/shockwave/otherversions/
INS=(install_shockwave "1215155")
URL="http://fpdownload.macromedia.com/get/shockwave/default/english/win95nt/la..."
SHA="ed1d5eda2ac41a311914f2b1fbaa6d60f7081c0fbea07c990d210a4313c696ba"
;;
wine-grandstream-installer)
INS=(install_grandstream)
URL="http://www.grandstream.com/products/tools/surveillance/webcontrl_plugin.zip"
SHA="1162798378997373701967f3f0f291ae4c858e8cae29e55a5249e24f47f70df2"
;;
wine-mpg2splt-installer)
INS=(install_cabextract mpg2splt.ax --reg)
URL="http://download.microsoft.com/download/8/0/D/80D7E79D-C0E4-415A-BCCA-E229..."
SHA="984ed15e23a00a33113f0012277e1e680c95782ce2c44f414e7af14e28e3f1a2"
;;
wine-wininet-installer)
INS=(install_wininet)
URL="http://download.microsoft.com/download/6/f/c/6fcc07f8-62e1-459e-aab3-06fa..."
SHA="b3f31b0d523f03123e8def4f91ba2e64aaceb31d9bfe851516ad7f61b0268d4a"
;;
wine-mspatcha-installer)
INS=(install_mspatcha)
URL="http://download.microsoft.com/download/WindowsInstaller/Install/2.0/NT45/..."
SHA="4c3516c0b5c2b76b88209b22e3bf1cb82d8e2de7116125e97e128952372eed6b"
;;
wine-hikvision-installer)
INS=(install_hikvision)
URL="http://cctvone.com/fillib/IP%20Camera/Hikvision-2DC-Series/CD/IE%20Client..."
SHA="04fec22ca61c657f6f46160e55334e3defeea0e193bc8ec6d7bb45c87e773361"
;;
wine-npactivex-installer) # https://code.google.com/p/np-activex/downloads/list
INS=(install_npactivex "6a31dac35cfda77ef4be724f226c5b54404aec61a81e663e47d39c7c9dd1580e")
URL="https://np-activex.googlecode.com/files/extension_1_5_0_7.crx"
SHA="12ba6c79079f53172ca897f717911c2613219236dca5ae58662d41636490e7a9"
EXT="zip"
;;
wine-roblox-installer)
INS=(install_roblox "632471a80776450d")
URL="http://setup.roblox.com/version-632471a80776450d-Roblox.exe"
SHA="901505c1311cb592521ea6bec09ec793194d1ecb0630686e72a948850e55d632"
;;
wine-vizzedrgr-installer)
INS=(install_vizzedrgr)
URL="http://www.vizzed.co/VizzedRgrPlugin-v2.0.msi"
SHA="ddc99b1a6902e30f355533620637a2d1b7d1ff3b1bd76a65cb1fbd78b2b396cb"
;;
wine-viewright-caiway-installer) # https://www.caiway.nl/site/nl/applicatie/multiscreentvplugins
INS=(install_viewright_caiway)
URL="https://www.caiway.nl/downloads/ViewRightWebInstaller-3.5.0.0_CaiW.msi"
SHA="9436dea83e42204d0a9bc4d128c2f2693dd9c5f9636d5fa57441ef5886f3ab43"
;;
*)
echo "[$PRG] ERROR: No installer script found for $DEP." >&2
RET=1
break
;;
esac
# Is already installed?
if is_installed "$SHA"; then
echo "[$PRG] $DEP is already installed in '$WINEPREFIX'."
continue
fi
echo "[$PRG] Downloading and running $DEP."
# Fetch the download
if ! download "$URL" "$SHA" "$EXT"; then
echo "[$PRG] ERROR: Download of $DEP failed." >&2
RET=1
break
fi
# Do the installation
if ! eval "${INS[@]}"; then
echo "[$PRG] ERROR: Execution of $DEP failed." >&2
RET=1
break
fi
# Mark the package as installed
mark_installed "$SHA"
done
exit "$RET"
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAEBCAAGBQJUh5RCAAoJEAtrgXwcOwUzJ5AP/2vCwVW0SFCUEruC4KtSTTk7
fkgKjsEWvZNDVI/s3MEyR9U5Uty6TC8BxY18PbapErarU2OfBJHS1n1rLUou+B5s
Z6sUmaXacgqGB6EDp7Ppn3AKbjta1fYJGWnEl6+8q/74g8Klmk6bn0nZLug9hoXh
6xTrtfJrwwOgdKbW/NguVqGYtCJACrXSXfdI07OZdo/Gq9MvyXaUQuiybzsNG/EW
aEVjQVgS+XHCApsQltJ7/gXy4nI8xl3Mi2wWFn4sggPNWQl3w6/2lInme0JHiyxN
Qk3VNpgOu7Ycbyd4LMrcJARhKp9xddS2GNCbTV+xkWUABytmtTzl7MVQSboF8bs3
tbwSfgxM8H7FNHPp29xmfLFE13nSy7cGhMxV09VmCGWDyh/WK5YuZzbMirr9hxRr
4Xdxc2lu9aMKKS3Koxg4UM7tbswLHT+Cx8KjYnaxEcrw8GzFTxaGa+/Jh15CjWSr
MR5h9INFH0Elj5UaiutjYyn4b1njp9X3fhy4EwTM/dS/7UdzvsABPhnvNqkQrOMJ
/2vc2Ni7AQRx7+eJiaVVRUB1sVaWo+LyryvzwL6ox1CSo88weTWuDXTCgBCbO5gf
FXghAIRuqPgakeVtQD/UxcwJMKzMq78FpSvazo3kllsziiE7FZvMS4ZCytzVYD3s
LVgU5MzEaG9uhXus+wZ2
=7ctL
-----END PGP SIGNATURE-----
--- NEW FILE pipelight.spec ---
# Conditional for release and snapshot builds. Uncomment for release-builds.
%global rel_build 1
# General needed defines.
%global bburl https://bitbucket.org/mmueller2012/%{name}/
%global commit b7b5e5471d527a801ad63138e963e1839d61e872
%global shortcommit %(c=%{commit};echo ${c:0:12})
# Settings used for build from snapshots.
%{!?rel_build:%global commit_date 20140714}
%{!?rel_build:%global gitver git%{commit_date}-%{shortcommit}}
%{!?rel_build:%global gitrel .git%{commit_date}.%{shortcommit}}
%{?rel_build:%global gittar %{name}-%{version}.tar.gz}
%{!?rel_build:%global gittar %{name}-%{version}-%{gitver}.tar.gz}
# Setup define for used docdir.
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global pkgdocdir %{_docdir}/%{name}
%else # 0%{?fedora} >= 20 || 0%{?rhel} >= 8
%global pkgdocdir %{_docdir}/%{name}-%{version}
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 8
# lib%%{name}*.so* is a private lib in a private libdir with no headers,
# so we should not provide that.
%global __provides_exclude ^lib%{name}.*\\.so.*$
Name: pipelight
Version: 0.2.8
Release: 1%{?gitrel}%{?dist}
Summary: NPAPI Wrapper Plugin for using Windows plugins in Linux browsers
License: GPLv2+ or LGPLv2+ or MPLv1.1
URL: http://%{name}.net/
%{?rel_build:Source0: %{bburl}get/v%{version}.tar.gz#/%{?gittar}}
%{!?rel_build:Source0: %{bburl}get/%{shortcommit}.tar.gz#/%{?gittar}}
# Use the most recent dependency-installer-script provided in upstream's scm.
Source1: %{bburl}raw/master/share/install-dependency.sig
# Wine is available on these arches, only.
ExclusiveArch: %{arm} %{ix86} x86_64
BuildRequires: %{__gpg}
BuildRequires: libX11-devel
BuildRequires: mingw32-gcc-c++
BuildRequires: mingw64-gcc-c++
%if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
BuildRequires: mingw32-winpthreads
BuildRequires: mingw64-winpthreads
%endif # 0%{?fedora} >= 20 || 0%{?rhel} >= 7
Requires: mozilla-filesystem%{?_isa}
Requires: %{name}-common == %{version}-%{release}
Requires: %{name}-selinux
Requires: wine%{?_isa} >= 1.7.22-2
Requires(post): %{_bindir}/bash
Requires(post): grep
Requires(post): sed
Requires(preun): %{_bindir}/bash
%description
Pipelight is a NPAPI wrapper plugin for using Windows plugins in Linux
browsers and therefore giving you the possibility to access services
which are otherwise not available for Linux users. Typical examples of
such services are Netflix and Amazon Instant, which both use the
proprietary browser plugin Silverlight. These services cannot normally
be used on Linux since this plugin is only available for Windows.
Pipelight helps you access these services by using the original
Silverlight plugin directly in your browser, all while giving you a
better hardware acceleration and performance than a virtual machine.
Besides Silverlight, you can also use a variety of other plugins that
are supported by Pipelight.
Pipelight will take care of installing, configuring and updating all
supported plugins. From the perspective of the browser these plugins
will behave just like any other normal Linux plugin after you have
enabled them.
For further information about all supported plugins, their installation,
configuration and usage, please visit %{url}.
%package common
Summary: Common files needed by %{name}
BuildArch: noarch
Requires: %{_bindir}/sha256sum
Requires: %{_bindir}/wget
Requires: %{_bindir}/zenity
Requires: %{__gpg}
Requires: %{name} == %{version}-%{release}
Requires: %{name}-selinux
Requires: wine >= 1.7.22-2
Requires(post): %{__cp}
%description common
This package contains common files needed by %{name}.
%prep
%setup -qn mmueller2012-%{name}-%{shortcommit}
# Copy changelog and licenses to toplevel.
%{__cp} -a debian/changelog ChangeLog
%{__cp} -a debian/copyright COPYRIGHT
# Remove extra static-flag from mingw-linker-flags.
%{__sed} -i -e 's![ \t*]-static"$!"!g' configure
# Replace the install-dependency-script with a more recent version
# from upstream's scm and fix it's hashbang.
%{__gpg} --batch --no-default-keyring --no-options --skip-verify \
--keyring "share/sig-install-dependency.gpg" \
--decrypt %{SOURCE1} > "share/install-dependency"
%build
%configure \
--with-win64 --wine-path=%{_bindir}/wine \
--so-mode=0755 --gpg-exec=%{__gpg}
%{__make} %{?_smp_mflags}
%install
%make_install
# Copy the packaged dependency-installer-script to some non-changing file.
# The original file will be %%ghost inside the build rpm in case of manual
# updates done by the user. The real file will be installed during %%post.
%{__mv} -f %{buildroot}%{_datadir}/%{name}/install-dependency \
%{buildroot}%{_datadir}/%{name}/install-dependency.real
%{_bindir}/touch %{buildroot}%{_datadir}/%{name}/install-dependency \
%{buildroot}%{_datadir}/%{name}/install-dependency.sig
%{__chmod} 0755 %{buildroot}%{_datadir}/%{name}/install-dependency
# Install %%doc to %%{pkgdocdir}.
%{__mkdir} -p %{buildroot}%{pkgdocdir}
cp -af ChangeLog COPYRIGHT LICENSE licenses %{buildroot}%{pkgdocdir}
%post
# This will not enable any plugins.
%{_bindir}/%{name}-plugin --create-mozilla-plugins &>/dev/null
%ifarch x86_64
for _plugin in $(%{_bindir}/%{name}-plugin | \
%{__grep} "x64" | \
%{__sed} -e 's!^[ \t]*!!g')
do
%{_bindir}/%{name}-plugin --unlock ${_plugin} &>/dev/null
done
%endif # arch x86_64
%post common
# Restore the dependency-installer-script shipped inside the recent package.
%{__cp} -af %{_datadir}/%{name}/install-dependency.real \
%{_datadir}/%{name}/install-dependency
%preun
# This will disable and remove all plugins, if the last instance of this
# package will be removed completely. This doesn't touch anything on updates.
if [ $1 -eq 0 ]
then
%{_bindir}/%{name}-plugin --disable-all &>/dev/null
%{_bindir}/%{name}-plugin --remove-mozilla-plugins &>/dev/null
fi
%files
%doc %dir %{pkgdocdir}
%doc %{pkgdocdir}/LICENSE
%{_bindir}/%{name}-plugin
%{_libdir}/%{name}
%{_mandir}/man1/%{name}-plugin.1*
%files common
%doc %exclude %{pkgdocdir}/LICENSE
%doc %{pkgdocdir}/*
%dir %{_datadir}/%{name}
%ghost %{_datadir}/%{name}/install-dependency
%ghost %{_datadir}/%{name}/install-dependency.sig
%{_datadir}/%{name}/*/
%{_datadir}/%{name}/install-dependency.real
%{_datadir}/%{name}/pluginloader*
%{_datadir}/%{name}/sig-install-dependency.gpg
%{_datadir}/%{name}/wine*
%changelog
* Wed Dec 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.8-1
- new upstream release v0.2.8
* Wed Sep 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-4
- update Flash to 15.0.0.152
- remove extra static-flag from mingw-linker-flags
- fix installing up-to-date install-dependency-script
- remove arched conditionals for minigw-related builds
* Fri Aug 15 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-3
- update Flash to 14.0.0.179 and AdobeReader to 11.0.08
* Wed Aug 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-2
- update Silverlight to 5.1.30514.0 and unity3d checksum
* Sun Jul 20 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.3-1
- new upstream release -- fixes 'pipelight-plugin --update' command
* Sat Jul 19 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.2-1
- new upstream release
- switch back to release-build
* Wed Jul 16 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.16.git20140714.61348bc7adad
- main-pkg should own %%dir %%{_datadir}/%%{name}, too
* Tue Jul 15 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.15.git20140714.61348bc7adad
- fix broken dependencies on grep and sed
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.14.git20140714.61348bc7adad
- update to new snapshot git20140714.61348bc7adad
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.13.git20140714.f28c55b42dbe
- update to new snapshot git20140714.f28c55b42dbe
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.12.git20140714.be8e5d96a755
- update to new snapshot git20140714.be8e5d96a755
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.11.git20140713.066356f40633
- replaced Requires: wine(compholio) with wine >= 1.7.22-2
* Mon Jul 14 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.10.git20140713.066356f40633
- added Requires for pipelight-selinux
- unlock all 'x64-*'-plugins on x86_64 by default
- added needed Requires and Requires(post)
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.9.git20140713.066356f40633
- unlock 'x64-flash'-plugin on x86_64 by default
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.8.git20140713.066356f40633
- update to new snapshot git20140713.066356f40633
* Sun Jul 13 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.7.git20140713.d79c1202f857
- update to new snapshot git20140713.d79c1202f857
- obsoleted pipelight-0.2.7.1.1_improve-buildsys.patch
- use signed updated install-dependency-script
- exclude lib%%{name}*.so* from auto-provides
- added / moved runtime-Requires between build packages,
Requires: wine(compholio), Requires(post) and Requires(preun)
- fixed typo in %%changelog
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.6.git20140711.035fa4908b63
- update to new snapshot git20140711.035fa4908b63
- license-change --> upstream dropped file (src/npapi-headers/npruntime.h)
covered by BSD-license
- upstream now ships proper licese-text-files in src-tarball
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.5.git20140711.8b41e9505f7a
- split files in %%{pkgdocdir} between main- and common-package
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.4.git20140711.8b41e9505f7a
- create common-subpackage
- the %%ghost install-dependency must have 0755-perms
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.3.git20140711.8b41e9505f7a
- package the %%ghost files to be 0-size
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.2.git20140711.8b41e9505f7a
- use the most recent dependency-installer-script provided in upstream's scm
- copy the original dependency-installer-script to some non-changing file and
package that one as existing file, the real dependency-installer-script as
%%ghost; restore the real dependency-installer-script during %%post from
the packaged one
* Fri Jul 11 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1.1-0.1.git20140711.8b41e9505f7a
- update to new snapshot git20140711.8b41e9505f7a8710b3817ae93ac46b3be5f96f1f
- reworked spec-file for release or snapshot-builds
- updated Patch0 for changes in upstream-sources
- obsoleted Patch1 and Patch2 -- now in upstream-sources
* Thu Jul 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-4
- referenced urls to pull-requests for upstreaming patches
- referenced url to pull-request for adding the missing license-textfiles
* Thu Jul 10 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-3
- replaced Patch1 with a better solution, thanks to Michael Müller
- refactored pipelight-0.2.7.1_fix-missing-call-to-setgroups.patch
- improved pipelight-0.2.7.1_use-cp-a.patch to use `cp -af`
* Tue Jul 08 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-2
- added BSD to License (#1117403)
see: https://bugzilla.redhat.com/show_bug.cgi?id=1117403#c2
* Mon Jul 07 2014 Björn Esser <bjoern.esser(a)gmail.com> - 0.2.7.1-1
- initial rpm release (#1117403)
Index: .cvsignore
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/devel/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 28 Sep 2014 11:08:51 -0000 1.1
+++ .cvsignore 10 Dec 2014 15:46:17 -0000 1.2
@@ -0,0 +1 @@
+pipelight-0.2.8.tar.gz
Index: sources
===================================================================
RCS file: /cvs/nonfree/rpms/pipelight/devel/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources 28 Sep 2014 11:08:52 -0000 1.1
+++ sources 10 Dec 2014 15:46:17 -0000 1.2
@@ -0,0 +1 @@
+e75591e5f181a0a0a41c41290d8393af pipelight-0.2.8.tar.gz
9 years, 11 months
rpms/dolphin-emu/devel dolphin-emu-4.0-gcc49.patch, NONE, 1.1 dolphin-emu-4.0-gtk3.patch, 1.1, 1.2 dolphin-emu-4.0-polarssl13.patch, 1.1, 1.2 dolphin-emu.spec, 1.12, 1.13
by Jeremy Newton
Author: jem256
Update of /cvs/nonfree/rpms/dolphin-emu/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7474
Modified Files:
dolphin-emu-4.0-gtk3.patch dolphin-emu-4.0-polarssl13.patch
dolphin-emu.spec
Added Files:
dolphin-emu-4.0-gcc49.patch
Log Message:
More patching
dolphin-emu-4.0-gcc49.patch:
Common/Src/CommonFuncs.h | 7 ++++++-
VideoCommon/Src/x64TextureDecoder.cpp | 5 ++++-
2 files changed, 10 insertions(+), 2 deletions(-)
--- NEW FILE dolphin-emu-4.0-gcc49.patch ---
diff -rupN dolphin-emu-2879cbd2b564-orig/Source/Core/Common/Src/CommonFuncs.h dolphin-emu-2879cbd2b564/Source/Core/Common/Src/CommonFuncs.h
--- dolphin-emu-2879cbd2b564-orig/Source/Core/Common/Src/CommonFuncs.h 1979-11-30 00:00:00.000000000 -0500
+++ dolphin-emu-2879cbd2b564/Source/Core/Common/Src/CommonFuncs.h 2014-12-09 13:18:36.165423334 -0500
@@ -30,7 +30,12 @@ struct ArraySizeImpl : public std::exten
#define b32(x) (b16(x) | (b16(x) >>16) )
#define ROUND_UP_POW2(x) (b32(x - 1) + 1)
-#if defined __GNUC__ && !defined __SSSE3__ && !defined _M_GENERIC
+#ifndef __GNUC_PREREQ
+ #define __GNUC_PREREQ(a, b) 0
+#endif
+
+#if (defined __GNUC__ && !__GNUC_PREREQ(4,9)) && \
+ !defined __SSSE3__ && defined _M_X86
#include <emmintrin.h>
static __inline __m128i __attribute__((__always_inline__))
_mm_shuffle_epi8(__m128i a, __m128i mask)
diff -rupN dolphin-emu-2879cbd2b564-orig/Source/Core/VideoCommon/Src/x64TextureDecoder.cpp dolphin-emu-2879cbd2b564/Source/Core/VideoCommon/Src/x64TextureDecoder.cpp
--- dolphin-emu-2879cbd2b564-orig/Source/Core/VideoCommon/Src/x64TextureDecoder.cpp 1979-11-30 00:00:00.000000000 -0500
+++ dolphin-emu-2879cbd2b564/Source/Core/VideoCommon/Src/x64TextureDecoder.cpp 2014-12-09 13:33:25.042255692 -0500
@@ -23,11 +23,14 @@
#if _M_SSE >= 0x401
#include <smmintrin.h>
-#include <emmintrin.h>
#elif _M_SSE >= 0x301 && !(defined __GNUC__ && !defined __SSSE3__)
#include <tmmintrin.h>
#endif
+#ifdef __SSE2__
+#include <emmintrin.h>
+#endif
+
// This avoids a harmless warning from a system header in Clang;
// see http://llvm.org/bugs/show_bug.cgi?id=16093
#ifdef __clang__
dolphin-emu-4.0-gtk3.patch:
CMakeLists.txt | 18 +++---------------
Source/Core/DolphinWX/CMakeLists.txt | 2 +-
2 files changed, 4 insertions(+), 16 deletions(-)
Index: dolphin-emu-4.0-gtk3.patch
===================================================================
RCS file: /cvs/nonfree/rpms/dolphin-emu/devel/dolphin-emu-4.0-gtk3.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- dolphin-emu-4.0-gtk3.patch 2 Oct 2014 14:33:51 -0000 1.1
+++ dolphin-emu-4.0-gtk3.patch 9 Dec 2014 20:49:29 -0000 1.2
@@ -1,24 +1,34 @@
diff -rupN dolphin-emu-2879cbd2b564-orig/CMakeLists.txt dolphin-emu-2879cbd2b564/CMakeLists.txt
---- dolphin-emu-2879cbd2b564-orig/CMakeLists.txt 2014-03-07 20:10:55.185158971 -0500
-+++ dolphin-emu-2879cbd2b564/CMakeLists.txt 2014-03-07 20:16:00.388691555 -0500
-@@ -707,13 +707,11 @@ if(NOT DISABLE_WX AND NOT ANDROID)
+--- dolphin-emu-2879cbd2b564-orig/CMakeLists.txt 1979-11-30 00:00:00.000000000 -0500
++++ dolphin-emu-2879cbd2b564/CMakeLists.txt 2014-12-09 15:27:57.364864541 -0500
+@@ -696,24 +696,12 @@ if(NOT DISABLE_WX AND NOT ANDROID)
+ endif(wxWidgets_FOUND)
+
+ if(UNIX AND NOT APPLE)
+- # There is a bug in the FindGTK module in cmake version 2.8.2 that
+- # does not find gdk-pixbuf-2.0. On the other hand some 2.8.3
+- # users have complained that pkg-config does not find
+- # gdk-pixbuf-2.0. On yet another hand, cmake version 2.8.3 in
+- # Ubuntu Natty does not find the glib libraries correctly.
+- # Ugly!!!
+ execute_process(COMMAND lsb_release -c -s
OUTPUT_VARIABLE DIST_NAME
ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE)
- if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}
+- if(${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}
- VERSION_EQUAL 2.8.2 OR "${DIST_NAME}" STREQUAL "natty")
- check_lib(GTK2 gtk+-2.0 gtk.h REQUIRED)
-+ VERSION_EQUAL 2.8.12 OR "${DIST_NAME}" STREQUAL "natty")
-+ check_lib(GTK3 gtk+-3.0 gtk.h REQUIRED)
- else()
+- else()
- include(FindGTK2)
- if(GTK2_FOUND)
- include_directories(${GTK2_INCLUDE_DIRS})
- endif()
-+ include(FindGTK)
+- endif()
++
++ check_lib(GTK3 gtk+-3.0 gtk.h REQUIRED)
+ include_directories(${GTK3_INCLUDE_DIRS})
- endif()
endif()
+ if(wxWidgets_FOUND)
diff -rupN dolphin-emu-2879cbd2b564-orig/Source/Core/DolphinWX/CMakeLists.txt dolphin-emu-2879cbd2b564/Source/Core/DolphinWX/CMakeLists.txt
--- dolphin-emu-2879cbd2b564-orig/Source/Core/DolphinWX/CMakeLists.txt 2014-03-07 20:10:55.186158963 -0500
+++ dolphin-emu-2879cbd2b564/Source/Core/DolphinWX/CMakeLists.txt 2014-03-07 20:18:55.977272101 -0500
dolphin-emu-4.0-polarssl13.patch:
CMakeTests/FindPolarSSL.cmake | 68 ++++++++----
Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp | 49 ++++----
Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h | 10 -
3 files changed, 75 insertions(+), 52 deletions(-)
Index: dolphin-emu-4.0-polarssl13.patch
===================================================================
RCS file: /cvs/nonfree/rpms/dolphin-emu/devel/dolphin-emu-4.0-polarssl13.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- dolphin-emu-4.0-polarssl13.patch 2 Oct 2014 14:33:51 -0000 1.1
+++ dolphin-emu-4.0-polarssl13.patch 9 Dec 2014 20:49:29 -0000 1.2
@@ -1,6 +1,6 @@
diff -rupN dolphin-emu-2879cbd2b564-orig/CMakeTests/FindPolarSSL.cmake dolphin-emu-2879cbd2b564/CMakeTests/FindPolarSSL.cmake
---- dolphin-emu-2879cbd2b564-orig/CMakeTests/FindPolarSSL.cmake 1979-11-29 23:00:00.000000000 -0500
-+++ dolphin-emu-2879cbd2b564/CMakeTests/FindPolarSSL.cmake 2014-10-02 10:02:00.688266601 -0400
+--- dolphin-emu-2879cbd2b564-orig/CMakeTests/FindPolarSSL.cmake 1979-11-30 00:00:00.000000000 -0500
++++ dolphin-emu-2879cbd2b564/CMakeTests/FindPolarSSL.cmake 2014-12-09 13:15:25.488951757 -0500
@@ -6,14 +6,20 @@
# POLARSSL_WORKS, this is true if polarssl is found and contains the methods
# needed by dolphin-emu
@@ -100,8 +100,8 @@
+mark_as_advanced(POLARSSL_INCLUDE_DIR POLARSSL_LIBRARY)
diff -rupN dolphin-emu-2879cbd2b564-orig/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp dolphin-emu-2879cbd2b564/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp
---- dolphin-emu-2879cbd2b564-orig/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp 1979-11-29 23:00:00.000000000 -0500
-+++ dolphin-emu-2879cbd2b564/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp 2014-10-02 09:54:33.831914493 -0400
+--- dolphin-emu-2879cbd2b564-orig/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp 1979-11-30 00:00:00.000000000 -0500
++++ dolphin-emu-2879cbd2b564/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.cpp 2014-12-09 13:16:30.203433018 -0500
@@ -28,12 +28,12 @@ CWII_IPC_HLE_Device_net_ssl::~CWII_IPC_H
ssl_session_free(&_SSL[i].session);
ssl_free(&_SSL[i].ctx);
@@ -125,7 +125,7 @@
- havege_init(&_SSL[sslID].hs);
- ssl_set_rng(&_SSL[sslID].ctx, havege_random, &_SSL[sslID].hs);
+ entropy_init(&_SSL[sslID].entropy);
-+ ssl_set_rng(&_SSL[sslID].ctx, entropy_func, &_SSL[sslID].hs);
++ ssl_set_rng(&_SSL[sslID].ctx, entropy_func, &_SSL[sslID].entropy);
// For some reason we can't use TLSv1.2, v1.1 and below are fine!
ssl_set_max_version(&_SSL[sslID].ctx, SSL_MAJOR_VERSION_3, SSL_MINOR_VERSION_2);
@@ -221,8 +221,8 @@
}
else
diff -rupN dolphin-emu-2879cbd2b564-orig/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h dolphin-emu-2879cbd2b564/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h
---- dolphin-emu-2879cbd2b564-orig/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h 1979-11-29 23:00:00.000000000 -0500
-+++ dolphin-emu-2879cbd2b564/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h 2014-10-02 09:55:32.057502719 -0400
+--- dolphin-emu-2879cbd2b564-orig/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h 1979-11-30 00:00:00.000000000 -0500
++++ dolphin-emu-2879cbd2b564/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_net_ssl.h 2014-12-09 13:15:25.489951749 -0500
@@ -9,7 +9,7 @@
#include <polarssl/net.h>
Index: dolphin-emu.spec
===================================================================
RCS file: /cvs/nonfree/rpms/dolphin-emu/devel/dolphin-emu.spec,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- dolphin-emu.spec 7 Dec 2014 02:17:22 -0000 1.12
+++ dolphin-emu.spec 9 Dec 2014 20:49:29 -0000 1.13
@@ -1,6 +1,6 @@
Name: dolphin-emu
Version: 4.0
-Release: 5%{?dist}
+Release: 6%{?dist}
Summary: Gamecube / Wii / Triforce Emulator
Url: http://dolphin-emu.org/
@@ -20,6 +20,9 @@
#Also see rpmfusion bug for details:
#https://bugzilla.rpmfusion.org/show_bug.cgi?id=2995
Patch3: %{name}-%{version}-polarssl13.patch
+#GCC 4.9, mostly fixed upstream, see bug for an include issue:
+#
+Patch4: %{name}-%{version}-gcc49.patch
BuildRequires: alsa-lib-devel
BuildRequires: bluez-libs-devel
@@ -65,6 +68,7 @@
%patch1 -p1
%patch2 -p1
%patch3 -p1
+%patch4 -p1
###CMAKE fixes
#Allow building with cmake macro
@@ -116,7 +120,6 @@
%{_datadir}/applications/%{name}.desktop
%{_mandir}/man1/%{name}.*
%{_datadir}/pixmaps/%{name}.xpm
-%{_libdir}/*.a
%post
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
@@ -131,6 +134,10 @@
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%changelog
+* Tue Dec 9 2014 Jeremy Newton <alexjnewt(a)hotmail.com> - 4.0-6
+- Patching for GCC 4.9
+- GTK patch fixing
+
* Sat Dec 6 2014 Jeremy Newton <alexjnewt(a)hotmail.com> - 4.0-5
- Line got deleted by accident, build fails
9 years, 11 months
rpms/lame/devel lame.spec,1.11,1.12
by Dominik Mierzejewski
Author: rathann
Update of /cvs/free/rpms/lame/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7309
Modified Files:
lame.spec
Log Message:
restore changelog entry removed accidentally in r1.11
Index: lame.spec
===================================================================
RCS file: /cvs/free/rpms/lame/devel/lame.spec,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- lame.spec 7 Dec 2014 14:02:03 -0000 1.11
+++ lame.spec 9 Dec 2014 13:46:51 -0000 1.12
@@ -121,6 +121,9 @@
* Sun Dec 07 2014 Nicolas Chauvet <kwizart(a)gmail.com> - 3.99.5-5
- Fix FTBFS on i686
+* Sat Dec 06 2014 Nicolas Chauvet <kwizart(a)gmail.com> - 3.99.5-4
+- Rebuilt for F-21
+
* Sun Aug 31 2014 Sérgio Basto <sergio(a)serjux.com> - 3.99.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
9 years, 11 months
rpms/rpmfusion-nonfree-release/devel RPM-GPG-KEY-rpmfusion-nonfree-fedora-23-primary, NONE, 1.1 rpmfusion-nonfree-rawhide.repo, 1.25, 1.26 rpmfusion-nonfree-release.spec, 1.36, 1.37 rpmfusion-nonfree-updates.repo, 1.21, 1.22 rpmfusion-nonfree.repo, 1.23, 1.24 RPM-GPG-KEY-rpmfusion-nonfree-fedora-20-primary, 1.1, NONE
by Nicolas Chauvet
Author: kwizart
Update of /cvs/nonfree/rpms/rpmfusion-nonfree-release/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv31565/devel
Modified Files:
rpmfusion-nonfree-rawhide.repo rpmfusion-nonfree-release.spec
rpmfusion-nonfree-updates.repo rpmfusion-nonfree.repo
Added Files:
RPM-GPG-KEY-rpmfusion-nonfree-fedora-23-primary
Removed Files:
RPM-GPG-KEY-rpmfusion-nonfree-fedora-20-primary
Log Message:
Update to F-21 Final
--- NEW FILE RPM-GPG-KEY-rpmfusion-nonfree-fedora-23-primary ---
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2
mQINBFSGMtIBEADC9Wz8jsm49wUlmYLMeaoD26m0nAB7pSeTyYKH3Tg6MRwCL11y
FhCVstkPgwbpMWHEcrCGb6UgT8VpX5ZPOVfIS35wdVdDVzMdyCJDjrztb5tnwvbI
DyonS9Fh4u/BziymjxgkHlGUtssWXO0e1FPoJPO56Uh724aj9U3i7Zb0SiFhjJI0
dYQnREjghXBrJEEK1SawldR4Xa/5TPCu1W++kML3ATXYM96w1ihQiZZEhElHA4Pq
vCZS5/g/Oq1VZcHQkCLQNCinsf3r8OgQIXAu5UaZziW95ffbW1fFPhU5nuRt2euu
cxVeEl0GDLp0rA7w1w+jazuoP3oMORnbWn8/Zfa4lrr6VZ07DNfgu1NlMqGkUIY9
whzELc2Gfw3H/8k2SOQJHZRHFkP6xE4eHg6mm4583wakX0WxhgDo+VZTfspXYVTZ
rakOVM7mFZB8cqEQ+72kHKRIUfwvKjz8oUnPdDlbnvKh3YIH/Sp460opZRAwum6Z
XxbANS2zF1OKBTdvioUIyd5nbcjWSJ4MSgmR/gqv0d7i7k/uMG+mqOx2MAcmkJSY
oaGDmPNp749ZEbFrkyzqaXe1eI4ukpZ3ZUHWhH+HlTGFdclsaQj5gdHbpa/Kgkjq
bJWRCYpsW54fNg2KKKxJ7FPS8zkwEoC4KsfGB2xPBEK8tjteEL2UMCZ72wARAQAB
tFZSUE0gRnVzaW9uIG5vbmZyZWUgcmVwb3NpdG9yeSBmb3IgRmVkb3JhICgyMykg
PHJwbWZ1c2lvbi1idWlsZHN5c0BsaXN0cy5ycG1mdXNpb24ub3JnPokCMgQTAQIA
HAUCVIYy0gIbAwQLCQgHAxUICgMWAgACHgECF4AACgkQ0m3qclymxGlYlg//VEUe
7I39y3WyrlhEcS1ab2CeGA2c9Pv8V1nf6Z5pZ85K93nY5JC3IkV7Grrp9fTmNDdR
b3QCbXLmxPXKCi2w6+gqIKokCkItP4WC/CIRqyRVVo4UJh9/kiICU79y+xM209cb
LykazLLafoAjEBXMk/T3dOM/x0F2F1O6ry9aVtJ41ELxw5KWptHkT/q5q16qQAG7
Tt1+ovz8nlexdZOofozUAyj0C5DJVSlRmSq/temjkPSZBiqlSmL2DlUO8GuSg1gp
wDAIWYDgqrrC9xvsRt4ZnIfjzRVUyze/tximdDwDA+qpdrBRuUMowfVjrgmoJqqD
SaobuE4R3ZzlIvbgnkwQ61p59brnaZQhvml8sChnkNdadIRmN9M310emrNllhSyN
AZRndvWCpYMVGlDfLyq9I4wqt1abV0lij1LGLtN1brH3kj7bXL/VJHHCGukm5XFE
JTCLu2F1rwyqSeKV/6Xr9oxsmnSV7iJfYfAQxPknZ/MgOY5EgKfYV1JQXgkWeijn
CNsDxugXajnV3lb9FNSO947mVYGIvlP08sTk8DgImXZMSghOXMgouyDzUcPaHtJI
HlZLsnqUVW3BLQBxugTbm3U9E2R4p7Ur8AFxDyI/fyXB6B/9laS5YIRyr/lPfYFP
jPhUPfnxaxUdSA4MFk6XB/QBejjEJPM6NmvUxXw=
=Ektk
-----END PGP PUBLIC KEY BLOCK-----
Index: rpmfusion-nonfree-rawhide.repo
===================================================================
RCS file: /cvs/nonfree/rpms/rpmfusion-nonfree-release/devel/rpmfusion-nonfree-rawhide.repo,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- rpmfusion-nonfree-rawhide.repo 12 Jan 2014 16:26:39 -0000 1.25
+++ rpmfusion-nonfree-rawhide.repo 8 Dec 2014 23:40:25 -0000 1.26
@@ -2,7 +2,7 @@
name=RPM Fusion for Fedora Rawhide - Nonfree
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/development/$basearch/os/
mirrorlist=http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-ra...
-enabled=1
+enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-latest file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-rawhide
Index: rpmfusion-nonfree-release.spec
===================================================================
RCS file: /cvs/nonfree/rpms/rpmfusion-nonfree-release/devel/rpmfusion-nonfree-release.spec,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- rpmfusion-nonfree-release.spec 12 Jan 2014 16:26:39 -0000 1.36
+++ rpmfusion-nonfree-release.spec 8 Dec 2014 23:40:25 -0000 1.37
@@ -3,7 +3,7 @@
Name: rpmfusion-%{repo}-release
Version: 21
-Release: 0.1
+Release: 1
Summary: RPM Fusion (%{repo}) Repository Configuration
Group: System Environment/Base
@@ -13,9 +13,9 @@
Source2: rpmfusion-%{repo}-updates.repo
Source3: rpmfusion-%{repo}-updates-testing.repo
Source4: rpmfusion-%{repo}-rawhide.repo
-Source20: RPM-GPG-KEY-rpmfusion-%{repo}-fedora-20-primary
Source21: RPM-GPG-KEY-rpmfusion-%{repo}-fedora-21-primary
Source22: RPM-GPG-KEY-rpmfusion-%{repo}-fedora-22-primary
+Source23: RPM-GPG-KEY-rpmfusion-%{repo}-fedora-23-primary
BuildArch: noarch
Requires: system-release >= %{version}
@@ -58,22 +58,22 @@
# GPG Key
%{__install} -Dp -m644 \
- %{SOURCE20} \
%{SOURCE21} \
%{SOURCE22} \
+ %{SOURCE23} \
$RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg
# compatibility symlink for easy transition to F11
-ln -s $(basename %{SOURCE20}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora
+ln -s $(basename %{SOURCE21}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora
# Avoid using basearch in name for the key. Introduced in F18
-ln -s $(basename %{SOURCE20}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-20
ln -s $(basename %{SOURCE21}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-21
ln -s $(basename %{SOURCE22}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-22
+ln -s $(basename %{SOURCE23}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-23
# Links for the keys
-ln -s $(basename %{SOURCE20}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-latest
-ln -s $(basename %{SOURCE21}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-rawhide
+ln -s $(basename %{SOURCE22}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-latest
+ln -s $(basename %{SOURCE23}) $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-%{repo}-fedora-rawhide
# Yum .repo files
@@ -86,6 +86,9 @@
%config(noreplace) %{_sysconfdir}/yum.repos.d/*
%changelog
+* Mon Dec 08 2014 Nicolas Chauvet <kwizart(a)gmail.com> - 21-1
+- Update to Final F-21
+
* Sun Jan 12 2014 Nicolas Chauvet <kwizart(a)gmail.com> - 21-0.1
- Bump for Rawhide/F-21
Index: rpmfusion-nonfree-updates.repo
===================================================================
RCS file: /cvs/nonfree/rpms/rpmfusion-nonfree-release/devel/rpmfusion-nonfree-updates.repo,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- rpmfusion-nonfree-updates.repo 12 Jan 2014 16:26:39 -0000 1.21
+++ rpmfusion-nonfree-updates.repo 8 Dec 2014 23:40:25 -0000 1.22
@@ -2,7 +2,7 @@
name=RPM Fusion for Fedora $releasever - Nonfree - Updates
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/updates/$releasever/$basearch/
mirrorlist=http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-up...
-enabled=0
+enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
Index: rpmfusion-nonfree.repo
===================================================================
RCS file: /cvs/nonfree/rpms/rpmfusion-nonfree-release/devel/rpmfusion-nonfree.repo,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- rpmfusion-nonfree.repo 12 Jan 2014 16:26:39 -0000 1.23
+++ rpmfusion-nonfree.repo 8 Dec 2014 23:40:25 -0000 1.24
@@ -2,7 +2,7 @@
name=RPM Fusion for Fedora $releasever - Nonfree
#baseurl=http://download1.rpmfusion.org/nonfree/fedora/releases/$releasever/Everything/$basearch/os/
mirrorlist=http://mirrors.rpmfusion.org/mirrorlist?repo=nonfree-fedora-$r...
-enabled=0
+enabled=1
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-nonfree-fedora-$releasever
--- RPM-GPG-KEY-rpmfusion-nonfree-fedora-20-primary DELETED ---
9 years, 11 months