From 073d4102b384cf86dd59fcfd200be2e0bbdb5784 Mon Sep 17 00:00:00 2001 From: koral Date: Sat, 9 May 2015 11:02:19 +0000 Subject: slock: 1.1 -> 1.2 --- pkgs/misc/screensavers/slock/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/screensavers/slock/default.nix b/pkgs/misc/screensavers/slock/default.nix index c88be58abb2..5c731ff20d7 100644 --- a/pkgs/misc/screensavers/slock/default.nix +++ b/pkgs/misc/screensavers/slock/default.nix @@ -1,9 +1,9 @@ { stdenv, fetchurl, xproto, libX11, libXext }: stdenv.mkDerivation rec { - name = "slock-1.1"; + name = "slock-1.2"; src = fetchurl { url = "http://dl.suckless.org/tools/${name}.tar.gz"; - sha256 = "1r70s3npmp0nyrfdsxz8cw1i1z8n9phqdlw02wjphv341h3yajp0"; + sha256 = "1crkyr4vblhciy6vnbjwwjnlkm9yg2hzq16v6hzxm20ai67na0il"; }; buildInputs = [ xproto libX11 libXext ]; installFlags = "DESTDIR=\${out} PREFIX="; -- cgit 1.4.1 From 72d3d6fbfc3d62064f2f70e9d40716e0a82b1e18 Mon Sep 17 00:00:00 2001 From: Sebastian Jordan Date: Sun, 10 May 2015 01:49:09 +0200 Subject: Update emulationstation 2.0.0.rc1 -> 2.0.1a --- pkgs/misc/emulators/emulationstation/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/emulators/emulationstation/default.nix b/pkgs/misc/emulators/emulationstation/default.nix index 6ff0a21135a..529e5d3d0a2 100644 --- a/pkgs/misc/emulators/emulationstation/default.nix +++ b/pkgs/misc/emulators/emulationstation/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "emulationstation-${version}"; - version = "2.0.0-rc1"; + version = "2.0.1a"; src = fetchFromGitHub { owner = "Aloshi"; repo = "EmulationStation"; - rev = "8739519e1591819cab85e1d2056804d20c197dac"; - sha256 = "1psq5cqyq2yy1lqxrcj7pfp8szfmzhamxf3111l97w2h2zzcgvq9"; + rev = "646bede3d9ec0acf0ae378415edac136774a66c5"; + sha256 = "0cm0sq2wri2l9cvab1l0g02za59q7klj0h3p028vr96n6njj4w9v"; }; buildInputs = [ pkgconfig cmake alsaLib boost curl eigen freeimage freetype libarchive mesa SDL2 ]; @@ -25,4 +25,4 @@ stdenv.mkDerivation rec { maintainers = [ stdenv.lib.maintainers.edwtjo ]; license = stdenv.lib.licenses.mit; }; -} \ No newline at end of file +} -- cgit 1.4.1 From ede1211cbca746efb943fc58219d1fda6b6d713c Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sun, 10 May 2015 12:27:07 +0300 Subject: Update Wine unstable --- pkgs/misc/emulators/wine/unstable.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/emulators/wine/unstable.nix b/pkgs/misc/emulators/wine/unstable.nix index a7a1e02da3b..aac97fe05b8 100644 --- a/pkgs/misc/emulators/wine/unstable.nix +++ b/pkgs/misc/emulators/wine/unstable.nix @@ -7,12 +7,12 @@ assert stdenv.isLinux; assert stdenv.cc.cc.isGNU or false; let - version = "1.7.40"; + version = "1.7.42"; name = "wine-${version}"; src = fetchurl { url = "mirror://sourceforge/wine/${name}.tar.bz2"; - sha256 = "1dnasmw1rnlz7wk1bn0x1zmy3r78hgrn9y53z4vm8xjkllwyd0hd"; + sha256 = "18iv4dsx2p7bk5qhiqqc6fpnnzny9rx8vgbjlpnf3gr0n615qzss"; }; gecko = fetchurl { -- cgit 1.4.1 From 90453cc5ca4f09447f570bb3f8cf7b48bdd39546 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sun, 10 May 2015 13:25:07 +0300 Subject: Update Wine staging to match Wine unstable --- pkgs/misc/emulators/wine/staging.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/emulators/wine/staging.nix b/pkgs/misc/emulators/wine/staging.nix index 2aa588592ac..a6ff309b08e 100644 --- a/pkgs/misc/emulators/wine/staging.nix +++ b/pkgs/misc/emulators/wine/staging.nix @@ -1,12 +1,12 @@ { stdenv, fetchFromGitHub, wine, perl, autoconf, utillinux , pulseaudio, libtxc_dxtn }: -let version = "1.7.40"; +let version = "1.7.42"; patch = fetchFromGitHub { owner = "wine-compholio"; repo = "wine-staging"; rev = "v${version}"; - sha256 = "0l14yy6wbvbs2xrnn9z3a35lbnpl8ibkmc0vh983fimf9nxckpan"; + sha256 = "1qi1hf1w97n17vmj137p7da75g01ky84a3xvs50xrmxb7f62sm17"; }; in assert (builtins.parseDrvName wine.name).version == version; -- cgit 1.4.1 From d6edaea4f76b7602dfd90449d7edf0b7f05bffb6 Mon Sep 17 00:00:00 2001 From: "William A. Kennington III" Date: Thu, 26 Mar 2015 13:30:45 -0700 Subject: cups: 1.7.5 -> 2.0.2 --- pkgs/misc/cups/default.nix | 25 ++++++++++++++++++++----- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 23 insertions(+), 6 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index e62cfcff832..d2170cfc332 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -1,8 +1,11 @@ { stdenv, fetchurl, pkgconfig, zlib, libjpeg, libpng, libtiff, pam, openssl -, dbus, libusb, acl, gmp }: +, dbus, acl, gmp +, libusb ? null, gnutls ? null, avahi ? null, libpaper ? null +}: -let version = "1.7.5"; in +let version = "2.0.2"; in +with stdenv.lib; stdenv.mkDerivation { name = "cups-${version}"; @@ -10,15 +13,27 @@ stdenv.mkDerivation { src = fetchurl { url = "https://www.cups.org/software/${version}/cups-${version}-source.tar.bz2"; - sha256 = "00mx4rpiqw9cwx46bd3hd5lcgmcxy63zfnmkr02smanv8xl4rjqq"; + sha256 = "12xild9nrhqnrzx8zqh78v3chm4mpp5gf5iamr0h9zb6dgvj11w5"; }; - buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb ] + buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb gnutls avahi libpaper ] ++ stdenv.lib.optionals stdenv.isLinux [ pam dbus.libs acl ] ; propagatedBuildInputs = [ openssl gmp ]; - configureFlags = "--localstatedir=/var --sysconfdir=/etc --enable-dbus"; # --with-dbusdir + configureFlags = [ + "--localstatedir=/var" + "--sysconfdir=/etc" + "--with-systemd=\${out}/lib/systemd/system" + "--enable-raw-printing" + "--enable-threads" + ] ++ optionals stdenv.isLinux [ + "--enable-dbus" + "--enable-pam" + ] ++ optional (libusb != null) "--enable-libusb" + ++ optional (gnutls != null) "--enable-ssl" + ++ optional (avahi != null) "--enable-avahi" + ++ optional (libpaper != null) "--enable-libpaper"; installFlags = [ # Don't try to write in /var at build time. diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 004420ddfb7..4ba211f9e59 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13942,7 +13942,9 @@ let beep = callPackage ../misc/beep { }; - cups = callPackage ../misc/cups { libusb = libusb1; }; + cups = callPackage ../misc/cups { + libusb = libusb1; + }; cups_filters = callPackage ../misc/cups/filters.nix { }; -- cgit 1.4.1 From 0a090d80ac78ffac8c8992238f258c1c310d117d Mon Sep 17 00:00:00 2001 From: Jascha Geerds Date: Tue, 28 Apr 2015 12:11:41 +0200 Subject: cups: Refactor meta attributes --- pkgs/misc/cups/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index d2170cfc332..cd6b6b4d12d 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation { }; buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb gnutls avahi libpaper ] - ++ stdenv.lib.optionals stdenv.isLinux [ pam dbus.libs acl ] ; + ++ optionals stdenv.isLinux [ pam dbus.libs acl ] ; propagatedBuildInputs = [ openssl gmp ]; @@ -61,10 +61,10 @@ stdenv.mkDerivation { ''; meta = { - homepage = "http://www.cups.org/"; + homepage = https://cups.org/; description = "A standards-based printing system for UNIX"; - license = stdenv.lib.licenses.gpl2; # actually LGPL for the library and GPL for the rest - maintainers = [ stdenv.lib.maintainers.urkud stdenv.lib.maintainers.simons ]; - platforms = stdenv.lib.platforms.linux; + license = licenses.gpl2; # actually LGPL for the library and GPL for the rest + maintainers = with maintainers; [ urkud simons jgeerds ]; + platforms = platforms.linux; }; } -- cgit 1.4.1 From 5f5ba7dda06c6fc4024f362665a650c742d55e42 Mon Sep 17 00:00:00 2001 From: Jascha Geerds Date: Tue, 28 Apr 2015 12:42:53 +0200 Subject: cups: Add xdg_utils to build inputs --- pkgs/misc/cups/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pkgs/misc') diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index cd6b6b4d12d..45b042960d2 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, pkgconfig, zlib, libjpeg, libpng, libtiff, pam, openssl -, dbus, acl, gmp +, dbus, acl, gmp, xdg_utils , libusb ? null, gnutls ? null, avahi ? null, libpaper ? null }: @@ -17,7 +17,7 @@ stdenv.mkDerivation { }; buildInputs = [ pkgconfig zlib libjpeg libpng libtiff libusb gnutls avahi libpaper ] - ++ optionals stdenv.isLinux [ pam dbus.libs acl ] ; + ++ optionals stdenv.isLinux [ pam dbus.libs acl xdg_utils ] ; propagatedBuildInputs = [ openssl gmp ]; -- cgit 1.4.1 From 4ac95ab3282a5aa364c8c1e51b9637b38729a3a7 Mon Sep 17 00:00:00 2001 From: Jascha Geerds Date: Tue, 28 Apr 2015 20:37:34 +0200 Subject: cups: Use systemd files provided by CUPS --- nixos/modules/services/printing/cupsd.nix | 9 +++------ pkgs/misc/cups/default.nix | 13 +++++++++++++ 2 files changed, 16 insertions(+), 6 deletions(-) (limited to 'pkgs/misc') diff --git a/nixos/modules/services/printing/cupsd.nix b/nixos/modules/services/printing/cupsd.nix index b573a356b35..a69a8aab86a 100644 --- a/nixos/modules/services/printing/cupsd.nix +++ b/nixos/modules/services/printing/cupsd.nix @@ -183,10 +183,10 @@ in # gets loaded, and then cups cannot access the printers. boot.blacklistedKernelModules = [ "usblp" ]; - systemd.services.cups = - { description = "CUPS Printing Daemon"; + systemd.packages = [ cups ]; - wantedBy = [ "multi-user.target" ]; + systemd.services.cups = + { wantedBy = [ "multi-user.target" ]; wants = [ "network.target" ]; after = [ "network.target" ]; @@ -200,9 +200,6 @@ in mkdir -m 0755 -p ${cfg.tempDir} ''; - serviceConfig.Type = "forking"; - serviceConfig.ExecStart = "@${cups}/sbin/cupsd cupsd"; - restartTriggers = [ config.environment.etc."cups/cups-files.conf".source config.environment.etc."cups/cupsd.conf".source diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix index 45b042960d2..10fd71a0754 100644 --- a/pkgs/misc/cups/default.nix +++ b/pkgs/misc/cups/default.nix @@ -58,6 +58,19 @@ stdenv.mkDerivation { '' # Delete obsolete stuff that conflicts with cups-filters. rm -rf $out/share/cups/banners $out/share/cups/data/testprint + + # Rename systemd files provided by CUPS + for f in $out/lib/systemd/system/*; do + substituteInPlace "$f" \ + --replace "org.cups.cupsd" "cups" \ + --replace "org.cups." "" + + if [[ "$f" =~ .*cupsd\..* ]]; then + mv "$f" "''${f/org\.cups\.cupsd/cups}" + else + mv "$f" "''${f/org\.cups\./}" + fi + done ''; meta = { -- cgit 1.4.1 From ae6d2796bc1d1a0ebc729f8826ae6ff5b97256e2 Mon Sep 17 00:00:00 2001 From: Herwig Hochleitner Date: Tue, 21 Apr 2015 18:00:59 +0200 Subject: wine: add 64 bit build and nixpkgs configuration The default release channel (stable/unstable) and the default build (wine32/wine64/wineWow) can be customized via the "wine" key in config --- pkgs/misc/emulators/wine/base.nix | 61 +++++++++++++++++++++++++ pkgs/misc/emulators/wine/builder-wow.sh | 29 ++++++++++++ pkgs/misc/emulators/wine/default.nix | 15 ++++++ pkgs/misc/emulators/wine/packages.nix | 60 ++++++++++++++++++++++++ pkgs/misc/emulators/wine/stable.nix | 81 --------------------------------- pkgs/misc/emulators/wine/unstable.nix | 78 ------------------------------- pkgs/misc/emulators/wine/versions.nix | 25 ++++++++++ pkgs/top-level/all-packages.nix | 22 ++++----- 8 files changed, 200 insertions(+), 171 deletions(-) create mode 100644 pkgs/misc/emulators/wine/base.nix create mode 100644 pkgs/misc/emulators/wine/builder-wow.sh create mode 100644 pkgs/misc/emulators/wine/default.nix create mode 100644 pkgs/misc/emulators/wine/packages.nix delete mode 100644 pkgs/misc/emulators/wine/stable.nix delete mode 100644 pkgs/misc/emulators/wine/unstable.nix create mode 100644 pkgs/misc/emulators/wine/versions.nix (limited to 'pkgs/misc') diff --git a/pkgs/misc/emulators/wine/base.nix b/pkgs/misc/emulators/wine/base.nix new file mode 100644 index 00000000000..ce39740f113 --- /dev/null +++ b/pkgs/misc/emulators/wine/base.nix @@ -0,0 +1,61 @@ +{ stdenv, lib, pkgArches, + name, version, src, monos, geckos, platforms, + buildScript ? null, configureFlags ? "" +}: + +assert stdenv.isLinux; +assert stdenv.cc.cc.isGNU or false; + +stdenv.mkDerivation ((lib.optionalAttrs (! isNull buildScript) { + builder = buildScript; +}) // { + inherit name src configureFlags; + + buildInputs = lib.concatLists (map (pkgs: (with pkgs; [ + pkgconfig alsaLib ncurses libpng libjpeg lcms2 fontforge libxml2 libxslt + openssl gnutls cups makeWrapper flex bison mesa mesa_noglu.osmesa + ]) ++ (with pkgs.xlibs; [ + xlibs libXi libXcursor libXinerama libXrandr libXrender libXxf86vm libXcomposite + ])) pkgArches); + + # Wine locates a lot of libraries dynamically through dlopen(). Add + # them to the RPATH so that the user doesn't have to set them in + # LD_LIBRARY_PATH. + NIX_LDFLAGS = map (path: "-rpath ${path}/lib") ([ + stdenv.cc.cc + ] ++ (lib.concatLists (map (pkgs: + (with pkgs; [ + freetype fontconfig mesa mesa_noglu.osmesa libdrm + libpng libjpeg openssl gnutls cups ncurses + ]) ++ (with pkgs.xlibs; [ + libXinerama libXrender libXrandr libXcursor libXcomposite + ])) pkgArches))); + + # Don't shrink the ELF RPATHs in order to keep the extra RPATH + # elements specified above. + dontPatchELF = true; + + ## FIXME + # Add capability to ignore known failing tests + # and enable doCheck + doCheck = false; + + postInstall = let + links = prefix: pkg: "ln -s ${pkg} $out/${prefix}/${pkg.name}"; + in '' + mkdir -p $out/share/wine/gecko $out/share/wine/mono/ + ${lib.strings.concatStringsSep "\n" + ((map (links "share/wine/gecko") geckos) + ++ (map (links "share/wine/mono") monos))} + ''; + + enableParallelBuilding = true; + + meta = { + inherit version platforms; + homepage = "http://www.winehq.org/"; + license = "LGPL"; + description = "An Open Source implementation of the Windows API on top of X, OpenGL, and Unix"; + maintainers = [stdenv.lib.maintainers.raskin]; + }; +}) diff --git a/pkgs/misc/emulators/wine/builder-wow.sh b/pkgs/misc/emulators/wine/builder-wow.sh new file mode 100644 index 00000000000..9f946f3b71f --- /dev/null +++ b/pkgs/misc/emulators/wine/builder-wow.sh @@ -0,0 +1,29 @@ +#!/bin/sh + +source $stdenv/setup + +unpackPhase +patchPhase + +configureScript=$TMP/$sourceRoot/configure +mkdir -p $TMP/wine-wow $TMP/wine64 + +cd $TMP/wine64 +sourceRoot=`pwd` +configureFlags="--enable-win64" +configurePhase +buildPhase +# checkPhase + +cd $TMP/wine-wow +sourceRoot=`pwd` +configureFlags="--with-wine64=../wine64" +configurePhase +buildPhase +# checkPhase + +eval "$preInstall" +cd $TMP/wine64 && make install +cd $TMP/wine-wow && make install +eval "$postInstall" +fixupPhase diff --git a/pkgs/misc/emulators/wine/default.nix b/pkgs/misc/emulators/wine/default.nix new file mode 100644 index 00000000000..962aee9fb5d --- /dev/null +++ b/pkgs/misc/emulators/wine/default.nix @@ -0,0 +1,15 @@ +## Configuration: +# Control you default wine config in nixpkgs-config: +# wine = { +# release = "stable"; # "stable", "unstable" +# build = "wineWow"; # "wine32", "wine64", "wineWow" +# }; +# Make additional configurations on demand: +# wine.overrideConfig { build = "wine32"; }; +{ lib, system, callPackage, + wineRelease ? "stable", + wineBuild ? (if system == "x86_64-linux" then "wineWow" else "wine32") }: + +lib.getAttr wineBuild (callPackage ./packages.nix { + inherit wineRelease; +}) diff --git a/pkgs/misc/emulators/wine/packages.nix b/pkgs/misc/emulators/wine/packages.nix new file mode 100644 index 00000000000..4d95dc911dc --- /dev/null +++ b/pkgs/misc/emulators/wine/packages.nix @@ -0,0 +1,60 @@ +{ system, stdenv, stdenv_32bit, lib, pkgs, pkgsi686Linux, fetchurl, + wineRelease ? "stable" +}: + +let sources = with lib.getAttr wineRelease (import ./versions.nix); { + version = wineVersion; + src = fetchurl { + url = "mirror://sourceforge/wine/wine-${wineVersion}.tar.bz2"; + sha256 = wineSha256; + }; + + wineGecko32 = fetchurl { + url = "mirror://sourceforge/wine/wine_gecko-${geckoVersion}-x86.msi"; + sha256 = geckoSha256; + }; + + wineGecko64 = fetchurl { + url = "mirror://sourceforge/wine/wine_gecko-${gecko64Version}-x86_64.msi"; + sha256 = gecko64Sha256; + }; + + wineMono = fetchurl { + url = "mirror://sourceforge/wine/wine-mono-${monoVersion}.msi"; + sha256 = monoSha256; + }; + }; + inherit (sources) version; +in { + wine32 = import ./base.nix { + name = "wine32-${version}"; + inherit (sources) version src; + inherit (pkgsi686Linux) lib stdenv; + pkgArches = [ pkgsi686Linux ]; + geckos = with sources; [ wineGecko32 ]; + monos = with sources; [ wineMono ]; + platforms = [ "i686-linux" "x86_64-linux" ]; + }; + wine64 = import ./base.nix { + name = "wine64-${version}"; + inherit (sources) version src; + inherit lib stdenv; + pkgArches = [ pkgs ]; + geckos = with sources; [ wineGecko64 ]; + monos = with sources; [ wineMono ]; + configureFlags = "--enable-win64"; + platforms = [ "x86_64-linux" ]; + }; + wineWow = import ./base.nix { + name = "wineWow-${version}"; + inherit (sources) version src; + inherit lib; + stdenv = stdenv_32bit; + pkgArches = [ pkgs pkgsi686Linux ]; + geckos = with sources; [ wineGecko32 wineGecko64 ]; + monos = with sources; [ wineMono ]; + buildScript = ./builder-wow.sh; + platforms = [ "x86_64-linux" ]; + }; +} + diff --git a/pkgs/misc/emulators/wine/stable.nix b/pkgs/misc/emulators/wine/stable.nix deleted file mode 100644 index bdf696f541f..00000000000 --- a/pkgs/misc/emulators/wine/stable.nix +++ /dev/null @@ -1,81 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, xlibs, flex, bison, mesa, mesa_noglu, alsaLib -, ncurses, libpng, libjpeg, lcms2, freetype, fontconfig, fontforge -, libxml2, libxslt, openssl, gnutls, cups, libdrm, makeWrapper -}: - -assert stdenv.isLinux; -assert stdenv.cc.cc.isGNU or false; - -let - version = "1.6.2"; - name = "wine-${version}"; - - src = fetchurl { - url = "mirror://sourceforge/wine/${name}.tar.bz2"; - sha256 = "1gmc0ljgfz3qy50mdxcwwjcr2yrpz54jcs2hdszsrk50wpnrxazh"; - }; - - gecko = fetchurl { - url = "mirror://sourceforge/wine/wine_gecko-2.21-x86.msi"; - sha256 = "1n0zccnvchkg0m896sjx5psk4bxw9if32xyxib1rbfdasykay7zh"; - }; - - gecko64 = fetchurl { - url = "mirror://sourceforge/wine/wine_gecko-2.21-x86_64.msi"; - sha256 = "0grc86dkq90i59zw43hakh62ra1ajnk11m64667xjrlzi7f0ndxw"; - }; - - mono = fetchurl { - url = "mirror://sourceforge/wine/wine-mono-0.0.8.msi"; - sha256 = "00jl24qp7vh3hlqv7wsw1s529lr5p0ybif6s73jy85chqaxj7z1x"; - }; - -in stdenv.mkDerivation rec { - inherit version name src; - - buildInputs = [ - pkgconfig - xlibs.xlibs flex bison xlibs.libXi mesa mesa_noglu.osmesa - xlibs.libXcursor xlibs.libXinerama xlibs.libXrandr - xlibs.libXrender xlibs.libXxf86vm xlibs.libXcomposite - alsaLib ncurses libpng libjpeg lcms2 fontforge - libxml2 libxslt openssl gnutls cups makeWrapper - ]; - - # Wine locates a lot of libraries dynamically through dlopen(). Add - # them to the RPATH so that the user doesn't have to set them in - # LD_LIBRARY_PATH. - NIX_LDFLAGS = map (path: "-rpath ${path}/lib ") [ - freetype fontconfig stdenv.cc.cc mesa mesa_noglu.osmesa libdrm - xlibs.libXinerama xlibs.libXrender xlibs.libXrandr - xlibs.libXcursor xlibs.libXcomposite libpng libjpeg - openssl gnutls cups - ]; - - # Don't shrink the ELF RPATHs in order to keep the extra RPATH - # elements specified above. - dontPatchELF = true; - - postInstall = '' - install -D ${gecko} $out/share/wine/gecko/${gecko.name} - '' + stdenv.lib.optionalString (stdenv.system == "x86_64-linux") '' - install -D ${gecko} $out/share/wine/gecko/${gecko64.name} - '' + '' - install -D ${mono} $out/share/wine/mono/${mono.name} - - paxmark psmr $out/bin/wine{,-preloader} - - wrapProgram $out/bin/wine --prefix LD_LIBRARY_PATH : ${stdenv.cc.cc}/lib - ''; - - enableParallelBuilding = true; - - meta = { - homepage = "http://www.winehq.org/"; - license = "LGPL"; - inherit version; - description = "An Open Source implementation of the Windows API on top of X, OpenGL, and Unix"; - maintainers = [stdenv.lib.maintainers.raskin]; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/misc/emulators/wine/unstable.nix b/pkgs/misc/emulators/wine/unstable.nix deleted file mode 100644 index aac97fe05b8..00000000000 --- a/pkgs/misc/emulators/wine/unstable.nix +++ /dev/null @@ -1,78 +0,0 @@ -{ stdenv, fetchurl, pkgconfig, xlibs, flex, bison, mesa, mesa_noglu, alsaLib -, ncurses, libpng, libjpeg, lcms, freetype, fontconfig, fontforge -, libxml2, libxslt, openssl, gnutls, cups, libdrm, makeWrapper -}: - -assert stdenv.isLinux; -assert stdenv.cc.cc.isGNU or false; - -let - version = "1.7.42"; - name = "wine-${version}"; - - src = fetchurl { - url = "mirror://sourceforge/wine/${name}.tar.bz2"; - sha256 = "18iv4dsx2p7bk5qhiqqc6fpnnzny9rx8vgbjlpnf3gr0n615qzss"; - }; - - gecko = fetchurl { - url = "mirror://sourceforge/wine/wine_gecko-2.36-x86.msi"; - sha256 = "12hjks32yz9jq4w3xhk3y1dy2g3iakqxd7aldrdj51cqiz75g95g"; - }; - - gecko64 = fetchurl { - url = "mirror://sourceforge/wine/wine_gecko-2.36-x86_64.msi"; - sha256 = "0i7dchrzsda4nqbkhp3rrchk74rc2whn2af1wzda517m9c0886vh"; - }; - - mono = fetchurl { - url = "mirror://sourceforge/wine/wine-mono-4.5.4.msi"; - sha256 = "1wnn273f232141x9x0sahg4w499x0g2p0xphxmwm5wh1xrzyvg10"; - }; - -in stdenv.mkDerivation rec { - inherit version name src; - - buildInputs = [ - pkgconfig - xlibs.xlibs flex bison xlibs.libXi mesa mesa_noglu.osmesa - xlibs.libXcursor xlibs.libXinerama xlibs.libXrandr - xlibs.libXrender xlibs.libXxf86vm xlibs.libXcomposite - alsaLib ncurses libpng libjpeg lcms fontforge - libxml2 libxslt openssl gnutls cups makeWrapper - ]; - - # Wine locates a lot of libraries dynamically through dlopen(). Add - # them to the RPATH so that the user doesn't have to set them in - # LD_LIBRARY_PATH. - NIX_LDFLAGS = map (path: "-rpath ${path}/lib ") [ - freetype fontconfig stdenv.cc.cc mesa mesa_noglu.osmesa libdrm - xlibs.libXinerama xlibs.libXrender xlibs.libXrandr - xlibs.libXcursor xlibs.libXcomposite libpng libjpeg - openssl gnutls cups ncurses - ]; - - # Don't shrink the ELF RPATHs in order to keep the extra RPATH - # elements specified above. - dontPatchELF = true; - - postInstall = '' - install -D ${gecko} $out/share/wine/gecko/${gecko.name} - '' + stdenv.lib.optionalString (stdenv.system == "x86_64-linux") '' - install -D ${gecko} $out/share/wine/gecko/${gecko64.name} - '' + '' - install -D ${mono} $out/share/wine/mono/${mono.name} - wrapProgram $out/bin/wine --prefix LD_LIBRARY_PATH : ${stdenv.cc.cc}/lib - ''; - - enableParallelBuilding = true; - - meta = { - homepage = "http://www.winehq.org/"; - license = "LGPL"; - inherit version; - description = "An Open Source implementation of the Windows API on top of X, OpenGL, and Unix"; - maintainers = [stdenv.lib.maintainers.raskin]; - platforms = stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/misc/emulators/wine/versions.nix b/pkgs/misc/emulators/wine/versions.nix new file mode 100644 index 00000000000..e599f04f857 --- /dev/null +++ b/pkgs/misc/emulators/wine/versions.nix @@ -0,0 +1,25 @@ +{ + unstable = { + wineVersion = "1.7.42"; + wineSha256 = "18iv4dsx2p7bk5qhiqqc6fpnnzny9rx8vgbjlpnf3gr0n615qzss"; + geckoVersion = "2.36"; + geckoSha256 = "12hjks32yz9jq4w3xhk3y1dy2g3iakqxd7aldrdj51cqiz75g95g"; + gecko64Version = "2.36"; + gecko64Sha256 = "0i7dchrzsda4nqbkhp3rrchk74rc2whn2af1wzda517m9c0886vh"; + monoVersion = "4.5.6"; + monoSha256 = "09dwfccvfdp3walxzp6qvnyxdj2bbyw9wlh6cxw2sx43gxriys5c"; + }; + stable = { + wineVersion = "1.6.2"; + wineSha256 = "1gmc0ljgfz3qy50mdxcwwjcr2yrpz54jcs2hdszsrk50wpnrxazh"; + geckoVersion = "2.21"; + geckoSha256 = "1n0zccnvchkg0m896sjx5psk4bxw9if32xyxib1rbfdasykay7zh"; + gecko64Version = "2.21"; + gecko64Sha256 = "0grc86dkq90i59zw43hakh62ra1ajnk11m64667xjrlzi7f0ndxw"; + monoVersion = "4.5.6"; + monoSha256 = "09dwfccvfdp3walxzp6qvnyxdj2bbyw9wlh6cxw2sx43gxriys5c"; + ## TESTME wine stable should work with most recent mono + #monoVersion = "0.0.8"; + #monoSha256 = "00jl24qp7vh3hlqv7wsw1s529lr5p0ybif6s73jy85chqaxj7z1x"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4ba211f9e59..716349d6074 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14345,27 +14345,25 @@ let VisualBoyAdvance = callPackage ../misc/emulators/VisualBoyAdvance { }; - # Wine cannot be built in 64-bit; use a 32-bit build instead. - wineStable = callPackage_i686 ../misc/emulators/wine/stable.nix { - bison = bison2; + # Wine defaults to a mixed 64 / 32 build on x86_64 and to pure 32 on x86 + wine = callPackage ../misc/emulators/wine { + wineRelease = config.wine.release or "stable"; + wineBuild = config.wine.build or (if system == "x86_64-linux" then "wineWow" else "wine32"); }; + wineStable = wine.override { wineRelease = "stable"; }; + wineUnstable = wine.override { wineRelease = "unstable"; }; - wineUnstable = lowPrio (callPackage_i686 ../misc/emulators/wine/unstable.nix { - bison = bison2; - }); - - wine = wineStable; + winetricks = callPackage ../misc/emulators/wine/winetricks.nix { + inherit (gnome2) zenity; + }; + ### FIXME integrate wineStaging into 64bit wineStaging = callPackage_i686 ../misc/emulators/wine/staging.nix { wine = pkgsi686Linux.wineUnstable; # Patent issues libtxc_dxtn = pkgsi686Linux.libtxc_dxtn_s2tc; }; - winetricks = callPackage ../misc/emulators/wine/winetricks.nix { - inherit (gnome2) zenity; - }; - wmutils-core = callPackage ../tools/X11/wmutils-core { }; wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { }; -- cgit 1.4.1