Commit Graph
13644 Commits
Author SHA1 Message Date
Valentin GagarinandGitHub dda83a59c1 Merge pull request #7158 from sternenseemann/foldl-strict-accumulation-value 2023-02-19 23:54:14 +01:00
Robert HensingandGitHub a88ae62bc0 Merge pull request #7811 from Et7f3/fix_memory_leaks
Reduce memory leaks
2023-02-16 21:21:54 +01:00
Et7f3 cec23f5dda ExprOpHasAttr,ExprSelect,stripIndentation,binds,formals: delete losts objects
We are looking for *$ because it indicate that it was constructed with a new but
not release. De-referencing shallow copy so deleting as whole might create
dangling pointer that's why we move it so we delete a empty containers + the
nice perf boost.
2023-02-16 19:53:55 +01:00
Eelco DolstraandGitHub 601849b95a Merge pull request #7835 from edolstra/fix-static-build
Fix static build
2023-02-15 09:44:40 +01:00
Eelco Dolstra 35049389cd Fix static build
For static builds, we need to propagate all the static library
dependencies to the link of the program. E.g. if libstore-tests-exe
depends on libnixstore-tests, and libnixstore-tests depends on
libstore, then libstore-tests-exe needs to link against libstore.

https://hydra.nixos.org/build/209007480
2023-02-14 15:54:19 +01:00
Eelco DolstraandGitHub 707ba52f2d Merge pull request #7830 from yorickvP/fix-writable-etc
Don't allow writing to /etc
2023-02-14 14:41:59 +01:00
Yorick van Pelt 49fd72a903 Make /etc writability conditional on uid-range feature 2023-02-14 13:55:41 +01:00
Yorick van Pelt ad1f61c39b container test: make /etc writable 2023-02-14 12:26:40 +01:00
Yorick van Pelt db41f74af3 Don't allow writing to /etc 2023-02-14 12:03:34 +01:00
tomberekandGitHub df9a71f6ea Merge pull request #4589 from obsidiansystems/better-build-ca-json
Test `nix build --json` return output paths in floating CA case
2023-02-13 09:07:57 -05:00
tomberekandGitHub 601faa00d7 Merge pull request #7744 from obsidiansystems/split-installable-store-path
Factor out `InstallableStorePath` to its own file, dedup
2023-02-13 08:57:19 -05:00
Eelco DolstraandGitHub c205d10c66 Merge pull request #7616 from hercules-ci/fix-3898
Fix foreign key error inserting into NARs #3898
2023-02-13 13:02:19 +01:00
Eelco DolstraandGitHub 2037f8a3ee Merge pull request #7804 from PJungkamp/fix-completions
Infer short completion descriptions for commandline flags
2023-02-13 11:26:38 +01:00
Et7f3 fa89d317b7 ExprString: Avoid copy of string 2023-02-12 05:49:45 +01:00
Et7f3 3d16f2a281 parser: use implicit rule 2023-02-12 05:49:45 +01:00
John Ericson 55016b6fcd Test nix build --json return output paths in floating CA case
Adding a test to ensure there is no regression.

The tests that are split out of `tests/build.sh` are ones that don't yet
work with CA derivation. I have not yet evaluated whether they should or
not.

This behavior, reported missing in issue #4661, already got fixed in
PR #4818, but didn't get a test case then.
2023-02-10 18:04:13 -05:00
Philipp Jungkamp 30edd7af53 Completions::add use libutil trim() 2023-02-10 22:17:09 +01:00
Eelco DolstraandGitHub c184566046 Merge pull request #7797 from hercules-ci/tests-set-ps4
tests: Add command source locations to test log
2023-02-10 20:55:57 +01:00
Eelco DolstraandGitHub b3d29e80e0 Merge pull request #7805 from edolstra/c++2a
Fix building with GCC 9
2023-02-10 20:41:29 +01:00
Eelco DolstraandGitHub 67451d8ed7 Merge pull request #7802 from edolstra/fix-7783
Fix PID namespace support check
2023-02-10 20:41:13 +01:00
Eelco Dolstra 5978ceb271 Fix building with GCC 9
Nixpkgs on aarch64-linux is currently stuck on GCC 9
(https://github.com/NixOS/nixpkgs/issues/208412) and using gcc11Stdenv
doesn't work either.

So use c++2a instead of c++20 for now. Unfortunately this means we
can't use some C++20 features for now (like std::span).
2023-02-10 18:38:57 +01:00
Théophane HufschmittandGitHub 9ebbe35817 Merge pull request #5588 from tweag/balsoft/xdg
Follow XDG Base Directory standard
2023-02-10 18:05:50 +01:00
Philipp Jungkamp a537095e1f Infer short completion descriptions for commandline flags
Descriptions for commandline flags may not include newlines and should
be rather short for display in a shell. Truncate the description string
of a flag on '\n' or '.' to and add an ellipsis if needed.
2023-02-10 18:03:19 +01:00
Eelco Dolstra a21405a4e8 Add regression test 2023-02-10 17:51:44 +01:00
2384d36083 A setting to follow XDG Base Directory standard
XDG Base Directory is a standard for locations for storing various
files. Nix has a few files which seem to fit in the standard, but
currently use a custom location directly in the user's ~, polluting
it:

- ~/.nix-profile
- ~/.nix-defexpr
- ~/.nix-channels

This commit adds a config option (use-xdg-base-directories) to follow
the XDG spec and instead use the following locations:

- $XDG_STATE_HOME/nix/profile
- $XDG_STATE_HOME/nix/defexpr
- $XDG_STATE_HOME/nix/channels

If $XDG_STATE_HOME is not set, it is assumed to be ~/.local/state.

Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
Co-authored-by: Tim Fenney <kodekata@gmail.com>
Co-authored-by: pasqui23 <pasqui23@users.noreply.github.com>
Co-authored-by: Artturin <Artturin@artturin.com>
Co-authored-by: John Ericson <Ericson2314@Yahoo.com>
2023-02-10 20:14:06 +04:00
Eelco DolstraandGitHub bffb76264e Merge pull request #7800 from PicoGeyer/patch-1
Fix minor syntax issue in one of the examples.
2023-02-10 17:09:19 +01:00
Eelco Dolstra c49b7472ea Fix macOS build 2023-02-10 17:08:33 +01:00
Eelco DolstraandGitHub 0c77dbab56 Merge pull request #7801 from hercules-ci/rename-authorizationsettings
daemon.cc: Rename UserSettings -> AuthorizationSettings
2023-02-10 16:33:15 +01:00
Eelco Dolstra 3e6e34cdf5 LocalDerivationGoal::startBuilder(): Use startProcess() to clone 2023-02-10 14:44:25 +01:00
Robert Hensing 37b1e93f4b daemon.cc: Rename UserSettings -> AuthorizationSettings
This is a bit more accurate.

It's a private name, but before you know it, someone might make it public!
2023-02-10 14:41:39 +01:00
Eelco Dolstra f094ba7386 Simplify the PID namespace check: just try to mount /proc
Fixes #7783.
2023-02-10 14:38:14 +01:00
Robert HensingandGitHub 1a0b293eb2 Merge pull request #7775 from hercules-ci/test-authorization
Add a basic daemon authorization test
2023-02-10 13:36:45 +01:00
Théophane HufschmittandGitHub 320e391171 Merge pull request #7403 from fricklerhandwerk/noselect
disallow selecting shell prompt in code samples
2023-02-10 13:12:23 +01:00
7908a41631 tests/authorization: Simplify assertion
Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2023-02-10 13:03:24 +01:00
Pico GeyerandPico Geyer a0f1cb0ce7 Fix minor syntax issue in the one of the examples.
Attribute set expressions need to end with a ;
2023-02-10 12:01:44 +02:00
Robert Hensing 9813e54a74 tests: Add command source locations to test log 2023-02-09 22:14:53 +01:00
Théophane HufschmittandGitHub 5597d68e2d Merge pull request #7754 from obsidiansystems/narrower-scope-derivation-flag
Scope down `--derivation` to just the commands that use it
2023-02-09 19:51:43 +01:00
Eelco DolstraandGitHub 0a7071ed33 Merge pull request #7774 from edolstra/submodule-fixes
Git submodule fixes
2023-02-09 17:19:48 +01:00
Eelco DolstraandGitHub e46429f674 Merge pull request #7712 from Mic92/advertise-compressions
advertise transport encoding in http transfers to
2023-02-09 17:15:25 +01:00
862e56c23d Improve comment
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-02-09 16:42:45 +01:00
15313bfdb7 Fix activity message
Co-authored-by: Josef Kemetmüller <josef.kemetmueller@gmail.com>
2023-02-09 16:42:14 +01:00
e4a2a5c074 Documentation: builtins.fetchGit when used on a local path (#7706)
* Documentation:  builtins.fetchGit when used on a local path

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-08 11:53:28 +00:00
Valentin GagarinandGitHub ec788964e9 Merge pull request #7626 from hercules-ci/issue-7623 2023-02-08 01:22:23 +01:00
40d8955b89 Apply suggestions from code review
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-08 00:24:28 +01:00
Valentin GagarinandGitHub c1921514d4 Merge pull request #7700 from iFreilicht/patch-1
docs: Fix small formatting errors
2023-02-07 23:37:42 +01:00
Eelco DolstraandGitHub ae6de012ee Merge pull request #7692 from edolstra/fix-docker-auto-uid-allocation
Fix auto-uid-allocation in Docker containers
2023-02-07 23:35:39 +01:00
Robert Hensing 19b495a48a NarInfoDiskCache: Also test id consistency with updated fields
And clarify test
2023-02-07 23:34:36 +01:00
Robert Hensing fb94d5cabd NarInfoDiskCache: Keep BinaryCache.id stable and improve test
Fixes #3898

The entire `BinaryCaches` row used to get replaced after it became
stale according to the `timestamp` column. In a concurrent scenario,
this leads to foreign key conflicts as different instances of the
in-process `state.caches` cache now differ, with the consequence that
the older process still tries to use the `id` number of the old record.

Furthermore, this phenomenon appears to have caused the cache for
actual narinfos to be erased about every week, while the default
ttl for narinfos was supposed to be 30 days.
2023-02-07 23:34:36 +01:00
Robert Hensing 2ceece3ef3 NarInfoDiskCache: Prepare reproducer for #3898 2023-02-07 23:34:36 +01:00
Robert Hensing 79f62d2dda NarInfoDiskCacheImpl: Make dbPath a parameter
This allows testing with a clean database.
2023-02-07 23:34:36 +01:00