ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / gn / gnome-frog / package.nix
blob0facc24ce44cc399bbc91332895903d96d7db9a9
1 { lib
2 , fetchFromGitHub
3 , python3Packages
4 , wrapGAppsHook4
5 , meson
6 , ninja
7 , pkg-config
8 , appstream-glib
9 , desktop-file-utils
10 , glib
11 , gobject-introspection
12 , blueprint-compiler
13 , libxml2
14 , libnotify
15 , libadwaita
16 , libportal
17 , gettext
18 , librsvg
19 , tesseract5
20 , zbar
21 , gst_all_1
24 python3Packages.buildPythonApplication rec {
25   pname = "gnome-frog";
26   version = "1.5.2";
28   src = fetchFromGitHub {
29     owner = "TenderOwl";
30     repo = "Frog";
31     rev = "refs/tags/${version}";
32     sha256 = "sha256-Zu1xUGpjqpFiPQAAgaVYtnXI4jMtyywrJqn+38K5VHo=";
33   };
35   format = "other";
37   patches = [ ./update-compatible-with-non-flatpak-env.patch ];
38   postPatch = ''
39     chmod +x ./build-aux/meson/postinstall.py
40     patchShebangs ./build-aux/meson/postinstall.py
41     substituteInPlace ./build-aux/meson/postinstall.py \
42       --replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
43     substituteInPlace ./frog/language_manager.py --subst-var out
44   '';
46   nativeBuildInputs = [
47     appstream-glib
48     desktop-file-utils
49     gettext
50     meson
51     ninja
52     pkg-config
53     glib
54     wrapGAppsHook4
55     gobject-introspection
56     blueprint-compiler
57     libxml2
58   ];
60   buildInputs = [
61     librsvg
62     libnotify
63     libadwaita
64     libportal
65     zbar
66     tesseract5
67     gst_all_1.gstreamer
68   ];
70   propagatedBuildInputs = with python3Packages; [
71     loguru
72     nanoid
73     posthog
74     pygobject3
75     python-dateutil
76     pillow
77     pytesseract
78     pyzbar
79     gtts
80   ];
82   # This is to prevent double-wrapping the package. We'll let
83   # Python do it by adding certain arguments inside of the
84   # wrapper instead.
85   dontWrapGApps = true;
86   preFixup = ''
87     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
88   '';
90   meta = with lib; {
91     homepage = "https://getfrog.app/";
92     description =
93       "Intuitive text extraction tool (OCR) for GNOME desktop";
94     license = licenses.mit;
95     mainProgram = "frog";
96     maintainers = with maintainers; [ foo-dogsquared ];
97     platforms = platforms.linux;
98   };