From fb437cf98d73885ea974a8b47fe55b19b2b233d0 Mon Sep 17 00:00:00 2001 From: Marc Weber Date: Wed, 5 Dec 2007 21:25:47 +0000 Subject: [PATCH] exrviewer added (needs ctl openexr openexr_ctl) fltk update ilmbase updated ndiswrapper does compile but has to be integrated into the kernel somehow svn path=/nixpkgs/trunk/; revision=9863 --- .../graphics/exrdisplay/default.nix | 27 +++++++ pkgs/development/libraries/ctl/default.nix | 23 ++++++ pkgs/development/libraries/fltk/default.nix | 74 +++++++++---------- .../development/libraries/ilmbase/default.nix | 6 +- .../development/libraries/openexr/default.nix | 10 ++- .../libraries/openexr_ctl/default.nix | 24 ++++++ pkgs/development/libraries/proj.4/default.nix | 17 +++++ .../os-specific/linux/ndiswrapper/default.nix | 26 +++++++ pkgs/top-level/all-packages.nix | 47 +++++++++--- 9 files changed, 198 insertions(+), 56 deletions(-) create mode 100644 pkgs/applications/graphics/exrdisplay/default.nix create mode 100644 pkgs/development/libraries/ctl/default.nix create mode 100644 pkgs/development/libraries/openexr_ctl/default.nix create mode 100644 pkgs/development/libraries/proj.4/default.nix create mode 100644 pkgs/os-specific/linux/ndiswrapper/default.nix diff --git a/pkgs/applications/graphics/exrdisplay/default.nix b/pkgs/applications/graphics/exrdisplay/default.nix new file mode 100644 index 000000000000..4778c4bf7c40 --- /dev/null +++ b/pkgs/applications/graphics/exrdisplay/default.nix @@ -0,0 +1,27 @@ +args: + +assert args.fltk.flag_set_gl; +args.stdenv.mkDerivation { + + name ="openexr_viewers-1.0.1"; + + src = args.fetchurl { + url = "http://download.savannah.nongnu.org/releases/openexr/openexr_viewers-1.0.1.tar.gz"; + sha256 = "1w5qbcdp7sw48z1wk2v07f7p14vqqb1m2ncxyxnbkm9f4ab0ymg6"; + }; + + inherit (args) fltk mesa; + + configurePhase = " + # don't know why.. adding these flags it works + #export CXXFLAGS=`fltk-config --use-gl --cxxflags --ldflags` + ./configure --prefix=\$out --with-fltk-config=\$fltk/bin/fltk-config"; + + buildInputs =(with args; [openexr fltk pkgconfig mesa which openexr_ctl]); + + meta = { + description = "tool to view OpenEXR images"; + homepage = http://openexr.com; + license = "BSD-like"; + }; +} diff --git a/pkgs/development/libraries/ctl/default.nix b/pkgs/development/libraries/ctl/default.nix new file mode 100644 index 000000000000..c6a6cee0ca67 --- /dev/null +++ b/pkgs/development/libraries/ctl/default.nix @@ -0,0 +1,23 @@ +args: +args.stdenv.mkDerivation { + name = "ctl-1.4.1"; + + src = args.fetchurl { + url = http://surfnet.dl.sourceforge.net/sourceforge/ampasctl/ctl-1.4.1.tar.gz; + sha256 = "16lzgbpxdyhykdwndj1i9vx3h4bfkxqqcrvasvgg70gb5raxj0mj"; + }; + + propagatedBuildInputs = (with args; [ilmbase]); + configureFlags="--with-ilmbase-prefix=${args.ilmbase}"; + #configurePhase = " + #export CXXFLAGS=\"-I${args.ilmbase}/include -L${args.ilmbase}/lib\" + #echo $CXXFLAGS + #unset configurePhase; configurePhase + #"; + + meta = { + description = "Color Transformation Language"; + homepage = http://ampasctl.sourceforge.net; + license = "SOME OPEN SOURCE LICENSE"; # TODO which exactly is this? + }; +} diff --git a/pkgs/development/libraries/fltk/default.nix b/pkgs/development/libraries/fltk/default.nix index 0b35b3e34b07..25b8379e3794 100644 --- a/pkgs/development/libraries/fltk/default.nix +++ b/pkgs/development/libraries/fltk/default.nix @@ -1,45 +1,37 @@ args: -with args; -with args.lib; -let - co = chooseOptionsByFlags { - inherit args; - flagDescr = - { mandatory = { cfgOption = " --prefix=\$out"; - buildInputs=["libX11" "libXext"]; - blocks = ["cygwin" "quartz"]; } # cgywin quartz and much more not yet tested - ; cygwin = { cfgOption = "--enable-cygwin"; } # use the CygWin libraries default=no - ; debug = { cfgOption = "--enable-debug"; } # turn on debugging default=no - ; gl = { cfgOption = "--enable-gl"; buildInputs = [ "mesa" "mesa-heaaders"]; } # turn on OpenGL support default=yes - ; shared = { cfgOption = "--enable-shared"; } # turn on shared libraries default=no - ; threads = { cfgOption = "--enable-threads"; } # enable multi-threading support - ; quartz = { cfgOption = "--enable-quartz"; buildInputs = "quartz"; } # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no) - ; largefile = { cfgOption = "--disable-largefile"; } # omit support for large files - ; useNixLibs = { implies = [ "nixjpeg" "nixpng" "nixzlib" ]; } # use nix libraries only - ; nixjpeg = { cfgOption = "--disable-localjpeg"; buildInputs = "libjpeg"; } # use local JPEG library, default=auto - ; nixzlib = { cfgOption = "--disable-localzlib"; buildInputs = "zlib"; } # use local ZLIB library, default=auto - ; nixpng = { cfgOption = "--disable-localpng"; buildInputs = "libpng"; } # use local PNG library, default=auto - ; xinerama = { cfgOption = "--enable-xinerama"; buildInputs = "xinerama"; } # turn on Xinerama support default=no - ; xft = { cfgOption = "--enable-xft"; buildInputs="xft"; } # turn on Xft support default=no - ; xdbe = { cfgOption = "--enable-xdbe"; } # turn on Xdbe support default=no - ;}; +( args.mkDerivationByConfiguration { + flagConfig = { + mandatory = { propagatedBuildInputs=["x11"]; + blocks = ["cygwin" "quartz"]; }; # cgywin quartz and much more not yet tested + cygwin = { cfgOption = "--enable-cygwin"; }; # use the CygWin libraries default=no + debug = { cfgOption = "--enable-debug"; }; # turn on debugging default=no + gl = { cfgOption = "--enable-gl"; buildInputs = [ "mesa" ]; }; # turn on OpenGL support default=yes + shared = { cfgOption = "--enable-shared"; }; # turn on shared libraries default=no + threads = { cfgOption = "--enable-threads"; }; # enable multi-threading support + quartz = { cfgOption = "--enable-quartz"; buildInputs = "quartz"; }; # don't konw yet what quartz is # use Quartz instead of Quickdraw (default=no) + largefile = { cfgOption = "--disable-largefile"; }; # omit support for large files + useNixLibs = { implies = [ "nixjpeg" "nixpng" "nixzlib" ]; }; # use nix libraries only + nixjpeg = { cfgOption = "--disable-localjpeg"; buildInputs = "libjpeg"; }; # use local JPEG library, default=auto + nixzlib = { cfgOption = "--disable-localzlib"; buildInputs = "zlib"; }; # use local ZLIB library, default=auto + nixpng = { cfgOption = "--disable-localpng"; buildInputs = "libpng"; }; # use local PNG library, default=auto + xinerama = { cfgOption = "--enable-xinerama"; buildInputs = "xinerama"; }; # turn on Xinerama support default=no + xft = { cfgOption = "--enable-xft"; buildInputs="xft"; }; # turn on Xft support default=no + xdbe = { cfgOption = "--enable-xdbe"; }; # turn on Xdbe support default=no + }; + + extraAttrs = co : { + name = "fltk-2.0.x-r5940"; + + src = args.fetchurl { + #url = http://mirror.switch.ch/mirror/gentoo/distfiles/fltk-1.1.7-source.tar.bz2; + #sha256 = "855a97e35da823f205253b865758715872cd2c7720e4dcf134a3b6dc18bfb96a"; + url = ftp://ftp.easysw.com/pub/fltk/snapshots/fltk-1.1.x-r5989.tar.bz2; + sha256 = "1zk5qh9133zd53hsn03bc4h6j4vjy61y92j4zxxw94z8y3jkc8yw"; }; -in -args.stdenv.mkDerivation { - inherit (co) /* flags */ buildInputs; - name = "fltk-2.0.x-r5940"; - configurePhase = "./configure " + co.configureFlags; - - src = fetchurl { - url = http://mirror.switch.ch/mirror/gentoo/distfiles/fltk-1.1.7-source.tar.bz2; - sha256 = "855a97e35da823f205253b865758715872cd2c7720e4dcf134a3b6dc18bfb96a"; + meta = { + description = "a C++ cross platform lightweight gui library binding"; + homepage = http://www.fltk.org; + }; }; - - meta = { - description = "a C++ cross platform lightweight gui library binding"; - homepage = http://www.fltk.org; - }; - - dummy=2; -} +} ) args diff --git a/pkgs/development/libraries/ilmbase/default.nix b/pkgs/development/libraries/ilmbase/default.nix index 49fae13aec88..0ab548bef86d 100644 --- a/pkgs/development/libraries/ilmbase/default.nix +++ b/pkgs/development/libraries/ilmbase/default.nix @@ -1,9 +1,9 @@ args: with args; stdenv.mkDerivation { - name = "ilmbase-1.0.0"; + name = "ilmbase-1.0.1"; src = fetchurl { - url = http://FIXME/ilmbase-1.0.0.tar.gz; - sha256 = "1dpgi3hbff9nflg95r2smb6ssg5bh5g8mj9dxh896w29nh08ipnz"; + url = http://download.savannah.nongnu.org/releases/openexr/ilmbase-1.0.1.tar.gz; + sha256 = "0z9r3r0bxyhgwhkdwln0dg1lnxz691qnjygrqlg3jym34rxzq52g"; }; configureFlags = "--enable-shared --disable-static"; } diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix index e30f25d9778d..4d4aefc95812 100644 --- a/pkgs/development/libraries/openexr/default.nix +++ b/pkgs/development/libraries/openexr/default.nix @@ -1,11 +1,15 @@ args: with args; stdenv.mkDerivation { - name = "openexr-1.6.0"; + inherit version; + name = "openexr-${version}"; src = fetchurl { - url = http://FIXME/openexr-1.6.0.tar.gz; - sha256 = "0mzbwavkbj26g43ar5jhdrqlvw9nq1mxh9l2044sqlcyharcnfq4"; + url = "http://download.savannah.nongnu.org/releases/openexr/openexr-${version}.tar.gz"; + sha256 = if (version == "1.6.1") then "0l2rdbx9lg4qk2ms98hwbsnzpggdrx3pbjl6pcvrrpjqp5m905n6" + else if (version == "1.4.0") then "1y3dxakpg9651dgbj2xp6r4044b5gi74g23w3sr5cs6xi7cywv7m" + else abort "not supported version"; }; + buildInputs = [pkgconfig zlib] ++ (lib.optional (args ? ctl) (args.ctl)); propagatedBuildInputs = [pkgconfig zlib ilmbase]; configureFlags = "--enable-shared --disable-static --enable-imfexamples"; } diff --git a/pkgs/development/libraries/openexr_ctl/default.nix b/pkgs/development/libraries/openexr_ctl/default.nix new file mode 100644 index 000000000000..634a38990cb1 --- /dev/null +++ b/pkgs/development/libraries/openexr_ctl/default.nix @@ -0,0 +1,24 @@ +args: +args.stdenv.mkDerivation { + name = "openexr_ctl-1.0.1"; + + src = args.fetchurl { + url = http://kent.dl.sourceforge.net/sourceforge/ampasctl/openexr_ctl-1.0.1.tar.gz; + sha256 = "1jg9smpaplal8l14djp184wzk11nwd3dvm4lhkp69kjgw8jdd21d"; + }; + + propagatedBuildInputs = (with args; [ilmbase]); + buildInputs = ( with args; [openexr ctl]); + configureFlags="--with-ilmbase-prefix=${args.ilmbase}"; + #configurePhase = " + #export CXXFLAGS=\"-I${args.ilmbase}/include -L${args.ilmbase}/lib\" + #echo $CXXFLAGS + #unset configurePhase; configurePhase + #"; + + meta = { + description = "Color Transformation Language"; + homepage = http://ampasctl.sourceforge.net; + license = "SOME OPEN SOURCE LICENSE"; # TODO which exactly is this? + }; +} diff --git a/pkgs/development/libraries/proj.4/default.nix b/pkgs/development/libraries/proj.4/default.nix new file mode 100644 index 000000000000..6449a188f2be --- /dev/null +++ b/pkgs/development/libraries/proj.4/default.nix @@ -0,0 +1,17 @@ +args: +args.stdenv.mkDerivation { + name = "proj-4.5.0"; + + src = args.fetchurl { + url = ftp://ftp.remotesensing.org/proj/proj-4.5.0.tar.gz; + sha256 = "1d2qz0vgp13hkfgaz7hkblhb9w2fh2blbjqz73xdinwc08cmflqv"; + }; + + buildInputs =(with args; []); + + meta = { + description = "Cartographic Projections Library"; + homepage = http://proj.maptools.org; + license = "MIT"; + }; +} diff --git a/pkgs/os-specific/linux/ndiswrapper/default.nix b/pkgs/os-specific/linux/ndiswrapper/default.nix new file mode 100644 index 000000000000..0d8b351e58b4 --- /dev/null +++ b/pkgs/os-specific/linux/ndiswrapper/default.nix @@ -0,0 +1,26 @@ +args: +with args; +args.stdenv.mkDerivation { + name = "ndiswrapper-1.49-stable"; + + # need at least .config and include + inherit kernel; + + buildPhase = " + make KBUILD=\$kernel/lib/modules/*/build; + "; + + # should we use unstable? + src = args.fetchurl { + url = http://kent.dl.sourceforge.net/sourceforge/ndiswrapper/ndiswrapper-1.49.tar.gz; + sha256 = "1b9nqkk7gv6gffzj9b8mjy5myxf2afwpyr2n5wbfsylf15dvvvjr"; + }; + + buildInputs =(with args; [kernelHeaders kernel]); + + meta = { + description = "Ndis driver wrapper for the Linux kernel"; + homepage = http://sourceforge.net/projects/ndiswrapper; + license = "GPL"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d02a94bfdcc0..5bac1fc45107 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1672,6 +1672,10 @@ rec { inherit fetchurl stdenv; }; + ctl = import ../development/libraries/ctl { + inherit fetchurl stdenv ilmbase; + }; + cppunit = import ../development/libraries/cppunit { inherit fetchurl stdenv; }; @@ -1756,13 +1760,12 @@ rec { }; - # commented out because it's using the new configuration style proposal which is unstable - # needs some testing .. - #fltk20 = (import ../development/libraries/fltk) { - #inherit fetchurl stdenv lib mesa mesaHeaders libpng libjpeg zlib ; - #inherit (xlibs) libX11 libXext; - #flags = [ "useNixLibs" "threads" "shared" ]; - #}; + fltk20 = (import ../development/libraries/fltk) { + inherit mkDerivationByConfiguration x11; + inherit fetchurl stdenv mesa mesaHeaders libpng libjpeg zlib ; + flags = [ "useNixLibs" "threads" "shared" "gl" ]; + lib = lib_unstable; + }; fontconfig = import ../development/libraries/fontconfig { inherit fetchurl stdenv freetype expat; @@ -2255,13 +2258,21 @@ rec { inherit fetchurl stdenv zlib libxml2; }; + # this ctl version is needed by openexr_viewers + openexr_ctl = import ../development/libraries/openexr_ctl { + inherit fetchurl stdenv ilmbase ctl; + openexr = openexr_1_6_1; + }; + openexr_1_6_1 = import ../development/libraries/openexr { - inherit fetchurl stdenv ilmbase zlib pkgconfig; + inherit fetchurl stdenv ilmbase zlib pkgconfig lib; version = "1.6.1"; + # optional features: + inherit ctl; }; # This older version is needed by blender (it complains about missing half.h ) openexr_1_4_0 = import ../development/libraries/openexr { - inherit fetchurl stdenv ilmbase zlib pkgconfig; + inherit fetchurl stdenv ilmbase zlib pkgconfig lib; version = "1.4.0"; }; @@ -2296,6 +2307,11 @@ rec { inherit fetchurl stdenv gettext libtool autoconf automake; }; + + proj = import ../development/libraries/proj.4 { + inherit fetchurl stdenv; + }; + qt3 = import ../development/libraries/qt-3 { inherit fetchurl stdenv x11 zlib libjpeg libpng which mysql mesa; inherit (xlibs) xextproto libXft libXrender libXrandr randrproto @@ -3363,6 +3379,13 @@ rec { stdenv = overrideGCC stdenv gcc34; }; + /* compiles but has to be integrated into the kernel somehow + ndiswrapper = import ../os-specific/linux/ndiswrapper { + inherit fetchurl stdenv; + inherit kernel; + }; + */ + nettools = import ../os-specific/linux/net-tools { inherit fetchurl stdenv; }; @@ -3850,6 +3873,12 @@ rec { xftSupport = true; }; + exrdisplay = import ../applications/graphics/exrdisplay { + inherit fetchurl stdenv pkgconfig mesa which openexr_ctl; + fltk = fltk20; + openexr = openexr_1_6_1; + }; + fbpanelFun = lib.sumArgs (selectVersion ../applications/window-managers/fbpanel) { inherit fetchurl stdenv builderDefs pkgconfig libpng libjpeg libtiff librsvg; inherit (gtkLibs) gtk;