diff options
-rw-r--r-- | nixos/tests/printing.nix | 12 | ||||
-rw-r--r-- | pkgs/applications/graphics/feh/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/libraries/leatherman/default.nix | 24 | ||||
-rw-r--r-- | pkgs/development/ruby-modules/gem-config/default.nix | 4 | ||||
-rw-r--r-- | pkgs/misc/emulators/wine/base.nix | 7 | ||||
-rw-r--r-- | pkgs/os-specific/linux/apparmor/2.9/default.nix | 183 | ||||
-rw-r--r-- | pkgs/os-specific/linux/apparmor/default.nix | 67 | ||||
-rw-r--r-- | pkgs/tools/system/facter/default.nix | 8 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 4 |
9 files changed, 81 insertions, 232 deletions
diff --git a/nixos/tests/printing.nix b/nixos/tests/printing.nix index 10d69b446cd7..adbef228c2f5 100644 --- a/nixos/tests/printing.nix +++ b/nixos/tests/printing.nix @@ -40,9 +40,9 @@ import ./make-test.nix ({pkgs, ... }: { $client->sleep(10); # wait until cups is fully initialized $client->succeed("lpstat -r") =~ /scheduler is running/ or die; $client->succeed("lpstat -H") =~ "/var/run/cups/cups.sock" or die; - $client->succeed("curl --fail http://localhost:631/"); - $client->succeed("curl --fail http://server:631/"); - $server->fail("curl --fail --connect-timeout 2 http://client:631/"); + $client->succeed("curl http://localhost:631/"); + $client->succeed("curl http://server:631/"); + $server->fail("curl --connect-timeout 2 http://client:631/"); # Add a HP Deskjet printer connected via USB to the server. $server->succeed("lpadmin -p DeskjetLocal -E -v usb://foobar/printers/foobar"); @@ -60,10 +60,10 @@ import ./make-test.nix ({pkgs, ... }: { $client->succeed("lpq") =~ /DeskjetRemote is ready.*no entries/s or die; # Test printing various file types. - foreach my $file ("${pkgs.groff.doc}/share/doc/*/examples/mom/penguin.pdf", - "${pkgs.groff.doc}/share/doc/*/meref.ps", + foreach my $file ("${pkgs.groff.doc}/share/doc/examples/mom/penguin.pdf", + "${pkgs.groff.doc}/share/doc/meref.ps", "${pkgs.cups}/share/doc/cups/images/cups.png", - "${pkgs.pcre.doc}/share/doc/pcre/pcre.txt") + "${pkgs.pcre.doc}/share/doc/pcre.txt") { $file =~ /([^\/]*)$/; my $fn = $1; diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix index 39132bb9b6f8..43aa8bfa1f58 100644 --- a/pkgs/applications/graphics/feh/default.nix +++ b/pkgs/applications/graphics/feh/default.nix @@ -2,11 +2,11 @@ , libXinerama, curl, libexif }: stdenv.mkDerivation rec { - name = "feh-2.14"; + name = "feh-2.15.2"; src = fetchurl { url = "http://feh.finalrewind.org/${name}.tar.bz2"; - sha256 = "0j5wxpqccnd0hl74z2vwv25n7qnik1n2mcm2jn0c0z7cjn4wsa9q"; + sha256 = "0bnfk50y2l5zkr292l4yyws1m7ibdmr398vxj7c0djh965frpj1q"; }; outputs = [ "out" "doc" ]; diff --git a/pkgs/development/libraries/leatherman/default.nix b/pkgs/development/libraries/leatherman/default.nix new file mode 100644 index 000000000000..60205d7a856b --- /dev/null +++ b/pkgs/development/libraries/leatherman/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchFromGitHub, boost, cmake, curl }: + +stdenv.mkDerivation rec { + name = "leatherman-${version}"; + version = "0.4.2"; + + src = fetchFromGitHub { + sha256 = "07bgv99lzzhxy4l7mdyassxqy33zv7arvfw63bymsqavppphqlrr"; + rev = version; + repo = "leatherman"; + owner = "puppetlabs"; + }; + + buildInputs = [ boost cmake curl ]; + + meta = with stdenv.lib; { + homepage = https://github.com/puppetlabs/leatherman/; + description = "A collection of C++ and CMake utility libraries"; + license = licenses.asl20; + maintainers = [ maintainers.womfoo ]; + platforms = platforms.linux; + }; + +} diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix index 24699ad69040..5544a7f88b40 100644 --- a/pkgs/development/ruby-modules/gem-config/default.nix +++ b/pkgs/development/ruby-modules/gem-config/default.nix @@ -21,7 +21,7 @@ , libiconv, postgresql, v8_3_16_14, clang, sqlite, zlib, imagemagick , pkgconfig , ncurses, xapian, gpgme, utillinux, fetchpatch, tzdata, icu, libffi , cmake, libssh2, openssl, mysql, darwin, git, perl, gecode_3, curl -, libmsgpack, qt5Full +, libmsgpack, qt48 }: let @@ -30,7 +30,7 @@ in { capybara-webkit = attrs: { - buildInputs = [ qt5Full ]; + buildInputs = [ qt48 ]; }; charlock_holmes = attrs: { diff --git a/pkgs/misc/emulators/wine/base.nix b/pkgs/misc/emulators/wine/base.nix index 2af403c4deaf..804eb0bb304c 100644 --- a/pkgs/misc/emulators/wine/base.nix +++ b/pkgs/misc/emulators/wine/base.nix @@ -41,6 +41,13 @@ stdenv.mkDerivation ((lib.optionalAttrs (! isNull buildScript) { # elements specified above. dontPatchELF = true; + # Disable stripping to avoid breaking placeholder DLLs/EXEs. + # Symptoms of broken placeholders are: when the wineprefix is created + # drive_c/windows/system32 will only contain a few files instead of + # hundreds, there will be an error about winemenubuilder and MountMgr + # on startup of Wine, and the Drives tab in winecfg will show an error. + dontStrip = true; + ## FIXME # Add capability to ignore known failing tests # and enable doCheck diff --git a/pkgs/os-specific/linux/apparmor/2.9/default.nix b/pkgs/os-specific/linux/apparmor/2.9/default.nix deleted file mode 100644 index 5e8ccc756918..000000000000 --- a/pkgs/os-specific/linux/apparmor/2.9/default.nix +++ /dev/null @@ -1,183 +0,0 @@ -{ stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, perl, which -, glibc, flex, bison, python27, swig, dbus, pam -}: - -let - apparmor-series = "2.9"; - apparmor-patchver = "2"; - apparmor-version = "${apparmor-series}.${apparmor-patchver}"; - - apparmor-meta = component: with stdenv.lib; { - homepage = http://apparmor.net/; - description = "Linux application security system - ${component}"; - license = licenses.gpl2; - maintainers = with maintainers; [ phreedom thoughtpolice joachifm ]; - platforms = platforms.linux; - }; - - apparmor-sources = fetchurl { - url = "https://launchpad.net/apparmor/${apparmor-series}/${apparmor-version}/+download/apparmor-${apparmor-version}.tar.gz"; - sha256 = "1mayly7d7w959fya7z8q6kab2x3jcwhqhkpx36jsvpjhxkhmc4fh"; - }; - - prePatchCommon = '' - substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2man" "${perl}/bin/pod2man" - substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2html" "${perl}/bin/pod2html" - substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${glibc.dev}/include/linux/capability.h" - substituteInPlace ./common/Make.rules --replace "/usr/share/man" "share/man" - ''; - - libapparmor = stdenv.mkDerivation { - name = "libapparmor-${apparmor-version}"; - src = apparmor-sources; - - buildInputs = [ - autoconf - automake - bison - flex - dbus # requires patch to dbus ... - glibc - libtool - perl - pkgconfig - python27 - swig - which - ]; - - prePatch = prePatchCommon + '' - substituteInPlace ./libraries/libapparmor/src/Makefile.am --replace "/usr/include/netinet/in.h" "${glibc.dev}/include/netinet/in.h" - substituteInPlace ./libraries/libapparmor/src/Makefile.in --replace "/usr/include/netinet/in.h" "${glibc.dev}/include/netinet/in.h" - ''; - - buildPhase = '' - cd ./libraries/libapparmor - ./autogen.sh - ./configure --prefix="$out" --with-python --with-perl - make - ''; - - installPhase = '' - make install - ''; - - meta = apparmor-meta "library"; - }; - - apparmor-utils = stdenv.mkDerivation { - name = "apparmor-utils-${apparmor-version}"; - src = apparmor-sources; - - buildInputs = [ - python27 - libapparmor - which - ]; - - prePatch = prePatchCommon; - - buildPhase = '' - cd ./utils - make LANGS="" - ''; - - installPhase = '' - make install LANGS="" DESTDIR="$out" BINDIR="$out/bin" VIM_INSTALL_PATH="$out/share" PYPREFIX="" - ''; - - meta = apparmor-meta "user-land utilities"; - }; - - apparmor-parser = stdenv.mkDerivation { - name = "apparmor-parser-${apparmor-version}"; - src = apparmor-sources; - - buildInputs = [ - libapparmor - bison - flex - which - ]; - - prePatch = prePatchCommon + '' - substituteInPlace ./parser/Makefile --replace "/usr/bin/bison" "${bison}/bin/bison" - substituteInPlace ./parser/Makefile --replace "/usr/bin/flex" "${flex}/bin/flex" - substituteInPlace ./parser/Makefile --replace "/usr/include/linux/capability.h" "${glibc.dev}/include/linux/capability.h" - ## techdoc.pdf still doesn't build ... - substituteInPlace ./parser/Makefile --replace "manpages htmlmanpages pdf" "manpages htmlmanpages" - ''; - - buildPhase = '' - cd ./parser - make LANGS="" USE_SYSTEM=1 INCLUDEDIR=${libapparmor}/include - ''; - - installPhase = '' - make install LANGS="" USE_SYSTEM=1 INCLUDEDIR=${libapparmor}/include DESTDIR="$out" DISTRO="unknown" - ''; - - meta = apparmor-meta "rule parser"; - }; - - apparmor-pam = stdenv.mkDerivation { - name = "apparmor-pam-${apparmor-version}"; - src = apparmor-sources; - - buildInputs = [ - libapparmor - pam - pkgconfig - which - ]; - - buildPhase = '' - cd ./changehat/pam_apparmor - make USE_SYSTEM=1 - ''; - - installPhase = '' - make install DESTDIR="$out" - ''; - - meta = apparmor-meta "PAM service"; - }; - - apparmor-profiles = stdenv.mkDerivation { - name = "apparmor-profiles-${apparmor-version}"; - src = apparmor-sources; - - buildInputs = [ which ]; - - buildPhase = '' - cd ./profiles - make - ''; - - installPhase = '' - make install DESTDIR="$out" EXTRAS_DEST="$out/share/apparmor/extra-profiles" - ''; - - meta = apparmor-meta "profiles"; - }; - - apparmor-kernel-patches = stdenv.mkDerivation { - name = "apparmor-kernel-patches-${apparmor-version}"; - src = apparmor-sources; - - phases = ''unpackPhase installPhase''; - - installPhase = '' - mkdir "$out" - cp -R ./kernel-patches "$out" - ''; - - meta = apparmor-meta "kernel patches"; - }; - -in - -{ - inherit libapparmor apparmor-utils apparmor-parser apparmor-pam - apparmor-profiles apparmor-kernel-patches; -} diff --git a/pkgs/os-specific/linux/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix index 49fdbab24caa..f90601073406 100644 --- a/pkgs/os-specific/linux/apparmor/default.nix +++ b/pkgs/os-specific/linux/apparmor/default.nix @@ -1,5 +1,11 @@ -{ stdenv, fetchurl, makeWrapper, autoconf, autoreconfHook, automake, libtool, pkgconfig, perl, which -, glibc, flex, bison, python27Packages, swig, pam +{ stdenv, fetchurl, makeWrapper, autoreconfHook +, pkgconfig, which +, flex, bison +, linuxHeaders ? stdenv.cc.libc.linuxHeaders +, pythonPackages +, perl +, swig +, pam }: let @@ -8,7 +14,7 @@ let apparmor-meta = component: with stdenv.lib; { homepage = http://apparmor.net/; - description = "Linux application security system - ${component}"; + description = "A mandatory access control system - ${component}"; license = licenses.gpl2; maintainers = with maintainers; [ phreedom thoughtpolice joachifm ]; platforms = platforms.linux; @@ -22,7 +28,7 @@ let prePatchCommon = '' substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2man" "${perl}/bin/pod2man" substituteInPlace ./common/Make.rules --replace "/usr/bin/pod2html" "${perl}/bin/pod2html" - substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${glibc.dev}/include/linux/capability.h" + substituteInPlace ./common/Make.rules --replace "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h" substituteInPlace ./common/Make.rules --replace "/usr/share/man" "share/man" ''; @@ -30,28 +36,27 @@ let name = "libapparmor-${apparmor-version}"; src = apparmor-sources; - buildInputs = [ - autoconf - automake + nativeBuildInputs = [ autoreconfHook bison flex - glibc - libtool - perl pkgconfig - python27Packages.python swig which ]; + buildInputs = [ + perl + pythonPackages.python + ]; + # required to build apparmor-parser dontDisableStatic = true; prePatch = prePatchCommon + '' - substituteInPlace ./libraries/libapparmor/src/Makefile.am --replace "/usr/include/netinet/in.h" "${glibc.dev}/include/netinet/in.h" - substituteInPlace ./libraries/libapparmor/src/Makefile.in --replace "/usr/include/netinet/in.h" "${glibc.dev}/include/netinet/in.h" - ''; + substituteInPlace ./libraries/libapparmor/src/Makefile.am --replace "/usr/include/netinet/in.h" "${stdenv.cc.libc.dev}/include/netinet/in.h" + substituteInPlace ./libraries/libapparmor/src/Makefile.in --replace "/usr/include/netinet/in.h" "${stdenv.cc.libc.dev}/include/netinet/in.h" + ''; postPatch = "cd ./libraries/libapparmor"; configureFlags = "--with-python --with-perl"; @@ -63,13 +68,13 @@ let name = "apparmor-utils-${apparmor-version}"; src = apparmor-sources; + nativeBuildInputs = [ makeWrapper which ]; + buildInputs = [ perl - python27Packages.python - python27Packages.readline + pythonPackages.python + pythonPackages.readline libapparmor - makeWrapper - which ]; prePatch = prePatchCommon; @@ -79,7 +84,7 @@ let postInstall = '' for prog in aa-audit aa-autodep aa-cleanprof aa-complain aa-disable aa-enforce aa-genprof aa-logprof aa-mergeprof aa-status aa-unconfined ; do - wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${python27Packages.python.libPrefix}/site-packages:$PYTHONPATH" + wrapProgram $out/bin/$prog --prefix PYTHONPATH : "$out/lib/${pythonPackages.python.libPrefix}/site-packages:$PYTHONPATH" done for prog in aa-exec aa-notify ; do @@ -94,17 +99,14 @@ let name = "apparmor-parser-${apparmor-version}"; src = apparmor-sources; - buildInputs = [ - libapparmor - bison - flex - which - ]; + nativeBuildInputs = [ bison flex which ]; + + buildInputs = [ libapparmor ]; prePatch = prePatchCommon + '' substituteInPlace ./parser/Makefile --replace "/usr/bin/bison" "${bison}/bin/bison" substituteInPlace ./parser/Makefile --replace "/usr/bin/flex" "${flex}/bin/flex" - substituteInPlace ./parser/Makefile --replace "/usr/include/linux/capability.h" "${glibc.dev}/include/linux/capability.h" + substituteInPlace ./parser/Makefile --replace "/usr/include/linux/capability.h" "${linuxHeaders}/include/linux/capability.h" ## techdoc.pdf still doesn't build ... substituteInPlace ./parser/Makefile --replace "manpages htmlmanpages pdf" "manpages htmlmanpages" ''; @@ -119,12 +121,9 @@ let name = "apparmor-pam-${apparmor-version}"; src = apparmor-sources; - buildInputs = [ - libapparmor - pam - pkgconfig - which - ]; + nativeBuildInputs = [ pkgconfig which ]; + + buildInputs = [ libapparmor pam ]; postPatch = "cd ./changehat/pam_apparmor"; makeFlags = ''USE_SYSTEM=1''; @@ -137,7 +136,7 @@ let name = "apparmor-profiles-${apparmor-version}"; src = apparmor-sources; - buildInputs = [ which ]; + nativeBuildInputs = [ which ]; postPatch = "cd ./profiles"; installFlags = ''DESTDIR=$(out) EXTRAS_DEST=$(out)/share/apparmor/extra-profiles''; @@ -153,7 +152,7 @@ let installPhase = '' mkdir "$out" - cp -R ./kernel-patches "$out" + cp -R ./kernel-patches/* "$out" ''; meta = apparmor-meta "kernel patches"; diff --git a/pkgs/tools/system/facter/default.nix b/pkgs/tools/system/facter/default.nix index c0328636536c..a90000dde87e 100644 --- a/pkgs/tools/system/facter/default.nix +++ b/pkgs/tools/system/facter/default.nix @@ -1,16 +1,16 @@ -{ stdenv, fetchurl, boost, cmake, curl, libyamlcpp, openssl, utillinux }: +{ stdenv, fetchurl, boost, cmake, curl, leatherman, libyamlcpp, openssl, utillinux }: stdenv.mkDerivation rec { name = "facter-${version}"; - version = "3.1.3"; + version = "3.1.5"; src = fetchurl { url = "https://downloads.puppetlabs.com/facter/${name}.tar.gz"; - sha256 = "1ngp3xjdh6x1w7lsi4lji2xzqp0x950jngcdlq11lcr0wfnzwyxj"; + sha256 = "0k2k92y42zb6vf542zwkhvg15kv32yb4zvw6nlcqlgmyg19c5qmv"; }; libyamlcpp_ = libyamlcpp.override { makePIC = true; }; - buildInputs = [ boost cmake curl libyamlcpp_ openssl utillinux ]; + buildInputs = [ boost cmake curl leatherman libyamlcpp_ openssl utillinux ]; meta = with stdenv.lib; { homepage = https://github.com/puppetlabs/facter; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fec7abe7dd48..049f4f39b837 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2195,6 +2195,8 @@ in leafpad = callPackage ../applications/editors/leafpad { }; + leatherman = callPackage ../development/libraries/leatherman {}; + leela = callPackage ../tools/graphics/leela { }; lftp = callPackage ../tools/networking/lftp { }; @@ -10110,7 +10112,7 @@ in microcodeIntel = callPackage ../os-specific/linux/microcode/intel.nix { }; - inherit (callPackages ../os-specific/linux/apparmor { swig = swig2; }) + inherit (callPackages ../os-specific/linux/apparmor { pythonPackages = python27Packages; swig = swig2; }) libapparmor apparmor-pam apparmor-parser apparmor-profiles apparmor-utils; atop = callPackage ../os-specific/linux/atop { }; |