pkgs: fix README typos

Changed files
+44 -44
pkgs
applications
networking
browsers
chromium
cluster
k3s
rke2
build-support
by-name
az
azure-cli
fr
freecad
ka
kanidm
ni
nixos-rebuild-ng
nixos-render-docs
sw
switch-to-configuration-ng
development
compilers
elm
julia
llvm
cuda-modules
mobile
androidenv
tools
build-managers
gradle
stdenv
darwin
tools
package-management
nix
+3 -3
pkgs/README.md
···
### New packages
New packages are a common type of pull requests.
-
These pull requests consists in adding a new nix-expression for a package.
+
These pull requests consist in adding a new nix-expression for a package.
Review process:
···
- Maintainers must be set.
This can be the package submitter or a community member that accepts taking up maintainership of the package.
- The `meta.mainProgram` must be set if a main executable exists.
-
- Ensure any special packaging choices and required context are documented in i.e. the name of a patch or in a comment.
+
- Ensure any special packaging choices and required context are documented in, i.e., the name of a patch or in a comment.
- If a special version of a package is pinned, document why, so others know if/when it can be unpinned.
- If any (especially opinionated) patch or `substituteInPlace` is applied, document why.
- If any non-default build flags are set, document why.
···
[github.com/NixOS/nixpkgs/issues?q=is:issue+is:open+"Vulnerability+roundup"](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+%22Vulnerability+roundup%22)
-
Each issue correspond to a vulnerable version of a package; As a consequence:
+
Each issue corresponds to a vulnerable version of a package; as a consequence:
- One issue can contain several CVEs;
- One CVE can be shared across several issues;
+1 -1
pkgs/applications/networking/browsers/chromium/README.md
···
- `ungoogled-chromium`: A patch set for Chromium, that has its own entry in Chromium's `upstream-info.nix`.
- `chromedriver`: Updated via Chromium's `upstream-info.nix` and not built
from source. Must match Chromium's major version.
-
- `electron-source`: Various version of electron that are built from source using Chromium's
+
- `electron-source`: Various versions of electron that are built from source using Chromium's
`-unwrapped` derivation, due to electron being based on Chromium.
# Upstream links
+1 -1
pkgs/applications/networking/cluster/k3s/README.md
···
# K3s
-
K3s is a simplified [Kubernetes](https://wiki.nixos.org/wiki/Kubernetes) version that bundles Kubernetes cluster components into a few small binaries optimized for Edge and IoT devices.
+
K3s is a simplified [Kubernetes](https://wiki.nixos.org/wiki/Kubernetes) version that bundles Kubernetes cluster components into a few small binaries optimized for Edge and IoT devices.
## Usage
+1 -1
pkgs/applications/networking/cluster/rke2/README.md
···
Nixpkgs follows active minor version release channels (typically 4 at a time) and sets aliases for
`rke2_stable` and `rke2_latest` accordingly.
-
Patch releases should be backported to to the latest stable release branch, however, new minor
+
Patch releases should be backported to the latest stable release branch; however, new minor
versions are not backported.
For further information visit the
+1 -1
pkgs/build-support/go/README.md
···
When an end-of-life toolchain is removed, builders that pin the EOL version (according to 3.) will automatically be bumped to the then oldest pinned builder (e.g. Go 1.22 is EOL, `buildGo122Module` is bumped to `buildGo123Module`).
-
If the package won't build with anymore with that builder, the package is marked broken.
+
If the package won't build with that builder anymore, the package is marked broken.
It is the package maintainers responsibility to fix the package and get it working with a supported Go toolchain.
[1]: http://go.dev/doc/go1compat
+1 -1
pkgs/by-name/README.md
···
## Limitations
-
There's some limitations as to which packages can be defined using this structure:
+
There are some limitations as to which packages can be defined using this structure:
- Only packages defined using `pkgs.callPackage`.
This excludes packages defined using `pkgs.python3Packages.callPackage ...`.
+1 -1
pkgs/by-name/az/azure-cli/README.md
···
Check if the desired functionality was added.
-
You can check if the extensions was recognized by running:
+
You can check if the extensions were recognized by running:
```sh
./result/bin/az extension list
+1 -1
pkgs/by-name/fr/freecad/README.md
···
This package supports the following parameters:
- withWayland (default: true): when false, set QT_QPA_PLATFORM to xcb
-
- spaceNavSupport (enabled by default on linux): whether to enable
+
- spaceNavSupport (enabled by default on Linux): whether to enable
[spacenavd support](https://spacenav.sourceforge.net/)
- ifcSupport (default: false): whether to enable ifc support through
ifcopenshell
+1 -1
pkgs/by-name/ka/kanidm/README.md
···
## Remove release
-
Kanidm versions are supported for 30 days after the release of new versions. Following the example above, 1.5.x superseding 1.4.x in 30 days, do the following near the end of the 30 day window
+
Kanidm versions are supported for 30 days after the release of new versions. Following the example above, 1.5.x superseding 1.4.x in 30 days, do the following near the end of the 30-day window
1. Update `pkgs/by-name/ka/kanidm/1_4.nix` by adding `unsupported = true;`
1. Update `pkgs/top-level/release.nix` and add `kanidm_1_4-1.4.6` and `kanidmWithSecretProvisioning_1_4-1.4.6` to `permittedInsecurePackages`
+5 -5
pkgs/by-name/ni/nixos-rebuild-ng/README.md
···
The current state of `nixos-rebuild` is dire: it is one of the most critical
pieces of code we have in NixOS, but it has tons of issues:
-
- The code is written in Bash, and while this by itself is not necessary bad,
+
- The code is written in Bash, and while this by itself is not necessarily bad,
it means that it is difficult to do refactorings due to the lack of tooling
for the language
- The code itself is a hacky mess. Changing even one line of code can cause
···
builds Flakes inside a temporary directory and reads the resulting symlink
since the code seems to predate `--print-out-paths` flag
-
Given all of those above, improvements in the `nixos-rebuild` are difficult to
+
Given all of the above, improvements in the `nixos-rebuild` are difficult to
do. A full rewrite is probably the easier way to improve the situation since
this can be done in a separate package that will not break anyone. So this is
an attempt of the rewrite.
···
```
The command above will build, run the unit tests and linters, and also check if
-
the code is formatted. However, sometimes is more convenient to run just a few
+
the code is formatted. However, sometimes it's more convenient to run just a few
tests to debug, in this case you can run:
```console
···
please open an issue
- We do some additional validation of flags, like exiting with an error when
`--build-host` or `--target-host` is used with `repl`, since the user could
-
assume that the `repl` would be run remotely while it always run the local
+
assume that the `repl` would be run remotely while it always runs the local
machine. `nixos-rebuild` silently ignored those flags, so this
[may cause some issues](https://github.com/NixOS/nixpkgs/pull/363922) for
wrappers
···
may be difficult to fix, so right now I only recommend using
`nixos-rebuild-ng` if you are testing in a VM or in a filesystem with
snapshots like BTRFS or ZFS. Those bugs are unlikely to be unfixable but the
-
errors can be difficult to understand. If you want to go anyway,
+
errors can be difficult to understand. If you want to go on,
`nix-collect-garbage -d` and `nix store repair` are your friends
## TODON'T
+1 -1
pkgs/by-name/ni/nixos-render-docs/README.md
···
- It would also require keeping an impure or otherwise continuously updated reference to those other revisions.
- The static mapping acts like a semi-automatically updated cache that we drag along with version history.
- Other setups, such as a dedicated service to cache a history of moved content, are more complicated and would still be impure.
-
- Checking in large amounts of data that is touched often, bears a risk of more merge conflicts or related build failures.
+
- Checking in large amounts of data that is touched often bears a risk of more merge conflicts or related build failures.
The solution picked here is to have a static mapping of the historical locations checked into the Git tree, such that it can be read during the build process.
This also ensures that an improper redirect mapping will cause `nixos-render-docs` to fail the build and thus enforce that redirects stay up-to-date with every commit.
+1 -1
pkgs/by-name/sw/switch-to-configuration-ng/README.md
···
# switch-to-configuration-ng
-
This program implements the switching/updating of NixOS systems. It starts with the exising running configuration at `/run/current-system` and handles the migration to a new configuration, built from a NixOS configuration's `config.system.build.toplevel` derivation.
+
This program implements the switching/updating of NixOS systems. It starts with the existing running configuration at `/run/current-system` and handles the migration to a new configuration, built from a NixOS configuration's `config.system.build.toplevel` derivation.
For more information on what happens during a switch, see [what-happens-during-a-system-switch](../../../../nixos/doc/manual/development/what-happens-during-a-system-switch.chapter.md).
+1 -1
pkgs/development/compilers/elm/README.md
···
(versions.dat).
The makeDotElm function lets us retrieve these dependencies in the
-
standard nix way. we have to copy them in (rather than symlink) and
+
standard nix way. We have to copy them in (rather than symlink) and
make them writable because the elm compiler writes other .dat files
alongside the source code. versions.dat was produced during an
impure build of this same code; the build complains that it can't
+1 -1
pkgs/development/compilers/julia/README.md
···
[julia]: https://julialang.org
For Nixpkgs, the manual is as always your primary reference, and for the Julia
-
side of things you probably want to familiarise yourself with the [README
+
side of things, you probably want to familiarise yourself with the [README
][readme], [build instructions][build], and [release process][release_process].
Remember that these can change between Julia releases, especially if the LTS and
release branches have deviated greatly. A lot of the build process is
+3 -3
pkgs/development/compilers/llvm/README.md
···
- Run `update-git.py`.
This will set the github revision and sha256 for `llvmPackages_git.llvm` to whatever the latest chromium build is using.
-
For a more recent, commit run `nix-prefetch-github` and change the rev and sha256 accordingly.
+
For a more recent commit, run `nix-prefetch-github` and change the rev and sha256 accordingly.
- That was the easy part.
The hard part is updating the patch files.
···
which can be an easily missed reason for failures.
For cases where the hunk is no longer needed you can simply remove it from the patch.
-
This is fine for small corrections, but when more serious changes are needed its better to use git.
+
This is fine for small corrections, but when more serious changes are needed, it's better to use git.
1. Clone the LLVM monorepo at https://github.com/llvm/llvm-project/
···
Use CMake's [`GNUInstallDirs`](https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html) to support multiple outputs.
-
Previously, LLVM Just hard-coded `bin`, `include`, and `lib${LLVM_TARGET_PREFIX}`.
+
Previously, LLVM just hard-coded `bin`, `include`, and `lib${LLVM_TARGET_PREFIX}`.
We are making it use these variables.
For the older LLVM versions, these patches live in https://github.com/Ericson2314/llvm-project branches `split-prefix`.
+9 -9
pkgs/development/cuda-modules/README.md
···
-
# Cuda modules
+
# CUDA Modules
> [!NOTE]
> This document is meant to help CUDA maintainers understand the structure of
···
## Distinguished packages
-
### Cuda compatibility
+
### CUDA Compatibility
-
[Cuda Compatibility](https://docs.nvidia.com/deploy/cuda-compatibility/),
+
[CUDA Compatibility](https://docs.nvidia.com/deploy/cuda-compatibility/),
available as `cudaPackages.cuda_compat`, is a component which makes it possible
to run applications built against a newer CUDA toolkit (for example CUDA 12) on
a machine with an older CUDA driver (for example CUDA 11), which isn't possible
-
out of the box. At the time of writing, Cuda Compatibility is only available on
+
out of the box. At the time of writing, CUDA Compatibility is only available on
the Nvidia Jetson architecture, but Nvidia might release support for more
architectures in the future.
-
As Cuda Compatibility strictly increases the range of supported applications, we
+
As CUDA Compatibility strictly increases the range of supported applications, we
try our best to enable it by default on supported platforms.
#### Functioning
···
`cuda_compat` isn't a complete drop-in replacement for the driver (and that's
the point, otherwise, it would just be a newer driver).
-
Nvidia's recommendation is to set `LD_LIBRARY_PATH` to points to `cuda_compat`'s
+
Nvidia's recommendation is to set `LD_LIBRARY_PATH` to point to `cuda_compat`'s
driver. This is fine for a manual, one-shot usage, but in general setting
`LD_LIBRARY_PATH` is a red flag. This is global state which short-circuits most
-
of other dynamic libraries resolution mechanisms and can break things in
+
of other dynamic library resolution mechanisms and can break things in
non-obvious ways, especially with other Nix-built software.
-
#### Cuda compat with Nix
+
#### CUDA Compat with Nix
Since `cuda_compat` is a known derivation, the easy way to do this in Nix would
be to add `cuda_compat` as a dependency of CUDA libraries and applications and
-
let Nix does its magic by filling the `DT_RUNPATH` fields. However,
+
let Nix do its magic by filling the `DT_RUNPATH` fields. However,
`cuda_compat` itself depends on `libnvrm_mem` and `libnvrm_gpu` which are loaded
dynamically at runtime from `/run/opengl-driver`. This doesn't please the Nix
sandbox when building, which can't find those (a second minor issue is that
+1 -1
pkgs/development/mobile/androidenv/README.md
···
# How to run tests
-
You may need to make yourself familiar with [package tests](../../../README.md#package-tests), and [Writing larger package tests](../../../README.md#writing-larger-package-tests), then run tests locally with:
+
You may need to make yourself familiar with [package tests](../../../README.md#package-tests) and [Writing larger package tests](../../../README.md#writing-larger-package-tests), then run tests locally with:
```shell
$ export NIXPKGS_ALLOW_UNFREE=1
+8 -8
pkgs/development/tools/build-managers/gradle/README.md
···
## Introduction
Gradle build scripts are written in a DSL, computing the list of Gradle
-
dependencies is a turing-complete task, not just in theory but in
+
dependencies is a Turing-complete task, not just in theory but also in
practice. Fetching all of the dependencies often requires building some
native code, running some commands to check the host platform, or just
fetching some files using either JVM code or commands like `curl` or
···
Obviously, this is horrible for reproducibility. Additionally, Gradle
doesn't offer a way to export the list of dependency URLs and hashes (it
does in a way, but it's far from being complete, and as such is useless
-
for nixpkgs). Even if did, it would be annoying to use considering
+
for Nixpkgs). Even if it did, it would be annoying to use considering
fetching non-Gradle dependencies in Gradle scripts is commonplace.
That's why the setup hook uses mitm-cache, a program designed for
···
and finally download `b.jar.sha1`, locate it in its cache, and then
*not* download `b.jar`. This means `b.jar` won't be stored in the MITM
cache. Then, consider that on a later invocation, the fetching order
-
changed, whether it was because of a running on different system,
+
changed, whether it was because of running on a different system,
changed behavior after a Gradle update, or any other source of
nondeterminism - `b.jar` is fetched before `a.jar`. Gradle will first
fetch `b.jar.sha1`, not find it in its cache, attempt to fetch `b.jar`,
···
via CLI arguments.
**Caveat**: Gradle .module files also contain file hashes, in md5, sha1,
-
sha256, sha512 formats. It posed no problem as of yet, but it might in
+
sha256, sha512 formats. It has posed no problem as of yet, but it might in
the future. If it does pose problems, the deps derivation code can be
extended to find all checksums in .module files and copy existing files
there if their hash matches.
···
The mitm-cache lockfile format is described in the [mitm-cache
README](https://github.com/chayleaf/mitm-cache#readme).
-
The nixpkgs Gradle lockfile format is more complicated:
+
The Nixpkgs Gradle lockfile format is more complicated:
```json
{
-
"!comment": "This is a nixpkgs Gradle dependency lockfile. For more details, refer to the Gradle section in the nixpkgs manual.",
+
"!comment": "This is a Nixpkgs Gradle dependency lockfile. For more details, refer to the Gradle section in the Nixpkgs manual.",
"!version": 1,
"https://oss.sonatype.org/content/repositories/snapshots/com/badlogicgames/gdx-controllers": {
"gdx-controllers#gdx-controllers-core/2.2.4-20231021.200112-6/SNAPSHOT": {
···
discern where the repo base ends and the group ID begins).
`compress-deps-json.py` converts the JSON from mitm-cache format into
-
nixpkgs Gradle lockfile format. `fetch.nix` does the opposite.
+
Nixpkgs Gradle lockfile format. `fetch.nix` does the opposite.
## Security Considerations
···
doesn't match)
Please be mindful of the above when working on Gradle support for
-
nixpkgs.
+
Nixpkgs.
+1 -1
pkgs/stdenv/darwin/README.md
···
There are effectively two steps when updating the standard environment:
1. Update the definition of llvmPackages in `all-packages.nix` for Darwin to match the value of
-
llvmPackages.latest in `all-packages.nix`. Timing-wise, this done currently using the spring
+
llvmPackages.latest in `all-packages.nix`. Timing-wise, this is done currently using the spring
release of LLVM and once llvmPackages.latest has been updated to match. If the LLVM project
has announced a release schedule of patch updates, wait until those are in nixpkgs. Otherwise,
the LLVM updates will have to go through staging instead of being merged into master; and
+1 -1
pkgs/tools/package-management/nix/README.md
···
If you're updating `nixVersions.stable`, follow all the steps mentioned above, but use the **staging** branch for your pull request (or **staging-next** after coordinating with the people in matrix `#staging:nixos.org`)
This is necessary because, at the end of the staging-next cycle, the NixOS tests are built through the [staging-next-small](https://hydra.nixos.org/jobset/nixos/staging-next-small) jobset.
-
Especially nixos installer test are important to look at here.
+
Especially NixOS installer tests are important to look at here.
There is a script to update minor versions:
+1 -1
pkgs/tools/package-management/nix/modular/README.md
···
### `workDir` attribute
-
The Nixpkgs for Nix does inherit the `workDir` attribute that determines the location of the subproject to build.
+
The Nixpkgs for Nix inherits the `workDir` attribute that determines the location of the subproject to build.
It is compared to this directory to produce the correct relative path, similar to upstream.