Commit Graph
235853 Commits
Author SHA1 Message Date
Jan Tojnar d951c534da Merge pull request #82274 from jtojnar/suitesparese-5.6
suitesparse: 5.4.0 → 5.7.1 + clean up
2020-03-22 06:58:25 +01:00
Emily 62e34d1c87 nixos/acme: change default keyType to ec256
Previously, the NixOS ACME module defaulted to using P-384 for
TLS certificates. I believe that this is a mistake, and that we
should use P-256 instead, despite it being theoretically
cryptographically weaker.

The security margin of a 256-bit elliptic curve cipher is substantial;
beyond a certain level, more bits in the key serve more to slow things
down than add meaningful protection. It's much more likely that ECDSA
will be broken entirely, or some fatal flaw will be found in the NIST
curves that makes them all insecure, than that the security margin
will be reduced enough to put P-256 at risk but not P-384. It's also
inconsistent to target a curve with a 192-bit security margin when our
recommended nginx TLS configuration allows 128-bit AES. [This Stack
Exchange answer][pornin] by cryptographer Thomas Pornin conveys the
general attitude among experts:

> Use P-256 to minimize trouble. If you feel that your manhood is
> threatened by using a 256-bit curve where a 384-bit curve is
> available, then use P-384: it will increases your computational and
> network costs (a factor of about 3 for CPU, a few extra dozen bytes
> on the network) but this is likely to be negligible in practice (in a
> SSL-powered Web server, the heavy cost is in "Web", not "SSL").

[pornin]: https://security.stackexchange.com/a/78624

While the NIST curves have many flaws (see [SafeCurves][safecurves]),
P-256 and P-384 are no different in this respect; SafeCurves gives
them the same rating. The only NIST curve Bernstein [thinks better of,
P-521][bernstein] (see "Other standard primes"), isn't usable for Web
PKI (it's [not supported by BoringSSL by default][boringssl] and hence
[doesn't work in Chromium/Chrome][chromium], and Let's Encrypt [don't
support it either][letsencrypt]).

[safecurves]: https://safecurves.cr.yp.to/
[bernstein]: https://blog.cr.yp.to/20140323-ecdsa.html
[boringssl]: https://boringssl.googlesource.com/boringssl/+/e9fc3e547e557492316932b62881c3386973ceb2
[chromium]: https://bugs.chromium.org/p/chromium/issues/detail?id=478225
[letsencrypt]: https://letsencrypt.org/docs/integration-guide/#supported-key-algorithms

So there's no real benefit to using P-384; what's the cost? In the
Stack Exchange answer I linked, Pornin estimates a factor of 3×
CPU usage, which wouldn't be so bad; unfortunately, this is wildly
optimistic in practice, as P-256 is much more common and therefore
much better optimized. [This GitHub comment][openssl] measures the
performance differential for raw Diffie-Hellman operations with OpenSSL
1.1.1 at a whopping 14× (even P-521 fares better!); [Caddy disables
P-384 by default][caddy] due to Go's [lack of accelerated assembly
implementations][crypto/elliptic] for it, and the difference there seems
even more extreme: [this golang-nuts post][golang-nuts] measures the key
generation performance differential at 275×. It's unlikely to be the
bottleneck for anyone, but I still feel kind of bad for anyone having
lego generate hundreds of certificates and sign challenges with them
with performance like that...

[openssl]: https://github.com/mozilla/server-side-tls/issues/190#issuecomment-421831599
[caddy]: https://github.com/caddyserver/caddy/blob/2cab475ba516fa725d012f53ca417c3e039607de/modules/caddytls/values.go#L113-L124
[crypto/elliptic]: https://github.com/golang/go/tree/2910c5b4a01a573ebc97744890a07c1a3122c67a/src/crypto/elliptic
[golang-nuts]: https://groups.google.com/forum/#!topic/golang-nuts/nlnJkBMMyzk

In conclusion, there's no real reason to use P-384 in general: if you
don't care about Web PKI compatibility and want to use a nicer curve,
then Ed25519 or P-521 are better options; if you're a NIST-fearing
paranoiac, you should use good old RSA; but if you're a normal person
running a web server, then you're best served by just using P-256. Right
now, NixOS makes an arbitrary decision between two equally-mediocre
curves that just so happens to slow down ECDH key agreement for every
TLS connection by over an order of magnitude; this commit fixes that.

Unfortunately, it seems like existing P-384 certificates won't get
migrated automatically on renewal without manual intervention, but
that's a more general problem with the existing ACME module (see #81634;
I know @yegortimoshenko is working on this). To migrate your
certificates manually, run:

    $ sudo find /var/lib/acme/.lego/certificates -type f -delete
    $ sudo find /var/lib/acme -name '*.pem' -delete
    $ sudo systemctl restart 'acme-*.service' nginx.service

(No warranty. If it breaks, you get to keep both pieces. But it worked
for me.)
2020-03-22 05:27:20 +00:00
ryneeverett 6601c1699f vimPlugins: Update redirects 2020-03-22 05:04:26 +00:00
Jeff Labonte fa5fc4993e brave: 1.5.112 -> 1.5.115 2020-03-22 00:41:33 -04:00
Benjamin Hipple 129176452c nixos-ami: update nvme_core.io_timeout for linux kernel >= 4.15
NixOS 20.03 is built on kernel 5.4 and 19.09 is on 4.19, so we should update
this option to the highest value possible, per linked upstream instructions from
Amazon.
2020-03-22 00:35:56 -04:00
ryneeverett c78aa8e100 vimPlugins: Update 2020-03-22 04:05:19 +00:00
ryneeverett d4874a7ee6 vimPlugins: Automate redirect updates in update.py
Many of the plugins in vim-plugin-names are out of date and redirect to
their new github repos. This commit adds a flag to automatically update
these and defines a process for committing these updates into nixpkgs.
2020-03-22 04:04:50 +00:00
Matthew Bauer 81d84153c7 Merge pull request #82633 from kolbycrouch/master
retroarch: 1.8.1 -> 1.8.5
2020-03-21 23:49:01 -04:00
mlatus 3e35b4b15b do not set QT_SCREEN_AUTO_SCALE_FACTOR 2020-03-22 11:48:18 +08:00
Matthew Bauer ed46adb48b retroarch/cores.nix: use correct license for gw
This should be zlib the license, not zlib the package.
2020-03-21 23:38:58 -04:00
Matthew Bauer a8a0cb147f retroarch: remove macOS app support
This is badly out of date so requires extra work to get working.

Anyway, you can still use it without the menu, with no problem.
2020-03-21 23:36:54 -04:00
Matthew Bauer 9d8d66baf5 nixos/nixpkgs.nix: Allow just using config in system (#80818)
* nixos/nixpkgs.nix: Allow just using config in system

This assertion requires system to work properly. We might not have
this in cases where the user just sets config and wants Nixpkgs to
infer system from that. This adds a default for when this happens,
using doubleFromSystem.

* parens
2020-03-21 23:23:24 -04:00
Matthew Bauer 6b95893a6d Merge pull request #81042 from KoviRobi/zhf-20.03-fix-noweb
noweb: fix installation of manpages, use placeholders
2020-03-21 23:21:19 -04:00
Matthew Bauer 0127594a93 Merge pull request #80778 from expipiplus1/restic-cross
restic: fix cross compilation
2020-03-21 23:18:51 -04:00
Matthew Bauer 4327049a1c Merge pull request #82708 from hamishmack/openssl-musl
openssl: Fix openssl build for x86_64-unknown-linux-musl
2020-03-21 23:10:53 -04:00
Matthew Bauer 293b16aae9 Merge remote-tracking branch 'origin/master' into retroarch-update 2020-03-21 23:01:45 -04:00
Matthew Bauer f094e132e2 retroarch/cores.nix: cleanup
- Avoid using overrides unless necessary
- Set platform and ARCH by default
- Don’t set dontConfigure unless absolutely necessary
- Use preBuild instead of overriding entire configurePhase
2020-03-21 23:01:01 -04:00
Matthew Bauer d513980ea6 retroarch: 1.8.4 -> 1.8.5 2020-03-21 22:59:18 -04:00
Matthew Bauer e1cab10dcd Revert " Fix init"
This reverts commit e68a4094d2.
2020-03-21 22:58:58 -04:00
Reno RecklingandEnteee accabd163e Update pkgs/applications/window-managers/i3/lock-fancy.nix
Co-Authored-By: Enteee <ducksource@duckpond.ch>
2020-03-22 03:55:03 +01:00
rnhmjoj 3c93f1ba96 monero-gui: 0.15.0.1 -> 0.15.0.4 2020-03-22 03:37:45 +01:00
rnhmjoj ddabb09c35 monero: use a compatible protobuf version 2020-03-22 03:37:45 +01:00
Benjamin Hipple 79d875ae77 releaseTools: no-op expression cleanup
No functional change, was just reading through these and cleaning/sanitizing
them a bit while I'm here.
2020-03-21 21:15:33 -04:00
R. RyanTM b0c75e811a tiledb: 1.7.5 -> 1.7.6 2020-03-21 17:53:34 -07:00
Mario Rodas f08105e7b3 Merge pull request #83097 from Frostman/hugo-0.68.0
hugo: 0.67.1 -> 0.68.0
2020-03-21 19:46:37 -05:00
Florian Klink 382e751a68 drush: still needs php 7.3
If invoked with php 7.4 on a up2date Drupal 7 installation, drush
complains with a deprecation warning, that swallows all legit output:

> drush uli
Deprecated function: Array and string offset access syntax with curly braces is   [error]
deprecated in include_once() (line 20 of
/var/www/…/htdocs/includes/file.phar.inc).

Use php7.3 when invoking drush.
2020-03-22 01:27:58 +01:00
Florian Klink 3b3e2c080f drush: fix buildInputs / nativeBuildInputs
`makeWrapper` is a nativeBuildInput, and `php` and `which` are actually
only needed when constructing the wrapper, but no `buildInputs`.
2020-03-22 01:26:24 +01:00
Jan Tojnar cc73796779 Merge pull request #82699 from hedning/libnma
libnma: init at 1.8.28
2020-03-22 00:33:35 +01:00
Maximilian Bosch dcda17d856 nethack: 3.6.5 -> 3.6.6 2020-03-21 22:06:49 +01:00
Michael Weiss b67aafe8b8 python3Packages.httplib2: 0.15 -> 0.17 (#82355) 2020-03-21 21:42:23 +01:00
Michael Weiss 68e9ddacc2 fuse3: 3.9.0 -> 3.9.1 (#82999) 2020-03-21 21:41:37 +01:00
Maximilian Bosch 0d93355100 Merge pull request #83102 from Frostman/grafana-6.7.1
grafana: 6.7.0 -> 6.7.1
2020-03-21 21:39:38 +01:00
Michael Weiss 5ce86bc4ac wayvnc: 0.1.1 -> 0.1.2 2020-03-21 21:36:53 +01:00
Michael Weiss ea253398de androidStudioPackages.beta: 4.0.0.11 -> 4.0.0.12 2020-03-21 21:36:53 +01:00
Aaron Andersen 6c47902e01 nixos/mysql: test with mysql80 package 2020-03-21 15:47:38 -04:00
Sergey Lukjanov 9e98d47fb2 grafana: add Frostman to maintainers 2020-03-21 12:23:26 -07:00
Sergey Lukjanov bf453da8e8 grafana: 6.7.0 -> 6.7.1 2020-03-21 12:22:51 -07:00
Sergey Lukjanov b5f779b137 hugo: 0.67.1 -> 0.68.0 2020-03-21 11:42:10 -07:00
Domen Kožar 1ff9d94f38 spring: it works! 2020-03-21 18:18:44 +01:00
Orivej Desh 11315a3e27 lutris: 0.5.3 -> 0.5.4 2020-03-21 16:08:38 +00:00
Jan Tojnar 267edd343f Merge pull request #83081 from r-ryantm/auto-update/five-or-more
gnome3.five-or-more: 3.32.0 -> 3.32.1
2020-03-21 16:38:16 +01:00
José Romildo Malaquias 538e9544d1 Merge pull request #82938 from romildo/upd.mojave-gtk-theme
mojave-gtk-theme: 2020-02-20 -> 2020-03-19
2020-03-21 12:28:37 -03:00
Vladyslav M a321331c34 Merge pull request #83082 from killercup/tokei-11.0.0
tokei: 10.1.2 -> 11.0.0
2020-03-21 17:24:12 +02:00
Pascal Hertleif bdddf3c07f tokei: 10.1.2 -> 11.0.0 2020-03-21 16:01:36 +01:00
Vincent Laporte a8dafd2731 ocamlPackages.parmap: 1.1 → 1.1.1 2020-03-21 15:52:46 +01:00
R. RyanTM 10b46be451 gnome3.five-or-more: 3.32.0 -> 3.32.1 2020-03-21 14:41:38 +00:00
Aaron Andersen 4f9cea70bd nixos/duosec: fix indentation 2020-03-21 10:34:12 -04:00
Reno Reckling 55fb13e5e1 i3lock-fancy: Fix wrong path to mktemp
mktemp was not correctly replaced in this package. Leading to
"command not found: mktemp" error.
2020-03-21 15:27:52 +01:00
Daiderd Jordan cb75c0f905 gotools: fix darwin build 2020-03-21 14:44:57 +01:00
R. RyanTM ec28ea8914 dropbox-cli: 2019.02.14 -> 2020.03.04 2020-03-21 13:00:37 +00:00