summaryrefslogtreecommitdiff
path: root/pkgs/tools/graphics
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2021-05-24 09:55:24 -0500
committerRobin Gloster <mail@glob.in>2021-05-24 09:55:24 -0500
commit4bc5fbef9d159e143fb7e2c3231932e6e76f667c (patch)
treee2198f5c552e0667d838b8ec764ddb3a4d8f6dec /pkgs/tools/graphics
parentjq: fix build with structured-attrs on darwin (diff)
parentMerge pull request #123802 from superherointj/package-virtmanager-bugfix (diff)
downloadnixpkgs-origin/structured-attrs.tar.gz
Merge remote-tracking branch 'upstream/master' into structured-attrsorigin/structured-attrs
Diffstat (limited to 'pkgs/tools/graphics')
-rw-r--r--pkgs/tools/graphics/agi/default.nix4
-rw-r--r--pkgs/tools/graphics/cfdg/default.nix4
-rw-r--r--pkgs/tools/graphics/dmtx-utils/default.nix4
-rw-r--r--pkgs/tools/graphics/fbv/default.nix21
-rw-r--r--pkgs/tools/graphics/flam3/default.nix2
-rw-r--r--pkgs/tools/graphics/glee/default.nix2
-rw-r--r--pkgs/tools/graphics/gmic/default.nix4
-rw-r--r--pkgs/tools/graphics/ldgallery/default.nix4
-rw-r--r--pkgs/tools/graphics/ldgallery/viewer/default.nix3
-rw-r--r--pkgs/tools/graphics/mangohud/default.nix125
-rw-r--r--pkgs/tools/graphics/mangohud/hardcode-dependencies.patch57
-rw-r--r--pkgs/tools/graphics/mangohud/opengl32-nix-workaround.patch12
-rw-r--r--pkgs/tools/graphics/perceptualdiff/default.nix2
-rw-r--r--pkgs/tools/graphics/pikchr/default.nix2
-rw-r--r--pkgs/tools/graphics/pngquant/default.nix11
-rw-r--r--pkgs/tools/graphics/quirc/default.nix52
-rw-r--r--pkgs/tools/graphics/snapdragon-profiler/default.nix91
-rw-r--r--pkgs/tools/graphics/timg/default.nix4
-rw-r--r--pkgs/tools/graphics/twilight/default.nix2
-rw-r--r--pkgs/tools/graphics/vips/default.nix3
-rw-r--r--pkgs/tools/graphics/xcolor/default.nix26
21 files changed, 385 insertions, 50 deletions
diff --git a/pkgs/tools/graphics/agi/default.nix b/pkgs/tools/graphics/agi/default.nix
index 5fb1881eff9a..cc0d9dce52cb 100644
--- a/pkgs/tools/graphics/agi/default.nix
+++ b/pkgs/tools/graphics/agi/default.nix
@@ -14,11 +14,11 @@
stdenv.mkDerivation rec {
pname = "agi";
- version = "1.1.0-dev-20210423";
+ version = "1.1.0-dev-20210517";
src = fetchzip {
url = "https://github.com/google/agi-dev-releases/releases/download/v${version}/agi-${version}-linux.zip";
- sha256 = "sha256-49ZKqG+CiQkdoBMLdYrN5fMnJH5TtXdUknQLQB2UG04=";
+ sha256 = "sha256-O3U/aDGEhXQltM70DHhnDCgothF8HHZMJ102EjiaINU=";
};
nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/cfdg/default.nix b/pkgs/tools/graphics/cfdg/default.nix
index 9295bbe28d56..44a1e0d1d2a1 100644
--- a/pkgs/tools/graphics/cfdg/default.nix
+++ b/pkgs/tools/graphics/cfdg/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, libpng, bison, flex, ffmpeg_3, icu }:
+{ lib, stdenv, fetchFromGitHub, libpng, bison, flex, ffmpeg, icu }:
stdenv.mkDerivation rec {
pname = "cfdg";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "13m8npccacmgxbs4il45zw53dskjh53ngv2nxahwqw8shjrws4mh";
};
- buildInputs = [ libpng bison flex ffmpeg_3 icu ];
+ buildInputs = [ libpng bison flex ffmpeg icu ];
postPatch = ''
sed -e "/YY_NO_UNISTD/a#include <stdio.h>" -i src-common/cfdg.l
diff --git a/pkgs/tools/graphics/dmtx-utils/default.nix b/pkgs/tools/graphics/dmtx-utils/default.nix
index 4ab54593ed8d..f4cc746a24f3 100644
--- a/pkgs/tools/graphics/dmtx-utils/default.nix
+++ b/pkgs/tools/graphics/dmtx-utils/default.nix
@@ -5,6 +5,7 @@
, pkg-config
, libdmtx
, imagemagick
+, Foundation
}:
stdenv.mkDerivation rec {
@@ -20,7 +21,8 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook pkg-config ];
- buildInputs = [ libdmtx imagemagick ];
+ buildInputs = [ libdmtx imagemagick ]
+ ++ lib.optional stdenv.isDarwin Foundation;
meta = {
description = "Data matrix command-line utilities";
diff --git a/pkgs/tools/graphics/fbv/default.nix b/pkgs/tools/graphics/fbv/default.nix
index 6f6e0aeca2cc..5b46d5d2268d 100644
--- a/pkgs/tools/graphics/fbv/default.nix
+++ b/pkgs/tools/graphics/fbv/default.nix
@@ -1,14 +1,25 @@
-{ lib, stdenv, fetchurl, getopt, libjpeg, libpng12, libungif }:
+{ lib, stdenv, fetchurl, fetchpatch, getopt, libjpeg, libpng12, giflib }:
stdenv.mkDerivation rec {
- name = "fbv-1.0b";
+ pname = "fbv";
+ version = "1.0b";
src = fetchurl {
- url = "http://s-tech.elsat.net.pl/fbv/${name}.tar.gz";
+ url = "http://s-tech.elsat.net.pl/fbv/fbv-${version}.tar.gz";
sha256 = "0g5b550vk11l639y8p5sx1v1i6ihgqk0x1hd0ri1bc2yzpdbjmcv";
};
- buildInputs = [ getopt libjpeg libpng12 libungif ];
+ patches = [
+ (fetchpatch {
+ url = "https://raw.githubusercontent.com/void-linux/void-packages/4a5bfe522ea5afd8203e804dc6a642d0871cd6dd/srcpkgs/fbv/patches/giflib-5.1.patch";
+ sha256 = "00q1zcn92yvvyij68bnq0m1sr3a411w914f4nyp6mpz0j5xc6dc7";
+ })
+ ];
+
+ patchFlags = [ "-p0" ];
+
+ buildInputs = [ getopt libjpeg libpng12 giflib ];
+ makeFlags = [ "LDFLAGS=-lgif" ];
enableParallelBuilding = true;
@@ -19,7 +30,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "View pictures on a linux framebuffer device";
homepage = "http://s-tech.elsat.net.pl/fbv/";
- license = licenses.gpl2;
+ license = licenses.gpl2Only;
maintainers = with maintainers; [ peterhoeg ];
};
}
diff --git a/pkgs/tools/graphics/flam3/default.nix b/pkgs/tools/graphics/flam3/default.nix
index 2015de607d25..bd959e3227e7 100644
--- a/pkgs/tools/graphics/flam3/default.nix
+++ b/pkgs/tools/graphics/flam3/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Cosmic recursive fractal flames";
homepage = "https://flam3.com/";
- maintainers = [ maintainers.nand0p ];
+ maintainers = with maintainers; [ ];
platforms = platforms.linux;
license = licenses.gpl3Plus;
};
diff --git a/pkgs/tools/graphics/glee/default.nix b/pkgs/tools/graphics/glee/default.nix
index 136e805e7936..aeec2ffb4939 100644
--- a/pkgs/tools/graphics/glee/default.nix
+++ b/pkgs/tools/graphics/glee/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "GL Easy Extension Library";
homepage = "https://sourceforge.net/p/glee/glee/";
- maintainers = with maintainers; [ nand0p ];
+ maintainers = with maintainers; [ ];
platforms = platforms.linux;
license = licenses.gpl3;
};
diff --git a/pkgs/tools/graphics/gmic/default.nix b/pkgs/tools/graphics/gmic/default.nix
index b50716188e95..37b398ef1c62 100644
--- a/pkgs/tools/graphics/gmic/default.nix
+++ b/pkgs/tools/graphics/gmic/default.nix
@@ -15,13 +15,13 @@
stdenv.mkDerivation rec {
pname = "gmic";
- version = "2.9.6";
+ version = "2.9.7";
outputs = [ "out" "lib" "dev" "man" ];
src = fetchurl {
url = "https://gmic.eu/files/source/gmic_${version}.tar.gz";
- sha256 = "sha256-0i/oUVrxbc0FDQmgvHEn7Cn0eVznMqDGw+r4OTVrwRo=";
+ sha256 = "sha256-lCU3SH6nIhQSMFeds81DMTaEKcDjPLOP7hsXqulVfxY=";
};
nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/ldgallery/default.nix b/pkgs/tools/graphics/ldgallery/default.nix
index 6291dc9d6423..84d179374ae8 100644
--- a/pkgs/tools/graphics/ldgallery/default.nix
+++ b/pkgs/tools/graphics/ldgallery/default.nix
@@ -1,10 +1,10 @@
-{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick }:
+{ lib, pkgs, makeWrapper, haskellPackages, haskell, pandoc, imagemagick, CoreServices }:
with lib;
with haskell.lib;
let
- ldgallery-viewer = pkgs.callPackage ./viewer { };
+ ldgallery-viewer = pkgs.callPackage ./viewer { inherit CoreServices; };
inherit (haskellPackages) ldgallery-compiler;
in
diff --git a/pkgs/tools/graphics/ldgallery/viewer/default.nix b/pkgs/tools/graphics/ldgallery/viewer/default.nix
index 9559120069f7..f4cebde86070 100644
--- a/pkgs/tools/graphics/ldgallery/viewer/default.nix
+++ b/pkgs/tools/graphics/ldgallery/viewer/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, pkgs, nodejs-12_x, pandoc }:
+{ lib, stdenv, fetchFromGitHub, pkgs, nodejs-12_x, pandoc, CoreServices }:
with lib;
@@ -24,6 +24,7 @@ let
nodePkg = nodePackages.package.override {
src = "${sourcePkg}/viewer";
postInstall = "npm run build";
+ buildInputs = optionals stdenv.isDarwin [ CoreServices ];
};
in
diff --git a/pkgs/tools/graphics/mangohud/default.nix b/pkgs/tools/graphics/mangohud/default.nix
new file mode 100644
index 000000000000..0d3b8ed6f8e4
--- /dev/null
+++ b/pkgs/tools/graphics/mangohud/default.nix
@@ -0,0 +1,125 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, substituteAll
+, coreutils
+, curl
+, gawk
+, glxinfo
+, gnugrep
+, gnused
+, pciutils
+, xdg-utils
+, dbus
+, hwdata
+, libX11
+, mangohud32
+, vulkan-headers
+, glslang
+, makeWrapper
+, meson
+, ninja
+, pkg-config
+, python3Packages
+, vulkan-loader
+, libXNVCtrl
+}:
+
+stdenv.mkDerivation rec {
+ pname = "mangohud";
+ version = "0.6.1";
+
+ src = fetchFromGitHub {
+ owner = "flightlessmango";
+ repo = "MangoHud";
+ rev = "v${version}";
+ sha256 = "1bzfp37qrx9kk5zaq7sfisgkyccwnxd7i3b1l0blfcy2lrxgx0n6";
+ fetchSubmodules = true;
+ };
+
+ patches = [
+ # Adds option to specify Vulkan's datadir when it's not the same as MangoHud's
+ # See https://github.com/flightlessmango/MangoHud/pull/522
+ (fetchpatch {
+ url = "https://github.com/flightlessmango/MangoHud/commit/56682985d8cec711af7ad0841888a44099249b1b.patch";
+ sha256 = "0l5vb374lfgfh54jiy4097bzsccpv4zsl1fdhn55sxggklymcad8";
+ })
+
+ # Hard code dependencies. Can't use makeWrapper since the Vulkan
+ # layer can be used without the mangohud executable by setting MANGOHUD=1.
+ (substituteAll {
+ src = ./hardcode-dependencies.patch;
+
+ path = lib.makeBinPath [
+ coreutils
+ curl
+ gawk
+ glxinfo
+ gnugrep
+ gnused
+ pciutils
+ xdg-utils
+ ];
+
+ libdbus = dbus.lib;
+ inherit hwdata libX11;
+ })
+ ] ++ lib.optional (stdenv.hostPlatform.system == "x86_64-linux") [
+ # Support 32bit OpenGL applications by appending the mangohud32
+ # lib path to LD_LIBRARY_PATH.
+ #
+ # This workaround is necessary since on Nix's build of ld.so, $LIB
+ # always expands to lib even when running an 32bit application.
+ #
+ # See https://github.com/NixOS/nixpkgs/issues/101597.
+ (substituteAll {
+ src = ./opengl32-nix-workaround.patch;
+ inherit mangohud32;
+ })
+ ];
+
+ mesonFlags = [
+ "-Duse_system_vulkan=enabled"
+ "-Dvulkan_datadir=${vulkan-headers}/share"
+ ];
+
+ nativeBuildInputs = [
+ glslang
+ makeWrapper
+ meson
+ ninja
+ pkg-config
+ python3Packages.Mako
+ python3Packages.python
+ vulkan-loader
+ ];
+
+ buildInputs = [
+ dbus
+ libX11
+ libXNVCtrl
+ ];
+
+ # Support 32bit Vulkan applications by linking in 32bit Vulkan layer
+ # This is needed for the same reason the 32bit OpenGL workaround is needed.
+ postInstall = lib.optionalString (stdenv.hostPlatform.system == "x86_64-linux") ''
+ ln -s ${mangohud32}/share/vulkan/implicit_layer.d/MangoHud.json \
+ "$out/share/vulkan/implicit_layer.d/MangoHud.x86.json"
+ '';
+
+ # Support overlaying Vulkan applications without requiring mangohud to be installed
+ postFixup = ''
+ wrapProgram "$out/bin/mangohud" \
+ --prefix VK_LAYER_PATH : "$out/share/vulkan/implicit_layer.d" \
+ --prefix VK_INSTANCE_LAYERS : VK_LAYER_MANGOHUD_overlay
+ '';
+
+ meta = with lib; {
+ description = "A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more";
+ homepage = "https://github.com/flightlessmango/MangoHud";
+ platforms = platforms.linux;
+ license = licenses.mit;
+ maintainers = with maintainers; [ metadark zeratax ];
+ };
+}
diff --git a/pkgs/tools/graphics/mangohud/hardcode-dependencies.patch b/pkgs/tools/graphics/mangohud/hardcode-dependencies.patch
new file mode 100644
index 000000000000..bdebcdca9821
--- /dev/null
+++ b/pkgs/tools/graphics/mangohud/hardcode-dependencies.patch
@@ -0,0 +1,57 @@
+diff --git a/src/dbus.cpp b/src/dbus.cpp
+index 0acccc3..7dd7c49 100644
+--- a/src/dbus.cpp
++++ b/src/dbus.cpp
+@@ -157,7 +157,7 @@ bool dbus_manager::init(const std::string& requested_player) {
+ m_requested_player = "org.mpris.MediaPlayer2." + requested_player;
+ }
+
+- if (!m_dbus_ldr.IsLoaded() && !m_dbus_ldr.Load("libdbus-1.so.3")) {
++ if (!m_dbus_ldr.IsLoaded() && !m_dbus_ldr.Load("@libdbus@/lib/libdbus-1.so.3")) {
+ std::cerr << "MANGOHUD: Could not load libdbus-1.so.3\n";
+ return false;
+ }
+diff --git a/src/loaders/loader_x11.cpp b/src/loaders/loader_x11.cpp
+index 25c65bf..87488d5 100644
+--- a/src/loaders/loader_x11.cpp
++++ b/src/loaders/loader_x11.cpp
+@@ -88,4 +88,4 @@ void libx11_loader::CleanUp(bool unload) {
+
+ }
+
+-std::shared_ptr<libx11_loader> g_x11(new libx11_loader("libX11.so.6"));
++std::shared_ptr<libx11_loader> g_x11(new libx11_loader("@libX11@/lib/libX11.so.6"));
+diff --git a/src/logging.cpp b/src/logging.cpp
+index f2c4271..d33e793 100644
+--- a/src/logging.cpp
++++ b/src/logging.cpp
+@@ -17,7 +17,10 @@ string exec(string command) {
+ string result = "";
+
+ // Open pipe to file
++ char* originalPath = getenv("PATH");
++ setenv("PATH", "@path@", 1);
+ FILE* pipe = popen(command.c_str(), "r");
++ setenv("PATH", originalPath, 1);
+ if (!pipe) {
+ return "popen failed!";
+ }
+diff --git a/src/pci_ids.cpp b/src/pci_ids.cpp
+index 4e2a6d2..9490869 100644
+--- a/src/pci_ids.cpp
++++ b/src/pci_ids.cpp
+@@ -22,12 +22,9 @@ std::istream& get_uncommented_line(std::istream& is, std::string &line)
+
+ void parse_pciids()
+ {
+- std::ifstream file("/usr/share/hwdata/pci.ids");
++ std::ifstream file("@hwdata@/share/hwdata/pci.ids");
+ if(file.fail()){
+- std::ifstream file("/usr/share/misc/pci.ids");
+- if (file.fail())
+- printf("MANGOHUD: can't find file pci.ids\n");
+-
++ printf("MANGOHUD: can't find file pci.ids\n");
+ }
+
+ std::string line;
diff --git a/pkgs/tools/graphics/mangohud/opengl32-nix-workaround.patch b/pkgs/tools/graphics/mangohud/opengl32-nix-workaround.patch
new file mode 100644
index 000000000000..3c0f6908617f
--- /dev/null
+++ b/pkgs/tools/graphics/mangohud/opengl32-nix-workaround.patch
@@ -0,0 +1,12 @@
+diff --git a/bin/mangohud.in b/bin/mangohud.in
+index eadce2d..e7b1aa4 100755
+--- a/bin/mangohud.in
++++ b/bin/mangohud.in
+@@ -23,6 +23,6 @@ fi
+ # figure out whether the 32 or 64 bit version should be used, and will search
+ # for it in the correct directory
+ LD_PRELOAD="${LD_PRELOAD}:${MANGOHUD_LIB_NAME}"
+-LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@ld_libdir_mangohud@"
++LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:@ld_libdir_mangohud@:@mangohud32@/lib/mangohud"
+
+ exec env MANGOHUD=1 LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" LD_PRELOAD="${LD_PRELOAD}" "$@"
diff --git a/pkgs/tools/graphics/perceptualdiff/default.nix b/pkgs/tools/graphics/perceptualdiff/default.nix
index 2227ff402994..454352986edf 100644
--- a/pkgs/tools/graphics/perceptualdiff/default.nix
+++ b/pkgs/tools/graphics/perceptualdiff/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "A program that compares two images using a perceptually based image metric";
homepage = "https://github.com/myint/perceptualdiff";
- license = licenses.gpl2;
+ license = licenses.gpl2Plus;
maintainers = with maintainers; [ uri-canva ];
platforms = platforms.x86;
};
diff --git a/pkgs/tools/graphics/pikchr/default.nix b/pkgs/tools/graphics/pikchr/default.nix
index 9b06d0629138..432c70231d0d 100644
--- a/pkgs/tools/graphics/pikchr/default.nix
+++ b/pkgs/tools/graphics/pikchr/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation {
substituteInPlace Makefile --replace open "test -f"
'';
+ makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+
installPhase = ''
install -Dm755 pikchr $out/bin/pikchr
install -Dm755 pikchr.out $out/lib/pikchr.o
diff --git a/pkgs/tools/graphics/pngquant/default.nix b/pkgs/tools/graphics/pngquant/default.nix
index b3b1773faf15..7463e2a45e03 100644
--- a/pkgs/tools/graphics/pngquant/default.nix
+++ b/pkgs/tools/graphics/pngquant/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "pngquant";
- version = "2.12.5";
+ version = "2.14.1";
src = fetchFromGitHub {
- owner = "pornel";
+ owner = "kornelski";
repo = "pngquant";
rev = version;
- sha256 = "0sq398iv5cacblz6pb4j2hn16cnszsbkahikdpfq84rb9bj0ya40";
+ sha256 = "054hi33qp3jc7hv0141wi8drwdg24v5zfp8znwjmz4mcdls8vxbb";
fetchSubmodules = true;
};
@@ -17,11 +17,14 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libpng zlib lcms2 ];
+ doCheck = true;
+
meta = with lib; {
homepage = "https://pngquant.org/";
description = "A tool to convert 24/32-bit RGBA PNGs to 8-bit palette with alpha channel preserved";
+ changelog = "https://github.com/kornelski/pngquant/raw/${version}/CHANGELOG";
platforms = platforms.unix;
- license = licenses.gpl3;
+ license = with licenses; [ gpl3Plus hpnd bsd2 ];
maintainers = [ maintainers.volth ];
};
}
diff --git a/pkgs/tools/graphics/quirc/default.nix b/pkgs/tools/graphics/quirc/default.nix
index 59574350c3ad..4de3f49909de 100644
--- a/pkgs/tools/graphics/quirc/default.nix
+++ b/pkgs/tools/graphics/quirc/default.nix
@@ -1,36 +1,40 @@
-{lib, stdenv, fetchgit, SDL_gfx, SDL, libjpeg, libpng, pkg-config}:
-let
- s =
- rec {
- date = "2016-08-16";
- version = "git-${date}";
- baseName = "quirc";
- name = "${baseName}-${version}";
- url = "https://github.com/dlbeer/quirc";
- rev = "5b262480091d5f84a67a4a56c728fc8b39844339";
- sha256 = "1w5qvjafn14s6jjs7kiwsqirlsqbgv0p152hrsq463pm34hp0lzy";
- };
-in
+{ lib, stdenv, fetchFromGitHub
+, SDL_gfx, SDL, libjpeg, libpng, pkg-config
+}:
+
stdenv.mkDerivation {
- inherit (s) name version;
- nativeBuildInputs = [ pkg-config ];
- buildInputs = [
- SDL SDL_gfx libjpeg libpng
- ];
- src = fetchgit {
- inherit (s) url sha256 rev;
+ pname = "quirc";
+ version = "2020-04-16";
+
+ src = fetchFromGitHub {
+ owner = "dlbeer";
+ repo = "quirc";
+ rev = "ed455904f35270888bc902b9e8c0c9b3184a8302";
+ sha256 = "1kqqvcnxcaxdgls9sibw5pqjz3g1gys2v64i4kfqp8wfcgd9771q";
};
- env.NIX_CFLAGS_COMPILE="-I${SDL.dev}/include/SDL -I${SDL_gfx}/include/SDL";
+
+ nativeBuildInputs = [ pkg-config ];
+ buildInputs = [ SDL SDL_gfx libjpeg libpng ];
+
+ makeFlags = [ "PREFIX=$(out)" ];
+ env.NIX_CFLAGS_COMPILE = "-I${SDL.dev}/include/SDL -I${SDL_gfx}/include/SDL";
+
configurePhase = ''
+ runHook preConfigure
+
+ # don't try to change ownership
sed -e 's/-[og] root//g' -i Makefile
+
+ runHook postConfigure
'';
preInstall = ''
mkdir -p "$out"/{bin,lib,include}
- find . -maxdepth 1 -type f -perm -0100 -exec cp '{}' "$out"/bin ';'
+
+ # install all binaries
+ find -maxdepth 1 -type f -executable ! -name '*.so.*' | xargs cp -t "$out"/bin
'';
- makeFlags = [ "PREFIX=$(out)" ];
+
meta = {
- inherit (s) version;
description = "A small QR code decoding library";
license = lib.licenses.isc;
maintainers = [lib.maintainers.raskin];
diff --git a/pkgs/tools/graphics/snapdragon-profiler/default.nix b/pkgs/tools/graphics/snapdragon-profiler/default.nix
new file mode 100644
index 000000000000..02a96184812e
--- /dev/null
+++ b/pkgs/tools/graphics/snapdragon-profiler/default.nix
@@ -0,0 +1,91 @@
+{ lib
+, stdenv
+, makeWrapper
+, makeDesktopItem
+, copyDesktopItems
+, icoutils
+, mono
+, jre
+, androidenv
+, gtk-sharp-2_0
+, gtk2
+, libcxx
+, libcxxabi
+, coreutils
+, requireFile
+, archive ? requireFile {
+ name = "snapdragonprofiler_external_linux.tar.gz";
+ message = ''
+ This nix expression requires that "snapdragonprofiler_external_linux.tar.gz" is
+ already part of the store. To get this archive, you need to download it from:
+ https://developer.qualcomm.com/software/snapdragon-profiler
+ and add it to the nix store with nix-store --add-fixed sha256 <FILE>.
+ '';
+ sha256 = "c6731c417ca39fa9b0f190bd80c99b1603cf97d23becab9e47db6beafd6206b7";
+ }
+}:
+
+stdenv.mkDerivation rec {
+ pname = "snapdragon-profiler";
+ version = "v2021.2";
+
+ src = archive;
+
+ nativeBuildInputs = [
+ makeWrapper
+ icoutils
+ copyDesktopItems
+ ];
+
+ buildInputs = [
+ mono
+ gtk-sharp-2_0
+ gtk2
+ libcxx
+ libcxxabi
+ ];
+
+ installPhase = ''
+ runHook preInstall
+ mkdir -p $out/{bin,lib/snapdragon-profiler}
+ mkdir -p $out/share/icons/hicolor/{16x16,32x32,48x48}/apps
+
+ mv *.so $out/lib
+ cp -r * $out/lib/snapdragon-profiler
+ makeWrapper "${mono}/bin/mono" $out/bin/snapdragon-profiler \
+ --add-flags "$out/lib/snapdragon-profiler/SnapdragonProfiler.exe" \
+ --suffix PATH : ${lib.makeBinPath [ jre androidenv.androidPkgs_9_0.platform-tools coreutils ]} \
+ --prefix MONO_GAC_PREFIX : ${gtk-sharp-2_0} \
+ --suffix LD_LIBRARY_PATH : $(echo $NIX_LDFLAGS | sed 's/ -L/:/g;s/ -rpath /:/g;s/-rpath //') \
+ --run "cd $out/lib/snapdragon-profiler" # Fixes themes not loading correctly
+
+ wrestool -x -t 14 SnapdragonProfiler.exe > snapdragon-profiler.ico
+ icotool -x -i 1 -o $out/share/icons/hicolor/16x16/apps/snapdragon-profiler.png snapdragon-profiler.ico
+ icotool -x -i 2 -o $out/share/icons/hicolor/32x32/apps/snapdragon-profiler.png snapdragon-profiler.ico
+ icotool -x -i 3 -o $out/share/icons/hicolor/48x48/apps/snapdragon-profiler.png snapdragon-profiler.ico
+
+ runHook postInstall
+ '';
+
+ desktopItems = [(makeDesktopItem {
+ name = pname;
+ desktopName = "Snapdragon Profiler";
+ exec = "$out/bin/snapdragon-profiler";
+ icon = "snapdragon-profiler";
+ type = "Application";
+ comment = meta.description;
+ categories = "Development;Debugger;Graphics;3DGraphics";
+ terminal = "false";
+ })];
+
+ dontStrip = true; # Always needed on Mono
+ dontPatchELF = true; # Certain libraries are to be deployed to the remote device, they should not be patched
+
+ meta = with lib; {
+ homepage = "https://developer.qualcomm.com/software/snapdragon-profiler";
+ description = "An profiler for Android devices running Snapdragon chips";
+ license = licenses.unfree;
+ maintainers = [ maintainers.ivar ];
+ platforms = [ "x86_64-linux" ];
+ };
+}
diff --git a/pkgs/tools/graphics/timg/default.nix b/pkgs/tools/graphics/timg/default.nix
index 5acbaa7ffd20..7c2d004144dc 100644
--- a/pkgs/tools/graphics/timg/default.nix
+++ b/pkgs/tools/graphics/timg/default.nix
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "timg";
- version = "1.4.0";
+ version = "1.4.2";
src = fetchFromGitHub {
owner = "hzeller";
repo = "timg";
rev = "v${version}";
- sha256 = "10qhjfkbazncmj07y0a6cpmi7ki0l10qzpvi2zh8369yycqqxr8y";
+ sha256 = "1zjcaxnik8imkn22g5kz6zly3yxpknrzd093sfxpgqnfw4sq8149";
};
buildInputs = [ graphicsmagick ffmpeg libexif libjpeg zlib ];
diff --git a/pkgs/tools/graphics/twilight/default.nix b/pkgs/tools/graphics/twilight/default.nix
index 2716c5e7c650..7c43063fb810 100644
--- a/pkgs/tools/graphics/twilight/default.nix
+++ b/pkgs/tools/graphics/twilight/default.nix
@@ -25,6 +25,6 @@ in stdenv.mkDerivation rec {
homepage = src.meta.homepage;
license = licenses.mit;
platforms = platforms.linux;
- maintainers = with maintainers; [ gnidorah ];
+ maintainers = with maintainers; [ ];
};
}
diff --git a/pkgs/tools/graphics/vips/default.nix b/pkgs/tools/graphics/vips/default.nix
index 9319fa9b610e..18025f92e31c 100644
--- a/pkgs/tools/graphics/vips/default.nix
+++ b/pkgs/tools/graphics/vips/default.nix
@@ -15,6 +15,7 @@
, libheif
, librsvg
, ApplicationServices
+, Foundation
, python27
, libpng
, fetchFromGitHub
@@ -68,7 +69,7 @@ stdenv.mkDerivation rec {
python27
libpng
expat
- ] ++ lib.optional stdenv.isDarwin ApplicationServices;
+ ] ++ lib.optionals stdenv.isDarwin [ApplicationServices Foundation];
# Required by .pc file
propagatedBuildInputs = [
diff --git a/pkgs/tools/graphics/xcolor/default.nix b/pkgs/tools/graphics/xcolor/default.nix
new file mode 100644
index 000000000000..f19a80357f35
--- /dev/null
+++ b/pkgs/tools/graphics/xcolor/default.nix
@@ -0,0 +1,26 @@
+{ lib, rustPlatform, fetchFromGitHub, pkg-config, libX11, libXcursor, libxcb, python3 }:
+
+rustPlatform.buildRustPackage rec {
+ pname = "xcolor";
+ version = "unstable-2021-02-02";
+
+ src = fetchFromGitHub {
+ owner = "Soft";
+ repo = pname;
+ rev = "0e99e67cd37000bf563aa1e89faae796ec25f163";
+ sha256 = "sha256-rHqK05dN5lrvDNbRCWGghI7KJwWzNCuRDEThEeMzmio=";
+ };
+
+ cargoSha256 = "sha256-lHOT/P1Sh1b53EkPIQM3l9Tozdqh60qlUDdjthj32jM=";
+
+ nativeBuildInputs = [ pkg-config python3 ];
+
+ buildInputs = [ libX11 libXcursor libxcb ];
+
+ meta = with lib; {
+ description = "Lightweight color picker for X11";
+ homepage = "https://github.com/Soft/xcolor";
+ maintainers = with lib.maintainers; [ fortuneteller2k ];
+ license = licenses.mit;
+ };
+}