A recent upgrade of cargo-vendor changed its output slightly, which
broke all cargoSha256 hashes in nixpkgs.
See https://github.com/NixOS/nixpkgs/issues/60668 for more information.
Since then, a few hashes have been fixed in master by hand, but there
were a lot still to do, so I did all of the ones left over with some
scripts I wrote.
The one hash I wasn’t able to update was habitat's, because it’s
currently broken and the build doesn’t get far enough to produce a
hash anyway.
This stops arandr from crashing if it tries to open a dialog box.
Note: the hook doesn't play nicely with gobject-introspection unless
strictDeps = false. See NixOS#56943.
According to xsecurelock's configure.ac file, each of the add
dependencies are used to:
- libXrandr: XRandR provides information about monitor layouts and is
strongly recommended on systems which can use more than one monitor
(which includes most laptops).
- libXext: The X Synchronization extension is used to get per-device idle
times. Used by until_nonidle only.
- libXScrnSaver: The X11 Screen Saver extension is used to turn off the
screen saver when X11 handles screen blanking (e.g. via timeout) anyway.
Saves CPU power.
Adding libXrandr fixes an issue where locking a screen in a multi
monitor setup results in the prompt information to not be in the middle
of the screen. The other dependencies are not tested if they fixed
something, however since upstream recommends than I think it is fair to
include them also.
Whenever we create scripts that are installed to $out, we must use runtimeShell
in order to get the shell that can be executed on the machine we create the
package for. This is relevant for cross-compiling. The only use case for
stdenv.shell are scripts that are executed as part of the build system.
Usages in checkPhase are borderline however to decrease the likelyhood
of people copying the wrong examples, I decided to use runtimeShell as well.
* Add an alias with a deprecation warning for `nxproxy` to avoid an
immediate breaking change.
* Use the default shell used in the build environment (`stdenv.shell`)
for patching. This shell is in the environment and thus used to patch
scripts using `patchShebangs`. The shell is referenced as `stdenv.shell`
in Makefiles to patch the remaining occurrences of `/bin/bash` in the
build environment.