When a library path contained the library name it was eagerly matched
libfwupd.so.2 => /build/fwupd-1.0.5/build/libfwupd/libfwupd.so.2 (0x00007ffff7bbd000)
^^^^^^^^^^^^^^^^^^^^^^
libgweather-3.so.15 => /build/libgweather-3.28.0/build/libgweather/libgweather-3.so.15 (0x00007ffff7bae000)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
which lead to a broken shared library path in the generated GIR file.
This patch allows the soname on the left-hand side of the arrow to
be matched to avoid the trap of the right-hand side. A negative
lookahead had to be added to select the store path, since only
the first match is taken into account.
libglib-2.0.so.0 => /nix/store/dqlc8y4phlg1hmdbwkhqfwhnxcac88d1-glib-2.56.0/lib/libglib-2.0.so.0 (0x00007ffff6400000)
This will not fix non-GNU platforms, where the soname is not printed
first, but we cannot do much without structured ldd output.
Closes: https://github.com/NixOS/nixpkgs/issues/34988
Upstream insists on not allowing bindir and other dir options
outside of prefix for some reason:
https://github.com/mesonbuild/meson/issues/2561
We remove the check so multiple outputs can work sanely.
In common distributions, RPATH is only needed for internal libraries so
meson removes everything else. With Nix, the locations of libraries
are not as predictable, therefore we need to keep them in the RPATH. [1]
Previously we have just kept the RPATH produced by the linker, patching
meson not to remove it. This deprived us of potentially replacing it
with install_rpath provided by project so we had to re-add it manually,
and also introduced a vulnerability of keeping build paths in RPATH.
This commit restores the clean-up but modifies it so the items starting
with /nix/store are retained.
This should be relatively safe since the store is immutable, however,
there might be some unwanted retainment of build_rpath [2] if it contains
paths from Nix store.
[1]: https://github.com/NixOS/nixpkgs/issues/31222#issuecomment-365811634
[2]: http://mesonbuild.com/Release-notes-for-0-42-0.html#added-build_rpath-keyword-argument
Remove spl patch that was introduced for grsecurity which we don't support
anymore. ZFS now needs perl for some scripts that are call in the configure
script.
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq -h` got 0 exit code
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq --help` got 0 exit code
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq help` got 0 exit code
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq -v` and found version 3.3.0
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq --version` and found version 3.3.0
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq version` and found version 3.3.0
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq -h` and found version 3.3.0
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq --help` and found version 3.3.0
- ran `/nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0/bin/copyq help` and found version 3.3.0
- found 3.3.0 with grep in /nix/store/9iss35v7mnmaa30c8lgwahh3vdi7zfgi-CopyQ-3.3.0
- directory tree listing: https://gist.github.com/d350765fb7038f7a4d3810c0ab3825d0
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/f3718pm1ndwa2bj7q3pdbx01qiday4sj-google-authenticator-libpam-1.05/bin/google-authenticator -h` got 0 exit code
- ran `/nix/store/f3718pm1ndwa2bj7q3pdbx01qiday4sj-google-authenticator-libpam-1.05/bin/google-authenticator --help` got 0 exit code
- ran `/nix/store/f3718pm1ndwa2bj7q3pdbx01qiday4sj-google-authenticator-libpam-1.05/bin/google-authenticator help` got 0 exit code
- directory tree listing: https://gist.github.com/a10c019e5dc879bc33b83175a42ed947
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/.electron-cash-wrapped -h` got 0 exit code
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/.electron-cash-wrapped --help` got 0 exit code
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/.electron-cash-wrapped help` got 0 exit code
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/.electron-cash-wrapped version` and found version 3.1.6
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/electron-cash -h` got 0 exit code
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/electron-cash --help` got 0 exit code
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/electron-cash help` got 0 exit code
- ran `/nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6/bin/electron-cash version` and found version 3.1.6
- found 3.1.6 with grep in /nix/store/9f6kwyk2zhwhgxkvk2ms8v6g3qz3g154-electron-cash-3.1.6
- directory tree listing: https://gist.github.com/76db342c6da1ceac5b3b7dced43798f9
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0/bin/clusternode -h` got 0 exit code
- ran `/nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0/bin/clusternode --help` got 0 exit code
- ran `/nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0/bin/clusternode help` got 0 exit code
- ran `/nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0/bin/clusternode --version` and found version 4.1.0
- ran `/nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0/bin/clusternode version` and found version 4.1.0
- ran `/nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0/bin/clusternode help` and found version 4.1.0
- found 4.1.0 with grep in /nix/store/8z6xvzan192jya1l1cqfrzfzqrqnfw33-EventStore-4.1.0
- directory tree listing: https://gist.github.com/aeb82087f0c9c92394ee5d61f1f4bf3b
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3/bin/goxel --help` got 0 exit code
- ran `/nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3/bin/goxel -V` and found version 0.7.3
- ran `/nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3/bin/goxel --version` and found version 0.7.3
- ran `/nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3/bin/.goxel-wrapped --help` got 0 exit code
- ran `/nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3/bin/.goxel-wrapped -V` and found version 0.7.3
- ran `/nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3/bin/.goxel-wrapped --version` and found version 0.7.3
- found 0.7.3 with grep in /nix/store/zinzc9bkhn7n97jlp7mian6bzw1dzz8d-goxel-0.7.3
- directory tree listing: https://gist.github.com/86658b436ae3d2085eba59f7c23e0825
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 2.11.1 with grep in /nix/store/f5yrc3hjc7rzc3zg57vss2av1djk6496-gqrx-2.11.1
- directory tree listing: https://gist.github.com/3716484adfc25ea5af04b853ac010788
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 0.31.0 with grep in /nix/store/fvg6pam343ci69qdjrcw1yqjznmhnwq5-gparted-0.31.0
- directory tree listing: https://gist.github.com/4cc11c6b07976ff42e854ec92cc48f35
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/zchkzwsgsnl8aqbxzvi7hh93bdfl4759-netcdf-4.6.1/bin/nc-config --help` got 0 exit code
- ran `/nix/store/zchkzwsgsnl8aqbxzvi7hh93bdfl4759-netcdf-4.6.1/bin/nc-config --version` and found version 4.6.1
- found 4.6.1 with grep in /nix/store/zchkzwsgsnl8aqbxzvi7hh93bdfl4759-netcdf-4.6.1
- directory tree listing: https://gist.github.com/74ab9782611602d870caba813c09697e
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/l6j73nin5ip68kl9nn6zgllp88hlbdli-lastpass-cli-1.3.0/bin/lpass -V` and found version 1.3.0
- ran `/nix/store/l6j73nin5ip68kl9nn6zgllp88hlbdli-lastpass-cli-1.3.0/bin/lpass -v` and found version 1.3.0
- ran `/nix/store/l6j73nin5ip68kl9nn6zgllp88hlbdli-lastpass-cli-1.3.0/bin/lpass --version` and found version 1.3.0
- found 1.3.0 with grep in /nix/store/l6j73nin5ip68kl9nn6zgllp88hlbdli-lastpass-cli-1.3.0
- directory tree listing: https://gist.github.com/67aab5e731ed5d963e433d03c1a27870
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2 -h` got 0 exit code
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2 --help` got 0 exit code
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2 -v` and found version 0.1.2
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2 --version` and found version 0.1.2
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2-cli -h` got 0 exit code
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2-cli --help` got 0 exit code
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2-cli help` got 0 exit code
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2-cli -v` and found version 0.1.2
- ran `/nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2/bin/openrct2-cli --version` and found version 0.1.2
- found 0.1.2 with grep in /nix/store/qza712wxad8v4scd06gb2jisl0cl9vf6-openrct2-0.1.2
- directory tree listing: https://gist.github.com/dfc357796fabf91024a21e322be78e5f
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 2.2.1 with grep in /nix/store/kpbzkj0s48h5mvvsvprqfqpah2kispil-openexr_viewers-2.2.1
- directory tree listing: https://gist.github.com/946b2664eb02e90d8d73194ffd04ac5f
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98/bin/isnsadm -h` got 0 exit code
- ran `/nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98/bin/isnsadm --help` got 0 exit code
- ran `/nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98/bin/isnsd -h` got 0 exit code
- ran `/nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98/bin/isnsd --help` got 0 exit code
- ran `/nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98/bin/isnsdd -h` got 0 exit code
- ran `/nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98/bin/isnsdd --help` got 0 exit code
- found 0.98 with grep in /nix/store/fabx95vlf0nyw2dvsq2zjsv8j2vdqs12-open-isns-0.98
- directory tree listing: https://gist.github.com/1ad3d6e680af4f1462bda181b2cdc43e
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/isql --help` got 0 exit code
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/isql --version` and found version 2.3.6
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/isql --help` and found version 2.3.6
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/odbcinst --help` got 0 exit code
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/odbcinst --version` and found version 2.3.6
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/odbcinst --help` and found version 2.3.6
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/iusql --help` got 0 exit code
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/iusql --version` and found version 2.3.6
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/iusql --help` and found version 2.3.6
- ran `/nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6/bin/odbc_config --version` and found version 2.3.6
- found 2.3.6 with grep in /nix/store/mmcxnlq2km3jcd0iwfnfrqr1v3g1k0ax-unixODBC-2.3.6
- directory tree listing: https://gist.github.com/09c59bac7a63f422b01e46272e81915b
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/xlf49a3742xgl9zhl6v5s31fc6gv2k9h-virtuoso-opensource-7.2.4.2/bin/virtuoso-t help` got 0 exit code
- ran `/nix/store/xlf49a3742xgl9zhl6v5s31fc6gv2k9h-virtuoso-opensource-7.2.4.2/bin/isql --help` got 0 exit code
- ran `/nix/store/xlf49a3742xgl9zhl6v5s31fc6gv2k9h-virtuoso-opensource-7.2.4.2/bin/isqlw --help` got 0 exit code
- ran `/nix/store/xlf49a3742xgl9zhl6v5s31fc6gv2k9h-virtuoso-opensource-7.2.4.2/bin/inifile help` got 0 exit code
- found 7.2.4.2 with grep in /nix/store/xlf49a3742xgl9zhl6v5s31fc6gv2k9h-virtuoso-opensource-7.2.4.2
- directory tree listing: https://gist.github.com/dcd661201732277a82f8e3f4e4263587
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dirs-update --help` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/.xdg-user-dirs-update-wrapped --help` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dir -h` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dir --help` got 0 exit code
- ran `/nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17/bin/xdg-user-dir help` got 0 exit code
- found 0.17 with grep in /nix/store/2isrxm5fr9kgxkh0pbzb5d77jpip1vvd-xdg-user-dirs-0.17
- directory tree listing: https://gist.github.com/e8c151156e7a65f9f958a9a64e1e5a86
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/hlkw8kda3fc03mr4j8pcz11cj19rlls2-xerces-c-3.2.1/bin/MemParse -h` got 0 exit code
- ran `/nix/store/hlkw8kda3fc03mr4j8pcz11cj19rlls2-xerces-c-3.2.1/bin/MemParse --help` got 0 exit code
- ran `/nix/store/hlkw8kda3fc03mr4j8pcz11cj19rlls2-xerces-c-3.2.1/bin/PSVIWriter help` got 0 exit code
- ran `/nix/store/hlkw8kda3fc03mr4j8pcz11cj19rlls2-xerces-c-3.2.1/bin/SCMPrint help` got 0 exit code
- ran `/nix/store/hlkw8kda3fc03mr4j8pcz11cj19rlls2-xerces-c-3.2.1/bin/SEnumVal help` got 0 exit code
- found 3.2.1 with grep in /nix/store/hlkw8kda3fc03mr4j8pcz11cj19rlls2-xerces-c-3.2.1
- directory tree listing: https://gist.github.com/b0e7f99274b68686c5e81ab68cf510ba
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 1.4.0 with grep in /nix/store/bxyqz9d31nzmjxahn97f60706ck895sw-xinit-1.4.0
- directory tree listing: https://gist.github.com/6f82742b7f83f4fcd6fddb1da6311b84
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 2.4.0 with grep in /nix/store/61y7ka641q9l5ykkfdilk1507xqv8gnl-xf86-video-vesa-2.4.0
- directory tree listing: https://gist.github.com/148425747ac738aa905b76186c75afc4
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.)
- found 18.0.1 with grep in /nix/store/00hw6alrivxhdl0x9alclhidmnq358mb-xf86-video-ati-18.0.1
- directory tree listing: https://gist.github.com/094fbc79ea86324a9b95f4784be3e1cd
Semi-automatic update generated by https://github.com/ryantm/nix-update tools. These checks were done:
- built on NixOS
- ran `/nix/store/gjg9nnbybyy2mig9hkd8kfsv7msdi733-xkill-1.0.5/bin/xkill -v` and found version 1.0.5
- found 1.0.5 with grep in /nix/store/gjg9nnbybyy2mig9hkd8kfsv7msdi733-xkill-1.0.5
- directory tree listing: https://gist.github.com/220fd7765fdc12432a2b23fd0f68c24b
And also build in parallel.
I don't understand why we manually tediously link every single directory
from the source, but I don't want to investigate too much.
- Have only one sed expression per line
- Put the important stuff closer to the command and not hidden in some
continuation line. That is, don't do:
sed \
<boring stuff> \
<boring stuff> \
<boring stuff> \
<boring stuff> \
<boring stuff> \
<IMPORTANT STUFF>
but:
sed <IMPORTANT STUFF> \
<boring stuff> \
<boring stuff> \
<boring stuff> \
<boring stuff> \
<boring stuff>