1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-12-15 21:41:04 +01:00
Commit graph

19790 commits

Author SHA1 Message Date
mergify[bot]
5bd259b311
Merge pull request #13611 from NixOS/mergify/bp/2.28-maintenance/pr-13305
add documentation of tarball-ttl to nix-channel (backport #13305)
2025-07-31 02:59:37 +00:00
mergify[bot]
35e563b6bd
Merge pull request #13634 from NixOS/mergify/bp/2.28-maintenance/pr-13361
Fix a minor typo (backport #13361)
2025-07-31 02:59:35 +00:00
mergify[bot]
ec920aea61
Merge pull request #13647 from NixOS/mergify/bp/2.28-maintenance/pr-13393
Fix typo: remove an extra word (backport #13393)
2025-07-31 02:59:32 +00:00
mergify[bot]
86ffcbcbfe
Merge pull request #13593 from NixOS/mergify/bp/2.28-maintenance/pr-13253
export/meson: Don't require `-std=c++2a` for -c libraries in `.pc` files (backport #13253)
2025-07-31 02:59:29 +00:00
mergify[bot]
8450dee5a2
Merge pull request #13609 from NixOS/mergify/bp/2.28-maintenance/pr-13304
Fix overriding gtest with gmock (backport #13304)
2025-07-31 02:59:27 +00:00
mergify[bot]
cae5086c60
Merge pull request #13619 from NixOS/mergify/bp/2.28-maintenance/pr-13326
docker.nix: Prevent double copy of nixpkgs source tree (backport #13326)
2025-07-30 19:32:18 +00:00
mergify[bot]
b2a2cf6934
Merge pull request #13585 from NixOS/mergify/bp/2.28-maintenance/pr-13232
docs: add another equivalence for the implication operator (backport #13232)
2025-07-30 19:32:14 +00:00
mergify[bot]
e261cc8f0d
Merge pull request #13591 from NixOS/mergify/bp/2.28-maintenance/pr-13245
nix-profile{,-daemon}.fish: check for profile in XDG_DATA_HOME (backport #13245)
2025-07-30 19:32:10 +00:00
mergify[bot]
8db221bc50
Merge pull request #13578 from NixOS/mergify/bp/2.28-maintenance/pr-13184
Document more references concepts (backport #13184)
2025-07-30 19:29:46 +00:00
mergify[bot]
3fe1b42423
Merge pull request #13583 from NixOS/mergify/bp/2.28-maintenance/pr-13221
doc: Render verbatim `@docroot@` on contributing page (backport #13221)
2025-07-30 19:29:42 +00:00
mergify[bot]
0d763f7ce2
Merge pull request #13577 from NixOS/mergify/bp/2.28-maintenance/pr-13175
libutil/tarfile: Create the scratch `std::vector` only once (backport #13175)
2025-07-30 13:26:14 +00:00
Egor Konovalov
01963be827 Fix link
Remove extra `realise`

(cherry picked from commit df21f24987)
2025-07-30 13:01:37 +00:00
jayeshv
cac6cfe51e Fix a minor typo
(cherry picked from commit 699db04df3)
2025-07-30 12:54:33 +00:00
Eelco Dolstra
63f18cd0c6 Prevent double copy of nixpkgs source tree
(cherry picked from commit 0a87ba0e39)
2025-07-30 12:39:44 +00:00
Jade Masker
aace3d91ac add reference to the tarball-ttl documentation
Co-authored-by: Valentin Gagarin <valentin@gagarin.work>
(cherry picked from commit c0ceaa2d5d)
2025-07-30 12:35:31 +00:00
Jade Masker
ab3ad122db remove overly verbose mention of fetchTarball
Co-authored-by: Valentin Gagarin <valentin@gagarin.work>
(cherry picked from commit 633d39109b)
2025-07-30 12:35:31 +00:00
Jade Lynn Masker
b320aa50fe add documentation of tarball-ttl to nix-channel
(cherry picked from commit 6badd21b6a)
2025-07-30 12:35:30 +00:00
Farid Zakaria
59da02def5 Overriding gtest with gmock
How did this work before...

* Added .direnv/ to gitignore

(cherry picked from commit 58e34a2d27)
2025-07-30 12:35:11 +00:00
Sergei Zimmerman
354d4c4a32 export/meson: Don't require -std=c++2a for -c libraries in .pc files
(cherry picked from commit d8da8f0cd6)
2025-07-30 12:11:06 +00:00
Stefan Boca
3a3ee4a692 nix-profile{,-daemon}.fish: check for profile in XDG_DATA_HOME
...and also NIX_STATE_HOME in nix-profile.fish. This is directly
translated from the bash scripts and makes the fish scripts equivalent
in functionality to the bash scripts.

Note that nix-profile.fish checks for NIX_STATE_HOME and
nix-profile-daemon.fish does not, so the two scripts are no longer
identical.

(cherry picked from commit 751f50f4ad)
2025-07-30 12:04:54 +00:00
Gwenn Le Bihan
7126d57220 docs: add another equivalence for the implication operator
the second equivalence, using a if-else expression, aligns much closer to how most humans think about implication, adding it might help some people :)

(cherry picked from commit 51151c2c28)
2025-07-30 12:00:02 +00:00
Robert Hensing
4a1e3ad48b doc: Render verbatim @docroot@ on contributing page
In rendered form:

```diff
-Add references to the manual using ..
+Add references to the manual using [links like this](@docroot@/example.md)
```

(cherry picked from commit 147a34c573)
2025-07-30 11:56:00 +00:00
John Ericson
0560581a48 Document more references concepts
(cherry picked from commit b287438476)
2025-07-30 11:40:09 +00:00
Sergei Zimmerman
3eb5a7cf30 libutil/tarfile: Create the scratch std::vector only once
I can't find a good way to benchmark in isolation from the
git cache, but common sense dictates that creating (and destroying)
a 131KiB std::vector for each regular file from the archive imposes
quite a significant overhead regardless of the IO bound git cache.

AFAICT there is no reason to keep a copy of the data since
it always gets fed into the sink and there are no coroutines/threads
in sight.

(cherry picked from commit 7628155d2b)
2025-07-30 11:32:13 +00:00
mergify[bot]
bab4e58a5e
Merge pull request #13560 from NixOS/mergify/bp/2.28-maintenance/pr-13558
meson: Fix `nix_system_cpu` for MIPS and 32 bit ARM systems (backport #13558)
2025-07-27 00:09:15 +00:00
Sergei Zimmerman
08f7ddbee5 meson: Fix nix_system_cpu for MIPS and 32 bit ARM systems
Prior patches in 54dc5314e8
and 6db6190002 fixed the default
system double for i686 and ppc/ppc64. This also patch also covers
32 bit arm and mips. ARM cpu names are taken from host_machine.cpu()
for a lack of a better option, but host_machine.cpu_family() is
preferred, since that is supposed to be somewhat standard for cross
files. Endianness is handled correctly by looking at host_machine.endian().

This also updates the documentation to be up to date to how system cpu
is translated from the host_machine specification.

(cherry picked from commit 60d124b36e)
2025-07-26 23:29:28 +00:00
Sergei Zimmerman
6c0cc04ce4
Merge pull request #13559 from NixOS/mergify/bp/2.28-maintenance/pr-13557
Sometimes build `nix-manual` when cross compiling (backport #13557)
2025-07-27 01:54:35 +03:00
Jason Yundt
c78676a1de Sometimes build nix-manual when cross compiling
Before this change, if you were cross compiling Nix, then the nix-manual
subproject would never get built. In some situations, it makes sense to
not build the nix-manual subproject when cross compiling. For example,
if the build system is x86_64 and the host system is riscv64, then it
makes sense to not build the manual. Building the manual requires
executing certain build artifacts, and you can’t run x86_64 executables
on riscv64 systems.

That being said, there are some situations where it does make sense to
build the nix-manual subproject when cross compiling. For example, if
the build system is x86_64 and the host system is i686, then it doesn’t
make sense to not build the manual. You can run i686 executables on
x86_64 systems just fine.

This change makes it so that the nix-manual subproject will sometimes
get built when cross compiling. Specifically, the nix-manual subproject
will get built as long as the doc-gen option is enabled and the build
system is capable of running host binaries.

---

The main motivation behind this change is to fix this Nixpkgs issue [1].
Building pkgs.nixStatic counts as cross compiling Nix, and
pkgs.nixStatic is supposed to produce a man output. Building
pkgs.nixStatic currently fails because it isn’t actually producing a man
output. That issue will go away once this commit gets backported to Nix
2.28.x.

[1]: <https://github.com/NixOS/nixpkgs/issues/426410>

(cherry picked from commit 5e407e6abb)
2025-07-26 22:29:20 +00:00
Sergei Zimmerman
8a1b7377cf
Merge pull request #13547 from NixOS/mergify/bp/2.28-maintenance/pr-13546
ci: Make it actually possible to disable dogfooding (backport #13546)
2025-07-25 02:52:56 +03:00
Sergei Zimmerman
5ae4ee99d3
ci: Roll back default nix to 2.29.1 in install-nix-action
Daemon tests are broken in 2.30.1 Darwin sandbox and there's
no point release with the fix yet.
2025-07-25 02:21:00 +03:00
Sergei Zimmerman
aa9d588891 ci: Make it actually possible to disable dogfooding
Github composite actions are a real treat. Boolean inputs
are not actually booleans but rather strings [1].

[1]: https://www.github.com/actions/runner/issues/2238

(cherry picked from commit f0695e177f)
2025-07-24 23:18:33 +00:00
mergify[bot]
ec4707df91
Merge pull request #13536 from NixOS/mergify/bp/2.28-maintenance/pr-13473
ci: Dogfood Nix from master (backport #13473)
2025-07-24 20:53:37 +00:00
Sergei Zimmerman
c56833e941
ci: Don't dogfood installer from master
CI on release branches should be stable, otherwise backporting
might become flaky and unreliable. Dogfooding only really makes
sense for CI on master branch, where failures are not as tedious
to work around.
2025-07-24 23:15:14 +03:00
Sergei Zimmerman
13a8fe7580
ci: Dogfood nix from master for vm_tests and flake_regressions
This should provide more coverage for the build from master that
is being dogfooded.

(cherry picked from commit 3b3c02160d)
2025-07-24 23:13:43 +03:00
Sergei Zimmerman
a0a94b9027
ci: Dogfood Nix from master
(cherry picked from commit 04f6974d2c)
2025-07-24 23:13:36 +03:00
Eelco Dolstra
5763c356a9
Merge pull request #13539 from NixOS/mergify/bp/2.28-maintenance/pr-13535
Fix nix_system_cpu on i686-linux (backport #13535)
2025-07-24 20:13:38 +02:00
Eelco Dolstra
23ecb1067c Fix nix_system_cpu on i686-linux
Fixes #13532.

(cherry picked from commit 54dc5314e8)
2025-07-24 17:13:51 +00:00
mergify[bot]
70439b4174
Merge pull request #13527 from NixOS/mergify/bp/2.28-maintenance/pr-13520
meson: Correctly handle endianness for PowerPC CPU families (backport #13520)
2025-07-23 21:29:43 +00:00
Sergei Zimmerman
14a5e2a4a3 meson: Correctly handle endianness for PowerPC CPU families
I've missed this while reviewing 6db6190002.
I only built big endian ppc64, so that didn't occur to me.

From meson manual:

> Those porting from autotools should note that Meson does not add
> endianness to the name of the cpu_family. For example, autotools will
> call little endian PPC64 "ppc64le", Meson will not, you must also check
> the .endian() value of the machine for this information.

This code should handle that correctly.

(cherry picked from commit ebd311b7b7)
2025-07-23 20:36:39 +00:00
mergify[bot]
f5dfd9a4a4
Merge pull request #13516 from NixOS/mergify/bp/2.28-maintenance/pr-13514
treewide: Fix Meson CPU names for powerpc CPUs (backport #13514)
2025-07-21 23:28:52 +00:00
OPNA2608
6151c36a0b treewide: Fix Meson CPU names for powerpc CPUs
(cherry picked from commit 6db6190002)
2025-07-21 22:49:09 +00:00
Jörg Thalheim
13206c132d
Merge pull request #13503 from NixOS/mergify/bp/2.28-maintenance/pr-13108
Rip off the bandaid: Format the codebase with clang-format (backport #13108)
2025-07-18 22:17:01 +02:00
Sergei Zimmerman
448c5d912c
Update .git-blame-ignore-revs to ignore the mass reformatting
Co-authored-by: Graham Christensen <graham@grahamc.com>
2025-07-18 22:37:35 +03:00
Sergei Zimmerman
a5264aa46e
Apply clang-format universally.
* It is tough to contribute to a project that doesn't use a formatter,
* It is extra hard to contribute to a project which has configured the formatter, but ignores it for some files
* Code formatting makes it harder to hide obscure / weird bugs by accident or on purpose,

Let's rip the bandaid off?

Note that PRs currently in flight should be able to be merged relatively easily by applying `clang-format` to their tip prior to merge.

Co-authored-by: Graham Christensen <graham@grahamc.com>
2025-07-18 22:36:36 +03:00
Graham Christensen
7b97377ac3 Update clang-format with fixing namespace coments, and separate definition blocks
(cherry picked from commit 41bf87ec70)
2025-07-18 22:33:26 +03:00
Graham Christensen
91141aa76d Drop a ton of files that should just get formatted
(cherry picked from commit e7af2e6566)
2025-07-18 22:33:16 +03:00
Graham Christensen
bd8cd3c15d Add sed
(cherry picked from commit 6896761d79)
2025-07-18 18:31:09 +00:00
Graham Christensen
3fd8523af7 format.sh: support looping until it is happy
(cherry picked from commit ee9b57cbf5)
2025-07-18 18:31:09 +00:00
mergify[bot]
65f435708a
Merge pull request #13499 from NixOS/mergify/bp/2.28-maintenance/pr-13496
Fix `nix help shell` by properly handling command aliases (backport #13496)
2025-07-17 18:26:33 +00:00
Oleksandr Knyshuk
be0e78ae23 Make nix help shell work by handling aliases properly
Previously, `nix help shell` failed with "Nix has no subcommand 'shell'" despite `nix shell --help`
working correctly. This happened because the `shell` command is actually an alias for `env shell`,
and the help system wasn't resolving aliases when looking up documentation.

This patch modifies the `showHelp` function to check for and resolve aliases before generating the
manpage name, ensuring that shorthand commands like `shell` get proper help documentation.

Closes: #13431
(cherry picked from commit d678b071d6)
2025-07-17 17:42:29 +00:00