Johannes Schauer Marin Rodrigues <jo...@debian.org> writes: > Hi, > > Quoting Simon Josefsson (2025-05-06 11:34:47) >> The problem seems that it is generating a relative path to its own command >> expanded via PATH, which doesn't work because there is no /share symlink but >> there is /usr/share/. >> >> Is this a problem in 'gradle' (and other packages) that should be >> reported and fixed? What severity? >> >> What can packages assume about PATH? What can packages not assume? In >> particular wrt ordering. Are there written down rules for this? > > I think you can reformulate this problem a bit differently. Instead of saying > "is it a problem to shuffle PATH order" you could also ask "should it be a > problem whether a program is invoked from either their aliased or unaliased > location?" > > With the finalization of /usr-merge, many programs were moved from /bin into > their unaliased location under /usr/bin also with the argument: if programs > rely on it to exist in /bin then that is still the case even after moving the > actual path due to the top-level symlink. What you have here is an instance > where a program is intended to never be called from their unaliased path or > otherwise it cannot find /usr/share.
Agreed. > My gut feeling is that software that does this should be made robust in > finding > /usr/share independent of from where it is called. Yes, I think that seems reasonable. I opened this one: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1104784 There are packages that invoke Gradle during package builds that will FTBFS until that bug is fixed. I've already changed my build system to use PATH=/usr/bin only so I'm not sure it is worth spending cycles trying to find all affected packages. I mention some bookworm packages that FTBFS with this PATH setting in the bug report. Should the Debian Policy or Developers Reference should say something about expectations about the PATH variable value though? I wonder how many packages FTBFS if PATH is set to a "weird" value like PATH=/foo\ bar/foo!bar:$PATH. /Simon
signature.asc
Description: PGP signature