1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-12-03 19:15:39 +00:00
nixpkgs/pkgs/os-specific/linux/usbguard/default.nix
Ivan Kozik f2ea454617 usbguard-nox: init at 0.7.4
This is just usbguard without the Qt GUI that brings in Qt dependencies.

Remove pandoc to reduce closure size. The usbguard build appears to
use it only for spell checking.

Remove asciidoctor because 0.7.1 switched to asciidoc. But don't add
a dependency on asciidoc, because that causes the build fails on
external DTDs.
2019-06-20 13:49:47 +00:00

66 lines
1.5 KiB
Nix

{
stdenv, fetchurl, lib,
pkgconfig, libxml2, libxslt,
dbus-glib, libcap_ng, libqb, libseccomp, polkit, protobuf, audit,
withGui ? true,
qtbase ? null,
qttools ? null,
qtsvg ? null,
libgcrypt ? null,
libsodium ? null
}:
with stdenv.lib;
assert libgcrypt != null -> libsodium == null;
stdenv.mkDerivation rec {
version = "0.7.4";
name = "usbguard-${version}";
repo = "https://github.com/USBGuard/usbguard";
src = fetchurl {
url = "${repo}/releases/download/${name}/${name}.tar.gz";
sha256 = "1qkskd6q5cwlh2cpcsbzmmmgk6w63z0825wlb2sjwqq3kfgwjb3k";
};
nativeBuildInputs = [
pkgconfig
libxslt # xsltproc
libxml2 # xmllint
];
buildInputs = [
dbus-glib
libcap_ng
libqb
libseccomp
polkit
protobuf
audit
]
++ (lib.optional (libgcrypt != null) libgcrypt)
++ (lib.optional (libsodium != null) libsodium)
++ (lib.optionals withGui [ qtbase qtsvg qttools ]);
configureFlags = [
"--with-bundled-catch"
"--with-bundled-pegtl"
"--with-dbus"
"--with-polkit"
]
++ (lib.optional (libgcrypt != null) "--with-crypto-library=gcrypt")
++ (lib.optional (libsodium != null) "--with-crypto-library=sodium")
++ (lib.optional withGui "--with-gui-qt=qt5");
enableParallelBuilding = true;
meta = {
description = "The USBGuard software framework helps to protect your computer against BadUSB.";
homepage = "https://usbguard.github.io/";
license = licenses.gpl2;
maintainers = [ maintainers.tnias ];
};
}