-
-
Notifications
You must be signed in to change notification settings - Fork 14.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
darktable: Removed unneeded dependencies, update Lua to 5.3 #25133
Conversation
@Hodapp87, thanks for your PR! By analyzing the history of the files in this pull request, we identified @edolstra, @lsix and @cillianderoiste to be potential reviewers. |
According to the autotools configure script the following libraries were requested:
These are mostley transitive dependencies from other pkgconfig files like glib or xcb. diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index 5c1ea345d9..4fc6856e32 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -1,10 +1,10 @@
{ stdenv, fetchurl, libsoup, graphicsmagick, json_glib
-, atk, cairo, cmake, curl, dbus_glib, exiv2, glib
+, atk, cairo, cmake, curl, dbus_glib, exiv2, glib, pcre, libpthreadstubs
, gtk3, ilmbase, intltool, lcms2
, lensfun, libX11, libexif, libgphoto2, libjpeg
, libpng, librsvg, libtiff, libxcb
, openexr, osm-gps-map, pixman, pkgconfig, sqlite, bash, libxslt, openjpeg
-, lua5_3, pugixml, colord, colord-gtk, libxshmfence, libxkbcommon
+, lua5_3, pugixml, colord, colord-gtk, libxshmfence, libxkbcommon, xlibs, epoxy, udev
, at_spi2_core, libwebp, libsecret, wrapGAppsHook, gnome3
}:
@@ -20,13 +20,13 @@ stdenv.mkDerivation rec {
};
buildInputs =
- [ atk cairo cmake curl dbus_glib exiv2 glib gtk3
- ilmbase intltool lcms2 lensfun libX11 libexif
+ [ atk cairo cmake curl dbus_glib exiv2 glib gtk3 pcre libpthreadstubs
+ ilmbase intltool lcms2 lensfun libX11 libexif xlibs.libXdmcp
libgphoto2 libjpeg libpng
librsvg libtiff libxcb openexr pixman pkgconfig sqlite libxslt
libsoup graphicsmagick json_glib openjpeg lua5_3 pugixml
colord colord-gtk libxshmfence libxkbcommon at_spi2_core
- libwebp libsecret wrapGAppsHook gnome3.adwaita-icon-theme
+ libwebp libsecret wrapGAppsHook gnome3.adwaita-icon-theme epoxy udev
osm-gps-map
]; |
darktable's build doesn't use autotools though; it uses CMake. What autotools configure script are you talking about? |
I meant cmake. |
The build seems to proceed just fine without these (without disabling any optional features), and being transitive dependencies, I don't see why they'd need to be declared. @LebedevRI, want to weigh in on this one? |
@Mic92 As darktable dev, i can say that i'm quite sure that darktable itself does not directly use any of those deps which are being suggested in #25133 (comment), namely: pcre, libpthreadstubs, epoxy, udev Is the default.nix supposed to contain only the application's direct dependencies, or all the transitive deps too? |
Not really clear-cut: when some dependency of a library is needed to build anything dependent on that library, the dependency is usually added to |
Hm, build log looks like darktable would prefer Lua 5.2 and we pass Lua 5.3 |
dt git master uses lua 5.3, all current stable releases still use 5.2 |
Are they referring to https://travis-ci.org/NixOS/nixpkgs/jobs/224812233#L2364? |
Ah... I must have confused this with darktable-org/darktable#1474 which was on git master while this is on a stable release. I'll update back. |
Well, the PR is about improving the packaging of the release. @Hodapp87: yes; I wonder if this actually disables Lua support. |
611194f
to
81fd585
Compare
v2.2.5 has landed in the meantime. |
efff8ad
to
17cb693
Compare
@GrahamcOfBorg eval |
Let’s wrap it up, I have rebased this and removed further dependencies. |
@GrahamcOfBorg build darktable |
Failure on x86_64-darwin (full log) Partial log (click to expand)
|
Failure on aarch64-linux (full log) Partial log (click to expand)
|
Success on x86_64-linux (full log) Partial log (click to expand)
|
Based on what LebedevRI told me on IRC and in darktable-org/darktable#1474
17cb693
to
c6bd327
Compare
Motivation for this change
Based on what LebedevRI told me on IRC and in darktable-org/darktable#1474, darktable's buildInputs in nixpkgs contain many unnecessary things. Additionally, the version of Lua supplied is too old for the build to use it, so it was updated to 5.3.
Things done
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)