`retroArchCores` is strange: it requires a global configuration on nixpkgs, as:
```nix
nixpkgs.config.retroarch = {
enableDolphin = true;
enableMGBA = true;
enableMAME = true;
};
```
To do so, we ended up declaring all available emulators on
`all-packages.nix`. Failing to do so would mean that the emulator
wouldn't be available.
However, there is a mechanism on nixpkgs that also works: overrides.
Overrides are similar on how other packages works, for example:
```nix
(retroarch.override { cores = with libretro; [ citra snes9x ]; });
```
So let's remove `retroArchCores` and leave the overrides mechanism
instead.
- Drop graalvm8 since it was removed by upstream
- Add update.sh script to make it easier to generate hashes for all
platforms
- Fix GraalPython, broken since #141825 (sorry)
- Small refactorings and fixes
This derivation was not updated since Jan 18, 2020. It doesn't
build on Hydra because it needs too much memory (~30GB). And no other
packages depend on it.
Also, this is a very complex package and really difficult to maintain.
It is a blocker for https://github.com/NixOS/nixpkgs/pull/141794, since
a recent bump of broke it.
`graalvm8-ce` is the replacement. It is much more up-to-date (`graalvm`
is on version 19.2.1, `graalvm8-ce` is on version 21.2.0), it is much
easier on Hydra (it uses the binary from Oracle).
I also deprecated `jvmci8` and `mx`. I am not sure if `graalvm8`
supplies them, but if something is missing we can always add it later to
`graalvm8-ce`.
The package doesn't run because of missing dependencies. I fixed these
but it still didn't work properly. (It complained that the searched page
was unexpectedly short, although according to strace it didn't even
connect anywhere.)
Upstream (https://gitlab.com/zerodogg/swec) did not see any commits in
the last 9 years, so I think we should just drop this package.
LinkChecker, which is also packaged seems like a good and working
alternative.