diff --git a/pkgs/desktops/pantheon/apps/elementary-photos/default.nix b/pkgs/desktops/pantheon/apps/elementary-photos/default.nix index 8a1017cfaeb1..5170940c9138 100644 --- a/pkgs/desktops/pantheon/apps/elementary-photos/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-photos/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , nix-update-script , meson , ninja @@ -11,19 +12,15 @@ , libexif , libgee , libhandy -, geocode-glib +, geocode-glib_2 , gexiv2 , libgphoto2 , granite , gst_all_1 , libgudev -, json-glib , libraw -, librest -, libsoup , sqlite , python3 -, webkitgtk , libwebp , appstream , wrapGAppsHook @@ -40,6 +37,32 @@ stdenv.mkDerivation rec { sha256 = "sha256-VhJggQMy1vk21zNA5pR4uAPGCwnIxLUHVO58AZs+h6s="; }; + patches = [ + # The following 5 patches allow building this without webkit2gtk-4.0. + # https://github.com/elementary/photos/pull/743, https://github.com/elementary/photos/pull/746 + (fetchpatch { + url = "https://github.com/elementary/photos/commit/c48f49869bbf44aa37e64c0c1e25aff887783a02.patch"; + hash = "sha256-CeKRONVevJqVEIchgxyPqnM16Y2zUJ1+wnL2jLdJqec="; + }) + (fetchpatch { + url = "https://github.com/elementary/photos/commit/d7a8265ecb562e439d003b61b0823de8348fb10d.patch"; + hash = "sha256-6M3t0l8BUhoaowUSfaiz6xjQBHliO13i+qi5cgfEY04="; + }) + (fetchpatch { + url = "https://github.com/elementary/photos/commit/d8e13e8e803ed7ab1bd23527866567d998744f57.patch"; + hash = "sha256-BGBDIHR5iYtd+rJG9sur1oWa4FK/lF0vLdjyPbyNbdU="; + }) + (fetchpatch { + url = "https://github.com/elementary/photos/commit/075f983a65e9c6d4e80ee07f0c05309badef526a.patch"; + excludes = [ ".github/workflows/ci.yml" ]; + hash = "sha256-QOtssVwwHxFdtfhcVyaN33LMZdOkg/DoAC+UAbrkmDk="; + }) + (fetchpatch { + url = "https://github.com/elementary/photos/commit/ea11cf23db6945df6cc3495fd698456054389371.patch"; + hash = "sha256-4a/CRx7Dmyyda6SUr0QF++R73v7FBzjXfyxvspynnG0="; + }) + ]; + nativeBuildInputs = [ appstream desktop-file-utils @@ -52,22 +75,18 @@ stdenv.mkDerivation rec { ]; buildInputs = [ - geocode-glib + geocode-glib_2 gexiv2 granite gtk3 - json-glib libexif libgee libgphoto2 libgudev libhandy libraw - librest - libsoup libwebp sqlite - webkitgtk ] ++ (with gst_all_1; [ gst-plugins-bad gst-plugins-base @@ -76,10 +95,6 @@ stdenv.mkDerivation rec { gstreamer ]); - mesonFlags = [ - "-Dplugins=false" - ]; - postPatch = '' chmod +x meson/post_install.py patchShebangs meson/post_install.py