From 42ef963cd221a5fb294a844c7af40e1a00738815 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Sat, 15 Mar 2014 17:00:10 +0100 Subject: [PATCH 1/5] libarchive: *permanently* fix patch source and hash Unfortunately github's *.patch URIs contain version of git generating them, which changes from time to time. It seems that *.diff doesn't suffer from that. Conflicts: pkgs/development/libraries/libarchive/default.nix --- pkgs/development/libraries/libarchive/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libarchive/default.nix b/pkgs/development/libraries/libarchive/default.nix index b7b001e44eb..5e728d9b3dd 100644 --- a/pkgs/development/libraries/libarchive/default.nix +++ b/pkgs/development/libraries/libarchive/default.nix @@ -13,8 +13,8 @@ stdenv.mkDerivation rec { }; patches = [(fetchurl { - url = "https://github.com/libarchive/libarchive/commit/22531545514043e04633e1c015c7540b9de9dbe4.patch"; - sha256 = "0c1a0prlpq5nn7zgs7cqvw9xnmhkkc8l0mpsip86k1lafircqhzh"; + url = "https://github.com/libarchive/libarchive/commit/22531545514043e04633e1c015c7540b9de9dbe4.diff"; + sha256 = "1466ddrkdh2r8idmj3v7fk2gwnhc1kdxvyczdpnqms0qlmas6fj5"; name = "CVE-2013-0211.patch"; })]; From 4eefc983a2d4e2d7ac2bbe7cf8bc393fa8da3aaa Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Tue, 1 Apr 2014 01:34:07 +0200 Subject: [PATCH 2/5] xcode: fix hash --- pkgs/os-specific/darwin/xcode/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/darwin/xcode/default.nix b/pkgs/os-specific/darwin/xcode/default.nix index b80682b7550..73585d59c0b 100644 --- a/pkgs/os-specific/darwin/xcode/default.nix +++ b/pkgs/os-specific/darwin/xcode/default.nix @@ -11,7 +11,7 @@ in stdenv.mkDerivation rec { src = requireFile { name = "xcode_${version}.dmg"; url = meta.homepage; - sha256 = "0zkggbmsfc5w53j1ncbpayvnn1vzpyzyjjjzhawq1jjfq465bfvh"; + sha256 = "70bb550cc14eca80b9825f4ae9bfbf7f076bb75777311be428bc30a7eb7a6f7e"; }; phases = [ "unpackPhase" "patchPhase" "installPhase" "fixupPhase" ]; From c3524a8dd6cb3cc03a65a486290b29f97ba469d0 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Tue, 1 Apr 2014 01:37:10 +0200 Subject: [PATCH 3/5] optipng: use system libpng & zlib, fix cross builds and add support for static builds --- pkgs/development/libraries/libpng/12.nix | 2 ++ pkgs/tools/graphics/optipng/default.nix | 22 +++++++++++++++++++++- pkgs/top-level/all-packages.nix | 4 +++- 3 files changed, 26 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libpng/12.nix b/pkgs/development/libraries/libpng/12.nix index b7fad76acaa..7c9ef3d20b1 100644 --- a/pkgs/development/libraries/libpng/12.nix +++ b/pkgs/development/libraries/libpng/12.nix @@ -21,6 +21,8 @@ stdenv.mkDerivation rec { passthru = {}; }; + configureFlags = "--enable-static"; + meta = { description = "The official reference implementation for the PNG file format"; homepage = http://www.libpng.org/pub/png/libpng.html; diff --git a/pkgs/tools/graphics/optipng/default.nix b/pkgs/tools/graphics/optipng/default.nix index 1b2fc6dbb90..1984ab7b1de 100644 --- a/pkgs/tools/graphics/optipng/default.nix +++ b/pkgs/tools/graphics/optipng/default.nix @@ -1,7 +1,9 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchurl, libpng, static ? false }: # This package comes with its own copy of zlib, libpng and pngxtern +with stdenv.lib; + stdenv.mkDerivation rec { name = "optipng-0.7.4"; @@ -10,6 +12,24 @@ stdenv.mkDerivation rec { sha256 = "1zrphbz17rhhfl1l95q5s979rrhifbwczl2xj1fdrnq5jid5s2sj"; }; + buildInputs = [ libpng ]; + + LDFLAGS = optional static "-static"; + configureFlags = "--with-system-zlib --with-system-libpng"; + + crossAttrs = { + CC="${stdenv.cross.config}-gcc"; + LD="${stdenv.cross.config}-gcc"; + AR="${stdenv.cross.config}-ar"; + RANLIB="${stdenv.cross.config}-ranlib"; + configurePhase = '' + ./configure -prefix="$out" --with-system-zlib --with-system-libpng + ''; + postInstall = optional (stdenv.cross.libc == "msvcrt") '' + mv "$out"/bin/optipng "$out"/bin/optipng.exe + ''; + }; + meta = { homepage = http://optipng.sourceforge.net/; description = "A PNG optimizer"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c959f2c6b65..3dad42210bd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1596,7 +1596,9 @@ let openvpn = callPackage ../tools/networking/openvpn { }; - optipng = callPackage ../tools/graphics/optipng { }; + optipng = callPackage ../tools/graphics/optipng { + libpng = libpng12; + }; oslrd = callPackage ../tools/networking/oslrd { }; From 65cc76c44ac81191cc0b82cef58d1ad698a24412 Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Tue, 1 Apr 2014 01:55:32 +0200 Subject: [PATCH 4/5] libjpeg_original: add optional static builds --- pkgs/development/libraries/libjpeg/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libjpeg/default.nix b/pkgs/development/libraries/libjpeg/default.nix index 63d698dda18..d7a1bcb4638 100644 --- a/pkgs/development/libraries/libjpeg/default.nix +++ b/pkgs/development/libraries/libjpeg/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchurl, static ? false }: + +with stdenv.lib; stdenv.mkDerivation { name = "libjpeg-8d"; @@ -7,6 +9,8 @@ stdenv.mkDerivation { url = http://www.ijg.org/files/jpegsrc.v8d.tar.gz; sha256 = "1cz0dy05mgxqdgjf52p54yxpyy95rgl30cnazdrfmw7hfca9n0h0"; }; + + configureFlags = optional static "--enable-static --disable-shared"; meta = { homepage = http://www.ijg.org/; From 776203453f8b338db35b2cf23eeff3b4be8af51c Mon Sep 17 00:00:00 2001 From: Jaka Hudoklin Date: Tue, 1 Apr 2014 01:56:05 +0200 Subject: [PATCH 5/5] gifsicle: add optional static builds, make gifview optional --- pkgs/tools/graphics/gifsicle/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/graphics/gifsicle/default.nix b/pkgs/tools/graphics/gifsicle/default.nix index f3f17692df8..debc340ee4c 100644 --- a/pkgs/tools/graphics/gifsicle/default.nix +++ b/pkgs/tools/graphics/gifsicle/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchurl, xproto, libXt, libX11 }: +{ stdenv, fetchurl, xproto, libXt, libX11, gifview ? false, static ? false }: + +with stdenv.lib; stdenv.mkDerivation { name = "gifsicle-1.78"; @@ -8,7 +10,9 @@ stdenv.mkDerivation { sha256 = "0dzp5sg82klji4lbj1m4cyg9fb3l837gkipdx657clib97klyv53"; }; - buildInputs = [ xproto libXt libX11 ]; + buildInputs = optional gifview [ xproto libXt libX11 ]; + + LDFLAGS = optional static "-static"; meta = { description = "Command-line tool for creating, editing, and getting information about GIF images and animations";