diff --git a/doc/release-notes/rl-2605.section.md b/doc/release-notes/rl-2605.section.md index 19f09c38484a..80a931884050 100644 --- a/doc/release-notes/rl-2605.section.md +++ b/doc/release-notes/rl-2605.section.md @@ -242,6 +242,22 @@ - We now use the upstream wrapper script for Gradle, supporting both the `JAVA_HOME` and `GRADLE_OPTS` environment variables. +- `gnuradio`: Overriding the `.pkgs` package set is now possible with a `packageOverrides` function, like with `python.pkgs` and other language-specific package sets. +Example: + +```nix +gnuradioMinimal.override { + packageOverrides = grSelf: grSuper: { + osmosdr = grSuper.osmosdr.override { + airspy = null; + hackrf = null; + libbladeRF = null; + soapysdr-with-plugins = null; + }; + }; +} +``` + ## Nixpkgs Library {#sec-nixpkgs-release-26.05-lib} diff --git a/lib/asserts.nix b/lib/asserts.nix index ce9dea76bbce..f35924004bbd 100644 --- a/lib/asserts.nix +++ b/lib/asserts.nix @@ -70,7 +70,7 @@ rec { # Type ``` - assertOneOf :: String -> ComparableVal -> List ComparableVal -> Bool + assertOneOf :: String -> ComparableVal -> [ComparableVal] -> Bool ``` # Examples @@ -115,7 +115,7 @@ rec { # Type ``` - assertEachOneOf :: String -> List ComparableVal -> List ComparableVal -> Bool + assertEachOneOf :: String -> [ComparableVal] -> [ComparableVal] -> Bool ``` # Examples @@ -164,7 +164,7 @@ rec { # Type ``` - checkAssertWarn :: [ { assertion :: Bool; message :: String } ] -> [ String ] -> Any -> Any + checkAssertWarn :: [{ assertion :: Bool; message :: String; }] -> [String] -> a -> a ``` # Examples diff --git a/lib/attrsets.nix b/lib/attrsets.nix index 0e79a3b5a39b..932b66b9cfb6 100644 --- a/lib/attrsets.nix +++ b/lib/attrsets.nix @@ -4,9 +4,8 @@ { lib }: let - inherit (builtins) head length typeOf; - inherit (lib.asserts) assertMsg; - inherit (lib.trivial) oldestSupportedReleaseIsAtLeast mergeAttrs; + inherit (builtins) head length; + inherit (lib.trivial) mergeAttrs; inherit (lib.strings) concatStringsSep concatMapStringsSep @@ -201,7 +200,7 @@ rec { # Type ``` - attrsets.longestValidPathPrefix :: [String] -> Value -> [String] + longestValidPathPrefix :: [String] -> AttrSet -> [String] ``` # Examples @@ -352,7 +351,7 @@ rec { # Type ``` - concatMapAttrs :: (String -> a -> AttrSet) -> AttrSet -> AttrSet + concatMapAttrs :: (String -> Any -> AttrSet) -> AttrSet -> AttrSet ``` # Examples @@ -514,7 +513,7 @@ rec { # Type ``` - attrVals :: [String] -> AttrSet -> [Any] + attrVals :: [String] -> { [String] :: a } -> [a] ``` # Examples @@ -537,7 +536,7 @@ rec { # Type ``` - attrValues :: AttrSet -> [Any] + attrValues :: { [String] :: a } -> [a] ``` # Examples @@ -570,7 +569,7 @@ rec { # Type ``` - getAttrs :: [String] -> AttrSet -> AttrSet + getAttrs :: [String] -> { [String] :: a } -> { [String] :: a } ``` # Examples @@ -603,7 +602,7 @@ rec { # Type ``` - catAttrs :: String -> [AttrSet] -> [Any] + catAttrs :: String -> [{ [String] :: a }] -> [a] ``` # Examples @@ -646,7 +645,7 @@ rec { # Type ``` - filterAttrs :: (String -> Any -> Bool) -> AttrSet -> AttrSet + filterAttrs :: (String -> a -> Bool) -> { [String] :: a } -> { [String] :: a } ``` # Examples @@ -737,7 +736,7 @@ rec { # Type ``` - foldlAttrs :: ( a -> String -> b -> a ) -> a -> { ... :: b } -> a + foldlAttrs :: ( a -> String -> b -> a ) -> a -> { [String] :: b } -> a ``` # Examples @@ -812,7 +811,7 @@ rec { # Type ``` - foldAttrs :: (Any -> Any -> Any) -> Any -> [AttrSets] -> Any + foldAttrs :: (a -> b -> b) -> b -> [{ [String] :: a }] -> { [String] :: b } ``` # Examples @@ -850,7 +849,7 @@ rec { # Type ``` - collect :: (AttrSet -> Bool) -> AttrSet -> [x] + collect :: (AttrSet -> Bool) -> AttrSet -> [Any] ``` # Examples @@ -889,7 +888,7 @@ rec { # Type ``` - cartesianProduct :: AttrSet -> [AttrSet] + cartesianProduct :: { [String] :: [a] } -> [{ [String] :: a }] ``` # Examples @@ -934,7 +933,7 @@ rec { # Type ``` - mapCartesianProduct :: (AttrSet -> a) -> AttrSet -> [a] + mapCartesianProduct :: ({ [String] :: a } -> b) -> { [String] :: a } -> [b] ``` # Examples @@ -966,7 +965,7 @@ rec { # Type ``` - nameValuePair :: String -> Any -> { name :: String; value :: Any; } + nameValuePair :: String -> a -> { name :: String; value :: a; } ``` # Examples @@ -998,7 +997,7 @@ rec { # Type ``` - mapAttrs :: (String -> Any -> Any) -> AttrSet -> AttrSet + mapAttrs :: (String -> a -> b) -> { [String] :: a } -> { [String] :: b } ``` # Examples @@ -1033,7 +1032,7 @@ rec { # Type ``` - mapAttrs' :: (String -> Any -> { name :: String; value :: Any; }) -> AttrSet -> AttrSet + mapAttrs' :: (String -> a -> { name :: String; value :: b; }) -> { [String] :: a } -> { [String] :: b } ``` # Examples @@ -1067,7 +1066,7 @@ rec { # Type ``` - mapAttrsToList :: (String -> a -> b) -> AttrSet -> [b] + mapAttrsToList :: (String -> a -> b) -> { [String] :: a } -> [b] ``` # Examples @@ -1113,7 +1112,7 @@ rec { # Type ``` - attrsToList :: AttrSet -> [ { name :: String; value :: Any; } ] + attrsToList :: { [String] :: a } -> [{ name :: String; value :: a; }] ``` # Examples @@ -1327,7 +1326,7 @@ rec { # Type ``` - genAttrs :: [ String ] -> (String -> Any) -> AttrSet + genAttrs :: [String] -> (String -> a) -> { [String] :: a } ``` # Examples @@ -1364,7 +1363,7 @@ rec { # Type ``` - genAttrs' :: [ Any ] -> (Any -> { name :: String; value :: Any; }) -> AttrSet + genAttrs' :: [a] -> (a -> { name :: String; value :: b; }) -> { [String] :: b } ``` # Examples @@ -1498,7 +1497,7 @@ rec { # Type ``` - zipAttrsWithNames :: [ String ] -> (String -> [ Any ] -> Any) -> [ AttrSet ] -> AttrSet + zipAttrsWithNames :: [String] -> (String -> [a] -> b) -> [{ [String] :: a }] -> { [String] :: b } ``` # Examples @@ -1533,7 +1532,7 @@ rec { # Type ``` - zipAttrsWith :: (String -> [ Any ] -> Any) -> [ AttrSet ] -> AttrSet + zipAttrsWith :: (String -> [a] -> b) -> [{ [String] :: a }] -> { [String] :: b } ``` # Examples @@ -1558,7 +1557,7 @@ rec { # Type ``` - zipAttrs :: [ AttrSet ] -> AttrSet + zipAttrs :: [{ [String] :: a }] -> { [String] :: [a] } ``` # Examples @@ -1589,7 +1588,7 @@ rec { # Type ``` - mergeAttrsList :: [ Attrs ] -> Attrs + mergeAttrsList :: [AttrSet] -> AttrSet ``` # Examples @@ -1609,7 +1608,7 @@ rec { list: let # `binaryMerge start end` merges the elements at indices `index` of `list` such that `start <= index < end` - # Type: Int -> Int -> Attrs + # Type: Int -> Int -> AttrSet binaryMerge = start: end: # assert start < end; # Invariant @@ -1669,7 +1668,7 @@ rec { # Type ``` - recursiveUpdateUntil :: ( [ String ] -> AttrSet -> AttrSet -> Bool ) -> AttrSet -> AttrSet -> AttrSet + recursiveUpdateUntil :: ([String] -> AttrSet -> AttrSet -> Bool) -> AttrSet -> AttrSet -> AttrSet ``` # Examples diff --git a/lib/customisation.nix b/lib/customisation.nix index 32bc70f61fde..dfdb64cbf3e2 100644 --- a/lib/customisation.nix +++ b/lib/customisation.nix @@ -20,7 +20,6 @@ let take length filterAttrs - optionalString flip head pipe @@ -626,7 +625,7 @@ rec { # Type ``` - makeScope :: (AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a) -> (AttrSet -> AttrSet) -> scope + makeScope :: (AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a) -> (AttrSet -> AttrSet) -> Scope ``` */ makeScope = @@ -689,20 +688,20 @@ rec { ``` makeScopeWithSplicing' :: - { splicePackages :: Splice -> AttrSet - , newScope :: AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a + { splicePackages :: Splice -> AttrSet; + newScope :: AttrSet -> ((AttrSet -> a) | Path) -> AttrSet -> a; } - -> { otherSplices :: Splice, keep :: AttrSet -> AttrSet, extra :: AttrSet -> AttrSet } + -> { otherSplices :: Splice; keep :: AttrSet -> AttrSet; extra :: AttrSet -> AttrSet; } -> AttrSet - Splice :: - { pkgsBuildBuild :: AttrSet - , pkgsBuildHost :: AttrSet - , pkgsBuildTarget :: AttrSet - , pkgsHostHost :: AttrSet - , pkgsHostTarget :: AttrSet - , pkgsTargetTarget :: AttrSet - } + Splice :: { + pkgsBuildBuild :: AttrSet; + pkgsBuildHost :: AttrSet; + pkgsBuildTarget :: AttrSet; + pkgsHostHost :: AttrSet; + pkgsHostTarget :: AttrSet; + pkgsTargetTarget :: AttrSet; + } ``` */ makeScopeWithSplicing' = @@ -806,17 +805,16 @@ rec { ``` extendMkDerivation :: { - constructDrv :: ((FixedPointArgs | AttrSet) -> a) - excludeDrvArgNames :: [ String ], - excludeFunctionArgNames :: [ String ] - extendDrvArgs :: (AttrSet -> AttrSet -> AttrSet) - inheritFunctionArgs :: Bool, - transformDrv :: a -> a, + constructDrv :: (FixedPointArgs | AttrSet) -> Derivation; + excludeDrvArgNames :: [String]; + excludeFunctionArgNames :: [String]; + extendDrvArgs :: AttrSet -> AttrSet -> AttrSet; + inheritFunctionArgs :: Bool; + transformDrv :: Derivation -> Derivation; } - -> (FixedPointArgs | AttrSet) -> a + -> ((FixedPointArgs | AttrSet) -> Derivation) - FixedPointArgs = AttrSet -> AttrSet - a = Derivation when defining a build helper + FixedPointArgs :: AttrSet -> AttrSet ``` # Examples @@ -998,7 +996,21 @@ rec { # Type ``` - mapCrossIndex :: (a -> b) -> AttrSet -> AttrSet + mapCrossIndex :: (a -> b) -> { + buildBuild :: a; + buildHost :: a; + buildTarget :: a; + hostHost :: a; + hostTarget :: a; + targetTarget :: a; + } -> { + buildBuild :: b; + buildHost :: b; + buildTarget :: b; + hostHost :: b; + hostTarget :: b; + targetTarget :: b; + } ``` # Examples diff --git a/lib/debug.nix b/lib/debug.nix index 775db5a32997..0132da9d779e 100644 --- a/lib/debug.nix +++ b/lib/debug.nix @@ -60,7 +60,7 @@ rec { # Type ``` - traceIf :: bool -> string -> a -> a + traceIf :: Bool -> String -> a -> a ``` # Examples @@ -167,7 +167,7 @@ rec { ```nix trace { a.b.c = 3; } null - trace: { a = ; } + trace: { a = ; } => null traceSeq { a.b.c = 3; } null trace: { a = { b = { c = 3; }; }; } @@ -257,6 +257,23 @@ rec { `v` : Value to trace + + # Type + + ``` + traceValSeqFn :: (a -> b) -> a -> a + ``` + + # Examples + :::{.example} + ## `lib.debug.traceValSeqFn` usage example + + ```nix + traceValSeqFn (v: v // { d = "foo";}) { a.b.c = 3; } + trace: { a = { b = { c = 3; }; }; d = "foo"; } + => { a = { ... }; } + + ::: */ traceValSeqFn = f: v: traceValFn f (builtins.deepSeq v v); @@ -268,6 +285,24 @@ rec { `v` : Value to trace + + # Type + + ``` + traceValSeq :: a -> a + ``` + + # Examples + :::{.example} + ## `lib.debug.traceValSeq` usage example + + ```nix + traceValSeq { a.b.c = 3; } + trace: { a = { b = { c = 3; }; }; } + => { a = { ... }; } + ``` + + ::: */ traceValSeq = traceValSeqFn id; @@ -288,6 +323,24 @@ rec { `v` : Value to trace + + # Type + + ``` + traceValSeqNFn :: (a -> b) -> Int -> a -> a + ``` + + # Examples + :::{.example} + ## `lib.debug.traceValSeqNFn` usage example + + ```nix + traceValSeqNFn (v: v // { d = "foo";}) 2 { a.b.c = 3; } + trace: { a = { b = {…}; }; d = "foo"; } + => { a = { ... }; } + ``` + + ::: */ traceValSeqNFn = f: depth: v: @@ -305,6 +358,24 @@ rec { `v` : Value to trace + + # Type + + ``` + traceValSeqN :: Int -> a -> a + ``` + + # Examples + :::{.example} + ## `lib.debug.traceValSeqN` usage example + + ```nix + traceValSeqN 2 { a.b.c = 3; } + trace: { a = { b = {…}; }; } + => { a = { ... }; } + ``` + + ::: */ traceValSeqN = traceValSeqNFn id; @@ -333,6 +404,12 @@ rec { : 4\. Function argument + # Type + + ``` + traceFnSeqN :: Int -> String -> (a -> b) -> a -> b + ``` + # Examples :::{.example} ## `lib.debug.traceFnSeqN` usage example @@ -340,7 +417,7 @@ rec { ```nix traceFnSeqN 2 "id" (x: x) { a.b.c = 3; } trace: { fn = "id"; from = { a.b = {…}; }; to = { a.b = {…}; }; } - => { a.b.c = 3; } + => { a = { ... }; } ``` ::: @@ -389,7 +466,7 @@ rec { ``` runTests :: { - tests = [ String ]; + tests :: [String]; ${testName} :: { expr :: a; expected :: a; @@ -489,7 +566,7 @@ rec { ]; } -> - null + Null ``` # Examples diff --git a/lib/deprecated/misc.nix b/lib/deprecated/misc.nix index 7865f0ce760f..092b3abfd6a0 100644 --- a/lib/deprecated/misc.nix +++ b/lib/deprecated/misc.nix @@ -6,26 +6,20 @@ let any attrByPath attrNames - compare concat - concatMap elem filter foldl foldr - genericClosure head imap1 - init isAttrs isFunction isInt isList - lists listToAttrs mapAttrs mergeAttrs - meta nameValuePair tail toList diff --git a/lib/derivations.nix b/lib/derivations.nix index b092bd3b6f98..939010bfbb3f 100644 --- a/lib/derivations.nix +++ b/lib/derivations.nix @@ -195,7 +195,7 @@ in # Type ``` - optionalDrvAttr :: Bool -> a -> a | Null + optionalDrvAttr :: Bool -> a -> (a | Null) ``` # Examples @@ -233,6 +233,12 @@ in `drv` : The derivation to wrap. + # Type + + ``` + warnOnInstantiate :: String -> Derivation -> Derivation + ``` + # Examples :::{.example} ## `lib.derivations.warnOnInstantiate` usage example diff --git a/lib/fetchers.nix b/lib/fetchers.nix index 34698ad872bb..402c18ab1fc4 100644 --- a/lib/fetchers.nix +++ b/lib/fetchers.nix @@ -45,7 +45,7 @@ rec { # Type ``` - normalizeHash :: { hashTypes :: List String, required :: Bool } -> AttrSet -> AttrSet + normalizeHash :: { hashTypes :: [String]; required :: Bool; } -> AttrSet -> AttrSet ``` # Arguments @@ -157,7 +157,7 @@ rec { # Type ``` - withNormalizedHash :: { hashTypes :: List String } -> (AttrSet -> T) -> (AttrSet -> T) + withNormalizedHash :: { hashTypes :: [String]; } -> (AttrSet -> a) -> (AttrSet -> a) ``` # Arguments diff --git a/lib/fileset/internal.nix b/lib/fileset/internal.nix index 4579831c2e05..675027c1fee0 100644 --- a/lib/fileset/internal.nix +++ b/lib/fileset/internal.nix @@ -7,7 +7,6 @@ let isAttrs isPath isString - nixVersion pathExists readDir split @@ -21,7 +20,6 @@ let attrValues mapAttrs mapAttrsToList - optionalAttrs zipAttrsWith ; @@ -48,7 +46,6 @@ let append splitRoot hasStorePathPrefix - splitStorePath ; inherit (lib.path.subpath) @@ -62,11 +59,6 @@ let substring stringLength hasSuffix - versionAtLeast - ; - - inherit (lib.trivial) - inPureEvalMode ; in # Rare case of justified usage of rec: @@ -139,8 +131,15 @@ rec { _noEval = throw _noEvalMessage; }; - # Create a fileset, see ./README.md#fileset - # Type: path -> filesetTree -> fileset + /** + Create a fileset, see ./README.md#fileset + + # Type + + ``` + _create :: Path -> FileSetTree -> FileSet + ``` + */ _create = base: tree: let @@ -165,12 +164,18 @@ rec { _noEval = throw _noEvalMessage; }; - # Coerce a value to a fileset. Return a set containing the attribute `success` - # indicating whether coercing succeeded, and either `value` when `success == - # true`, or an error `message` when `success == false`. The string gives the - # context for error messages. - # - # Type: String -> (fileset | Path) -> { success :: Bool, value :: fileset } ] -> { success :: Bool, message :: String } + /** + Coerce a value to a fileset. Return a set containing the attribute `success` + indicating whether coercing succeeded, and either `value` when `success == + true`, or an error `message` when `success == false`. The string gives the + context for error messages. + + # Type + + ``` + _coerceResult :: String -> (FileSet | Path) -> ({ success :: Bool; value :: FileSet; } | { success :: Bool; message :: String; }) + ``` + */ _coerceResult = let ok = value: { @@ -219,9 +224,16 @@ rec { else ok (_singleton value); - # Coerce a value to a fileset, erroring when the value cannot be coerced. - # The string gives the context for error messages. - # Type: String -> (fileset | Path) -> fileset + /** + Coerce a value to a fileset, erroring when the value cannot be coerced. + The string gives the context for error messages. + + # Type + + ``` + _coerce :: String -> (FileSet | Path) -> FileSet + ``` + */ _coerce = context: value: let @@ -229,9 +241,16 @@ rec { in if result.success then result.value else throw result.message; - # Coerce many values to filesets, erroring when any value cannot be coerced, - # or if the filesystem root of the values doesn't match. - # Type: String -> [ { context :: String, value :: fileset | Path } ] -> [ fileset ] + /** + Coerce many values to filesets, erroring when any value cannot be coerced, + or if the filesystem root of the values doesn't match. + + # Type + + ``` + _coerceMany :: String -> [{ context :: String; value :: FileSet | Path; }] -> [FileSet] + ``` + */ _coerceMany = functionContext: list: let @@ -259,8 +278,15 @@ rec { else filesets; - # Create a file set from a path. - # Type: Path -> fileset + /** + Create a file set from a path. + + # Type + + ``` + _singleton :: Path -> FileSet + ``` + */ _singleton = path: let @@ -279,9 +305,16 @@ rec { ${baseNameOf path} = type; }; - # Expand a directory representation to an equivalent one in attribute set form. - # All directory entries are included in the result. - # Type: Path -> filesetTree -> { = filesetTree; } + /** + Expand a directory representation to an equivalent one in attribute set form. + All directory entries are included in the result. + + # Type + + ``` + _directoryEntries :: Path -> FileSetTree -> { [String] :: FileSetTree } + ``` + */ _directoryEntries = path: value: if value == "directory" then @@ -312,7 +345,7 @@ rec { # Type ``` - Path -> filesetTree -> filesetTree + _normaliseTreeFilter :: Path -> FileSetTree -> FileSetTree ``` */ _normaliseTreeFilter = @@ -357,7 +390,7 @@ rec { # Type ``` - Path -> filesetTree -> filesetTree (with "emptyDir"'s) + _normaliseTreeMinimal :: Path -> FileSetTree -> FileSetTree (with "emptyDir"'s) ``` */ _normaliseTreeMinimal = @@ -391,9 +424,16 @@ rec { else tree; - # Trace a filesetTree in a pretty way when the resulting value is evaluated. - # This can handle both normal filesetTree's, and ones returned from _normaliseTreeMinimal - # Type: Path -> filesetTree (with "emptyDir"'s) -> Null + /** + Trace a filesetTree in a pretty way when the resulting value is evaluated. + This can handle both normal filesetTree's, and ones returned from _normaliseTreeMinimal + + # Type + + ``` + _printMinimalTree :: Path -> FileSetTree (with "emptyDir"'s) -> Null + ``` + */ _printMinimalTree = base: tree: let @@ -443,8 +483,15 @@ rec { in if isAttrs tree then traceTreeAttrs firstLine "" tree else firstLine; - # Pretty-print a file set in a pretty way when the resulting value is evaluated - # Type: fileset -> Null + /** + Pretty-print a file set in a pretty way when the resulting value is evaluated + + # Type + + ``` + _printFileset :: FileSet -> Null + ``` + */ _printFileset = fileset: if fileset._internalIsEmptyWithoutBase then @@ -454,9 +501,16 @@ rec { _normaliseTreeMinimal fileset._internalBase fileset._internalTree ); - # Turn a fileset into a source filter function suitable for `builtins.path` - # Only directories recursively containing at least one files are recursed into - # Type: fileset -> (String -> String -> Bool) + /** + Turn a fileset into a source filter function suitable for `builtins.path` + Only directories recursively containing at least one files are recursed into + + # Type + + ``` + _toSourceFilter :: FileSet -> (String -> String -> Bool) + ``` + */ _toSourceFilter = fileset: let @@ -476,7 +530,7 @@ rec { # Check whether a list of path components under the base path exists in the tree. # This function is called often, so it should be fast. - # Type: [ String ] -> Bool + # Type: [String] -> Bool inTree = components: let @@ -551,10 +605,17 @@ rec { # This also forces the tree before returning the filter, leads to earlier error messages if fileset._internalIsEmptyWithoutBase || tree == null then empty else nonEmpty; - # Turn a builtins.filterSource-based source filter on a root path into a file set - # containing only files included by the filter. - # The filter is lazily called as necessary to determine whether paths are included - # Type: Path -> (String -> String -> Bool) -> fileset + /** + Turn a builtins.filterSource-based source filter on a root path into a file set + containing only files included by the filter. + The filter is lazily called as necessary to determine whether paths are included + + # Type + + ``` + _fromSourceFilter :: Path -> (String -> String -> Bool) -> FileSet + ``` + */ _fromSourceFilter = root: sourceFilter: let @@ -606,8 +667,15 @@ rec { ${baseNameOf root} = rootPathType; }; - # Turns a file set into the list of file paths it includes. - # Type: fileset -> [ Path ] + /** + Turns a file set into the list of file paths it includes. + + # Type + + ``` + _toList :: FileSet -> [Path] + ``` + */ _toList = fileset: let @@ -668,9 +736,16 @@ rec { in recurse (length fileset._internalBaseComponents) fileset._internalTree; - # Computes the union of a list of filesets. - # The filesets must already be coerced and validated to be in the same filesystem root - # Type: [ Fileset ] -> Fileset + /** + Computes the union of a list of filesets. + The filesets must already be coerced and validated to be in the same filesystem root + + # Type + + ``` + _unionMany :: [FileSet] -> FileSet + ``` + */ _unionMany = filesets: let @@ -715,9 +790,16 @@ rec { # If there's no values with a base, we have no files if filesetsWithBase == [ ] then _emptyWithoutBase else _create commonBase resultTree; - # The union of multiple filesetTree's with the same base path. - # Later elements are only evaluated if necessary. - # Type: [ filesetTree ] -> filesetTree + /** + The union of multiple filesetTree's with the same base path. + Later elements are only evaluated if necessary. + + # Type + + ``` + _unionTrees :: [FileSetTree] -> FileSetTree + ``` + */ _unionTrees = trees: let @@ -736,9 +818,16 @@ rec { # We need to recurse into those zipAttrsWith (name: _unionTrees) withoutNull; - # Computes the intersection of a list of filesets. - # The filesets must already be coerced and validated to be in the same filesystem root - # Type: Fileset -> Fileset -> Fileset + /** + Computes the intersection of two filesets. + The filesets must already be coerced and validated to be in the same filesystem root + + # Type + + ``` + _intersection :: FileSet -> FileSet -> FileSet + ``` + */ _intersection = fileset1: fileset2: let @@ -787,9 +876,16 @@ rec { else _create longestBaseFileset._internalBase resultTree; - # The intersection of two filesetTree's with the same base path - # The second element is only evaluated as much as necessary. - # Type: filesetTree -> filesetTree -> filesetTree + /** + The intersection of two filesetTree's with the same base path + The second element is only evaluated as much as necessary. + + # Type + + ``` + _intersectTree :: FileSetTree -> FileSetTree -> FileSetTree + ``` + */ _intersectTree = lhs: rhs: if isAttrs lhs && isAttrs rhs then @@ -804,9 +900,16 @@ rec { # In all other cases it's the rhs rhs; - # Compute the set difference between two file sets. - # The filesets must already be coerced and validated to be in the same filesystem root. - # Type: Fileset -> Fileset -> Fileset + /** + Compute the set difference between two file sets. + The filesets must already be coerced and validated to be in the same filesystem root. + + # Type + + ``` + _difference :: FileSet -> FileSet -> FileSet + ``` + */ _difference = positive: negative: let @@ -862,8 +965,15 @@ rec { # which is what base path is for _create positive._internalBase resultingTree; - # Computes the set difference of two filesetTree's - # Type: Path -> filesetTree -> filesetTree + /** + Computes the set difference of two filesetTree's + + # Type + + ``` + _differenceTree :: Path -> FileSetTree -> FileSetTree -> FileSetTree + ``` + */ _differenceTree = path: lhs: rhs: # If the lhs doesn't have any files, or the right hand side includes all files @@ -880,13 +990,20 @@ rec { _directoryEntries path lhs ); - # Filters all files in a path based on a predicate - # Type: ({ name, type, ... } -> Bool) -> Path -> FileSet + /** + Filters all files in a path based on a predicate + + # Type + + ``` + _fileFilter :: ({ name :: String; type :: String; hasExt :: String -> Bool; ... } -> Bool) -> Path -> FileSet + ``` + */ _fileFilter = predicate: root: let # Check the predicate for a single file - # Type: String -> String -> filesetTree + # Type: String -> String -> FileSetTree fromFile = name: type: if @@ -905,7 +1022,7 @@ rec { null; # Check the predicate for all files in a directory - # Type: Path -> filesetTree + # Type: Path -> FileSetTree fromDir = path: mapAttrs ( @@ -922,12 +1039,18 @@ rec { ${baseNameOf root} = fromFile (baseNameOf root) rootType; }; - # Mirrors the contents of a Nix store path relative to a local path as a file set. - # Some notes: - # - The store path is read at evaluation time. - # - The store path must not include files that don't exist in the respective local path. - # - # Type: Path -> String -> FileSet + /** + Mirrors the contents of a Nix store path relative to a local path as a file set. + Some notes: + - The store path is read at evaluation time. + - The store path must not include files that don't exist in the respective local path. + + # Type + + ``` + _mirrorStorePath :: Path -> String -> FileSet + ``` + */ _mirrorStorePath = localPath: storePath: let @@ -939,8 +1062,15 @@ rec { in _create localPath (recurse storePath); - # Create a file set from the files included in the result of a fetchGit call - # Type: String -> String -> Path -> Attrs -> FileSet + /** + Create a file set from the files included in the result of a fetchGit call + + # Type + + ``` + _fromFetchGit :: String -> String -> Path -> AttrSet -> FileSet + ``` + */ _fromFetchGit = function: argument: path: extraFetchGitAttrs: let diff --git a/lib/filesystem.nix b/lib/filesystem.nix index 98a8862d60b8..27f3ab1c5ce1 100644 --- a/lib/filesystem.nix +++ b/lib/filesystem.nix @@ -7,14 +7,12 @@ # Tested in lib/tests/filesystem.sh let inherit (builtins) - readDir pathExists toString ; inherit (lib.filesystem) pathIsDirectory - pathIsRegularFile pathType packagesFromDirectoryRecursive ; @@ -152,7 +150,7 @@ in # Type ``` - Path -> Map String Path + haskellPathsInDir :: Path -> { [String] :: Path } ``` */ haskellPathsInDir = @@ -189,7 +187,7 @@ in # Type ``` - RegExp -> Path -> Nullable { path : Path; matches : [ MatchResults ]; } + locateDominatingFile :: RegExp -> Path -> ({ path :: Path; matches :: [MatchResults]; } | Null) ``` */ locateDominatingFile = @@ -229,7 +227,7 @@ in # Type ``` - Path -> [ Path ] + listFilesRecursive :: Path -> [Path] ``` */ listFilesRecursive = @@ -302,16 +300,6 @@ in - Other files are ignored, including symbolic links to directories and to regular `.nix` files; this is because nixlang code cannot distinguish the type of a link's target. - # Type - - ``` - packagesFromDirectoryRecursive :: { - callPackage :: Path -> {} -> a, - newScope? :: AttrSet -> scope, - directory :: Path, - } -> AttrSet - ``` - # Inputs `callPackage` @@ -326,6 +314,16 @@ in `directory` : The directory to read package files from. + # Type + + ``` + packagesFromDirectoryRecursive :: { + callPackage :: Path -> AttrSet -> Any; + newScope? :: AttrSet -> Scope; + directory :: Path; + } -> AttrSet + ``` + # Examples :::{.example} ## Basic use of `lib.packagesFromDirectoryRecursive` @@ -450,12 +448,6 @@ in /** Append `/default.nix` if the passed path is a directory. - # Type - - ``` - resolveDefaultNix :: (Path | String) -> (Path | String) - ``` - # Inputs A single argument which can be a [path](https://nix.dev/manual/nix/stable/language/types#type-path) value or a string containing an absolute path. @@ -466,6 +458,12 @@ in Furthermore, if the input is a string that ends with `/`, `default.nix` is appended to it. Otherwise, the input is returned unchanged. + # Type + + ``` + resolveDefaultNix :: (Path | String) -> (Path | String) + ``` + # Examples :::{.example} ## `lib.filesystem.resolveDefaultNix` usage example diff --git a/lib/fixed-points.nix b/lib/fixed-points.nix index 6d50a00fc4a1..c80a7f72eba8 100644 --- a/lib/fixed-points.nix +++ b/lib/fixed-points.nix @@ -108,6 +108,12 @@ rec { `f` : 1\. Function argument + + # Type + + ``` + fix' :: (a -> a) -> a + ``` */ fix' = f: @@ -140,7 +146,7 @@ rec { # Type ``` - (a -> a) -> a -> a + converge :: (a -> a) -> a -> a ``` */ converge = @@ -289,9 +295,9 @@ rec { # Type ``` - extends :: (Attrs -> Attrs -> Attrs) # The overlay to apply to the fixed-point function - -> (Attrs -> Attrs) # A fixed-point function - -> (Attrs -> Attrs) # The resulting fixed-point function + extends :: (AttrSet -> AttrSet -> AttrSet) # The overlay to apply to the fixed-point function + -> (AttrSet -> AttrSet) # A fixed-point function + -> (AttrSet -> AttrSet) # The resulting fixed-point function ``` # Examples @@ -370,7 +376,7 @@ rec { # ↓ ↓ OverlayFn = { ... } -> { ... } -> { ... }; in - composeManyExtensions :: ListOf OverlayFn -> OverlayFn + composeManyExtensions :: [OverlayFn] -> OverlayFn ``` # Examples @@ -474,14 +480,11 @@ rec { # Type ``` - toExtension :: - b' -> Any -> Any -> b' + toExtension :: b' -> Any -> Any -> b' or - toExtension :: - (a -> b') -> Any -> a -> b' + toExtension :: (a -> b') -> Any -> a -> b' or - toExtension :: - (a -> a -> b) -> a -> a -> b + toExtension :: (a -> a -> b) -> a -> a -> b where b' = ! Callable Set a = b = b' = AttrSet & ! Callable to make toExtension return an extending function. diff --git a/lib/generators.nix b/lib/generators.nix index 764175d626d2..7b53d3912822 100644 --- a/lib/generators.nix +++ b/lib/generators.nix @@ -778,7 +778,7 @@ rec { # Type ``` - toLua :: AttrSet -> Any -> String + toLua :: { multiline :: Bool; indent :: String; asBindings :: Bool; } -> Any -> String ``` # Examples @@ -879,7 +879,7 @@ rec { # Type ``` - mkLuaInline :: String -> AttrSet + mkLuaInline :: String -> { _type = "lua-inline"; expr :: String; } ``` */ mkLuaInline = expr: { diff --git a/lib/gvariant.nix b/lib/gvariant.nix index db2a33553ab7..f64808347ee8 100644 --- a/lib/gvariant.nix +++ b/lib/gvariant.nix @@ -128,7 +128,7 @@ rec { # Type ``` - mkValue :: Any -> gvariant + mkValue :: Any -> GVariant ``` */ mkValue = @@ -174,7 +174,7 @@ rec { # Type ``` - mkArray :: [Any] -> gvariant + mkArray :: [Any] -> GVariant ``` # Examples @@ -213,7 +213,7 @@ rec { # Type ``` - mkEmptyArray :: gvariant.type -> gvariant + mkEmptyArray :: GVariantType -> GVariant ``` # Examples @@ -247,7 +247,7 @@ rec { # Type ``` - mkVariant :: Any -> gvariant + mkVariant :: Any -> GVariant ``` # Examples @@ -289,7 +289,7 @@ rec { # Type ``` - mkDictionaryEntry :: String -> Any -> gvariant + mkDictionaryEntry :: String -> Any -> GVariant ``` # Examples @@ -335,7 +335,7 @@ rec { # Type ``` - mkMaybe :: gvariant.type -> Any -> gvariant + mkMaybe :: GVariantType -> Any -> GVariant ``` */ mkMaybe = @@ -358,7 +358,7 @@ rec { # Type ``` - mkNothing :: gvariant.type -> gvariant + mkNothing :: GVariantType -> GVariant ``` */ mkNothing = elemType: mkMaybe elemType null; @@ -375,7 +375,7 @@ rec { # Type ``` - mkJust :: Any -> gvariant + mkJust :: Any -> GVariant ``` */ mkJust = @@ -397,7 +397,7 @@ rec { # Type ``` - mkTuple :: [Any] -> gvariant + mkTuple :: [Any] -> GVariant ``` */ mkTuple = @@ -423,7 +423,7 @@ rec { # Type ``` - mkBoolean :: Bool -> gvariant + mkBoolean :: Bool -> GVariant ``` */ mkBoolean = @@ -445,7 +445,7 @@ rec { # Type ``` - mkString :: String -> gvariant + mkString :: String -> GVariant ``` */ mkString = @@ -470,7 +470,7 @@ rec { # Type ``` - mkObjectpath :: String -> gvariant + mkObjectpath :: String -> GVariant ``` */ mkObjectpath = @@ -486,7 +486,7 @@ rec { # Type ``` - mkUchar :: Int -> gvariant + mkUchar :: Int -> GVariant ``` */ mkUchar = mkPrimitive type.uchar; @@ -497,7 +497,7 @@ rec { # Type ``` - mkInt16 :: Int -> gvariant + mkInt16 :: Int -> GVariant ``` */ mkInt16 = mkPrimitive type.int16; @@ -508,7 +508,7 @@ rec { # Type ``` - mkUint16 :: Int -> gvariant + mkUint16 :: Int -> GVariant ``` */ mkUint16 = mkPrimitive type.uint16; @@ -525,7 +525,7 @@ rec { # Type ``` - mkInt32 :: Int -> gvariant + mkInt32 :: Int -> GVariant ``` */ mkInt32 = @@ -541,7 +541,7 @@ rec { # Type ``` - mkUint32 :: Int -> gvariant + mkUint32 :: Int -> GVariant ``` */ mkUint32 = mkPrimitive type.uint32; @@ -552,7 +552,7 @@ rec { # Type ``` - mkInt64 :: Int -> gvariant + mkInt64 :: Int -> GVariant ``` */ mkInt64 = mkPrimitive type.int64; @@ -563,7 +563,7 @@ rec { # Type ``` - mkUint64 :: Int -> gvariant + mkUint64 :: Int -> GVariant ``` */ mkUint64 = mkPrimitive type.uint64; @@ -580,7 +580,7 @@ rec { # Type ``` - mkDouble :: Float -> gvariant + mkDouble :: Float -> GVariant ``` */ mkDouble = diff --git a/lib/lists.nix b/lib/lists.nix index 41eba34f93c5..abd9aceed0e3 100644 --- a/lib/lists.nix +++ b/lib/lists.nix @@ -261,7 +261,7 @@ rec { # Type ``` - foldl' :: (acc -> x -> acc) -> acc -> [x] -> acc + foldl' :: (a -> b -> a) -> a -> [b] -> a ``` # Examples @@ -298,7 +298,7 @@ rec { # Type ``` - imap0 :: (int -> a -> b) -> [a] -> [b] + imap0 :: (Int -> a -> b) -> [a] -> [b] ``` # Examples @@ -330,7 +330,7 @@ rec { # Type ``` - imap1 :: (int -> a -> b) -> [a] -> [b] + imap1 :: (Int -> a -> b) -> [a] -> [b] ``` # Examples @@ -372,7 +372,7 @@ rec { # Type ``` - ifilter0 :: (int -> a -> bool) -> [a] -> [a] + ifilter0 :: (Int -> a -> Bool) -> [a] -> [a] ``` # Examples @@ -423,6 +423,12 @@ rec { : 1\. Function argument + # Type + + ``` + flatten :: [a | [a | [a | ...]]] -> [a] + ``` + # Examples :::{.example} ## `lib.lists.flatten` usage example @@ -498,7 +504,7 @@ rec { # Type ``` - findSingle :: (a -> bool) -> a -> a -> [a] -> a + findSingle :: (a -> Bool) -> a -> a -> [a] -> a ``` # Examples @@ -620,7 +626,7 @@ rec { # Type ``` - findFirst :: (a -> bool) -> a -> [a] -> a + findFirst :: (a -> Bool) -> a -> [a] -> a ``` # Examples @@ -660,7 +666,7 @@ rec { # Type ``` - any :: (a -> bool) -> [a] -> bool + any :: (a -> Bool) -> [a] -> Bool ``` # Examples @@ -695,7 +701,7 @@ rec { # Type ``` - all :: (a -> bool) -> [a] -> bool + all :: (a -> Bool) -> [a] -> Bool ``` # Examples @@ -726,7 +732,7 @@ rec { # Type ``` - count :: (a -> bool) -> [a] -> int + count :: (a -> Bool) -> [a] -> Int ``` # Examples @@ -760,7 +766,7 @@ rec { # Type ``` - optional :: bool -> a -> [a] + optional :: Bool -> a -> [a] ``` # Examples @@ -794,7 +800,7 @@ rec { # Type ``` - optionals :: bool -> [a] -> [a] + optionals :: Bool -> [a] -> [a] ``` # Examples @@ -823,6 +829,12 @@ rec { : 1\. Function argument + # Type + + ``` + toList :: (a | [a]) -> [a] + ``` + # Examples :::{.example} ## `lib.lists.toList` usage example @@ -854,7 +866,7 @@ rec { # Type ``` - range :: int -> int -> [int] + range :: Int -> Int -> [Int] ``` # Examples @@ -888,7 +900,7 @@ rec { # Type ``` - replicate :: int -> a -> [a] + replicate :: Int -> a -> [a] ``` # Examples @@ -923,7 +935,7 @@ rec { # Type ``` - (a -> bool) -> [a] -> { right :: [a]; wrong :: [a]; } + partition :: (a -> Bool) -> [a] -> { right :: [a]; wrong :: [a]; } ``` # Examples @@ -962,6 +974,12 @@ rec { : 4\. Function argument + # Type + + ``` + groupBy' :: (a -> b -> a) -> a -> (b -> String) -> [b] -> { [String] :: a } + ``` + # Examples :::{.example} ## `lib.lists.groupBy'` usage example @@ -1128,6 +1146,12 @@ rec { : 3\. Function argument + # Type + + ``` + listDfs :: Bool -> (a -> a -> Bool) -> [a] -> ({ minimal :: a; visited :: [a]; rest :: [a]; } | { cycle :: a; loops :: [a]; visited :: [a]; rest :: [a]; }) + ``` + # Examples :::{.example} ## `lib.lists.listDfs` usage example @@ -1193,6 +1217,12 @@ rec { : 2\. Function argument + # Type + + ``` + toposort :: (a -> a -> Bool) -> [a] -> ({ result :: [a]; } | { cycle :: [a]; loops :: [a]; }) + ``` + # Examples :::{.example} ## `lib.lists.toposort` usage example @@ -1364,6 +1394,12 @@ rec { : The second list + # Type + + ``` + compareLists :: (a -> a -> Int) -> [a] -> [a] -> Int + ``` + # Examples :::{.example} ## `lib.lists.compareLists` usage examples @@ -1403,6 +1439,12 @@ rec { : 1\. Function argument + # Type + + ``` + naturalSort :: [String] -> [String] + ``` + # Examples :::{.example} ## `lib.lists.naturalSort` usage example @@ -1446,7 +1488,7 @@ rec { # Type ``` - take :: int -> [a] -> [a] + take :: Int -> [a] -> [a] ``` # Examples @@ -1480,7 +1522,7 @@ rec { # Type ``` - takeEnd :: int -> [a] -> [a] + takeEnd :: Int -> [a] -> [a] ``` # Examples @@ -1514,7 +1556,7 @@ rec { # Type ``` - drop :: int -> [a] -> [a] + drop :: Int -> [a] -> [a] ``` # Examples @@ -1582,7 +1624,7 @@ rec { # Type ``` - hasPrefix :: [a] -> [a] -> bool + hasPrefix :: [a] -> [a] -> Bool ``` # Examples @@ -1661,7 +1703,7 @@ rec { # Type ``` - sublist :: int -> int -> [a] -> [a] + sublist :: Int -> Int -> [a] -> [a] ``` # Examples @@ -1879,7 +1921,7 @@ rec { # Type ``` - uniqueStrings :: [ String ] -> [ String ] + uniqueStrings :: [String] -> [String] ``` # Examples @@ -1907,7 +1949,7 @@ rec { # Type ``` - allUnique :: [a] -> bool + allUnique :: [a] -> Bool ``` # Examples @@ -1940,6 +1982,12 @@ rec { : Second list + # Type + + ``` + intersectLists :: [a] -> [a] -> [a] + ``` + # Examples :::{.example} ## `lib.lists.intersectLists` usage example @@ -1968,6 +2016,12 @@ rec { : Second list + # Type + + ``` + subtractLists :: [a] -> [a] -> [a] + ``` + # Examples :::{.example} ## `lib.lists.subtractLists` usage example @@ -1994,6 +2048,12 @@ rec { `b` : 2\. Function argument + + # Type + + ``` + mutuallyExclusive :: [a] -> [a] -> Bool + ``` */ mutuallyExclusive = a: b: length a == 0 || !(any (x: elem x a) b); @@ -2007,6 +2067,12 @@ rec { : Attribute set with attributes that are lists + # Type + + ``` + concatAttrValues :: { [String] :: [a] } -> [a] + ``` + # Examples :::{.example} ## `lib.concatAttrValues` usage example @@ -2037,7 +2103,7 @@ rec { # Type ``` - replaceElemAt :: [a] -> int - b -> [a] + replaceElemAt :: [a] -> Int -> a -> [a] ``` # Examples diff --git a/lib/meta.nix b/lib/meta.nix index 62b40344c46b..5c4627e3cec7 100644 --- a/lib/meta.nix +++ b/lib/meta.nix @@ -39,6 +39,12 @@ rec { : 2\. Function argument + # Type + + ``` + addMetaAttrs :: AttrSet -> Derivation -> Derivation + ``` + # Examples :::{.example} ## `lib.meta.addMetaAttrs` usage example @@ -66,6 +72,12 @@ rec { `drv` : 1\. Function argument + + # Type + + ``` + dontDistribute :: Derivation -> Derivation + ``` */ dontDistribute = drv: addMetaAttrs { hydraPlatforms = [ ]; } drv; @@ -85,6 +97,12 @@ rec { `drv` : 2\. Function argument + + # Type + + ``` + setName :: String -> Derivation -> Derivation + ``` */ setName = name: drv: drv // { inherit name; }; @@ -101,6 +119,12 @@ rec { : 2\. Function argument + # Type + + ``` + updateName :: (String -> String) -> Derivation -> Derivation + ``` + # Examples :::{.example} ## `lib.meta.updateName` usage example @@ -122,6 +146,12 @@ rec { `suffix` : 1\. Function argument + + # Type + + ``` + appendToName :: String -> Derivation -> Derivation + ``` */ appendToName = suffix: @@ -145,6 +175,12 @@ rec { `set` : 2\. Function argument + + # Type + + ``` + mapDerivationAttrset :: (Derivation -> a) -> AttrSet -> AttrSet + ``` */ mapDerivationAttrset = f: set: lib.mapAttrs (name: pkg: if lib.isDerivation pkg then (f pkg) else pkg) set; @@ -164,6 +200,12 @@ rec { `drv` : 2\. Function argument + + # Type + + ``` + setPrio :: Int -> Derivation -> Derivation + ``` */ setPrio = priority: addMetaAttrs { inherit priority; }; @@ -176,6 +218,12 @@ rec { `drv` : 1\. Function argument + + # Type + + ``` + lowPrio :: Derivation -> Derivation + ``` */ lowPrio = setPrio 10; @@ -187,6 +235,12 @@ rec { `set` : 1\. Function argument + + # Type + + ``` + lowPrioSet :: { [String] :: Derivation } -> { [String] :: Derivation } + ``` */ lowPrioSet = set: mapDerivationAttrset lowPrio set; @@ -199,6 +253,12 @@ rec { `drv` : 1\. Function argument + + # Type + + ``` + hiPrio :: Derivation -> Derivation + ``` */ hiPrio = setPrio (-10); @@ -210,6 +270,12 @@ rec { `set` : 1\. Function argument + + # Type + + ``` + hiPrioSet :: { [String] :: Derivation } -> { [String] :: Derivation } + ``` */ hiPrioSet = set: mapDerivationAttrset hiPrio set; @@ -338,7 +404,15 @@ rec { # Type ``` - getLicenseFromSpdxId :: str -> AttrSet + getLicenseFromSpdxId :: String -> { + deprecated :: Bool; + free :: Bool; + fullName :: String; + redistributable :: Bool; + shortName :: String; + spdxId :: String; + url :: String; + } ``` # Examples @@ -383,7 +457,15 @@ rec { # Type ``` - getLicenseFromSpdxIdOr :: str -> Any -> Any + getLicenseFromSpdxIdOr :: String -> a -> ({ + deprecated :: Bool; + free :: Bool; + fullName :: String; + redistributable :: Bool; + shortName :: String; + spdxId :: String; + url :: String; + } | a) ``` # Examples @@ -425,7 +507,7 @@ rec { # Type ``` - getExe :: package -> string + getExe :: Derivation -> StorePath ``` # Examples @@ -471,7 +553,7 @@ rec { # Type ``` - getExe' :: derivation -> string -> string + getExe' :: Derivation -> String -> StorePath ``` # Examples @@ -513,7 +595,7 @@ rec { # Type ``` - cpeFullVersionWithVendor :: string -> string -> AttrSet + cpeFullVersionWithVendor :: String -> String -> { update :: String; vendor :: String; version :: String; } ``` # Examples @@ -568,7 +650,7 @@ rec { # Type ``` - tryCPEPatchVersionInUpdateWithVendor :: string -> string -> AttrSet + tryCPEPatchVersionInUpdateWithVendor :: String -> String -> ({ success = true; value :: { update :: String; vendor :: String; version :: String; }; } | { success = false; error :: String; }) ``` # Examples @@ -639,7 +721,7 @@ rec { # Type ``` - cpePatchVersionInUpdateWithVendor :: string -> string -> AttrSet + cpePatchVersionInUpdateWithVendor :: String -> String -> { update :: String; vendor :: String; version :: String; } ``` # Examples diff --git a/lib/modules.nix b/lib/modules.nix index 6d430effcc89..c67ea2247ca7 100644 --- a/lib/modules.nix +++ b/lib/modules.nix @@ -12,7 +12,6 @@ let concatMap concatStringsSep elem - elemAt filter foldl' functionArgs @@ -1461,7 +1460,7 @@ let # Type ``` - option -> attrsOf { highestPrio, value } + mergeAttrDefinitionsWithPrio :: Option -> { [String] :: { highestPrio :: Int; value :: Any; } } ``` */ mergeAttrDefinitionsWithPrio = diff --git a/lib/network/internal.nix b/lib/network/internal.nix index 20a18e073af5..2e439c15f16c 100644 --- a/lib/network/internal.nix +++ b/lib/network/internal.nix @@ -33,7 +33,7 @@ let the list of strings which then can be parsed using `_parseExpanded`. Throws an error when the address is malformed. - # Type: String -> [ String ] + # Type: String -> [String] # Example: @@ -94,7 +94,7 @@ let functions. Throws an error some element is not an u16 integer. - # Type: [ String ] -> IPv6 + # Type: [String] -> IPv6 # Example: @@ -168,7 +168,7 @@ in prefix length are validated and converted to an internal representation that can be used by other functions. - # Type: String -> [ {address :: IPv6, prefixLength :: Int} ] + # Type: String -> [{ address :: IPv6; prefixLength :: Int; }] # Example: diff --git a/lib/options.nix b/lib/options.nix index 195ba79765e9..c348491f0457 100644 --- a/lib/options.nix +++ b/lib/options.nix @@ -71,7 +71,7 @@ rec { # Type ``` - isOption :: a -> Bool + isOption :: Any -> Bool ``` */ isOption = lib.isType "option"; @@ -258,7 +258,7 @@ rec { # Type ``` - mkPackageOption :: pkgs -> (string|[string]) -> { nullable? :: bool, default? :: string|[string], example? :: null|string|[string], extraDescription? :: string, pkgsText? :: string } -> option + mkPackageOption :: Pkgs -> (String | [String]) -> { nullable? :: Bool; default? :: String | [String]; example? :: Null | String | [String]; extraDescription? :: String; pkgsText? :: String; } -> Option ``` # Examples @@ -525,7 +525,7 @@ rec { # Type ``` - getValues :: [ { value :: a; } ] -> [a] + getValues :: [{ value :: a; ... }] -> [a] ``` # Examples @@ -547,7 +547,7 @@ rec { # Type ``` - getFiles :: [ { file :: a; } ] -> [a] + getFiles :: [{ file :: a; ... }] -> [a] ``` # Examples @@ -885,7 +885,7 @@ rec { # Type ``` - showDefsSep :: { files :: [ String ]; loc :: [ String ]; ... } -> string + showOptionWithDefLocs :: { files :: [String]; loc :: [String]; ... } -> String ``` */ showOptionWithDefLocs = opt: '' diff --git a/lib/path/default.nix b/lib/path/default.nix index 512d65d1978d..60c56948d68e 100644 --- a/lib/path/default.nix +++ b/lib/path/default.nix @@ -115,7 +115,7 @@ let # An empty string is not a valid relative path, so we need to return a `.` when we have no components (if components == [ ] then "." else concatStringsSep "/" components); - # Type: Path -> { root :: Path, components :: [ String ] } + # Type: Path -> { root :: Path; components :: [String]; } # # Deconstruct a path value type into: # - root: The filesystem root of the path, generally `/` @@ -143,7 +143,7 @@ let # The number of store directory components, typically 2 storeDirLength = length storeDirComponents; - # Type: [ String ] -> Bool + # Type: [String] -> Bool # # Whether path components have a store path as a prefix, according to # https://nixos.org/manual/nix/stable/store/store-path.html#store-path. @@ -395,7 +395,7 @@ in # Type ``` - splitRoot :: Path -> { root :: Path, subpath :: String } + splitRoot :: Path -> { root :: Path; subpath :: String; } ``` # Examples @@ -607,7 +607,7 @@ in # Type ``` - subpath.join :: [ String ] -> String + subpath.join :: [String] -> String ``` # Examples @@ -679,7 +679,7 @@ in # Type ``` - subpath.components :: String -> [ String ] + subpath.components :: String -> [String] ``` # Examples diff --git a/lib/sources.nix b/lib/sources.nix index 88943a9fec94..230512bbaa77 100644 --- a/lib/sources.nix +++ b/lib/sources.nix @@ -131,7 +131,7 @@ let # that src.filter is called lazily. # For implementing a filter, see # https://nixos.org/nix/manual/#builtin-filterSource - # Type: A function (path -> type -> bool) + # Type: A function (Path -> Type -> Bool) filter ? _path: _type: true, # Optional name to use as part of the store path. # This defaults to `src.name` or otherwise `"source"`. @@ -158,7 +158,7 @@ let # Type ``` - sources.trace :: sourceLike -> Source + sources.trace :: SourceLike -> Source ``` */ trace = @@ -241,7 +241,7 @@ let # Type ``` - sourceLike -> [String] -> Source + sourceFilesBySuffices :: SourceLike -> [String] -> Source ``` # Examples diff --git a/lib/strings-with-deps.nix b/lib/strings-with-deps.nix index 8fd879df1790..e23003e3e5f9 100644 --- a/lib/strings-with-deps.nix +++ b/lib/strings-with-deps.nix @@ -77,7 +77,7 @@ rec { # Type ``` - textClosureList :: { ${phase} :: { deps :: [String]; text :: String; } | String; } -> [String] -> [String] + textClosureList :: { [String] :: { deps :: [String]; text :: String; } | String; } -> [String] -> [String] ``` # Examples diff --git a/lib/strings.nix b/lib/strings.nix index 3e7f16b48af0..848e61a65ddf 100644 --- a/lib/strings.nix +++ b/lib/strings.nix @@ -56,7 +56,7 @@ rec { # Type ``` - join :: string -> [ string ] -> string + join :: String -> [String] -> String ``` # Examples @@ -78,7 +78,7 @@ rec { # Type ``` - concatStrings :: [string] -> string + concatStrings :: [String] -> String ``` # Examples @@ -108,7 +108,7 @@ rec { # Type ``` - concatMapStrings :: (a -> string) -> [a] -> string + concatMapStrings :: (a -> String) -> [a] -> String ``` # Examples @@ -139,7 +139,7 @@ rec { # Type ``` - concatImapStrings :: (int -> a -> string) -> [a] -> string + concatImapStrings :: (Int -> a -> String) -> [a] -> String ``` # Examples @@ -209,7 +209,7 @@ rec { # Type ``` - concatStringsSep :: string -> [string] -> string + concatStringsSep :: String -> [String] -> String ``` # Examples @@ -244,7 +244,7 @@ rec { # Type ``` - concatMapStringsSep :: string -> (a -> string) -> [a] -> string + concatMapStringsSep :: String -> (a -> String) -> [a] -> String ``` # Examples @@ -280,7 +280,7 @@ rec { # Type ``` - concatIMapStringsSep :: string -> (int -> a -> string) -> [a] -> string + concatIMapStringsSep :: String -> (Int -> a -> String) -> [a] -> String ``` # Examples @@ -316,7 +316,7 @@ rec { # Type ``` - concatMapAttrsStringSep :: String -> (String -> Any -> String) -> AttrSet -> String + concatMapAttrsStringSep :: String -> (String -> a -> String) -> { [String] :: a } -> String ``` # Examples @@ -347,7 +347,7 @@ rec { # Type ``` - concatLines :: [string] -> string + concatLines :: [String] -> String ``` # Examples @@ -380,7 +380,7 @@ rec { # Type ``` - replaceString :: string -> string -> string -> string + replaceString :: String -> String -> String -> String ``` # Examples @@ -413,7 +413,7 @@ rec { # Type ``` - replicate :: int -> string -> string + replicate :: Int -> String -> String ``` # Examples @@ -445,7 +445,7 @@ rec { # Type ``` - trim :: string -> string + trim :: String -> String ``` # Examples @@ -487,7 +487,7 @@ rec { # Type ``` - trimWith :: { start :: Bool; end :: Bool } -> String -> String + trimWith :: { start :: Bool; end :: Bool; } -> String -> String ``` # Examples @@ -548,7 +548,7 @@ rec { # Type ``` - makeSearchPath :: string -> [string] -> string + makeSearchPath :: String -> [String] -> String ``` # Examples @@ -588,7 +588,7 @@ rec { # Type ``` - makeSearchPathOutput :: string -> string -> [package] -> string + makeSearchPathOutput :: String -> String -> [Derivation] -> String ``` # Examples @@ -618,7 +618,7 @@ rec { # Type ``` - makeLibraryPath :: [package] -> string + makeLibraryPath :: [Derivation] -> String ``` # Examples @@ -649,7 +649,7 @@ rec { # Type ``` - makeIncludePath :: [package] -> string + makeIncludePath :: [Derivation] -> String ``` # Examples @@ -680,7 +680,7 @@ rec { # Type ``` - makeBinPath :: [package] -> string + makeBinPath :: [Derivation] -> String ``` # Examples @@ -707,7 +707,7 @@ rec { # Type ``` - normalizePath :: string -> string + normalizePath :: String -> String ``` # Examples @@ -748,7 +748,7 @@ rec { # Type ``` - optionalString :: bool -> string -> string + optionalString :: Bool -> String -> String ``` # Examples @@ -780,7 +780,7 @@ rec { # Type ``` - hasPrefix :: string -> string -> bool + hasPrefix :: String -> String -> Bool ``` # Examples @@ -823,7 +823,7 @@ rec { # Type ``` - hasSuffix :: string -> string -> bool + hasSuffix :: String -> String -> Bool ``` # Examples @@ -869,7 +869,7 @@ rec { # Type ``` - hasInfix :: string -> string -> bool + hasInfix :: String -> String -> Bool ``` # Examples @@ -918,7 +918,7 @@ rec { # Type ``` - stringToCharacters :: string -> [string] + stringToCharacters :: String -> [String] ``` # Examples @@ -953,7 +953,7 @@ rec { # Type ``` - stringAsChars :: (string -> string) -> string -> string + stringAsChars :: (String -> String) -> String -> String ``` # Examples @@ -985,7 +985,7 @@ rec { # Type ``` - charToInt :: string -> int + charToInt :: String -> Int ``` # Examples @@ -1018,7 +1018,7 @@ rec { # Type ``` - escape :: [string] -> string -> string + escape :: [String] -> String -> String ``` # Examples @@ -1050,7 +1050,7 @@ rec { # Type ``` - escapeC = [string] -> string -> string + escapeC :: [String] -> String -> String ``` # Examples @@ -1082,7 +1082,7 @@ rec { # Type ``` - escapeURL :: string -> string + escapeURL :: String -> String ``` # Examples @@ -1184,7 +1184,7 @@ rec { # Type ``` - escapeShellArg :: string -> string + escapeShellArg :: String -> String ``` # Examples @@ -1220,7 +1220,7 @@ rec { # Type ``` - escapeShellArgs :: [string] -> string + escapeShellArgs :: [String] -> String ``` # Examples @@ -1247,7 +1247,7 @@ rec { # Type ``` - string -> bool + isValidPosixName :: String -> Bool ``` # Examples @@ -1287,7 +1287,7 @@ rec { # Type ``` - string -> ( string | [string] | { ${name} :: string; } ) -> string + toShellVar :: String -> (String | [String] | { [String] :: String }) -> String ``` # Examples @@ -1329,8 +1329,8 @@ rec { ``` toShellVars :: { - ${name} :: string | [ string ] | { ${key} :: string; }; - } -> string + [String] :: String | [String] | { [String] :: String }; + } -> String ``` # Examples @@ -1362,7 +1362,7 @@ rec { # Type ``` - escapeNixString :: string -> string + escapeNixString :: String -> String ``` # Examples @@ -1389,7 +1389,7 @@ rec { # Type ``` - escapeRegex :: string -> string + escapeRegex :: String -> String ``` # Examples @@ -1416,7 +1416,7 @@ rec { # Type ``` - escapeNixIdentifier :: string -> string + escapeNixIdentifier :: String -> String ``` # Examples @@ -1467,7 +1467,7 @@ rec { # Type ``` - escapeXML :: string -> string + escapeXML :: String -> String ``` # Examples @@ -1501,7 +1501,7 @@ rec { # Type ``` - toLower :: string -> string + toLower :: String -> String ``` # Examples @@ -1528,7 +1528,7 @@ rec { # Type ``` - toUpper :: string -> string + toUpper :: String -> String ``` # Examples @@ -1555,7 +1555,7 @@ rec { # Type ``` - toSentenceCase :: string -> string + toSentenceCase :: String -> String ``` # Examples @@ -1593,7 +1593,7 @@ rec { # Type ``` - toCamelCase :: string -> string + toCamelCase :: String -> String ``` # Examples @@ -1664,7 +1664,7 @@ rec { # Type ``` - addContextFrom :: string -> string -> string + addContextFrom :: String -> String -> String ``` # Examples @@ -1705,7 +1705,7 @@ rec { # Type ``` - splitString :: string -> string -> [string] + splitString :: String -> String -> [String] ``` # Examples @@ -1759,7 +1759,7 @@ rec { # Type ``` - splitStringBy :: (string -> string -> bool) -> bool -> string -> [string] + splitStringBy :: (String -> String -> Bool) -> Bool -> String -> [String] ``` # Examples @@ -1835,7 +1835,7 @@ rec { # Type ``` - removePrefix :: string -> string -> string + removePrefix :: String -> String -> String ``` # Examples @@ -1886,7 +1886,7 @@ rec { # Type ``` - removeSuffix :: string -> string -> string + removeSuffix :: String -> String -> String ``` # Examples @@ -2125,7 +2125,7 @@ rec { # Type ``` - cmakeOptionType :: string -> string -> string -> string + cmakeOptionType :: String -> String -> String -> String ``` # Examples @@ -2171,7 +2171,7 @@ rec { # Type ``` - cmakeBool :: string -> bool -> string + cmakeBool :: String -> Bool -> String ``` # Examples @@ -2207,7 +2207,7 @@ rec { # Type ``` - cmakeFeature :: string -> string -> string + cmakeFeature :: String -> String -> String ``` # Examples @@ -2242,7 +2242,7 @@ rec { # Type ``` - mesonOption :: string -> string -> string + mesonOption :: String -> String -> String ``` # Examples @@ -2277,7 +2277,7 @@ rec { # Type ``` - mesonBool :: string -> bool -> string + mesonBool :: String -> Bool -> String ``` # Examples @@ -2314,7 +2314,7 @@ rec { # Type ``` - mesonEnable :: string -> bool -> string + mesonEnable :: String -> Bool -> String ``` # Examples @@ -2351,7 +2351,7 @@ rec { # Type ``` - enableFeature :: bool -> string -> string + enableFeature :: Bool -> String -> String ``` # Examples @@ -2391,7 +2391,7 @@ rec { # Type ``` - enableFeatureAs :: bool -> string -> string -> string + enableFeatureAs :: Bool -> String -> String -> String ``` # Examples @@ -2426,7 +2426,7 @@ rec { # Type ``` - withFeature :: bool -> string -> string + withFeature :: Bool -> String -> String ``` # Examples @@ -2465,7 +2465,7 @@ rec { # Type ``` - withFeatureAs :: bool -> string -> string -> string + withFeatureAs :: Bool -> String -> String -> String ``` # Examples @@ -2506,7 +2506,7 @@ rec { # Type ``` - fixedWidthString :: int -> string -> string -> string + fixedWidthString :: Int -> String -> String -> String ``` # Examples @@ -2544,7 +2544,7 @@ rec { # Type ``` - fixedWidthNumber :: int -> int -> string + fixedWidthNumber :: Int -> Int -> String ``` # Examples @@ -2572,7 +2572,7 @@ rec { # Type ``` - floatToString :: float -> string + floatToString :: Float -> String ``` # Examples @@ -2611,7 +2611,7 @@ rec { # Type ``` - isConvertibleWithToString :: a -> bool + isConvertibleWithToString :: Any -> Bool ``` */ isConvertibleWithToString = @@ -2640,7 +2640,7 @@ rec { # Type ``` - isStringLike :: a -> bool + isStringLike :: Any -> Bool ``` */ isStringLike = x: isString x || isPath x || x ? outPath || x ? __toString; @@ -2656,7 +2656,7 @@ rec { # Type ``` - isStorePath :: a -> bool + isStorePath :: Any -> Bool ``` # Examples @@ -2707,7 +2707,7 @@ rec { # Type ``` - toInt :: string -> int + toInt :: String -> Int ``` # Examples @@ -2777,7 +2777,7 @@ rec { # Type ``` - toIntBase10 :: string -> int + toIntBase10 :: String -> Int ``` # Examples @@ -2848,7 +2848,7 @@ rec { # Type ``` - fileContents :: path -> string + fileContents :: Path -> String ``` # Examples @@ -2939,7 +2939,7 @@ rec { # Type ``` - levenshtein :: string -> string -> int + levenshtein :: String -> String -> Int ``` # Examples @@ -2991,7 +2991,7 @@ rec { # Type ``` - commonPrefixLength :: string -> string -> int + commonPrefixLength :: String -> String -> Int ``` */ commonPrefixLength = @@ -3023,7 +3023,7 @@ rec { # Type ``` - commonSuffixLength :: string -> string -> int + commonSuffixLength :: String -> String -> Int ``` */ commonSuffixLength = @@ -3060,7 +3060,7 @@ rec { # Type ``` - levenshteinAtMost :: int -> string -> string -> bool + levenshteinAtMost :: Int -> String -> String -> Bool ``` # Examples diff --git a/lib/systems/architectures.nix b/lib/systems/architectures.nix index 95c9d0da341a..a75344de7971 100644 --- a/lib/systems/architectures.nix +++ b/lib/systems/architectures.nix @@ -554,7 +554,7 @@ rec { # Type ``` - hasInferior :: string -> string -> bool + hasInferior :: String -> String -> Bool ``` # Examples @@ -586,7 +586,7 @@ rec { # Type ``` - canExecute :: string -> string -> bool + canExecute :: String -> String -> Bool ``` # Examples diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 7774c16500d9..cc3be74f86f8 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -47,13 +47,9 @@ let inherit (lib.types) enum - float isType mkOptionType - number setType - string - types ; setTypes = diff --git a/lib/trivial.nix b/lib/trivial.nix index f351fb572fbc..fcd9a8791dcf 100644 --- a/lib/trivial.nix +++ b/lib/trivial.nix @@ -111,7 +111,7 @@ in # Type ``` - pipe :: a -> [] -> + pipe :: a -> [(a -> b) (b -> c) ... (x -> y) (y -> z)] -> z ``` # Examples @@ -200,6 +200,12 @@ in `y` : 2\. Function argument + + # Type + + ``` + or :: Bool -> Bool -> Bool + ``` */ "or" = x: y: x || y; @@ -215,6 +221,12 @@ in `y` : 2\. Function argument + + # Type + + ``` + and :: Bool -> Bool -> Bool + ``` */ and = x: y: x && y; @@ -230,6 +242,12 @@ in `y` : 2\. Function argument + + # Type + + ``` + xor :: bool -> bool -> bool + ``` */ # We explicitly invert the arguments purely as a type assertion. # This is invariant under XOR, so it does not affect the result. @@ -237,6 +255,12 @@ in /** bitwise “not” + + # Type + + ``` + bitNot :: Number -> Number + ``` */ bitNot = builtins.sub (-1); @@ -256,7 +280,7 @@ in # Type ``` - boolToString :: bool -> string + boolToString :: Bool -> String ``` */ boolToString = b: if b then "true" else "false"; @@ -276,7 +300,7 @@ in # Type ``` - boolToYesNo :: bool -> string + boolToYesNo :: Bool -> String ``` */ boolToYesNo = b: if b then "yes" else "no"; @@ -284,12 +308,6 @@ in /** Merge two attribute sets shallowly, right side trumps left - # Type - - ``` - mergeAttrs :: attrs -> attrs -> attrs - ``` - # Inputs `x` @@ -300,6 +318,12 @@ in : Right attribute set (higher precedence for equal keys) + # Type + + ``` + mergeAttrs :: AttrSet -> AttrSet -> AttrSet + ``` + # Examples :::{.example} ## `lib.trivial.mergeAttrs` usage example @@ -364,6 +388,12 @@ in : 2\. Function argument + # Type + + ``` + defaultTo :: a -> (b | Null) -> (b | a) + ``` + # Examples :::{.example} ## `lib.trivial.defaultTo` usage example @@ -394,6 +424,12 @@ in : Argument to check for null before passing it to `f` + # Type + + ``` + mapNullable :: (a -> b) -> (a | Null) -> (b | Null) + ``` + # Examples :::{.example} ## `lib.trivial.mapNullable` usage example @@ -490,7 +526,7 @@ in # Type ``` - revisionWithDefault :: string -> string + revisionWithDefault :: String -> String ``` */ revisionWithDefault = @@ -515,7 +551,7 @@ in # Type ``` - inNixShell :: bool + inNixShell :: Bool ``` */ inNixShell = builtins.getEnv "IN_NIX_SHELL" != ""; @@ -528,7 +564,7 @@ in # Type ``` - inPureEvalMode :: bool + inPureEvalMode :: Bool ``` */ inPureEvalMode = !builtins ? currentSystem; @@ -547,6 +583,12 @@ in `y` : 2\. Function argument + + # Type + + ``` + min :: Number -> Number -> Number + ``` */ min = x: y: if x < y then x else y; @@ -562,6 +604,12 @@ in `y` : 2\. Function argument + + # Type + + ``` + max :: Number -> Number -> Number + ``` */ max = x: y: if x > y then x else y; @@ -578,6 +626,12 @@ in : 2\. Function argument + # Type + + ``` + mod :: Int -> Int -> Int + ``` + # Examples :::{.example} ## `lib.trivial.mod` usage example @@ -611,6 +665,12 @@ in `b` : 2\. Function argument + + # Type + + ``` + compare :: a -> a -> Int + ``` */ compare = a: b: @@ -652,7 +712,7 @@ in # Type ``` - (a -> bool) -> (a -> a -> int) -> (a -> a -> int) -> (a -> a -> int) + splitByAndCompare :: (a -> Bool) -> (a -> a -> Int) -> (a -> a -> Int) -> (a -> a -> Int) ``` # Examples @@ -726,7 +786,7 @@ in # Type ``` - importJSON :: path -> any + importJSON :: Path -> Any ``` */ importJSON = path: builtins.fromJSON (builtins.readFile path); @@ -773,7 +833,7 @@ in # Type ``` - importTOML :: path -> any + importTOML :: Path -> Any ``` */ importTOML = path: fromTOML (builtins.readFile path); @@ -799,7 +859,7 @@ in # Type ``` - String -> a -> a + warn :: String -> a -> a ``` */ warn = @@ -846,7 +906,7 @@ in # Type ``` - Bool -> String -> a -> a + warnIf :: Bool -> String -> a -> a ``` */ warnIf = cond: msg: if cond then warn msg else x: x; @@ -873,7 +933,7 @@ in # Type ``` - Boolean -> String -> a -> a + warnIfNot :: Bool -> String -> a -> a ``` */ warnIfNot = cond: msg: if cond then x: x else warn msg; @@ -902,7 +962,7 @@ in # Type ``` - bool -> string -> a -> a + throwIfNot :: Bool -> String -> a -> (a | Never) ``` # Examples @@ -935,7 +995,7 @@ in # Type ``` - bool -> string -> a -> a + throwIf :: Bool -> String -> a -> (a | Never) ``` */ throwIf = cond: msg: if cond then throw msg else x: x; @@ -960,7 +1020,7 @@ in # Type ``` - String -> List ComparableVal -> List ComparableVal -> a -> a + checkListOfEnum :: String -> [a] -> [a] -> ((b -> b) | Never) ``` # Examples @@ -1000,12 +1060,6 @@ in function of the `{ a, b ? foo, ... }:` format, but some facilities like `callPackage` expect to be able to query expected arguments. - # Type - - ``` - setFunctionArgs : (a -> b) -> Map String Bool -> (a -> b) - ``` - # Inputs `f` @@ -1015,6 +1069,12 @@ in `args` : 2\. Function argument + + # Type + + ``` + setFunctionArgs : (a -> b) -> { [String] :: Bool } -> (a -> b) + ``` */ setFunctionArgs = f: args: { # TODO: Should we add call-time "type" checking like built in? @@ -1028,17 +1088,17 @@ in functions and functions with args set with `setFunctionArgs`. It has the same return type and semantics as `builtins.functionArgs`. - # Type - - ``` - functionArgs : (a -> b) -> Map String Bool - ``` - # Inputs `f` : 1\. Function argument + + # Type + + ``` + functionArgs : (a -> b) -> { [String] :: Bool } + ``` */ functionArgs = f: @@ -1056,6 +1116,12 @@ in `f` : 1\. Function argument + + # Type + + ``` + isFunction : Any -> Bool + ``` */ isFunction = f: builtins.isFunction f || (f ? __functor && isFunction (f.__functor f)); @@ -1178,6 +1244,12 @@ in Convert the given positive integer to a string of its hexadecimal representation. + # Type + + ``` + toHexString :: Int -> String + ``` + # Examples :::{.example} ## `lib.trivial.toHexString` usage example @@ -1219,6 +1291,12 @@ in : 2\. Function argument + # Type + + ``` + toBaseDigits :: Int -> Int -> [Int] + ``` + # Examples :::{.example} ## `lib.trivial.toBaseDigits` diff --git a/lib/versions.nix b/lib/versions.nix index 0073c5669743..5d6c499bca9b 100644 --- a/lib/versions.nix +++ b/lib/versions.nix @@ -8,6 +8,12 @@ rec { /** Break a version string into its component parts. + # Type + + ``` + splitVersion :: String -> [String] + ``` + # Examples :::{.example} ## `splitVersion` usage example @@ -30,6 +36,12 @@ rec { : 1\. Function argument + # Type + + ``` + major :: String -> String + ``` + # Examples :::{.example} ## `major` usage example @@ -52,6 +64,12 @@ rec { : 1\. Function argument + # Type + + ``` + minor :: String -> String + ``` + # Examples :::{.example} ## `minor` usage example @@ -74,6 +92,12 @@ rec { : 1\. Function argument + # Type + + ``` + patch :: String -> String + ``` + # Examples :::{.example} ## `patch` usage example @@ -97,6 +121,12 @@ rec { : 1\. Function argument + # Type + + ``` + majorMinor :: String -> String + ``` + # Examples :::{.example} ## `majorMinor` usage example @@ -123,6 +153,12 @@ rec { : 2\. Function argument + # Type + + ``` + pad :: Int -> String -> String + ``` + # Examples :::{.example} ## `pad` usage example diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index d94d4ffe7ff4..8921c214d0e5 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -25810,6 +25810,13 @@ githubId = 12984845; name = "Subhrajyoti Sen"; }; + Subserial = { + email = "me@subserial.website"; + github = "Subserial"; + githubId = 25187940; + matrix = "@me:subserial.website"; + name = "Subserial"; + }; sudo-mac = { email = "dreems2reality@gmail.com"; github = "sudo-mac"; diff --git a/nixos/modules/config/locale.nix b/nixos/modules/config/locale.nix index 395a25f537be..8fe61ca6cb22 100644 --- a/nixos/modules/config/locale.nix +++ b/nixos/modules/config/locale.nix @@ -96,6 +96,15 @@ in // lib.optionalAttrs (config.time.timeZone != null) { localtime.source = "/etc/zoneinfo/${config.time.timeZone}"; localtime.mode = "direct-symlink"; + } + // lib.optionalAttrs config.time.hardwareClockInLocalTime { + # Mirrors timedated + # https://github.com/systemd/systemd/blob/afaca649ad678031a46182b0cce667cbbbf47a6d/src/timedate/timedated.c#L325-L396 + adjtime.text = '' + 0.0 0 0 + 0 + LOCAL + ''; }; }; diff --git a/nixos/modules/config/nsswitch.nix b/nixos/modules/config/nsswitch.nix index 354c506e0ae8..797d2422e27c 100644 --- a/nixos/modules/config/nsswitch.nix +++ b/nixos/modules/config/nsswitch.nix @@ -97,6 +97,30 @@ ''; default = [ ]; }; + + subuid = lib.mkOption { + type = lib.types.listOf lib.types.str; + description = '' + List of subuid entries to configure in {file}`/etc/nsswitch.conf`. + + Note that "files" is always prepended. + + This option only takes effect if nscd is enabled. + ''; + default = [ ]; + }; + + subgid = lib.mkOption { + type = lib.types.listOf lib.types.str; + description = '' + List of subgid entries to configure in {file}`/etc/nsswitch.conf`. + + Note that "files" is always prepended. + + This option only takes effect if nscd is enabled. + ''; + default = [ ]; + }; }; }; @@ -133,6 +157,9 @@ services: ${lib.concatStringsSep " " config.system.nssDatabases.services} protocols: files rpc: files + + subuid: ${lib.concatStringsSep " " config.system.nssDatabases.subuid} + subgid: ${lib.concatStringsSep " " config.system.nssDatabases.subgid} ''; system.nssDatabases = { @@ -145,6 +172,8 @@ (lib.mkOrder 1499 [ "dns" ]) ]; services = lib.mkBefore [ "files" ]; + subuid = lib.mkBefore [ "files" ]; + subgid = lib.mkBefore [ "files" ]; }; }; } diff --git a/nixos/modules/config/power-management.nix b/nixos/modules/config/power-management.nix index b5ae488697a2..47b3ad908f0a 100644 --- a/nixos/modules/config/power-management.nix +++ b/nixos/modules/config/power-management.nix @@ -25,6 +25,9 @@ in resumeCommands = lib.mkOption { type = lib.types.lines; default = ""; + example = lib.literalExpression '' + "''${pkgs.util-linux}/bin/rfkill unblock all" + ''; description = "Commands executed after the system resumes from suspend-to-RAM."; }; @@ -32,7 +35,7 @@ in type = lib.types.lines; default = ""; example = lib.literalExpression '' - "''${pkgs.hdparm}/sbin/hdparm -B 255 /dev/sda" + "''${pkgs.powertop}/bin/powertop --auto-tune" ''; description = '' Commands executed when the machine powers up. That is, @@ -54,6 +57,18 @@ in ''; }; + bootCommands = lib.mkOption { + type = lib.types.lines; + default = ""; + example = lib.literalExpression '' + "''${pkgs.networkmanager}/bin/nmcli radio wifi on" + ''; + description = '' + Commands executed only once after initial boot. + These commands are executed before `powerUpCommands`. + ''; + }; + }; }; @@ -83,42 +98,59 @@ in unitConfig.StopWhenUnneeded = true; }; - # Service executed before suspending/hibernating. - systemd.services.pre-sleep = { - description = "Pre-Sleep Actions"; - wantedBy = [ "sleep.target" ]; - before = [ "sleep.target" ]; - script = '' - ${cfg.powerDownCommands} - ''; - serviceConfig.Type = "oneshot"; - }; - - systemd.services.post-boot = { - description = "Post-boot Actions"; - # It's not well defined at what point in the bootup sequence this should run - # we should eventually just remove this. - wantedBy = [ "multi-user.target" ]; - restartIfChanged = false; - serviceConfig = { - Type = "oneshot"; - RemainAfterExit = true; + systemd.services = { + # Service executed before suspending/hibernating. + pre-sleep = { + description = "Pre-Sleep Actions"; + wantedBy = [ "sleep.target" ]; + before = [ "sleep.target" ]; + script = cfg.powerDownCommands; + serviceConfig.Type = "oneshot"; }; - script = '' - ${cfg.powerUpCommands} - ''; - }; - systemd.services.post-resume = { - description = "Post-Resume Actions"; - # Pulled in by post-resume.service above - after = [ "sleep.target" ]; - script = '' - /run/current-system/systemd/bin/systemctl try-restart --no-block post-resume.target - ${cfg.resumeCommands} - ${cfg.powerUpCommands} - ''; - serviceConfig.Type = "oneshot"; + # Service executed after resuming from suspend/hibernate + post-resume = { + description = "Post-Resume Actions"; + # Pulled in by post-resume.service above + after = [ "sleep.target" ]; + script = '' + /run/current-system/systemd/bin/systemctl try-restart --no-block post-resume.target + ${cfg.resumeCommands} + ${cfg.powerUpCommands} + ''; + serviceConfig.Type = "oneshot"; + }; + + # Service executed before shutdown + pre-shutdown = { + description = "Pre-Shutdown Actions"; + wantedBy = [ + "shutdown.target" + ]; + before = [ + "shutdown.target" + ]; + script = cfg.powerDownCommands; + serviceConfig.Type = "oneshot"; + unitConfig.DefaultDependencies = false; + }; + + # Service executed after boot + post-boot = { + description = "Post-Boot Actions"; + # It's not well defined at what point in the bootup sequence this should run + # we should eventually just remove this. + wantedBy = [ "multi-user.target" ]; + restartIfChanged = false; + script = '' + ${cfg.bootCommands} + ${cfg.powerUpCommands} + ''; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = true; + }; + }; }; }; diff --git a/nixos/modules/security/ipa.nix b/nixos/modules/security/ipa.nix index b9ed5ff36bf7..0951cc0d262d 100644 --- a/nixos/modules/security/ipa.nix +++ b/nixos/modules/security/ipa.nix @@ -307,6 +307,7 @@ in allowed_uids = lib.concatStringsSep ", " cfg.ifpAllowedUids; }; }; + subIDsIntegration = true; }; networking.timeServers = lib.optional cfg.useAsTimeserver cfg.server; diff --git a/nixos/modules/services/misc/sssd.nix b/nixos/modules/services/misc/sssd.nix index e863b337a32e..62c70ed4317c 100644 --- a/nixos/modules/services/misc/sssd.nix +++ b/nixos/modules/services/misc/sssd.nix @@ -93,6 +93,15 @@ in Kerberos will be configured to cache credentials in SSS. ''; }; + + subIDsIntegration = lib.mkOption { + type = lib.types.bool; + default = false; + description = '' + Whether to use SSS as a source for subuid and subgid. + ''; + }; + environmentFile = lib.mkOption { type = lib.types.nullOr lib.types.path; default = null; @@ -236,6 +245,11 @@ in services.openssh.authorizedKeysCommand = "/etc/ssh/authorized_keys_command"; services.openssh.authorizedKeysCommandUser = "nobody"; }) + + (lib.mkIf cfg.subIDsIntegration { + system.nssDatabases.subuid = [ "sss" ]; + system.nssDatabases.subgid = [ "sss" ]; + }) ]; meta.maintainers = with lib.maintainers; [ bbigras ]; diff --git a/nixos/modules/services/networking/ntp/chrony.nix b/nixos/modules/services/networking/ntp/chrony.nix index a79599076502..f9c92768b63a 100644 --- a/nixos/modules/services/networking/ntp/chrony.nix +++ b/nixos/modules/services/networking/ntp/chrony.nix @@ -264,11 +264,6 @@ in services.timesyncd.enable = lib.mkForce false; - # If chrony controls and tracks the RTC, writing it externally causes clock error. - systemd.services.save-hwclock = lib.mkIf cfg.enableRTCTrimming { - enable = lib.mkForce false; - }; - systemd.services.systemd-timedated.environment = { SYSTEMD_TIMEDATED_NTP_SERVICES = "chronyd.service"; }; diff --git a/nixos/modules/system/boot/shutdown.nix b/nixos/modules/system/boot/shutdown.nix index 3d5ee0d06e54..3441cbd4e1da 100644 --- a/nixos/modules/system/boot/shutdown.nix +++ b/nixos/modules/system/boot/shutdown.nix @@ -1,33 +1,10 @@ { config, - lib, - pkgs, ... }: { - # This unit saves the value of the system clock to the hardware - # clock on shutdown. - systemd.services.save-hwclock = { - description = "Save Hardware Clock"; - - wantedBy = [ "shutdown.target" ]; - - unitConfig = { - DefaultDependencies = false; - ConditionPathExists = "/dev/rtc"; - ConditionPathIsReadWrite = "/etc/"; - }; - - serviceConfig = { - Type = "oneshot"; - ExecStart = "${pkgs.util-linux}/sbin/hwclock --systohc ${ - if config.time.hardwareClockInLocalTime then "--localtime" else "--utc" - }"; - }; - }; - boot.kernel.sysctl."kernel.poweroff_cmd" = "${config.systemd.package}/sbin/poweroff"; } diff --git a/pkgs/applications/editors/emacs/elisp-packages/update-from-overlay.py b/pkgs/applications/editors/emacs/elisp-packages/update-from-overlay.py index cf8a9a47bf1e..79824c322620 100755 --- a/pkgs/applications/editors/emacs/elisp-packages/update-from-overlay.py +++ b/pkgs/applications/editors/emacs/elisp-packages/update-from-overlay.py @@ -1,6 +1,10 @@ #!/usr/bin/env nix-shell #! nix-shell -i python3 -p nix git +# linter: ruff check update-from-overlay.py +# formatter: ruff format update-from-overlay.py +# type-checker: mypy update-from-overlay.py + import argparse import contextlib import dataclasses @@ -10,245 +14,256 @@ import os import pathlib import shutil import subprocess -import sys import urllib.request + @dataclasses.dataclass class EmacsOverlay: - git_url : str = f'https://github.com/nix-community/emacs-overlay' - raw_url : str = f'https://raw.githubusercontent.com/nix-community/emacs-overlay' + git_url: str = "https://github.com/nix-community/emacs-overlay" + raw_url: str = "https://raw.githubusercontent.com/nix-community/emacs-overlay" # The field declaration here is a hack around the error: # ValueError: mutable default for field elisp_packages_set is not allowed: use default_factory # See more at https://peps.python.org/pep-0557/#mutable-default-values - elisp_packages_set : dict[str, dict] = dataclasses.field(default_factory = lambda: { - 'elpa': { - 'location': 'repos/elpa', - 'basename': 'elpa-generated.nix', - 'nix_attrs': ['elpaPackages'] - }, - 'elpa-devel': { - 'location': 'repos/elpa', - 'basename': 'elpa-devel-generated.nix', - 'nix_attrs': ['elpaDevelPackages'] - }, - 'melpa': { - 'location': 'repos/melpa', - 'basename': 'recipes-archive-melpa.json', - 'nix_attrs': ['melpaPackages', - 'melpaStablePackages'] - }, - 'nongnu': { - 'location': 'repos/nongnu', - 'basename': 'nongnu-generated.nix', - 'nix_attrs': ['nongnuPackages'] - }, - 'nongnu-devel': { - 'location': 'repos/nongnu', - 'basename': 'nongnu-devel-generated.nix', - 'nix_attrs': ['nongnuDevelPackages'] - }, - }) + elisp_packages_set: dict[str, dict] = dataclasses.field( + default_factory=lambda: { + "elpa": { + "location": "repos/elpa", + "basename": "elpa-generated.nix", + "nix_attrs": ["elpaPackages"], + }, + "elpa-devel": { + "location": "repos/elpa", + "basename": "elpa-devel-generated.nix", + "nix_attrs": ["elpaDevelPackages"], + }, + "melpa": { + "location": "repos/melpa", + "basename": "recipes-archive-melpa.json", + "nix_attrs": ["melpaPackages", "melpaStablePackages"], + }, + "nongnu": { + "location": "repos/nongnu", + "basename": "nongnu-generated.nix", + "nix_attrs": ["nongnuPackages"], + }, + "nongnu-devel": { + "location": "repos/nongnu", + "basename": "nongnu-devel-generated.nix", + "nix_attrs": ["nongnuDevelPackages"], + }, + } + ) - def master_sha (self) -> str: - '''Return the SHA of current master tip.''' - cmdline = ['git', 'ls-remote', '--branches', self.git_url, 'refs/heads/master'] - result = subprocess.run(cmdline, capture_output = True, text = True) + def master_sha(self) -> str: + """Return the SHA of current master tip.""" + cmdline = ["git", "ls-remote", "--branches", self.git_url, "refs/heads/master"] + result = subprocess.run(cmdline, capture_output=True, text=True, check=True) return result.stdout.split()[0] + @dataclasses.dataclass class HereDirectory: - path : pathlib.Path = pathlib.Path('.').resolve() + path: pathlib.Path = pathlib.Path(__file__).resolve().parent def git_root(self) -> pathlib.Path: - '''Returns the root directory of Git repository.''' - cmdline = ['git', 'rev-parse', '--show-toplevel'] - result = subprocess.run(cmdline, capture_output = True, text = True) + """Returns the root directory of Git repository.""" + cmdline = ["git", "rev-parse", "--show-toplevel"] + result = subprocess.run(cmdline, capture_output=True, text=True, check=True) return pathlib.Path(result.stdout.rstrip()).resolve() -def main (emacs_overlay : EmacsOverlay, - here_directory : HereDirectory, - argument_parser : argparse.ArgumentParser) -> None: - '''The entry point.''' + +def main( + emacs_overlay: EmacsOverlay, + git_root: pathlib.Path, + argument_parser: argparse.ArgumentParser, +) -> None: + """The entry point.""" args = argument_parser.parse_args() - if args.commit == None: + if args.commit is None: sha = emacs_overlay.master_sha() else: sha = args.commit match args.loglevel.lower(): - case 'debug': + case "debug": loglevel = logging.DEBUG - case 'info': + case "info": loglevel = logging.INFO case _: loglevel = logging.INFO - logger = get_logger(loglevel = loglevel) + logging.basicConfig( + level=loglevel, + format="%(asctime)s - %(levelname)s - %(funcName)s - %(message)s", + datefmt="[%Y-%m-%d %H:%M:%S]", + ) - datestring = datetime.datetime.today().strftime('%Y-%m-%d') + datestring = datetime.datetime.today().strftime("%Y-%m-%d") # The loops are decoupled because each phase interferes with the next ones; # e.g. it is pretty possible that an Elisp package updated in fetch_fileset # breaks the check because of another Elisp package. for name in emacs_overlay.elisp_packages_set: - fetch_fileset(name, sha, - emacs_overlay = emacs_overlay, - here_directory = here_directory, - logger = logger) + fetch_fileset( + name, + sha, + emacs_overlay=emacs_overlay, + ) for name in emacs_overlay.elisp_packages_set: - check_fileset(name, - emacs_overlay = emacs_overlay, - here_directory = here_directory, - logger = logger) + check_fileset( + name, + emacs_overlay=emacs_overlay, + git_root=git_root, + ) for name in emacs_overlay.elisp_packages_set: - commit_fileset(name, sha, datestring = datestring, - emacs_overlay = emacs_overlay, - here_directory = here_directory, - logger = logger) + commit_fileset( + name, + sha, + datestring=datestring, + emacs_overlay=emacs_overlay, + ) + def get_argument_parser() -> argparse.ArgumentParser: - '''Return a getopt-style parser for command-line arguments.''' + """Return a getopt-style parser for command-line arguments.""" parser = argparse.ArgumentParser( - description = 'Fetch and commit Elisp package sets from nix-community/emacs-overlay', + description="Fetch and commit Elisp package sets from nix-community/emacs-overlay", + formatter_class=argparse.ArgumentDefaultsHelpFormatter, ) parser.add_argument( - '--commit', - help = 'Commit to be fetched, in SHA format. If not specified, retrieve the master tip.', - default = None + "--commit", + help="Commit to be fetched, in SHA format. If not specified, retrieve the master tip.", ) parser.add_argument( - '--loglevel', - help = 'Level of noisiness of logging messages. Values currently supported: INFO (default), DEBUG.', - default = 'InFo' + "--loglevel", + help="Level of noisiness of logging messages.", + default="INFO", + choices=["INFO", "DEBUG"], ) return parser -def get_logger (loglevel: int) -> logging.Logger: - '''Return a basic logging facility to emit messages over console (stdout).''' - logger = logging.getLogger('update-from-overlay') - # Set the lowest level here, so that it does not clobber the one provided by - # the function argument - logger.setLevel(logging.DEBUG) - console_formatter = logging.Formatter(fmt='%(asctime)s - %(levelname)s - %(funcName)s - %(message)s', - datefmt='[%Y-%m-%d %H:%M:%S]') - - console_handler = logging.StreamHandler(stream = sys.stdout) - console_handler.setLevel(loglevel) - console_handler.setFormatter(console_formatter) - - logger.addHandler(console_handler) - - return logger - -def fetch_fileset (name: str, sha: str, - emacs_overlay : EmacsOverlay, - here_directory : HereDirectory, - logger : logging.Logger) -> None: - '''Fetch a fileset from emacs overlay. +def fetch_fileset( + name: str, + sha: str, + emacs_overlay: EmacsOverlay, +) -> None: + """Fetch a fileset from emacs overlay. Arguments: name -- The name of fileset. sha -- The commit SHA of emacs-overlay from which the files are retrieved. - ''' - logger.debug('BEGIN') + """ + logging.debug("BEGIN") - location = emacs_overlay.elisp_packages_set[name]['location'] - basename = emacs_overlay.elisp_packages_set[name]['basename'] - url = f'{emacs_overlay.raw_url}/{sha}/{location}/{basename}' + location = emacs_overlay.elisp_packages_set[name]["location"] + basename = emacs_overlay.elisp_packages_set[name]["basename"] + url = f"{emacs_overlay.raw_url}/{sha}/{location}/{basename}" - destination = pathlib.Path(here_directory.path, basename).resolve() + logging.debug(f"Getting {url}") - logger.debug(f'Getting {url}') - - with urllib.request.urlopen (url) as input_stream, open(destination, 'wb') as output_file: - logger.info(f'Installing {destination}') + with ( + urllib.request.urlopen(url) as input_stream, + open(basename, "wb") as output_file, + ): + logging.info(f"Installing {basename}") shutil.copyfileobj(input_stream, output_file) - logger.debug('END') + logging.debug("END") -def check_fileset (name: str, - emacs_overlay : EmacsOverlay, - here_directory : HereDirectory, - logger : logging.Logger) -> None: - '''Smoke-test the fileset. + +def check_fileset( + name: str, + emacs_overlay: EmacsOverlay, + git_root: pathlib.Path, +) -> None: + """Smoke-test the fileset. Arguments: name -- The name of fileset. - ''' - logger.debug('BEGIN') + """ + logging.debug("BEGIN") - for nix_attr in emacs_overlay.elisp_packages_set[name]['nix_attrs']: + for nix_attr in emacs_overlay.elisp_packages_set[name]["nix_attrs"]: + cmdline = [ + "nix-instantiate", + "--show-trace", + str(git_root), + "-A", + f"emacsPackages.{nix_attr}", + ] + env = os.environ.copy() + env["NIXPKGS_ALLOW_BROKEN"] = "1" - cmdline = ['nix-instantiate', '--show-trace', here_directory.git_root(), - '-A', f'emacsPackages.{nix_attr}'] - environment = os.environ - environment['NIXPKGS_ALLOW_BROKEN'] = '1' - - logger.info(f'Testing {nix_attr}') - # TODO: capture the output (to put it in the logfile). - result = subprocess.run(cmdline, capture_output = True, text = True) - logger.debug(f''' + logging.info(f"Testing {nix_attr}") + result = subprocess.run( + cmdline, capture_output=True, text=True, check=True, env=env + ) + logging.debug(f""" Shell Command: {result.args} Output: -{result.stdout}''') +{result.stdout}""") - logger.debug('END') + logging.debug("END") -def commit_fileset (name: str, sha: str, datestring : str | None, - emacs_overlay : EmacsOverlay, - here_directory : HereDirectory, - logger : logging.Logger) -> None: - '''Commit the fileset. + +def commit_fileset( + name: str, + sha: str, + datestring: str, + emacs_overlay: EmacsOverlay, +) -> None: + """Commit the fileset. Arguments: name -- The name of fileset. sha -- The commit SHA of emacs-overlay from which the files are retrieved. - datestring -- The date to be written on commit message. If None, use the current time. - ''' - logger.debug('BEGIN') + datestring -- The date to be written on commit message. + """ + logging.debug("BEGIN") - nix_attrs = emacs_overlay.elisp_packages_set[name]['nix_attrs'] - basename = emacs_overlay.elisp_packages_set[name]['basename'] + nix_attrs = emacs_overlay.elisp_packages_set[name]["nix_attrs"] + basename = emacs_overlay.elisp_packages_set[name]["basename"] - if datestring == None: - datestring = datetime.datetime.today().strftime('%Y-%m-%d') - logger.debug(f'Date string not provided, using {datestring}') - else: - logger.debug(f'Date string was provided: {datestring}') + logging.debug(f"Date: {datestring}") - cmdline_verify = ['git', 'diff', '--exit-code', '--quiet', '--', basename] + cmdline_verify = ["git", "diff", "--quiet", "--", basename] result_verify = subprocess.run(cmdline_verify) if result_verify.returncode != 0: - attrs = ', '.join(nix_attrs) - commit_message = f'''{attrs}: Updated at {datestring} (from emacs-overlay) + attrs = ", ".join(nix_attrs) + commit_message = f"""{attrs}: update on {datestring} (from emacs-overlay) emacs-overlay commit: {sha} -''' - cmdline_commit = ['git', 'commit', '--message', commit_message, '--', basename] - result_commit = subprocess.run(cmdline_commit, capture_output = True, text = True) - logger.info(f'File {basename} committed') - logger.debug(f''' +""" + cmdline_commit = ["git", "commit", "--message", commit_message, "--", basename] + result_commit = subprocess.run( + cmdline_commit, capture_output=True, text=True, check=True + ) + logging.info(f"File {basename} committed") + logging.debug(f""" Shell Command: {result_commit.args} Output: -{result_commit.stdout}''') +{result_commit.stdout}""") else: - logger.info(f'File {basename} not modified, skipping') + logging.info(f"File {basename} not modified, skipping") - logger.debug('END') + logging.debug("END") -if __name__ == '__main__': + +if __name__ == "__main__": emacs_overlay = EmacsOverlay() here_directory = HereDirectory() argument_parser = get_argument_parser() with contextlib.chdir(here_directory.path): - main(emacs_overlay = emacs_overlay, - here_directory = here_directory, - argument_parser = argument_parser) + main( + emacs_overlay=emacs_overlay, + git_root=here_directory.git_root(), + argument_parser=argument_parser, + ) diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 2cd39e4943cc..08c7322049ba 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1049,11 +1049,11 @@ "vendorHash": null }, "oracle_oci": { - "hash": "sha256-fBHwWw8NtjzgQISUuLB6eY6S3SlMbwyXPmt+suMezHA=", + "hash": "sha256-3gDOKRaZzsqFj8DOK8rug43nvU3kE6KAGcYy/ky4o0o=", "homepage": "https://registry.terraform.io/providers/oracle/oci", "owner": "oracle", "repo": "terraform-provider-oci", - "rev": "v8.2.0", + "rev": "v8.3.0", "spdx": "MPL-2.0", "vendorHash": null }, diff --git a/pkgs/applications/radio/gnuradio/wrapper.nix b/pkgs/applications/radio/gnuradio/wrapper.nix index d555d23e2fc4..4afa3cca6afc 100644 --- a/pkgs/applications/radio/gnuradio/wrapper.nix +++ b/pkgs/applications/radio/gnuradio/wrapper.nix @@ -56,6 +56,7 @@ ], # Allow to add whatever you want to the wrapper extraMakeWrapperArgs ? [ ], + packageOverrides ? (self: super: { }), }: let @@ -191,7 +192,12 @@ let ); packages = import ../../../top-level/gnuradio-packages.nix { - inherit lib stdenv newScope; + inherit + lib + stdenv + newScope + packageOverrides + ; gnuradio = unwrapped; }; passthru = unwrapped.passthru // { diff --git a/pkgs/build-support/compress-drv/default.nix b/pkgs/build-support/compress-drv/default.nix index d45c556fcb54..99eec034fb07 100644 --- a/pkgs/build-support/compress-drv/default.nix +++ b/pkgs/build-support/compress-drv/default.nix @@ -31,7 +31,7 @@ # Type ``` - compressDrv :: Derivation -> { formats :: [ String ]; compressors :: { ${fileExtension} :: String; } } -> Derivation + compressDrv :: Derivation -> { formats :: [String]; compressors :: { ${fileExtension} :: String; } } -> Derivation ``` # Examples diff --git a/pkgs/build-support/compress-drv/web.nix b/pkgs/build-support/compress-drv/web.nix index 17deb1c0e3bd..916409faac4f 100644 --- a/pkgs/build-support/compress-drv/web.nix +++ b/pkgs/build-support/compress-drv/web.nix @@ -23,7 +23,7 @@ : See compressDrv for details. - `extraFormats` ([ String ]) + `extraFormats` ([String]) : Extra extensions to compress in addition to `formats`. @@ -34,7 +34,7 @@ # Type ``` - compressDrvWeb :: Derivation -> { formats :: [ String ]; extraFormats :: [ String ]; compressors :: { ${fileExtension} :: String; } } -> Derivation + compressDrvWeb :: Derivation -> { formats :: [String]; extraFormats :: [String]; compressors :: { ${fileExtension} :: String; } } -> Derivation ``` # Examples diff --git a/pkgs/build-support/setup-systemd-units.nix b/pkgs/build-support/setup-systemd-units.nix index e9b89df87f07..0dcf320733e8 100644 --- a/pkgs/build-support/setup-systemd-units.nix +++ b/pkgs/build-support/setup-systemd-units.nix @@ -13,7 +13,7 @@ }: { units, - # : AttrSet String (Either Path { path : Path, wanted-by : [ String ] }) + # : { [String] :: Path | { path :: Path; wanted-by :: [String]; } } # ^ A set whose names are unit names and values are # either paths to the corresponding unit files or a set # containing the path and the list of units this unit diff --git a/pkgs/build-support/writers/scripts.nix b/pkgs/build-support/writers/scripts.nix index 9987031a047b..43880c62ccaf 100644 --- a/pkgs/build-support/writers/scripts.nix +++ b/pkgs/build-support/writers/scripts.nix @@ -31,7 +31,7 @@ rec { : the [interpreter](https://en.wikipedia.org/wiki/Shebang_(Unix)) to use for the script. : `check` (String) : A command to check the script. For example, this could be a linting check. - : `makeWrapperArgs` (Optional, [ String ], Default: []) + : `makeWrapperArgs` (Optional, [String], Default: []) : Arguments forwarded to (`makeWrapper`)[#fun-makeWrapper]. `nameOrPath` (String) @@ -195,7 +195,7 @@ rec { : `strip` (Boolean, Default: true) : Whether to [strip](https://nixos.org/manual/nixpkgs/stable/#ssec-fixup-phase) the executable or not. - : `makeWrapperArgs` (Optional, [ String ], Default: []) + : `makeWrapperArgs` (Optional, [String], Default: []) : Arguments forwarded to (`makeWrapper`)[#fun-makeWrapper] `nameOrPath` (String) diff --git a/pkgs/by-name/af/affine/package.nix b/pkgs/by-name/af/affine/package.nix index f56ffb529b71..89e31b89c958 100644 --- a/pkgs/by-name/af/affine/package.nix +++ b/pkgs/by-name/af/affine/package.nix @@ -46,17 +46,17 @@ in stdenv.mkDerivation (finalAttrs: { pname = binName; - version = "0.26.2"; + version = "0.26.4"; src = fetchFromGitHub { owner = "toeverything"; repo = "AFFiNE"; tag = "v${finalAttrs.version}"; - hash = "sha256-qFJezmSNq6Uq6xvCGUITeidrChQiZWI6lw9ZX8PcwXc="; + hash = "sha256-5tOAkKTpdkN1UDztmy4Dt9kpRrWYVLolnXRwHmfXpLo="; }; cargoDeps = rustPlatform.fetchCargoVendor { inherit (finalAttrs) pname version src; - hash = "sha256-3cvq3FV3juzEaKczw/SUHSXHLLEIEJlcv2LUAMxGVVQ="; + hash = "sha256-vZkKFUaNe9iIAkdUfXnnuD2lM6kuzwqj1Dyt5GAgXsM="; }; # keep yarnOfflineCache same output style with offlineCache = yarn-berry.fetchYarnBerryDeps { inherit (finalAttrs) src missingHashes; hash = "" }; @@ -106,7 +106,7 @@ stdenv.mkDerivation (finalAttrs: { ''; dontInstall = true; outputHashMode = "recursive"; - outputHash = "sha256-TgrepMMOZkVK2uUEvwllrnFzVsEjgvRb8AtBsDzrHSg="; + outputHash = "sha256-nNPttQJBYJ3eyjR/INoC0MW5e3WcUkDpLdQ0W10+qj0="; }; buildInputs = lib.optionals hostPlatform.isDarwin [ diff --git a/pkgs/by-name/ca/cargo-sort/package.nix b/pkgs/by-name/ca/cargo-sort/package.nix index 11c16c8a83ee..a41fb567dac5 100644 --- a/pkgs/by-name/ca/cargo-sort/package.nix +++ b/pkgs/by-name/ca/cargo-sort/package.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "cargo-sort"; - version = "2.0.2"; + version = "2.1.0"; src = fetchFromGitHub { owner = "devinr528"; repo = "cargo-sort"; rev = "v${finalAttrs.version}"; - sha256 = "sha256-mdvaRTcs2zVXKX8LrqHFrWTdnFZpAfQuWjYmeWgdGVI="; + sha256 = "sha256-jmiCwXRyuK10qb1/7bwhOT/Cq335S9BzKiRc/02wc1E="; }; - cargoHash = "sha256-FoFzBf24mNDTRBfFyTEr9Q7sJjUhs0X/XWRGEoierQ4="; + cargoHash = "sha256-EzKXrN5TdWFP8zQjop2pIhavJ5a7t+YdK5s5WjwjLNM="; meta = { description = "Tool to check that your Cargo.toml dependencies are sorted alphabetically"; diff --git a/pkgs/by-name/co/commitlint/package.nix b/pkgs/by-name/co/commitlint/package.nix index 9fa41fab7014..ab49e0f225f3 100644 --- a/pkgs/by-name/co/commitlint/package.nix +++ b/pkgs/by-name/co/commitlint/package.nix @@ -12,18 +12,18 @@ stdenv.mkDerivation (finalAttrs: { pname = "commitlint"; - version = "20.4.2"; + version = "20.4.3"; src = fetchFromGitHub { owner = "conventional-changelog"; repo = "commitlint"; tag = "v${finalAttrs.version}"; - hash = "sha256-NdoNuOhx+j2wn2O4seOvuTEZyUCLuoJi+y6jtpQFTLg="; + hash = "sha256-CciE9m22C1RvB2k0870walO3LwkXFZKVnTYQngq9pII="; }; yarnOfflineCache = fetchYarnDeps { inherit (finalAttrs) src; - hash = "sha256-xPjisH3mW5xgMy2ZPEfHWSX1lE5S3jqHzRdTXwNLyVc="; + hash = "sha256-zKODU4opWFY1dJ7/vx8q4DQ2NSclShULWv3XrTjpktk="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/co/conventional-changelog-cli/package.nix b/pkgs/by-name/co/conventional-changelog-cli/package.nix index b1ee5ab384f1..9b528930fa51 100644 --- a/pkgs/by-name/co/conventional-changelog-cli/package.nix +++ b/pkgs/by-name/co/conventional-changelog-cli/package.nix @@ -13,19 +13,19 @@ stdenv.mkDerivation (finalAttrs: { pname = "conventional-changelog-cli"; - version = "7.1.1"; + version = "7.2.0"; src = fetchFromGitHub { owner = "conventional-changelog"; repo = "conventional-changelog"; tag = "conventional-changelog-v${finalAttrs.version}"; - hash = "sha256-Pgx5gM4SdSL6WCkStByA7AP2O96MjAjyeMOI+Lo2mt0="; + hash = "sha256-0Fee2sfLwxfE/MRLMUUMACTGVxnJJF1MPsWWzleVA3c="; }; pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) pname version src; fetcherVersion = 2; - hash = "sha256-ZfG3F0J1hIhZlF2OadhVdbxhQrFcMYDG9gEXR04DgEI="; + hash = "sha256-vOZnVCz5lFdVD2qmlHdTRxzuEjpR3W/rXfzvjvdOh9E="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/co/cooper/package.nix b/pkgs/by-name/co/cooper/package.nix index f608413168f7..612072f08f83 100644 --- a/pkgs/by-name/co/cooper/package.nix +++ b/pkgs/by-name/co/cooper/package.nix @@ -2,6 +2,7 @@ lib, stdenvNoCC, fetchFromGitHub, + installFonts, }: stdenvNoCC.mkDerivation { pname = "cooper"; @@ -14,14 +15,7 @@ stdenvNoCC.mkDerivation { hash = "sha256-4WaRFvAn32IfeCCDszOsmDxFuKnnADOXj/vj8SZB2mU="; }; - installPhase = '' - runHook preInstall - - mkdir -p $out/share/fonts/truetype - cp fonts/*/*.otf $out/share/fonts/truetype - - runHook postInstall - ''; + nativeBuildInputs = [ installFonts ]; meta = { homepage = "https://indestructibletype.com/Cooper/index.html"; diff --git a/pkgs/by-name/fa/factoriolab/package.nix b/pkgs/by-name/fa/factoriolab/package.nix index d065f934c74f..8d8bb29ef2b2 100644 --- a/pkgs/by-name/fa/factoriolab/package.nix +++ b/pkgs/by-name/fa/factoriolab/package.nix @@ -10,13 +10,13 @@ }: buildNpmPackage rec { pname = "factoriolab"; - version = "3.18.0"; + version = "3.18.1"; src = fetchFromGitHub { owner = "factoriolab"; repo = "factoriolab"; tag = "v${version}"; - hash = "sha256-Id0o+Wxt0oNtik3lMHuvdm99HkuPY1XhE5yPCdkR8L4="; + hash = "sha256-PmP6nb74FhNIBoEZoM+xbe5oTG/juWkuvWnk5Zr2WZ4="; fetchLFS = true; }; buildInputs = [ vips ]; diff --git a/pkgs/by-name/gi/github-copilot-cli/sources.json b/pkgs/by-name/gi/github-copilot-cli/sources.json index a931685c340b..a38e2ce7d5fd 100644 --- a/pkgs/by-name/gi/github-copilot-cli/sources.json +++ b/pkgs/by-name/gi/github-copilot-cli/sources.json @@ -1,19 +1,19 @@ { - "version": "0.0.420", + "version": "0.0.421", "x86_64-linux": { "name": "copilot-linux-x64", - "hash": "sha256-NE+J7h5hnJ/8sHI4G35TwvMFBTAItVWE3FhG0APBZ7k=" + "hash": "sha256-oXnSHTw0aC0SUoU2IT/hpdnDu504UkrRzodWQiDwujc=" }, "aarch64-linux": { "name": "copilot-linux-arm64", - "hash": "sha256-YK/rz0dkTbHO3Uu+K+n8GOb/tLw5T1cKeJa3qP2In2M=" + "hash": "sha256-ZAf2vV10pLwQAbTaGAWxR/bXPzJX1uAOEaQqKuJGvL4=" }, "x86_64-darwin": { "name": "copilot-darwin-x64", - "hash": "sha256-zUfh1Sh/ckvgWs/YVkpGKL9vYi3egVb4smnhZBQJmJs=" + "hash": "sha256-8o2IW/7t0Z6JmSR2Ff1+EvvMDkcxMTw7KkvG/0ED9GM=" }, "aarch64-darwin": { "name": "copilot-darwin-arm64", - "hash": "sha256-ghYxLSZjKeoLFEDMLmhcZraiaXfPo9ArA4jWBR8/tqs=" + "hash": "sha256-Fd9aHynHxGVg79/Pugjch+z/PTAlwNHhbSI9Kwh6Xj4=" } } diff --git a/pkgs/by-name/gn/gnuradioMinimal/package.nix b/pkgs/by-name/gn/gnuradioMinimal/package.nix index f0e3c01b1e55..d6ff9b63df9a 100644 --- a/pkgs/by-name/gn/gnuradioMinimal/package.nix +++ b/pkgs/by-name/gn/gnuradioMinimal/package.nix @@ -2,11 +2,14 @@ gnuradio, volk, uhdMinimal, + packageOverrides ? (self: super: { }), + unwrappedFeaturesOverride ? { }, }: # A build without gui components and other utilities not needed for end user # libraries gnuradio.override { doWrap = false; + inherit packageOverrides; unwrapped = gnuradio.unwrapped.override { volk = volk.override { # So it will not reference python @@ -26,6 +29,7 @@ gnuradio.override { # Doesn't make it reference python eventually, but makes reverse # dependencies require python to use cmake files of GR. gr-ctrlport = false; - }; + } + // unwrappedFeaturesOverride; }; } diff --git a/pkgs/by-name/go/godns/package.nix b/pkgs/by-name/go/godns/package.nix index c198b1250b35..6e18ac4a8911 100644 --- a/pkgs/by-name/go/godns/package.nix +++ b/pkgs/by-name/go/godns/package.nix @@ -10,19 +10,19 @@ buildGoModule (finalAttrs: { pname = "godns"; - version = "3.3.5"; + version = "3.3.6"; src = fetchFromGitHub { owner = "TimothyYe"; repo = "godns"; tag = "v${finalAttrs.version}"; - hash = "sha256-nahX1XEiH7o+r6XxTAhT4kLTx9oGC+YVnw/U0PvzCO8="; + hash = "sha256-YdIXMVtagF7uA9By6EHVdG2o5UwUi82XkYK26W5Fssg="; }; - vendorHash = "sha256-n56e4kU2BorBwdsjI68V+Kpxby6t/foRP8yQ1RPQuog="; + vendorHash = "sha256-wGaRJFxuhwwwP7CBZ7eY5uR95EMdpWiJuU43eWXtHNo="; npmDeps = fetchNpmDeps { src = "${finalAttrs.src}/web"; - hash = "sha256-4QH0jI2KAf935EFNVEwuojZPW10rSAnr5Zr+CNm0DGM="; + hash = "sha256-OsYBmDawDUCt/+s5kyOPawMA9BWQwJhd7TQNc55rPlc="; }; npmRoot = "web"; diff --git a/pkgs/by-name/go/google-cloud-sql-proxy/package.nix b/pkgs/by-name/go/google-cloud-sql-proxy/package.nix index ca0022034433..4e65566a0a90 100644 --- a/pkgs/by-name/go/google-cloud-sql-proxy/package.nix +++ b/pkgs/by-name/go/google-cloud-sql-proxy/package.nix @@ -7,18 +7,18 @@ buildGoModule (finalAttrs: { pname = "google-cloud-sql-proxy"; - version = "2.21.0"; + version = "2.21.1"; src = fetchFromGitHub { owner = "GoogleCloudPlatform"; repo = "cloud-sql-proxy"; rev = "v${finalAttrs.version}"; - hash = "sha256-w2SDoIxuPNd4CasLlTK+ypkf7/T+kWSSjheU+KnloDw="; + hash = "sha256-3C7IfpVcv1BpzKnMV6dQJ0e7hY50owR3YijlI2+cAJQ="; }; subPackages = [ "." ]; - vendorHash = "sha256-XxujTfBa6Y1KS4VCpd8xZ0ijfc6LjB1G1kUS+XSAlZc="; + vendorHash = "sha256-tbglk7rscPx1RrURSzVW5FgZE6b6mp4tvOXVQKMUrjQ="; checkFlags = [ "-short" diff --git a/pkgs/by-name/go/goverlay/package.nix b/pkgs/by-name/go/goverlay/package.nix index 65bad84795ef..d5a666880079 100644 --- a/pkgs/by-name/go/goverlay/package.nix +++ b/pkgs/by-name/go/goverlay/package.nix @@ -24,13 +24,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "goverlay"; - version = "1.7.4"; + version = "1.7.5"; src = fetchFromGitHub { owner = "benjamimgois"; repo = "goverlay"; tag = finalAttrs.version; - hash = "sha256-30Z2d7w8VStusJFvaTT3IcA3KH3jCyV7ibDOuOFPutQ="; + hash = "sha256-q4g6K4iUkeam1dVHOWdkUjH/XAOIKgOXnJDE0dm5HVw="; }; outputs = [ diff --git a/pkgs/by-name/ho/hoppscotch/package.nix b/pkgs/by-name/ho/hoppscotch/package.nix index 609f7972f528..bca07b4f7236 100644 --- a/pkgs/by-name/ho/hoppscotch/package.nix +++ b/pkgs/by-name/ho/hoppscotch/package.nix @@ -8,22 +8,22 @@ let pname = "hoppscotch"; - version = "26.1.1-0"; + version = "26.2.0-0"; src = fetchurl { aarch64-darwin = { url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_aarch64.dmg"; - hash = "sha256-O+LJFg7js0anQxKzruVuaWO4JE6M70Gcq8TowejWLIc="; + hash = "sha256-aSllZvfdx80MnqA7EyhaRoMWewtKg0mW53VRC9ITBnI="; }; x86_64-darwin = { url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_mac_x64.dmg"; - hash = "sha256-yF1fyk++CigS/sD2qttM3e2H4Dxq0wXM6be32egl0t0="; + hash = "sha256-KpIfbgWlbPD09NgJd8jh6zhGB2GhWTM9C/Ko8AWtmKw="; }; x86_64-linux = { url = "https://github.com/hoppscotch/releases/releases/download/v${version}/Hoppscotch_linux_x64.AppImage"; - hash = "sha256-IoK+bLGox/9To3EzR1pk/ku/e+nm1PDpvz/5b59csu8="; + hash = "sha256-Dhj8FpRTUZineAIKYLHPzr7AiArce/Un+HfJ4PbjfSg="; }; } .${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); diff --git a/pkgs/by-name/lu/lunarvim/package.nix b/pkgs/by-name/lu/lunarvim/package.nix index 2c430aef7daf..a08c10c3da65 100644 --- a/pkgs/by-name/lu/lunarvim/package.nix +++ b/pkgs/by-name/lu/lunarvim/package.nix @@ -145,5 +145,6 @@ stdenv.mkDerivation (finalAttrs: { ]; platforms = lib.platforms.unix; mainProgram = "lvim"; + broken = true; # Incompatible with Neovim >= 0.10; upstream is unmaintained }; }) diff --git a/pkgs/by-name/ma/matrix-continuwuity/package.nix b/pkgs/by-name/ma/matrix-continuwuity/package.nix index 2f4802e8ecc7..0808db452bdb 100644 --- a/pkgs/by-name/ma/matrix-continuwuity/package.nix +++ b/pkgs/by-name/ma/matrix-continuwuity/package.nix @@ -72,17 +72,17 @@ let in rustPlatform.buildRustPackage (finalAttrs: { pname = "matrix-continuwuity"; - version = "0.5.5"; + version = "0.5.6"; src = fetchFromGitea { domain = "forgejo.ellis.link"; owner = "continuwuation"; repo = "continuwuity"; tag = "v${finalAttrs.version}"; - hash = "sha256-mEdhnyzuW2fTP/dBpJE6EnvTH2fbQXOOwZgjJ1trQmU="; + hash = "sha256-p6dL1wL9n+1ivUItdlZuLxTneDBjCHEdNr0ukau2rHI="; }; - cargoHash = "sha256-giG4SZNh7uV7PIeHv0npfkgYi6lWn55YktKHOF7HGyM="; + cargoHash = "sha256-lLbnFA2WS96er84G2e9bGrYhhqe2zL3Npn1SXB3De2w="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/mo/monocle/package.nix b/pkgs/by-name/mo/monocle/package.nix index 04de34596e3e..03860c337a3c 100644 --- a/pkgs/by-name/mo/monocle/package.nix +++ b/pkgs/by-name/mo/monocle/package.nix @@ -8,16 +8,16 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "monocle"; - version = "1.1.0"; + version = "1.2.0"; src = fetchFromGitHub { owner = "bgpkit"; repo = "monocle"; tag = "v${finalAttrs.version}"; - hash = "sha256-F7z8WZAj00dYfawUiCTLnipkut9QAnXiO8DgIhJ/78U="; + hash = "sha256-Ha9Q7FkEqoVi0SqmLfXG6ewexN+ad/RNfS4l4/QPo0o="; }; - cargoHash = "sha256-+XdOvjQJkeDBH/3XtMX0SCGyji10UgnSme4oZuhwiq8="; + cargoHash = "sha256-jI0uAXjj/GEgNtV6Pm/rpZJ0avVcnnBPnHZFmtxg/Zc="; # require internet access checkFlags = map (t: "--skip=${t}") [ diff --git a/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/nix.py b/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/nix.py index b1da9ef555dc..ee1179b9f440 100644 --- a/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/nix.py +++ b/pkgs/by-name/ni/nixos-rebuild-ng/src/nixos_rebuild/nix.py @@ -192,7 +192,13 @@ def copy_closure( Also supports copying a closure from a remote to another remote.""" sshopts = os.getenv("NIX_SSHOPTS", "") - env = {"NIX_SSHOPTS": " ".join(filter(lambda x: x, [sshopts, *SSH_DEFAULT_OPTS]))} + # This command is always run locally and needs to keep its own environent + # while merging NIX_SSHOPTS and SSH_DEFAULT_OPTS together. + # E.g.: to preserve SSH_AUTH_SOCK + env = { + **os.environ, + "NIX_SSHOPTS": " ".join(filter(lambda x: x, [sshopts, *SSH_DEFAULT_OPTS])), + } def nix_copy_closure(host: Remote, to: bool) -> None: run_wrapper( diff --git a/pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_nix.py b/pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_nix.py index 8a69fd89fad7..fdc9b3377ad3 100644 --- a/pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_nix.py +++ b/pkgs/by-name/ni/nixos-rebuild-ng/src/tests/test_nix.py @@ -1,3 +1,4 @@ +import os import sys import textwrap import uuid @@ -78,6 +79,11 @@ def test_build_flake(mock_run: Mock, monkeypatch: MonkeyPatch, tmpdir: Path) -> ) +@patch.dict( + os.environ, + {"NIX_SSHOPTS": "--ssh opts", "SSH_ASKPASS": "/run/user/1000/ssh-agent"}, + clear=True, +) @patch(get_qualified_name(n.run_wrapper, n), autospec=True) @patch("uuid.uuid4", autospec=True) def test_build_remote( @@ -134,7 +140,10 @@ def test_build_remote( "user@host", Path("/path/to/file"), ], - env={"NIX_SSHOPTS": " ".join(["--ssh opts", *p.SSH_DEFAULT_OPTS])}, + env={ + "SSH_ASKPASS": "/run/user/1000/ssh-agent", + "NIX_SSHOPTS": " ".join(["--ssh opts", *p.SSH_DEFAULT_OPTS]), + }, ), call( ["mktemp", "-d", "-t", "nixos-rebuild.XXXXX"], @@ -163,18 +172,24 @@ def test_build_remote( ) +@patch.dict( + os.environ, + {"NIX_SSHOPTS": "--ssh opts", "SSH_ASKPASS": "/run/user/1000/ssh-agent"}, + clear=True, +) @patch( get_qualified_name(n.run_wrapper, n), autospec=True, return_value=CompletedProcess([], 0, stdout=" \n/path/to/file\n "), ) def test_build_remote_flake( - mock_run: Mock, monkeypatch: MonkeyPatch, tmpdir: Path + mock_run: Mock, + monkeypatch: MonkeyPatch, + tmpdir: Path, ) -> None: monkeypatch.chdir(tmpdir) flake = m.Flake.parse("/flake.nix#hostname") build_host = m.Remote("user@host", [], None) - monkeypatch.setenv("NIX_SSHOPTS", "--ssh opts") assert n.build_remote_flake( "config.system.build.toplevel", @@ -206,7 +221,10 @@ def test_build_remote_flake( "user@host", Path("/path/to/file"), ], - env={"NIX_SSHOPTS": " ".join(["--ssh opts", *p.SSH_DEFAULT_OPTS])}, + env={ + "SSH_ASKPASS": "/run/user/1000/ssh-agent", + "NIX_SSHOPTS": " ".join(["--ssh opts", *p.SSH_DEFAULT_OPTS]), + }, ), call( [ @@ -225,6 +243,7 @@ def test_build_remote_flake( ) +@patch.dict(os.environ, {}, clear=True) def test_copy_closure(monkeypatch: MonkeyPatch) -> None: closure = Path("/path/to/closure") with patch(get_qualified_name(n.run_wrapper, n), autospec=True) as mock_run: diff --git a/pkgs/by-name/pa/paperless-ngx/package.nix b/pkgs/by-name/pa/paperless-ngx/package.nix index 387fee34efa3..7d795de56e90 100644 --- a/pkgs/by-name/pa/paperless-ngx/package.nix +++ b/pkgs/by-name/pa/paperless-ngx/package.nix @@ -339,6 +339,8 @@ python.pkgs.buildPythonApplication rec { # execnet.gateway_base.DumpError: can't serialize # https://github.com/pytest-dev/pytest-xdist/issues/384 "test_subdirectory_upload" + # AssertionError: 4 != 3 + "testNormalOperation" ]; doCheck = !stdenv.hostPlatform.isDarwin; diff --git a/pkgs/by-name/po/postcss/package.nix b/pkgs/by-name/po/postcss/package.nix index 6e55d512b3c5..600b7200f9d8 100644 --- a/pkgs/by-name/po/postcss/package.nix +++ b/pkgs/by-name/po/postcss/package.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "postcss"; - version = "8.5.6"; + version = "8.5.8"; src = fetchFromGitHub { owner = "postcss"; repo = "postcss"; tag = finalAttrs.version; - hash = "sha256-7oGCDqKwJG49DXDiyEZaO8EhxZS/Up5PO3/uqqOa+Bo="; + hash = "sha256-28IUSx5R1KbyM8OV0U7FrhU+qL2zaJShMVvSQMChcA4="; }; nativeBuildInputs = [ @@ -29,7 +29,7 @@ stdenv.mkDerivation (finalAttrs: { pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) pname version src; fetcherVersion = 3; - hash = "sha256-WJTQjlOkzCSqPHkNuT/Dn1BOFyL+3lDSl7RW0S9fakU="; + hash = "sha256-SwTVjgS4Hkl1SgXqSdjjbyKqUW2TfD1ruLu2Jcl51gg="; }; dontBuild = true; diff --git a/pkgs/by-name/py/pyprland/package.nix b/pkgs/by-name/py/pyprland/package.nix index cf81bc3dbb1f..900b8b06b936 100644 --- a/pkgs/by-name/py/pyprland/package.nix +++ b/pkgs/by-name/py/pyprland/package.nix @@ -7,21 +7,23 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "pyprland"; - version = "2.6.2"; + version = "3.1.0"; pyproject = true; src = fetchFromGitHub { owner = "hyprland-community"; repo = "pyprland"; tag = finalAttrs.version; - hash = "sha256-jvdXytMnNrINNkSNljYFS9uomPmQ0g2Bnje/8YbsAv8="; + hash = "sha256-qayntjpE3WYBl6idfpwtvkEo61oHtc80uNEm0m4XA2o="; }; nativeBuildInputs = with python3Packages; [ poetry-core ]; propagatedBuildInputs = with python3Packages; [ aiofiles + aiohttp pillow + questionary ]; pythonRelaxDeps = [ "aiofiles" @@ -51,7 +53,6 @@ python3Packages.buildPythonApplication (finalAttrs: { "pyprland.plugins.lost_windows" "pyprland.plugins.magnify" "pyprland.plugins.monitors" - "pyprland.plugins.monitors_v0" "pyprland.plugins.pyprland" "pyprland.plugins.scratchpads" "pyprland.plugins.shift_monitors" diff --git a/pkgs/by-name/re/reproxy/package.nix b/pkgs/by-name/re/reproxy/package.nix index db9fa4f9330f..7eef6040875a 100644 --- a/pkgs/by-name/re/reproxy/package.nix +++ b/pkgs/by-name/re/reproxy/package.nix @@ -2,21 +2,24 @@ lib, buildGoModule, fetchFromGitHub, + installShellFiles, }: buildGoModule (finalAttrs: { pname = "reproxy"; - version = "1.4.0"; + version = "1.5.0"; src = fetchFromGitHub { owner = "umputun"; repo = "reproxy"; tag = "v${finalAttrs.version}"; - hash = "sha256-pnmm/JEMcQ5UQUwUqGdzC/BphrH4tBz79Bq3c13GqbA="; + hash = "sha256-nJAE2oEoIzuRFRlgypRROXZYfQy3y2m14QbBUUGQBSg="; }; vendorHash = null; + nativeBuildInputs = [ installShellFiles ]; + ldflags = [ "-s" "-w" @@ -30,6 +33,7 @@ buildGoModule (finalAttrs: { postInstall = '' mv $out/bin/{app,reproxy} + installShellCompletion completions/* ''; __darwinAllowLocalNetworking = true; diff --git a/pkgs/by-name/rp/rpl/package.nix b/pkgs/by-name/rp/rpl/package.nix index 0a484e5e8723..d1516b3bcb05 100644 --- a/pkgs/by-name/rp/rpl/package.nix +++ b/pkgs/by-name/rp/rpl/package.nix @@ -6,13 +6,13 @@ python3Packages.buildPythonApplication (finalAttrs: { pname = "rpl"; - version = "1.18"; + version = "1.18.1"; pyproject = true; src = fetchPypi { inherit (finalAttrs) pname version; - hash = "sha256-N4043ig/ZoL4XpNpU5bzRh1xl3jheoAT9kvYfX9nHX4="; + hash = "sha256-Fr0BMv+QMhVaHMg+Xd7pPe4/swH0dBADABKgbSIjUCo="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ru/ruff/package.nix b/pkgs/by-name/ru/ruff/package.nix index d9950ba56618..402fbe80d2d0 100644 --- a/pkgs/by-name/ru/ruff/package.nix +++ b/pkgs/by-name/ru/ruff/package.nix @@ -16,18 +16,18 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "ruff"; - version = "0.15.3"; + version = "0.15.4"; src = fetchFromGitHub { owner = "astral-sh"; repo = "ruff"; tag = finalAttrs.version; - hash = "sha256-xeZk044anJ21uQwV3VN1QOvav+soYVdArpEw/rr8Xsw="; + hash = "sha256-Vj/4Iod9aFuDK5B6cVe03/3VI5gltoWwWH/0NWrldaw="; }; cargoBuildFlags = [ "--package=ruff" ]; - cargoHash = "sha256-16Ao1y0pFWxGjHkGi4VCIA9msvA5Tka8wvok8o3g6rc="; + cargoHash = "sha256-yZeBev0vRsNXTdjQdLIkGAYIu66Yuzf6Pjct4xswXME="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/by-name/ss/sshwifty/package.nix b/pkgs/by-name/ss/sshwifty/package.nix index dbd67332702c..cef2cdb5ffee 100644 --- a/pkgs/by-name/ss/sshwifty/package.nix +++ b/pkgs/by-name/ss/sshwifty/package.nix @@ -11,13 +11,13 @@ }: buildGoModule (finalAttrs: { pname = "sshwifty"; - version = "0.4.2-beta-release"; + version = "0.4.3-beta-release"; src = fetchFromGitHub { owner = "nirui"; repo = "sshwifty"; tag = finalAttrs.version; - hash = "sha256-nx485HB0JqexcSdwhgbhoAwpK3Cg7tkgDrV3NM93pXk="; + hash = "sha256-Khx8iOEe1/NYiWEawwGuCbybflGq8FDtJFh8DFoNI+k="; }; nativeBuildInputs = [ @@ -32,10 +32,10 @@ buildGoModule (finalAttrs: { npmDeps = fetchNpmDeps { inherit (finalAttrs) src; - hash = "sha256-5Y6hTsHSFOPhgLwEhMNOOCyLYNjp1Q5n8My3Q6lr7hQ="; + hash = "sha256-i7EHR3hw+LPKbiRKLXOjEsMVtUIBAWwH22ZMVTh715A="; }; - vendorHash = "sha256-4K0fxBBcv+ZSV0ocsoagjFAXRphA27xGO40pnewaKSU="; + vendorHash = "sha256-s1+hP9oakR2YgBUOc0ezFW2MQBi8piRPKAVLBgJLN6o="; preBuild = '' # Generate static pages diff --git a/pkgs/by-name/ve/velocity/deps.json b/pkgs/by-name/ve/velocity/deps.json index 0d16db28b2a6..448dac502adb 100644 --- a/pkgs/by-name/ve/velocity/deps.json +++ b/pkgs/by-name/ve/velocity/deps.json @@ -19,23 +19,23 @@ "module": "sha256-IFNqlfL+sr9DBRKMaq7Lb9idxFeYqchfJgK4qAnXUNs=", "pom": "sha256-Q1z/VXiZht7arXF/aPuo1UgklHhWLc2EsirU1lZvRAs=" }, - "com/diffplug/spotless#com.diffplug.spotless.gradle.plugin/8.2.1": { - "pom": "sha256-MGt3fcOfRP7GK1C97+QbcWvrD9fNP4FXInOhNMLhVbk=" + "com/diffplug/spotless#com.diffplug.spotless.gradle.plugin/8.2.0": { + "pom": "sha256-1nvChuPoUGCKeXA1XY4yL092A083D/D73dt77fivYns=" }, - "com/diffplug/spotless#spotless-lib-extra/4.3.0": { - "jar": "sha256-dU+ATAnfouuNU5YzEdK+aPG0pWIQEdy1UNcC6tKGUdk=", - "module": "sha256-yImJBeaSp+CHATV8PK0NT+JqogjNerDe2NcNOSnLoRI=", - "pom": "sha256-C5N93//pxrgmIDYU755aLQs8INjMa3kitIgdl9MbaJ0=" + "com/diffplug/spotless#spotless-lib-extra/4.2.0": { + "jar": "sha256-Zn7uviqjTQpRIc8koZdrPBRQytwKEdqw3BEWokXPScY=", + "module": "sha256-pUwFcWAoiUFDeZCuqzXavd6Ri/zfyNLPwWhDCp5cxTQ=", + "pom": "sha256-ZRIf+E/eD++jtNXrBKnPVka8z5JFqCfPzHyJFDr3t34=" }, - "com/diffplug/spotless#spotless-lib/4.3.0": { - "jar": "sha256-Zp+ETsCpdJQcbaBLZwdI9DF4I5ttmf3bWwYs6dBtCTk=", - "module": "sha256-I1HAgP4kVTNGAv/QqCHYit9ipT5uoYTEOV9PVQXeNyM=", - "pom": "sha256-dPwsK8oRHUP/q/jWPYuegjpEOIWHevxxWInI6ckUaNM=" + "com/diffplug/spotless#spotless-lib/4.2.0": { + "jar": "sha256-8qOe5LxqmL29ariGw10jhSKs/j+wr5Wpyn+Nm2yi6JQ=", + "module": "sha256-2gdqn2UEezS5yUcJsbIWKqhF90EyBPtA8tmYWK5u1sY=", + "pom": "sha256-0P1S3Sgh90tZmdl1DnIzh3dyMY/6GEdbB6ItWDrjPcg=" }, - "com/diffplug/spotless#spotless-plugin-gradle/8.2.1": { - "jar": "sha256-2/RPjfGDKAAkHU8TUSn8khuoL7ItckMMxC1NPVu/nTw=", - "module": "sha256-OPb28k3QWmJskcwWOvTThnq9UPCGdnqmTaJfMg+ik5s=", - "pom": "sha256-s578nCtRfx6eiNa+IvYyYZ3oOqDi49F1RaAXUDtxNPg=" + "com/diffplug/spotless#spotless-plugin-gradle/8.2.0": { + "jar": "sha256-ohJ5aiQ3M5+oH1hCQ7WfBtUas6mjQPLN9rGUBEQXefY=", + "module": "sha256-NMCTxQIrGzueJvGDW6JYNKMV7a41/2bv+iE5528MEiw=", + "pom": "sha256-yZIwMm954KZ4M0gs0HWGn8qyIrf17xuZpnOH5RjyAio=" }, "com/google/code/gson#gson-parent/2.8.9": { "pom": "sha256-sW4CbmNCfBlyrQ/GhwPsN5sVduQRuknDL6mjGrC7z/s=" @@ -304,20 +304,20 @@ "module": "sha256-IFNqlfL+sr9DBRKMaq7Lb9idxFeYqchfJgK4qAnXUNs=", "pom": "sha256-Q1z/VXiZht7arXF/aPuo1UgklHhWLc2EsirU1lZvRAs=" }, - "com/diffplug/spotless#spotless-lib-extra/4.3.0": { - "jar": "sha256-dU+ATAnfouuNU5YzEdK+aPG0pWIQEdy1UNcC6tKGUdk=", - "module": "sha256-yImJBeaSp+CHATV8PK0NT+JqogjNerDe2NcNOSnLoRI=", - "pom": "sha256-C5N93//pxrgmIDYU755aLQs8INjMa3kitIgdl9MbaJ0=" + "com/diffplug/spotless#spotless-lib-extra/4.2.0": { + "jar": "sha256-Zn7uviqjTQpRIc8koZdrPBRQytwKEdqw3BEWokXPScY=", + "module": "sha256-pUwFcWAoiUFDeZCuqzXavd6Ri/zfyNLPwWhDCp5cxTQ=", + "pom": "sha256-ZRIf+E/eD++jtNXrBKnPVka8z5JFqCfPzHyJFDr3t34=" }, - "com/diffplug/spotless#spotless-lib/4.3.0": { - "jar": "sha256-Zp+ETsCpdJQcbaBLZwdI9DF4I5ttmf3bWwYs6dBtCTk=", - "module": "sha256-I1HAgP4kVTNGAv/QqCHYit9ipT5uoYTEOV9PVQXeNyM=", - "pom": "sha256-dPwsK8oRHUP/q/jWPYuegjpEOIWHevxxWInI6ckUaNM=" + "com/diffplug/spotless#spotless-lib/4.2.0": { + "jar": "sha256-8qOe5LxqmL29ariGw10jhSKs/j+wr5Wpyn+Nm2yi6JQ=", + "module": "sha256-2gdqn2UEezS5yUcJsbIWKqhF90EyBPtA8tmYWK5u1sY=", + "pom": "sha256-0P1S3Sgh90tZmdl1DnIzh3dyMY/6GEdbB6ItWDrjPcg=" }, - "com/diffplug/spotless#spotless-plugin-gradle/8.2.1": { - "jar": "sha256-2/RPjfGDKAAkHU8TUSn8khuoL7ItckMMxC1NPVu/nTw=", - "module": "sha256-OPb28k3QWmJskcwWOvTThnq9UPCGdnqmTaJfMg+ik5s=", - "pom": "sha256-s578nCtRfx6eiNa+IvYyYZ3oOqDi49F1RaAXUDtxNPg=" + "com/diffplug/spotless#spotless-plugin-gradle/8.2.0": { + "jar": "sha256-ohJ5aiQ3M5+oH1hCQ7WfBtUas6mjQPLN9rGUBEQXefY=", + "module": "sha256-NMCTxQIrGzueJvGDW6JYNKMV7a41/2bv+iE5528MEiw=", + "pom": "sha256-yZIwMm954KZ4M0gs0HWGn8qyIrf17xuZpnOH5RjyAio=" }, "com/electronwill/night-config#core/3.8.3": { "jar": "sha256-lx3IjBwiCFYR7hwwD1u/hZWTgXjoGb77temMPL0nK3k=", @@ -429,6 +429,10 @@ "jar": "sha256-xiIXY715xPHD3H91C18poLs4s2e4ExTE9xiW40DECCU=", "pom": "sha256-pTMaDstUj5lCq1uTx6xDw4oh6Jd2Pd4bzb8HdPQWym8=" }, + "com/google/errorprone#error_prone_annotations/2.11.0": { + "jar": "sha256-chy5GEK0b6BWhH0QTVIlyLjh6LYiY7mTBR4eWgE3t+w=", + "pom": "sha256-AmHKAfLS6awq4uznXULFYyOzhfspS2vJQ/Yu9Okt3wg=" + }, "com/google/errorprone#error_prone_annotations/2.18.0": { "jar": "sha256-nmgUy3GBaYik/RsHqZOo8hu3BY1SLBYrHehJ4ZvqVK4=", "pom": "sha256-kgE1eX3MpZF7WlwBdkKljTQKTNG80S9W+JKlZjvXvdw=" @@ -448,6 +452,9 @@ "jar": "sha256-SCcudcFuH3vce9GVKcys1e4XBARwHX9aI0QbtYR5V/U=", "pom": "sha256-T2uIia+o3r2+Hj/ipfjmbiIWygtWPya05UE4cw7s3IA=" }, + "com/google/errorprone#error_prone_parent/2.11.0": { + "pom": "sha256-goPwy0TGJKedMwtv2AuLinFaaLNoXJqVHD3oN9RUBVE=" + }, "com/google/errorprone#error_prone_parent/2.18.0": { "pom": "sha256-R/Iumce/RmOR3vFvg3eYXl07pvW7z2WFNkSAVRPhX60=" }, @@ -480,6 +487,9 @@ "com/google/guava#guava-parent/27.1-jre": { "pom": "sha256-02EBZcbeK02NZBhIdxe2PFK1o5xeNaVT4khz7LYOBig=" }, + "com/google/guava#guava-parent/31.1-jre": { + "pom": "sha256-RDliZ4O0StJe8F/wdiHdS7eWzE608pZqSkYf6kEw4Pw=" + }, "com/google/guava#guava-parent/32.0.1-jre": { "pom": "sha256-Q+0ONrNT9B5et1zXVmZ8ni35fO8G6xYGaWcVih0DTSo=" }, @@ -497,6 +507,10 @@ "jar": "sha256-SlqnDMlopNE35ZmtN1U+XP7tImXowZNHbXEZA2xTb+c=", "pom": "sha256-vZnXUAYTGuJcmGCh1j6E42Nx8RL9sML+PV1qs46esnE=" }, + "com/google/guava#guava/31.1-jre": { + "jar": "sha256-pC7cnKt5Ljn+ObuU8/ymVe0Vf/h6iveOHWulsHxKAKs=", + "pom": "sha256-kZPQe/T2YBCNc1jliyfSG0TjToDWc06Y4hkWN28nDeI=" + }, "com/google/guava#guava/32.0.1-jre": { "jar": "sha256-vX+iJ1kfuFCWd9DREiz5UVjzuKn0VlP1goHYefbcSMU=", "pom": "sha256-QsJX9/c203ezGv7u6XirJtcwzXCvYN3nZi4YI1LiSCo=" @@ -528,6 +542,10 @@ "jar": "sha256-KZSn63jycQvT07+2ObLJTiGc7awNTQhNUW54wW3d7PY=", "pom": "sha256-8MmMVx6Tp8tN0Y3w+jCPCWPnoGIKwtQkTmHnCdA61r4=" }, + "com/google/j2objc#j2objc-annotations/1.3": { + "jar": "sha256-Ia8wySJnvWEiwOC00gzMtmQaN+r5VsZUDsRx1YTmSns=", + "pom": "sha256-X6yoJLoRW+5FhzAzff2y/OpGui/XdNQwTtvzD6aj8FU=" + }, "com/google/j2objc#j2objc-annotations/2.8": { "jar": "sha256-8CqV+hpele2z7YWf0Pt99wnRIaNSkO/4t03OKrf01u0=", "pom": "sha256-N/h3mLGDhRE8kYv6nhJ2/lBzXvj6hJtYAMUZ1U2/Efg=" @@ -557,9 +575,13 @@ "module": "sha256-/ccJZrzS41x5Tc4sF7mZwuZpUOFYUx6Z3BUfsOvCllM=", "pom": "sha256-oX8TWPGK17qq5NszR8IAtPOu3Q2cd25yrPYplNTH+9E=" }, - "com/puppycrawl/tools#checkstyle/13.0.0": { - "jar": "sha256-5svIBFeWwxyNmv9mq+G/EfmhmHyI6SKfFn4+yec14P8=", - "pom": "sha256-MayhsoVeDtilJ17lMfDBluWdGfILo2Ix2T3CRoDwclQ=" + "com/moandjiezana/toml#toml4j/0.7.2": { + "jar": "sha256-9UdeY+fonl22IiNImux6Vr0wNUN3IHehfCy1TBnKOiA=", + "pom": "sha256-W3YhZzfy2pODlTrMybpY9uc500Rnh5nm1NCCz24da9M=" + }, + "com/puppycrawl/tools#checkstyle/10.9.3": { + "jar": "sha256-1X3pra1Cq2C7KXLlD4OhMcqm9iNHhPWUOjhxIAZhWR8=", + "pom": "sha256-qDfEUo/JqQ1oi8lQOcdSSCQPfG16GonZSDro+CWc508=" }, "com/spotify#completable-futures/0.3.6": { "jar": "sha256-n0HBSTwY6CiJMqGDBzzjnhiGUtKsQBPt6rXHO7DYMZ8=", @@ -586,13 +608,13 @@ "jar": "sha256-qtv9WlJFUb7vENP4kdMFuDuyfVRwPZpN56yioS2YR+I=", "pom": "sha256-ffmOk+i9xqjtuGMUrIujHyYMvUoOa4b16a/JMlEu8Mc=" }, - "commons-beanutils#commons-beanutils/1.11.0": { - "jar": "sha256-nkS6aOyaPyEob6Kou7ADtzXA9pEBu0MUS3n0+KqnRwk=", - "pom": "sha256-z/nqsddRJkvXdbbj6+0WUHlMrJzYvhxBa0jjpcYTnZM=" + "commons-beanutils#commons-beanutils/1.9.4": { + "jar": "sha256-fZOMgXiQKARcCMBl6UvnX8KAUnYg1b1itRnVg4UyNoo=", + "pom": "sha256-w1zKe2HUZ42VeMvAuQG4cXtTmr+SVEQdp4uP5g3gZNA=" }, - "commons-codec#commons-codec/1.11": { - "jar": "sha256-5ZnVMY6Xqkj0ITaikn5t+k6Igd/w5sjjEJ3bv/Ude30=", - "pom": "sha256-wecUDR3qj981KLwePFRErAtUEpcxH0X5gGwhPsPumhA=" + "commons-codec#commons-codec/1.15": { + "jar": "sha256-s+n21jp5AQm/DQVmEfvtHPaQVYJt7+uYlKcTadJG7WM=", + "pom": "sha256-yG7hmKNaNxVIeGD0Gcv2Qufk2ehxR3eUfb5qTjogq1g=" }, "commons-codec#commons-codec/1.20.0": { "jar": "sha256-avZllfn2p7tYzmZRjWiI1AtUfDZtImLwZnbu4ZUo/2Y=", @@ -611,118 +633,114 @@ "module": "sha256-pnYDnqavCPJXtG4Hwr8VcaRqTUtbnMuGw/yY0H+v6hs=", "pom": "sha256-arSo7K4qu9NrkZ0Lm5+yTBdxSPE+U2TJegxu4Ro/xCY=" }, - "info/picocli#picocli/4.7.7": { - "jar": "sha256-+G4w//0Q0rE7jKqNSyN6fuYfL/zPWxlB3nGLdl0jW/g=", - "pom": "sha256-GxjTYxNN9mYx0rn3R1Bo1zQiW6OJzfkIKhvYvakNV9M=" - }, - "io/hotmoka#toml4j/0.7.3": { - "jar": "sha256-LuLTLMaF/I+YfMBZUFnRh+MyykHhropRX+rQNvt3e8E=", - "pom": "sha256-5uON4WRKo2jb7IdQeTRT7eHsXUGXLUTkkCcBBS5rpzw=" + "info/picocli#picocli/4.7.1": { + "jar": "sha256-DnGR++Mk+5340tIHwHtma43CW7vib1OkxS4v7OYkqXY=", + "pom": "sha256-+pvmlFd2A+LUy1X0UjctP2wPk+XzjuXNf7Yos3k8qbw=" }, "io/leangen/geantyref#geantyref/1.3.16": { "jar": "sha256-fx1ZEJLVFCtqqnz1n5TEx01X2+7wOy+CYpSfjza6xuM=", "pom": "sha256-JCgbY4MutO8QZOfd/b57eWquGr+IeYrb9NC5ZpurpKQ=" }, - "io/netty#netty-buffer/4.2.9.Final": { - "jar": "sha256-0BOpas6kiJvAHuA3ONU8LkoF4/rsFMJakrQiTHfXpAg=", - "pom": "sha256-0Fsmqy58aeaUCb5HuFEA7lLe/0ox5c486Cdz39NrnvA=" + "io/netty#netty-buffer/4.2.7.Final": { + "jar": "sha256-uBYTyO0iscw57M8qKL0MHUVh+y5eVCBhYX70zh0ii/U=", + "pom": "sha256-6mGx9EqNui22yX8iou5DGsVil430rDlUcei28oZtwH4=" }, - "io/netty#netty-codec-base/4.2.9.Final": { - "jar": "sha256-KEoouE9Uus42qeYC49lpRpbSLFbycZevBG4aZUfysJM=", - "pom": "sha256-zTp/Ub4OeSb6iZCf3cCPF4gpOm15MYDjnG5nIxKNyFI=" + "io/netty#netty-codec-base/4.2.7.Final": { + "jar": "sha256-Y2BBW3yHFgr83l59SUbDVTm58EPoFmyRp//5XMYGfZ8=", + "pom": "sha256-Mu41Sjk4YJqMC/Ay9GxwqzJ9eFVR0mmDdwyakDIJKPo=" }, - "io/netty#netty-codec-compression/4.2.9.Final": { - "jar": "sha256-RSOmX+lb9HSv3Pr34sIUsIjSN22sxDc3virPloUgvn4=", - "pom": "sha256-9GACbD9AEEUjZC0xvhto19Jk672//Z1MUbOETdxF1FQ=" + "io/netty#netty-codec-compression/4.2.7.Final": { + "jar": "sha256-7dU600mRgEMBpGVxET2P+01vZ+bYdGdNr7uRVyQnXLM=", + "pom": "sha256-uAzpd/6sX//UviPOI03TtvtMNXVrJRL7AdzcAdinSoc=" }, - "io/netty#netty-codec-haproxy/4.2.9.Final": { - "jar": "sha256-4UOPOyqbTtxS8ibk+ngEgY/5eQj2E2yxgNl3o4v/KTY=", - "pom": "sha256-RGfxxJoD1gIPRuSkrGZMqCMkkE6AeyWltgsbChQm6vs=" + "io/netty#netty-codec-haproxy/4.2.7.Final": { + "jar": "sha256-bwnVN5FKpGWJE4TIpM8NuXfdkAmgtzqBoFDwpsv6lfc=", + "pom": "sha256-Rc/v9/EyJXbOPaHMuoo0i0ANceNu1UVGEm1q1ZcJBPo=" }, - "io/netty#netty-codec-http/4.2.9.Final": { - "jar": "sha256-p2zLXTLJc9OkY3EMm/gzVJlTVNHDnh5LxhVcYotxogo=", - "pom": "sha256-84KznS+10O4TatoYqKe262GNdquSV5vG7azxtEgNygc=" + "io/netty#netty-codec-http/4.2.7.Final": { + "jar": "sha256-KYTdOEIKYcTdaPysxR/8Uo60b3P3eVza/bOk1vy3aGI=", + "pom": "sha256-hQc6wlleQUiRi1psLnAZMtedm+GNTx212S1qojlj4oA=" }, - "io/netty#netty-codec-marshalling/4.2.9.Final": { - "jar": "sha256-R5m90xTiOtMsJWx/XnOKUtC9l7nV/n8ujwiIBn9qDfc=", - "pom": "sha256-F3mnWzjkqUjxCCpjCituGG1sa12QT+zRstlbzt1H7Ko=" + "io/netty#netty-codec-marshalling/4.2.7.Final": { + "jar": "sha256-5VCtt1jupDqkneAOdBiwmJMXEdSjHWLmXEGwmUyVsjc=", + "pom": "sha256-77XNFeXpIODSbygJ+aiRp5fxOJ9hEX5VFLfmNaOPmjM=" }, - "io/netty#netty-codec-protobuf/4.2.9.Final": { - "jar": "sha256-EFYZ4pUDY5fwd4a1b8fk9FqB4lhybLCfVh/pDBZ/PEA=", - "pom": "sha256-/enz9XoZkMY08yG4yp5nnRHZ0LOiuzSGfGvHzoqaTco=" + "io/netty#netty-codec-protobuf/4.2.7.Final": { + "jar": "sha256-SyUlm2916/x38BSgj2m60BkRbU9cpUj9xB89rYwN4zE=", + "pom": "sha256-Ub3X5EMhhkFp9Oqt7RQaaXLBhkh+/fAa59t/3jaQcSU=" }, - "io/netty#netty-codec/4.2.9.Final": { - "jar": "sha256-4pF9hkc0rOOV74xnY5F7fmAZrVO4p8+PQKO9UiaN50Q=", - "pom": "sha256-hi3Qk8SJSXMHZEsOuja+PG4wf4Vn3/veyEe3/QfX/l8=" + "io/netty#netty-codec/4.2.7.Final": { + "jar": "sha256-XzaWWDgXiZmMBCqY8C2nHZw5iEu7T3/VgoL3ZeCcoDE=", + "pom": "sha256-5FSK3jVlANmEy7jJP9iEZacPdWHlGbyV6y/O7s4bKjE=" }, - "io/netty#netty-common/4.2.9.Final": { - "jar": "sha256-mdll1QewlZmrLSFelAxpDU986M2X/xN3aqF+tODZC4o=", - "pom": "sha256-17ECJZg72gPp+Kgz1TmmARv8s6KF4jF2k/T5g5vXdzw=" + "io/netty#netty-common/4.2.7.Final": { + "jar": "sha256-I0W8DtWEP6V6pJ66Z1KUhcOh1CD88EKTJMgiDHqA6aY=", + "pom": "sha256-/jMRoayD8KGH/n2+Be6B6Ef2JvmtkN2wx4WusJ0Y/DM=" }, - "io/netty#netty-handler/4.2.9.Final": { - "jar": "sha256-4WEmxxHByCFzQogswNkIYAeFLLD5mjUc/r53JejH4QA=", - "pom": "sha256-VCVp7nmpH2qrBJqIv7LEVZipM+P6A5s/5/9A0q93XuM=" + "io/netty#netty-handler/4.2.7.Final": { + "jar": "sha256-IdBjQJwS287EbTgMiFag97altou18dAF6wZbTWQUbLM=", + "pom": "sha256-79QqDJKAKPlJsWREfBtOFt7eccgihRppL1hzEhTr0oM=" }, - "io/netty#netty-parent/4.2.9.Final": { - "pom": "sha256-fNer5MWD6zruhW9zr3eijbvfN+e6osbqhaDZ49aLfsI=" + "io/netty#netty-parent/4.2.7.Final": { + "pom": "sha256-56FYFCV9GpaNpyU3yRUscw7d9uf9Wj581wJuVclladM=" }, - "io/netty#netty-resolver/4.2.9.Final": { - "jar": "sha256-9MN0KqQ0cA4KJj64rp4LGugmhnQ+IdD8a6NI2lljYFM=", - "pom": "sha256-k3hoxxGqjzahYshXlZg71DwnIOhKlnrLtbGsw3B0tcY=" + "io/netty#netty-resolver/4.2.7.Final": { + "jar": "sha256-fk1WmGfmwIQ3+yGiIOoBwpSw448BFJtoPIlaG82ShDg=", + "pom": "sha256-F6vZjvgRyuBYbZ41xMUUZ3GXLrJy+Fek2eDDBe0hs5g=" }, - "io/netty#netty-transport-classes-epoll/4.2.9.Final": { - "jar": "sha256-s48fDtpKBDE4joyhrbuk3fpEzkZg417V7iiqMG29AAY=", - "pom": "sha256-Sd/PCNdBUhe9zdm4tQNnbMX41GbqCKkAnJnyMtlJ5/U=" + "io/netty#netty-transport-classes-epoll/4.2.7.Final": { + "jar": "sha256-RJKUjmp2lDmOUZfPFe0uIdZmKnOdAQrmZvonbnIihTw=", + "pom": "sha256-RoQ5xbLK4wAXuv2XaqJJfEiA/aYSSyPBrUKQt5CMXA8=" }, - "io/netty#netty-transport-classes-io_uring/4.2.9.Final": { - "jar": "sha256-6fnQYHSNgpbfMHiZI7KLPdgDmoVgYc6nRsYndd4WsMQ=", - "pom": "sha256-8JA/Icqjzvkn3u3k7dNJUmAdwIIHhLfE0+sY41djQ1A=" + "io/netty#netty-transport-classes-io_uring/4.2.7.Final": { + "jar": "sha256-/5ZodMYvU+0HKWLxv128Sf3dS9PGC/yafhfONLOax68=", + "pom": "sha256-fEFSqfVOcE6KSVjdiggLCaW3d6jqcxjxKNfOM4ayqic=" }, - "io/netty#netty-transport-classes-kqueue/4.2.9.Final": { - "jar": "sha256-qkLN0FzSvETe6qrjSamIaatTi3AQKB4ADWs01eBXcKY=", - "pom": "sha256-zDAhOh/3GjlIFb1JT5s6XAHFFoCOOt/AYf9iUK1IaWU=" + "io/netty#netty-transport-classes-kqueue/4.2.7.Final": { + "jar": "sha256-o+sclK4aa+nh0exSw/XFEKdbBLjvHqhrfnez8Sh648w=", + "pom": "sha256-mtwTZN1F7chJ933s8SVy3FR4XPbqx5wuhqdyXRGhczM=" }, - "io/netty#netty-transport-native-epoll/4.2.9.Final": { - "jar": "sha256-p3hrxbHVhOgmKUkdYwC5RcGUBaVC38oVn5Y+RHpU9mc=", - "pom": "sha256-DTjTPWo8sDka1+RkhwRqHXeNaoZ0ugHymnni0j7h7OI=" + "io/netty#netty-transport-native-epoll/4.2.7.Final": { + "jar": "sha256-vc+Af3LZqbf5hklxcQdlLKcVMkVwLomTnM63D4zKsY8=", + "pom": "sha256-ygZltZ4tBvqQRF5G/UBaYumOhrFL9TwC0eyCUYE8Vto=" }, - "io/netty#netty-transport-native-epoll/4.2.9.Final/linux-aarch_64": { - "jar": "sha256-CPaBEynhlhJ0KZ85KXIPSqk/h7JZqU1gHC2ddm80WSo=" + "io/netty#netty-transport-native-epoll/4.2.7.Final/linux-aarch_64": { + "jar": "sha256-LwxzCdffSKiPs3TALPtEbhoeX7WX+wLXc8cKwH2iwmg=" }, - "io/netty#netty-transport-native-epoll/4.2.9.Final/linux-x86_64": { - "jar": "sha256-Kc4d3kCWN3kyedce1L4aru1Vr1emw0W0Y9ZZfhlU2K0=" + "io/netty#netty-transport-native-epoll/4.2.7.Final/linux-x86_64": { + "jar": "sha256-fzlcj9vmmQ92ZECLV9kZBCQBuJMXj8uki+vxphv3hhg=" }, - "io/netty#netty-transport-native-io_uring/4.2.9.Final": { - "jar": "sha256-vrTFJGgnshkiv6dDXDWImC0oJZ5Zx0HoixY7dT41P1o=", - "pom": "sha256-bH8FRivEqxkzkTvhgFRo6BDr313Lg6WvMZHYZCurfE8=" + "io/netty#netty-transport-native-io_uring/4.2.7.Final": { + "jar": "sha256-mKjWMVHe0xcscfhVIDrhlpgvAFIZaso7a6l9PoXUJgk=", + "pom": "sha256-Q543Rm1v45ZZHsS6JjVcjkRMOB0j9wVMIKL9isXJe0I=" }, - "io/netty#netty-transport-native-io_uring/4.2.9.Final/linux-aarch_64": { - "jar": "sha256-llDBxCNF+1ZochGCXK0Ed1r6lAWYL4XeOtOiV7IE5dE=" + "io/netty#netty-transport-native-io_uring/4.2.7.Final/linux-aarch_64": { + "jar": "sha256-hPw53BAZ9KbFJEsdealxTLZ/BFu9rk/vJvSYHm9nrb4=" }, - "io/netty#netty-transport-native-io_uring/4.2.9.Final/linux-x86_64": { - "jar": "sha256-+d4mzq7JD/2esBL9fMNx3c8y6HbR/tlSYK8I/CaXpg4=" + "io/netty#netty-transport-native-io_uring/4.2.7.Final/linux-x86_64": { + "jar": "sha256-wjZQn1W/khZm8CMu/rdWMnm2y0YNnko2xKukDSIXv2I=" }, - "io/netty#netty-transport-native-kqueue/4.2.9.Final": { - "jar": "sha256-g8oA+SJLLctYKEUDfKw8tY4BSdMcipDbpYDR+vDdPII=", - "pom": "sha256-04EjBoO0kQyVXkjIobpnN2YSPNnAjG5nQohwr4Spaws=" + "io/netty#netty-transport-native-kqueue/4.2.7.Final": { + "jar": "sha256-8BrzuSyghzja6ep5E3jCiF8wXSEK0W48VxZVueJr0Dw=", + "pom": "sha256-/0QzBLr/YGgE922pFg73w/Kh7mZcZe9it74n1vfAMqM=" }, - "io/netty#netty-transport-native-kqueue/4.2.9.Final/osx-aarch_64": { - "jar": "sha256-TXn53Ysk/48GFCq4RYUdvnJVDbixIsaTX1dlqzUbaz4=" + "io/netty#netty-transport-native-kqueue/4.2.7.Final/osx-aarch_64": { + "jar": "sha256-dkemlVjj1Jo1J4HCroGpfha0QtfGVloGtK4PFSmEidU=" }, - "io/netty#netty-transport-native-kqueue/4.2.9.Final/osx-x86_64": { - "jar": "sha256-nBq1OxEYK2VcA9xkbUdzrqmtNfUcGH1gOgZ9XdoSmtU=" + "io/netty#netty-transport-native-kqueue/4.2.7.Final/osx-x86_64": { + "jar": "sha256-opwItolXRqrKeW5ypCm8cF9AJn/rNfdc2Pu81N5t6Z8=" }, - "io/netty#netty-transport-native-unix-common/4.2.9.Final": { - "jar": "sha256-STRaXcaN0yt/6dPSNkDZGMDo5drLs/wWngwjGh/H7eo=", - "pom": "sha256-2LwuDXbPD+zk+ZeqsD0dJo4NEznMGWsyHdMk3y41zn8=" + "io/netty#netty-transport-native-unix-common/4.2.7.Final": { + "jar": "sha256-c2cDs/bRJ+GC9b6Ii24VcysMCNZjTgByU1KmqdGZdLI=", + "pom": "sha256-EnhcnEoH0qFDJYYWRWrqw6bgIqoXJBeYA04x+LDtHqk=" }, - "io/netty#netty-transport/4.2.9.Final": { - "jar": "sha256-CuLBawAmLrtdZy/J9qp76SuwY+vLCCbDwG4GoZvdHD4=", - "pom": "sha256-ud2qfeBju/KWMpl8hBtGSm4u5iW7v2qeZEIWWMpkv0g=" + "io/netty#netty-transport/4.2.7.Final": { + "jar": "sha256-qtxvsFwU+3iTaMo/hUchVJxy9sDYF5i7zPneG7cWiSs=", + "pom": "sha256-zQTiYzq09WBE6aFdUV6ZyBY4iZ2vB9gJdhlzp8DPnqo=" }, - "it/unimi/dsi#fastutil/8.5.18": { - "jar": "sha256-kJSuZ9AdCtJG+IbxGtVX/C55xyy/P+7YPhUSqK6Qp0o=", - "pom": "sha256-GE28pJp9A+Oh358Pl7RiCW6En1rQXFz3s4YibsFZ73k=" + "it/unimi/dsi#fastutil/8.5.15": { + "jar": "sha256-z/62ZzvfHm5Dd9aE3y9VrDWc9c9t9hPgXmLe7qUAk2o=", + "pom": "sha256-f2baEne0E7MncoaNO1C1XF/lTiZD8bVORZbk9Sofvtg=" }, "jakarta/inject#jakarta.inject-api/2.0.1": { "jar": "sha256-99yYBi/M8UEmq7dRtk+rEsMSVm6MvchINZi//OqTr3w=", @@ -857,41 +875,29 @@ "jar": "sha256-3ybMWPI19HfbB/dTulo6skPr5Xidn4ns9o3WLqmmbCg=", "pom": "sha256-amd2O3avzZyAuV5cXiR4LRjMGw49m0VK0/h1THa3aBU=" }, - "net/sf/saxon#Saxon-HE/12.9": { - "jar": "sha256-jzqSFqU3NnEyKT6su6nfBi6s6PixahhK9Z4uSDnUzUE=", - "pom": "sha256-+IDp0dQAyZwYkvWWTl/JIN0d7wViI1m5sFjzK1tCaXU=" + "net/sf/saxon#Saxon-HE/12.1": { + "jar": "sha256-IA8skvaHHVG8LhS3Br82TTvb8isnlgtu1rqH5BZk5VA=", + "pom": "sha256-0wqLQpc3MZf2YH5RpAppxVe7Ts7aweZU0bAiob/ZjYI=" }, - "org/antlr#antlr4-master/4.13.2": { - "pom": "sha256-Ct2gJmhYc/ZRNgF4v/xEbO7kgzCBc5466dbo8H6NkCo=" + "org/antlr#antlr4-master/4.11.1": { + "pom": "sha256-cupd6Nq7ZhV4X9D+qqur1T3NrnD+FrzXx7lobApuAK0=" }, - "org/antlr#antlr4-runtime/4.13.2": { - "jar": "sha256-3T6KE6LWab+E+42DTeNc5IdfJxV2mNIGJB7ISIqtyvc=", - "pom": "sha256-A84HonlsURsMlNwU/YbM3W44KMV5Z60jg94wTg0Runk=" + "org/antlr#antlr4-runtime/4.11.1": { + "jar": "sha256-4GxlU8HMwU02BS7EsPxvE7gIz5V7Wx3D9hv0AZlq2lk=", + "pom": "sha256-xFbsKVkHjFkfvX72mtlACnJ5IAaNdGmJx0q4BO1oGzQ=" }, "org/apache#apache/16": { "pom": "sha256-n4X/L9fWyzCXqkf7QZ7n8OvoaRCfmKup9Oyj9J50pA4=" }, - "org/apache#apache/18": { - "pom": "sha256-eDEwcoX9R1u8NrIK4454gvEcMVOx1ZMPhS1E7ajzPBc=" - }, "org/apache#apache/19": { "pom": "sha256-kfejMJbqabrCy69tAf65NMrAAsSNjIz6nCQLQPHsId8=" }, - "org/apache#apache/21": { - "pom": "sha256-rxDBCNoBTxfK+se1KytLWjocGCZfoq+XoyXZFDU3s4A=" - }, "org/apache#apache/23": { "pom": "sha256-vBBiTgYj82V3+sVjnKKTbTJA7RUvttjVM6tNJwVDSRw=" }, - "org/apache#apache/34": { - "pom": "sha256-NnGunU0GKuO7mFcxx2CIuy9vfXJU4tME7p9pC5dlEyg=" - }, "org/apache#apache/35": { "pom": "sha256-6il9zRFBNui46LYwIw1Sp2wvxp9sXbJdZysYVwAHKLg=" }, - "org/apache#apache/6": { - "pom": "sha256-Eu21CW4T9Aw2LQvUCQJYn6lYZQUSP6Jnmc5QsRb6W7M=" - }, "org/apache/ant#ant-launcher/1.10.15": { "jar": "sha256-XIVRmQMHoDIzbZjdrtVJo5ponwfU1Ma5UGAb8is9ahs=", "pom": "sha256-ea+EKil53F/gAivAc8SYgQ7q2DvGKD7t803E3+MNrJU=" @@ -903,61 +909,42 @@ "jar": "sha256-djrNpKaViMnqiBepUoUf8ML8S/+h0IHCVl3EB/KdV5Q=", "pom": "sha256-R4DmHoeBbu4fIdGE7Jl7Zfk9tfS5BCwXitsp4j50JdY=" }, - "org/apache/commons#commons-lang3/3.8.1": { - "jar": "sha256-2sgH9lsHaY/zmxsHv+89h64/1G2Ru/iivAKyqDFhb2g=", - "pom": "sha256-7I4J91QRaFIFvQ2deHLMNiLmfHbfRKCiJ7J4vqBEWNU=" - }, "org/apache/commons#commons-parent/39": { "pom": "sha256-h80n4aAqXD622FBZzphpa7G0TCuLZQ8FZ8ht9g+mHac=" }, - "org/apache/commons#commons-parent/42": { - "pom": "sha256-zTE0lMZwtIPsJWlyrxaYszDlmPgHACNU63ZUefYEsJw=" - }, - "org/apache/commons#commons-parent/45": { - "pom": "sha256-nIhiPs+pHwEsZz7kYiwO60Nn5eDSItlg92zSCLGk/aY=" - }, "org/apache/commons#commons-parent/47": { "pom": "sha256-io7LVwVTv58f+uIRqNTKnuYwwXr+WSkzaPunvZtC/Lc=" }, - "org/apache/commons#commons-parent/84": { - "pom": "sha256-kjn7lxAdsnBw5Jg9ENM6DpHPZ2ytkb9TgVQiw1Ye+bE=" + "org/apache/commons#commons-parent/52": { + "pom": "sha256-ddvo806Y5MP/QtquSi+etMvNO18QR9VEYKzpBtu0UC4=" }, "org/apache/commons#commons-parent/91": { "pom": "sha256-0vi2/UgAtqrxIPWjgibV+dX8bbg3r5ni+bMwZ4aLmHI=" }, - "org/apache/commons#commons-text/1.3": { - "jar": "sha256-gYWzpTEQktg+0fGEwtCTsxBdcmu9doZ8MrNRFUK7mag=", - "pom": "sha256-3usrqXAeSV3DHTJjPrhrlLJLCpbg3Gf7h+cGLxUwJ6o=" - }, - "org/apache/geronimo/genesis#genesis-default-flava/2.0": { - "pom": "sha256-CObhRvTiRSZt/53YALEodd0jZ9P2ejSrZgoSbIESFfg=" - }, - "org/apache/geronimo/genesis#genesis-java5-flava/2.0": { - "pom": "sha256-58U1i7u8J9qlsyf2O8EmUKdd3J+axtS/oSeJvh8sKds=" - }, - "org/apache/geronimo/genesis#genesis/2.0": { - "pom": "sha256-ue0vndQ0YxFY13MI7lZIYiwinM7OFyLF43ekKWkj2uY=" - }, "org/apache/groovy#groovy-bom/4.0.27": { "module": "sha256-1sIlTINHuEzahMr3SRShh8Lzd+QoTo2Ls/kBUhgQqos=", "pom": "sha256-qkTrUr/f5h0ns+RQ0rNI2I3qo0N6tNnUmoQJU0j59vs=" }, - "org/apache/httpcomponents#httpclient/4.5.13": { - "jar": "sha256-b+kCalZsalABYIzz/DIZZkH2weXhmG0QN8zb1fMe90M=", - "pom": "sha256-eOua2nSSn81j0HrcT0kjaEGkXMKdX4F79FgB9RP9fmw=" + "org/apache/httpcomponents#httpcomponents-parent/12": { + "pom": "sha256-QgnwlZMhKYfCnWgBkXMJ3V5vcbU7Kx0ODw77mErRH6E=" }, - "org/apache/httpcomponents#httpcomponents-client/4.5.13": { - "pom": "sha256-nLpZTAjbcnHQwg6YRdYiuznmlYORC0Xn1d+C9gWNTdk=" + "org/apache/httpcomponents/client5#httpclient5-parent/5.1.3": { + "pom": "sha256-onsUE67OkqOqR3SRX3WJ4MYXnXKNKsailddY7k+iTMU=" }, - "org/apache/httpcomponents#httpcomponents-core/4.4.14": { - "pom": "sha256-IJ7ZMctXmYJS3+AnyqnAOtpiBhNkIylnkTEWX4scutE=" + "org/apache/httpcomponents/client5#httpclient5/5.1.3": { + "jar": "sha256-KMdZJU9ONTGeB4u2/+p1Z2YI3BLLJDsk+zyHMlIpd/4=", + "pom": "sha256-GYirPRva4PUfIsg9yXuI+gdWGttiRGedi49xRs3ROq8=" }, - "org/apache/httpcomponents#httpcomponents-parent/11": { - "pom": "sha256-qQH4exFcVQcMfuQ+//Y+IOewLTCvJEOuKSvx9OUy06o=" + "org/apache/httpcomponents/core5#httpcore5-h2/5.1.3": { + "jar": "sha256-0OeLoVqo6+d5grZgrEsJqV1uA129vqdiV33ByOKTWAc=", + "pom": "sha256-K8AxehSO3Jrv6j7BU1OU787T0TfWL3/1ZW0LA/lMB4Y=" }, - "org/apache/httpcomponents#httpcore/4.4.14": { - "jar": "sha256-+VYgnkUMsdDFF3bfvSPlPp3Y25oSmO1itwvwlEumOyg=", - "pom": "sha256-VXFjmKl48QID+eJciu/AWA2vfwkHxu0K6tgexftrf9g=" + "org/apache/httpcomponents/core5#httpcore5-parent/5.1.3": { + "pom": "sha256-pnU4hlrg83RLIekcpH1GEFRzfFUtH/KdpxTIYMmS1bs=" + }, + "org/apache/httpcomponents/core5#httpcore5/5.1.3": { + "jar": "sha256-8r8vLHdyFpyeMGmXGWZ60w+bRsTp14QZB96y0S2ZI/4=", + "pom": "sha256-f8K4BFgJ8/J6ydTZ6ZudNGIbY3HPk8cxPs2Epa8Om64=" }, "org/apache/logging/log4j#log4j-api/2.25.3": { "jar": "sha256-6IZoKSD6D7nW62OV3LTeCIRD+GRsicXlhG4WjjJ/QG8=", @@ -998,51 +985,15 @@ "jar": "sha256-8+OzZCNzxp1MdEHUDroHZeHXROmStiGURS9epUUd/bo=", "pom": "sha256-XxSOOelo08K3a4426hN3mJ8KeetDpqWa5yPZElzLXGE=" }, - "org/apache/maven#maven-parent/34": { - "pom": "sha256-Go+vemorhIrLJqlZlU7hFcDXnb51piBvs7jHwvRaI38=" - }, "org/apache/maven#maven-xml/4.0.0-rc-3": { "jar": "sha256-BjxCTLR/dRZBJdXuolFnuTHdaU40Jo1QJHN050IR3Rk=", "pom": "sha256-nZZekiyqwDYkl9J7v6UaRI+UydcTYjZnnGhSNwb3KYI=" }, - "org/apache/maven/doxia#doxia-core/1.12.0": { - "jar": "sha256-XknNgnvrvOpYKdOziD0XrRzhXr1jlK61CtUNff2Tn80=", - "pom": "sha256-sDiPdIoIheE+fCxFOSH4u53U+1sZBb50VoVHbPNFbqM=" - }, - "org/apache/maven/doxia#doxia-logging-api/1.12.0": { - "jar": "sha256-mFMGFiwKn0wwnUYQlEfzDwK/b8m8FqPgOdWeHavQGS8=", - "pom": "sha256-ndmbQ1AiOEZYUxBpTERjGLFpK6dG7XFzdtWWGaJxI7Q=" - }, - "org/apache/maven/doxia#doxia-module-xdoc/1.12.0": { - "jar": "sha256-6HMboApO3TSyDv+eSnKcIEXGLLeWw+SRaSYH3kR2qwE=", - "pom": "sha256-+2nZW+S1WvLzsKm2jj6OYgY+aVlMH86+cFpaTbCZbSU=" - }, - "org/apache/maven/doxia#doxia-modules/1.12.0": { - "pom": "sha256-q4/2u0eTz7pZsU+zg/81GjSbEJHQccZrH8vKco1QW9w=" - }, - "org/apache/maven/doxia#doxia-sink-api/1.12.0": { - "jar": "sha256-XcpqqqnnDYoHZuFD3c+dsJ3l/eD7zHjLY11052TfzKU=", - "pom": "sha256-JrUf3babXKbgRM2ii40cGje2+v0M+5v7FakZ3lfGcdU=" - }, - "org/apache/maven/doxia#doxia/1.12.0": { - "pom": "sha256-LQKgvWTzMbdnzudFWzGTxvuCEQFDoRmFiryWh5il/Ck=" - }, - "org/apache/xbean#xbean-reflect/3.7": { - "jar": "sha256-EE5em7WmafhnIvMigZYHAPfsjjIJ71GyPrm20j0WKcs=", - "pom": "sha256-l5XBUyLF0ZrzNu69nhZPp9WJfEsASn1m4hY1oXPnSKk=" - }, - "org/apache/xbean#xbean/3.7": { - "pom": "sha256-6nFxMt6EBLYvyQl6HzIVxwXVJdRXvppfEmU63GjDOrc=" - }, "org/apiguardian#apiguardian-api/1.1.2": { "jar": "sha256-tQlEisUG1gcxnxglN/CzXXEAdYLsdBgyofER5bW3Czg=", "module": "sha256-4IAoExN1s1fR0oc06aT7QhbahLJAZByz7358fWKCI/w=", "pom": "sha256-MjVQgdEJCVw9XTdNWkO09MG3XVSemD71ByPidy5TAqA=" }, - "org/bouncycastle#bc-jdk18on-bom/1.82": { - "module": "sha256-4eQ/lpTIXXlmi6ufoWyQ8VHTQ6dCcSKiHTvWxxN7AU0=", - "pom": "sha256-wkeqzeVkVYEHUJ6dl/HbfyH819C/bKHx7iu/2m1sQjE=" - }, "org/bstats#bstats-base/3.1.0": { "jar": "sha256-2g5RgIzYzCi+8wAOcctPoLBeU5Mag6f59NPEAoNvQKA=", "module": "sha256-QhHroRz++QjrgoSEtw37ii5EjZ9aaZX/Gu8gEeVquhg=", @@ -1056,16 +1007,16 @@ "jar": "sha256-ZLAmkci51OdwD47i50Lc5+osboHmYrdSLJ7jv1aMBAo=", "pom": "sha256-3EzUOKNkYtATwjOMjiBtECoyKgDzNynolV7iGYWcnt4=" }, + "org/checkerframework#checker-qual/3.27.0": { + "jar": "sha256-Jf2m8+su4hOf9dfTmSZn1Sbr8bD7h982/HWqNWeebas=", + "module": "sha256-H1L7VyqCR4PvVyPW0LejEUOz2JKpQerXur4OH/kWM30=", + "pom": "sha256-yXIt1Co1ywpkPGgAoo2sf8UXbYDkz2v4XBgjdzFjOrk=" + }, "org/checkerframework#checker-qual/3.33.0": { "jar": "sha256-4xYlW7/Nn+UNFlMUuFq7KzPLKmapPEkdtkjkmKgsLeE=", "module": "sha256-6FIddWJdQScsdn0mKhU6wWPMUFtmZEou9wX6iUn/tOU=", "pom": "sha256-9VqSICenj92LPqFaDYv+P+xqXOrDDIaqivpKW5sN9gM=" }, - "org/checkerframework#checker-qual/3.52.1": { - "jar": "sha256-k0ZBoYyEYb9m1+k5srBUvypRjtQYj9fWg2plsDj1Nko=", - "module": "sha256-+K1w2ZdntgVFD9uskX2UAHDuTjATTfrK6igJSPJNKrg=", - "pom": "sha256-4lY9U+Bw0yPAZmljQxhEMVwYWlP1gLzQ+6xI/lCBCjs=" - }, "org/checkerframework#checker-qual/3.53.0": { "jar": "sha256-fKACgV2S+teelms3XC7nsrS/lTAkvJpdXgxZ3xP/Wvg=", "module": "sha256-EZ1p1BNJeDzB69OSskth1vOAhgFHqAsohbj3/KOrE78=", @@ -1081,25 +1032,6 @@ "org/codehaus/mojo#mojo-parent/40": { "pom": "sha256-/GSNzcQE+L9m4Fg5FOz5gBdmGCASJ76hFProUEPLdV4=" }, - "org/codehaus/plexus#plexus-classworlds/2.6.0": { - "jar": "sha256-Uvd8XsSfeHycQX6+1dbv2ZIvRKIC8hc3bk+UwNdPNUk=", - "pom": "sha256-RppsWfku/6YsB5fOfVLSwDz47hA0uSPDYN14qfUFp7o=" - }, - "org/codehaus/plexus#plexus-component-annotations/2.1.0": { - "jar": "sha256-veNhfOm1vPlYQSYEYIAEOvaks7rqQKOxU/Aue7wyrKw=", - "pom": "sha256-BnC2BSVffcmkVNqux5EpGMzxtUdcv8o3Q2O1H8/U6gA=" - }, - "org/codehaus/plexus#plexus-container-default/2.1.0": { - "jar": "sha256-bc6xJGsYgVO9y2+WLVQ9Ud22csygfK2Up4+6vJ7fCjk=", - "pom": "sha256-i4wg5jC9zHlcyYUCTEwQRcFHvhFgUsLJdeMMYI9/O0U=" - }, - "org/codehaus/plexus#plexus-containers/2.1.0": { - "pom": "sha256-lNWu2zxGAjJlOWUnz4zn/JRLe9eeTrq5BzhkGOtaCNc=" - }, - "org/codehaus/plexus#plexus-utils/3.3.0": { - "jar": "sha256-dtF0eSVA4nda+U0D0Q+y08d24s0KwOv0J9PlcAcruc4=", - "pom": "sha256-ecl5IHP97jzb69YadrqMLdEWJKn4XRKLrla9oZ4gR1w=" - }, "org/codehaus/plexus#plexus-utils/4.0.2": { "jar": "sha256-iVcnTnX+LCeLFCjdFqDa7uHdOBUstu/4Fhd6wo/Mtpc=", "pom": "sha256-UVHBO918w6VWlYOn9CZzkvAT/9MRXquNtfht5CCjZq8=" @@ -1111,9 +1043,6 @@ "org/codehaus/plexus#plexus/20": { "pom": "sha256-p7WUsAL8eRczyOlEcNCQRfT9aak61cN1dS8gV/hGM7Q=" }, - "org/codehaus/plexus#plexus/5.1": { - "pom": "sha256-o0PkT/V5au0OpgvhFFTJNc4gqxxfFkrMjaV0SC3Lx+k=" - }, "org/codehaus/woodstox#stax2-api/4.2.2": { "jar": "sha256-phxI1VPvrXi8Af/8SsUovruuZMuuwXCypeOc9h61Gr4=", "pom": "sha256-TpAuxVb8ZZi0HClS7BVz7cgVA35zMOxJIuq2GUImhuI=" @@ -1316,10 +1245,6 @@ "module": "sha256-qaTye+lOmbnVcBYtJGqA9obSd9XTGutUgQR89R2vRuQ=", "pom": "sha256-GdS3R7IEgFMltjNFUylvmGViJ3pKwcteWTpeTE9eQRU=" }, - "org/junit#junit-bom/5.12.2": { - "module": "sha256-3nCsXZGlJlbYiQptI7ngTZm5mxoEAlMN7K1xvzGyc14=", - "pom": "sha256-zvgP7IZFT2gGv7DfJGabXG8y4styhTnqhZ9H39ybvBc=" - }, "org/junit#junit-bom/5.13.2": { "module": "sha256-7WfhUiFASsQrXlmBAu33Yt1qlS3JUAHpwMTudKBOgoM=", "pom": "sha256-Q7EQT7P9TvS3KpdR1B4Jwp8AHIvgD/OXIjjcFppzS0k=" @@ -1332,48 +1257,44 @@ "module": "sha256-etPdstdOanfWWuiaykXUaMl7+ZFba8UvRJ1nXk5vmzU=", "pom": "sha256-9apHs2ZIPo0fm+8Q5noMZvZq/A8zHJ+WaxMQutYND28=" }, - "org/junit#junit-bom/6.0.1": { - "module": "sha256-xI2Y9e3P2cVeefrLugEB98G6CIY0ib6EqRYrmaGG0cI=", - "pom": "sha256-4xXFzLsIchbc4ErnDDK/F2K+KguKQ++B47p4MXpM1cg=" + "org/junit#junit-bom/5.14.2": { + "module": "sha256-XSb0RAOSMm3SSDz0kBQ+6hSV1QlUWaC5ZRp7GzjiTr8=", + "pom": "sha256-7S3MeFW9RgvMyTob8Mli5jtWb/fY8d7Q8fJZO6gYOq8=" }, - "org/junit#junit-bom/6.0.2": { - "module": "sha256-CXdtx1DgfltFk690n/aPkYB/nFTDMHUcn0tPHqZScdY=", - "pom": "sha256-w1iXvlPvCDmGw/CRGt53SctCrrQAyZH7ruUeRjn3uak=" + "org/junit/jupiter#junit-jupiter-api/5.14.2": { + "jar": "sha256-cEzaGFcxa7eRGZsaG/gXOwd4uTioRFyFvhFUxfiBOgo=", + "module": "sha256-Cw9Y0AG0zPQduv9mL/CPBGQLn1FWshXS3FfO6TaS6CY=", + "pom": "sha256-NXvqCt8V4DrCyOrfIEW5NCUPr4SAlAmWNZm89HXeszg=" }, - "org/junit/jupiter#junit-jupiter-api/6.0.2": { - "jar": "sha256-QHsgre1AeBrVRAMJY57wxCjnNbK2+IMcXS/5BBYTGV0=", - "module": "sha256-m0IZfs4uhSb/k97ysJ48tIACdjh9RzsIC9/8iKjANjA=", - "pom": "sha256-23UFjKyPW4WpVpNirMdghakehZNGaLbdCQVGi/s//jU=" + "org/junit/jupiter#junit-jupiter-engine/5.14.2": { + "jar": "sha256-Ak2bBtMbkPucWnwLxiz6LUnGc6aKenW+m1JUi6YoNQk=", + "module": "sha256-VB9i/FQLJZxofAveUbVBhLcvlGJIpA6C5J9kVXYSsGU=", + "pom": "sha256-2j/YDMHhYiWQKIDDwXB/O4laEdqcYjMISgSzlcDh/QE=" }, - "org/junit/jupiter#junit-jupiter-engine/6.0.2": { - "jar": "sha256-KnIBz0iQSDwbtQRekaWbcFKoGJspMKm+lRTGPh5Ys7Y=", - "module": "sha256-EE0f6yTeklH8eVpz1HenP6pXmpjYecftsZ/dGP20CJs=", - "pom": "sha256-MS3kqvSL6RZPiX8G1hFKkFK/W7ADRltOMzH5R6YFr3o=" + "org/junit/jupiter#junit-jupiter-params/5.14.2": { + "jar": "sha256-BthnOrFhdBF+uup8ydwIgJ23o5T12T79JANi2IPQHfA=", + "module": "sha256-9VHVeJrqNQzfsYFkyp2a/1bgyYIsfG32HTF3ZL6LQA0=", + "pom": "sha256-CuKLm95MW9YCVeCb7vGRXAfvL5gdO49HyLSIeVGJFuY=" }, - "org/junit/jupiter#junit-jupiter-params/6.0.2": { - "jar": "sha256-TG9Yd+hSp7iRIHxujWpesZaA0lsMQB0JpknR6hcRe1k=", - "module": "sha256-fdfWnOPlTkDuM0Z1qEkNJIi5bo3xIPXgqteaXSegur8=", - "pom": "sha256-XjLbpZkb2lFqzpu8ZaFBfW4KiFIeiobTP9IQjSqJIV8=" + "org/junit/jupiter#junit-jupiter/5.14.2": { + "jar": "sha256-7gTJsMUyE2pLxKhTH+VKIsY3uTppC8BkcYNXWE0eca4=", + "module": "sha256-yjO7T4OBTaS6iffR9w0zNieo/Pab5G2cf9973XACpr8=", + "pom": "sha256-6IK8iSW+9JsonGrn/GcKd0zmT3eer9dHuKo9ioqGfjo=" }, - "org/junit/jupiter#junit-jupiter/6.0.2": { - "jar": "sha256-ylRmpDWgsPEAOCxad+kerm1MozD2C00kATqaPwzXQug=", - "module": "sha256-SdwJtzTvpDJHDO65Dhry0wviY/MBCXhlXDVA8qgeqtY=", - "pom": "sha256-f9YZ4a5GOpmfjblWj6h9EJltFZo1P/zNy9O/h18spjU=" + "org/junit/platform#junit-platform-commons/1.14.2": { + "jar": "sha256-kRf5qtxmOsVQrl6B2NOrnx4Juy40wW5goesWM6F7zAY=", + "module": "sha256-LIpzAEQQ2y0nkUEBq+hnLcackhHD0ziuNHHZSisratI=", + "pom": "sha256-b6pnFLuLb4V7Gz7Tthz5EOv9rZPyWDJ506T9RWVa+cU=" }, - "org/junit/platform#junit-platform-commons/6.0.2": { - "jar": "sha256-HEnquO09gSgEWePz4fEZuSj5z8Uwx1AMKhWpro560w0=", - "module": "sha256-kx7oBBhnzXyu/UQCYYAs7o1Vm5uPSbOUkI4XwEpk+p4=", - "pom": "sha256-bivMHUT1ckbR03duMQ5Ybg9fTQTjrsA3eOgBCmtiDS8=" + "org/junit/platform#junit-platform-engine/1.14.2": { + "jar": "sha256-WkXEMHY6JsbFVHHhktivu2RDlWvBFrfmeWuNeJpaFG0=", + "module": "sha256-rJRHEJU5b12sFYUmoSVj/dUEkq57Km9JH62ixRsHS+s=", + "pom": "sha256-k2qlp7HfWDlzoyJ/y9uV6nTjHhvrGOqGmS7JBlPwqGo=" }, - "org/junit/platform#junit-platform-engine/6.0.2": { - "jar": "sha256-MUlbdUuogrppPBn6nYh+Ya9vOFD1h0G9WMPxKd7KVRc=", - "module": "sha256-mgE8iVsXgJnmIfvNuJ3rxldDqW1i7TL4xuWfzu/BN8M=", - "pom": "sha256-6tUsFcvLoTHf7NLSrVOFjwEdfHUwCMAU/pldUolaEeI=" - }, - "org/junit/platform#junit-platform-launcher/6.0.2": { - "jar": "sha256-vZkQ97ykqdQFC6heHwduO4VzI51F33lnOGKqsphZV5I=", - "module": "sha256-1SKe2c1l4Uoi2Lk4Z7H7lbg/drJUUHO04LxpxOnGyi0=", - "pom": "sha256-/8xw6oNXyJK5Bbr+/g+zOZ6uktqxxNSMxbJ9EYkKUnY=" + "org/junit/platform#junit-platform-launcher/1.14.2": { + "jar": "sha256-HfxXdiDdEx6Ddl9mKsqhCaLfV1KgOZ8DTIaKyHMyOvI=", + "module": "sha256-TlbYQ96bbUO3CC/Ux0IHDSp9+rUZL7oaKQCYDwa+MTk=", + "pom": "sha256-BFn8NaM0Pr/qeOt5MvpB7OdtgyQ3A1MAsEjnpC6A5wk=" }, "org/lanternpowered#lmbda/2.0.0": { "jar": "sha256-v7mL90YQgkvVbhDYJSM6Zg66M7qRXPlHJGJX9QPadfM=", @@ -1442,10 +1363,6 @@ "org/slf4j#slf4j-parent/2.0.17": { "pom": "sha256-lc1x6FLf2ykSbli3uTnVfsKy5gJDkYUuC1Rd7ggrvzs=" }, - "org/slf4j#slf4j-simple/2.0.17": { - "jar": "sha256-3f6lmsB0xtPiSsLDhiLS2WOJXhf3CzjtS9rk14C+aWQ=", - "pom": "sha256-+zDo4vauotKYQnmGd+1FQbmyJVcVwVg1DKLF9ce4ZLA=" - }, "org/sonatype/oss#oss-parent/5": { "pom": "sha256-FnjUEgpYXYpjATGu7ExSTZKDmFg7fqthbufVqH9SDT0=" }, @@ -1507,13 +1424,13 @@ "jar": "sha256-HT3hIYOiqJada8b/Wtdx3l1W0ISXxdk+FopctxDiy/E=", "pom": "sha256-yGRf/88P5qu8IVS8i/0Jysbgd2M4Kz6cGLXbmR7IFjk=" }, - "org/xmlresolver#xmlresolver/5.3.3": { - "jar": "sha256-H+TVuS9wjc24LbzhKRngFx5rXKYsbcpiIEg2JQmP618=", - "module": "sha256-DeilBgQ5G2UDnI/6PxQRiSJ+x5rFMyPhPiunKIy3no4=", - "pom": "sha256-JhradtnmZ2AI3Kw3ek1FiXSRZrYGVZ9Z8uRepi2Ldew=" + "org/xmlresolver#xmlresolver/5.1.1": { + "jar": "sha256-MSL4rkDERq27MDzVUldoA/2/bq77hL985D0TNlsnymg=", + "module": "sha256-DaZVpENW8JhTRljd56tHCwOSc8Wc9NyU7HcQYnCpzV0=", + "pom": "sha256-pQDlCR85eXYVDo05n+tBDIXlfXyQl9Y5gdMeL27Bbtk=" }, - "org/xmlresolver#xmlresolver/5.3.3/data": { - "jar": "sha256-sMSHrS8+VYvo2CnJFtJFjRCspqW6+npNBSS3CEXkilw=" + "org/xmlresolver#xmlresolver/5.1.1/data": { + "jar": "sha256-uvgjj/PdgGV2SHWvLkHeiw7kWF4AsC9R7JEb1l/TwcM=" }, "org/yaml#snakeyaml/1.26": { "jar": "sha256-2H1gflAIhTVsA8HK5h6MLgXWl9+Hh9WroTSEwut2qEQ=", diff --git a/pkgs/by-name/ve/velocity/package.nix b/pkgs/by-name/ve/velocity/package.nix index ef2eada7189e..86473e45a344 100644 --- a/pkgs/by-name/ve/velocity/package.nix +++ b/pkgs/by-name/ve/velocity/package.nix @@ -34,13 +34,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "velocity"; - version = "3.5.0-unstable-2026-02-21"; + version = "3.5.0-unstable-2026-03-03"; src = fetchFromGitHub { owner = "PaperMC"; repo = "Velocity"; - rev = "6aff78728c267bbb67b07298b8cf4580fb79fc6f"; - hash = "sha256-hO1xXMd7aobYBvTwpLGeRqwrYCKdB1ZhzfOo/z1wuQM="; + rev = "e0db25664fc82eabd9fde5aac22a2311a9765975"; + hash = "sha256-o3BNJyRNu5nJpC/Zagd/D3OsF0KBqZCR9sTTf/AEU3M="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ve/veryl/package.nix b/pkgs/by-name/ve/veryl/package.nix index 65fb91447c76..83452d135519 100644 --- a/pkgs/by-name/ve/veryl/package.nix +++ b/pkgs/by-name/ve/veryl/package.nix @@ -10,17 +10,17 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "veryl"; - version = "0.18.0"; + version = "0.19.0"; src = fetchFromGitHub { owner = "veryl-lang"; repo = "veryl"; rev = "v${finalAttrs.version}"; - hash = "sha256-dqVEl/sClzhLiX5ung4au6dXUkeMbKPdoSDRV0evT3w="; + hash = "sha256-uplW62XoWhMtsMt658BlnHm9bEHJUzZqtJRTUBCjOrs="; fetchSubmodules = true; }; - cargoHash = "sha256-0RFzZwaF8hVVBBBC7l9Ql9mN99cxI2tiWlo7eNX/Tho="; + cargoHash = "sha256-h9ECFtIfFjIheRMFUyCUDYIp1RLQ9ZH4mIlaCH1g9Lo="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/by-name/wa/warp-terminal/versions.json b/pkgs/by-name/wa/warp-terminal/versions.json index 643b7ffe2131..8a4b4ef8a72a 100644 --- a/pkgs/by-name/wa/warp-terminal/versions.json +++ b/pkgs/by-name/wa/warp-terminal/versions.json @@ -1,14 +1,14 @@ { "darwin": { - "hash": "sha256-HiMDB8x72zL8XZJ36M2mVfF2CiPDCh//MnKC1ZJYWvU=", - "version": "0.2026.02.18.08.22.stable_02" + "hash": "sha256-Q29tEoB3RVE7PlDK5o4OiaSC39ksgK9F3DYQ9uIu9no=", + "version": "0.2026.02.25.08.24.stable_01" }, "linux_x86_64": { - "hash": "sha256-+CRcerac94LJjwamaEVVyl2GxHRbxydNe/xlIMQfcfU=", - "version": "0.2026.02.18.08.22.stable_02" + "hash": "sha256-PBDITM/Zc6rj91knMIu4QvwF6NRJ8fxzq8Btd01ens0=", + "version": "0.2026.02.25.08.24.stable_01" }, "linux_aarch64": { - "hash": "sha256-OQikiIpdegjQ7u3H6kRLc6s/4biN6l25KrHo01aEd6o=", - "version": "0.2026.02.18.08.22.stable_02" + "hash": "sha256-FC1WYLRv5nAddKKZKmEGUQLMuDMdT2WUleA5/fL7JIc=", + "version": "0.2026.02.25.08.24.stable_01" } } diff --git a/pkgs/by-name/wa/wayshot/package.nix b/pkgs/by-name/wa/wayshot/package.nix index e7d304b58f09..28c0cc15b67f 100644 --- a/pkgs/by-name/wa/wayshot/package.nix +++ b/pkgs/by-name/wa/wayshot/package.nix @@ -26,6 +26,7 @@ rustPlatform.buildRustPackage (finalAttrs: { maintainers = with lib.maintainers; [ dit7ya id3v1669 + Subserial ]; platforms = lib.platforms.linux; mainProgram = "wayshot"; diff --git a/pkgs/by-name/wk/wkhtmltopdf/package.nix b/pkgs/by-name/wk/wkhtmltopdf/package.nix index 28c9e3f58362..be0d0620fb47 100644 --- a/pkgs/by-name/wk/wkhtmltopdf/package.nix +++ b/pkgs/by-name/wk/wkhtmltopdf/package.nix @@ -94,6 +94,8 @@ in stdenv.mkDerivation ( { pname = "wkhtmltopdf"; + # required to fix eval when it's not overridden by platform below + version = "none"; dontStrip = true; diff --git a/pkgs/by-name/yt/yt-dlp/package.nix b/pkgs/by-name/yt/yt-dlp/package.nix index 768b0b6df558..c5bdeabf04da 100644 --- a/pkgs/by-name/yt/yt-dlp/package.nix +++ b/pkgs/by-name/yt/yt-dlp/package.nix @@ -23,14 +23,14 @@ python3Packages.buildPythonApplication rec { # The websites yt-dlp deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported # to the latest stable release. - version = "2026.02.21"; + version = "2026.03.03"; pyproject = true; src = fetchFromGitHub { owner = "yt-dlp"; repo = "yt-dlp"; tag = version; - hash = "sha256-r9I/zLyqGPeIzsHsLxJcfnLC3jpuyKMyX1UaMoM08jk="; + hash = "sha256-BPZzMT1IrZvgva/m5tYMaDYoUaP3VmpmcYeOUOwuoUY="; }; postPatch = '' diff --git a/pkgs/development/gnuradio-modules/mkDerivation.nix b/pkgs/development/gnuradio-modules/mkDerivation.nix index 960ecd413439..7a3b32563d10 100644 --- a/pkgs/development/gnuradio-modules/mkDerivation.nix +++ b/pkgs/development/gnuradio-modules/mkDerivation.nix @@ -7,32 +7,44 @@ mkDerivation: args: -# Check if it's supposed to not get built for the current gnuradio version -if (builtins.hasAttr "disabled" args) && args.disabled then - let - name = args.name or "${args.pname}"; - in - throw "Package ${name} is incompatible with GNURadio ${unwrapped.versionAttr.major}" -else +let + # Common validation and processing logic + processArgs = + args: + # Check if it's supposed to not get built for the current gnuradio version + if (builtins.hasAttr "disabled" args) && args.disabled then + let + name = args.name or "${args.pname}"; + in + throw "Package ${name} is incompatible with GNURadio ${unwrapped.versionAttr.major}" + else -if builtins.hasAttr "disabledForGRafter" args then - throw '' - `disabledForGRafter` is superseded by `disabled`. - Use `disabled = gnuradioAtLeast "${args.disabledForGRafter}";` instead. - '' -else + if builtins.hasAttr "disabledForGRafter" args then + throw '' + `disabledForGRafter` is superseded by `disabled`. + Use `disabled = gnuradioAtLeast "${args.disabledForGRafter}";` instead. + '' + else - let - args_ = { - enableParallelBuilding = args.enableParallelBuilding or true; - nativeBuildInputs = (args.nativeBuildInputs or [ ]); - # We add gnuradio and volk itself by default - most gnuradio based packages - # will not consider it a dependency worth mentioning and it will almost - # always be needed - buildInputs = (args.buildInputs or [ ]) ++ [ - unwrapped - unwrapped.volk - ]; - }; - in - mkDerivation (args // args_) + let + args_ = { + enableParallelBuilding = args.enableParallelBuilding or true; + nativeBuildInputs = (args.nativeBuildInputs or [ ]); + # We add gnuradio and volk itself by default - most gnuradio based packages + # will not consider it a dependency worth mentioning and it will almost + # always be needed + buildInputs = (args.buildInputs or [ ]) ++ [ + unwrapped + unwrapped.volk + ]; + }; + in + args // args_; + +in +if builtins.isFunction args then + # Function form: args is (finalAttrs -> attrset) + mkDerivation (finalAttrs: processArgs (args finalAttrs)) +else + # Attrset form: args is attrset + mkDerivation (processArgs args) diff --git a/pkgs/development/gnuradio-modules/osmosdr/default.nix b/pkgs/development/gnuradio-modules/osmosdr/default.nix index 8751efdeae4f..edfd4ac5aad6 100644 --- a/pkgs/development/gnuradio-modules/osmosdr/default.nix +++ b/pkgs/development/gnuradio-modules/osmosdr/default.nix @@ -1,12 +1,16 @@ { lib, - stdenv, mkDerivation, + gnuradioAtLeast, fetchgit, fetchpatch, gnuradio, + + # native cmake, pkg-config, + + # buildInputs logLib, libsndfile, mpir, @@ -22,16 +26,16 @@ libbladeRF, rtl-sdr, soapysdr-with-plugins, - gnuradioAtLeast, + features ? { }, }: -mkDerivation rec { +mkDerivation (finalAttrs: { pname = "gr-osmosdr"; version = "0.2.6"; src = fetchgit { url = "https://gitea.osmocom.org/sdr/gr-osmosdr"; - rev = "v${version}"; + rev = "v${finalAttrs.version}"; hash = "sha256-jCUzBY1pYiEtcRQ97t9F6uEMVYw2NU0eoB5Xc2H6pGQ="; }; @@ -58,12 +62,8 @@ mkDerivation rec { fftwFloat gmp icu - airspy - hackrf - libbladeRF - rtl-sdr - soapysdr-with-plugins ] + ++ finalAttrs.finalPackage.passthru.enabledFeaturesDeps ++ lib.optionals (gnuradio.hasFeature "gr-blocks") [ libsndfile ] @@ -80,7 +80,8 @@ mkDerivation rec { ]; cmakeFlags = [ (if (gnuradio.hasFeature "python-support") then "-DENABLE_PYTHON=ON" else "-DENABLE_PYTHON=OFF") - ]; + ] + ++ finalAttrs.finalPackage.passthru.enabledFeaturesCmakeFlags; nativeBuildInputs = [ cmake pkg-config @@ -89,6 +90,25 @@ mkDerivation rec { python.pkgs.mako python ]; + passthru = { + featuresDeps = { + # Other features don't have dependencies but can still be disabled in the + # `features` argument. + airspy = [ airspy ]; + bladerf = [ libbladeRF ]; + hackrf = [ hackrf ]; + rtl = [ rtl-sdr ]; + soapy = [ soapysdr-with-plugins ]; + }; + enabledFeaturesDeps = lib.pipe finalAttrs.finalPackage.passthru.featuresDeps [ + (lib.filterAttrs (name: deps: features.${name} or true)) + lib.attrValues + lib.flatten + ]; + enabledFeaturesCmakeFlags = lib.mapAttrsToList ( + feat: val: lib.cmakeBool "ENABLE_${lib.toUpper feat}" val + ) features; + }; meta = { description = "Gnuradio block for OsmoSDR and rtl-sdr"; @@ -97,4 +117,4 @@ mkDerivation rec { maintainers = with lib.maintainers; [ bjornfor ]; platforms = lib.platforms.unix; }; -} +}) diff --git a/pkgs/development/octave-modules/arduino/default.nix b/pkgs/development/octave-modules/arduino/default.nix index 130c1013b34d..52f18c273522 100644 --- a/pkgs/development/octave-modules/arduino/default.nix +++ b/pkgs/development/octave-modules/arduino/default.nix @@ -1,18 +1,21 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, instrument-control, arduino-core-unwrapped, + nix-update-script, }: buildOctavePackage rec { pname = "arduino"; - version = "0.10.0"; + version = "0.12.3"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-p9SDTXkIwnrkNXeVhzAHks7EL4NdwBokrH2j9hqAJqQ="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-arduino"; + tag = "release-${version}"; + sha256 = "sha256-gYoYXJwkuoI1S2SdOu6qpemlSjgAAx7N5LYwJq9ZrU8="; }; requiredOctavePackages = [ @@ -23,6 +26,13 @@ buildOctavePackage rec { arduino-core-unwrapped ]; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "release-(.*)" + ]; + }; + meta = { name = "Octave Arduino Toolkit"; homepage = "https://gnu-octave.github.io/packages/arduino/"; diff --git a/pkgs/development/octave-modules/audio/default.nix b/pkgs/development/octave-modules/audio/default.nix index b7d3e2145162..777cf5d40249 100644 --- a/pkgs/development/octave-modules/audio/default.nix +++ b/pkgs/development/octave-modules/audio/default.nix @@ -1,7 +1,8 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, + nix-update-script, jack2, alsa-lib, rtmidi, @@ -10,11 +11,13 @@ buildOctavePackage rec { pname = "audio"; - version = "2.0.5"; + version = "2.0.10"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-/4akeeOQnvTlk9ah+e8RJfwJG2Eq2HAGOCejhiIUjF4="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-audio"; + tag = "release-${version}"; + sha256 = "sha256-v7FKj9GSlX86zpOcw1xKxy150ivUxpjU/rvg+3OGs2s="; }; nativeBuildInputs = [ @@ -27,11 +30,14 @@ buildOctavePackage rec { rtmidi ]; + passthru.updateScript = nix-update-script { extraArgs = [ "--version-regex=release-(.*)" ]; }; + meta = { homepage = "https://gnu-octave.github.io/packages/audio/"; license = lib.licenses.gpl3Plus; maintainers = with lib.maintainers; [ KarlJoad ]; description = "Audio and MIDI Toolbox for GNU Octave"; platforms = lib.platforms.linux; # Because of run-time dependency on jack2 and alsa-lib + broken = true; }; } diff --git a/pkgs/development/octave-modules/dicom/default.nix b/pkgs/development/octave-modules/dicom/default.nix index 8f77d7e7650e..f40e2fe36abb 100644 --- a/pkgs/development/octave-modules/dicom/default.nix +++ b/pkgs/development/octave-modules/dicom/default.nix @@ -1,18 +1,21 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, gdcm, cmake, + nix-update-script, }: buildOctavePackage rec { pname = "dicom"; - version = "0.6.1"; + version = "0.7.1"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-erUZudOknymgGprqUhCaSvN/WlmWZ1qgH8HDYrNOg2I="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-dicom"; + tag = "release-${version}"; + sha256 = "sha256-NNdcnIeHXDRmZZp0WvwGtfMJ4BSR6+aK6FVS0BG51U8="; }; nativeBuildInputs = [ @@ -25,6 +28,8 @@ buildOctavePackage rec { gdcm ]; + passthru.updateScript = nix-update-script { extraArgs = [ "--version-regex=release-(.*)" ]; }; + meta = { homepage = "https://gnu-octave.github.io/packages/dicom/"; license = lib.licenses.gpl3Plus; diff --git a/pkgs/development/octave-modules/general/default.nix b/pkgs/development/octave-modules/general/default.nix index 0b92b90341f8..cfb9bafd7afc 100644 --- a/pkgs/development/octave-modules/general/default.nix +++ b/pkgs/development/octave-modules/general/default.nix @@ -8,11 +8,11 @@ buildOctavePackage rec { pname = "general"; - version = "2.1.3"; + version = "2.1.4"; src = fetchurl { url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-amslJm3haXaAehdm6jYJxcGZl+ggUcnJc3i6YJ3QkyM="; + sha256 = "sha256-sTd31PWTLmiR8qrBPaF/IrjJuLT/jtAXllnr0ZEkFI8="; }; nativeBuildInputs = [ diff --git a/pkgs/development/octave-modules/geometry/default.nix b/pkgs/development/octave-modules/geometry/default.nix index 536634963481..8e48c4500da6 100644 --- a/pkgs/development/octave-modules/geometry/default.nix +++ b/pkgs/development/octave-modules/geometry/default.nix @@ -1,24 +1,28 @@ { buildOctavePackage, lib, - fetchhg, + fetchurl, matgeom, + gsl, }: buildOctavePackage rec { pname = "geometry"; - version = "unstable-2021-07-07"; + version = "4.1.0"; - src = fetchhg { - url = "http://hg.code.sf.net/p/octave/${pname}"; - rev = "04965cda30b5f9e51774194c67879e7336df1710"; - sha256 = "sha256-ECysYOJMF4gPiCFung9hFSlyyO60X3MGirQ9FlYDix8="; + src = fetchurl { + url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; + sha256 = "sha256-28FliEXJfS1mh8FJCmG0PTWZE9M0IOR1tlnzNfejQ2A="; }; requiredOctavePackages = [ matgeom ]; + buildInputs = [ + gsl + ]; + meta = { homepage = "https://gnu-octave.github.io/packages/geometry/"; license = with lib.licenses; [ diff --git a/pkgs/development/octave-modules/gsl/default.nix b/pkgs/development/octave-modules/gsl/default.nix index b01509fb2294..41aee3c2eb58 100644 --- a/pkgs/development/octave-modules/gsl/default.nix +++ b/pkgs/development/octave-modules/gsl/default.nix @@ -1,6 +1,5 @@ { buildOctavePackage, - stdenv, lib, fetchurl, gsl, @@ -24,8 +23,8 @@ buildOctavePackage rec { license = lib.licenses.gpl2Plus; maintainers = with lib.maintainers; [ KarlJoad ]; description = "Octave bindings to the GNU Scientific Library"; - # error: use of undeclared identifier 'feval'; did you mean 'octave::feval'? - # error: no member named 'is_real_type' in 'octave_value' - broken = stdenv.hostPlatform.isDarwin; + # When used in an `octave.withPackages` environment, octave fails to find + # libgsl.so from some reason. + broken = true; }; } diff --git a/pkgs/development/octave-modules/image-acquisition/default.nix b/pkgs/development/octave-modules/image-acquisition/default.nix index 0cde88f66e12..251068c7087a 100644 --- a/pkgs/development/octave-modules/image-acquisition/default.nix +++ b/pkgs/development/octave-modules/image-acquisition/default.nix @@ -1,18 +1,21 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, libv4l, fltk, + nix-update-script, }: buildOctavePackage rec { pname = "image-acquisition"; - version = "0.3.0"; + version = "0.3.3"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-vgLDbqFGlbXjDaxRtaBHAYYJ+wUjtB0NYYkQFIqTOgU="; + src = fetchFromGitHub { + owner = "Andy1978"; + repo = "octave-image-acquisition"; + tag = "image-acquisition-${version}"; + sha256 = "sha256-vS1i0PNAyfkxuMSfm+OGvFXkpbD4H6VJrs4eb+LxYBA="; }; buildInputs = [ @@ -23,6 +26,13 @@ buildOctavePackage rec { libv4l ]; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "image-acquisition-(.*)" + ]; + }; + meta = { homepage = "https://gnu-octave.github.io/packages/image-acquisition/"; license = lib.licenses.gpl3Plus; diff --git a/pkgs/development/octave-modules/instrument-control/default.nix b/pkgs/development/octave-modules/instrument-control/default.nix index 0c0e708ac932..c45c3d961dd7 100644 --- a/pkgs/development/octave-modules/instrument-control/default.nix +++ b/pkgs/development/octave-modules/instrument-control/default.nix @@ -1,16 +1,26 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, + nix-update-script, }: buildOctavePackage rec { pname = "instrument-control"; - version = "0.9.5"; + version = "0.10.0"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-Qm1aF+dbhwrDUSh8ViJHCZIc0DiZ1jI117TnSknqzX0="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "instrument-control"; + tag = "release-${version}"; + sha256 = "sha256-eXlH7BFRh4Vq/2LiBsmTvZNhXm4IbeCHK+OsKMQI0tY="; + }; + + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "release-(.*)" + ]; }; meta = { diff --git a/pkgs/development/octave-modules/miscellaneous/default.nix b/pkgs/development/octave-modules/miscellaneous/default.nix index 26695fbee578..d1fd05e738eb 100644 --- a/pkgs/development/octave-modules/miscellaneous/default.nix +++ b/pkgs/development/octave-modules/miscellaneous/default.nix @@ -1,7 +1,8 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, + nix-update-script, # Build-time dependencies ncurses, # >= 5 units, @@ -9,11 +10,13 @@ buildOctavePackage rec { pname = "miscellaneous"; - version = "1.3.1"; + version = "1.3.2"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-VxIReiXTHRJmADZGpA6B59dCdDPCY2bkJt/6mrir1kg="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-miscellaneous"; + tag = "release-${version}"; + sha256 = "sha256-IF5kBd7RD2+gooRTNtv2XDPJcpIZlsu8QXlO3f3nD/Q="; }; buildInputs = [ @@ -24,6 +27,13 @@ buildOctavePackage rec { units ]; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "release-(.*)" + ]; + }; + meta = { homepage = "https://gnu-octave.github.io/packages/miscellaneous/"; license = lib.licenses.gpl3Plus; diff --git a/pkgs/development/octave-modules/netcdf/default.nix b/pkgs/development/octave-modules/netcdf/default.nix index 3381380940d5..4e41446c3a67 100644 --- a/pkgs/development/octave-modules/netcdf/default.nix +++ b/pkgs/development/octave-modules/netcdf/default.nix @@ -1,17 +1,20 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, netcdf, + nix-update-script, }: buildOctavePackage rec { pname = "netcdf"; - version = "1.0.18"; + version = "1.0.19"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-ydgcKFh4uWuSlr7zw+k1JFUSzGm9tiWmOHV1IWvlgwk="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-netcdf"; + tag = "v${version}"; + sha256 = "sha256-yt39bd6EBLj7mr6EYngPfPXEMusncc9tx5So1Cp1zkM="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/octave-modules/ocl/default.nix b/pkgs/development/octave-modules/ocl/default.nix index 42e3521080fb..f57a141b5054 100644 --- a/pkgs/development/octave-modules/ocl/default.nix +++ b/pkgs/development/octave-modules/ocl/default.nix @@ -6,11 +6,11 @@ buildOctavePackage rec { pname = "ocl"; - version = "1.2.3"; + version = "1.2.4"; src = fetchurl { url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-g/HLE0qjnzYkq3t3OhxFBpL250JWbWjHJBP0SYJSOZU="; + sha256 = "sha256-ymahtzdCX4D3rBMThUmhWOY238yckP0bmNE0xFhK0No="; }; meta = { @@ -23,7 +23,5 @@ buildOctavePackage rec { Single-Instruction-Multiple-Data (SIMD) computations, selectively using available OpenCL hardware and drivers. ''; - # https://savannah.gnu.org/bugs/?66964 - broken = true; }; } diff --git a/pkgs/development/octave-modules/octproj/default.nix b/pkgs/development/octave-modules/octproj/default.nix index 31e5a3a58d9a..48812b0ac6c0 100644 --- a/pkgs/development/octave-modules/octproj/default.nix +++ b/pkgs/development/octave-modules/octproj/default.nix @@ -3,17 +3,18 @@ lib, fetchFromBitbucket, proj, # >= 6.3.0 + nix-update-script, }: buildOctavePackage rec { pname = "octproj"; - version = "3.0.2"; + version = "3.1.0"; src = fetchFromBitbucket { owner = "jgpallero"; repo = "octproj"; rev = "OctPROJ-${version}"; - sha256 = "sha256-d/Zf172Etj+GA0cnGsQaKMjOmirE7Hwyj4UECpg7QFM="; + sha256 = "sha256-0QDlpfqFTSndUPkOslugDBM0UBKiusZwKGFuDrco7X4="; }; # The sed changes below allow for the package to be compiled. @@ -26,6 +27,13 @@ buildOctavePackage rec { proj ]; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "OctPROJ-(.*)" + ]; + }; + meta = { homepage = "https://gnu-octave.github.io/packages/octproj/"; license = lib.licenses.gpl3Plus; diff --git a/pkgs/development/octave-modules/quaternion/default.nix b/pkgs/development/octave-modules/quaternion/default.nix index 91e572da06d7..0fe0f7a33464 100644 --- a/pkgs/development/octave-modules/quaternion/default.nix +++ b/pkgs/development/octave-modules/quaternion/default.nix @@ -6,21 +6,13 @@ buildOctavePackage rec { pname = "quaternion"; - version = "2.4.1"; + version = "2.4.2"; src = fetchurl { url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-kY5mU7dJuUjprub+LTc1BH6YGdEnP9ydX0lRU0fmOYE="; + sha256 = "sha256-S8tkdDlyaT8E7W0v6kkGs4qTU/G4DG5vLQvA9vjPOgc="; }; - # Octave replaced many of the is_thing_type check function with isthing. - # The patch changes the occurrences of the old functions. - patchPhase = '' - sed -i s/is_numeric_type/isnumeric/g src/*.cc - sed -i s/is_real_type/isreal/g src/*.cc - sed -i s/is_bool_type/islogical/g src/*.cc - ''; - meta = { homepage = "https://gnu-octave.github.io/packages/quaternion/"; license = lib.licenses.gpl3Plus; diff --git a/pkgs/development/octave-modules/queueing/default.nix b/pkgs/development/octave-modules/queueing/default.nix index f8f9e76c90e9..9256479c8708 100644 --- a/pkgs/development/octave-modules/queueing/default.nix +++ b/pkgs/development/octave-modules/queueing/default.nix @@ -6,11 +6,11 @@ buildOctavePackage rec { pname = "queueing"; - version = "1.2.7"; + version = "1.2.8"; src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "1yhw277i1qgmddf6wbfb6a4zrfhvplkmfr20q1l15z4xi8afnm6d"; + url = "https://github.com/mmarzolla/queueing/releases/download/${version}/${pname}-${version}.tar.gz"; + sha256 = "sha256-kJGURTYig+aImnjXu8ldyqFAJDqV+fpUzR+h6OdvwzM="; }; meta = { diff --git a/pkgs/development/octave-modules/signal/default.nix b/pkgs/development/octave-modules/signal/default.nix index fc14571ba61c..fef5c120310a 100644 --- a/pkgs/development/octave-modules/signal/default.nix +++ b/pkgs/development/octave-modules/signal/default.nix @@ -1,17 +1,20 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, control, + nix-update-script, }: buildOctavePackage rec { pname = "signal"; - version = "1.4.6"; + version = "1.4.7"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-lO74/qeMiWCfjd9tX/i/wuDauTK0P4bOkRR0pYtcce4="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-signal"; + tag = "${version}"; + sha256 = "sha256-4E57x2hweO1TfpjBRRvsyQA/o83XJLrRKa5vqUA0t3s="; }; requiredOctavePackages = [ diff --git a/pkgs/development/octave-modules/sockets/default.nix b/pkgs/development/octave-modules/sockets/default.nix index 340c9bf74d16..905c3fe8c8cf 100644 --- a/pkgs/development/octave-modules/sockets/default.nix +++ b/pkgs/development/octave-modules/sockets/default.nix @@ -1,16 +1,26 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, + nix-update-script, }: buildOctavePackage rec { pname = "sockets"; - version = "1.4.1"; + version = "1.5.0"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-u5Nb9PVyMoR0lIzXEMtkZntXbBfpyXrtLB8U+dkgYrc="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-sockets"; + tag = "release-${version}"; + sha256 = "sha256-l5W/mLYVcTRYKLCzM8MQW7nad+Gq0fy2XKQmdH8GG/Y="; + }; + + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "release-(.*)" + ]; }; meta = { diff --git a/pkgs/development/octave-modules/windows/default.nix b/pkgs/development/octave-modules/windows/default.nix index e65e281b735d..8c25872f889a 100644 --- a/pkgs/development/octave-modules/windows/default.nix +++ b/pkgs/development/octave-modules/windows/default.nix @@ -1,22 +1,28 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, + nix-update-script, }: buildOctavePackage rec { pname = "windows"; - version = "1.6.5"; + version = "1.7.0"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-j/goQc57jcfxlCsbf31Mx8oNud1vNE0D/hNfXyvVmTc="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-windows"; + tag = "release-${version}"; + sha256 = "sha256-hr94VALlAEwpqNU7imEN63M0BdPFSu5IznhWOn/mNiQ="; }; + passthru.updateScript = nix-update-script { extraArgs = [ "--version-regex=release-(.*)" ]; }; + meta = { homepage = "https://gnu-octave.github.io/packages/windows/"; license = lib.licenses.gpl3Plus; maintainers = with lib.maintainers; [ KarlJoad ]; description = "Provides COM interface and additional functionality on Windows"; + broken = true; }; } diff --git a/pkgs/development/octave-modules/zeromq/default.nix b/pkgs/development/octave-modules/zeromq/default.nix index 5735c4b814d4..98fab4f9e898 100644 --- a/pkgs/development/octave-modules/zeromq/default.nix +++ b/pkgs/development/octave-modules/zeromq/default.nix @@ -1,19 +1,22 @@ { buildOctavePackage, lib, - fetchurl, + fetchFromGitHub, zeromq, pkg-config, autoreconfHook, + nix-update-script, }: buildOctavePackage rec { pname = "zeromq"; - version = "1.5.5"; + version = "1.5.7"; - src = fetchurl { - url = "mirror://sourceforge/octave/${pname}-${version}.tar.gz"; - sha256 = "sha256-MAZEpbVuragVuXrMJ8q5/jU5cTchosAtrAR6ElLwfss="; + src = fetchFromGitHub { + owner = "gnu-octave"; + repo = "octave-zeromq"; + tag = "release-${version}"; + sha256 = "sha256-2n/Cc4E/qYeN5Ku+Lmg/UCJhiYNbXkFIY8s4/SP2J+Y="; }; preAutoreconf = '' @@ -33,6 +36,13 @@ buildOctavePackage rec { zeromq ]; + passthru.updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "release-(.*)" + ]; + }; + meta = { homepage = "https://gnu-octave.github.io/packages/zeromq/"; license = lib.licenses.gpl3Plus; diff --git a/pkgs/development/python-modules/langchain-text-splitters/default.nix b/pkgs/development/python-modules/langchain-text-splitters/default.nix index 242c1e726c5c..6e51732c08ad 100644 --- a/pkgs/development/python-modules/langchain-text-splitters/default.nix +++ b/pkgs/development/python-modules/langchain-text-splitters/default.nix @@ -21,14 +21,14 @@ buildPythonPackage rec { pname = "langchain-text-splitters"; - version = "1.1.0"; + version = "1.1.1"; pyproject = true; src = fetchFromGitHub { owner = "langchain-ai"; repo = "langchain"; tag = "langchain-text-splitters==${version}"; - hash = "sha256-/mhgWYmnzzCnAlBzPFHo4yZLxgHIzmvxjS2BilGxww8="; + hash = "sha256-I5eMc/E7sCxEQG8+jw3E/M4uB7adKU5IMHRsS6pacsA="; }; sourceRoot = "${src.name}/libs/text-splitters"; diff --git a/pkgs/development/python-modules/morecantile/default.nix b/pkgs/development/python-modules/morecantile/default.nix index 8751a06d1a9b..0193e3e7f34f 100644 --- a/pkgs/development/python-modules/morecantile/default.nix +++ b/pkgs/development/python-modules/morecantile/default.nix @@ -21,14 +21,14 @@ buildPythonPackage rec { pname = "morecantile"; - version = "7.0.2"; + version = "7.0.3"; pyproject = true; src = fetchFromGitHub { owner = "developmentseed"; repo = "morecantile"; tag = version; - hash = "sha256-VDe39J4z5aSmdARaYknon4BK7OpovEzni0OVCxKRAkE="; + hash = "sha256-Hx4duNbTuRfOmNBLN9J6/6URe57aPc8+3SJA7rbW5zs="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/victron-mqtt/default.nix b/pkgs/development/python-modules/victron-mqtt/default.nix index 582aa93285f8..fba75b2f93ec 100644 --- a/pkgs/development/python-modules/victron-mqtt/default.nix +++ b/pkgs/development/python-modules/victron-mqtt/default.nix @@ -12,14 +12,14 @@ buildPythonPackage (finalAttrs: { pname = "victron-mqtt"; - version = "2026.1.8"; + version = "2026.2.5.1"; pyproject = true; src = fetchFromGitHub { owner = "tomer-w"; repo = "victron_mqtt"; tag = "v${finalAttrs.version}"; - hash = "sha256-KSfP7kZZzMPYa6HWlLS/jF6kJWyHX8SemA9bTPsI11w="; + hash = "sha256-V3kcepEU/1YySQAPZaeCnRnULjcMuBz5LSQZ9JSz4ks="; }; build-system = [ diff --git a/pkgs/os-specific/linux/kernel/kernels-org.json b/pkgs/os-specific/linux/kernel/kernels-org.json index 4a577d78ffed..51c85bacf3f6 100644 --- a/pkgs/os-specific/linux/kernel/kernels-org.json +++ b/pkgs/os-specific/linux/kernel/kernels-org.json @@ -5,38 +5,38 @@ "lts": false }, "6.1": { - "version": "6.1.164", - "hash": "sha256:074xlcrx5lvbkbwgahfvjlvak0j1nig9azfxfdl64zxzgdzhigrk", + "version": "6.1.165", + "hash": "sha256:1x1fsaax7yd5p3vwcgp04hbcafmwfqiw1bz0qxsip45yy62730as", "lts": true }, "5.15": { - "version": "5.15.201", - "hash": "sha256:15hv8rqgr6ca9rnbpb6hvzskqvb4h8x3w6nl4y2npbfsxpxzyajg", + "version": "5.15.202", + "hash": "sha256:1m6d53qx1ah4jwpa8hwjdmq0jn2hf7xmz1li6rwpdqjp97vvvh8b", "lts": true }, "5.10": { - "version": "5.10.251", - "hash": "sha256:00ac9gzidby7b82s2prq4c3w99a077f5li4v4yq8gdg3zqjpd1g6", + "version": "5.10.252", + "hash": "sha256:1yqa4zmvi5ihf50kxcff06abfi6xw0b9ajzagvy6gdzfr7igpcrl", "lts": true }, "6.6": { - "version": "6.6.127", - "hash": "sha256:1zn9z3ghjyff71s3yabfanrgyks3wnmn1p5w6301rczhnjbrrkd7", + "version": "6.6.128", + "hash": "sha256:0j4f6imsxm5pyqk2yn4snv47q272dwpzp0w8qcaiy0l0hjxk75k6", "lts": true }, "6.12": { - "version": "6.12.74", - "hash": "sha256:0gm1mjn203gc11dqk82fkbsr96bnwcxq4sx5khc7yhwsvjqywmiv", + "version": "6.12.75", + "hash": "sha256:0xy1q4x18z6ghaw481hqvkmnkcgxn00nb0n4224amwbgalkpkvh6", "lts": true }, "6.18": { - "version": "6.18.15", - "hash": "sha256:0w7iy9mx1b42q4qz6y9rvny7nmvpwq0mf6b9vv84w4y4qcb64wbw", + "version": "6.18.16", + "hash": "sha256:1qwfsbr315c6qh3hnqmyjwjcj0h8j3w56hbrxnrx3h849lgw08ag", "lts": true }, "6.19": { - "version": "6.19.5", - "hash": "sha256:1yig0i2q7vn7p8g4lmkviddxi62mzhp0fv2hx3057qq9qz40bblm", + "version": "6.19.6", + "hash": "sha256:051fq8mkb7sf3m24a45cacr73fmpljfdn0pgjh0qrxhl6bvkz7sd", "lts": false } } diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package-lock.json b/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package-lock.json index bee7eddeeb3a..e6ebbe759f5e 100644 --- a/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package-lock.json +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package-lock.json @@ -1,12 +1,12 @@ { "name": "scheduler-card", - "version": "4.0.13", + "version": "4.0.14", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "scheduler-card", - "version": "4.0.13", + "version": "4.0.14", "license": "ISC", "dependencies": { "@formatjs/intl-utils": "^3.8.4", @@ -313,6 +313,17 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@lazy-node/types-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@lazy-node/types-path/-/types-path-1.0.3.tgz", + "integrity": "sha512-5Bnl5s5jh7o14i0oa7gj+Y0fDLIlri3+KVZmv4gk0OFGuOrOEmWBBCI9ky3Syip5g/yPHZdfa+WO5BVJMUpMdw==", + "license": "ISC", + "dependencies": { + "@types/node": "*", + "ts-type": "^3.0.1", + "tslib": ">=2" + } + }, "node_modules/@lezer/common": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.5.1.tgz", @@ -2401,9 +2412,9 @@ } }, "node_modules/@swc/core": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.15.11.tgz", - "integrity": "sha512-iLmLTodbYxU39HhMPaMUooPwO/zqJWvsqkrXv1ZI38rMb048p6N7qtAtTp37sw9NzSrvH6oli8EdDygo09IZ/w==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.15.18.tgz", + "integrity": "sha512-z87aF9GphWp//fnkRsqvtY+inMVPgYW3zSlXH1kJFvRT5H/wiAn+G32qW5l3oEk63KSF1x3Ov0BfHCObAmT8RA==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", @@ -2419,16 +2430,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.15.11", - "@swc/core-darwin-x64": "1.15.11", - "@swc/core-linux-arm-gnueabihf": "1.15.11", - "@swc/core-linux-arm64-gnu": "1.15.11", - "@swc/core-linux-arm64-musl": "1.15.11", - "@swc/core-linux-x64-gnu": "1.15.11", - "@swc/core-linux-x64-musl": "1.15.11", - "@swc/core-win32-arm64-msvc": "1.15.11", - "@swc/core-win32-ia32-msvc": "1.15.11", - "@swc/core-win32-x64-msvc": "1.15.11" + "@swc/core-darwin-arm64": "1.15.18", + "@swc/core-darwin-x64": "1.15.18", + "@swc/core-linux-arm-gnueabihf": "1.15.18", + "@swc/core-linux-arm64-gnu": "1.15.18", + "@swc/core-linux-arm64-musl": "1.15.18", + "@swc/core-linux-x64-gnu": "1.15.18", + "@swc/core-linux-x64-musl": "1.15.18", + "@swc/core-win32-arm64-msvc": "1.15.18", + "@swc/core-win32-ia32-msvc": "1.15.18", + "@swc/core-win32-x64-msvc": "1.15.18" }, "peerDependencies": { "@swc/helpers": ">=0.5.17" @@ -2440,9 +2451,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.15.11.tgz", - "integrity": "sha512-QoIupRWVH8AF1TgxYyeA5nS18dtqMuxNwchjBIwJo3RdwLEFiJq6onOx9JAxHtuPwUkIVuU2Xbp+jCJ7Vzmgtg==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.15.18.tgz", + "integrity": "sha512-+mIv7uBuSaywN3C9LNuWaX1jJJ3SKfiJuE6Lr3bd+/1Iv8oMU7oLBjYMluX1UrEPzwN2qCdY6Io0yVicABoCwQ==", "cpu": [ "arm64" ], @@ -2457,9 +2468,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.15.11.tgz", - "integrity": "sha512-S52Gu1QtPSfBYDiejlcfp9GlN+NjTZBRRNsz8PNwBgSE626/FUf2PcllVUix7jqkoMC+t0rS8t+2/aSWlMuQtA==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.15.18.tgz", + "integrity": "sha512-wZle0eaQhnzxWX5V/2kEOI6Z9vl/lTFEC6V4EWcn+5pDjhemCpQv9e/TDJ0GIoiClX8EDWRvuZwh+Z3dhL1NAg==", "cpu": [ "x64" ], @@ -2474,9 +2485,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.15.11.tgz", - "integrity": "sha512-lXJs8oXo6Z4yCpimpQ8vPeCjkgoHu5NoMvmJZ8qxDyU99KVdg6KwU9H79vzrmB+HfH+dCZ7JGMqMF//f8Cfvdg==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.15.18.tgz", + "integrity": "sha512-ao61HGXVqrJFHAcPtF4/DegmwEkVCo4HApnotLU8ognfmU8x589z7+tcf3hU+qBiU1WOXV5fQX6W9Nzs6hjxDw==", "cpu": [ "arm" ], @@ -2491,9 +2502,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.15.11.tgz", - "integrity": "sha512-chRsz1K52/vj8Mfq/QOugVphlKPWlMh10V99qfH41hbGvwAU6xSPd681upO4bKiOr9+mRIZZW+EfJqY42ZzRyA==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.15.18.tgz", + "integrity": "sha512-3xnctOBLIq3kj8PxOCgPrGjBLP/kNOddr6f5gukYt/1IZxsITQaU9TDyjeX6jG+FiCIHjCuWuffsyQDL5Ew1bg==", "cpu": [ "arm64" ], @@ -2508,9 +2519,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.15.11.tgz", - "integrity": "sha512-PYftgsTaGnfDK4m6/dty9ryK1FbLk+LosDJ/RJR2nkXGc8rd+WenXIlvHjWULiBVnS1RsjHHOXmTS4nDhe0v0w==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.15.18.tgz", + "integrity": "sha512-0a+Lix+FSSHBSBOA0XznCcHo5/1nA6oLLjcnocvzXeqtdjnPb+SvchItHI+lfeiuj1sClYPDvPMLSLyXFaiIKw==", "cpu": [ "arm64" ], @@ -2525,9 +2536,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.15.11.tgz", - "integrity": "sha512-DKtnJKIHiZdARyTKiX7zdRjiDS1KihkQWatQiCHMv+zc2sfwb4Glrodx2VLOX4rsa92NLR0Sw8WLcPEMFY1szQ==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.15.18.tgz", + "integrity": "sha512-wG9J8vReUlpaHz4KOD/5UE1AUgirimU4UFT9oZmupUDEofxJKYb1mTA/DrMj0s78bkBiNI+7Fo2EgPuvOJfuAA==", "cpu": [ "x64" ], @@ -2542,9 +2553,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.15.11.tgz", - "integrity": "sha512-mUjjntHj4+8WBaiDe5UwRNHuEzLjIWBTSGTw0JT9+C9/Yyuh4KQqlcEQ3ro6GkHmBGXBFpGIj/o5VMyRWfVfWw==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.15.18.tgz", + "integrity": "sha512-4nwbVvCphKzicwNWRmvD5iBaZj8JYsRGa4xOxJmOyHlMDpsvvJ2OR2cODlvWyGFH6BYL1MfIAK3qph3hp0Az6g==", "cpu": [ "x64" ], @@ -2559,9 +2570,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.15.11.tgz", - "integrity": "sha512-ZkNNG5zL49YpaFzfl6fskNOSxtcZ5uOYmWBkY4wVAvgbSAQzLRVBp+xArGWh2oXlY/WgL99zQSGTv7RI5E6nzA==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.15.18.tgz", + "integrity": "sha512-zk0RYO+LjiBCat2RTMHzAWaMky0cra9loH4oRrLKLLNuL+jarxKLFDA8xTZWEkCPLjUTwlRN7d28eDLLMgtUcQ==", "cpu": [ "arm64" ], @@ -2576,9 +2587,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.15.11.tgz", - "integrity": "sha512-6XnzORkZCQzvTQ6cPrU7iaT9+i145oLwnin8JrfsLG41wl26+5cNQ2XV3zcbrnFEV6esjOceom9YO1w9mGJByw==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.15.18.tgz", + "integrity": "sha512-yVuTrZ0RccD5+PEkpcLOBAuPbYBXS6rslENvIXfvJGXSdX5QGi1ehC4BjAMl5FkKLiam4kJECUI0l7Hq7T1vwg==", "cpu": [ "ia32" ], @@ -2593,9 +2604,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.15.11", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.15.11.tgz", - "integrity": "sha512-IQ2n6af7XKLL6P1gIeZACskSxK8jWtoKpJWLZmdXTDj1MGzktUy4i+FvpdtxFmJWNavRWH1VmTr6kAubRDHeKw==", + "version": "1.15.18", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.15.18.tgz", + "integrity": "sha512-7NRmE4hmUQNCbYU3Hn9Tz57mK9Qq4c97ZS+YlamlK6qG9Fb5g/BB3gPDe0iLlJkns/sYv2VWSkm8c3NmbEGjbg==", "cpu": [ "x64" ], @@ -2617,9 +2628,9 @@ "license": "Apache-2.0" }, "node_modules/@swc/helpers": { - "version": "0.5.18", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.18.tgz", - "integrity": "sha512-TXTnIcNJQEKwThMMqBXsZ4VGAza6bvN4pa41Rkqoio6QBKMvo+5lexeTMScGCIxtzgQJzElcvIltani+adC5PQ==", + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.19.tgz", + "integrity": "sha512-QamiFeIK3txNjgUTNppE6MiG3p7TdninpZu0E0PbqVh1a9FNLT2FRhisaa4NcaX52XVhA5l7Pk58Ft7Sqi/2sA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2643,9 +2654,9 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.0.tgz", - "integrity": "sha512-4K3bqJpXpqfg2XKGK9bpDTc6xO/xoUP/RBWS7AtRMug6zZFaRekiLzjVtAoZMquxoAbzBvy5nxQ7veS5eYzf8A==", + "version": "25.3.3", + "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.3.tgz", + "integrity": "sha512-DpzbrH7wIcBaJibpKo9nnSQL0MTRdnWttGyE5haGwK86xgMOkFLp7vEyfQPGLOJh5wNYiJ3V9PmUMDhV9u8kkQ==", "license": "MIT", "dependencies": { "undici-types": "~7.18.0" @@ -2734,12 +2745,15 @@ } }, "node_modules/baseline-browser-mapping": { - "version": "2.9.19", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.9.19.tgz", - "integrity": "sha512-ipDqC8FrAl/76p2SSWKSI+H9tFwm7vYqXQrItCuiVPt26Km0jS+NzSsBWAaBusvSbQcfJG+JitdMm+wZAgTYqg==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", + "integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==", "license": "Apache-2.0", "bin": { - "baseline-browser-mapping": "dist/cli.js" + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" } }, "node_modules/braces": { @@ -2808,9 +2822,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001770", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz", - "integrity": "sha512-x/2CLQ1jHENRbHg5PSId2sXq1CIO1CISvwWAj027ltMVG2UNgW+w9oH2+HzgEIRFembL8bUlXtfbBHR1fCg2xw==", + "version": "1.0.30001776", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001776.tgz", + "integrity": "sha512-sg01JDPzZ9jGshqKSckOQthXnYwOEP50jeVFhaSFbZcOy05TiuuaffDOfcwtCisJ9kNQuLBFibYywv2Bgm9osw==", "funding": [ { "type": "opencollective", @@ -2975,9 +2989,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.286", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.286.tgz", - "integrity": "sha512-9tfDXhJ4RKFNerfjdCcZfufu49vg620741MNs26a9+bhLThdB+plgMeou98CAaHu/WATj2iHOOHTp1hWtABj2A==", + "version": "1.5.307", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.307.tgz", + "integrity": "sha512-5z3uFKBWjiNR44nFcYdkcXjKMbg5KXNdciu7mhTPo9tB7NbqSNP2sSnGR+fqknZSCwKkBN+oxiiajWs4dT6ORg==", "license": "ISC" }, "node_modules/emoji-regex": { @@ -4125,9 +4139,9 @@ } }, "node_modules/path-is-network-drive": { - "version": "1.0.21", - "resolved": "https://registry.npmjs.org/path-is-network-drive/-/path-is-network-drive-1.0.21.tgz", - "integrity": "sha512-B1PzE3CgxNKY0/69Urjw3KNi4K+4q4IBsvq02TwURsdNLZj2YUn0HGw2o26IrGV4YUffg7IHZiwKJ/EDhXMQyg==", + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/path-is-network-drive/-/path-is-network-drive-1.0.24.tgz", + "integrity": "sha512-sux7NWiMq/ul8EEQTQbdM1m/zr+Rrq11/P9tEBgxMgTnVHS8f54tQm0kfrTxkvPNg/OVkRjHNgSia5VxnawOZg==", "license": "ISC", "dependencies": { "tslib": "^2" @@ -4140,9 +4154,9 @@ "license": "MIT" }, "node_modules/path-strip-sep": { - "version": "1.0.18", - "resolved": "https://registry.npmjs.org/path-strip-sep/-/path-strip-sep-1.0.18.tgz", - "integrity": "sha512-IGC/vjHigvKV9RsE4ArZiGNkqNrb0tk1j/HO0TS49duEUqGSy1y464XhCWyTLFwqe7w7wFsdCX9fqUmAHoUaxA==", + "version": "1.0.21", + "resolved": "https://registry.npmjs.org/path-strip-sep/-/path-strip-sep-1.0.21.tgz", + "integrity": "sha512-V5Lvyhx0fE6/wEk/YseTtoRQIaD32cepnzrQ1b3kOzOxxDoSglry8IZ1b6LPObIeIbpC0+i9ygUsBNhkOttQKw==", "license": "ISC", "dependencies": { "tslib": "^2" @@ -4701,6 +4715,27 @@ "node": ">=8.0" } }, + "node_modules/ts-toolbelt": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/ts-toolbelt/-/ts-toolbelt-9.6.0.tgz", + "integrity": "sha512-nsZd8ZeNUzukXPlJmTBwUAuABDe/9qtVDelJeT/qW0ow3ZS3BsQJtNkan1802aM9Uf68/Y8ljw86Hu0h5IUW3w==", + "license": "Apache-2.0", + "peer": true + }, + "node_modules/ts-type": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ts-type/-/ts-type-3.0.1.tgz", + "integrity": "sha512-cleRydCkBGBFQ4KAvLH0ARIkciduS745prkGVVxPGvcRGhMMoSJUB7gNR1ByKhFTEYrYRg2CsMRGYnqp+6op+g==", + "license": "ISC", + "dependencies": { + "@types/node": "*", + "tslib": ">=2", + "typedarray-dts": "^1.0.0" + }, + "peerDependencies": { + "ts-toolbelt": "^9.6.0" + } + }, "node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", @@ -4720,6 +4755,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/typedarray-dts": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/typedarray-dts/-/typedarray-dts-1.0.0.tgz", + "integrity": "sha512-Ka0DBegjuV9IPYFT1h0Qqk5U4pccebNIJCGl8C5uU7xtOs+jpJvKGAY4fHGK25hTmXZOEUl9Cnsg5cS6K/b5DA==", + "license": "MIT" + }, "node_modules/typescript": { "version": "5.9.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", @@ -4762,14 +4803,15 @@ } }, "node_modules/upath2": { - "version": "3.1.20", - "resolved": "https://registry.npmjs.org/upath2/-/upath2-3.1.20.tgz", - "integrity": "sha512-g+t9q+MrIsX60eJzF4I/YNYmRmrT0HJnnEaenbUy/FFO1lY04YQoiJ/qS4Ou+a+D9WUPxN0cVUYXkkX9b1EAMw==", + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/upath2/-/upath2-3.1.23.tgz", + "integrity": "sha512-HQ7CivlKonWnq7m7VZuZHIDXXUCHOoCoIqgVyCk/z/wsuB/agGwGFhFjGSTArGlvBddiejrW4ChW6SwEMhAURQ==", "license": "ISC", "dependencies": { + "@lazy-node/types-path": "^1.0.3", "@types/node": "*", - "path-is-network-drive": "^1.0.21", - "path-strip-sep": "^1.0.18", + "path-is-network-drive": "^1.0.24", + "path-strip-sep": "^1.0.21", "tslib": "^2" } }, diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package.nix index 82ea041a691d..ff130ee44711 100644 --- a/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package.nix +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/scheduler-card/package.nix @@ -6,20 +6,20 @@ buildNpmPackage rec { pname = "scheduler-card"; - version = "4.0.13"; + version = "4.0.14"; src = fetchFromGitHub { owner = "nielsfaber"; repo = "scheduler-card"; tag = "v${version}"; - hash = "sha256-VeuIn9C+xnfB8wSPTCHP/MxFsr1HrIUlHk186QWDXv0="; + hash = "sha256-cW46bxD50p1kkCP729GsUDMO+iLkXJcil3lNgjrCsh0="; }; postPatch = '' cp ${./package-lock.json} package-lock.json ''; - npmDepsHash = "sha256-RiCOUJlFHhMWLAXkT+nwPBnVE77cU+6s0YRbyUqpRYI="; + npmDepsHash = "sha256-UvErPy3jgbaGBZnqix6fm8BhZp1he0z5JJj8kzE+Sbc="; npmBuildScript = "rollup"; diff --git a/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix b/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix index 78e295ac0259..a74ba8515af9 100644 --- a/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix +++ b/pkgs/servers/home-assistant/custom-lovelace-modules/universal-remote-card/package.nix @@ -6,16 +6,16 @@ buildNpmPackage rec { pname = "universal-remote-card"; - version = "4.10.0"; + version = "4.10.2"; src = fetchFromGitHub { owner = "Nerwyn"; repo = "android-tv-card"; rev = version; - hash = "sha256-+OINeNnIDnunT6DaoUVvwaaIwTJ9perLq6/DmO3/utE="; + hash = "sha256-bWGddEJgD7BFPXMEJKvmhNqTsGFOQG8aDHGuecLYRHQ="; }; - npmDepsHash = "sha256-luJ9T7BRf76sANqEmVlWw/i0Y6QUf8uNW2CmlbF1c2E="; + npmDepsHash = "sha256-pYhPedK4Pxueg0dcUcuP9S5L3x18C1xzeyNWPllaAmM="; installPhase = '' runHook preInstall diff --git a/pkgs/servers/sql/postgresql/ext/pg_csv.nix b/pkgs/servers/sql/postgresql/ext/pg_csv.nix index 294269a79a85..0a2adb752e09 100644 --- a/pkgs/servers/sql/postgresql/ext/pg_csv.nix +++ b/pkgs/servers/sql/postgresql/ext/pg_csv.nix @@ -7,13 +7,13 @@ postgresqlBuildExtension (finalAttrs: { pname = "pg_csv"; - version = "1.0.1"; + version = "1.0.2"; src = fetchFromGitHub { owner = "PostgREST"; repo = "pg_csv"; tag = "v${finalAttrs.version}"; - hash = "sha256-hRTNFlNUmc3mjDf0wgn4CGmHoYPQ+2yfZApzooLwgW4="; + hash = "sha256-cfvHWwgpaGFN8idyU7OfdHfp6JuKNbPR1gS6WudsUHk="; }; meta = { diff --git a/pkgs/top-level/gnuradio-packages.nix b/pkgs/top-level/gnuradio-packages.nix index ab5d648064aa..a9857f193aca 100644 --- a/pkgs/top-level/gnuradio-packages.nix +++ b/pkgs/top-level/gnuradio-packages.nix @@ -3,6 +3,7 @@ stdenv, newScope, gnuradio, # unwrapped gnuradio + packageOverrides, }: lib.makeScope newScope ( @@ -34,21 +35,21 @@ lib.makeScope newScope ( inherit (gnuradio) uhd; } ); + + # Base package set without overrides + basePackages = { + inherit callPackage mkDerivation mkDerivationWith; + + bladeRF = callPackage ../development/gnuradio-modules/bladeRF/default.nix { }; + + lora_sdr = callPackage ../development/gnuradio-modules/lora_sdr/default.nix { }; + + osmosdr = callPackage ../development/gnuradio-modules/osmosdr/default.nix { }; + + fosphor = callPackage ../development/gnuradio-modules/fosphor/default.nix { }; + + gr-difi = callPackage ../development/gnuradio-modules/gr-difi/default.nix { }; + }; in - { - - inherit callPackage mkDerivation mkDerivationWith; - - ### Packages - - bladeRF = callPackage ../development/gnuradio-modules/bladeRF/default.nix { }; - - lora_sdr = callPackage ../development/gnuradio-modules/lora_sdr/default.nix { }; - - osmosdr = callPackage ../development/gnuradio-modules/osmosdr/default.nix { }; - - fosphor = callPackage ../development/gnuradio-modules/fosphor/default.nix { }; - - gr-difi = callPackage ../development/gnuradio-modules/gr-difi/default.nix { }; - } + basePackages // (packageOverrides self basePackages) )