HPLIP's getSystemPPDs() function relies on searching for PPDs below common FHS
paths. None of these exist on NixOS, but the code assumes that at least one of
the directories will be found, and crashes when it doesn't (cups_ppd_path is
None and the code passes that to os.path.join).
A usable PPD search path for the running system on NixOS is
/var/lib/cups/path/share, so this patches the source to check this path as well.
This should fix the NixOS case and keep non-NixOS cases working too.
Regression introduced by 6556711c87.
The string start and end quoting styles have changed in the upstream
source code between version 1.4.2 and version 1.5.3, so the checkPhase
now results in the following error:
======================================================================
ERROR: native (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: native
Traceback (most recent call last):
File ".../unittest/loader.py", line 154, in loadTestsFromName
module = __import__(module_name)
File "/build/r2pipe-1.5.3/r2pipe/native.py", line 113, in <module>
class RCore(Structure): # 1
File "/build/r2pipe-1.5.3/r2pipe/native.py", line 125, in RCore
cmd_str, r_core_cmd_str = register(
File "/build/r2pipe-1.5.3/r2pipe/native.py", line 108, in register
method = WrappedRMethod(cname, args, ret)
File "/build/r2pipe-1.5.3/r2pipe/native.py", line 53, in __init__
r2 = r2lib()
File "/build/r2pipe-1.5.3/r2pipe/native.py", line 27, in r2lib
raise ImportError("No native r_core library")
ImportError: No native r_core library
Signed-off-by: aszlig <aszlig@nix.build>
In commit 6ba044c166, the demjson package was
disabled on Python 3.x with the comment that it doesn't seem to support any
Python 3.x versions. But looking at the upstream repository, they do seem to
attempt to support Python 3 -- it turns out the failure on our end was caused by
some issue with trying to run `setup.py test` on a 2to3-using codebase with no
test suite (?).
In any case, this package's test suite doesn't seem to use the setuptools
mechanism, so in this commit I override the checkPhase to run the upstream tests
in the correct way. This fixes the build on all Python versions.
EDIT 2021-01-08: rebased on top of PR #108378 which had explicitly disabled the
tests on all Python versions.