about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/package-management/packagekit
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:36 +0000
committerAlyssa Ross <hi@alyssa.is>2019-01-07 02:18:47 +0000
commit36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2 (patch)
treeb3faaf573407b32aa645237a4d16b82778a39a92 /nixpkgs/pkgs/tools/package-management/packagekit
parent4e31070265257dc67d120c27e0f75c2344fdfa9a (diff)
parentabf060725d7614bd3b9f96764262dfbc2f9c2199 (diff)
downloadnixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.gz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.bz2
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.lz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.xz
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.tar.zst
nixlib-36f56d99fa0a0765c9f1de4a5f17a9b05830c3f2.zip
Add 'nixpkgs/' from commit 'abf060725d7614bd3b9f96764262dfbc2f9c2199'
git-subtree-dir: nixpkgs
git-subtree-mainline: 4e31070265257dc67d120c27e0f75c2344fdfa9a
git-subtree-split: abf060725d7614bd3b9f96764262dfbc2f9c2199
Diffstat (limited to 'nixpkgs/pkgs/tools/package-management/packagekit')
-rw-r--r--nixpkgs/pkgs/tools/package-management/packagekit/default.nix73
-rw-r--r--nixpkgs/pkgs/tools/package-management/packagekit/qt.nix24
2 files changed, 97 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/package-management/packagekit/default.nix b/nixpkgs/pkgs/tools/package-management/packagekit/default.nix
new file mode 100644
index 000000000000..5b7872200402
--- /dev/null
+++ b/nixpkgs/pkgs/tools/package-management/packagekit/default.nix
@@ -0,0 +1,73 @@
+{ stdenv, fetchFromGitHub, lib
+, intltool, glib, pkgconfig, polkit, python, sqlite
+, gobject-introspection, vala_0_38, gtk-doc, autoreconfHook, autoconf-archive
+# TODO: set enableNixBackend to true, as soon as it builds
+, nix, enableNixBackend ? false, boost
+, enableCommandNotFound ? false
+, enableBashCompletion ? false, bash-completion ? null
+, enableSystemd ? stdenv.isLinux, systemd }:
+
+stdenv.mkDerivation rec {
+  name = "packagekit-${version}";
+  version = "1.1.12";
+
+  outputs = [ "out" "dev" ];
+
+  src = fetchFromGitHub {
+    owner = "hughsie";
+    repo = "PackageKit";
+    rev = "PACKAGEKIT_${lib.replaceStrings ["."] ["_"] version}";
+    sha256 = "02wq3jw3mkdld90irh5vdfd5bri2g1p89mhrmj56kvif1fqak46x";
+  };
+
+  buildInputs = [ glib polkit python gobject-introspection vala_0_38 ]
+                  ++ lib.optional enableSystemd systemd
+                  ++ lib.optional enableBashCompletion bash-completion;
+  propagatedBuildInputs = [ sqlite nix boost ];
+  nativeBuildInputs = [ intltool pkgconfig autoreconfHook autoconf-archive gtk-doc ];
+
+  preAutoreconf = ''
+    gtkdocize
+    intltoolize
+  '';
+
+  configureFlags = [
+    (if enableSystemd then "--enable-systemd" else "--disable-systemd")
+    "--disable-dummy"
+    "--disable-cron"
+    "--enable-introspection"
+    "--disable-offline-update"
+    "--localstatedir=/var"
+    "--sysconfdir=/etc"
+    "--with-dbus-sys=$(out)/etc/dbus-1/system.d"
+    "--with-systemdsystemunitdir=$(out)/lib/systemd/system/"
+  ]
+  ++ lib.optional enableNixBackend "--enable-nix"
+  ++ lib.optional (!enableBashCompletion) "--disable-bash-completion"
+  ++ lib.optional (!enableCommandNotFound) "--disable-command-not-found";
+
+  enableParallelBuilding = true;
+
+  installFlags = [
+    "sysconfdir=\${out}/etc"
+    "localstatedir=\${TMPDIR}"
+  ];
+
+  meta = with lib; {
+    description = "System to facilitate installing and updating packages";
+    longDescription = ''
+      PackageKit is a system designed to make installing and updating software
+      on your computer easier. The primary design goal is to unify all the
+      software graphical tools used in different distributions, and use some of
+      the latest technology like PolicyKit. The actual nuts-and-bolts distro
+      tool (dnf, apt, etc) is used by PackageKit using compiled and scripted
+      helpers. PackageKit isn't meant to replace these tools, instead providing
+      a common set of abstractions that can be used by standard GUI and text
+      mode package managers.
+    '';
+    homepage = http://www.packagekit.org/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ matthewbauer ];
+  };
+}
diff --git a/nixpkgs/pkgs/tools/package-management/packagekit/qt.nix b/nixpkgs/pkgs/tools/package-management/packagekit/qt.nix
new file mode 100644
index 000000000000..f0f05a4c858e
--- /dev/null
+++ b/nixpkgs/pkgs/tools/package-management/packagekit/qt.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, cmake, pkgconfig
+, qttools, packagekit }:
+
+stdenv.mkDerivation rec {
+  name = "packagekit-qt-${version}";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner  = "hughsie";
+    repo   = "PackageKit-Qt";
+    rev    = "v${version}";
+    sha256 = "1ls6mn9abpwzw5wjgmslc5h9happj3516y1q67imppczk8g9h2yk";
+  };
+
+  buildInputs = [ packagekit ];
+
+  nativeBuildInputs = [ cmake pkgconfig qttools ];
+
+  enableParallelBuilding = true;
+
+  meta = packagekit.meta // {
+    description = "System to facilitate installing and updating packages - Qt";
+  };
+}