diff options
-rw-r--r-- | pkgs/applications/misc/electrum/default.nix | 2 | ||||
-rw-r--r-- | pkgs/os-specific/linux/v4l-utils/default.nix | 18 | ||||
-rw-r--r-- | pkgs/tools/graphics/zbar/default.nix | 77 | ||||
-rw-r--r-- | pkgs/tools/security/asc-key-to-qr-code-gif/default.nix | 15 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
5 files changed, 76 insertions, 38 deletions
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix index c48d458567d..0ebeb1beffa 100644 --- a/pkgs/applications/misc/electrum/default.nix +++ b/pkgs/applications/misc/electrum/default.nix @@ -88,7 +88,7 @@ python3Packages.buildPythonApplication { --replace ${libsecp256k1_name} ${secp256k1}/lib/libsecp256k1${stdenv.hostPlatform.extensions.sharedLibrary} '' + (if enableQt then '' substituteInPlace ./electrum/qrscanner.py \ - --replace ${libzbar_name} ${zbar}/lib/libzbar${stdenv.hostPlatform.extensions.sharedLibrary} + --replace ${libzbar_name} ${zbar.lib}/lib/libzbar${stdenv.hostPlatform.extensions.sharedLibrary} '' else '' sed -i '/qdarkstyle/d' contrib/requirements/requirements.txt ''); diff --git a/pkgs/os-specific/linux/v4l-utils/default.nix b/pkgs/os-specific/linux/v4l-utils/default.nix index a688f60492a..73db222d390 100644 --- a/pkgs/os-specific/linux/v4l-utils/default.nix +++ b/pkgs/os-specific/linux/v4l-utils/default.nix @@ -19,14 +19,14 @@ in stdenv.mkDerivation rec { sha256 = "1ng0x3wj3a1ckfd00yxa4za43xms92gdp7rdag060b7p39z7m4gf"; }; - outputs = [ "out" "dev" ]; + outputs = [ "out" ] ++ lib.optional withUtils "lib" ++ [ "dev" ]; - configureFlags = - if withUtils then [ - "--with-udevdir=${placeholder "out"}/lib/udev" - ] else [ - "--disable-v4l-utils" - ]; + configureFlags = (if withUtils then [ + "--with-localedir=${placeholder "lib"}/share/locale" + "--with-udevdir=${placeholder "out"}/lib/udev" + ] else [ + "--disable-v4l-utils" + ]); postFixup = '' # Create symlink for V4l1 compatibility @@ -39,10 +39,8 @@ in stdenv.mkDerivation rec { propagatedBuildInputs = [ libjpeg ]; - NIX_CFLAGS_COMPILE = lib.optional withQt "-std=c++11"; - postPatch = '' - patchShebangs . + patchShebangs utils/cec-ctl/msg2ctl.pl ''; meta = with stdenv.lib; { diff --git a/pkgs/tools/graphics/zbar/default.nix b/pkgs/tools/graphics/zbar/default.nix index 503461018ab..cb5ea25211c 100644 --- a/pkgs/tools/graphics/zbar/default.nix +++ b/pkgs/tools/graphics/zbar/default.nix @@ -1,15 +1,28 @@ -{ stdenv, fetchFromGitHub, imagemagickBig, pkgconfig, python2Packages, perl -, libX11, libv4l, qt5, gtk2, xmlto, docbook_xsl, autoreconfHook, dbus -, enableVideo ? stdenv.isLinux, enableDbus ? stdenv.isLinux +{ stdenv +, lib +, fetchFromGitHub +, imagemagickBig +, pkgconfig +, libX11 +, libv4l +, qtbase +, qtx11extras +, wrapQtAppsHook +, gtk3 +, xmlto +, docbook_xsl +, autoreconfHook +, dbus +, enableVideo ? stdenv.isLinux +, enableDbus ? stdenv.isLinux }: -with stdenv.lib; -let - inherit (python2Packages) pygtk python; -in stdenv.mkDerivation rec { +stdenv.mkDerivation rec { pname = "zbar"; version = "0.23"; + outputs = [ "out" "lib" "dev" "doc" "man" ]; + src = fetchFromGitHub { owner = "mchehab"; repo = "zbar"; @@ -17,27 +30,49 @@ in stdenv.mkDerivation rec { sha256 = "0hlxakpyjg4q9hp7yp3har1n78341b4knwyll28hn48vykg28pza"; }; - nativeBuildInputs = [ pkgconfig xmlto autoreconfHook docbook_xsl ]; + nativeBuildInputs = [ + pkgconfig + xmlto + autoreconfHook + docbook_xsl + wrapQtAppsHook + ]; buildInputs = [ - imagemagickBig python pygtk perl libX11 - ] ++ optional enableDbus dbus - ++ optionals enableVideo [ - libv4l gtk2 qt5.qtbase qt5.qtx11extras + imagemagickBig + libX11 + ] ++ lib.optionals enableDbus [ + dbus + ] ++ lib.optionals enableVideo [ + libv4l + gtk3 + qtbase + qtx11extras ]; - configureFlags = (if enableDbus then [ - "--with-dbusconfdir=$out/etc/dbus-1/system.d" - ] else [ "--without-dbus" ]) - ++ optionals (!enableVideo) [ - "--disable-video" "--without-gtk" "--without-qt" - ]; + configureFlags = [ + "--without-python" + ] ++ (if enableDbus then [ + "--with-dbusconfdir=${placeholder "out"}/etc" + ] else [ + "--without-dbus" + ]) ++ (if enableVideo then [ + "--with-gtk=gtk3" + ] else [ + "--disable-video" + "--without-gtk" + "--without-qt" + ]); + + dontWrapQtApps = true; + dontWrapGApps = true; - postInstall = optionalString enableDbus '' - install -Dm644 dbus/org.linuxtv.Zbar.conf $out/etc/dbus-1/system.d/org.linuxtv.Zbar.conf + postFixup = lib.optionalString enableVideo '' + wrapProgram "$out/bin/zbarcam-gtk" "''${gappsWrapperArgs[@]}" + wrapQtApp "$out/bin/zbarcam-qt" ''; - meta = with stdenv.lib; { + meta = with lib; { description = "Bar code reader"; longDescription = '' ZBar is an open source software suite for reading bar codes from various diff --git a/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix b/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix index 6b3a922bbe5..580cf7585c9 100644 --- a/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix +++ b/pkgs/tools/security/asc-key-to-qr-code-gif/default.nix @@ -15,15 +15,20 @@ stdenv.mkDerivation { sha256 = "0yrc302a2fhbzryb10718ky4fymfcps3lk67ivis1qab5kbp6z8r"; }; - buildInputs = [ imagemagick qrencode ] ++ stdenv.lib.optional testQR zbar; dontBuild = true; dontStrip = true; dontPatchELF = true; - preInstall = '' - substituteInPlace asc-to-gif.sh \ - --replace "convert" "${imagemagick}/bin/convert" \ - --replace "qrencode" "${qrencode.bin}/bin/qrencode" + preInstall = let + substitutions = [ + ''--replace "convert" "${imagemagick}/bin/convert"'' + ''--replace "qrencode" "${qrencode.bin}/bin/qrencode"'' + ] ++ stdenv.lib.optional testQR [ + ''--replace "hash zbarimg" "true"'' # hash does not work on NixOS + ''--replace "$(zbarimg --raw" "$(${zbar.out}/bin/zbarimg --raw"'' + ]; + in '' + substituteInPlace asc-to-gif.sh ${stdenv.lib.concatStringsSep " " substitutions} ''; installPhase = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index eee4ab70538..b1232de16e9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -7192,7 +7192,7 @@ in zbackup = callPackage ../tools/backup/zbackup {}; - zbar = callPackage ../tools/graphics/zbar { }; + zbar = libsForQt5.callPackage ../tools/graphics/zbar { }; zdelta = callPackage ../tools/compression/zdelta { }; |