From 4f1e2dbc73ccf8c81a77debcfddd3ec23d9f5303 Mon Sep 17 00:00:00 2001 From: ^x3ro Date: Thu, 16 Sep 2021 12:59:21 +0200 Subject: [PATCH] ksnip: Build from source --- .../libraries/kColorPicker/default.nix | 33 +++++++++++++ .../libraries/kImageAnnotator/default.nix | 39 +++++++++++++++ pkgs/tools/misc/ksnip/default.nix | 48 +++++++++---------- pkgs/top-level/all-packages.nix | 4 ++ 4 files changed, 98 insertions(+), 26 deletions(-) create mode 100644 pkgs/development/libraries/kColorPicker/default.nix create mode 100644 pkgs/development/libraries/kImageAnnotator/default.nix diff --git a/pkgs/development/libraries/kColorPicker/default.nix b/pkgs/development/libraries/kColorPicker/default.nix new file mode 100644 index 000000000000..44ae276679ca --- /dev/null +++ b/pkgs/development/libraries/kColorPicker/default.nix @@ -0,0 +1,33 @@ +{ stdenv +, lib +, cmake +, fetchFromGitHub +, qtbase +}: + +stdenv.mkDerivation rec { + pname = "kColorPicker"; + version = "0.1.6"; + + src = fetchFromGitHub { + owner = "ksnip"; + repo = "kColorPicker"; + rev = "v${version}"; + sha256 = "1167xwk75yiz697vddbz3lq42l7ckhyl2cvigy4m05qgg9693ksd"; + }; + + dontWrapQtApps = true; + + nativeBuildInputs = [ + cmake + qtbase + ]; + + meta = with lib; { + homepage = "https://github.com/ksnip/kImageAnnotator"; + description = "Tool for annotating images"; + license = licenses.lgpl3; + maintainers = with maintainers; [ x3ro ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/libraries/kImageAnnotator/default.nix b/pkgs/development/libraries/kImageAnnotator/default.nix new file mode 100644 index 000000000000..8daebeddefb3 --- /dev/null +++ b/pkgs/development/libraries/kImageAnnotator/default.nix @@ -0,0 +1,39 @@ +{ stdenv +, lib +, cmake +, fetchFromGitHub +, kColorPicker +, qtbase +, qtsvg +, qttranslations +}: + +stdenv.mkDerivation rec { + pname = "kImageAnnotator"; + version = "0.5.2"; + + src = fetchFromGitHub { + owner = "ksnip"; + repo = "kImageAnnotator"; + rev = "v${version}"; + sha256 = "07m3il928gwzzab349grpaksqqv4n7r6mn317sx2jly0x0bpv0rh"; + }; + + dontWrapQtApps = true; + + nativeBuildInputs = [ + cmake + kColorPicker + qtbase + qtsvg + qttranslations + ]; + + meta = with lib; { + homepage = "https://github.com/ksnip/kImageAnnotator"; + description = "Tool for annotating images"; + license = licenses.lgpl3; + maintainers = with maintainers; [ x3ro ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/misc/ksnip/default.nix b/pkgs/tools/misc/ksnip/default.nix index edd1f6100190..0e08780e38db 100644 --- a/pkgs/tools/misc/ksnip/default.nix +++ b/pkgs/tools/misc/ksnip/default.nix @@ -1,10 +1,12 @@ { stdenv , lib -, autoPatchelfHook -, wrapQtAppsHook -, fetchurl -, dpkg -, qtbase +, cmake +, extra-cmake-modules +, fetchFromGitHub +, kColorPicker +, kImageAnnotator +, qtsvg +, qttranslations , qtx11extras }: @@ -12,33 +14,27 @@ stdenv.mkDerivation rec { pname = "ksnip"; version = "1.9.1"; - src = fetchurl { - url = "https://github.com/ksnip/ksnip/releases/download/v${version}/ksnip-${version}-continuous.deb"; - sha256 = "0wabyhb6751jlbrr0872ks2klb6570yfjczn6fjb1albavsk8mml"; + src = fetchFromGitHub { + owner = "ksnip"; + repo = "ksnip"; + rev = "v${version}"; + sha256 = "1izsk586n9fbm0di0hj6pxs7r0a6w554gpad1ghf247icr0pfc1l"; }; - sourceRoot = "."; - unpackCmd = "dpkg-deb -x $src ."; - - dontConfigure = true; - dontBuild = true; - - buildInputs = [ - qtbase - qtx11extras - ]; + dontWrapQtApps = true; nativeBuildInputs = [ - autoPatchelfHook - wrapQtAppsHook - dpkg + cmake + extra-cmake-modules + qttranslations ]; - installPhase = '' - mkdir -p $out/bin - mv usr $out/ - ln -s $out/usr/bin/ksnip $out/bin/ksnip - ''; + buildInputs = [ + kColorPicker + kImageAnnotator + qtsvg + qtx11extras + ]; meta = with lib; { homepage = "https://github.com/ksnip/ksnip"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5e6c743d3091..dab46d839969 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16466,6 +16466,10 @@ with pkgs; judy = callPackage ../development/libraries/judy { }; + kColorPicker = libsForQt5.callPackage ../development/libraries/kColorPicker { }; + + kImageAnnotator = libsForQt5.callPackage ../development/libraries/kImageAnnotator { }; + kddockwidgets = libsForQt5.callPackage ../development/libraries/kddockwidgets { }; keybinder = callPackage ../development/libraries/keybinder {