summary refs log tree commit diff
diff options
context:
space:
mode:
authorDan Peebles <pumpkin@me.com>2016-10-12 18:56:10 +0000
committerDan Peebles <pumpkin@me.com>2016-10-12 20:31:02 +0000
commitf35ab9c2f814e88986ce8ed2b21728d96e71b784 (patch)
treecb75e4e432b78e92c621c0e73e3ea2686ca79001
parent1371499530aa99f2568c4dd350eb815fa653501a (diff)
downloadnixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.tar
nixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.tar.gz
nixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.tar.bz2
nixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.tar.lz
nixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.tar.xz
nixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.tar.zst
nixpkgs-f35ab9c2f814e88986ce8ed2b21728d96e71b784.zip
rpm-ostree: 2016.1 -> 2016.10
This also updates a bunch of its dependencies to enable the update,
and gets rid of libhif because upstream stopped maintaining it as
such, instead using it internally in other projects until they can
agree on an interface for it. Nothing seemed to be using libhif so
I'm not too concerned about removing it.
-rw-r--r--pkgs/development/libraries/libsolv/default.nix4
-rw-r--r--pkgs/tools/misc/ostree/default.nix17
-rw-r--r--pkgs/tools/misc/rpm-ostree/default.nix49
-rw-r--r--pkgs/tools/package-management/libhif/default.nix36
-rw-r--r--pkgs/top-level/all-packages.nix2
5 files changed, 49 insertions, 59 deletions
diff --git a/pkgs/development/libraries/libsolv/default.nix b/pkgs/development/libraries/libsolv/default.nix
index cece520e3c5..480891e98af 100644
--- a/pkgs/development/libraries/libsolv/default.nix
+++ b/pkgs/development/libraries/libsolv/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, zlib, expat, rpm, db }:
 
 stdenv.mkDerivation rec {
-  rev  = "0.6.20";
+  rev  = "0.6.23";
   name = "libsolv-${rev}";
 
   src = fetchFromGitHub {
     inherit rev;
     owner  = "openSUSE";
     repo   = "libsolv";
-    sha256 = "1gammarbnjbbkw2vlgcj9ynp1kgi5nns6xcl6ab8b5i4zgq91v2p";
+    sha256 = "08ba7yx0br421lk6zf5mp0yl6nznkmc2vbka20qwm2lx5f0a25xg";
   };
 
   cmakeFlags = "-DENABLE_RPMMD=true -DENABLE_RPMDB=true -DENABLE_PUBKEY=true -DENABLE_RPMDB_BYRPMHEADER=true";
diff --git a/pkgs/tools/misc/ostree/default.nix b/pkgs/tools/misc/ostree/default.nix
index 7d9d5545f40..4655331dbc1 100644
--- a/pkgs/tools/misc/ostree/default.nix
+++ b/pkgs/tools/misc/ostree/default.nix
@@ -7,8 +7,8 @@ let
   libglnx-src = fetchFromGitHub {
     owner  = "GNOME";
     repo   = "libglnx";
-    rev    = "769522753c25537e520adc322fa62e5390272add";
-    sha256 = "0gfc8dl63xpmf73dwb1plj7cymq7z6w6wq5m06yx8jymwhq7x1l8";
+    rev    = "36396b49ad6636c9959f3dfac5e04d41584b1a92";
+    sha256 = "146flrpzybm2s12wg05rnglnfd2f2jx3xzvns2pq28kvg09bgcfn";
   };
 
   bsdiff-src = fetchFromGitHub {
@@ -17,15 +17,16 @@ let
     rev    = "1edf9f656850c0c64dae260960fabd8249ea9c60";
     sha256 = "1h71d2h2d3anp4msvpaff445rnzdxii3id2yglqk7af9i43kdsn1";
   };
-in stdenv.mkDerivation rec {
-  rev = "v2016.5";
-  name = "ostree-${rev}";
+
+  version = "2016.11";
+in stdenv.mkDerivation {
+  name = "ostree-${version}";
 
   src = fetchFromGitHub {
-    inherit rev;
+    rev    = "v${version}";
     owner  = "ostreedev";
     repo   = "ostree";
-    sha256 = "1dfyhzgv94ldjv2l4jxf4xhks2z5ljljqa3k579qskds755n6kvg";
+    sha256 = "19xmg01mxdykx74r9ra11hc15qd1fjqbxdn23jrn2pcvz8dw9zgc";
   };
 
   nativeBuildInputs = [
@@ -43,6 +44,8 @@ in stdenv.mkDerivation rec {
 
   preConfigure = ''
     env NOCONFIGURE=1 ./autogen.sh
+
+    configureFlags+="--with-systemdsystemunitdir=$out/lib/systemd/system"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/rpm-ostree/default.nix b/pkgs/tools/misc/rpm-ostree/default.nix
index f96e70650b7..3e2953c5733 100644
--- a/pkgs/tools/misc/rpm-ostree/default.nix
+++ b/pkgs/tools/misc/rpm-ostree/default.nix
@@ -1,35 +1,60 @@
 { stdenv, fetchFromGitHub, ostree, rpm, which, autoconf, automake, libtool, pkgconfig,
-  libcap, glib, libgsystem, json_glib, libarchive, libhif, librepo, gtk_doc, elfutils,
-  libxslt, docbook_xsl, docbook_xml_dtd_42, acl }:
+  libcap, glib, libgsystem, json_glib, libarchive, libsolv, librepo, gtk_doc, elfutils,
+  gperf, cmake, pcre, check, python, libxslt, docbook_xsl, docbook_xml_dtd_42, acl }:
 
 let
   libglnx-src = fetchFromGitHub {
     owner  = "GNOME";
     repo   = "libglnx";
-    rev    = "85c9dd5c073a8c0d74c4baa2e4a94f5535984e62";
-    sha256 = "08m8wxlkymwq5hsc26k7ndwiqiw1ggaaxyi2qfhqznasgbp4g623";
+    rev    = "4ae5e3beaaa674abfabf7404ab6fafcc4ec547db";
+    sha256 = "1npb9zbyb4bl0nxqf0pcqankcwzs3k1x8i2wkdwhgak4qcvxvfqn";
   };
-in stdenv.mkDerivation rec {
-  rev  = "v2016.1";
-  name = "rpm-ostree";
+
+  libdnf-src = fetchFromGitHub {
+    owner  = "rpm-software-management";
+    repo   = "libhif";
+    rev    = "b69552b3b3a42fd41698a925d5f5f623667bac63";
+    sha256 = "0h6k09rb4imzbmsn7mspwl0js2awqdpb4ysdqq550vw2nr0dzszr";
+  };
+
+  version = "2016.10";
+in stdenv.mkDerivation {
+  name = "rpm-ostree-${version}";
 
   src = fetchFromGitHub {
-    inherit rev;
+    rev    = "v${version}";
     owner  = "projectatomic";
     repo   = "rpm-ostree";
-    sha256 = "19jvnmy9zinx0j5nvy3h5abfv9d988kvyza09gljx16gll8qkbbf";
+    sha256 = "0a0wwklzk1kvk3bbxxfvxgk4ck5dn7a7v32shqidb674fr2d5pvb";
   };
 
   buildInputs = [
-    which autoconf automake pkgconfig libtool libcap ostree rpm glib libgsystem
-    json_glib libarchive libhif librepo gtk_doc libxslt docbook_xsl docbook_xml_dtd_42
+    which autoconf automake pkgconfig libtool libcap ostree rpm glib libgsystem gperf
+    json_glib libarchive libsolv librepo gtk_doc libxslt docbook_xsl docbook_xml_dtd_42
+    cmake pcre check python
     # FIXME: get rid of this once libarchive properly propagates this
     acl
   ];
 
+  dontUseCmakeConfigure = true;
+
   prePatch = ''
-    rmdir libglnx
+    rmdir libglnx libdnf
     cp --no-preserve=mode -r ${libglnx-src} libglnx
+    cp --no-preserve=mode -r ${libdnf-src} libdnf
+
+    # According to #cmake on freenode, libdnf should bundle the FindLibSolv.cmake module
+    cp ${libsolv}/share/cmake/Modules/FindLibSolv.cmake libdnf/cmake/modules/
+
+    # See https://github.com/projectatomic/rpm-ostree/issues/480
+    substituteInPlace src/libpriv/rpmostree-unpacker.c --replace 'include <selinux/selinux.h>' ""
+
+    # libdnf normally wants sphinx to build its hawkey manpages, but we don't care about those manpages since we don't use hawkey
+    substituteInPlace configure.ac --replace 'cmake \' 'cmake -DWITH_MAN=off \'
+
+    # Let's not hardcode the rpm-gpg path...
+    substituteInPlace libdnf/libdnf/dnf-keyring.c \
+      --replace '"/etc/pki/rpm-gpg"' 'getenv("LIBDNF_RPM_GPG_PATH_OVERRIDE") ? getenv("LIBDNF_RPM_GPG_PATH_OVERRIDE") : "/etc/pki/rpm-gpg"'
   '';
 
   preConfigure = ''
diff --git a/pkgs/tools/package-management/libhif/default.nix b/pkgs/tools/package-management/libhif/default.nix
deleted file mode 100644
index 7736c67007a..00000000000
--- a/pkgs/tools/package-management/libhif/default.nix
+++ /dev/null
@@ -1,36 +0,0 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, autoconf, automake, libtool, expat, python, sphinx, gobjectIntrospection, librepo, check, rpm, libsolv, pcre, curl, gtk_doc, zlib, xz, elfutils }:
-
-stdenv.mkDerivation rec {
-  rev  = "87e4cb247f5982fd48636691a955cc566d3110a3";
-  name = "libhif-${stdenv.lib.strings.substring 0 7 rev}";
-
-  src = fetchFromGitHub {
-    inherit rev;
-    owner  = "rpm-software-management";
-    repo   = "libhif";
-    sha256 = "1g8hrqjawzwcx1gjcnv9sxg5i8l13dab3rr3i641k5vi76vv8miq";
-  };
-
-  postPatch = ''
-    for file in python/hawkey/CMakeLists.txt python/hawkey/tests/module/CMakeLists.txt; do
-      substituteInPlace $file --replace ' ''${PYTHON_INSTALL_DIR}' " $out/${python.sitePackages}"
-    done
-
-    # Until https://github.com/rpm-software-management/libhif/issues/43 is implemented, let's not force users to have this path
-    substituteInPlace libhif/hif-keyring.c \
-      --replace '"/etc/pki/rpm-gpg"' 'getenv("LIBHIF_RPM_GPG_PATH_OVERRIDE") ? getenv("LIBHIF_RPM_GPG_PATH_OVERRIDE") : "/etc/pki/rpm-gpg"'
- '';
-
-  buildInputs = [ cmake pkgconfig pcre expat python sphinx gobjectIntrospection gtk_doc librepo check rpm curl ];
-
-  # ibhif/hif-packagedelta.h includes solv/pool.h
-  propagatedBuildInputs = [ libsolv ];
-
-  meta = with stdenv.lib; {
-    description = "A library that provides a high level package-manager. It uses librepo and hawkey under the hood.";
-    license     = licenses.lgpl2Plus;
-    platforms   = platforms.linux;
-    maintainers = with maintainers; [ copumpkin ];
-  };
-}
-
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index a668dcde876..dc4370e9eed 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7769,8 +7769,6 @@ in
 
   libharu = callPackage ../development/libraries/libharu { };
 
-  libhif = callPackage ../tools/package-management/libhif { sphinx = python27Packages.sphinx; };
-
   libhttpseverywhere = callPackage ../development/libraries/libhttpseverywhere { };
 
   libHX = callPackage ../development/libraries/libHX { };