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
Ihar Hrachyshka
e279d4affc
nut: enable for darwin
2026-01-25 12:47:52 -05:00
Bjørn Forsman
1a9dfde2e5
nut: 2.8.3 -> 2.8.4
...
Changelog:
https://github.com/networkupstools/nut/blob/v2.8.4/NEWS.adoc#release-notes-for-nut-284---whats-new-since-283
Add two configure flags that are now needed for a working build/install.
(I tried adding all build deps for docs/changelog generation, but it
still failed.)
2026-01-07 22:59:21 +01: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
Jon Erling Hustadnes
2cb2ffd25e
nut: configure the user and group nut should be built with
...
The udev rules which are generated during build are defaulting to the
`nobody` user which does not exist and should not be used (ref: [#55370 ](https://github.com/NixOS/nixpkgs/issues/55370 ))
This was also raised upstream [networkupstools/nut#3173 ](https://github.com/networkupstools/nut/issues/3173 ) and was informed that the `nobody` user will stay as is but they will consider adding a warning.
The user and group should be set by the builder (end user / distribution).
2025-11-10 20:26:25 +01:00
Wolfgang Walther
5a0711127c
treewide: run nixfmt 1.0.0
2025-07-24 13:55:40 +02:00
Philip Wilk
ea6876416b
nut: add override for apc_modbus feature
2025-07-03 22:30:43 +02: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
Bjørn Forsman
34f5980621
nut: 2.8.2 -> 2.8.3
...
https://github.com/networkupstools/nut/releases/tag/v2.8.3
Use the new --with-systemdsystempresetdir= option to avoid install error
where nut tries to install files to the systemd Nix store path.
2025-05-26 18:51:40 +02:00
Wolfgang Walther
b12e9707e0
treewide: replace substituteAll with replaceVars (part 3)
...
Driving #237216 forward.
2025-01-19 13:31:23 +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
aleksana
571c71e6f7
treewide: migrate packages to pkgs/by-name, take 1
...
We are migrating packages that meet below requirements:
1. using `callPackage`
2. called path is a directory
3. overriding set is empty (`{ }`)
4. not containing path expressions other than relative path (to
makenixpkgs-vet happy)
5. not referenced by nix files outside of the directory, other
than`pkgs/top-level/all-packages.nix`
6. not referencing nix files outside of the directory
7. not referencing `default.nix` (since it's changed to `package.nix`)
8. `outPath` doesn't change after migration
The tool is here: https://github.com/Aleksanaa/by-name-migrate .
2024-11-09 20:04:51 +08:00