nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 84 lines 3.2 kB view raw
1{ 2 stdenv, 3 lib, 4 cmake, 5 fetchFromGitHub, 6 fetchpatch, 7 libsForQt5, 8}: 9 10stdenv.mkDerivation (finalAttrs: { 11 pname = "ksnip"; 12 version = "1.10.1"; 13 14 src = fetchFromGitHub { 15 owner = "ksnip"; 16 repo = "ksnip"; 17 tag = "v${finalAttrs.version}"; 18 hash = "sha256-n7YwDXd73hyrzb6L8utZFuHh9HnjVtkU6CC4jfWPj/I="; 19 }; 20 21 patches = [ 22 # Fix build with latest kImageAnnotator 23 (fetchpatch { 24 url = "https://github.com/ksnip/ksnip/commit/76f4b381971eead6ff31b8bf3bb64bb5717469c3.patch"; 25 hash = "sha256-JWoI974qDNZIzr/8oksI8m6g3XNWEaQRGsqSfvQrmao="; 26 }) 27 ]; 28 29 nativeBuildInputs = [ 30 cmake 31 ] 32 ++ (with libsForQt5; [ 33 extra-cmake-modules 34 wrapQtAppsHook 35 qttools 36 ]); 37 38 buildInputs = with libsForQt5; [ 39 kcolorpicker 40 kimageannotator 41 qtsvg 42 qtx11extras 43 ]; 44 45 meta = { 46 homepage = "https://github.com/ksnip/ksnip"; 47 description = "Cross-platform screenshot tool with many annotation features"; 48 longDescription = '' 49 Features: 50 51 - Supports Linux (X11, Plasma Wayland, GNOME Wayland and xdg-desktop-portal Wayland), Windows and macOS. 52 - Screenshot of a custom rectangular area that can be drawn with mouse cursor. 53 - Screenshot of last selected rectangular area without selecting again. 54 - Screenshot of the screen/monitor where the mouse cursor is currently located. 55 - Screenshot of full-screen, including all screens/monitors. 56 - Screenshot of window that currently has focus. 57 - Screenshot of window under mouse cursor. 58 - Screenshot with or without mouse cursor. 59 - Capture mouse cursor as annotation item that can be moved and deleted. 60 - Customizable capture delay for all capture options. 61 - Upload screenshots directly to imgur.com in anonymous or user mode. 62 - Upload screenshots via custom user defined scripts. 63 - Command-line support, for capturing screenshots and saving to default location, filename and format. 64 - Filename wildcards for Year ($Y), Month ($M), Day ($D), Time ($T) and Counter (multiple # characters for number with zero-leading padding). 65 - Print screenshot or save it to PDF/PS. 66 - Annotate screenshots with pen, marker, rectangles, ellipses, texts and other tools. 67 - Annotate screenshots with stickers and add custom stickers. 68 - Obfuscate image regions with blur and pixelate. 69 - Add effects to image (Drop Shadow, Grayscale, invert color or Border). 70 - Add watermarks to captured images. 71 - Global hotkeys for capturing screenshots (currently only for Windows and X11). 72 - Tabs for screenshots and images. 73 - Open existing images via dialog, drag-and-drop or paste from clipboard. 74 - Run as single instance application (secondary instances send cli parameter to primary instance). 75 - Pin screenshots in frameless windows that stay atop other windows. 76 - User-defined actions for taking screenshot and post-processing. 77 - Many configuration options. 78 ''; 79 license = lib.licenses.gpl2Plus; 80 maintainers = with lib.maintainers; [ x3ro ]; 81 platforms = lib.platforms.linux; 82 mainProgram = "ksnip"; 83 }; 84})