Merge staging-next into staging
This commit is contained in:
commit
14bdc27ee1
238
nixos/lib/systemd-network-units.nix
Normal file
238
nixos/lib/systemd-network-units.nix
Normal file
@ -0,0 +1,238 @@
|
||||
{ lib, systemdUtils }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
attrsToSection = systemdUtils.lib.attrsToSection;
|
||||
commonMatchText = def:
|
||||
optionalString (def.matchConfig != { }) ''
|
||||
[Match]
|
||||
${attrsToSection def.matchConfig}
|
||||
'';
|
||||
in {
|
||||
linkToUnit = def:
|
||||
commonMatchText def + ''
|
||||
[Link]
|
||||
${attrsToSection def.linkConfig}
|
||||
'' + def.extraConfig;
|
||||
|
||||
netdevToUnit = def:
|
||||
commonMatchText def + ''
|
||||
[NetDev]
|
||||
${attrsToSection def.netdevConfig}
|
||||
'' + optionalString (def.vlanConfig != { }) ''
|
||||
[VLAN]
|
||||
${attrsToSection def.vlanConfig}
|
||||
'' + optionalString (def.macvlanConfig != { }) ''
|
||||
[MACVLAN]
|
||||
${attrsToSection def.macvlanConfig}
|
||||
'' + optionalString (def.vxlanConfig != { }) ''
|
||||
[VXLAN]
|
||||
${attrsToSection def.vxlanConfig}
|
||||
'' + optionalString (def.tunnelConfig != { }) ''
|
||||
[Tunnel]
|
||||
${attrsToSection def.tunnelConfig}
|
||||
'' + optionalString (def.fooOverUDPConfig != { }) ''
|
||||
[FooOverUDP]
|
||||
${attrsToSection def.fooOverUDPConfig}
|
||||
'' + optionalString (def.peerConfig != { }) ''
|
||||
[Peer]
|
||||
${attrsToSection def.peerConfig}
|
||||
'' + optionalString (def.tunConfig != { }) ''
|
||||
[Tun]
|
||||
${attrsToSection def.tunConfig}
|
||||
'' + optionalString (def.tapConfig != { }) ''
|
||||
[Tap]
|
||||
${attrsToSection def.tapConfig}
|
||||
'' + optionalString (def.l2tpConfig != { }) ''
|
||||
[L2TP]
|
||||
${attrsToSection def.l2tpConfig}
|
||||
'' + flip concatMapStrings def.l2tpSessions (x: ''
|
||||
[L2TPSession]
|
||||
${attrsToSection x.l2tpSessionConfig}
|
||||
'') + optionalString (def.wireguardConfig != { }) ''
|
||||
[WireGuard]
|
||||
${attrsToSection def.wireguardConfig}
|
||||
'' + flip concatMapStrings def.wireguardPeers (x: ''
|
||||
[WireGuardPeer]
|
||||
${attrsToSection x.wireguardPeerConfig}
|
||||
'') + optionalString (def.bondConfig != { }) ''
|
||||
[Bond]
|
||||
${attrsToSection def.bondConfig}
|
||||
'' + optionalString (def.xfrmConfig != { }) ''
|
||||
[Xfrm]
|
||||
${attrsToSection def.xfrmConfig}
|
||||
'' + optionalString (def.vrfConfig != { }) ''
|
||||
[VRF]
|
||||
${attrsToSection def.vrfConfig}
|
||||
'' + optionalString (def.batmanAdvancedConfig != { }) ''
|
||||
[BatmanAdvanced]
|
||||
${attrsToSection def.batmanAdvancedConfig}
|
||||
'' + def.extraConfig;
|
||||
|
||||
networkToUnit = def:
|
||||
commonMatchText def + optionalString (def.linkConfig != { }) ''
|
||||
[Link]
|
||||
${attrsToSection def.linkConfig}
|
||||
'' + ''
|
||||
[Network]
|
||||
'' + attrsToSection def.networkConfig
|
||||
+ optionalString (def.address != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Address=${s}") def.address)}
|
||||
'' + optionalString (def.gateway != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Gateway=${s}") def.gateway)}
|
||||
'' + optionalString (def.dns != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "DNS=${s}") def.dns)}
|
||||
'' + optionalString (def.ntp != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "NTP=${s}") def.ntp)}
|
||||
'' + optionalString (def.bridge != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Bridge=${s}") def.bridge)}
|
||||
'' + optionalString (def.bond != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Bond=${s}") def.bond)}
|
||||
'' + optionalString (def.vrf != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "VRF=${s}") def.vrf)}
|
||||
'' + optionalString (def.vlan != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "VLAN=${s}") def.vlan)}
|
||||
'' + optionalString (def.macvlan != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "MACVLAN=${s}") def.macvlan)}
|
||||
'' + optionalString (def.vxlan != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "VXLAN=${s}") def.vxlan)}
|
||||
'' + optionalString (def.tunnel != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Tunnel=${s}") def.tunnel)}
|
||||
'' + optionalString (def.xfrm != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Xfrm=${s}") def.xfrm)}
|
||||
'' + "\n" + flip concatMapStrings def.addresses (x: ''
|
||||
[Address]
|
||||
${attrsToSection x.addressConfig}
|
||||
'') + flip concatMapStrings def.routingPolicyRules (x: ''
|
||||
[RoutingPolicyRule]
|
||||
${attrsToSection x.routingPolicyRuleConfig}
|
||||
'') + flip concatMapStrings def.routes (x: ''
|
||||
[Route]
|
||||
${attrsToSection x.routeConfig}
|
||||
'') + optionalString (def.dhcpV4Config != { }) ''
|
||||
[DHCPv4]
|
||||
${attrsToSection def.dhcpV4Config}
|
||||
'' + optionalString (def.dhcpV6Config != { }) ''
|
||||
[DHCPv6]
|
||||
${attrsToSection def.dhcpV6Config}
|
||||
'' + optionalString (def.dhcpPrefixDelegationConfig != { }) ''
|
||||
[DHCPPrefixDelegation]
|
||||
${attrsToSection def.dhcpPrefixDelegationConfig}
|
||||
'' + optionalString (def.ipv6AcceptRAConfig != { }) ''
|
||||
[IPv6AcceptRA]
|
||||
${attrsToSection def.ipv6AcceptRAConfig}
|
||||
'' + optionalString (def.dhcpServerConfig != { }) ''
|
||||
[DHCPServer]
|
||||
${attrsToSection def.dhcpServerConfig}
|
||||
'' + optionalString (def.ipv6SendRAConfig != { }) ''
|
||||
[IPv6SendRA]
|
||||
${attrsToSection def.ipv6SendRAConfig}
|
||||
'' + flip concatMapStrings def.ipv6Prefixes (x: ''
|
||||
[IPv6Prefix]
|
||||
${attrsToSection x.ipv6PrefixConfig}
|
||||
'') + flip concatMapStrings def.ipv6RoutePrefixes (x: ''
|
||||
[IPv6RoutePrefix]
|
||||
${attrsToSection x.ipv6RoutePrefixConfig}
|
||||
'') + flip concatMapStrings def.dhcpServerStaticLeases (x: ''
|
||||
[DHCPServerStaticLease]
|
||||
${attrsToSection x.dhcpServerStaticLeaseConfig}
|
||||
'') + optionalString (def.bridgeConfig != { }) ''
|
||||
[Bridge]
|
||||
${attrsToSection def.bridgeConfig}
|
||||
'' + flip concatMapStrings def.bridgeFDBs (x: ''
|
||||
[BridgeFDB]
|
||||
${attrsToSection x.bridgeFDBConfig}
|
||||
'') + flip concatMapStrings def.bridgeMDBs (x: ''
|
||||
[BridgeMDB]
|
||||
${attrsToSection x.bridgeMDBConfig}
|
||||
'') + optionalString (def.lldpConfig != { }) ''
|
||||
[LLDP]
|
||||
${attrsToSection def.lldpConfig}
|
||||
'' + optionalString (def.canConfig != { }) ''
|
||||
[CAN]
|
||||
${attrsToSection def.canConfig}
|
||||
'' + optionalString (def.ipoIBConfig != { }) ''
|
||||
[IPoIB]
|
||||
${attrsToSection def.ipoIBConfig}
|
||||
'' + optionalString (def.qdiscConfig != { }) ''
|
||||
[QDisc]
|
||||
${attrsToSection def.qdiscConfig}
|
||||
'' + optionalString (def.networkEmulatorConfig != { }) ''
|
||||
[NetworkEmulator]
|
||||
${attrsToSection def.networkEmulatorConfig}
|
||||
'' + optionalString (def.tokenBucketFilterConfig != { }) ''
|
||||
[TokenBucketFilter]
|
||||
${attrsToSection def.tokenBucketFilterConfig}
|
||||
'' + optionalString (def.pieConfig != { }) ''
|
||||
[PIE]
|
||||
${attrsToSection def.pieConfig}
|
||||
'' + optionalString (def.flowQueuePIEConfig != { }) ''
|
||||
[FlowQueuePIE]
|
||||
${attrsToSection def.flowQueuePIEConfig}
|
||||
'' + optionalString (def.stochasticFairBlueConfig != { }) ''
|
||||
[StochasticFairBlue]
|
||||
${attrsToSection def.stochasticFairBlueConfig}
|
||||
'' + optionalString (def.stochasticFairnessQueueingConfig != { }) ''
|
||||
[StochasticFairnessQueueing]
|
||||
${attrsToSection def.stochasticFairnessQueueingConfig}
|
||||
'' + optionalString (def.bfifoConfig != { }) ''
|
||||
[BFIFO]
|
||||
${attrsToSection def.bfifoConfig}
|
||||
'' + optionalString (def.pfifoConfig != { }) ''
|
||||
[PFIFO]
|
||||
${attrsToSection def.pfifoConfig}
|
||||
'' + optionalString (def.pfifoHeadDropConfig != { }) ''
|
||||
[PFIFOHeadDrop]
|
||||
${attrsToSection def.pfifoHeadDropConfig}
|
||||
'' + optionalString (def.pfifoFastConfig != { }) ''
|
||||
[PFIFOFast]
|
||||
${attrsToSection def.pfifoFastConfig}
|
||||
'' + optionalString (def.cakeConfig != { }) ''
|
||||
[CAKE]
|
||||
${attrsToSection def.cakeConfig}
|
||||
'' + optionalString (def.controlledDelayConfig != { }) ''
|
||||
[ControlledDelay]
|
||||
${attrsToSection def.controlledDelayConfig}
|
||||
'' + optionalString (def.deficitRoundRobinSchedulerConfig != { }) ''
|
||||
[DeficitRoundRobinScheduler]
|
||||
${attrsToSection def.deficitRoundRobinSchedulerConfig}
|
||||
'' + optionalString (def.deficitRoundRobinSchedulerClassConfig != { }) ''
|
||||
[DeficitRoundRobinSchedulerClass]
|
||||
${attrsToSection def.deficitRoundRobinSchedulerClassConfig}
|
||||
'' + optionalString (def.enhancedTransmissionSelectionConfig != { }) ''
|
||||
[EnhancedTransmissionSelection]
|
||||
${attrsToSection def.enhancedTransmissionSelectionConfig}
|
||||
'' + optionalString (def.genericRandomEarlyDetectionConfig != { }) ''
|
||||
[GenericRandomEarlyDetection]
|
||||
${attrsToSection def.genericRandomEarlyDetectionConfig}
|
||||
'' + optionalString (def.fairQueueingControlledDelayConfig != { }) ''
|
||||
[FairQueueingControlledDelay]
|
||||
${attrsToSection def.fairQueueingControlledDelayConfig}
|
||||
'' + optionalString (def.fairQueueingConfig != { }) ''
|
||||
[FairQueueing]
|
||||
${attrsToSection def.fairQueueingConfig}
|
||||
'' + optionalString (def.trivialLinkEqualizerConfig != { }) ''
|
||||
[TrivialLinkEqualizer]
|
||||
${attrsToSection def.trivialLinkEqualizerConfig}
|
||||
'' + optionalString (def.hierarchyTokenBucketConfig != { }) ''
|
||||
[HierarchyTokenBucket]
|
||||
${attrsToSection def.hierarchyTokenBucketConfig}
|
||||
'' + optionalString (def.hierarchyTokenBucketClassConfig != { }) ''
|
||||
[HierarchyTokenBucketClass]
|
||||
${attrsToSection def.hierarchyTokenBucketClassConfig}
|
||||
'' + optionalString (def.heavyHitterFilterConfig != { }) ''
|
||||
[HeavyHitterFilter]
|
||||
${attrsToSection def.heavyHitterFilterConfig}
|
||||
'' + optionalString (def.quickFairQueueingConfig != { }) ''
|
||||
[QuickFairQueueing]
|
||||
${attrsToSection def.quickFairQueueingConfig}
|
||||
'' + optionalString (def.quickFairQueueingConfigClass != { }) ''
|
||||
[QuickFairQueueingClass]
|
||||
${attrsToSection def.quickFairQueueingConfigClass}
|
||||
'' + flip concatMapStrings def.bridgeVLANs (x: ''
|
||||
[BridgeVLAN]
|
||||
${attrsToSection x.bridgeVLANConfig}
|
||||
'') + def.extraConfig;
|
||||
|
||||
}
|
@ -226,5 +226,8 @@ rec {
|
||||
lib = import ./systemd-lib.nix { inherit lib config pkgs; };
|
||||
unitOptions = import ./systemd-unit-options.nix { inherit lib systemdUtils; };
|
||||
types = import ./systemd-types.nix { inherit lib systemdUtils pkgs; };
|
||||
network = {
|
||||
units = import ./systemd-network-units.nix { inherit lib systemdUtils; };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -26,6 +26,15 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
webhookUrl = mkOption {
|
||||
type = types.string;
|
||||
default = "";
|
||||
description = lib.mdDoc ''
|
||||
WEBHOOK_URL for n8n, in case we're running behind a reverse proxy.
|
||||
This cannot be set through configuration and must reside in an environment variable.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
@ -44,6 +53,7 @@ in
|
||||
N8N_USER_FOLDER = "/var/lib/n8n";
|
||||
HOME = "/var/lib/n8n";
|
||||
N8N_CONFIG_FILES = "${configFile}";
|
||||
WEBHOOK_URL = "${webhookUrl}";
|
||||
|
||||
# Don't phone home
|
||||
N8N_DIAGNOSTICS_ENABLED = "false";
|
||||
|
@ -304,19 +304,19 @@ in
|
||||
'services.prometheus.exporters.sql.configFile'
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.scaphandre.enable -> (pkgs.stdenv.hostPlatform.isx86_64 == true);
|
||||
assertion = cfg.scaphandre.enable -> (pkgs.stdenv.targetPlatform.isx86_64 == true);
|
||||
message = ''
|
||||
Only x86_64 host platform architecture is not supported.
|
||||
Scaphandre only support x86_64 architectures.
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.scaphandre.enable -> ((lib.kernel.whenHelpers pkgs.linux.version).whenOlder "5.11" true).condition == false;
|
||||
message = ''
|
||||
A kernel version newer than '5.11' is required. ${pkgs.linux.version}
|
||||
Scaphandre requires a kernel version newer than '5.11', '${pkgs.linux.version}' given.
|
||||
'';
|
||||
} {
|
||||
assertion = cfg.scaphandre.enable -> (builtins.elem "intel_rapl_common" config.boot.kernelModules);
|
||||
message = ''
|
||||
Please enable 'intel_rapl_common' in 'boot.kernelModules'.
|
||||
Scaphandre needs 'intel_rapl_common' kernel module to be enabled. Please add it in 'boot.kernelModules'.
|
||||
'';
|
||||
} ] ++ (flip map (attrNames exporterOpts) (exporter: {
|
||||
assertion = cfg.${exporter}.firewallFilter != null -> cfg.${exporter}.openFirewall;
|
||||
|
@ -2,6 +2,7 @@
|
||||
|
||||
with utils.systemdUtils.unitOptions;
|
||||
with utils.systemdUtils.lib;
|
||||
with utils.systemdUtils.network.units;
|
||||
with lib;
|
||||
|
||||
let
|
||||
@ -2604,95 +2605,6 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
commonMatchText = def: optionalString (def.matchConfig != { }) ''
|
||||
[Match]
|
||||
${attrsToSection def.matchConfig}
|
||||
'';
|
||||
|
||||
linkToUnit = name: def:
|
||||
{ inherit (def) enable;
|
||||
text = commonMatchText def
|
||||
+ ''
|
||||
[Link]
|
||||
${attrsToSection def.linkConfig}
|
||||
''
|
||||
+ def.extraConfig;
|
||||
};
|
||||
|
||||
netdevToUnit = name: def:
|
||||
{ inherit (def) enable;
|
||||
text = commonMatchText def
|
||||
+ ''
|
||||
[NetDev]
|
||||
${attrsToSection def.netdevConfig}
|
||||
''
|
||||
+ optionalString (def.vlanConfig != { }) ''
|
||||
[VLAN]
|
||||
${attrsToSection def.vlanConfig}
|
||||
''
|
||||
+ optionalString (def.macvlanConfig != { }) ''
|
||||
[MACVLAN]
|
||||
${attrsToSection def.macvlanConfig}
|
||||
''
|
||||
+ optionalString (def.vxlanConfig != { }) ''
|
||||
[VXLAN]
|
||||
${attrsToSection def.vxlanConfig}
|
||||
''
|
||||
+ optionalString (def.tunnelConfig != { }) ''
|
||||
[Tunnel]
|
||||
${attrsToSection def.tunnelConfig}
|
||||
''
|
||||
+ optionalString (def.fooOverUDPConfig != { }) ''
|
||||
[FooOverUDP]
|
||||
${attrsToSection def.fooOverUDPConfig}
|
||||
''
|
||||
+ optionalString (def.peerConfig != { }) ''
|
||||
[Peer]
|
||||
${attrsToSection def.peerConfig}
|
||||
''
|
||||
+ optionalString (def.tunConfig != { }) ''
|
||||
[Tun]
|
||||
${attrsToSection def.tunConfig}
|
||||
''
|
||||
+ optionalString (def.tapConfig != { }) ''
|
||||
[Tap]
|
||||
${attrsToSection def.tapConfig}
|
||||
''
|
||||
+ optionalString (def.l2tpConfig != { }) ''
|
||||
[L2TP]
|
||||
${attrsToSection def.l2tpConfig}
|
||||
''
|
||||
+ flip concatMapStrings def.l2tpSessions (x: ''
|
||||
[L2TPSession]
|
||||
${attrsToSection x.l2tpSessionConfig}
|
||||
'')
|
||||
+ optionalString (def.wireguardConfig != { }) ''
|
||||
[WireGuard]
|
||||
${attrsToSection def.wireguardConfig}
|
||||
''
|
||||
+ flip concatMapStrings def.wireguardPeers (x: ''
|
||||
[WireGuardPeer]
|
||||
${attrsToSection x.wireguardPeerConfig}
|
||||
'')
|
||||
+ optionalString (def.bondConfig != { }) ''
|
||||
[Bond]
|
||||
${attrsToSection def.bondConfig}
|
||||
''
|
||||
+ optionalString (def.xfrmConfig != { }) ''
|
||||
[Xfrm]
|
||||
${attrsToSection def.xfrmConfig}
|
||||
''
|
||||
+ optionalString (def.vrfConfig != { }) ''
|
||||
[VRF]
|
||||
${attrsToSection def.vrfConfig}
|
||||
''
|
||||
+ optionalString (def.batmanAdvancedConfig != { }) ''
|
||||
[BatmanAdvanced]
|
||||
${attrsToSection def.batmanAdvancedConfig}
|
||||
''
|
||||
+ def.extraConfig;
|
||||
};
|
||||
|
||||
renderConfig = def:
|
||||
{ text = ''
|
||||
[Network]
|
||||
@ -2707,235 +2619,6 @@ let
|
||||
${attrsToSection def.dhcpV6Config}
|
||||
''; };
|
||||
|
||||
networkToUnit = name: def:
|
||||
{ inherit (def) enable;
|
||||
text = commonMatchText def
|
||||
+ optionalString (def.linkConfig != { }) ''
|
||||
[Link]
|
||||
${attrsToSection def.linkConfig}
|
||||
''
|
||||
+ ''
|
||||
[Network]
|
||||
''
|
||||
+ attrsToSection def.networkConfig
|
||||
+ optionalString (def.address != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Address=${s}") def.address)}
|
||||
''
|
||||
+ optionalString (def.gateway != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Gateway=${s}") def.gateway)}
|
||||
''
|
||||
+ optionalString (def.dns != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "DNS=${s}") def.dns)}
|
||||
''
|
||||
+ optionalString (def.ntp != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "NTP=${s}") def.ntp)}
|
||||
''
|
||||
+ optionalString (def.bridge != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Bridge=${s}") def.bridge)}
|
||||
''
|
||||
+ optionalString (def.bond != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Bond=${s}") def.bond)}
|
||||
''
|
||||
+ optionalString (def.vrf != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "VRF=${s}") def.vrf)}
|
||||
''
|
||||
+ optionalString (def.vlan != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "VLAN=${s}") def.vlan)}
|
||||
''
|
||||
+ optionalString (def.macvlan != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "MACVLAN=${s}") def.macvlan)}
|
||||
''
|
||||
+ optionalString (def.vxlan != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "VXLAN=${s}") def.vxlan)}
|
||||
''
|
||||
+ optionalString (def.tunnel != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Tunnel=${s}") def.tunnel)}
|
||||
''
|
||||
+ optionalString (def.xfrm != [ ]) ''
|
||||
${concatStringsSep "\n" (map (s: "Xfrm=${s}") def.xfrm)}
|
||||
''
|
||||
+ ''
|
||||
|
||||
''
|
||||
+ flip concatMapStrings def.addresses (x: ''
|
||||
[Address]
|
||||
${attrsToSection x.addressConfig}
|
||||
'')
|
||||
+ flip concatMapStrings def.routingPolicyRules (x: ''
|
||||
[RoutingPolicyRule]
|
||||
${attrsToSection x.routingPolicyRuleConfig}
|
||||
'')
|
||||
+ flip concatMapStrings def.routes (x: ''
|
||||
[Route]
|
||||
${attrsToSection x.routeConfig}
|
||||
'')
|
||||
+ optionalString (def.dhcpV4Config != { }) ''
|
||||
[DHCPv4]
|
||||
${attrsToSection def.dhcpV4Config}
|
||||
''
|
||||
+ optionalString (def.dhcpV6Config != { }) ''
|
||||
[DHCPv6]
|
||||
${attrsToSection def.dhcpV6Config}
|
||||
''
|
||||
+ optionalString (def.dhcpPrefixDelegationConfig != { }) ''
|
||||
[DHCPPrefixDelegation]
|
||||
${attrsToSection def.dhcpPrefixDelegationConfig}
|
||||
''
|
||||
+ optionalString (def.ipv6AcceptRAConfig != { }) ''
|
||||
[IPv6AcceptRA]
|
||||
${attrsToSection def.ipv6AcceptRAConfig}
|
||||
''
|
||||
+ optionalString (def.dhcpServerConfig != { }) ''
|
||||
[DHCPServer]
|
||||
${attrsToSection def.dhcpServerConfig}
|
||||
''
|
||||
+ optionalString (def.ipv6SendRAConfig != { }) ''
|
||||
[IPv6SendRA]
|
||||
${attrsToSection def.ipv6SendRAConfig}
|
||||
''
|
||||
+ flip concatMapStrings def.ipv6Prefixes (x: ''
|
||||
[IPv6Prefix]
|
||||
${attrsToSection x.ipv6PrefixConfig}
|
||||
'')
|
||||
+ flip concatMapStrings def.ipv6RoutePrefixes (x: ''
|
||||
[IPv6RoutePrefix]
|
||||
${attrsToSection x.ipv6RoutePrefixConfig}
|
||||
'')
|
||||
+ flip concatMapStrings def.dhcpServerStaticLeases (x: ''
|
||||
[DHCPServerStaticLease]
|
||||
${attrsToSection x.dhcpServerStaticLeaseConfig}
|
||||
'')
|
||||
+ optionalString (def.bridgeConfig != { }) ''
|
||||
[Bridge]
|
||||
${attrsToSection def.bridgeConfig}
|
||||
''
|
||||
+ flip concatMapStrings def.bridgeFDBs (x: ''
|
||||
[BridgeFDB]
|
||||
${attrsToSection x.bridgeFDBConfig}
|
||||
'')
|
||||
+ flip concatMapStrings def.bridgeMDBs (x: ''
|
||||
[BridgeMDB]
|
||||
${attrsToSection x.bridgeMDBConfig}
|
||||
'')
|
||||
+ optionalString (def.lldpConfig != { }) ''
|
||||
[LLDP]
|
||||
${attrsToSection def.lldpConfig}
|
||||
''
|
||||
+ optionalString (def.canConfig != { }) ''
|
||||
[CAN]
|
||||
${attrsToSection def.canConfig}
|
||||
''
|
||||
+ optionalString (def.ipoIBConfig != { }) ''
|
||||
[IPoIB]
|
||||
${attrsToSection def.ipoIBConfig}
|
||||
''
|
||||
+ optionalString (def.qdiscConfig != { }) ''
|
||||
[QDisc]
|
||||
${attrsToSection def.qdiscConfig}
|
||||
''
|
||||
+ optionalString (def.networkEmulatorConfig != { }) ''
|
||||
[NetworkEmulator]
|
||||
${attrsToSection def.networkEmulatorConfig}
|
||||
''
|
||||
+ optionalString (def.tokenBucketFilterConfig != { }) ''
|
||||
[TokenBucketFilter]
|
||||
${attrsToSection def.tokenBucketFilterConfig}
|
||||
''
|
||||
+ optionalString (def.pieConfig != { }) ''
|
||||
[PIE]
|
||||
${attrsToSection def.pieConfig}
|
||||
''
|
||||
+ optionalString (def.flowQueuePIEConfig != { }) ''
|
||||
[FlowQueuePIE]
|
||||
${attrsToSection def.flowQueuePIEConfig}
|
||||
''
|
||||
+ optionalString (def.stochasticFairBlueConfig != { }) ''
|
||||
[StochasticFairBlue]
|
||||
${attrsToSection def.stochasticFairBlueConfig}
|
||||
''
|
||||
+ optionalString (def.stochasticFairnessQueueingConfig != { }) ''
|
||||
[StochasticFairnessQueueing]
|
||||
${attrsToSection def.stochasticFairnessQueueingConfig}
|
||||
''
|
||||
+ optionalString (def.bfifoConfig != { }) ''
|
||||
[BFIFO]
|
||||
${attrsToSection def.bfifoConfig}
|
||||
''
|
||||
+ optionalString (def.pfifoConfig != { }) ''
|
||||
[PFIFO]
|
||||
${attrsToSection def.pfifoConfig}
|
||||
''
|
||||
+ optionalString (def.pfifoHeadDropConfig != { }) ''
|
||||
[PFIFOHeadDrop]
|
||||
${attrsToSection def.pfifoHeadDropConfig}
|
||||
''
|
||||
+ optionalString (def.pfifoFastConfig != { }) ''
|
||||
[PFIFOFast]
|
||||
${attrsToSection def.pfifoFastConfig}
|
||||
''
|
||||
+ optionalString (def.cakeConfig != { }) ''
|
||||
[CAKE]
|
||||
${attrsToSection def.cakeConfig}
|
||||
''
|
||||
+ optionalString (def.controlledDelayConfig != { }) ''
|
||||
[ControlledDelay]
|
||||
${attrsToSection def.controlledDelayConfig}
|
||||
''
|
||||
+ optionalString (def.deficitRoundRobinSchedulerConfig != { }) ''
|
||||
[DeficitRoundRobinScheduler]
|
||||
${attrsToSection def.deficitRoundRobinSchedulerConfig}
|
||||
''
|
||||
+ optionalString (def.deficitRoundRobinSchedulerClassConfig != { }) ''
|
||||
[DeficitRoundRobinSchedulerClass]
|
||||
${attrsToSection def.deficitRoundRobinSchedulerClassConfig}
|
||||
''
|
||||
+ optionalString (def.enhancedTransmissionSelectionConfig != { }) ''
|
||||
[EnhancedTransmissionSelection]
|
||||
${attrsToSection def.enhancedTransmissionSelectionConfig}
|
||||
''
|
||||
+ optionalString (def.genericRandomEarlyDetectionConfig != { }) ''
|
||||
[GenericRandomEarlyDetection]
|
||||
${attrsToSection def.genericRandomEarlyDetectionConfig}
|
||||
''
|
||||
+ optionalString (def.fairQueueingControlledDelayConfig != { }) ''
|
||||
[FairQueueingControlledDelay]
|
||||
${attrsToSection def.fairQueueingControlledDelayConfig}
|
||||
''
|
||||
+ optionalString (def.fairQueueingConfig != { }) ''
|
||||
[FairQueueing]
|
||||
${attrsToSection def.fairQueueingConfig}
|
||||
''
|
||||
+ optionalString (def.trivialLinkEqualizerConfig != { }) ''
|
||||
[TrivialLinkEqualizer]
|
||||
${attrsToSection def.trivialLinkEqualizerConfig}
|
||||
''
|
||||
+ optionalString (def.hierarchyTokenBucketConfig != { }) ''
|
||||
[HierarchyTokenBucket]
|
||||
${attrsToSection def.hierarchyTokenBucketConfig}
|
||||
''
|
||||
+ optionalString (def.hierarchyTokenBucketClassConfig != { }) ''
|
||||
[HierarchyTokenBucketClass]
|
||||
${attrsToSection def.hierarchyTokenBucketClassConfig}
|
||||
''
|
||||
+ optionalString (def.heavyHitterFilterConfig != { }) ''
|
||||
[HeavyHitterFilter]
|
||||
${attrsToSection def.heavyHitterFilterConfig}
|
||||
''
|
||||
+ optionalString (def.quickFairQueueingConfig != { }) ''
|
||||
[QuickFairQueueing]
|
||||
${attrsToSection def.quickFairQueueingConfig}
|
||||
''
|
||||
+ optionalString (def.quickFairQueueingConfigClass != { }) ''
|
||||
[QuickFairQueueingClass]
|
||||
${attrsToSection def.quickFairQueueingConfigClass}
|
||||
''
|
||||
+ flip concatMapStrings def.bridgeVLANs (x: ''
|
||||
[BridgeVLAN]
|
||||
${attrsToSection x.bridgeVLANConfig}
|
||||
'')
|
||||
+ def.extraConfig;
|
||||
};
|
||||
|
||||
mkUnitFiles = prefix: cfg: listToAttrs (map (name: {
|
||||
name = "${prefix}systemd/network/${name}";
|
||||
value.source = "${cfg.units.${name}.unit}/${name}";
|
||||
@ -3048,11 +2731,14 @@ let
|
||||
|
||||
};
|
||||
|
||||
commonConfig = config: let cfg = config.systemd.network; in mkMerge [
|
||||
commonConfig = config: let
|
||||
cfg = config.systemd.network;
|
||||
mkUnit = f: def: { inherit (def) enable; text = f def; };
|
||||
in mkMerge [
|
||||
|
||||
# .link units are honored by udev, no matter if systemd-networkd is enabled or not.
|
||||
{
|
||||
systemd.network.units = mapAttrs' (n: v: nameValuePair "${n}.link" (linkToUnit n v)) cfg.links;
|
||||
systemd.network.units = mapAttrs' (n: v: nameValuePair "${n}.link" (mkUnit linkToUnit v)) cfg.links;
|
||||
|
||||
systemd.network.wait-online.extraArgs =
|
||||
[ "--timeout=${toString cfg.wait-online.timeout}" ]
|
||||
@ -3062,8 +2748,8 @@ let
|
||||
|
||||
(mkIf config.systemd.network.enable {
|
||||
|
||||
systemd.network.units = mapAttrs' (n: v: nameValuePair "${n}.netdev" (netdevToUnit n v)) cfg.netdevs
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.network" (networkToUnit n v)) cfg.networks;
|
||||
systemd.network.units = mapAttrs' (n: v: nameValuePair "${n}.netdev" (mkUnit netdevToUnit v)) cfg.netdevs
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.network" (mkUnit networkToUnit v)) cfg.networks;
|
||||
|
||||
# systemd-networkd is socket-activated by kernel netlink route change
|
||||
# messages. It is important to have systemd buffer those on behalf of
|
||||
|
@ -185,6 +185,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = "https://ardour.org/";
|
||||
license = licenses.gpl2Plus;
|
||||
mainProgram = "ardour6";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ goibhniu magnetophon mitchmindtree ];
|
||||
};
|
||||
|
@ -198,6 +198,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = "https://ardour.org/";
|
||||
license = licenses.gpl2Plus;
|
||||
mainProgram = "ardour7";
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ goibhniu magnetophon mitchmindtree ];
|
||||
};
|
||||
|
@ -83,6 +83,7 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/DISTRHO/cardinal";
|
||||
license = lib.licenses.gpl3;
|
||||
maintainers = [ lib.maintainers.magnetophon ];
|
||||
mainProgram = "Cardinal";
|
||||
platforms = lib.platforms.all;
|
||||
# never built on aarch64-darwin, x86_64-darwin since first introduction in nixpkgs
|
||||
broken = stdenv.isDarwin;
|
||||
|
@ -1,45 +0,0 @@
|
||||
{ fetchFromGitHub
|
||||
, glib
|
||||
, gtk3
|
||||
, lib
|
||||
, rustPlatform
|
||||
, wrapGAppsHook
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "fitnesstrax";
|
||||
version = "0.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "luminescent-dreams";
|
||||
repo = "fitnesstrax";
|
||||
rev = "${pname}-${version}";
|
||||
sha256 = "1k6zhnbs0ggx7q0ig2abcnzprsgrychlpvsh6d36dw6mr8zpfkp7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
wrapGAppsHook
|
||||
glib
|
||||
gtk3
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gtk3
|
||||
];
|
||||
|
||||
cargoSha256 = "0dlnlb3hqyh98y916wvdb4rd20az73brs8hqna2lgr7kv1pd77j7";
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/glib-2.0/schemas
|
||||
cp -r $src/share/* $out/share/
|
||||
glib-compile-schemas $out/share/glib-2.0/schemas
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Privacy-first fitness tracking";
|
||||
homepage = "https://github.com/luminescent-dreams/fitnesstrax";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ savannidgerinel ];
|
||||
};
|
||||
}
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gofu";
|
||||
version = "unstable-2022-04-01";
|
||||
version = "unstable-2023-04-25";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "majewsky";
|
||||
repo = pname;
|
||||
rev = "be0e424eecec3fec19ba3518f8fd1bb07b6908dc";
|
||||
sha256 = "sha256-jMOmvCsuRtL9EgPicdNEksVgFepL/JZA53o2wzr8uzQ=";
|
||||
rev = "f308ca92d1631e579fbfe3b3da13c93709dc18a2";
|
||||
hash = "sha256-8c/Z+44gX7diAhXq8sHOqISoGhYdFA7VUYn7eNMCYxY=";
|
||||
};
|
||||
|
||||
vendorSha256 = null;
|
||||
vendorHash = null;
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
@ -12,8 +12,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ libressl ];
|
||||
|
||||
patches = lib.optionals stdenv.isDarwin [ ./modification-time.patch ];
|
||||
|
||||
makeFlags = [ "PREFIX=${placeholder "out"}" ];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git a/geomyidae-v0.51/handlr.c b/geomyidae-v0.51/handlr.c
|
||||
index 0c230d32519..9fc043fa3c9 100644
|
||||
--- a/handlr.c
|
||||
+++ b/handlr.c
|
||||
@@ -71,7 +71,7 @@ handledir(int sock, char *path, char *port, char *base, char *args,
|
||||
*type->type,
|
||||
dirent[i]->d_name,
|
||||
humansize(st.st_size),
|
||||
- humantime(&(st.st_mtim.tv_sec)),
|
||||
+ humantime(&(st.st_mtimespec.tv_sec)),
|
||||
e, ohost, port);
|
||||
free(file);
|
||||
free(dirent[i]);
|
@ -24,7 +24,7 @@
|
||||
, libpulseaudio
|
||||
, libupnp
|
||||
, yaml-cpp
|
||||
, msgpack-cxx
|
||||
, msgpack
|
||||
, openssl
|
||||
, restinio
|
||||
, secp256k1
|
||||
@ -132,7 +132,7 @@ stdenv.mkDerivation rec {
|
||||
libpulseaudio
|
||||
libupnp
|
||||
yaml-cpp
|
||||
msgpack-cxx
|
||||
msgpack
|
||||
opendht-jami
|
||||
openssl
|
||||
pjsip-jami
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "qalculate-gtk";
|
||||
version = "4.6.1";
|
||||
version = "4.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "qalculate";
|
||||
repo = "qalculate-gtk";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-eBclDq9Uiu5rA74tlBkOiP3fRwAZn84F3LPA2cKkuw8=";
|
||||
sha256 = "sha256-Fbi+vZEyXhUZQjWUX01IXd6G1cthfiuztdbisNQ/VZU=";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
@ -2,17 +2,17 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "qalculate-qt";
|
||||
version = "4.6.1";
|
||||
version = "4.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "qalculate";
|
||||
repo = "qalculate-qt";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-9DT1U0iKj5C/Tc9MggEr/RwHhVr4GSOJQVhTiLFk9NY=";
|
||||
hash = "sha256-fMchJgxuOO2e7cOHLako26c9gsWvQY2MTRVD3JWGSAU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake intltool pkg-config wrapQtAppsHook ];
|
||||
buildInputs = [ libqalculate qtbase qttools qtsvg ]
|
||||
nativeBuildInputs = [ qmake intltool pkg-config qttools wrapQtAppsHook ];
|
||||
buildInputs = [ libqalculate qtbase qtsvg ]
|
||||
++ lib.optionals stdenv.isLinux [ qtwayland ];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -3,26 +3,24 @@
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, openssl
|
||||
# waiting on gex to update to libgit2-sys >= 0.15
|
||||
, libgit2_1_5
|
||||
, libgit2
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "gex";
|
||||
version = "0.3.8";
|
||||
version = "0.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Piturnah";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-pjyS0H25wdcexpzZ2vVzGTwDPzyvA9PDgzz81yLGTOY=";
|
||||
hash = "sha256-eRforLvRVSrFWnI5UZEWr1L4UM3ABjAIvui1E1hzk5s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ openssl libgit2_1_5 ];
|
||||
buildInputs = [ libgit2 ];
|
||||
|
||||
cargoHash = "sha256-+FwXm3QN9bt//dWqzkBzsGigyl1SSY4/P29QtV75V6M=";
|
||||
cargoHash = "sha256-OEaNERozmJL8gYe33V/m4HQNHi2I4KHpI6PTwFQkPSs=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Git Explorer: cross-platform git workflow improvement tool inspired by Magit";
|
||||
|
@ -15,13 +15,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "wingpanel-indicator-nightlight";
|
||||
version = "2.1.1";
|
||||
version = "2.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "elementary";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-oZUPveNlm9p8gKeDGopfhu1rBbydLaQSlkPs6+WHrUo=";
|
||||
sha256 = "sha256-2ez7sDCA3cnSNaT3Oe0Mm2MbtSxmkRF/hCklThtHuq0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,7 +1,6 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, nix-update-script
|
||||
, meson
|
||||
, ninja
|
||||
@ -19,25 +18,15 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "elementary-notifications";
|
||||
version = "6.0.3";
|
||||
version = "7.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "elementary";
|
||||
repo = "notifications";
|
||||
rev = version;
|
||||
sha256 = "sha256-B1wo1N4heG872klFJOBKOEds0+6aqtvkTGefi97bdU8=";
|
||||
sha256 = "sha256-i7fSKnP4W12cfax5IXm/Zgy5vP5z7S43S80gvzWpFCE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Backports https://github.com/elementary/notifications/pull/184
|
||||
# Needed for https://github.com/elementary/wingpanel-indicator-notifications/pull/252
|
||||
# Should be part of next bump
|
||||
(fetchpatch {
|
||||
url = "https://github.com/elementary/notifications/commit/bd159979dbe3dbe6f3f1da7acd8e0721cc20ef80.patch";
|
||||
sha256 = "sha256-cOfeXwoMVgvbA29axyN7HtYKTgCtGxAPrB2PA/x8RKY=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
glib # for glib-compile-schemas
|
||||
meson
|
||||
|
@ -42,6 +42,7 @@ args@
|
||||
, libsForQt5
|
||||
, libtiff
|
||||
, qt6Packages
|
||||
, qt6
|
||||
, rdma-core
|
||||
, ucx
|
||||
, rsync
|
||||
@ -131,22 +132,23 @@ backendStdenv.mkDerivation rec {
|
||||
ucx
|
||||
xorg.libxshmfence
|
||||
xorg.libxkbfile
|
||||
] ++ lib.optionals (lib.versionAtLeast version "12.1") (map lib.getLib [
|
||||
] ++ (lib.optionals (lib.versionAtLeast version "12.1") (map lib.getLib ([
|
||||
# Used by `/target-linux-x64/CollectX/clx` and `/target-linux-x64/CollectX/libclx_api.so` for:
|
||||
# - `libcurl.so.4`
|
||||
curlMinimal
|
||||
|
||||
# Used by `/target-linux-x64/libQt6Multimedia.so.6` for:
|
||||
# - `libgstaudio-1.0.so.0`
|
||||
# - `libgstvideo-1.0.so.0`
|
||||
# - `libgstpbutils-1.0.so.0`
|
||||
# - `libgstallocators-1.0.so.0`
|
||||
# - `libgstapp-1.0.so.0`
|
||||
# - `libgstbase-1.0.so.0`
|
||||
# - `libgstreamer-1.0.so.0`
|
||||
# Used by `/host-linux-x64/Scripts/WebRTCContainer/setup/neko/server/bin/neko`
|
||||
gst_all_1.gstreamer
|
||||
gst_all_1.gst-plugins-base
|
||||
]);
|
||||
]) ++ (with qt6; [
|
||||
qtmultimedia
|
||||
qttools
|
||||
qtpositioning
|
||||
qtscxml
|
||||
qtsvg
|
||||
qtwebchannel
|
||||
qtwebengine
|
||||
])));
|
||||
|
||||
# Prepended to runpaths by autoPatchelf.
|
||||
# The order inherited from older rpath preFixup code
|
||||
@ -258,6 +260,10 @@ backendStdenv.mkDerivation rec {
|
||||
rm -rf $out/lib
|
||||
''}
|
||||
|
||||
${lib.optionalString (lib.versionAtLeast version "12.0") ''
|
||||
rm $out/host-linux-x64/libQt6*
|
||||
''}
|
||||
|
||||
# Remove some cruft.
|
||||
${lib.optionalString ((lib.versionAtLeast version "7.0") && (lib.versionOlder version "10.1"))
|
||||
"rm $out/bin/uninstall*"}
|
||||
|
@ -15,6 +15,7 @@ final: prev: let
|
||||
"11.8" = ./manifests/redistrib_11.8.0.json;
|
||||
"12.0" = ./manifests/redistrib_12.0.1.json;
|
||||
"12.1" = ./manifests/redistrib_12.1.1.json;
|
||||
"12.2" = ./manifests/redistrib_12.2.0.json;
|
||||
};
|
||||
|
||||
# Function to build a single cudatoolkit redist package
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -83,3 +83,9 @@ version = "12.1.1"
|
||||
url = "https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run"
|
||||
sha256 = "sha256-10Ai1B2AEFMZ36Ib7qObd6W5kZU5wEh6BcqvJEbWpw4="
|
||||
gcc = "gcc12"
|
||||
|
||||
["12.2"]
|
||||
version = "12.2.0"
|
||||
url = "https://developer.download.nvidia.com/compute/cuda/12.2.0/local_installers/cuda_12.2.0_535.54.03_linux.run"
|
||||
sha256 = "sha256-7PPSr63LrAKfD0UFeFgQ1S0AbkuHunn/P5hDNqK79Rg="
|
||||
gcc = "gcc12"
|
||||
|
@ -47,7 +47,6 @@ let
|
||||
};
|
||||
});
|
||||
|
||||
flutter2Patches = getPatches ./patches/flutter2;
|
||||
flutter3Patches = getPatches ./patches/flutter3;
|
||||
in
|
||||
{
|
||||
@ -75,16 +74,4 @@ in
|
||||
};
|
||||
patches = flutter3Patches;
|
||||
};
|
||||
|
||||
v2 = mkFlutter {
|
||||
version = "2.10.5";
|
||||
engineVersion = "57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab";
|
||||
dartVersion = "2.16.2";
|
||||
hash = "sha256-MxaWvlcCfXN8gsC116UMzqb4LgixHL3YjrGWy7WYgW4=";
|
||||
dartHash = {
|
||||
x86_64-linux = "sha256-vxKxysg6e3Qxtlp4dLxOZaBtgHGtl7XYd73zFZd9yJc=";
|
||||
aarch64-linux = "sha256-ZfpR6fj/a9Bsgrg31Z/uIJaCHIWtcQH3VTTVkDJKkwA=";
|
||||
};
|
||||
patches = flutter2Patches;
|
||||
};
|
||||
}
|
||||
|
@ -137,144 +137,4 @@
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-eluXkoISuzObXt2aiBmZGW6x8MsPTiD9bbVM4xcpe2w=";
|
||||
};
|
||||
};
|
||||
"57d3bac3dd5cb5b0e464ab70e7bc8a0d8cf083ab" = {
|
||||
android-arm = {
|
||||
"artifacts.zip" = "sha256-3igOO+rgFh0fNTIIiiucqSmqC+NKFPG5H1CnIa9bDcM=";
|
||||
};
|
||||
android-arm-profile = {
|
||||
"artifacts.zip" = "sha256-qai254LNrQXJBsaoQgXao6mBpzzcYHh4sUESurSyxNA=";
|
||||
"linux-x64.zip" = "sha256-hBkntf1fX5w752ly6lVUHm6wEM/4ep9guJGma3SKjxU=";
|
||||
};
|
||||
android-arm-release = {
|
||||
"artifacts.zip" = "sha256-7yuXIJyErb1PZyk56+TtlJY0o1EOwmdAvpVfGGAteuA=";
|
||||
"linux-x64.zip" = "sha256-v/jBnE662XOX/fOhYbve7ZiQwVu0haIMOD532Vdj9Yw=";
|
||||
};
|
||||
android-arm64 = {
|
||||
"artifacts.zip" = "sha256-Llxu8+SkYEtnoiMf01rffPpF/AjrlV+QPuAW850oMzo=";
|
||||
};
|
||||
android-arm64-profile = {
|
||||
"artifacts.zip" = "sha256-su4U80supv8Q+2kE/5FTybiA5NFbKNMHqdB0NHCqrVI=";
|
||||
"linux-x64.zip" = "sha256-yGt0SztNxYHDwZ1DwzLg5REE8rmMRKNn7GfCQ+GEHBw=";
|
||||
};
|
||||
android-arm64-release = {
|
||||
"artifacts.zip" = "sha256-+p1+SXSEglR3jqWc/jKgmtR9nOGgMRGC+anoTs1kRc8=";
|
||||
"linux-x64.zip" = "sha256-5UiG5gxOso8NO+7nkb6bjxW8e/Tr7mlvPRUagSRTCNs=";
|
||||
};
|
||||
android-x64 = {
|
||||
"artifacts.zip" = "sha256-PVb1aKMMTlDT41O2MZRAUjCq8h+m/s2h5qOnEFPd77w=";
|
||||
};
|
||||
android-x64-profile = {
|
||||
"artifacts.zip" = "sha256-gZSSRCDy42AMLMiu/KH7YsDuFVaxRcoyXzUgV8V025Y=";
|
||||
"linux-x64.zip" = "sha256-9+LCjeI18u/GlPDMIl6Jx6b++lc90fJ5tVBlDR+ctDs=";
|
||||
};
|
||||
android-x64-release = {
|
||||
"artifacts.zip" = "sha256-rsS08VP86/b2S0TEYusCEJBvS4BuevsmV9REAxRgJIc=";
|
||||
"linux-x64.zip" = "sha256-H4nFCJ+iCUzIwHogYzS+h33eDMaFnz71dcDLSQW1aPg=";
|
||||
};
|
||||
android-x86 = {
|
||||
"artifacts.zip" = "sha256-Cbo17VYWaclyO1RLHkwjbqoFVZ283IgGdN0uDdiWvQs=";
|
||||
};
|
||||
android-x86-jit-release = {
|
||||
"artifacts.zip" = "sha256-gSPm2tClTj2vEYtGKgobD/mebWLNlDp8nEoFX0rhEOk=";
|
||||
};
|
||||
"flutter_patched_sdk.zip" = "sha256-A/y5Y+Aw0CUhXABbdyQcGCSnSbO7Ask+71m8LZDSjH4=";
|
||||
"flutter_patched_sdk_product.zip" = "sha256-VPxF4NrTUhFbpztyPnLEiC9Cy0kDDbYvy21kA5ES4HM=";
|
||||
linux-arm64 = {
|
||||
"artifacts.zip" = "sha256-kCxsKQQQX6wzhD46bfoflKdz3AYYkoSyavhfyTDuHLU=";
|
||||
"font-subset.zip" = "sha256-Yk6JsNWe7ftEQU/TsjDUZSFeLzeIbcS63lhl8fsWsdk=";
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-girVdkXrTO5tssoi+eKwG9ykstCR/VOx8zWtcAz8AKM=";
|
||||
};
|
||||
linux-arm64-debug = {
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-girVdkXrTO5tssoi+eKwG9ykstCR/VOx8zWtcAz8AKM=";
|
||||
};
|
||||
linux-arm64-profile = {
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-VL5cwYaZ1FOJ3TwJzbgvHDQwkU9NrHGnf/tQhZ/dAGg=";
|
||||
};
|
||||
linux-arm64-release = {
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-27hy7mLFCLkqJbn+5p5eJdYnfBKTyfFe98iUMmKyz4g=";
|
||||
};
|
||||
linux-x64 = {
|
||||
"artifacts.zip" = "sha256-JgEX+rKxdcWBBaxyR42eC7qOAvaawF9M2+rfaD4IgeA=";
|
||||
"font-subset.zip" = "sha256-5EoxBrxSjaLLd+rKrxVYNoUZaejk0qcQ5LVsmqtKc2g=";
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-MH5HDPoXXi/KpQLQ0U1tQzZ0sbZx1RVhZtQ7L+WhZgk=";
|
||||
};
|
||||
linux-x64-debug = {
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-MH5HDPoXXi/KpQLQ0U1tQzZ0sbZx1RVhZtQ7L+WhZgk=";
|
||||
};
|
||||
linux-x64-profile = {
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-r2hB/AKrB5vNga2fve4tTM4j+Zp9KDqNlTjKQhQvbaI=";
|
||||
};
|
||||
linux-x64-release = {
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-muREs2iUiHCZM+SGN5q3HRRGnejJapKN582Aeog49MI=";
|
||||
};
|
||||
};
|
||||
d44b5a94c976fbb65815374f61ab5392a220b084 = {
|
||||
android-arm = {
|
||||
"artifacts.zip" = "sha256-NZde8sVeknhR6bxchb/RURNIlKnJw6j5PZAWmmjiZvM=";
|
||||
};
|
||||
android-arm-profile = {
|
||||
"artifacts.zip" = "sha256-BTs1tuSdjVP8zAGCxV+uQ7sAAbCt0dML4g7/85IOFEs=";
|
||||
"linux-x64.zip" = "sha256-GpjP5omeAjHBLZjJQdUMUnPoEgYBLppicLPUTY0fHqM=";
|
||||
};
|
||||
android-arm-release = {
|
||||
"artifacts.zip" = "sha256-ip2GnYkKq8aLWjVPk9no3aOf0c3k1h9foznhgLpZ17U=";
|
||||
"linux-x64.zip" = "sha256-mGnmbraE98rqKRdO6keoITOaNCP0K3iYNRadihwOpxc=";
|
||||
};
|
||||
android-arm64 = {
|
||||
"artifacts.zip" = "sha256-Sl7S/TNZWrlM4Z9UGN5rgGfpKk4UWKz6CKlQbz1qcZ4=";
|
||||
};
|
||||
android-arm64-profile = {
|
||||
"artifacts.zip" = "sha256-zNZtTxM8254y+KKSVYlBUYyIV2J04XN1cmnSjkQLJs8=";
|
||||
"linux-x64.zip" = "sha256-M8AbEwFV2zedeqMoNeb+2UbR7i9I9rGh6LXBQcPO4iA=";
|
||||
};
|
||||
android-arm64-release = {
|
||||
"artifacts.zip" = "sha256-PdnAIcYccdRs3r6M8rwmgl2x+TsBPMRF/iAEgwLbt/4=";
|
||||
"linux-x64.zip" = "sha256-kmLkKXBj/70B3v5GJ50trTlV8epj16jOlQrh1U4/pVA=";
|
||||
};
|
||||
android-x64 = {
|
||||
"artifacts.zip" = "sha256-+WT7oT31XwE+ykLbiAUvnKw+WVR0VeFXPGpcMUHbsTg=";
|
||||
};
|
||||
android-x64-profile = {
|
||||
"artifacts.zip" = "sha256-f298VAJoZ2x+w0bxma7wu5h7Bn6+kCdrHh5qtjhhhhc=";
|
||||
"linux-x64.zip" = "sha256-73Br9XgafwmagxAf61NSHn4BHn4q90pHJYEXCfAG8qY=";
|
||||
};
|
||||
android-x64-release = {
|
||||
"artifacts.zip" = "sha256-63hQCvObPmIxTcKyBQlXgGY6FfKp9PrbBY0RkSr1D/U=";
|
||||
"linux-x64.zip" = "sha256-i5WQeePNxUNAbVR06Lz2XCXvZZTJxaFB6txtpVn2h9I=";
|
||||
};
|
||||
android-x86 = {
|
||||
"artifacts.zip" = "sha256-J1kgvNvdWo05HMHJMlVFECLMVnoCqUm1oP4K394w+xc=";
|
||||
};
|
||||
android-x86-jit-release = {
|
||||
"artifacts.zip" = "sha256-Tz/veYh/73px0eH0FOXbN4G8fVjXmEHv7G8lRm3YLtY=";
|
||||
};
|
||||
"flutter_patched_sdk.zip" = "sha256-uLMzCF3dsBeSZnoY9YQ2bBQhw+hUAksoDKEWr3TCnhk=";
|
||||
"flutter_patched_sdk_product.zip" = "sha256-0NbvAGSK0VgU6jSyboyhviP9H+wID7JoTS6xMqbZs2w=";
|
||||
linux-arm64 = {
|
||||
"artifacts.zip" = "sha256-LTdVexuy7cL6dJqdM14YteI7Jo/z5wYOHakbX/BiV38=";
|
||||
"font-subset.zip" = "sha256-cqLjvl3maO6NpN47/e718xyuSL8L8cHqU6ybuwlD+fA=";
|
||||
};
|
||||
linux-arm64-debug = {
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-SRlKQllg5UWHk2kOIQ6ZwbqG5FoeFGCl2F9tTI+XVOE=";
|
||||
};
|
||||
linux-arm64-profile = {
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-4wERBO+eimsSKFt8/P6mQqgzv+HURK+O/YFHAUHpklA=";
|
||||
};
|
||||
linux-arm64-release = {
|
||||
"linux-arm64-flutter-gtk.zip" = "sha256-1XHdFiW//1Yd+qOLrRlk0vma99HlGDC/RA0An8db/oY=";
|
||||
};
|
||||
linux-x64 = {
|
||||
"artifacts.zip" = "sha256-Bl0BRxUfVqNX6y7HdUXu5lIFzMLB2GUJauhOLEeInEE=";
|
||||
"font-subset.zip" = "sha256-v02HV8QOqwdv30RiHpKu8ujTXOQmupGr9HCfpBUvrKM=";
|
||||
};
|
||||
linux-x64-debug = {
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-xjScsvWgPO8qeccw5BGzNrMLNzn5O+CvOpoPkvlrX0o=";
|
||||
};
|
||||
linux-x64-profile = {
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-52nMjoHQZ/ve7yJW9d8YK02U8mowe9xHZpkTwbGq9vU=";
|
||||
};
|
||||
linux-x64-release = {
|
||||
"linux-x64-flutter-gtk.zip" = "sha256-SA7Th1Qasaj4Q5wFr89Rv8PNQx6s6zvHsDxT1EKKZV0=";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -1,17 +0,0 @@
|
||||
diff --git a/packages/flutter_tools/lib/src/build_system/targets/assets.dart b/packages/flutter_tools/lib/src/build_system/targets/assets.dart
|
||||
index 68a4cd0257..1e212b9b0d 100644
|
||||
--- a/packages/flutter_tools/lib/src/build_system/targets/assets.dart
|
||||
+++ b/packages/flutter_tools/lib/src/build_system/targets/assets.dart
|
||||
@@ -101,7 +101,11 @@ Future<Depfile> copyAssets(Environment environment, Directory outputDirectory, {
|
||||
outputPath: file.path,
|
||||
relativePath: entry.key,
|
||||
)) {
|
||||
- await (content.file as File).copy(file.path);
|
||||
+ // Not using File.copy because it preserves permissions.
|
||||
+ final sourceFile = content.file as File;
|
||||
+ final destinationFile = file;
|
||||
+
|
||||
+ await destinationFile.writeAsBytes(await sourceFile.readAsBytes(), flush: true);
|
||||
}
|
||||
} else {
|
||||
await file.writeAsBytes(await entry.value.contentsAsBytes());
|
@ -1,49 +0,0 @@
|
||||
diff --git a/bin/internal/shared.sh b/bin/internal/shared.sh
|
||||
index 05cba4393b..2a775bf24f 100644
|
||||
--- a/bin/internal/shared.sh
|
||||
+++ b/bin/internal/shared.sh
|
||||
@@ -217,8 +217,6 @@ function shared::execute() {
|
||||
# FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
|
||||
# FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
|
||||
|
||||
- upgrade_flutter 7< "$PROG_NAME"
|
||||
-
|
||||
BIN_NAME="$(basename "$PROG_NAME")"
|
||||
case "$BIN_NAME" in
|
||||
flutter*)
|
||||
diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
|
||||
index 396756808e..d324a6df59 100644
|
||||
--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
|
||||
+++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
|
||||
@@ -241,7 +241,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
|
||||
globals.flutterUsage.suppressAnalytics = true;
|
||||
}
|
||||
|
||||
- globals.flutterVersion.ensureVersionFile();
|
||||
final bool machineFlag = topLevelResults['machine'] as bool? ?? false;
|
||||
final bool ci = await globals.botDetector.isRunningOnBot;
|
||||
final bool redirectedCompletion = !globals.stdio.hasTerminal &&
|
||||
@@ -250,10 +249,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
|
||||
final bool versionCheckFlag = topLevelResults['version-check'] as bool? ?? false;
|
||||
final bool explicitVersionCheckPassed = topLevelResults.wasParsed('version-check') && versionCheckFlag;
|
||||
|
||||
- if (topLevelResults.command?.name != 'upgrade' &&
|
||||
- (explicitVersionCheckPassed || (versionCheckFlag && !isMachine))) {
|
||||
- await globals.flutterVersion.checkFlutterVersionFreshness();
|
||||
- }
|
||||
|
||||
// See if the user specified a specific device.
|
||||
globals.deviceManager?.specifiedDeviceId = topLevelResults['device-id'] as String?;
|
||||
|
||||
diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
|
||||
index defc86cc20..6c0824c965 100644
|
||||
--- a/packages/flutter_tools/lib/src/cache.dart
|
||||
+++ b/packages/flutter_tools/lib/src/cache.dart
|
||||
@@ -666,6 +666,7 @@ class Cache {
|
||||
|
||||
/// Update the cache to contain all `requiredArtifacts`.
|
||||
Future<void> updateAll(Set<DevelopmentArtifact> requiredArtifacts) async {
|
||||
+ return;
|
||||
if (!_lockEnabled) {
|
||||
return;
|
||||
}
|
@ -1,80 +0,0 @@
|
||||
diff --git a/dev/bots/prepare_package.dart b/dev/bots/prepare_package.dart
|
||||
index 468a91a954..5def6897ce 100644
|
||||
--- a/dev/bots/prepare_package.dart
|
||||
+++ b/dev/bots/prepare_package.dart
|
||||
@@ -525,7 +525,7 @@ class ArchiveCreator {
|
||||
|
||||
Future<String> _runGit(List<String> args, {Directory? workingDirectory}) {
|
||||
return _processRunner.runProcess(
|
||||
- <String>['git', ...args],
|
||||
+ <String>['git', '--git-dir', '.git', ...args],
|
||||
workingDirectory: workingDirectory ?? flutterRoot,
|
||||
);
|
||||
}
|
||||
diff --git a/packages/flutter_tools/lib/src/version.dart b/packages/flutter_tools/lib/src/version.dart
|
||||
index f2068a6ca2..99b161689e 100644
|
||||
--- a/packages/flutter_tools/lib/src/version.dart
|
||||
+++ b/packages/flutter_tools/lib/src/version.dart
|
||||
@@ -106,7 +106,7 @@ class FlutterVersion {
|
||||
String? channel = _channel;
|
||||
if (channel == null) {
|
||||
final String gitChannel = _runGit(
|
||||
- 'git rev-parse --abbrev-ref --symbolic @{u}',
|
||||
+ 'git --git-dir .git rev-parse --abbrev-ref --symbolic @{u}',
|
||||
globals.processUtils,
|
||||
_workingDirectory,
|
||||
);
|
||||
@@ -114,7 +114,7 @@ class FlutterVersion {
|
||||
if (slash != -1) {
|
||||
final String remote = gitChannel.substring(0, slash);
|
||||
_repositoryUrl = _runGit(
|
||||
- 'git ls-remote --get-url $remote',
|
||||
+ 'git --git-dir .git ls-remote --get-url $remote',
|
||||
globals.processUtils,
|
||||
_workingDirectory,
|
||||
);
|
||||
@@ -326,7 +326,7 @@ class FlutterVersion {
|
||||
/// the branch name will be returned as `'[user-branch]'`.
|
||||
String getBranchName({ bool redactUnknownBranches = false }) {
|
||||
_branch ??= () {
|
||||
- final String branch = _runGit('git rev-parse --abbrev-ref HEAD', globals.processUtils);
|
||||
+ final String branch = _runGit('git --git-dir .git rev-parse --abbrev-ref HEAD', globals.processUtils);
|
||||
return branch == 'HEAD' ? channel : branch;
|
||||
}();
|
||||
if (redactUnknownBranches || _branch!.isEmpty) {
|
||||
@@ -359,7 +359,7 @@ class FlutterVersion {
|
||||
/// wrapper that does that.
|
||||
@visibleForTesting
|
||||
static List<String> gitLog(List<String> args) {
|
||||
- return <String>['git', '-c', 'log.showSignature=false', 'log'] + args;
|
||||
+ return <String>['git', '-c', 'log.showSignature=false', '--git-dir', '.git', 'log'] + args;
|
||||
}
|
||||
|
||||
/// Gets the release date of the latest available Flutter version.
|
||||
@@ -730,7 +730,7 @@ class GitTagVersion {
|
||||
|
||||
static GitTagVersion determine(ProcessUtils processUtils, {String? workingDirectory, bool fetchTags = false, String gitRef = 'HEAD'}) {
|
||||
if (fetchTags) {
|
||||
- final String channel = _runGit('git rev-parse --abbrev-ref HEAD', processUtils, workingDirectory);
|
||||
+ final String channel = _runGit('git --git-dir .git rev-parse --abbrev-ref HEAD', processUtils, workingDirectory);
|
||||
if (channel == 'dev' || channel == 'beta' || channel == 'stable') {
|
||||
globals.printTrace('Skipping request to fetchTags - on well known channel $channel.');
|
||||
} else {
|
||||
@@ -739,7 +739,7 @@ class GitTagVersion {
|
||||
}
|
||||
// find all tags attached to the given [gitRef]
|
||||
final List<String> tags = _runGit(
|
||||
- 'git tag --points-at $gitRef', processUtils, workingDirectory).trim().split('\n');
|
||||
+ 'git --git-dir .git tag --points-at $gitRef', processUtils, workingDirectory).trim().split('\n');
|
||||
|
||||
// Check first for a stable tag
|
||||
final RegExp stableTagPattern = RegExp(r'^\d+\.\d+\.\d+$');
|
||||
@@ -760,7 +760,7 @@ class GitTagVersion {
|
||||
// recent tag and number of commits past.
|
||||
return parse(
|
||||
_runGit(
|
||||
- 'git describe --match *.*.* --long --tags $gitRef',
|
||||
+ 'git --git-dir .git describe --match *.*.* --long --tags $gitRef',
|
||||
processUtils,
|
||||
workingDirectory,
|
||||
)
|
@ -1,37 +0,0 @@
|
||||
diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
|
||||
index dd80b1e46e..8e54517765 100644
|
||||
--- a/packages/flutter_tools/lib/src/cache.dart
|
||||
+++ b/packages/flutter_tools/lib/src/cache.dart
|
||||
@@ -22,6 +22,7 @@ import 'base/user_messages.dart';
|
||||
import 'build_info.dart';
|
||||
import 'convert.dart';
|
||||
import 'features.dart';
|
||||
+import 'globals.dart' as globals;
|
||||
|
||||
const String kFlutterRootEnvironmentVariableName = 'FLUTTER_ROOT'; // should point to //flutter/ (root of flutter/flutter repo)
|
||||
const String kFlutterEngineEnvironmentVariableName = 'FLUTTER_ENGINE'; // should point to //engine/src/ (root of flutter/engine repo)
|
||||
@@ -318,8 +319,13 @@ class Cache {
|
||||
return;
|
||||
}
|
||||
assert(_lock == null);
|
||||
+ final Directory dir = _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter'));
|
||||
+ if (!dir.existsSync()) {
|
||||
+ dir.createSync(recursive: true);
|
||||
+ globals.os.chmod(dir, '755');
|
||||
+ }
|
||||
final File lockFile =
|
||||
- _fileSystem.file(_fileSystem.path.join(flutterRoot!, 'bin', 'cache', 'lockfile'));
|
||||
+ _fileSystem.file(_fileSystem.path.join(globals.fsUtils.homeDirPath!, '.cache', 'flutter', 'lockfile'));
|
||||
try {
|
||||
_lock = lockFile.openSync(mode: FileMode.write);
|
||||
} on FileSystemException catch (e) {
|
||||
@@ -378,8 +384,7 @@ class Cache {
|
||||
|
||||
String get devToolsVersion {
|
||||
if (_devToolsVersion == null) {
|
||||
- const String devToolsDirPath = 'dart-sdk/bin/resources/devtools';
|
||||
- final Directory devToolsDir = getCacheDir(devToolsDirPath, shouldCreate: false);
|
||||
+ final Directory devToolsDir = _fileSystem.directory(_fileSystem.path.join(flutterRoot!, 'bin/cache/dart-sdk/bin/resources/devtools'));
|
||||
if (!devToolsDir.existsSync()) {
|
||||
throw Exception('Could not find directory at ${devToolsDir.path}');
|
||||
}
|
@ -1,26 +1,42 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
, czmq
|
||||
, libusb1
|
||||
, ncurses
|
||||
, SDL2
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "orbuculum";
|
||||
version = "2.0.0";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "orbcode";
|
||||
repo = pname;
|
||||
rev = "V${version}";
|
||||
sha256 = "sha256-aMMXfrBQQ9oOx17MUKmqe5vdTpxhBGM5mVfAel0y0a0=";
|
||||
sha256 = "sha256-Ohcc8739W/EmDjOYhcMgzEPVhzbWrUYgsPLdy4qzxhY=";
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace meson.build --replace \
|
||||
"/etc/udev/rules.d" "$out/etc/udev/rules.d"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
czmq
|
||||
libusb1
|
||||
ncurses
|
||||
SDL2
|
||||
];
|
||||
|
||||
installFlags = [
|
||||
|
@ -29,10 +29,13 @@ stdenv.mkDerivation rec {
|
||||
] ++ (if stdenv.isDarwin then [ libossp_uuid ] else [ libuuid ]);
|
||||
|
||||
postPatch = ''
|
||||
# This lets us build the tests properly on aarch64-darwin.
|
||||
substituteInPlace CMakeLists.txt \
|
||||
--replace 'SET(CMAKE_OSX_ARCHITECTURES "x86_64")' ""
|
||||
|
||||
# fix libdir=''${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
|
||||
sed -i 's,libdir=''${\(exec_\)\?prefix}/,libdir=,' lib3mf.pc.in
|
||||
|
||||
|
||||
# replace bundled binaries
|
||||
for i in AutomaticComponentToolkit/bin/act.*; do
|
||||
ln -sf ${automaticcomponenttoolkit}/bin/act $i
|
||||
|
@ -8,13 +8,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libqalculate";
|
||||
version = "4.6.1";
|
||||
version = "4.7.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "qalculate";
|
||||
repo = "libqalculate";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-GOVSNEnEl/oef54q88s+YuLyqPMLyx1eoX7DlWrmo2c=";
|
||||
sha256 = "sha256-Wgy1vsr0FXRJz9BCfw2PyFkesIJ/eg2dYDY/I2TESnU=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
|
@ -2,14 +2,14 @@
|
||||
|
||||
let
|
||||
pname = "box";
|
||||
version = "4.2.0";
|
||||
version = "4.3.8";
|
||||
in
|
||||
mkDerivation {
|
||||
inherit pname version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/box-project/box/releases/download/${version}/box.phar";
|
||||
sha256 = "sha256-9pPhqFq9t3MKI/y6/7iCYB8ddWFrafGVcV/k+Exb+KQ=";
|
||||
sha256 = "sha256-g9Y92yTsyXU4NWuQwyB3PRrKJxLRSBO9J77jumXPOxg=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
@ -11,16 +11,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "holidays";
|
||||
version = "0.27.1";
|
||||
version = "0.28";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dr-prodigy";
|
||||
repo = "python-holidays";
|
||||
rev = "refs/tags/v.${version}";
|
||||
hash = "sha256-RnN2aDBQZu5rNDmRuk80PbeoWN3EUhmlAs3hIXrpJMs=";
|
||||
hash = "sha256-JHj7fSE8p3TLViDSegl6gm35u53D9NvN7Oa2TBjN9t4=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "mitogen";
|
||||
version = "0.3.3";
|
||||
version = "0.3.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -15,7 +15,7 @@ buildPythonPackage rec {
|
||||
owner = "mitogen-hq";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-cx0q2Y9A6UzpdD1kuGBtXIs9oBGFpkIyvPfN2hj+A1g=";
|
||||
hash = "sha256-tMpjmSqZffFGbo06W/FAut584F8eOPrcLKjj2bnB+Zo=";
|
||||
};
|
||||
|
||||
# Tests require network access and Docker support
|
||||
|
@ -1,10 +1,12 @@
|
||||
{ lib
|
||||
, anyio
|
||||
, asyncclick
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, importlib-metadata
|
||||
, pydantic
|
||||
, kasa-crypt
|
||||
, orjson
|
||||
, poetry-core
|
||||
, pydantic
|
||||
, pytest-asyncio
|
||||
, pytest-mock
|
||||
, pytestCheckHook
|
||||
@ -14,16 +16,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-kasa";
|
||||
version = "0.5.1";
|
||||
version = "0.5.2";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-vp2r842f9A2lEFLhUcHyGZavAWT4Ke9mH+FAlGucdqo=";
|
||||
hash = "sha256-+ezs8mj3TRmeIhKPxyov9BPdNkhj0ri4FgoZdW7O8tA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -31,8 +33,8 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
anyio
|
||||
asyncclick
|
||||
importlib-metadata
|
||||
pydantic
|
||||
];
|
||||
|
||||
@ -43,6 +45,13 @@ buildPythonPackage rec {
|
||||
voluptuous
|
||||
];
|
||||
|
||||
passthru.optional-dependencies = {
|
||||
speedup = [
|
||||
kasa-crypt
|
||||
orjson
|
||||
];
|
||||
};
|
||||
|
||||
pytestFlagsArray = [
|
||||
"--asyncio-mode=auto"
|
||||
];
|
||||
|
@ -1,25 +1,46 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, isPy27
|
||||
, setuptools
|
||||
, requests
|
||||
, lxml
|
||||
, pandas
|
||||
, pytestCheckHook
|
||||
, pytest-recording
|
||||
, responses
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pytrends";
|
||||
version = "4.9.0";
|
||||
disabled = isPy27; # python2 pandas is too old
|
||||
version = "4.9.2";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-pU/B4xcUQrPI9cCApeId+Ae8T6rXeQzGK33bBZ6wqUs=";
|
||||
hash = "sha256-aRxuNrGuqkdU82kr260N/0RuUo/7BS7uLn8TmqosaYk=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'addopts = "--cov pytrends/"' ""
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [ requests lxml pandas ];
|
||||
|
||||
doCheck = false;
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
pytest-recording
|
||||
responses
|
||||
];
|
||||
|
||||
pytestFlagsArray = [
|
||||
"--block-network"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "pytrends" ];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -5,16 +5,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "benthos";
|
||||
version = "4.17.0";
|
||||
version = "4.18.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "benthosdev";
|
||||
repo = "benthos";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-d7HxPfHCNTVTOB4I/9lbiqYAO2srLp7v8v97zXXLKBw=";
|
||||
hash = "sha256-wap11/D1PIvDt5Jk3CCyxWJNULMg62WFmiA09gc95dY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-1G1KxD+9aEnkaNsqPAVo+M+jslQcX4zZMQiKpN2PLRY=";
|
||||
vendorHash = "sha256-pA8SBawcl8YFbUrDfWxzcrMK715xBTx1slvHoA/a9OM=";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "errcheck";
|
||||
version = "unstable-2022-03-26";
|
||||
version = "1.6.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kisielk";
|
||||
repo = "errcheck";
|
||||
rev = "e62617a91f7bd1abab2cbe7f28966188dd85eee0";
|
||||
sha256 = "sha256-RoPv6Odh8l9DF1S50pNEomLtI4uTDNjveOXZd4S52c0=";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-t5ValY4I3RzsomJP7mJjJSN9wU1HLQrajxpqmrri/oU=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-fDugaI9Fh0L27yKSFNXyjYLMMDe6CRgE6kVLiJ3+Kyw=";
|
||||
vendorHash = "sha256-96+927gNuUMovR4Ru/8BwsgEByNq2EPX7wXWS7+kSL8=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
@ -0,0 +1,26 @@
|
||||
{ lib
|
||||
, buildDotnetGlobalTool
|
||||
, dotnetCorePackages
|
||||
}:
|
||||
let
|
||||
inherit (dotnetCorePackages) sdk_7_0;
|
||||
in
|
||||
|
||||
buildDotnetGlobalTool rec {
|
||||
pname = "csharp-ls";
|
||||
version = "0.8.0";
|
||||
|
||||
nugetSha256 = "sha256-F3N6ESE/VmQA5sOMm3eqSkhSNVCCsnAXTCC+McsAnQw=";
|
||||
|
||||
dotnet-sdk = sdk_7_0;
|
||||
dotnet-runtime = sdk_7_0;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Roslyn-based LSP language server for C#";
|
||||
homepage = "https://github.com/razzmatazz/csharp-language-server";
|
||||
changelog = "https://github.com/razzmatazz/csharp-language-server/releases/tag/v${version}";
|
||||
license = licenses.mit;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ GaetanLepage ];
|
||||
};
|
||||
}
|
@ -32,5 +32,6 @@ buildGoModule rec {
|
||||
homepage = "https://github.com/symfony-cli/symfony-cli";
|
||||
license = licenses.agpl3Plus;
|
||||
maintainers = with maintainers; [ drupol ];
|
||||
mainProgram = "symfony";
|
||||
};
|
||||
}
|
||||
|
61
pkgs/development/tools/tailwindcss/default.nix
Normal file
61
pkgs/development/tools/tailwindcss/default.nix
Normal file
@ -0,0 +1,61 @@
|
||||
{ lib
|
||||
, fetchurl
|
||||
, stdenv
|
||||
, runCommand
|
||||
, tailwindcss-bin
|
||||
,
|
||||
}:
|
||||
let
|
||||
inherit (stdenv.hostPlatform) system;
|
||||
throwSystem = throw "tailwindcss-bin has not been packaged for ${system} yet.";
|
||||
|
||||
plat = {
|
||||
aarch64-darwin = "macos-arm64";
|
||||
aarch64-linux = "linux-arm64";
|
||||
armv7l-linux = "linux-armv7";
|
||||
x86_64-darwin = "macos-x64";
|
||||
x86_64-linux = "linux-x64";
|
||||
}.${system} or throwSystem;
|
||||
|
||||
hash = {
|
||||
aarch64-darwin = "sha256-GXSFDXRBGnEgqfISou85Ivd5npjZB7aMsfrQ2Y+EN0g=";
|
||||
aarch64-linux = "sha256-H2kbeso8/566czi1pEyip5rAgFJQYfdLnAImP25tDe0=";
|
||||
armv7l-linux = "sha256-52XyCmsjuHKs3aGUaAA0uQxGTY06k8gxK/fLYSVdP74=";
|
||||
x86_64-darwin = "sha256-8gwu/sVTjQGE4mSdxtk7ivQyAiRwCuL0Ot/aCrER/as=";
|
||||
x86_64-linux = "sha256-W9JRBB4JDTighDry21ukaFm1H1iKyg7HVG9RJHmIn2Q=";
|
||||
}.${system} or throwSystem;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tailwindcss-bin";
|
||||
version = "3.3.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/tailwindlabs/tailwindcss/releases/download/v${version}/tailwindcss-${plat}";
|
||||
inherit hash;
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
dontFixup = true;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp ${src} $out/bin/tailwindcss
|
||||
chmod 755 $out/bin/tailwindcss
|
||||
'';
|
||||
|
||||
passthru.tests.helptext = runCommand "tailwindcss-test-helptext" { } ''
|
||||
${tailwindcss-bin}/bin/tailwindcss --help > $out
|
||||
'';
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command-line tool for the CSS framework with composable CSS classes, standalone CLI";
|
||||
homepage = "https://tailwindcss.com/blog/standalone-cli";
|
||||
license = licenses.mit;
|
||||
sourceProvenance = [ sourceTypes.binaryNativeCode ];
|
||||
maintainers = [ maintainers.adamcstephens ];
|
||||
platforms = platforms.darwin ++ platforms.linux;
|
||||
};
|
||||
}
|
31
pkgs/development/tools/tailwindcss/update.sh
Executable file
31
pkgs/development/tools/tailwindcss/update.sh
Executable file
@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl gnused jq nix-prefetch
|
||||
set -eou pipefail
|
||||
|
||||
ROOT="$(dirname "$(readlink -f "$0")")"
|
||||
|
||||
CURRENT_VERSION=$(nix-instantiate --eval --strict --json -A tailwindcss-bin.version . | jq -r .)
|
||||
LATEST_VERSION=$(curl --fail --silent https://api.github.com/repos/tailwindlabs/tailwindcss/releases/latest | jq --raw-output .tag_name | sed 's/v//')
|
||||
sed -i "s/version = \".*\"/version = \"${LATEST_VERSION}\"/" "$ROOT/default.nix"
|
||||
|
||||
if [ "$CURRENT_VERSION" = "$LATEST_VERSION" ]; then
|
||||
echo "tailwindcss-bin already at latest version $CURRENT_VERSION, exiting"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
function updatePlatform() {
|
||||
NIXPLAT=$1
|
||||
TAILWINDPLAT=$2
|
||||
echo "Updating tailwindcss-bin for $NIXPLAT"
|
||||
|
||||
URL="https://github.com/tailwindlabs/tailwindcss/releases/download/v${LATEST_VERSION}/tailwindcss-${TAILWINDPLAT}"
|
||||
HASH=$(nix hash to-sri --type sha256 "$(nix-prefetch-url --type sha256 "$URL")")
|
||||
|
||||
sed -i "s,$NIXPLAT = \"sha256.*\",$NIXPLAT = \"${HASH}\"," "$ROOT/default.nix"
|
||||
}
|
||||
|
||||
updatePlatform aarch64-darwin macos-arm64
|
||||
updatePlatform aarch64-linux linux-arm64
|
||||
updatePlatform armv7l-linux linux-armv7
|
||||
updatePlatform x86_64-darwin macos-x64
|
||||
updatePlatform x86_64-linux linux-x64
|
@ -25,11 +25,11 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "unciv";
|
||||
version = "4.6.19";
|
||||
version = "4.7.6-patch1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar";
|
||||
hash = "sha256-21Pge/b6pZ4csGVr2J0V6rwZGKBEEqEkuef+7imGtl4=";
|
||||
hash = "sha256-+h9SD4uTWCHA9DQy6QbmBe+wJpGhJrUi9pFVlZLSITc=";
|
||||
};
|
||||
|
||||
dontUnpack = true;
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "dex";
|
||||
version = "2.36.0";
|
||||
version = "2.37.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dexidp";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-EIkK+X08FJKTFU4V19cGSH1yGesUfS7AibQ3zGUFyWI=";
|
||||
sha256 = "sha256-2u9UHummUpPljTzPNCQfHwYVeWgDOGLcGx10aVHUAZM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Rsz7UnBlZdPRTrq3nfFaSVwok8wLDtd6aT1sEK+++vg=";
|
||||
vendorHash = "sha256-sSn3qpbo04DjyPD+Ogx9JUdJ/++fNYb0bAmudQjchQ0=";
|
||||
|
||||
subPackages = [
|
||||
"cmd/dex"
|
||||
|
@ -5,9 +5,12 @@
|
||||
, pkg-config
|
||||
, openssl
|
||||
, powercap
|
||||
, nix-update-script
|
||||
, runCommand
|
||||
, dieHook
|
||||
, nixosTests
|
||||
, testers
|
||||
, scaphandre
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
@ -38,17 +41,25 @@ rustPlatform.buildRustPackage rec {
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
stdout = self: runCommand "${pname}-test" {
|
||||
buildInputs = [
|
||||
self
|
||||
dieHook
|
||||
];
|
||||
} ''
|
||||
${self}/bin/scaphandre stdout -t 4 > $out || die "Scaphandre failed to measure consumption"
|
||||
[ -s $out ]
|
||||
'';
|
||||
vm = nixosTests.scaphandre;
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests = {
|
||||
stdout = self: runCommand "${pname}-test" {
|
||||
buildInputs = [
|
||||
self
|
||||
dieHook
|
||||
];
|
||||
} ''
|
||||
${self}/bin/scaphandre stdout -t 4 > $out || die "Scaphandre failed to measure consumption"
|
||||
[ -s $out ]
|
||||
'';
|
||||
vm = nixosTests.scaphandre;
|
||||
version = testers.testVersion {
|
||||
inherit version;
|
||||
package = scaphandre;
|
||||
command = "scaphandre --version";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -8,7 +8,6 @@
|
||||
, pkg-config
|
||||
, python3
|
||||
, xorg
|
||||
, libiconv
|
||||
, Libsystem
|
||||
, AppKit
|
||||
, Security
|
||||
@ -22,16 +21,17 @@
|
||||
, nix-update-script
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage (
|
||||
let
|
||||
version = "0.82.0";
|
||||
pname = "nushell";
|
||||
in {
|
||||
inherit version pname;
|
||||
let
|
||||
version = "0.82.0";
|
||||
in
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "nushell";
|
||||
inherit version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
owner = "nushell";
|
||||
repo = "nushell";
|
||||
rev = version;
|
||||
hash = "sha256-D/R+/60Lo2rLUA/313CTJQookqSNtbD7LnVf0vBC9Qc=";
|
||||
};
|
||||
@ -43,32 +43,22 @@ rustPlatform.buildRustPackage (
|
||||
++ lib.optionals stdenv.isDarwin [ rustPlatform.bindgenHook ];
|
||||
|
||||
buildInputs = [ openssl zstd ]
|
||||
++ lib.optionals stdenv.isDarwin [ zlib libiconv Libsystem Security ]
|
||||
++ lib.optionals stdenv.isDarwin [ zlib Libsystem Security ]
|
||||
++ lib.optionals (withDefaultFeatures && stdenv.isLinux) [ xorg.libX11 ]
|
||||
++ lib.optionals (withDefaultFeatures && stdenv.isDarwin) [ AppKit nghttp2 libgit2 ];
|
||||
|
||||
buildFeatures = additionalFeatures [ (lib.optional withDefaultFeatures "default") ];
|
||||
buildNoDefaultFeatures = !withDefaultFeatures;
|
||||
buildFeatures = additionalFeatures [ ];
|
||||
|
||||
# TODO investigate why tests are broken on darwin
|
||||
# failures show that tests try to write to paths
|
||||
# outside of TMPDIR
|
||||
doCheck = doCheck && !stdenv.isDarwin;
|
||||
inherit doCheck;
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
echo "Running cargo test"
|
||||
HOME=$TMPDIR cargo test
|
||||
HOME=$(mktemp -d) cargo test
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A modern shell written in Rust";
|
||||
homepage = "https://www.nushell.sh/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ Br1ght0ne johntitor marsam ];
|
||||
mainProgram = "nu";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
shellPath = "/bin/nu";
|
||||
tests.version = testers.testVersion {
|
||||
@ -76,4 +66,12 @@ rustPlatform.buildRustPackage (
|
||||
};
|
||||
updateScript = nix-update-script { };
|
||||
};
|
||||
})
|
||||
|
||||
meta = with lib; {
|
||||
description = "A modern shell written in Rust";
|
||||
homepage = "https://www.nushell.sh/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ Br1ght0ne johntitor marsam ];
|
||||
mainProgram = "nu";
|
||||
};
|
||||
}
|
||||
|
@ -9,16 +9,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "pulsarctl";
|
||||
version = "2.10.3.3";
|
||||
version = "2.11.1.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "streamnative";
|
||||
repo = "pulsarctl";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-BOVFBIG+XKBOmLOx/IzseEArcPeriJWzn30FOERBy9s=";
|
||||
hash = "sha256-sztjHw3su8KAV/zZcJqPWhjblINa8nYCN5Dzhn6X07w=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ao8Bxaq9LHvC6Zdd1isyMKxoTJ0MGelSPPxwgqVJcK8=";
|
||||
vendorHash = "sha256-NQ8zvrW6lBF1js+WI2PPvXhv4YRS2IBT6S4vDoE1BFc=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
@ -4,13 +4,13 @@
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "squashfuse";
|
||||
version = "0.1.105";
|
||||
version = "0.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "vasi";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-RIhDXzpmrYUOwj5OYzjWKJw0cwE+L3t/9pIkg/hFXA0=";
|
||||
sha256 = "sha256-agapkSl4KEK+7MA2+gcfaXv6+rpG0MQAhAG5At9rXqk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook libtool pkg-config ];
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vtm";
|
||||
version = "0.9.9o";
|
||||
version = "0.9.9q";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netxs-group";
|
||||
repo = "vtm";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-uQnGMADTcDXsjUZR/q7RbPEMGyK3Bh9KyL6L/a47Q5I=";
|
||||
sha256 = "sha256-HuKUt2hXE5kGkOknVngVjCWidia4E4csoODTuGwwx7k=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
@ -5,19 +5,19 @@ rustPlatform.buildRustPackage rec {
|
||||
version = "0.6.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ArgusHQ";
|
||||
owner = "AleoHQ";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "1646j0lgg3hhznifvbkvr672p3yqlcavswijawaxq7n33ll8vmcn";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-ltWNKB3DHtwVVzJyvRWj2I8rjsl7ru2i/RCO9yiQhpg=";
|
||||
};
|
||||
|
||||
cargoSha256 = "10al0j8ak95x4d85lzphgq8kmdnb809l6gahfp5miyvsfd4dxmpi";
|
||||
cargoHash = "sha256-8dbeSHN6+1jLdVA9QxNAy7Y6EX7wflpQI72kqZAEVIE=";
|
||||
|
||||
buildInputs = lib.optional stdenv.isDarwin Security;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Rust library for generating cryptocurrency wallets";
|
||||
homepage = "https://github.com/ArgusHQ/wagyu";
|
||||
homepage = "https://github.com/AleoHQ/wagyu";
|
||||
license = with licenses; [ mit asl20 ];
|
||||
maintainers = [ maintainers.offline ];
|
||||
};
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gobgp";
|
||||
version = "3.15.0";
|
||||
version = "3.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "osrg";
|
||||
repo = "gobgp";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-s4kZepphr3QMUFpxdJW5exZKfUPVTisFTRN81tZnQUY=";
|
||||
sha256 = "sha256-RdZk2I7QvIWEeiL81N5PLJYE0KHYbkvjJeDXTg3F9c4=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-Z7vYpDQIKc4elVBLiGtxF3D9pec4QNvWFLpux/29t1Y=";
|
||||
|
@ -2,6 +2,7 @@
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, Security
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
@ -12,13 +13,16 @@ rustPlatform.buildRustPackage rec {
|
||||
owner = "MJVL";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "c4NWkQ/QvlUo1YoV2s7rWB6wQskAP5Qp1WVM23wvV3c=";
|
||||
hash = "sha256-c4NWkQ/QvlUo1YoV2s7rWB6wQskAP5Qp1WVM23wvV3c=";
|
||||
};
|
||||
|
||||
cargoSha256 = "Wu1mm+yJw2SddddxC5NfnMWLr+dplnRxH3AJ1/mTAKM=";
|
||||
cargoHash = "sha256-Wu1mm+yJw2SddddxC5NfnMWLr+dplnRxH3AJ1/mTAKM=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
Security
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "Lightweight slowloris (HTTP DoS) tool";
|
||||
homepage = "https://github.com/MJVL/slowlorust";
|
||||
license = licenses.mit;
|
||||
|
@ -7,13 +7,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gotrue";
|
||||
version = "2.77.1";
|
||||
version = "2.78.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "supabase";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-/CHbs/GZt8E+/XVTJWQZeEpIRHYO1pQ0u5h9tOQSFdg=";
|
||||
hash = "sha256-1BINewYK6dDyzhrt3lhTb3KeYm2xlux3nyQOO348CMM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-S/uedmoqTOmbIeotdky+s/eENDi2knKIW0rMMcQr2zU=";
|
||||
|
12
pkgs/tools/security/passage/darwin-getopt-path.patch
Normal file
12
pkgs/tools/security/passage/darwin-getopt-path.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff --git a/src/platform/darwin.sh b/src/platform/darwin.sh
|
||||
index 9a1fda8..4f7ce3d 100644
|
||||
--- a/src/platform/darwin.sh
|
||||
+++ b/src/platform/darwin.sh
|
||||
@@ -39,6 +39,6 @@ qrcode() {
|
||||
fi
|
||||
}
|
||||
|
||||
-GETOPT="$({ test -x /usr/local/opt/gnu-getopt/bin/getopt && echo /usr/local/opt/gnu-getopt; } || brew --prefix gnu-getopt 2>/dev/null || { command -v port &>/dev/null && echo /opt/local; } || echo /usr/local)/bin/getopt"
|
||||
+GETOPT="@getopt@/bin/getopt"
|
||||
SHRED="srm -f -z"
|
||||
BASE64="openssl base64"
|
@ -2,8 +2,10 @@
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, makeBinaryWrapper
|
||||
, substituteAll
|
||||
, bash
|
||||
, age
|
||||
, getopt
|
||||
, git ? null
|
||||
, xclip ? null
|
||||
# Used to pretty-print list of all stored passwords, but is not needed to fetch
|
||||
@ -22,6 +24,13 @@ stdenv.mkDerivation {
|
||||
sha256 = "1val8wl9kzlxj4i1rrh2iiyf97w9akffvr0idvbkdb09hfzz4lz8";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./darwin-getopt-path.patch;
|
||||
inherit getopt;
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ makeBinaryWrapper ];
|
||||
|
||||
extraPath = lib.makeBinPath [ age git xclip tree ];
|
||||
|
@ -509,6 +509,7 @@ mapAliases ({
|
||||
firmwareLinuxNonfree = linux-firmware; # Added 2022-01-09
|
||||
fish-foreign-env = throw "fish-foreign-env has been replaced with fishPlugins.foreign-env"; # Added 2020-12-29, modified 2021-01-10
|
||||
fishfight = jumpy; # Added 2022-08-03
|
||||
fitnesstrax = throw "fitnesstrax was removed from nixpkgs because it disappeared upstream and no longer compiles"; # added 2023-07-04
|
||||
flameGraph = throw "'flameGraph' has been renamed to/replaced by 'flamegraph'"; # Converted to throw 2022-02-22
|
||||
flashplayer-standalone-debugger = throw "flashplayer-standalone-debugger has been removed as Adobe Flash Player is now deprecated"; # Added 2021-02-07
|
||||
flashplayer-standalone = throw "flashplayer-standalone has been removed as Adobe Flash Player is now deprecated"; # Added 2021-02-07
|
||||
@ -519,6 +520,7 @@ mapAliases ({
|
||||
flink_1_5 = throw "flink_1_5 was removed, use flink instead"; # Added 2021-01-25
|
||||
flutter-beta = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions"; # Added 2020-01-15
|
||||
flutter-dev = throw "Non-stable versions of Flutter have been removed. You can use flutterPackages.mkFlutter to generate a package for other Flutter versions"; # Added 2020-01-15
|
||||
flutter2 = throw "flutter2 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2023-07-03
|
||||
flvtool2 = throw "flvtool2 has been removed"; # Added 2020-11-03
|
||||
fme = throw "fme was removed, because it is old and uses Glade, a discontinued library"; # Added 2022-01-26
|
||||
foldingathome = fahclient; # Added 2020-09-03
|
||||
|
@ -786,6 +786,8 @@ with pkgs;
|
||||
|
||||
# Dotnet
|
||||
|
||||
csharp-ls = callPackage ../development/tools/language-servers/csharp-ls { };
|
||||
|
||||
dotnetCorePackages = recurseIntoAttrs (callPackage ../development/compilers/dotnet {});
|
||||
|
||||
dotnet-sdk_2 = dotnetCorePackages.sdk_2_1;
|
||||
@ -1809,6 +1811,8 @@ with pkgs;
|
||||
|
||||
systeroid = callPackage ../tools/system/systeroid { };
|
||||
|
||||
tailwindcss-bin = callPackage ../development/tools/tailwindcss { };
|
||||
|
||||
tauon = callPackage ../applications/audio/tauon { };
|
||||
|
||||
tere = callPackage ../tools/misc/tere { };
|
||||
@ -3506,8 +3510,6 @@ with pkgs;
|
||||
|
||||
fedifetcher = callPackage ../tools/misc/fedifetcher { };
|
||||
|
||||
fitnesstrax = callPackage ../applications/misc/fitnesstrax { };
|
||||
|
||||
flavours = callPackage ../applications/misc/flavours { };
|
||||
|
||||
flirc = libsForQt5.callPackage ../applications/video/flirc {
|
||||
@ -6857,6 +6859,7 @@ with pkgs;
|
||||
|
||||
cudaPackages_12_0 = callPackage ./cuda-packages.nix { cudaVersion = "12.0"; };
|
||||
cudaPackages_12_1 = callPackage ./cuda-packages.nix { cudaVersion = "12.1"; };
|
||||
cudaPackages_12_2 = callPackage ./cuda-packages.nix { cudaVersion = "12.2"; };
|
||||
cudaPackages_12 = cudaPackages_12_0;
|
||||
|
||||
# TODO: try upgrading once there is a cuDNN release supporting CUDA 12. No
|
||||
@ -12678,7 +12681,9 @@ with pkgs;
|
||||
|
||||
slirp4netns = callPackage ../tools/networking/slirp4netns { };
|
||||
|
||||
slowlorust = callPackage ../tools/networking/slowlorust { };
|
||||
slowlorust = callPackage ../tools/networking/slowlorust {
|
||||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
slsa-verifier = callPackage ../tools/security/slsa-verifier { };
|
||||
|
||||
@ -15177,10 +15182,8 @@ with pkgs;
|
||||
recurseIntoAttrs (callPackage ../development/compilers/flutter { });
|
||||
flutter-unwrapped = flutterPackages.stable;
|
||||
flutter37-unwrapped = flutterPackages.v37;
|
||||
flutter2-unwrapped = flutterPackages.v2;
|
||||
flutter = flutterPackages.wrapFlutter flutter-unwrapped;
|
||||
flutter37 = flutterPackages.wrapFlutter flutter37-unwrapped;
|
||||
flutter2 = flutterPackages.wrapFlutter flutter2-unwrapped;
|
||||
|
||||
fnm = callPackage ../development/tools/fnm {
|
||||
inherit (darwin.apple_sdk.frameworks) DiskArbitration Foundation Security;
|
||||
@ -41102,6 +41105,7 @@ with pkgs;
|
||||
btcdeb = callPackage ../applications/blockchains/btcdeb { };
|
||||
|
||||
jami = qt6Packages.callPackage ../applications/networking/instant-messengers/jami {
|
||||
fmt = fmt_9;
|
||||
# TODO: remove once `udev` is `systemdMinimal` everywhere.
|
||||
udev = systemdMinimal;
|
||||
jack = libjack2;
|
||||
|
@ -8572,6 +8572,22 @@ with self; {
|
||||
};
|
||||
};
|
||||
|
||||
EvalSafe = buildPerlPackage rec {
|
||||
pname = "Eval-Safe";
|
||||
version = "0.02";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/M/MA/MATHIAS/Eval-Safe/Eval-Safe-${version}.tar.gz";
|
||||
hash = "sha256-VaUsIz4troYRP58Zs09hftz8hBb5vs5nEme9GBGxIRE=";
|
||||
};
|
||||
outputs = [ "out" ];
|
||||
meta = with lib; {
|
||||
description = "Simplified safe evaluation of Perl code";
|
||||
homepage = "https://github.com/mkende/perl-eval-safe";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ figsoda ];
|
||||
};
|
||||
};
|
||||
|
||||
ExcelWriterXLSX = buildPerlPackage {
|
||||
pname = "Excel-Writer-XLSX";
|
||||
version = "1.09";
|
||||
@ -17395,6 +17411,22 @@ with self; {
|
||||
};
|
||||
};
|
||||
|
||||
MsgPackRaw = buildPerlPackage rec {
|
||||
pname = "MsgPack-Raw";
|
||||
version = "0.05";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/J/JA/JACQUESG/MsgPack-Raw-${version}.tar.gz";
|
||||
hash = "sha256-hVnitkzZjZmrxmbt8qTIckyVNGEmFq8R9OsLvQ1CLaw=";
|
||||
};
|
||||
checkInputs = [ TestPod TestPodCoverage ];
|
||||
meta = with lib; {
|
||||
description = "Perl bindings to the msgpack C library";
|
||||
homepage = "https://github.com/jacquesg/p5-MsgPack-Raw";
|
||||
license = with licenses; [ gpl1Plus /* or */ artistic1 ];
|
||||
maintainers = with maintainers; [ figsoda ];
|
||||
};
|
||||
};
|
||||
|
||||
MusicBrainzDiscID = buildPerlPackage {
|
||||
pname = "MusicBrainz-DiscID";
|
||||
version = "0.06";
|
||||
@ -17491,6 +17523,37 @@ with self; {
|
||||
};
|
||||
};
|
||||
|
||||
NeovimExt = buildPerlPackage rec {
|
||||
pname = "Neovim-Ext";
|
||||
version = "0.06";
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/authors/id/J/JA/JACQUESG/Neovim-Ext-${version}.tar.gz";
|
||||
hash = "sha256-bSzrMGLJZzfbpVbLIEYxMPxABocbJbfE9mzTgZ1FBLg=";
|
||||
};
|
||||
propagatedBuildInputs = [
|
||||
ClassAccessor
|
||||
EvalSafe
|
||||
IOAsync
|
||||
MsgPackRaw
|
||||
];
|
||||
checkInputs = [
|
||||
ArchiveZip
|
||||
FileSlurper
|
||||
FileWhich
|
||||
ProcBackground
|
||||
TestPod
|
||||
TestPodCoverage
|
||||
];
|
||||
# TODO: fix tests
|
||||
doCheck = false;
|
||||
meta = with lib; {
|
||||
description = "Perl bindings for Neovim";
|
||||
homepage = "https://github.com/jacquesg/p5-Neovim-Ext";
|
||||
license = with licenses; [ gpl1Plus /* or */ artistic1 ];
|
||||
maintainers = with maintainers; [ figsoda ];
|
||||
};
|
||||
};
|
||||
|
||||
NetIdent = buildPerlPackage {
|
||||
pname = "Net-Ident";
|
||||
version = "1.25";
|
||||
|
Loading…
Reference in New Issue
Block a user