Merge staging-next into staging
This commit is contained in:
@@ -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}
|
||||
|
||||
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
|
||||
|
||||
+3
-3
@@ -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
|
||||
|
||||
+27
-28
@@ -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
|
||||
|
||||
+35
-23
@@ -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
|
||||
|
||||
+82
-5
@@ -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 = <CODE>; }
|
||||
trace: { a = <thunk>; }
|
||||
=> 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
|
||||
|
||||
@@ -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
|
||||
|
||||
+7
-1
@@ -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
|
||||
|
||||
+2
-2
@@ -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
|
||||
|
||||
+203
-73
@@ -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 -> { <name> = 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
|
||||
|
||||
+19
-21
@@ -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
|
||||
|
||||
+14
-11
@@ -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.
|
||||
|
||||
+2
-2
@@ -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: {
|
||||
|
||||
+20
-20
@@ -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 =
|
||||
|
||||
+88
-22
@@ -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
|
||||
|
||||
+89
-7
@@ -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
|
||||
|
||||
+1
-2
@@ -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 =
|
||||
|
||||
@@ -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:
|
||||
|
||||
|
||||
+5
-5
@@ -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: ''
|
||||
|
||||
@@ -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
|
||||
|
||||
+3
-3
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
+71
-71
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -47,13 +47,9 @@ let
|
||||
|
||||
inherit (lib.types)
|
||||
enum
|
||||
float
|
||||
isType
|
||||
mkOptionType
|
||||
number
|
||||
setType
|
||||
string
|
||||
types
|
||||
;
|
||||
|
||||
setTypes =
|
||||
|
||||
+111
-33
@@ -111,7 +111,7 @@ in
|
||||
# Type
|
||||
|
||||
```
|
||||
pipe :: a -> [<functions>] -> <return type of last function>
|
||||
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`
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -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" ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
@@ -307,6 +307,7 @@ in
|
||||
allowed_uids = lib.concatStringsSep ", " cfg.ifpAllowedUids;
|
||||
};
|
||||
};
|
||||
subIDsIntegration = true;
|
||||
};
|
||||
|
||||
networking.timeServers = lib.optional cfg.useAsTimeserver cfg.server;
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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";
|
||||
};
|
||||
|
||||
@@ -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";
|
||||
|
||||
}
|
||||
|
||||
@@ -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 <class 'dict'> 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,
|
||||
)
|
||||
|
||||
@@ -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
|
||||
},
|
||||
|
||||
@@ -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 // {
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
# Type
|
||||
|
||||
```
|
||||
compressDrv :: Derivation -> { formats :: [ String ]; compressors :: { ${fileExtension} :: String; } } -> Derivation
|
||||
compressDrv :: Derivation -> { formats :: [String]; compressors :: { ${fileExtension} :: String; } } -> Derivation
|
||||
```
|
||||
|
||||
# Examples
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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 [
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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="
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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}");
|
||||
|
||||
@@ -145,5 +145,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
];
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "lvim";
|
||||
broken = true; # Incompatible with Neovim >= 0.10; upstream is unmaintained
|
||||
};
|
||||
})
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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}") [
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -339,6 +339,8 @@ python.pkgs.buildPythonApplication rec {
|
||||
# execnet.gateway_base.DumpError: can't serialize <class 'pathlib._local.PosixPath'>
|
||||
# https://github.com/pytest-dev/pytest-xdist/issues/384
|
||||
"test_subdirectory_upload"
|
||||
# AssertionError: 4 != 3
|
||||
"testNormalOperation"
|
||||
];
|
||||
|
||||
doCheck = !stdenv.hostPlatform.isDarwin;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
Generated
+202
-285
@@ -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=",
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
maintainers = with lib.maintainers; [
|
||||
dit7ya
|
||||
id3v1669
|
||||
Subserial
|
||||
];
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "wayshot";
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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 = ''
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -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/";
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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; [
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
|
||||
+114
-72
@@ -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"
|
||||
}
|
||||
},
|
||||
|
||||
@@ -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";
|
||||
|
||||
|
||||
+3
-3
@@ -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
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user