0
0
Fork 0
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-07-14 06:00:33 +03:00

Merge remote-tracking branch 'origin/staging-next' into staging

This commit is contained in:
K900 2025-01-02 19:21:56 +03:00
commit 936f4e016d
72 changed files with 1220 additions and 391 deletions

View file

@ -19,6 +19,8 @@ name: Codeowners v2
# #
# This split is done because checking code owners requires handling untrusted PR input, # This split is done because checking code owners requires handling untrusted PR input,
# while requesting code owners requires PR write access, and those shouldn't be mixed. # while requesting code owners requires PR write access, and those shouldn't be mixed.
#
# Note that the latter is also used for ./eval.yml requesting reviewers.
on: on:
pull_request_target: pull_request_target:

View file

@ -133,6 +133,7 @@ jobs:
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with: with:
ref: ${{ needs.get-merge-commit.outputs.mergedSha }} ref: ${{ needs.get-merge-commit.outputs.mergedSha }}
fetch-depth: 2
path: nixpkgs path: nixpkgs
- name: Install Nix - name: Install Nix
@ -194,12 +195,18 @@ jobs:
- name: Compare against the base branch - name: Compare against the base branch
if: steps.baseRunId.outputs.baseRunId if: steps.baseRunId.outputs.baseRunId
run: | run: |
nix-build nixpkgs/ci -A eval.compare \ git -C nixpkgs worktree add ../base ${{ needs.attrs.outputs.baseSha }}
git -C nixpkgs diff --name-only ${{ needs.attrs.outputs.baseSha }} ${{ needs.attrs.outputs.mergedSha }} \
| jq --raw-input --slurp 'split("\n")[:-1]' > touched-files.json
# Use the base branch to get accurate maintainer info
nix-build base/ci -A eval.compare \
--arg beforeResultDir ./baseResult \ --arg beforeResultDir ./baseResult \
--arg afterResultDir ./prResult \ --arg afterResultDir ./prResult \
--arg touchedFilesJson ./touched-files.json \
-o comparison -o comparison
cat comparison/step-summary.md >> "$GITHUB_STEP_SUMMARY" cat comparison/step-summary.md >> "$GITHUB_STEP_SUMMARY"
# TODO: Request reviews from maintainers for packages whose files are modified in the PR
- name: Upload the combined results - name: Upload the combined results
if: steps.baseRunId.outputs.baseRunId if: steps.baseRunId.outputs.baseRunId
@ -218,6 +225,14 @@ jobs:
pull-requests: write pull-requests: write
statuses: write statuses: write
steps: steps:
# See ./codeowners-v2.yml, reuse the same App because we need the same permissions
# Can't use the token received from permissions above, because it can't get enough permissions
- uses: actions/create-github-app-token@5d869da34e18e7287c1daad50e0b8ea0f506ce69 # v1.11.0
id: app-token
with:
app-id: ${{ vars.OWNER_APP_ID }}
private-key: ${{ secrets.OWNER_APP_PRIVATE_KEY }}
- name: Download process result - name: Download process result
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8 uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with: with:
@ -252,6 +267,20 @@ jobs:
/repos/"$REPOSITORY"/issues/"$NUMBER"/labels \ /repos/"$REPOSITORY"/issues/"$NUMBER"/labels \
-f "labels[]=$toAdd" -f "labels[]=$toAdd"
done < <(comm -13 before after) done < <(comm -13 before after)
# maintainers.json contains GitHub IDs. Look up handles to request reviews from.
# There appears to be no API to request reviews based on GitHub IDs
jq -r 'keys[]' comparison/maintainers.json \
| while read -r id; do gh api /user/"$id"; done \
| jq -s '{ reviewers: map(.login) }' \
> reviewers.json
# Request reviewers from maintainers of changed output paths
GH_TOKEN=${{ steps.app-token.outputs.token }} gh api \
--method POST \
/repos/${{ github.repository }}/pulls/${{ github.event.number }}/requested_reviewers \
--input reviewers.json
env: env:
GH_TOKEN: ${{ github.token }} GH_TOKEN: ${{ github.token }}
REPOSITORY: ${{ github.repository }} REPOSITORY: ${{ github.repository }}

View file

@ -5,7 +5,11 @@
writeText, writeText,
... ...
}: }:
{ beforeResultDir, afterResultDir }: {
beforeResultDir,
afterResultDir,
touchedFilesJson,
}:
let let
/* /*
Derivation that computes which packages are affected (added, changed or removed) between two revisions of nixpkgs. Derivation that computes which packages are affected (added, changed or removed) between two revisions of nixpkgs.
@ -77,11 +81,11 @@ let
# - values: lists of `packagePlatformPath`s # - values: lists of `packagePlatformPath`s
diffAttrs = diff beforeAttrs afterAttrs; diffAttrs = diff beforeAttrs afterAttrs;
changed-paths =
let
rebuilds = uniqueStrings (diffAttrs.added ++ diffAttrs.changed); rebuilds = uniqueStrings (diffAttrs.added ++ diffAttrs.changed);
rebuildsPackagePlatformAttrs = convertToPackagePlatformAttrs rebuilds; rebuildsPackagePlatformAttrs = convertToPackagePlatformAttrs rebuilds;
changed-paths =
let
rebuildsByPlatform = groupByPlatform rebuildsPackagePlatformAttrs; rebuildsByPlatform = groupByPlatform rebuildsPackagePlatformAttrs;
rebuildsByKernel = groupByKernel rebuildsPackagePlatformAttrs; rebuildsByKernel = groupByKernel rebuildsPackagePlatformAttrs;
rebuildCountByKernel = lib.mapAttrs ( rebuildCountByKernel = lib.mapAttrs (
@ -104,10 +108,17 @@ let
); );
} }
); );
maintainers = import ./maintainers.nix {
changedattrs = lib.unique (map (a: a.packagePath) rebuildsPackagePlatformAttrs);
changedpathsjson = touchedFilesJson;
};
in in
runCommand "compare" runCommand "compare"
{ {
nativeBuildInputs = [ jq ]; nativeBuildInputs = [ jq ];
maintainers = builtins.toJSON maintainers;
passAsFile = [ "maintainers" ];
} }
'' ''
mkdir $out mkdir $out
@ -115,5 +126,8 @@ runCommand "compare"
cp ${changed-paths} $out/changed-paths.json cp ${changed-paths} $out/changed-paths.json
jq -r -f ${./generate-step-summary.jq} < ${changed-paths} > $out/step-summary.md jq -r -f ${./generate-step-summary.jq} < ${changed-paths} > $out/step-summary.md
cp "$maintainersPath" "$out/maintainers.json"
# TODO: Compare eval stats # TODO: Compare eval stats
'' ''

View file

@ -0,0 +1,123 @@
# Almost directly vendored from https://github.com/NixOS/ofborg/blob/5a4e743f192fb151915fcbe8789922fa401ecf48/ofborg/src/maintainers.nix
{ changedattrs, changedpathsjson }:
let
pkgs = import ../../.. {
system = "x86_64-linux";
config = { };
overlays = [ ];
};
inherit (pkgs) lib;
changedpaths = builtins.fromJSON (builtins.readFile changedpathsjson);
anyMatchingFile =
filename:
let
matching = builtins.filter (changed: lib.strings.hasSuffix changed filename) changedpaths;
in
(builtins.length matching) > 0;
anyMatchingFiles = files: (builtins.length (builtins.filter anyMatchingFile files)) > 0;
enrichedAttrs = builtins.map (path: {
path = path;
name = builtins.concatStringsSep "." path;
}) changedattrs;
validPackageAttributes = builtins.filter (
pkg:
if (lib.attrsets.hasAttrByPath pkg.path pkgs) then
(
if (builtins.tryEval (lib.attrsets.attrByPath pkg.path null pkgs)).success then
true
else
builtins.trace "Failed to access ${pkg.name} even though it exists" false
)
else
builtins.trace "Failed to locate ${pkg.name}." false
) enrichedAttrs;
attrsWithPackages = builtins.map (
pkg: pkg // { package = lib.attrsets.attrByPath pkg.path null pkgs; }
) validPackageAttributes;
attrsWithMaintainers = builtins.map (
pkg: pkg // { maintainers = (pkg.package.meta or { }).maintainers or [ ]; }
) attrsWithPackages;
attrsWeCanPing = builtins.filter (
pkg:
if (builtins.length pkg.maintainers) > 0 then
true
else
builtins.trace "Package has no maintainers: ${pkg.name}" false
) attrsWithMaintainers;
relevantFilenames =
drv:
(lib.lists.unique (
builtins.map (pos: lib.strings.removePrefix (toString ../..) pos.file) (
builtins.filter (x: x != null) [
(builtins.unsafeGetAttrPos "maintainers" (drv.meta or { }))
(builtins.unsafeGetAttrPos "src" drv)
# broken because name is always set by stdenv:
# # A hack to make `nix-env -qa` and `nix search` ignore broken packages.
# # TODO(@oxij): remove this assert when something like NixOS/nix#1771 gets merged into nix.
# name = assert validity.handled; name + lib.optionalString
#(builtins.unsafeGetAttrPos "name" drv)
(builtins.unsafeGetAttrPos "pname" drv)
(builtins.unsafeGetAttrPos "version" drv)
# Use ".meta.position" for cases when most of the package is
# defined in a "common" section and the only place where
# reference to the file with a derivation the "pos"
# attribute.
#
# ".meta.position" has the following form:
# "pkgs/tools/package-management/nix/default.nix:155"
# We transform it to the following:
# { file = "pkgs/tools/package-management/nix/default.nix"; }
{ file = lib.head (lib.splitString ":" (drv.meta.position or "")); }
]
)
));
attrsWithFilenames = builtins.map (
pkg: pkg // { filenames = relevantFilenames pkg.package; }
) attrsWithMaintainers;
attrsWithModifiedFiles = builtins.filter (pkg: anyMatchingFiles pkg.filenames) attrsWithFilenames;
listToPing = lib.lists.flatten (
builtins.map (
pkg:
builtins.map (maintainer: {
id = maintainer.githubId;
packageName = pkg.name;
dueToFiles = pkg.filenames;
}) pkg.maintainers
) attrsWithModifiedFiles
);
byMaintainer = lib.lists.foldr (
ping: collector:
collector
// {
"${toString ping.id}" = [
{ inherit (ping) packageName dueToFiles; }
] ++ (collector."${toString ping.id}" or [ ]);
}
) { } listToPing;
textForPackages =
packages: lib.strings.concatStringsSep ", " (builtins.map (pkg: pkg.packageName) packages);
textPerMaintainer = lib.attrsets.mapAttrs (
maintainer: packages: "- @${maintainer} for ${textForPackages packages}"
) byMaintainer;
packagesPerMaintainer = lib.attrsets.mapAttrs (
maintainer: packages: builtins.map (pkg: pkg.packageName) packages
) byMaintainer;
in
packagesPerMaintainer

View file

@ -11,6 +11,7 @@ rec {
into into
{ {
name = "hello"; name = "hello";
packagePath = [ "hello" ];
platform = "aarch64-linux"; platform = "aarch64-linux";
} }
*/ */
@ -30,6 +31,9 @@ rec {
null null
else else
{ {
# [ "python312Packages" "numpy" ]
inherit packagePath;
# python312Packages.numpy # python312Packages.numpy
inherit name; inherit name;
@ -52,12 +56,12 @@ rec {
] ]
into into
[ [
{ name = "hello"; platform = "aarch64-linux"; } { name = "hello"; platform = "aarch64-linux"; packagePath = [ "hello" ]; }
{ name = "hello"; platform = "x86_64-linux"; } { name = "hello"; platform = "x86_64-linux"; packagePath = [ "hello" ]; }
{ name = "hello"; platform = "aarch64-darwin"; } { name = "hello"; platform = "aarch64-darwin"; packagePath = [ "hello" ]; }
{ name = "hello"; platform = "x86_64-darwin"; } { name = "hello"; platform = "x86_64-darwin"; packagePath = [ "hello" ]; }
{ name = "bye"; platform = "aarch64-darwin"; } { name = "bye"; platform = "aarch64-darwin"; packagePath = [ "hello" ]; }
{ name = "bye"; platform = "x86_64-darwin"; } { name = "bye"; platform = "x86_64-darwin"; packagePath = [ "hello" ]; }
] ]
*/ */
convertToPackagePlatformAttrs = convertToPackagePlatformAttrs =
@ -120,12 +124,12 @@ rec {
Turns Turns
[ [
{ name = "hello"; platform = "aarch64-linux"; } { name = "hello"; platform = "aarch64-linux"; ... }
{ name = "hello"; platform = "x86_64-linux"; } { name = "hello"; platform = "x86_64-linux"; ... }
{ name = "hello"; platform = "aarch64-darwin"; } { name = "hello"; platform = "aarch64-darwin"; ... }
{ name = "hello"; platform = "x86_64-darwin"; } { name = "hello"; platform = "x86_64-darwin"; ... }
{ name = "bye"; platform = "aarch64-darwin"; } { name = "bye"; platform = "aarch64-darwin"; ... }
{ name = "bye"; platform = "x86_64-darwin"; } { name = "bye"; platform = "x86_64-darwin"; ... }
] ]
into into
{ {
@ -145,12 +149,12 @@ rec {
# Turns # Turns
# [ # [
# { name = "hello"; platform = "aarch64-linux"; } # { name = "hello"; platform = "aarch64-linux"; ... }
# { name = "hello"; platform = "x86_64-linux"; } # { name = "hello"; platform = "x86_64-linux"; ... }
# { name = "hello"; platform = "aarch64-darwin"; } # { name = "hello"; platform = "aarch64-darwin"; ... }
# { name = "hello"; platform = "x86_64-darwin"; } # { name = "hello"; platform = "x86_64-darwin"; ... }
# { name = "bye"; platform = "aarch64-darwin"; } # { name = "bye"; platform = "aarch64-darwin"; ... }
# { name = "bye"; platform = "x86_64-darwin"; } # { name = "bye"; platform = "x86_64-darwin"; ... }
# ] # ]
# #
# into # into

View file

@ -15661,6 +15661,12 @@
githubId = 9636071; githubId = 9636071;
name = "Myrl Hex"; name = "Myrl Hex";
}; };
myypo = {
email = "nikirsmcgl@gmail.com";
github = "myypo";
githubId = 110892040;
name = "Mykyta Polchanov";
};
mzacho = { mzacho = {
email = "nixpkgs@martinzacho.net"; email = "nixpkgs@martinzacho.net";
github = "mzacho"; github = "mzacho";

View file

@ -724,9 +724,6 @@ let
# __noChroot for example). # __noChroot for example).
export HOME=$TMPDIR export HOME=$TMPDIR
NIXOS_INSTALL_BOOTLOADER=1 nixos-enter --root $mountPoint -- /nix/var/nix/profiles/system/bin/switch-to-configuration boot NIXOS_INSTALL_BOOTLOADER=1 nixos-enter --root $mountPoint -- /nix/var/nix/profiles/system/bin/switch-to-configuration boot
# The above scripts will generate a random machine-id and we don't want to bake a single ID into all our images
rm -f $mountPoint/etc/machine-id
''} ''}
# Set the ownerships of the contents. The modes are set in preVM. # Set the ownerships of the contents. The modes are set in preVM.

View file

@ -80,9 +80,10 @@ in
let let
args = lib.map lib.escapeShellArg ( args = lib.map lib.escapeShellArg (
[ [
"-l" "--verbose"
"--user"
cfg.username cfg.username
"-i" "--identity-file"
cfg.identityFilePath cfg.identityFilePath
cfg.host cfg.host
cfg.remoteFilesystem cfg.remoteFilesystem

View file

@ -159,7 +159,7 @@ def copy_from_file(file: str, dry_run: bool = False) -> str:
def write_entry(profile: str | None, generation: int, specialisation: str | None, def write_entry(profile: str | None, generation: int, specialisation: str | None,
machine_id: str, bootspec: BootSpec, current: bool) -> None: machine_id: str | None, bootspec: BootSpec, current: bool) -> None:
if specialisation: if specialisation:
bootspec = bootspec.specialisations[specialisation] bootspec = bootspec.specialisations[specialisation]
kernel = copy_from_file(bootspec.kernel) kernel = copy_from_file(bootspec.kernel)
@ -281,11 +281,7 @@ def install_bootloader(args: argparse.Namespace) -> None:
except IOError as e: except IOError as e:
if e.errno != errno.ENOENT: if e.errno != errno.ENOENT:
raise raise
# Since systemd version 232 a machine ID is required and it might not machine_id = None
# be there on newly installed systems, so let's generate one so that
# bootctl can find it and we can also pass it to write_entry() later.
cmd = [f"{SYSTEMD}/bin/systemd-machine-id-setup", "--print"]
machine_id = run(cmd, stdout=subprocess.PIPE).stdout.rstrip()
if os.getenv("NIXOS_INSTALL_GRUB") == "1": if os.getenv("NIXOS_INSTALL_GRUB") == "1":
warnings.warn("NIXOS_INSTALL_GRUB env var deprecated, use NIXOS_INSTALL_BOOTLOADER", DeprecationWarning) warnings.warn("NIXOS_INSTALL_GRUB env var deprecated, use NIXOS_INSTALL_BOOTLOADER", DeprecationWarning)

View file

@ -144,6 +144,7 @@ in {
audiobookshelf = handleTest ./audiobookshelf.nix {}; audiobookshelf = handleTest ./audiobookshelf.nix {};
auth-mysql = handleTest ./auth-mysql.nix {}; auth-mysql = handleTest ./auth-mysql.nix {};
authelia = handleTest ./authelia.nix {}; authelia = handleTest ./authelia.nix {};
auto-cpufreq = handleTest ./auto-cpufreq.nix {};
avahi = handleTest ./avahi.nix {}; avahi = handleTest ./avahi.nix {};
avahi-with-resolved = handleTest ./avahi.nix { networkd = true; }; avahi-with-resolved = handleTest ./avahi.nix { networkd = true; };
ayatana-indicators = runTest ./ayatana-indicators.nix; ayatana-indicators = runTest ./ayatana-indicators.nix;

View file

@ -0,0 +1,33 @@
import ./make-test-python.nix (
{ pkgs, ... }:
{
name = "auto-cpufreq-server";
nodes = {
machine =
{ pkgs, ... }:
{
# service will still start but since vm inside qemu cpufreq adjustments
# cannot be made. This will resource in the following error but the service
# remains up:
# ERROR:
# Couldn't find any of the necessary scaling governors.
services.auto-cpufreq = {
enable = true;
settings = {
charger = {
turbo = "auto";
};
};
};
};
};
testScript = ''
machine.start()
machine.wait_for_unit("auto-cpufreq.service")
machine.succeed("auto-cpufreq --force reset")
'';
}
)

View file

@ -6062,6 +6062,18 @@ final: prev:
meta.homepage = "https://github.com/junegunn/limelight.vim/"; meta.homepage = "https://github.com/junegunn/limelight.vim/";
}; };
linediff-vim = buildVimPlugin {
pname = "linediff.vim";
version = "2024-04-22";
src = fetchFromGitHub {
owner = "AndrewRadev";
repo = "linediff.vim";
rev = "ddae71ef5f94775d101c1c70032ebe8799f32745";
sha256 = "01dshpxm1svfhw9l447mz224qbvlbvywd7ai4wxwyjzgkhp36937";
};
meta.homepage = "https://github.com/AndrewRadev/linediff.vim/";
};
lingua-franca-vim = buildVimPlugin { lingua-franca-vim = buildVimPlugin {
pname = "lingua-franca.vim"; pname = "lingua-franca.vim";
version = "2021-09-05"; version = "2021-09-05";
@ -9389,6 +9401,18 @@ final: prev:
meta.homepage = "https://github.com/LhKipp/nvim-nu/"; meta.homepage = "https://github.com/LhKipp/nvim-nu/";
}; };
nvim-numbertoggle = buildVimPlugin {
pname = "nvim-numbertoggle";
version = "2024-03-29";
src = fetchFromGitHub {
owner = "sitiom";
repo = "nvim-numbertoggle";
rev = "c5827153f8a955886f1b38eaea6998c067d2992f";
sha256 = "18nxqi3a3xamrjzpsabww411ix6vr44smprqi9prd47238lpshi2";
};
meta.homepage = "https://github.com/sitiom/nvim-numbertoggle/";
};
nvim-osc52 = buildVimPlugin { nvim-osc52 = buildVimPlugin {
pname = "nvim-osc52"; pname = "nvim-osc52";
version = "2024-05-24"; version = "2024-05-24";

View file

@ -502,6 +502,7 @@ https://github.com/spywhere/lightline-lsp/,,
https://github.com/itchyny/lightline.vim/,, https://github.com/itchyny/lightline.vim/,,
https://github.com/ggandor/lightspeed.nvim/,, https://github.com/ggandor/lightspeed.nvim/,,
https://github.com/junegunn/limelight.vim/,, https://github.com/junegunn/limelight.vim/,,
https://github.com/AndrewRadev/linediff.vim/,HEAD,
https://github.com/lf-lang/lingua-franca.vim/,, https://github.com/lf-lang/lingua-franca.vim/,,
https://github.com/tamago324/lir.nvim/,, https://github.com/tamago324/lir.nvim/,,
https://github.com/kkharji/lispdocs.nvim/,, https://github.com/kkharji/lispdocs.nvim/,,
@ -779,6 +780,7 @@ https://github.com/nvim-neotest/nvim-nio/,HEAD,
https://github.com/ya2s/nvim-nonicons/,, https://github.com/ya2s/nvim-nonicons/,,
https://github.com/rcarriga/nvim-notify/,, https://github.com/rcarriga/nvim-notify/,,
https://github.com/LhKipp/nvim-nu/,HEAD, https://github.com/LhKipp/nvim-nu/,HEAD,
https://github.com/sitiom/nvim-numbertoggle/,HEAD,
https://github.com/ojroques/nvim-osc52/,, https://github.com/ojroques/nvim-osc52/,,
https://github.com/julienvincent/nvim-paredit/,, https://github.com/julienvincent/nvim-paredit/,,
https://github.com/gpanders/nvim-parinfer/,HEAD, https://github.com/gpanders/nvim-parinfer/,HEAD,

View file

@ -1,48 +1,14 @@
{ {
lib, lib,
stdenv,
vscode-utils, vscode-utils,
fetchurl,
}: }:
let
version = "0.13.4";
sources = {
"x86_64-linux" = {
arch = "linux-x64";
url = "https://download.visualjj.com/visualjj-linux-x64-${version}.vsix";
hash = "sha256-q9ubYkhrV28sB9CV1dyBEIFEkTrkGHRXdz5+4xjeVzI=";
};
"x86_64-darwin" = {
arch = "darwin-x64";
url = "https://download.visualjj.com/visualjj-darwin-x64-${version}.vsix";
hash = "sha256-vV5u1QBICz3GIYRgH9UWM38a8YXtvW0u8r7c1SaKwxM=";
};
"aarch64-linux" = {
arch = "linux-arm64";
url = "https://download.visualjj.com/visualjj-linux-arm64-${version}.vsix";
hash = "sha256-fgT4brIhHI6gNCcsbHpz+v4/diyox2VoFlvCnhPIbPM=";
};
"aarch64-darwin" = {
arch = "darwin-arm64";
url = "https://download.visualjj.com/visualjj-darwin-arm64-${version}.vsix";
hash = "sha256-/uuLRkEY430R5RS7B6972iginpA3pWpApjI6RUTxcHM=";
};
};
in
vscode-utils.buildVscodeMarketplaceExtension { vscode-utils.buildVscodeMarketplaceExtension {
vsix = fetchurl {
url = sources.${stdenv.hostPlatform.system}.url;
hash = sources.${stdenv.hostPlatform.system}.hash;
name = "visualjj-visualjj-${version}.zip";
};
mktplcRef = { mktplcRef = {
inherit version;
name = "visualjj"; name = "visualjj";
publisher = "visualjj"; publisher = "visualjj";
arch = sources.${stdenv.hostPlatform.system}.arch; version = "0.13.4";
hash = "sha256-/uuLRkEY430R5RS7B6972iginpA3pWpApjI6RUTxcHM=";
}; };
meta = { meta = {

View file

@ -29,13 +29,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "dosbox-x"; pname = "dosbox-x";
version = "2024.12.04"; version = "2025.01.01";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "joncampbell123"; owner = "joncampbell123";
repo = "dosbox-x"; repo = "dosbox-x";
rev = "dosbox-x-v${finalAttrs.version}"; rev = "dosbox-x-v${finalAttrs.version}";
hash = "sha256-wZCLwEInUfzuOCcUsz8W+Gi00lp4Nwc0QZjLF8/e9iM="; hash = "sha256-3zE/VDCFNQRgqpIL5hRAafDoc7agX2LIsiL4xwDBLJY=";
}; };
# sips is unavailable in sandbox, replacing with imagemagick breaks build due to wrong Foundation propagation(?) so don't generate resolution variants # sips is unavailable in sandbox, replacing with imagemagick breaks build due to wrong Foundation propagation(?) so don't generate resolution variants

View file

@ -16,13 +16,13 @@
mkDerivation rec { mkDerivation rec {
pname = "yacreader"; pname = "yacreader";
version = "9.14.2"; version = "9.15.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "YACReader"; owner = "YACReader";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-gQ4Aaapini6j3lCtowFbrfwbe91aFl50hp1EfxTO8uY="; sha256 = "sha256-5vCjr8WRwa7Q/84Itgg07K1CJKGnWA1z53et2IxxReE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -117,7 +117,7 @@ in
export GIT_SSL_CAINFO=$NIX_SSL_CERT_FILE export GIT_SSL_CAINFO=$NIX_SSL_CERT_FILE
${if finalAttrs.proxyVendor then '' ${if finalAttrs.proxyVendor then ''
mkdir -p "''${GOPATH}/pkg/mod/cache/download" mkdir -p "$GOPATH/pkg/mod/cache/download"
go mod download go mod download
'' else '' '' else ''
if (( "''${NIX_DEBUG:-0}" >= 1 )); then if (( "''${NIX_DEBUG:-0}" >= 1 )); then
@ -135,8 +135,8 @@ in
runHook preInstall runHook preInstall
${if finalAttrs.proxyVendor then '' ${if finalAttrs.proxyVendor then ''
rm -rf "''${GOPATH}/pkg/mod/cache/download/sumdb" rm -rf "$GOPATH/pkg/mod/cache/download/sumdb"
cp -r --reflink=auto "''${GOPATH}/pkg/mod/cache/download" $out cp -r --reflink=auto "$GOPATH/pkg/mod/cache/download" $out
'' else '' '' else ''
cp -r --reflink=auto vendor $out cp -r --reflink=auto vendor $out
''} ''}

View file

@ -7,6 +7,7 @@
wrapGAppsHook3, wrapGAppsHook3,
gtk3, gtk3,
getent, getent,
nixosTests,
}: }:
python3Packages.buildPythonPackage rec { python3Packages.buildPythonPackage rec {
pname = "auto-cpufreq"; pname = "auto-cpufreq";
@ -92,6 +93,10 @@ python3Packages.buildPythonPackage rec {
cp scripts/org.auto-cpufreq.pkexec.policy $out/share/polkit-1/actions cp scripts/org.auto-cpufreq.pkexec.policy $out/share/polkit-1/actions
''; '';
passthru.tests = {
inherit (nixosTests) auto-cpufreq;
};
meta = { meta = {
mainProgram = "auto-cpufreq"; mainProgram = "auto-cpufreq";
homepage = "https://github.com/AdnanHodzic/auto-cpufreq"; homepage = "https://github.com/AdnanHodzic/auto-cpufreq";

View file

@ -44,6 +44,10 @@ stdenv.mkDerivation rec {
url = "mirror://kernel/linux/daemons/autofs/v5/patches-5.2.0/autofs-5.1.9-fix-crash-in-make_options_string.patch"; url = "mirror://kernel/linux/daemons/autofs/v5/patches-5.2.0/autofs-5.1.9-fix-crash-in-make_options_string.patch";
hash = "sha256-YjTdJ50iNhJ2UjFdrKYEFNt04z0PfmElbFa4GuSskLA="; hash = "sha256-YjTdJ50iNhJ2UjFdrKYEFNt04z0PfmElbFa4GuSskLA=";
}) })
(fetchpatch {
url = "mirror://kernel/linux/daemons/autofs/v5/patches-5.2.0/autofs-5.1.9-Fix-incompatible-function-pointer-types-in-cyrus-sasl-module.patch";
hash = "sha256-erLlqZtVmYqUOsk3S7S50yA0VB8Gzibsv+X50+gcA58=";
})
]; ];
preConfigure = '' preConfigure = ''

View file

@ -645,10 +645,10 @@
}, },
"managednetworkfabric": { "managednetworkfabric": {
"pname": "managednetworkfabric", "pname": "managednetworkfabric",
"version": "6.4.0", "version": "7.0.0",
"url": "https://azcliprod.blob.core.windows.net/cli-extensions/managednetworkfabric-6.4.0-py3-none-any.whl", "url": "https://azcliprod.blob.core.windows.net/cli-extensions/managednetworkfabric-7.0.0-py3-none-any.whl",
"hash": "sha256-nUEHjgZUqq42pfDyg/Ud6YzENgWCkgU2VCVG7TTKC8Q=", "hash": "sha256-I+K24xxpm8DoyNsvqjv9Yi1ewVZeCDCVIizYUB7TKW8=",
"description": "Support for managednetworkfabric commands based on 2023-06-15 API version" "description": "Support for managednetworkfabric commands based on 2024-02-15-preview API version"
}, },
"managementpartner": { "managementpartner": {
"pname": "managementpartner", "pname": "managementpartner",
@ -729,9 +729,9 @@
}, },
"networkcloud": { "networkcloud": {
"pname": "networkcloud", "pname": "networkcloud",
"version": "2.0.0b6", "version": "2.0.0",
"url": "https://azcliprod.blob.core.windows.net/cli-extensions/networkcloud-2.0.0b6-py3-none-any.whl", "url": "https://azcliprod.blob.core.windows.net/cli-extensions/networkcloud-2.0.0-py3-none-any.whl",
"hash": "sha256-1T+IepVTU7DLHQ7CfcEltQG+/lryktzUFB7RY9O9hzM=", "hash": "sha256-8ntKTSkGJwdhHJCeClEd7A0cUgRed8sV/l7qP5jAQhQ=",
"description": "Support for Azure Operator Nexus network cloud commands based on 2024-07-01 API version" "description": "Support for Azure Operator Nexus network cloud commands based on 2024-07-01 API version"
}, },
"new-relic": { "new-relic": {
@ -841,9 +841,9 @@
}, },
"qumulo": { "qumulo": {
"pname": "qumulo", "pname": "qumulo",
"version": "1.0.0", "version": "2.0.0",
"url": "https://azcliprod.blob.core.windows.net/cli-extensions/qumulo-1.0.0-py3-none-any.whl", "url": "https://azcliprod.blob.core.windows.net/cli-extensions/qumulo-2.0.0-py3-none-any.whl",
"hash": "sha256-mXP1gKP8IMwv5VWKHP3BDd/GVnmC0S83AIu/7Hqvz5s=", "hash": "sha256-fsUZyd0s+Rv1Sy6Lm2iq2xNMsrv+xU6KLLCOo6DkfmI=",
"description": "Microsoft Azure Command-Line Tools Qumulo Extension" "description": "Microsoft Azure Command-Line Tools Qumulo Extension"
}, },
"quota": { "quota": {
@ -953,9 +953,9 @@
}, },
"stack-hci-vm": { "stack-hci-vm": {
"pname": "stack-hci-vm", "pname": "stack-hci-vm",
"version": "1.4.3", "version": "1.5.0",
"url": "https://hciarcvmsstorage.z13.web.core.windows.net/cli-extensions/stack_hci_vm-1.4.3-py3-none-any.whl", "url": "https://hciarcvmsstorage.z13.web.core.windows.net/cli-extensions/stack_hci_vm-1.5.0-py3-none-any.whl",
"hash": "sha256-T1ulOOgw3O8ZUUfIunHHObK9SUy7moq1HoMcQLwfMyk=", "hash": "sha256-otixJPDbQp0+eugYFcVEzgAjGrFkDCHdqRUwT3WQ+Pg=",
"description": "Microsoft Azure Command-Line Tools Stack-HCi-VM Extension" "description": "Microsoft Azure Command-Line Tools Stack-HCi-VM Extension"
}, },
"standbypool": { "standbypool": {

View file

@ -10,13 +10,13 @@
}: }:
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "btrfs-list"; pname = "btrfs-list";
version = "2.3"; version = "2.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "speed47"; owner = "speed47";
repo = "btrfs-list"; repo = "btrfs-list";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-cWzDRop0cyrjVIJzuZxTqELgec66GiPAUJY1xIBr3OY="; hash = "sha256-K6/xFR4Qmr6ynH5rZfOTN8nkl99iqcJPmKPwtp9FYyc=";
}; };
buildInputs = [ perl ]; buildInputs = [ perl ];

View file

@ -1,33 +1,50 @@
{ lib, stdenv, fetchurl, zlib, bzip2, openssl, fetchpatch }: {
bzip2,
fetchFromGitHub,
lib,
openssl,
stdenv,
unstableGitUpdater,
zlib,
}:
stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: {
pname = "dmg2img"; pname = "dmg2img";
version = "1.6.7"; version = "1.6.7-unstable-2020-12-27";
src = fetchurl { src = fetchFromGitHub {
url = "http://vu1tur.eu.org/tools/dmg2img-${version}.tar.gz"; owner = "Lekensteyn";
sha256 = "066hqhg7k90xcw5aq86pgr4l7apzvnb4559vj5s010avbk8adbh2"; repo = "dmg2img";
rev = "a3e413489ccdd05431401357bf21690536425012";
hash = "sha256-DewU5jz2lRjIRiT0ebjPRArsoye33xlEGfhzd4xnT4A=";
}; };
buildInputs = [ zlib bzip2 openssl ]; buildInputs = [
bzip2
patches = [ openssl
(fetchpatch { zlib
url = "https://raw.githubusercontent.com/Homebrew/formula-patches/85fa66a9/dmg2img/openssl-1.1.diff";
sha256 = "076sz69hf3ryylplg025vl8sj991cb81g3yazsmrf8anrd7ffmxx";
})
]; ];
patchFlags = [ "-p0" ]; preBuild = ''
sed -i "s/1.6.5/${finalAttrs.version}/" dmg2img.c
installPhase = ''
install -D dmg2img $out/bin/dmg2img
install -D vfdecrypt $out/bin/vfdecrypt
''; '';
installPhase = ''
runHook preInstall
install -Dm755 dmg2img vfdecrypt -t $out/bin
runHook postInstall
'';
passthru.updateScript = unstableGitUpdater { };
meta = { meta = {
description = "Tool which allows converting Apple compressed dmg archives to standard (hfsplus) image disk files";
homepage = "https://github.com/Lekensteyn/dmg2img";
license = lib.licenses.gpl2Only;
platforms = lib.platforms.unix; platforms = lib.platforms.unix;
description = "Apple's compressed dmg to standard (hfsplus) image disk file convert tool"; maintainers = with lib.maintainers; [ KSJ2000 ];
license = lib.licenses.gpl3; mainProgram = "dmg2img";
}; };
} })

View file

@ -0,0 +1,44 @@
{ lib, fetchurl }:
let
mkDprintPlugin =
{
url,
hash,
pname,
version,
description,
initConfig,
updateUrl,
license ? lib.licenses.mit,
maintainers ? [ lib.maintainers.phanirithvij ],
}:
fetchurl {
inherit hash url;
name = "${pname}-${version}.wasm";
meta = {
inherit
description
license
maintainers
;
};
passthru = {
updateScript = ./update-plugins.py;
inherit initConfig updateUrl;
};
};
inherit (lib)
filterAttrs
mapAttrs'
nameValuePair
removeSuffix
;
files = filterAttrs (
name: type: type == "regular" && name != "default.nix" && lib.hasSuffix ".nix" name
) (builtins.readDir ./.);
plugins = mapAttrs' (
name: _:
nameValuePair (removeSuffix ".nix" name) (import (./. + "/${name}") { inherit mkDprintPlugin; })
) files;
in
plugins // { inherit mkDprintPlugin; }

View file

@ -0,0 +1,21 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "Biome (JS/TS) wrapper plugin.";
hash = "sha256-+zY+myazFAUxeNuWFigkvF4zpKBs+jzVYQT09jRWFKI=";
initConfig = {
configExcludes = [ "**/node_modules" ];
configKey = "biome";
fileExtensions = [
"ts"
"tsx"
"js"
"jsx"
"cjs"
"mjs"
];
};
pname = "dprint-plugin-biome";
updateUrl = "https://plugins.dprint.dev/dprint/biome/latest.json";
url = "https://plugins.dprint.dev/biome-0.7.1.wasm";
version = "0.7.1";
}

View file

@ -0,0 +1,14 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "Dockerfile code formatter.";
hash = "sha256-gsfMLa4zw8AblOS459ZS9OZrkGCQi5gBN+a3hvOsspk=";
initConfig = {
configExcludes = [ ];
configKey = "dockerfile";
fileExtensions = [ "dockerfile" ];
};
pname = "dprint-plugin-dockerfile";
updateUrl = "https://plugins.dprint.dev/dprint/dockerfile/latest.json";
url = "https://plugins.dprint.dev/dockerfile-0.3.2.wasm";
version = "0.3.2";
}

View file

@ -0,0 +1,14 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "JSON/JSONC code formatter.";
hash = "sha256-Sw+HkUb4K2wrLuQRZibr8gOCR3Rz36IeId4Vd4LijmY=";
initConfig = {
configExcludes = [ "**/*-lock.json" ];
configKey = "json";
fileExtensions = [ "json" ];
};
pname = "dprint-plugin-json";
updateUrl = "https://plugins.dprint.dev/dprint/json/latest.json";
url = "https://plugins.dprint.dev/json-0.19.4.wasm";
version = "0.19.4";
}

View file

@ -0,0 +1,14 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "Jupyter notebook code block formatter.";
hash = "sha256-877CEZbMlj9cHkFtl16XCnan37SeEGUL3BHaUKUv8S4=";
initConfig = {
configExcludes = [ ];
configKey = "jupyter";
fileExtensions = [ "ipynb" ];
};
pname = "dprint-plugin-jupyter";
updateUrl = "https://plugins.dprint.dev/dprint/jupyter/latest.json";
url = "https://plugins.dprint.dev/jupyter-0.1.5.wasm";
version = "0.1.5";
}

View file

@ -0,0 +1,14 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "Markdown code formatter.";
hash = "sha256-PIEN9UnYC8doJpdzS7M6QEHQNQtj7WwXAgvewPsTjqs=";
initConfig = {
configExcludes = [ ];
configKey = "markdown";
fileExtensions = [ "md" ];
};
pname = "dprint-plugin-markdown";
updateUrl = "https://plugins.dprint.dev/dprint/markdown/latest.json";
url = "https://plugins.dprint.dev/markdown-0.17.8.wasm";
version = "0.17.8";
}

View file

@ -0,0 +1,17 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "Ruff (Python) wrapper plugin.";
hash = "sha256-15InHQgF9c0Js4yUJxmZ1oNj1O16FBU12u/GOoaSAJ8=";
initConfig = {
configExcludes = [ ];
configKey = "ruff";
fileExtensions = [
"py"
"pyi"
];
};
pname = "dprint-plugin-ruff";
updateUrl = "https://plugins.dprint.dev/dprint/ruff/latest.json";
url = "https://plugins.dprint.dev/ruff-0.3.9.wasm";
version = "0.3.9";
}

View file

@ -0,0 +1,14 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "TOML code formatter.";
hash = "sha256-aDfo/sKfOeNpyfd/4N1LgL1bObTTnviYrA8T7M/1KNs=";
initConfig = {
configExcludes = [ ];
configKey = "toml";
fileExtensions = [ "toml" ];
};
pname = "dprint-plugin-toml";
updateUrl = "https://plugins.dprint.dev/dprint/toml/latest.json";
url = "https://plugins.dprint.dev/toml-0.6.3.wasm";
version = "0.6.3";
}

View file

@ -0,0 +1,21 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "TypeScript/JavaScript code formatter.";
hash = "sha256-urgKQOjgkoDJCH/K7DWLJCkD0iH0Ok+rvrNDI0i4uS0=";
initConfig = {
configExcludes = [ "**/node_modules" ];
configKey = "typescript";
fileExtensions = [
"ts"
"tsx"
"js"
"jsx"
"cjs"
"mjs"
];
};
pname = "dprint-plugin-typescript";
updateUrl = "https://plugins.dprint.dev/dprint/typescript/latest.json";
url = "https://plugins.dprint.dev/typescript-0.93.3.wasm";
version = "0.93.3";
}

View file

@ -0,0 +1,19 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "CSS, SCSS, Sass and Less formatter.";
hash = "sha256-zt7F1tgPhPAn+gtps6+JB5RtvjIZw2n/G85Bv6kazgU=";
initConfig = {
configExcludes = [ "**/node_modules" ];
configKey = "malva";
fileExtensions = [
"css"
"scss"
"sass"
"less"
];
};
pname = "g-plane-malva";
updateUrl = "https://plugins.dprint.dev/g-plane/malva/latest.json";
url = "https://plugins.dprint.dev/g-plane/malva-v0.11.1.wasm";
version = "0.11.1";
}

View file

@ -0,0 +1,24 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "HTML, Vue, Svelte, Astro, Angular, Jinja, Twig, Nunjucks, and Vento formatter.";
hash = "sha256-G8UnJbc+oZ60V3oi8W2SS6H06zEYfY3wpmSUp+1GF8k=";
initConfig = {
configExcludes = [ ];
configKey = "markup";
fileExtensions = [
"html"
"vue"
"svelte"
"astro"
"jinja"
"jinja2"
"twig"
"njk"
"vto"
];
};
pname = "g-plane-markup_fmt";
updateUrl = "https://plugins.dprint.dev/g-plane/markup_fmt/latest.json";
url = "https://plugins.dprint.dev/g-plane/markup_fmt-v0.18.0.wasm";
version = "0.18.0";
}

View file

@ -0,0 +1,17 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "GraphQL formatter.";
hash = "sha256-PlQwpR0tMsghMrOX7is+anN57t9xa9weNtoWpc0E9ec=";
initConfig = {
configExcludes = [ ];
configKey = "graphql";
fileExtensions = [
"graphql"
"gql"
];
};
pname = "g-plane-pretty_graphql";
updateUrl = "https://plugins.dprint.dev/g-plane/pretty_graphql/latest.json";
url = "https://plugins.dprint.dev/g-plane/pretty_graphql-v0.2.1.wasm";
version = "0.2.1";
}

View file

@ -0,0 +1,17 @@
{ mkDprintPlugin }:
mkDprintPlugin {
description = "YAML formatter.";
hash = "sha256-6ua021G7ZW7Ciwy/OHXTA1Joj9PGEx3SZGtvaA//gzo=";
initConfig = {
configExcludes = [ ];
configKey = "yaml";
fileExtensions = [
"yaml"
"yml"
];
};
pname = "g-plane-pretty_yaml";
updateUrl = "https://plugins.dprint.dev/g-plane/pretty_yaml/latest.json";
url = "https://plugins.dprint.dev/g-plane/pretty_yaml-v0.5.0.wasm";
version = "0.5.0";
}

View file

@ -0,0 +1,156 @@
#!/usr/bin/env nix-shell
#!nix-shell -i python -p nix nixfmt-rfc-style 'python3.withPackages (pp: [ pp.requests ])'
import json
import os
from pathlib import Path
import sys
import subprocess
import requests
USAGE = """Usage: {0} [ | plugin-name | plugin-file-path]
eg.
{0}
{0} dprint-plugin-json
{0} /path/to/dprint-plugin-json.nix"""
FILE_PATH = Path(os.path.realpath(__file__))
SCRIPT_DIR = FILE_PATH.parent
pname = ""
if len(sys.argv) > 1:
if "-help" in "".join(sys.argv):
print(USAGE.format(FILE_PATH.name))
exit(0)
pname = sys.argv[1]
else:
pname = os.environ.get("UPDATE_NIX_PNAME", "")
# get sri hash for a url, no unpack
def nix_prefetch_url(url, name, algo="sha256"):
hash = (
subprocess.check_output(
["nix-prefetch-url", "--type", algo, "--name", name, url]
)
.decode("utf-8")
.rstrip()
)
sri = (
subprocess.check_output(
# split by space is enough for this command
"nix --extra-experimental-features nix-command "
f"hash convert --hash-algo {algo} --to sri {hash}".split(" ")
)
.decode("utf-8")
.rstrip()
)
return sri
# json object to nix string
def json_to_nix(jsondata):
# to quote strings, dumps twice does it
json_str = json.dumps(json.dumps(jsondata))
return (
subprocess.check_output(
"nix --extra-experimental-features nix-command eval "
f"--expr 'builtins.fromJSON ''{json_str}''' --impure | nixfmt",
shell=True,
)
.decode("utf-8")
.rstrip()
)
# nix string to json object
def nix_to_json(nixstr):
return json.loads(
subprocess.check_output(
f"nix --extra-experimental-features nix-command eval --json --expr '{nixstr}'",
shell=True,
)
.decode("utf-8")
.rstrip()
)
# nixfmt a file
def nixfmt(nixfile):
subprocess.run(["nixfmt", nixfile])
def get_update_url(plugin_url):
"""Get a single plugin's update url given the plugin's url"""
# remove -version.wasm at the end
url = "-".join(plugin_url.split("-")[:-1])
names = url.split("/")[3:]
# if single name then -> dprint/<name>
if len(names) == 1:
names.insert(0, "dprint")
return "https://plugins.dprint.dev/" + "/".join(names) + "/latest.json"
def write_plugin_derivation(drv_attrs):
drv = f"{{ mkDprintPlugin }}: mkDprintPlugin {json_to_nix(drv_attrs)}"
filepath = SCRIPT_DIR / f"{drv_attrs["pname"]}.nix"
with open(filepath, "w+", encoding="utf8") as f:
f.write(drv)
nixfmt(filepath)
def update_plugin_by_name(name):
"""Update a single plugin by name"""
# allow passing in filename as well as pname
if name.endswith(".nix"):
name = Path(name[:-4]).name
try:
p = (SCRIPT_DIR / f"{name}.nix").read_text().replace("\n", "")
except OSError as e:
print(f"failed to update plugin {name}: error: {e}")
exit(1)
start_idx = p.find("mkDprintPlugin {") + len("mkDprintPlugin {")
p = nix_to_json("{" + p[start_idx:].strip())
data = requests.get(p["updateUrl"]).json()
p["url"] = data["url"]
p["version"] = data["version"]
p["hash"] = nix_prefetch_url(data["url"], f"{name}-{data["version"]}.wasm")
write_plugin_derivation(p)
def update_plugins():
"""Update all the plugins"""
data = requests.get("https://plugins.dprint.dev/info.json").json()["latest"]
for e in data:
update_url = get_update_url(e["url"])
pname = e["name"]
if "/" in e["name"]:
pname = pname.replace("/", "-")
drv_attrs = {
"url": e["url"],
"hash": nix_prefetch_url(e["url"], f"{pname}-{e["version"]}.wasm"),
"updateUrl": update_url,
"pname": pname,
"version": e["version"],
"description": e["description"],
"initConfig": {
"configKey": e["configKey"],
"configExcludes": e["configExcludes"],
"fileExtensions": e["fileExtensions"],
},
}
write_plugin_derivation(drv_attrs)
if pname != "":
update_plugin_by_name(pname)
else:
update_plugins()

View file

@ -15,16 +15,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "eza"; pname = "eza";
version = "0.20.14"; version = "0.20.15";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "eza-community"; owner = "eza-community";
repo = "eza"; repo = "eza";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-5sZlpJ7xzQsjvECN4pjPndM39qonbgNy4zew6AE06D0="; hash = "sha256-r68zuMCFIccA0cRLC2RNYCWoFh7tYiGu97Kid4hh0Uw=";
}; };
cargoHash = "sha256-A8vE2Q/HEMgX6HC+nwR63Kr84gy2iZ5BzYDzaZz/h9Q="; cargoHash = "sha256-hBsb62fcIrSR2w9O5+UaMUadyUUtu2PLODRg70wG/Xc=";
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake

View file

@ -14,13 +14,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "fluent-bit"; pname = "fluent-bit";
version = "3.2.3"; version = "3.2.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "fluent"; owner = "fluent";
repo = "fluent-bit"; repo = "fluent-bit";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-5Oyw3nHlAyywF+G0UiGyi1v+jAr8eyKt/1cDT5FdJXQ="; hash = "sha256-oTCGjDmGVovsfj+4fjIKy/xpiuYc0Q44LYwYPI4dSF8=";
}; };
# optional only to avoid linux rebuild # optional only to avoid linux rebuild

View file

@ -19,6 +19,14 @@ stdenv.mkDerivation rec {
patches = patches =
[ [
./gfan-0.6.2-cddlib-prefix.patch ./gfan-0.6.2-cddlib-prefix.patch
(fetchpatch {
# removes dead code with invalid member reference in gfanlib
name = "clang-19.patch";
url = "https://github.com/Singular/Singular/commit/d3f73432d73ac0dd041af83cb35301498e9b57d9.patch";
stripLen = 2;
extraPrefix = "src/";
hash = "sha256-jPGMYx/GOFV7Tk3CqaRWeX/UHkzjeL57eZj4r40s8/g=";
})
] ]
++ lib.optionals (stdenv.cc.isClang) [ ++ lib.optionals (stdenv.cc.isClang) [
(fetchpatch { (fetchpatch {

View file

@ -56,8 +56,8 @@ stdenv.mkDerivation (finalAttrs: {
postPatch = '' postPatch = ''
sed -i '/examples/d' CMakeLists.txt sed -i '/examples/d' CMakeLists.txt
substituteInPlace libhs.pc.in \ substituteInPlace libhs.pc.in \
--replace "libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@" "libdir=@CMAKE_INSTALL_LIBDIR@" \ --replace-fail "libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@" "libdir=@CMAKE_INSTALL_LIBDIR@" \
--replace "includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@" "includedir=@CMAKE_INSTALL_INCLUDEDIR@" --replace-fail "includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@" "includedir=@CMAKE_INSTALL_INCLUDEDIR@"
''; '';
doCheck = true; doCheck = true;

View file

@ -1,37 +1,44 @@
{ lib {
, buildPackages lib,
, fetchFromGitHub buildPackages,
, buildNpmPackage fetchFromGitHub,
, fetchFromGitea buildNpmPackage,
, nix-update-script fetchFromGitea,
nix-update-script,
}: }:
let let
esbuild' = buildPackages.esbuild.override { esbuild' = buildPackages.esbuild.override {
buildGoModule = args: buildPackages.buildGoModule (args // rec { buildGoModule =
version = "0.19.11"; args:
buildPackages.buildGoModule (
args
// rec {
version = "0.21.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "evanw"; owner = "evanw";
repo = "esbuild"; repo = "esbuild";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-NUwjzOpHA0Ijuh0E69KXx8YVS5GTnKmob9HepqugbIU="; hash = "sha256-FpvXWIlt67G8w3pBKZo/mcp57LunxDmRUaCU/Ne89B8=";
}; };
vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ="; vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ=";
}); }
);
}; };
in buildNpmPackage rec { in
buildNpmPackage rec {
pname = "kaufkauflist"; pname = "kaufkauflist";
version = "4.0.0"; version = "4.0.2";
src = fetchFromGitea { src = fetchFromGitea {
domain = "codeberg.org"; domain = "codeberg.org";
owner = "annaaurora"; owner = "annaaurora";
repo = "kaufkauflist"; repo = "kaufkauflist";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-x30K2dYxawfebdq//9OmCCG48w0V04tDTXpvRW7lfJI="; hash = "sha256-tvkicYFQewQdcz3e+ETLiCK/c3eNPlxxZNzt+OpIbN0=";
}; };
npmDepsHash = "sha256-E3AXFwiRvrE2Swt7BfSfAoU5mQplSaSJ4q56pVfoEkQ="; npmDepsHash = "sha256-HDv6sW6FmKZpUjymrUjz/WG9XrKgLmM6qHMAxP6gBtU=";
ESBUILD_BINARY_PATH = lib.getExe esbuild'; ESBUILD_BINARY_PATH = lib.getExe esbuild';

View file

@ -0,0 +1,47 @@
{
buildGoModule,
dbmate,
fetchFromGitHub,
lib,
}:
let
finalAttrs = {
pname = "ncps";
version = "v0.1.1";
src = fetchFromGitHub {
owner = "kalbasit";
repo = "ncps";
rev = finalAttrs.version;
hash = "sha256-Vr/thppCABdZDl1LEc7l7c7Ih55U/EFwJInWSUWoLJA";
};
ldflags = [
"-X github.com/kalbasit/ncps/cmd.Version=${finalAttrs.version}"
];
subPackages = [ "." ];
vendorHash = "sha256-xPrWofNyDFrUPQ42AYDs2x2gGoQ2w3tRrMIsu3SVyHA=";
doCheck = true;
nativeBuildInputs = [
dbmate # used for testing
];
postInstall = ''
mkdir -p $out/share/ncps
cp -r db $out/share/ncps/db
'';
meta = {
description = "Nix binary cache proxy service";
homepage = "https://github.com/kalbasit/ncps";
license = lib.licenses.mit;
mainProgram = "ncps";
maintainers = [ lib.maintainers.kalbasit ];
};
};
in
buildGoModule finalAttrs

View file

@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication { python3.pkgs.buildPythonApplication {
pname = "renode-dts2repl"; pname = "renode-dts2repl";
version = "0-unstable-2024-12-20"; version = "0-unstable-2024-12-28";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "antmicro"; owner = "antmicro";
repo = "dts2repl"; repo = "dts2repl";
rev = "323cc41b6864e53cb1b99bf909c779b739a8fccb"; rev = "f655a1380364fdab9fa0f72909c19ab8ff16dbb6";
hash = "sha256-CYgQ5CMVkHqOEPPaG74GVNhm8pa6ZpAtt54JrrDn+2M="; hash = "sha256-mErr95/Ew9HwKDJhQy7V86H1MJb5Y7IFzg7Id8Llqy8=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -0,0 +1,121 @@
{
lib,
stdenv,
testers,
versionCheckHook,
nix-update-script,
rustPlatform,
fetchFromGitHub,
protobuf,
restate,
pkg-config,
openssl,
perl,
cmake,
cacert,
rdkafka,
}:
rustPlatform.buildRustPackage rec {
pname = "restate";
version = "1.1.6";
src = fetchFromGitHub {
owner = "restatedev";
repo = "restate";
tag = "v${version}";
hash = "sha256-uDNPIL9Ox5rwWVzqWe74elHPGy6lSvWR1S7HsY6ATjc=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-z7VAKU4bi6pX2z4jCKWDfQt8FFLN7ugnW2LOy6IHz/w=";
env = {
PROTOC = lib.getExe protobuf;
PROTOC_INCLUDE = "${protobuf}/include";
VERGEN_GIT_COMMIT_DATE = "2024-12-23";
VERGEN_GIT_SHA = "v${version}";
# rustflags as defined in the upstream's .cargo/config.toml
RUSTFLAGS =
let
target = stdenv.hostPlatform.config;
targetFlags = rec {
build = [
"-C force-unwind-tables"
"-C debug-assertions"
"--cfg uuid_unstable"
"--cfg tokio_unstable"
];
"aarch64-unknown-linux-gnu" = build ++ [
# Enable frame pointers to support Parca (https://github.com/parca-dev/parca-agent/pull/1805)
"-C force-frame-pointers=yes"
];
"x86_64-unknown-linux-musl" = build ++ [
"-C link-self-contained=yes"
];
"aarch64-unknown-linux-musl" = build ++ [
# Enable frame pointers to support Parca (https://github.com/parca-dev/parca-agent/pull/1805)
"-C force-frame-pointers=yes"
"-C link-self-contained=yes"
];
};
in
lib.concatStringsSep " " (lib.attrsets.attrByPath [ target ] targetFlags.build targetFlags);
# Have to be set to dynamically link librdkafka
CARGO_FEATURE_DYNAMIC_LINKING = 1;
};
nativeBuildInputs = [
pkg-config
openssl
perl
rustPlatform.bindgenHook
cmake
];
buildInputs = [ rdkafka ];
nativeCheckInputs = [
cacert
];
useNextest = true;
# Feature resolution seems to be failing due to this https://github.com/rust-lang/cargo/issues/7754
auditable = false;
__darwinAllowLocalNetworking = true;
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = [ "--version" ];
doInstallCheck = true;
passthru = {
tests.restateCliVersion = testers.testVersion {
package = restate;
command = "restate --version";
};
tests.restateServerVersion = testers.testVersion {
package = restate;
command = "restate-server --version";
};
tests.restateCtlVersion = testers.testVersion {
package = restate;
command = "restatectl --version";
};
updateScript = nix-update-script { };
};
meta = {
description = "Restate is a platform for developing distributed fault-tolerant applications.";
homepage = "https://restate.dev";
changelog = "https://github.com/restatedev/restate/releases/tag/v${version}";
mainProgram = "restate";
license = lib.licenses.bsl11;
maintainers = with lib.maintainers; [ myypo ];
};
}

View file

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "rip2"; pname = "rip2";
version = "0.9.0"; version = "0.9.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "MilesCranmer"; owner = "MilesCranmer";
repo = "rip2"; repo = "rip2";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-9leLWfPilDQHzQRzTUjAFt9olTPEL4GcQgYFWZu3dug="; hash = "sha256-OZsiAh0sQygLdVdA1QxCf7FTvP5CrlDNeOQLv2G2X3U=";
}; };
cargoHash = "sha256-l6rbeiyIsr1csBcp+428TpQYSs9RvfJutGoL/wtSGR8="; cargoHash = "sha256-9wbHXgjOWyQS8JOMQQTVetMacdjWD9C4NBWxUpcjbdg=";
nativeBuildInputs = [ installShellFiles ]; nativeBuildInputs = [ installShellFiles ];

View file

@ -14,7 +14,7 @@
sqlite, sqlite,
ragel, ragel,
icu, icu,
hyperscan, vectorscan,
jemalloc, jemalloc,
blas, blas,
lapack, lapack,
@ -24,13 +24,10 @@
zstd, zstd,
libarchive, libarchive,
withBlas ? true, withBlas ? true,
withHyperscan ? stdenv.hostPlatform.isx86_64,
withLuaJIT ? stdenv.hostPlatform.isx86_64, withLuaJIT ? stdenv.hostPlatform.isx86_64,
nixosTests, nixosTests,
}: }:
assert withHyperscan -> stdenv.hostPlatform.isx86_64;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rspamd"; pname = "rspamd";
version = "3.11.0"; version = "3.11.0";
@ -48,7 +45,9 @@ stdenv.mkDerivation rec {
cmake cmake
pkg-config pkg-config
perl perl
ragel
]; ];
buildInputs = buildInputs =
[ [
doctest doctest
@ -64,8 +63,8 @@ stdenv.mkDerivation rec {
xxHash xxHash
zstd zstd
libarchive libarchive
vectorscan
] ]
++ lib.optional withHyperscan hyperscan
++ lib.optionals withBlas [ ++ lib.optionals withBlas [
blas blas
lapack lapack
@ -73,8 +72,7 @@ stdenv.mkDerivation rec {
++ lib.optional withLuaJIT luajit ++ lib.optional withLuaJIT luajit
++ lib.optional (!withLuaJIT) lua; ++ lib.optional (!withLuaJIT) lua;
cmakeFlags = cmakeFlags = [
[
# pcre2 jit seems to cause crashes: https://github.com/NixOS/nixpkgs/pull/181908 # pcre2 jit seems to cause crashes: https://github.com/NixOS/nixpkgs/pull/181908
"-DENABLE_PCRE2=OFF" "-DENABLE_PCRE2=OFF"
"-DDEBIAN_BUILD=ON" "-DDEBIAN_BUILD=ON"
@ -87,9 +85,8 @@ stdenv.mkDerivation rec {
"-DSYSTEM_FMT=ON" "-DSYSTEM_FMT=ON"
"-DSYSTEM_XXHASH=ON" "-DSYSTEM_XXHASH=ON"
"-DSYSTEM_ZSTD=ON" "-DSYSTEM_ZSTD=ON"
] "-DENABLE_HYPERSCAN=ON"
++ lib.optional withHyperscan "-DENABLE_HYPERSCAN=ON" ] ++ lib.optional (!withLuaJIT) "-DENABLE_LUAJIT=OFF";
++ lib.optional (!withLuaJIT) "-DENABLE_LUAJIT=OFF";
passthru.tests.rspamd = nixosTests.rspamd; passthru.tests.rspamd = nixosTests.rspamd;

View file

@ -1,6 +1,7 @@
{ {
stdenv, stdenv,
fetchFromGitHub, fetchFromGitHub,
fetchpatch,
gmp, gmp,
bison, bison,
perl, perl,
@ -48,6 +49,15 @@ stdenv.mkDerivation rec {
forceFetchGit = true; forceFetchGit = true;
}; };
patches = [
(fetchpatch {
# removes dead code with invalid member reference in gfanlib
name = "clang-19.patch";
url = "https://github.com/Singular/Singular/commit/d3f73432d73ac0dd041af83cb35301498e9b57d9.patch";
hash = "sha256-1KOk+yrTvHWY4aSK9QcByHIwKwe71QIYTMx8zo7XNos=";
})
];
configureFlags = configureFlags =
[ [
"--enable-gfanlib" "--enable-gfanlib"
@ -173,6 +183,7 @@ stdenv.mkDerivation rec {
''; '';
enableParallelBuilding = true; enableParallelBuilding = true;
__darwinAllowLocalNetworking = true;
meta = with lib; { meta = with lib; {
description = "CAS for polynomial computations"; description = "CAS for polynomial computations";

View file

@ -2,10 +2,10 @@
lib, lib,
stdenv, stdenv,
fetchFromGitHub, fetchFromGitHub,
fetchpatch,
pkg-config, pkg-config,
SDL2, SDL2,
wxGTK32, wxGTK32,
darwin,
}: }:
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
@ -19,17 +19,31 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-cBrTvFoz6WZIsh5qPPiWxQ338Z0OfcIefiI8CZF6nn8="; hash = "sha256-cBrTvFoz6WZIsh5qPPiWxQ338Z0OfcIefiI8CZF6nn8=";
}; };
patches = [
(fetchpatch {
url = "https://github.com/freebsd/freebsd-ports/raw/31ec0266e31910c16b0f69e16a2a693aae20abdf/math/sound-of-sorting/files/patch-src_SortAlgo.cpp";
extraPrefix = "";
hash = "sha256-mOo3GsEZ8r8p9ROoel2TO9Z4yF5SmCN0/fUn/2qUKAo=";
})
(fetchpatch {
url = "https://github.com/freebsd/freebsd-ports/raw/31ec0266e31910c16b0f69e16a2a693aae20abdf/math/sound-of-sorting/files/patch-src_SortAlgo.h";
extraPrefix = "";
hash = "sha256-NNSPs0gT6ndeMQWHLHAwLR5nMQGP880Qd6kulDYJYF0=";
})
(fetchpatch {
url = "https://github.com/freebsd/freebsd-ports/raw/31ec0266e31910c16b0f69e16a2a693aae20abdf/math/sound-of-sorting/files/patch-src_SortArray.cpp";
extraPrefix = "";
hash = "sha256-WxqwcZ2L9HPG4QNf1Xi624aKTM3cRBWN+W00htcIJ5k=";
})
];
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config
]; ];
buildInputs = buildInputs = [
[
wxGTK32 wxGTK32
SDL2 SDL2
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
darwin.apple_sdk.frameworks.Cocoa
]; ];
meta = { meta = {

View file

@ -23,12 +23,12 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "spacevim"; pname = "spacevim";
version = "2.3.0"; version = "2.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "SpaceVim"; owner = "SpaceVim";
repo = "SpaceVim"; repo = "SpaceVim";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-MHsAA0x/rfwRupe8aW1JVKGiYkySAX0AhOkBuScpn7I="; hash = "sha256-qiNadhQJjU9RY14X8+pd4Ul+NLoNqbxuh3Kenw1dHDc=";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View file

@ -8,13 +8,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "spectra"; pname = "spectra";
version = "1.0.1"; version = "1.1.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "yixuan"; owner = "yixuan";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-HaJmMo4jYmO/j53/nHrL3bvdQMAvp4Nuhhe8Yc7pL88="; sha256 = "sha256-ut6nEOpzIoFy+IUWQy9x2pJ4+sA0d/Dt8WaNq5AFCFg=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -28,7 +28,7 @@ let
inherit src; inherit src;
sourceRoot = "source/ms-tools"; sourceRoot = "source/ms-tools";
vendorHash = "sha256-imHpsos7RDpATSZFWRxug67F7VgjRTT1SkLt7cWk6tU="; vendorHash = null; # dependencies are vendored in the release tarball
buildInputs = [ buildInputs = [
hidapi hidapi

View file

@ -1,15 +1,16 @@
{ lib {
, stdenv lib,
, fetchFromGitHub stdenv,
, cmake fetchFromGitHub,
, pkg-config cmake,
, ragel pkg-config,
, util-linux ragel,
, python3 util-linux,
, boost python3,
, sqlite boost,
, pcre sqlite,
, enableShared ? !stdenv.hostPlatform.isStatic pcre,
enableShared ? !stdenv.hostPlatform.isStatic,
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -23,6 +24,16 @@ stdenv.mkDerivation rec {
hash = "sha256-wz2oIhau/vjnri3LOyPZSCFAWg694FTLVt7+SZYEsL4="; hash = "sha256-wz2oIhau/vjnri3LOyPZSCFAWg694FTLVt7+SZYEsL4=";
}; };
postPatch = ''
sed -i '/examples/d' CMakeLists.txt
substituteInPlace libhs.pc.in \
--replace-fail "libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@" "libdir=@CMAKE_INSTALL_LIBDIR@" \
--replace-fail "includedir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@" "includedir=@CMAKE_INSTALL_INCLUDEDIR@"
substituteInPlace cmake/build_wrapper.sh \
--replace-fail 'nm' '${stdenv.cc.targetPrefix}nm' \
--replace-fail 'objcopy' '${stdenv.cc.targetPrefix}objcopy'
'';
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config pkg-config
@ -45,13 +56,30 @@ stdenv.mkDerivation rec {
# #
# For generic builds (e.g. x86_64) this can mean using an implementation not optimized for the # For generic builds (e.g. x86_64) this can mean using an implementation not optimized for the
# potentially available more modern hardware extensions (e.g. x86_64 with AVX512). # potentially available more modern hardware extensions (e.g. x86_64 with AVX512).
cmakeFlags = [ (if enableShared then "-DBUILD_SHARED_LIBS=ON" else "BUILD_STATIC_LIBS=ON") ] cmakeFlags =
++ [ (if enableShared then "-DBUILD_SHARED_LIBS=ON" else "BUILD_STATIC_LIBS=ON") ]
(if lib.elem stdenv.hostPlatform.system [ "x86_64-linux" "i686-linux" ] then ++ (
[ "-DBUILD_AVX2=ON" "-DBUILD_AVX512=ON" "-DBUILD_AVX512VBMI=ON" "-DFAT_RUNTIME=ON" ] if
lib.elem stdenv.hostPlatform.system [
"x86_64-linux"
"i686-linux"
]
then
[
"-DBUILD_AVX2=ON"
"-DBUILD_AVX512=ON"
"-DBUILD_AVX512VBMI=ON"
"-DFAT_RUNTIME=ON"
]
else else
(if (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) then (
[ "-DBUILD_SVE=ON" "-DBUILD_SVE2=ON" "-DBUILD_SVE2_BITPERM=ON" "-DFAT_RUNTIME=ON" ] if (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isAarch64) then
[
"-DBUILD_SVE=ON"
"-DBUILD_SVE2=ON"
"-DBUILD_SVE2_BITPERM=ON"
"-DFAT_RUNTIME=ON"
]
else else
[ "-DFAT_RUNTIME=OFF" ] [ "-DFAT_RUNTIME=OFF" ]
++ lib.optional stdenv.hostPlatform.avx2Support "-DBUILD_AVX2=ON" ++ lib.optional stdenv.hostPlatform.avx2Support "-DBUILD_AVX2=ON"
@ -85,7 +113,14 @@ stdenv.mkDerivation rec {
homepage = "https://www.vectorcamp.gr/vectorscan/"; homepage = "https://www.vectorcamp.gr/vectorscan/";
changelog = "https://github.com/VectorCamp/vectorscan/blob/${src.rev}/CHANGELOG-vectorscan.md"; changelog = "https://github.com/VectorCamp/vectorscan/blob/${src.rev}/CHANGELOG-vectorscan.md";
platforms = platforms.unix; platforms = platforms.unix;
license = with licenses; [ bsd3 /* and */ bsd2 /* and */ licenses.boost ]; license = with licenses; [
maintainers = with maintainers; [ tnias vlaci ]; bsd3 # and
bsd2 # and
licenses.boost
];
maintainers = with maintainers; [
tnias
vlaci
];
}; };
} }

View file

@ -60,7 +60,7 @@
libxml2, libxml2,
lz4, lz4,
netcdf, netcdf,
openexr, openexr_3,
openjpeg, openjpeg,
openssl, openssl,
pcre2, pcre2,
@ -167,7 +167,7 @@ stdenv.mkDerivation (finalAttrs: {
nonDarwinDeps = lib.optionals (!stdenv.hostPlatform.isDarwin) ( nonDarwinDeps = lib.optionals (!stdenv.hostPlatform.isDarwin) (
[ [
# tests for formats enabled by these packages fail on macos # tests for formats enabled by these packages fail on macos
openexr openexr_3
xercesc xercesc
] ]
++ arrowDeps ++ arrowDeps

View file

@ -32,6 +32,7 @@
zlib, zlib,
Cocoa, Cocoa,
enablePython ? false, enablePython ? false,
enableRtk ? true,
}: }:
let let
@ -116,6 +117,8 @@ stdenv.mkDerivation {
"-DModule_MGHIO=ON" "-DModule_MGHIO=ON"
"-DModule_AdaptiveDenoising=ON" "-DModule_AdaptiveDenoising=ON"
"-DModule_GenericLabelInterpolator=ON" "-DModule_GenericLabelInterpolator=ON"
]
++ lib.optionals enableRtk [
"-DModule_RTK=ON" "-DModule_RTK=ON"
] ]
++ lib.optionals enablePython [ ++ lib.optionals enablePython [
@ -153,7 +156,8 @@ stdenv.mkDerivation {
# These deps were propagated from VTK 9 in https://github.com/NixOS/nixpkgs/pull/206935, # These deps were propagated from VTK 9 in https://github.com/NixOS/nixpkgs/pull/206935,
# so we simply propagate them again from ITK. # so we simply propagate them again from ITK.
# This admittedly is a hack and seems like an issue with VTK 9's CMake configuration. # This admittedly is a hack and seems like an issue with VTK 9's CMake configuration.
propagatedBuildInputs = [ propagatedBuildInputs =
[
# The dependencies we've un-vendored from ITK, such as GDCM, must be propagated, # The dependencies we've un-vendored from ITK, such as GDCM, must be propagated,
# otherwise other software built against ITK fails to configure since ITK headers # otherwise other software built against ITK fails to configure since ITK headers
# refer to these previously vendored libraries: # refer to these previously vendored libraries:
@ -166,7 +170,9 @@ stdenv.mkDerivation {
libpng libpng
libtiff libtiff
zlib zlib
] ++ lib.optionals withVtk vtk.propagatedBuildInputs ++ lib.optionals enablePython [ numpy ]; ]
++ lib.optionals withVtk vtk.propagatedBuildInputs
++ lib.optionals enablePython [ numpy ];
postInstall = lib.optionalString enablePython '' postInstall = lib.optionalString enablePython ''
substitute \ substitute \

View file

@ -13,6 +13,10 @@ let
inherit sha256; inherit sha256;
}; };
patches = [
./dont-set-cmake-skip-rpath-${version}.patch
];
nativeBuildInputs = [ cmake doxygen ]; nativeBuildInputs = [ cmake doxygen ];
buildInputs = [ zlib ] buildInputs = [ zlib ]

View file

@ -0,0 +1,16 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b4ef61e..7b2f26c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -29,11 +29,6 @@ if(APPLE)
set(PHYSFS_M_SRCS src/physfs_platform_apple.m)
endif()
-if(CMAKE_COMPILER_IS_GNUCC)
- # Don't use -rpath.
- set(CMAKE_SKIP_RPATH ON CACHE BOOL "Skip RPATH" FORCE)
-endif()
-
if(CMAKE_C_COMPILER_ID STREQUAL "SunPro")
add_definitions(-erroff=E_EMPTY_TRANSLATION_UNIT)
add_definitions(-xldscope=hidden)

View file

@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b3291cc..11e7ad1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -32,8 +32,6 @@ endif()
if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_C_COMPILER_ID MATCHES "Clang")
add_compile_options(-Wall)
- # Don't use -rpath.
- set(CMAKE_SKIP_RPATH ON CACHE BOOL "Skip RPATH" FORCE)
endif()
if(CMAKE_C_COMPILER_ID STREQUAL "SunPro")

View file

@ -23,14 +23,7 @@
withWebKit ? stdenv.hostPlatform.isDarwin, withWebKit ? stdenv.hostPlatform.isDarwin,
webkitgtk_4_0, webkitgtk_4_0,
setfile, setfile,
AGL, libpng,
Carbon,
Cocoa,
Kernel,
QTKit,
AVFoundation,
AVKit,
WebKit,
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -68,20 +61,11 @@ stdenv.mkDerivation rec {
++ lib.optional withCurl curl ++ lib.optional withCurl curl
++ lib.optional withMesa libGLU ++ lib.optional withMesa libGLU
++ lib.optional (withWebKit && !stdenv.hostPlatform.isDarwin) webkitgtk_4_0 ++ lib.optional (withWebKit && !stdenv.hostPlatform.isDarwin) webkitgtk_4_0
++ lib.optional (withWebKit && stdenv.hostPlatform.isDarwin) WebKit
++ lib.optionals stdenv.hostPlatform.isDarwin [ ++ lib.optionals stdenv.hostPlatform.isDarwin [
setfile setfile
Carbon libpng
Cocoa
Kernel
QTKit
AVFoundation
AVKit
WebKit
]; ];
propagatedBuildInputs = lib.optional stdenv.hostPlatform.isDarwin AGL;
configureFlags = configureFlags =
[ [
"--disable-precomp-headers" "--disable-precomp-headers"

View file

@ -25,14 +25,6 @@
, withWebKit ? true , withWebKit ? true
, webkitgtk_4_0 , webkitgtk_4_0
, setfile , setfile
, AGL
, Carbon
, Cocoa
, Kernel
, QTKit
, AVFoundation
, AVKit
, WebKit
}: }:
let let
catch = fetchFromGitHub { catch = fetchFromGitHub {
@ -81,21 +73,11 @@ stdenv.mkDerivation rec {
] ]
++ lib.optional withMesa libGLU ++ lib.optional withMesa libGLU
++ lib.optional (withWebKit && stdenv.hostPlatform.isLinux) webkitgtk_4_0 ++ lib.optional (withWebKit && stdenv.hostPlatform.isLinux) webkitgtk_4_0
++ lib.optional (withWebKit && stdenv.hostPlatform.isDarwin) WebKit
++ lib.optionals stdenv.hostPlatform.isDarwin [ ++ lib.optionals stdenv.hostPlatform.isDarwin [
expat expat
setfile setfile
Carbon
Cocoa
Kernel
QTKit
AVFoundation
AVKit
WebKit
]; ];
propagatedBuildInputs = lib.optional stdenv.hostPlatform.isDarwin AGL;
configureFlags = [ configureFlags = [
"--disable-precomp-headers" "--disable-precomp-headers"
# This is the default option, but be explicit # This is the default option, but be explicit

View file

@ -58,6 +58,7 @@ buildPythonPackage rec {
funcparserlib funcparserlib
pillow pillow
reportlab reportlab
setuptools
webcolors webcolors
]; ];

View file

@ -1,12 +0,0 @@
diff --git a/pyproject.toml b/pyproject.toml
index 2c93a39..6c800e2 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -24,3 +24,7 @@ isort = "^4.3"
[tool.black]
line-length = 120
+
+[build-system]
+requires = ["poetry_core>=1.0.0"]
+build-backend = "poetry.core.masonry.api"

View file

@ -1,47 +1,52 @@
{ {
lib, lib,
buildPythonPackage, buildPythonPackage,
pythonOlder,
fetchFromGitHub, fetchFromGitHub,
fetchpatch,
graphviz,
imagemagick,
inkscape,
jinja2, jinja2,
poetry-core, poetry-core,
round,
graphviz,
inkscape,
imagemagick,
pytestCheckHook, pytestCheckHook,
typed-ast, pythonOlder,
round,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "diagrams"; pname = "diagrams";
version = "0.23.4"; version = "0.24.2";
format = "pyproject"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mingrammer"; owner = "mingrammer";
repo = pname; repo = "diagrams";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-2jRWN2glGEr51fzny8nkqa5c2EdJG5aZPG2eTD7AISY="; hash = "sha256-xdc8qHvLKy5QV/1c87o7H/VhitUhpH/+VgqBHn2a8lg=";
}; };
postPatch = '' patches = [
substituteInPlace pyproject.toml \ # Add build-system, https://github.com/mingrammer/diagrams/pull/1089
--replace 'graphviz = ">=0.13.2,<0.20.0"' 'graphviz = "*"' (fetchpatch {
''; name = "add-build-system.patch";
url = "https://github.com/mingrammer/diagrams/commit/59b84698b142f5a0998ee9e395df717a1b77e9b2.patch";
hash = "sha256-/zV5X4qgHJs+KO9gHyu6LqQ3hB8Zx+BzOFo7K1vQK78=";
})
./remove-black-requirement.patch
];
pythonRemoveDeps = [ "pre-commit" ];
pythonRelaxDeps = [ "graphviz" ];
preConfigure = '' preConfigure = ''
patchShebangs autogen.sh patchShebangs autogen.sh
./autogen.sh ./autogen.sh
''; '';
patches = [ build-system = [ poetry-core ];
# The build-system section is missing
./build_poetry.patch
./remove-black-requirement.patch
];
# Despite living in 'tool.poetry.dependencies', # Despite living in 'tool.poetry.dependencies',
# these are only used at build time to process the image resource files # these are only used at build time to process the image resource files
@ -49,14 +54,10 @@ buildPythonPackage rec {
inkscape inkscape
imagemagick imagemagick
jinja2 jinja2
poetry-core
round round
]; ];
propagatedBuildInputs = [ dependencies = [ graphviz ];
graphviz
typed-ast
];
nativeCheckInputs = [ pytestCheckHook ]; nativeCheckInputs = [ pytestCheckHook ];

View file

@ -1,36 +0,0 @@
{
lib,
buildPythonPackage,
fetchPypi,
flask,
gevent,
gevent-websocket,
}:
buildPythonPackage rec {
pname = "Flask-Sockets";
version = "0.2.1";
src = fetchPypi {
inherit pname version;
sha256 = "072927da8edca0e81e024f5787e643c87d80b351b714de95d723becb30e0643b";
};
propagatedBuildInputs = [
flask
gevent
gevent-websocket
];
# upstream doesn't have any tests, single file
doCheck = false;
pythonImportsCheck = [ "flask_sockets" ];
meta = with lib; {
description = "Elegant WebSockets for your Flask apps";
homepage = "https://github.com/heroku-python/flask-sockets";
license = licenses.mit;
maintainers = [ maintainers.prusnak ];
};
}

View file

@ -70,7 +70,11 @@ buildPythonPackage rec {
freezegun freezegun
grpcio grpcio
mock mock
]
++ lib.optionals (pythonOlder "3.13") [
oauth2client oauth2client
]
++ [
pytest-asyncio pytest-asyncio
pytest-localserver pytest-localserver
pytestCheckHook pytestCheckHook

View file

@ -21,7 +21,6 @@
falcon, falcon,
fastapi, fastapi,
flask, flask,
flask-sockets,
gunicorn, gunicorn,
moto, moto,
pyramid, pyramid,
@ -73,7 +72,6 @@ buildPythonPackage rec {
falcon falcon
fastapi fastapi
flask flask
flask-sockets
gunicorn gunicorn
moto moto
pyramid pyramid

View file

@ -6,7 +6,6 @@
buildPythonPackage, buildPythonPackage,
fetchFromGitHub, fetchFromGitHub,
flake8, flake8,
flask-sockets,
moto, moto,
psutil, psutil,
pytest-asyncio, pytest-asyncio,
@ -49,7 +48,6 @@ buildPythonPackage rec {
nativeCheckInputs = [ nativeCheckInputs = [
flake8 flake8
flask-sockets
moto moto
psutil psutil
pytest-asyncio pytest-asyncio

View file

@ -147,6 +147,7 @@ buildPythonPackage rec {
"tests/cli/" "tests/cli/"
"tests/django/test_dataloaders.py" "tests/django/test_dataloaders.py"
"tests/exceptions/" "tests/exceptions/"
"tests/experimental/pydantic/test_fields.py"
"tests/http/" "tests/http/"
"tests/schema/extensions/" "tests/schema/extensions/"
"tests/schema/test_dataloaders.py" "tests/schema/test_dataloaders.py"

View file

@ -7,59 +7,48 @@
numpy, numpy,
lightning-utilities, lightning-utilities,
packaging, packaging,
pretty-errors,
# buildInputs # buildInputs
torch, torch,
# tests # tests
cloudpickle,
psutil,
pytestCheckHook, pytestCheckHook,
pytest-doctestplus, pytest-doctestplus,
pytest-xdist, pytest-xdist,
pytorch-lightning, pytorch-lightning,
scikit-image, scikit-image,
scikit-learn,
# passthru # passthru
torchmetrics, torchmetrics,
}: }:
let buildPythonPackage rec {
pname = "torchmetrics"; pname = "torchmetrics";
version = "1.4.3"; version = "1.6.1";
in
buildPythonPackage {
inherit pname version;
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Lightning-AI"; owner = "Lightning-AI";
repo = "torchmetrics"; repo = "torchmetrics";
rev = "refs/tags/v${version}"; tag = "v${version}";
hash = "sha256-527cHPFdFw/JajHe7Kkz7+zl4EfePaLx77I2OTjjxaA="; hash = "sha256-itLFJB920hQGX2VLOLolHhmXFVHAOkfRRFtUGB9neKM=";
}; };
dependencies = [ dependencies = [
numpy numpy
lightning-utilities lightning-utilities
packaging packaging
pretty-errors
]; ];
# Let the user bring their own instance # Let the user bring their own instance
buildInputs = [ torch ]; buildInputs = [ torch ];
nativeCheckInputs = [ nativeCheckInputs = [
cloudpickle
psutil
pytestCheckHook pytestCheckHook
pytest-doctestplus pytest-doctestplus
pytest-xdist pytest-xdist
pytorch-lightning pytorch-lightning
scikit-image scikit-image
scikit-learn
]; ];
# A cyclic dependency in: integrations/test_lightning.py # A cyclic dependency in: integrations/test_lightning.py
@ -73,16 +62,20 @@ buildPythonPackage {
dontInstall = true; dontInstall = true;
}); });
disabledTests = [
# `IndexError: list index out of range`
"test_metric_lightning_log"
];
disabledTestPaths = [ disabledTestPaths = [
# These require too many "leftpad-level" dependencies # These require too many "leftpad-level" dependencies
# Also too cross-dependent # Also too cross-dependent
"tests/unittests" "tests/unittests"
# AttributeError: partially initialized module 'pesq' has no attribute 'pesq' (most likely due to a circular import)
"examples/audio/pesq.py"
# Require internet access
"examples/text/bertscore.py"
"examples/image/clip_score.py"
"examples/text/perplexity.py"
"examples/text/rouge.py"
# A trillion import path mismatch errors # A trillion import path mismatch errors
"src/torchmetrics" "src/torchmetrics"
]; ];

View file

@ -5,6 +5,7 @@
nix-update-script, nix-update-script,
pnpm, pnpm,
nodejs, nodejs,
python3,
makeWrapper, makeWrapper,
electron, electron,
vulkan-helper, vulkan-helper,
@ -33,6 +34,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [ nativeBuildInputs = [
nodejs nodejs
pnpm.configHook pnpm.configHook
python3
makeWrapper makeWrapper
]; ];
@ -41,21 +43,25 @@ stdenv.mkDerivation (finalAttrs: {
./fix-non-steam-shortcuts.patch ./fix-non-steam-shortcuts.patch
]; ];
postPatch = '' env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
# We are not packaging this as an Electron application bundle, so Electron
# reports to the application that is is not "packaged", which causes Heroic
# to take some incorrect codepaths meant for development environments.
substituteInPlace src/**/*.ts --replace-quiet 'app.isPackaged' 'true'
'';
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
# set nodedir to prevent node-gyp from downloading headers
# taken from https://nixos.org/manual/nixpkgs/stable/#javascript-tool-specific
mkdir -p $HOME/.node-gyp/${nodejs.version}
echo 9 > $HOME/.node-gyp/${nodejs.version}/installVersion
ln -sfv ${nodejs}/include $HOME/.node-gyp/${nodejs.version}
export npm_config_nodedir=${nodejs}
pnpm --offline electron-vite build pnpm --offline electron-vite build
# Remove dev dependencies. pnpm --offline electron-builder \
pnpm --ignore-scripts prune --prod --linux \
# Clean up broken symlinks left behind by `pnpm prune` --dir \
find node_modules/.bin -xtype l -delete -c.asarUnpack="**/*.node" \
-c.electronDist=${electron.dist} \
-c.electronVersion=${electron.version}
runHook postBuild runHook postBuild
''; '';
@ -65,33 +71,32 @@ stdenv.mkDerivation (finalAttrs: {
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/share/{applications,heroic} mkdir -p "$out/opt/heroic"
cp -r . $out/share/heroic cp -r dist/linux-unpacked/resources "$out/opt/heroic"
rm -rf $out/share/heroic/{.devcontainer,.vscode,.husky,.idea,.github}
chmod -R u+w "$out/share/heroic/public/bin" "$out/share/heroic/build/bin" cp -r public "$out/opt/heroic/resources/app.asar.unpacked/build"
rm -rf "$out/share/heroic/public/bin" "$out/share/heroic/build/bin" rm -rf "$out/opt/heroic/resources/app.asar.unpacked/build/bin"
mkdir -p "$out/share/heroic/build/bin/x64/linux" mkdir -p "$out/opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux"
ln -s \ ln -s \
"${lib.getExe gogdl}" \ "${lib.getExe gogdl}" \
"${lib.getExe legendary-gl}" \ "${lib.getExe legendary-gl}" \
"${lib.getExe nile}" \ "${lib.getExe nile}" \
"${lib.getExe comet-gog}" \ "${lib.getExe comet-gog}" \
"${lib.getExe vulkan-helper}" \ "${lib.getExe vulkan-helper}" \
"$out/share/heroic/build/bin/x64/linux/" "$out/opt/heroic/resources/app.asar.unpacked/build/bin/x64/linux"
makeWrapper "${electron}/bin/electron" "$out/bin/heroic" \ makeWrapper "${electron}/bin/electron" "$out/bin/heroic" \
--inherit-argv0 \ --inherit-argv0 \
--set ELECTRON_FORCE_IS_PACKAGED 1 \
--add-flags --disable-gpu-compositing \ --add-flags --disable-gpu-compositing \
--add-flags $out/share/heroic \ --add-flags $out/opt/heroic/resources/app.asar \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}"
substituteInPlace "$out/share/heroic/flatpak/com.heroicgameslauncher.hgl.desktop" \ install -D "flatpak/com.heroicgameslauncher.hgl.desktop" "$out/share/applications/com.heroicgameslauncher.hgl.desktop"
install -D "src/frontend/assets/heroic-icon.svg" "$out/share/icons/hicolor/scalable/apps/com.heroicgameslauncher.hgl.svg"
substituteInPlace "$out/share/applications/com.heroicgameslauncher.hgl.desktop" \
--replace-fail "StartupWMClass=Heroic" "StartupWMClass=heroic" \ --replace-fail "StartupWMClass=Heroic" "StartupWMClass=heroic" \
--replace-fail "Exec=heroic-run" "Exec=heroic" --replace-fail "Exec=heroic-run" "Exec=heroic"
mkdir -p "$out/share/applications" "$out/share/icons/hicolor/scalable/apps"
ln -s "$out/share/heroic/flatpak/com.heroicgameslauncher.hgl.desktop" "$out/share/applications"
ln -s "$out/share/heroic/src/frontend/assets/heroic-icon.svg" "$out/share/icons/hicolor/scalable/apps/com.heroicgameslauncher.hgl.svg"
runHook postInstall runHook postInstall
''; '';

View file

@ -5892,6 +5892,8 @@ with pkgs;
devpi-server = python3Packages.callPackage ../development/tools/devpi-server { }; devpi-server = python3Packages.callPackage ../development/tools/devpi-server { };
dprint-plugins = recurseIntoAttrs (callPackage ../by-name/dp/dprint/plugins { });
elm2nix = haskell.lib.compose.justStaticExecutables haskellPackages.elm2nix; elm2nix = haskell.lib.compose.justStaticExecutables haskellPackages.elm2nix;
elmPackages = recurseIntoAttrs (callPackage ../development/compilers/elm { }); elmPackages = recurseIntoAttrs (callPackage ../development/compilers/elm { });
@ -9476,6 +9478,7 @@ with pkgs;
itk_5_2 = callPackage ../development/libraries/itk/5.2.x.nix { itk_5_2 = callPackage ../development/libraries/itk/5.2.x.nix {
inherit (darwin.apple_sdk.frameworks) Cocoa; inherit (darwin.apple_sdk.frameworks) Cocoa;
enableRtk = false;
}; };
itk_5 = callPackage ../development/libraries/itk/5.x.nix { itk_5 = callPackage ../development/libraries/itk/5.x.nix {
@ -10950,12 +10953,10 @@ with pkgs;
wxGTK31 = callPackage ../development/libraries/wxwidgets/wxGTK31.nix { wxGTK31 = callPackage ../development/libraries/wxwidgets/wxGTK31.nix {
inherit (darwin.stubs) setfile; inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit AVFoundation AVKit WebKit;
}; };
wxGTK32 = callPackage ../development/libraries/wxwidgets/wxGTK32.nix { wxGTK32 = callPackage ../development/libraries/wxwidgets/wxGTK32.nix {
inherit (darwin.stubs) setfile; inherit (darwin.stubs) setfile;
inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit AVFoundation AVKit WebKit;
}; };
wxSVG = callPackage ../development/libraries/wxSVG { wxSVG = callPackage ../development/libraries/wxSVG {

View file

@ -224,6 +224,7 @@ mapAliases ({
flask-autoindex = throw "flask-autoindex was removed, as it is not compatible with flask 3.0 and unmaintained since 2020."; flask-autoindex = throw "flask-autoindex was removed, as it is not compatible with flask 3.0 and unmaintained since 2020.";
flask-basicauth = throw "flask-basicauth was removed, as it is not compatible with flask 3.0 and unmaintained since 2016."; flask-basicauth = throw "flask-basicauth was removed, as it is not compatible with flask 3.0 and unmaintained since 2016.";
flask-sessionstore = throw "flask-sessionstore was removed, as it is not compatible with flask 3.0 and unmaintained since 2017."; flask-sessionstore = throw "flask-sessionstore was removed, as it is not compatible with flask 3.0 and unmaintained since 2017.";
flask-sockets = throw "flask-sockets has been removed as the upstream repository was archived in 2022"; # Added 2025-01-01
flowlogs_reader = flowlogs-reader; # added 2024-01-03 flowlogs_reader = flowlogs-reader; # added 2024-01-03
flufl_bounce = flufl-bounce; # added 2023-11-03 flufl_bounce = flufl-bounce; # added 2023-11-03
flufl_i18n = flufl-i18n; # added 2023-11-03 flufl_i18n = flufl-i18n; # added 2023-11-03

View file

@ -4734,8 +4734,6 @@ self: super: with self; {
flask-socketio = callPackage ../development/python-modules/flask-socketio { }; flask-socketio = callPackage ../development/python-modules/flask-socketio { };
flask-sockets = callPackage ../development/python-modules/flask-sockets { };
flask-sqlalchemy = callPackage ../development/python-modules/flask-sqlalchemy { }; flask-sqlalchemy = callPackage ../development/python-modules/flask-sqlalchemy { };
flask-sqlalchemy-lite = callPackage ../development/python-modules/flask-sqlalchemy-lite { }; flask-sqlalchemy-lite = callPackage ../development/python-modules/flask-sqlalchemy-lite { };
@ -6491,6 +6489,7 @@ self: super: with self; {
itk = toPythonModule (pkgs.itk.override { itk = toPythonModule (pkgs.itk.override {
inherit python numpy; inherit python numpy;
enablePython = true; enablePython = true;
enableRtk = false;
}); });