This packages k3s as a single self-contained binary (as upstream k3s
does), but without having to download any impure already-built binaries.
The upstream packaging scripts are used. Due to k3s's rather complicated
packaging arrangement, this ends up being a rather long derivation.
Attempt to fix the following issue:
Running custom install script '/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/bin/meson --internal yelphelper install --subdir=help --id=modem-manager-gui --installdir=share/help --sources=about.page@@contrib-code.page@@contrib-translations.page@@index.page@@license.page@@report-bugs.page@@usage-config.page@@usage-contacts.page@@usage-getinfo.page@@usage-modem.page@@usage-netsearch.page@@usage-sms.page@@usage-traffic.page@@usage-ussd.page --symlinks=true --media=figures/contacts-window.png@@figures/modem-manager-gui-logo.png@@figures/network-info.png@@figures/scan-window.png@@figures/sms-window.png@@figures/traffic-window.png@@figures/ussd-window.png@@figures/startup-window.png'
Traceback (most recent call last):
File "/nix/store/0jg6lgd7i6c3y4jjms8j0b0cigij94hn-itstool-2.0.6/bin/itstool", line 1598, in <module>
doc.merge_translations(translations, opts.lang, strict=opts.strict)
File "/nix/store/0jg6lgd7i6c3y4jjms8j0b0cigij94hn-itstool-2.0.6/bin/itstool", line 984, in merge_translations
lcpar = lcpar.parent
File "/nix/store/cp1g6m360dky1baz3x5q5gm92basj7rv-python3-3.7.7-env/lib/python3.7/site-packages/libxml2.py", line 296, in get_parent
return nodeWrap(ret)
File "/nix/store/cp1g6m360dky1baz3x5q5gm92basj7rv-python3-3.7.7-env/lib/python3.7/site-packages/libxml2.py", line 580, in nodeWrap
if name[0:8] == "document":
TypeError: 'NoneType' object is not subscriptable
[...]
Installing /build/hg-archive/build/help/uk/usage-ussd.page to /nix/store/8miw71zkfjqd8z3v5zzp8ybv6pxmc33y-modem-manager-gui-0.0.19.1/share/help/uk/modem-manager-gui/usage-ussd.page
Traceback (most recent call last):
File "/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/bin/meson", line 9, in <module>
sys.exit(main())
File "/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/lib/python3.7/site-packages/mesonbuild/mesonmain.py", line 226, in main
return run(sys.argv[1:], launcher)
File "/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/lib/python3.7/site-packages/mesonbuild/mesonmain.py", line 215, in run
return run_script_command(args[1], args[2:])
File "/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/lib/python3.7/site-packages/mesonbuild/mesonmain.py", line 163, in run_script_command
return module.run(script_args)
File "/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/lib/python3.7/site-packages/mesonbuild/scripts/yelphelper.py", line 132, in run
destdir, options.project_id, options.symlinks)
File "/nix/store/9z5fg8ia4lr10nqglk3jlwyd7xcqadzk-meson-0.53.2/lib/python3.7/site-packages/mesonbuild/scripts/yelphelper.py", line 71, in install_help
shutil.copyfile(infile, outfile)
File "/nix/store/vs4vj1yzqj1bkcqkf3b6sxm6jfy1gb4j-python3-3.7.7/lib/python3.7/shutil.py", line 120, in copyfile
with open(src, 'rb') as fsrc:
FileNotFoundError: [Errno 2] No such file or directory: '/build/hg-archive/build/help/uk/usage-ussd.page'
FAILED: meson-install
This can e.g. save around 150k lines of unnecessary log messages which
take up around 66% of the total lines (based on a log of 80.0.3987.100):
29527 warning: unknown warning option '-Wno-bitwise-conditional-parentheses'; did you mean '-Wno-bitwise-op-parentheses'? [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-builtin-assume-aligned-alignment' [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-deprecated-copy'; did you mean '-Wno-deprecated'? [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-final-dtor-non-final-class'; did you mean '-Wno-abstract-final-class'? [-Wunknown-warning-option]
29527 warning: unknown warning option '-Wno-implicit-int-float-conversion'; did you mean '-Wno-implicit-float-conversion'? [-Wunknown-warning-option]
Some terraform providers were moved to the `hashicorp` organization,
some are still in the `terraform-providers` organization.
GitHub doesn't show moved repositories when querying via the API (only
on the web interface). In addition, if there are more than 100 results
(there still are), we'd need to implement paging, which is cubersome in curl.
In addition to that, to look up tags, we used to creating a HTTP request
for each and every provider, which caused us to easily get blocked by
GitHubs rate-limiting.
Instead of all that, let's use `hub` (which implements paging) and the
GitHub's GraphQL endpoint to get a list all repositories for a given
organization AND the latest tag for each of them.
We post-process the output with `jq`.
This also removes the providers.txt and folds the data into the script.
The blacklist was becoming too annoying to handle as a config file.
For the whitelist, we still need to individually fetch tags.
Fixes#83215
Co-Authored-By: zimbatm <zimbatm@zimbatm.com>