aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-02-10Merge pull request #7800 from PicoGeyer/patch-1Eelco Dolstra
Fix minor syntax issue in one of the examples.
2023-02-10Merge pull request #7801 from hercules-ci/rename-authorizationsettingsEelco Dolstra
daemon.cc: Rename UserSettings -> AuthorizationSettings
2023-02-10daemon.cc: Rename UserSettings -> AuthorizationSettingsRobert Hensing
This is a bit more accurate. It's a private name, but before you know it, someone might make it public!
2023-02-10Merge pull request #7775 from hercules-ci/test-authorizationRobert Hensing
Add a basic daemon authorization test
2023-02-10Merge pull request #7403 from fricklerhandwerk/noselectThéophane Hufschmitt
disallow selecting shell prompt in code samples
2023-02-10tests/authorization: Simplify assertionRobert Hensing
Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2023-02-10Fix minor syntax issue in the one of the examples.Pico Geyer
Attribute set expressions need to end with a ;
2023-02-09Merge pull request #7754 from obsidiansystems/narrower-scope-derivation-flagThéophane Hufschmitt
Scope down `--derivation` to just the commands that use it
2023-02-09Merge pull request #7774 from edolstra/submodule-fixesEelco Dolstra
Git submodule fixes
2023-02-09Merge pull request #7712 from Mic92/advertise-compressionsEelco Dolstra
advertise transport encoding in http transfers to
2023-02-09Improve commentEelco Dolstra
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-02-09Fix activity messageEelco Dolstra
Co-authored-by: Josef Kemetmüller <josef.kemetmueller@gmail.com>
2023-02-08Documentation: builtins.fetchGit when used on a local path (#7706)Joachim Breitner
* Documentation: builtins.fetchGit when used on a local path Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-08Merge pull request #7626 from hercules-ci/issue-7623Valentin Gagarin
2023-02-08Apply suggestions from code reviewRobert Hensing
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-07Merge pull request #7700 from iFreilicht/patch-1Valentin Gagarin
docs: Fix small formatting errors
2023-02-07Merge pull request #7692 from edolstra/fix-docker-auto-uid-allocationEelco Dolstra
Fix auto-uid-allocation in Docker containers
2023-02-07Make install command in documentation compatible with fish shell (#7474)David Dunn
Use a pipe for all install commands Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2023-02-07Merge pull request #7780 from edolstra/pr-templateEelco Dolstra
PR template: Ask release notes for incompatible changes, not bug fixes
2023-02-07docs: Fix formatting of || operatorFelix Uhl
This is a workaround for [mdBook#2000](https://github.com/rust-lang/mdBook/issues/2000)
2023-02-07docs: Fix broken anchor linkFelix Uhl
2023-02-07Print debug message if a namespace test failsEelco Dolstra
2023-02-07Mention --no-sandbox if sandboxing is unsupportedEelco Dolstra
2023-02-07More #ifdefEelco Dolstra
2023-02-07Fix macOS buildEelco Dolstra
2023-02-07Check whether we can use PID namespacesEelco Dolstra
In unprivileged podman containers, /proc is not fully visible (there are other filesystems mounted on subdirectories of /proc). Therefore we can't mount a new /proc in the sandbox that matches the PID namespace of the sandbox. So this commit automatically disables sandboxing if /proc is not fully visible.
2023-02-07Fix auto-uid-allocation in Docker containersEelco Dolstra
This didn't work because sandboxing doesn't work in Docker. However, the sandboxing check is done lazily - after clone(CLONE_NEWNS) fails, we retry with sandboxing disabled. But at that point, we've already done UID allocation under the assumption that user namespaces are enabled. So let's get rid of the "goto fallback" logic and just detect early whether user / mount namespaces are enabled. This commit also gets rid of a compatibility hack for some ancient Linux kernels (<2.13).
2023-02-07Ask release notes for incompatible changes, not bug fixesEelco Dolstra
2023-02-07Add some testsEelco Dolstra
2023-02-07Merge pull request #7758 from peterbecich/clang11-devshell-documentationEelco Dolstra
fix documentation for `clang11Stdenv` dev shell
2023-02-07Fix activity messageEelco Dolstra
2023-02-07Add a basic daemon authorization testRobert Hensing
2023-02-07Merge pull request #7768 from ncfavier/fixup-7714Valentin Gagarin
2023-02-07Speed up fetching submodulesEelco Dolstra
Previously we would completely refetch the submodules from the network, even though the repo might already have them. Now we copy the .git/modules directory from the repo as an optimisation. This speeds up evaluating builtins.fetchTree { type = "git"; url = "/path/to/blender"; submodules = true; } (where /path/to/blender already has the needed submodules) from 121s to 57s. This is still pretty inefficient and a hack, but a better solution is best done on the lazy-trees branch. This change also help in the case where the repo already has the submodules but the origin is unfetchable for whatever reason (e.g. there have been cases where Nix in a GitHub action doesn't have the right authentication set up).
2023-02-07Fix the origin URL used for fetching submodulesEelco Dolstra
We cannot use 'actualUrl', because for file:// repos that's not the original URL that the repo was fetched from. This is a problem since submodules may be relative to the original URL. Fixes e.g. nix eval --impure --json --expr 'builtins.fetchTree { type = "git"; url = "/path/to/blender"; submodules = true; }' where /path/to/blender is a clone of https://github.com/blender/blender.git (which has several relative submodules like '../blender-addons.git').
2023-02-07Add some progress indication when fetching submodulesEelco Dolstra
2023-02-07Merge pull request #7766 from ↵Eelco Dolstra
NixOS/dependabot/github_actions/cachix/install-nix-action-19 Bump cachix/install-nix-action from 18 to 19
2023-02-07Merge pull request #7767 from NixOS/backport-pr-nameEelco Dolstra
Backport PR title: Bot-based -> Automatic
2023-02-07Merge pull request #7318 from fricklerhandwerk/doc-instantiateValentin Gagarin
add "instantiate" to glossary
2023-02-07add "instantiate" to glossaryValentin Gagarin
2023-02-07doc: fixup 7714Naïm Favier
2023-02-07Backport PR title: Bot-based -> AutomaticValentin Gagarin
In hope to reduce friction in contributor-facing communication, use a more common word. "bot" needless jargon for "something the machine does itself".
2023-02-06Bump cachix/install-nix-action from 18 to 19dependabot[bot]
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action) from 18 to 19. - [Release notes](https://github.com/cachix/install-nix-action/releases) - [Commits](https://github.com/cachix/install-nix-action/compare/v18...v19) --- updated-dependencies: - dependency-name: cachix/install-nix-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
2023-02-05fix `clang11Stdenv` dev shell documentationPeter Becich
`clang11StdenvPackages` does not exist ``` │ └───x86_64-linux │ ├───ccacheStdenv: development environment 'nix' │ ├───clang11Stdenv: development environment 'nix' │ ├───clangStdenv: development environment 'nix' │ ├───default: development environment 'nix' │ ├───gccStdenv: development environment 'nix' │ ├───libcxxStdenv: development environment 'nix' │ └───stdenv: development environment 'nix' ```
2023-02-04Scope down `--derivation` to just the commands that use itJohn Ericson
Per the old FIXME, this flag was on too many commands, and mostly ignored. Now it is just on the commands where it actually has an effect. Per https://github.com/NixOS/nix/issues/7261, I would still like to get rid of it entirely, but that is a separate project. This change should be good with or without doing that.
2023-02-04Remove `--derivation` from testJohn Ericson
It doesn't do anything here, and in the next commit `show-derivation will no longer accept this flag.
2023-02-03Merge pull request #7705 from Ma27/fix-initNix-in-perl-bindingsRobert Hensing
perl: run `initLibStore()` on `openStore()`
2023-02-03advertise transport encoding in http transfers toJörg Thalheim
tl;dr: With this 1 line change I was able to get a speedup of 1.5x on 1Gbit/s wan connections by enabling zstd compression in nginx. Also nix already supported all common compression format for http transfer, webservers usually only enable them if they are advertised through the Accept-Encoding header. This pull requests makes nix advertises content compression support for zstd, br, gzip and deflate. It's particular useful to add transparent compression for binary caches that serve packages from the host nix store in particular nix-serve, nix-serve-ng and harmonia. I tried so far gzip, brotli and zstd, whereas only zstd was able to bring me performance improvements for 1Gbit/s WAN connections. The following nginx configuration was used in combination with the [zstd module](https://github.com/tokers/zstd-nginx-module) and [harmonia](https://github.com/nix-community/harmonia/) ```nix { services.nginx.virtualHosts."cache.yourhost.com" = { locations."/".extraConfig = '' proxy_pass http://127.0.0.1:5000; proxy_set_header Host $host; proxy_redirect http:// https://; proxy_http_version 1.1; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; zstd on; zstd_types application/x-nix-archive; ''; }; } ``` For testing I unpacked a linux kernel tarball to the nix store using this command `nix-prefetch-url --unpack https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.1.8.tar.gz`. Before: ```console $ nix build && rm -rf /tmp/hello && time ./result/bin/nix copy --no-check-sigs --from https://cache.thalheim.io --to 'file:///tmp/hello?compression=none' '/nix/store/j42mahch5f0jvfmayhzwbb88sw36fvah-linux-6.1.8.tar.gz' warning: Git tree '/scratch/joerg/nix' is dirty real 0m18,375s user 0m2,889s sys 0m1,558s ``` After: ```console $ nix build && rm -rf /tmp/hello && time ./result/bin/nix copy --no-check-sigs --from https://cache.thalheim.io --to 'file:///tmp/hello?compression=none' '/nix/store/j42mahch5f0jvfmayhzwb b88sw36fvah-linux-6.1.8.tar.gz' real 0m11,884s user 0m4,130s sys 0m1,439s ``` Signed-off-by: Jörg Thalheim <joerg@thalheim.io> Update src/libstore/filetransfer.cc Co-authored-by: Théophane Hufschmitt <7226587+thufschmitt@users.noreply.github.com>
2023-02-03Merge pull request #7739 from obsidiansystems/user-settingsEelco Dolstra
Move `trustedUsers` and `allowedUsers` to separate config struct
2023-02-03Merge pull request #7738 from obsidiansystems/delete-authHookEelco Dolstra
Get rid of the `authHook` parameter on `processConnection`