mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-24 07:53:19 +00:00
Merge master into haskell-updates
This commit is contained in:
commit
d1e968b8f0
@ -323,7 +323,7 @@ $ nix-shell -p haskellPackages.dhall-nixpkgs nix-prefetch-git
|
||||
```
|
||||
|
||||
:::{.note}
|
||||
`nix-prefetch-git` has to be in `$PATH` for `dhall-to-nixpkgs` to work.
|
||||
`nix-prefetch-git` is added to the `nix-shell -p` invocation above, because it has to be in `$PATH` for `dhall-to-nixpkgs` to work.
|
||||
:::
|
||||
|
||||
The utility takes care of automatically detecting remote imports and converting
|
||||
|
@ -92,7 +92,7 @@ let
|
||||
concatMap flatten remove findSingle findFirst any all count
|
||||
optional optionals toList range replicate partition zipListsWith zipLists
|
||||
reverseList listDfs toposort sort naturalSort compareLists take
|
||||
drop sublist last init crossLists unique intersectLists
|
||||
drop sublist last init crossLists unique allUnique intersectLists
|
||||
subtractLists mutuallyExclusive groupBy groupBy';
|
||||
inherit (self.strings) concatStrings concatMapStrings concatImapStrings
|
||||
intersperse concatStringsSep concatMapStringsSep
|
||||
|
@ -238,6 +238,21 @@ Arguments:
|
||||
And it would be unclear how the library should behave if the one file wouldn't be added to the store:
|
||||
`toSource { root = ./file.nix; fileset = <empty>; }` has no reasonable result because returing an empty store path wouldn't match the file type, and there's no way to have an empty file store path, whatever that would mean.
|
||||
|
||||
### `fileFilter` takes a path
|
||||
|
||||
The `fileFilter` function takes a path, and not a file set, as its second argument.
|
||||
|
||||
- (-) Makes it harder to compose functions, since the file set type, the return value, can't be passed to the function itself like `fileFilter predicate fileset`
|
||||
- (+) It's still possible to use `intersection` to filter on file sets: `intersection fileset (fileFilter predicate ./.)`
|
||||
- (-) This does need an extra `./.` argument that's not obvious
|
||||
- (+) This could always be `/.` or the project directory, `intersection` will make it lazy
|
||||
- (+) In the future this will allow `fileFilter` to support a predicate property like `subpath` and/or `components` in a reproducible way.
|
||||
This wouldn't be possible if it took a file set, because file sets don't have a predictable absolute path.
|
||||
- (-) What about the base path?
|
||||
- (+) That can change depending on which files are included, so if it's used for `fileFilter`
|
||||
it would change the `subpath`/`components` value depending on which files are included.
|
||||
- (+) If necessary, this restriction can be relaxed later, the opposite wouldn't be possible
|
||||
|
||||
## To update in the future
|
||||
|
||||
Here's a list of places in the library that need to be updated in the future:
|
||||
|
@ -366,7 +366,7 @@ in {
|
||||
type :: String,
|
||||
...
|
||||
} -> Bool)
|
||||
-> FileSet
|
||||
-> Path
|
||||
-> FileSet
|
||||
|
||||
Example:
|
||||
@ -380,7 +380,7 @@ in {
|
||||
fileFilter (file: hasPrefix "." file.name) ./.
|
||||
|
||||
# Include all regular files (not symlinks or others) in the current directory
|
||||
fileFilter (file: file.type == "regular")
|
||||
fileFilter (file: file.type == "regular") ./.
|
||||
*/
|
||||
fileFilter =
|
||||
/*
|
||||
@ -397,14 +397,24 @@ in {
|
||||
Other attributes may be added in the future.
|
||||
*/
|
||||
predicate:
|
||||
# The file set to filter based on the predicate function
|
||||
fileset:
|
||||
# The path whose files to filter
|
||||
path:
|
||||
if ! isFunction predicate then
|
||||
throw ''
|
||||
lib.fileset.fileFilter: First argument is of type ${typeOf predicate}, but it should be a function.''
|
||||
lib.fileset.fileFilter: First argument is of type ${typeOf predicate}, but it should be a function instead.''
|
||||
else if ! isPath path then
|
||||
if path._type or "" == "fileset" then
|
||||
throw ''
|
||||
lib.fileset.fileFilter: Second argument is a file set, but it should be a path instead.
|
||||
If you need to filter files in a file set, use `intersection fileset (fileFilter pred ./.)` instead.''
|
||||
else
|
||||
throw ''
|
||||
lib.fileset.fileFilter: Second argument is of type ${typeOf path}, but it should be a path instead.''
|
||||
else if ! pathExists path then
|
||||
throw ''
|
||||
lib.fileset.fileFilter: Second argument (${toString path}) is a path that does not exist.''
|
||||
else
|
||||
_fileFilter predicate
|
||||
(_coerce "lib.fileset.fileFilter: Second argument" fileset);
|
||||
_fileFilter predicate path;
|
||||
|
||||
/*
|
||||
The file set containing all files that are in both of two given file sets.
|
||||
|
@ -786,29 +786,43 @@ rec {
|
||||
_differenceTree (path + "/${name}") lhsValue (rhs.${name} or null)
|
||||
) (_directoryEntries path lhs);
|
||||
|
||||
_fileFilter = predicate: fileset:
|
||||
# Filters all files in a path based on a predicate
|
||||
# Type: ({ name, type, ... } -> Bool) -> Path -> FileSet
|
||||
_fileFilter = predicate: root:
|
||||
let
|
||||
recurse = path: tree:
|
||||
mapAttrs (name: subtree:
|
||||
if isAttrs subtree || subtree == "directory" then
|
||||
recurse (path + "/${name}") subtree
|
||||
else if
|
||||
predicate {
|
||||
inherit name;
|
||||
type = subtree;
|
||||
# To ensure forwards compatibility with more arguments being added in the future,
|
||||
# adding an attribute which can't be deconstructed :)
|
||||
"lib.fileset.fileFilter: The predicate function passed as the first argument must be able to handle extra attributes for future compatibility. If you're using `{ name, file }:`, use `{ name, file, ... }:` instead." = null;
|
||||
}
|
||||
then
|
||||
subtree
|
||||
# Check the predicate for a single file
|
||||
# Type: String -> String -> filesetTree
|
||||
fromFile = name: type:
|
||||
if
|
||||
predicate {
|
||||
inherit name type;
|
||||
# To ensure forwards compatibility with more arguments being added in the future,
|
||||
# adding an attribute which can't be deconstructed :)
|
||||
"lib.fileset.fileFilter: The predicate function passed as the first argument must be able to handle extra attributes for future compatibility. If you're using `{ name, file }:`, use `{ name, file, ... }:` instead." = null;
|
||||
}
|
||||
then
|
||||
type
|
||||
else
|
||||
null;
|
||||
|
||||
# Check the predicate for all files in a directory
|
||||
# Type: Path -> filesetTree
|
||||
fromDir = path:
|
||||
mapAttrs (name: type:
|
||||
if type == "directory" then
|
||||
fromDir (path + "/${name}")
|
||||
else
|
||||
null
|
||||
) (_directoryEntries path tree);
|
||||
fromFile name type
|
||||
) (readDir path);
|
||||
|
||||
rootType = pathType root;
|
||||
in
|
||||
if fileset._internalIsEmptyWithoutBase then
|
||||
_emptyWithoutBase
|
||||
if rootType == "directory" then
|
||||
_create root (fromDir root)
|
||||
else
|
||||
_create fileset._internalBase
|
||||
(recurse fileset._internalBase fileset._internalTree);
|
||||
# Single files are turned into a directory containing that file or nothing.
|
||||
_create (dirOf root) {
|
||||
${baseNameOf root} =
|
||||
fromFile (baseNameOf root) rootType;
|
||||
};
|
||||
}
|
||||
|
@ -810,10 +810,18 @@ checkFileset 'difference ./. ./b'
|
||||
|
||||
## File filter
|
||||
|
||||
# The first argument needs to be a function
|
||||
expectFailure 'fileFilter null (abort "this is not needed")' 'lib.fileset.fileFilter: First argument is of type null, but it should be a function instead.'
|
||||
|
||||
# The second argument needs to be an existing path
|
||||
expectFailure 'fileFilter (file: abort "this is not needed") _emptyWithoutBase' 'lib.fileset.fileFilter: Second argument is a file set, but it should be a path instead.
|
||||
\s*If you need to filter files in a file set, use `intersection fileset \(fileFilter pred \./\.\)` instead.'
|
||||
expectFailure 'fileFilter (file: abort "this is not needed") null' 'lib.fileset.fileFilter: Second argument is of type null, but it should be a path instead.'
|
||||
expectFailure 'fileFilter (file: abort "this is not needed") ./a' 'lib.fileset.fileFilter: Second argument \('"$work"'/a\) is a path that does not exist.'
|
||||
|
||||
# The predicate is not called when there's no files
|
||||
tree=()
|
||||
checkFileset 'fileFilter (file: abort "this is not needed") ./.'
|
||||
checkFileset 'fileFilter (file: abort "this is not needed") _emptyWithoutBase'
|
||||
|
||||
# The predicate must be able to handle extra attributes
|
||||
touch a
|
||||
@ -875,6 +883,18 @@ checkFileset 'union ./c/a (fileFilter (file: assert file.name != "a"; true) ./.)
|
||||
# but here we need to use ./c
|
||||
checkFileset 'union (fileFilter (file: assert file.name != "a"; true) ./.) ./c'
|
||||
|
||||
# Make sure single files are filtered correctly
|
||||
tree=(
|
||||
[a]=1
|
||||
[b]=0
|
||||
)
|
||||
checkFileset 'fileFilter (file: assert file.name == "a"; true) ./a'
|
||||
tree=(
|
||||
[a]=0
|
||||
[b]=0
|
||||
)
|
||||
checkFileset 'fileFilter (file: assert file.name == "a"; false) ./a'
|
||||
|
||||
## Tracing
|
||||
|
||||
# The second trace argument is returned
|
||||
|
@ -821,6 +821,19 @@ rec {
|
||||
*/
|
||||
unique = foldl' (acc: e: if elem e acc then acc else acc ++ [ e ]) [];
|
||||
|
||||
/* Check if list contains only unique elements. O(n^2) complexity.
|
||||
|
||||
Type: allUnique :: [a] -> bool
|
||||
|
||||
Example:
|
||||
allUnique [ 3 2 3 4 ]
|
||||
=> false
|
||||
allUnique [ 3 2 4 1 ]
|
||||
=> true
|
||||
*/
|
||||
allUnique = list: (length (unique list) == length list);
|
||||
|
||||
|
||||
/* Intersects list 'e' and another list. O(nm) complexity.
|
||||
|
||||
Example:
|
||||
|
@ -726,6 +726,15 @@ runTests {
|
||||
expected = 7;
|
||||
};
|
||||
|
||||
testAllUnique_true = {
|
||||
expr = allUnique [ 3 2 4 1 ];
|
||||
expected = true;
|
||||
};
|
||||
testAllUnique_false = {
|
||||
expr = allUnique [ 3 2 3 4 ];
|
||||
expected = false;
|
||||
};
|
||||
|
||||
# ATTRSETS
|
||||
|
||||
testConcatMapAttrs = {
|
||||
|
@ -3079,6 +3079,12 @@
|
||||
githubId = 1689801;
|
||||
name = "Mikhail Chekan";
|
||||
};
|
||||
chen = {
|
||||
email = "i@cuichen.cc";
|
||||
github = "cu1ch3n";
|
||||
githubId = 80438676;
|
||||
name = "Chen Cui";
|
||||
};
|
||||
ChengCat = {
|
||||
email = "yu@cheng.cat";
|
||||
github = "ChengCat";
|
||||
@ -11714,6 +11720,12 @@
|
||||
githubId = 34864484;
|
||||
name = "Mikael Fangel";
|
||||
};
|
||||
mikecm = {
|
||||
email = "mikecmcleod@gmail.com";
|
||||
github = "MaxwellDupre";
|
||||
githubId = 14096356;
|
||||
name = "Michael McLeod";
|
||||
};
|
||||
mikefaille = {
|
||||
email = "michael@faille.io";
|
||||
github = "mikefaille";
|
||||
@ -16513,6 +16525,11 @@
|
||||
githubId = 158321;
|
||||
name = "Stewart Mackenzie";
|
||||
};
|
||||
skovati = {
|
||||
github = "skovati";
|
||||
githubId = 49844593;
|
||||
name = "skovati";
|
||||
};
|
||||
skykanin = {
|
||||
github = "skykanin";
|
||||
githubId = 3789764;
|
||||
|
@ -154,6 +154,8 @@
|
||||
|
||||
- The latest version of `clonehero` now stores custom content in `~/.clonehero`. See the [migration instructions](https://clonehero.net/2022/11/29/v23-to-v1-migration-instructions.html). Typically, these content files would exist along side the binary, but the previous build used a wrapper script that would store them in `~/.config/unity3d/srylain Inc_/Clone Hero`.
|
||||
|
||||
- `services.mastodon` doesn't support providing a TCP port to its `streaming` component anymore, as upstream implemented parallelization by running multiple instances instead of running multiple processes in one instance. Please create a PR if you are interested in this feature.
|
||||
|
||||
- The `services.hostapd` module was rewritten to support `passwordFile` like options, WPA3-SAE, and management of multiple interfaces. This breaks compatibility with older configurations.
|
||||
- `hostapd` is now started with additional systemd sandbox/hardening options for better security.
|
||||
- `services.hostapd.interface` was replaced with a per-radio and per-bss configuration scheme using [services.hostapd.radios](#opt-services.hostapd.radios).
|
||||
@ -371,6 +373,8 @@
|
||||
|
||||
- The `prayer` package as well as `services.prayer` have been removed because it's been unmaintained for several years and the author's website has vanished.
|
||||
|
||||
- The `chrony` NixOS module now tracks the Real-Time Clock drift from the System Clock with `rtcfile` and automatically adjusts it with `rtcautotrim` when it exceeds the maximum error specified in `services.chrony.autotrimThreshold` (default 30 seconds). If you enabled `rtcsync` in `extraConfig`, you should remove RTC related options from `extraConfig`. If you do not want chrony configured to keep the RTC in check, you can set `services.chrony.enableRTCTrimming = false;`
|
||||
|
||||
## Other Notable Changes {#sec-release-23.11-notable-changes}
|
||||
|
||||
- A new option `system.switch.enable` was added. By default, this is option is
|
||||
|
@ -9,6 +9,7 @@ let
|
||||
stateDir = cfg.directory;
|
||||
driftFile = "${stateDir}/chrony.drift";
|
||||
keyFile = "${stateDir}/chrony.keys";
|
||||
rtcFile = "${stateDir}/chrony.rtc";
|
||||
|
||||
configFile = pkgs.writeText "chrony.conf" ''
|
||||
${concatMapStringsSep "\n" (server: "server " + server + " " + cfg.serverOption + optionalString (cfg.enableNTS) " nts") cfg.servers}
|
||||
@ -20,8 +21,10 @@ let
|
||||
|
||||
driftfile ${driftFile}
|
||||
keyfile ${keyFile}
|
||||
${optionalString (cfg.enableRTCTrimming) "rtcfile ${rtcFile}"}
|
||||
${optionalString (cfg.enableNTS) "ntsdumpdir ${stateDir}"}
|
||||
|
||||
${optionalString (cfg.enableRTCTrimming) "rtcautotrim ${builtins.toString cfg.autotrimThreshold}"}
|
||||
${optionalString (!config.time.hardwareClockInLocalTime) "rtconutc"}
|
||||
|
||||
${cfg.extraConfig}
|
||||
@ -85,6 +88,33 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
enableRTCTrimming = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = lib.mdDoc ''
|
||||
Enable tracking of the RTC offset to the system clock and automatic trimming.
|
||||
See also [](#opt-services.chrony.autotrimThreshold)
|
||||
|
||||
::: {.note}
|
||||
This is not compatible with the `rtcsync` directive, which naively syncs the RTC time every 11 minutes.
|
||||
|
||||
Tracking the RTC drift will allow more precise timekeeping,
|
||||
especially on intermittently running devices, where the RTC is very relevant.
|
||||
:::
|
||||
'';
|
||||
};
|
||||
|
||||
autotrimThreshold = mkOption {
|
||||
type = types.ints.positive;
|
||||
default = 30;
|
||||
example = 10;
|
||||
description = ''
|
||||
Maximum estimated error threshold for the `rtcautotrim` command.
|
||||
When reached, the RTC will be trimmed.
|
||||
Only used when [](#opt-services.chrony.enableRTCTrimming) is enabled.
|
||||
'';
|
||||
};
|
||||
|
||||
enableNTS = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
@ -141,7 +171,7 @@ in
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
meta.maintainers = with lib.maintainers; [ thoughtpolice ];
|
||||
meta.maintainers = with lib.maintainers; [ thoughtpolice vifino ];
|
||||
|
||||
environment.systemPackages = [ chronyPkg ];
|
||||
|
||||
@ -156,12 +186,19 @@ in
|
||||
|
||||
services.timesyncd.enable = mkForce false;
|
||||
|
||||
# If chrony controls and tracks the RTC, writing it externally causes clock error.
|
||||
systemd.services.save-hwclock = lib.mkIf cfg.enableRTCTrimming {
|
||||
enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
systemd.services.systemd-timedated.environment = { SYSTEMD_TIMEDATED_NTP_SERVICES = "chronyd.service"; };
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"d ${stateDir} 0750 chrony chrony - -"
|
||||
"f ${driftFile} 0640 chrony chrony - -"
|
||||
"f ${keyFile} 0640 chrony chrony - -"
|
||||
] ++ lib.optionals cfg.enableRTCTrimming [
|
||||
"f ${rtcFile} 0640 chrony chrony - -"
|
||||
];
|
||||
|
||||
systemd.services.chronyd =
|
||||
|
@ -1,60 +1,61 @@
|
||||
{ config, options, lib, pkgs, utils, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.unifi;
|
||||
stateDir = "/var/lib/unifi";
|
||||
cmd = ''
|
||||
@${cfg.jrePackage}/bin/java java \
|
||||
${optionalString (lib.versionAtLeast (lib.getVersion cfg.jrePackage) "16")
|
||||
("--add-opens java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.time=ALL-UNNAMED "
|
||||
+ "--add-opens java.base/sun.security.util=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED "
|
||||
+ "--add-opens java.rmi/sun.rmi.transport=ALL-UNNAMED")} \
|
||||
${optionalString (cfg.initialJavaHeapSize != null) "-Xms${(toString cfg.initialJavaHeapSize)}m"} \
|
||||
${optionalString (cfg.maximumJavaHeapSize != null) "-Xmx${(toString cfg.maximumJavaHeapSize)}m"} \
|
||||
-jar ${stateDir}/lib/ace.jar
|
||||
'';
|
||||
cmd = lib.escapeShellArgs ([ "@${cfg.jrePackage}/bin/java" "java" ]
|
||||
++ lib.optionals (lib.versionAtLeast (lib.getVersion cfg.jrePackage) "16") [
|
||||
"--add-opens=java.base/java.lang=ALL-UNNAMED"
|
||||
"--add-opens=java.base/java.time=ALL-UNNAMED"
|
||||
"--add-opens=java.base/sun.security.util=ALL-UNNAMED"
|
||||
"--add-opens=java.base/java.io=ALL-UNNAMED"
|
||||
"--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED"
|
||||
]
|
||||
++ (lib.optional (cfg.initialJavaHeapSize != null) "-Xms${(toString cfg.initialJavaHeapSize)}m")
|
||||
++ (lib.optional (cfg.maximumJavaHeapSize != null) "-Xmx${(toString cfg.maximumJavaHeapSize)}m")
|
||||
++ cfg.extraJvmOptions
|
||||
++ [ "-jar" "${stateDir}/lib/ace.jar" ]);
|
||||
in
|
||||
{
|
||||
|
||||
options = {
|
||||
|
||||
services.unifi.enable = mkOption {
|
||||
type = types.bool;
|
||||
services.unifi.enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Whether or not to enable the unifi controller service.
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.jrePackage = mkOption {
|
||||
type = types.package;
|
||||
services.unifi.jrePackage = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.5") then pkgs.jdk17_headless else if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3") then pkgs.jdk11 else pkgs.jre8;
|
||||
defaultText = literalExpression ''if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.5") then pkgs.jdk17_headless else if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3" then pkgs.jdk11 else pkgs.jre8'';
|
||||
defaultText = lib.literalExpression ''if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.5") then pkgs.jdk17_headless else if (lib.versionAtLeast (lib.getVersion cfg.unifiPackage) "7.3" then pkgs.jdk11 else pkgs.jre8'';
|
||||
description = lib.mdDoc ''
|
||||
The JRE package to use. Check the release notes to ensure it is supported.
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.unifiPackage = mkOption {
|
||||
type = types.package;
|
||||
services.unifi.unifiPackage = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.unifi5;
|
||||
defaultText = literalExpression "pkgs.unifi5";
|
||||
defaultText = lib.literalExpression "pkgs.unifi5";
|
||||
description = lib.mdDoc ''
|
||||
The unifi package to use.
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.mongodbPackage = mkOption {
|
||||
type = types.package;
|
||||
services.unifi.mongodbPackage = lib.mkOption {
|
||||
type = lib.types.package;
|
||||
default = pkgs.mongodb-4_4;
|
||||
defaultText = literalExpression "pkgs.mongodb";
|
||||
defaultText = lib.literalExpression "pkgs.mongodb";
|
||||
description = lib.mdDoc ''
|
||||
The mongodb package to use. Please note: unifi7 officially only supports mongodb up until 3.6 but works with 4.4.
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.openFirewall = mkOption {
|
||||
type = types.bool;
|
||||
services.unifi.openFirewall = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Whether or not to open the minimum required ports on the firewall.
|
||||
@ -65,8 +66,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.initialJavaHeapSize = mkOption {
|
||||
type = types.nullOr types.int;
|
||||
services.unifi.initialJavaHeapSize = lib.mkOption {
|
||||
type = with lib.types; nullOr int;
|
||||
default = null;
|
||||
example = 1024;
|
||||
description = lib.mdDoc ''
|
||||
@ -75,8 +76,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.maximumJavaHeapSize = mkOption {
|
||||
type = types.nullOr types.int;
|
||||
services.unifi.maximumJavaHeapSize = lib.mkOption {
|
||||
type = with lib.types; nullOr int;
|
||||
default = null;
|
||||
example = 4096;
|
||||
description = lib.mdDoc ''
|
||||
@ -85,9 +86,18 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
services.unifi.extraJvmOptions = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = [ ];
|
||||
example = lib.literalExpression ''["-Xlog:gc"]'';
|
||||
description = lib.mdDoc ''
|
||||
Set extra options to pass to the JVM.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
users.users.unifi = {
|
||||
isSystemUser = true;
|
||||
@ -97,7 +107,7 @@ in
|
||||
};
|
||||
users.groups.unifi = {};
|
||||
|
||||
networking.firewall = mkIf cfg.openFirewall {
|
||||
networking.firewall = lib.mkIf cfg.openFirewall {
|
||||
# https://help.ubnt.com/hc/en-us/articles/218506997
|
||||
allowedTCPPorts = [
|
||||
8080 # Port for UAP to inform controller.
|
||||
@ -123,8 +133,8 @@ in
|
||||
|
||||
serviceConfig = {
|
||||
Type = "simple";
|
||||
ExecStart = "${(removeSuffix "\n" cmd)} start";
|
||||
ExecStop = "${(removeSuffix "\n" cmd)} stop";
|
||||
ExecStart = "${cmd} start";
|
||||
ExecStop = "${cmd} stop";
|
||||
Restart = "on-failure";
|
||||
TimeoutSec = "5min";
|
||||
User = "unifi";
|
||||
@ -166,7 +176,7 @@ in
|
||||
StateDirectory = "unifi";
|
||||
RuntimeDirectory = "unifi";
|
||||
LogsDirectory = "unifi";
|
||||
CacheDirectory= "unifi";
|
||||
CacheDirectory = "unifi";
|
||||
|
||||
TemporaryFileSystem = [
|
||||
# required as we want to create bind mounts below
|
||||
@ -176,7 +186,7 @@ in
|
||||
# We must create the binary directories as bind mounts instead of symlinks
|
||||
# This is because the controller resolves all symlinks to absolute paths
|
||||
# to be used as the working directory.
|
||||
BindPaths = [
|
||||
BindPaths = [
|
||||
"/var/log/unifi:${stateDir}/logs"
|
||||
"/run/unifi:${stateDir}/run"
|
||||
"${cfg.unifiPackage}/dl:${stateDir}/dl"
|
||||
@ -194,7 +204,7 @@ in
|
||||
|
||||
};
|
||||
imports = [
|
||||
(mkRemovedOptionModule [ "services" "unifi" "dataDir" ] "You should move contents of dataDir to /var/lib/unifi/data" )
|
||||
(mkRenamedOptionModule [ "services" "unifi" "openPorts" ] [ "services" "unifi" "openFirewall" ])
|
||||
(lib.mkRemovedOptionModule [ "services" "unifi" "dataDir" ] "You should move contents of dataDir to /var/lib/unifi/data")
|
||||
(lib.mkRenamedOptionModule [ "services" "unifi" "openPorts" ] [ "services" "unifi" "openFirewall" ])
|
||||
];
|
||||
}
|
||||
|
@ -17,9 +17,6 @@ let
|
||||
WEB_CONCURRENCY = toString cfg.webProcesses;
|
||||
MAX_THREADS = toString cfg.webThreads;
|
||||
|
||||
# mastodon-streaming concurrency.
|
||||
STREAMING_CLUSTER_NUM = toString cfg.streamingProcesses;
|
||||
|
||||
DB_USER = cfg.database.user;
|
||||
|
||||
REDIS_HOST = cfg.redis.host;
|
||||
@ -33,13 +30,15 @@ let
|
||||
PAPERCLIP_ROOT_PATH = "/var/lib/mastodon/public-system";
|
||||
PAPERCLIP_ROOT_URL = "/system";
|
||||
ES_ENABLED = if (cfg.elasticsearch.host != null) then "true" else "false";
|
||||
ES_HOST = cfg.elasticsearch.host;
|
||||
ES_PORT = toString(cfg.elasticsearch.port);
|
||||
|
||||
TRUSTED_PROXY_IP = cfg.trustedProxy;
|
||||
}
|
||||
// lib.optionalAttrs (cfg.database.host != "/run/postgresql" && cfg.database.port != null) { DB_PORT = toString cfg.database.port; }
|
||||
// lib.optionalAttrs cfg.smtp.authenticate { SMTP_LOGIN = cfg.smtp.user; }
|
||||
// lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_HOST = cfg.elasticsearch.host; }
|
||||
// lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_PORT = toString(cfg.elasticsearch.port); }
|
||||
// lib.optionalAttrs (cfg.elasticsearch.host != null) { ES_PRESET = cfg.elasticsearch.preset; }
|
||||
// lib.optionalAttrs (cfg.elasticsearch.user != null) { ES_USER = cfg.elasticsearch.user; }
|
||||
// cfg.extraConfig;
|
||||
|
||||
systemCallsList = [ "@cpu-emulation" "@debug" "@keyring" "@ipc" "@mount" "@obsolete" "@privileged" "@setuid" ];
|
||||
@ -141,8 +140,44 @@ let
|
||||
})
|
||||
) cfg.sidekiqProcesses;
|
||||
|
||||
streamingUnits = builtins.listToAttrs
|
||||
(map (i: {
|
||||
name = "mastodon-streaming-${toString i}";
|
||||
value = {
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
requires = [ "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
wantedBy = [ "mastodon.target" "mastodon-streaming.target" ];
|
||||
description = "Mastodon streaming ${toString i}";
|
||||
environment = env // { SOCKET = "/run/mastodon-streaming/streaming-${toString i}.socket"; };
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/run-streaming.sh";
|
||||
Restart = "always";
|
||||
RestartSec = 20;
|
||||
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
|
||||
WorkingDirectory = cfg.package;
|
||||
# Runtime directory and mode
|
||||
RuntimeDirectory = "mastodon-streaming";
|
||||
RuntimeDirectoryMode = "0750";
|
||||
# System Call Filtering
|
||||
SystemCallFilter = [ ("~" + lib.concatStringsSep " " (systemCallsList ++ [ "@memlock" "@resources" ])) "pipe" "pipe2" ];
|
||||
} // cfgService;
|
||||
};
|
||||
})
|
||||
(lib.range 1 cfg.streamingProcesses));
|
||||
|
||||
in {
|
||||
|
||||
imports = [
|
||||
(lib.mkRemovedOptionModule
|
||||
[ "services" "mastodon" "streamingPort" ]
|
||||
"Mastodon currently doesn't support streaming via TCP ports. Please open a PR if you need this."
|
||||
)
|
||||
];
|
||||
|
||||
options = {
|
||||
services.mastodon = {
|
||||
enable = lib.mkEnableOption (lib.mdDoc "Mastodon, a federated social network server");
|
||||
@ -191,18 +226,13 @@ in {
|
||||
default = "mastodon";
|
||||
};
|
||||
|
||||
streamingPort = lib.mkOption {
|
||||
description = lib.mdDoc "TCP port used by the mastodon-streaming service.";
|
||||
type = lib.types.port;
|
||||
default = 55000;
|
||||
};
|
||||
streamingProcesses = lib.mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Processes used by the mastodon-streaming service.
|
||||
Defaults to the number of CPU cores minus one.
|
||||
Number of processes used by the mastodon-streaming service.
|
||||
Recommended is the amount of your CPU cores minus one.
|
||||
'';
|
||||
type = lib.types.nullOr lib.types.int;
|
||||
default = null;
|
||||
type = lib.types.ints.positive;
|
||||
example = 3;
|
||||
};
|
||||
|
||||
webPort = lib.mkOption {
|
||||
@ -485,6 +515,31 @@ in {
|
||||
type = lib.types.port;
|
||||
default = 9200;
|
||||
};
|
||||
|
||||
preset = lib.mkOption {
|
||||
description = lib.mdDoc ''
|
||||
It controls the ElasticSearch indices configuration (number of shards and replica).
|
||||
'';
|
||||
type = lib.types.enum [ "single_node_cluster" "small_cluster" "large_cluster" ];
|
||||
default = "single_node_cluster";
|
||||
example = "large_cluster";
|
||||
};
|
||||
|
||||
user = lib.mkOption {
|
||||
description = lib.mdDoc "Used for optionally authenticating with Elasticsearch.";
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
example = "elasticsearch-mastodon";
|
||||
};
|
||||
|
||||
passwordFile = lib.mkOption {
|
||||
description = lib.mdDoc ''
|
||||
Path to file containing password for optionally authenticating with Elasticsearch.
|
||||
'';
|
||||
type = lib.types.nullOr lib.types.path;
|
||||
default = null;
|
||||
example = "/var/lib/mastodon/secrets/elasticsearch-password";
|
||||
};
|
||||
};
|
||||
|
||||
package = lib.mkOption {
|
||||
@ -603,6 +658,12 @@ in {
|
||||
after = [ "network.target" ];
|
||||
};
|
||||
|
||||
systemd.targets.mastodon-streaming = {
|
||||
description = "Target for all Mastodon streaming services";
|
||||
wantedBy = [ "multi-user.target" "mastodon.target" ];
|
||||
after = [ "network.target" ];
|
||||
};
|
||||
|
||||
systemd.services.mastodon-init-dirs = {
|
||||
script = ''
|
||||
umask 077
|
||||
@ -631,6 +692,8 @@ in {
|
||||
DB_PASS="$(cat ${cfg.database.passwordFile})"
|
||||
'' + lib.optionalString cfg.smtp.authenticate ''
|
||||
SMTP_PASSWORD="$(cat ${cfg.smtp.passwordFile})"
|
||||
'' + lib.optionalString (cfg.elasticsearch.passwordFile != null) ''
|
||||
ES_PASS="$(cat ${cfg.elasticsearch.passwordFile})"
|
||||
'' + ''
|
||||
EOF
|
||||
'';
|
||||
@ -688,33 +751,6 @@ in {
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service";
|
||||
};
|
||||
|
||||
systemd.services.mastodon-streaming = {
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
requires = [ "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
++ lib.optional cfg.automaticMigrations "mastodon-init-db.service";
|
||||
wantedBy = [ "mastodon.target" ];
|
||||
description = "Mastodon streaming";
|
||||
environment = env // (if cfg.enableUnixSocket
|
||||
then { SOCKET = "/run/mastodon-streaming/streaming.socket"; }
|
||||
else { PORT = toString(cfg.streamingPort); }
|
||||
);
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/run-streaming.sh";
|
||||
Restart = "always";
|
||||
RestartSec = 20;
|
||||
EnvironmentFile = [ "/var/lib/mastodon/.secrets_env" ] ++ cfg.extraEnvFiles;
|
||||
WorkingDirectory = cfg.package;
|
||||
# Runtime directory and mode
|
||||
RuntimeDirectory = "mastodon-streaming";
|
||||
RuntimeDirectoryMode = "0750";
|
||||
# System Call Filtering
|
||||
SystemCallFilter = [ ("~" + lib.concatStringsSep " " (systemCallsList ++ [ "@memlock" "@resources" ])) "pipe" "pipe2" ];
|
||||
} // cfgService;
|
||||
};
|
||||
|
||||
systemd.services.mastodon-web = {
|
||||
after = [ "network.target" "mastodon-init-dirs.service" ]
|
||||
++ lib.optional databaseActuallyCreateLocally "postgresql.service"
|
||||
@ -780,10 +816,20 @@ in {
|
||||
};
|
||||
|
||||
locations."/api/v1/streaming/" = {
|
||||
proxyPass = (if cfg.enableUnixSocket then "http://unix:/run/mastodon-streaming/streaming.socket" else "http://127.0.0.1:${toString(cfg.streamingPort)}/");
|
||||
proxyPass = "http://mastodon-streaming";
|
||||
proxyWebsockets = true;
|
||||
};
|
||||
};
|
||||
upstreams.mastodon-streaming = {
|
||||
extraConfig = ''
|
||||
least_conn;
|
||||
'';
|
||||
servers = builtins.listToAttrs
|
||||
(map (i: {
|
||||
name = "unix:/run/mastodon-streaming/streaming-${toString i}.socket";
|
||||
value = { };
|
||||
}) (lib.range 1 cfg.streamingProcesses));
|
||||
};
|
||||
};
|
||||
|
||||
services.postfix = lib.mkIf (cfg.smtp.createLocally && cfg.smtp.host == "127.0.0.1") {
|
||||
@ -819,7 +865,7 @@ in {
|
||||
|
||||
users.groups.${cfg.group}.members = lib.optional cfg.configureNginx config.services.nginx.user;
|
||||
}
|
||||
{ systemd.services = sidekiqUnits; }
|
||||
{ systemd.services = lib.mkMerge [ sidekiqUnits streamingUnits ]; }
|
||||
]);
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ happy-river erictapen ];
|
||||
|
@ -96,8 +96,8 @@ in
|
||||
# (required, but can be null if only config changes
|
||||
# are needed)
|
||||
|
||||
extraStructuredConfig = { # attrset of extra configuration parameters
|
||||
FOO = lib.kernel.yes; # (without the CONFIG_ prefix, optional)
|
||||
extraStructuredConfig = { # attrset of extra configuration parameters without the CONFIG_ prefix
|
||||
FOO = lib.kernel.yes; # (optional)
|
||||
}; # values should generally be lib.kernel.yes,
|
||||
# lib.kernel.no or lib.kernel.module
|
||||
|
||||
@ -105,8 +105,9 @@ in
|
||||
foo = true; # (may be checked by other NixOS modules, optional)
|
||||
};
|
||||
|
||||
extraConfig = "CONFIG_FOO y"; # extra configuration options in string form
|
||||
# (deprecated, use extraStructuredConfig instead, optional)
|
||||
extraConfig = "FOO y"; # extra configuration options in string form without the CONFIG_ prefix
|
||||
# (optional, multiple lines allowed to specify multiple options)
|
||||
# (deprecated, use extraStructuredConfig instead)
|
||||
}
|
||||
```
|
||||
|
||||
|
@ -11,7 +11,23 @@ import shutil
|
||||
import subprocess
|
||||
import sys
|
||||
import warnings
|
||||
from typing import NamedTuple
|
||||
import json
|
||||
from typing import NamedTuple, Dict, List
|
||||
from dataclasses import dataclass
|
||||
|
||||
|
||||
@dataclass
|
||||
class BootSpec:
|
||||
init: str
|
||||
initrd: str
|
||||
initrdSecrets: str
|
||||
kernel: str
|
||||
kernelParams: List[str]
|
||||
label: str
|
||||
system: str
|
||||
toplevel: str
|
||||
specialisations: Dict[str, "BootSpec"]
|
||||
|
||||
|
||||
|
||||
libc = ctypes.CDLL("libc.so.6")
|
||||
@ -71,12 +87,20 @@ def write_loader_conf(profile: str | None, generation: int, specialisation: str
|
||||
os.rename("@efiSysMountPoint@/loader/loader.conf.tmp", "@efiSysMountPoint@/loader/loader.conf")
|
||||
|
||||
|
||||
def profile_path(profile: str | None, generation: int, specialisation: str | None, name: str) -> str:
|
||||
return os.path.realpath("%s/%s" % (system_dir(profile, generation, specialisation), name))
|
||||
def get_bootspec(profile: str | None, generation: int) -> BootSpec:
|
||||
boot_json_path = os.path.realpath("%s/%s" % (system_dir(profile, generation, None), "boot.json"))
|
||||
boot_json_f = open(boot_json_path, 'r')
|
||||
bootspec_json = json.load(boot_json_f)
|
||||
return bootspec_from_json(bootspec_json)
|
||||
|
||||
def bootspec_from_json(bootspec_json: Dict) -> BootSpec:
|
||||
specialisations = bootspec_json['org.nixos.specialisation.v1']
|
||||
specialisations = {k: bootspec_from_json(v) for k, v in specialisations.items()}
|
||||
return BootSpec(**bootspec_json['org.nixos.bootspec.v1'], specialisations=specialisations)
|
||||
|
||||
|
||||
def copy_from_profile(profile: str | None, generation: int, specialisation: str | None, name: str, dry_run: bool = False) -> str:
|
||||
store_file_path = profile_path(profile, generation, specialisation, name)
|
||||
def copy_from_file(file: str, dry_run: bool = False) -> str:
|
||||
store_file_path = os.path.realpath(file)
|
||||
suffix = os.path.basename(store_file_path)
|
||||
store_dir = os.path.basename(os.path.dirname(store_file_path))
|
||||
efi_file_path = "/efi/nixos/%s-%s.efi" % (store_dir, suffix)
|
||||
@ -84,40 +108,19 @@ def copy_from_profile(profile: str | None, generation: int, specialisation: str
|
||||
copy_if_not_exists(store_file_path, "@efiSysMountPoint@%s" % (efi_file_path))
|
||||
return efi_file_path
|
||||
|
||||
|
||||
def describe_generation(profile: str | None, generation: int, specialisation: str | None) -> str:
|
||||
try:
|
||||
with open(profile_path(profile, generation, specialisation, "nixos-version")) as f:
|
||||
nixos_version = f.read()
|
||||
except IOError:
|
||||
nixos_version = "Unknown"
|
||||
|
||||
kernel_dir = os.path.dirname(profile_path(profile, generation, specialisation, "kernel"))
|
||||
module_dir = glob.glob("%s/lib/modules/*" % kernel_dir)[0]
|
||||
kernel_version = os.path.basename(module_dir)
|
||||
|
||||
build_time = int(os.path.getctime(system_dir(profile, generation, specialisation)))
|
||||
build_date = datetime.datetime.fromtimestamp(build_time).strftime('%F')
|
||||
|
||||
description = "@distroName@ {}, Linux Kernel {}, Built on {}".format(
|
||||
nixos_version, kernel_version, build_date
|
||||
)
|
||||
|
||||
return description
|
||||
|
||||
|
||||
def write_entry(profile: str | None, generation: int, specialisation: str | None,
|
||||
machine_id: str, current: bool) -> None:
|
||||
kernel = copy_from_profile(profile, generation, specialisation, "kernel")
|
||||
initrd = copy_from_profile(profile, generation, specialisation, "initrd")
|
||||
machine_id: str, bootspec: BootSpec, current: bool) -> None:
|
||||
if specialisation:
|
||||
bootspec = bootspec.specialisations[specialisation]
|
||||
kernel = copy_from_file(bootspec.kernel)
|
||||
initrd = copy_from_file(bootspec.initrd)
|
||||
|
||||
title = "@distroName@{profile}{specialisation}".format(
|
||||
profile=" [" + profile + "]" if profile else "",
|
||||
specialisation=" (%s)" % specialisation if specialisation else "")
|
||||
|
||||
try:
|
||||
append_initrd_secrets = profile_path(profile, generation, specialisation, "append-initrd-secrets")
|
||||
subprocess.check_call([append_initrd_secrets, "@efiSysMountPoint@%s" % (initrd)])
|
||||
subprocess.check_call([bootspec.initrdSecrets, "@efiSysMountPoint@%s" % (initrd)])
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
except subprocess.CalledProcessError:
|
||||
@ -132,17 +135,19 @@ def write_entry(profile: str | None, generation: int, specialisation: str | None
|
||||
entry_file = "@efiSysMountPoint@/loader/entries/%s" % (
|
||||
generation_conf_filename(profile, generation, specialisation))
|
||||
tmp_path = "%s.tmp" % (entry_file)
|
||||
kernel_params = "init=%s " % profile_path(profile, generation, specialisation, "init")
|
||||
kernel_params = "init=%s " % bootspec.init
|
||||
|
||||
kernel_params = kernel_params + " ".join(bootspec.kernelParams)
|
||||
build_time = int(os.path.getctime(system_dir(profile, generation, specialisation)))
|
||||
build_date = datetime.datetime.fromtimestamp(build_time).strftime('%F')
|
||||
|
||||
with open(profile_path(profile, generation, specialisation, "kernel-params")) as params_file:
|
||||
kernel_params = kernel_params + params_file.read()
|
||||
with open(tmp_path, 'w') as f:
|
||||
f.write(BOOT_ENTRY.format(title=title,
|
||||
generation=generation,
|
||||
kernel=kernel,
|
||||
initrd=initrd,
|
||||
kernel_params=kernel_params,
|
||||
description=describe_generation(profile, generation, specialisation)))
|
||||
description=f"{bootspec.label}, built on {build_date}"))
|
||||
if machine_id is not None:
|
||||
f.write("machine-id %s\n" % machine_id)
|
||||
f.flush()
|
||||
@ -173,21 +178,14 @@ def get_generations(profile: str | None = None) -> list[SystemIdentifier]:
|
||||
return configurations[-configurationLimit:]
|
||||
|
||||
|
||||
def get_specialisations(profile: str | None, generation: int, _: str | None) -> list[SystemIdentifier]:
|
||||
specialisations_dir = os.path.join(
|
||||
system_dir(profile, generation, None), "specialisation")
|
||||
if not os.path.exists(specialisations_dir):
|
||||
return []
|
||||
return [SystemIdentifier(profile, generation, spec) for spec in os.listdir(specialisations_dir)]
|
||||
|
||||
|
||||
def remove_old_entries(gens: list[SystemIdentifier]) -> None:
|
||||
rex_profile = re.compile(r"^@efiSysMountPoint@/loader/entries/nixos-(.*)-generation-.*\.conf$")
|
||||
rex_generation = re.compile(r"^@efiSysMountPoint@/loader/entries/nixos.*-generation-([0-9]+)(-specialisation-.*)?\.conf$")
|
||||
known_paths = []
|
||||
for gen in gens:
|
||||
known_paths.append(copy_from_profile(*gen, "kernel", True))
|
||||
known_paths.append(copy_from_profile(*gen, "initrd", True))
|
||||
bootspec = get_bootspec(gen.profile, gen.generation)
|
||||
known_paths.append(copy_from_file(bootspec.kernel, True))
|
||||
known_paths.append(copy_from_file(bootspec.initrd, True))
|
||||
for path in glob.iglob("@efiSysMountPoint@/loader/entries/nixos*-generation-[1-9]*.conf"):
|
||||
if rex_profile.match(path):
|
||||
prof = rex_profile.sub(r"\1", path)
|
||||
@ -279,10 +277,11 @@ def install_bootloader(args: argparse.Namespace) -> None:
|
||||
remove_old_entries(gens)
|
||||
for gen in gens:
|
||||
try:
|
||||
is_default = os.path.dirname(profile_path(*gen, "init")) == args.default_config
|
||||
write_entry(*gen, machine_id, current=is_default)
|
||||
for specialisation in get_specialisations(*gen):
|
||||
write_entry(*specialisation, machine_id, current=is_default)
|
||||
bootspec = get_bootspec(gen.profile, gen.generation)
|
||||
is_default = os.path.dirname(bootspec.init) == args.default_config
|
||||
write_entry(*gen, machine_id, bootspec, current=is_default)
|
||||
for specialisation in bootspec.specialisations.keys():
|
||||
write_entry(gen.profile, gen.generation, specialisation, machine_id, bootspec, current=is_default)
|
||||
if is_default:
|
||||
write_loader_conf(*gen)
|
||||
except OSError as e:
|
||||
|
@ -16,7 +16,7 @@ in
|
||||
meta.maintainers = with pkgs.lib.maintainers; [ erictapen izorkin ];
|
||||
|
||||
nodes = {
|
||||
database = {
|
||||
database = { config, ... }: {
|
||||
networking = {
|
||||
interfaces.eth1 = {
|
||||
ipv4.addresses = [
|
||||
@ -24,11 +24,13 @@ in
|
||||
];
|
||||
};
|
||||
extraHosts = hosts;
|
||||
firewall.allowedTCPPorts = [ 5432 ];
|
||||
firewall.allowedTCPPorts = [ config.services.postgresql.port ];
|
||||
};
|
||||
|
||||
services.postgresql = {
|
||||
enable = true;
|
||||
# TODO remove once https://github.com/NixOS/nixpkgs/pull/266270 is resolved.
|
||||
package = pkgs.postgresql_14;
|
||||
enableTCPIP = true;
|
||||
authentication = ''
|
||||
hostnossl mastodon_local mastodon_test 192.168.2.201/32 md5
|
||||
@ -41,7 +43,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
nginx = {
|
||||
nginx = { nodes, ... }: {
|
||||
networking = {
|
||||
interfaces.eth1 = {
|
||||
ipv4.addresses = [
|
||||
@ -69,18 +71,14 @@ in
|
||||
tryFiles = "$uri @proxy";
|
||||
};
|
||||
locations."@proxy" = {
|
||||
proxyPass = "http://192.168.2.201:55001";
|
||||
proxyWebsockets = true;
|
||||
};
|
||||
locations."/api/v1/streaming/" = {
|
||||
proxyPass = "http://192.168.2.201:55002";
|
||||
proxyPass = "http://192.168.2.201:${toString nodes.server.services.mastodon.webPort}";
|
||||
proxyWebsockets = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
server = { pkgs, ... }: {
|
||||
server = { config, pkgs, ... }: {
|
||||
virtualisation.memorySize = 2048;
|
||||
|
||||
environment = {
|
||||
@ -98,7 +96,10 @@ in
|
||||
];
|
||||
};
|
||||
extraHosts = hosts;
|
||||
firewall.allowedTCPPorts = [ 55001 55002 ];
|
||||
firewall.allowedTCPPorts = [
|
||||
config.services.mastodon.webPort
|
||||
config.services.mastodon.sidekiqPort
|
||||
];
|
||||
};
|
||||
|
||||
services.mastodon = {
|
||||
@ -106,6 +107,7 @@ in
|
||||
configureNginx = false;
|
||||
localDomain = "mastodon.local";
|
||||
enableUnixSocket = false;
|
||||
streamingProcesses = 2;
|
||||
database = {
|
||||
createLocally = false;
|
||||
host = "192.168.2.102";
|
||||
|
@ -10,9 +10,8 @@
|
||||
|
||||
server.wait_for_unit("redis-mastodon.service")
|
||||
server.wait_for_unit("mastodon-sidekiq-all.service")
|
||||
server.wait_for_unit("mastodon-streaming.service")
|
||||
server.wait_for_unit("mastodon-streaming.target")
|
||||
server.wait_for_unit("mastodon-web.service")
|
||||
server.wait_for_open_port(55000)
|
||||
server.wait_for_open_port(55001)
|
||||
|
||||
# Check that mastodon-media-auto-remove is scheduled
|
||||
|
@ -40,11 +40,15 @@ in
|
||||
port = 31637;
|
||||
};
|
||||
|
||||
# TODO remove once https://github.com/NixOS/nixpkgs/pull/266270 is resolved.
|
||||
services.postgresql.package = pkgs.postgresql_14;
|
||||
|
||||
services.mastodon = {
|
||||
enable = true;
|
||||
configureNginx = true;
|
||||
localDomain = "mastodon.local";
|
||||
enableUnixSocket = false;
|
||||
streamingProcesses = 2;
|
||||
smtp = {
|
||||
createLocally = false;
|
||||
fromAddress = "mastodon@mastodon.local";
|
||||
|
@ -16,13 +16,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "goodvibes";
|
||||
version = "0.7.7";
|
||||
version = "0.7.9";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-7AhdygNl6st5ryaMjrloBvTVz6PN48Y6VVpde5g3+D4=";
|
||||
hash = "sha256-yXrCE3nsdZP4JHKVslzQafjZ380zC8sZv5TJf8dJqJw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -10,16 +10,16 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "snarkos";
|
||||
version = "2.2.1";
|
||||
version = "2.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "AleoHQ";
|
||||
repo = "snarkOS";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-vEoEnjVjxVnjZ3Lya1qO2kOypNu07aYSlrSya5NJZzs=";
|
||||
sha256 = "sha256-sq99lJqSJ436wdSjdOlooGD2PysZzbyb7hTfJ9OUg/U=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-CVHvBqfcTqWBtLFcEcs9y/LmQ4gXjX+dfqqZSxN+33A=";
|
||||
cargoHash = "sha256-0x/YKPLh5yf3y/CjrQF18yDfPJ8IlArVVczgyVPzpEI=";
|
||||
|
||||
# buildAndTestSubdir = "cli";
|
||||
|
||||
|
@ -65,8 +65,7 @@ in buildFHSEnv rec {
|
||||
progs_to_wrap=(
|
||||
"${unwrapped}"/quartus/bin/*
|
||||
"${unwrapped}"/quartus/sopc_builder/bin/qsys-{generate,edit,script}
|
||||
# Should we install all executables?
|
||||
"${unwrapped}"/modelsim_ase/bin/{vsim,vlog,vlib,vcom,vdel,vmap}
|
||||
"${unwrapped}"/modelsim_ase/bin/*
|
||||
"${unwrapped}"/modelsim_ase/linuxaloem/lmutil
|
||||
)
|
||||
|
||||
|
@ -15,11 +15,11 @@ let
|
||||
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
|
||||
|
||||
sha256 = {
|
||||
x86_64-linux = "1v2lcbmb0g3pw58mmiqd2j9c7r7dcl371nxc6w9rsmcbf7s0f8h0";
|
||||
x86_64-darwin = "11if8l556rsvacwbsknv2hnqfwkad99klgnwx4kjcbm8g63ra3ab";
|
||||
aarch64-linux = "1fmahjn99cvylm8r4cf4b1654gyyk6n6mqad1l0cncpypdxc2pdw";
|
||||
aarch64-darwin = "053jnxpkpfh5a8nfx557ib6byhi4dd1dnxasp4igy59cbx25an9q";
|
||||
armv7l-linux = "0qc48mg34pkr23p3wnlczvfspfii3qn6ikbkgj1qsagxn9ycqjak";
|
||||
x86_64-linux = "1h2s90h1a4b4r9rqafd5fj95mx21xqlp3msv8fxfjd2kkfl8bdcl";
|
||||
x86_64-darwin = "1cprq4cy01cmyqrvv5p9f09k7h5p4nj9jbk4lrlnyj1z2xvhcls1";
|
||||
aarch64-linux = "0g9j14vnan10r014309s6mdkizjfpbd83bf1kxx2kk625n87xszc";
|
||||
aarch64-darwin = "10rw2dy3khpxa292zygxi67amxd6s351ha8nxvav5m9xfxlgd2qn";
|
||||
armv7l-linux = "0bw0hfhvwv7wbh2daxgxaxm34v5z5ak4nmmk45ksxc4xsmjc5v23";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
sourceRoot = lib.optionalString (!stdenv.isDarwin) ".";
|
||||
@ -29,7 +29,7 @@ in
|
||||
|
||||
# Please backport all compatible updates to the stable release.
|
||||
# This is important for the extension ecosystem.
|
||||
version = "1.84.2.23314";
|
||||
version = "1.84.2.23317";
|
||||
pname = "vscodium";
|
||||
|
||||
executableName = "codium";
|
||||
|
49
pkgs/applications/graphics/texturepacker/default.nix
Normal file
49
pkgs/applications/graphics/texturepacker/default.nix
Normal file
@ -0,0 +1,49 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, dpkg
|
||||
, autoPatchelfHook
|
||||
, wrapQtAppsHook
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, qtsvg
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "texturepacker";
|
||||
version = "7.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.codeandweb.com/download/texturepacker/${finalAttrs.version}/TexturePacker-${finalAttrs.version}.deb";
|
||||
hash = "sha256-9HbmdMPTp6qZCEU/lIZv4HbjKUlEtPVval+y0tiYObc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
dpkg
|
||||
autoPatchelfHook
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
qtbase
|
||||
qtdeclarative
|
||||
qtsvg
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin $out/lib
|
||||
cp usr/lib/texturepacker/{libGrantlee_Templates.so.5,libHQX.so.1.0.0,libPVRTexLib.so} $out/lib
|
||||
cp usr/lib/texturepacker/TexturePacker $out/bin
|
||||
cp -r usr/share $out
|
||||
'';
|
||||
|
||||
meta = {
|
||||
changelog = "https://www.codeandweb.com/texturepacker/download";
|
||||
description = "Sprite sheet creator and game graphics optimizer";
|
||||
homepage = "https://www.codeandweb.com/texturepacker";
|
||||
license = lib.licenses.unfree;
|
||||
mainProgram = "TexturePacker";
|
||||
maintainers = with lib.maintainers; [ tomasajt ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
})
|
@ -8,16 +8,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "helmfile";
|
||||
version = "0.158.0";
|
||||
version = "0.158.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "helmfile";
|
||||
repo = "helmfile";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-768rlhkh8scQbzLvWyjyQSba4zCY/ydYreve+HmcFgw=";
|
||||
sha256 = "sha256-ohf8MUUTZ3YNon12QpSRE80RaHvWsbrZk/slgEVbgoo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ip01Uj720Sa11ni+8//U1PkHgiY6ttftvMHdxZgfKLk=";
|
||||
vendorHash = "sha256-rA8egwzvvhArQboWpH2ZZTSJGTyzHUIl6aLusPfr8tw=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kn";
|
||||
version = "1.11.1";
|
||||
version = "1.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "knative";
|
||||
repo = "client";
|
||||
rev = "knative-v${version}";
|
||||
sha256 = "sha256-tVUe/EHraPVxikzGilmX2fDCX81lPGPy+Sa9OoVmpYM=";
|
||||
sha256 = "sha256-Xp5PpHIcjh02qesnyrz53yydIAClx0OrBE75Sz5pifg=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kube-router";
|
||||
version = "2.0.0";
|
||||
version = "2.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cloudnativelabs";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-7laXw0tC25zPTeLJlB/rX6WVcRFCd6DCB+3EUPnE4cM=";
|
||||
hash = "sha256-Iwo+I1EfclkF4FL8QM3xGkIFxakmelI+hSUepLwfFSw=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-qJA6gnb+VIkJD24iq6yyn8r4zYY19ZywcyalwfaTtbo=";
|
||||
vendorHash = "sha256-VjPesQ27GcwnFQrNI+VYzJ4/aahcjASbfMi//Zs/KLM=";
|
||||
|
||||
CGO_ENABLED = 0;
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "stern";
|
||||
version = "1.26.0";
|
||||
version = "1.27.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "stern";
|
||||
repo = "stern";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-86XoYzw1bnIWwGiFgRl9RcZSYrF4byYKnDlJ4QSqXV0=";
|
||||
sha256 = "sha256-W8jGUs63R6QpwuTgzK5yVLhKGXypvKOyCWHT2xdb6eM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-LLVd9WB8ixH78CHYe0sS4sCDCD+6SQ7PxWr2MHiAOxI=";
|
||||
|
@ -91,13 +91,13 @@
|
||||
"vendorHash": "sha256-Ne0ed+H6lPEH5uTYS98pLIf+7B1w+HSM77tGGG9E5RQ="
|
||||
},
|
||||
"auth0": {
|
||||
"hash": "sha256-//F0WsvL8jkDCywdGCC6NaQD4oG/X/KeMuq8vWpnlSE=",
|
||||
"hash": "sha256-ShwoPwEQLNX1+LB84iWrS5VopKt8kao35/iVVGLDZck=",
|
||||
"homepage": "https://registry.terraform.io/providers/auth0/auth0",
|
||||
"owner": "auth0",
|
||||
"repo": "terraform-provider-auth0",
|
||||
"rev": "v1.0.0",
|
||||
"rev": "v1.1.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-8gfCVvFFcuoR4KL6nawJXSdWgnZfOgehs9GxO5n8w9A="
|
||||
"vendorHash": "sha256-fD3epndk6L+zjtUNalis9VJCxWKOBScYGHkUFRnLNLQ="
|
||||
},
|
||||
"avi": {
|
||||
"hash": "sha256-EGpHajrTTOx7LrFHzsrrkGMqsuUEJLJAN6AJ48QdJis=",
|
||||
@ -155,11 +155,11 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"baiducloud": {
|
||||
"hash": "sha256-h4CWzwvxRhA0DYjkVC44/hbwQMZ6uWGQqOqaM0mkYt8=",
|
||||
"hash": "sha256-N2WfSCro4jVZSXTe41hs4uQsmnhbsfl/J2o51YEOsB4=",
|
||||
"homepage": "https://registry.terraform.io/providers/baidubce/baiducloud",
|
||||
"owner": "baidubce",
|
||||
"repo": "terraform-provider-baiducloud",
|
||||
"rev": "v1.19.19",
|
||||
"rev": "v1.19.20",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -173,13 +173,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"bitbucket": {
|
||||
"hash": "sha256-En53+Lj7cQxzkKgXDPWNptVbg0wMAc5WRmsilBOlgEM=",
|
||||
"hash": "sha256-dO+2sg+4Xg+9fxKe/hGF0EBS4yGZAzhIBgcBhT/VDWk=",
|
||||
"homepage": "https://registry.terraform.io/providers/DrFaust92/bitbucket",
|
||||
"owner": "DrFaust92",
|
||||
"repo": "terraform-provider-bitbucket",
|
||||
"rev": "v2.35.0",
|
||||
"rev": "v2.37.2",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-xaa/NAJfKlSM4P9o4xNsJhL5ZyUGNYMC9/WbCqMKiLM="
|
||||
"vendorHash": "sha256-2s8ATVlSVa6n/OSay0oTdJXGdfnCwX6da3Pcu/xYcPY="
|
||||
},
|
||||
"brightbox": {
|
||||
"hash": "sha256-pwFbCP+qDL/4IUfbPRCkddkbsEEeAu7Wp12/mDL0ABA=",
|
||||
@ -191,22 +191,22 @@
|
||||
"vendorHash": "sha256-/dOiXO2aPkuZaFiwv/6AXJdIADgx8T7eOwvJfBBoqg8="
|
||||
},
|
||||
"buildkite": {
|
||||
"hash": "sha256-WVDbC8zLKrKi3dvpYmu8n0W/+YJKrpyQhA2ubcu76J8=",
|
||||
"hash": "sha256-+H2ivPSrNBybUSYX2sLL4V8uqLTsJZp7AN1AYQQ/f90=",
|
||||
"homepage": "https://registry.terraform.io/providers/buildkite/buildkite",
|
||||
"owner": "buildkite",
|
||||
"repo": "terraform-provider-buildkite",
|
||||
"rev": "v1.0.4",
|
||||
"rev": "v1.0.6",
|
||||
"spdx": "MIT",
|
||||
"vendorHash": "sha256-UleQAfbWR4Zv0U+LgDs9JFcqTN5yLwHGw5EUUi8SnUs="
|
||||
"vendorHash": "sha256-GzHqmSS0yWH+pNGA7ZbfpRkjUsc2F9vlJ9XEOjKxFS4="
|
||||
},
|
||||
"checkly": {
|
||||
"hash": "sha256-AFufcitZh9UwkO1p52PjjZEpYxLLdtLWQlUJm4PJjWI=",
|
||||
"hash": "sha256-HfmEh+7RmCIjBvacBW6sX3PL295oHOo8Z+5YsFyl0/4=",
|
||||
"homepage": "https://registry.terraform.io/providers/checkly/checkly",
|
||||
"owner": "checkly",
|
||||
"repo": "terraform-provider-checkly",
|
||||
"rev": "v1.7.1",
|
||||
"rev": "v1.7.2",
|
||||
"spdx": null,
|
||||
"vendorHash": "sha256-8zzuU5ddu/1zx72soBLIrvpWHy+Yl3bsuc+IksTBfM4="
|
||||
"vendorHash": "sha256-iAAsTiBX1/EOCFgLv7bmTVW5ga5ef4GIEJSHo4w76Tg="
|
||||
},
|
||||
"ciscoasa": {
|
||||
"hash": "sha256-xzc44FEy2MPo51Faq/VFwg411JK9e0kQucpt0vdN8yg=",
|
||||
@ -227,13 +227,13 @@
|
||||
"vendorHash": "sha256-dR/7rtDNj9bIRh6JMwXhWvLiAhXfrGnqS9QvfDH9eGw="
|
||||
},
|
||||
"cloudflare": {
|
||||
"hash": "sha256-xnAEEKKHbVeITO1RRCyt2/LEDlqUqCf6jDHShhKLDwU=",
|
||||
"hash": "sha256-FdKz6EmpxhqM+wcCAuwTCOCxhV0LI4+7d12fNxOSd7Q=",
|
||||
"homepage": "https://registry.terraform.io/providers/cloudflare/cloudflare",
|
||||
"owner": "cloudflare",
|
||||
"repo": "terraform-provider-cloudflare",
|
||||
"rev": "v4.17.0",
|
||||
"rev": "v4.19.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-i5pO4dY3dnNy4XlIPk5CMYMqXzKyfwQWjettF5vPXr0="
|
||||
"vendorHash": "sha256-PwIFz2T+iXR6+A/yrF4+kxWr2SxLDUY8XDO5aTeg89M="
|
||||
},
|
||||
"cloudfoundry": {
|
||||
"hash": "sha256-yEqsdgTSlwppt6ILRZQ6Epyh5WVN6Il3xsBOa/NfIdo=",
|
||||
@ -254,11 +254,11 @@
|
||||
"vendorHash": "sha256-h4CO3sC41RPSmkTlWUCiRvQ1NRZkT2v1uHFOemvBN8s="
|
||||
},
|
||||
"cloudscale": {
|
||||
"hash": "sha256-OK5djIzIqS4qrVtgMMCiVqslO/rftTc/ft/rNQCxpOM=",
|
||||
"hash": "sha256-SDivLkP1y/qBVNSiyCjV6zPTbLUplxzD3gNxzkjC51M=",
|
||||
"homepage": "https://registry.terraform.io/providers/cloudscale-ch/cloudscale",
|
||||
"owner": "cloudscale-ch",
|
||||
"repo": "terraform-provider-cloudscale",
|
||||
"rev": "v4.2.1",
|
||||
"rev": "v4.2.2",
|
||||
"spdx": "MIT",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -273,13 +273,13 @@
|
||||
"vendorHash": "sha256-UJHDX/vx3n/RTuQ50Y6TAhpEEFk9yBoaz8yK02E8Fhw="
|
||||
},
|
||||
"consul": {
|
||||
"hash": "sha256-2oujZd7tqvMnp48m3bs45p5dRC7U5a7hsiS5qBuPUHU=",
|
||||
"hash": "sha256-mGLI/TAovyBvowI6AwRPcmYqwnPEe4ibDhFj1t7I+oM=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/consul",
|
||||
"owner": "hashicorp",
|
||||
"repo": "terraform-provider-consul",
|
||||
"rev": "v2.18.0",
|
||||
"rev": "v2.19.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-0SRbKFKl1lfiiMDZW20ak9m09T3tSOH/fc+UwGeXmuk="
|
||||
"vendorHash": "sha256-sOnEgGTboK+vbNQYUOP0TxLe2JsqBUFo6/k55paIsmM="
|
||||
},
|
||||
"ct": {
|
||||
"hash": "sha256-c1cqTfMlZ5fXDNMYLsk4447X0p/qIQYvRTqVY8cSs+E=",
|
||||
@ -291,13 +291,13 @@
|
||||
"vendorHash": "sha256-ZCMSmOCPEMxCSpl3DjIUGPj1W/KNJgyjtHpmQ19JquA="
|
||||
},
|
||||
"datadog": {
|
||||
"hash": "sha256-Etp25ZcKy+13SbsEtpVnNgF8GpYhO27JwlV8wRkaSOo=",
|
||||
"hash": "sha256-IU9eBWYqI/a9EsYhI6kPom1PK/H403Dxr7eSXYFL5Do=",
|
||||
"homepage": "https://registry.terraform.io/providers/DataDog/datadog",
|
||||
"owner": "DataDog",
|
||||
"repo": "terraform-provider-datadog",
|
||||
"rev": "v3.31.0",
|
||||
"rev": "v3.32.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-0sfHf+aBV2vVScbyCPFtI6wj5KE6kNoioh4tyHhNOKc="
|
||||
"vendorHash": "sha256-C+N+LQ6qjpRrUNzCaiauIor+noD+0igTfR7RnrZdNwU="
|
||||
},
|
||||
"dexidp": {
|
||||
"hash": "sha256-Sy/xkhuNTocCoD7Nlq+pbvYiat4du4vZtOOZD2Ig3OA=",
|
||||
@ -318,11 +318,11 @@
|
||||
"vendorHash": "sha256-BpXhKjfxyCLdGRHn1GexW0MoLj4/C6Bn7scZ76JARxQ="
|
||||
},
|
||||
"digitalocean": {
|
||||
"hash": "sha256-i8jB3eLrhzvTq6ibc2u8XLK3SX41NU3dY1aGTwJtEq0=",
|
||||
"hash": "sha256-8T2xWKKoPU54ukMClva/fgZXGDMh92Oi0IacjnbgCCI=",
|
||||
"homepage": "https://registry.terraform.io/providers/digitalocean/digitalocean",
|
||||
"owner": "digitalocean",
|
||||
"repo": "terraform-provider-digitalocean",
|
||||
"rev": "v2.30.0",
|
||||
"rev": "v2.32.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -345,13 +345,13 @@
|
||||
"vendorHash": "sha256-SvyeMKuAJ4vu++7Fx0hutx3vQvgf1sh1PFSLPRqJPjw="
|
||||
},
|
||||
"dnsimple": {
|
||||
"hash": "sha256-07YEICB3brMzq2ft6gcovqFZ5OYmBR0IY6X67StAV/g=",
|
||||
"hash": "sha256-6QubFsPp3sOmCSgIpRH+x+Q9YDDnOnfX5UzV+iy3uh4=",
|
||||
"homepage": "https://registry.terraform.io/providers/dnsimple/dnsimple",
|
||||
"owner": "dnsimple",
|
||||
"repo": "terraform-provider-dnsimple",
|
||||
"rev": "v1.3.0",
|
||||
"rev": "v1.3.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-Ne5qnxU/n8y71fIegLYsQQxCqmVMT8RwHc+TXGshAJA="
|
||||
"vendorHash": "sha256-TTRxLal+oao8UtZpeZ4/HdR99WHGXARZWKqy1baT/mE="
|
||||
},
|
||||
"docker": {
|
||||
"hash": "sha256-UyHOI8C0eDV5YllAi9clHp/CEldHjIp3FHHMPy1rK58=",
|
||||
@ -381,20 +381,20 @@
|
||||
"vendorHash": "sha256-oVTanZpCWs05HwyIKW2ajiBPz1HXOFzBAt5Us+EtTRw="
|
||||
},
|
||||
"equinix": {
|
||||
"hash": "sha256-cUHVp4oVQ2e1d6kkByI1QsvODZCvkbw0goW3BjRk5Xw=",
|
||||
"hash": "sha256-7RnThTuYTO1W0nBZAilUB5WOp8Rng14aNBiax6M9FwQ=",
|
||||
"homepage": "https://registry.terraform.io/providers/equinix/equinix",
|
||||
"owner": "equinix",
|
||||
"repo": "terraform-provider-equinix",
|
||||
"rev": "v1.18.0",
|
||||
"rev": "v1.19.0",
|
||||
"spdx": "MIT",
|
||||
"vendorHash": "sha256-woYNslCzOOg9m8/Dfk42ZAWJDi8HZeqyVQw1MuRhoOE="
|
||||
"vendorHash": "sha256-nq380VsSog+nsL+U1KXkVUJqq3t4dJkrfbBH8tHm48E="
|
||||
},
|
||||
"exoscale": {
|
||||
"hash": "sha256-KtuGrHPSNSyuwAXYpOHiVX2svWj5+6EkXb/wZAnW/6E=",
|
||||
"hash": "sha256-Fc2/IT8L1jn0Oh8zT0C/Am4eoumQe0VRYqBDc/enEuY=",
|
||||
"homepage": "https://registry.terraform.io/providers/exoscale/exoscale",
|
||||
"owner": "exoscale",
|
||||
"repo": "terraform-provider-exoscale",
|
||||
"rev": "v0.53.0",
|
||||
"rev": "v0.53.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -417,13 +417,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"flexibleengine": {
|
||||
"hash": "sha256-DKbUjKwaJtBU0zFBz+C4hAKIys//mMKYBy0QFLHDY8s=",
|
||||
"hash": "sha256-+RAuFh88idG49nV4HVPgaGxADw/k/sUSTqrzWjf15tw=",
|
||||
"homepage": "https://registry.terraform.io/providers/FlexibleEngineCloud/flexibleengine",
|
||||
"owner": "FlexibleEngineCloud",
|
||||
"repo": "terraform-provider-flexibleengine",
|
||||
"rev": "v1.42.0",
|
||||
"rev": "v1.43.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-RqYzqKPzb5GcrzHnEDZC7GaBt1zP8g28Wo3WNAe07Ck="
|
||||
"vendorHash": "sha256-yin+UVMkqIxMSoVB4TD6Nv8F24FnEGZP5PFVpmuO2Fg="
|
||||
},
|
||||
"fortios": {
|
||||
"hash": "sha256-RpcKMndbO3wbkHmrINkbsQ+UeFsZrQ7x02dv8ZpFMec=",
|
||||
@ -445,42 +445,42 @@
|
||||
"vendorHash": "sha256-uWTY8cFztXFrQQ7GW6/R+x9M6vHmsb934ldq+oeW5vk="
|
||||
},
|
||||
"github": {
|
||||
"hash": "sha256-Np7aecFKdYqRPgdSfca5t7ExBvjx9zDSZJTk/GcFCLM=",
|
||||
"hash": "sha256-hlUVYgisdMa60XWb4z3erZS/8QBHEFGrjREsWh4azEE=",
|
||||
"homepage": "https://registry.terraform.io/providers/integrations/github",
|
||||
"owner": "integrations",
|
||||
"repo": "terraform-provider-github",
|
||||
"rev": "v5.40.0",
|
||||
"rev": "v5.42.0",
|
||||
"spdx": "MIT",
|
||||
"vendorHash": null
|
||||
},
|
||||
"gitlab": {
|
||||
"hash": "sha256-9fY1TTKQ02OkCRsMVE+NqsUiWga8lF38/5sB1YxKAEg=",
|
||||
"hash": "sha256-eONOqinRXs9lPz4d8WDb9lA0XcJuNqzgsZrmJAZ42t8=",
|
||||
"homepage": "https://registry.terraform.io/providers/gitlabhq/gitlab",
|
||||
"owner": "gitlabhq",
|
||||
"repo": "terraform-provider-gitlab",
|
||||
"rev": "v16.4.1",
|
||||
"rev": "v16.5.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-tMFNjdXIlyBELrLRKkJySXlQbuHDybVhSTw/J3dXZ7w="
|
||||
"vendorHash": "sha256-2t50Gsyf8gxG/byjgNyw5GEturU0MgBvZuJyc49s4t0="
|
||||
},
|
||||
"google": {
|
||||
"hash": "sha256-9svwUHvA5fuYjfiFWQLQs1yOejYprsiSF+58nPWN/Vs=",
|
||||
"hash": "sha256-o4tyG0Q4sqBktreYEKJ+1QlNXx/BEPmAGOTTzTcFnP8=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/google",
|
||||
"owner": "hashicorp",
|
||||
"proxyVendor": true,
|
||||
"repo": "terraform-provider-google",
|
||||
"rev": "v5.2.0",
|
||||
"rev": "v5.6.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-aVJuAYF5S/fkFHRk34HIN9p+P9MgHGh0RpeqC3/gchY="
|
||||
"vendorHash": "sha256-9nz3VLTi4RfGBDAE7JBUWXrJRajwAyxoeEH+VSP0wyQ="
|
||||
},
|
||||
"google-beta": {
|
||||
"hash": "sha256-z8b77hlIcB1Uthkl+aWQH9bkkRb+A9Y/EEUxNTU4wR4=",
|
||||
"hash": "sha256-+5Fm/aT90bD6RpQrUGjmpmahPTjOfsRJAaZuZsrPQn4=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/google-beta",
|
||||
"owner": "hashicorp",
|
||||
"proxyVendor": true,
|
||||
"repo": "terraform-provider-google-beta",
|
||||
"rev": "v5.2.0",
|
||||
"rev": "v5.6.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-aVJuAYF5S/fkFHRk34HIN9p+P9MgHGh0RpeqC3/gchY="
|
||||
"vendorHash": "sha256-9nz3VLTi4RfGBDAE7JBUWXrJRajwAyxoeEH+VSP0wyQ="
|
||||
},
|
||||
"googleworkspace": {
|
||||
"hash": "sha256-dedYnsKHizxJZibuvJOMbJoux0W6zgKaK5fxIofKqCY=",
|
||||
@ -492,13 +492,13 @@
|
||||
"vendorHash": "sha256-fqVBnAivVekV+4tpkl+E6eNA3wi8mhLevJRCs3W7L2g="
|
||||
},
|
||||
"grafana": {
|
||||
"hash": "sha256-3KVJ7mP6ehJnU0DxzR9rvMylw8VNFTTM+C/NBz2C1+E=",
|
||||
"hash": "sha256-8GBhJvv0JYHh98l1IRMsodYlFAkW5Lt1dJ03mPzTcts=",
|
||||
"homepage": "https://registry.terraform.io/providers/grafana/grafana",
|
||||
"owner": "grafana",
|
||||
"repo": "terraform-provider-grafana",
|
||||
"rev": "v2.3.3",
|
||||
"rev": "v2.6.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-kYNlClQoeU4s8j2dk1x33YtNkjs8a2KMPkzm4z/e0Z4="
|
||||
"vendorHash": "sha256-DOkDVQPTwB0l1VlfbvwJYiKRi/GE85cPzaY4JKnewaA="
|
||||
},
|
||||
"gridscale": {
|
||||
"hash": "sha256-gyUDWG7h3fRU0l0uyfmxd0Oi1TtQHnJutqahDoPZWgM=",
|
||||
@ -510,13 +510,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"hcloud": {
|
||||
"hash": "sha256-kuC4tm8ob9bg7iLcUaGEHMYh6XaZp4rQiVlnbo1Xzek=",
|
||||
"hash": "sha256-9yW3VbxtD+oSxmc2R9yzZisMTAOwjzyCzvZBRdFdH/w=",
|
||||
"homepage": "https://registry.terraform.io/providers/hetznercloud/hcloud",
|
||||
"owner": "hetznercloud",
|
||||
"repo": "terraform-provider-hcloud",
|
||||
"rev": "v1.42.1",
|
||||
"rev": "v1.44.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-r8njRjQGYESeHuD8pF6rRUe1j2VVMwoDITFi2StC5bk="
|
||||
"vendorHash": "sha256-oGABaZRnwZdS5qPmksT4x7Tin2WpU2Jk9pejeHbghm8="
|
||||
},
|
||||
"helm": {
|
||||
"hash": "sha256-pgV1xXhg8WIyF4RhJwAenTI6eAmtINveO8zqrKzLajQ=",
|
||||
@ -565,11 +565,11 @@
|
||||
"vendorHash": "sha256-hxT9mpKifb63wlCUeUzgVo4UB2TnYZy9lXF4fmGYpc4="
|
||||
},
|
||||
"huaweicloud": {
|
||||
"hash": "sha256-/dZ2WHzCF8vAFmpg0eUaCSzMy+5v7D24NPkJhCrjhLw=",
|
||||
"hash": "sha256-V6Ar0MXK7i927eDq8uvHZc3ivVonK9KBKqSZCCESgq0=",
|
||||
"homepage": "https://registry.terraform.io/providers/huaweicloud/huaweicloud",
|
||||
"owner": "huaweicloud",
|
||||
"repo": "terraform-provider-huaweicloud",
|
||||
"rev": "v1.56.1",
|
||||
"rev": "v1.57.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -592,13 +592,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"ibm": {
|
||||
"hash": "sha256-38AkbG68901Lc66B2nk+9FAWHQ9WZ0w0zAWseWbyOOw=",
|
||||
"hash": "sha256-Od+aunGMjcQ4AF60dxWNAUVMQiAkFMSAquOhUp3icug=",
|
||||
"homepage": "https://registry.terraform.io/providers/IBM-Cloud/ibm",
|
||||
"owner": "IBM-Cloud",
|
||||
"repo": "terraform-provider-ibm",
|
||||
"rev": "v1.58.1",
|
||||
"rev": "v1.59.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-8/5baDHKV5Plm1DnNtyrh7FgMjT9zr9ifxTosi7o5sg="
|
||||
"vendorHash": "sha256-qp1TZmDr7X+2MCdlGTBLubJ7hF5Y9jqoFaj5mxgNLHE="
|
||||
},
|
||||
"icinga2": {
|
||||
"hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
|
||||
@ -610,11 +610,11 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"infoblox": {
|
||||
"hash": "sha256-655WGpwE1BmWRdikvHtxxX8u4kOZ9cSLCZDr6QGfn5Y=",
|
||||
"hash": "sha256-rjqtqfmQQoJIhMtP6sFOu/XfJ691E77P0Bf9gjml2yg=",
|
||||
"homepage": "https://registry.terraform.io/providers/infobloxopen/infoblox",
|
||||
"owner": "infobloxopen",
|
||||
"repo": "terraform-provider-infoblox",
|
||||
"rev": "v2.4.1",
|
||||
"rev": "v2.5.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -691,13 +691,13 @@
|
||||
"vendorHash": "sha256-dHzyNvzxNltCAmwYWQHOEKkhgfylUUhOtBPiBqIS1Qg="
|
||||
},
|
||||
"linode": {
|
||||
"hash": "sha256-yzEbkK2fOXNkuMYjtsXXRI3tV+OngzVeJoDiu+iTr5w=",
|
||||
"hash": "sha256-ScuHyfnco5Xz6HrZ9YPQLdWKo1Hqu7LRteLHH2JxHXQ=",
|
||||
"homepage": "https://registry.terraform.io/providers/linode/linode",
|
||||
"owner": "linode",
|
||||
"repo": "terraform-provider-linode",
|
||||
"rev": "v2.9.2",
|
||||
"rev": "v2.9.7",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-G4A1nCM2R/6yWSUP+OSHrd6k6bz0Cp7wc40IU2AnS5s="
|
||||
"vendorHash": "sha256-5ALsYOuWLFGbIR3yVKmPeb0tQnx63p4WC98WdcxXeZ4="
|
||||
},
|
||||
"linuxbox": {
|
||||
"hash": "sha256-MzasMVtXO7ZeZ+qEx2Z+7881fOIA0SFzSvXVHeEROtg=",
|
||||
@ -718,20 +718,20 @@
|
||||
"vendorHash": "sha256-ZjS40Xc8y2UBPn4rX3EgRoSapRvMEeVMGZE6z9tpsAQ="
|
||||
},
|
||||
"lxd": {
|
||||
"hash": "sha256-0/nIdfCsmPaUkGkSkmWWioc6RZGTb0XWtvprjuDg2gU=",
|
||||
"hash": "sha256-2th4/2uLFnmSFKI94bSSt4OSX9wiML/OkThR6SbUCPE=",
|
||||
"homepage": "https://registry.terraform.io/providers/terraform-lxd/lxd",
|
||||
"owner": "terraform-lxd",
|
||||
"repo": "terraform-provider-lxd",
|
||||
"rev": "v1.10.2",
|
||||
"rev": "v1.10.4",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-DMOyP8BX1502a+Hd7rwhpV2/nT0ECFKmKDPtWE6o0IM="
|
||||
"vendorHash": "sha256-gcXX4XIyY2X7ZSDMVVzGL/ltaf8Z1/Zx8oJo/IDrIBA="
|
||||
},
|
||||
"mailgun": {
|
||||
"hash": "sha256-r1E2Y5JRu77T29ebUNTXUEypnrsfYYbBhvpKZGt5T9w=",
|
||||
"hash": "sha256-fg1I1lt2cA0DgxLnxYrm0V55pD9AkpAdonXVGYeFZwQ=",
|
||||
"homepage": "https://registry.terraform.io/providers/wgebis/mailgun",
|
||||
"owner": "wgebis",
|
||||
"repo": "terraform-provider-mailgun",
|
||||
"rev": "v0.7.4",
|
||||
"rev": "v0.7.5",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-yUXxq8NTOv8ZmWp0WiIID2cRU6AZiItIs99uGZpt9dc="
|
||||
},
|
||||
@ -754,13 +754,13 @@
|
||||
"vendorHash": "sha256-QxbZv6YMa5/I4bTeQBNdmG3EKtLEmstnH7HMiZzFJrI="
|
||||
},
|
||||
"minio": {
|
||||
"hash": "sha256-1Qnjn/13h+r7VeFPwpKMzQiK5EzhSghxHCOyahWXbVs=",
|
||||
"hash": "sha256-i3YYBffP7Jp3f0wN1ZwP+c7C8WN8EKUh7JOKzbH0R/I=",
|
||||
"homepage": "https://registry.terraform.io/providers/aminueza/minio",
|
||||
"owner": "aminueza",
|
||||
"repo": "terraform-provider-minio",
|
||||
"rev": "v1.18.0",
|
||||
"spdx": "Apache-2.0",
|
||||
"vendorHash": "sha256-cufN4QYXE+bqDKLUV+Rdslr5CgbI0DvoFVWVQiBVomw="
|
||||
"rev": "v2.0.1",
|
||||
"spdx": "AGPL-3.0",
|
||||
"vendorHash": "sha256-aIIkj0KpkIR+CsgPk4NCfhG7BMKaAQZy/49unQx4nWQ="
|
||||
},
|
||||
"mongodbatlas": {
|
||||
"hash": "sha256-SMIc78haJiH0XdTr9OBGWOcvXfYQW9thcNkCOxmNxDw=",
|
||||
@ -790,13 +790,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"newrelic": {
|
||||
"hash": "sha256-b9wHTSxDT657qTfv73O8A2YnwJPSWYONrElcyYyeH60=",
|
||||
"hash": "sha256-6SwAieZc7Qe8r+olZUUV46myax/M57t4VfWDrXMK8Hk=",
|
||||
"homepage": "https://registry.terraform.io/providers/newrelic/newrelic",
|
||||
"owner": "newrelic",
|
||||
"repo": "terraform-provider-newrelic",
|
||||
"rev": "v3.27.3",
|
||||
"rev": "v3.27.7",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-qZqmw55Fsn3XaDvyorouy391iM6KXQxX5gJGrKR3URU="
|
||||
"vendorHash": "sha256-9+AcCcAX/oEnljMCuJQ9B/aRkAB/074r4G/XWnLv/KU="
|
||||
},
|
||||
"nomad": {
|
||||
"hash": "sha256-urxTfyBv/vuX3Xowca625aNEsU4sxkmd24tis2YjR3Y=",
|
||||
@ -827,31 +827,31 @@
|
||||
},
|
||||
"nutanix": {
|
||||
"deleteVendor": true,
|
||||
"hash": "sha256-TV2jp7zmBdBpKGBrGfluUTFRUa2wq9MnTi+nfjqRG+4=",
|
||||
"hash": "sha256-Okjb4MS28gY1UdYA8+qs45VV5QcGabvMn5bc+nhzbt4=",
|
||||
"homepage": "https://registry.terraform.io/providers/nutanix/nutanix",
|
||||
"owner": "nutanix",
|
||||
"repo": "terraform-provider-nutanix",
|
||||
"rev": "v1.9.3",
|
||||
"rev": "v1.9.4",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-LRIfxQGwG988HE5fftGl6JmBG7tTknvmgpm4Fu1NbWI="
|
||||
},
|
||||
"oci": {
|
||||
"hash": "sha256-gMVGLURSXzT9TXXHJlL3F5WN+XI4o22bkPFh/jPtUrw=",
|
||||
"hash": "sha256-gk5KegQozeDg6ZqYsy+DxMczBOKxH0v3mHFRau/alFY=",
|
||||
"homepage": "https://registry.terraform.io/providers/oracle/oci",
|
||||
"owner": "oracle",
|
||||
"repo": "terraform-provider-oci",
|
||||
"rev": "v5.17.0",
|
||||
"rev": "v5.20.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"okta": {
|
||||
"hash": "sha256-0UvJCEHoCsONskvihQidGo834qEZR1hZMczNF+C7fqw=",
|
||||
"hash": "sha256-LCOuRsAX0ftacS0ecNQpYXKKumfCZ9a10bSuRJtD20E=",
|
||||
"homepage": "https://registry.terraform.io/providers/okta/okta",
|
||||
"owner": "okta",
|
||||
"repo": "terraform-provider-okta",
|
||||
"rev": "v4.5.0",
|
||||
"rev": "v4.6.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-LwExX17GlyzxMcn95c2T9FawoS03fHH58RmHoPTsjBA="
|
||||
"vendorHash": "sha256-ZhF1c4cez43cCumU+PYufpEcprRDxY7hVCNQHdIEDtI="
|
||||
},
|
||||
"oktaasa": {
|
||||
"hash": "sha256-2LhxgowqKvDDDOwdznusL52p2DKP+UiXALHcs9ZQd0U=",
|
||||
@ -872,58 +872,58 @@
|
||||
"vendorHash": "sha256-W7UGOtyFsIMXPqFDnde2XlzU7klR7Fs00mSuJ9ID20A="
|
||||
},
|
||||
"openstack": {
|
||||
"hash": "sha256-Iauu0sQf8wq4Ev8JflxrthXYe99YDnt5ZzWQ/q3Bjfw=",
|
||||
"hash": "sha256-sFv7n5tf3aAwe6R1XeJdU3XMDF9ZMCM3t/vVLegZaXM=",
|
||||
"homepage": "https://registry.terraform.io/providers/terraform-provider-openstack/openstack",
|
||||
"owner": "terraform-provider-openstack",
|
||||
"repo": "terraform-provider-openstack",
|
||||
"rev": "v1.52.1",
|
||||
"rev": "v1.53.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-NnB8deqIeiB66Kba9LWT62fyI23HL57VcsTickoTRwI="
|
||||
"vendorHash": "sha256-hVsqlWTZoYAMWMeismKhiqFxSFbkTBSIEMSLZx5stnQ="
|
||||
},
|
||||
"opentelekomcloud": {
|
||||
"hash": "sha256-ozaIQiYpo0M0yuFSk70kw3tPZbEhZjHkq1FzUKOZP4Q=",
|
||||
"hash": "sha256-3p5R8thq5iWaeAsvqoA03UK6hzVGi4DlEe3PHJBP3xA=",
|
||||
"homepage": "https://registry.terraform.io/providers/opentelekomcloud/opentelekomcloud",
|
||||
"owner": "opentelekomcloud",
|
||||
"repo": "terraform-provider-opentelekomcloud",
|
||||
"rev": "v1.35.10",
|
||||
"rev": "v1.35.11",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-cFZO7GSv2+FpSZcYNRbuRkX3DJ7m0JwW/TCPo41F800="
|
||||
"vendorHash": "sha256-MD3tywosRUbkzeXQA2yTHr3p8RJlzNZVbrlTesDHpMI="
|
||||
},
|
||||
"opsgenie": {
|
||||
"hash": "sha256-3iPprhDd9nnF9NnaGHp8rQ57rvA1jxZuSjIFsfGtEMU=",
|
||||
"hash": "sha256-IIQtbRKfLbJz5J/T/YzVWSivMeuyKO6iKlXmbrslpQo=",
|
||||
"homepage": "https://registry.terraform.io/providers/opsgenie/opsgenie",
|
||||
"owner": "opsgenie",
|
||||
"repo": "terraform-provider-opsgenie",
|
||||
"rev": "v0.6.32",
|
||||
"rev": "v0.6.34",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"ovh": {
|
||||
"hash": "sha256-FvWA1uS70sterPTSBMBclrMtNjxWPZPTgSuEdslUgvg=",
|
||||
"hash": "sha256-s8Tg1j47J0sj9Jt98mS4rFgtGl4uFIfdaQDNXOV8Bbg=",
|
||||
"homepage": "https://registry.terraform.io/providers/ovh/ovh",
|
||||
"owner": "ovh",
|
||||
"repo": "terraform-provider-ovh",
|
||||
"rev": "v0.34.0",
|
||||
"rev": "v0.35.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"pagerduty": {
|
||||
"hash": "sha256-h1yy/TfiqYgAmQ5A2vn3WFrgI70JDX7G/3289tfFTHc=",
|
||||
"hash": "sha256-4TplBhRU4k7ucDCsgWcqEok9tOADuZAwqOonAY+eLdY=",
|
||||
"homepage": "https://registry.terraform.io/providers/PagerDuty/pagerduty",
|
||||
"owner": "PagerDuty",
|
||||
"repo": "terraform-provider-pagerduty",
|
||||
"rev": "v3.0.2",
|
||||
"rev": "v3.1.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"pass": {
|
||||
"hash": "sha256-hFgNWw6ZmATo0bFZvJL9z/lJF506KsBewigGoFj67sM=",
|
||||
"hash": "sha256-QGcHOsyUINH4bqK14OEzNm4b7oMK/4hwN9SuKt4m6t8=",
|
||||
"homepage": "https://registry.terraform.io/providers/camptocamp/pass",
|
||||
"owner": "camptocamp",
|
||||
"repo": "terraform-provider-pass",
|
||||
"rev": "v2.0.0",
|
||||
"rev": "v2.1.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-sV6JPKzpA1+uoUBmdWpUSk70cl9ofQqr7USbK+4RVDs="
|
||||
"vendorHash": "sha256-LWyfkhyTr6xHtt8nCdqid/zKwGerYVxSEpqSe853S9w="
|
||||
},
|
||||
"postgresql": {
|
||||
"hash": "sha256-r1Im4bhAakBe0PoDTpiQWPfnoFBtMCrAyL7qBa1yTQc=",
|
||||
@ -944,13 +944,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"project": {
|
||||
"hash": "sha256-UO9GBBoOzA1stMq8naXWtxomme6CVdlngVCLQlbZDv0=",
|
||||
"hash": "sha256-bLzJT+ZyBtnehpiR02tyCcI5xOC2vJxBlYW1cLX7yqI=",
|
||||
"homepage": "https://registry.terraform.io/providers/jfrog/project",
|
||||
"owner": "jfrog",
|
||||
"repo": "terraform-provider-project",
|
||||
"rev": "v1.3.3",
|
||||
"rev": "v1.3.4",
|
||||
"spdx": "Apache-2.0",
|
||||
"vendorHash": "sha256-Tj+NefCIacwpPS9rNPPxV2lLeKsXJMZhf9Xo+Rzz6gI="
|
||||
"vendorHash": "sha256-ZDscj89bnLiubB+cxWjK1v9DXc5RX21pxfksJd6pQxk="
|
||||
},
|
||||
"proxmox": {
|
||||
"hash": "sha256-ikXLLNoAjrnGGGI3fHTKFXm8YwqNazE/U39JTjOBsW4=",
|
||||
@ -998,22 +998,22 @@
|
||||
"vendorHash": "sha256-dMT3PEYNu9NxwLmY5SHa79yeVSB8Pi3UBEHiGvGGVmU="
|
||||
},
|
||||
"rundeck": {
|
||||
"hash": "sha256-PVLehIrj4vleOtcpNcHfpk6NOKsmrF8FCJXILlru7Ss=",
|
||||
"hash": "sha256-VPkHnSOTnRvvX6+K0L0q5IqSSFCE6VPdg2BaSejFMNc=",
|
||||
"homepage": "https://registry.terraform.io/providers/rundeck/rundeck",
|
||||
"owner": "rundeck",
|
||||
"repo": "terraform-provider-rundeck",
|
||||
"rev": "v0.4.6",
|
||||
"rev": "v0.4.7",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"scaleway": {
|
||||
"hash": "sha256-Fx77O5FHRZAFGNojWUxPPhlJ+hv2XVvh4RVYnMt1WXQ=",
|
||||
"hash": "sha256-lOoxgWps6r4/7JhK0Z0Iz5EA2mHYNrdIgOntRqXFrH8=",
|
||||
"homepage": "https://registry.terraform.io/providers/scaleway/scaleway",
|
||||
"owner": "scaleway",
|
||||
"repo": "terraform-provider-scaleway",
|
||||
"rev": "v2.30.0",
|
||||
"rev": "v2.33.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-4fIFZRAx0Vkl7QK13Vp/QJN+WDtk40RsvGYm6wPnfAI="
|
||||
"vendorHash": "sha256-tly9+vClV/IGivNBY114lNXxnYjJVvhVAi1tEyCtIoo="
|
||||
},
|
||||
"secret": {
|
||||
"hash": "sha256-MmAnA/4SAPqLY/gYcJSTnEttQTsDd2kEdkQjQj6Bb+A=",
|
||||
@ -1070,13 +1070,13 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"snowflake": {
|
||||
"hash": "sha256-p2VN5M9OCEdA0olIx5HmB3g62sZVnJZEob40p8UgIXs=",
|
||||
"hash": "sha256-O5Nt+CcVppo5w4gD+NQ/XrRbkJicIzQrh5gffjPNvvw=",
|
||||
"homepage": "https://registry.terraform.io/providers/Snowflake-Labs/snowflake",
|
||||
"owner": "Snowflake-Labs",
|
||||
"repo": "terraform-provider-snowflake",
|
||||
"rev": "v0.74.0",
|
||||
"rev": "v0.75.0",
|
||||
"spdx": "MIT",
|
||||
"vendorHash": "sha256-lxjAtxY++tITodDbdxZorIzkJXKPHqO/UZqBr5IBNys="
|
||||
"vendorHash": "sha256-VD3zXfaa2fmq85a/k7LPbDVS1gA5xHC2F3Ojqpmt8MI="
|
||||
},
|
||||
"sops": {
|
||||
"hash": "sha256-ZastswL5AVurQY3xn6yx3M1BMvQ9RjfcZdXX0S/oZqw=",
|
||||
@ -1088,13 +1088,13 @@
|
||||
"vendorHash": "sha256-8W1PK4T98iK1N6EB6AVjvr1P9Ja51+kSOmYAEosxrh8="
|
||||
},
|
||||
"spotinst": {
|
||||
"hash": "sha256-banhAkXLg3iWH7/eiPodOreReqaDskmlCdNIPZYbM3E=",
|
||||
"hash": "sha256-mYLIOnWI1yzfmuKikDib4PIDLJulGBqvo2OkGmUt7fw=",
|
||||
"homepage": "https://registry.terraform.io/providers/spotinst/spotinst",
|
||||
"owner": "spotinst",
|
||||
"repo": "terraform-provider-spotinst",
|
||||
"rev": "v1.147.0",
|
||||
"rev": "v1.149.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-sr2VAFSc6VfLW0KNGQMxYuAITjFaWOQaJjIlaMYamS0="
|
||||
"vendorHash": "sha256-6UUXMcfyIiZWc7HSy3P8gc7i1L9cVjifwREfmw05Qco="
|
||||
},
|
||||
"stackpath": {
|
||||
"hash": "sha256-7KQUddq+M35WYyAIAL8sxBjAaXFcsczBRO1R5HURUZg=",
|
||||
@ -1142,22 +1142,22 @@
|
||||
"vendorHash": "sha256-0HRhwUGDE4y7UFlXyD0w8zl4NV5436L4SRhrb8vQGyc="
|
||||
},
|
||||
"tencentcloud": {
|
||||
"hash": "sha256-TJKLBMgxQXKhdKG7HCUFLWAtWCoZFla4CvSeN1a2k44=",
|
||||
"hash": "sha256-o9PY7kZAsF/bOkmIa0QKW2SabK0u56FtjMxmlKNROBg=",
|
||||
"homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud",
|
||||
"owner": "tencentcloudstack",
|
||||
"repo": "terraform-provider-tencentcloud",
|
||||
"rev": "v1.81.38",
|
||||
"rev": "v1.81.45",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"tfe": {
|
||||
"hash": "sha256-MTPtt87Kq3gOxF85Wwc6SWRy90+kK4BeHivAQTo32f8=",
|
||||
"hash": "sha256-HsoqWDwze/INB3KfQzwKKGbyKiU7xfsI4Bg/4/xFGr4=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/tfe",
|
||||
"owner": "hashicorp",
|
||||
"repo": "terraform-provider-tfe",
|
||||
"rev": "v0.49.2",
|
||||
"rev": "v0.50.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-PQanCxvb1sT5SSLNH4fKFwF8j5ycU+6Os63GZuyBUSo="
|
||||
"vendorHash": "sha256-D8ouBW20jzFi365gDgL2sRk2IERSgJN3PFb7e1Akl50="
|
||||
},
|
||||
"thunder": {
|
||||
"hash": "sha256-wS50I4iTnHq0rDUoz7tQXpqW84wugQQiw42xhzxFiRw=",
|
||||
@ -1215,23 +1215,23 @@
|
||||
"vendorHash": null
|
||||
},
|
||||
"utils": {
|
||||
"hash": "sha256-YkEklRSjAvBzySfc4nmmOaDmzcQlW9uAtoJMMHOqJEQ=",
|
||||
"hash": "sha256-WbJy1lwEX6RCYxZydCJ+0U/mJB4NoYiUg9+zf8Mxnwk=",
|
||||
"homepage": "https://registry.terraform.io/providers/cloudposse/utils",
|
||||
"owner": "cloudposse",
|
||||
"repo": "terraform-provider-utils",
|
||||
"rev": "1.12.0",
|
||||
"rev": "1.14.0",
|
||||
"spdx": "Apache-2.0",
|
||||
"vendorHash": "sha256-aMN25qa67m2Z8ZdMqtob0rj70Oy+E8bXEiRVb1HmGOk="
|
||||
"vendorHash": "sha256-vFfwa8DfmiHpbBbXPNovPC7SFoXRjyHRwOVqBcWCEtI="
|
||||
},
|
||||
"vault": {
|
||||
"hash": "sha256-HWEPeIhYCdM6m1hEuX5ozZFl5yRlND0heF+sl+uaNHM=",
|
||||
"hash": "sha256-9SOHw46KChe7bGInsIIyy0pyNG3K7CXNEomHkmpt8d4=",
|
||||
"homepage": "https://registry.terraform.io/providers/hashicorp/vault",
|
||||
"owner": "hashicorp",
|
||||
"proxyVendor": true,
|
||||
"repo": "terraform-provider-vault",
|
||||
"rev": "v3.21.0",
|
||||
"rev": "v3.22.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-tas0801GM+E1yuMEFoFo8GfizeJaDwKfvK8TsCf/big="
|
||||
"vendorHash": "sha256-HvjbXSAkbTmADyWQaw0lZV3nZUEIYiAB3VahYvIQeb4="
|
||||
},
|
||||
"vcd": {
|
||||
"hash": "sha256-ltdkB9PqmuCs5daRjcThVhy1wIoDW21yBiwtRo/pMss=",
|
||||
@ -1261,11 +1261,11 @@
|
||||
"vendorHash": "sha256-OzcDMLWwnBYIkBcL6U1t9oCNhZZokBUf2TONb+OfgPE="
|
||||
},
|
||||
"vra7": {
|
||||
"hash": "sha256-AVN2WDVDAc11p0i/d8wb/AvITMStrtsIq+MqXWYdwL8=",
|
||||
"hash": "sha256-03qXrYDpmPc7gHELzjS5miLm5NPTrF0AV1sUSCM0/4o=",
|
||||
"homepage": "https://registry.terraform.io/providers/vmware/vra7",
|
||||
"owner": "vmware",
|
||||
"repo": "terraform-provider-vra7",
|
||||
"rev": "v3.0.10",
|
||||
"rev": "v3.0.11",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
@ -1279,30 +1279,30 @@
|
||||
"vendorHash": "sha256-4ulRYzb4bzk0TztT04CwqlnMGw8tp7YnoCm2/NqGN7Y="
|
||||
},
|
||||
"vultr": {
|
||||
"hash": "sha256-8pj+udTNTjT/tXggOaIOThRQkYoI3v68rEssSUojM2A=",
|
||||
"hash": "sha256-9HEuJXV6spLoLEVwdNid+MfVrBvrdUKjHWkDvQLSG+s=",
|
||||
"homepage": "https://registry.terraform.io/providers/vultr/vultr",
|
||||
"owner": "vultr",
|
||||
"repo": "terraform-provider-vultr",
|
||||
"rev": "v2.16.4",
|
||||
"rev": "v2.17.1",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": null
|
||||
},
|
||||
"wavefront": {
|
||||
"hash": "sha256-FvRrX8T9PDz5gJZuE9sARfa9ERaEFMk0vmX4xDcrbVY=",
|
||||
"hash": "sha256-yNNtOkodzwxKvHQq9GZlUicezGW6u2ih6ry/cOtJQGM=",
|
||||
"homepage": "https://registry.terraform.io/providers/vmware/wavefront",
|
||||
"owner": "vmware",
|
||||
"repo": "terraform-provider-wavefront",
|
||||
"rev": "v5.0.4",
|
||||
"rev": "v5.1.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-GuOdD1m3elBj9k7YfUYbyqJNzIwmZZ1O1lplpBUPH+g="
|
||||
"vendorHash": "sha256-GRnVhGpVgFI83Lg34Zv1xgV5Kp8ioKTFV5uaqS80ATg="
|
||||
},
|
||||
"yandex": {
|
||||
"hash": "sha256-t4NvehAHS0U9kPQsA6otAga9YQWZ0rJrm3YFi9SgKQY=",
|
||||
"hash": "sha256-QirLhOAvOcsMFR0ZWHCCI2wbfcD5hfHSlZ0bguvAHiI=",
|
||||
"homepage": "https://registry.terraform.io/providers/yandex-cloud/yandex",
|
||||
"owner": "yandex-cloud",
|
||||
"repo": "terraform-provider-yandex",
|
||||
"rev": "v0.100.0",
|
||||
"rev": "v0.102.0",
|
||||
"spdx": "MPL-2.0",
|
||||
"vendorHash": "sha256-2+VeNaTZK4K3jqcKnSfzqlIvfzJF9HFv04Z99ImCWT8="
|
||||
"vendorHash": "sha256-y8M50X2F4olM1I0i32uUd/FASY9wUnMOF5k4AEP6b9I="
|
||||
}
|
||||
}
|
||||
|
@ -2,18 +2,18 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "weave-gitops";
|
||||
version = "0.34.0";
|
||||
version = "0.35.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "weaveworks";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-W7Q5rsmNEDUGofQumbs9HaByQEb7sj4tOT7ZpIe98E4=";
|
||||
sha256 = "sha256-H/l/b6yPoNZeBG1TPc9PCBpZg4ETnF9FmYnbRmKl8c8=";
|
||||
};
|
||||
|
||||
ldflags = [ "-s" "-w" "-X github.com/weaveworks/weave-gitops/cmd/gitops/version.Version=${version}" ];
|
||||
|
||||
vendorHash = "sha256-+UxrhtwYP+ctn+y7IxKKLO5RVoiUSl4ky0xprXr98Jc=";
|
||||
vendorHash = "sha256-le34zvlgquxOv0xdOPfpf7/ZuoPd9MEfp8Gshigvtas=";
|
||||
|
||||
subPackages = [ "cmd/gitops" ];
|
||||
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gmailctl";
|
||||
version = "0.10.6";
|
||||
version = "0.10.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mbrt";
|
||||
repo = "gmailctl";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-OpRkBHNWRrBhh6nGrV7dZT01xsSlbANCk+g7b8SidG0=";
|
||||
hash = "sha256-OpRkBHNWRrBhh6nGrV7dZT01xsSlbANCk+g7b8SidG0=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-+r0WHrKARcxW1hUY1HwAXk0X6ZQrbgBj9+GjIJV5DS0=";
|
||||
|
@ -12,25 +12,25 @@ in {
|
||||
|
||||
guiStable = mkGui {
|
||||
channel = "stable";
|
||||
version = "2.2.43";
|
||||
hash = "sha256-+2dcyWnTJqGaH9yhknYc9/0gnj3qh80eAy6uxG7+fFM=";
|
||||
version = "2.2.44.1";
|
||||
hash = "sha256-Ae1Yij81/rhZOMMfLYaQKR4Dxx1gDGZBpBj0gLCSToI=";
|
||||
};
|
||||
|
||||
guiPreview = mkGui {
|
||||
channel = "stable";
|
||||
version = "2.2.43";
|
||||
hash = "sha256-+2dcyWnTJqGaH9yhknYc9/0gnj3qh80eAy6uxG7+fFM=";
|
||||
version = "2.2.44.1";
|
||||
hash = "sha256-Ae1Yij81/rhZOMMfLYaQKR4Dxx1gDGZBpBj0gLCSToI=";
|
||||
};
|
||||
|
||||
serverStable = mkServer {
|
||||
channel = "stable";
|
||||
version = "2.2.43";
|
||||
hash = "sha256-xWt2qzeqBtt86Wv3dYl4GXkfjr+7WAKn5HdDeUzOQd8=";
|
||||
version = "2.2.44.1";
|
||||
hash = "sha256-YtYXTEZj5009L8OU7jdhegYu5Xll3jZAW6NJFWOvxHQ=";
|
||||
};
|
||||
|
||||
serverPreview = mkServer {
|
||||
channel = "stable";
|
||||
version = "2.2.43";
|
||||
hash = "sha256-xWt2qzeqBtt86Wv3dYl4GXkfjr+7WAKn5HdDeUzOQd8=";
|
||||
version = "2.2.44.1";
|
||||
hash = "sha256-YtYXTEZj5009L8OU7jdhegYu5Xll3jZAW6NJFWOvxHQ=";
|
||||
};
|
||||
}
|
||||
|
@ -8,6 +8,8 @@
|
||||
, fetchFromGitHub
|
||||
, qt5
|
||||
, wrapQtAppsHook
|
||||
, testers
|
||||
, gns3-gui
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
@ -56,6 +58,11 @@ python3.pkgs.buildPythonApplication rec {
|
||||
export QT_QPA_PLATFORM=offscreen
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = gns3-gui;
|
||||
command = "${lib.getExe gns3-gui} --version";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Graphical Network Simulator 3 GUI (${channel} release)";
|
||||
longDescription = ''
|
||||
|
@ -8,6 +8,8 @@
|
||||
, fetchFromGitHub
|
||||
, pkgsStatic
|
||||
, stdenv
|
||||
, testers
|
||||
, gns3-server
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication {
|
||||
@ -32,7 +34,6 @@ python3.pkgs.buildPythonApplication {
|
||||
aiohttp-cors
|
||||
async-generator
|
||||
distro
|
||||
importlib-resources
|
||||
jinja2
|
||||
jsonschema
|
||||
multidict
|
||||
@ -45,6 +46,8 @@ python3.pkgs.buildPythonApplication {
|
||||
truststore
|
||||
yarl
|
||||
zipstream
|
||||
] ++ lib.optionals (pythonOlder "3.9") [
|
||||
importlib-resources
|
||||
];
|
||||
|
||||
postInstall = lib.optionalString (!stdenv.hostPlatform.isWindows) ''
|
||||
@ -72,6 +75,11 @@ python3.pkgs.buildPythonApplication {
|
||||
"--reruns 3"
|
||||
];
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = gns3-server;
|
||||
command = "${lib.getExe gns3-server} --version";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Graphical Network Simulator 3 server (${channel} release)";
|
||||
longDescription = ''
|
||||
@ -84,5 +92,6 @@ python3.pkgs.buildPythonApplication {
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ anthonyroussel ];
|
||||
mainProgram = "gns3server";
|
||||
};
|
||||
}
|
||||
|
@ -5,11 +5,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "alfaview";
|
||||
version = "9.4.0";
|
||||
version = "9.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://assets.alfaview.com/stable/linux/deb/${pname}_${version}.deb";
|
||||
sha256 = "sha256-bOK6QP9uLMJP9pgts4EyvW0WIKqcfhtvb1heG629Q38=";
|
||||
hash = "sha256-UQg7yGKdjZWrJpPAaHpPz9aQuxLvuRDXeQaOg7WorwE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -76,6 +76,7 @@ stdenv.mkDerivation rec {
|
||||
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ wolfangaukang hexchen ];
|
||||
mainProgram = "alfaview";
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
|
@ -15,6 +15,8 @@
|
||||
, sqlcipher
|
||||
, stdenv
|
||||
, CoreServices
|
||||
, testers
|
||||
, deltachat-desktop
|
||||
}:
|
||||
|
||||
let
|
||||
@ -33,16 +35,16 @@ let
|
||||
in
|
||||
buildNpmPackage rec {
|
||||
pname = "deltachat-desktop";
|
||||
version = "unstable-2023-11-03";
|
||||
version = "1.41.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "deltachat";
|
||||
repo = "deltachat-desktop";
|
||||
rev = "40152e9543eb773fc27e7a4f96ef1eecebe9310e";
|
||||
hash = "sha256-9GPXFUCu9GKa/bJgO8CIPMLccI6WAJ6PhfoyJ6s/DHE=";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ITcBIm47OiGy/i6jnG6r1OoStjRPystOts6ViLioLNY=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-g3nkgqZNoq+xuwXbXLHEMVpHH6Sq3792xhITCx7WvOc=";
|
||||
npmDepsHash = "sha256-+t6m2kDUOh6kIkbZgol/CQciDTxUZSkTr1amPywrMb4=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
@ -116,6 +118,12 @@ buildNpmPackage rec {
|
||||
];
|
||||
});
|
||||
|
||||
passthru.tests = {
|
||||
version = testers.testVersion {
|
||||
package = deltachat-desktop;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Email-based instant messaging for Desktop";
|
||||
homepage = "https://github.com/deltachat/deltachat-desktop";
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
(if stdenv.isDarwin then darwin.apple_sdk_11_0.llvmPackages_14.stdenv else stdenv).mkDerivation rec {
|
||||
pname = "signalbackup-tools";
|
||||
version = "20231107-1";
|
||||
version = "20231114";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bepaald";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-5JF/cU2yz1TDKUSAiZJ5LQfvsGSQtuww543O03gkZ+Y=";
|
||||
hash = "sha256-5ZDHAv8le1MLS394fto4Rg19J/b2QkZZ70Sn0Yap/hs=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -19,18 +19,18 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "teams-for-linux";
|
||||
version = "1.3.18";
|
||||
version = "1.3.19";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "IsmaelMartinez";
|
||||
repo = "teams-for-linux";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-evOwjHUmeGw8AUpXSig8zVW2cpJbWkNTH/RUuNipFsQ=";
|
||||
hash = "sha256-+n26VTNRymPdzMbSz8AZsQ73xOHizOFAstw6toKfZQM=";
|
||||
};
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
yarnLock = "${finalAttrs.src}/yarn.lock";
|
||||
hash = "sha256-tMC8/qHYli7+OTdxVWRDEyCNzrkYA+zKlHJXlTsl+W0=";
|
||||
hash = "sha256-SxUdTzk8WngkKwT05U8HJsK8+8ezcJWdiT/ettxpeEE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ yarn fixup_yarn_lock nodejs copyDesktopItems makeWrapper ];
|
||||
@ -102,7 +102,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
description = "Unofficial Microsoft Teams client for Linux";
|
||||
homepage = "https://github.com/IsmaelMartinez/teams-for-linux";
|
||||
license = lib.licenses.gpl3Only;
|
||||
maintainers = with lib.maintainers; [ muscaln lilyinstarlight qjoly ];
|
||||
maintainers = with lib.maintainers; [ muscaln lilyinstarlight qjoly chvp ];
|
||||
platforms = lib.platforms.unix;
|
||||
broken = stdenv.isDarwin;
|
||||
};
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "picard-tools";
|
||||
version = "3.1.0";
|
||||
version = "3.1.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
|
||||
sha256 = "sha256-6nnKYnml6BjLb6aKNHbd55nH6gP/5Somo8poxx7yhVk=";
|
||||
sha256 = "sha256-FcefUf0KwAEEn53XubrB2991ncsCMKicf20fJG6LurQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
@ -4,13 +4,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "verilator";
|
||||
version = "5.016";
|
||||
version = "5.018";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-MVQbAZXSIdzX7+yKbSrFLLd0j6dfLSXpES3uu6bcPt8=";
|
||||
hash = "sha256-f06UzNw2MQ5me03EPrVFhkwxKum/GLDzQbDNTBsJMJs=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "eprover";
|
||||
version = "2.6";
|
||||
version = "3.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_${version}/E.tgz";
|
||||
sha256 = "sha256-qh896qIpFR5g1gdWAwGkbNJLBqUQCeCpuoYHHkDXPt0=";
|
||||
sha256 = "sha256-RJ2uc/GIWU/fDJijSzYS8GdL7zUkeExOLWXtTbi8ZLk=";
|
||||
};
|
||||
|
||||
buildInputs = [ which ];
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gh";
|
||||
version = "2.39.0";
|
||||
version = "2.39.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cli";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-cBdP514ZW7iSMzecGFCgiXz3bGZZ1LzxnVpEd9b4Dy0=";
|
||||
hash = "sha256-OvelaxyQNeh6h7wn4Z/vRicufOoxrTdmnWl9hKW00jU=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-RFForZy/MktbrNrcpp9G6VCB7A98liJvCxS0Yb16sMc=";
|
||||
|
@ -13,14 +13,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "pijul";
|
||||
version = "1.0.0-beta.6";
|
||||
version = "1.0.0-beta.7";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit version pname;
|
||||
hash = "sha256-1cIb4QsDYlOCGrQrLgEwIjjHZ3WwD2o0o0bF+OOqEtI=";
|
||||
hash = "sha256-BXDz9po8i937/xYoIW4S/FddtcWxSmtRUWYIphgh060=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-mRi0NUETTdYE/oM+Jo7gW/zNby8dPAKl6XhzP0Qzsf0=";
|
||||
cargoHash = "sha256-+KF1G4bDfcjHHzZR93lIR8muO6s3j5jDobr3A7Arr+Q=";
|
||||
|
||||
doCheck = false;
|
||||
nativeBuildInputs = [ installShellFiles pkg-config ];
|
||||
|
@ -1,4 +1,6 @@
|
||||
{ python3
|
||||
{ lib
|
||||
, stdenv
|
||||
, python3
|
||||
, callPackage
|
||||
, recurseIntoAttrs
|
||||
, nixosTests
|
||||
@ -35,7 +37,9 @@ let
|
||||
hash = "sha256-aRO4JH2KKS74MVFipRkx4rQM6RaB8bbxj2lwRSAMSjA=";
|
||||
};
|
||||
nativeCheckInputs = with super; [ pytestCheckHook mock ];
|
||||
disabledTestPaths = [];
|
||||
disabledTestPaths = []
|
||||
# Disable incompatible tests on Darwin.
|
||||
++ lib.optionals stdenv.isDarwin [ "test/aaa_profiling" ];
|
||||
});
|
||||
|
||||
flask-sqlalchemy = super.flask-sqlalchemy.overridePythonAttrs (oldAttrs: rec {
|
||||
|
@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "obs-vaapi";
|
||||
version = "0.4.0";
|
||||
version = "0.4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fzwoch";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-AbSI6HBdOEI54bUVqqF+b4LcCyzW30XlS9SXX2ajkas=";
|
||||
hash = "sha256-PpGNLIOz+fCpcP/nvjcJ+1fkduxjcbZjb7yx8TUO25s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config meson ninja ];
|
||||
|
@ -48,7 +48,7 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
meta = with lib; {
|
||||
description = "A secure virtual machine monitor for KVM";
|
||||
homepage = "https://chromium.googlesource.com/crosvm/crosvm/";
|
||||
homepage = "https://crosvm.dev/";
|
||||
mainProgram = "crosvm";
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
license = licenses.bsd3;
|
||||
|
@ -1,6 +1,6 @@
|
||||
{ lib, fetchFromGitHub, python3, intltool, file, wrapGAppsHook, gtk-vnc
|
||||
, vte, avahi, dconf, gobject-introspection, libvirt-glib, system-libvirt
|
||||
, gsettings-desktop-schemas, libosinfo, gnome, gtksourceview4, docutils, cpio
|
||||
, gsettings-desktop-schemas, gst_all_1, libosinfo, gnome, gtksourceview4, docutils, cpio
|
||||
, e2fsprogs, findutils, gzip, cdrtools, xorriso, fetchpatch
|
||||
, desktopToDarwinBundle, stdenv
|
||||
, spiceSupport ? true, spice-gtk ? null
|
||||
@ -21,10 +21,12 @@ python3.pkgs.buildPythonApplication rec {
|
||||
intltool file
|
||||
gobject-introspection # for setup hook populating GI_TYPELIB_PATH
|
||||
docutils
|
||||
wrapGAppsHook
|
||||
] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle;
|
||||
|
||||
buildInputs = [
|
||||
wrapGAppsHook
|
||||
gst_all_1.gst-plugins-base
|
||||
gst_all_1.gst-plugins-good
|
||||
libvirt-glib vte dconf gtk-vnc gnome.adwaita-icon-theme avahi
|
||||
gsettings-desktop-schemas libosinfo gtksourceview4
|
||||
] ++ lib.optional spiceSupport spice-gtk;
|
||||
|
@ -1,62 +0,0 @@
|
||||
{ lib, stdenv, fetchFromGitHub, rust, rustPlatform
|
||||
, cargo, just, pkg-config, util-linuxMinimal
|
||||
, dbus, glib, libxkbcommon, pulseaudio, wayland
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "cosmic-applets";
|
||||
version = "unstable-2023-10-04";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = "cosmic-applets";
|
||||
rev = "fefaea9b63548b1baa5e64521b860234ee46339a";
|
||||
hash = "sha256-I+18NCKLH/3QajYpZRPYmCUxkbptAjuEHfKtnZVOlH4=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"accesskit-0.11.0" = "sha256-/6KUCH1CwMHd5YEMOpAdVeAxpjl9JvrzDA4Xnbd1D9k=";
|
||||
"cosmic-client-toolkit-0.1.0" = "sha256-pVWK+dODQxNej5jWyb5wX/insoiXkX8NFBDkDEejVV0=";
|
||||
"cosmic-config-0.1.0" = "sha256-pUDuRHX46fbcPw19s5DEsPyJdb/Bem/lJg+3NEO/WX0=";
|
||||
"cosmic-dbus-networkmanager-0.1.0" = "sha256-eWqB+zRCfJYdrcPE8Ey+WgzPBJltN0zRiutzgdtWsDA=";
|
||||
"cosmic-notifications-config-0.1.0" = "sha256-KnPQdrMpzA05v4bt0Fz9fbcKdC0cSU60Hv7wqrthIaw=";
|
||||
"cosmic-panel-config-0.1.0" = "sha256-H3QuiP7Og69wm9yCX/uoSG0aQ3B/61q9Sdj+rW4KZMU=";
|
||||
"cosmic-time-0.3.0" = "sha256-JiTwbJSml8azelBr6b3cBvJsuAL1hmHtuHx2TJupEzE=";
|
||||
"smithay-client-toolkit-0.17.0" = "sha256-v3FxzDypxSfbEU50+oDoqrGWPm+S+kDZQq//3Q4DDRU=";
|
||||
"softbuffer-0.2.0" = "sha256-VD2GmxC58z7Qfu/L+sfENE+T8L40mvUKKSfgLmCTmjY=";
|
||||
"xdg-shell-wrapper-config-0.1.0" = "sha256-Otxp8D5dNZl70K1ZIBswGj6K5soGVbVim7gutUHkBvw=";
|
||||
};
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace justfile --replace '#!/usr/bin/env' "#!$(command -v env)"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ just pkg-config util-linuxMinimal ];
|
||||
buildInputs = [ dbus glib libxkbcommon pulseaudio wayland ];
|
||||
|
||||
dontUseJustBuild = true;
|
||||
|
||||
justFlags = [
|
||||
"--set" "prefix" (placeholder "out")
|
||||
"--set" "target" "${rust.lib.toRustTargetSpecShort stdenv.hostPlatform}/release"
|
||||
];
|
||||
|
||||
# Force linking to libwayland-client, which is always dlopen()ed.
|
||||
"CARGO_TARGET_${rust.toRustTargetForUseInEnvVars stdenv.hostPlatform}_RUSTFLAGS" =
|
||||
map (a: "-C link-arg=${a}") [
|
||||
"-Wl,--push-state,--no-as-needed"
|
||||
"-lwayland-client"
|
||||
"-Wl,--pop-state"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/pop-os/cosmic-applets";
|
||||
description = "Applets for the COSMIC Desktop Environment";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ qyliss ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
37
pkgs/by-name/bl/bluetility/package.nix
Normal file
37
pkgs/by-name/bl/bluetility/package.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchurl
|
||||
, unzip
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "bluetility";
|
||||
version = "1.5.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/jnross/Bluetility/releases/download/${finalAttrs.version}/Bluetility.app.zip";
|
||||
hash = "sha256-Batnv06nXXxvUz+DlrH1MpeL4f5kNSPDH6Iqd/UiFbw=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/Applications
|
||||
unzip -d $out/Applications $src
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Bluetooth Low Energy browse";
|
||||
homepage = "https://github.com/jnross/Bluetility";
|
||||
license = licenses.mit;
|
||||
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
||||
maintainers = with maintainers; [ emilytrau Enzime ];
|
||||
platforms = platforms.darwin;
|
||||
};
|
||||
})
|
File diff suppressed because it is too large
Load Diff
73
pkgs/by-name/co/cosmic-applets/package.nix
Normal file
73
pkgs/by-name/co/cosmic-applets/package.nix
Normal file
@ -0,0 +1,73 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, rust
|
||||
, rustPlatform
|
||||
, just
|
||||
, pkg-config
|
||||
, util-linuxMinimal
|
||||
, dbus
|
||||
, glib
|
||||
, libxkbcommon
|
||||
, pulseaudio
|
||||
, wayland
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "cosmic-applets";
|
||||
version = "unstable-2023-11-13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = "cosmic-applets";
|
||||
rev = "21fc43e5781a7fbe7e7f39a0b68963dc8c2d486d";
|
||||
hash = "sha256-WOUlYIh4a8qQhga4weKcuJYxNL5fa4FzNFuRB1T32oU=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"accesskit-0.11.0" = "sha256-xVhe6adUb8VmwIKKjHxwCwOo5Y1p3Or3ylcJJdLDrrE=";
|
||||
"cosmic-client-toolkit-0.1.0" = "sha256-st46wmOncJvu0kj6qaot6LT/ojmW/BwXbbGf8s0mdZ8=";
|
||||
"cosmic-config-0.1.0" = "sha256-6g/Om3SFLa+3fu2dkifbXbFP3ksXTbsjb6Xu7tDB570=";
|
||||
"cosmic-dbus-networkmanager-0.1.0" = "sha256-eSUyDME39UhoimO/gd2mJDaunCrLNXesO9C69IwtjgM=";
|
||||
"cosmic-notifications-config-0.1.0" = "sha256-QsLlm+jxsmc90Jc73qKgi52PVZoSwuGXDXw+iSJTALw=";
|
||||
"cosmic-panel-config-0.1.0" = "sha256-uUq+xElZMcG5SWzha9/8COaenycII5aiXmm7sXGgjXE=";
|
||||
"cosmic-time-0.3.0" = "sha256-Vx9MrdnAwqDCnA6WgT/cXxs4NDWvAVZ6hv0FXi2A8t4=";
|
||||
"smithay-client-toolkit-0.18.0" = "sha256-9NwNrEC+csTVtmXrNQFvOgohTGUO2VCvqOME7SnDCOg=";
|
||||
"softbuffer-0.2.0" = "sha256-VD2GmxC58z7Qfu/L+sfENE+T8L40mvUKKSfgLmCTmjY=";
|
||||
"taffy-0.3.11" = "sha256-0hXOEj6IjSW8e1t+rvxBFX6V9XRum3QO2Des1XlHJEw=";
|
||||
"xdg-shell-wrapper-config-0.1.0" = "sha256-3Dc2fU8xBVUmAs0Q1zEdcdG7vlxpBO+UIlyM/kzGcC4=";
|
||||
};
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace justfile --replace '#!/usr/bin/env' "#!$(command -v env)"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ just pkg-config util-linuxMinimal ];
|
||||
buildInputs = [ dbus glib libxkbcommon pulseaudio wayland ];
|
||||
|
||||
dontUseJustBuild = true;
|
||||
|
||||
justFlags = [
|
||||
"--set" "prefix" (placeholder "out")
|
||||
"--set" "target" "${rust.lib.toRustTargetSpecShort stdenv.hostPlatform}/release"
|
||||
];
|
||||
|
||||
# Force linking to libwayland-client, which is always dlopen()ed.
|
||||
"CARGO_TARGET_${rust.toRustTargetForUseInEnvVars stdenv.hostPlatform}_RUSTFLAGS" =
|
||||
map (a: "-C link-arg=${a}") [
|
||||
"-Wl,--push-state,--no-as-needed"
|
||||
"-lwayland-client"
|
||||
"-Wl,--pop-state"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/pop-os/cosmic-applets";
|
||||
description = "Applets for the COSMIC Desktop Environment";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ qyliss nyanbinary ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
23
pkgs/by-name/ln/lngen/package.nix
Normal file
23
pkgs/by-name/ln/lngen/package.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ lib
|
||||
, haskellPackages
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
haskellPackages.mkDerivation {
|
||||
pname = "lngen";
|
||||
version = "unstable-2023-10-17";
|
||||
src = fetchFromGitHub {
|
||||
owner = "plclub";
|
||||
repo = "lngen";
|
||||
rev = "c7645001404e0e2fec2c56f128e30079b5b3fac6";
|
||||
hash = "sha256-2vUYHtl9yAadwdTtsjTI0klP+nRSYGXVpaSwD9EBTTI=";
|
||||
};
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = with haskellPackages; [ base syb parsec containers mtl ];
|
||||
executableHaskellDepends = with haskellPackages; [ base ];
|
||||
homepage = "https://github.com/plclub/lngen";
|
||||
description = "Tool for generating Locally Nameless definitions and proofs in Coq, working together with Ott";
|
||||
maintainers = with lib.maintainers; [ chen ];
|
||||
license = lib.licenses.mit;
|
||||
}
|
@ -1,17 +1,21 @@
|
||||
{ lib, maven, fetchFromGitHub }:
|
||||
{ lib
|
||||
, maven
|
||||
, fetchFromGitHub
|
||||
, nix-update-script
|
||||
}:
|
||||
|
||||
maven.buildMavenPackage rec {
|
||||
pname = "mariadb-connector-java";
|
||||
version = "3.2.0";
|
||||
version = "3.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mariadb-corporation";
|
||||
repo = "mariadb-connector-j";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-ssh6v2h/Ikl2Ulim6lSJ45avjKSCh3Vmtg+LPOgONRU=";
|
||||
hash = "sha256-JuMm01ihgVoKpe8wyuUIDyzSxMODRg7dQpTCyVA/K10=";
|
||||
};
|
||||
|
||||
mvnHash = "sha256-MizBoFlpYxwwcU7rOac1h2VPJoXv3eRQgWRgsTh8Xno=";
|
||||
mvnHash = "sha256-Px4Qxb1tTvRKZum1xfe0mdX+EyimnyyfzrydiaDaYRo=";
|
||||
|
||||
# Disable tests because they require networking
|
||||
mvnParameters = "-DskipTests";
|
||||
@ -22,6 +26,8 @@ maven.buildMavenPackage rec {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "MariaDB Connector/J is used to connect applications developed in Java to MariaDB and MySQL databases";
|
||||
homepage = "https://mariadb.com/kb/en/about-mariadb-connector-j/";
|
||||
|
30
pkgs/by-name/ni/nix-search-cli/package.nix
Normal file
30
pkgs/by-name/ni/nix-search-cli/package.nix
Normal file
@ -0,0 +1,30 @@
|
||||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
, unstableGitUpdater
|
||||
}:
|
||||
|
||||
buildGoModule {
|
||||
pname = "nix-search-cli";
|
||||
version = "unstable-2023-09-12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "peterldowns";
|
||||
repo = "nix-search-cli";
|
||||
rev = "f3f1c53c72dadac06472a7112aeb486ab5dda695";
|
||||
hash = "sha256-YM1Lf7py79rU8aJE0PfQaMr5JWx5J1covUf1aCjRkc8=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-JDOu7YdX9ztMZt0EFAMz++gD7n+Mn1VOe5g6XwrgS5M=";
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "CLI for searching packages on search.nixos.org";
|
||||
homepage = "https://github.com/peterldowns/nix-search-cli";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ donovanglover ];
|
||||
platforms = platforms.all;
|
||||
mainProgram = "nix-search";
|
||||
};
|
||||
}
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "quicktype";
|
||||
version = "23.0.75"; # version from https://npm.im/quicktype
|
||||
version = "23.0.78"; # version from https://npm.im/quicktype
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "quicktype";
|
||||
repo = "quicktype";
|
||||
rev = "9b570a73a896306778940c793c0037a38815304a"; # version not tagged
|
||||
hash = "sha256-boCBgIoM2GECipZTJlp9IaeXT24aR8tawS1X8CFDDqw=";
|
||||
rev = "317deefa6a0c8ba0201b9b2b50d00c7e93c41d78"; # version not tagged
|
||||
hash = "sha256-KkyxS3mxOmUA8ZpB0tqdpdafvP429R5Y39C3CszTiZk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
53
pkgs/by-name/rt/rtl-sdr-osmocom/package.nix
Normal file
53
pkgs/by-name/rt/rtl-sdr-osmocom/package.nix
Normal file
@ -0,0 +1,53 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitea
|
||||
, cmake
|
||||
, pkg-config
|
||||
, libusb1
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rtl-sdr-osmocom";
|
||||
version = "2.0.1";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "gitea.osmocom.org";
|
||||
owner = "sdr";
|
||||
repo = "rtl-sdr";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-+RYSCn+wAkb9e7NRI5kLY8a6OXtJu7QcSUht1R6wDX0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace '/etc/udev/rules.d' "$out/etc/udev/rules.d" \
|
||||
--replace "VERSION_INFO_PATCH_VERSION git" "VERSION_INFO_PATCH_VERSION ${lib.versions.patch version}"
|
||||
|
||||
substituteInPlace rtl-sdr.rules \
|
||||
--replace 'MODE:="0666"' 'ENV{ID_SOFTWARE_RADIO}="1", MODE="0660", GROUP="plugdev"'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ pkg-config cmake ];
|
||||
|
||||
propagatedBuildInputs = [ libusb1 ];
|
||||
|
||||
cmakeFlags = lib.optionals stdenv.isLinux [
|
||||
"-DINSTALL_UDEV_RULES=ON"
|
||||
"-DWITH_RPC=ON"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Software to turn the RTL2832U into a SDR receiver";
|
||||
longDescription = ''
|
||||
This packages the rtl-sdr library by the Osmocom project. This is the upstream codebase of the unsuffixed "rtl-sdr" package, which is a downstream fork. A list of differences can be found here:
|
||||
https://github.com/librtlsdr/librtlsdr/blob/master/README_improvements.md
|
||||
|
||||
The Osmocom upstream has a regular release schedule, so this package will likely support newer SDR dongles. It should be compatible with most software that currently depends on the "rtl-sdr" nixpkg, but comptabiliy should be manually confirmed.
|
||||
'';
|
||||
homepage = "https://gitea.osmocom.org/sdr/rtl-sdr";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ skovati ];
|
||||
platforms = platforms.unix;
|
||||
mainProgram = "rtl_sdr";
|
||||
};
|
||||
}
|
@ -5,13 +5,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "seclists";
|
||||
version = "2023.2";
|
||||
version = "2023.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "danielmiessler";
|
||||
repo = "SecLists";
|
||||
rev = "2023.2";
|
||||
hash = "sha256-yVxb5GaQDuCsyjIV+oZzNUEFoq6gMPeaIeQviwGdAgY=";
|
||||
rev = "2023.3";
|
||||
hash = "sha256-mJgCzp8iKzSWf4Tud5xDpnuY4aNJmnEo/hTcuGTaOWM=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -17,13 +17,13 @@
|
||||
assert lib.elem lineEditingLibrary [ "isocline" "readline" ];
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "trealla";
|
||||
version = "2.29.36";
|
||||
version = "2.30.7";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "trealla-prolog";
|
||||
repo = "trealla";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-tQp2DOBW71Wm1aQqspW9tuH8aM8ir+ilZiENdElB/+0=";
|
||||
hash = "sha256-W0hcIeWbgORWBYuNbVJRA8NNnuBEG8HMLeVBxXtd2VQ=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -16,13 +16,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "uuu";
|
||||
version = "1.5.125";
|
||||
version = "1.5.141";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nxp-imx";
|
||||
repo = "mfgtools";
|
||||
rev = "uuu_${finalAttrs.version}";
|
||||
hash = "sha256-f9Nt303xXZzLSu3GtOEpyaL91WVFUmKO7mxi8UNX3go=";
|
||||
hash = "sha256-N5L6k2oVXfnER7JRoX0JtzgEhb/vFMexu7hUKQhmcoE=";
|
||||
};
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tau-hydrogen";
|
||||
version = "1.0.13";
|
||||
version = "1.0.14";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tau-OS";
|
||||
repo = "tau-hydrogen";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-rfgSNytPCVCkAJ9N3kRw9mfcXr+JEqy1jyyDgXqxtsM=";
|
||||
hash = "sha256-8awcowBm0hwoYYm/wtKeqCWRhgXh2rI3UvAlL1tbj6c=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -16,7 +16,7 @@ mkCoqDerivation {
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (isGe "8.16") (isGe "2.0") ]; out = "1.3.1"; }
|
||||
{ cases = [ (isGe "8.16") "2.0.0" ]; out = "1.3.0"; }
|
||||
{ cases = [ (isGe "8.11") (range "1.12" "1.17") ]; out = "1.2.5"; }
|
||||
{ cases = [ (isGe "8.11") (range "1.12" "1.18") ]; out = "1.2.5"; }
|
||||
{ cases = [ (isGe "8.11") (range "1.11" "1.14") ]; out = "1.2.4"; }
|
||||
{ cases = [ (isLe "8.13") (lib.pred.inter (isGe "1.11.0") (isLt "1.13")) ]; out = "1.2.3"; }
|
||||
] null;
|
||||
|
@ -6,7 +6,8 @@ mkCoqDerivation {
|
||||
owner = "gappa";
|
||||
domain = "gitlab.inria.fr";
|
||||
inherit version;
|
||||
defaultVersion = if lib.versions.range "8.8" "8.17" coq.coq-version then "1.5.3" else null;
|
||||
defaultVersion = if lib.versions.range "8.8" "8.18" coq.coq-version then "1.5.4" else null;
|
||||
release."1.5.4".sha256 = "sha256-9PlkXqCu4rbFD7qnMF1GSpPCVmwJ3r593RfAvkJbbdA=";
|
||||
release."1.5.3".sha256 = "sha256-SuMopX5sm4jh2uBuE7zr6vhWhHYZYnab+epjqYJqg+s=";
|
||||
release."1.5.2".sha256 = "sha256-A021Bhqz5r2CZBayfjIiWrCIfUlejcQAfbTmOaf6QTM=";
|
||||
release."1.5.1".sha256 = "1806bq1z6q5rq2ma7d5kfbqfyfr755hjg0dq7b2llry8fx9cxjsg";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, mkCoqDerivation, coq, mathcomp-algebra, mathcomp-finmap, mathcomp-fingroup
|
||||
{ lib, mkCoqDerivation, coq, mathcomp, mathcomp-finmap
|
||||
, fourcolor, hierarchy-builder, version ? null }:
|
||||
|
||||
mkCoqDerivation {
|
||||
@ -6,16 +6,20 @@ mkCoqDerivation {
|
||||
|
||||
release."0.9".sha256 = "sha256-Hl3JS9YERD8QQziXqZ9DqLHKp63RKI9HxoFYWSkJQZI=";
|
||||
release."0.9.1".sha256 = "sha256-lRRY+501x+DqNeItBnbwYIqWLDksinWIY4x/iojRNYU=";
|
||||
release."0.9.2".sha256 = "sha256-DPYCZS8CzkfgpR+lmYhV2v20ezMtyWp8hdWpuh0OOQU=";
|
||||
release."0.9.3".sha256 = "sha256-9WX3gsw+4btJLqcGg2W+7Qy+jaZtkfw7vCp8sXYmaWw=";
|
||||
|
||||
releaseRev = v: "v${v}";
|
||||
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch coq.coq-version [
|
||||
{ case = range "8.14" "8.16"; out = "0.9.1"; }
|
||||
{ case = range "8.12" "8.12"; out = "0.9"; }
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.coq-version mathcomp.version ] [
|
||||
{ cases = [ (isGe "8.16") (range "2.0.0" "2.1.0") ]; out = "0.9.3"; }
|
||||
{ cases = [ (range "8.14" "8.18") (range "1.13.0" "1.18.0") ]; out = "0.9.2"; }
|
||||
{ cases = [ (range "8.14" "8.16") (range "1.13.0" "1.14.0") ]; out = "0.9.1"; }
|
||||
{ cases = [ (range "8.12" "8.13") (range "1.12.0" "1.14.0") ]; out = "0.9"; }
|
||||
] null;
|
||||
|
||||
propagatedBuildInputs = [ mathcomp-algebra mathcomp-finmap mathcomp-fingroup fourcolor hierarchy-builder ];
|
||||
propagatedBuildInputs = [ mathcomp.algebra mathcomp-finmap mathcomp.fingroup fourcolor hierarchy-builder ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Library of formalized graph theory results in Coq";
|
||||
|
@ -9,6 +9,8 @@ let
|
||||
repo = "analysis";
|
||||
owner = "math-comp";
|
||||
|
||||
release."0.6.6".sha256 = "sha256-tWtv6yeB5/vzwpKZINK9OQ0yQsvD8qu9zVSNHvLMX5Y=";
|
||||
release."0.6.5".sha256 = "sha256-oJk9/Jl1SWra2aFAXRAVfX7ZUaDfajqdDksYaW8dv8E=";
|
||||
release."0.6.1".sha256 = "sha256-1VyNXu11/pDMuH4DmFYSUF/qZ4Bo+/Zl3Y0JkyrH/r0=";
|
||||
release."0.6.0".sha256 = "sha256-0msICcIrK6jbOSiBu0gIVU3RHwoEEvB88CMQqW/06rg=";
|
||||
release."0.5.3".sha256 = "sha256-1NjFsi5TITF8ZWx1NyppRmi8g6YaoUtTdS9bU/sUe5k=";
|
||||
@ -24,7 +26,9 @@ let
|
||||
release."0.2.3".sha256 = "0p9mr8g1qma6h10qf7014dv98ln90dfkwn76ynagpww7qap8s966";
|
||||
|
||||
defaultVersion = with versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (isGe "8.14") (isGe "1.13.0") ]; out = "0.6.1"; }
|
||||
{ cases = [ (isGe "8.17") (range "1.15.0" "1.18.0") ]; out = "0.6.6"; }
|
||||
{ cases = [ (isGe "8.14") (range "1.15.0" "1.17.0") ]; out = "0.6.5"; }
|
||||
{ cases = [ (isGe "8.14") (range "1.13.0" "1.16.0") ]; out = "0.6.1"; }
|
||||
{ cases = [ (isGe "8.14") (range "1.13" "1.15") ]; out = "0.5.2"; }
|
||||
{ cases = [ (range "8.13" "8.15") (range "1.13" "1.14") ]; out = "0.5.1"; }
|
||||
{ cases = [ (range "8.13" "8.15") (range "1.12" "1.14") ]; out = "0.3.13"; }
|
||||
|
@ -8,7 +8,7 @@ mkCoqDerivation {
|
||||
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (range "8.13" "8.16") (isGe "1.12.0") ]; out = "1.0.2"; }
|
||||
{ cases = [ (range "8.13" "8.16") (range "1.12.0" "1.17.0") ]; out = "1.0.2"; }
|
||||
] null;
|
||||
|
||||
release."1.0.2".sha256 = "sha256-llxyMKYvWUA7fyroG1S/jtpioAoArmarR1edi3cikcY=";
|
||||
|
@ -8,7 +8,7 @@ mkCoqDerivation {
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (range "8.16" "8.18") (isGe "2.0") ]; out = "2.0.0"; }
|
||||
{ cases = [ (range "8.13" "8.18") (range "1.12" "1.17") ]; out = "1.5.2"; }
|
||||
{ cases = [ (range "8.13" "8.18") (range "1.12" "1.18") ]; out = "1.5.2"; }
|
||||
{ cases = [ (isGe "8.10") (range "1.11" "1.17") ]; out = "1.5.1"; }
|
||||
{ cases = [ (range "8.7" "8.11") "1.11.0" ]; out = "1.5.0"; }
|
||||
{ cases = [ (isEq "8.11") (range "1.8" "1.10") ]; out = "1.4.0+coq-8.11"; }
|
||||
|
@ -7,7 +7,7 @@ mkCoqDerivation {
|
||||
inherit version;
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp-analysis.version] [
|
||||
{ cases = [ (isGe "8.17") (isGe "0.6.0") ]; out = "0.5.2"; }
|
||||
{ cases = [ (range "8.15" "8.16") (range "0.5.4" "0.6.2") ]; out = "0.5.1"; }
|
||||
{ cases = [ (range "8.15" "8.16") (range "0.5.4" "0.6.5") ]; out = "0.5.1"; }
|
||||
] null;
|
||||
release."0.5.1".sha256 = "sha256-yBBl5l+V+dggsg5KM59Yo9CULKog/xxE8vrW+ZRnX7Y=";
|
||||
release."0.5.2".sha256 = "sha256-8WAnAV53c0pMTdwj8XcUDUkLZbpUgIQbEOgOb63uHQA=";
|
||||
|
@ -10,7 +10,7 @@ mkCoqDerivation rec {
|
||||
defaultVersion = with lib.versions;
|
||||
lib.switch [ coq.coq-version mathcomp-algebra.version ] [
|
||||
{ cases = [ (range "8.16" "8.18") (isGe "2.0.0") ]; out = "1.5.0+2.0+8.16"; }
|
||||
{ cases = [ (range "8.13" "8.18") (range "1.12" "1.17.0") ]; out = "1.3.0+1.12+8.13"; }
|
||||
{ cases = [ (range "8.13" "8.18") (range "1.12" "1.18.0") ]; out = "1.3.0+1.12+8.13"; }
|
||||
{ cases = [ (range "8.13" "8.16") (range "1.12" "1.17.0") ]; out = "1.1.0+1.12+8.13"; }
|
||||
] null;
|
||||
|
||||
|
@ -19,7 +19,8 @@ let
|
||||
owner = "math-comp";
|
||||
withDoc = single && (args.withDoc or false);
|
||||
defaultVersion = with versions; lib.switch coq.coq-version [
|
||||
{ case = isGe "8.15"; out = "1.17.0"; }
|
||||
{ case = isGe "8.17"; out = "1.18.0"; }
|
||||
{ case = range "8.15" "8.18"; out = "1.17.0"; }
|
||||
{ case = range "8.16" "8.18"; out = "2.1.0"; }
|
||||
{ case = range "8.16" "8.18"; out = "2.0.0"; }
|
||||
{ case = range "8.13" "8.18"; out = "1.16.0"; }
|
||||
@ -37,6 +38,7 @@ let
|
||||
release = {
|
||||
"2.1.0".sha256 = "sha256-XDLx0BIkVRkSJ4sGCIE51j3rtkSGemNTs/cdVmTvxqo=";
|
||||
"2.0.0".sha256 = "sha256-dpOmrHYUXBBS9kmmz7puzufxlbNpIZofpcTvJFLG5DI=";
|
||||
"1.18.0".sha256 = "sha256-mJJ/zvM2WtmBZU3U4oid/zCMvDXei/93v5hwyyqwiiY=";
|
||||
"1.17.0".sha256 = "sha256-bUfoSTMiW/GzC1jKFay6DRqGzKPuLOSUsO6/wPSFwNg=";
|
||||
"1.16.0".sha256 = "sha256-gXTKhRgSGeRBUnwdDezMsMKbOvxdffT+kViZ9e1gEz0=";
|
||||
"1.15.0".sha256 = "1bp0jxl35ms54s0mdqky15w9af03f3i0n06qk12k4gw1xzvwqv21";
|
||||
|
@ -11,7 +11,7 @@
|
||||
defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [
|
||||
{ cases = [ (isGe "8.16") (isGe "2.1.0") ]; out = "2.1.0"; }
|
||||
{ cases = [ (isGe "8.16") "2.0.0" ]; out = "2.0.0"; }
|
||||
{ cases = [ (isGe "8.15") (range "1.15.0" "1.17.0") ]; out = "1.6.0"; }
|
||||
{ cases = [ (isGe "8.15") (range "1.15.0" "1.18.0") ]; out = "1.6.0"; }
|
||||
{ cases = [ (isGe "8.10") (range "1.13.0" "1.17.0") ]; out = "1.5.6"; }
|
||||
{ cases = [ (range "8.10" "8.16") (range "1.12.0" "1.15.0") ]; out = "1.5.5"; }
|
||||
{ cases = [ (range "8.10" "8.12") "1.12.0" ]; out = "1.5.3"; }
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "zuo";
|
||||
version = "unstable-2023-10-17";
|
||||
version = "unstable-2023-11-10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "racket";
|
||||
repo = "zuo";
|
||||
rev = "493e9cd08147add01bba9247f36759f095b87678";
|
||||
hash = "sha256-gsCjB3V+A0kMZJZ9onZ57R6b1Ha0K+Q383DQoVGfY7I=";
|
||||
rev = "9e2aa26b0574b4ac53c838f6b59fd78f952c3923";
|
||||
hash = "sha256-wF+jj4+4uFofW9KhVqRF7EoWViRny2KuSfX/l6UN+yY=";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
415
pkgs/development/libraries/libdeltachat/Cargo.lock
generated
415
pkgs/development/libraries/libdeltachat/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -30,13 +30,13 @@ let
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "libdeltachat";
|
||||
version = "1.128.0";
|
||||
version = "1.131.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "deltachat";
|
||||
repo = "deltachat-core-rust";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-kujPkKKobn4/J0rCdZfnlNZzGM0SUVtOWOhyDawYiqw=";
|
||||
hash = "sha256-JXSZrlekvPVGKR+ritxk3Eru2DhtUN9UBtqUZ7G9/gg=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -100,4 +100,9 @@ in {
|
||||
version = "3.7.3";
|
||||
hash = "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM=";
|
||||
};
|
||||
|
||||
libressl_3_8 = generic {
|
||||
version = "3.8.2";
|
||||
hash = "sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ=";
|
||||
};
|
||||
}
|
||||
|
@ -155,16 +155,12 @@ stdenv.mkDerivation rec {
|
||||
src/storage/storage_backend_disk.c \
|
||||
src/storage/storage_util.c
|
||||
'' + lib.optionalString isDarwin ''
|
||||
sed -i '/qemucapabilitiestest/d' tests/meson.build
|
||||
sed -i '/vircryptotest/d' tests/meson.build
|
||||
sed -i '/domaincapstest/d' tests/meson.build
|
||||
# Darwin doesn’t support -fsemantic-interposition, but the problem doesn’t seem to affect Mach-O.
|
||||
# See https://gitlab.com/libvirt/libvirt/-/merge_requests/235
|
||||
sed -i "s/not supported_cc_flags.contains('-fsemantic-interposition')/false/" meson.build
|
||||
sed -i '/qemufirmwaretest/d' tests/meson.build
|
||||
sed -i '/qemuvhostusertest/d' tests/meson.build
|
||||
sed -i '/qemuxml2xmltest/d' tests/meson.build
|
||||
'' + lib.optionalString (isDarwin && isx86_64) ''
|
||||
sed -i '/qemucaps2xmltest/d' tests/meson.build
|
||||
sed -i '/qemuhotplugtest/d' tests/meson.build
|
||||
sed -i '/virnetdaemontest/d' tests/meson.build
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
|
@ -1,28 +1,22 @@
|
||||
{ lib, fetchzip, stdenv, ocaml, findlib, ocamlbuild }:
|
||||
{ lib, fetchFromGitHub, buildDunePackage }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-getopt";
|
||||
version = "20120615";
|
||||
buildDunePackage rec {
|
||||
pname = "getopt";
|
||||
version = "20230213";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://download.ocamlcore.org/ocaml-getopt/ocaml-getopt/${version}/ocaml-getopt-${version}.tar.gz";
|
||||
sha256 = "0bng2mmdixpmj23xn8krlnaq66k22iclwz46r8zjrsrq3wcn1xgn";
|
||||
minimalOCamlVersion = "4.07";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "scemama";
|
||||
repo = "ocaml-getopt";
|
||||
rev = version;
|
||||
hash = "sha256-oYDm945LgjIW+8x7UrO4FlbHywnu8480aiEVvnjBxc8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
doCheck = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
inherit (ocaml.meta) platforms;
|
||||
homepage = "https://github.com/gildor478/ocaml-getopt";
|
||||
homepage = "https://github.com/scemama/ocaml-getopt";
|
||||
description = "Parsing of command line arguments (similar to GNU GetOpt) for OCaml";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.ulrikstrid ];
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ailment";
|
||||
version = "9.2.76";
|
||||
version = "9.2.77";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-RIYGWPvQ2n+NgZHw2pGEvgWAtbpb/rdyb6/K4JClRxM=";
|
||||
hash = "sha256-Bff44LSWdoXrijTAjnlsaN5iqDbHjfmYqe0FR4dmZxU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -22,7 +22,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "aioesphomeapi";
|
||||
version = "18.4.0";
|
||||
version = "18.4.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -31,7 +31,7 @@ buildPythonPackage rec {
|
||||
owner = "esphome";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-jSPoVMtGRtqpDFagjvLTxps5plcN92Mp9vjtQlmqyGg=";
|
||||
hash = "sha256-o1Yv4/wSM2k+L2/JP3teUj129QlyLjoShCRWJ3lIN98=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -32,7 +32,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "angr";
|
||||
version = "9.2.76";
|
||||
version = "9.2.77";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -41,7 +41,7 @@ buildPythonPackage rec {
|
||||
owner = "angr";
|
||||
repo = "angr";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-B3oYh0okbIeEvBjBHvY29QTqPyR2TTzLmz6fMsIRcs0=";
|
||||
hash = "sha256-EslJnwgZUUN+EtyjGi/7a4Upr2/vbfNXpkc7I+/ZrU8=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -21,7 +21,7 @@
|
||||
|
||||
let
|
||||
pname = "ansible";
|
||||
version = "8.4.0";
|
||||
version = "8.6.0";
|
||||
in
|
||||
buildPythonPackage {
|
||||
inherit pname version;
|
||||
@ -31,7 +31,7 @@ buildPythonPackage {
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-8zxJJpBZL60SaE6Yl/beLaFcn24ey3kTdwOgZHCvLOY=";
|
||||
hash = "sha256-lfTlkydNWdU/NvYiB1NbfScq3CcBrHoO169qbYFjemA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "appthreat-vulnerability-db";
|
||||
version = "5.5.1";
|
||||
version = "5.5.2";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -26,7 +26,7 @@ buildPythonPackage rec {
|
||||
owner = "AppThreat";
|
||||
repo = "vulnerability-db";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-URDVNuUrxWoQjeNRPrSJz8aiEozn5BzRTvhqc4bihA0=";
|
||||
hash = "sha256-ioFTayuPkxXIaaKKVHBLyU47jID6dGWCX1G9kVkD5Yo=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "archinfo";
|
||||
version = "9.2.76";
|
||||
version = "9.2.77";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
||||
owner = "angr";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-g1qlcaSByXhF+6ffxwbV/0tXFdmLySH3TcDuok4y6xw=";
|
||||
hash = "sha256-uTkPDhk4Ugyb9HV/0PMwWpuNajpzfTn1dg7gsQnc/zg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -8,8 +8,8 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "argcomplete";
|
||||
version = "3.1.2";
|
||||
format = "pyproject";
|
||||
version = "3.1.6";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
owner = "kislyuk";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-vKXHmCcZZTjVBwQZWtyRjJT4tTuIiK5Qos9yJT/mpag=";
|
||||
hash = "sha256-Akwa6dsf8w/Sw0ydUrqKEP5+dzHYX4hS8vcl7Gw4ePc=";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||
@ -35,9 +35,10 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Bash tab completion for argparse";
|
||||
homepage = "https://kislyuk.github.io/argcomplete/";
|
||||
changelog = "https://github.com/kislyuk/argcomplete/blob/v${version}/Changes.rst";
|
||||
description = "Bash tab completion for argparse";
|
||||
downloadPage = "https://github.com/kislyuk/argcomplete";
|
||||
homepage = "https://kislyuk.github.io/argcomplete/";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ womfoo ];
|
||||
};
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "claripy";
|
||||
version = "9.2.76";
|
||||
version = "9.2.77";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "angr";
|
||||
repo = "claripy";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-BwhM5J+20ZvP0d+9TAqy0AgRuPU6XoLKgM88WJdf3Qg=";
|
||||
hash = "sha256-YLa70xxLDyOOKQg/PzFO90JzS5SyvgcJ2+Nltz0q6T8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -16,14 +16,14 @@
|
||||
|
||||
let
|
||||
# The binaries are following the argr projects release cycle
|
||||
version = "9.2.76";
|
||||
version = "9.2.77";
|
||||
|
||||
# Binary files from https://github.com/angr/binaries (only used for testing and only here)
|
||||
binaries = fetchFromGitHub {
|
||||
owner = "angr";
|
||||
repo = "binaries";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-01Y4UKTkaO6bYtVTvv4KFzkEdj4qKiWKaC80/iKa/Eg=";
|
||||
hash = "sha256-YPxdKwR+pq0S1B9GltE8r3bFWDPpCU8OQ05w+kp4lAs=";
|
||||
};
|
||||
|
||||
in
|
||||
@ -38,7 +38,7 @@ buildPythonPackage rec {
|
||||
owner = "angr";
|
||||
repo = "cle";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-uMT9LvDkXl3SueR80pgGJRkWbymDRmGEn8HV93K/VNc=";
|
||||
hash = "sha256-tdfV+DoDcRO+8TjiBc0u1huA+etF4MY5uYj670lqudY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dramatiq";
|
||||
version = "1.14.2";
|
||||
version = "1.15.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -23,8 +23,8 @@ buildPythonPackage rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "Bogdanp";
|
||||
repo = "dramatiq";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-yv6HUJI7wsAQdBJ5QNv7qXhtzPvCsrF1389kyemAV7Y=";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-uhradhLIyfHf1meAr7ChuGnvm62mX/lkQQ2Pe7hBWtY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -50,6 +50,14 @@ let
|
||||
libpq = "${postgresql.lib}/lib/libpq${stdenv.hostPlatform.extensions.sharedLibrary}";
|
||||
libc = "${stdenv.cc.libc}/lib/libc.so.6";
|
||||
})
|
||||
|
||||
# https://github.com/psycopg/psycopg/pull/669
|
||||
# mark some tests as timing remove on next version update
|
||||
(fetchpatch {
|
||||
name = "mark_tests_as_timing.patch";
|
||||
url = "https://github.com/psycopg/psycopg/commit/00a3c640dd836328ba15931b400b012171f648c2.patch";
|
||||
hash = "sha256-DoVZv1yy9gHOKl0AdVLir+C+UztJZVjboLhS5af2944=";
|
||||
})
|
||||
];
|
||||
|
||||
baseMeta = {
|
||||
|
@ -1,10 +1,13 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchPypi
|
||||
, fetchFromGitHub
|
||||
, buildPythonPackage
|
||||
, setuptools
|
||||
, pkg-config
|
||||
, swig
|
||||
, pcsclite
|
||||
, PCSC
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
let
|
||||
@ -15,28 +18,45 @@ in
|
||||
buildPythonPackage rec {
|
||||
version = "2.0.7";
|
||||
pname = "pyscard";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-J4BUUl+nX76LEEYNh+3NA6cK2U1oixE0Xkc5mH+Fwb8=";
|
||||
src = fetchFromGitHub {
|
||||
owner = "LudovicRousseau";
|
||||
repo = "pyscard";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-nkDI1OPQ4SsNhWkg53ZTsG7j0+mvpkJI7dsyaOl1a/8=";
|
||||
};
|
||||
|
||||
postPatch = if withApplePCSC then ''
|
||||
substituteInPlace smartcard/scard/winscarddll.c \
|
||||
--replace "/System/Library/Frameworks/PCSC.framework/PCSC" \
|
||||
"${PCSC}/Library/Frameworks/PCSC.framework/PCSC"
|
||||
'' else ''
|
||||
substituteInPlace smartcard/scard/winscarddll.c \
|
||||
--replace "libpcsclite.so.1" \
|
||||
"${lib.getLib pcsclite}/lib/libpcsclite${stdenv.hostPlatform.extensions.sharedLibrary}"
|
||||
nativeBuildInputs = [
|
||||
setuptools
|
||||
swig
|
||||
] ++ lib.optionals (!withApplePCSC) [
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = if withApplePCSC then [ PCSC ] else [ pcsclite ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
postPatch =
|
||||
if withApplePCSC then ''
|
||||
substituteInPlace smartcard/scard/winscarddll.c \
|
||||
--replace "/System/Library/Frameworks/PCSC.framework/PCSC" \
|
||||
"${PCSC}/Library/Frameworks/PCSC.framework/PCSC"
|
||||
'' else ''
|
||||
substituteInPlace setup.py --replace "pkg-config" "$PKG_CONFIG"
|
||||
substituteInPlace smartcard/scard/winscarddll.c \
|
||||
--replace "libpcsclite.so.1" \
|
||||
"${lib.getLib pcsclite}/lib/libpcsclite${stdenv.hostPlatform.extensions.sharedLibrary}"
|
||||
'';
|
||||
|
||||
preCheck = ''
|
||||
# remove src module, so tests use the installed module instead
|
||||
rm -r smartcard
|
||||
'';
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString (! withApplePCSC)
|
||||
"-I ${lib.getDev pcsclite}/include/PCSC";
|
||||
|
||||
propagatedBuildInputs = if withApplePCSC then [ PCSC ] else [ pcsclite ];
|
||||
nativeBuildInputs = [ swig ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://pyscard.sourceforge.io/";
|
||||
description = "Smartcard library for python";
|
||||
|
@ -13,14 +13,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyvex";
|
||||
version = "9.2.76";
|
||||
version = "9.2.77";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-JlwqxKJaJ3sk2mROUOaF0N5d4V7LM43VqEXnuSO45BY=";
|
||||
hash = "sha256-kVMhzdTYwra8G/4gg1G853vUr7YHxxt/zXus/SXMkXc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "rns";
|
||||
version = "0.6.7";
|
||||
version = "0.6.8";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
||||
owner = "markqvist";
|
||||
repo = "Reticulum";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-u5GMCM9HyrblGbmIvfDWTfIAV8Zpn8tF0oOaolFtQMk=";
|
||||
hash = "sha256-MDD0Vs5XIWqxKHbrAa0vXJRd8uYZDlr//hP1NBf4b7U=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -20,7 +20,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "slack-sdk";
|
||||
version = "3.23.0";
|
||||
version = "3.23.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
@ -29,7 +29,7 @@ buildPythonPackage rec {
|
||||
owner = "slackapi";
|
||||
repo = "python-slack-sdk";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-OsPwLOnmN3kvPmbM6lOaiTWwWvy7b9pgn1X536dCkWk=";
|
||||
hash = "sha256-lqB4eljM/JLyvVHeT7LnYgjG3AP3i9le2IxUI31aK6o=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -11,16 +11,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sphinxext-opengraph";
|
||||
version = "0.8.2";
|
||||
version = "0.9.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wpilibsuite";
|
||||
repo = "sphinxext-opengraph";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-SrZTtVzEp4E87fzisWKHl8iRP49PWt5kkJq62CqXrBc=";
|
||||
hash = "sha256-ZLIxbFgayG+WVvSXu74eZJ/PbSHg6dzkkIr1OBry4DE=";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = version;
|
||||
@ -29,15 +29,20 @@ buildPythonPackage rec {
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
passthru.optional-dependencies = {
|
||||
social_cards_generation = [
|
||||
matplotlib
|
||||
];
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
sphinx
|
||||
matplotlib
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
beautifulsoup4
|
||||
];
|
||||
] ++ passthru.optional-dependencies.social_cards_generation;
|
||||
|
||||
pythonImportsCheck = [ "sphinxext.opengraph" ];
|
||||
|
||||
|
@ -17,7 +17,7 @@ buildPythonPackage rec {
|
||||
owner = "python-versioneer";
|
||||
repo = "python-versioneer";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-seYT/v691QB0LUzeI4MraegbNILU3tLO//9UbZIfe+A=";
|
||||
hash = "sha256-3b7Wfhd24Vym5XCeN/M1832Q1VzvlWi3quTRaZrID2s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
let
|
||||
pname = "altair";
|
||||
version = "5.2.5";
|
||||
version = "5.2.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/imolorhe/altair/releases/download/v${version}/altair_${version}_x86_64_linux.AppImage";
|
||||
sha256 = "sha256-KpAfPZqDfbf3LLBhTZ/rFftGf42onJnFMvnO2jzxqmo=";
|
||||
sha256 = "sha256-SNXUARAu4szX7otyAKy3F/piNhxlPVNN6Dj2UwevL8A=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extract { inherit pname version src; };
|
||||
|
@ -5,14 +5,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "checkov";
|
||||
version = "3.0.32";
|
||||
version = "3.0.36";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bridgecrewio";
|
||||
repo = "checkov";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-YOZ7F/bxbnBh3mhiFL3cMMAc3qeOMab48LcvYeJgfrg=";
|
||||
hash = "sha256-MrzCqR1+IJAv81fbuaNygGejRF4EzIZWPutL5qLluhU=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -6,14 +6,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "codespell";
|
||||
version = "2.2.5";
|
||||
version = "2.2.6";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "codespell-project";
|
||||
repo = "codespell";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Cu1bbLzVOAvPNzTavaMUfW2SCnQHc9mOM+IHAgVHhT4=";
|
||||
sha256 = "sha256-esewCJw4o4SfSst5ALZ90X3XgOuOAsaxytpotvFeHB0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -1,24 +1,23 @@
|
||||
{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
|
||||
{ lib, buildGoModule, fetchFromGitHub, installShellFiles, testers, atlas }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "atlas";
|
||||
version = "0.14.1";
|
||||
version = "0.15.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ariga";
|
||||
repo = "atlas";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-dOqL/9sJUbaHqF3N5PEL7f6LxQQWNL0FvaH5BxQp4Xg=";
|
||||
hash = "sha256-qEui+Y7auNFJwLSUT90jJH7IPgNW06phbJel9y3C1bk=";
|
||||
};
|
||||
|
||||
modRoot = "cmd/atlas";
|
||||
|
||||
vendorHash = "sha256-1Hhl2TzJWWXk4du9nbJTPXdYuss4TWfUIOw2DaAJQis=";
|
||||
proxyVendor = true;
|
||||
vendorHash = "sha256-BJB+ZwrfZsYlyVX0G3qNQW8KexxMmc1Y9m2TRbOX6Tc=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
env.GOWORK = "off";
|
||||
|
||||
ldflags = [ "-s" "-w" "-X ariga.io/atlas/cmd/atlas/internal/cmdapi.version=v${version}" ];
|
||||
|
||||
subPackages = [ "." ];
|
||||
@ -30,6 +29,12 @@ buildGoModule rec {
|
||||
--zsh <($out/bin/atlas completion zsh)
|
||||
'';
|
||||
|
||||
passthru.tests.version = testers.testVersion {
|
||||
package = atlas;
|
||||
command = "atlas version";
|
||||
version = "v${version}";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "A modern tool for managing database schemas";
|
||||
homepage = "https://atlasgo.io/";
|
||||
|
@ -4,13 +4,13 @@
|
||||
}:
|
||||
buildGoModule rec {
|
||||
pname = "litestream";
|
||||
version = "0.3.12";
|
||||
version = "0.3.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "benbjohnson";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-uao8I3b38JZWpO5iM+qvV4CDxWg1ueYm7BoaW/+FOkA=";
|
||||
sha256 = "sha256-p858gK+ICKDQ+/LUiBaxF/kfrZzQAXnYMZDFU8kNCJ4=";
|
||||
};
|
||||
|
||||
ldflags = [
|
||||
|
@ -23,13 +23,13 @@
|
||||
|
||||
let
|
||||
pname = "devpod";
|
||||
version = "0.4.1";
|
||||
version = "0.4.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "loft-sh";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-8ED74Cqq2fw+TpkJyipxlBpKq60ScZinlPj0hEX13/0=";
|
||||
sha256 = "sha256-e9sa9LniG5fj3S+x9T91v6ILPI0CD2y3QnZxXcKy6Ik=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -2,15 +2,15 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "ginkgo";
|
||||
version = "2.13.0";
|
||||
version = "2.13.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "onsi";
|
||||
repo = "ginkgo";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-N+O8qjSOBv7UVcFZ4BOUFoj+qfN0d2rBHO7d8FBtayY=";
|
||||
sha256 = "sha256-r2tAYH8E1j/gC+IRwcOv0Frcgd2RKEZjVzmuzOOhR7A=";
|
||||
};
|
||||
vendorHash = "sha256-wUpWvq6iiS9HkCi4ztXLNs1nCgAomyUo8YaFcElnfeI=";
|
||||
vendorHash = "sha256-5dEKb+KnUZTxSSoaOH1GpqMmYdLcXKMs2nq0SvR2pUs=";
|
||||
|
||||
# integration tests expect more file changes
|
||||
# types tests are missing CodeLocation
|
||||
|
@ -147,7 +147,7 @@ stdenv.mkDerivation rec {
|
||||
description = "Free and Open Source 2D and 3D game engine";
|
||||
license = licenses.mit;
|
||||
platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
|
||||
maintainers = with maintainers; [ twey shiryel ];
|
||||
maintainers = with maintainers; [ shiryel ];
|
||||
mainProgram = "godot4";
|
||||
};
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user