WIP: getting better

This commit is contained in:
Vladimír Čunát 2014-08-30 19:11:52 +02:00
parent b8c7091335
commit abbc93f783
9 changed files with 58 additions and 25 deletions

View File

@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
#outputs = [ "dev" "out" "bin" ]; # ToDo: no idea what's wrong! docs?
#setupHook = ./setup-hook.sh;
setupHook = ./setup-hook.sh;
buildInputs = [ /*stdenv.hookLib.multiout*/ libelf ]
++ optionals doCheck [ tzdata libxml2 desktop_file_utils shared_mime_info ];

View File

@ -15,3 +15,18 @@ glibPreFixupPhase() {
}
preFixupPhases+=(glibPreFixupPhase)
preFixupHooks+=(_multioutGtkDocs)
# Move documentation to the desired outputs.
_multioutGtkDocs() {
if [ "$outputs" = "out" ]; then return; fi;
_moveToOutput share/gtk-doc "${!outputDoc}"
# Remove empty share directory.
if [ -d "$out/share" ]; then
rmdir "$out/share" 2> /dev/null || true
fi
}

View File

@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
sha256 = "162flbzwzz0b8axab2gimc4dglpaw88fh1d177zfg0whczlpbsln";
};
outputs = [ "dev" "out" "doc" ];
buildInputs = [ flex bison glib pkgconfig python ]
++ libintlOrEmpty
++ stdenv.lib.optional stdenv.isDarwin otool;
@ -25,8 +27,6 @@ stdenv.mkDerivation rec {
# other dependencies).
configureFlags = [ "--disable-tests" ];
postInstall = "rm -rf $out/share/gtk-doc";
setupHook = ./setup-hook.sh;
patches = [ ./absolute_shlib_path.patch ];

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, unzip, xlibs, libjpeg}:
{ stdenv, fetchurl, autoreconfHook, unzip, xlibs, libjpeg }:
stdenv.mkDerivation rec {
name = "jasper-1.900.1";
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "154l7zk7yh3v8l2l6zm5s2alvd2fzkp6c9i18iajfbna5af5m43b";
};
nativeBuildInputs = [unzip];
nativeBuildInputs = [ unzip autoreconfHook ];
propagatedBuildInputs = [ libjpeg ];
configureFlags = "--enable-shared";

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, replace, curl, expat, zlib, bzip2, libarchive
{ stdenv, fetchurl, fetchpatch, replace, pkgconfig, curl, expat, zlib, bzip2, libarchive
, useNcurses ? false, ncurses, useQt4 ? false, qt4
}:
@ -39,12 +39,15 @@ stdenv.mkDerivation rec {
sha256 = "16acmdr27adma7gs9rs0dxdiqppm15vl3vv3agy7y8s94wyh4ybv";
});
buildInputs = [ curl expat zlib bzip2 libarchive ]
buildInputs = [ pkgconfig curl expat zlib bzip2 libarchive ]
++ optional useNcurses ncurses
++ optional useQt4 qt4;
CMAKE_PREFIX_PATH = stdenv.lib.concatStringsSep ":" buildInputs;
# no idea why the auto-added NIX_LDFLAGS to the same path is not enough
NIX_CFLAGS_COMPILE = "-L${zlib.out}/lib";
configureFlags =
"--docdir=/share/doc/${name} --mandir=/share/man --system-libs"
+ stdenv.lib.optionalString useQt4 " --qt-gui";

View File

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
sha256 = "1hpjcc42svrs06q3isjm3m5aphgkpfdylmvpnif71zh46ys0cab5";
};
outputs = [ "out" "man" "libudev" ];
outputs = [ "dev" "out" "libudev" "doc" ];
patches =
[ # These are all changes between upstream and
@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
autoreconfHook
] ++ stdenv.lib.optionals pythonSupport [pythonPackages.python pythonPackages.lxml];
configureFlags =
[ "--localstatedir=/var"
"--sysconfdir=/etc"
@ -102,6 +103,8 @@ stdenv.mkDerivation rec {
# /var is mounted.
makeFlags = "hwdb_bin=/var/lib/udev/hwdb.bin";
enableParallelBuilding = true;
installFlags =
[ "localstatedir=$(TMPDIR)/var"
"sysconfdir=$(out)/etc"
@ -112,9 +115,9 @@ stdenv.mkDerivation rec {
# Get rid of configuration-specific data.
postInstall =
''
mkdir -p $out/example/systemd
mv $out/lib/{modules-load.d,binfmt.d,sysctl.d,tmpfiles.d} $out/example
mv $out/lib/systemd/{system,user} $out/example/systemd
mkdir -p $doc/example/systemd
mv $doc/lib/{modules-load.d,binfmt.d,sysctl.d,tmpfiles.d} $doc/example
mv $doc/lib/systemd/{system,user} $doc/example/systemd
rm -rf $out/etc/systemd/system
@ -143,7 +146,12 @@ stdenv.mkDerivation rec {
done
''; # */
enableParallelBuilding = true;
postPhases = "postPostFixup";
postPostFixup = ''
ls -l "$dev"/nix-support/
echo -n " $libudev" >> "$dev"/nix-support/propagated-*build-inputs
'';
# The interface version prevents NixOS from switching to an
# incompatible systemd at runtime. (Switching across reboots is

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, zlib, ncurses ? null, perl ? null, pam }:
stdenv.mkDerivation rec {
name = "util-linux-2.24.2";
name = "util-linux-2.25";
src = fetchurl {
url = "http://www.kernel.org/pub/linux/utils/util-linux/v2.24/${name}.tar.xz";
sha256 = "1w0g8q5aj5pjdf8l52g0mxyvlk62f4dch51q9jm3hnqwgz0dchqj";
url = "http://www.kernel.org/pub/linux/utils/util-linux/v2.25/${name}.tar.xz";
sha256 = "02lqww6ck4p47wzc883zdjb1gnwm59hsay4hd5i55mfdv25mmfj7";
};
outputs = [ "dev" "out" "bin" ];
outputs = [ "dev" "out" "bin" ]; # ToDo: problems with e2fsprogs
crossAttrs = {
# Work around use of `AC_RUN_IFELSE'.
@ -37,13 +37,17 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional (perl != null) perl;
postInstall = ''
rm $out/bin/su # su should be supplied by the su package (shadow)
sed "s,$out$out,$out,g" -i "$dev"/lib/pkgconfig/*.pc
rm "$bin/bin/su" # su should be supplied by the su package (shadow)
'';
enableParallelBuilding = true;
meta = {
meta = with stdenv.lib; {
homepage = http://www.kernel.org/pub/linux/utils/util-linux/;
description = "A set of system utilities for Linux";
license = licenses.gpl2; # also contains parts under more permissive licenses
platforms = platforms.all;
};
}

View File

@ -1,14 +1,16 @@
{ stdenv, fetchurl, pkgconfig, libuuid }:
{ stdenv, fetchurl, autoreconfHook, gettext, pkgconfig, libuuid }:
stdenv.mkDerivation rec {
name = "e2fsprogs-1.42.9";
name = "e2fsprogs-1.42.12";
src = fetchurl {
url = "mirror://sourceforge/e2fsprogs/${name}.tar.gz";
sha256 = "00i83w22sbyq849as9vmaf2xcx1d06npvriyv8m0z81gx43ar4ig";
sha256 = "0v0qcfyls0dlrjy8gx9m3s2wbkp5z3lbsr5hb7x8kp8f3bclcy71";
};
buildInputs = [ pkgconfig libuuid ];
outputs = [ "dev" "out" "bin" "man" ];
buildInputs = [ pkgconfig /*libuuid*/ ];
crossAttrs = {
preConfigure = ''
@ -17,7 +19,8 @@ stdenv.mkDerivation rec {
};
# libuuid, libblkid, uuidd and fsck are in util-linux-ng (the "libuuid" dependency).
configureFlags = "--enable-elf-shlibs --disable-libuuid --disable-libblkid --disable-uuidd --disable-fsck --enable-symlink-install";
# ToDo: failed with shared uuid and blkid
configureFlags = "--enable-elf-shlibs --disable-fsck --enable-symlink-install";
enableParallelBuilding = true;

View File

@ -7221,7 +7221,7 @@ let
});
})
else if stdenv.isLinux
then utillinux
then e2fsprogs
else null;
e3cfsprogs = callPackage ../os-specific/linux/e3cfsprogs { };
@ -7808,7 +7808,7 @@ let
udev145 = callPackage ../os-specific/linux/udev/145.nix { };
udev = pkgs.systemd.libudev;
udev = pkgs.systemd; # headers are not in the libudev output
udisks1 = callPackage ../os-specific/linux/udisks/1-default.nix { };
udisks2 = callPackage ../os-specific/linux/udisks/2-default.nix { };