add winetricks, modified by vcunat@gmail.com

Originally from #89.
This commit is contained in:
Corey O'Connor 2013-02-03 10:06:51 -08:00 committed by Vladimír Čunát
parent 09a3f9f775
commit fde87b3a9b
4 changed files with 72 additions and 0 deletions

View File

@ -0,0 +1,17 @@
#!bash
source $stdenv/setup
mkdir -p $out/bin
cp $src/src/winetricks $out/bin/winetricks
chmod +x $out/bin/winetricks
cd $out/bin
patch -u -p0 < $patch
mkdir -p "$out/share/man/man1"
cp "$src/src/winetricks.1" "$out/share/man/man1/"
patchShebangs "$out"
substituteInPlace "$out/bin/winetricks" --replace "/usr/bin/perl" `which perl`
# add stuff to PATH
sed -i "2i PATH=\"${pathAdd}:\${PATH}\"" "$out/bin/winetricks"

View File

@ -0,0 +1,28 @@
{ stdenv, fetchsvn, wine, perl, which, coreutils, zenity, curl, cabextract, unzip, p7zip } :
stdenv.mkDerivation rec {
rev = "939";
name = "winetricks-${rev}";
src = fetchsvn {
url = "http://winetricks.googlecode.com/svn/trunk";
inherit rev;
};
buildInputs = [ perl which ];
pathAdd = stdenv.lib.concatStringsSep "/bin:" # coreutils is for sha1sum
[ wine perl which coreutils zenity curl cabextract unzip p7zip ]
+ "/bin";
patch = ./winetricks.patch;
builder = ./build_winetricks.sh;
meta = {
description = "A script to install DLLs needed to work around problems in Wine";
license = "LGPLv2.1";
homepage = http://code.google.com/p/winetricks/;
};
}

View File

@ -0,0 +1,21 @@
--- upstream-winetricks 2013-01-12 13:26:12.333076904 -0800
+++ winetricks 2013-01-12 14:37:39.675092352 -0800
@@ -3398,7 +3398,7 @@
WINETRICKS_OPT_SHAREDPREFIX=${WINETRICKS_OPT_SHAREDPREFIX:-0}
# Mac folks tend to not have sha1sum, but we can make do with openssl
- if [ -x "`which sha1sum 2>/dev/null`" ]
+ if [ -e "`which sha1sum 2>/dev/null`" ]
then
WINETRICKS_SHA1SUM="sha1sum"
elif [ -x "`which openssl 2>/dev/null`" ]
@@ -3628,7 +3628,7 @@
if ! test "$WINETRICKS_LIB"
then
WINETRICKS_SRCDIR=`dirname "$0"`
- WINETRICKS_SRCDIR=`cd "$WINETRICKS_SRCDIR"; /bin/pwd`
+ WINETRICKS_SRCDIR=`cd "$WINETRICKS_SRCDIR"; pwd`
# Which GUI helper to use (none/zenity/kdialog). See winetricks_detect_gui.
WINETRICKS_GUI=none

View File

@ -9142,6 +9142,12 @@ let
# Wine cannot be built in 64-bit; use a 32-bit build instead.
wine = callPackage_i686 ../misc/emulators/wine { };
# winetricks is a shell script with no binary components. Safe to just use the current platforms
# build instead of the i686 specific build.
winetricks = callPackage ../misc/emulators/wine/winetricks.nix {
inherit (gnome2) zenity;
};
x2x = callPackage ../tools/X11/x2x { };
xosd = callPackage ../misc/xosd { };