This commit fixes#26650
The main problem was that the iKVM related libraries are always loaded
from the current working directory. The bundled wrapper script makes
sure to CD to the package root folder. This is a no-go in nix as the
application writes its settings in the current working directory and the
store is read-only.
Workaround: create a directory in the users home, where the required
binaries are symlinked and is writable for the current user.
There was an additional issue that for some BMCs IPMIView relies on
the bundled `stunnel` binary to wrap the iKVM traffic in a TLS tunnel.
Therefore it has to be patched to make it executable and the `killall`
command is needed on the PATH because it is used to terminate the
`stunnel` process upon exit.
This is an optional feature for gif post-processing.
It produces much better quality gif.
Also added which to PATH with the wrapper, as it's
needed to check for these types of programs [0].
[0]: 8b48e8847a/src/utils.vala (L57)
The `name` parameter to buildPerlPackage is deprecated, and
everything currently in perl-packages.nix has already been
converted to use pname/version instead.
This also changes the URLs to be pure string literals,
matching the convention used in nixpkgs in practice.
Sage now by default expects the lcalc library to be named Lfunction
(instead of libLfunction). This could be changed by an environment
variable (https://trac.sagemath.org/ticket/28224), but various distros
seem to agree on this standard
(https://groups.google.com/forum/#!topic/sage-packaging/xvh55IxHTZg) so
it's best just to follow it. The old standard was set by sage anyway and
sage is the only consumer of lcalc in nixpkgs.
iosevka: Simplify custom build process
The interface to configure a custom build with Nix has changed due to changes upstream; please refer to the derivation for details.
The functionality provided by this package has been added to the Idris contrib library (module `Interfaces.Verified`).
Therefore identifiers cannot be disambiguated anymore.