diff --git a/pkgs/applications/editors/emacs-22/default.nix b/pkgs/applications/editors/emacs-22/default.nix index 89c8af070e09..4a8369170adf 100644 --- a/pkgs/applications/editors/emacs-22/default.nix +++ b/pkgs/applications/editors/emacs-22/default.nix @@ -30,6 +30,16 @@ stdenv.mkDerivation rec { configureFlags = stdenv.lib.optional gtkGUI "--with-x-toolkit=gtk"; + postInstall = '' + cat >$out/share/emacs/site-lisp/site-start.el <<EOF +;; nixos specific load-path +(when (getenv "NIX_PROFILES") (setq load-path + (append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/")) + (split-string (getenv "NIX_PROFILES")))) + load-path))) +EOF + ''; + meta = { description = "GNU Emacs, *the* text editor"; diff --git a/pkgs/applications/editors/emacs-23/default.nix b/pkgs/applications/editors/emacs-23/default.nix index 5de1b38bb41d..84a98182e9f5 100644 --- a/pkgs/applications/editors/emacs-23/default.nix +++ b/pkgs/applications/editors/emacs-23/default.nix @@ -31,6 +31,16 @@ stdenv.mkDerivation rec { ++ stdenv.lib.optional (stdenv ? glibc) [ "--with-crt-dir=${stdenv.glibc}/lib" ]; + postInstall = '' + cat >$out/share/emacs/site-lisp/site-start.el <<EOF +;; nixos specific load-path +(when (getenv "NIX_PROFILES") (setq load-path + (append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/")) + (split-string (getenv "NIX_PROFILES")))) + load-path))) +EOF + ''; + doCheck = true; meta = { @@ -56,7 +66,7 @@ stdenv.mkDerivation rec { homepage = http://www.gnu.org/software/emacs/; license = "GPLv3+"; - maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.simons ]; + maintainers = with stdenv.lib.maintainers; [ ludo simons chaoflow ]; platforms = stdenv.lib.platforms.all; }; } diff --git a/pkgs/applications/editors/emacs-snapshot/default.nix b/pkgs/applications/editors/emacs-snapshot/default.nix index d190a5809cfc..1ae864336e58 100644 --- a/pkgs/applications/editors/emacs-snapshot/default.nix +++ b/pkgs/applications/editors/emacs-snapshot/default.nix @@ -48,6 +48,16 @@ stdenv.mkDerivation { ${if gtkGUI then "--with-x-toolkit=gtk --enable-font-backend --with-xft" else ""} "; + postInstall = '' + cat >$out/share/emacs/site-lisp/site-start.el <<EOF +;; nixos specific load-path +(when (getenv "NIX_PROFILES") (setq load-path + (append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/")) + (split-string (getenv "NIX_PROFILES")))) + load-path))) +EOF + ''; + meta = { description = "GNU Emacs with Unicode, GTK and Xft support (23.x alpha)"; homepage = http://www.emacswiki.org/cgi-bin/wiki/XftGnuEmacs; diff --git a/pkgs/applications/misc/librecad/default.nix b/pkgs/applications/misc/librecad/default.nix new file mode 100644 index 000000000000..bcf0f1aee792 --- /dev/null +++ b/pkgs/applications/misc/librecad/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, qt4}: + +stdenv.mkDerivation { + name = "librecad-1.0.0"; + + src = fetchurl { + url = https://github.com/LibreCAD/LibreCAD/tarball/v1.0.0; + name = "librecad-1.0.0.tar.gz"; + sha256 = "0s1ikyvy98zz1vw3xf5la73n3sykib6292cmhh2z738ggwigicc9"; + }; + + patchPhase = '' + sed -i -e s,/bin/bash,`type -P bash`, scripts/postprocess-unix.sh + ''; + + configurePhase = "qmake PREFIX=$out"; + + # It builds, but it does not install + installPhase = "exit 1"; + + buildInputs = [ qt4 ]; + + meta = { + description = "A 2D CAD package based upon Qt"; + homepage = http://librecad.org; + license = "GPLv2"; + }; +} diff --git a/pkgs/applications/misc/taskwarrior/unstable.nix b/pkgs/applications/misc/taskwarrior/unstable.nix index 057ebbe57c53..a50654b28d25 100644 --- a/pkgs/applications/misc/taskwarrior/unstable.nix +++ b/pkgs/applications/misc/taskwarrior/unstable.nix @@ -10,7 +10,14 @@ stdenv.mkDerivation { NIX_LDFLAGS = "-ldl"; - buildInputs = [ cmake lua5 ]; + buildNativeInputs = [ cmake ]; + buildInputs = [ lua5 ]; + + crossAttrs = { + preConfigure = '' + export NIX_CROSS_LDFLAGS="$NIX_CROSS_LDFLAGS -ldl" + ''; + }; meta = { description = "Command-line todo list manager"; diff --git a/pkgs/build-support/fetchurl/gnome.nix b/pkgs/build-support/fetchurl/gnome.nix index 616c82036019..258b11d850e5 100644 --- a/pkgs/build-support/fetchurl/gnome.nix +++ b/pkgs/build-support/fetchurl/gnome.nix @@ -1,6 +1,6 @@ { fetchurl }: -{ project, major, minor, patchlevel, extension ? "bz2", sha256 }: +{ project, major, minor, patchlevel ? null, extension ? "bz2", sha256 }: let baseVersion = "${major}.${minor}"; diff --git a/pkgs/build-support/release/debian-build.nix b/pkgs/build-support/release/debian-build.nix index 52924d2c42c0..070a54fc945c 100644 --- a/pkgs/build-support/release/debian-build.nix +++ b/pkgs/build-support/release/debian-build.nix @@ -11,6 +11,8 @@ debRequires ? [] , ... } @ args: +with stdenv.lib; + vmTools.runInLinuxImage (stdenv.mkDerivation ( { @@ -61,13 +63,15 @@ vmTools.runInLinuxImage (stdenv.mkDerivation ( ${checkinstall}/sbin/checkinstall --nodoc -y -D \ --fstrans=${if fsTranslation then "yes" else "no"} \ - --requires="${toString debRequires}" \ - --provides="${toString debProvides}" \ + --requires="${concatStringsSep "," debRequires}" \ + --provides="${concatStringsSep "," debProvides}" \ make install ensureDir $out/debs find . -name "*.deb" -exec cp {} $out/debs \; + [ "$(echo $out/debs/*.deb)" != "" ] + for i in $out/debs/*.deb; do header "Generated DEB package: $i" dpkg-deb --info "$i" diff --git a/pkgs/development/compilers/mono/default.nix b/pkgs/development/compilers/mono/default.nix index ee415e3b07b2..471f0d5b36d1 100644 --- a/pkgs/development/compilers/mono/default.nix +++ b/pkgs/development/compilers/mono/default.nix @@ -1,10 +1,10 @@ {stdenv, fetchurl, bison, pkgconfig, glib, gettext, perl}: stdenv.mkDerivation { - name = "mono-2.8"; + name = "mono-2.10.8.1"; src = fetchurl { - url = http://ftp.novell.com/pub/mono/sources/mono/mono-2.8.tar.bz2; - sha256 = "04bivxg90mmihkp72sjshl4ijbjcbl9f6hdgm476zy794g5rwd78"; + url = http://download.mono-project.com/sources/mono/mono-2.10.8.1.tar.gz; + sha256 = "0h4hdj99qg0nsg5260izwaybs59wysf7y399kffhg43fidpndz0x"; }; buildInputs = [bison pkgconfig glib gettext perl]; diff --git a/pkgs/development/interpreters/lua-5/default.nix b/pkgs/development/interpreters/lua-5/default.nix index 19a5599347ff..06703e12210d 100644 --- a/pkgs/development/interpreters/lua-5/default.nix +++ b/pkgs/development/interpreters/lua-5/default.nix @@ -30,6 +30,7 @@ stdenv.mkDerivation { -e "s/ ranlib/$crossConfig-ranlib/" \ src/Makefile ''; + dontStrip = true; }; meta = { diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix index ddd51f73f79e..c29f7c4456f8 100644 --- a/pkgs/misc/ghostscript/default.nix +++ b/pkgs/misc/ghostscript/default.nix @@ -89,7 +89,11 @@ stdenv.mkDerivation rec { doCheck = true; + preBuild = "make so"; + postInstall = '' + make soinstall + for i in $fonts; do (cd $out/share/ghostscript && tar xvfz $i) done diff --git a/pkgs/os-specific/linux/firmware/rt2860/default.nix b/pkgs/os-specific/linux/firmware/rt2860/default.nix index 70601f065ef4..0c8accd2f6c5 100644 --- a/pkgs/os-specific/linux/firmware/rt2860/default.nix +++ b/pkgs/os-specific/linux/firmware/rt2860/default.nix @@ -1,14 +1,17 @@ -{stdenv, fetchurl, unzip}: +{stdenv, fetchsvn }: -stdenv.mkDerivation rec { +# Upstream is http://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git + +stdenv.mkDerivation { name = "rt2860-fw-26"; - src = fetchurl { - url = "http://www.ralinktech.com/download.php?t=U0wyRnpjMlYwY3k4eU1ERXdMekF6THpNeEwyUnZkMjVzYjJGa01UWTBNamsyTVRBNE1pNTZhWEE5UFQxU1ZESTROakJmUm1seWJYZGhjbVZmVmpJMkM%3D"; - name = "RT2860_Firmware_V26.zip"; - sha256 = "0kvjd8kfnmh8jj35jd10pnr1z7a00ks4c317dnnzgkd86mmcg4px"; + + src = fetchsvn { + url = svn://svn.debian.org/kernel/dists/trunk/firmware-nonfree/ralink; + rev = 17279; + sha256 = "06nc6w3xcrxzcai7gaf27k0v8k2xbq3imzpgc02rbxv5q5flxh65"; }; - buildInputs = [ unzip ]; + unpackPhase = "true"; buildPhase = "true"; @@ -16,7 +19,11 @@ stdenv.mkDerivation rec { # says: "Your rights to redistribute the Software shall be # contingent upon your installation of this Agreement in its # entirety in the same directory as the Software." - installPhase = "ensureDir $out/${name}; cp *.bin $out; cp *.txt $out/${name}"; + installPhase = '' + ensureDir $out + cp $src/rt2860.bin $out + cp $src/LICENSE $out/rt2860.LICENSE + ''; meta = { description = "Firmware for the Ralink RT2860 wireless cards"; diff --git a/pkgs/tools/graphics/icoutils/default.nix b/pkgs/tools/graphics/icoutils/default.nix new file mode 100644 index 000000000000..5abc909ea306 --- /dev/null +++ b/pkgs/tools/graphics/icoutils/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl, libpng }: + +stdenv.mkDerivation rec { + name = "icoutils-0.29.1"; + + src = fetchurl { + url = "mirror://savannah/icoutils/${name}.tar.bz2"; + sha256 = "180yqv41yc3fi6ggx7azhmaciqzadj0ir87wajigmcpgxkjk6v34"; + }; + + buildInputs = [ libpng ]; + + meta = { + homepage = http://www.nongnu.org/icoutils/; + description = "Set of programs to deal with Microsoft Windows(R) icon and cursor files"; + license = "GPLv3+"; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/tools/graphics/pngtoico/default.nix b/pkgs/tools/graphics/pngtoico/default.nix new file mode 100644 index 000000000000..df1046cb750f --- /dev/null +++ b/pkgs/tools/graphics/pngtoico/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl, libpng }: + +stdenv.mkDerivation rec { + name = "pngtoico-1.0"; + + src = fetchurl { + url = mirror://kernel/software/graphics/pngtoico/pngtoico-1.0.tar.gz; + sha256 = "1xb4aa57sjvgqfp01br3dm72hf7q0gb2ad144s1ifrs09215fgph"; + }; + + configurePhase = '' + sed -i s,/usr/local,$out, Makefile + ''; + + buildInputs = [ libpng ]; + + meta = { + homepage = http://www.kernel.org/pub/software/graphics/pngtoico/; + description = "Small utility to convert a set of PNG images to Microsoft ICO format"; + license = "GPLv2+"; + platforms = with stdenv.lib.platforms; linux; + }; +} diff --git a/pkgs/tools/networking/modemmanager/default.nix b/pkgs/tools/networking/modemmanager/default.nix new file mode 100644 index 000000000000..c5164d627708 --- /dev/null +++ b/pkgs/tools/networking/modemmanager/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchurl_gnome, udev, polkit, dbus_glib, ppp, intltool, pkgconfig, xz }: + +stdenv.mkDerivation rec { + name = src.pkgname; + + src = fetchurl_gnome { + project = "ModemManager"; + major = "0"; minor = "5"; extension = "xz"; + sha256 = "0zvwrni4l21d856nq28khigrhwgrq5cc7nh45zidwjj8q7bsxiz7"; + }; + + buildNativeInputs = [ xz intltool pkgconfig ]; + + buildInputs = [ udev polkit dbus_glib ppp ]; + + configureFlags = "--with-polkit --with-udev-base-dir=$(out)/lib/udev"; + + meta = { + description = "WWAN modem manager, part of NetworkManager"; + maintainers = [ stdenv.lib.maintainers.urkud ]; + platforms = [ stdenv.lib.platforms.linux ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 253eb0538a57..203ee98bd8e2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -852,6 +852,8 @@ let iasl = callPackage ../development/compilers/iasl { }; + icoutils = callPackage ../tools/graphics/icoutils { }; + idutils = callPackage ../tools/misc/idutils { }; iftop = callPackage ../tools/networking/iftop { }; @@ -988,6 +990,8 @@ let mldonkey = callPackage ../applications/networking/p2p/mldonkey { }; + modemmanager = callPackage ../tools/networking/modemmanager {}; + monit = builderDefsPackage ../tools/system/monit { inherit openssl flex bison; }; @@ -1201,6 +1205,8 @@ let pngnq = callPackage ../tools/graphics/pngnq { }; + pngtoico = callPackage ../tools/graphics/pngtoico { }; + polipo = callPackage ../servers/polipo { }; polkit_gnome = callPackage ../tools/security/polkit-gnome { }; @@ -5705,6 +5711,25 @@ let #kernelPatches.mips_restart_2_6_36 ]; }; + + linux_3_2_powertop = linux_3_2.override { + extraConfig = '' + DEBUG_KERNEL y + PM_ADVANCED_DEBUG y + PM_RUNTIME y + TIMER_STATS y + USB_SUSPEND y + BACKTRACE_SELF_TEST n + CPU_NOTIFIER_ERROR_INJECT n + DEBUG_DEVRES n + DEBUG_NX_TEST n + DEBUG_STACK_USAGE n + DEBUG_STACKOVERFLOW n + RCU_TORTURE_TEST n + SCHEDSTATS n + ''; + }; + /* Linux kernel modules are inherently tied to a specific kernel. So rather than provide specific instances of those packages for a specific kernel, we have a function that builds those packages @@ -5854,6 +5879,7 @@ let linuxPackages_nanonote_jz_2_6_35 = recurseIntoAttrs (linuxPackagesFor linux_nanonote_jz_2_6_35 pkgs.linuxPackages_nanonote_jz_2_6_35); linuxPackages_nanonote_jz_2_6_36 = recurseIntoAttrs (linuxPackagesFor linux_nanonote_jz_2_6_36 pkgs.linuxPackages_nanonote_jz_2_6_36); linuxPackages_3_2 = recurseIntoAttrs (linuxPackagesFor linux_3_2 pkgs.linuxPackages_3_2); + linuxPackages_3_2_powertop = recurseIntoAttrs (linuxPackagesFor linux_3_2_powertop pkgs.linuxPackages_3_2_powertop); # The current default kernel / kernel modules. linux = linuxPackages.kernel; @@ -6988,6 +7014,8 @@ let inherit (gnome) libglade; }; + librecad = callPackage ../applications/misc/librecad { }; + lingot = callPackage ../applications/audio/lingot { inherit (gnome) libglade; };