This patch ensures that the currently broken `thumbor`[1] package builds
and works again.
The following problems were fixed:
* Rather than placing required packages (like `gifsicle` or `exiftool`)
into the build input list, we reference them explicitly where needed
to ensure that the package works after the build without further
installs.
* Skip the `test_redeye_applied` test case which is broken for a while
now.
[1] https://hydra.nixos.org/build/90290998
The current `thumbor` build on master: https://hydra.nixos.org/build/76000076
This is mainly caused by several dependency bumps (e.g.
`pythonPackages.tornado` to v5 in dd936ccdb9bb04436f4e045998f305de12a67eb2)
that broke the `setup.py` from version 6.4.
Bumping to the latest stable version (6.5.1) fixes these issues.
Origianlly the package was broken as bumping `pythonPackages.pillow` to
5.x broke `thumbor`. The latest upstream version `6.4.2` solved this
issue, so a simple package bump was sufficient.
Furthermore the following changes were made:
- moved the expression into its own file
- added myself as maintainer in case of any further breackage
- re-enabled python3 build: 6.4.2 is fine with python3, however the
`futures` dependency can't be satisfied anymore as it's part of
Python3. Therefore a patch for `setup.py` will be applied for Python3
buildsto drop the dependency
Note: the testsuite is disabled for now as several impure tests are done
and our testing environment seems to be unable to work the with the
natively compiled python modules properly.
Therefore I tested the module using the following expression:
``` nix
with import ./. {};
stdenv.mkDerivation {
name = "thumbor-test";
src = null;
buildInputs = [ python pythonPackages.thumbor ];
}
```
Inside this nix shell `thumbor` works fine and the native modules can be
imported.
See https://hydra.nixos.org/build/71062729/log
See ticket #36453