Commit Graph

54 Commits

Author SHA1 Message Date
Ethan Carter Edwards
287356ffe6 wcpg: modernize
Signed-off-by: Ethan Carter Edwards <ethan@ethancedwards.com>
2026-07-26 16:59:51 -04:00
Eman Resu
ff094f60ad treewide: replace more singleton license lists 2026-07-15 14:04:39 -04:00
R. Ryantm
bf9094b95f wcslib: 8.8 -> 8.9 2026-06-21 12:30:25 +00:00
R. Ryantm
ae8284b80c wcslib: 8.7 -> 8.8 2026-05-23 00:30:33 +00:00
Moraxyc
c90287a5fc wcslib: fix build on darwin 2026-05-19 01:34:52 +08:00
R. Ryantm
52ca42a048 wcslib: 8.6 -> 8.7 2026-05-12 12:33:49 +00:00
Xiangyan Sun
00ab84ebc2 wcc: fix build with gcc15 2026-04-22 15:21:39 -07:00
R. Ryantm
418424fff5 wcslib: 8.5 -> 8.6 2026-03-30 01:02:25 +00:00
quantenzitrone
ca363a08a9 various: switch buildRustPackage packages to finalAttrs pattern
this shouldn't create any rebuilds

the move was done with the following script
```fish
#!/usr/bin/env fish

# nix shell .#nixfmt nixpkgs#{nixf-diagnose,ripgrep,sd}

set base (git rev-parse HEAD)

set scope pkgs/by-name
set builder buildRustPackage

set files (rg --files-with-matches -F "$builder rec {" $scope | sort -u)

for file in $files
    echo $file
    sd -F "$builder rec {" "$builder (finalAttrs: {" $file
    # version
    sd -F 'version}' 'finalAttrs.version}' $file
    sd -F '${version' '${finalAttrs.version' $file
    sd -F '= version' '= finalAttrs.version' $file
    sd -F 'inherit version;' 'inherit (finalAttrs) version;' $file
    sd -F ' + version;' ' + finalAttrs.version;' $file
    sd 'replaceStrings (.*) version' 'replaceStrings $1 finalAttrs.version' $file
    sd -F 'splitVersion version' 'splitVersion finalAttrs.version' $file
    sd -F 'versionAtLeast version' 'versionAtLeast finalAttrs.version' $file
    sd 'versions\.([a-z]+) version' 'versions.$1 finalAttrs.version' $file
    # src
    sd -F 'src}' 'finalAttrs.src}' $file
    sd -F '${src' '${finalAttrs.src' $file
    sd -F '= src' '= finalAttrs.src' $file
    sd -F 'inherit src;' 'inherit (finalAttrs) src;' $file
    sd -F 'inherit (src' 'inherit (finalAttrs.src' $file
    # pname
    sd -F 'pname}' 'finalAttrs.pname}' $file
    sd -F '${pname' '${finalAttrs.pname' $file
    sd -F '= pname' '= finalAttrs.pname' $file
    sd -F 'inherit pname;' 'inherit (finalAttrs) pname;' $file
    # combinations
    sd -F 'inherit version src;' 'inherit (finalAttrs) version src;' $file
    sd -F 'inherit src version;' 'inherit (finalAttrs) src version;' $file
    sd -F 'inherit version pname;' 'inherit (finalAttrs) version pname;' $file
    sd -F 'inherit pname version;' 'inherit (finalAttrs) pname version;' $file
    sd -F 'inherit pname src version;' 'inherit (finalAttrs) pname src version;' $file
    sd -F 'inherit pname version src;' 'inherit (finalAttrs) pname version src;' $file
    sd -F 'inherit src pname version;' 'inherit (finalAttrs) src pname version;' $file
    sd -F 'inherit src version pname;' 'inherit (finalAttrs) src version pname;' $file
    sd -F 'inherit version pname src;' 'inherit (finalAttrs) version pname src;' $file
    sd -F 'inherit version src pname;' 'inherit (finalAttrs) version src pname;' $file
    # meta
    sd -F '${meta' '${finalAttrs.meta' $file
    sd -F '= meta' '= finalAttrs.meta' $file
    sd -F 'inherit (meta' 'inherit (finalAttrs.meta' $file
    # cargo
    sd -F 'cargoRoot}' 'finalAttrs.cargoRoot}' $file
    sd -F '${cargoRoot' '${finalAttrs.cargoRoot' $file
    sd -F '= cargoRoot' '= finalAttrs.cargoRoot' $file
    sd -F 'cargoBuildFlags}' 'finalAttrs.cargoBuildFlags}' $file
    sd -F '${cargoBuildFlags' '${finalAttrs.cargoBuildFlags' $file
    sd -F '= cargoBuildFlags' '= finalAttrs.cargoBuildFlags' $file
    # patches
    sd -F 'patches}' 'finalAttrs.patches}' $file
    sd -F '${patches' '${finalAttrs.patches' $file
    sd -F '= patches' '= finalAttrs.patches' $file
    # passthru
    sd -F 'passthru}' 'finalAttrs.passthru}' $file
    sd -F '${passthru' '${finalAttrs.passthru' $file
    sd -F '= passthru' '= finalAttrs.passthru' $file
    # *buildInputs
    sd -F 'buildInputs}' 'finalAttrs.buildInputs}' $file
    sd -F 'makeLibraryPath buildInputs' 'makeLibraryPath finalAttrs.buildInputs' $file
    sd -F 'nativeBuildInputs}' 'finalAttrs.nativeBuildInputs}' $file
    sd -F 'propagatedBuildInputs}' 'finalAttrs.propagatedBuildInputs}' $file
    # other
    sd -F 'desktopItem}' 'finalAttrs.desktopItem}' $file
    sd -F 'runtimeLibs}' 'finalAttrs.runtimeLibs}' $file
    sd -F 'libPath}' 'finalAttrs.libPath}' $file
    sd -F 'runtimeDependencies}' 'finalAttrs.runtimeDependencies}' $file
    sd -F 'nativeRuntimeInputs}' 'finalAttrs.nativeRuntimeInputs}' $file
    sd -F '(!doCheck)' '(!finalAttrs.doCheck)' $file
    sd -F 'optional doCheck' 'optional finalAttrs.doCheck' $file
    sd -F 'optionals doCheck' 'optionals finalAttrs.doCheck' $file
    sd -F '++ runtimeDependencies' '++ finalAttrs.runtimeDependencies' $file
    # close finalAttrs lambda
    echo ')' >>$file
    # catch some errors early
    if ! nixfmt $file
        git restore $file
        continue
    end
    if ! nixf-diagnose -i sema-primop-overridden $file
        git restore $file
        continue
    end
end

set torestore (rg -F .finalAttrs --files-with-matches $scope)
if test (count $torestore) -gt 0
    git restore $torestore
end
# set torestore (rg -F finalAttrs.pname --files-with-matches $scope)
# if test (count $torestore) -gt 0
#     git restore $torestore
# end

# commit for faster eval times
git add pkgs
git commit --no-gpg-sign -m temp
set torestore

for file in $files
    # file hasn't changed
    if git diff --quiet $base $file
        continue
    end
    # try to eval the package to definitely catch all errors
    echo $file
    set pname (string split / $file -f 4)
    if ! nix eval .#$pname
        set torestore $torestore $file
    end
end

# restore files that don't eval
git reset --soft $base
git restore --staged .
if test (count $torestore) -gt 0
    git restore $torestore
end
```

after that some manual cleanup was done:
- restore all files that cause merge conflicts with staging

# Conflicts:
#	pkgs/by-name/ca/cargo-chef/package.nix
#	pkgs/by-name/ca/cargo-public-api/package.nix
#	pkgs/by-name/ca/cargo-update/package.nix
#	pkgs/by-name/le/leetcode-cli/package.nix
2026-03-06 11:50:26 +01:00
quantenzitrone
626f23ce26 various: switch packages to use finalAttrs
this shouldn't create any rebuilds

the following script was used to generate this:
```fish
#!/usr/bin/env fish

# nix shell .#nixfmt nixpkgs#{nixf-diagnose,ripgrep,sd}

set base (git rev-parse HEAD)

set scope pkgs/by-name

set files (rg --files-with-matches -F 'stdenv.mkDerivation rec {' $scope | sort -u)

for file in $files
    echo $file
    sd -F 'stdenv.mkDerivation rec {' 'stdenv.mkDerivation (finalAttrs: {' $file
    # version
    sd -F 'version}' 'finalAttrs.version}' $file
    sd -F '${version' '${finalAttrs.version' $file
    sd -F '= version' '= finalAttrs.version' $file
    sd -F 'inherit version;' 'inherit (finalAttrs) version;' $file
    sd -F ' + version;' ' + finalAttrs.version;' $file
    sd 'replaceStrings (.*) version' 'replaceStrings $1 finalAttrs.version' $file
    sd -F 'splitVersion version' 'splitVersion finalAttrs.version' $file
    sd -F 'versionAtLeast version' 'versionAtLeast finalAttrs.version' $file
    sd 'versions\.([a-z]+) version' 'versions.$1 finalAttrs.version' $file
    # src
    sd -F 'src}' 'finalAttrs.src}' $file
    sd -F '${src' '${finalAttrs.src' $file
    sd -F '= src' '= finalAttrs.src' $file
    sd -F 'inherit src;' 'inherit (finalAttrs) src;' $file
    sd -F 'inherit (src' 'inherit (finalAttrs.src' $file
    # meta
    sd -F '${meta' '${finalAttrs.meta' $file
    sd -F '= meta' '= finalAttrs.meta' $file
    sd -F 'inherit (meta' 'inherit (finalAttrs.meta' $file
    # other
    sd -F 'inherit version src;' 'inherit (finalAttrs) version src;' $file
    sd -F 'makeLibraryPath buildInputs' 'makeLibraryPath finalAttrs.buildInputs' $file
    sd -F 'buildInputs}' 'finalAttrs.buildInputs}' $file
    sd -F 'desktopItem}' 'finalAttrs.desktopItem}' $file
    sd -F 'runtimeLibs}' 'finalAttrs.runtimeLibs}' $file
    sd -F 'libPath}' 'finalAttrs.libPath}' $file
    sd -F 'runtimeDependencies}' 'finalAttrs.runtimeDependencies}' $file
    sd -F 'nativeRuntimeInputs}' 'finalAttrs.nativeRuntimeInputs}' $file
    sd -F '(!doCheck)' '(!finalAttrs.doCheck)' $file
    sd -F 'optional doCheck' 'optional finalAttrs.doCheck' $file
    sd -F 'optionals doCheck' 'optionals finalAttrs.doCheck' $file
    sd -F '++ runtimeDependencies' '++ finalAttrs.runtimeDependencies' $file
    # pname (restored afterwards)
    sd -F 'pname}' 'finalAttrs.pname}' $file
    sd -F '${pname' '${finalAttrs.pname' $file
    sd -F '= pname' '= finalAttrs.pname' $file
    # close finalAttrs lambda
    echo ')' >>$file
    # catch some errors early
    if ! nixfmt $file
        git restore $file
        continue
    end
    if ! nixf-diagnose -i sema-primop-overridden $file
        git restore $file
        continue
    end
end

set torestore (rg -F .finalAttrs --files-with-matches $scope)
if test (count $torestore) -gt 0
    git restore $torestore
end
set torestore (rg -F finalAttrs.pname --files-with-matches $scope)
if test (count $torestore) -gt 0
    git restore $torestore
end

# commit for faster eval times
git add pkgs
git commit --no-gpg-sign -m temp
set torestore

for file in $files
    # file hasn't changed
    if git diff --quiet $base $file
        continue
    end
    # try to eval the package to definitely catch all errors
    echo $file
    set pname (string split / $file -f 4)
    if ! nix eval .#$pname
        set torestore $torestore $file
    end
end

# restore files that don't eval
git reset --soft $base
git restore --staged .
if test (count $torestore) -gt 0
    git restore $torestore
end
```

after that some manual cleanup was done:
- restoring files that cause changes in the number of lines
- restoring files that cause rebuilds
- restoring files that cause merge conflicts with staging
2026-02-07 09:59:05 +01:00
quantenzitrone
9c8e96055a various: fix pname misuse in urls 2026-02-05 01:51:59 +01:00
quantenzitrone
6b61249106 various: switch to finalAttrs pattern
this shouldn't create any rebuilds
2026-01-30 02:36:22 +01:00
Weijia Wang
6153943cd7 wcpg: fix build with gcc 15 2026-01-20 23:35:46 +01:00
nixpkgs-ci[bot]
0aa06bcb39 wcslib: 8.4 -> 8.5 (#469321) 2025-12-11 20:42:46 +00:00
Ihar Hrachyshka
567e8dfd8e treewide: clean up 'meta = with' pattern
This commit was created by a combination of scripts and tools:
- an ast-grep script to prefix things in meta with `lib.`,
- a modified nixf-diagnose / nixf combination to remove unused `with
lib;`, and
- regular nixfmt.

Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
2025-12-10 18:09:49 +01:00
R. Ryantm
da73bc0168 wcslib: 8.4 -> 8.5 2025-12-09 14:53:40 +00:00
Aleksana
b1611d26c7 wcc: shallow clone and fix header version (#466587) 2025-12-01 15:54:39 +00:00
Yueh-Shun Li
efde4efae0 wcc: use versionCheckHook 2025-11-30 23:07:06 +08:00
Yueh-Shun Li
4811eac0fa wcc: fetch the forgotten WVERSION bump for v0.0.11 2025-11-30 23:07:05 +08:00
Yueh-Shun Li
bfcc5a4a34 wcc: add meta.mainProgram 2025-11-30 23:07:05 +08:00
Yueh-Shun Li
e5a8184d7d wcc: src: don't deep clone
wcc builds fine without deep cloning.
The reason to add it from commit 9f23f493b7
("wcc: 0.0.7-unstable-2025-01-13 -> 0.0.7-unstable-2025-04-30")
"had to add deepClone to get submodules to build. I'm not sure why"
no longer holds.
2025-11-30 23:07:04 +08:00
Marcin Serwin
eeb6dc0081 maintainers: drop orivej
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-11-21 17:56:40 +01:00
Wolfgang Walther
b4ac268a3d maintainers: drop hjones2199
Inactive since 2023.
2025-09-10 21:05:32 +02:00
Linus Karl
20d20e73f5 treewide: adopt astronomy packages maintained by hjones2199 2025-09-10 19:41:31 +02:00
kyehn
cb9306a7cf wcc: remove with lib 2025-08-29 17:57:03 +08:00
kyehn
16f2b6a6b3 wcc: 0.0.7-unstable-2025-04-30 -> 0.0.11 2025-08-29 17:56:58 +08:00
TomaSajt
398b16e16c treewide: remove useFetchCargoVendor usages 2025-07-26 11:39:35 +02:00
David Morgan
8c5990e524 wcurl: remove 2025-07-04 13:52:50 +01:00
K900
c9dd2063b7 Merge remote-tracking branch 'origin/master' into staging-next 2025-06-06 09:28:07 +03:00
Philip Taron
22b88ba79d treewide: adjust meta descriptions to avoid definite or indefinite articles
This patch was produced in Vim by me, a human being. All errors are the fault of the operator. I did try to be careful.

Co-authored-by: Peder Bergebakken Sundt <pbsds@hotmail.com>
Co-authored-by: dotlambda <nix@dotlambda.de>
2025-06-05 11:04:25 -07:00
nixpkgs-ci[bot]
b366c9ee8e Merge staging-next into staging 2025-05-30 00:17:52 +00:00
R. Ryantm
0d02df2c0d wcurl: 2025.04.20 -> 2025.05.26 2025-05-29 06:43:09 +00:00
Grimmauld
65012b363e treewide: enable doPostInstall for libusb1 packages that expose udev rules
`libusb1` propagates the `udevCheckHook`.
Packages which depend on `libusb1` and expose udev
rules should enable the `doPostInstall` flag.
2025-05-27 21:42:39 +02:00
Martin Weinelt
a6bc3c12bc wcc: fix source hash 2025-05-17 20:32:47 +02:00
Justin Restivo
9f23f493b7 wcc: 0.0.7-unstable-2025-01-13 -> 00.7-unstable-2025-04-30 2025-05-05 19:18:49 -04:00
R. Ryantm
83a9b3f000 wcurl: 2025.02.24 -> 2025.04.20 2025-04-23 20:37:01 +00:00
Winter
a19cd4ffb1 Revert "treewide: replace rev with tag"
This reverts commit 65a333600d.

This wasn't tested for correctness with something like fodwatch [0],
and should not have been (self-)merged so quickly, especially without
further review.

It also resulted in the breakage of at least one package [1] (and that's
the one we know of and was caught).

A few packages that were updated in between this commit and this revert
were not reverted back to using `rev`, but other than that, this is a
1:1 revert.

[0]: https://codeberg.org/raphaelr/fodwatch
[1]: https://github.com/NixOS/nixpkgs/pull/396904 / 758551e458
2025-04-08 02:57:25 -04:00
Pol Dellaiera
65a333600d treewide: replace rev with tag 2025-04-07 16:57:22 +02:00
Peder Bergebakken Sundt
357d2530e5 treewide: substitute pname for strings
Inspired by https://github.com/NixOS/nixpkgs/pull/387725#issuecomment-2704943777, script is based on https://github.com/NixOS/nixpkgs/pull/336172 using what i learned in https://github.com/NixOS/nixpkgs/pull/386865, part of https://github.com/NixOS/nixpkgs/issues/346453

Should be zero rebuilds.

All candidates were made using:

```shell

export NIXPKGS_ALLOW_UNFREE=1
export NIXPKGS_ALLOW_INSECURE=1
export NIXPKGS_ALLOW_BROKEN=1

git-wait restore .

test -s packages.json || ( set -x;
  time nix-env --extra-experimental-features no-url-literals --option system x86_64-linux -f ./. -qaP --json --meta --drv-path --out-path --show-trace --no-allow-import-from-derivation --arg config '{ allowAliases = false; }' > packages.json
)

list_attrpath_fname_col() {
    jq <packages.json 'to_entries[] | select(.value.meta.position==null|not) | "\(.key)\t\(.value.meta.position)"' -r |
        sed -e "s#\t$(realpath .)/#\t#" |
        sed -e 's#:\([0-9]*\)$#\t\1#' |
        grep . |
        grep -iv haskell |
        grep -iv /top-level/ |
        grep -iv chicken |
        grep pkgs/by-name/ |
        grep -iv build |
        grep -E '/(package|default)\.nix'
}

FLOCKDIR="$(mktemp -d)"
N_WORKERS=4
while read attrpath fname col; do
    grep -qE 'repo *= *("\$\{pname\}"|pname);' "$fname" || continue

    echo | (
        # mutex on fname
        flock --nonblock 200 || {
            >&2 echo "failed to aquire lock for $fname"
            exit 1
        }

        echo "$attrpath"
        data="$(nix eval --impure  --expr 'with import ./. {}; { inherit ('"$attrpath"') pname drvPath passthru meta; drvPath2='"$attrpath"'.src.drvPath; }' --json)" || exit
        test -n "$data" || exit
        pname="$(jq <<<"$data" .pname -r)"
        test -n "$pname" || exit

        (set -x
            sd -F '${pname}'  "$pname"         "$fname"
            sd -F ' = pname;' " = \"$pname\";" "$fname"
        )

        data2="$(nix eval --impure  --expr 'with import ./. {}; { inherit ('"$attrpath"') pname drvPath passthru meta; drvPath2='"$attrpath"'.src.drvPath; }' --json)"
        if [[ "$data" = "$data2" ]]; then
            (set -x; git-wait add "$fname")
        else
            (set -x; git-wait restore "$fname")
            exit
        fi

        (set -x
            sd -F ' rec {' ' {' "$fname"
        )

        data3="$(nix eval --impure  --expr 'with import ./. {}; { inherit ('"$attrpath"') pname drvPath passthru meta; drvPath2='"$attrpath"'.src.drvPath; }' --json 2>/dev/nul)"

        if [[ "$data" = "$data3" ]]; then
            (set -x; git-wait add "$fname")
        else
            (set -x; git-wait restore "$fname")
        fi

    ) 200>"$FLOCKDIR"/"$(sha256sum - <<<"$fname" | cut -d' ' -f1)".lock &

    while [[ $(jobs -p | wc -l) -ge $N_WORKERS ]]; do
        wait -n < <(jobs -p) || true
    done

done < <(list_attrpath_fname_col)

wait

git restore .

time nix-env --extra-experimental-features no-url-literals --option system x86_64-linux -f ./. -qaP --json --meta --drv-path --out-path --show-trace --no-allow-import-from-derivation --arg config '{ allowAliases = false; }' > packages2.json
```

`diff packages{,2}.json` is empty, indicating that no package nor src derivation has changed.
I checked and cherry-picked the changes using `GIT_DIFF_OPTS='-u15' git -c interactive.singleKey=true add --patch`
2025-03-11 23:55:31 +01:00
MithicSpirit
2355167206 wcurl: 2024.12.08 -> 2025.02.24
https://github.com/curl/wcurl/releases/tag/v2025.02.24
2025-02-27 17:02:05 -05:00
emaryn
914f4e549a wcslib: fix noBrokenSymlinks 2025-02-12 21:48:38 +00:00
emaryn
11540a7bfb wcslib: refactor 2025-02-09 16:43:43 +00:00
Alyssa Ross
63bff8c132 treewide: migrate to fetchCargoVendor, batch 1
Cargo 1.84.0 seems to have changed the output format of cargo vendor
again, once again invalidating fetchCargoTarball FOD hashes.  It's
time to fix this once and for all, switching across the board to
fetchCargoVendor, which is not dependent on cargo vendor's output
format.

It should be possible to reproduce this diff.  To do so, get the list
of files changed by this commit, e.g. with git diff --name-only, then
run the following two commands, each with that list of files as their
standard input:

	xargs sed -i 's/^\(. *\)\(cargoHash\)\b/\1useFetchCargoVendor = true;\n\1cargoHash/'
	cut -d / -f 4 | xargs -n 1 nix-update --version=skip

This will take a long time.  It might be possible to parallelize it
using xargs' -P option.  I haven't tested it.
2025-01-23 11:46:43 +01:00
Jörg Thalheim
bbfef7c059 wcc: 2018-04-05 -> 0.0.7-unstable-2025-01-13
Diff: f141963ff1...503f6dfed7

<!-- ps-id: 6096655f-e1c9-4b72-a7ab-b65fa9e152e6 -->
2025-01-19 18:44:14 +01:00
Peder Bergebakken Sundt
0cd04d3036 treewide: migrate fetchgit rev = "refs/tags/..." to tag 2025-01-04 00:19:17 +01:00
Silvan Mosberger
4f0dadbf38 treewide: format all inactive Nix files
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.

Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.

A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.

This commit was automatically created and can be verified using

    nix-build a08b3a4d19.tar.gz \
      --argstr baseRev b32a094368
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:26:33 +01:00
David Morgan
81e3b54e57 wcurl: 2024.07.10 -> 2024.12.08 (#363562) 2024-12-09 21:51:37 -05:00
Weijia Wang
904fabb9ab wcslib: 8.3 -> 8.4 (#361224) 2024-12-09 21:13:49 +01:00
R. Ryantm
60fd285fa9 wcslib: 8.3 -> 8.4 2024-12-02 21:03:19 +00:00
Jordan Williams
0f8f5cb2f2 wchisp: use versionCheckHook 2024-12-02 07:20:54 -06:00