I see. I had a quick look and this seems to be for the man page, which includes .. command-output:: spack spec netcdf-c. This makes the build non reproducible as it apparently also contains also the CPU type. It also doesn't look great to have Dummy in there:
Its a build artifact in the documentation of the package, but imho on the same level as rpm -q --info will also tell you on which host the package was build.
Having dummy in here is really not great and I will try to update that spack calls which should be possible as spack can be used for cross building and values for the architecture and OS can be given on the command line.
Still the change of /etc/os-release is important, as it might be called internally by spack.
N.B.
Will /etc/os-release stay or be replaced by /usr/etc/os-release in the future?
> Its a build artifact in the documentation of the package, but imho on the same level as rpm -q --info will also tell you on which host the package was build.
The big difference there is that the build host is part of the package metadata and not of the content. If the content doesn't change, the package is seen as identical and doesn't get published. This saves build time, repo space and avoids needless updates.
> Having dummy in here is really not great and I will try to update that spack calls which should be possible as spack can be used for cross building and values for the architecture and OS can be given on the command line.
Sounds good!
> N.B. Will /etc/os-release stay or be replaced by /usr/etc/os-release in the future?
There's /usr/lib/os-release already, but I expect /etc/os-release to be around for the forseeable future.
packages depending on dummy-release sounds dangerous to me, but I don't mind
We inject dummy-release into the buildroot for everything that has BuildRequires: distribution-release
If any package actually reads
VERSION_ID
from/etc/os-release
, it's just broken. Can you give an example?The submit of spack [https://spack.io/] failed as the doc package runs spack in the build process and spack itself reads out this information.
I see. I had a quick look and this seems to be for the man page, which includes
.. command-output:: spack spec netcdf-c
. This makes the build non reproducible as it apparently also contains also the CPU type. It also doesn't look great to haveDummy
in there:While I agree that this looks like a spack bug, I still don't mind having the dummy-release being more complete
Me neither
Its a build artifact in the documentation of the package, but imho on the same level as
rpm -q --info
will also tell you on which host the package was build. Having dummy in here is really not great and I will try to update thatspack
calls which should be possible asspack
can be used for cross building and values for the architecture and OS can be given on the command line. Still the change of/etc/os-release
is important, as it might be called internally by spack. N.B. Will/etc/os-release
stay or be replaced by/usr/etc/os-release
in the future?> Its a build artifact in the documentation of the package, but imho on the same level as rpm -q --info will also tell you on which host the package was build.
The big difference there is that the build host is part of the package metadata and not of the content. If the content doesn't change, the package is seen as identical and doesn't get published. This saves build time, repo space and avoids needless updates.
> Having dummy in here is really not great and I will try to update that spack calls which should be possible as spack can be used for cross building and values for the architecture and OS can be given on the command line.
Sounds good!
> N.B. Will /etc/os-release stay or be replaced by /usr/etc/os-release in the future?
There's
/usr/lib/os-release
already, but I expect/etc/os-release
to be around for the forseeable future.