1
0
Fork 1
mirror of https://github.com/NixOS/nixpkgs.git synced 2024-11-18 03:30:45 +00:00
Commit graph

2864 commits

Author SHA1 Message Date
Dee Anzorge f124c73686 nginx: change etags for statically compressed files served from store
Per RFC 9110, [section 8.8.1][1], different representations of the same
resource should have different Etags:

> A strong validator is unique across all versions of all
> representations associated with a particular resource over time.
> However, there is no implication of uniqueness across representations
> of different resources (i.e., the same strong validator might be in
> use for representations of multiple resources at the same time and
> does not imply that those representations are equivalent)

When serving statically compressed files (ie, when there is an existing
corresponding .gz/.br/etc. file on disk), Nginx sends the Etag marked
as strong. These tags should be different for each compressed format
(as shown in  an explicit example in section [8.8.3.3][2] of the RFC).
Upstream Etags are composed of the file modification timestamp and
content length, and the latter generally changes between these
representations.

Previous implementation of Nix-specific Etags for things served from
store used the store hash. This is fine to share between different
files, but it becomes a problem for statically compressed versions of
the same file, as it means Nginx was serving different representations
of the same resource with the same Etag, marked as strong.

This patch addresses this by imitating the upstream Nginx behavior, and
appending the value of content length to the store hash.

[1]: https://www.rfc-editor.org/rfc/rfc9110.html#name-validator-fields
[2]:
https://www.rfc-editor.org/rfc/rfc9110.html#name-example-entity-tags-varying
2024-01-13 22:07:50 +01:00
Martin Weinelt 01a2063317
doc/python: update buildPythonApplication example
It is fine to use `with` on the inputs, since that increases the
overall readability of the package.

Removes `wheel` from `nativeBuildInputs`, since it is a result of
cargo culting from an earlier setuptools example, that was wrong, and
it is not required, since it is provided by setuptools itself.
2024-01-01 23:39:38 +01:00
Silvan Mosberger e5af05cbf3
Merge pull request #276821 from DanielSidhion/update-binarycache-section
doc: update mkBinaryCache section with admonitions and conventions
2023-12-31 23:00:06 +01:00
netali fb8c363b6a
doc: fix python-updates branch name
The python-updates branch was formerly called python-unstable, but the
new branch name was never mentioned in the docs. This commit changes the
branch name in the docs to python-updates.
2023-12-28 21:54:36 +01:00
DS f0fb6f0a26 doc: update mkBinaryCache section with admonitions and conventions
The mkBinaryCache section now follows the convention of using one
line per sentence, as well as using admonitions for notes and
examples.

The example syntax was updated to define a fully-working nix package.
2023-12-25 17:34:59 -08:00
Daniel Sidhion e525be5a07
doc: update the appimageTools section content and examples (#276029)
The following changes are made:
- Document how `wrapType2` and `wrapType1` are the same thing.
- Expand on how `wrapType2` works and additional arguments it uses.
- Document `extract` and show how it's used in combination with
  `wrapType2`.
- Provide full working examples using the new admonition syntax.
2023-12-23 11:36:25 +01:00
Wael Nasreddine 1bf9271a09
Merge pull request #274503 from lopter/patch-1
Golang docs: remove "-s" and "-w" from the ldflags example
2023-12-21 21:04:02 -08:00
Silvan Mosberger 59a6f908b5
Merge pull request #271797 from bzm3r/master
doc: diagram explaining what it means for a dependency to be propagated
2023-12-21 17:14:30 +01:00
Brian Merchant b37adfc009 doc: Clarify dependency propagation 2023-12-21 17:11:47 +01:00
Daniel Sidhion 292ea0d917
doc: migrate examples in testers chapter to admonitions (#275791) 2023-12-21 12:54:32 +01:00
Silvan Mosberger 6afebb56f8
Merge pull request #271360 from mattpolzin/patch-1
doc: clarify stdenv phase flag attributes
2023-12-20 20:37:41 +01:00
Silvan Mosberger f27bb1216c
Merge pull request #273773 from nbraud/scripts/doc/check-manpage-urls
maintainers: Add new script to check URLs in `doc/manpage-urls.json`
2023-12-20 19:33:32 +01:00
DS b47d073e2d doc: add more details on testers.testVersion 2023-12-20 03:04:32 -08:00
Janne Heß 5eed5416ff
Merge pull request #167670 from messemar/incremental-builds
incremental builds: add derivation override functions
2023-12-19 11:37:15 +01:00
nicoo 38e912eaa3 doc/tests/manpage-urls.py: Add type annotations 2023-12-18 20:38:17 +00:00
nicoo a687d6ab7e doc/manpage-urls.json: Fix link to gnunet's manual 2023-12-18 20:28:51 +00:00
nicoo b1a96bbbf2 doc: Add test for broken links in manpage-urls.json 2023-12-18 20:28:51 +00:00
Valentin Gagarin a0f94525b0 julia docs: one line per sentence
this implements the documentation team's style guide new material
2023-12-18 16:25:16 +01:00
Nick Cao fc5c9afd4d
Merge pull request #225513 from codedownio/julia-modules
Build arbitrary Julia package environments in Nixpkgs
2023-12-18 09:58:27 -05:00
Danila Danko ceb8e4efd9
doc: Update stdenv.chapter.md (#274706)
Extended genericBuild description
2023-12-16 13:32:15 +01:00
Louis Opter 2e3c2705b9
Remove "-s" and "-w" from the ldflags example
The go linker `-s` and `-w` flags respectively are for:

- Omit the symbol table and debug information.
- Omit the DWARF symbol table.

Those actions should be delegated to the fixup build phase instead.

See: https://discourse.nixos.org/t/why-do-so-many-go-packages-use-s-w-in-their-ldflags-it-breaks-dontfixup-dontstrip/36843
2023-12-15 09:31:00 -08:00
Tom McLaughlin c8f0d302c1 julia: add documentation to manual + release note 2023-12-14 23:00:35 -08:00
messemar 5ebb78d952
doc: checkpointBuild: fix wording
Co-authored-by: Philipp Schuster <phip1611@gmail.com>
2023-12-13 11:15:29 +01:00
Valentin Gagarin 6d3f2550fd
Merge pull request #273384 from nbraud/doc/system-state
nixos/doc: Add chapter “necessary system state”
2023-12-13 08:54:09 +01:00
nicoo 6b6b12c27c doc/manpage-urls.json: Add *all* systemd manpages
and add the generating script to `maintainers/scripts/doc`
2023-12-12 23:06:11 +00:00
Martin Messer 15c2c6827b checkpointBuild: doc remove textual description in favor of an integrated example 2023-12-12 14:12:15 +01:00
messemar 0d6d654f36
doc: checkpointBuild: fix wording
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-12-12 13:19:21 +01:00
messemar f61980dbf9
doc: fix typo in checkpoint build section
Co-authored-by: Markus Partheymueller <markus.partheymueller@cyberus-technology.de>
2023-12-12 10:43:54 +01:00
github-actions[bot] 958e403a78
Merge master into staging-next 2023-12-10 12:01:18 +00:00
Sophie Tauchert 3b40e1bd33 buildNimPackage: allow overriding nim package args
Without this, it's impossible to override the lockFile as the default
overrideAttrs is applied after the composition in buildNimPackage has
read the lock file and generated the nim flags from it.
2023-12-10 09:10:02 +00:00
Robert Hensing 8d20c2011e
Merge pull request #272183 from infinisil/nixpkgs-reference
doc: Rename to Nixpkgs reference manual and restate purpose
2023-12-10 07:07:20 +01:00
Silvan Mosberger f5dafbfa83 doc: Rename to Nixpkgs reference manual and state purpose
For the time being, we're moving towards https://nix.dev/ containing
all tutorials and guides. The Nixpkgs manual is reinforced to be a
_reference_ manual. While it's not just reference for now, that's what
the docs team is working towards.

This commits rewrites the Nixpkgs manual introduction to reflect that
and point to some more useful links. The contribution docs are updated
similarly so it's not missed.

Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
Co-authored-by: Robert Hensing <roberth@users.noreply.github.com>
2023-12-08 01:26:31 +01:00
github-actions[bot] 728281e1ea
Merge master into staging-next 2023-12-08 00:02:27 +00:00
Connor Baker bfaefd0873 cudaPackages: add docs 2023-12-07 16:45:56 +00:00
Martin Messer 0ab2262bdd checkpointBuild: fix whitespaces in documentation 2023-12-07 17:15:17 +01:00
Martin Messer 6db9612204 rename: incremental -> checkpointed builds 2023-12-07 16:56:16 +01:00
Martin Messer fc2e3fac61 doc: add section about checkpointed build 2023-12-07 16:55:36 +01:00
github-actions[bot] fd7a8aedb0
Merge master into staging-next 2023-12-07 00:02:20 +00:00
Silvan Mosberger 4769458228 CONTRIBUTING.md: Update markdown emphasising syntax
GitHub supported special markdown syntax for emphasising blocks for some
time. This was however a beta feature, and still is, so it's subject to
changes.

Recently such a change happened: The syntax is different now.

See https://github.com/orgs/community/discussions/16925 for more
information
2023-12-06 03:51:39 +01:00
Mathew Polzin fb9e48c6b9 doc: clarify stdenv phase flag attributes 2023-11-30 22:28:58 -06:00
Alyssa Ross 8b51cdd3be rustc: add a compiler wrapper
We keep running into situations where we can't get the right
combination of rustc flags through build systems into rustc.
RUSTFLAGS is the only variable supported across build systems, but if
RUSTFLAGS is set, Cargo will ignore all other ways of specifying rustc
flags, including the target-specific ones, which we need to make
dynamic musl builds work.  (This is why pkgsCross.musl64.crosvm is
currently broken — it works if you unset separateDebugInfo, which
causes RUSTFLAGS not to be set.)

So, we need to do the same thing we do for C and C++ compilers, and
add a compiler wrapper so we can inject the flags we need, regardless
of the build system.

Currently the wrapper only supports a single mechanism for injecting
flags — the NIX_RUSTFLAGS environment variable.  As time goes on,
we'll probably want to add additional features, like target-specific
environment variables.
2023-11-30 09:23:06 +00:00
Emery Hemingway 35f108c7d7 buildNimPackage: load lockfiles and overrides 2023-11-28 16:48:10 +02:00
Gabriella Gonzalez 4cb41faba7 darwin.linuxBuilder: Fix working directory in documentation
This fixes the working directory for the suggested flake, as originally
suggested by @MaxDaten in:

https://github.com/NixOS/nixpkgs/issues/229542#issuecomment-1674886874

… and then amended by @Enzime in:

https://github.com/NixOS/nixpkgs/pull/248554#issuecomment-1676825733
2023-11-25 20:35:45 -08:00
DS 1d7ee9ff09 doc: consolidate info on manual linux kernel configs
The Nixpkgs documentation on the linux kernel builders focused on
using and extending kernels that were already packaged, but never
mentioned that it's possible to also build a kernel almost "from
scratch".
The NixOS documentation went a bit deeper on manual linux kernel
configs, but that information wasn't particularly NixOS-specific.

This commit consolidates the information related to building the
kernel on Nixpkgs's documentation, while keeping any additional
NixOS-specific information on NixOS's documentation.

An additional README.md was created for contributor-facing
documentation.
2023-11-23 08:50:16 -08:00
Silvan Mosberger ec6cc9c826
Merge pull request #265478 from antifuchs/document-lib.meta
doc: Add lib.meta to the library functions ToC
2023-11-22 00:57:26 +01:00
Bobby Rong d7a8877d9d nixos/xdg/portal: Add config and configPackages option
In x-d-p 1.17, when no configs are given, you apps will likely not
able to find a backend. Let users aware of the changes.
2023-11-21 08:42:10 +01:00
Vincenzo Mantova 631eca2e96 texlive: document simpler way to build custom packages 2023-11-20 00:56:40 +00:00
Silvan Mosberger 3119041421
Merge pull request #268591 from imincik/docs-update-run-phases
doc/stdenv: update manual phases execution instructions
2023-11-20 00:08:30 +01:00
Ivan Mincik 57801428da doc/stdenv: update manual phases execution instructions
Update instructions for manual build phases execution via `nix-shell` to
cover all phases. There is no easy way of getting those commands, so it
makes a sense to have them all properly documented.
2023-11-20 00:06:11 +01:00
Silvan Mosberger 228df50ff9 lib.fileset: Move introduction section above the functions
Previously the introductory section and the function listings were in
different places. But now nixdoc supports having them together
with https://github.com/nix-community/nixdoc/pull/70!
2023-11-19 15:00:57 +01:00