Merge staging-next into staging
This commit is contained in:
+43
-5
@@ -5,7 +5,7 @@
|
||||
|
||||
let
|
||||
inherit (builtins) head length;
|
||||
inherit (lib.trivial) mergeAttrs warn;
|
||||
inherit (lib.trivial) isInOldestRelease mergeAttrs warn warnIf;
|
||||
inherit (lib.strings) concatStringsSep concatMapStringsSep escapeNixIdentifier sanitizeDerivationName;
|
||||
inherit (lib.lists) foldr foldl' concatMap elemAt all partition groupBy take foldl;
|
||||
in
|
||||
@@ -885,15 +885,15 @@ rec {
|
||||
# Type
|
||||
|
||||
```
|
||||
cartesianProductOfSets :: AttrSet -> [AttrSet]
|
||||
cartesianProduct :: AttrSet -> [AttrSet]
|
||||
```
|
||||
|
||||
# Examples
|
||||
:::{.example}
|
||||
## `lib.attrsets.cartesianProductOfSets` usage example
|
||||
## `lib.attrsets.cartesianProduct` usage example
|
||||
|
||||
```nix
|
||||
cartesianProductOfSets { a = [ 1 2 ]; b = [ 10 20 ]; }
|
||||
cartesianProduct { a = [ 1 2 ]; b = [ 10 20 ]; }
|
||||
=> [
|
||||
{ a = 1; b = 10; }
|
||||
{ a = 1; b = 20; }
|
||||
@@ -904,7 +904,7 @@ rec {
|
||||
|
||||
:::
|
||||
*/
|
||||
cartesianProductOfSets =
|
||||
cartesianProduct =
|
||||
attrsOfLists:
|
||||
foldl' (listOfAttrs: attrName:
|
||||
concatMap (attrs:
|
||||
@@ -913,6 +913,40 @@ rec {
|
||||
) [{}] (attrNames attrsOfLists);
|
||||
|
||||
|
||||
/**
|
||||
Return the result of function f applied to the cartesian product of attribute set value combinations.
|
||||
Equivalent to using cartesianProduct followed by map.
|
||||
|
||||
# Inputs
|
||||
|
||||
`f`
|
||||
|
||||
: A function, given an attribute set, it returns a new value.
|
||||
|
||||
`attrsOfLists`
|
||||
|
||||
: Attribute set with attributes that are lists of values
|
||||
|
||||
# Type
|
||||
|
||||
```
|
||||
mapCartesianProduct :: (AttrSet -> a) -> AttrSet -> [a]
|
||||
```
|
||||
|
||||
# Examples
|
||||
:::{.example}
|
||||
## `lib.attrsets.mapCartesianProduct` usage example
|
||||
|
||||
```nix
|
||||
mapCartesianProduct ({a, b}: "${a}-${b}") { a = [ "1" "2" ]; b = [ "3" "4" ]; }
|
||||
=> [ "1-3" "1-4" "2-3" "2-4" ]
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
*/
|
||||
mapCartesianProduct = f: attrsOfLists: map f (cartesianProduct attrsOfLists);
|
||||
|
||||
/**
|
||||
Utility function that creates a `{name, value}` pair as expected by `builtins.listToAttrs`.
|
||||
|
||||
@@ -1999,4 +2033,8 @@ rec {
|
||||
# DEPRECATED
|
||||
zip = warn
|
||||
"lib.zip is a deprecated alias of lib.zipAttrsWith." zipAttrsWith;
|
||||
|
||||
# DEPRECATED
|
||||
cartesianProductOfSets = warnIf (isInOldestRelease 2405)
|
||||
"lib.cartesianProductOfSets is a deprecated alias of lib.cartesianProduct." cartesianProduct;
|
||||
}
|
||||
|
||||
+2
-2
@@ -86,8 +86,8 @@ let
|
||||
zipAttrsWithNames zipAttrsWith zipAttrs recursiveUpdateUntil
|
||||
recursiveUpdate matchAttrs mergeAttrsList overrideExisting showAttrPath getOutput
|
||||
getBin getLib getDev getMan chooseDevOutputs zipWithNames zip
|
||||
recurseIntoAttrs dontRecurseIntoAttrs cartesianProductOfSets
|
||||
updateManyAttrsByPath;
|
||||
recurseIntoAttrs dontRecurseIntoAttrs cartesianProduct cartesianProductOfSets
|
||||
mapCartesianProduct updateManyAttrsByPath;
|
||||
inherit (self.lists) singleton forEach foldr fold foldl foldl' imap0 imap1
|
||||
concatMap flatten remove findSingle findFirst any all count
|
||||
optional optionals toList range replicate partition zipListsWith zipLists
|
||||
|
||||
+19
-3
@@ -1688,16 +1688,32 @@ rec {
|
||||
## `lib.lists.crossLists` usage example
|
||||
|
||||
```nix
|
||||
crossLists (x:y: "${toString x}${toString y}") [[1 2] [3 4]]
|
||||
crossLists (x: y: "${toString x}${toString y}") [[1 2] [3 4]]
|
||||
=> [ "13" "14" "23" "24" ]
|
||||
```
|
||||
|
||||
The following function call is equivalent to the one deprecated above:
|
||||
|
||||
```nix
|
||||
mapCartesianProduct (x: "${toString x.a}${toString x.b}") { a = [1 2]; b = [3 4]; }
|
||||
=> [ "13" "14" "23" "24" ]
|
||||
```
|
||||
:::
|
||||
*/
|
||||
crossLists = warn
|
||||
"lib.crossLists is deprecated, use lib.cartesianProductOfSets instead."
|
||||
(f: foldl (fs: args: concatMap (f: map f args) fs) [f]);
|
||||
''lib.crossLists is deprecated, use lib.mapCartesianProduct instead.
|
||||
|
||||
For example, the following function call:
|
||||
|
||||
nix-repl> lib.crossLists (x: y: x+y) [[1 2] [3 4]]
|
||||
[ 4 5 5 6 ]
|
||||
|
||||
Can now be replaced by the following one:
|
||||
|
||||
nix-repl> lib.mapCartesianProduct ({x,y}: x+y) { x = [1 2]; y = [3 4]; }
|
||||
[ 4 5 5 6 ]
|
||||
''
|
||||
(f: foldl (fs: args: concatMap (f: map f args) fs) [f]);
|
||||
|
||||
/**
|
||||
Remove duplicate elements from the `list`. O(n^2) complexity.
|
||||
|
||||
+35
-15
@@ -33,7 +33,7 @@ let
|
||||
boolToString
|
||||
callPackagesWith
|
||||
callPackageWith
|
||||
cartesianProductOfSets
|
||||
cartesianProduct
|
||||
cli
|
||||
composeExtensions
|
||||
composeManyExtensions
|
||||
@@ -71,10 +71,10 @@ let
|
||||
makeIncludePath
|
||||
makeOverridable
|
||||
mapAttrs
|
||||
mapCartesianProduct
|
||||
matchAttrs
|
||||
mergeAttrs
|
||||
meta
|
||||
mkOption
|
||||
mod
|
||||
nameValuePair
|
||||
optionalDrvAttr
|
||||
@@ -117,7 +117,6 @@ let
|
||||
expr = (builtins.tryEval expr).success;
|
||||
expected = true;
|
||||
};
|
||||
testingDeepThrow = expr: testingThrow (builtins.deepSeq expr expr);
|
||||
|
||||
testSanitizeDerivationName = { name, expected }:
|
||||
let
|
||||
@@ -1415,7 +1414,7 @@ runTests {
|
||||
};
|
||||
|
||||
testToPrettyMultiline = {
|
||||
expr = mapAttrs (const (generators.toPretty { })) rec {
|
||||
expr = mapAttrs (const (generators.toPretty { })) {
|
||||
list = [ 3 4 [ false ] ];
|
||||
attrs = { foo = null; bar.foo = "baz"; };
|
||||
newlinestring = "\n";
|
||||
@@ -1429,7 +1428,7 @@ runTests {
|
||||
there
|
||||
test'';
|
||||
};
|
||||
expected = rec {
|
||||
expected = {
|
||||
list = ''
|
||||
[
|
||||
3
|
||||
@@ -1467,13 +1466,10 @@ runTests {
|
||||
expected = "«foo»";
|
||||
};
|
||||
|
||||
testToPlist =
|
||||
let
|
||||
deriv = derivation { name = "test"; builder = "/bin/sh"; system = "aarch64-linux"; };
|
||||
in {
|
||||
testToPlist = {
|
||||
expr = mapAttrs (const (generators.toPlist { })) {
|
||||
value = {
|
||||
nested.values = rec {
|
||||
nested.values = {
|
||||
int = 42;
|
||||
float = 0.1337;
|
||||
bool = true;
|
||||
@@ -1686,17 +1682,17 @@ runTests {
|
||||
};
|
||||
|
||||
testCartesianProductOfEmptySet = {
|
||||
expr = cartesianProductOfSets {};
|
||||
expr = cartesianProduct {};
|
||||
expected = [ {} ];
|
||||
};
|
||||
|
||||
testCartesianProductOfOneSet = {
|
||||
expr = cartesianProductOfSets { a = [ 1 2 3 ]; };
|
||||
expr = cartesianProduct { a = [ 1 2 3 ]; };
|
||||
expected = [ { a = 1; } { a = 2; } { a = 3; } ];
|
||||
};
|
||||
|
||||
testCartesianProductOfTwoSets = {
|
||||
expr = cartesianProductOfSets { a = [ 1 ]; b = [ 10 20 ]; };
|
||||
expr = cartesianProduct { a = [ 1 ]; b = [ 10 20 ]; };
|
||||
expected = [
|
||||
{ a = 1; b = 10; }
|
||||
{ a = 1; b = 20; }
|
||||
@@ -1704,12 +1700,12 @@ runTests {
|
||||
};
|
||||
|
||||
testCartesianProductOfTwoSetsWithOneEmpty = {
|
||||
expr = cartesianProductOfSets { a = [ ]; b = [ 10 20 ]; };
|
||||
expr = cartesianProduct { a = [ ]; b = [ 10 20 ]; };
|
||||
expected = [ ];
|
||||
};
|
||||
|
||||
testCartesianProductOfThreeSets = {
|
||||
expr = cartesianProductOfSets {
|
||||
expr = cartesianProduct {
|
||||
a = [ 1 2 3 ];
|
||||
b = [ 10 20 30 ];
|
||||
c = [ 100 200 300 ];
|
||||
@@ -1753,6 +1749,30 @@ runTests {
|
||||
];
|
||||
};
|
||||
|
||||
testMapCartesianProductOfOneSet = {
|
||||
expr = mapCartesianProduct ({a}: a * 2) { a = [ 1 2 3 ]; };
|
||||
expected = [ 2 4 6 ];
|
||||
};
|
||||
|
||||
testMapCartesianProductOfTwoSets = {
|
||||
expr = mapCartesianProduct ({a,b}: a + b) { a = [ 1 ]; b = [ 10 20 ]; };
|
||||
expected = [ 11 21 ];
|
||||
};
|
||||
|
||||
testMapCartesianProcutOfTwoSetsWithOneEmpty = {
|
||||
expr = mapCartesianProduct (x: x.a + x.b) { a = [ ]; b = [ 10 20 ]; };
|
||||
expected = [ ];
|
||||
};
|
||||
|
||||
testMapCartesianProductOfThreeSets = {
|
||||
expr = mapCartesianProduct ({a,b,c}: a + b + c) {
|
||||
a = [ 1 2 3 ];
|
||||
b = [ 10 20 30 ];
|
||||
c = [ 100 200 300 ];
|
||||
};
|
||||
expected = [ 111 211 311 121 221 321 131 231 331 112 212 312 122 222 322 132 232 332 113 213 313 123 223 323 133 233 333 ];
|
||||
};
|
||||
|
||||
# The example from the showAttrPath documentation
|
||||
testShowAttrPathExample = {
|
||||
expr = showAttrPath [ "foo" "10" "bar" ];
|
||||
|
||||
@@ -13394,6 +13394,12 @@
|
||||
fingerprint = "64BE BF11 96C3 DD7A 443E 8314 1DC0 82FA DE5B A863";
|
||||
}];
|
||||
};
|
||||
mlaradji = {
|
||||
name = "Mohamed Laradji";
|
||||
email = "mlaradji@pm.me";
|
||||
github = "mlaradji";
|
||||
githubId = 33703663;
|
||||
};
|
||||
mlatus = {
|
||||
email = "wqseleven@gmail.com";
|
||||
github = "Ninlives";
|
||||
@@ -21545,6 +21551,16 @@
|
||||
fingerprint = "DA03 D6C6 3F58 E796 AD26 E99B 366A 2940 479A 06FC";
|
||||
}];
|
||||
};
|
||||
willbush = {
|
||||
email = "git@willbush.dev";
|
||||
matrix = "@willbush:matrix.org";
|
||||
github = "willbush";
|
||||
githubId = 2023546;
|
||||
name = "Will Bush";
|
||||
keys = [{
|
||||
fingerprint = "4441 422E 61E4 C8F3 EBFE 5E33 3823 864B 54B1 3BDA";
|
||||
}];
|
||||
};
|
||||
willcohen = {
|
||||
github = "willcohen";
|
||||
githubId = 5185341;
|
||||
|
||||
@@ -575,6 +575,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||
and `services.kavita.settings.IpAddresses`. The file at `services.kavita.tokenKeyFile` now needs to contain a secret with
|
||||
512+ bits instead of 128+ bits.
|
||||
|
||||
- `kavita` has been updated to 0.8.0, requiring a manual forced library scan on all libraries for migration. Refer to upstream's [release notes](https://github.com/Kareadita/Kavita/releases/tag/v0.8.0) for details.
|
||||
|
||||
- The `krb5` module has been rewritten and moved to `security.krb5`, moving all options but `security.krb5.enable` and `security.krb5.package` into `security.krb5.settings`.
|
||||
|
||||
- `services.soju` now has a wrapper for the `sojuctl` command, pointed at the service config file. It also has the new option `adminSocket.enable`, which creates a unix admin socket at `/run/soju/admin`.
|
||||
|
||||
@@ -203,9 +203,12 @@ in
|
||||
apply = pkg: pkg.override {
|
||||
tesseract5 = pkg.tesseract5.override {
|
||||
# always enable detection modules
|
||||
# tesseract fails to build when eng is not present
|
||||
enableLanguages = if cfg.settings ? PAPERLESS_OCR_LANGUAGE then
|
||||
[ "equ" "osd" ]
|
||||
lists.unique (
|
||||
[ "equ" "osd" "eng" ]
|
||||
++ lib.splitString "+" cfg.settings.PAPERLESS_OCR_LANGUAGE
|
||||
)
|
||||
else null;
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
cfg = config.services.podgrab;
|
||||
|
||||
stateDir = "/var/lib/podgrab";
|
||||
in
|
||||
{
|
||||
options.services.podgrab = with lib; {
|
||||
@@ -22,28 +24,59 @@ in
|
||||
example = 4242;
|
||||
description = "The port on which Podgrab will listen for incoming HTTP traffic.";
|
||||
};
|
||||
|
||||
dataDirectory = mkOption {
|
||||
type = types.path;
|
||||
default = "${stateDir}/data";
|
||||
example = "/mnt/podcasts";
|
||||
description = "Directory to store downloads.";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "podgrab";
|
||||
description = "User under which Podgrab runs, and which owns the download directory.";
|
||||
};
|
||||
|
||||
group = mkOption {
|
||||
type = types.str;
|
||||
default = "podgrab";
|
||||
description = "Group under which Podgrab runs, and which owns the download directory.";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
systemd.tmpfiles.settings."10-pyload" = {
|
||||
${cfg.dataDirectory}.d = { inherit (cfg) user group; };
|
||||
};
|
||||
|
||||
systemd.services.podgrab = {
|
||||
description = "Podgrab podcast manager";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
environment = {
|
||||
CONFIG = "/var/lib/podgrab/config";
|
||||
DATA = "/var/lib/podgrab/data";
|
||||
CONFIG = "${stateDir}/config";
|
||||
DATA = cfg.dataDirectory;
|
||||
GIN_MODE = "release";
|
||||
PORT = toString cfg.port;
|
||||
};
|
||||
serviceConfig = {
|
||||
DynamicUser = true;
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
EnvironmentFile = lib.optionals (cfg.passwordFile != null) [
|
||||
cfg.passwordFile
|
||||
];
|
||||
ExecStart = "${pkgs.podgrab}/bin/podgrab";
|
||||
WorkingDirectory = "${pkgs.podgrab}/share";
|
||||
StateDirectory = [ "podgrab/config" "podgrab/data" ];
|
||||
StateDirectory = [ "podgrab/config" ];
|
||||
};
|
||||
};
|
||||
|
||||
users.users.podgrab = lib.mkIf (cfg.user == "podgrab") {
|
||||
isSystemUser = true;
|
||||
group = cfg.group;
|
||||
};
|
||||
|
||||
users.groups.podgrab = lib.mkIf (cfg.group == "podgrab") { };
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ ambroisie ];
|
||||
|
||||
@@ -284,7 +284,7 @@ in
|
||||
in
|
||||
# We will generate every possible pair of WM and DM.
|
||||
concatLists (
|
||||
builtins.map
|
||||
lib.mapCartesianProduct
|
||||
({dm, wm}: let
|
||||
sessionName = "${dm.name}${optionalString (wm.name != "none") ("+" + wm.name)}";
|
||||
script = xsession dm wm;
|
||||
@@ -312,7 +312,7 @@ in
|
||||
providedSessions = [ sessionName ];
|
||||
})
|
||||
)
|
||||
(cartesianProductOfSets { dm = dms; wm = wms; })
|
||||
{ dm = dms; wm = wms; }
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@ import ./make-test-python.nix ({ lib, ... }: {
|
||||
};
|
||||
services.paperless.settings = {
|
||||
PAPERLESS_DBHOST = "/run/postgresql";
|
||||
PAPERLESS_OCR_LANGUAGE = "deu";
|
||||
};
|
||||
};
|
||||
}; in self;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
let
|
||||
inherit (import ../lib/testing-python.nix { inherit system pkgs; }) makeTest;
|
||||
testCombinations = pkgs.lib.cartesianProductOfSets {
|
||||
testCombinations = pkgs.lib.cartesianProduct {
|
||||
predictable = [true false];
|
||||
withNetworkd = [true false];
|
||||
systemdStage1 = [true false];
|
||||
|
||||
@@ -6,12 +6,13 @@
|
||||
, ncurses
|
||||
, openssl
|
||||
, Cocoa
|
||||
, withALSA ? true, alsa-lib
|
||||
, withALSA ? false, alsa-lib
|
||||
, withClipboard ? true, libxcb, python3
|
||||
, withCover ? false, ueberzug
|
||||
, withPulseAudio ? false, libpulseaudio
|
||||
, withPulseAudio ? true, libpulseaudio
|
||||
, withPortAudio ? false, portaudio
|
||||
, withMPRIS ? true, withNotify ? true, dbus
|
||||
, withCrossterm ? true
|
||||
, nix-update-script
|
||||
, testers
|
||||
, ncspot
|
||||
@@ -54,6 +55,7 @@ rustPlatform.buildRustPackage rec {
|
||||
++ lib.optional withPulseAudio "pulseaudio_backend"
|
||||
++ lib.optional withPortAudio "portaudio_backend"
|
||||
++ lib.optional withMPRIS "mpris"
|
||||
++ lib.optional withCrossterm "crossterm_backend"
|
||||
++ lib.optional withNotify "notify";
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
buildDotnetModule rec {
|
||||
pname = "btcpayserver";
|
||||
version = "1.12.5";
|
||||
version = "1.13.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-qlqwIVk8NzfFZlzShfm3nTZWovObWLIKiNGAOCN8i7Y=";
|
||||
sha256 = "sha256-p0GNwwbhsgChlSlPVD/RHhzWF/1URdYp/iYQmJxORU8=";
|
||||
};
|
||||
|
||||
projectFile = "BTCPayServer/BTCPayServer.csproj";
|
||||
|
||||
+6
-5
@@ -8,18 +8,18 @@
|
||||
(fetchNuGet { pname = "AWSSDK.S3"; version = "3.3.110.10"; sha256 = "1lf1hfbx792dpa1hxgn0a0jrrvldd16hgbxx229dk2qcz5qlnc38"; })
|
||||
(fetchNuGet { pname = "BIP78.Sender"; version = "0.2.2"; sha256 = "12pm2s35c0qzc06099q2z1pxwq94rq85n74yz8fs8gwvm2ksgp4p"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Hwi"; version = "2.0.2"; sha256 = "0lh3n1qncqs4kbrmx65xs271f0d9c7irrs9qnsa9q51cbbqbljh9"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.All"; version = "1.5.3"; sha256 = "0nn6z1gjkkfy46w32pc5dvp4z5gjnwa9bn7xjkxgh7575m467jpp"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.All"; version = "1.6.0"; sha256 = "0xcqf7jz5rsi6nawcjfdbbdjlnqbx8xfzw8sn3a9ks8xjqv37krn"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.Charge"; version = "1.5.1"; sha256 = "1sb6qhm15d6qqyx9v5g7csvp8phhs6k2py5wmfmbpnjydaydf76g"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.CLightning"; version = "1.5.1"; sha256 = "13slknvqslxn8sp4dcwgbrnigrd9di84h9hribpls79kzw76gfpy"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.CLightning"; version = "1.6.0"; sha256 = "1bsmic9i1p2ya5hv1mscv46fxh6ibczfj1srylzwcpgs0mypy5y3"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.Common"; version = "1.3.21"; sha256 = "042xwfsxd30zgwiz0w14ynb755w5sldkplxgw1fkw68lrz66x5s4"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.Common"; version = "1.5.1"; sha256 = "1jy5k0nd2b10p3gyv8qm3nb31chkpcssrb9sjw2dqbac757nv154"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.Eclair"; version = "1.5.2"; sha256 = "1wmj66my2cg9dbz4bf8vrkxpkpl4wfqaxxzqxgs830vdk8h7pp50"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.LNBank"; version = "1.5.2"; sha256 = "0g2jv712lb3arlpf6j8p0ccq62gz1bjipb9ndzhdk7mwhaznkrwl"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.LND"; version = "1.5.2"; sha256 = "1yfs2ghh7xw4c98hfm3k8sdkij8qxwnfnb8fjw896jvj2jd3p3sr"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.LND"; version = "1.5.4"; sha256 = "0jqxy60msq9rl04lmqyiz9f02mjywypfh3apr9vcbyv2q47maxnd"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.Lightning.LNDhub"; version = "1.5.2"; sha256 = "09i663w6i93675bxrq5x6l26kr60mafwfr6ny92xrppj8rmd2lzx"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.NETCore.Plugins"; version = "1.4.4"; sha256 = "0rk0prmb0539ji5fd33cqy3yvw51i5i8m5hb43admr5z8960dd6l"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.NETCore.Plugins.Mvc"; version = "1.4.4"; sha256 = "1kmmj5m7s41wc1akpqw1b1j7pp4c0vn6sqxb487980ibpj6hyisl"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.NTag424"; version = "1.0.20"; sha256 = "19nzikcg7vygpad83lcaw5jvkrp4pgvggnziwkmi95l8k38gkj5q"; })
|
||||
(fetchNuGet { pname = "BTCPayServer.NTag424"; version = "1.0.22"; sha256 = "1gy81kqd745p2sak7yj5phn25k8blwwjzi39s5ikpwyqg3b0arsw"; })
|
||||
(fetchNuGet { pname = "CsvHelper"; version = "15.0.5"; sha256 = "01y8bhsnxghn3flz0pr11vj6wjrpmia8rpdrsp7kjfc1zmhqlgma"; })
|
||||
(fetchNuGet { pname = "Dapper"; version = "2.1.28"; sha256 = "15vpa9k11rr1mh5vb6hdchy8hqa03lqs83w19s3kxzh1089yl9m8"; })
|
||||
(fetchNuGet { pname = "DigitalRuby.ExchangeSharp"; version = "1.0.4"; sha256 = "1hkdls4wjrxq6df1zq9saa6hn5hynalq3gxb486w59j7i9f3g7d8"; })
|
||||
@@ -36,7 +36,7 @@
|
||||
(fetchNuGet { pname = "Google.Apis.Core"; version = "1.38.0"; sha256 = "012gslhnx65vqfyzjnqx4bqk9kb8bwbx966q2f9fdgrfcn26gj9j"; })
|
||||
(fetchNuGet { pname = "Google.Apis.Storage.v1"; version = "1.38.0.1470"; sha256 = "0mfrz7fmpfbjvp4zfpjasmnfbgxgxrrjkf8xgp9p6h9g8qh2f2h2"; })
|
||||
(fetchNuGet { pname = "Google.Cloud.Storage.V1"; version = "2.3.0"; sha256 = "01jhrd6m6md8m28chzg2dkdfd4yris79j1xi7r1ydm1cfjhmlj64"; })
|
||||
(fetchNuGet { pname = "HtmlSanitizer"; version = "8.0.723"; sha256 = "1x621v4ypgd1zrmq7zd7j9wcrc30f6rm9qh0i1sm4yfqd983yf4g"; })
|
||||
(fetchNuGet { pname = "HtmlSanitizer"; version = "8.0.838"; sha256 = "1k05ld36872lzbhlby9m1vf9y7chlijbflbk2pzcni57b9rp2qrg"; })
|
||||
(fetchNuGet { pname = "Humanizer.Core"; version = "2.14.1"; sha256 = "1ai7hgr0qwd7xlqfd92immddyi41j3ag91h3594yzfsgsy6yhyqi"; })
|
||||
(fetchNuGet { pname = "libsodium"; version = "1.0.18"; sha256 = "15qzl5k31yaaapqlijr336lh4lzz1qqxlimgxy8fdyig8jdmgszn"; })
|
||||
(fetchNuGet { pname = "LNURL"; version = "0.0.34"; sha256 = "1sbkqsln7wq5fsbw63wdha8kqwxgd95j0iblv4kxa1shyg3c5d9x"; })
|
||||
@@ -251,6 +251,7 @@
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "5.0.0"; sha256 = "1kvcllagxz2q92g81zkz81djkn2lid25ayjfgjalncyc68i15p0r"; })
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "6.0.0"; sha256 = "1js98kmjn47ivcvkjqdmyipzknb9xbndssczm8gq224pbaj1p88c"; })
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "7.0.0"; sha256 = "1n9122cy6v3qhsisc9lzwa1m1j62b8pi2678nsmnlyvfpk0zdagm"; })
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "8.0.0"; sha256 = "0z53a42zjd59zdkszcm7pvij4ri5xbb8jly9hzaad9khlf69bcqp"; })
|
||||
(fetchNuGet { pname = "System.Composition"; version = "6.0.0"; sha256 = "1p7hysns39cc24af6dwd4m48bqjsrr3clvi4aws152mh2fgyg50z"; })
|
||||
(fetchNuGet { pname = "System.Composition.AttributedModel"; version = "6.0.0"; sha256 = "1mqrblb0l65hw39d0hnspqcv85didpn4wbiwhfgj4784wzqx2w6k"; })
|
||||
(fetchNuGet { pname = "System.Composition.Convention"; version = "6.0.0"; sha256 = "02km3yb94p1c4s7liyhkmda0g71zm1rc8ijsfmy4bnlkq15xjw3b"; })
|
||||
|
||||
@@ -6,13 +6,13 @@
|
||||
|
||||
buildDotnetModule rec {
|
||||
pname = "nbxplorer";
|
||||
version = "2.5.0";
|
||||
version = "2.5.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dgarage";
|
||||
repo = "NBXplorer";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-yhOPv8J1unDx61xPc8ktQbIfkp00PPXRlOgdGo2QkB4=";
|
||||
sha256 = "sha256-zfL+VoDfICUtw02KeRghaq3XPOa/YnSh8orhqmo3Auo=";
|
||||
};
|
||||
|
||||
projectFile = "NBXplorer/NBXplorer.csproj";
|
||||
|
||||
+1
-1
@@ -46,7 +46,7 @@
|
||||
(fetchNuGet { pname = "NicolasDorier.CommandLine"; version = "2.0.0"; sha256 = "0gywvl0gqs3crlzwgwzcqf0qsrbhk3dxjycpimxqvs1ihg4dhb1f"; })
|
||||
(fetchNuGet { pname = "NicolasDorier.CommandLine.Configuration"; version = "2.0.0"; sha256 = "1cng096r3kb85lf5wjill4yhxx8nv9v0d6ksbn1i1vvdawwl6fkw"; })
|
||||
(fetchNuGet { pname = "NicolasDorier.StandardConfiguration"; version = "2.0.0"; sha256 = "0058dx34ja2idw468bmw7l3w21wr2am6yx57sqp7llhjl5ayy0wv"; })
|
||||
(fetchNuGet { pname = "Npgsql"; version = "8.0.1"; sha256 = "01dqlqpwr450vfs7r113k1glrnpnr2fgc04x5ni6bj0k6aahhl7v"; })
|
||||
(fetchNuGet { pname = "Npgsql"; version = "8.0.2"; sha256 = "0w1hm3bjh1vfnkzflp1x8bd4d723mpr4y6gb6ga79v5kkf09cmm2"; })
|
||||
(fetchNuGet { pname = "RabbitMQ.Client"; version = "5.1.2"; sha256 = "195nxmnva1z2p0ahvn0kswv4d39f5bdy2sl3cxcvfziamc21xrmd"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "1wl76vk12zhdh66vmagni66h5xbhgqq7zkdpgw21jhxhvlbcl8pk"; })
|
||||
|
||||
@@ -17213,5 +17213,17 @@ final: prev:
|
||||
meta.homepage = "https://github.com/jhradilek/vim-snippets/";
|
||||
};
|
||||
|
||||
gitignore-nvim = buildVimPlugin {
|
||||
pname = "gitignore-nvim";
|
||||
version = "2024-03-25";
|
||||
src = fetchFromGitHub {
|
||||
owner = "wintermute-cell";
|
||||
repo = "gitignore.nvim";
|
||||
rev = "2455191ec94da8ed222806a4fe3aa358eac1e558";
|
||||
sha256 = "sha256-p6k0NP3Vne6Kl98YodzSruVmJwxyrXziJj8N7u79o1w=";
|
||||
};
|
||||
meta.homepage = "https://github.com/wintermute-cell/gitignore.nvim/";
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -338,6 +338,7 @@ https://github.com/f-person/git-blame.nvim/,,
|
||||
https://github.com/akinsho/git-conflict.nvim/,HEAD,
|
||||
https://github.com/rhysd/git-messenger.vim/,,
|
||||
https://github.com/ThePrimeagen/git-worktree.nvim/,,
|
||||
https://github.com/wintermute-cell/gitignore.nvim/,HEAD,
|
||||
https://github.com/vim-scripts/gitignore.vim/,,
|
||||
https://github.com/ruifm/gitlinker.nvim/,,
|
||||
https://github.com/lewis6991/gitsigns.nvim/,,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
nodePackages,
|
||||
pyright,
|
||||
vscode-utils,
|
||||
}:
|
||||
|
||||
@@ -12,7 +12,7 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
hash = "sha256-xJU/j5r/Idp/0VorEfciT4SFKRBpMCv9Z0LKO/++1Gk=";
|
||||
};
|
||||
|
||||
buildInputs = [ nodePackages.pyright ];
|
||||
buildInputs = [ pyright ];
|
||||
|
||||
meta = {
|
||||
changelog = "https://marketplace.visualstudio.com/items/ms-python.vscode-pylance/changelog";
|
||||
|
||||
@@ -9,43 +9,43 @@
|
||||
let
|
||||
|
||||
pname = "1password";
|
||||
version = if channel == "stable" then "8.10.28" else "8.10.30-11.BETA";
|
||||
version = if channel == "stable" then "8.10.30" else "8.10.30-20.BETA";
|
||||
|
||||
sources = {
|
||||
stable = {
|
||||
x86_64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
|
||||
hash = "sha256-1EfP8z+vH0yRklkcxCOPYExu13iFcs6jOdvWBzl64BA=";
|
||||
hash = "sha256-q1PKFpBgjada7jmeXZYmH8dvy2A4lwfrQ0jQSoHVNcg=";
|
||||
};
|
||||
aarch64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz";
|
||||
hash = "sha256-E4MfpHVIn5Vu/TcDgwkoHdSnKthaAMFJZArnmSH5cxA=";
|
||||
hash = "sha256-Zv/mnykPi9PCDX44JtGi0GPrOujSmjx1BBJuEB81CwE=";
|
||||
};
|
||||
x86_64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
|
||||
hash = "sha256-+cXirJyDnxfE5FN8HEIrEyyoGvVrJ+0ykBHON9oHAek=";
|
||||
hash = "sha256-unC1cz5ooSdu4Csf7/daCyPdMy3/Lp3a76B7TBa/VXk=";
|
||||
};
|
||||
aarch64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
|
||||
hash = "sha256-zKAgAKYIgy5gZbe2IpskV8DG8AKtamYqq8cF/mTpRss=";
|
||||
hash = "sha256-DS6oCdr6srF+diL68a2gOskS4x+uj1i8DtL3uaaxv/I=";
|
||||
};
|
||||
};
|
||||
beta = {
|
||||
x86_64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz";
|
||||
hash = "sha256-6zyDZRsk9FZXJuGqqt1kCATcL99PjYP/wQzqE/4e4kg=";
|
||||
hash = "sha256-6I/3o+33sIkfyef8xGUWczaWykHPcvvAGv0xy/jCkKI=";
|
||||
};
|
||||
aarch64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz";
|
||||
hash = "sha256-JwHk6Byqd5LxVWBT/blRVnYhgSeYfaVY3Ax4GkLcFxM=";
|
||||
hash = "sha256-ph6DBBUzdUHtYCAQiA1me3bevtVPEgIxtwbgbdgQcGY=";
|
||||
};
|
||||
x86_64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
|
||||
hash = "sha256-h7vJguOEQBEvX9Z9MjdLj0hPnn8hJpeWRoduVowznLg=";
|
||||
hash = "sha256-XzZOj1pfoCTGMTsqZlI8hKTDRJ4w7debAPYHIIwsyyY=";
|
||||
};
|
||||
aarch64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
|
||||
hash = "sha256-g6lorMdQ56B6gd4YN4WQSkztwHqIgO7QshM1zocpqTE=";
|
||||
hash = "sha256-s+hnKhI2s6E1ZyJQxs3Wggy60LxCEr+u3tRtjTgjmZk=";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -17,7 +17,9 @@ let
|
||||
Type = "exec";
|
||||
ExecStart = "@out@/bin/systembus-notify";
|
||||
PrivateTmp = true;
|
||||
ProtectHome = true;
|
||||
# NB. We cannot `ProtectHome`, or it would block session dbus access.
|
||||
InaccessiblePaths = "/home";
|
||||
ReadOnlyPaths = "/run/user";
|
||||
ProtectSystem = "strict";
|
||||
Restart = "on-failure";
|
||||
Slice = "background.slice";
|
||||
|
||||
@@ -2,16 +2,20 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "writefreely";
|
||||
version = "0.14.0";
|
||||
version = "0.15.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "writefreely";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-vOoTAr33FMQaHIwpwIX0g/KJWQvDn3oVJg14kEY6FIQ=";
|
||||
sha256 = "sha256-7KTNimthtfmQCgyXevAEj+CZ2MS+uOby73OO1fGNXfs=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-xTo/zbz9pSjvNntr5dnytiJ7oRAdtEuyiu4mJZgwHTc=";
|
||||
vendorHash = "sha256-6RTshhxX+w/gdK53wCHVMpm6EkkRtEJ2/Fe7MfZ0WvY=";
|
||||
|
||||
patches = [
|
||||
./fix-go-version-error.patch
|
||||
];
|
||||
|
||||
ldflags = [ "-s" "-w" "-X github.com/writefreely/writefreely.softwareVer=${version}" ];
|
||||
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
diff --git a/go.mod b/go.mod
|
||||
index c49d701..601443d 100644
|
||||
--- a/go.mod
|
||||
+++ b/go.mod
|
||||
@@ -89,4 +89,6 @@ require (
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
)
|
||||
|
||||
-go 1.19
|
||||
+go 1.21
|
||||
+
|
||||
+toolchain go1.21.6
|
||||
diff --git a/go.sum b/go.sum
|
||||
index a9256ea..28ad24f 100644
|
||||
--- a/go.sum
|
||||
+++ b/go.sum
|
||||
@@ -72,6 +72,7 @@ github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw
|
||||
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
|
||||
+github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e h1:JKmoR8x90Iww1ks85zJ1lfDGgIiMDuIptTOhJq+zKyg=
|
||||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
|
||||
github.com/gorilla/csrf v1.7.2 h1:oTUjx0vyf2T+wkrx09Trsev1TE+/EbDAeHtSTbtC2eI=
|
||||
@@ -106,9 +107,11 @@ github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVY
|
||||
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
|
||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||
+github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
|
||||
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
|
||||
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
|
||||
+github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
|
||||
github.com/kylemcc/twitter-text-go v0.0.0-20180726194232-7f582f6736ec h1:ZXWuspqypleMuJy4bzYEqlMhJnGAYpLrWe5p7W3CdvI=
|
||||
github.com/kylemcc/twitter-text-go v0.0.0-20180726194232-7f582f6736ec/go.mod h1:voECJzdraJmolzPBgL9Z7ANwXf4oMXaTCsIkdiPpR/g=
|
||||
github.com/mailgun/mailgun-go v2.0.0+incompatible h1:0FoRHWwMUctnd8KIR3vtZbqdfjpIMxOZgcSa51s8F8o=
|
||||
@@ -103,7 +103,14 @@ let
|
||||
"flac"
|
||||
"libjpeg"
|
||||
"libpng"
|
||||
] ++ lib.optionals (!chromiumVersionAtLeast "124") [
|
||||
# Use the vendored libwebp for M124+ until we figure out how to solve:
|
||||
# Running phase: configurePhase
|
||||
# ERROR Unresolved dependencies.
|
||||
# //third_party/libavif:libavif_enc(//build/toolchain/linux/unbundle:default)
|
||||
# needs //third_party/libwebp:libwebp_sharpyuv(//build/toolchain/linux/unbundle:default)
|
||||
"libwebp"
|
||||
] ++ [
|
||||
"libxslt"
|
||||
# "opus"
|
||||
];
|
||||
@@ -265,6 +272,15 @@ let
|
||||
# Partial revert of https://github.com/chromium/chromium/commit/3687976b0c6d36cf4157419a24a39f6770098d61
|
||||
# allowing us to use our rustc and our clang.
|
||||
./patches/chromium-121-rust.patch
|
||||
] ++ lib.optionals (chromiumVersionAtLeast "124" && !chromiumVersionAtLeast "125") [
|
||||
# M124 shipped with broken --ozone-platform-hint flag handling, which we rely on
|
||||
# for our NIXOS_OZONE_WL (wayland) environment variable.
|
||||
# See <https://issues.chromium.org/issues/329678163>.
|
||||
# This is the commit for the fix that landed in M125, which applies clean on M124.
|
||||
(githubPatch {
|
||||
commit = "c7f4c58f896a651eba80ad805ebdb49d19ebdbd4";
|
||||
hash = "sha256-6nYWT2zN+j73xAIXLdGYT2eC71vGnGfiLCB0OwT0CAI=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -9,15 +9,15 @@
|
||||
};
|
||||
deps = {
|
||||
gn = {
|
||||
hash = "sha256-JvilCnnb4laqwq69fay+IdAujYC1EHD7uWpkF/C8tBw=";
|
||||
rev = "d4f94f9a6c25497b2ce0356bb99a8d202c8c1d32";
|
||||
hash = "sha256-aEL1kIhgPAFqdb174dG093HoLhCJ07O1Kpqfu7r14wQ=";
|
||||
rev = "22581fb46c0c0c9530caa67149ee4dd8811063cf";
|
||||
url = "https://gn.googlesource.com/gn";
|
||||
version = "2024-02-19";
|
||||
version = "2024-03-14";
|
||||
};
|
||||
};
|
||||
hash = "sha256-7H7h621AHPyhFYbaVFO892TtS+SP3Qu7cYUVk3ICL14=";
|
||||
hash_deb_amd64 = "sha256-tNkO1mPZg1xltBfoWeNhLekITtZV/WNgu//i2DJb17c=";
|
||||
version = "123.0.6312.122";
|
||||
hash = "sha256-apEniFKhIxPo4nhp9gCU+WpiV/EB40qif4RfE7Uniog=";
|
||||
hash_deb_amd64 = "sha256-rSbigG5/xbL32d1ntOn6gnZyxSpgrg1h7lb/RD4YROI=";
|
||||
version = "124.0.6367.60";
|
||||
};
|
||||
ungoogled-chromium = {
|
||||
deps = {
|
||||
|
||||
@@ -44,13 +44,13 @@ rec {
|
||||
|
||||
thunderbird-115 = (buildMozillaMach rec {
|
||||
pname = "thunderbird";
|
||||
version = "115.9.0";
|
||||
version = "115.10.1";
|
||||
application = "comm/mail";
|
||||
applicationName = "Mozilla Thunderbird";
|
||||
binaryName = pname;
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
|
||||
sha512 = "8ff0bed6e6d7f337ebae09011a10b59343ae7a8355ed1da2d72ec0d4218010adfae78e42565e5b784df26cef4702f313dc9616ac5ca5530fb772d77bdf7f2ea4";
|
||||
sha512 = "0324811d3e7e6228bb45cbf01e8a4a08b8386e22d1b52eb79f9a9a3bda940eb9d534ec1230961e9a998a0162c299a1ad49d23c5fbfa8e287896bcc0fd1c398e0";
|
||||
};
|
||||
extraPatches = [
|
||||
# The file to be patched is different from firefox's `no-buildconfig-ffx90.patch`.
|
||||
|
||||
@@ -13,11 +13,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "twingate";
|
||||
version = "2024.63.115357";
|
||||
version = "2024.98.119300";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://binaries.twingate.com/client/linux/DEB/x86_64/${version}/twingate-amd64.deb";
|
||||
hash = "sha256-VSm9gnHfo9LPwUvNwLeX7OjqMYgFUgGYSxx/qDndfwo=";
|
||||
hash = "sha256-N0cabYHaF5H1EeriQRQL7bN5UM85oOGrm9pxGr1AlEk=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "super-productivity";
|
||||
version = "8.0.1";
|
||||
version = "8.0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/johannesjo/super-productivity/releases/download/v${version}/superProductivity-${version}.AppImage";
|
||||
sha256 = "sha256-BW/4jP4lh3leAcdy3JHET/PUybN+0Cy9wxMSi57dAcw=";
|
||||
sha256 = "sha256-nH7dCrXBhkAYbvb9CPc4zhslFiYtA1ChuYPoHMdBBwQ=";
|
||||
name = "${pname}-${version}.AppImage";
|
||||
};
|
||||
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "iqtree";
|
||||
version = "2.3.1";
|
||||
version = "2.3.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "iqtree";
|
||||
repo = "iqtree2";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GaNumiTGa6mxvFifv730JFgKrRxG41gJN+ci3imDbzs=";
|
||||
hash = "sha256-hAJs48PhIyZSKSRZjQJKQwoJlt6DPRQwaDsuZ00VZII=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -39,14 +39,14 @@ let
|
||||
in
|
||||
buildGoModule rec {
|
||||
pname = "forgejo";
|
||||
version = "1.21.10-0";
|
||||
version = "1.21.11-0";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "forgejo";
|
||||
repo = "forgejo";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-uCRAT9RiU9S+tP9alNshSQwbUgLmU9wE5HIQ4FPmXVE=";
|
||||
hash = "sha256-Cp+dN4nTIboin42NJR/YUkVXbBC7uufH8EE7NgIVFzY=";
|
||||
# Forgejo has multiple different version strings that need to be provided
|
||||
# via ldflags. main.ForgejoVersion for example is a combination of a
|
||||
# hardcoded gitea compatibility version string (in the Makefile) and
|
||||
@@ -65,7 +65,7 @@ buildGoModule rec {
|
||||
'';
|
||||
};
|
||||
|
||||
vendorHash = "sha256-pgUSmM2CxYO8DralWoeR2groQxpxo9WtRcToYeaHXGk=";
|
||||
vendorHash = "sha256-OuWNF+muWM6xqwkFxLIUsn/huqXj2VKg8BN9+JHVw58=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "anilibria-winmaclinux";
|
||||
version = "1.2.16.1";
|
||||
version = "1.2.16.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "anilibria";
|
||||
repo = "anilibria-winmaclinux";
|
||||
rev = version;
|
||||
hash = "sha256-QQliz/tLeYsWgh/ZAO7FfbApAEqWhWoaQe9030QZxA8=";
|
||||
hash = "sha256-IgNYJSadGemjclh7rtY8dHz7uSfBHoWEyLlRoZ+st6k=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/src";
|
||||
|
||||
@@ -8,7 +8,8 @@
|
||||
{ name ? ""
|
||||
, lib
|
||||
, stdenvNoCC
|
||||
, bintools ? null, libc ? null, coreutils ? null, shell ? stdenvNoCC.shell, gnugrep ? null
|
||||
, runtimeShell
|
||||
, bintools ? null, libc ? null, coreutils ? null, gnugrep ? null
|
||||
, netbsd ? null, netbsdCross ? null
|
||||
, sharedLibraryLoader ?
|
||||
if libc == null then
|
||||
@@ -28,7 +29,7 @@
|
||||
, isGNU ? bintools.isGNU or false
|
||||
, isLLVM ? bintools.isLLVM or false
|
||||
, isCCTools ? bintools.isCCTools or false
|
||||
, buildPackages ? {}
|
||||
, expand-response-params
|
||||
, targetPackages ? {}
|
||||
, useMacosReexportHack ? false
|
||||
, wrapGas ? false
|
||||
@@ -131,10 +132,6 @@ let
|
||||
else if hasSuffix "pc-gnu" targetPlatform.config then "ld.so.1"
|
||||
else "";
|
||||
|
||||
expand-response-params =
|
||||
optionalString (buildPackages ? stdenv && buildPackages.stdenv.hasCC && buildPackages.stdenv.cc != "/dev/null")
|
||||
(import ../expand-response-params { inherit (buildPackages) stdenv; });
|
||||
|
||||
in
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
@@ -418,8 +415,10 @@ stdenvNoCC.mkDerivation {
|
||||
|
||||
env = {
|
||||
# for substitution in utils.bash
|
||||
# TODO(@sternenseemann): invent something cleaner than passing in "" in case of absence
|
||||
expandResponseParams = "${expand-response-params}/bin/expand-response-params";
|
||||
shell = getBin shell + shell.shellPath or "";
|
||||
# TODO(@sternenseemann): rename env var via stdenv rebuild
|
||||
shell = (getBin runtimeShell + runtimeShell.shellPath or "");
|
||||
gnugrep_bin = optionalString (!nativeTools) gnugrep;
|
||||
wrapperName = "BINTOOLS_WRAPPER";
|
||||
inherit dynamicLinker targetPrefix suffixSalt coreutils_bin;
|
||||
|
||||
@@ -8,14 +8,15 @@
|
||||
{ name ? ""
|
||||
, lib
|
||||
, stdenvNoCC
|
||||
, cc ? null, libc ? null, bintools, coreutils ? null, shell ? stdenvNoCC.shell
|
||||
, runtimeShell
|
||||
, cc ? null, libc ? null, bintools, coreutils ? null
|
||||
, zlib ? null
|
||||
, nativeTools, noLibc ? false, nativeLibc, nativePrefix ? ""
|
||||
, propagateDoc ? cc != null && cc ? man
|
||||
, extraTools ? [], extraPackages ? [], extraBuildCommands ? ""
|
||||
, nixSupport ? {}
|
||||
, isGNU ? false, isClang ? cc.isClang or false, isCcache ? cc.isCcache or false, gnugrep ? null
|
||||
, buildPackages ? {}
|
||||
, expand-response-params
|
||||
, libcxx ? null
|
||||
|
||||
# Whether or not to add `-B` and `-L` to `nix-support/cc-{c,ld}flags`
|
||||
@@ -112,9 +113,6 @@ let
|
||||
# unstable implementation detail, however.
|
||||
suffixSalt = replaceStrings ["-" "."] ["_" "_"] targetPlatform.config;
|
||||
|
||||
expand-response-params =
|
||||
optionalString ((buildPackages.stdenv.hasCC or false) && buildPackages.stdenv.cc != "/dev/null") (import ../expand-response-params { inherit (buildPackages) stdenv; });
|
||||
|
||||
useGccForLibs = useCcForLibs
|
||||
&& libcxx == null
|
||||
&& !targetPlatform.isDarwin
|
||||
@@ -297,6 +295,9 @@ stdenvNoCC.mkDerivation {
|
||||
'(${concatStringsSep " " (map (pkg: "\"${pkg}\"") pkgs)}))
|
||||
'';
|
||||
|
||||
# Expose expand-response-params we are /actually/ using. In stdenv
|
||||
# bootstrapping, expand-response-params usually comes from an earlier stage,
|
||||
# so it is important to expose this for reference checking.
|
||||
inherit expand-response-params;
|
||||
|
||||
inherit nixSupport;
|
||||
@@ -738,8 +739,10 @@ stdenvNoCC.mkDerivation {
|
||||
inherit isClang;
|
||||
|
||||
# for substitution in utils.bash
|
||||
# TODO(@sternenseemann): invent something cleaner than passing in "" in case of absence
|
||||
expandResponseParams = "${expand-response-params}/bin/expand-response-params";
|
||||
shell = getBin shell + shell.shellPath or "";
|
||||
# TODO(@sternenseemann): rename env var via stdenv rebuild
|
||||
shell = getBin runtimeShell + runtimeShell.shellPath or "";
|
||||
gnugrep_bin = optionalString (!nativeTools) gnugrep;
|
||||
# stdenv.cc.cc should not be null and we have nothing better for now.
|
||||
# if the native impure bootstrap is gotten rid of this can become `inherit cc;` again.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv }:
|
||||
{ stdenv, lib }:
|
||||
|
||||
# A "response file" is a sequence of arguments that is passed via a
|
||||
# file, rather than via argv[].
|
||||
@@ -25,4 +25,18 @@ stdenv.mkDerivation {
|
||||
mkdir -p $prefix/bin
|
||||
mv expand-response-params $prefix/bin/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Internal tool used by the nixpkgs wrapper scripts for processing response files";
|
||||
longDescription = ''
|
||||
expand-response-params is a tool that allows for obtaining a full list of all
|
||||
arguments passed in a given compiler command line including those passed via
|
||||
so-called response files. The nixpkgs wrapper scripts for bintools and C
|
||||
compilers use it for processing compiler flags. As it is developed in
|
||||
conjunction with the nixpkgs wrapper scripts, it should be considered as
|
||||
unstable and subject to change.
|
||||
'';
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "api-linter";
|
||||
version = "1.65.0";
|
||||
version = "1.65.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "googleapis";
|
||||
repo = "api-linter";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-j5xvFg7C74sVjISZMWgURVHnJM6HBZtr90b0UXbGbdg=";
|
||||
hash = "sha256-YGawN0mAJHfWkre+0tunPM/psd9aBWtSVsJoar0WVwY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Bz7+4iVR2X36vt6wx3nIgWmVL+i9ncwdzYP9tBEpplk=";
|
||||
vendorHash = "sha256-CsOnHHq3UjNWjfMy1TjXy20B0Bni6Fr3ZMJGvU7QDFA=";
|
||||
|
||||
subPackages = [ "cmd/api-linter" ];
|
||||
|
||||
|
||||
@@ -13,10 +13,10 @@ let
|
||||
}.${system} or throwSystem;
|
||||
|
||||
hash = {
|
||||
x86_64-linux = "sha256-AHjR6lHszYqZ2yC/uY2DmB67xMUFZliqI29Ptes2SoY=";
|
||||
aarch64-linux = "sha256-2NYlec6gpVMJwZctEqwn5rQiTrb5PmaxEz3lQxF1qmk=";
|
||||
x86_64-darwin = "sha256-OeMbO2lDK6XUF3ht+09ZWOL7UsEEVTrKyXOfhny8DhM=";
|
||||
aarch64-darwin = "sha256-4CQvJkd3kI7XJz46QsSUBtWLmxDu7AcAJwRS3amv0SM=";
|
||||
x86_64-linux = "sha256-6sIYDI6+1/p54Af+E/GmRAFlfDYJVwxhn0qF47ZH+Zg=";
|
||||
aarch64-linux = "sha256-1ImcjAqCZm5KZZYHWhG1eO7ipAdrP4Qjj2eBxTst++s=";
|
||||
x86_64-darwin = "sha256-yHthItxZYFejJlwJJ7BrM2csnLsZXjy/IbzF1iaCCyI=";
|
||||
aarch64-darwin = "sha256-GIx0yABISj/rH/yVkkx6NBs5qF0P8nhpMyvnzXJ92mA=";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
bin = "$out/bin/codeium_language_server";
|
||||
@@ -24,7 +24,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "codeium";
|
||||
version = "1.8.22";
|
||||
version = "1.8.25";
|
||||
src = fetchurl {
|
||||
name = "${finalAttrs.pname}-${finalAttrs.version}.gz";
|
||||
url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz";
|
||||
|
||||
Generated
+195
@@ -0,0 +1,195 @@
|
||||
# This file was automatically generated by passthru.fetch-deps.
|
||||
# Please dont edit it manually, your changes might get overwritten!
|
||||
|
||||
{ fetchNuGet }: [
|
||||
(fetchNuGet { pname = "CoderPatros.AntPathMatching"; version = "0.1.1"; sha256 = "1a9xhigw6bc4gl7qg3d8m9y53bk0mn9kmw07w4y27f32gr6m9b2k"; })
|
||||
(fetchNuGet { pname = "coverlet.collector"; version = "3.1.2"; sha256 = "0gsk2q93qw7pqxwd4pdyq5364wz0lvldcqqnf4amz13jaq86idmz"; })
|
||||
(fetchNuGet { pname = "CsvHelper"; version = "29.0.0"; sha256 = "0x5i3x5jqrxi82sgzfbgyrqqd6nsgb35z5p4rhqzb0fhq9qf6hlw"; })
|
||||
(fetchNuGet { pname = "CycloneDX.Core"; version = "6.0.0"; sha256 = "0lvllq1bb4w2l9va2ayjyd0kkbqyglkgjbha3y2hq71qkviqryd2"; })
|
||||
(fetchNuGet { pname = "CycloneDX.Spdx"; version = "6.0.0"; sha256 = "032q2rp2626hirfhr8q6xhi2hs35ma137fswivsd1lkcz69vvl4h"; })
|
||||
(fetchNuGet { pname = "CycloneDX.Spdx.Interop"; version = "6.0.0"; sha256 = "1c660hpq3bl3zaxyn9dkcn64f97nb1ri1bcdnky39ap4z6fp96ll"; })
|
||||
(fetchNuGet { pname = "CycloneDX.Utils"; version = "6.0.0"; sha256 = "1zf57hppl586x2sc9c3j4n9mqyinfsnj2fp66rxdljgcrlsb1vd1"; })
|
||||
(fetchNuGet { pname = "JetBrains.Annotations"; version = "2021.2.0"; sha256 = "0krvmg2h5ibh6mzs9yn7c8cdxgvr5hm7l884i49hlhnc1aiy5m1n"; })
|
||||
(fetchNuGet { pname = "Json.More.Net"; version = "1.7.0"; sha256 = "0fbmrq88wqbfpngs9vfx03xdbg71liz07nyx620za82f294pcdzk"; })
|
||||
(fetchNuGet { pname = "JsonPointer.Net"; version = "2.2.1"; sha256 = "16fhp2v2cqb9yaxy0nzq5ngmx1b089iz1phqfi0nhdjln3b2win6"; })
|
||||
(fetchNuGet { pname = "JsonSchema.Net"; version = "3.3.2"; sha256 = "0sfp8qvdnxnh93q1vs9f9pjybjkh9jifvhaxjgfksf6zbz8dhp4v"; })
|
||||
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.3.2"; sha256 = "1f05l2vm8inlwhk36lfbyszjlcnvdd2qw2832npaah0dldn6dz00"; })
|
||||
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
|
||||
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.4.1"; sha256 = "0z6d1i6xcf0c00z6rs75rgw4ncs9q2m8amasf6mmbf40fm02ry7g"; })
|
||||
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.3.2"; sha256 = "0pm06nxqi8aw04lciqy7iz8ln1qm5mx06cpwgqa2dfwvnjp7zxnm"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
|
||||
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.3.2"; sha256 = "0bs38r5kdw1xpbjbi5l82xbhfnfbzr5xhg5520lk05pg914d1ln1"; })
|
||||
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.3.2"; sha256 = "089nmaxzvm5xcf20pm4iiavz2k6lwh69r51xlbqg0ry605mnl869"; })
|
||||
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
|
||||
(fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; })
|
||||
(fetchNuGet { pname = "Newtonsoft.Json"; version = "12.0.3"; sha256 = "17dzl305d835mzign8r15vkmav2hq8l6g7942dfjpnzr17wwl89x"; })
|
||||
(fetchNuGet { pname = "Newtonsoft.Json"; version = "9.0.1"; sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r"; })
|
||||
(fetchNuGet { pname = "NuGet.Frameworks"; version = "5.11.0"; sha256 = "0wv26gq39hfqw9md32amr5771s73f5zn1z9vs4y77cgynxr73s4z"; })
|
||||
(fetchNuGet { pname = "protobuf-net"; version = "3.2.26"; sha256 = "1mcg46xnhgqwjacy6j8kvp3rylpi26wjnmhwv8mh5cwjya9nynqb"; })
|
||||
(fetchNuGet { pname = "protobuf-net.Core"; version = "3.2.26"; sha256 = "1wrr38ygdanf121bkl8b1d4kz1pawm064z69bqf3qbr46h4j575w"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; sha256 = "0bv5qgm6vr47ynxqbnkc7i797fdi8gbjjxii173syrx14nmrkwg0"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "1wl76vk12zhdh66vmagni66h5xbhgqq7zkdpgw21jhxhvlbcl8pk"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "00j6nv2xgmd3bi347k00m7wr542wjlig53rmj28pmw7ddcn97jbn"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; sha256 = "1daqf33hssad94lamzg01y49xwndy2q97i2lrb7mgn28656qia1x"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1ghhhk5psqxcg6w88sxkqrc35bxcz27zbqm2y5p5298pv3v7g201"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; sha256 = "0l8xz8zn46w4d10bcn3l4yyn4vhb3lrj2zw8llvz7jk14k4zps5x"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; sha256 = "02c9h3y35pylc0zfq3wcsvc5nqci95nrkq0mszifc0sjx7xrzkly"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; sha256 = "0zyri97dfc5vyaz9ba65hjj1zbcrzaffhsdlpxc9bh09wy22fq33"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; sha256 = "0x1mm8c6iy8rlxm8w9vqw7gb7s1ljadrn049fmf70cyh42vdfhrf"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "03kickal0iiby82wa5flar18kyv82s9s6d4xhk5h4bi5kfcyfjzl"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; sha256 = "1cqh1sv3h5j7ixyb7axxbdkqx6cxy00p4np4j91kpm492rf4s25b"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; sha256 = "0bh5bi25nk9w9xi8z23ws45q5yia6k7dg3i4axhfqlnj145l011x"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "0c3g3g3jmhlhw4klrc86ka9fjbl7i59ds1fadsb2l8nqf8z3kb19"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; sha256 = "0aqqi1v4wx51h51mk956y783wzags13wa7mgqyclacmsmpv02ps3"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "0lqhgqi0i8194ryqq6v2gqx0fb86db2gqknbm0aq31wb378j7ip8"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; sha256 = "03mnvkhskbzxddz4hm113zsch1jyzh2cs450dk3rgfjp8crlw1va"; })
|
||||
(fetchNuGet { pname = "runtime.any.System.Threading.Timer"; version = "4.3.0"; sha256 = "0aw4phrhwqz9m61r79vyfl5la64bjxj8l34qnrcwb28v49fg2086"; })
|
||||
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
|
||||
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
|
||||
(fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
|
||||
(fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
|
||||
(fetchNuGet { pname = "runtime.native.System.IO.Compression"; version = "4.3.0"; sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d"; })
|
||||
(fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.3.0"; sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk"; })
|
||||
(fetchNuGet { pname = "runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q"; })
|
||||
(fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
|
||||
(fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
|
||||
(fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
|
||||
(fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi"; })
|
||||
(fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
|
||||
(fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
|
||||
(fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
|
||||
(fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
|
||||
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
|
||||
(fetchNuGet { pname = "runtime.unix.Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0y61k9zbxhdi0glg154v30kkq7f8646nif8lnnxbvkjpakggd5id"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.Console"; version = "4.3.0"; sha256 = "1pfpkvc6x2if8zbdzg9rnc5fx51yllprl8zkm5npni2k50lisy80"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "1lps7fbnw34bnh3lm31gs5c0g0dh7548wfmb8zz62v0zqz71msj5"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.IO.FileSystem"; version = "4.3.0"; sha256 = "14nbkhvs7sji5r1saj2x8daz82rnf9kx28d3v2qss34qbr32dzix"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.Net.Primitives"; version = "4.3.0"; sha256 = "0bdnglg59pzx9394sy4ic66kmxhqp8q8bvmykdxcbs5mm0ipwwm4"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.Net.Sockets"; version = "4.3.0"; sha256 = "03npdxzy8gfv035bv1b9rz7c7hv0rxl5904wjz51if491mw0xy12"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; sha256 = "1jx02q6kiwlvfksq1q9qr17fj78y5v6mwsszav4qcz9z25d5g6vk"; })
|
||||
(fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; sha256 = "0pnxxmm8whx38dp6yvwgmh22smknxmqs5n513fc7m4wxvs1bvi4p"; })
|
||||
(fetchNuGet { pname = "Snapshooter"; version = "0.7.1"; sha256 = "04sn8pm1fgv8nasa6xi1wnm972xq9sq46lhc1p0945x44yvbrja9"; })
|
||||
(fetchNuGet { pname = "Snapshooter.Xunit"; version = "0.7.1"; sha256 = "1z0v66nnaf7jj9b793x334z0da4llw6d4iddv4iy876q7a656rbx"; })
|
||||
(fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
|
||||
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
|
||||
(fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; })
|
||||
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
|
||||
(fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; })
|
||||
(fetchNuGet { pname = "System.Collections.Immutable"; version = "7.0.0"; sha256 = "1n9122cy6v3qhsisc9lzwa1m1j62b8pi2678nsmnlyvfpk0zdagm"; })
|
||||
(fetchNuGet { pname = "System.CommandLine"; version = "2.0.0-beta1.21308.1"; sha256 = "09p3pr8sfx2znlwiig0m74qswziih0gn85y9i6bww5xprk4612np"; })
|
||||
(fetchNuGet { pname = "System.Console"; version = "4.3.0"; sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay"; })
|
||||
(fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11"; sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; })
|
||||
(fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
|
||||
(fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
|
||||
(fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; })
|
||||
(fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
|
||||
(fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
|
||||
(fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; })
|
||||
(fetchNuGet { pname = "System.Formats.Asn1"; version = "6.0.0"; sha256 = "1vvr7hs4qzjqb37r0w1mxq7xql2b17la63jwvmgv65s1hj00g8r9"; })
|
||||
(fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; })
|
||||
(fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
|
||||
(fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
|
||||
(fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
|
||||
(fetchNuGet { pname = "System.IO"; version = "4.1.0"; sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; })
|
||||
(fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
|
||||
(fetchNuGet { pname = "System.IO.Abstractions"; version = "13.2.47"; sha256 = "0s7f3cx99k6ci9a32q7sfm3s878awqs2k75c989kl7qx7i0g7v54"; })
|
||||
(fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; })
|
||||
(fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar"; })
|
||||
(fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1"; sha256 = "0kgfpw6w4djqra3w5crrg8xivbanh1w9dh3qapb28q060wb9flp1"; })
|
||||
(fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
|
||||
(fetchNuGet { pname = "System.IO.FileSystem.AccessControl"; version = "5.0.0"; sha256 = "0ixl68plva0fsj3byv76bai7vkin86s6wyzr8vcav3szl862blvk"; })
|
||||
(fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1"; sha256 = "1s0mniajj3lvbyf7vfb5shp4ink5yibsx945k6lvxa96r8la1612"; })
|
||||
(fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
|
||||
(fetchNuGet { pname = "System.Linq"; version = "4.1.0"; sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; })
|
||||
(fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
|
||||
(fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; })
|
||||
(fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
|
||||
(fetchNuGet { pname = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
|
||||
(fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; })
|
||||
(fetchNuGet { pname = "System.Net.NameResolution"; version = "4.3.0"; sha256 = "15r75pwc0rm3vvwsn8rvm2krf929mjfwliv0mpicjnii24470rkq"; })
|
||||
(fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
|
||||
(fetchNuGet { pname = "System.Net.Sockets"; version = "4.3.0"; sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla"; })
|
||||
(fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; })
|
||||
(fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; })
|
||||
(fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; sha256 = "04r1lkdnsznin0fj4ya1zikxiqr0h6r6a1ww2dsm60gqhdrf0mvx"; })
|
||||
(fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; })
|
||||
(fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.0.1"; sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.0.1"; sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1"; sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.6.0"; sha256 = "1wdbavrrkajy7qbdblpbpbalbdl48q3h34cchz24gvdgyrlf15r4"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1"; sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28"; })
|
||||
(fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
|
||||
(fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.1.0"; sha256 = "1bjli8a7sc7jlxqgcagl9nh8axzfl11f4ld3rjqsyxc516iijij7"; })
|
||||
(fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; })
|
||||
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1"; sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi"; })
|
||||
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
|
||||
(fetchNuGet { pname = "System.Runtime"; version = "4.1.0"; sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m"; })
|
||||
(fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
|
||||
(fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "6.0.0"; sha256 = "0qm741kh4rh57wky16sq4m0v05fxmkjjr87krycf5vp9f0zbahbc"; })
|
||||
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0"; sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z"; })
|
||||
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
|
||||
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1"; sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g"; })
|
||||
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
|
||||
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; })
|
||||
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
|
||||
(fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.3.0"; sha256 = "0q18r1sh4vn7bvqgd6dmqlw5v28flbpj349mkdish2vjyvmnb2ii"; })
|
||||
(fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; })
|
||||
(fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; })
|
||||
(fetchNuGet { pname = "System.Security.AccessControl"; version = "5.0.0"; sha256 = "17n3lrrl6vahkqmhlpn3w20afgz09n7i6rv0r3qypngwi7wqdr5r"; })
|
||||
(fetchNuGet { pname = "System.Security.AccessControl"; version = "6.0.0"; sha256 = "0a678bzj8yxxiffyzy60z2w1nczzpi8v97igr4ip3byd2q89dv58"; })
|
||||
(fetchNuGet { pname = "System.Security.Claims"; version = "4.3.0"; sha256 = "0jvfn7j22l3mm28qjy3rcw287y9h65ha4m940waaxah07jnbzrhn"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.3.0"; sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Pkcs"; version = "6.0.1"; sha256 = "0wswhbvm3gh06azg9k1zfvmhicpzlh7v71qzd4x5zwizq4khv7iq"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
|
||||
(fetchNuGet { pname = "System.Security.Cryptography.Xml"; version = "6.0.1"; sha256 = "15d0np1njvy2ywf0qzdqyjk5sjs4zbfxg917jrvlbfwrqpqxb5dj"; })
|
||||
(fetchNuGet { pname = "System.Security.Principal"; version = "4.3.0"; sha256 = "12cm2zws06z4lfc4dn31iqv7072zyi4m910d4r6wm8yx85arsfxf"; })
|
||||
(fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.3.0"; sha256 = "00a0a7c40i3v4cb20s2cmh9csb5jv2l0frvnlzyfxh848xalpdwr"; })
|
||||
(fetchNuGet { pname = "System.Security.Principal.Windows"; version = "5.0.0"; sha256 = "1mpk7xj76lxgz97a5yg93wi8lj0l8p157a5d50mmjy3gbz1904q8"; })
|
||||
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
|
||||
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
|
||||
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11"; sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs"; })
|
||||
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
|
||||
(fetchNuGet { pname = "System.Text.Encodings.Web"; version = "7.0.0"; sha256 = "1151hbyrcf8kyg1jz8k9awpbic98lwz9x129rg7zk1wrs6vjlpxl"; })
|
||||
(fetchNuGet { pname = "System.Text.Json"; version = "7.0.2"; sha256 = "1i6yinxvbwdk5g5z9y8l4a5hj2gw3h9ijlz2f1c1ngyprnwz2ivf"; })
|
||||
(fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.1.0"; sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7"; })
|
||||
(fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
|
||||
(fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; })
|
||||
(fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
|
||||
(fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; })
|
||||
(fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
|
||||
(fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; })
|
||||
(fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z"; })
|
||||
(fetchNuGet { pname = "System.Threading.ThreadPool"; version = "4.3.0"; sha256 = "027s1f4sbx0y1xqw2irqn6x161lzj8qwvnh2gn78ciiczdv10vf1"; })
|
||||
(fetchNuGet { pname = "System.Threading.Timer"; version = "4.3.0"; sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56"; })
|
||||
(fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; })
|
||||
(fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
|
||||
(fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11"; sha256 = "0n4lvpqzy9kc7qy1a4acwwd7b7pnvygv895az5640idl2y9zbz18"; })
|
||||
(fetchNuGet { pname = "System.Xml.XDocument"; version = "4.3.0"; sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd"; })
|
||||
(fetchNuGet { pname = "xunit"; version = "2.4.2"; sha256 = "0barl6x1qwx9srjxnanw9z0jik7lv1fp6cvmgqhk10aiv57dgqxm"; })
|
||||
(fetchNuGet { pname = "xunit.abstractions"; version = "2.0.3"; sha256 = "00wl8qksgkxld76fgir3ycc5rjqv1sqds6x8yx40927q5py74gfh"; })
|
||||
(fetchNuGet { pname = "xunit.analyzers"; version = "1.0.0"; sha256 = "0p4f24c462z49gvbh3k4z5ksa8ffa6p8abdgysqbbladl96im4c5"; })
|
||||
(fetchNuGet { pname = "xunit.assert"; version = "2.4.1"; sha256 = "1imynzh80wxq2rp9sc4gxs4x1nriil88f72ilhj5q0m44qqmqpc6"; })
|
||||
(fetchNuGet { pname = "xunit.assert"; version = "2.4.2"; sha256 = "0ifdry9qq3yaw2lfxdll30ljx1jkyhwwy3ydw6gd97y3kifr3k60"; })
|
||||
(fetchNuGet { pname = "xunit.core"; version = "2.4.1"; sha256 = "1nnb3j4kzmycaw1g76ii4rfqkvg6l8gqh18falwp8g28h802019a"; })
|
||||
(fetchNuGet { pname = "xunit.core"; version = "2.4.2"; sha256 = "1ir029igwm6b571lcm6585v5yxagy66rwrg26v4a1fnjq9dnh4cd"; })
|
||||
(fetchNuGet { pname = "xunit.extensibility.core"; version = "2.4.1"; sha256 = "103qsijmnip2pnbhciqyk2jyhdm6snindg5z2s57kqf5pcx9a050"; })
|
||||
(fetchNuGet { pname = "xunit.extensibility.core"; version = "2.4.2"; sha256 = "1h0a62xddsd82lljfjldn1nqy17imga905jb7j0ddr10wi8cqm62"; })
|
||||
(fetchNuGet { pname = "xunit.extensibility.execution"; version = "2.4.1"; sha256 = "1pbilxh1gp2ywm5idfl0klhl4gb16j86ib4x83p8raql1dv88qia"; })
|
||||
(fetchNuGet { pname = "xunit.extensibility.execution"; version = "2.4.2"; sha256 = "0r9gczqz4bc59cwl6d6wali6pvlw210i97chc1nlwn2qh383m54p"; })
|
||||
(fetchNuGet { pname = "xunit.runner.visualstudio"; version = "2.4.5"; sha256 = "0y8w33ci80z8k580pp24mfnaw1r8ji0w3az543xxcz6aagax9zhs"; })
|
||||
]
|
||||
@@ -0,0 +1,33 @@
|
||||
{ lib
|
||||
, buildDotnetModule
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildDotnetModule rec {
|
||||
pname = "cyclonedx-cli";
|
||||
version = "0.25.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CycloneDX";
|
||||
repo = "cyclonedx-cli";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-kAMSdUMr/NhsbMBViFJQlzgUNnxWgi/CLb3CW9OpWFo=";
|
||||
};
|
||||
|
||||
nugetDeps = ./deps.nix;
|
||||
|
||||
preFixup = ''
|
||||
cd $out/bin
|
||||
find . ! -name 'cyclonedx' -type f -exec rm -f {} +
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "CycloneDX CLI tool for SBOM analysis, merging, diffs and format conversions";
|
||||
homepage = "https://github.com/CycloneDX/cyclonedx-cli";
|
||||
changelog = "https://github.com/CycloneDX/cyclonedx-cli/releases/tag/v${version}";
|
||||
maintainers = with maintainers; [ thillux ];
|
||||
license = licenses.asl20;
|
||||
platforms = with platforms; (linux ++ darwin);
|
||||
mainProgram = "cyclonedx";
|
||||
};
|
||||
}
|
||||
@@ -1,20 +1,16 @@
|
||||
{ lib, stdenvNoCC, fetchFromGitHub }:
|
||||
{ lib
|
||||
, stdenvNoCC
|
||||
, fira-mono
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "fira";
|
||||
version = "4.202";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mozilla";
|
||||
repo = "Fira";
|
||||
rev = version;
|
||||
hash = "sha256-HLReqgL0PXF5vOpwLN0GiRwnzkjGkEVEyOEV2Z4R0oQ=";
|
||||
};
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "fira-sans";
|
||||
inherit (fira-mono) version src;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install --mode=-x -Dt $out/share/fonts/opentype otf/*.otf
|
||||
install --mode=-x -Dt $out/share/fonts/opentype otf/FiraSans*.otf
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
@@ -0,0 +1,23 @@
|
||||
{ lib
|
||||
, symlinkJoin
|
||||
, fira-mono
|
||||
, fira-sans
|
||||
}:
|
||||
|
||||
symlinkJoin rec {
|
||||
pname = "fira";
|
||||
inherit (fira-mono) version;
|
||||
name = "${pname}-${version}";
|
||||
|
||||
paths = [
|
||||
fira-mono
|
||||
fira-sans
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Fira font family including Fira Sans and Fira Mono";
|
||||
homepage = "https://mozilla.github.io/Fira/";
|
||||
license = lib.licenses.ofl;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
{
|
||||
lib,
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gtfocli";
|
||||
version = "0.0.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cmd-tools";
|
||||
repo = "gtfocli";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-fSk/OyeUffYZOkHXM1m/a9traDxdllYBieMEfsv910Q=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-yhN2Ve4mBw1HoC3zXYz+M8+2CimLGduG9lGTXi+rPNw=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "GTFO Command Line Interface for search binaries commands to bypass local security restrictions";
|
||||
homepage = "https://github.com/cmd-tools/gtfocli";
|
||||
changelog = "https://github.com/cmd-tools/gtfocli/releases/tag/${version}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
mainProgram = "gtfocli";
|
||||
};
|
||||
}
|
||||
@@ -12,13 +12,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "hypridle";
|
||||
version = "0.1.1";
|
||||
version = "0.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hyprwm";
|
||||
repo = "hypridle";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-YayFU0PZkwnKn1RSV3+i2HlSha/IFkG5osXcT0b/EUw=";
|
||||
hash = "sha256-7Ft5WZTMIjXOGgRCf31DZBwK6RK8xkeKlD5vFXz3gII=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -10,16 +10,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "igir";
|
||||
version = "2.6.2";
|
||||
version = "2.6.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "emmercm";
|
||||
repo = "igir";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-bJPUGB9fyeOb5W9EzQldh4rRJQBat58MgjjfS1qh66w=";
|
||||
hash = "sha256-0WA+7qw5ZuELHc8P0yizV+kEwSmoUBmgReM8ZosGnqs=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-q8gpx5zwiO/7ZBB/YruhCUgukp71sfJju8nmF6SwTrc=";
|
||||
npmDepsHash = "sha256-UfTq7/da1V9ubHh2wGvktP/SiWfyL8yF9iuCOq8Hxwg=";
|
||||
|
||||
# I have no clue why I have to do this
|
||||
postPatch = ''
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchFromGitea,
|
||||
makeDesktopItem,
|
||||
copyDesktopItems,
|
||||
makeWrapper,
|
||||
renpy,
|
||||
}:
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "katawa-shoujo-re-engineered";
|
||||
version = "1.4.4";
|
||||
|
||||
src = fetchFromGitea {
|
||||
# GitHub mirror at fleetingheart/ksre
|
||||
domain = "codeberg.org";
|
||||
owner = "fhs";
|
||||
repo = "katawa-shoujo-re-engineered";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-RYJM/wGVWqIRZzHLUtUZ5mKUrUftDVaOwS1f/EpW6Tk=";
|
||||
};
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "katawa-shoujo-re-engineered";
|
||||
desktopName = "Katawa Shoujo: Re-Engineered";
|
||||
type = "Application";
|
||||
icon = finalAttrs.meta.mainProgram;
|
||||
categories = [ "Game" ];
|
||||
exec = finalAttrs.meta.mainProgram;
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
makeWrapper ${lib.getExe' renpy "renpy"} $out/bin/${finalAttrs.meta.mainProgram} \
|
||||
--add-flags ${finalAttrs.src} --add-flags run
|
||||
install -D $src/web-icon.png $out/share/icons/hicolor/512x512/apps/${finalAttrs.meta.mainProgram}.png
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A fan-made modernization of the classic visual novel Katawa Shoujo";
|
||||
homepage = "https://www.fhs.sh/projects";
|
||||
license = with lib.licenses; [
|
||||
# code
|
||||
mpl20
|
||||
# assets from the original game
|
||||
cc-by-nc-nd-30
|
||||
];
|
||||
mainProgram = "katawa-shoujo-re-engineered";
|
||||
maintainers = with lib.maintainers; [ quantenzitrone ];
|
||||
platforms = renpy.meta.platforms;
|
||||
};
|
||||
})
|
||||
@@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "livekit";
|
||||
version = "1.5.3";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "livekit";
|
||||
repo = "livekit";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-2MooX+wy7KetxEBgQoVoL4GuVkm+SbTzYgfWyLL7KU8=";
|
||||
hash = "sha256-tgoVHRv8hnDkjFYShZ/3lieknhIobHv27RVvQOCtEWU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-8YR0Bl+sQsqpFtD+1GeYaydBdHeM0rRL2NbgAh9kCj0=";
|
||||
vendorHash = "sha256-TZ435gu5naFi/JLz6B/1fpvGA3diJp4JIWL1zgNlb4Q=";
|
||||
|
||||
subPackages = [ "cmd/server" ];
|
||||
|
||||
|
||||
@@ -1,8 +1,14 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub, olm, config }:
|
||||
{ buildGoModule
|
||||
, config
|
||||
, fetchFromGitHub
|
||||
, lib
|
||||
, nixosTests
|
||||
, olm
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "mautrix-meta";
|
||||
version = "0.2.0";
|
||||
version = "0.3.0";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
@@ -10,14 +16,21 @@ buildGoModule rec {
|
||||
owner = "mautrix";
|
||||
repo = "meta";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-n0FpEHgnMdg6W5wahIT5HaF9AP/QYlLuUWJS+VrElgg=";
|
||||
hash = "sha256-QyVcy9rqj1n1Nn/+gBufd57LyEaXPyu0KQhAUTgNmBA=";
|
||||
};
|
||||
|
||||
buildInputs = [ olm ];
|
||||
|
||||
vendorHash = "sha256-GkgIang3/1u0ybznHgK1l84bEiCj6u4qf8G+HgLGr90=";
|
||||
vendorHash = "sha256-oQSjP1WY0LuxrMtIrvyKhize91wXJxTzWeH0Y3MsEL4=";
|
||||
|
||||
doCheck = false;
|
||||
passthru = {
|
||||
tests = {
|
||||
inherit (nixosTests)
|
||||
mautrix-meta-postgres
|
||||
mautrix-meta-sqlite
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/mautrix/meta";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub, nix-update-script
|
||||
}:
|
||||
let
|
||||
version = "0.0.42";
|
||||
version = "0.0.43";
|
||||
in
|
||||
buildGoModule {
|
||||
|
||||
@@ -13,10 +13,10 @@ buildGoModule {
|
||||
repo = "mcap";
|
||||
owner = "foxglove";
|
||||
rev = "releases/mcap-cli/v${version}";
|
||||
hash = "sha256-9fjzMUMWn5j8AJJq+tK+Hq0o8d3HpacitJZ5CfLiaLw=";
|
||||
hash = "sha256-AWmPqymnNZxKbhxiQOO9djQXbP56mNh9Ucmty2jd+4Q=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Gl0zLBTWscKGtVOS6rPRL/r8KHYHpZwoUDbEyCL4Ijk=";
|
||||
vendorHash = "sha256-YFbfrqu2H7yU6vANH56MnxipDxaJLT76qZkvqLCFTTg=";
|
||||
|
||||
modRoot = "go/cli/mcap";
|
||||
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
}:
|
||||
buildGoModule rec {
|
||||
pname = "nezha-agent";
|
||||
version = "0.16.4";
|
||||
version = "0.16.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nezhahq";
|
||||
repo = "agent";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-xXv2FVPsl8BR51VMrFreaS3UQLEJwfObY4OeMMb8pms=";
|
||||
hash = "sha256-WRHYI3/6qrVZRa4ANA6VBBJCaINP1N8Xjy0GWO4LqgA=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ZlheRFgl3vsUXVx8PKZQ59kme2NC31OQAL6EaNhbf70=";
|
||||
vendorHash = "sha256-AtcRfvYBgTZJz9dpsMgacnV8RNi2Ph7QgUrcE6zzTo8=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
@@ -40,6 +40,6 @@ buildGoModule rec {
|
||||
description = "Agent of Nezha Monitoring";
|
||||
homepage = "https://github.com/nezhahq/agent";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [moraxyc];
|
||||
maintainers = with maintainers; [ moraxyc ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
}:
|
||||
buildGoModule rec {
|
||||
pname = "nom";
|
||||
version = "2.1.6";
|
||||
version = "2.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "guyfedwards";
|
||||
repo = "nom";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-NOPzznopH+PeSEMzO1vMHOSbmy9/v2yT4VC4kAsdbGw";
|
||||
hash = "sha256-AAgkxBbGH45n140jm28+J3hqYxzUIL6IVLGWD9oBexo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-fP6yxfIQoVaBC9hYcrCyo3YP3ntEVDbDTwKMO9TdyDI=";
|
||||
|
||||
@@ -0,0 +1,35 @@
|
||||
{
|
||||
lib,
|
||||
buildGoModule,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "nomore403";
|
||||
version = "1.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "devploit";
|
||||
repo = "nomore403";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-qA1i8l2oBQQ5IF8ho3K2k+TAndUTFGwb2NfhyFqfKzU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-IGnTbuaQH8A6aKyahHMd2RyFRh4WxZ3Vx/A9V3uelRg=";
|
||||
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X=main.Version=${version}"
|
||||
"-X=main.BuildDate=1970-01-01T00:00:00Z"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Tool to bypass 403/40X response codes";
|
||||
homepage = "https://github.com/devploit/nomore403";
|
||||
changelog = "https://github.com/devploit/nomore403/releases/tag/${version}";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ fab ];
|
||||
mainProgram = "nomore403";
|
||||
};
|
||||
}
|
||||
@@ -5,11 +5,11 @@
|
||||
}:
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "proton-ge-bin";
|
||||
version = "GE-Proton9-2";
|
||||
version = "GE-Proton9-4";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${finalAttrs.version}/${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-NqBzKonCYH+hNpVZzDhrVf+r2i6EwLG/IFBXjE2mC7s=";
|
||||
hash = "sha256-OR4SUqm5Xsycv/KVBW2Ug/lz4Xr6IQBp8gXacorRe3U=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "steamcompattool" ];
|
||||
|
||||
+193
@@ -0,0 +1,193 @@
|
||||
{
|
||||
"name": "pyright-root",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "pyright-root",
|
||||
"hasInstallScript": true,
|
||||
"dependencies": {
|
||||
"glob": "^7.2.3",
|
||||
"jsonc-parser": "^3.2.1"
|
||||
}
|
||||
},
|
||||
"node_modules/balanced-match": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
|
||||
},
|
||||
"node_modules/brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"dependencies": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
|
||||
},
|
||||
"node_modules/fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
|
||||
},
|
||||
"node_modules/glob": {
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
|
||||
"dependencies": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
"inherits": "2",
|
||||
"minimatch": "^3.1.1",
|
||||
"once": "^1.3.0",
|
||||
"path-is-absolute": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/inflight": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
|
||||
"dependencies": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"node_modules/jsonc-parser": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz",
|
||||
"integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA=="
|
||||
},
|
||||
"node_modules/minimatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"balanced-match": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
|
||||
"integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
|
||||
},
|
||||
"brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"requires": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
}
|
||||
},
|
||||
"concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
|
||||
},
|
||||
"fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
|
||||
},
|
||||
"glob": {
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
|
||||
"requires": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
"inherits": "2",
|
||||
"minimatch": "^3.1.1",
|
||||
"once": "^1.3.0",
|
||||
"path-is-absolute": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"inflight": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
|
||||
"requires": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"jsonc-parser": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz",
|
||||
"integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA=="
|
||||
},
|
||||
"minimatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"requires": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
}
|
||||
},
|
||||
"once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
|
||||
"requires": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
|
||||
},
|
||||
"wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
{ lib, buildNpmPackage, fetchFromGitHub, runCommand, jq }:
|
||||
|
||||
let
|
||||
version = "1.1.359";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Microsoft";
|
||||
repo = "pyright";
|
||||
rev = "${version}";
|
||||
hash = "sha256-gqMAfmYjYO6D9sRu+uJv4yJ/+csioFAwsUPBDF29VDs=";
|
||||
};
|
||||
|
||||
patchedPackageJSON = runCommand "package.json" { } ''
|
||||
${jq}/bin/jq '
|
||||
.devDependencies |= with_entries(select(.key == "glob" or .key == "jsonc-parser"))
|
||||
| .scripts = { }
|
||||
' ${src}/package.json > $out
|
||||
'';
|
||||
|
||||
pyright-root = buildNpmPackage {
|
||||
pname = "pyright-root";
|
||||
inherit version src;
|
||||
npmDepsHash = "sha256-63kUhKrxtJhwGCRBnxBfOFXs2ARCNn+OOGu6+fSJey4=";
|
||||
dontNpmBuild = true;
|
||||
postPatch = ''
|
||||
cp ${patchedPackageJSON} ./package.json
|
||||
cp ${./package-lock.json} ./package-lock.json
|
||||
'';
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
cp -r . "$out"
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
|
||||
pyright-internal = buildNpmPackage {
|
||||
pname = "pyright-internal";
|
||||
inherit version src;
|
||||
sourceRoot = "${src.name}/packages/pyright-internal";
|
||||
npmDepsHash = "sha256-p2KamNFJ3sJHmJm0MEPhI8L/8zAVzfc9NYy24rAdFcQ=";
|
||||
dontNpmBuild = true;
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
cp -r . "$out"
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
in
|
||||
buildNpmPackage rec {
|
||||
pname = "pyright";
|
||||
inherit version src;
|
||||
|
||||
sourceRoot = "${src.name}/packages/pyright";
|
||||
npmDepsHash = "sha256-U7WdMIYg9U4fJ8YtDruMzloRS2BQAa2QWExle9uwPbU=";
|
||||
|
||||
postPatch = ''
|
||||
chmod +w ../../
|
||||
ln -s ${pyright-root}/node_modules ../../node_modules
|
||||
chmod +w ../pyright-internal
|
||||
ln -s ${pyright-internal}/node_modules ../pyright-internal/node_modules
|
||||
'';
|
||||
|
||||
dontNpmBuild = true;
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/Microsoft/pyright/releases/tag/${version}";
|
||||
description = "Type checker for the Python language";
|
||||
homepage = "https://github.com/Microsoft/pyright";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "pyright";
|
||||
maintainers = with lib.maintainers; [ kalekseev ];
|
||||
};
|
||||
}
|
||||
Executable
+44
@@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl gnused common-updater-scripts jq prefetch-npm-deps
|
||||
set -euo pipefail
|
||||
|
||||
version=$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} -s https://api.github.com/repos/microsoft/pyright/releases/latest | jq -r '.tag_name | sub("^v"; "")')
|
||||
|
||||
update-source-version pyright "$version"
|
||||
|
||||
root="$(dirname "$(readlink -f "$0")")"
|
||||
FILE_PATH="$root/package.nix"
|
||||
REPO_URL_PREFIX="https://github.com/microsoft/pyright/raw"
|
||||
TEMP_DIR=$(mktemp -d)
|
||||
|
||||
trap 'rm -rf "$TEMP_DIR"' EXIT
|
||||
|
||||
# Function to download `package-lock.json` for a given source path and update hash
|
||||
update_hash() {
|
||||
local source_root_path="$1"
|
||||
local existing_hash="$2"
|
||||
|
||||
# Formulate download URL
|
||||
local download_url="${REPO_URL_PREFIX}/${version}${source_root_path}/package-lock.json"
|
||||
|
||||
# Download package-lock.json to temporary directory
|
||||
curl -fsSL -o "${TEMP_DIR}/package-lock.json" "$download_url"
|
||||
|
||||
# Calculate the new hash
|
||||
local new_hash
|
||||
new_hash=$(prefetch-npm-deps "${TEMP_DIR}/package-lock.json")
|
||||
|
||||
# Update npmDepsHash in the original file
|
||||
sed -i "s|$existing_hash|${new_hash}|" "$FILE_PATH"
|
||||
}
|
||||
|
||||
while IFS= read -r source_root_line; do
|
||||
[[ "$source_root_line" =~ sourceRoot ]] || continue
|
||||
source_root_path=$(echo "$source_root_line" | sed -e 's/^.*"${src.name}\(.*\)";.*$/\1/')
|
||||
|
||||
# Extract the current npmDepsHash for this sourceRoot
|
||||
existing_hash=$(grep -A1 "$source_root_line" "$FILE_PATH" | grep 'npmDepsHash' | sed -e 's/^.*npmDepsHash = "\(.*\)";$/\1/')
|
||||
|
||||
# Call the function to download and update the hash
|
||||
update_hash "$source_root_path" "$existing_hash"
|
||||
done < "$FILE_PATH"
|
||||
@@ -7,11 +7,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "quarkus-cli";
|
||||
version = "3.9.3";
|
||||
version = "3.9.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/quarkusio/quarkus/releases/download/${finalAttrs.version}/quarkus-cli-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-VTgBwpE5b/OgM7kkzZijmj9H4d8jy0HNMGl5tfmBe4E=";
|
||||
hash = "sha256-ez4D+czYDhs/GNrjRF8Bx999JRW0EigMxc39fOH54V8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, sqlite
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "rippkgs";
|
||||
version = "1.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "replit";
|
||||
repo = "rippkgs";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-qQZnD9meczfsQv1R68IiUfPq730I2IyesurrOhtA3es=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-hGSHgJ2HVCNqTBsTQIZlSE89FKqdMifuJyAGl3utF2I=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
sqlite
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "A CLI for indexing and searching packages in Nix expressions";
|
||||
homepage = "https://github.com/replit/rippkgs";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ eclairevoyant ];
|
||||
mainProgram = "rippkgs";
|
||||
};
|
||||
}
|
||||
Generated
+48
-48
@@ -110,7 +110,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f28243a43d821d11341ab73c80bed182dc015c514b951616cf79bd4af39af0c3"
|
||||
dependencies = [
|
||||
"concurrent-queue",
|
||||
"event-listener 5.2.0",
|
||||
"event-listener 5.3.0",
|
||||
"event-listener-strategy 0.5.1",
|
||||
"futures-core",
|
||||
"pin-project-lite",
|
||||
@@ -118,9 +118,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "async-executor"
|
||||
version = "1.9.1"
|
||||
version = "1.10.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "10b3e585719c2358d2660232671ca8ca4ddb4be4ce8a1842d6c2dc8685303316"
|
||||
checksum = "5f98c37cf288e302c16ef6c8472aad1e034c6c84ce5ea7b8101c98eb4a802fee"
|
||||
dependencies = [
|
||||
"async-lock 3.3.0",
|
||||
"async-task",
|
||||
@@ -244,7 +244,7 @@ checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -373,9 +373,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "bumpalo"
|
||||
version = "3.15.4"
|
||||
version = "3.16.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7ff69b9dd49fd426c69a0db9fc04dd934cdb6645ff000864d98f7e2af8830eaa"
|
||||
checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
|
||||
|
||||
[[package]]
|
||||
name = "bytemuck"
|
||||
@@ -489,9 +489,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "cc"
|
||||
version = "1.0.90"
|
||||
version = "1.0.92"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8cd6604a82acf3039f1144f54b8eb34e91ffba622051189e71b781822d5ee1f5"
|
||||
checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41"
|
||||
|
||||
[[package]]
|
||||
name = "cesu8"
|
||||
@@ -545,7 +545,7 @@ dependencies = [
|
||||
"anstream",
|
||||
"anstyle",
|
||||
"clap_lex",
|
||||
"strsim 0.11.0",
|
||||
"strsim 0.11.1",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -557,7 +557,7 @@ dependencies = [
|
||||
"heck 0.5.0",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -642,7 +642,7 @@ version = "0.1.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e"
|
||||
dependencies = [
|
||||
"getrandom 0.2.12",
|
||||
"getrandom 0.2.14",
|
||||
"once_cell",
|
||||
"tiny-keccak",
|
||||
]
|
||||
@@ -772,7 +772,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
|
||||
dependencies = [
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -843,7 +843,7 @@ dependencies = [
|
||||
"ident_case",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -876,7 +876,7 @@ checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f"
|
||||
dependencies = [
|
||||
"darling_core 0.20.8",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -968,7 +968,7 @@ dependencies = [
|
||||
"prettyplease",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1079,7 +1079,7 @@ dependencies = [
|
||||
"dioxus-core",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1183,7 +1183,7 @@ dependencies = [
|
||||
"darling 0.20.8",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1244,9 +1244,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "event-listener"
|
||||
version = "5.2.0"
|
||||
version = "5.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2b5fb89194fa3cad959b833185b3063ba881dbfc7030680b314250779fb4cc91"
|
||||
checksum = "6d9944b8ca13534cdfb2800775f8dd4902ff3fc75a50101466decadfdf322a24"
|
||||
dependencies = [
|
||||
"concurrent-queue",
|
||||
"parking",
|
||||
@@ -1269,7 +1269,7 @@ version = "0.5.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "332f51cb23d20b0de8458b86580878211da09bcd4503cb579c225b3d124cabb3"
|
||||
dependencies = [
|
||||
"event-listener 5.2.0",
|
||||
"event-listener 5.3.0",
|
||||
"pin-project-lite",
|
||||
]
|
||||
|
||||
@@ -1378,9 +1378,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "freedesktop-desktop-entry"
|
||||
version = "0.5.1"
|
||||
version = "0.5.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "287f89b1a3d88dd04d2b65dfec39f3c381efbcded7b736456039c4ee49d54b17"
|
||||
checksum = "c201444ddafb5506fe85265b48421664ff4617e3b7090ef99e42a0070c1aead0"
|
||||
dependencies = [
|
||||
"dirs 3.0.2",
|
||||
"gettext-rs",
|
||||
@@ -1495,7 +1495,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -1645,9 +1645,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "getrandom"
|
||||
version = "0.2.12"
|
||||
version = "0.2.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "190092ea657667030ac6a35e305e62fc4dd69fd98ac98631e5d3a2b1575a12b5"
|
||||
checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"libc",
|
||||
@@ -1822,7 +1822,7 @@ dependencies = [
|
||||
"proc-macro-error",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -2872,7 +2872,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3002,7 +3002,7 @@ version = "0.6.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
|
||||
dependencies = [
|
||||
"getrandom 0.2.12",
|
||||
"getrandom 0.2.14",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3050,7 +3050,7 @@ version = "0.4.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891"
|
||||
dependencies = [
|
||||
"getrandom 0.2.12",
|
||||
"getrandom 0.2.14",
|
||||
"libredox",
|
||||
"thiserror",
|
||||
]
|
||||
@@ -3137,7 +3137,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rmenu"
|
||||
version = "1.2.0"
|
||||
version = "1.2.1"
|
||||
dependencies = [
|
||||
"cached 0.44.0",
|
||||
"clap",
|
||||
@@ -3168,7 +3168,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rmenu-plugin"
|
||||
version = "0.0.1"
|
||||
version = "0.0.2"
|
||||
dependencies = [
|
||||
"bincode",
|
||||
"clap",
|
||||
@@ -3358,7 +3358,7 @@ checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3374,13 +3374,13 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "serde_repr"
|
||||
version = "0.1.18"
|
||||
version = "0.1.19"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb"
|
||||
checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3594,9 +3594,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
|
||||
|
||||
[[package]]
|
||||
name = "strsim"
|
||||
version = "0.11.0"
|
||||
version = "0.11.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5ee073c9e4cd00e28217186dbe12796d692868f432bf2e97ee73bed0c56dfa01"
|
||||
checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
||||
|
||||
[[package]]
|
||||
name = "strum"
|
||||
@@ -3639,9 +3639,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "syn"
|
||||
version = "2.0.57"
|
||||
version = "2.0.58"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "11a6ae1e52eb25aab8f3fb9fca13be982a373b8f1157ca14b897a825ba4a2d35"
|
||||
checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@@ -3789,7 +3789,7 @@ checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3870,7 +3870,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -3946,7 +3946,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -4135,7 +4135,7 @@ version = "1.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
|
||||
dependencies = [
|
||||
"getrandom 0.2.12",
|
||||
"getrandom 0.2.14",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -4211,7 +4211,7 @@ dependencies = [
|
||||
"once_cell",
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
"wasm-bindgen-shared",
|
||||
]
|
||||
|
||||
@@ -4245,7 +4245,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.57",
|
||||
"syn 2.0.58",
|
||||
"wasm-bindgen-backend",
|
||||
"wasm-bindgen-shared",
|
||||
]
|
||||
@@ -4268,9 +4268,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "webbrowser"
|
||||
version = "0.8.13"
|
||||
version = "0.8.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d1b04c569c83a9bb971dd47ec6fd48753315f4bf989b9b04a2e7ca4d7f0dc950"
|
||||
checksum = "dd595fb70f33583ac61644820ebc144a26c96028b625b96cafcd861f4743fbc8"
|
||||
dependencies = [
|
||||
"core-foundation",
|
||||
"home",
|
||||
@@ -4416,7 +4416,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
|
||||
[[package]]
|
||||
name = "window"
|
||||
version = "0.0.0"
|
||||
version = "0.0.1"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"clap",
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "rmenu";
|
||||
version = "1.2.0";
|
||||
version = "1.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "imgurbot12";
|
||||
repo = "rmenu";
|
||||
hash = "sha256-mzY+M7GGJDxb8s7pusRDo/xfKE/S4uxPy4klRBjVGOA=";
|
||||
hash = "sha256-JHJZfDxrDi0rJSloPdOVdvo/XkrFhvshd7yZWn/zELU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -65,14 +65,17 @@ rustPlatform.buildRustPackage rec {
|
||||
# fix config and theme
|
||||
mkdir -p $out/share/rmenu
|
||||
cp -vf $src/rmenu/public/config.yaml $out/share/rmenu/config.yaml
|
||||
sed -i "s@~\/\.config\/rmenu\/themes@$out\/themes@g" $out/share/rmenu/config.yaml
|
||||
sed -i "s@~\/\.config\/rmenu@$out\/plugins@g" $out/share/rmenu/config.yaml
|
||||
substituteInPlace $out/share/rmenu/config.yaml --replace "~/.config/rmenu" "$out"
|
||||
ln -sf $out/themes/dark.css $out/share/rmenu/style.css
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
# rmenu expects the config to be in XDG_CONFIG_DIRS
|
||||
# shell script plugins called from rmenu binary expect the rmenu-build binary to be on the PATH,
|
||||
# which needs wrapping in temporary environments like shells and flakes
|
||||
gappsWrapperArgs+=(
|
||||
--suffix XDG_CONFIG_DIRS : "$out/share"
|
||||
--suffix PATH : "$out/bin"
|
||||
)
|
||||
'';
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
{
|
||||
lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "sbom-utility";
|
||||
version = "0.15.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "CycloneDX";
|
||||
repo = "sbom-utility";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-tNLMrtJj1eeJ4sVhDRR24/KVI1HzZSRquiImuDTNZFI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-EdzI5ypwZRksQVmcfGDUgEMa4CeAPcm237ZaKqmWQDY=";
|
||||
|
||||
preCheck = ''
|
||||
cd test
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Utility that provides an API platform for validating, querying and managing BOM data";
|
||||
homepage = "https://github.com/CycloneDX/sbom-utility";
|
||||
changelog = "https://github.com/CycloneDX/sbom-utility/releases/tag/v${version}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ thillux ];
|
||||
mainProgram = "sbom-utility";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
diff --git a/snapcraft_legacy/internal/build_providers/_lxd/_lxd.py b/snapcraft_legacy/internal/build_providers/_lxd/_lxd.py
|
||||
index 5fa4f898..41264ebb 100644
|
||||
--- a/snapcraft_legacy/internal/build_providers/_lxd/_lxd.py
|
||||
+++ b/snapcraft_legacy/internal/build_providers/_lxd/_lxd.py
|
||||
@@ -142,7 +142,7 @@ class LXD(Provider):
|
||||
build_provider_flags=build_provider_flags,
|
||||
)
|
||||
# This endpoint is hardcoded everywhere lxc/lxd-pkg-snap#33
|
||||
- lxd_socket_path = "/var/snap/lxd/common/lxd/unix.socket"
|
||||
+ lxd_socket_path = "/var/lib/lxd/unix.socket"
|
||||
endpoint = "http+unix://{}".format(urllib.parse.quote(lxd_socket_path, safe=""))
|
||||
try:
|
||||
self._lxd_client: pylxd.Client = pylxd.Client(endpoint=endpoint)
|
||||
@@ -0,0 +1,21 @@
|
||||
diff --git a/snapcraft/utils.py b/snapcraft/utils.py
|
||||
index 511effe2..4af5a029 100644
|
||||
--- a/snapcraft/utils.py
|
||||
+++ b/snapcraft/utils.py
|
||||
@@ -15,6 +15,7 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
"""Utilities for snapcraft."""
|
||||
+
|
||||
import multiprocessing
|
||||
import os
|
||||
import pathlib
|
||||
@@ -91,7 +92,7 @@ def get_os_platform(
|
||||
release = platform.release()
|
||||
machine = platform.machine()
|
||||
|
||||
- if system == "Linux":
|
||||
+ if system == "Linux" and "NixOS" not in platform.version():
|
||||
try:
|
||||
with filepath.open("rt", encoding="utf-8") as release_file:
|
||||
lines = release_file.readlines()
|
||||
@@ -0,0 +1,188 @@
|
||||
{
|
||||
fetchFromGitHub,
|
||||
git,
|
||||
glibc,
|
||||
lib,
|
||||
makeWrapper,
|
||||
nix-update-script,
|
||||
python3Packages,
|
||||
squashfsTools,
|
||||
stdenv,
|
||||
}:
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "snapcraft";
|
||||
version = "8.2.0";
|
||||
|
||||
pyproject = true;
|
||||
|
||||
# Somewhere deep in the dependency tree is 'versioningit', which depends
|
||||
# on pydantic 2. Snapcraft will soon migrate to pydantic 2, and disabling
|
||||
# this doesn't seem to affect the functionality of the application.
|
||||
catchConflicts = false;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "canonical";
|
||||
repo = "snapcraft";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-uRapRL+492FOju83o3OBsYK52hwOOG6b4EbdMVpAlBs=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Snapcraft is only officially distributed as a snap, as is LXD. The socket
|
||||
# path for LXD must be adjusted so that it's at the correct location for LXD
|
||||
# on NixOS. This patch will likely never be accepted upstream.
|
||||
./lxd-socket-path.patch
|
||||
# In certain places, Snapcraft expects an /etc/os-release file to determine
|
||||
# host info which doesn't exist in our test environment. This is a
|
||||
# relatively naive patch which helps the test suite pass - without it *many*
|
||||
# of the tests fail. This patch will likely never be accepted upstream.
|
||||
./os-platform.patch
|
||||
# Snapcraft will try to inject itself as a snap *from the host system* into
|
||||
# the build system. This patch short-circuits that logic and ensures that
|
||||
# Snapcraft is installed on the build system from the snap store - because
|
||||
# there is no snapd on NixOS hosts that can be used for the injection. This
|
||||
# patch will likely never be accepted upstream.
|
||||
./set-channel-for-nix.patch
|
||||
# Certain paths (for extensions, schemas) are packaged in the snap by the
|
||||
# upstream, so the paths are well-known, except here where Snapcraft is
|
||||
# *not* in a snap, so this patch changes those paths to point to the correct
|
||||
# place in the Nix store. This patch will likely never be accepted upstream.
|
||||
./snapcraft-data-dirs.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace-fail 'version=determine_version()' 'version="${version}"' \
|
||||
--replace-fail 'gnupg' 'python-gnupg'
|
||||
|
||||
substituteInPlace requirements.txt \
|
||||
--replace-fail 'gnupg==2.3.1' 'python-gnupg'
|
||||
|
||||
substituteInPlace snapcraft/__init__.py \
|
||||
--replace-fail '__version__ = _get_version()' '__version__ = "${version}"'
|
||||
|
||||
substituteInPlace snapcraft_legacy/__init__.py \
|
||||
--replace-fail '__version__ = _get_version()' '__version__ = "${version}"'
|
||||
|
||||
substituteInPlace snapcraft/elf/elf_utils.py \
|
||||
--replace-fail 'arch_linker_path = Path(arch_config.dynamic_linker)' \
|
||||
'return str(Path("${glibc}/lib/ld-linux-x86-64.so.2"))'
|
||||
'';
|
||||
|
||||
buildInputs = [ makeWrapper ];
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
attrs
|
||||
catkin-pkg
|
||||
click
|
||||
craft-application
|
||||
craft-archives
|
||||
craft-cli
|
||||
craft-grammar
|
||||
craft-parts
|
||||
craft-providers
|
||||
craft-store
|
||||
debian
|
||||
docutils
|
||||
jsonschema
|
||||
launchpadlib
|
||||
lazr-restfulclient
|
||||
lxml
|
||||
macaroonbakery
|
||||
mypy-extensions
|
||||
progressbar
|
||||
pyelftools
|
||||
pygit2
|
||||
pylxd
|
||||
python-apt
|
||||
python-gnupg
|
||||
raven
|
||||
requests-toolbelt
|
||||
simplejson
|
||||
snap-helpers
|
||||
tabulate
|
||||
tinydb
|
||||
];
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
pythonRelaxDepsHook
|
||||
setuptools
|
||||
];
|
||||
|
||||
pythonRelaxDeps = [
|
||||
"docutils"
|
||||
"jsonschema"
|
||||
"pygit2"
|
||||
"urllib3"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/snapcraft --prefix PATH : ${squashfsTools}/bin
|
||||
'';
|
||||
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
pytest-check
|
||||
pytest-cov
|
||||
pytest-mock
|
||||
pytest-subprocess
|
||||
pytestCheckHook
|
||||
responses
|
||||
] ++ [
|
||||
git
|
||||
squashfsTools
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
mkdir -p check-phase
|
||||
export HOME="$(pwd)/check-phase"
|
||||
'';
|
||||
|
||||
pytestFlagsArray = [ "tests/unit" ];
|
||||
|
||||
disabledTests = [
|
||||
"test_bin_echo"
|
||||
"test_classic_linter_filter"
|
||||
"test_classic_linter"
|
||||
"test_complex_snap_yaml"
|
||||
"test_get_base_configuration_snap_channel"
|
||||
"test_get_base_configuration_snap_instance_name_default"
|
||||
"test_get_base_configuration_snap_instance_name_not_running_as_snap"
|
||||
"test_get_extensions_data_dir"
|
||||
"test_get_os_platform_alternative_formats"
|
||||
"test_get_os_platform_linux"
|
||||
"test_get_os_platform_windows"
|
||||
"test_lifecycle_pack_components_with_output"
|
||||
"test_lifecycle_pack_components"
|
||||
"test_lifecycle_write_component_metadata"
|
||||
"test_parse_info_integrated"
|
||||
"test_patch_elf"
|
||||
"test_remote_builder_init"
|
||||
"test_setup_assets_remote_icon"
|
||||
"test_snap_command_fallback"
|
||||
"test_validate_architectures_supported"
|
||||
"test_validate_architectures_unsupported"
|
||||
] ++ lib.optionals stdenv.isAarch64 [
|
||||
"test_load_project"
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
"tests/unit/commands/test_remote.py"
|
||||
"tests/unit/elf"
|
||||
"tests/unit/linters/test_classic_linter.py"
|
||||
"tests/unit/linters/test_library_linter.py"
|
||||
"tests/unit/parts/test_parts.py"
|
||||
"tests/unit/services"
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
mainProgram = "snapcraft";
|
||||
description = "Build and publish Snap packages";
|
||||
homepage = "https://github.com/canonical/snapcraft";
|
||||
changelog = "https://github.com/canonical/snapcraft/releases/tag/${version}";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ jnsgruk ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
diff --git a/snapcraft/providers.py b/snapcraft/providers.py
|
||||
index a999537a..dcd290a7 100644
|
||||
--- a/snapcraft/providers.py
|
||||
+++ b/snapcraft/providers.py
|
||||
@@ -21,6 +21,7 @@ import sys
|
||||
from pathlib import Path
|
||||
from textwrap import dedent
|
||||
from typing import Dict, Optional
|
||||
+import platform
|
||||
|
||||
from craft_cli import emit
|
||||
from craft_providers import Provider, ProviderError, bases, executor
|
||||
@@ -178,14 +179,14 @@ def get_base_configuration(
|
||||
# injecting a snap on a non-linux system is not supported, so default to
|
||||
# install snapcraft from the store's stable channel
|
||||
snap_channel = get_managed_environment_snap_channel()
|
||||
- if sys.platform != "linux" and not snap_channel:
|
||||
+ if snap_channel is None and (sys.platform != "linux" or "NixOS" in platform.version()):
|
||||
emit.progress(
|
||||
- "Using snapcraft from snap store channel 'latest/stable' in instance "
|
||||
+ "Using snapcraft from snap store channel 'latest/beta' in instance "
|
||||
"because snap injection is only supported on Linux hosts.",
|
||||
permanent=True,
|
||||
)
|
||||
snap_name = "snapcraft"
|
||||
- snap_channel = "stable"
|
||||
+ snap_channel = "beta"
|
||||
elif is_snapcraft_running_from_snap():
|
||||
# Use SNAP_INSTANCE_NAME for snapcraft's snap name, as it may not be
|
||||
# 'snapcraft' if the '--name' parameter was used to install snapcraft.
|
||||
@@ -0,0 +1,26 @@
|
||||
diff --git a/snapcraft_legacy/internal/common.py b/snapcraft_legacy/internal/common.py
|
||||
index 6017b405..aacd99a5 100644
|
||||
--- a/snapcraft_legacy/internal/common.py
|
||||
+++ b/snapcraft_legacy/internal/common.py
|
||||
@@ -34,14 +34,17 @@ from snaphelpers import SnapConfigOptions, SnapCtlError
|
||||
|
||||
from snapcraft_legacy.internal import errors
|
||||
|
||||
+# Get the path to the Nix store entry for Snapcraft at runtime
|
||||
+drv = os.path.realpath(__file__).split("/")[3]
|
||||
+
|
||||
SNAPCRAFT_FILES = ["parts", "stage", "prime"]
|
||||
-_DEFAULT_PLUGINDIR = os.path.join(sys.prefix, "share", "snapcraft", "plugins")
|
||||
+_DEFAULT_PLUGINDIR = os.path.join(os.sep, "nix", "store", drv, "share", "snapcraft", "plugins")
|
||||
_plugindir = _DEFAULT_PLUGINDIR
|
||||
-_DEFAULT_SCHEMADIR = os.path.join(sys.prefix, "share", "snapcraft", "schema")
|
||||
+_DEFAULT_SCHEMADIR = os.path.join(os.sep, "nix", "store", drv, "share", "snapcraft", "schema")
|
||||
_schemadir = _DEFAULT_SCHEMADIR
|
||||
-_DEFAULT_EXTENSIONSDIR = os.path.join(sys.prefix, "share", "snapcraft", "extensions")
|
||||
+_DEFAULT_EXTENSIONSDIR = os.path.join(os.sep, "nix", "store", drv, "share", "snapcraft", "extensions")
|
||||
_extensionsdir = _DEFAULT_EXTENSIONSDIR
|
||||
-_DEFAULT_KEYRINGSDIR = os.path.join(sys.prefix, "share", "snapcraft", "keyrings")
|
||||
+_DEFAULT_KEYRINGSDIR = os.path.join(os.sep, "nix", "store", drv, "share", "snapcraft", "keyrings")
|
||||
_keyringsdir = _DEFAULT_KEYRINGSDIR
|
||||
|
||||
_DOCKERENV_FILE = "/.dockerenv"
|
||||
@@ -63,16 +63,15 @@ in stdenv.mkDerivation {
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with lib; {
|
||||
description = "Sandboxed execution environment";
|
||||
homepage = "https://github.com/solo5/solo5";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = with lib.maintainers; [ ehmry ];
|
||||
platforms = builtins.map ({arch, os}: "${arch}-${os}")
|
||||
(lib.cartesianProductOfSets {
|
||||
arch = [ "aarch64" "x86_64" ];
|
||||
os = [ "freebsd" "genode" "linux" "openbsd" ];
|
||||
});
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.ehmry ];
|
||||
platforms = mapCartesianProduct ({ arch, os }: "${arch}-${os}") {
|
||||
arch = [ "aarch64" "x86_64" ];
|
||||
os = [ "freebsd" "genode" "linux" "openbsd" ];
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, ninja
|
||||
, cmake
|
||||
, libpng
|
||||
, libhwy
|
||||
, lcms2
|
||||
, giflib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ssimulacra2";
|
||||
version = "2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cloudinary";
|
||||
repo = "ssimulacra2";
|
||||
hash = "sha256-gOo8WCWMdXOSmny0mQSzCvHgURQTCNBFD4G4sxfmXik=";
|
||||
rev = "tags/v${finalAttrs.version}";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
ninja
|
||||
cmake
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libpng
|
||||
libhwy
|
||||
lcms2
|
||||
giflib
|
||||
];
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/src";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
install -m 755 -D ssimulacra2 -t $out/bin/
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/cloudinary/ssimulacra2";
|
||||
maintainers = [ maintainers.viraptor ];
|
||||
license = licenses.bsd3;
|
||||
description = "Perceptual image comparison tool";
|
||||
};
|
||||
})
|
||||
@@ -10,14 +10,14 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "symfony-cli";
|
||||
version = "5.8.14";
|
||||
vendorHash = "sha256-OBXurPjyB2/JCQBna+tk0p3+n8gPoNLXCppXkII3ZUc=";
|
||||
version = "5.8.15";
|
||||
vendorHash = "sha256-rkvQhZSoKZIl/gFgekLUelem2FGbRL9gp1LEzYN88Dc=";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "symfony-cli";
|
||||
repo = "symfony-cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-rwcULDbdYHZ1yFrGEGsJOZQG7Z29m0MOd79yalFIdkQ=";
|
||||
hash = "sha256-HbBg2oCsogY3X4jgjknqwNe2bszXjylvE+h5/iyg2pM=";
|
||||
};
|
||||
|
||||
ldflags = [
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "taskchampion-sync-server";
|
||||
version = "0.4.1-unstable-2024-04-08";
|
||||
src = fetchFromGitHub {
|
||||
owner = "GothenburgBitFactory";
|
||||
repo = "taskchampion-sync-server";
|
||||
rev = "31cb732f0697208ef9a8d325a79688612087185a";
|
||||
fetchSubmodules = false;
|
||||
sha256 = "sha256-CUgXJcrCOenbw9ZDFBody5FAvpT1dsZBojJk3wOv9U4=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-TpShnVQ2eFNLXJzOTlWVaLqT56YkP4zCGCf3yVtNcvI=";
|
||||
|
||||
# cargo tests fail when checkType="release" (default)
|
||||
checkType = "debug";
|
||||
|
||||
meta = {
|
||||
description = "Sync server for Taskwarrior 3";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://github.com/GothenburgBitFactory/taskchampion-sync-server";
|
||||
maintainers = with lib.maintainers; [mlaradji];
|
||||
mainProgram = "taskchampion-sync-server";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,83 @@
|
||||
{
|
||||
rustPlatform,
|
||||
rustc,
|
||||
cargo,
|
||||
corrosion,
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
cmake,
|
||||
libuuid,
|
||||
gnutls,
|
||||
python3,
|
||||
xdg-utils,
|
||||
installShellFiles,
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "taskwarrior";
|
||||
version = "3.0.0-unstable-2024-04-07";
|
||||
src = fetchFromGitHub {
|
||||
owner = "GothenburgBitFactory";
|
||||
repo = "taskwarrior";
|
||||
rev = "fd306712b85dda3ea89de4e617aebeb98b2ede80";
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-vzfHq/LHfnTx6CVGFCuO6W5aSqj1jVqldMdmyciSDDk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/commands/CmdNews.cpp \
|
||||
--replace "xdg-open" "${lib.getBin xdg-utils}/bin/xdg-open"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
libuuid
|
||||
python3
|
||||
installShellFiles
|
||||
corrosion
|
||||
cargo
|
||||
rustc
|
||||
rustPlatform.cargoSetupHook
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
preCheck = ''
|
||||
patchShebangs --build test
|
||||
'';
|
||||
checkTarget = "test";
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
name = "${pname}-${version}-cargo-deps";
|
||||
inherit src;
|
||||
sourceRoot = src.name;
|
||||
hash = "sha256-zQca/1tI/GUCekKhrg2iSL+h69SH6Ttsj3MqwDKj8HQ=";
|
||||
};
|
||||
cargoRoot = "./";
|
||||
preConfigure = ''
|
||||
export CMAKE_PREFIX_PATH="${corrosion}:$CMAKE_PREFIX_PATH"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
# ZSH is installed automatically from some reason, only bash and fish need
|
||||
# manual installation
|
||||
installShellCompletion --cmd task \
|
||||
--bash $out/share/doc/task/scripts/bash/task.sh \
|
||||
--fish $out/share/doc/task/scripts/fish/task.fish
|
||||
rm -r $out/share/doc/task/scripts/bash
|
||||
rm -r $out/share/doc/task/scripts/fish
|
||||
# Install vim and neovim plugin
|
||||
mkdir -p $out/share/vim-plugins
|
||||
mv $out/share/doc/task/scripts/vim $out/share/vim-plugins/task
|
||||
mkdir -p $out/share/nvim
|
||||
ln -s $out/share/vim-plugins/task $out/share/nvim/site
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Highly flexible command-line tool to manage TODO lists";
|
||||
homepage = "https://taskwarrior.org";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [marcweber oxalica mlaradji];
|
||||
mainProgram = "task";
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
@@ -15,14 +15,13 @@ let
|
||||
'');
|
||||
in
|
||||
builtins.listToAttrs (
|
||||
map
|
||||
texTest
|
||||
(lib.attrsets.cartesianProductOfSets {
|
||||
lib.mapCartesianProduct texTest
|
||||
{
|
||||
tex = [ "xelatex" "lualatex" ];
|
||||
fonttype = [ "ttf" "otf" ];
|
||||
package = [ "junicode" ];
|
||||
file = [ ./test.tex ];
|
||||
})
|
||||
}
|
||||
++
|
||||
[
|
||||
(texTest {
|
||||
|
||||
@@ -2,29 +2,18 @@
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "nasin-nanpa";
|
||||
version = "2.5.1";
|
||||
version = "3.1.0";
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
name = "nasin-nanpa.otf";
|
||||
url = "https://github.com/ETBCOR/nasin-nanpa/releases/download/n${version}/nasin-nanpa-${version}.otf";
|
||||
hash = "sha256-++uOrqFzQ6CB/OPEmBivpjMfAtFk3PSsCNpFBjOtGEg=";
|
||||
})
|
||||
(fetchurl {
|
||||
name = "nasin-nanpa-lasina-kin.otf";
|
||||
url = "https://github.com/ETBCOR/nasin-nanpa/releases/download/n${version}/nasin-nanpa-${version}-lasina-kin.otf";
|
||||
hash = "sha256-4WIX74y2O4NaKi/JQrgTbOxlKDQKJ/F9wkQuoOdWuTI=";
|
||||
})
|
||||
];
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ETBCOR/nasin-nanpa/releases/download/n${version}/nasin-nanpa-${version}.otf";
|
||||
hash = "sha256-remTvvOt7kpvTdq9H8tFI2yU+BtqePXlDDLQv/jtETU=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/fonts/opentype
|
||||
for src in $srcs; do
|
||||
file=$(stripHash $src)
|
||||
cp $src $out/share/fonts/opentype/$file
|
||||
done
|
||||
cp $src $out/share/fonts/opentype/nasin-nanpa.otf
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
@@ -9,9 +9,8 @@ let
|
||||
palette = [ "Frappe" "Latte" "Macchiato" "Mocha" ];
|
||||
color = [ "Blue" "Dark" "Flamingo" "Green" "Lavender" "Light" "Maroon" "Mauve" "Peach" "Pink" "Red" "Rosewater" "Sapphire" "Sky" "Teal" "Yellow" ];
|
||||
};
|
||||
product = lib.attrsets.cartesianProductOfSets dimensions;
|
||||
variantName = { palette, color }: (lib.strings.toLower palette) + color;
|
||||
variants = map variantName product;
|
||||
variants = lib.mapCartesianProduct variantName dimensions;
|
||||
in
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "catppuccin-cursors";
|
||||
|
||||
@@ -7,14 +7,13 @@ let
|
||||
thickness = [ "" "Slim_" ]; # Thick or slim edges.
|
||||
handedness = [ "" "LH_" ]; # Right- or left-handed.
|
||||
};
|
||||
product = lib.cartesianProductOfSets dimensions;
|
||||
variantName =
|
||||
{ color, opacity, thickness, handedness }:
|
||||
"${handedness}${opacity}${thickness}${color}";
|
||||
variants =
|
||||
# (The order of this list is already good looking enough to show in the
|
||||
# meta.longDescription.)
|
||||
map variantName product;
|
||||
lib.mapCartesianProduct variantName dimensions;
|
||||
in
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "comixcursors";
|
||||
|
||||
@@ -26,13 +26,13 @@ lib.checkListOfEnum "${pname}: theme tweaks" validTweaks tweaks
|
||||
stdenvNoCC.mkDerivation
|
||||
rec {
|
||||
inherit pname;
|
||||
version = "2024-04-01";
|
||||
version = "2024-04-18";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "Orchis-theme";
|
||||
owner = "vinceliuice";
|
||||
rev = version;
|
||||
hash = "sha256-gszyUZGWlgrBTQnaz6Ws7jzfTN5KAfX5SjVwmVrP9QE=";
|
||||
hash = "sha256-Kvafbvw1q8F0+l47WshFHPfZEQhFXPPXuI0RjBJnP4s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gtk3 sassc ];
|
||||
|
||||
@@ -26,6 +26,9 @@
|
||||
# The default `crystal build` options can be overridden with { foo.options = [ "--optionname" ]; }
|
||||
, crystalBinaries ? { }
|
||||
, enableParallelBuilding ? true
|
||||
# Copy all shards dependencies instead of symlinking and add write permissions
|
||||
# to make environment more local-like
|
||||
, copyShardDeps ? false
|
||||
, ...
|
||||
}@args:
|
||||
|
||||
@@ -78,7 +81,8 @@ stdenv.mkDerivation (mkDerivationArgs // {
|
||||
++ lib.optional (lockFile != null) "cp ${lockFile} ./shard.lock"
|
||||
++ lib.optionals (shardsFile != null) [
|
||||
"test -e lib || mkdir lib"
|
||||
"for d in ${crystalLib}/*; do ln -s $d lib/; done"
|
||||
(if copyShardDeps then "for d in ${crystalLib}/*; do cp -r $d/ lib/; done; chmod -R +w lib/"
|
||||
else "for d in ${crystalLib}/*; do ln -s $d lib/; done")
|
||||
"cp shard.lock lib/.shards.info"
|
||||
]
|
||||
++ [ "runHook postConfigure" ]
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
# Generated by update.sh script
|
||||
{
|
||||
"version" = "24.0.0";
|
||||
"version" = "24.0.1";
|
||||
"hashes" = {
|
||||
"aarch64-linux" = {
|
||||
sha256 = "1hz56nvl7av3xvwm7bxrzyri289h6hbawxsacn4zr7nm1snjn7i0";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.0/graalpy-community-24.0.0-linux-aarch64.tar.gz";
|
||||
sha256 = "09zrp1l80294p4dzkfcvabs7l2hbs6500j1cibhdphcghjwip2l7";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.1/graalpy-community-24.0.1-linux-aarch64.tar.gz";
|
||||
};
|
||||
"x86_64-linux" = {
|
||||
sha256 = "1ngqwrx1bc22jm12gmwqmqjfhhccpim1pai6885vg5xqsvc94y57";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.0/graalpy-community-24.0.0-linux-amd64.tar.gz";
|
||||
sha256 = "06m4dw0mnhlnm764xzip3nxzzs8yxbbps2f1cs75zfyakmhpa5c2";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.1/graalpy-community-24.0.1-linux-amd64.tar.gz";
|
||||
};
|
||||
"x86_64-darwin" = {
|
||||
sha256 = "07bh2fgk3l7vpws91ah48dsbrvvlq8wzfq88wq6ywilbikmnp0bw";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.0/graalpy-community-24.0.0-macos-amd64.tar.gz";
|
||||
sha256 = "0x36l03fqkrjdazv4q50dpilx8y0jr27wsgvy8wqbdzjvbcf7rd4";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.1/graalpy-community-24.0.1-macos-amd64.tar.gz";
|
||||
};
|
||||
"aarch64-darwin" = {
|
||||
sha256 = "00kljb24835l51jrnzdfblbhf2psdfw3wg00rllcdhpmiji40mbz";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.0/graalpy-community-24.0.0-macos-aarch64.tar.gz";
|
||||
sha256 = "1mgpspjxs1s8rzsyw760xlm21zlx7gflgqvcslw3xfq59bf76npw";
|
||||
url = "https://github.com/oracle/graalpython/releases/download/graal-24.0.1/graalpy-community-24.0.1-macos-aarch64.tar.gz";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -15,12 +15,12 @@
|
||||
|
||||
ocamlPackages.buildDunePackage rec {
|
||||
pname = "ligo";
|
||||
version = "1.4.0";
|
||||
version = "1.6.0";
|
||||
src = fetchFromGitLab {
|
||||
owner = "ligolang";
|
||||
repo = "ligo";
|
||||
rev = version;
|
||||
sha256 = "sha256-N2RkeKJ+lEyNJwpmF5sORmOkDhNmTYRYAgvyR7Pc5EI=";
|
||||
hash = "sha256-ZPHOgozuUij9+4YXZTnn1koddQEQZe/yrpb+OPHO+nA=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@@ -30,8 +30,6 @@ ocamlPackages.buildDunePackage rec {
|
||||
# This is a hack to work around the hack used in the dune files
|
||||
OPAM_SWITCH_PREFIX = "${tezos-rust-libs}";
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml-crunch
|
||||
git
|
||||
@@ -98,7 +96,7 @@ ocamlPackages.buildDunePackage rec {
|
||||
bls12-381
|
||||
bls12-381-signature
|
||||
ptime
|
||||
mtime_1
|
||||
mtime
|
||||
lwt_log
|
||||
secp256k1-internal
|
||||
resto
|
||||
@@ -112,6 +110,7 @@ ocamlPackages.buildDunePackage rec {
|
||||
simple-diff
|
||||
seqes
|
||||
stdint
|
||||
tezt
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
];
|
||||
|
||||
@@ -5,13 +5,14 @@ mkCoqDerivation {
|
||||
owner = "fblanqui";
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch coq.version [
|
||||
{case = range "8.14" "8.18"; out = "1.8.4"; }
|
||||
{case = range "8.14" "8.19"; out = "1.8.5"; }
|
||||
{case = range "8.12" "8.16"; out = "1.8.2"; }
|
||||
{case = range "8.10" "8.11"; out = "1.7.0"; }
|
||||
{case = range "8.8" "8.9"; out = "1.6.0"; }
|
||||
{case = range "8.6" "8.7"; out = "1.4.0"; }
|
||||
] null;
|
||||
|
||||
release."1.8.5".sha256 = "sha256-zKAyj6rKAasDF+iKExmpVHMe2WwgAwv2j1mmiVAl7ys=";
|
||||
release."1.8.4".sha256 = "sha256-WlRiaLgnFFW5AY0z6EzdP1mevNe1GHsik6wULJLN4k0=";
|
||||
release."1.8.3".sha256 = "sha256-mMUzIorkQ6WWQBJLk1ioUNwAdDdGHJyhenIvkAjALVU=";
|
||||
release."1.8.2".sha256 = "sha256:1gvx5cxm582793vxzrvsmhxif7px18h9xsb2jljy2gkphdmsnpqj";
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
{
|
||||
cudaVersion,
|
||||
lib,
|
||||
nvccCompatibilities,
|
||||
cudaVersion,
|
||||
pkgs,
|
||||
overrideCC,
|
||||
stdenv,
|
||||
wrapCCWith,
|
||||
stdenvAdapters,
|
||||
}:
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
{ hostPlatform, lib }:
|
||||
{ lib, stdenv }:
|
||||
let
|
||||
inherit (stdenv) hostPlatform;
|
||||
|
||||
# Samples are built around the CUDA Toolkit, which is not available for
|
||||
# aarch64. Check for both CUDA version and platform.
|
||||
platformIsSupported = hostPlatform.isx86_64 && hostPlatform.isLinux;
|
||||
|
||||
@@ -76,7 +76,7 @@ in
|
||||
# CUTENSOR_ROOT is double escaped
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace "\''${CUTENSOR_ROOT}/include" "${cutensor.dev}/include"
|
||||
--replace-fail "\''${CUTENSOR_ROOT}/include" "${cutensor.dev}/include"
|
||||
'';
|
||||
|
||||
CUTENSOR_ROOT = cutensor;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
cudaVersion,
|
||||
hostPlatform,
|
||||
lib,
|
||||
stdenv,
|
||||
}:
|
||||
let
|
||||
cudaVersionToHash = {
|
||||
@@ -23,6 +23,8 @@ let
|
||||
"12.3" = "sha256-fjVp0G6uRCWxsfe+gOwWTN+esZfk0O5uxS623u0REAk=";
|
||||
};
|
||||
|
||||
inherit (stdenv) hostPlatform;
|
||||
|
||||
# Samples are built around the CUDA Toolkit, which is not available for
|
||||
# aarch64. Check for both CUDA version and platform.
|
||||
cudaVersionIsSupported = cudaVersionToHash ? ${cudaVersion};
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
hash,
|
||||
lib,
|
||||
pkg-config,
|
||||
stdenv,
|
||||
}:
|
||||
let
|
||||
inherit (lib) lists strings;
|
||||
@@ -63,7 +64,7 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm755 -t $out/bin bin/${backendStdenv.hostPlatform.parsed.cpu.name}/${backendStdenv.hostPlatform.parsed.kernel.name}/release/*
|
||||
install -Dm755 -t $out/bin bin/${stdenv.hostPlatform.parsed.cpu.name}/${stdenv.hostPlatform.parsed.kernel.name}/release/*
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
@@ -1,122 +1,178 @@
|
||||
{
|
||||
cudaVersion,
|
||||
lib,
|
||||
addDriverRunpath,
|
||||
}:
|
||||
let
|
||||
inherit (lib) attrsets lists strings;
|
||||
# cudaVersionOlder : Version -> Boolean
|
||||
cudaVersionOlder = strings.versionOlder cudaVersion;
|
||||
# cudaVersionAtLeast : Version -> Boolean
|
||||
cudaVersionAtLeast = strings.versionAtLeast cudaVersion;
|
||||
filterAndCreateOverrides =
|
||||
createOverrideAttrs: final: prev:
|
||||
let
|
||||
# It is imperative that we use `final.callPackage` to perform overrides,
|
||||
# so the final package set is available to the override functions.
|
||||
inherit (final) callPackage;
|
||||
|
||||
addBuildInputs =
|
||||
drv: buildInputs:
|
||||
drv.overrideAttrs (prevAttrs: {
|
||||
buildInputs = prevAttrs.buildInputs ++ buildInputs;
|
||||
});
|
||||
in
|
||||
# NOTE: Filter out attributes that are not present in the previous version of
|
||||
# the package set. This is necessary to prevent the appearance of attributes
|
||||
# like `cuda_nvcc` in `cudaPackages_10_0, which predates redistributables.
|
||||
final: prev:
|
||||
attrsets.filterAttrs (attr: _: (builtins.hasAttr attr prev)) {
|
||||
libcufile = prev.libcufile.overrideAttrs (prevAttrs: {
|
||||
buildInputs = prevAttrs.buildInputs ++ [
|
||||
final.libcublas.lib
|
||||
final.pkgs.numactl
|
||||
final.pkgs.rdma-core
|
||||
# NOTE(@connorbaker): We MUST use `lib` from `prev` because the attribute
|
||||
# names CAN NOT depend on `final`.
|
||||
inherit (prev.lib.attrsets) filterAttrs mapAttrs;
|
||||
inherit (prev.lib.trivial) pipe;
|
||||
|
||||
# NOTE: Filter out attributes that are not present in the previous version of
|
||||
# the package set. This is necessary to prevent the appearance of attributes
|
||||
# like `cuda_nvcc` in `cudaPackages_10_0, which predates redistributables.
|
||||
filterOutNewAttrs = filterAttrs (name: _: prev ? ${name});
|
||||
|
||||
# Apply callPackage to each attribute value, yielding a value to be passed
|
||||
# to overrideAttrs.
|
||||
callPackageThenOverrideAttrs = mapAttrs (
|
||||
name: value: prev.${name}.overrideAttrs (callPackage value { })
|
||||
);
|
||||
in
|
||||
pipe createOverrideAttrs [
|
||||
filterOutNewAttrs
|
||||
callPackageThenOverrideAttrs
|
||||
];
|
||||
# Before 11.7 libcufile depends on itself for some reason.
|
||||
autoPatchelfIgnoreMissingDeps =
|
||||
prevAttrs.autoPatchelfIgnoreMissingDeps
|
||||
++ lists.optionals (cudaVersionOlder "11.7") [ "libcufile.so.0" ];
|
||||
});
|
||||
in
|
||||
# Each attribute name is the name of an existing package in the previous version
|
||||
# of the package set.
|
||||
# The value is a function (to be provided to callPackage), which yields a value
|
||||
# to be provided to overrideAttrs. This allows us to override the attributes of
|
||||
# a package without losing access to the fixed point of the package set --
|
||||
# especially useful given that some packages may depend on each other!
|
||||
filterAndCreateOverrides {
|
||||
libcufile =
|
||||
{
|
||||
cudaOlder,
|
||||
lib,
|
||||
libcublas,
|
||||
numactl,
|
||||
rdma-core,
|
||||
}:
|
||||
prevAttrs: {
|
||||
buildInputs = prevAttrs.buildInputs ++ [
|
||||
libcublas.lib
|
||||
numactl
|
||||
rdma-core
|
||||
];
|
||||
# Before 11.7 libcufile depends on itself for some reason.
|
||||
autoPatchelfIgnoreMissingDeps =
|
||||
prevAttrs.autoPatchelfIgnoreMissingDeps
|
||||
++ lib.lists.optionals (cudaOlder "11.7") [ "libcufile.so.0" ];
|
||||
};
|
||||
|
||||
libcusolver = addBuildInputs prev.libcusolver (
|
||||
# Always depends on this
|
||||
[ final.libcublas.lib ]
|
||||
# Dependency from 12.0 and on
|
||||
++ lists.optionals (cudaVersionAtLeast "12.0") [ final.libnvjitlink.lib ]
|
||||
# Dependency from 12.1 and on
|
||||
++ lists.optionals (cudaVersionAtLeast "12.1") [ final.libcusparse.lib ]
|
||||
);
|
||||
libcusolver =
|
||||
{
|
||||
cudaAtLeast,
|
||||
lib,
|
||||
libcublas,
|
||||
libcusparse ? null,
|
||||
libnvjitlink ? null,
|
||||
}:
|
||||
prevAttrs: {
|
||||
buildInputs =
|
||||
prevAttrs.buildInputs
|
||||
# Always depends on this
|
||||
++ [ libcublas.lib ]
|
||||
# Dependency from 12.0 and on
|
||||
++ lib.lists.optionals (cudaAtLeast "12.0") [ libnvjitlink.lib ]
|
||||
# Dependency from 12.1 and on
|
||||
++ lib.lists.optionals (cudaAtLeast "12.1") [ libcusparse.lib ];
|
||||
|
||||
libcusparse = addBuildInputs prev.libcusparse (
|
||||
lists.optionals (cudaVersionAtLeast "12.0") [ final.libnvjitlink.lib ]
|
||||
);
|
||||
brokenConditions = prevAttrs.brokenConditions // {
|
||||
"libnvjitlink missing (CUDA >= 12.0)" =
|
||||
!(cudaAtLeast "12.0" -> (libnvjitlink != null && libnvjitlink.lib != null));
|
||||
"libcusparse missing (CUDA >= 12.1)" =
|
||||
!(cudaAtLeast "12.1" -> (libcusparse != null && libcusparse.lib != null));
|
||||
};
|
||||
};
|
||||
|
||||
cuda_cudart = prev.cuda_cudart.overrideAttrs (prevAttrs: {
|
||||
# Remove once cuda-find-redist-features has a special case for libcuda
|
||||
outputs =
|
||||
prevAttrs.outputs
|
||||
++ lists.optionals (!(builtins.elem "stubs" prevAttrs.outputs)) [ "stubs" ];
|
||||
libcusparse =
|
||||
{
|
||||
cudaAtLeast,
|
||||
lib,
|
||||
libnvjitlink ? null,
|
||||
}:
|
||||
prevAttrs: {
|
||||
buildInputs =
|
||||
prevAttrs.buildInputs
|
||||
# Dependency from 12.0 and on
|
||||
++ lib.lists.optionals (cudaAtLeast "12.0") [ libnvjitlink.lib ];
|
||||
|
||||
allowFHSReferences = false;
|
||||
brokenConditions = prevAttrs.brokenConditions // {
|
||||
"libnvjitlink missing (CUDA >= 12.0)" =
|
||||
!(cudaAtLeast "12.0" -> (libnvjitlink != null && libnvjitlink.lib != null));
|
||||
};
|
||||
};
|
||||
|
||||
# The libcuda stub's pkg-config doesn't follow the general pattern:
|
||||
postPatch =
|
||||
prevAttrs.postPatch or ""
|
||||
+ ''
|
||||
while IFS= read -r -d $'\0' path ; do
|
||||
sed -i \
|
||||
-e "s|^libdir\s*=.*/lib\$|libdir=''${!outputLib}/lib/stubs|" \
|
||||
-e "s|^Libs\s*:\(.*\)\$|Libs: \1 -Wl,-rpath,${addDriverRunpath.driverLink}/lib|" \
|
||||
"$path"
|
||||
done < <(find -iname 'cuda-*.pc' -print0)
|
||||
''
|
||||
+ ''
|
||||
# TODO(@connorbaker): cuda_cudart.dev depends on crt/host_config.h, which is from
|
||||
# cuda_nvcc.dev. It would be nice to be able to encode that.
|
||||
cuda_cudart =
|
||||
{ addDriverRunpath, lib }:
|
||||
prevAttrs: {
|
||||
# Remove once cuda-find-redist-features has a special case for libcuda
|
||||
outputs =
|
||||
prevAttrs.outputs
|
||||
++ lib.lists.optionals (!(builtins.elem "stubs" prevAttrs.outputs)) [ "stubs" ];
|
||||
|
||||
allowFHSReferences = false;
|
||||
|
||||
# The libcuda stub's pkg-config doesn't follow the general pattern:
|
||||
postPatch =
|
||||
prevAttrs.postPatch or ""
|
||||
+ ''
|
||||
while IFS= read -r -d $'\0' path; do
|
||||
sed -i \
|
||||
-e "s|^libdir\s*=.*/lib\$|libdir=''${!outputLib}/lib/stubs|" \
|
||||
-e "s|^Libs\s*:\(.*\)\$|Libs: \1 -Wl,-rpath,${addDriverRunpath.driverLink}/lib|" \
|
||||
"$path"
|
||||
done < <(find -iname 'cuda-*.pc' -print0)
|
||||
''
|
||||
# Namelink may not be enough, add a soname.
|
||||
# Cf. https://gitlab.kitware.com/cmake/cmake/-/issues/25536
|
||||
if [[ -f lib/stubs/libcuda.so && ! -f lib/stubs/libcuda.so.1 ]] ; then
|
||||
ln -s libcuda.so lib/stubs/libcuda.so.1
|
||||
fi
|
||||
'';
|
||||
+ ''
|
||||
if [[ -f lib/stubs/libcuda.so && ! -f lib/stubs/libcuda.so.1 ]]; then
|
||||
ln -s libcuda.so lib/stubs/libcuda.so.1
|
||||
fi
|
||||
'';
|
||||
|
||||
postFixup =
|
||||
prevAttrs.postFixup or ""
|
||||
+ ''
|
||||
moveToOutput lib/stubs "$stubs"
|
||||
ln -s "$stubs"/lib/stubs/* "$stubs"/lib/
|
||||
ln -s "$stubs"/lib/stubs "''${!outputLib}/lib/stubs"
|
||||
'';
|
||||
});
|
||||
|
||||
cuda_compat = prev.cuda_compat.overrideAttrs (prevAttrs: {
|
||||
autoPatchelfIgnoreMissingDeps = prevAttrs.autoPatchelfIgnoreMissingDeps ++ [
|
||||
"libnvrm_gpu.so"
|
||||
"libnvrm_mem.so"
|
||||
"libnvdla_runtime.so"
|
||||
];
|
||||
# `cuda_compat` only works on aarch64-linux, and only when building for Jetson devices.
|
||||
badPlatformsConditions = prevAttrs.badPlatformsConditions // {
|
||||
"Trying to use cuda_compat on aarch64-linux targeting non-Jetson devices" =
|
||||
!final.flags.isJetsonBuild;
|
||||
postFixup =
|
||||
prevAttrs.postFixup or ""
|
||||
+ ''
|
||||
moveToOutput lib/stubs "$stubs"
|
||||
ln -s "$stubs"/lib/stubs/* "$stubs"/lib/
|
||||
ln -s "$stubs"/lib/stubs "''${!outputLib}/lib/stubs"
|
||||
'';
|
||||
};
|
||||
});
|
||||
|
||||
cuda_gdb = addBuildInputs prev.cuda_gdb (
|
||||
# x86_64 only needs gmp from 12.0 and on
|
||||
lists.optionals (cudaVersionAtLeast "12.0") [ final.pkgs.gmp ]
|
||||
);
|
||||
|
||||
cuda_nvcc = prev.cuda_nvcc.overrideAttrs (
|
||||
oldAttrs:
|
||||
let
|
||||
# This replicates the logic in stdenvAdapters.useLibsFrom, except we use
|
||||
# gcc from pkgsHostTarget and not from buildPackages.
|
||||
ccForLibs-wrapper = final.pkgs.stdenv.cc;
|
||||
gccMajorVersion = final.nvccCompatibilities.${cudaVersion}.gccMaxMajorVersion;
|
||||
cc = final.pkgs.wrapCCWith {
|
||||
cc = final.pkgs."gcc${gccMajorVersion}".cc;
|
||||
useCcForLibs = true;
|
||||
gccForLibs = ccForLibs-wrapper.cc;
|
||||
cuda_compat =
|
||||
{ flags, lib }:
|
||||
prevAttrs: {
|
||||
autoPatchelfIgnoreMissingDeps = prevAttrs.autoPatchelfIgnoreMissingDeps ++ [
|
||||
"libnvrm_gpu.so"
|
||||
"libnvrm_mem.so"
|
||||
"libnvdla_runtime.so"
|
||||
];
|
||||
# `cuda_compat` only works on aarch64-linux, and only when building for Jetson devices.
|
||||
badPlatformsConditions = prevAttrs.badPlatformsConditions // {
|
||||
"Trying to use cuda_compat on aarch64-linux targeting non-Jetson devices" = !flags.isJetsonBuild;
|
||||
};
|
||||
in
|
||||
};
|
||||
|
||||
cuda_gdb =
|
||||
{
|
||||
cudaAtLeast,
|
||||
gmp,
|
||||
lib,
|
||||
}:
|
||||
prevAttrs: {
|
||||
buildInputs =
|
||||
prevAttrs.buildInputs
|
||||
# x86_64 only needs gmp from 12.0 and on
|
||||
++ lib.lists.optionals (cudaAtLeast "12.0") [ gmp ];
|
||||
};
|
||||
|
||||
outputs = oldAttrs.outputs ++ lists.optionals (!(builtins.elem "lib" oldAttrs.outputs)) [ "lib" ];
|
||||
|
||||
cuda_nvcc =
|
||||
{
|
||||
backendStdenv,
|
||||
cuda_cudart,
|
||||
lib,
|
||||
setupCudaHook,
|
||||
}:
|
||||
prevAttrs: {
|
||||
# Patch the nvcc.profile.
|
||||
# Syntax:
|
||||
# - `=` for assignment,
|
||||
@@ -131,38 +187,37 @@ attrsets.filterAttrs (attr: _: (builtins.hasAttr attr prev)) {
|
||||
# backend-stdenv.nix
|
||||
|
||||
postPatch =
|
||||
(oldAttrs.postPatch or "")
|
||||
(prevAttrs.postPatch or "")
|
||||
+ ''
|
||||
substituteInPlace bin/nvcc.profile \
|
||||
--replace \
|
||||
'$(TOP)/lib' \
|
||||
"''${!outputLib}/lib" \
|
||||
--replace \
|
||||
--replace-fail \
|
||||
'$(TOP)/$(_NVVM_BRANCH_)' \
|
||||
"''${!outputBin}/nvvm" \
|
||||
--replace \
|
||||
--replace-fail \
|
||||
'$(TOP)/$(_TARGET_DIR_)/include' \
|
||||
"''${!outputDev}/include"
|
||||
|
||||
cat << EOF >> bin/nvcc.profile
|
||||
|
||||
# Fix a compatible backend compiler
|
||||
PATH += ${lib.getBin cc}/bin:
|
||||
PATH += "${backendStdenv.cc}/bin":
|
||||
|
||||
# Expose the split-out nvvm
|
||||
LIBRARIES =+ -L''${!outputBin}/nvvm/lib
|
||||
INCLUDES =+ -I''${!outputBin}/nvvm/include
|
||||
|
||||
# Expose cudart and the libcuda stubs
|
||||
LIBRARIES =+ -L$static/lib" "-L${final.cuda_cudart.lib}/lib -L${final.cuda_cudart.lib}/lib/stubs
|
||||
INCLUDES =+ -I${final.cuda_cudart.dev}/include
|
||||
LIBRARIES =+ "-L''${!outputBin}/nvvm/lib"
|
||||
INCLUDES =+ "-I''${!outputBin}/nvvm/include"
|
||||
EOF
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [ final.setupCudaHook ];
|
||||
# NOTE(@connorbaker):
|
||||
# Though it might seem odd or counter-intuitive to add the setup hook to `propagatedBuildInputs` instead of
|
||||
# `propagatedNativeBuildInputs`, it is necessary! If you move the setup hook from `propagatedBuildInputs` to
|
||||
# `propagatedNativeBuildInputs`, it stops being propagated to downstream packages during their build because
|
||||
# setup hooks in `propagatedNativeBuildInputs` are not designed to affect the runtime or build environment of
|
||||
# dependencies; they are only meant to affect the build environment of the package that directly includes them.
|
||||
propagatedBuildInputs = (prevAttrs.propagatedBuildInputs or [ ]) ++ [ setupCudaHook ];
|
||||
|
||||
postInstall =
|
||||
(oldAttrs.postInstall or "")
|
||||
(prevAttrs.postInstall or "")
|
||||
+ ''
|
||||
moveToOutput "nvvm" "''${!outputBin}"
|
||||
'';
|
||||
@@ -170,48 +225,77 @@ attrsets.filterAttrs (attr: _: (builtins.hasAttr attr prev)) {
|
||||
# The nvcc and cicc binaries contain hard-coded references to /usr
|
||||
allowFHSReferences = true;
|
||||
|
||||
meta = (oldAttrs.meta or { }) // {
|
||||
meta = (prevAttrs.meta or { }) // {
|
||||
mainProgram = "nvcc";
|
||||
};
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
cuda_nvprof = prev.cuda_nvprof.overrideAttrs (prevAttrs: {
|
||||
buildInputs = prevAttrs.buildInputs ++ [ final.cuda_cupti.lib ];
|
||||
});
|
||||
cuda_nvprof =
|
||||
{ cuda_cupti }: prevAttrs: { buildInputs = prevAttrs.buildInputs ++ [ cuda_cupti.lib ]; };
|
||||
|
||||
cuda_demo_suite = addBuildInputs prev.cuda_demo_suite [
|
||||
final.pkgs.freeglut
|
||||
final.pkgs.libGLU
|
||||
final.pkgs.libglvnd
|
||||
final.pkgs.mesa
|
||||
final.libcufft.lib
|
||||
final.libcurand.lib
|
||||
];
|
||||
cuda_demo_suite =
|
||||
{
|
||||
freeglut,
|
||||
libcufft,
|
||||
libcurand,
|
||||
libGLU,
|
||||
libglvnd,
|
||||
mesa,
|
||||
}:
|
||||
prevAttrs: {
|
||||
buildInputs = prevAttrs.buildInputs ++ [
|
||||
freeglut
|
||||
libcufft.lib
|
||||
libcurand.lib
|
||||
libGLU
|
||||
libglvnd
|
||||
mesa
|
||||
];
|
||||
};
|
||||
|
||||
nsight_compute = prev.nsight_compute.overrideAttrs (prevAttrs: {
|
||||
nativeBuildInputs =
|
||||
prevAttrs.nativeBuildInputs
|
||||
++ (
|
||||
if (strings.versionOlder prev.nsight_compute.version "2022.2.0") then
|
||||
[ final.pkgs.qt5.wrapQtAppsHook ]
|
||||
else
|
||||
[ final.pkgs.qt6.wrapQtAppsHook ]
|
||||
);
|
||||
buildInputs =
|
||||
prevAttrs.buildInputs
|
||||
++ (
|
||||
if (strings.versionOlder prev.nsight_compute.version "2022.2.0") then
|
||||
[ final.pkgs.qt5.qtwebview ]
|
||||
else
|
||||
[ final.pkgs.qt6.qtwebview ]
|
||||
);
|
||||
});
|
||||
|
||||
nsight_systems = prev.nsight_systems.overrideAttrs (
|
||||
nsight_compute =
|
||||
{
|
||||
lib,
|
||||
qt5 ? null,
|
||||
qt6 ? null,
|
||||
}:
|
||||
prevAttrs:
|
||||
let
|
||||
qt = if lib.versionOlder prevAttrs.version "2022.4.2.1" then final.pkgs.qt5 else final.pkgs.qt6;
|
||||
inherit (lib.strings) versionOlder versionAtLeast;
|
||||
inherit (prevAttrs) version;
|
||||
qt = if versionOlder version "2022.2.0" then qt5 else qt6;
|
||||
inherit (qt) wrapQtAppsHook qtwebview;
|
||||
in
|
||||
{
|
||||
nativeBuildInputs = prevAttrs.nativeBuildInputs ++ [ wrapQtAppsHook ];
|
||||
buildInputs = prevAttrs.buildInputs ++ [ qtwebview ];
|
||||
brokenConditions = prevAttrs.brokenConditions // {
|
||||
"Qt 5 missing (<2022.2.0)" = !(versionOlder version "2022.2.0" -> qt5 != null);
|
||||
"Qt 6 missing (>=2022.2.0)" = !(versionAtLeast version "2022.2.0" -> qt6 != null);
|
||||
};
|
||||
};
|
||||
|
||||
nsight_systems =
|
||||
{
|
||||
cuda_cudart,
|
||||
cudaOlder,
|
||||
gst_all_1,
|
||||
lib,
|
||||
nss,
|
||||
numactl,
|
||||
pulseaudio,
|
||||
qt5 ? null,
|
||||
qt6 ? null,
|
||||
rdma-core,
|
||||
ucx,
|
||||
wayland,
|
||||
xorg,
|
||||
}:
|
||||
prevAttrs:
|
||||
let
|
||||
inherit (lib.strings) versionOlder versionAtLeast;
|
||||
inherit (prevAttrs) version;
|
||||
qt = if lib.strings.versionOlder prevAttrs.version "2022.4.2.1" then qt5 else qt6;
|
||||
qtwayland =
|
||||
if lib.versions.major qt.qtbase.version == "5" then
|
||||
lib.getBin qt.qtwayland
|
||||
@@ -223,55 +307,57 @@ attrsets.filterAttrs (attr: _: (builtins.hasAttr attr prev)) {
|
||||
# An ad hoc replacement for
|
||||
# https://github.com/ConnorBaker/cuda-redist-find-features/issues/11
|
||||
env.rmPatterns = toString [
|
||||
"nsight-systems/*/*/lib{arrow,jpeg}*"
|
||||
"nsight-systems/*/*/lib{ssl,ssh,crypto}*"
|
||||
"nsight-systems/*/*/libboost*"
|
||||
"nsight-systems/*/*/libexec"
|
||||
"nsight-systems/*/*/libQt*"
|
||||
"nsight-systems/*/*/libstdc*"
|
||||
"nsight-systems/*/*/libboost*"
|
||||
"nsight-systems/*/*/lib{ssl,ssh,crypto}*"
|
||||
"nsight-systems/*/*/lib{arrow,jpeg}*"
|
||||
"nsight-systems/*/*/Mesa"
|
||||
"nsight-systems/*/*/python/bin/python"
|
||||
"nsight-systems/*/*/libexec"
|
||||
"nsight-systems/*/*/Plugins"
|
||||
"nsight-systems/*/*/python/bin/python"
|
||||
];
|
||||
postPatch =
|
||||
prevAttrs.postPatch or ""
|
||||
+ ''
|
||||
for path in $rmPatterns ; do
|
||||
for path in $rmPatterns; do
|
||||
rm -r "$path"
|
||||
done
|
||||
'';
|
||||
nativeBuildInputs = prevAttrs.nativeBuildInputs ++ [ qt.wrapQtAppsHook ];
|
||||
buildInputs = prevAttrs.buildInputs ++ [
|
||||
final.cuda_cudart.stubs
|
||||
final.pkgs.alsa-lib
|
||||
final.pkgs.boost178
|
||||
final.pkgs.e2fsprogs
|
||||
final.pkgs.gst_all_1.gst-plugins-base
|
||||
final.pkgs.gst_all_1.gstreamer
|
||||
final.pkgs.nss
|
||||
final.pkgs.numactl
|
||||
final.pkgs.pulseaudio
|
||||
final.pkgs.rdma-core
|
||||
final.pkgs.ucx
|
||||
final.pkgs.wayland
|
||||
final.pkgs.xorg.libXcursor
|
||||
final.pkgs.xorg.libXdamage
|
||||
final.pkgs.xorg.libXrandr
|
||||
final.pkgs.xorg.libXtst
|
||||
qt.qtbase
|
||||
(qt.qtdeclarative or qt.full)
|
||||
(qt.qtsvg or qt.full)
|
||||
cuda_cudart.stubs
|
||||
gst_all_1.gst-plugins-base
|
||||
gst_all_1.gstreamer
|
||||
nss
|
||||
numactl
|
||||
pulseaudio
|
||||
qt.qtbase
|
||||
qtWaylandPlugins
|
||||
rdma-core
|
||||
ucx
|
||||
wayland
|
||||
xorg.libXcursor
|
||||
xorg.libXdamage
|
||||
xorg.libXrandr
|
||||
xorg.libXtst
|
||||
];
|
||||
|
||||
# Older releases require boost 1.70 deprecated in Nixpkgs
|
||||
meta.broken = prevAttrs.meta.broken or false || lib.versionOlder final.cudaVersion "11.8";
|
||||
}
|
||||
);
|
||||
brokenConditions = prevAttrs.brokenConditions // {
|
||||
# Older releases require boost 1.70, which is deprecated in Nixpkgs
|
||||
"CUDA too old (<11.8)" = cudaOlder "11.8";
|
||||
"Qt 5 missing (<2022.4.2.1)" = !(versionOlder version "2022.4.2.1" -> qt5 != null);
|
||||
"Qt 6 missing (>=2022.4.2.1)" = !(versionAtLeast version "2022.4.2.1" -> qt6 != null);
|
||||
};
|
||||
};
|
||||
|
||||
nvidia_driver = prev.nvidia_driver.overrideAttrs {
|
||||
# No need to support this package as we have drivers already
|
||||
# in linuxPackages.
|
||||
meta.broken = true;
|
||||
};
|
||||
nvidia_driver =
|
||||
{ }:
|
||||
prevAttrs: {
|
||||
brokenConditions = prevAttrs.brokenConditions // {
|
||||
"Package is not supported; use drivers from linuxPackages" = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
{
|
||||
cudaVersion,
|
||||
flags,
|
||||
hostPlatform,
|
||||
lib,
|
||||
mkVersionedPackageName,
|
||||
stdenv,
|
||||
}:
|
||||
let
|
||||
inherit (lib)
|
||||
@@ -29,6 +29,8 @@ let
|
||||
trivial
|
||||
;
|
||||
|
||||
inherit (stdenv) hostPlatform;
|
||||
|
||||
redistName = "cutensor";
|
||||
pname = "libcutensor";
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
cudaForwardCompat ? (config.cudaForwardCompat or true),
|
||||
lib,
|
||||
cudaVersion,
|
||||
hostPlatform,
|
||||
stdenv,
|
||||
# gpus :: List Gpu
|
||||
gpus,
|
||||
}:
|
||||
@@ -20,6 +20,8 @@ let
|
||||
trivial
|
||||
;
|
||||
|
||||
inherit (stdenv) hostPlatform;
|
||||
|
||||
# Flags are determined based on your CUDA toolkit by default. You may benefit
|
||||
# from improved performance, reduced file size, or greater hardware support by
|
||||
# passing a configuration based on your specific GPU environment.
|
||||
@@ -207,6 +209,11 @@ let
|
||||
# E.g. "-gencode=arch=compute_75,code=sm_75 ... -gencode=arch=compute_86,code=compute_86"
|
||||
gencodeString = strings.concatStringsSep " " gencode;
|
||||
|
||||
# cmakeCudaArchitecturesString :: String
|
||||
# A semicolon-separated string of CUDA capabilities without dots, suitable for passing to CMake.
|
||||
# E.g. "75;86"
|
||||
cmakeCudaArchitecturesString = strings.concatMapStringsSep ";" dropDot cudaCapabilities;
|
||||
|
||||
# Jetson devices cannot be targeted by the same binaries which target non-Jetson devices. While
|
||||
# NVIDIA provides both `linux-aarch64` and `linux-sbsa` packages, which both target `aarch64`,
|
||||
# they are built with different settings and cannot be mixed.
|
||||
@@ -270,6 +277,8 @@ assert
|
||||
];
|
||||
gencodeString = "-gencode=arch=compute_75,code=sm_75 -gencode=arch=compute_86,code=sm_86 -gencode=arch=compute_86,code=compute_86";
|
||||
|
||||
cmakeCudaArchitecturesString = "75;86";
|
||||
|
||||
isJetsonBuild = false;
|
||||
};
|
||||
actual = formatCapabilities {
|
||||
@@ -339,6 +348,8 @@ assert
|
||||
];
|
||||
gencodeString = "-gencode=arch=compute_62,code=sm_62 -gencode=arch=compute_72,code=sm_72 -gencode=arch=compute_72,code=compute_72";
|
||||
|
||||
cmakeCudaArchitecturesString = "62;72";
|
||||
|
||||
isJetsonBuild = true;
|
||||
};
|
||||
actual = formatCapabilities {
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
markForCudatoolkitRootHook,
|
||||
flags,
|
||||
stdenv,
|
||||
hostPlatform,
|
||||
# Builder-specific arguments
|
||||
# Short package name (e.g., "cuda_cccl")
|
||||
# pname : String
|
||||
@@ -40,6 +39,8 @@ let
|
||||
sourceTypes
|
||||
;
|
||||
|
||||
inherit (stdenv) hostPlatform;
|
||||
|
||||
# Get the redist architectures for which package provides distributables.
|
||||
# These are used by meta.platforms.
|
||||
supportedRedistArchs = builtins.attrNames featureRelease;
|
||||
@@ -48,7 +49,7 @@ let
|
||||
# It is `"unsupported"` if the redistributable is not supported on the target platform.
|
||||
redistArch = flags.getRedistArch hostPlatform.system;
|
||||
|
||||
sourceMatchesHost = flags.getNixSystem redistArch == stdenv.hostPlatform.system;
|
||||
sourceMatchesHost = flags.getNixSystem redistArch == hostPlatform.system;
|
||||
in
|
||||
backendStdenv.mkDerivation (finalAttrs: {
|
||||
# NOTE: Even though there's no actual buildPhase going on here, the derivations of the
|
||||
@@ -127,7 +128,18 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
# brokenConditions :: AttrSet Bool
|
||||
# Sets `meta.broken = true` if any of the conditions are true.
|
||||
# Example: Broken on a specific version of CUDA or when a dependency has a specific version.
|
||||
brokenConditions = { };
|
||||
brokenConditions = {
|
||||
# Unclear how this is handled by Nix internals.
|
||||
"Duplicate entries in outputs" = finalAttrs.outputs != lists.unique finalAttrs.outputs;
|
||||
# Typically this results in the static output being empty, as all libraries are moved
|
||||
# back to the lib output.
|
||||
"lib output follows static output" =
|
||||
let
|
||||
libIndex = lists.findFirstIndex (x: x == "lib") null finalAttrs.outputs;
|
||||
staticIndex = lists.findFirstIndex (x: x == "static") null finalAttrs.outputs;
|
||||
in
|
||||
libIndex != null && staticIndex != null && libIndex > staticIndex;
|
||||
};
|
||||
|
||||
# badPlatformsConditions :: AttrSet Bool
|
||||
# Sets `meta.badPlatforms = meta.platforms` if any of the conditions are true.
|
||||
@@ -137,44 +149,43 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
};
|
||||
|
||||
# src :: Optional Derivation
|
||||
src = trivial.pipe redistArch [
|
||||
# If redistArch doesn't exist in redistribRelease, return null.
|
||||
(redistArch: redistribRelease.${redistArch} or null)
|
||||
# If the release is non-null, fetch the source; otherwise, return null.
|
||||
(trivial.mapNullable (
|
||||
{ relative_path, sha256, ... }:
|
||||
fetchurl {
|
||||
url = "https://developer.download.nvidia.com/compute/${redistName}/redist/${relative_path}";
|
||||
inherit sha256;
|
||||
}
|
||||
))
|
||||
];
|
||||
|
||||
# Handle the pkg-config files:
|
||||
# 1. No FHS
|
||||
# 2. Location expected by the pkg-config wrapper
|
||||
# 3. Generate unversioned names too
|
||||
postPatch = ''
|
||||
for path in pkg-config pkgconfig ; do
|
||||
[[ -d "$path" ]] || continue
|
||||
mkdir -p share/pkgconfig
|
||||
mv "$path"/* share/pkgconfig/
|
||||
rmdir "$path"
|
||||
done
|
||||
|
||||
for pc in share/pkgconfig/*.pc ; do
|
||||
sed -i \
|
||||
-e "s|^cudaroot\s*=.*\$|cudaroot=''${!outputDev}|" \
|
||||
-e "s|^libdir\s*=.*/lib\$|libdir=''${!outputLib}/lib|" \
|
||||
-e "s|^includedir\s*=.*/include\$|includedir=''${!outputDev}/include|" \
|
||||
"$pc"
|
||||
done
|
||||
# If redistArch doesn't exist in redistribRelease, return null.
|
||||
src = trivial.mapNullable (
|
||||
{ relative_path, sha256, ... }:
|
||||
fetchurl {
|
||||
url = "https://developer.download.nvidia.com/compute/${redistName}/redist/${relative_path}";
|
||||
inherit sha256;
|
||||
}
|
||||
) (redistribRelease.${redistArch} or null);
|
||||
|
||||
postPatch =
|
||||
# Pkg-config's setup hook expects configuration files in $out/share/pkgconfig
|
||||
''
|
||||
for path in pkg-config pkgconfig; do
|
||||
[[ -d "$path" ]] || continue
|
||||
mkdir -p share/pkgconfig
|
||||
mv "$path"/* share/pkgconfig/
|
||||
rmdir "$path"
|
||||
done
|
||||
''
|
||||
# Rewrite FHS paths with store paths
|
||||
# NOTE: output* fall back to out if the corresponding output isn't defined.
|
||||
+ ''
|
||||
for pc in share/pkgconfig/*.pc; do
|
||||
sed -i \
|
||||
-e "s|^cudaroot\s*=.*\$|cudaroot=''${!outputDev}|" \
|
||||
-e "s|^libdir\s*=.*/lib\$|libdir=''${!outputLib}/lib|" \
|
||||
-e "s|^includedir\s*=.*/include\$|includedir=''${!outputDev}/include|" \
|
||||
"$pc"
|
||||
done
|
||||
''
|
||||
# Generate unversioned names.
|
||||
# E.g. cuda-11.8.pc -> cuda.pc
|
||||
for pc in share/pkgconfig/*-"$majorMinorVersion.pc" ; do
|
||||
ln -s "$(basename "$pc")" "''${pc%-$majorMinorVersion.pc}".pc
|
||||
done
|
||||
'';
|
||||
+ ''
|
||||
for pc in share/pkgconfig/*-"$majorMinorVersion.pc"; do
|
||||
ln -s "$(basename "$pc")" "''${pc%-$majorMinorVersion.pc}".pc
|
||||
done
|
||||
'';
|
||||
|
||||
env.majorMinorVersion = cudaMajorMinorVersion;
|
||||
|
||||
@@ -233,7 +244,7 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
# Handle the existence of libPath, which requires us to re-arrange the lib directory
|
||||
+ strings.optionalString (libPath != null) ''
|
||||
full_lib_path="lib/${libPath}"
|
||||
if [[ ! -d "$full_lib_path" ]] ; then
|
||||
if [[ ! -d "$full_lib_path" ]]; then
|
||||
echo "${finalAttrs.pname}: '$full_lib_path' does not exist, only found:" >&2
|
||||
find lib/ -mindepth 1 -maxdepth 1 >&2
|
||||
echo "This release might not support your CUDA version" >&2
|
||||
@@ -264,9 +275,9 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
postInstallCheck = ''
|
||||
echo "Executing postInstallCheck"
|
||||
|
||||
if [[ -z "''${allowFHSReferences-}" ]] ; then
|
||||
if [[ -z "''${allowFHSReferences-}" ]]; then
|
||||
mapfile -t outputPaths < <(for o in $(getAllOutputNames); do echo "''${!o}"; done)
|
||||
if grep --max-count=5 --recursive --exclude=LICENSE /usr/ "''${outputPaths[@]}" ; then
|
||||
if grep --max-count=5 --recursive --exclude=LICENSE /usr/ "''${outputPaths[@]}"; then
|
||||
echo "Detected references to /usr" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
lib,
|
||||
cudaVersion,
|
||||
flags,
|
||||
hostPlatform,
|
||||
stdenv,
|
||||
# Expected to be passed by the caller
|
||||
mkVersionedPackageName,
|
||||
# pname :: String
|
||||
@@ -40,6 +40,8 @@ let
|
||||
strings
|
||||
;
|
||||
|
||||
inherit (stdenv) hostPlatform;
|
||||
|
||||
evaluatedModules = modules.evalModules {
|
||||
modules = [
|
||||
../modules
|
||||
|
||||
@@ -17,9 +17,10 @@ let
|
||||
cuda_cccl
|
||||
cuda_cudart
|
||||
cuda_nvcc
|
||||
cudaAtLeast
|
||||
cudaFlags
|
||||
cudaOlder
|
||||
cudatoolkit
|
||||
cudaVersion
|
||||
;
|
||||
in
|
||||
backendStdenv.mkDerivation (finalAttrs: {
|
||||
@@ -33,6 +34,7 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-IF2tILwW8XnzSmfn7N1CO7jXL95gUp02guIW5n1eaig=";
|
||||
};
|
||||
|
||||
__structuredAttrs = true;
|
||||
strictDeps = true;
|
||||
|
||||
outputs = [
|
||||
@@ -46,12 +48,12 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
autoAddDriverRunpath
|
||||
python3
|
||||
]
|
||||
++ lib.optionals (lib.versionOlder cudaVersion "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "11.4") [ cuda_nvcc ];
|
||||
++ lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (cudaAtLeast "11.4") [ cuda_nvcc ];
|
||||
|
||||
buildInputs =
|
||||
lib.optionals (lib.versionOlder cudaVersion "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "11.4") [
|
||||
lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (cudaAtLeast "11.4") [
|
||||
cuda_nvcc.dev # crt/host_config.h
|
||||
cuda_cudart
|
||||
]
|
||||
@@ -59,25 +61,25 @@ backendStdenv.mkDerivation (finalAttrs: {
|
||||
# against other version, like below, it's important that we use the same format. Otherwise,
|
||||
# we'll get incorrect results.
|
||||
# For example, lib.versionAtLeast "12.0" "12.0.0" == false.
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "12.0") [ cuda_cccl ];
|
||||
++ lib.optionals (cudaAtLeast "12.0") [ cuda_cccl ];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = toString [ "-Wno-unused-function" ];
|
||||
|
||||
preConfigure = ''
|
||||
postPatch = ''
|
||||
patchShebangs ./src/device/generate.py
|
||||
makeFlagsArray+=(
|
||||
"NVCC_GENCODE=${lib.concatStringsSep " " cudaFlags.gencode}"
|
||||
)
|
||||
'';
|
||||
|
||||
makeFlags =
|
||||
[ "PREFIX=$(out)" ]
|
||||
++ lib.optionals (lib.versionOlder cudaVersion "11.4") [
|
||||
makeFlagsArray =
|
||||
[
|
||||
"PREFIX=$(out)"
|
||||
"NVCC_GENCODE=${cudaFlags.gencodeString}"
|
||||
]
|
||||
++ lib.optionals (cudaOlder "11.4") [
|
||||
"CUDA_HOME=${cudatoolkit}"
|
||||
"CUDA_LIB=${lib.getLib cudatoolkit}/lib"
|
||||
"CUDA_INC=${lib.getDev cudatoolkit}/include"
|
||||
]
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "11.4") [
|
||||
++ lib.optionals (cudaAtLeast "11.4") [
|
||||
"CUDA_HOME=${cuda_nvcc}"
|
||||
"CUDA_LIB=${lib.getLib cuda_cudart}/lib"
|
||||
"CUDA_INC=${lib.getDev cuda_cudart}/include"
|
||||
|
||||
@@ -10,8 +10,9 @@ let
|
||||
cuda_cccl
|
||||
cuda_cudart
|
||||
cuda_nvcc
|
||||
cudaAtLeast
|
||||
cudaOlder
|
||||
cudatoolkit
|
||||
cudaVersion
|
||||
flags
|
||||
libcublas
|
||||
setupCudaHook
|
||||
@@ -24,6 +25,7 @@ backendStdenv.mkDerivation {
|
||||
|
||||
src = ./.;
|
||||
|
||||
__structuredAttrs = true;
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs =
|
||||
@@ -31,24 +33,22 @@ backendStdenv.mkDerivation {
|
||||
cmake
|
||||
autoAddDriverRunpath
|
||||
]
|
||||
++ lib.optionals (lib.versionOlder cudaVersion "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "11.4") [ cuda_nvcc ];
|
||||
++ lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (cudaAtLeast "11.4") [ cuda_nvcc ];
|
||||
|
||||
buildInputs =
|
||||
lib.optionals (lib.versionOlder cudaVersion "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "11.4") [
|
||||
lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
|
||||
++ lib.optionals (cudaAtLeast "11.4") [
|
||||
(getDev libcublas)
|
||||
(getLib libcublas)
|
||||
(getOutput "static" libcublas)
|
||||
cuda_cudart
|
||||
]
|
||||
++ lib.optionals (lib.versionAtLeast cudaVersion "12.0") [ cuda_cccl ];
|
||||
++ lib.optionals (cudaAtLeast "12.0") [ cuda_cccl ];
|
||||
|
||||
cmakeFlags = [
|
||||
cmakeFlagsArray = [
|
||||
(lib.cmakeBool "CMAKE_VERBOSE_MAKEFILE" true)
|
||||
(lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" (
|
||||
with flags; lib.concatStringsSep ";" (lib.lists.map dropDot cudaCapabilities)
|
||||
))
|
||||
(lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" flags.cmakeCudaArchitecturesString)
|
||||
];
|
||||
|
||||
meta = rec {
|
||||
@@ -56,6 +56,6 @@ backendStdenv.mkDerivation {
|
||||
license = lib.licenses.mit;
|
||||
maintainers = lib.teams.cuda.members;
|
||||
platforms = lib.platforms.unix;
|
||||
badPlatforms = lib.optionals flags.isJetsonBuild platforms;
|
||||
badPlatforms = lib.optionals (flags.isJetsonBuild && cudaOlder "11.4") platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,14 +1,25 @@
|
||||
# shellcheck shell=bash
|
||||
|
||||
# Should we mimick cc-wrapper's "hygiene"?
|
||||
[[ -z ${strictDeps-} ]] || (( "$hostOffset" < 0 )) || return 0
|
||||
(( ${hostOffset:?} == -1 && ${targetOffset:?} == 0)) || return 0
|
||||
|
||||
echo "Sourcing mark-for-cudatoolkit-root-hook" >&2
|
||||
|
||||
markForCUDAToolkit_ROOT() {
|
||||
mkdir -p "${prefix}/nix-support"
|
||||
[[ -f "${prefix}/nix-support/include-in-cudatoolkit-root" ]] && return
|
||||
echo "$pname-$output" > "${prefix}/nix-support/include-in-cudatoolkit-root"
|
||||
mkdir -p "${prefix:?}/nix-support"
|
||||
local markerPath="$prefix/nix-support/include-in-cudatoolkit-root"
|
||||
|
||||
# Return early if the file already exists.
|
||||
[[ -f "$markerPath" ]] && return 0
|
||||
|
||||
# Always create the file, even if it's empty, since setup-cuda-hook relies on its existence.
|
||||
# However, only populate it if strictDeps is not set.
|
||||
touch "$markerPath"
|
||||
|
||||
# Return early if strictDeps is set.
|
||||
[[ -n "${strictDeps-}" ]] && return 0
|
||||
|
||||
# Populate the file with the package name and output.
|
||||
echo "${pname:?}-${output:?}" > "$markerPath"
|
||||
}
|
||||
|
||||
fixupOutputHooks+=(markForCUDAToolkit_ROOT)
|
||||
|
||||
@@ -9,7 +9,7 @@ reason=
|
||||
[[ -n ${cudaSetupHookOnce-} ]] && guard=Skipping && reason=" because the hook has been propagated more than once"
|
||||
|
||||
if (( "${NIX_DEBUG:-0}" >= 1 )) ; then
|
||||
echo "$guard hostOffset=$hostOffset targetOffset=$targetOffset setupCudaHook$reason" >&2
|
||||
echo "$guard hostOffset=$hostOffset targetOffset=$targetOffset setup-cuda-hook$reason" >&2
|
||||
else
|
||||
echo "$guard setup-cuda-hook$reason" >&2
|
||||
fi
|
||||
@@ -24,16 +24,19 @@ extendcudaHostPathsSeen() {
|
||||
(( "${NIX_DEBUG:-0}" >= 1 )) && echo "extendcudaHostPathsSeen $1" >&2
|
||||
|
||||
local markerPath="$1/nix-support/include-in-cudatoolkit-root"
|
||||
[[ ! -f "${markerPath}" ]] && return
|
||||
[[ -v cudaHostPathsSeen[$1] ]] && return
|
||||
[[ ! -f "${markerPath}" ]] && return 0
|
||||
[[ -v cudaHostPathsSeen[$1] ]] && return 0
|
||||
|
||||
cudaHostPathsSeen["$1"]=1
|
||||
|
||||
# E.g. cuda_cudart-lib
|
||||
local cudaOutputName
|
||||
read -r cudaOutputName < "$markerPath"
|
||||
# Fail gracefully if the file is empty.
|
||||
# One reason the file may be empty: the package was built with strictDeps set, but the current build does not have
|
||||
# strictDeps set.
|
||||
read -r cudaOutputName < "$markerPath" || return 0
|
||||
|
||||
[[ -z "$cudaOutputName" ]] && return
|
||||
[[ -z "$cudaOutputName" ]] && return 0
|
||||
|
||||
local oldPath="${cudaOutputToPath[$cudaOutputName]-}"
|
||||
[[ -n "$oldPath" ]] && echo "extendcudaHostPathsSeen: warning: overwriting $cudaOutputName from $oldPath to $1" >&2
|
||||
@@ -59,7 +62,7 @@ setupCUDAToolkitCompilers() {
|
||||
echo Executing setupCUDAToolkitCompilers >&2
|
||||
|
||||
if [[ -n "${dontSetupCUDAToolkitCompilers-}" ]] ; then
|
||||
return
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Point NVCC at a compatible compiler
|
||||
@@ -99,7 +102,7 @@ preConfigureHooks+=(setupCUDAToolkitCompilers)
|
||||
propagateCudaLibraries() {
|
||||
(( "${NIX_DEBUG:-0}" >= 1 )) && echo "propagateCudaLibraries: cudaPropagateToOutput=$cudaPropagateToOutput cudaHostPathsSeen=${!cudaHostPathsSeen[*]}" >&2
|
||||
|
||||
[[ -z "${cudaPropagateToOutput-}" ]] && return
|
||||
[[ -z "${cudaPropagateToOutput-}" ]] && return 0
|
||||
|
||||
mkdir -p "${!cudaPropagateToOutput}/nix-support"
|
||||
# One'd expect this should be propagated-bulid-build-deps, but that doesn't seem to work
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
{
|
||||
cudaVersion,
|
||||
final,
|
||||
hostPlatform,
|
||||
lib,
|
||||
mkVersionedPackageName,
|
||||
package,
|
||||
patchelf,
|
||||
requireFile,
|
||||
stdenv,
|
||||
...
|
||||
}:
|
||||
let
|
||||
@@ -17,6 +17,7 @@ let
|
||||
strings
|
||||
versions
|
||||
;
|
||||
inherit (stdenv) hostPlatform;
|
||||
# targetArch :: String
|
||||
targetArch = attrsets.attrByPath [ hostPlatform.system ] "unsupported" {
|
||||
x86_64-linux = "x86_64-linux-gnu";
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "LAStools";
|
||||
version = "2.0.2";
|
||||
version = "2.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "LAStools";
|
||||
repo = "LAStools";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-HL64koe0GNzJzyA0QP4I0M1y2HSxigsZTqOw67RCwNc=";
|
||||
sha256 = "sha256-IyZjM8YvIVB0VPNuEhmHHw7EuKw5RanB2qhCnBD1fRY=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
qtModule {
|
||||
pname = "qtdeclarative";
|
||||
strictDeps = true;
|
||||
strictDeps = !stdenv.isDarwin; # fails to detect python3 otherwise
|
||||
propagatedBuildInputs = [ qtbase qtlanguageserver qtshadertools openssl ];
|
||||
nativeBuildInputs = [ python3 ];
|
||||
patches = [
|
||||
|
||||
@@ -51,7 +51,6 @@
|
||||
purs-tidy = "purs-tidy";
|
||||
purty = "purty";
|
||||
pscid = "pscid";
|
||||
pyright = "pyright";
|
||||
remod-cli = "remod";
|
||||
svelte-language-server = "svelteserver";
|
||||
teck-programmer = "teck-firmware-upgrade";
|
||||
|
||||
@@ -200,7 +200,6 @@
|
||||
, "purescript-psa"
|
||||
, "purs-tidy"
|
||||
, "purty"
|
||||
, "pyright"
|
||||
, "remod-cli"
|
||||
, "reveal.js"
|
||||
, "rimraf"
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, buildDunePackage
|
||||
}:
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "clap";
|
||||
version = "0.3.0";
|
||||
|
||||
minimalOCamlVersion = "4.07";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rbardou";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-IEol27AVYs55ntvNprBxOk3/EsBKAdPkF3Td3w9qOJg=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Command-Line Argument Parsing, imperative style with a consumption mechanism";
|
||||
license = lib.licenses.mit;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
, fetchFromGitLab
|
||||
, buildDunePackage
|
||||
, ppx_hash
|
||||
, bigstringaf
|
||||
, either
|
||||
, ezjsonm
|
||||
, zarith
|
||||
@@ -16,19 +17,12 @@
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "data-encoding";
|
||||
version = "0.7.1";
|
||||
inherit (json-data-encoding) src version;
|
||||
|
||||
duneVersion = "3";
|
||||
minimalOCamlVersion = "4.10";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "nomadic-labs";
|
||||
repo = "data-encoding";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-V3XiCCtoU+srOI+KVSJshtaSJLBJ4m4o10GpBfdYKCU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
bigstringaf
|
||||
either
|
||||
ezjsonm
|
||||
ppx_hash
|
||||
@@ -39,14 +33,10 @@ buildDunePackage rec {
|
||||
json-data-encoding-bson
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
alcotest
|
||||
crowbar
|
||||
buildInputs = [
|
||||
ppx_expect
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
homepage = "https://gitlab.com/nomadic-labs/data-encoding";
|
||||
description = "Library of JSON and binary encoding combinators";
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user