Compare commits
22 Commits
fprind-fix
...
d0d4ccba18
| Author | SHA1 | Date | |
|---|---|---|---|
|
d0d4ccba18
|
|||
|
627351c281
|
|||
|
9a46fc5fcc
|
|||
|
3e1ad83834
|
|||
|
80e35518d8
|
|||
|
6e22524aa0
|
|||
|
7a11543022
|
|||
|
2060c2cff4
|
|||
|
|
3cb3b8cbb9 | ||
|
|
bc523b9dca | ||
|
26c0d43810
|
|||
|
e2f1205406
|
|||
|
def9f283c0
|
|||
|
6c4ec59312
|
|||
|
fee1bd9071
|
|||
|
cf655bca9e
|
|||
|
36aca9d780
|
|||
|
248451e9b5
|
|||
|
2f1d790aac
|
|||
|
2705a6e47f
|
|||
|
f3bd223637
|
|||
|
ae25a545c0
|
@@ -702,6 +702,7 @@
|
|||||||
./services/misc/beanstalkd.nix
|
./services/misc/beanstalkd.nix
|
||||||
./services/misc/bees.nix
|
./services/misc/bees.nix
|
||||||
./services/misc/bepasty.nix
|
./services/misc/bepasty.nix
|
||||||
|
./services/misc/blenderfarm.nix
|
||||||
./services/misc/calibre-server.nix
|
./services/misc/calibre-server.nix
|
||||||
./services/misc/canto-daemon.nix
|
./services/misc/canto-daemon.nix
|
||||||
./services/misc/cfdyndns.nix
|
./services/misc/cfdyndns.nix
|
||||||
|
|||||||
141
nixos/modules/services/misc/blenderfarm.nix
Normal file
141
nixos/modules/services/misc/blenderfarm.nix
Normal file
@@ -0,0 +1,141 @@
|
|||||||
|
{ config
|
||||||
|
, lib
|
||||||
|
, pkgs
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
cfg = config.services.blenderfarm;
|
||||||
|
json = pkgs.formats.json { };
|
||||||
|
configFile = json.generate "ServerSettings" (defaultConfig // cfg.serverConfig);
|
||||||
|
defaultConfig = {
|
||||||
|
Port = 15000;
|
||||||
|
BroadcastPort = 16342;
|
||||||
|
BypassScriptUpdate = false;
|
||||||
|
BasicSecurityPassword = null;
|
||||||
|
};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
meta.maintainers = with lib.maintainers; [ gador ];
|
||||||
|
|
||||||
|
options.services.blenderfarm = with lib.types; {
|
||||||
|
enable = lib.mkEnableOption "Blenderfarm, a render farm management software for Blender.";
|
||||||
|
package = lib.mkPackageOption pkgs "blenderfarm" { };
|
||||||
|
openFirewall = lib.mkEnableOption "Allow blenderfarm network access through the firewall.";
|
||||||
|
|
||||||
|
user = lib.mkOption {
|
||||||
|
description = "User under which blenderfarm runs.";
|
||||||
|
default = "blenderfarm";
|
||||||
|
type = str;
|
||||||
|
};
|
||||||
|
|
||||||
|
group = lib.mkOption {
|
||||||
|
description = "Group under which blenderfarm runs.";
|
||||||
|
default = "blenderfarm";
|
||||||
|
type = str;
|
||||||
|
};
|
||||||
|
|
||||||
|
basicSecurityPasswordFile = lib.mkOption {
|
||||||
|
description = ''Path to the password file the client needs to connect to the server.
|
||||||
|
The password must not contain a forward slash.'';
|
||||||
|
default = null;
|
||||||
|
type = nullOr str;
|
||||||
|
};
|
||||||
|
|
||||||
|
blenderPackage = lib.mkPackageOption pkgs "blender" { };
|
||||||
|
|
||||||
|
serverConfig = lib.mkOption {
|
||||||
|
description = "Server configuration";
|
||||||
|
default = defaultConfig;
|
||||||
|
type = submodule {
|
||||||
|
freeformType = attrsOf anything;
|
||||||
|
options = {
|
||||||
|
Port = lib.mkOption {
|
||||||
|
description = "Default port blenderfarm server listens on.";
|
||||||
|
default = 15000;
|
||||||
|
type = types.port;
|
||||||
|
};
|
||||||
|
BroadcastPort = lib.mkOption {
|
||||||
|
description = "Default port blenderfarm server advertises itself on.";
|
||||||
|
default = 16342;
|
||||||
|
type = types.port;
|
||||||
|
};
|
||||||
|
|
||||||
|
BypassScriptUpdate = lib.mkOption {
|
||||||
|
description = "Prevents blenderfarm from replacing the .py self-generated scripts.";
|
||||||
|
default = false;
|
||||||
|
type = bool;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
networking.firewall = lib.optionalAttrs (cfg.openFirewall) {
|
||||||
|
allowedTCPPorts = [ cfg.serverConfig.Port ];
|
||||||
|
allowedUDPPorts = [ cfg.serverConfig.BroadcastPort ];
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.blenderfarm-server = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = [ "network-online.target" ];
|
||||||
|
wants = [ "network-online.target" ];
|
||||||
|
description = "blenderfarm server";
|
||||||
|
path = [ cfg.blenderPackage ];
|
||||||
|
preStart = ''
|
||||||
|
rm -f ServerSettings
|
||||||
|
install -m640 ${configFile} ServerSettings
|
||||||
|
if [ ! -d "BlenderData/nix-blender-linux64" ]; then
|
||||||
|
mkdir -p BlenderData/nix-blender-linux64
|
||||||
|
echo "nix-blender" > VersionCustom
|
||||||
|
fi
|
||||||
|
rm -f BlenderData/nix-blender-linux64/blender
|
||||||
|
ln -s ${lib.getExe cfg.blenderPackage} BlenderData/nix-blender-linux64/blender
|
||||||
|
'' +
|
||||||
|
lib.optionalString (cfg.basicSecurityPasswordFile != null) ''
|
||||||
|
BLENDERFARM_PASSWORD=$(${pkgs.systemd}/bin/systemd-creds cat BLENDERFARM_PASS_FILE)
|
||||||
|
sed -i "s/null/\"$BLENDERFARM_PASSWORD\"/g" ServerSettings
|
||||||
|
'';
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${cfg.package}/bin/LogicReinc.BlendFarm.Server";
|
||||||
|
DynamicUser = true;
|
||||||
|
LogsDirectory = "blenderfarm";
|
||||||
|
StateDirectory = "blenderfarm";
|
||||||
|
WorkingDirectory = "/var/lib/blenderfarm";
|
||||||
|
User = cfg.user;
|
||||||
|
Group = cfg.group;
|
||||||
|
StateDirectoryMode = "0755";
|
||||||
|
LoadCredential = lib.optional (cfg.basicSecurityPasswordFile != null) "BLENDERFARM_PASS_FILE:${cfg.basicSecurityPasswordFile}";
|
||||||
|
ReadWritePaths = "";
|
||||||
|
CapabilityBoundingSet = "";
|
||||||
|
RestrictAddressFamilies = [ "AF_UNIX" "AF_INET" "AF_INET6" ];
|
||||||
|
RestrictNamespaces = true;
|
||||||
|
PrivateDevices = true;
|
||||||
|
PrivateUsers = true;
|
||||||
|
ProtectClock = true;
|
||||||
|
ProtectControlGroups = true;
|
||||||
|
ProtectHome = true;
|
||||||
|
ProtectKernelLogs = true;
|
||||||
|
ProtectKernelModules = true;
|
||||||
|
ProtectKernelTunables = true;
|
||||||
|
SystemCallArchitectures = "native";
|
||||||
|
SystemCallFilter = [
|
||||||
|
"@system-service"
|
||||||
|
"~@privileged"
|
||||||
|
"@chown"
|
||||||
|
];
|
||||||
|
RestrictRealtime = true;
|
||||||
|
LockPersonality = true;
|
||||||
|
UMask = "0066";
|
||||||
|
ProtectHostname = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.blenderfarm = {
|
||||||
|
isSystemUser = true;
|
||||||
|
group = "blenderfarm";
|
||||||
|
};
|
||||||
|
users.groups.blenderfarm = { };
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,9 +1,31 @@
|
|||||||
{ config, lib, options, pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
options,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
inherit (lib) mkDefault mkEnableOption mkPackageOption mkForce mkIf mkMerge mkOption types;
|
inherit (lib)
|
||||||
inherit (lib) literalExpression mapAttrs optionalString versionAtLeast;
|
mkDefault
|
||||||
|
mkEnableOption
|
||||||
|
mkPackageOption
|
||||||
|
mkRenamedOptionModule
|
||||||
|
mkForce
|
||||||
|
mkIf
|
||||||
|
mkMerge
|
||||||
|
mkOption
|
||||||
|
types
|
||||||
|
;
|
||||||
|
inherit (lib)
|
||||||
|
literalExpression
|
||||||
|
mapAttrs
|
||||||
|
optionalString
|
||||||
|
optionals
|
||||||
|
versionAtLeast
|
||||||
|
;
|
||||||
|
|
||||||
cfg = config.services.zabbixWeb;
|
cfg = config.services.zabbixWeb;
|
||||||
opt = options.services.zabbixWeb;
|
opt = options.services.zabbixWeb;
|
||||||
@@ -17,13 +39,25 @@ let
|
|||||||
<?php
|
<?php
|
||||||
// Zabbix GUI configuration file.
|
// Zabbix GUI configuration file.
|
||||||
global $DB;
|
global $DB;
|
||||||
$DB['TYPE'] = '${ { mysql = "MYSQL"; pgsql = "POSTGRESQL"; oracle = "ORACLE"; }.${cfg.database.type} }';
|
$DB['TYPE'] = '${
|
||||||
|
{
|
||||||
|
mysql = "MYSQL";
|
||||||
|
pgsql = "POSTGRESQL";
|
||||||
|
oracle = "ORACLE";
|
||||||
|
}
|
||||||
|
.${cfg.database.type}
|
||||||
|
}';
|
||||||
$DB['SERVER'] = '${cfg.database.host}';
|
$DB['SERVER'] = '${cfg.database.host}';
|
||||||
$DB['PORT'] = '${toString cfg.database.port}';
|
$DB['PORT'] = '${toString cfg.database.port}';
|
||||||
$DB['DATABASE'] = '${cfg.database.name}';
|
$DB['DATABASE'] = '${cfg.database.name}';
|
||||||
$DB['USER'] = '${cfg.database.user}';
|
$DB['USER'] = '${cfg.database.user}';
|
||||||
# NOTE: file_get_contents adds newline at the end of returned string
|
# NOTE: file_get_contents adds newline at the end of returned string
|
||||||
$DB['PASSWORD'] = ${if cfg.database.passwordFile != null then "trim(file_get_contents('${cfg.database.passwordFile}'), \"\\r\\n\")" else "''"};
|
$DB['PASSWORD'] = ${
|
||||||
|
if cfg.database.passwordFile != null then
|
||||||
|
"trim(file_get_contents('${cfg.database.passwordFile}'), \"\\r\\n\")"
|
||||||
|
else
|
||||||
|
"''"
|
||||||
|
};
|
||||||
// Schema name. Used for IBM DB2 and PostgreSQL.
|
// Schema name. Used for IBM DB2 and PostgreSQL.
|
||||||
$DB['SCHEMA'] = ''';
|
$DB['SCHEMA'] = ''';
|
||||||
$ZBX_SERVER = '${cfg.server.address}';
|
$ZBX_SERVER = '${cfg.server.address}';
|
||||||
@@ -33,16 +67,32 @@ let
|
|||||||
|
|
||||||
${cfg.extraConfig}
|
${cfg.extraConfig}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
imports = [
|
||||||
|
(mkRenamedOptionModule
|
||||||
|
[
|
||||||
|
"services"
|
||||||
|
"zabbixWeb"
|
||||||
|
"virtualHost"
|
||||||
|
]
|
||||||
|
[
|
||||||
|
"services"
|
||||||
|
"zabbixWeb"
|
||||||
|
"HttpdVirtualHost"
|
||||||
|
]
|
||||||
|
)
|
||||||
|
];
|
||||||
# interface
|
# interface
|
||||||
|
|
||||||
options.services = {
|
options.services = {
|
||||||
zabbixWeb = {
|
zabbixWeb = {
|
||||||
enable = mkEnableOption "the Zabbix web interface";
|
enable = mkEnableOption "the Zabbix web interface";
|
||||||
|
|
||||||
package = mkPackageOption pkgs [ "zabbix" "web" ] { };
|
package = mkPackageOption pkgs [
|
||||||
|
"zabbix"
|
||||||
|
"web"
|
||||||
|
] { };
|
||||||
|
|
||||||
server = {
|
server = {
|
||||||
port = mkOption {
|
port = mkOption {
|
||||||
@@ -60,7 +110,11 @@ in
|
|||||||
|
|
||||||
database = {
|
database = {
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = types.enum [ "mysql" "pgsql" "oracle" ];
|
type = types.enum [
|
||||||
|
"mysql"
|
||||||
|
"pgsql"
|
||||||
|
"oracle"
|
||||||
|
];
|
||||||
example = "mysql";
|
example = "mysql";
|
||||||
default = "pgsql";
|
default = "pgsql";
|
||||||
description = "Database engine to use.";
|
description = "Database engine to use.";
|
||||||
@@ -75,9 +129,12 @@ in
|
|||||||
port = mkOption {
|
port = mkOption {
|
||||||
type = types.port;
|
type = types.port;
|
||||||
default =
|
default =
|
||||||
if cfg.database.type == "mysql" then config.services.mysql.port
|
if cfg.database.type == "mysql" then
|
||||||
else if cfg.database.type == "pgsql" then config.services.postgresql.settings.port
|
config.services.mysql.port
|
||||||
else 1521;
|
else if cfg.database.type == "pgsql" then
|
||||||
|
config.services.postgresql.settings.port
|
||||||
|
else
|
||||||
|
1521;
|
||||||
defaultText = literalExpression ''
|
defaultText = literalExpression ''
|
||||||
if config.${opt.database.type} == "mysql" then config.${options.services.mysql.port}
|
if config.${opt.database.type} == "mysql" then config.${options.services.mysql.port}
|
||||||
else if config.${opt.database.type} == "pgsql" then config.services.postgresql.settings.port
|
else if config.${opt.database.type} == "pgsql" then config.services.postgresql.settings.port
|
||||||
@@ -116,7 +173,17 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
virtualHost = mkOption {
|
frontend = mkOption {
|
||||||
|
type = types.enum [
|
||||||
|
"nginx"
|
||||||
|
"httpd"
|
||||||
|
];
|
||||||
|
example = "nginx";
|
||||||
|
default = "httpd";
|
||||||
|
description = "Frontend server to use.";
|
||||||
|
};
|
||||||
|
|
||||||
|
HttpdVirtualHost = mkOption {
|
||||||
type = types.submodule (import ../web-servers/apache-httpd/vhost-options.nix);
|
type = types.submodule (import ../web-servers/apache-httpd/vhost-options.nix);
|
||||||
example = literalExpression ''
|
example = literalExpression ''
|
||||||
{
|
{
|
||||||
@@ -126,14 +193,43 @@ in
|
|||||||
enableACME = true;
|
enableACME = true;
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
default = { };
|
||||||
description = ''
|
description = ''
|
||||||
Apache configuration can be done by adapting `services.httpd.virtualHosts.<name>`.
|
Apache configuration can be done by adapting `services.httpd.virtualHosts.<name>`.
|
||||||
See [](#opt-services.httpd.virtualHosts) for further information.
|
See [](#opt-services.httpd.virtualHosts) for further information.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hostname = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "zabbix.local";
|
||||||
|
description = "Hostname for either nginx or httpd.";
|
||||||
|
};
|
||||||
|
|
||||||
|
NginxVirtualHost = mkOption {
|
||||||
|
type = types.submodule (import ../web-servers/nginx/vhost-options.nix);
|
||||||
|
example = literalExpression ''
|
||||||
|
{
|
||||||
|
forceSSL = true;
|
||||||
|
sslCertificateKey = "/etc/ssl/zabbix.key";
|
||||||
|
slCertificate = "/etc/ssl/zabbix.crt";
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
Nginx configuration can be done by adapting `services.nginx.virtualHosts.<name>`.
|
||||||
|
See [](#opt-services.nginx.virtualHosts) for further information.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
poolConfig = mkOption {
|
poolConfig = mkOption {
|
||||||
type = with types; attrsOf (oneOf [ str int bool ]);
|
type =
|
||||||
|
with types;
|
||||||
|
attrsOf (oneOf [
|
||||||
|
str
|
||||||
|
int
|
||||||
|
bool
|
||||||
|
]);
|
||||||
default = {
|
default = {
|
||||||
"pm" = "dynamic";
|
"pm" = "dynamic";
|
||||||
"pm.max_children" = 32;
|
"pm.max_children" = 32;
|
||||||
@@ -154,7 +250,6 @@ in
|
|||||||
Additional configuration to be copied verbatim into {file}`zabbix.conf.php`.
|
Additional configuration to be copied verbatim into {file}`zabbix.conf.php`.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -162,19 +257,30 @@ in
|
|||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
|
|
||||||
services.zabbixWeb.extraConfig = optionalString ((versionAtLeast config.system.stateVersion "20.09") && (versionAtLeast cfg.package.version "5.0.0")) ''
|
services.zabbixWeb.extraConfig =
|
||||||
|
optionalString
|
||||||
|
(
|
||||||
|
(versionAtLeast config.system.stateVersion "20.09") && (versionAtLeast cfg.package.version "5.0.0")
|
||||||
|
)
|
||||||
|
''
|
||||||
$DB['DOUBLE_IEEE754'] = 'true';
|
$DB['DOUBLE_IEEE754'] = 'true';
|
||||||
'';
|
'';
|
||||||
|
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules =
|
||||||
"d '${stateDir}' 0750 ${user} ${group} - -"
|
[ "d '${stateDir}' 0750 ${user} ${group} - -" ]
|
||||||
|
++ optionals (cfg.frontend == "httpd") [
|
||||||
"d '${stateDir}/session' 0750 ${user} ${config.services.httpd.group} - -"
|
"d '${stateDir}/session' 0750 ${user} ${config.services.httpd.group} - -"
|
||||||
|
]
|
||||||
|
++ optionals (cfg.frontend == "nginx") [
|
||||||
|
"d '${stateDir}/session' 0750 ${user} ${config.services.nginx.group} - -"
|
||||||
];
|
];
|
||||||
|
|
||||||
services.phpfpm.pools.zabbix = {
|
services.phpfpm.pools.zabbix = {
|
||||||
inherit user;
|
inherit user;
|
||||||
group = config.services.httpd.group;
|
group =
|
||||||
phpOptions = ''
|
if cfg.frontend == "httpd" then config.services.httpd.group else config.services.nginx.group;
|
||||||
|
phpOptions =
|
||||||
|
''
|
||||||
# https://www.zabbix.com/documentation/current/manual/installation/install
|
# https://www.zabbix.com/documentation/current/manual/installation/install
|
||||||
memory_limit = 128M
|
memory_limit = 128M
|
||||||
post_max_size = 16M
|
post_max_size = 16M
|
||||||
@@ -186,23 +292,29 @@ in
|
|||||||
always_populate_raw_post_data = -1
|
always_populate_raw_post_data = -1
|
||||||
# https://bbs.archlinux.org/viewtopic.php?pid=1745214#p1745214
|
# https://bbs.archlinux.org/viewtopic.php?pid=1745214#p1745214
|
||||||
session.save_path = ${stateDir}/session
|
session.save_path = ${stateDir}/session
|
||||||
'' + optionalString (config.time.timeZone != null) ''
|
''
|
||||||
|
+ optionalString (config.time.timeZone != null) ''
|
||||||
date.timezone = "${config.time.timeZone}"
|
date.timezone = "${config.time.timeZone}"
|
||||||
'' + optionalString (cfg.database.type == "oracle") ''
|
''
|
||||||
|
+ optionalString (cfg.database.type == "oracle") ''
|
||||||
extension=${pkgs.phpPackages.oci8}/lib/php/extensions/oci8.so
|
extension=${pkgs.phpPackages.oci8}/lib/php/extensions/oci8.so
|
||||||
'';
|
'';
|
||||||
phpEnv.ZABBIX_CONFIG = "${zabbixConfig}";
|
phpEnv.ZABBIX_CONFIG = "${zabbixConfig}";
|
||||||
settings = {
|
settings = {
|
||||||
"listen.owner" = config.services.httpd.user;
|
"listen.owner" =
|
||||||
"listen.group" = config.services.httpd.group;
|
if cfg.frontend == "httpd" then config.services.httpd.user else config.services.nginx.user;
|
||||||
|
"listen.group" =
|
||||||
|
if cfg.frontend == "httpd" then config.services.httpd.group else config.services.nginx.group;
|
||||||
} // cfg.poolConfig;
|
} // cfg.poolConfig;
|
||||||
};
|
};
|
||||||
|
|
||||||
services.httpd = {
|
services.httpd = mkIf (cfg.frontend == "httpd") {
|
||||||
enable = true;
|
enable = true;
|
||||||
adminAddr = mkDefault cfg.virtualHost.adminAddr;
|
adminAddr = mkDefault cfg.HttpdVirtualHost.adminAddr;
|
||||||
extraModules = [ "proxy_fcgi" ];
|
extraModules = [ "proxy_fcgi" ];
|
||||||
virtualHosts.${cfg.virtualHost.hostName} = mkMerge [ cfg.virtualHost {
|
virtualHosts.${cfg.hostname} = mkMerge [
|
||||||
|
cfg.HttpdVirtualHost
|
||||||
|
{
|
||||||
documentRoot = mkForce "${cfg.package}/share/zabbix";
|
documentRoot = mkForce "${cfg.package}/share/zabbix";
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
<Directory "${cfg.package}/share/zabbix">
|
<Directory "${cfg.package}/share/zabbix">
|
||||||
@@ -216,7 +328,26 @@ in
|
|||||||
DirectoryIndex index.php
|
DirectoryIndex index.php
|
||||||
</Directory>
|
</Directory>
|
||||||
'';
|
'';
|
||||||
} ];
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nginx = mkIf (cfg.frontend == "nginx") {
|
||||||
|
enable = true;
|
||||||
|
virtualHosts.${cfg.hostname} = mkMerge [
|
||||||
|
cfg.NginxVirtualHost
|
||||||
|
{
|
||||||
|
root = mkForce "${cfg.package}/share/zabbix";
|
||||||
|
locations."/" = {
|
||||||
|
index = "index.html index.htm index.php";
|
||||||
|
tryFiles = "$uri $uri/ =404";
|
||||||
|
};
|
||||||
|
locations."~ \.php$".extraConfig = ''
|
||||||
|
fastcgi_pass unix:${fpm.socket};
|
||||||
|
fastcgi_index index.php;
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
users.users.${user} = mapAttrs (name: mkDefault) {
|
users.users.${user} = mapAttrs (name: mkDefault) {
|
||||||
@@ -225,9 +356,6 @@ in
|
|||||||
inherit group;
|
inherit group;
|
||||||
};
|
};
|
||||||
|
|
||||||
users.groups.${group} = mapAttrs (name: mkDefault) {
|
users.groups.${group} = mapAttrs (name: mkDefault) { gid = config.ids.gids.zabbix; };
|
||||||
gid = config.ids.gids.zabbix;
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,11 +13,11 @@
|
|||||||
|
|
||||||
let
|
let
|
||||||
platform_major = "4";
|
platform_major = "4";
|
||||||
platform_minor = "31";
|
platform_minor = "32";
|
||||||
year = "2024";
|
year = "2024";
|
||||||
month = "03"; #release month
|
month = "06"; #release month
|
||||||
buildmonth = "02"; #sometimes differs from release month
|
buildmonth = "06"; #sometimes differs from release month
|
||||||
timestamp = "${year}${buildmonth}290520";
|
timestamp = "${year}${buildmonth}010610";
|
||||||
gtk = gtk3;
|
gtk = gtk3;
|
||||||
arch = if stdenv.hostPlatform.isx86_64 then
|
arch = if stdenv.hostPlatform.isx86_64 then
|
||||||
"x86_64"
|
"x86_64"
|
||||||
@@ -43,8 +43,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-lZtU/IUNx2tc6TwCFQ5WS7cO/Gui2JpeknnL+Z/mBow=";
|
x86_64 = "sha256-yMyigXPd6BhSiyoLTFQhBrHnatgXMw1BrH7xWfoT0Zo=";
|
||||||
aarch64 = "sha256-iIUOiFp0uLOzwdqBV1txRhliaE2l1kbhGv1F6h0WO+w=";
|
aarch64 = "sha256-YZ1MhvXWcYRgQ4ZR/hXEWNKmYji/9PyKbdnm27i8Vjs=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -58,8 +58,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-dsl-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-dsl-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-gdtDI9A+sUDAFsyqEmXuIkqgd/v1WF+Euj0TSWwjeL4=";
|
x86_64 = "sha256-m2kcsQicvZcIHAP0zcOGYQjS4vdiTo62o1cfDpG4Ea8=";
|
||||||
aarch64 = "sha256-kYa+8E5KLqHdumBQiIom3eG5rM/9TFZlJyyc7HpySes=";
|
aarch64 = "sha256-UuMfIO6jgMpAmtGihWdJZ7RwilBVdsCaPJH3tKdwyLY=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -73,8 +73,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-embedcpp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-embedcpp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-5g4CAX2mu1i6aMqmbgy4R3Npk1IC/W73FrIZAQwgGCc=";
|
x86_64 = "sha256-dpsdjBfF83B8wGwoIsT4QW/n4Qo/w+n4mNYtILdCJKw=";
|
||||||
aarch64 = "sha256-KcfybNDyGglULKF3HF5v50mBs69FFryCMZ+oBtjBFiw=";
|
aarch64 = "sha256-kDPZJbrxEBhx/KI/9SqOtOOoMVWvYJqTLLgR9YPNH5A=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -88,8 +88,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-yRJWSEg0TVWpgQBSS+y8/YrjdU3PSvJoruEUwjZcrLc=";
|
x86_64 = "sha256-vANUS1IbYrhrpNX095XIhpaHlZhTkZe894nhrDPndJc=";
|
||||||
aarch64 = "sha256-Czm8nYAkVqS8gaowDp1LrJ31iE32d6klT6JvHekL52c=";
|
aarch64 = "sha256-ykw9Og4D3hVfUvJlbtSDUB7iOmDJ9gPVTmpXlGZX304=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -103,8 +103,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-PIvJeITqftd9eHhfbF+R+SQ+MXp4OmM5xi8ZDdUvXaI=";
|
x86_64 = "sha256-ow4i9sDPQUAolzBymvucqpdZrn+bggxR6BD2RnyBVns=";
|
||||||
aarch64 = "sha256-C04AICPcb9foEai3Nk4S4zxQ3oUv+i2tckwqDscpx7I=";
|
aarch64 = "sha256-XZY7MQr1cCToIlEXSltxWRZbHu1Ex0wzLvL1nUhuKhw=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -135,8 +135,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-omsAZSlCvggTjoAPQt0oGqRUZwyt5H2LswGpFt88L+I=";
|
x86_64 = "sha256-zb6/AMe7ArSw1mzPIvaSVeuNly6WO7pHQAuYUT8eGkk=";
|
||||||
aarch64 = "sha256-wcrYVlL5x+Wve2MAgnEFQ4H3a/gc2y8Fr5TmwHU9p6A=";
|
aarch64 = "sha256-jgT3BpD04ELV2+WuRw1mbDw6S1SYDo7jfrijSNs8GLM=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -150,8 +150,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-8WqHFLywYQXtzUGxBVstxGqVU55WHoApZnyZ6ur4XgU=";
|
x86_64 = "sha256-fXfj0PImyd2nPUkaGvOu7BGAeIHkTocKH94oM/Vd+LU=";
|
||||||
aarch64 = "sha256-GlD0ykJbwdbzh1K3XQQ79yBhCJQUlmt2v8c2OMYNWp4=";
|
aarch64 = "sha256-0EZXbngXIso8fS8bvSDPyRGCre2dF0+6wyldQ6GhGmo=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -165,8 +165,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-jee-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-jee-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-K2uo2VVL6rP9kxicJRLzsJiOFKloLD0vInSon8JsUWg=";
|
x86_64 = "sha256-YIoa837bbnqm/4wuwRfx+5UNxyQJySbTX+lhL/FluS0=";
|
||||||
aarch64 = "sha256-qeEQTlFeWBag6SLXoatDeviR/NG8EcTi6VyUo9P6STM=";
|
aarch64 = "sha256-0hwKU29RJdjyaF4ot0OpXt/illOsx1n38nhK5zteQBk=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -180,8 +180,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-committers-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-committers-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-Ko4NCU9jbkjAWY7Ky5tPlhXOnzkpY4GjPi6Z0CBmzzc=";
|
x86_64 = "sha256-IFQkSOs0wk7chR9Ti3WG/7WDrXBWnaRH9AqC9jTmuT8=";
|
||||||
aarch64 = "sha256-RBT+xwdQcJh+YgsuCPTWy9MM2y45bhIF9DttPm6Qz+Q=";
|
aarch64 = "sha256-iiS3hZWfinHYVhZsMntXQp+OgL7kcE/2jqx2JomBdIk=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -195,8 +195,8 @@ in rec {
|
|||||||
fetchurl {
|
fetchurl {
|
||||||
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rcp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-rcp-${year}-${month}-R-linux-gtk-${arch}.tar.gz";
|
||||||
hash = {
|
hash = {
|
||||||
x86_64 = "sha256-dWwDv8cfUxnU/24ASYLvSTbS3xV5ugG98jYMhAXTfS8=";
|
x86_64 = "sha256-+U3wHbUgxkqWZjZyAXAqkZHeoNp+CwL1NBO4myDdJhE=";
|
||||||
aarch64 = "sha256-+bAKFZ4u5PvCdC4Ifj5inppWb6C8wh0tar66qryx76o=";
|
aarch64 = "sha256-zDLt3lOqf2HyUP/oqbff6XupF2Vab7+gxpQriztunH4=";
|
||||||
}.${arch};
|
}.${arch};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ buildKodiAddon rec {
|
|||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
# Use our system-wide ca-bundle instead of the bundled one
|
# Use our system-wide ca-bundle instead of the bundled one
|
||||||
ln -snvf "${cacert}/etc/ssl/certs/ca-bundle.crt" "lib/certifi/cacert.pem"
|
ln -snvf "/etc/ssl/certs/ca-bundle.crt" "lib/certifi/cacert.pem"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
propagatedNativeBuildInputs = [
|
propagatedNativeBuildInputs = [
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ let
|
|||||||
kodiPackages = callPackage ../../../top-level/kodi-packages.nix { inherit kodi; };
|
kodiPackages = callPackage ../../../top-level/kodi-packages.nix { inherit kodi; };
|
||||||
|
|
||||||
# linux distros are supposed to provide pillow and pycryptodome
|
# linux distros are supposed to provide pillow and pycryptodome
|
||||||
requiredPythonPath = with kodi.pythonPackages; makePythonPath ([ pillow pycryptodome ]);
|
requiredPythonPath = with kodi.pythonPackages; makePythonPath ([ pillow pycryptodomex ]);
|
||||||
|
|
||||||
# each kodi addon can potentially export a python module which should be included in PYTHONPATH
|
# each kodi addon can potentially export a python module which should be included in PYTHONPATH
|
||||||
# see any addon which supplies `passthru.pythonPath` and the corresponding entry in the addons `addon.xml`
|
# see any addon which supplies `passthru.pythonPath` and the corresponding entry in the addons `addon.xml`
|
||||||
|
|||||||
185
pkgs/by-name/bl/blenderfarm/deps.nix
generated
Normal file
185
pkgs/by-name/bl/blenderfarm/deps.nix
generated
Normal file
@@ -0,0 +1,185 @@
|
|||||||
|
{ fetchNuGet }: [
|
||||||
|
(fetchNuGet { pname = "Avalonia"; version = "0.10.15"; sha256 = "02rf96gxpafbk0ilg3nxf0fas9gkpb25kzqc2lnbxp8h366qg431"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.Angle.Windows.Natives"; version = "2.1.0.2020091801"; sha256 = "04jm83cz7vkhhr6n2c9hya2k8i2462xbf6np4bidk55as0jdq43a"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.Desktop"; version = "0.10.15"; sha256 = "0wgc46vg227bv7nsybc9mxkqv9xlz2bj08bdipkigjlf23g0x4p6"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.FreeDesktop"; version = "0.10.15"; sha256 = "1bq2ha1mmgsb9gxmsibr3i6alcg6y3kizxi07qh4wgw38c3fkwzs"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.Native"; version = "0.10.15"; sha256 = "0p0ih6ql5kyvpfhc6ll2mgy23kx0vwn88qji74713id493w2ab02"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.Remote.Protocol"; version = "0.10.15"; sha256 = "1va9zwznfr161w2xjjg4swm5505685mdkxxs747l2s35mahl5072"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.Skia"; version = "0.10.15"; sha256 = "0xlnanssz24rcnybz1x0d3lclzmbzdjb9k0i37rd76dif3rgng0h"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.Win32"; version = "0.10.15"; sha256 = "1lxaj8la8bwc7j4d3cc3q5jklycc647lzpm8610ya241y64gryww"; })
|
||||||
|
(fetchNuGet { pname = "Avalonia.X11"; version = "0.10.15"; sha256 = "120d19i8ad3b2m1516v5r1bj4h7fddmad6szrbkbpd711x3sh6ka"; })
|
||||||
|
(fetchNuGet { pname = "coverlet.collector"; version = "1.2.0"; sha256 = "0gbhdk9i3xqhay4jbfi0mxdpgk2w5x5m89rfzviv7zp1i7cksbka"; })
|
||||||
|
(fetchNuGet { pname = "HarfBuzzSharp"; version = "2.8.2-preview.178"; sha256 = "1p5nwzl7jpypsd6df7hgcf47r977anjlyv21wacmalsj6lvdgnvn"; })
|
||||||
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "2.8.2-preview.178"; sha256 = "1402ylkxbgcnagcarqlfvg4gppy2pqs3bmin4n5mphva1g7bqb2p"; })
|
||||||
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "2.8.2-preview.178"; sha256 = "0p8miaclnbfpacc1jaqxwfg0yfx9byagi4j4k91d9621vd19i8b2"; })
|
||||||
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.WebAssembly"; version = "2.8.2-preview.178"; sha256 = "1n9jay9sji04xly6n8bzz4591fgy8i65p21a8mv5ip9lsyj1c320"; })
|
||||||
|
(fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2-preview.178"; sha256 = "1r5syii96wv8q558cvsqw3lr10cdw6677lyiy82p6i3if51v3mr7"; })
|
||||||
|
(fetchNuGet { pname = "JetBrains.Annotations"; version = "10.3.0"; sha256 = "1grdx28ga9fp4hwwpwv354rizm8anfq4lp045q4ss41gvhggr3z8"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-x64"; version = "6.0.29"; sha256 = "0z359wbz3014rwz7cdcr60qr6mrcwsbwwh36g59a5hncxb1g73rj"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.osx-x64"; version = "6.0.29"; sha256 = "031kalc7mp8w35rwvnb13jbwwi8cgmny7nywsk3717iy6blxldih"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.win-x64"; version = "6.0.29"; sha256 = "0byixcrwj7ixz60lvg7c6r3f132br4pfrjv0w0fh99b3iwzrf114"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.Bcl.AsyncInterfaces"; version = "5.0.0"; sha256 = "0cp5jbax2mf6xr3dqiljzlwi05fv6n9a35z337s92jcljiq674kf"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "16.5.0"; sha256 = "0610wzn4qyywf9lb4538vwqhprxc4g0g7gjbmnjzvx97jr5nd5mf"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.CSharp"; version = "4.0.1"; sha256 = "0zxc0apx1gcx361jlq8smc9pfdgmyjh6hpka8dypc9w23nlsh6yj"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "16.5.0"; sha256 = "19f5bvzci5mmfz81jwc4dax4qdf7w4k67n263383mn8mawf22bfq"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.App.Host.osx-x64"; version = "6.0.29"; sha256 = "03rzclkvl2gc7wakh0xqhnj6zl32b91igrnyhd69pzr3mql5kdll"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.App.Host.win-x64"; version = "6.0.29"; sha256 = "0kh3lrzpz7y42iqa4vdhw4mg51vf4y2x8l4lg767mzbx0sd4xllv"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-x64"; version = "6.0.29"; sha256 = "0gv5dnd44xj1yidzd70b01s5a19khbq757llkfykgwf7wl4a89cf"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.osx-x64"; version = "6.0.29"; sha256 = "1bk2n7csgnvqma5yv550037xg4ph4j11gp4m5hn7s4sy23cfc5xp"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.win-x64"; version = "6.0.29"; sha256 = "0hhypwr4202n8nvpz10ac1q48ryjr7d4xj34r4c79mw49fvh1n61"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.0.1"; sha256 = "01al6cfxp68dscl15z7rxfw9zvhm64dncsw09a1vmdkacsa2v6lr"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; sha256 = "08vh1r12g6ykjygq5d3vq09zylgb84l63k49jc4v8faw9g93iqqm"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; sha256 = "1fk2fk2639i7nzy58m9dvpdnzql4vb8yl8vr19r2fp8lmj9w2jr0"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "3.1.1"; sha256 = "05hmaygd5131rnqi6ipv7agsbpi7ka18779vw45iw6b385l7n987"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "5.0.0"; sha256 = "0mwpwdflidzgzfx2dlpkvvnkgkr2ayaf0s80737h4wa35gaj11rc"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.0.1"; sha256 = "0ppdkwy6s9p7x9jix3v4402wb171cdiibq7js7i13nxpdky7074p"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; sha256 = "193xwf33fbm0ni3idxzbr5fdq3i2dlfgihsac9jj7whj0gd902nh"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "16.5.0"; sha256 = "02h7j1fr0fwcggn0wgddh59k8b2wmly3snckwhswzqvks5rvfnnw"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "16.5.0"; sha256 = "08cvss66lqa92h55dxkbrzn796jckhlyj53zz22x3qyr6xi21v5v"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.Win32.Primitives"; version = "4.3.0"; sha256 = "0j0c1wj4ndj21zsgivsc24whiya605603kxrbiw6wkfdync464wq"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "4.5.0"; sha256 = "0fnkv3ky12227zqg4zshx4kw2mvysq2ppxjibfw02cc3iprv4njq"; })
|
||||||
|
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "5.0.0"; sha256 = "0sja4ba0mrvdamn0r9mhq38b9dxi08yb3c1hzh29n1z6ws1hlrcq"; })
|
||||||
|
(fetchNuGet { pname = "MSTest.TestAdapter"; version = "2.1.0"; sha256 = "1g1v8yjnk4nr1c36k3cz116889bnpiw1i1jkmqnpb19wms7sq7cz"; })
|
||||||
|
(fetchNuGet { pname = "MSTest.TestFramework"; version = "2.1.0"; sha256 = "0mac4h7ylw953chclhz0lrn19yks3bab9dn9x9fpjqi7309gid0p"; })
|
||||||
|
(fetchNuGet { pname = "NETStandard.Library"; version = "1.6.1"; sha256 = "1z70wvsx2d847a2cjfii7b83pjfs34q05gb037fdjikv5kbagml8"; })
|
||||||
|
(fetchNuGet { pname = "NETStandard.Library"; version = "2.0.3"; sha256 = "1fn9fxppfcg4jgypp2pmrpr6awl3qz1xmnri0cygpkwvyx27df1y"; })
|
||||||
|
(fetchNuGet { pname = "Newtonsoft.Json"; version = "9.0.1"; sha256 = "0mcy0i7pnfpqm4pcaiyzzji4g0c8i3a5gjz28rrr28110np8304r"; })
|
||||||
|
(fetchNuGet { pname = "NuGet.Frameworks"; version = "5.0.0"; sha256 = "18ijvmj13cwjdrrm52c8fpq021531zaz4mj4b4zapxaqzzxf2qjr"; })
|
||||||
|
(fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.1.0"; sha256 = "0mjr2bi7wvnkphfjqgkyf8vfyvy15a829jz6mivl6jmksh2bx40m"; })
|
||||||
|
(fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "16rnxzpk5dpbbl1x354yrlsbvwylrq456xzpsha1n9y3glnhyx9d"; })
|
||||||
|
(fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0hkg03sgm2wyq8nqk6dbm9jh5vcq57ry42lkqdmfklrw89lsmr59"; })
|
||||||
|
(fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0c2p354hjx58xhhz7wv6div8xpi90sc6ibdm40qin21bvi7ymcaa"; })
|
||||||
|
(fetchNuGet { pname = "runtime.linux-x64.CoreCompat.System.Drawing"; version = "1.0.0-beta009"; sha256 = "1fb0fjxxa8g4f0p9mqnd221iw7qkc7jmm05nwmymjfl5g8b1nin7"; })
|
||||||
|
(fetchNuGet { pname = "runtime.native.System"; version = "4.0.0"; sha256 = "1ppk69xk59ggacj9n7g6fyxvzmk1g5p4fkijm0d7xqfkig98qrkf"; })
|
||||||
|
(fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; sha256 = "15hgf6zaq9b8br2wi1i3x0zvmk410nlmsmva9p0bbg73v6hml5k4"; })
|
||||||
|
(fetchNuGet { pname = "runtime.native.System.IO.Compression"; version = "4.3.0"; sha256 = "1vvivbqsk6y4hzcid27pqpm5bsi6sc50hvqwbcx8aap5ifrxfs8d"; })
|
||||||
|
(fetchNuGet { pname = "runtime.native.System.Net.Http"; version = "4.3.0"; sha256 = "1n6rgz5132lcibbch1qlf0g9jk60r0kqv087hxc0lisy50zpm7kk"; })
|
||||||
|
(fetchNuGet { pname = "runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "1b61p6gw1m02cc1ry996fl49liiwky6181dzr873g9ds92zl326q"; })
|
||||||
|
(fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "18pzfdlwsg2nb1jjjjzyb5qlgy6xjxzmhnfaijq5s2jw3cm3ab97"; })
|
||||||
|
(fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0qyynf9nz5i7pc26cwhgi8j62ps27sqmf78ijcfgzab50z9g8ay3"; })
|
||||||
|
(fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1klrs545awhayryma6l7g2pvnp9xy4z0r1i40r80zb45q3i9nbyf"; })
|
||||||
|
(fetchNuGet { pname = "runtime.osx.10.10-x64.CoreCompat.System.Drawing"; version = "5.8.64"; sha256 = "1m5b58ifqkdci5281hjfx2ci1fzrnff1isddxinyg566w40arfhp"; })
|
||||||
|
(fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple"; version = "4.3.0"; sha256 = "10yc8jdrwgcl44b4g93f1ds76b176bajd3zqi2faf5rvh1vy9smi"; })
|
||||||
|
(fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0zcxjv5pckplvkg0r6mw3asggm7aqzbdjimhvsasb0cgm59x09l3"; })
|
||||||
|
(fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0vhynn79ih7hw7cwjazn87rm9z9fj0rvxgzlab36jybgcpcgphsn"; })
|
||||||
|
(fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "160p68l2c7cqmyqjwxydcvgw7lvl1cr0znkw8fp24d1by9mqc8p3"; })
|
||||||
|
(fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "15zrc8fgd8zx28hdghcj5f5i34wf3l6bq5177075m2bc2j34jrqy"; })
|
||||||
|
(fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "1p4dgxax6p7rlgj4q73k73rslcnz4wdcv8q2flg1s8ygwcm58ld5"; })
|
||||||
|
(fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.0.1"; sha256 = "0ic5dgc45jkhcr1g9xmmzjm7ffiw4cymm0fprczlx4fnww4783nm"; })
|
||||||
|
(fetchNuGet { pname = "SharpCompress"; version = "0.26.0"; sha256 = "03cygf8p44j1bfn6z9cn2xrw6zhvhq17xac1sph5rgq7vq2m5iq5"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.0"; sha256 = "0wqfgzyp2m4myqrni9rgchiqi95axbf279hlqjflrj4c9z2412ni"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp"; version = "2.88.1-preview.1"; sha256 = "1i1px67hcr9kygmbfq4b9nqzlwm7v2gapsp4isg9i19ax5g8dlhm"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.1-preview.1"; sha256 = "1r9qr3civk0ws1z7hg322qyr8yjm10853zfgs03szr2lvdqiy7d1"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux.NoDependencies"; version = "2.88.0"; sha256 = "1hxn1gqq8qmds65zb5jhq7r1l94lyg52qks61zmh5fqfvcmkfc17"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.0"; sha256 = "0d0pdcm61jfy3fvgkxmm3hj9cijrwbmp6ky2af776m1l63ryii3q"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.1-preview.1"; sha256 = "1w55nrwpl42psn6klia5a9aw2j1n25hpw2fdhchypm9f0v2iz24h"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.WebAssembly"; version = "2.88.1-preview.1"; sha256 = "0mwj2yl4gn40lry03yqkj7sbi1drmm672dv88481sgah4c21lzrq"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.0"; sha256 = "135ni4rba4wy4wyzy9ip11f3dwb1ipn38z9ps1p9xhw8jc06y5vp"; })
|
||||||
|
(fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.1-preview.1"; sha256 = "1k50abd147pif9z9lkckbbk91ga1vv6k4skjz2n7wpll6fn0fvlv"; })
|
||||||
|
(fetchNuGet { pname = "System.AppContext"; version = "4.3.0"; sha256 = "1649qvy3dar900z3g817h17nl8jp4ka5vcfmsr05kh0fshn7j3ya"; })
|
||||||
|
(fetchNuGet { pname = "System.Buffers"; version = "4.3.0"; sha256 = "0fgns20ispwrfqll4q1zc1waqcmylb3zc50ys9x8zlwxh9pmd9jy"; })
|
||||||
|
(fetchNuGet { pname = "System.Buffers"; version = "4.5.1"; sha256 = "04kb1mdrlcixj9zh1xdi5as0k0qi8byr5mi3p3jcxx72qz93s2y3"; })
|
||||||
|
(fetchNuGet { pname = "System.Collections"; version = "4.0.11"; sha256 = "1ga40f5lrwldiyw6vy67d0sg7jd7ww6kgwbksm19wrvq9hr0bsm6"; })
|
||||||
|
(fetchNuGet { pname = "System.Collections"; version = "4.3.0"; sha256 = "19r4y64dqyrq6k4706dnyhhw7fs24kpp3awak7whzss39dakpxk9"; })
|
||||||
|
(fetchNuGet { pname = "System.Collections.Concurrent"; version = "4.3.0"; sha256 = "0wi10md9aq33jrkh2c24wr2n9hrpyamsdhsxdcnf43b7y86kkii8"; })
|
||||||
|
(fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.5.0"; sha256 = "1jj6f6g87k0iwsgmg3xmnn67a14mq88np0l1ys5zkxhkvbc8976p"; })
|
||||||
|
(fetchNuGet { pname = "System.Console"; version = "4.3.0"; sha256 = "1flr7a9x920mr5cjsqmsy9wgnv3lvd0h1g521pdr1lkb2qycy7ay"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.0.11"; sha256 = "0gmjghrqmlgzxivd2xl50ncbglb7ljzb66rlx8ws6dv8jm0d5siz"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; sha256 = "00yjlf19wjydyr6cfviaph3vsjzg3d5nvnya26i2fvfg53sknh3y"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.DiagnosticSource"; version = "4.3.0"; sha256 = "0z6m3pbiy0qw6rn3n209rrzf9x1k4002zh90vwcrsym09ipm2liq"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.TextWriterTraceListener"; version = "4.3.0"; sha256 = "09db74f36wkwg30f7v7zhz1yhkyrnl5v6bdwljq1jdfgzcfch7c3"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.0.1"; sha256 = "19cknvg07yhakcvpxg3cxa0bwadplin6kyxd8mpjjpwnp56nl85x"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.Tools"; version = "4.3.0"; sha256 = "0in3pic3s2ddyibi8cvgl102zmvp9r9mchh82ns9f0ms4basylw1"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.TraceSource"; version = "4.3.0"; sha256 = "1kyw4d7dpjczhw6634nrmg7yyyzq72k75x38y0l0nwhigdlp1766"; })
|
||||||
|
(fetchNuGet { pname = "System.Diagnostics.Tracing"; version = "4.3.0"; sha256 = "1m3bx6c2s958qligl67q7grkwfz3w53hpy7nc97mh6f7j5k168c4"; })
|
||||||
|
(fetchNuGet { pname = "System.Drawing.Common"; version = "4.5.0"; sha256 = "0knqa0zsm91nfr34br8gx5kjqq4v81zdhqkacvs2hzc8nqk0ddhc"; })
|
||||||
|
(fetchNuGet { pname = "System.Drawing.Common"; version = "5.0.0"; sha256 = "0fag8hr2v9bswrsjka311lhbr1a43yzcc36j4fadz0f0kl2hby7h"; })
|
||||||
|
(fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.0.11"; sha256 = "1pla2dx8gkidf7xkciig6nifdsb494axjvzvann8g2lp3dbqasm9"; })
|
||||||
|
(fetchNuGet { pname = "System.Globalization"; version = "4.0.11"; sha256 = "070c5jbas2v7smm660zaf1gh0489xanjqymkvafcs4f8cdrs1d5d"; })
|
||||||
|
(fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; sha256 = "1cp68vv683n6ic2zqh2s1fn4c2sd87g5hpp6l4d4nj4536jz98ki"; })
|
||||||
|
(fetchNuGet { pname = "System.Globalization.Calendars"; version = "4.3.0"; sha256 = "1xwl230bkakzzkrggy1l1lxmm3xlhk4bq2pkv790j5lm8g887lxq"; })
|
||||||
|
(fetchNuGet { pname = "System.Globalization.Extensions"; version = "4.3.0"; sha256 = "02a5zfxavhv3jd437bsncbhd2fp1zv4gxzakp1an9l6kdq1mcqls"; })
|
||||||
|
(fetchNuGet { pname = "System.IO"; version = "4.1.0"; sha256 = "1g0yb8p11vfd0kbkyzlfsbsp5z44lwsvyc0h3dpw6vqnbi035ajp"; })
|
||||||
|
(fetchNuGet { pname = "System.IO"; version = "4.3.0"; sha256 = "05l9qdrzhm4s5dixmx68kxwif4l99ll5gqmh7rqgw554fx0agv5f"; })
|
||||||
|
(fetchNuGet { pname = "System.IO.Compression"; version = "4.3.0"; sha256 = "084zc82yi6yllgda0zkgl2ys48sypiswbiwrv7irb3r0ai1fp4vz"; })
|
||||||
|
(fetchNuGet { pname = "System.IO.Compression.ZipFile"; version = "4.3.0"; sha256 = "1yxy5pq4dnsm9hlkg9ysh5f6bf3fahqqb6p8668ndy5c0lk7w2ar"; })
|
||||||
|
(fetchNuGet { pname = "System.IO.FileSystem"; version = "4.0.1"; sha256 = "0kgfpw6w4djqra3w5crrg8xivbanh1w9dh3qapb28q060wb9flp1"; })
|
||||||
|
(fetchNuGet { pname = "System.IO.FileSystem"; version = "4.3.0"; sha256 = "0z2dfrbra9i6y16mm9v1v6k47f0fm617vlb7s5iybjjsz6g1ilmw"; })
|
||||||
|
(fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.0.1"; sha256 = "1s0mniajj3lvbyf7vfb5shp4ink5yibsx945k6lvxa96r8la1612"; })
|
||||||
|
(fetchNuGet { pname = "System.IO.FileSystem.Primitives"; version = "4.3.0"; sha256 = "0j6ndgglcf4brg2lz4wzsh1av1gh8xrzdsn9f0yznskhqn1xzj9c"; })
|
||||||
|
(fetchNuGet { pname = "System.Linq"; version = "4.1.0"; sha256 = "1ppg83svb39hj4hpp5k7kcryzrf3sfnm08vxd5sm2drrijsla2k5"; })
|
||||||
|
(fetchNuGet { pname = "System.Linq"; version = "4.3.0"; sha256 = "1w0gmba695rbr80l1k2h4mrwzbzsyfl2z4klmpbsvsg5pm4a56s7"; })
|
||||||
|
(fetchNuGet { pname = "System.Linq.Expressions"; version = "4.1.0"; sha256 = "1gpdxl6ip06cnab7n3zlcg6mqp7kknf73s8wjinzi4p0apw82fpg"; })
|
||||||
|
(fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; sha256 = "0ky2nrcvh70rqq88m9a5yqabsl4fyd17bpr63iy2mbivjs2nyypv"; })
|
||||||
|
(fetchNuGet { pname = "System.Memory"; version = "4.5.3"; sha256 = "0naqahm3wljxb5a911d37mwjqjdxv9l0b49p5dmfyijvni2ppy8a"; })
|
||||||
|
(fetchNuGet { pname = "System.Memory"; version = "4.5.4"; sha256 = "14gbbs22mcxwggn0fcfs1b062521azb9fbb7c113x0mq6dzq9h6y"; })
|
||||||
|
(fetchNuGet { pname = "System.Net.Http"; version = "4.3.0"; sha256 = "1i4gc757xqrzflbk7kc5ksn20kwwfjhw9w7pgdkn19y3cgnl302j"; })
|
||||||
|
(fetchNuGet { pname = "System.Net.Primitives"; version = "4.3.0"; sha256 = "0c87k50rmdgmxx7df2khd9qj7q35j9rzdmm2572cc55dygmdk3ii"; })
|
||||||
|
(fetchNuGet { pname = "System.Net.Sockets"; version = "4.3.0"; sha256 = "1ssa65k6chcgi6mfmzrznvqaxk8jp0gvl77xhf1hbzakjnpxspla"; })
|
||||||
|
(fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.5.0"; sha256 = "1kzrj37yzawf1b19jq0253rcs8hsq1l2q8g69d7ipnhzb0h97m59"; })
|
||||||
|
(fetchNuGet { pname = "System.ObjectModel"; version = "4.0.12"; sha256 = "1sybkfi60a4588xn34nd9a58png36i0xr4y4v4kqpg8wlvy5krrj"; })
|
||||||
|
(fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; sha256 = "191p63zy5rpqx7dnrb3h7prvgixmk168fhvvkkvhlazncf8r3nc2"; })
|
||||||
|
(fetchNuGet { pname = "System.Private.Uri"; version = "4.0.1"; sha256 = "0k57qhawjysm4cpbfpc49kl4av7lji310kjcamkl23bwgij5ld9j"; })
|
||||||
|
(fetchNuGet { pname = "System.Reactive"; version = "5.0.0"; sha256 = "1lafmpnadhiwxyd543kraxa3jfdpm6ipblxrjlibym9b1ykpr5ik"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection"; version = "4.1.0"; sha256 = "1js89429pfw79mxvbzp8p3q93il6rdff332hddhzi5wqglc4gml9"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; sha256 = "0xl55k0mw8cd8ra6dxzh974nxif58s3k1rjv1vbd7gjbjr39j11m"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit"; version = "4.0.1"; sha256 = "0ydqcsvh6smi41gyaakglnv252625hf29f7kywy2c70nhii2ylqp"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; sha256 = "11f8y3qfysfcrscjpjym9msk7lsfxkk4fmz9qq95kn3jd0769f74"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit"; version = "4.7.0"; sha256 = "121l1z2ypwg02yz84dy6gr82phpys0njk7yask3sihgy214w43qp"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.0.1"; sha256 = "1pcd2ig6bg144y10w7yxgc9d22r7c7ww7qn1frdfwgxr24j9wvv0"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; sha256 = "0w1n67glpv8241vnpz1kl14sy7zlnw414aqwj4hcx5nd86f6994q"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.0.1"; sha256 = "1s4b043zdbx9k39lfhvsk68msv1nxbidhkq6nbm27q7sf8xcsnxr"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; sha256 = "0ql7lcakycrvzgi9kxz1b3lljd990az1x6c4jsiwcacrvimpib5c"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.0.1"; sha256 = "0m7wqwq0zqq9gbpiqvgk3sr92cbrw7cp3xn53xvw7zj6rz6fdirn"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; sha256 = "02bly8bdc98gs22lqsfx9xicblszr2yan7v2mmw3g7hy6miq5hwq"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.0.1"; sha256 = "1bangaabhsl4k9fg8khn83wm6yial8ik1sza7401621jc6jrym28"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; sha256 = "04xqa33bld78yv5r93a8n76shvc8wwcdgr1qvvjh959g3rc31276"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.1.0"; sha256 = "1bjli8a7sc7jlxqgcagl9nh8axzfl11f4ld3rjqsyxc516iijij7"; })
|
||||||
|
(fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; sha256 = "0y2ssg08d817p0vdag98vn238gyrrynjdj4181hdg780sif3ykp1"; })
|
||||||
|
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.0.1"; sha256 = "0b4i7mncaf8cnai85jv3wnw6hps140cxz8vylv2bik6wyzgvz7bi"; })
|
||||||
|
(fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; sha256 = "0sjqlzsryb0mg4y4xzf35xi523s4is4hz9q4qgdvlvgivl7qxn49"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime"; version = "4.1.0"; sha256 = "02hdkgk13rvsd6r9yafbwzss8kr55wnj8d5c7xjnp8gqrwc8sn0m"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; sha256 = "066ixvgbf2c929kgknshcxqj6539ax7b9m570cp8n179cpfkapz7"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.6.0"; sha256 = "0xmzi2gpbmgyfr75p24rqqsba3cmrqgmcv45lsqp5amgrdwd0f0m"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "5.0.0"; sha256 = "02k25ivn50dmqx5jn8hawwmz24yf0454fjd823qk6lygj9513q4x"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.1.0"; sha256 = "0rw4rm4vsm3h3szxp9iijc3ksyviwsv6f63dng3vhqyg4vjdkc2z"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; sha256 = "1ykp3dnhwvm48nap8q23893hagf665k0kn3cbgsqpwzbijdcgc60"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.0.1"; sha256 = "1g0zrdi5508v49pfm3iii2hn6nm00bgvfpjq1zxknfjrxxa20r4g"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; sha256 = "0sw2gfj2xr7sw9qjn0j3l9yw07x73lcs97p8xfc9w1x9h5g5m7i8"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.1.0"; sha256 = "01kxqppx3dr3b6b286xafqilv4s2n0gqvfgzfd4z943ga9i81is1"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; sha256 = "00hywrn4g7hva1b2qri2s6rabzwgxnbpw9zfxmz28z09cpwwgh7j"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.InteropServices.RuntimeInformation"; version = "4.3.0"; sha256 = "0q18r1sh4vn7bvqgd6dmqlw5v28flbpj349mkdish2vjyvmnb2ii"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.Numerics"; version = "4.3.0"; sha256 = "19rav39sr5dky7afygh309qamqqmi9kcwvz3i0c5700v0c5cg61z"; })
|
||||||
|
(fetchNuGet { pname = "System.Runtime.Serialization.Primitives"; version = "4.1.1"; sha256 = "042rfjixknlr6r10vx2pgf56yming8lkjikamg3g4v29ikk78h7k"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.Algorithms"; version = "4.3.0"; sha256 = "03sq183pfl5kp7gkvq77myv7kbpdnq3y0xj7vi4q1kaw54sny0ml"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.Cng"; version = "4.3.0"; sha256 = "1k468aswafdgf56ab6yrn7649kfqx2wm9aslywjam1hdmk5yypmv"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.Csp"; version = "4.3.0"; sha256 = "1x5wcrddf2s3hb8j78cry7yalca4lb5vfnkrysagbn6r9x6xvrx1"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.Encoding"; version = "4.3.0"; sha256 = "1jr6w70igqn07k5zs1ph6xja97hxnb3mqbspdrff6cvssgrixs32"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.OpenSsl"; version = "4.3.0"; sha256 = "0givpvvj8yc7gv4lhb6s1prq6p2c4147204a0wib89inqzd87gqc"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.Primitives"; version = "4.3.0"; sha256 = "0pyzncsv48zwly3lw4f2dayqswcfvdwq2nz0dgwmi7fj3pn64wby"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Cryptography.X509Certificates"; version = "4.3.0"; sha256 = "0valjcz5wksbvijylxijjxb1mp38mdhv03r533vnx1q3ikzdav9h"; })
|
||||||
|
(fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.7.0"; sha256 = "1a56ls5a9sr3ya0nr086sdpa9qv0abv31dd6fp27maqa9zclqq5d"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.0.11"; sha256 = "1dyqv0hijg265dwxg6l7aiv74102d6xjiwplh2ar1ly6xfaa4iiw"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; sha256 = "1f04lkir4iladpp51sdgmis9dj4y8v08cka0mbmsy0frc9a4gjqr"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.7.1"; sha256 = "1y1hdap9qbl7vp74j8s9zcbh3v1rnrrvcc55wj1hl6has2v3qh1r"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.0.11"; sha256 = "08nsfrpiwsg9x5ml4xyl3zyvjfdi4mvbqf93kjdh11j4fwkznizs"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Encoding.Extensions"; version = "4.3.0"; sha256 = "11q1y8hh5hrp5a3kw25cb6l00v5l5dvirkz8jr3sq00h1xgcgrxy"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Encodings.Web"; version = "5.0.0"; sha256 = "144pgy65jc3bkar7d4fg1c0rq6qmkx68gj9k1ldk97558w22v1r1"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.Json"; version = "5.0.0"; sha256 = "1gpgl18z6qrgmqrikgh99xkjwzb1didrjp77bch7nrlra21gr4ks"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.1.0"; sha256 = "1mw7vfkkyd04yn2fbhm38msk7dz2xwvib14ygjsb8dq2lcvr18y7"; })
|
||||||
|
(fetchNuGet { pname = "System.Text.RegularExpressions"; version = "4.3.0"; sha256 = "1bgq51k7fwld0njylfn7qc5fmwrk2137gdq7djqdsw347paa9c2l"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading"; version = "4.0.11"; sha256 = "19x946h926bzvbsgj28csn46gak2crv2skpwsx80hbgazmkgb1ls"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading"; version = "4.3.0"; sha256 = "0rw9wfamvhayp5zh3j7p1yfmx9b5khbf4q50d8k5rk993rskfd34"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading.Tasks"; version = "4.0.11"; sha256 = "0nr1r41rak82qfa5m0lhk9mp0k93bvfd7bbd9sdzwx9mb36g28p5"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; sha256 = "134z3v9abw3a6jsw17xl3f6hqjpak5l682k2vz39spj4kmydg6k7"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.0.0"; sha256 = "1cb51z062mvc2i8blpzmpn9d9mm4y307xrwi65di8ri18cz5r1zr"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.3.0"; sha256 = "1xxcx2xh8jin360yjwm4x4cf5y3a2bwpn2ygkfkwkicz7zk50s2z"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.4"; sha256 = "0y6ncasgfcgnjrhynaf0lwpkpkmv4a07sswwkwbwb5h7riisj153"; })
|
||||||
|
(fetchNuGet { pname = "System.Threading.Timer"; version = "4.3.0"; sha256 = "1nx773nsx6z5whv8kaa1wjh037id2f1cxhb69pvgv12hd2b6qs56"; })
|
||||||
|
(fetchNuGet { pname = "System.ValueTuple"; version = "4.5.0"; sha256 = "00k8ja51d0f9wrq4vv5z2jhq8hy31kac2rg0rv06prylcybzl8cy"; })
|
||||||
|
(fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.0.11"; sha256 = "0c6ky1jk5ada9m94wcadih98l6k1fvf6vi7vhn1msjixaha419l5"; })
|
||||||
|
(fetchNuGet { pname = "System.Xml.ReaderWriter"; version = "4.3.0"; sha256 = "0c47yllxifzmh8gq6rq6l36zzvw4kjvlszkqa9wq3fr59n0hl3s1"; })
|
||||||
|
(fetchNuGet { pname = "System.Xml.XDocument"; version = "4.0.11"; sha256 = "0n4lvpqzy9kc7qy1a4acwwd7b7pnvygv895az5640idl2y9zbz18"; })
|
||||||
|
(fetchNuGet { pname = "System.Xml.XDocument"; version = "4.3.0"; sha256 = "08h8fm4l77n0nd4i4fk2386y809bfbwqb7ih9d7564ifcxr5ssxd"; })
|
||||||
|
(fetchNuGet { pname = "Tmds.DBus"; version = "0.9.0"; sha256 = "0vvx6sg8lxm23g5jvm5wh2gfs95mv85vd52lkq7d1b89bdczczf3"; })
|
||||||
|
]
|
||||||
135
pkgs/by-name/bl/blenderfarm/package.nix
Normal file
135
pkgs/by-name/bl/blenderfarm/package.nix
Normal file
@@ -0,0 +1,135 @@
|
|||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
fetchFromGitHub,
|
||||||
|
buildDotnetModule,
|
||||||
|
dotnetCorePackages,
|
||||||
|
xz,
|
||||||
|
pcre,
|
||||||
|
libX11,
|
||||||
|
libICE,
|
||||||
|
libSM,
|
||||||
|
autoPatchelfHook,
|
||||||
|
bintools,
|
||||||
|
fixDarwinDylibNames,
|
||||||
|
darwin,
|
||||||
|
fontconfig,
|
||||||
|
libgdiplus,
|
||||||
|
libXrandr,
|
||||||
|
glib,
|
||||||
|
writeShellScriptBin,
|
||||||
|
blender,
|
||||||
|
openssl,
|
||||||
|
libkrb5,
|
||||||
|
icu,
|
||||||
|
}:
|
||||||
|
let
|
||||||
|
|
||||||
|
# blenderfarm (client) will run from the current workdir.
|
||||||
|
# It needs to create files there, so it cannot be in the nix store.
|
||||||
|
# We also need to create some files there so it can work with its
|
||||||
|
# server part.
|
||||||
|
USERHOMEDIR = "~/.local/share/blenderfarm";
|
||||||
|
blenderfarm-nix = writeShellScriptBin "blenderfarm-nix" ''
|
||||||
|
if [[ -z $BLENDERFARM_HOME && ! -d ${USERHOMEDIR} ]]; then
|
||||||
|
echo "Creating home for blenderfarm at ${USERHOMEDIR}"
|
||||||
|
echo "You can change that by setting BLENDERFARM_HOME to another directory"
|
||||||
|
fi
|
||||||
|
if [[ -z $BLENDERFARM_HOME ]]; then
|
||||||
|
BLENDERFARM_HOME=${USERHOMEDIR}
|
||||||
|
fi
|
||||||
|
mkdir -p $BLENDERFARM_HOME/BlenderData/nix-blender-linux64 > /dev/null 2>&1
|
||||||
|
ln -s ${blender}/bin/blender $BLENDERFARM_HOME/BlenderData/nix-blender-linux64/blender > /dev/null 2>&1
|
||||||
|
echo "nix-blender" > $BLENDERFARM_HOME/VersionCustom
|
||||||
|
cd $BLENDERFARM_HOME
|
||||||
|
exec -a "$0" @out@/bin/LogicReinc.BlendFarm "$@"
|
||||||
|
'';
|
||||||
|
in
|
||||||
|
|
||||||
|
buildDotnetModule rec {
|
||||||
|
pname = "blenderfarm";
|
||||||
|
version = "1.1.6";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "LogicReinc";
|
||||||
|
repo = "LogicReinc.BlendFarm";
|
||||||
|
rev = "v${version}";
|
||||||
|
hash = "sha256-2w2tdl5n0IFTuthY97NYMeyRe2r72jaKFfoNSjWQMM4=";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs =
|
||||||
|
[ ]
|
||||||
|
++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]
|
||||||
|
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||||
|
bintools
|
||||||
|
fixDarwinDylibNames
|
||||||
|
darwin.autoSignDarwinBinariesHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
stdenv.cc.cc.lib
|
||||||
|
fontconfig
|
||||||
|
openssl
|
||||||
|
libkrb5
|
||||||
|
icu
|
||||||
|
];
|
||||||
|
|
||||||
|
runtimeDeps = [
|
||||||
|
xz
|
||||||
|
pcre
|
||||||
|
libX11
|
||||||
|
libICE
|
||||||
|
libSM
|
||||||
|
libgdiplus
|
||||||
|
glib
|
||||||
|
libXrandr
|
||||||
|
fontconfig
|
||||||
|
] ++ lib.optionals stdenv.hostPlatform.isLinux [ blender ];
|
||||||
|
|
||||||
|
# there is no "*.so.3" or "*.so.5" in nixpkgs. So ignore the warning
|
||||||
|
# and add it later
|
||||||
|
autoPatchelfIgnoreMissingDeps = [
|
||||||
|
"libpcre.so.3"
|
||||||
|
"liblzma.so.5"
|
||||||
|
];
|
||||||
|
|
||||||
|
dotnet-sdk = dotnetCorePackages.sdk_6_0;
|
||||||
|
dotnet-runtime = dotnetCorePackages.runtime_6_0;
|
||||||
|
|
||||||
|
projectFile = [
|
||||||
|
"LogicReinc.BlendFarm.Client/LogicReinc.BlendFarm.Client.csproj"
|
||||||
|
"LogicReinc.BlendFarm.Server/LogicReinc.BlendFarm.Server.csproj"
|
||||||
|
"LogicReinc.BlendFarm/LogicReinc.BlendFarm.csproj"
|
||||||
|
];
|
||||||
|
nugetDeps = ./deps.nix;
|
||||||
|
executables = [
|
||||||
|
"LogicReinc.BlendFarm"
|
||||||
|
"LogicReinc.BlendFarm.Server"
|
||||||
|
];
|
||||||
|
|
||||||
|
# add libraries not found by autopatchelf
|
||||||
|
libPath = lib.makeLibraryPath [
|
||||||
|
pcre
|
||||||
|
xz
|
||||||
|
];
|
||||||
|
makeWrapperArgs = [ "--prefix LD_LIBRARY_PATH : ${libPath}" ];
|
||||||
|
|
||||||
|
postInstall =
|
||||||
|
lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp -v ${blenderfarm-nix}/bin/blenderfarm-nix $out/bin
|
||||||
|
substituteInPlace $out/bin/blenderfarm-nix --subst-var out
|
||||||
|
''
|
||||||
|
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||||
|
ln -s ${libgdiplus}/lib/libgdiplus.dylib $out/lib/blenderfarm/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "A open-source, cross-platform, stand-alone, Network Renderer for Blender";
|
||||||
|
homepage = "https://github.com/LogicReinc/LogicReinc.BlendFarm";
|
||||||
|
license = with licenses; [ gpl3Plus ];
|
||||||
|
maintainers = with maintainers; [ gador ];
|
||||||
|
mainProgram = "blenderfarm-nix";
|
||||||
|
platforms = platforms.unix;
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -16,15 +16,15 @@
|
|||||||
, xdg-utils
|
, xdg-utils
|
||||||
}: rustPlatform.buildRustPackage rec {
|
}: rustPlatform.buildRustPackage rec {
|
||||||
pname = "radicle-node";
|
pname = "radicle-node";
|
||||||
version = "1.0.0-rc.11";
|
version = "1.0.0-rc.12";
|
||||||
env.RADICLE_VERSION = version;
|
env.RADICLE_VERSION = version;
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "https://seed.radicle.xyz/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git";
|
url = "https://seed.radicle.xyz/z3gqcJUoA1n9HaHKufZs5FCSGazv5.git";
|
||||||
rev = "refs/namespaces/z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/refs/tags/v${version}";
|
rev = "refs/namespaces/z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT/refs/tags/v${version}";
|
||||||
hash = "sha256-P1Gg2uk87ppco7CAPjEqN0uqgb0K8apOSC7cfdgaT0Y=";
|
hash = "sha256-bXFhufmMgJ+bX4PASIUPmNQ2L5Y8LHJ+pLevpJAYkYc=";
|
||||||
};
|
};
|
||||||
cargoHash = "sha256-M01NjqvMSaa3+YPb4vDtIucBeF5BYx3cpmMoLJOwRsI=";
|
cargoHash = "sha256-CAxy9J5bOPHedf6g7TEfM35F+Batom6g2V3k7CPC8Sk=";
|
||||||
|
|
||||||
nativeBuildInputs = [ asciidoctor installShellFiles makeWrapper ];
|
nativeBuildInputs = [ asciidoctor installShellFiles makeWrapper ];
|
||||||
nativeCheckInputs = [ git ];
|
nativeCheckInputs = [ git ];
|
||||||
|
|||||||
@@ -1,23 +1,34 @@
|
|||||||
{ lib, stdenv
|
{
|
||||||
, fetchgit
|
lib,
|
||||||
, cmake
|
stdenv,
|
||||||
, linux-pam
|
fetchgit,
|
||||||
, enablePython ? false
|
cmake,
|
||||||
, python ? null
|
linux-pam,
|
||||||
|
substituteAll,
|
||||||
|
enablePython ? false,
|
||||||
|
python ? null,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
assert enablePython -> python != null;
|
assert enablePython -> python != null;
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "libpam-wrapper";
|
pname = "libpam-wrapper";
|
||||||
version = "1.1.3";
|
version = "1.1.5";
|
||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = "git://git.samba.org/pam_wrapper.git";
|
url = "git://git.samba.org/pam_wrapper.git";
|
||||||
rev = "pam_wrapper-${version}";
|
rev = "pam_wrapper-${version}";
|
||||||
sha256 = "00mqhsashx7njrvxz085d0b88nizhdy7m3x17ip5yhvwsl63km6p";
|
hash = "sha256-AtfkiCUvCxUfll6lOlbMyy5AhS5R2BGF1+ecC1VuwzM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
(substituteAll {
|
||||||
|
src = ./python.patch;
|
||||||
|
siteDir = if enablePython then "${python.sitePackages}" else "";
|
||||||
|
includeDir = if enablePython then "include/${lib.versions.major python.version}.${lib.versions.minor python.version}" else "";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ cmake ] ++ lib.optionals enablePython [ python ];
|
nativeBuildInputs = [ cmake ] ++ lib.optionals enablePython [ python ];
|
||||||
|
|
||||||
# We must use linux-pam, using openpam will result in broken fprintd.
|
# We must use linux-pam, using openpam will result in broken fprintd.
|
||||||
|
|||||||
38
pkgs/development/libraries/libpam-wrapper/python.patch
Normal file
38
pkgs/development/libraries/libpam-wrapper/python.patch
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
diff --git a/cmake/Modules/FindPythonSiteLibs.cmake b/cmake/Modules/FindPythonSiteLibs.cmake
|
||||||
|
index ab2931e..08e2c98 100644
|
||||||
|
--- a/cmake/Modules/FindPythonSiteLibs.cmake
|
||||||
|
+++ b/cmake/Modules/FindPythonSiteLibs.cmake
|
||||||
|
@@ -27,30 +27,9 @@
|
||||||
|
|
||||||
|
if (PYTHON_EXECUTABLE)
|
||||||
|
### PYTHON_SITELIB
|
||||||
|
- execute_process(
|
||||||
|
- COMMAND
|
||||||
|
- ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(plat_specific=True, prefix=''))"
|
||||||
|
- OUTPUT_VARIABLE
|
||||||
|
- PYTHON_SITELIB_OUTPUT_VARIABLE
|
||||||
|
- RESULT_VARIABLE
|
||||||
|
- PYTHON_SITELIB_RESULT_VARIABLE
|
||||||
|
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
- )
|
||||||
|
- if (NOT PYTHON_SITELIB_RESULT_VARIABLE)
|
||||||
|
- file(TO_CMAKE_PATH "${PYTHON_SITELIB_OUTPUT_VARIABLE}" PYTHON_SITELIB)
|
||||||
|
- endif ()
|
||||||
|
+ file(TO_CMAKE_PATH "@siteDir@" PYTHON_SITELIB)
|
||||||
|
+
|
||||||
|
|
||||||
|
### PYTHON_SITEINC
|
||||||
|
- execute_process(
|
||||||
|
- COMMAND
|
||||||
|
- ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_inc; print(get_python_inc(plat_specific=True, prefix=''))"
|
||||||
|
- OUTPUT_VARIABLE
|
||||||
|
- PYTHON_SITEINC_OUTPUT_VARIABLE
|
||||||
|
- RESULT_VARIABLE
|
||||||
|
- PYTHON_SITEINC_RESULT_VARIABLE
|
||||||
|
- OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
- )
|
||||||
|
- if (NOT PYTHON_SITEINC_RESULT_VARIABLE)
|
||||||
|
- file(TO_CMAKE_PATH "${PYTHON_SITEINC_OUTPUT_VARIABLE}" PYTHON_SITEINC)
|
||||||
|
- endif ()
|
||||||
|
+ file(TO_CMAKE_PATH "@includeDir@" PYTHON_SITEINC)
|
||||||
|
endif (PYTHON_EXECUTABLE)
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
|
aiosmtpd,
|
||||||
buildPythonPackage,
|
buildPythonPackage,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
poetry-core,
|
poetry-core,
|
||||||
@@ -11,7 +12,7 @@
|
|||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
pname = "flask-mailman";
|
pname = "flask-mailman";
|
||||||
version = "1.1.0";
|
version = "1.1.1";
|
||||||
format = "pyproject";
|
format = "pyproject";
|
||||||
|
|
||||||
disabled = pythonOlder "3.7";
|
disabled = pythonOlder "3.7";
|
||||||
@@ -20,7 +21,7 @@ buildPythonPackage rec {
|
|||||||
owner = "waynerv";
|
owner = "waynerv";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-2ll5+D35dQN3r7gDpY1iSOuJBlqMorhjhFohPug8GK8=";
|
hash = "sha256-0kD3rxFDJ7FcmBLVju75z1nf6U/7XfjiLD/oM/VP4jQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ poetry-core ];
|
nativeBuildInputs = [ poetry-core ];
|
||||||
@@ -30,7 +31,7 @@ buildPythonPackage rec {
|
|||||||
mkdocs-material-extensions
|
mkdocs-material-extensions
|
||||||
];
|
];
|
||||||
|
|
||||||
nativeCheckInputs = [ pytestCheckHook ];
|
nativeCheckInputs = [ aiosmtpd pytestCheckHook ];
|
||||||
|
|
||||||
pythonImportsCheck = [ "flask_mailman" ];
|
pythonImportsCheck = [ "flask_mailman" ];
|
||||||
|
|
||||||
|
|||||||
@@ -61,6 +61,9 @@ buildPythonPackage rec {
|
|||||||
|
|
||||||
nativeBuildInputs = [ setuptools ];
|
nativeBuildInputs = [ setuptools ];
|
||||||
|
|
||||||
|
# flask-login>=0.6.2 not satisfied by version 0.7.0.dev0
|
||||||
|
pythonRelaxDeps = [ "flask-login" ];
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
email-validator
|
email-validator
|
||||||
flask
|
flask
|
||||||
|
|||||||
@@ -4,8 +4,8 @@
|
|||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
pytestCheckHook,
|
pytestCheckHook,
|
||||||
pythonOlder,
|
pythonOlder,
|
||||||
pythonAtLeast,
|
|
||||||
setuptools,
|
setuptools,
|
||||||
|
fetchpatch,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildPythonPackage rec {
|
buildPythonPackage rec {
|
||||||
@@ -13,7 +13,7 @@ buildPythonPackage rec {
|
|||||||
version = "0.7.17";
|
version = "0.7.17";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
disabled = pythonOlder "3.8" || pythonAtLeast "3.12";
|
disabled = pythonOlder "3.8";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "ponyorm";
|
owner = "ponyorm";
|
||||||
@@ -21,6 +21,14 @@ buildPythonPackage rec {
|
|||||||
rev = "refs/tags/v${version}";
|
rev = "refs/tags/v${version}";
|
||||||
hash = "sha256-wBqw+YHKlxYplgsYL1pbkusHyPfCaVPcH/Yku6WDYbE=";
|
hash = "sha256-wBqw+YHKlxYplgsYL1pbkusHyPfCaVPcH/Yku6WDYbE=";
|
||||||
};
|
};
|
||||||
|
patches = [
|
||||||
|
# https://github.com/ponyorm/pony/pull/713
|
||||||
|
(fetchpatch {
|
||||||
|
name = "py12-compat.patch";
|
||||||
|
url = "https://github.com/ponyorm/pony/pull/713/commits/5a37f6d59b6433d17d6d56b54f3726190e98c98f.patch";
|
||||||
|
hash = "sha256-niOoANOYHqrcmEXRZEDew2BM8P/s7UFnn0qpgB8V0Mk=";
|
||||||
|
})
|
||||||
|
];
|
||||||
|
|
||||||
nativeBuildInputs = [ setuptools ];
|
nativeBuildInputs = [ setuptools ];
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
xorg,
|
xorg,
|
||||||
python,
|
python,
|
||||||
mock,
|
mock,
|
||||||
nose,
|
pynose,
|
||||||
pytestCheckHook,
|
pytestCheckHook,
|
||||||
util-linux,
|
util-linux,
|
||||||
}:
|
}:
|
||||||
@@ -36,7 +36,7 @@ buildPythonPackage rec {
|
|||||||
nativeCheckInputs = [
|
nativeCheckInputs = [
|
||||||
pytestCheckHook
|
pytestCheckHook
|
||||||
mock
|
mock
|
||||||
nose
|
pynose
|
||||||
util-linux
|
util-linux
|
||||||
xorg.xauth
|
xorg.xauth
|
||||||
xorg.xvfb
|
xorg.xvfb
|
||||||
|
|||||||
@@ -1,4 +1,9 @@
|
|||||||
generic: {
|
generic: {
|
||||||
|
v64 = generic {
|
||||||
|
version = "6.4.15";
|
||||||
|
hash = "sha256-CtmNCuzDVchijinWcop3lGUTVGS2JbiQCbmusyXBQvY=";
|
||||||
|
vendorHash = null;
|
||||||
|
};
|
||||||
v60 = generic {
|
v60 = generic {
|
||||||
version = "6.0.26";
|
version = "6.0.26";
|
||||||
hash = "sha256-MIOKe5hqfDecB1oWZKzbFmJCsQLuAGtp21l2WxxVG+g=";
|
hash = "sha256-MIOKe5hqfDecB1oWZKzbFmJCsQLuAGtp21l2WxxVG+g=";
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{ lib, stdenv
|
{ lib, stdenv
|
||||||
, fetchFromGitLab
|
, fetchFromGitLab
|
||||||
, fetchpatch
|
|
||||||
, pkg-config
|
, pkg-config
|
||||||
, gobject-introspection
|
, gobject-introspection
|
||||||
, meson
|
, meson
|
||||||
@@ -24,7 +23,7 @@
|
|||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "fprintd";
|
pname = "fprintd";
|
||||||
version = "1.94.2";
|
version = "1.94.3";
|
||||||
outputs = [ "out" "devdoc" ];
|
outputs = [ "out" "devdoc" ];
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
@@ -32,17 +31,9 @@ stdenv.mkDerivation rec {
|
|||||||
owner = "libfprint";
|
owner = "libfprint";
|
||||||
repo = pname;
|
repo = pname;
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-ePhcIZyXoGr8XlBuzKjpibU9D/44iCXYBlpVR9gcswQ=";
|
sha256 = "sha256-shH+ctQAx4fpTMWTmo3wB45ZS38Jf8RknryPabfZ6QE=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
|
||||||
# backport upstream patch fixing tests
|
|
||||||
(fetchpatch {
|
|
||||||
url = "https://gitlab.freedesktop.org/libfprint/fprintd/-/commit/ae04fa989720279e5558c3b8ff9ebe1959b1cf36.patch";
|
|
||||||
sha256 = "sha256-jW5vlzrbZQ1gUDLBf7G50GnZfZxhlnL2Eu+9Bghdwdw=";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
pkg-config
|
pkg-config
|
||||||
meson
|
meson
|
||||||
|
|||||||
@@ -1,11 +1,24 @@
|
|||||||
{ lib, stdenv, pass, fetchFromGitHub, pythonPackages, makeWrapper, gnupg }:
|
{
|
||||||
|
lib,
|
||||||
|
stdenv,
|
||||||
|
pass,
|
||||||
|
fetchFromGitHub,
|
||||||
|
pythonPackages,
|
||||||
|
makeWrapper,
|
||||||
|
gnupg,
|
||||||
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
pythonEnv = pythonPackages.python.withPackages (p: [ p.requests p.setuptools p.zxcvbn ]);
|
pythonEnv = pythonPackages.python.withPackages (p: [
|
||||||
|
p.requests
|
||||||
in stdenv.mkDerivation rec {
|
p.setuptools
|
||||||
|
p.zxcvbn
|
||||||
|
]);
|
||||||
|
in
|
||||||
|
pythonPackages.buildPythonApplication rec {
|
||||||
pname = "pass-audit";
|
pname = "pass-audit";
|
||||||
version = "1.2";
|
version = "1.2";
|
||||||
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "roddhjav";
|
owner = "roddhjav";
|
||||||
@@ -22,29 +35,42 @@ in stdenv.mkDerivation rec {
|
|||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace audit.bash \
|
substituteInPlace audit.bash \
|
||||||
--replace-fail 'python3' "${pythonEnv.interpreter}"
|
--replace-fail 'python3' "${pythonEnv.interpreter}"
|
||||||
substituteInPlace Makefile \
|
rm Makefile
|
||||||
--replace-fail "install --root" "install --prefix ''' --root"
|
patchShebangs audit.bash
|
||||||
'';
|
'';
|
||||||
|
|
||||||
outputs = [ "out" "man" ];
|
outputs = [
|
||||||
|
"out"
|
||||||
|
"man"
|
||||||
|
];
|
||||||
|
|
||||||
buildInputs = [ pythonEnv ];
|
build-system = with pythonPackages; [ setuptools ];
|
||||||
nativeBuildInputs = [ makeWrapper ];
|
|
||||||
|
dependencies = [ pythonEnv ];
|
||||||
|
|
||||||
# Tests freeze on darwin with: pass-audit-1.1 (checkPhase): EOFError
|
# Tests freeze on darwin with: pass-audit-1.1 (checkPhase): EOFError
|
||||||
doCheck = !stdenv.isDarwin;
|
doCheck = !stdenv.isDarwin;
|
||||||
nativeCheckInputs = [ pythonPackages.green pass gnupg ];
|
nativeCheckInputs = [
|
||||||
|
pythonPackages.green
|
||||||
|
pass
|
||||||
|
gnupg
|
||||||
|
];
|
||||||
|
|
||||||
checkPhase = ''
|
checkPhase = ''
|
||||||
${pythonEnv.interpreter} -m green -q
|
${pythonEnv.interpreter} -m green -q
|
||||||
'';
|
'';
|
||||||
|
|
||||||
installFlags = [ "DESTDIR=${placeholder "out"}" "PREFIX=" ];
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
|
mkdir -p $out/lib/password-store/extensions
|
||||||
|
install -m777 audit.bash $out/lib/password-store/extensions/audit.bash
|
||||||
|
cp -r share $out/
|
||||||
wrapProgram $out/lib/password-store/extensions/audit.bash \
|
wrapProgram $out/lib/password-store/extensions/audit.bash \
|
||||||
--prefix PYTHONPATH : "$out/${pythonEnv.sitePackages}" \
|
--prefix PYTHONPATH : "$out/${pythonEnv.sitePackages}" \
|
||||||
--run "export COMMAND"
|
--run "export COMMAND"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
pythonImportsCheck = [ "pass_audit" ];
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "Pass extension for auditing your password repository";
|
description = "Pass extension for auditing your password repository";
|
||||||
homepage = "https://github.com/roddhjav/pass-audit";
|
homepage = "https://github.com/roddhjav/pass-audit";
|
||||||
|
|||||||
@@ -26554,6 +26554,7 @@ with pkgs;
|
|||||||
};
|
};
|
||||||
|
|
||||||
zabbix60 = recurseIntoAttrs (zabbixFor "v60");
|
zabbix60 = recurseIntoAttrs (zabbixFor "v60");
|
||||||
|
zabbix64 = recurseIntoAttrs (zabbixFor "v64");
|
||||||
zabbix50 = recurseIntoAttrs (zabbixFor "v50");
|
zabbix50 = recurseIntoAttrs (zabbixFor "v50");
|
||||||
|
|
||||||
zabbix = zabbix60;
|
zabbix = zabbix60;
|
||||||
|
|||||||
Reference in New Issue
Block a user