Context: discussion in https://github.com/NixOS/nixpkgs/pull/82630
Mesa has been supporting S3TC natively without requiring these libraries
since the S3TC patent expired in December 2017.
* let's try 2.0 version now, no time better than the present! Maybe!
* bz2 -> xz
* maybe python3
* disable pyGtkGlade for deps, maybe not needed?
* fix gtk/etc deps, deluge-gtk works! \o/
* restore installation of images and such
The old version is kept available as some torrent trackers have not
updated their whitelists yet.
This makes packages use lapack and blas, which can wrap different
BLAS/LAPACK implementations.
treewide: cleanup from blas/lapack changes
A few issues in the original treewide:
- can’t assume blas64 is a bool
- unused commented code
This is based on previous work for switching between BLAS and LAPACK
implementation in Debian[1] and Gentoo[2]. The goal is to have one way
to depend on the BLAS/LAPACK libraries that all packages must use. The
attrs “blas” and “lapack” are used to represent a wrapped BLAS/LAPACK
provider. Derivations that don’t care how BLAS and LAPACK are
implemented can just use blas and lapack directly. If you do care what
you get (perhaps for some CPP), you should verify that blas and lapack
match what you expect with an assertion.
The “blas” package collides with the old “blas” reference
implementation. This has been renamed to “blas-reference”. In
addition, “lapack-reference” is also included, corresponding to
“liblapack” from Netlib.org.
Currently, there are 3 providers of the BLAS and LAPACK interfaces:
- lapack-reference: the BLAS/LAPACK implementation maintained by netlib.org
- OpenBLAS: an optimized version of BLAS and LAPACK
- MKL: Intel’s unfree but highly optimized BLAS/LAPACK implementation
By default, the above implementations all use the “LP64” BLAS and
LAPACK ABI. This corresponds to “openblasCompat” and is the safest way
to use BLAS/LAPACK. You may received some benefits from “ILP64” or
8-byte integer BLAS at the expense of breaking compatibility with some
packages.
This can be switched at build time with an override like:
import <nixpkgs> {
config.allowUnfree = true;
overlays = [(self: super: {
lapack = super.lapack.override {
lapackProvider = super.lapack-reference;
};
blas = super.blas.override {
blasProvider = super.lapack-reference;
};
})];
}
or, switched at runtime via LD_LIBRARY_PATH like:
$ LD_LIBRARY_PATH=$(nix-build -E '(with import <nixpkgs> {}).lapack.override { lapackProvider = pkgs.mkl; is64bit = true; })')/lib:$(nix-build -E '(with import <nixpkgs> {}).blas.override { blasProvider = pkgs.mkl; is64bit = true; })')/lib ./your-blas-linked-binary
By default, we use OpenBLAS LP64 also known in Nixpkgs as
openblasCompat.
[1]: https://wiki.debian.org/DebianScience/LinearAlgebraLibraries
[2]: https://wiki.gentoo.org/wiki/Blas-lapack-switch
This is an updated version of the former upstream,
https://github.com/AndroidHardeningArchive/linux-hardened, and provides
a minimal set of additional hardening patches on top of upstream.
The patch already incorporates many of our hardened profile defaults,
and releases are timely (Linux 5.5.15 and 5.6.2 were released on
2020-04-02; linux-hardened patches for them came out on 2020-04-03 and
2020-04-04 respectively).
Build now relies on cmake.
Added outputs "doc" and "man".
Setting CMAKE_INSTALL_SYSCONF_PREFIX is needed for bash completion
directory, otherwise it tries to put files in /etc/bash_completion.d
This commit migrates the Nomad package from the 0.10.x line of releases
to 0.11.X.
This allows us to also bump the version of Go that is used to 1.14.x.
NOTE: 1.14.x will be needed for the rest of the 0.11.x releases as Nomad
only bumps patch versions of Go within a release series.
CHANGELOG:
FEATURES:
Container Storage Interface [beta]: Nomad has expanded support
of stateful workloads through support for CSI plugins.
Exec UI: an in-browser terminal for connecting to running allocations.
Audit Logging (Enterprise): Audit logging support for Nomad
Enterprise.
Scaling APIs: new scaling policy API and job scaling APIs to support external autoscalers
Task Dependencies: introduces lifecycle stanza with prestart and sidecar hooks for tasks within a task group
BACKWARDS INCOMPATIBILITIES:
driver/rkt: The Rkt driver is no longer packaged with Nomad and is instead
distributed separately as a driver plugin. Further, the Rkt driver codebase
is now in a separate
repository.
IMPROVEMENTS:
core: Optimized streaming RPCs made between Nomad agents [GH-7044]
build: Updated to Go 1.14.1 [GH-7431]
consul: Added support for configuring enable_tag_override on service stanzas. [GH-2057]
client: Updated consul-template library to v0.24.1 - added support for working with consul connect. Deprecated vault_grace [GH-7170]
driver/exec: Added no_pivot_root option for ramdisk use [GH-7149]
jobspec: Added task environment interpolation to volume_mount [GH-7364]
jobspec: Added support for a per-task restart policy [GH-7288]
server: Added minimum quorum check to Autopilot with minQuorum option [GH-7171]
connect: Added support for specifying Envoy expose path configurations [GH-7323] [GH-7396]
connect: Added support for using Connect with TLS enabled Consul agents [GH-7602]
BUG FIXES:
core: Fixed a bug where group network mode changes were not honored [GH-7414]
core: Optimized and fixed few bugs in underlying RPC handling [GH-7044] [GH-7045]
api: Fixed a panic when canonicalizing a jobspec with an incorrect job type [GH-7207]
api: Fixed a bug where calling the node GC or GcAlloc endpoints resulted in an error EOF return on successful requests [GH-5970]
api: Fixed a bug where /client/allocations/... (e.g. allocation stats) requests may hang in special cases after a leader election [GH-7370]
cli: Fixed a bug where nomad agent -dev fails on Windows [GH-7534]
cli: Fixed a panic when displaying device plugins without stats [GH-7231]
cli: Fixed a bug where alloc exec command in TLS environments may fail [GH-7274]
client: Fixed a panic when running in Debian with /etc/debian_version is empty [GH-7350]
client: Fixed a bug affecting network detection in environments that mimic the EC2 Metadata API [GH-7509]
client: Fixed a bug where a multi-task allocation maybe considered healthy despite a task restarting [GH-7383]
consul: Fixed a bug where modified Consul service definitions would not be updated [GH-6459]
connect: Fixed a bug where Connect enabled allocation would not stop after promotion [GH-7540]
connect: Fixed a bug where restarting a client would prevent Connect enabled allocations from cleaning up properly [GH-7643]
driver/docker: Fixed handling of seccomp security_opts option [GH-7554]
driver/docker: Fixed a bug causing docker containers to use swap memory unexpectedly [GH-7550]
scheduler: Fixed a bug where changes to task group shutdown_delay were not persisted or displayed in plan output [GH-7618]
ui: Fixed handling of multi-byte unicode characters in allocation log view [GH-7470] [GH-7551]
* Remove unneeded dependencies
* Stop vendoring other dependencies (fluidsynth, hidapi, libltc, qm-dsp)
* Fix using incorrect libusb version (libusb package is just a legacy compat layer)
* Move build-time dependencies to nativeBuildInputs
* Install freedesktop files & man page
* Drop libintl replacement that no longer applies
Also removed `pkgs.hydra-flakes` since flake-support has been merged
into master[1]. Because of that, `pkgs.hydra-unstable` is now compiled
against `pkgs.nixFlakes` and currently requires a patch since Hydra's
master doesn't compile[2] atm.
[1] https://github.com/NixOS/hydra/pull/730
[2] https://github.com/NixOS/hydra/pull/732
So now we have only packages for human interaction in php.packages and
only extensions in php.extensions. With this php.packages.exts have
been merged into the same attribute set as all the other extensions to
make it flat and nice.
The nextcloud module have been updated to reflect this change as well
as the documentation.
This means php packages can now refer to other php packages by looking
them up in the php.packages attribute and gets rid of the internal
recursive set previously defined in php-packages.nix. This also means
that in applications where previously both the php package and the
corresponding version of the phpPackages package set had to be
specified, the php package will now suffice.
This also adds the phpWithExtensions parameter to the
php-packages.nix, which can be used by extensions that need a fully
featured PHP executable.
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.