Commit graph

514694 commits

Author SHA1 Message Date
R. Ryantm
34fd05a065
python310Packages.cfgv: 3.3.1 -> 3.4.0 2023-08-15 09:01:13 +08:00
Nick Cao
e03e8cf783
Merge pull request #249219 from FedericoSchonborn/budgie/budgie-backgrounds-2.0
budgie.budgie-backgrounds: 1.0 -> 2.0
2023-08-14 18:47:32 -06:00
Nick Cao
adeeb69b95
Merge pull request #249222 from r-ryantm/auto-update/python311Packages.types-ujson
python311Packages.types-ujson: 5.8.0.0 -> 5.8.0.1
2023-08-14 18:46:02 -06:00
Nick Cao
467e4c2e93
Merge pull request #249158 from Kiskae/nvidia-settings/fix-path
linuxPackages.nvidia_x11.settings: fix runpath
2023-08-14 18:43:48 -06:00
Nick Cao
1a1374a63b
Merge pull request #249134 from Ma27/bump-postgres-exporter
prometheus-postgres-exporter: 0.13.1 -> 0.13.2
2023-08-14 18:42:29 -06:00
R. Ryantm
5f5da13264 panoply: 5.2.8 -> 5.2.9 2023-08-15 00:41:43 +00:00
Nick Cao
78c530616c
Merge pull request #249143 from figsoda/typos
typos: 1.16.4 -> 1.16.5
2023-08-14 18:41:24 -06:00
Nick Cao
26923ff489
Merge pull request #249161 from figsoda/ripdrag
ripdrag: 0.4.0 -> 0.4.1
2023-08-14 18:40:20 -06:00
Nick Cao
fecb8c7752
nixosTests.fcitx5: make use of the newly added settings option 2023-08-15 08:36:07 +08:00
Nick Cao
eb2b0b09b3
Merge pull request #249223 from NickCao/fcitx
nixos/fcitx5: fix evaluation
2023-08-14 18:19:08 -06:00
Nick Cao
2af24d4417
nixos/fcitx5: fix evaluation 2023-08-15 08:15:41 +08:00
Nick Cao
d93d2eb0a0
Merge pull request #249099 from kilianar/portfolio-0.65.0
portfolio: 0.64.5 -> 0.65.0
2023-08-14 18:12:45 -06:00
Nick Cao
fe7ce2a481
Merge pull request #249121 from figsoda/typst-lsp
typst-lsp: 0.9.0 -> 0.9.1
2023-08-14 18:11:32 -06:00
R. Ryantm
79118350b0 python311Packages.types-ujson: 5.8.0.0 -> 5.8.0.1 2023-08-15 00:09:47 +00:00
Nick Cao
ecfbcc51f2
Merge pull request #248839 from Eliot00/keepmenu-update
keepmenu: 1.3.1 -> 1.4.0
2023-08-14 18:08:04 -06:00
Luke Granger-Brown
075047aeb9
Merge pull request #248967 from lukegb/py-influxdb-pandas
python3.pkgs.influxdb: fix after Pandas bump
2023-08-15 01:05:34 +01:00
Federico Damián Schonborn
e543e81fae
budgie.budgie-backgrounds: 1.0 -> 2.0
Signed-off-by: Federico Damián Schonborn <fdschonborn@gmail.com>
2023-08-14 20:51:37 -03:00
figsoda
b20308c508
Merge pull request #249178 from ruuda/cargo-fuzz0112
cargo-fuzz: 0.11.0 -> 0.11.2
2023-08-14 19:43:01 -04:00
Fabian Affolter
a5c1dd65fb trufflehog: 3.47.0 -> 3.48.0
Diff: https://github.com/trufflesecurity/trufflehog/compare/refs/tags/v3.47.0...v3.48.0

Changelog: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.48.0
2023-08-14 23:05:00 +00:00
Fabian Affolter
bdc5b90b32 python311Packages.reolink-aio: 0.7.6 -> 0.7.7
Diff: https://github.com/starkillerOG/reolink_aio/compare/refs/tags/0.7.6...0.7.7

Changelog: https://github.com/starkillerOG/reolink_aio/releases/tag/0.7.7
2023-08-14 22:45:41 +00:00
Fabian Affolter
1fbf8cf3ba checkov: 2.3.364 -> 2.3.365
Diff: https://github.com/bridgecrewio/checkov/compare/refs/tags/2.3.364...2.3.365

Changelog: https://github.com/bridgecrewio/checkov/releases/tag/2.3.365
2023-08-14 22:40:22 +00:00
FrancescoDeSimone
95f63c3207
Update pkgs/tools/backup/duplicati/default.nix
Co-authored-by: Ludovico <ludovicopiero@pm.me>
2023-08-14 22:11:33 +00:00
Adam Joseph
1912681314 tests.cross.sanity: enable mbuffer test
This test passes now.  Also fixes a minor oversight in the bug --
the test case needs to `touch $out` on success.
2023-08-14 15:09:06 -07:00
Adam Joseph
64046f0191 glibcCross: use a libgcc built separately from gcc
### Summary

This PR completely and finally solves the gcc<->glibc circular
`buildInputs` problem, for cross compilation.  The same technique
can be applied to native builds in the future.

Closes #213453

 ### Motivation

Prior to this PR, we had the following circular `buildInputs` problem:

1. gcc has glibc in its `buildInputs`

   - a compiled copy of glibc must be present before building gcc;
     if it isn't, gcc cripples itself (`inhibit_libc`) and refuses
     to build libgcc_s.so

2. glibc has libgcc_s.so in its `buildInputs`

   - glibc `dlopen()`s libgcc_s.so in order to implement POSIX
     thread cancellation.  For security reasons `glibc` requires
     that the path to `libgcc_s.so` is [hardwired] into `glibc` at
     compile time, so it's technically not a true dynamic link -- it
     just pretends to be one.

3. libgcc_s.so is built in the same derivation as gcc

   - libgcc_s.so is built as part of the gcc build process

We must cut one of these three links in the loop.

 ### Previous Attempts

Previously https://github.com/NixOS/nixpkgs/pull/238154 had
attempted to cut link (1) by building `gcc` without `glibc`, and
using the `libgcc_s` which emerges from that build.  Unfortunately
this just doesn't work.  GCC's configure script extracts quite a lot
of information from the glibc headers (which are a build artifact --
you can't just copy them out of the source tarball) and various
`./configure`-driven linking attempts.  If `glibc` isn't around at
build time you wind up with a `libgcc_s.so` that is missing various
unwinder features (see https://github.com/NixOS/nixpkgs/issues/213453
for the most problematic one).

Musl "cuts" link (2), or rather never creates it in the first place.
["Cancellation cleanup handling in musl has no relationship to C++
exceptions and unwinding... glibc implements cancellation as an
exception"](https://wiki.musl-libc.org/functional-differences-from-glibc.html#Thread-cancellation).
IMHO Musl made the smarter decision here.  It is incredibly rare to
find a codebase that uses both POSIX thread cancellation *and* C++
exceptions.  I have never seen a codebase that uses both *and*
expects them to be aware of each other, and I would be astonished if
one existed.  Glibc paid an immense cost in complexity for something
nobody has ever used.

 ### Changes Made

This PR cuts link (3): instead of building libgcc_s.so as part of
gcc, we build it separately from gcc.  Now there is a strict acyclic
graph of `buildInputs`:

```
 gccWithoutTargetLibc
 |
 +--->glibc-nolibgcc
 |    |
 |    v
 +--->libgcc
 |    |
 |    v
 +--->glibc
 |    |
 |    v
 +--->gcc
```

In other words, there's a simple linear `buildInputs` chain
`glibc-nolibgcc` `->` `libgcc` `->` `glibc` `->` `gcc` where all
four packages are compiled by (and therefore have as a
`(native)BuildInput`) `gccWithoutTargetLibc`.

`gccWithoutTargetLibc` and `glibc-nolibgcc` are strictly
bootstrapping artifacts; nothing else has them as a `buildInput` and
they shouldn't appear in the closure of any final deployment
packages.  `glibc-nolibgcc` lacks `libgcc_s.so`, so it will segfault
if you try to use it with POSIX thread cancellation.  Fortunately
all we need from it is (a) its headers (`lib.getDev`) and (b) to use
it in the `./configure` script for `libgcc`.

When translated over to the native bootstrap, `xgcc` takes the place
of `gccWithoutTargetLibc`, and the "first `glibc`" (we build two of
them) takes the place of `glibc-nolibgcc`.  At that point our native
and cross bootstrap have the same overall architecture, and it
becomes possible to merge them (at last!)

[213453]: https://github.com/NixOS/nixpkgs/issues/213453
[238154]: https://github.com/NixOS/nixpkgs/pull/238154
[hardwired]: 7553d0fe29/pkgs/development/libraries/glibc/default.nix (L69-L88)
2023-08-14 15:09:06 -07:00
Adam Joseph
18c52d09bc libgcc: make needed architecture-specific targets if isArmv7 2023-08-14 15:08:59 -07:00
Adam Joseph
c0e4121ba5 libgcc: make needed architecture-specific targets if isM68k 2023-08-14 15:08:29 -07:00
Adam Joseph
17ce8682d6 libgcc: let-rename stdenvNoLibs to stdenv 2023-08-14 15:08:29 -07:00
Adam Joseph
8c37dae9ad libgcc: gccConfigureFlags: minimize, fix
This commit minimizes libgcc's gccConfigureFlags, and -- importantly
-- includes the three flags needed in order to prevent
`inhibit_libc` from becoming active.
2023-08-14 15:08:29 -07:00
Adam Joseph
fa0ebe80f1 libgcc: configureFlags: minimize
A lot of these flags were unnecessary.
2023-08-14 15:08:29 -07:00
Adam Joseph
da371c7c5a libgcc: use forceLibgccToBuildCrtStuff
This duplicates (by reference) the two-line adjustment to libgcc's
Makefile needed in order to get crtstuff to build without a full
build of gcc.
2023-08-14 15:08:28 -07:00
Adam Joseph
92186a49bf gcc: factor out forceLibgccToBuildCrtStuff 2023-08-14 15:08:28 -07:00
Adam Joseph
383d62d94c libgcc: add glibc as a buildInput
This is necessary in order to prevent gcc from switching on
`inhibit_libc`, which cripples the `libgcc_s.so` unwinder.
2023-08-14 15:08:28 -07:00
Adam Joseph
b5893e7046 libgcc: let-float gccConfigureFlags out of the derivation attrs 2023-08-14 15:08:28 -07:00
Adam Joseph
2ecf2d954b libgcc: use finalAttrs instead of rec 2023-08-14 15:08:28 -07:00
Adam Joseph
72fa5978fd libgcc: minor formatting adjustments 2023-08-14 15:08:27 -07:00
Adam Joseph
fcaa5a7556 libgcc: take from gcc unless explicitly overridden 2023-08-14 15:08:27 -07:00
Adam Joseph
f445f64207 libgcc: (re)init at 12.3.0
This commit restores the pkgs/development/libraries/gcc/libgcc
package, which was deleted by commit 9818d120be.

We need to be able to build libgcc separately from gcc in order to
avoid a circular dependency.  Nixpkgs is unusual -- unlike any other
distribution, it cannot tolerate circular dependencies between
dynamically linked libraries.  Because of this, upstream is
extremely unsympathetic to the trouble that the glibc<->gcc circular
dependency causes for us; if we don't solve it ourselves it will not
be solved.
2023-08-14 15:08:27 -07:00
Ruud van Asseldonk
cc6ea4f1b2 cargo-fuzz: 0.11.0 -> 0.11.2 2023-08-14 23:48:13 +02:00
Fabian Affolter
4eceab09f4 python311Packages.pyoverkiz: 1.9.1 -> 1.10.1
Diff: https://github.com/iMicknl/python-overkiz-api/compare/refs/tags/v1.9.1...v1.10.1

Changelog: https://github.com/iMicknl/python-overkiz-api/releases/tag/v1.10.1
2023-08-14 23:44:49 +02:00
Maximilian Bosch
519c64b1be
nextcloudPackages*: pin maps to stable 1.1.0
No idea what this gibberish disguised as tag is, but nc4nix doesn't seem
to cope well with it. For now, let's pin `maps` to the stable 1.1 release (as
it's the case for nextcloud27 already) since 1.1 is supported for all of
v25 to v27[1], so this seems reasonable to do.

[1] https://github.com/nextcloud/maps/blob/v1.1.0/appinfo/info.xml#L36
2023-08-14 23:43:20 +02:00
Fabian Affolter
9bd3f4c030 python311Packages.backports-strenum: init at 1.2.4 2023-08-14 23:42:48 +02:00
Silvan Mosberger
150217c1ac lib.removePrefix: Optimise 2023-08-14 23:32:42 +02:00
Silvan Mosberger
8fab18d4c1 lib.removePrefix: Add tests 2023-08-14 23:29:00 +02:00
Maximilian Bosch
b91a4d8db4
Merge pull request #248336 from Ma27/bump-pycups
python3.pkgs.pycups: 1.9.73 -> 2.0.1
2023-08-14 23:12:51 +02:00
Robert Schütz
bc018252ff python310Packages.ocrmypdf: 14.3.0 -> 14.4.0
Diff: https://github.com/ocrmypdf/OCRmyPDF/compare/v14.3.0...v14.4.0

Changelog: https://github.com/ocrmypdf/OCRmyPDF/blob/v14.4.0/docs/release_notes.rst
2023-08-14 13:59:38 -07:00
Fabian Affolter
6d3e7145f7 python311Packages.caldav: 1.2.1 -> 1.3.6
Diff: https://github.com/python-caldav/caldav/compare/refs/tags/v1.2.1...v1.3.6

Changelog: https://github.com/python-caldav/caldav/releases/tag/v1.3.6
2023-08-14 22:54:06 +02:00
Fabian Affolter
64e8ab0cb5 python311Packages.twilio: 8.5.0 -> 8.6.0
Diff: https://github.com/twilio/twilio-python/compare/refs/tags/8.5.0...8.6.0

Changelog: https://github.com/twilio/twilio-python/blob/8.6.0/CHANGES.md
2023-08-14 22:47:15 +02:00
Fabian Affolter
89ca95f00b python311Packages.pyschlage: 2023.7.0 -> 2023.8.1
Diff: https://github.com/dknowles2/pyschlage/compare/refs/tags/2023.7.0...2023.8.1

Changelog: https://github.com/dknowles2/pyschlage/releases/tag/2023.8.1
2023-08-14 22:39:13 +02:00
Fabian Affolter
144482aebd python311Packages.pylitterbot: 2023.4.3 -> 2023.4.4
Diff: https://github.com/natekspencer/pylitterbot/compare/refs/tags/v2023.4.3...v2023.4.4

Changelog: https://github.com/natekspencer/pylitterbot/releases/tag/v2023.4.4
2023-08-14 22:38:09 +02:00
Fabian Affolter
e48398dfb9 python311Packages.mypy-boto3-ebs: 1.28.13 -> 1.28.16 2023-08-14 22:33:52 +02:00