mirror of
https://github.com/NixOS/nix
synced 2025-07-08 02:43:54 +02:00
use libbrotli directly when available
* Look for both 'brotli' and 'bro' as external command, since upstream has renamed it in newer versions. If neither are found, current runtime behavior is preserved: try to find 'bro' on PATH. * Limit amount handed to BrotliEncoderCompressStream to ensure interrupts are processed in a timely manner. Testing shows negligible performance impact. (Other compression sinks don't seem to require this)
This commit is contained in:
parent
6a0dd63508
commit
9dd2b8ac7b
7 changed files with 212 additions and 18 deletions
28
tests/brotli.sh
Normal file
28
tests/brotli.sh
Normal file
|
@ -0,0 +1,28 @@
|
|||
source common.sh
|
||||
|
||||
|
||||
# Only test if we found brotli libraries
|
||||
# (CLI tool is likely unavailable if libraries are missing)
|
||||
if [ -n "$HAVE_BROTLI" ]; then
|
||||
|
||||
clearStore
|
||||
clearCache
|
||||
|
||||
cacheURI="file://$cacheDir?compression=br"
|
||||
|
||||
outPath=$(nix-build dependencies.nix --no-out-link)
|
||||
|
||||
nix copy --to $cacheURI $outPath
|
||||
|
||||
HASH=$(nix hash-path $outPath)
|
||||
|
||||
clearStore
|
||||
clearCacheCache
|
||||
|
||||
nix copy --from $cacheURI $outPath --no-check-sigs
|
||||
|
||||
HASH2=$(nix hash-path $outPath)
|
||||
|
||||
[[ $HASH = $HASH2 ]]
|
||||
|
||||
fi # HAVE_BROTLI
|
Loading…
Add table
Add a link
Reference in a new issue