mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-29 18:33:00 +00:00
Merge staging-next into staging
This commit is contained in:
commit
f7e8a46952
@ -2279,6 +2279,11 @@
|
||||
github = "barinov274";
|
||||
githubId = 54442153;
|
||||
};
|
||||
BarrOff = {
|
||||
name = "BarrOff";
|
||||
github = "BarrOff";
|
||||
githubId = 58253563;
|
||||
};
|
||||
barrucadu = {
|
||||
email = "mike@barrucadu.co.uk";
|
||||
github = "barrucadu";
|
||||
@ -20990,6 +20995,14 @@
|
||||
github = "tirimia";
|
||||
githubId = 11174371;
|
||||
};
|
||||
titaniumtown = {
|
||||
email = "titaniumtown@proton.me";
|
||||
name = "Simon Gardling";
|
||||
github = "titaniumtown";
|
||||
githubId = 11786225;
|
||||
matrix = "@titaniumtown:envs.net";
|
||||
keys = [ { fingerprint = "D15E 4754 FE1A EDA1 5A6D 4702 9AB2 8AC1 0ECE 533D"; } ];
|
||||
};
|
||||
tjni = {
|
||||
email = "43ngvg@masqt.com";
|
||||
matrix = "@tni:matrix.org";
|
||||
|
@ -4,11 +4,10 @@
|
||||
|
||||
## Highlights {#sec-release-24.11-highlights}
|
||||
|
||||
- **This will be the latest version of Nixpkgs to support macOS 10.12 (Sierra).**
|
||||
Starting with release 25.05, the minimum supported version will be macOS 11 (Big Sur).
|
||||
From that point on, packages may or may not work on older releases of macOS.
|
||||
Users on old macOS versions should consider upgrading to a supported OS release (potentially using [OpenCore Legacy Patcher](https://dortania.github.io/OpenCore-Legacy-Patcher/) for old hardware) or installing NixOS.
|
||||
If neither of those options are viable and you require new versions of software, [MacPorts](https://www.macports.org/) supports back to OS X 10.6 (Snow Leopard).
|
||||
- **This will be the last release of Nixpkgs to support macOS Sierra 10.12 to macOS Catalina 10.15.**
|
||||
Starting with release 25.05, the minimum supported version will be macOS Big Sur 11, and we cannot guarantee that packages will continue to work on older versions of macOS.
|
||||
Users on old macOS versions should consider upgrading to a supported version (potentially using [OpenCore Legacy Patcher](https://dortania.github.io/OpenCore-Legacy-Patcher/) for old hardware) or installing NixOS.
|
||||
If neither of those options are viable and you require new versions of software, [MacPorts](https://www.macports.org/) supports back to Mac OS X Snow Leopard 10.6.
|
||||
|
||||
- Convenience options for `amdgpu`, open source driver for Radeon cards, is now available under `hardware.amdgpu`.
|
||||
|
||||
@ -406,6 +405,8 @@
|
||||
- The `antennas` package and the `services.antennas` module have been
|
||||
removed as they only work with `tvheadend` (see above).
|
||||
|
||||
- The `system.build.brightboxImage` image has been removed as It did not build anymore and has not seen any maintenance in over 7 years (excluding tree-wide changes).
|
||||
|
||||
- The `services.syncplay` module now exposes all currently available command-line arguments for `syncplay-server` as options, as well as a `useACMEHost` option for easy TLS setup.
|
||||
The systemd service now uses `DynamicUser`/`StateDirectory` and the `user` and `group` options have been deprecated.
|
||||
|
||||
|
@ -1,16 +1,13 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.ceph;
|
||||
|
||||
# function that translates "camelCaseOptions" to "camel case options", credits to tilpner in #nixos@freenode
|
||||
expandCamelCase = replaceStrings upperChars (map (s: " ${s}") lowerChars);
|
||||
expandCamelCaseAttrs = mapAttrs' (name: value: nameValuePair (expandCamelCase name) value);
|
||||
expandCamelCase = lib.replaceStrings lib.upperChars (map (s: " ${s}") lib.lowerChars);
|
||||
expandCamelCaseAttrs = lib.mapAttrs' (name: value: lib.nameValuePair (expandCamelCase name) value);
|
||||
|
||||
makeServices = daemonType: daemonIds:
|
||||
mkMerge (map (daemonId:
|
||||
lib.mkMerge (map (daemonId:
|
||||
{ "ceph-${daemonType}-${daemonId}" = makeService daemonType daemonId cfg.global.clusterName cfg.${daemonType}.package; })
|
||||
daemonIds);
|
||||
|
||||
@ -18,8 +15,8 @@ let
|
||||
let
|
||||
stateDirectory = "ceph/${if daemonType == "rgw" then "radosgw" else daemonType}/${clusterName}-${daemonId}"; in {
|
||||
enable = true;
|
||||
description = "Ceph ${builtins.replaceStrings lowerChars upperChars daemonType} daemon ${daemonId}";
|
||||
after = [ "network-online.target" "time-sync.target" ] ++ optional (daemonType == "osd") "ceph-mon.target";
|
||||
description = "Ceph ${builtins.replaceStrings lib.lowerChars lib.upperChars daemonType} daemon ${daemonId}";
|
||||
after = [ "network-online.target" "time-sync.target" ] ++ lib.optional (daemonType == "osd") "ceph-mon.target";
|
||||
wants = [ "network-online.target" "time-sync.target" ];
|
||||
partOf = [ "ceph-${daemonType}.target" ];
|
||||
wantedBy = [ "ceph-${daemonType}.target" ];
|
||||
@ -47,11 +44,11 @@ let
|
||||
Group = if daemonType == "osd" then "disk" else "ceph";
|
||||
ExecStart = ''${ceph.out}/bin/${if daemonType == "rgw" then "radosgw" else "ceph-${daemonType}"} \
|
||||
-f --cluster ${clusterName} --id ${daemonId}'';
|
||||
} // optionalAttrs (daemonType == "osd") {
|
||||
} // lib.optionalAttrs (daemonType == "osd") {
|
||||
ExecStartPre = "${ceph.lib}/libexec/ceph/ceph-osd-prestart.sh --id ${daemonId} --cluster ${clusterName}";
|
||||
RestartSec = "20s";
|
||||
PrivateDevices = "no"; # osd needs disk access
|
||||
} // optionalAttrs ( daemonType == "mon") {
|
||||
} // lib.optionalAttrs ( daemonType == "mon") {
|
||||
RestartSec = "10";
|
||||
};
|
||||
};
|
||||
@ -71,11 +68,11 @@ in
|
||||
options.services.ceph = {
|
||||
# Ceph has a monolithic configuration file but different sections for
|
||||
# each daemon, a separate client section and a global section
|
||||
enable = mkEnableOption "Ceph global configuration";
|
||||
enable = lib.mkEnableOption "Ceph global configuration";
|
||||
|
||||
global = {
|
||||
fsid = mkOption {
|
||||
type = types.str;
|
||||
fsid = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
example = ''
|
||||
433a2193-4f8a-47a0-95d2-209d7ca2cca5
|
||||
'';
|
||||
@ -85,25 +82,25 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
clusterName = mkOption {
|
||||
type = types.str;
|
||||
clusterName = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "ceph";
|
||||
description = ''
|
||||
Name of cluster
|
||||
'';
|
||||
};
|
||||
|
||||
mgrModulePath = mkOption {
|
||||
type = types.path;
|
||||
mgrModulePath = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
default = "${pkgs.ceph.lib}/lib/ceph/mgr";
|
||||
defaultText = literalExpression ''"''${pkgs.ceph.lib}/lib/ceph/mgr"'';
|
||||
defaultText = lib.literalExpression ''"''${pkgs.ceph.lib}/lib/ceph/mgr"'';
|
||||
description = ''
|
||||
Path at which to find ceph-mgr modules.
|
||||
'';
|
||||
};
|
||||
|
||||
monInitialMembers = mkOption {
|
||||
type = with types; nullOr commas;
|
||||
monInitialMembers = lib.mkOption {
|
||||
type = with lib.types; nullOr commas;
|
||||
default = null;
|
||||
example = ''
|
||||
node0, node1, node2
|
||||
@ -113,8 +110,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
monHost = mkOption {
|
||||
type = with types; nullOr commas;
|
||||
monHost = lib.mkOption {
|
||||
type = with lib.types; nullOr commas;
|
||||
default = null;
|
||||
example = ''
|
||||
10.10.0.1, 10.10.0.2, 10.10.0.3
|
||||
@ -124,40 +121,40 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
maxOpenFiles = mkOption {
|
||||
type = types.int;
|
||||
maxOpenFiles = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 131072;
|
||||
description = ''
|
||||
Max open files for each OSD daemon.
|
||||
'';
|
||||
};
|
||||
|
||||
authClusterRequired = mkOption {
|
||||
type = types.enum [ "cephx" "none" ];
|
||||
authClusterRequired = lib.mkOption {
|
||||
type = lib.types.enum [ "cephx" "none" ];
|
||||
default = "cephx";
|
||||
description = ''
|
||||
Enables requiring daemons to authenticate with eachother in the cluster.
|
||||
'';
|
||||
};
|
||||
|
||||
authServiceRequired = mkOption {
|
||||
type = types.enum [ "cephx" "none" ];
|
||||
authServiceRequired = lib.mkOption {
|
||||
type = lib.types.enum [ "cephx" "none" ];
|
||||
default = "cephx";
|
||||
description = ''
|
||||
Enables requiring clients to authenticate with the cluster to access services in the cluster (e.g. radosgw, mds or osd).
|
||||
'';
|
||||
};
|
||||
|
||||
authClientRequired = mkOption {
|
||||
type = types.enum [ "cephx" "none" ];
|
||||
authClientRequired = lib.mkOption {
|
||||
type = lib.types.enum [ "cephx" "none" ];
|
||||
default = "cephx";
|
||||
description = ''
|
||||
Enables requiring the cluster to authenticate itself to the client.
|
||||
'';
|
||||
};
|
||||
|
||||
publicNetwork = mkOption {
|
||||
type = with types; nullOr commas;
|
||||
publicNetwork = lib.mkOption {
|
||||
type = with lib.types; nullOr commas;
|
||||
default = null;
|
||||
example = ''
|
||||
10.20.0.0/24, 192.168.1.0/24
|
||||
@ -167,8 +164,8 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
clusterNetwork = mkOption {
|
||||
type = with types; nullOr commas;
|
||||
clusterNetwork = lib.mkOption {
|
||||
type = with lib.types; nullOr commas;
|
||||
default = null;
|
||||
example = ''
|
||||
10.10.0.0/24, 192.168.0.0/24
|
||||
@ -178,18 +175,18 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
rgwMimeTypesFile = mkOption {
|
||||
type = with types; nullOr path;
|
||||
rgwMimeTypesFile = lib.mkOption {
|
||||
type = with lib.types; nullOr path;
|
||||
default = "${pkgs.mailcap}/etc/mime.types";
|
||||
defaultText = literalExpression ''"''${pkgs.mailcap}/etc/mime.types"'';
|
||||
defaultText = lib.literalExpression ''"''${pkgs.mailcap}/etc/mime.types"'';
|
||||
description = ''
|
||||
Path to mime types used by radosgw.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = with types; attrsOf str;
|
||||
extraConfig = lib.mkOption {
|
||||
type = with lib.types; attrsOf str;
|
||||
default = {};
|
||||
example = {
|
||||
"ms bind ipv6" = "true";
|
||||
@ -200,9 +197,9 @@ in
|
||||
};
|
||||
|
||||
mgr = {
|
||||
enable = mkEnableOption "Ceph MGR daemon";
|
||||
daemons = mkOption {
|
||||
type = with types; listOf str;
|
||||
enable = lib.mkEnableOption "Ceph MGR daemon";
|
||||
daemons = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = [];
|
||||
example = [ "name1" "name2" ];
|
||||
description = ''
|
||||
@ -210,9 +207,9 @@ in
|
||||
to the id part in ceph i.e. [ "name1" ] would result in mgr.name1
|
||||
'';
|
||||
};
|
||||
package = mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = mkOption {
|
||||
type = with types; attrsOf str;
|
||||
package = lib.mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = lib.mkOption {
|
||||
type = with lib.types; attrsOf str;
|
||||
default = {};
|
||||
description = ''
|
||||
Extra configuration to add to the global section for manager daemons.
|
||||
@ -221,9 +218,9 @@ in
|
||||
};
|
||||
|
||||
mon = {
|
||||
enable = mkEnableOption "Ceph MON daemon";
|
||||
daemons = mkOption {
|
||||
type = with types; listOf str;
|
||||
enable = lib.mkEnableOption "Ceph MON daemon";
|
||||
daemons = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = [];
|
||||
example = [ "name1" "name2" ];
|
||||
description = ''
|
||||
@ -231,9 +228,9 @@ in
|
||||
to the id part in ceph i.e. [ "name1" ] would result in mon.name1
|
||||
'';
|
||||
};
|
||||
package = mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = mkOption {
|
||||
type = with types; attrsOf str;
|
||||
package = lib.mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = lib.mkOption {
|
||||
type = with lib.types; attrsOf str;
|
||||
default = {};
|
||||
description = ''
|
||||
Extra configuration to add to the monitor section.
|
||||
@ -242,9 +239,9 @@ in
|
||||
};
|
||||
|
||||
osd = {
|
||||
enable = mkEnableOption "Ceph OSD daemon";
|
||||
daemons = mkOption {
|
||||
type = with types; listOf str;
|
||||
enable = lib.mkEnableOption "Ceph OSD daemon";
|
||||
daemons = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = [];
|
||||
example = [ "name1" "name2" ];
|
||||
description = ''
|
||||
@ -252,9 +249,9 @@ in
|
||||
to the id part in ceph i.e. [ "name1" ] would result in osd.name1
|
||||
'';
|
||||
};
|
||||
package = mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = mkOption {
|
||||
type = with types; attrsOf str;
|
||||
package = lib.mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = lib.mkOption {
|
||||
type = with lib.types; attrsOf str;
|
||||
default = {
|
||||
"osd journal size" = "10000";
|
||||
"osd pool default size" = "3";
|
||||
@ -270,9 +267,9 @@ in
|
||||
};
|
||||
|
||||
mds = {
|
||||
enable = mkEnableOption "Ceph MDS daemon";
|
||||
daemons = mkOption {
|
||||
type = with types; listOf str;
|
||||
enable = lib.mkEnableOption "Ceph MDS daemon";
|
||||
daemons = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = [];
|
||||
example = [ "name1" "name2" ];
|
||||
description = ''
|
||||
@ -280,9 +277,9 @@ in
|
||||
to the id part in ceph i.e. [ "name1" ] would result in mds.name1
|
||||
'';
|
||||
};
|
||||
package = mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = mkOption {
|
||||
type = with types; attrsOf str;
|
||||
package = lib.mkPackageOption pkgs "ceph" { };
|
||||
extraConfig = lib.mkOption {
|
||||
type = with lib.types; attrsOf str;
|
||||
default = {};
|
||||
description = ''
|
||||
Extra configuration to add to the MDS section.
|
||||
@ -291,10 +288,10 @@ in
|
||||
};
|
||||
|
||||
rgw = {
|
||||
enable = mkEnableOption "Ceph RadosGW daemon";
|
||||
package = mkPackageOption pkgs "ceph" { };
|
||||
daemons = mkOption {
|
||||
type = with types; listOf str;
|
||||
enable = lib.mkEnableOption "Ceph RadosGW daemon";
|
||||
package = lib.mkPackageOption pkgs "ceph" { };
|
||||
daemons = lib.mkOption {
|
||||
type = with lib.types; listOf str;
|
||||
default = [];
|
||||
example = [ "name1" "name2" ];
|
||||
description = ''
|
||||
@ -307,11 +304,11 @@ in
|
||||
};
|
||||
|
||||
client = {
|
||||
enable = mkEnableOption "Ceph client configuration";
|
||||
extraConfig = mkOption {
|
||||
type = with types; attrsOf (attrsOf str);
|
||||
enable = lib.mkEnableOption "Ceph client configuration";
|
||||
extraConfig = lib.mkOption {
|
||||
type = with lib.types; attrsOf (attrsOf str);
|
||||
default = {};
|
||||
example = literalExpression ''
|
||||
example = lib.literalExpression ''
|
||||
{
|
||||
# This would create a section for a radosgw daemon named node0 and related
|
||||
# configuration for it
|
||||
@ -326,7 +323,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf config.services.ceph.enable {
|
||||
config = lib.mkIf config.services.ceph.enable {
|
||||
assertions = [
|
||||
{ assertion = cfg.global.fsid != "";
|
||||
message = "fsid has to be set to a valid uuid for the cluster to function";
|
||||
@ -345,22 +342,22 @@ in
|
||||
}
|
||||
];
|
||||
|
||||
warnings = optional (cfg.global.monInitialMembers == null)
|
||||
warnings = lib.optional (cfg.global.monInitialMembers == null)
|
||||
"Not setting up a list of members in monInitialMembers requires that you set the host variable for each mon daemon or else the cluster won't function";
|
||||
|
||||
environment.etc."ceph/ceph.conf".text = let
|
||||
# Merge the extraConfig set for mgr daemons, as mgr don't have their own section
|
||||
globalSection = expandCamelCaseAttrs (cfg.global // cfg.extraConfig // optionalAttrs cfg.mgr.enable cfg.mgr.extraConfig);
|
||||
globalSection = expandCamelCaseAttrs (cfg.global // cfg.extraConfig // lib.optionalAttrs cfg.mgr.enable cfg.mgr.extraConfig);
|
||||
# Remove all name-value pairs with null values from the attribute set to avoid making empty sections in the ceph.conf
|
||||
globalSection' = filterAttrs (name: value: value != null) globalSection;
|
||||
globalSection' = lib.filterAttrs (name: value: value != null) globalSection;
|
||||
totalConfig = {
|
||||
global = globalSection';
|
||||
} // optionalAttrs (cfg.mon.enable && cfg.mon.extraConfig != {}) { mon = cfg.mon.extraConfig; }
|
||||
// optionalAttrs (cfg.mds.enable && cfg.mds.extraConfig != {}) { mds = cfg.mds.extraConfig; }
|
||||
// optionalAttrs (cfg.osd.enable && cfg.osd.extraConfig != {}) { osd = cfg.osd.extraConfig; }
|
||||
// optionalAttrs (cfg.client.enable && cfg.client.extraConfig != {}) cfg.client.extraConfig;
|
||||
} // lib.optionalAttrs (cfg.mon.enable && cfg.mon.extraConfig != {}) { mon = cfg.mon.extraConfig; }
|
||||
// lib.optionalAttrs (cfg.mds.enable && cfg.mds.extraConfig != {}) { mds = cfg.mds.extraConfig; }
|
||||
// lib.optionalAttrs (cfg.osd.enable && cfg.osd.extraConfig != {}) { osd = cfg.osd.extraConfig; }
|
||||
// lib.optionalAttrs (cfg.client.enable && cfg.client.extraConfig != {}) cfg.client.extraConfig;
|
||||
in
|
||||
generators.toINI {} totalConfig;
|
||||
lib.generators.toINI {} totalConfig;
|
||||
|
||||
users.users.ceph = {
|
||||
uid = config.ids.uids.ceph;
|
||||
@ -375,13 +372,13 @@ in
|
||||
|
||||
systemd.services = let
|
||||
services = []
|
||||
++ optional cfg.mon.enable (makeServices "mon" cfg.mon.daemons)
|
||||
++ optional cfg.mds.enable (makeServices "mds" cfg.mds.daemons)
|
||||
++ optional cfg.osd.enable (makeServices "osd" cfg.osd.daemons)
|
||||
++ optional cfg.rgw.enable (makeServices "rgw" cfg.rgw.daemons)
|
||||
++ optional cfg.mgr.enable (makeServices "mgr" cfg.mgr.daemons);
|
||||
++ lib.optional cfg.mon.enable (makeServices "mon" cfg.mon.daemons)
|
||||
++ lib.optional cfg.mds.enable (makeServices "mds" cfg.mds.daemons)
|
||||
++ lib.optional cfg.osd.enable (makeServices "osd" cfg.osd.daemons)
|
||||
++ lib.optional cfg.rgw.enable (makeServices "rgw" cfg.rgw.daemons)
|
||||
++ lib.optional cfg.mgr.enable (makeServices "mgr" cfg.mgr.daemons);
|
||||
in
|
||||
mkMerge services;
|
||||
lib.mkMerge services;
|
||||
|
||||
systemd.targets = let
|
||||
targets = [
|
||||
@ -390,13 +387,13 @@ in
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
unitConfig.StopWhenUnneeded = true;
|
||||
}; } ]
|
||||
++ optional cfg.mon.enable (makeTarget "mon")
|
||||
++ optional cfg.mds.enable (makeTarget "mds")
|
||||
++ optional cfg.osd.enable (makeTarget "osd")
|
||||
++ optional cfg.rgw.enable (makeTarget "rgw")
|
||||
++ optional cfg.mgr.enable (makeTarget "mgr");
|
||||
++ lib.optional cfg.mon.enable (makeTarget "mon")
|
||||
++ lib.optional cfg.mds.enable (makeTarget "mds")
|
||||
++ lib.optional cfg.osd.enable (makeTarget "osd")
|
||||
++ lib.optional cfg.rgw.enable (makeTarget "rgw")
|
||||
++ lib.optional cfg.mgr.enable (makeTarget "mgr");
|
||||
in
|
||||
mkMerge targets;
|
||||
lib.mkMerge targets;
|
||||
|
||||
systemd.tmpfiles.settings."10-ceph" = let
|
||||
defaultConfig = {
|
||||
@ -407,9 +404,9 @@ in
|
||||
"/etc/ceph".d = defaultConfig;
|
||||
"/run/ceph".d = defaultConfig // { mode = "0770"; };
|
||||
"/var/lib/ceph".d = defaultConfig;
|
||||
"/var/lib/ceph/mgr".d = mkIf (cfg.mgr.enable) defaultConfig;
|
||||
"/var/lib/ceph/mon".d = mkIf (cfg.mon.enable) defaultConfig;
|
||||
"/var/lib/ceph/osd".d = mkIf (cfg.osd.enable) defaultConfig;
|
||||
"/var/lib/ceph/mgr".d = lib.mkIf (cfg.mgr.enable) defaultConfig;
|
||||
"/var/lib/ceph/mon".d = lib.mkIf (cfg.mon.enable) defaultConfig;
|
||||
"/var/lib/ceph/osd".d = lib.mkIf (cfg.osd.enable) defaultConfig;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
@ -1,5 +0,0 @@
|
||||
{ modulesPath, ... }:
|
||||
|
||||
{
|
||||
imports = [ "${modulesPath}/virtualisation/brightbox-image.nix" ];
|
||||
}
|
@ -1,166 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
let
|
||||
diskSize = "20G";
|
||||
in
|
||||
{
|
||||
imports = [ ../profiles/headless.nix ../profiles/qemu-guest.nix ];
|
||||
|
||||
system.build.brightboxImage =
|
||||
pkgs.vmTools.runInLinuxVM (
|
||||
pkgs.runCommand "brightbox-image"
|
||||
{ preVM =
|
||||
''
|
||||
mkdir $out
|
||||
diskImage=$out/$diskImageBase
|
||||
truncate $diskImage --size ${diskSize}
|
||||
mv closure xchg/
|
||||
'';
|
||||
|
||||
postVM =
|
||||
''
|
||||
PATH=$PATH:${lib.makeBinPath [ pkgs.gnutar pkgs.gzip ]}
|
||||
pushd $out
|
||||
${pkgs.qemu_kvm}/bin/qemu-img convert -c -O qcow2 $diskImageBase nixos.qcow2
|
||||
rm $diskImageBase
|
||||
popd
|
||||
'';
|
||||
diskImageBase = "nixos-image-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.raw";
|
||||
buildInputs = [ pkgs.util-linux pkgs.perl ];
|
||||
exportReferencesGraph =
|
||||
[ "closure" config.system.build.toplevel ];
|
||||
}
|
||||
''
|
||||
# Create partition table
|
||||
${pkgs.parted}/sbin/parted --script /dev/vda mklabel msdos
|
||||
${pkgs.parted}/sbin/parted --script /dev/vda mkpart primary ext4 1 ${diskSize}
|
||||
${pkgs.parted}/sbin/parted --script /dev/vda print
|
||||
. /sys/class/block/vda1/uevent
|
||||
mknod /dev/vda1 b $MAJOR $MINOR
|
||||
|
||||
# Create an empty filesystem and mount it.
|
||||
${pkgs.e2fsprogs}/sbin/mkfs.ext4 -L nixos /dev/vda1
|
||||
${pkgs.e2fsprogs}/sbin/tune2fs -c 0 -i 0 /dev/vda1
|
||||
|
||||
mkdir /mnt
|
||||
mount /dev/vda1 /mnt
|
||||
|
||||
# The initrd expects these directories to exist.
|
||||
mkdir /mnt/dev /mnt/proc /mnt/sys
|
||||
|
||||
mount --bind /proc /mnt/proc
|
||||
mount --bind /dev /mnt/dev
|
||||
mount --bind /sys /mnt/sys
|
||||
|
||||
# Copy all paths in the closure to the filesystem.
|
||||
storePaths=$(perl ${pkgs.pathsFromGraph} /tmp/xchg/closure)
|
||||
|
||||
mkdir -p /mnt/nix/store
|
||||
echo "copying everything (will take a while)..."
|
||||
cp -prd $storePaths /mnt/nix/store/
|
||||
|
||||
# Register the paths in the Nix database.
|
||||
printRegistration=1 perl ${pkgs.pathsFromGraph} /tmp/xchg/closure | \
|
||||
chroot /mnt ${config.nix.package.out}/bin/nix-store --load-db --option build-users-group ""
|
||||
|
||||
# Create the system profile to allow nixos-rebuild to work.
|
||||
chroot /mnt ${config.nix.package.out}/bin/nix-env \
|
||||
-p /nix/var/nix/profiles/system --set ${config.system.build.toplevel} \
|
||||
--option build-users-group ""
|
||||
|
||||
# `nixos-rebuild' requires an /etc/NIXOS.
|
||||
mkdir -p /mnt/etc
|
||||
touch /mnt/etc/NIXOS
|
||||
|
||||
# `switch-to-configuration' requires a /bin/sh
|
||||
mkdir -p /mnt/bin
|
||||
ln -s ${config.system.build.binsh}/bin/sh /mnt/bin/sh
|
||||
|
||||
# Install a configuration.nix.
|
||||
mkdir -p /mnt/etc/nixos /mnt/boot/grub
|
||||
cp ${./brightbox-config.nix} /mnt/etc/nixos/configuration.nix
|
||||
|
||||
# Generate the GRUB menu.
|
||||
ln -s vda /dev/sda
|
||||
chroot /mnt ${config.system.build.toplevel}/bin/switch-to-configuration boot
|
||||
|
||||
umount /mnt/proc /mnt/dev /mnt/sys
|
||||
umount /mnt
|
||||
''
|
||||
);
|
||||
|
||||
fileSystems."/".label = "nixos";
|
||||
|
||||
# Generate a GRUB menu. Amazon's pv-grub uses this to boot our kernel/initrd.
|
||||
boot.loader.grub.device = "/dev/vda";
|
||||
boot.loader.timeout = 0;
|
||||
|
||||
# Don't put old configurations in the GRUB menu. The user has no
|
||||
# way to select them anyway.
|
||||
boot.loader.grub.configurationLimit = 0;
|
||||
|
||||
# Allow root logins only using the SSH key that the user specified
|
||||
# at instance creation time.
|
||||
services.openssh.enable = true;
|
||||
services.openssh.settings.PermitRootLogin = "prohibit-password";
|
||||
|
||||
# Force getting the hostname from Google Compute.
|
||||
networking.hostName = mkDefault "";
|
||||
|
||||
# Always include cryptsetup so that NixOps can use it.
|
||||
environment.systemPackages = [ pkgs.cryptsetup ];
|
||||
|
||||
systemd.services.fetch-ec2-data =
|
||||
{ description = "Fetch EC2 Data";
|
||||
|
||||
wantedBy = [ "multi-user.target" "sshd.service" ];
|
||||
before = [ "sshd.service" ];
|
||||
wants = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
|
||||
path = [ pkgs.wget pkgs.iproute2 ];
|
||||
|
||||
script =
|
||||
''
|
||||
wget="wget -q --retry-connrefused -O -"
|
||||
|
||||
${optionalString (config.networking.hostName == "") ''
|
||||
echo "setting host name..."
|
||||
${pkgs.nettools}/bin/hostname $($wget http://169.254.169.254/latest/meta-data/hostname)
|
||||
''}
|
||||
|
||||
# Don't download the SSH key if it has already been injected
|
||||
# into the image (a Nova feature).
|
||||
if ! [ -e /root/.ssh/authorized_keys ]; then
|
||||
echo "obtaining SSH key..."
|
||||
mkdir -m 0700 -p /root/.ssh
|
||||
$wget http://169.254.169.254/latest/meta-data/public-keys/0/openssh-key > /root/key.pub
|
||||
if [ $? -eq 0 -a -e /root/key.pub ]; then
|
||||
if ! grep -q -f /root/key.pub /root/.ssh/authorized_keys; then
|
||||
cat /root/key.pub >> /root/.ssh/authorized_keys
|
||||
echo "new key added to authorized_keys"
|
||||
fi
|
||||
chmod 600 /root/.ssh/authorized_keys
|
||||
rm -f /root/key.pub
|
||||
fi
|
||||
fi
|
||||
|
||||
# Extract the intended SSH host key for this machine from
|
||||
# the supplied user data, if available. Otherwise sshd will
|
||||
# generate one normally.
|
||||
$wget http://169.254.169.254/2011-01-01/user-data > /root/user-data || true
|
||||
key="$(sed 's/|/\n/g; s/SSH_HOST_DSA_KEY://; t; d' /root/user-data)"
|
||||
key_pub="$(sed 's/SSH_HOST_DSA_KEY_PUB://; t; d' /root/user-data)"
|
||||
if [ -n "$key" -a -n "$key_pub" -a ! -e /etc/ssh/ssh_host_dsa_key ]; then
|
||||
mkdir -m 0755 -p /etc/ssh
|
||||
(umask 077; echo "$key" > /etc/ssh/ssh_host_dsa_key)
|
||||
echo "$key_pub" > /etc/ssh/ssh_host_dsa_key.pub
|
||||
fi
|
||||
'';
|
||||
|
||||
serviceConfig.Type = "oneshot";
|
||||
serviceConfig.RemainAfterExit = true;
|
||||
};
|
||||
|
||||
}
|
@ -42,7 +42,7 @@ let
|
||||
(f (tree-sitter.builtGrammars // builtGrammars));
|
||||
copyGrammar = grammar:
|
||||
let name = lib.last (lib.splitString "-" grammar.name); in
|
||||
"ln -s ${grammar}/parser/${name}.so $out/parser/${name}.so";
|
||||
"ln -sf ${grammar}/parser/${name}.so $out/parser/${name}.so";
|
||||
in
|
||||
[
|
||||
(runCommand "vimplugin-treesitter-grammars"
|
||||
|
@ -10,43 +10,43 @@
|
||||
|
||||
let
|
||||
pname = "1password";
|
||||
version = if channel == "stable" then "8.10.36" else "8.10.38-13.BETA";
|
||||
version = if channel == "stable" then "8.10.40" else "8.10.44-21.BETA";
|
||||
|
||||
sources = {
|
||||
stable = {
|
||||
x86_64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/stable/x86_64/1password-${version}.x64.tar.gz";
|
||||
hash = "sha256-yUSU0np6li5zLfFOnebpv0+s1UQ6BdgI+28OvcxS3H8=";
|
||||
hash = "sha256-viY0SOUhrOvmue6Nolau356rIqwDo2nLzMilFFmNb9g=";
|
||||
};
|
||||
aarch64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/stable/aarch64/1password-${version}.arm64.tar.gz";
|
||||
hash = "sha256-KG0PJ/gwBd9+qYyraRqS/D58Y58VwLd8yCnYzPVWQAY=";
|
||||
hash = "sha256-7lUZiS3TSsIVqPoN5A6YqyVaaaRI9BliT51FHkwOPyw=";
|
||||
};
|
||||
x86_64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
|
||||
hash = "sha256-vYhmA9N1izPRo3HPDouOpjJzMwK7LkCHuyYxBGkIPKM=";
|
||||
hash = "sha256-xK/B8J3VP8y1xw3KorzZzPf/LjYmYdOIjDECMJnVv6I=";
|
||||
};
|
||||
aarch64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
|
||||
hash = "sha256-v1eCh/cOpA5XcmamAqreKHRQ+waoBQtvvmNO4wvFq6A=";
|
||||
hash = "sha256-iqdK6K7dcypZFGseYal2KjOaqJtUjXeCzbDdx7pDv8A=";
|
||||
};
|
||||
};
|
||||
beta = {
|
||||
x86_64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/beta/x86_64/1password-${version}.x64.tar.gz";
|
||||
hash = "sha256-SeB1Em2WuYvslBv//TROYTAB1asYFhC22IwhcwGi+Qs=";
|
||||
hash = "sha256-enorJfbn+xJVy1fG3wjhO3LkSsMncHA9/yA13kG+h4Y=";
|
||||
};
|
||||
aarch64-linux = {
|
||||
url = "https://downloads.1password.com/linux/tar/beta/aarch64/1password-${version}.arm64.tar.gz";
|
||||
hash = "sha256-Ik5gL5FCxNANOKx/MSH7dCz3XEdLr7jxykaWhMQKUVw=";
|
||||
hash = "sha256-EUnIIi6DB5kBVid9ExBpNApKItHnRKQziBy/GFt0xag=";
|
||||
};
|
||||
x86_64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-x86_64.zip";
|
||||
hash = "sha256-8cNxhRAOrn/A++APOMUxwrD3+a++ksRMzlmmnQ8J8/c=";
|
||||
hash = "sha256-U14CjoUJUpd4wWidZz6xGErhHI/VPChqG8cwBTBYoYc=";
|
||||
};
|
||||
aarch64-darwin = {
|
||||
url = "https://downloads.1password.com/mac/1Password-${version}-aarch64.zip";
|
||||
hash = "sha256-YkZbuCFvWHksLQYKJ3LQD2YDXj9qwHF4Gg8JbxBZsuc=";
|
||||
hash = "sha256-DD1M2EFSHqG9OHX5Q/CmZLZIKYrBMS4cnX/6tLVi7H0=";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -18,13 +18,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "clipqr";
|
||||
version = "1.2.0";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "imatt-foss";
|
||||
repo = "clipqr";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-gfKCuTZY9VsiXMlw6XX6YylMO4xGoLQU/5QvnDV7GbE=";
|
||||
hash = "sha256-iuA6RqclMm1CWaiM1kpOpgfYvKaYGOIwFQkLr/nCL5M=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
@ -9,15 +9,17 @@
|
||||
girara,
|
||||
gettext,
|
||||
libarchive,
|
||||
desktop-file-utils,
|
||||
appstream-glib,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zathura-cb";
|
||||
version = "0.1.10";
|
||||
version = "0.1.11";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-ibDKF6gMuh6p/Rs7cvOnFz8KrToGqMNk2GXEmZwYu8g=";
|
||||
url = "https://pwmt.org/projects/zathura-cb/download/zathura-cb-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-TiAepUzcIKkyWMQ1VvY4lEGvmXQN59ymyh/1JBcvvUc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -25,23 +27,26 @@ stdenv.mkDerivation rec {
|
||||
ninja
|
||||
pkg-config
|
||||
gettext
|
||||
desktop-file-utils
|
||||
appstream-glib
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libarchive
|
||||
zathura_core
|
||||
girara
|
||||
];
|
||||
|
||||
PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
env.PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://pwmt.org/projects/zathura-cb/";
|
||||
description = "Zathura CB plugin";
|
||||
longDescription = ''
|
||||
The zathura-cb plugin adds comic book support to zathura.
|
||||
'';
|
||||
license = licenses.zlib;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ jlesquembre ];
|
||||
license = lib.licenses.zlib;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ jlesquembre ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -2,6 +2,7 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch,
|
||||
meson,
|
||||
ninja,
|
||||
wrapGAppsHook3,
|
||||
@ -28,15 +29,24 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zathura";
|
||||
version = "0.5.6";
|
||||
version = "0.5.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pwmt";
|
||||
repo = "zathura";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-lTEBIZ3lkzjJ+L1qecrcL8iseo8AvSIo3Wh65/ikwac=";
|
||||
hash = "sha256-k6DEJpUA3s0mGxE38aYnX7uea98LrzevJhWW1abHo/c=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/pwmt/zathura/issues/664
|
||||
(fetchpatch {
|
||||
name = "fix-build-on-macos.patch";
|
||||
url = "https://github.com/pwmt/zathura/commit/53f151f775091abec55ccc4b63893a8f9a668588.patch";
|
||||
hash = "sha256-d8lRdlBN1Kfw/aTjz8x0gvTKy+SqSYWHLQCjV7hF5MI=";
|
||||
})
|
||||
];
|
||||
|
||||
outputs = [
|
||||
"bin"
|
||||
"man"
|
||||
@ -54,6 +64,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# Make sure tests are enabled for doCheck
|
||||
# (lib.mesonEnable "tests" finalAttrs.finalPackage.doCheck)
|
||||
(lib.mesonEnable "seccomp" stdenv.hostPlatform.isLinux)
|
||||
(lib.mesonEnable "landlock" stdenv.hostPlatform.isLinux)
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -85,11 +96,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://pwmt.org/projects/zathura";
|
||||
description = "Core component for zathura PDF viewer";
|
||||
license = licenses.zlib;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ globin ];
|
||||
license = lib.licenses.zlib;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ globin ];
|
||||
};
|
||||
})
|
||||
|
@ -10,22 +10,27 @@
|
||||
girara,
|
||||
djvulibre,
|
||||
gettext,
|
||||
desktop-file-utils,
|
||||
appstream-glib,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zathura-djvu";
|
||||
version = "0.2.9";
|
||||
version = "0.2.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-lub4pu5TIxBzsvcAMmSHL4RQHmPD2nvwWY0EYoawwgA=";
|
||||
url = "https://pwmt.org/projects/zathura-djvu/download/zathura-djvu-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-MunYmSmnbNfT/Lr3n0QYaL2r7fFzF9HRhD+qHxkzjZU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
desktop-file-utils
|
||||
appstream-glib
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
djvulibre
|
||||
gettext
|
||||
@ -34,17 +39,17 @@ stdenv.mkDerivation rec {
|
||||
girara
|
||||
];
|
||||
|
||||
PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
env.PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://pwmt.org/projects/zathura-djvu/";
|
||||
description = "Zathura DJVU plugin";
|
||||
longDescription = ''
|
||||
The zathura-djvu plugin adds DjVu support to zathura by using the
|
||||
djvulibre library.
|
||||
'';
|
||||
license = licenses.zlib;
|
||||
platforms = platforms.unix;
|
||||
license = lib.licenses.zlib;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -17,22 +17,26 @@
|
||||
tesseract,
|
||||
leptonica,
|
||||
mujs,
|
||||
desktop-file-utils,
|
||||
appstream-glib,
|
||||
gitUpdater,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.4.2";
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "0.4.4";
|
||||
pname = "zathura-pdf-mupdf";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-fFC+z9mJX9ccExsV336Ut+zJJa8UdfUz/qVp9YgcnhM=";
|
||||
url = "https://pwmt.org/projects/zathura-pdf-mupdf/download/zathura-pdf-mupdf-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-ASViSQHKvjov5jMVpG59lmoyPAKP9TiQ3694Vq2x9Pw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
desktop-file-utils
|
||||
appstream-glib
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@ -49,7 +53,7 @@ stdenv.mkDerivation rec {
|
||||
mujs
|
||||
] ++ lib.optional stdenv.isDarwin gtk-mac-integration;
|
||||
|
||||
PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
env.PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
|
||||
postPatch = ''
|
||||
sed -i -e '/^mupdfthird =/d' -e 's/, mupdfthird//g' meson.build
|
||||
@ -57,15 +61,15 @@ stdenv.mkDerivation rec {
|
||||
|
||||
passthru.updateScript = gitUpdater { url = "https://git.pwmt.org/pwmt/zathura-pdf-mupdf.git"; };
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://pwmt.org/projects/zathura-pdf-mupdf/";
|
||||
description = "Zathura PDF plugin (mupdf)";
|
||||
longDescription = ''
|
||||
The zathura-pdf-mupdf plugin adds PDF support to zathura by
|
||||
using the mupdf rendering library.
|
||||
'';
|
||||
license = licenses.zlib;
|
||||
platforms = platforms.unix;
|
||||
license = lib.licenses.zlib;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -8,39 +8,44 @@
|
||||
zathura_core,
|
||||
girara,
|
||||
poppler,
|
||||
desktop-file-utils,
|
||||
appstream-glib,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zathura-pdf-poppler";
|
||||
version = "0.3.2";
|
||||
version = "0.3.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-cavu1RzR0YjO89vUwWR1jjw3FgR1aWeyOtF2rlNFMBE=";
|
||||
url = "https://pwmt.org/projects/zathura-pdf-poppler/download/zathura-pdf-poppler-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-yBLy9ERv1d4Wc04TwC6pqiW6Tjup9ytzLA/5D5ujSTU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
desktop-file-utils
|
||||
appstream-glib
|
||||
zathura_core
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
poppler
|
||||
girara
|
||||
];
|
||||
|
||||
PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
env.PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://pwmt.org/projects/zathura-pdf-poppler/";
|
||||
description = "Zathura PDF plugin (poppler)";
|
||||
longDescription = ''
|
||||
The zathura-pdf-poppler plugin adds PDF support to zathura by
|
||||
using the poppler rendering library.
|
||||
'';
|
||||
license = licenses.zlib;
|
||||
platforms = platforms.unix;
|
||||
license = lib.licenses.zlib;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -9,15 +9,17 @@
|
||||
girara,
|
||||
libspectre,
|
||||
gettext,
|
||||
desktop-file-utils,
|
||||
appstream-glib,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "zathura-ps";
|
||||
version = "0.2.7";
|
||||
version = "0.2.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-WJf5IEz1+Xi5QTvnzn/r3oQxV69I41GTjt8H2/kwjkY=";
|
||||
url = "https://pwmt.org/projects/zathura-ps/download/zathura-ps-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-B8pZT3J3+YdtADgEhBg0PqKWQCjpPJD5Vp7/NqiTLko=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -25,24 +27,27 @@ stdenv.mkDerivation rec {
|
||||
ninja
|
||||
pkg-config
|
||||
gettext
|
||||
desktop-file-utils
|
||||
appstream-glib
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libspectre
|
||||
zathura_core
|
||||
girara
|
||||
];
|
||||
|
||||
PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
env.PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://pwmt.org/projects/zathura-ps/";
|
||||
description = "Zathura PS plugin";
|
||||
longDescription = ''
|
||||
The zathura-ps plugin adds PS support to zathura by using the
|
||||
libspectre library.
|
||||
'';
|
||||
license = licenses.zlib;
|
||||
platforms = platforms.unix;
|
||||
license = lib.licenses.zlib;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -17,16 +17,16 @@ let
|
||||
|
||||
tctl-next = buildGoModule rec {
|
||||
pname = "tctl-next";
|
||||
version = "0.13.1";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "temporalio";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-bh0UsXA5yHtvP9femOwEzVzmu1VLz2uZwoIHL/kI7kM=";
|
||||
hash = "sha256-y0C2z2iMMQSG5+xGngZ98+ixIgbvaQxPdAWuPbEbBAY=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ziCJG722c32QAh9QmoC2E7TcLiC2InKwfdC9mkanTsU=";
|
||||
vendorHash = "sha256-zhGqDHdVGg7eGnw5L3eSyXKBTjp85ir5zrtf7HbXmC0=";
|
||||
|
||||
inherit overrideModAttrs;
|
||||
|
||||
@ -37,7 +37,7 @@ let
|
||||
ldflags = [
|
||||
"-s"
|
||||
"-w"
|
||||
"-X github.com/temporalio/cli/headers.Version=${version}"
|
||||
"-X github.com/temporalio/cli/temporalcli.Version=${version}"
|
||||
];
|
||||
|
||||
# Tests fail with x86 on macOS Rosetta 2
|
||||
|
@ -48,23 +48,23 @@ let
|
||||
# and often with different versions. We write them on three lines
|
||||
# like this (rather than using {}) so that the updater script can
|
||||
# find where to edit them.
|
||||
versions.aarch64-darwin = "6.1.10.38818";
|
||||
versions.x86_64-darwin = "6.1.10.38818";
|
||||
versions.x86_64-linux = "6.1.10.1400";
|
||||
versions.aarch64-darwin = "6.1.11.39163";
|
||||
versions.x86_64-darwin = "6.1.11.39163";
|
||||
versions.x86_64-linux = "6.1.11.1545";
|
||||
|
||||
srcs = {
|
||||
aarch64-darwin = fetchurl {
|
||||
url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64";
|
||||
name = "zoomusInstallerFull.pkg";
|
||||
hash = "sha256-E8r0bctM5whwEMppzO9hR3W+k+BmrV0gVx+J02KYmuk=";
|
||||
hash = "sha256-xWeCiDhYPfTAJttXG5bCwhLu+bmHlcFF/s3+EACeph4=";
|
||||
};
|
||||
x86_64-darwin = fetchurl {
|
||||
url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg";
|
||||
hash = "sha256-HMSBV/B/nTkcU8src6Wdz8uZnz455guSAMGm5ha7mIA=";
|
||||
hash = "sha256-AB+QXx6r3raymVU7rEJ9dO4CqJI9tnRF3l61vuGnqpI=";
|
||||
};
|
||||
x86_64-linux = fetchurl {
|
||||
url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz";
|
||||
hash = "sha256-c3WywWmblz9Wg3RMtovCBcR/mYyaWkmuoCqqGvHBxwo=";
|
||||
hash = "sha256-wkG/fYbn3EdbVJwZQI8EcRPmHFX+4zggmfM4sHUjD8I=";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -7,13 +7,13 @@ let
|
||||
apps = lib.makeBinPath [ openssh python' cron rsync sshfs-fuse encfs ];
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "backintime-common";
|
||||
version = "1.4.3";
|
||||
version = "1.5.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bit-team";
|
||||
repo = "backintime";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-2q2Q4rnxXwVnfH1YEBwY35B2ctG9+qpOIAHqPOjjArg=";
|
||||
sha256 = "sha256-yfCSTzCmhXDBC1vYqwgVjsYUtc5VO1VW74BmIB0hHfE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper gettext ];
|
||||
@ -24,12 +24,13 @@ in stdenv.mkDerivation rec {
|
||||
configureFlags = [ "--python=${lib.getExe python'}" ];
|
||||
|
||||
preConfigure = ''
|
||||
patchShebangs --build updateversion.sh
|
||||
cd common
|
||||
substituteInPlace configure \
|
||||
--replace "/.." "" \
|
||||
--replace "share/backintime" "${python'.sitePackages}/backintime"
|
||||
substituteInPlace "backintime" \
|
||||
--replace "share" "${python'.sitePackages}"
|
||||
--replace-fail "/.." "" \
|
||||
--replace-fail "share/backintime" "${python'.sitePackages}/backintime"
|
||||
substituteInPlace "backintime" "backintime-askpass" \
|
||||
--replace-fail "share" "${python'.sitePackages}"
|
||||
'';
|
||||
|
||||
dontAddPrefix = true;
|
||||
@ -44,10 +45,11 @@ in stdenv.mkDerivation rec {
|
||||
description = "Simple backup tool for Linux";
|
||||
license = lib.licenses.gpl2;
|
||||
maintainers = with lib.maintainers; [ stephen-huan ];
|
||||
platforms = lib.platforms.all;
|
||||
platforms = lib.platforms.linux;
|
||||
mainProgram = "backintime";
|
||||
longDescription = ''
|
||||
Back In Time is a simple backup tool (on top of rsync) for Linux
|
||||
inspired from “flyback project” and “TimeVault”. The backup is
|
||||
inspired from "flyback project" and "TimeVault". The backup is
|
||||
done by taking snapshots of a specified set of directories.
|
||||
'';
|
||||
};
|
||||
|
@ -1,19 +1,25 @@
|
||||
{ lib, mkDerivation, backintime-common, python3, polkit, which, su, coreutils, util-linux }:
|
||||
{ lib, stdenv, backintime-common, python3, polkit, which, su, coreutils, util-linux,
|
||||
wrapQtAppsHook, qtbase, qtwayland }:
|
||||
|
||||
let
|
||||
python' = python3.withPackages (ps: with ps; [ pyqt5 backintime-common packaging ]);
|
||||
python' = python3.withPackages (ps: with ps; [ pyqt6 backintime-common packaging ]);
|
||||
in
|
||||
mkDerivation {
|
||||
stdenv.mkDerivation {
|
||||
inherit (backintime-common)
|
||||
version src installFlags meta dontAddPrefix nativeBuildInputs;
|
||||
version src installFlags meta dontAddPrefix;
|
||||
|
||||
pname = "backintime-qt";
|
||||
|
||||
buildInputs = [ python' backintime-common ];
|
||||
buildInputs = [ python' backintime-common qtbase qtwayland ];
|
||||
|
||||
nativeBuildInputs = backintime-common.nativeBuildInputs or [ ] ++ [
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
configureFlags = [ "--python=${lib.getExe python'}" ];
|
||||
|
||||
preConfigure = ''
|
||||
patchShebangs --build updateversion.sh
|
||||
cd qt
|
||||
substituteInPlace qttools_path.py \
|
||||
--replace "__file__, os.pardir, os.pardir" '"${backintime-common}/${python'.sitePackages}/backintime"'
|
||||
@ -24,23 +30,23 @@ mkDerivation {
|
||||
--prefix PATH : "${lib.getBin backintime-common}/bin:$PATH"
|
||||
|
||||
substituteInPlace "$out/share/polkit-1/actions/net.launchpad.backintime.policy" \
|
||||
--replace "/usr/bin/backintime-qt" "$out/bin/backintime-qt"
|
||||
--replace-fail "/usr/bin/backintime-qt" "$out/bin/backintime-qt"
|
||||
|
||||
substituteInPlace "$out/share/applications/backintime-qt-root.desktop" \
|
||||
--replace "/usr/bin/backintime-qt" "backintime-qt"
|
||||
--replace-fail "/usr/bin/backintime-qt" "backintime-qt"
|
||||
|
||||
substituteInPlace "$out/share/backintime/qt/serviceHelper.py" \
|
||||
--replace "'which'" "'${lib.getBin which}/bin/which'" \
|
||||
--replace "/bin/su" "${lib.getBin su}/bin/su" \
|
||||
--replace "/usr/bin/backintime" "${lib.getBin backintime-common}/bin/backintime" \
|
||||
--replace "/usr/bin/nice" "${lib.getBin coreutils}/bin/nice" \
|
||||
--replace "/usr/bin/ionice" "${lib.getBin util-linux}/bin/ionice"
|
||||
--replace-fail "'which'" "'${lib.getExe which}'" \
|
||||
--replace-fail "/bin/su" "${lib.getBin su}/bin/su" \
|
||||
--replace-fail "/usr/bin/backintime" "${lib.getExe backintime-common}" \
|
||||
--replace-fail "/usr/bin/nice" "${lib.getBin coreutils}/bin/nice" \
|
||||
--replace-fail "/usr/bin/ionice" "${lib.getBin util-linux}/bin/ionice"
|
||||
|
||||
substituteInPlace "$out/share/dbus-1/system-services/net.launchpad.backintime.serviceHelper.service" \
|
||||
--replace "/usr/share/backintime" "$out/share/backintime"
|
||||
--replace-fail "/usr/share/backintime" "$out/share/backintime"
|
||||
|
||||
substituteInPlace "$out/bin/backintime-qt_polkit" \
|
||||
--replace "/usr/bin/backintime-qt" "$out/bin/backintime-qt"
|
||||
--replace-fail "/usr/bin/backintime-qt" "$out/bin/backintime-qt"
|
||||
|
||||
wrapProgram "$out/bin/backintime-qt_polkit" \
|
||||
--prefix PATH : "${lib.getBin polkit}/bin:$PATH"
|
||||
|
@ -1,4 +1,5 @@
|
||||
{ lib
|
||||
, cmake
|
||||
, cppzmq
|
||||
, curl
|
||||
, fetchFromGitHub
|
||||
@ -9,6 +10,8 @@
|
||||
, libgit2
|
||||
, librsvg
|
||||
, libuuid
|
||||
, meson
|
||||
, ninja
|
||||
, opencascade-occt_7_6
|
||||
, pkg-config
|
||||
, podofo
|
||||
@ -20,16 +23,19 @@ in
|
||||
# This base is used in horizon-eda and python3Packages.horizon-eda
|
||||
rec {
|
||||
pname = "horizon-eda";
|
||||
version = "2.5.0";
|
||||
version = "2.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "horizon-eda";
|
||||
repo = "horizon";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-UcjbDJR6shyETpanNkRoH8LF8r6gFjsyNHVSCMHKqS8=";
|
||||
hash = "sha256-0ikCR10r/WPb+H+Ut2GO6y4A/9bctJLanL/RR4r9GWs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
|
@ -1,90 +0,0 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, fetchpatch2
|
||||
, rustPlatform
|
||||
, Security
|
||||
, SystemConfiguration
|
||||
, pkg-config
|
||||
, libiconv
|
||||
, openssl
|
||||
, gzip
|
||||
, libssh2
|
||||
, libgit2
|
||||
, zstd
|
||||
, installShellFiles
|
||||
, nix-update-script
|
||||
, testers
|
||||
, jujutsu
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "jujutsu";
|
||||
version = "0.21.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "martinvonz";
|
||||
repo = "jj";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-uZsfHhcYpobatWaDQczuc9Z3BWHN5VO0qr/8mu5kEio=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-BOO1jP1Y5CNbE97zj+tpariiBdcuxKb1wyvI7i/VpYI=";
|
||||
|
||||
cargoBuildFlags = [ "--bin" "jj" ]; # don't install the fake editors
|
||||
useNextest = false; # nextest is the upstream integration framework, but is problematic for test skipping
|
||||
ZSTD_SYS_USE_PKG_CONFIG = "1"; # disable vendored zlib
|
||||
LIBGIT2_NO_VENDOR = "1"; # disable vendored libgit2
|
||||
LIBSSH2_SYS_USE_PKG_CONFIG = "1"; # disable vendored libssh2
|
||||
|
||||
nativeBuildInputs = [
|
||||
gzip
|
||||
installShellFiles
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
openssl
|
||||
zstd
|
||||
libgit2
|
||||
libssh2
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
Security
|
||||
SystemConfiguration
|
||||
libiconv
|
||||
];
|
||||
|
||||
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
|
||||
$out/bin/jj util mangen > ./jj.1
|
||||
installManPage ./jj.1
|
||||
|
||||
installShellCompletion --cmd jj \
|
||||
--bash <($out/bin/jj util completion bash) \
|
||||
--fish <($out/bin/jj util completion fish) \
|
||||
--zsh <($out/bin/jj util completion zsh)
|
||||
'';
|
||||
|
||||
checkFlags = [
|
||||
# signing tests spin up an ssh-agent and do git checkouts
|
||||
"--skip=test_ssh_signing"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests = {
|
||||
version = testers.testVersion {
|
||||
package = jujutsu;
|
||||
command = "jj --version";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Git-compatible DVCS that is both simple and powerful";
|
||||
homepage = "https://github.com/martinvonz/jj";
|
||||
changelog = "https://github.com/martinvonz/jj/blob/v${version}/CHANGELOG.md";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ _0x4A6F thoughtpolice ];
|
||||
mainProgram = "jj";
|
||||
};
|
||||
}
|
@ -7,12 +7,12 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "streamlink";
|
||||
version = "6.8.3";
|
||||
version = "6.9.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-4/UaVnwIcDCS+R0El6P8Ku/jJ+/Ncl0D5m89zRHtm2g=";
|
||||
hash = "sha256-LKmwsXuAvJ0JqEIsOQyzjYGa9VZkk5YL8hDY/uIhwX8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -1,10 +1,10 @@
|
||||
{ lib, stdenv, fetchurl, fetchpatch, python3Packages, zlib, pkg-config, glib, buildPackages
|
||||
{ lib, stdenv, fetchurl, fetchpatch, python3Packages, zlib, pkg-config, glib, overrideSDK, buildPackages
|
||||
, pixman, vde2, alsa-lib, flex, pcre2
|
||||
, bison, lzo, snappy, libaio, libtasn1, gnutls, nettle, curl, dtc, ninja, meson
|
||||
, sigtool
|
||||
, makeWrapper, removeReferencesTo
|
||||
, attr, libcap, libcap_ng, socat, libslirp
|
||||
, CoreServices, Cocoa, Hypervisor, rez, setfile, vmnet
|
||||
, CoreServices, Cocoa, Hypervisor, Kernel, rez, setfile, vmnet
|
||||
, guestAgentSupport ? (with stdenv.hostPlatform; isLinux || isNetBSD || isOpenBSD || isSunOS || isWindows) && !minimal
|
||||
, numaSupport ? stdenv.isLinux && !stdenv.isAarch32 && !minimal, numactl
|
||||
, seccompSupport ? stdenv.isLinux && !minimal, libseccomp
|
||||
@ -52,6 +52,16 @@
|
||||
|
||||
let
|
||||
hexagonSupport = hostCpuTargets == null || lib.elem "hexagon" hostCpuTargets;
|
||||
|
||||
buildPlatformStdenv =
|
||||
if stdenv.buildPlatform.isDarwin then
|
||||
overrideSDK buildPackages.stdenv {
|
||||
# Keep these values in sync with `all-packages.nix`.
|
||||
darwinSdkVersion = "12.3";
|
||||
darwinMinVersion = "12.0";
|
||||
}
|
||||
else
|
||||
buildPackages.stdenv;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@ -61,14 +71,14 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
+ lib.optionalString nixosTestRunner "-for-vm-tests"
|
||||
+ lib.optionalString toolsOnly "-utils"
|
||||
+ lib.optionalString userOnly "-user";
|
||||
version = "9.0.2";
|
||||
version = "9.1.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.qemu.org/qemu-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-qMP1lq7Olto7AMr7dLqvoNFFFer7jtHuP39cLQ6/ArY=";
|
||||
hash = "sha256-gWtwIqi6fCrDDi4M+XPoJva8yFBTOWAyEsXt6OlNeDQ=";
|
||||
};
|
||||
|
||||
depsBuildBuild = [ buildPackages.stdenv.cc ]
|
||||
depsBuildBuild = [ buildPlatformStdenv.cc ]
|
||||
++ lib.optionals hexagonSupport [ pkg-config ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -82,16 +92,14 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
++ lib.optionals enableDocs [ python3Packages.sphinx python3Packages.sphinx-rtd-theme ]
|
||||
++ lib.optionals hexagonSupport [ glib ]
|
||||
++ lib.optionals stdenv.isDarwin [ sigtool ]
|
||||
++ lib.optionals (!userOnly) [ dtc ]
|
||||
# workaround, remove once this patch lands: https://lore.kernel.org/qemu-devel/20240805104921.4035256-1-hi@alyssa.is/
|
||||
++ lib.optionals (hexagonSupport && stdenv.hostPlatform.isStatic) [ pcre2 ];
|
||||
++ lib.optionals (!userOnly) [ dtc ];
|
||||
|
||||
buildInputs = [ zlib glib pixman
|
||||
vde2 lzo snappy libtasn1
|
||||
gnutls nettle curl libslirp
|
||||
]
|
||||
++ lib.optionals ncursesSupport [ ncurses ]
|
||||
++ lib.optionals stdenv.isDarwin [ CoreServices Cocoa Hypervisor rez setfile vmnet ]
|
||||
++ lib.optionals stdenv.isDarwin [ CoreServices Cocoa Hypervisor Kernel rez setfile vmnet ]
|
||||
++ lib.optionals seccompSupport [ libseccomp ]
|
||||
++ lib.optionals numaSupport [ numactl ]
|
||||
++ lib.optionals alsaSupport [ alsa-lib ]
|
||||
@ -129,17 +137,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
patches = [
|
||||
./fix-qemu-ga.patch
|
||||
|
||||
# QEMU upstream does not demand compatibility to pre-10.13, so 9p-darwin
|
||||
# support on nix requires utimensat fallback. The patch adding this fallback
|
||||
# set was removed during the process of upstreaming this functionality, and
|
||||
# will still be needed in nix until the macOS SDK reaches 10.13+.
|
||||
./provide-fallback-for-utimensat.patch
|
||||
# Cocoa clipboard support only works on macOS 10.14+
|
||||
./revert-ui-cocoa-add-clipboard-support.patch
|
||||
# Standard about panel requires AppKit and macOS 10.13+
|
||||
./revert-ui-cocoa-use-the-standard-about-panel.patch
|
||||
# Safe area insets require macOS 11+
|
||||
./remove-ui-cocoa-use-safe-area-insets.patch
|
||||
# Workaround for upstream issue with nested virtualisation: https://gitlab.com/qemu-project/qemu/-/issues/1008
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.com/qemu-project/qemu/-/commit/3e4546d5bd38a1e98d4bd2de48631abf0398a3a2.diff";
|
||||
|
@ -1,36 +1,45 @@
|
||||
diff --git i/qga/commands-posix.c w/qga/commands-posix.c
|
||||
index 954efed01b..39c4b916ce 100644
|
||||
--- i/qga/commands-posix.c
|
||||
+++ w/qga/commands-posix.c
|
||||
@@ -123,6 +123,8 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
|
||||
execl("/sbin/shutdown", "shutdown", shutdown_flag, "-g0", "-y",
|
||||
"hypervisor initiated shutdown", (char *)NULL);
|
||||
#else
|
||||
+ execl("/run/current-system/sw/bin/shutdown", "shutdown", "-h", shutdown_flag, "+0",
|
||||
+ "hypervisor initiated shutdown", (char *)NULL);
|
||||
execl("/sbin/shutdown", "shutdown", "-h", shutdown_flag, "+0",
|
||||
"hypervisor initiated shutdown", (char *)NULL);
|
||||
#endif
|
||||
@@ -158,11 +160,13 @@ void qmp_guest_set_time(bool has_time, int64_t time_ns, Error **errp)
|
||||
pid_t pid;
|
||||
Error *local_err = NULL;
|
||||
struct timeval tv;
|
||||
+ static const char hwclock_path_nix[] = "/run/current-system/sw/bin/hwclock";
|
||||
static const char hwclock_path[] = "/sbin/hwclock";
|
||||
static int hwclock_available = -1;
|
||||
|
||||
if (hwclock_available < 0) {
|
||||
- hwclock_available = (access(hwclock_path, X_OK) == 0);
|
||||
+ hwclock_available = (access(hwclock_path_nix, X_OK) == 0) ||
|
||||
+ (access(hwclock_path, X_OK) == 0);
|
||||
diff --git a/qga/commands-posix.c b/qga/commands-posix.c
|
||||
index c2bd0b4316..47cee1c351 100644
|
||||
--- a/qga/commands-posix.c
|
||||
+++ b/qga/commands-posix.c
|
||||
@@ -246,7 +246,7 @@ void qmp_guest_shutdown(const char *mode, Error **errp)
|
||||
return;
|
||||
}
|
||||
|
||||
if (!hwclock_available) {
|
||||
@@ -208,6 +212,7 @@ void qmp_guest_set_time(bool has_time, int64_t time_ns, Error **errp)
|
||||
- const char *argv[] = {"/sbin/shutdown",
|
||||
+ const char *argv[] = {"/run/current-system/sw/bin/shutdown",
|
||||
#ifdef CONFIG_SOLARIS
|
||||
shutdown_flag, "-g0", "-y",
|
||||
#elif defined(CONFIG_BSD)
|
||||
@@ -257,6 +257,10 @@ void qmp_guest_shutdown(const char *mode, Error **errp)
|
||||
"hypervisor initiated shutdown", (char *) NULL};
|
||||
|
||||
/* Use '/sbin/hwclock -w' to set RTC from the system time,
|
||||
* or '/sbin/hwclock -s' to set the system time from RTC. */
|
||||
+ execl(hwclock_path_nix, "hwclock", has_time ? "-w" : "-s", NULL);
|
||||
execl(hwclock_path, "hwclock", has_time ? "-w" : "-s", NULL);
|
||||
_exit(EXIT_FAILURE);
|
||||
} else if (pid < 0) {
|
||||
ga_run_command(argv, NULL, "shutdown", &local_err);
|
||||
+ if (local_err) {
|
||||
+ argv[0] = "/sbin/shutdown";
|
||||
+ ga_run_command(argv, NULL, "shutdown", &local_err);
|
||||
+ }
|
||||
if (local_err) {
|
||||
error_propagate(errp, local_err);
|
||||
return;
|
||||
@@ -270,7 +274,7 @@ void qmp_guest_set_time(bool has_time, int64_t time_ns, Error **errp)
|
||||
int ret;
|
||||
Error *local_err = NULL;
|
||||
struct timeval tv;
|
||||
- const char *argv[] = {"/sbin/hwclock", has_time ? "-w" : "-s", NULL};
|
||||
+ const char *argv[] = {"/run/current-system/sw/bin/hwclock", has_time ? "-w" : "-s", NULL};
|
||||
|
||||
/* If user has passed a time, validate and set it. */
|
||||
if (has_time) {
|
||||
@@ -303,6 +307,11 @@ void qmp_guest_set_time(bool has_time, int64_t time_ns, Error **errp)
|
||||
* hardware clock (RTC). */
|
||||
ga_run_command(argv, NULL, "set hardware clock to system time",
|
||||
&local_err);
|
||||
+ if (local_err) {
|
||||
+ argv[0] = "/sbin/hwclock";
|
||||
+ ga_run_command(argv, NULL, "set hardware clock to system time",
|
||||
+ &local_err);
|
||||
+ }
|
||||
if (local_err) {
|
||||
error_propagate(errp, local_err);
|
||||
return;
|
||||
|
@ -1,189 +0,0 @@
|
||||
From 2ec149ea3f0046fa83e3be74aca192649a60be47 Mon Sep 17 00:00:00 2001
|
||||
From: Keno Fischer <keno@juliacomputing.com>
|
||||
Date: Sat, 16 Jun 2018 20:56:54 -0400
|
||||
Subject: [PATCH] 9p: darwin: Provide fallback impl for utimensat
|
||||
|
||||
This function is new in Mac OS 10.13. Provide a fallback implementation
|
||||
when building against older SDKs. The complication in the definition comes
|
||||
having to separately handle the used SDK version and the target OS version.
|
||||
|
||||
- If the SDK version is too low (__MAC_10_13 not defined), utimensat is not
|
||||
defined in the header, so we must not try to use it (doing so would error).
|
||||
- Otherwise, if the targetted OS version is at least 10.13, we know this
|
||||
function is available, so we can unconditionally call it.
|
||||
- Lastly, we check for the availability of the __builtin_available macro to
|
||||
potentially insert a dynamic check for this OS version. However, __builtin_available
|
||||
is only available with sufficiently recent versions of clang and while all
|
||||
Apple clang versions that ship with Xcode versions that support the 10.13
|
||||
SDK support with builtin, we want to allow building with compilers other
|
||||
than Apple clang that may not support this builtin.
|
||||
|
||||
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
|
||||
Signed-off-by: Michael Roitzsch <reactorcontrol@icloud.com>
|
||||
Signed-off-by: Will Cohen <wwcohen@gmail.com>
|
||||
---
|
||||
hw/9pfs/9p-local.c | 2 +-
|
||||
hw/9pfs/9p-util-darwin.c | 96 ++++++++++++++++++++++++++++++++++++++++
|
||||
hw/9pfs/9p-util-linux.c | 6 +++
|
||||
hw/9pfs/9p-util.h | 8 ++++
|
||||
4 files changed, 111 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c
|
||||
index 9d07620235..9c77a431d5 100644
|
||||
--- a/hw/9pfs/9p-local.c
|
||||
+++ b/hw/9pfs/9p-local.c
|
||||
@@ -1081,7 +1081,7 @@ static int local_utimensat(FsContext *s, V9fsPath *fs_path,
|
||||
goto out;
|
||||
}
|
||||
|
||||
- ret = qemu_utimensat(dirfd, name, buf, AT_SYMLINK_NOFOLLOW);
|
||||
+ ret = utimensat_nofollow(dirfd, name, buf);
|
||||
close_preserve_errno(dirfd);
|
||||
out:
|
||||
g_free(dirpath);
|
||||
diff --git a/hw/9pfs/9p-util-darwin.c b/hw/9pfs/9p-util-darwin.c
|
||||
index 95146e7354..74ab2a7f99 100644
|
||||
--- a/hw/9pfs/9p-util-darwin.c
|
||||
+++ b/hw/9pfs/9p-util-darwin.c
|
||||
@@ -145,3 +145,99 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev)
|
||||
}
|
||||
|
||||
#endif
|
||||
+
|
||||
+#ifndef __has_builtin
|
||||
+#define __has_builtin(x) 0
|
||||
+#endif
|
||||
+
|
||||
+static int update_times_from_stat(int fd, struct timespec times[2],
|
||||
+ int update0, int update1)
|
||||
+{
|
||||
+ struct stat buf;
|
||||
+ int ret = fstat(fd, &buf);
|
||||
+ if (ret == -1) {
|
||||
+ return ret;
|
||||
+ }
|
||||
+ if (update0) {
|
||||
+ times[0] = buf.st_atimespec;
|
||||
+ }
|
||||
+ if (update1) {
|
||||
+ times[1] = buf.st_mtimespec;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+int utimensat_nofollow(int dirfd, const char *filename,
|
||||
+ const struct timespec times_in[2])
|
||||
+{
|
||||
+ int ret, fd;
|
||||
+ int special0, special1;
|
||||
+ struct timeval futimes_buf[2];
|
||||
+ struct timespec times[2];
|
||||
+ memcpy(times, times_in, 2 * sizeof(struct timespec));
|
||||
+
|
||||
+/* Check whether we have an SDK version that defines utimensat */
|
||||
+#if defined(__MAC_10_13)
|
||||
+# if __MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_13
|
||||
+# define UTIMENSAT_AVAILABLE 1
|
||||
+# elif __has_builtin(__builtin_available)
|
||||
+# define UTIMENSAT_AVAILABLE __builtin_available(macos 10.13, *)
|
||||
+# else
|
||||
+# define UTIMENSAT_AVAILABLE 0
|
||||
+# endif
|
||||
+ if (UTIMENSAT_AVAILABLE) {
|
||||
+ return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
+ /* utimensat not available. Use futimes. */
|
||||
+ fd = openat_file(dirfd, filename, O_PATH_9P_UTIL | O_NOFOLLOW, 0);
|
||||
+ if (fd == -1) {
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
+ special0 = times[0].tv_nsec == UTIME_OMIT;
|
||||
+ special1 = times[1].tv_nsec == UTIME_OMIT;
|
||||
+ if (special0 || special1) {
|
||||
+ /* If both are set, nothing to do */
|
||||
+ if (special0 && special1) {
|
||||
+ ret = 0;
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
+ ret = update_times_from_stat(fd, times, special0, special1);
|
||||
+ if (ret < 0) {
|
||||
+ goto done;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ special0 = times[0].tv_nsec == UTIME_NOW;
|
||||
+ special1 = times[1].tv_nsec == UTIME_NOW;
|
||||
+ if (special0 || special1) {
|
||||
+ ret = futimes(fd, NULL);
|
||||
+ if (ret < 0) {
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
+ /* If both are set, we are done */
|
||||
+ if (special0 && special1) {
|
||||
+ ret = 0;
|
||||
+ goto done;
|
||||
+ }
|
||||
+
|
||||
+ ret = update_times_from_stat(fd, times, special0, special1);
|
||||
+ if (ret < 0) {
|
||||
+ goto done;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ futimes_buf[0].tv_sec = times[0].tv_sec;
|
||||
+ futimes_buf[0].tv_usec = times[0].tv_nsec / 1000;
|
||||
+ futimes_buf[1].tv_sec = times[1].tv_sec;
|
||||
+ futimes_buf[1].tv_usec = times[1].tv_nsec / 1000;
|
||||
+ ret = futimes(fd, futimes_buf);
|
||||
+
|
||||
+done:
|
||||
+ close_preserve_errno(fd);
|
||||
+ return ret;
|
||||
+}
|
||||
diff --git a/hw/9pfs/9p-util-linux.c b/hw/9pfs/9p-util-linux.c
|
||||
index db451b0784..320697f347 100644
|
||||
--- a/hw/9pfs/9p-util-linux.c
|
||||
+++ b/hw/9pfs/9p-util-linux.c
|
||||
@@ -68,3 +68,9 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev)
|
||||
{
|
||||
return mknodat(dirfd, filename, mode, dev);
|
||||
}
|
||||
+
|
||||
+int utimensat_nofollow(int dirfd, const char *filename,
|
||||
+ const struct timespec times[2])
|
||||
+{
|
||||
+ return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW);
|
||||
+}
|
||||
diff --git a/hw/9pfs/9p-util.h b/hw/9pfs/9p-util.h
|
||||
index c314cf381d..12d57f3398 100644
|
||||
--- a/hw/9pfs/9p-util.h
|
||||
+++ b/hw/9pfs/9p-util.h
|
||||
@@ -101,6 +101,12 @@ static inline int errno_to_dotl(int err) {
|
||||
#define qemu_utimensat utimensat
|
||||
#define qemu_unlinkat unlinkat
|
||||
|
||||
+/* Compatibility with old SDK Versions for Darwin */
|
||||
+#if defined(CONFIG_DARWIN) && !defined(UTIME_NOW)
|
||||
+#define UTIME_NOW -1
|
||||
+#define UTIME_OMIT -2
|
||||
+#endif
|
||||
+
|
||||
static inline void close_preserve_errno(int fd)
|
||||
{
|
||||
int serrno = errno;
|
||||
@@ -163,6 +169,8 @@ ssize_t flistxattrat_nofollow(int dirfd, const char *filename,
|
||||
char *list, size_t size);
|
||||
ssize_t fremovexattrat_nofollow(int dirfd, const char *filename,
|
||||
const char *name);
|
||||
+int utimensat_nofollow(int dirfd, const char *filename,
|
||||
+ const struct timespec times[2]);
|
||||
|
||||
/*
|
||||
* Darwin has d_seekoff, which appears to function similarly to d_off.
|
||||
--
|
||||
2.39.2
|
@ -1,14 +0,0 @@
|
||||
diff --git a/ui/cocoa.m b/ui/cocoa.m
|
||||
index 25e0db9dd0..7ce889d798 100644
|
||||
--- a/ui/cocoa.m
|
||||
+++ b/ui/cocoa.m
|
||||
@@ -539,9 +539,6 @@ - (NSSize)fixAspectRatio:(NSSize)max
|
||||
- (NSSize) screenSafeAreaSize
|
||||
{
|
||||
NSSize size = [[[self window] screen] frame].size;
|
||||
- NSEdgeInsets insets = [[[self window] screen] safeAreaInsets];
|
||||
- size.width -= insets.left + insets.right;
|
||||
- size.height -= insets.top + insets.bottom;
|
||||
return size;
|
||||
}
|
||||
|
@ -1,200 +0,0 @@
|
||||
Based on a reversion of upstream 7e3e20d89129614f4a7b2451fe321cc6ccca3b76,
|
||||
adapted for 7.2.0
|
||||
|
||||
diff --git a/include/ui/clipboard.h b/include/ui/clipboard.h
|
||||
index ce76aa451f..c4e1dc4ff4 100644
|
||||
--- a/include/ui/clipboard.h
|
||||
+++ b/include/ui/clipboard.h
|
||||
@@ -269,7 +269,7 @@ void qemu_clipboard_set_data(QemuClipboardPeer *peer,
|
||||
QemuClipboardInfo *info,
|
||||
QemuClipboardType type,
|
||||
uint32_t size,
|
||||
- const void *data,
|
||||
+ void *data,
|
||||
bool update);
|
||||
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(QemuClipboardInfo, qemu_clipboard_info_unref)
|
||||
diff --git a/ui/clipboard.c b/ui/clipboard.c
|
||||
index 3d14bffaf8..2c3f4c3ba0 100644
|
||||
--- a/ui/clipboard.c
|
||||
+++ b/ui/clipboard.c
|
||||
@@ -154,7 +154,7 @@ void qemu_clipboard_set_data(QemuClipboardPeer *peer,
|
||||
QemuClipboardInfo *info,
|
||||
QemuClipboardType type,
|
||||
uint32_t size,
|
||||
- const void *data,
|
||||
+ void *data,
|
||||
bool update)
|
||||
{
|
||||
if (!info ||
|
||||
diff --git a/ui/cocoa.m b/ui/cocoa.m
|
||||
index 660d3e0935..0e6760c360 100644
|
||||
--- a/ui/cocoa.m
|
||||
+++ b/ui/cocoa.m
|
||||
@@ -29,7 +29,6 @@
|
||||
|
||||
#include "qemu/help-texts.h"
|
||||
#include "qemu-main.h"
|
||||
-#include "ui/clipboard.h"
|
||||
#include "ui/console.h"
|
||||
#include "ui/input.h"
|
||||
#include "ui/kbd-state.h"
|
||||
@@ -105,10 +104,6 @@ static void cocoa_switch(DisplayChangeListener *dcl,
|
||||
|
||||
static bool allow_events;
|
||||
|
||||
-static NSInteger cbchangecount = -1;
|
||||
-static QemuClipboardInfo *cbinfo;
|
||||
-static QemuEvent cbevent;
|
||||
-
|
||||
// Utility functions to run specified code block with the BQL held
|
||||
typedef void (^CodeBlock)(void);
|
||||
typedef bool (^BoolCodeBlock)(void);
|
||||
@@ -1799,107 +1794,6 @@ static void addRemovableDevicesMenuItems(void)
|
||||
qapi_free_BlockInfoList(pointerToFree);
|
||||
}
|
||||
|
||||
-@interface QemuCocoaPasteboardTypeOwner : NSObject<NSPasteboardTypeOwner>
|
||||
-@end
|
||||
-
|
||||
-@implementation QemuCocoaPasteboardTypeOwner
|
||||
-
|
||||
-- (void)pasteboard:(NSPasteboard *)sender provideDataForType:(NSPasteboardType)type
|
||||
-{
|
||||
- if (type != NSPasteboardTypeString) {
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- with_bql(^{
|
||||
- QemuClipboardInfo *info = qemu_clipboard_info_ref(cbinfo);
|
||||
- qemu_event_reset(&cbevent);
|
||||
- qemu_clipboard_request(info, QEMU_CLIPBOARD_TYPE_TEXT);
|
||||
-
|
||||
- while (info == cbinfo &&
|
||||
- info->types[QEMU_CLIPBOARD_TYPE_TEXT].available &&
|
||||
- info->types[QEMU_CLIPBOARD_TYPE_TEXT].data == NULL) {
|
||||
- bql_unlock();
|
||||
- qemu_event_wait(&cbevent);
|
||||
- bql_lock();
|
||||
- }
|
||||
-
|
||||
- if (info == cbinfo) {
|
||||
- NSData *data = [[NSData alloc] initWithBytes:info->types[QEMU_CLIPBOARD_TYPE_TEXT].data
|
||||
- length:info->types[QEMU_CLIPBOARD_TYPE_TEXT].size];
|
||||
- [sender setData:data forType:NSPasteboardTypeString];
|
||||
- [data release];
|
||||
- }
|
||||
-
|
||||
- qemu_clipboard_info_unref(info);
|
||||
- });
|
||||
-}
|
||||
-
|
||||
-@end
|
||||
-
|
||||
-static QemuCocoaPasteboardTypeOwner *cbowner;
|
||||
-
|
||||
-static void cocoa_clipboard_notify(Notifier *notifier, void *data);
|
||||
-static void cocoa_clipboard_request(QemuClipboardInfo *info,
|
||||
- QemuClipboardType type);
|
||||
-
|
||||
-static QemuClipboardPeer cbpeer = {
|
||||
- .name = "cocoa",
|
||||
- .notifier = { .notify = cocoa_clipboard_notify },
|
||||
- .request = cocoa_clipboard_request
|
||||
-};
|
||||
-
|
||||
-static void cocoa_clipboard_update_info(QemuClipboardInfo *info)
|
||||
-{
|
||||
- if (info->owner == &cbpeer || info->selection != QEMU_CLIPBOARD_SELECTION_CLIPBOARD) {
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- if (info != cbinfo) {
|
||||
- NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
|
||||
- qemu_clipboard_info_unref(cbinfo);
|
||||
- cbinfo = qemu_clipboard_info_ref(info);
|
||||
- cbchangecount = [[NSPasteboard generalPasteboard] declareTypes:@[NSPasteboardTypeString] owner:cbowner];
|
||||
- [pool release];
|
||||
- }
|
||||
-
|
||||
- qemu_event_set(&cbevent);
|
||||
-}
|
||||
-
|
||||
-static void cocoa_clipboard_notify(Notifier *notifier, void *data)
|
||||
-{
|
||||
- QemuClipboardNotify *notify = data;
|
||||
-
|
||||
- switch (notify->type) {
|
||||
- case QEMU_CLIPBOARD_UPDATE_INFO:
|
||||
- cocoa_clipboard_update_info(notify->info);
|
||||
- return;
|
||||
- case QEMU_CLIPBOARD_RESET_SERIAL:
|
||||
- /* ignore */
|
||||
- return;
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-static void cocoa_clipboard_request(QemuClipboardInfo *info,
|
||||
- QemuClipboardType type)
|
||||
-{
|
||||
- NSAutoreleasePool *pool;
|
||||
- NSData *text;
|
||||
-
|
||||
- switch (type) {
|
||||
- case QEMU_CLIPBOARD_TYPE_TEXT:
|
||||
- pool = [[NSAutoreleasePool alloc] init];
|
||||
- text = [[NSPasteboard generalPasteboard] dataForType:NSPasteboardTypeString];
|
||||
- if (text) {
|
||||
- qemu_clipboard_set_data(&cbpeer, info, type,
|
||||
- [text length], [text bytes], true);
|
||||
- }
|
||||
- [pool release];
|
||||
- break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
-}
|
||||
-
|
||||
/*
|
||||
* The startup process for the OSX/Cocoa UI is complicated, because
|
||||
* OSX insists that the UI runs on the initial main thread, and so we
|
||||
@@ -1922,7 +1816,6 @@ static void cocoa_clipboard_request(QemuClipboardInfo *info,
|
||||
status = qemu_default_main();
|
||||
qemu_mutex_unlock_iothread();
|
||||
COCOA_DEBUG("Second thread: qemu_default_main() returned, exiting\n");
|
||||
- [cbowner release];
|
||||
exit(status);
|
||||
}
|
||||
|
||||
@@ -2003,18 +1896,6 @@ static void cocoa_refresh(DisplayChangeListener *dcl)
|
||||
[cocoaView setAbsoluteEnabled:YES];
|
||||
});
|
||||
}
|
||||
-
|
||||
- if (cbchangecount != [[NSPasteboard generalPasteboard] changeCount]) {
|
||||
- qemu_clipboard_info_unref(cbinfo);
|
||||
- cbinfo = qemu_clipboard_info_new(&cbpeer, QEMU_CLIPBOARD_SELECTION_CLIPBOARD);
|
||||
- if ([[NSPasteboard generalPasteboard] availableTypeFromArray:@[NSPasteboardTypeString]]) {
|
||||
- cbinfo->types[QEMU_CLIPBOARD_TYPE_TEXT].available = true;
|
||||
- }
|
||||
- qemu_clipboard_update(cbinfo);
|
||||
- cbchangecount = [[NSPasteboard generalPasteboard] changeCount];
|
||||
- qemu_event_set(&cbevent);
|
||||
- }
|
||||
-
|
||||
[pool release];
|
||||
}
|
||||
|
||||
@@ -2071,12 +1952,6 @@ static void cocoa_display_init(DisplayState *ds, DisplayOptions *opts)
|
||||
// register vga output callbacks
|
||||
register_displaychangelistener(&dcl);
|
||||
[cocoaView updateUIInfo];
|
||||
-
|
||||
- qemu_event_init(&cbevent, false);
|
||||
- cbowner = [[QemuCocoaPasteboardTypeOwner alloc] init];
|
||||
- qemu_clipboard_peer_register(&cbpeer);
|
||||
-
|
||||
- [pool release];
|
||||
}
|
||||
|
||||
static QemuDisplay qemu_display_cocoa = {
|
@ -1,145 +0,0 @@
|
||||
diff --git a/ui/cocoa.m b/ui/cocoa.m
|
||||
index 25e0db9dd0..4af0712036 100644
|
||||
--- a/ui/cocoa.m
|
||||
+++ b/ui/cocoa.m
|
||||
@@ -93,6 +93,7 @@ static void cocoa_switch(DisplayChangeListener *dcl,
|
||||
|
||||
static void cocoa_refresh(DisplayChangeListener *dcl);
|
||||
|
||||
+static NSWindow *about_window;
|
||||
static const DisplayChangeListenerOps dcl_ops = {
|
||||
.dpy_name = "cocoa",
|
||||
.dpy_gfx_update = cocoa_update,
|
||||
@@ -1180,6 +1181,7 @@ - (void)changeDeviceMedia:(id)sender;
|
||||
- (BOOL)verifyQuit;
|
||||
- (void)openDocumentation:(NSString *)filename;
|
||||
- (IBAction) do_about_menu_item: (id) sender;
|
||||
+- (void)make_about_window;
|
||||
- (void)adjustSpeed:(id)sender;
|
||||
@end
|
||||
|
||||
@@ -1227,6 +1229,8 @@ - (id) init
|
||||
[pauseLabel setFont: [NSFont fontWithName: @"Helvetica" size: 90]];
|
||||
[pauseLabel setTextColor: [NSColor blackColor]];
|
||||
[pauseLabel sizeToFit];
|
||||
+
|
||||
+ [self make_about_window];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
@@ -1549,29 +1553,92 @@ - (BOOL)verifyQuit
|
||||
/* The action method for the About menu item */
|
||||
- (IBAction) do_about_menu_item: (id) sender
|
||||
{
|
||||
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||
- char *icon_path_c = get_relocated_path(CONFIG_QEMU_ICONDIR "/hicolor/512x512/apps/qemu.png");
|
||||
- NSString *icon_path = [NSString stringWithUTF8String:icon_path_c];
|
||||
- g_free(icon_path_c);
|
||||
- NSImage *icon = [[NSImage alloc] initWithContentsOfFile:icon_path];
|
||||
- NSString *version = @"QEMU emulator version " QEMU_FULL_VERSION;
|
||||
- NSString *copyright = @QEMU_COPYRIGHT;
|
||||
- NSDictionary *options;
|
||||
- if (icon) {
|
||||
- options = @{
|
||||
- NSAboutPanelOptionApplicationIcon : icon,
|
||||
- NSAboutPanelOptionApplicationVersion : version,
|
||||
- @"Copyright" : copyright,
|
||||
- };
|
||||
- [icon release];
|
||||
- } else {
|
||||
- options = @{
|
||||
- NSAboutPanelOptionApplicationVersion : version,
|
||||
- @"Copyright" : copyright,
|
||||
- };
|
||||
- }
|
||||
- [NSApp orderFrontStandardAboutPanelWithOptions:options];
|
||||
- [pool release];
|
||||
+ [about_window makeKeyAndOrderFront: nil];
|
||||
+}
|
||||
+
|
||||
+/* Create and display the about dialog */
|
||||
+- (void)make_about_window
|
||||
+{
|
||||
+ /* Make the window */
|
||||
+ int x = 0, y = 0, about_width = 400, about_height = 200;
|
||||
+ NSRect window_rect = NSMakeRect(x, y, about_width, about_height);
|
||||
+ about_window = [[NSWindow alloc] initWithContentRect:window_rect
|
||||
+ styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskClosable |
|
||||
+ NSWindowStyleMaskMiniaturizable
|
||||
+ backing:NSBackingStoreBuffered
|
||||
+ defer:NO];
|
||||
+ [about_window setTitle: @"About"];
|
||||
+ [about_window setReleasedWhenClosed: NO];
|
||||
+ [about_window center];
|
||||
+ NSView *superView = [about_window contentView];
|
||||
+
|
||||
+ /* Create the dimensions of the picture */
|
||||
+ int picture_width = 80, picture_height = 80;
|
||||
+ x = (about_width - picture_width)/2;
|
||||
+ y = about_height - picture_height - 10;
|
||||
+ NSRect picture_rect = NSMakeRect(x, y, picture_width, picture_height);
|
||||
+
|
||||
+ /* Make the picture of QEMU */
|
||||
+ NSImageView *picture_view = [[NSImageView alloc] initWithFrame:
|
||||
+ picture_rect];
|
||||
+ char *qemu_image_path_c = get_relocated_path(CONFIG_QEMU_ICONDIR "/hicolor/512x512/apps/qemu.png");
|
||||
+ NSString *qemu_image_path = [NSString stringWithUTF8String:qemu_image_path_c];
|
||||
+ g_free(qemu_image_path_c);
|
||||
+ NSImage *qemu_image = [[NSImage alloc] initWithContentsOfFile:qemu_image_path];
|
||||
+ [picture_view setImage: qemu_image];
|
||||
+ [picture_view setImageScaling: NSImageScaleProportionallyUpOrDown];
|
||||
+ [superView addSubview: picture_view];
|
||||
+
|
||||
+ /* Make the name label */
|
||||
+ NSBundle *bundle = [NSBundle mainBundle];
|
||||
+ if (bundle) {
|
||||
+ x = 0;
|
||||
+ y = y - 25;
|
||||
+ int name_width = about_width, name_height = 20;
|
||||
+ NSRect name_rect = NSMakeRect(x, y, name_width, name_height);
|
||||
+ NSTextField *name_label = [[NSTextField alloc] initWithFrame: name_rect];
|
||||
+ [name_label setEditable: NO];
|
||||
+ [name_label setBezeled: NO];
|
||||
+ [name_label setDrawsBackground: NO];
|
||||
+ [name_label setAlignment: NSTextAlignmentCenter];
|
||||
+ NSString *qemu_name = [[bundle executablePath] lastPathComponent];
|
||||
+ [name_label setStringValue: qemu_name];
|
||||
+ [superView addSubview: name_label];
|
||||
+ }
|
||||
+
|
||||
+ /* Set the version label's attributes */
|
||||
+ x = 0;
|
||||
+ y = 50;
|
||||
+ int version_width = about_width, version_height = 20;
|
||||
+ NSRect version_rect = NSMakeRect(x, y, version_width, version_height);
|
||||
+ NSTextField *version_label = [[NSTextField alloc] initWithFrame:
|
||||
+ version_rect];
|
||||
+ [version_label setEditable: NO];
|
||||
+ [version_label setBezeled: NO];
|
||||
+ [version_label setAlignment: NSTextAlignmentCenter];
|
||||
+ [version_label setDrawsBackground: NO];
|
||||
+
|
||||
+ /* Create the version string*/
|
||||
+ NSString *version_string;
|
||||
+ version_string = [[NSString alloc] initWithFormat:
|
||||
+ @"QEMU emulator version %s", QEMU_FULL_VERSION];
|
||||
+ [version_label setStringValue: version_string];
|
||||
+ [superView addSubview: version_label];
|
||||
+
|
||||
+ /* Make copyright label */
|
||||
+ x = 0;
|
||||
+ y = 35;
|
||||
+ int copyright_width = about_width, copyright_height = 20;
|
||||
+ NSRect copyright_rect = NSMakeRect(x, y, copyright_width, copyright_height);
|
||||
+ NSTextField *copyright_label = [[NSTextField alloc] initWithFrame:
|
||||
+ copyright_rect];
|
||||
+ [copyright_label setEditable: NO];
|
||||
+ [copyright_label setBezeled: NO];
|
||||
+ [copyright_label setDrawsBackground: NO];
|
||||
+ [copyright_label setAlignment: NSTextAlignmentCenter];
|
||||
+ [copyright_label setStringValue: [NSString stringWithFormat: @"%s",
|
||||
+ QEMU_COPYRIGHT]];
|
||||
+ [superView addSubview: copyright_label];
|
||||
}
|
||||
|
||||
/* Used by the Speed menu items */
|
@ -23,10 +23,10 @@ python3Packages.buildPythonApplication {
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace org.debian.apt.aptoffline.policy \
|
||||
--replace /usr/bin/ "$out/bin"
|
||||
--replace-fail /usr/bin/ "$out/bin"
|
||||
|
||||
substituteInPlace apt_offline_core/AptOfflineCoreLib.py \
|
||||
--replace /usr/bin/gpgv "${lib.getBin gnupg}/bin/gpgv"
|
||||
--replace-fail /usr/bin/gpgv "${lib.getBin gnupg}/bin/gpgv"
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
|
@ -29,7 +29,7 @@ let
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace backgroundremover/bg.py backgroundremover/u2net/detect.py \
|
||||
--replace 'os.path.expanduser(os.path.join("~", ".u2net", model_name + ".pth"))' "os.path.join(\"$models\", model_name + \".pth\")"
|
||||
--replace-fail 'os.path.expanduser(os.path.join("~", ".u2net", model_name + ".pth"))' "os.path.join(\"$models\", model_name + \".pth\")"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ p.setuptools p.wheel ];
|
||||
|
@ -7,14 +7,14 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "clang-tidy-sarif";
|
||||
version = "0.6.5";
|
||||
version = "0.6.6";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
hash = "sha256-pQbhLbDRcZJhXXY6bWGO/8mmQRwgM3tDEWKoqmsNr68=";
|
||||
hash = "sha256-rZnGueaqK7h8tWwwWacvFBvJwE1li2wN9iB4DJRHJ8U=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-K+Cle2eCH4jCLbYfOrlEXeBvFUr7dGmpKFQM1IJi7p4=";
|
||||
cargoHash = "sha256-mELx6UGHV+qtL1G3+xvYUaUzZbfMy0dKgai6IqdbT+A=";
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
doInstallCheck = true;
|
||||
|
@ -11,6 +11,8 @@
|
||||
gtk3,
|
||||
swt,
|
||||
glib,
|
||||
webkitgtk,
|
||||
glib-networking,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
@ -64,11 +66,14 @@ stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
--prefix PATH : "${openjdk17}/bin" \
|
||||
--set JAVA_HOME "${openjdk17.home}" \
|
||||
--prefix CLASSPATH : "$out/dbeaver/plugins/*:${swt}/jars/swt.jar" \
|
||||
--prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules" \
|
||||
--prefix LD_LIBRARY_PATH : "$out/lib:${
|
||||
lib.makeLibraryPath [
|
||||
swt
|
||||
gtk3
|
||||
glib
|
||||
webkitgtk
|
||||
glib-networking
|
||||
]
|
||||
}"
|
||||
|
||||
|
@ -11,14 +11,14 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "deltatouch";
|
||||
version = "1.5.1";
|
||||
version = "1.6.0";
|
||||
|
||||
src = fetchFromGitea {
|
||||
domain = "codeberg.org";
|
||||
owner = "lk108";
|
||||
repo = "deltatouch";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-OQrTxxmiBiAc9il1O5aEl9iN3fCfoxSAwJDfrASCPxs=";
|
||||
hash = "sha256-mOs5WlWOkH9A+BZK6hvKq/JKS4k8tzvvov4CYFHyMfA=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
@ -48,12 +48,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
--replace-fail 'assets/logo.svg DESTINATION assets' 'assets/logo.svg DESTINATION ''${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/scalable/apps RENAME deltatouch.svg' \
|
||||
--replace-fail "\''${DESKTOP_FILE_NAME} DESTINATION \''${DATA_DIR}" "\''${DESKTOP_FILE_NAME} DESTINATION \''${CMAKE_INSTALL_DATAROOTDIR}/applications"
|
||||
|
||||
substituteInPlace plugins/DeltaHandler/CMakeLists.txt plugins/DTWebEngineProfile/CMakeLists.txt \
|
||||
substituteInPlace plugins/{DeltaHandler,HtmlMsgEngineProfile,WebxdcEngineProfile}/CMakeLists.txt \
|
||||
--replace-fail 'set(QT_IMPORTS_DIR "/lib/''${ARCH_TRIPLET}")' 'set(QT_IMPORTS_DIR "${placeholder "out"}/${qt5.qtbase.qtQmlPrefix}")'
|
||||
|
||||
# Fix import of library dependencies
|
||||
substituteInPlace plugins/{DeltaHandler,WebxdcEngineProfile}/CMakeLists.txt \
|
||||
--replace-fail 'IMPORTED_LOCATION "''${CMAKE_CURRENT_BINARY_DIR}/libdeltachat.so"' 'IMPORTED_LOCATION "${lib.getLib libdeltachat}/lib/libdeltachat.so"'
|
||||
substituteInPlace plugins/DeltaHandler/CMakeLists.txt \
|
||||
--replace-fail 'IMPORTED_LOCATION "''${CMAKE_CURRENT_BINARY_DIR}/libdeltachat.so"' 'IMPORTED_LOCATION "${lib.getLib libdeltachat}/lib/libdeltachat.so"' \
|
||||
--replace-fail 'IMPORTED_LOCATION "''${CMAKE_CURRENT_BINARY_DIR}/libquirc.so.1.2"' 'IMPORTED_LOCATION "${lib.getLib quirc}/lib/libquirc.so"'
|
||||
|
||||
# Fix icon reference in desktop file
|
||||
|
@ -1,11 +1,11 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
facter (4.6.1)
|
||||
facter (4.8.0)
|
||||
hocon (~> 1.3)
|
||||
thor (>= 1.0.1, < 2.0)
|
||||
thor (>= 1.0.1, < 1.3)
|
||||
hocon (1.4.0)
|
||||
thor (1.3.1)
|
||||
thor (1.2.2)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
@ -14,4 +14,4 @@ DEPENDENCIES
|
||||
facter
|
||||
|
||||
BUNDLED WITH
|
||||
2.5.6
|
||||
2.5.16
|
||||
|
@ -5,10 +5,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0pxpldfcf40dr9khra3sa131ij7gzd97bba2vpw89c785pl736a7";
|
||||
sha256 = "1130mzk90pi0y9fnraqqak7gcfg61dhx92axwnhchbpw09akfl09";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.6.1";
|
||||
version = "4.8.0";
|
||||
};
|
||||
hocon = {
|
||||
groups = ["default"];
|
||||
@ -25,9 +25,9 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1vq1fjp45az9hfp6fxljhdrkv75cvbab1jfrwcw738pnsiqk8zps";
|
||||
sha256 = "0k7j2wn14h1pl4smibasw0bp66kg626drxb59z7rzflch99cd4rg";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.3.1";
|
||||
version = "1.2.2";
|
||||
};
|
||||
}
|
||||
|
@ -1,9 +1,10 @@
|
||||
{ lib
|
||||
, python3
|
||||
, fetchFromGitHub
|
||||
, fetchPypi
|
||||
, postgresql
|
||||
, postgresqlTestHook
|
||||
{
|
||||
fetchFromGitHub,
|
||||
fetchPypi,
|
||||
lib,
|
||||
postgresql,
|
||||
postgresqlTestHook,
|
||||
python3,
|
||||
}:
|
||||
let
|
||||
python = python3.override {
|
||||
@ -25,22 +26,17 @@ let
|
||||
|
||||
in
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
pname = "fit-trackee";
|
||||
version = "0.8.6";
|
||||
pname = "fittrackee";
|
||||
version = "0.8.8";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "SamR1";
|
||||
repo = "FitTrackee";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-lTDS+HfYG6ayXDotu7M2LUrw+1ZhQ0ftw0rTn4Mr3rQ=";
|
||||
hash = "sha256-IO6M+HXAR3Gn0/71KwkaQr6sB0eCQzmnqHYgO+mzIZM=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail psycopg2-binary psycopg2
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
python.pkgs.poetry-core
|
||||
];
|
||||
@ -53,29 +49,32 @@ python.pkgs.buildPythonApplication rec {
|
||||
"pyopenssl"
|
||||
];
|
||||
|
||||
dependencies = with python.pkgs; [
|
||||
authlib
|
||||
babel
|
||||
click
|
||||
dramatiq
|
||||
flask
|
||||
flask-bcrypt
|
||||
flask-dramatiq
|
||||
flask-limiter
|
||||
flask-migrate
|
||||
flask-sqlalchemy
|
||||
gpxpy
|
||||
gunicorn
|
||||
humanize
|
||||
psycopg2
|
||||
pyjwt
|
||||
pyopenssl
|
||||
pytz
|
||||
shortuuid
|
||||
sqlalchemy
|
||||
staticmap
|
||||
ua-parser
|
||||
] ++ dramatiq.optional-dependencies.redis
|
||||
dependencies =
|
||||
with python.pkgs;
|
||||
[
|
||||
authlib
|
||||
babel
|
||||
click
|
||||
dramatiq
|
||||
flask
|
||||
flask-bcrypt
|
||||
flask-dramatiq
|
||||
flask-limiter
|
||||
flask-migrate
|
||||
flask-sqlalchemy
|
||||
gpxpy
|
||||
gunicorn
|
||||
humanize
|
||||
psycopg2-binary
|
||||
pyjwt
|
||||
pyopenssl
|
||||
pytz
|
||||
shortuuid
|
||||
sqlalchemy
|
||||
staticmap
|
||||
ua-parser
|
||||
]
|
||||
++ dramatiq.optional-dependencies.redis
|
||||
++ flask-limiter.optional-dependencies.redis;
|
||||
|
||||
pythonImportsCheck = [ "fittrackee" ];
|
50
pkgs/by-name/gp/gpt4all/embedding-local.patch
Normal file
50
pkgs/by-name/gp/gpt4all/embedding-local.patch
Normal file
@ -0,0 +1,50 @@
|
||||
commit 1e8fdf3f90fd142c5ddd63e44ca1e5c172dbfb7f
|
||||
Author: Simon Gardling <titaniumtown@proton.me>
|
||||
Date: Tue Aug 27 12:45:14 2024 -0400
|
||||
|
||||
use locally downloaded embeddings
|
||||
|
||||
index 27f3f5d9..9e25528a 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -90,6 +90,7 @@ elseif (APPLE)
|
||||
endif()
|
||||
|
||||
# Embedding model
|
||||
+#[[
|
||||
set(LOCAL_EMBEDDING_MODEL "nomic-embed-text-v1.5.f16.gguf")
|
||||
set(LOCAL_EMBEDDING_MODEL_MD5 "a5401e7f7e46ed9fcaed5b60a281d547")
|
||||
set(LOCAL_EMBEDDING_MODEL_PATH "${CMAKE_BINARY_DIR}/resources/${LOCAL_EMBEDDING_MODEL}")
|
||||
@@ -104,6 +105,7 @@
|
||||
if (APPLE)
|
||||
list(APPEND CHAT_EXE_RESOURCES "${LOCAL_EMBEDDING_MODEL_PATH}")
|
||||
endif()
|
||||
+]]
|
||||
|
||||
qt_add_executable(chat
|
||||
main.cpp
|
||||
@@ -383,11 +385,13 @@
|
||||
endif()
|
||||
endif()
|
||||
|
||||
+#[[
|
||||
if (NOT APPLE)
|
||||
install(FILES "${CMAKE_BINARY_DIR}/resources/${LOCAL_EMBEDDING_MODEL}"
|
||||
DESTINATION resources
|
||||
COMPONENT ${COMPONENT_NAME_MAIN})
|
||||
endif()
|
||||
+]]
|
||||
|
||||
set(CPACK_GENERATOR "IFW")
|
||||
set(CPACK_VERBATIM_VARIABLES YES)
|
||||
--- a/embllm.cpp
|
||||
+++ b/embllm.cpp
|
||||
@@ -84,7 +84,7 @@ bool EmbeddingLLMWorker::loadModel()
|
||||
|
||||
QString filePath = embPathFmt.arg(QCoreApplication::applicationDirPath(), LOCAL_EMBEDDING_MODEL);
|
||||
if (!QFileInfo::exists(filePath)) {
|
||||
- qWarning() << "embllm WARNING: Local embedding model not found";
|
||||
+ qWarning() << "embllm WARNING: Local embedding model not found: " << filePath;
|
||||
return false;
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
, config
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchurl
|
||||
, cmake
|
||||
, qt6
|
||||
, fmt
|
||||
@ -14,16 +15,25 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gpt4all";
|
||||
version = "2.8.0";
|
||||
version = "3.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-aSz37+1K26Xizf4cpV45a2DnSsl959VQok/ppFRk/hs=";
|
||||
hash = "sha256-h6hcqafTjQsqVlpnqVeohh38A67VSGrW3WrCErjaKIQ=";
|
||||
owner = "nomic-ai";
|
||||
repo = "gpt4all";
|
||||
rev = "v${finalAttrs.version}";
|
||||
};
|
||||
|
||||
embed_model = fetchurl {
|
||||
url = "https://gpt4all.io/models/gguf/nomic-embed-text-v1.5.f16.gguf";
|
||||
sha256 = "f7af6f66802f4df86eda10fe9bbcfc75c39562bed48ef6ace719a251cf1c2fdb";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./embedding-local.patch
|
||||
];
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/gpt4all-chat";
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -41,6 +51,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
qt6.qthttpserver
|
||||
qt6.qtwebengine
|
||||
qt6.qt5compat
|
||||
qt6.qttools
|
||||
shaderc
|
||||
vulkan-headers
|
||||
wayland
|
||||
@ -64,8 +75,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
rm -rf $out/include
|
||||
rm -rf $out/lib/*.a
|
||||
mv $out/bin/chat $out/bin/${finalAttrs.meta.mainProgram}
|
||||
install -D ${finalAttrs.embed_model} $out/resources/nomic-embed-text-v1.5.f16.gguf
|
||||
install -m 444 -D $src/gpt4all-chat/flatpak-manifest/io.gpt4all.gpt4all.desktop $out/share/applications/io.gpt4all.gpt4all.desktop
|
||||
install -m 444 -D $src/gpt4all-chat/icons/logo.svg $out/share/icons/hicolor/scalable/apps/io.gpt4all.gpt4all.svg
|
||||
install -m 444 -D $src/gpt4all-chat/icons/nomic_logo.svg $out/share/icons/hicolor/scalable/apps/io.gpt4all.gpt4all.svg
|
||||
substituteInPlace $out/share/applications/io.gpt4all.gpt4all.desktop \
|
||||
--replace-fail 'Exec=chat' 'Exec=${finalAttrs.meta.mainProgram}'
|
||||
'';
|
||||
@ -76,6 +88,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
homepage = "https://github.com/nomic-ai/gpt4all";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "gpt4all";
|
||||
maintainers = with lib.maintainers; [ polygon ];
|
||||
maintainers = with lib.maintainers; [ polygon titaniumtown ];
|
||||
};
|
||||
})
|
||||
|
124
pkgs/by-name/ju/jujutsu/package.nix
Normal file
124
pkgs/by-name/ju/jujutsu/package.nix
Normal file
@ -0,0 +1,124 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
pkg-config,
|
||||
zstd,
|
||||
libgit2,
|
||||
libssh2,
|
||||
openssl,
|
||||
darwin,
|
||||
libiconv,
|
||||
git,
|
||||
gnupg,
|
||||
openssh,
|
||||
buildPackages,
|
||||
nix-update-script,
|
||||
testers,
|
||||
jujutsu,
|
||||
}:
|
||||
|
||||
let
|
||||
version = "0.21.0";
|
||||
in
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
pname = "jujutsu";
|
||||
inherit version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "martinvonz";
|
||||
repo = "jj";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-uZsfHhcYpobatWaDQczuc9Z3BWHN5VO0qr/8mu5kEio=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-BOO1jP1Y5CNbE97zj+tpariiBdcuxKb1wyvI7i/VpYI=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[
|
||||
zstd
|
||||
libgit2
|
||||
libssh2
|
||||
]
|
||||
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ openssl ]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
darwin.apple_sdk.frameworks.SystemConfiguration
|
||||
libiconv
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
git
|
||||
gnupg
|
||||
openssh
|
||||
];
|
||||
|
||||
cargoBuildFlags = [
|
||||
# Don’t install the `gen-protos` build tool.
|
||||
"--bin"
|
||||
"jj"
|
||||
];
|
||||
|
||||
useNextest = true;
|
||||
|
||||
cargoTestFlags = [
|
||||
# Don’t build the `gen-protos` build tool when running tests.
|
||||
"-p"
|
||||
"jj-lib"
|
||||
"-p"
|
||||
"jj-cli"
|
||||
];
|
||||
|
||||
env = {
|
||||
# Disable vendored libraries.
|
||||
ZSTD_SYS_USE_PKG_CONFIG = "1";
|
||||
LIBGIT2_NO_VENDOR = "1";
|
||||
LIBSSH2_SYS_USE_PKG_CONFIG = "1";
|
||||
};
|
||||
|
||||
postInstall =
|
||||
let
|
||||
jj = "${stdenv.hostPlatform.emulator buildPackages} $out/bin/jj";
|
||||
in
|
||||
lib.optionalString (stdenv.hostPlatform.emulatorAvailable buildPackages) ''
|
||||
${jj} util mangen > ./jj.1
|
||||
installManPage ./jj.1
|
||||
|
||||
installShellCompletion --cmd jj \
|
||||
--bash <(${jj} util completion bash) \
|
||||
--fish <(${jj} util completion fish) \
|
||||
--zsh <(${jj} util completion zsh)
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests = {
|
||||
version = testers.testVersion {
|
||||
package = jujutsu;
|
||||
command = "jj --version";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Git-compatible DVCS that is both simple and powerful";
|
||||
homepage = "https://github.com/martinvonz/jj";
|
||||
changelog = "https://github.com/martinvonz/jj/blob/v${version}/CHANGELOG.md";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [
|
||||
_0x4A6F
|
||||
thoughtpolice
|
||||
emily
|
||||
bbigras
|
||||
];
|
||||
mainProgram = "jj";
|
||||
};
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
diff --git a/tools/install.pl b/tools/install.pl
|
||||
index b7c7adb..a63de58 100644
|
||||
index f09218f..a63de58 100644
|
||||
--- a/tools/install.pl
|
||||
+++ b/tools/install.pl
|
||||
@@ -9,6 +9,7 @@ use Config;
|
||||
@ -10,7 +10,7 @@ index b7c7adb..a63de58 100644
|
||||
|
||||
#Vendor dependencies
|
||||
my @vendor_css = (
|
||||
@@ -90,34 +91,6 @@ if ( $ENV{HOMEBREW_FORMULA_PREFIX} ) {
|
||||
@@ -90,32 +91,6 @@ if ( $ENV{HOMEBREW_FORMULA_PREFIX} ) {
|
||||
$cpanopt = " -l " . $ENV{HOMEBREW_FORMULA_PREFIX} . "/libexec";
|
||||
}
|
||||
|
||||
@ -30,11 +30,9 @@ index b7c7adb..a63de58 100644
|
||||
-
|
||||
-#Check for GhostScript
|
||||
-say("Checking for GhostScript...");
|
||||
-if ( can_run('gs') ) {
|
||||
- say("OK!");
|
||||
-} else {
|
||||
- warn 'NOT FOUND! PDF support will not work properly. Please install the "gs" tool.';
|
||||
-}
|
||||
-can_run('gs')
|
||||
- or warn 'NOT FOUND! PDF support will not work properly. Please install the "gs" tool.';
|
||||
-say("OK!");
|
||||
-
|
||||
-#Check for libarchive
|
||||
-say("Checking for libarchive...");
|
||||
@ -45,7 +43,7 @@ index b7c7adb..a63de58 100644
|
||||
#Check for PerlMagick
|
||||
say("Checking for ImageMagick/PerlMagick...");
|
||||
my $imgk;
|
||||
@@ -137,37 +110,11 @@ if ($@) {
|
||||
@@ -135,37 +110,11 @@ if ($@) {
|
||||
say("OK!");
|
||||
}
|
||||
|
||||
@ -83,7 +81,7 @@ index b7c7adb..a63de58 100644
|
||||
make_path getcwd . "/public/css/vendor";
|
||||
make_path getcwd . "/public/css/webfonts";
|
||||
make_path getcwd . "/public/js/vendor";
|
||||
@@ -214,19 +161,3 @@ sub cp_node_module {
|
||||
@@ -212,19 +161,3 @@ sub cp_node_module {
|
||||
|
||||
}
|
||||
|
||||
|
@ -10,13 +10,13 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "lanraragi";
|
||||
version = "0.9.10";
|
||||
version = "0.9.21";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Difegue";
|
||||
repo = "LANraragi";
|
||||
rev = "v.${version}";
|
||||
hash = "sha256-mW2cVd+SPbjc/+b0KY3je1eqw5ZT/GKFruE4Y/eFdD4=";
|
||||
hash = "sha256-2YdQeBW1MQiUs5nliloISaxG0yhFJ6ulkU/Urx8PN3Y=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -16,16 +16,17 @@
|
||||
zlib,
|
||||
libSM,
|
||||
libICE,
|
||||
stb,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lms";
|
||||
version = "3.51.1";
|
||||
version = "3.56.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "epoupon";
|
||||
repo = "lms";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-5lEbrB218EVVHIzo1efvQYybut2OpfDKpLlRs0brhXg=";
|
||||
hash = "sha256-o/wgh/PtFcTOmfl5H1cc1cTsWFvEnVQYhh4hPTnLNMU=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
@ -46,6 +47,7 @@ stdenv.mkDerivation rec {
|
||||
zlib
|
||||
libSM
|
||||
libICE
|
||||
stb
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
@ -90,7 +90,7 @@ let
|
||||
++ lib.optionals mediaSupport [ ffmpeg ]
|
||||
);
|
||||
|
||||
version = "13.5.2";
|
||||
version = "13.5.3";
|
||||
|
||||
sources = {
|
||||
x86_64-linux = fetchurl {
|
||||
@ -102,7 +102,7 @@ let
|
||||
"https://tor.eff.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
|
||||
"https://tor.calyxinstitute.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
|
||||
];
|
||||
hash = "sha256-CXcaJLgG448tjTlOcxGwT/w1qWaokpVXbBZ6cLxWcNc=";
|
||||
hash = "sha256-rJKOkVfWs5q3eF+ffeBLIQaAMtoR7KzoNQlv64iNWJ8=";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -3,29 +3,31 @@
|
||||
buildNimPackage,
|
||||
fetchFromGitHub,
|
||||
}:
|
||||
buildNimPackage (final: prev: {
|
||||
pname = "nimlangserver";
|
||||
version = "1.2.0";
|
||||
buildNimPackage (
|
||||
final: prev: rec {
|
||||
pname = "nimlangserver";
|
||||
version = "1.4.0";
|
||||
|
||||
# lock.json generated with github.com/daylinmorgan/nnl
|
||||
lockFile = ./lock.json;
|
||||
# lock.json generated with github.com/daylinmorgan/nnl
|
||||
lockFile = ./lock.json;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "nim-lang";
|
||||
repo = "langserver";
|
||||
rev = "71b59bfa77dabf6b8b381f6e18a1d963a1a658fc";
|
||||
hash = "sha256-dznegEhRHvztrNhBcUhW83RYgJpduwdGLWj/tJ//K8c=";
|
||||
};
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib;
|
||||
final.src.meta
|
||||
// {
|
||||
description = "Nim language server implementation (based on nimsuggest)";
|
||||
homepage = "https://github.com/nim-lang/langserver";
|
||||
license = licenses.mit;
|
||||
mainProgram = "nimlangserver";
|
||||
maintainers = with maintainers; [daylinmorgan];
|
||||
src = fetchFromGitHub {
|
||||
owner = "nim-lang";
|
||||
repo = "langserver";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-mh+p8t8/mbZvgsJ930lXkcBdUjjioZoNyNZzwywAiUI=";
|
||||
};
|
||||
})
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta =
|
||||
final.src.meta
|
||||
// (with lib; {
|
||||
description = "Nim language server implementation (based on nimsuggest)";
|
||||
homepage = "https://github.com/nim-lang/langserver";
|
||||
license = licenses.mit;
|
||||
mainProgram = "nimlangserver";
|
||||
maintainers = with maintainers; [ daylinmorgan ];
|
||||
});
|
||||
}
|
||||
)
|
||||
|
@ -7,19 +7,19 @@
|
||||
}:
|
||||
let
|
||||
pname = "open-webui";
|
||||
version = "0.3.16";
|
||||
version = "0.3.18-unstable-2024-09-05";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "open-webui";
|
||||
repo = "open-webui";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-AxD7WHL5fGM0CBKi7zc/gmoSJQBohDh0HgIDU1/BQ7w=";
|
||||
rev = "c3271e84efc281dfed8c1e2d265cd24e1e5865e6";
|
||||
hash = "sha256-yOLxpRgwTVPlQASzFqul+ap/s7Wx3uxf4xr+Xb2Nb7A=";
|
||||
};
|
||||
|
||||
frontend = buildNpmPackage {
|
||||
inherit pname version src;
|
||||
|
||||
npmDepsHash = "sha256-Ik+wXymso3jdKXQgLydnhhWvpHl0d82pwYSmUR0yfPE=";
|
||||
npmDepsHash = "sha256-BkjvMD1XxELzxiPZagYd0aEUsaAl338h5W9nvxxrJJg=";
|
||||
|
||||
# Disabling `pyodide:fetch` as it downloads packages during `buildPhase`
|
||||
# Until this is solved, running python packages from the browser will not work.
|
||||
|
@ -19,25 +19,26 @@
|
||||
}:
|
||||
|
||||
let
|
||||
presets = {
|
||||
"i686-linux" = "Linux 32-bit";
|
||||
"x86_64-linux" = "Linux 64-bit";
|
||||
"aarch64-linux" = "Linux ARM64";
|
||||
};
|
||||
preset =
|
||||
if stdenv.isLinux then
|
||||
if stdenv.is64bit then "Linux/X11 64-bit" else "Linux/X11 32-bit"
|
||||
else if stdenv.isDarwin then
|
||||
"Mac OSX"
|
||||
else
|
||||
throw "unsupported platform";
|
||||
presets.${stdenv.hostPlatform.system}
|
||||
or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||
|
||||
godot_version_folder = lib.replaceStrings [ "-" ] [ "." ] godot_4.version;
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pixelorama";
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Orama-Interactive";
|
||||
repo = "Pixelorama";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-lfim5ZiykOhI1kgsu0ni2frUVHPRIPJdrGx6TuUQcSY=";
|
||||
hash = "sha256-rFXUy6fvGKmB+aaNgiI+NNRG0xlj1migdetnU4iVDDQ=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
@ -95,6 +96,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
platforms = [
|
||||
"i686-linux"
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
];
|
||||
maintainers = with maintainers; [ felschr ];
|
||||
mainProgram = "pixelorama";
|
||||
|
@ -5,24 +5,24 @@ GEM
|
||||
base64
|
||||
nkf
|
||||
rexml
|
||||
addressable (2.8.6)
|
||||
public_suffix (>= 2.0.2, < 6.0)
|
||||
addressable (2.8.7)
|
||||
public_suffix (>= 2.0.2, < 7.0)
|
||||
aws-eventstream (1.3.0)
|
||||
aws-partitions (1.899.0)
|
||||
aws-sdk-core (3.191.4)
|
||||
aws-partitions (1.968.0)
|
||||
aws-sdk-core (3.201.5)
|
||||
aws-eventstream (~> 1, >= 1.3.0)
|
||||
aws-partitions (~> 1, >= 1.651.0)
|
||||
aws-sigv4 (~> 1.8)
|
||||
aws-sigv4 (~> 1.9)
|
||||
jmespath (~> 1, >= 1.6.1)
|
||||
aws-sdk-ec2 (1.444.0)
|
||||
aws-sdk-core (~> 3, >= 3.191.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sigv4 (1.8.0)
|
||||
aws-sdk-ec2 (1.470.0)
|
||||
aws-sdk-core (~> 3, >= 3.201.0)
|
||||
aws-sigv4 (~> 1.5)
|
||||
aws-sigv4 (1.9.1)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
base64 (0.2.0)
|
||||
bigdecimal (3.1.7)
|
||||
bigdecimal (3.1.8)
|
||||
bindata (2.5.0)
|
||||
bolt (3.28.0)
|
||||
bolt (3.30.0)
|
||||
CFPropertyList (>= 2.2)
|
||||
addressable (~> 2.5)
|
||||
aws-sdk-ec2 (~> 1)
|
||||
@ -45,13 +45,13 @@ GEM
|
||||
terminal-table (~> 3.0)
|
||||
winrm (~> 2.0)
|
||||
winrm-fs (~> 1.3)
|
||||
builder (3.2.4)
|
||||
builder (3.3.0)
|
||||
colored2 (3.1.2)
|
||||
concurrent-ruby (1.2.3)
|
||||
concurrent-ruby (1.3.4)
|
||||
connection_pool (2.4.1)
|
||||
cri (2.15.11)
|
||||
cri (2.15.12)
|
||||
deep_merge (1.2.2)
|
||||
erubi (1.12.0)
|
||||
erubi (1.13.0)
|
||||
facter (4.6.1)
|
||||
hocon (~> 1.3)
|
||||
thor (>= 1.0.1, < 2.0)
|
||||
@ -73,16 +73,18 @@ GEM
|
||||
faraday-httpclient (1.0.1)
|
||||
faraday-multipart (1.0.4)
|
||||
multipart-post (~> 2)
|
||||
faraday-net_http (1.0.1)
|
||||
faraday-net_http (1.0.2)
|
||||
faraday-net_http_persistent (1.2.0)
|
||||
faraday-patron (1.0.0)
|
||||
faraday-rack (1.0.0)
|
||||
faraday-retry (1.0.3)
|
||||
faraday_middleware (1.2.0)
|
||||
faraday (~> 1.0)
|
||||
fast_gettext (2.3.0)
|
||||
ffi (1.16.3)
|
||||
fast_gettext (2.4.0)
|
||||
prime
|
||||
ffi (1.17.0)
|
||||
forwardable (1.3.3)
|
||||
getoptlong (0.2.1)
|
||||
gettext (3.4.9)
|
||||
erubi
|
||||
locale (>= 2.0.5)
|
||||
@ -101,31 +103,33 @@ GEM
|
||||
hiera-eyaml (3.4.0)
|
||||
highline
|
||||
optimist
|
||||
highline (3.0.1)
|
||||
highline (3.1.0)
|
||||
reline
|
||||
hocon (1.4.0)
|
||||
httpclient (2.8.3)
|
||||
io-console (0.7.2)
|
||||
jmespath (1.6.2)
|
||||
jwt (2.7.1)
|
||||
little-plugger (1.1.4)
|
||||
locale (2.1.4)
|
||||
log4r (1.1.10)
|
||||
logging (2.3.1)
|
||||
logging (2.4.0)
|
||||
little-plugger (~> 1.1)
|
||||
multi_json (~> 1.14)
|
||||
minitar (0.9)
|
||||
minitar (0.12.1)
|
||||
molinillo (0.8.0)
|
||||
multi_json (1.15.0)
|
||||
multipart-post (2.4.0)
|
||||
multipart-post (2.4.1)
|
||||
net-http-persistent (4.0.2)
|
||||
connection_pool (~> 2.2)
|
||||
net-scp (4.0.0)
|
||||
net-ssh (>= 2.6.5, < 8.0.0)
|
||||
net-ssh (7.2.1)
|
||||
net-ssh (7.2.3)
|
||||
net-ssh-krb (0.5.1)
|
||||
gssapi (~> 1.3.0)
|
||||
net-ssh (>= 2.0)
|
||||
nkf (0.2.0)
|
||||
nori (2.7.0)
|
||||
nori (2.7.1)
|
||||
bigdecimal
|
||||
optimist (3.1.0)
|
||||
orchestrator_client (0.7.0)
|
||||
@ -134,12 +138,13 @@ GEM
|
||||
prime (0.1.2)
|
||||
forwardable
|
||||
singleton
|
||||
public_suffix (5.0.4)
|
||||
puppet (8.5.1)
|
||||
public_suffix (6.0.1)
|
||||
puppet (8.8.1)
|
||||
concurrent-ruby (~> 1.0)
|
||||
deep_merge (~> 1.0)
|
||||
facter (>= 4.3.0, < 5)
|
||||
fast_gettext (>= 2.1, < 3)
|
||||
fast_gettext (>= 2.1, < 4)
|
||||
getoptlong (~> 0.2.0)
|
||||
locale (~> 2.1)
|
||||
multi_json (~> 1.13)
|
||||
puppet-resource_api (~> 1.5)
|
||||
@ -158,7 +163,7 @@ GEM
|
||||
puppetfile-resolver (0.6.3)
|
||||
molinillo (~> 0.6)
|
||||
semantic_puppet (~> 1.0)
|
||||
r10k (3.16.0)
|
||||
r10k (3.16.2)
|
||||
colored2 (= 3.1.2)
|
||||
cri (>= 2.15.10)
|
||||
fast_gettext (>= 1.1.0, < 3.0.0)
|
||||
@ -169,33 +174,39 @@ GEM
|
||||
minitar (~> 0.9)
|
||||
multi_json (~> 1.10)
|
||||
puppet_forge (>= 2.3.0, < 4.0.0)
|
||||
racc (1.7.3)
|
||||
rexml (3.2.6)
|
||||
racc (1.8.1)
|
||||
reline (0.5.9)
|
||||
io-console (~> 0.5)
|
||||
rexml (3.3.6)
|
||||
strscan
|
||||
rgen (0.9.1)
|
||||
ruby2_keywords (0.0.5)
|
||||
ruby_smb (1.1.0)
|
||||
bindata
|
||||
rubyntlm
|
||||
windows_error
|
||||
rubyntlm (0.6.3)
|
||||
rubyntlm (0.6.5)
|
||||
base64
|
||||
rubyzip (2.3.2)
|
||||
scanf (1.0.0)
|
||||
semantic_puppet (1.1.0)
|
||||
singleton (0.2.0)
|
||||
strscan (3.1.0)
|
||||
terminal-table (3.0.2)
|
||||
unicode-display_width (>= 1.1.1, < 3)
|
||||
text (1.3.1)
|
||||
thor (1.3.1)
|
||||
unicode-display_width (2.5.0)
|
||||
windows_error (0.1.5)
|
||||
winrm (2.3.6)
|
||||
winrm (2.3.9)
|
||||
builder (>= 2.1.2)
|
||||
erubi (~> 1.8)
|
||||
gssapi (~> 1.2)
|
||||
gyoku (~> 1.0)
|
||||
httpclient (~> 2.2, >= 2.2.0.2)
|
||||
logging (>= 1.6.1, < 3.0)
|
||||
nori (~> 2.0)
|
||||
nori (~> 2.0, >= 2.7.1)
|
||||
rexml (~> 3.0)
|
||||
rubyntlm (~> 0.6.0, >= 0.6.3)
|
||||
winrm-fs (1.3.5)
|
||||
erubi (~> 1.8)
|
||||
@ -211,4 +222,4 @@ DEPENDENCIES
|
||||
bolt
|
||||
|
||||
BUNDLED WITH
|
||||
2.5.6
|
||||
2.5.16
|
||||
|
@ -5,10 +5,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0irbdwkkjwzajq1ip6ba46q49sxnrl2cw7ddkdhsfhb6aprnm3vr";
|
||||
sha256 = "0cl2qpvwiffym62z991ynks7imsm87qmgxf0yfsmlwzkgi9qcaa6";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.8.6";
|
||||
version = "2.8.7";
|
||||
};
|
||||
aws-eventstream = {
|
||||
groups = ["default"];
|
||||
@ -25,10 +25,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0mydgvc5wn4adsic86907hzyfhgvzaq6nr394pnvk83ryv4zx77p";
|
||||
sha256 = "0m74rrlwv741wlp2imw5y93ybrzczx0r2jvcgp1v4zq299z3zy29";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.899.0";
|
||||
version = "1.968.0";
|
||||
};
|
||||
aws-sdk-core = {
|
||||
dependencies = ["aws-eventstream" "aws-partitions" "aws-sigv4" "jmespath"];
|
||||
@ -36,10 +36,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0dlalj0pw6nfmmfqddjj8b5rv6lq1hqdq19im3s8fjq5ln5ij8lr";
|
||||
sha256 = "0l5c37gvarb3p3zsip1p9mpmir0zdccp0aibgx9cy61im4pwaj0q";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.191.4";
|
||||
version = "3.201.5";
|
||||
};
|
||||
aws-sdk-ec2 = {
|
||||
dependencies = ["aws-sdk-core" "aws-sigv4"];
|
||||
@ -47,10 +47,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "19gfcb07kvywx9ymdf80k4i3yc61h41cdxnygp7197h92ff4qxhv";
|
||||
sha256 = "0z7zk5z9zyqqljh8fxhq8ngp8pixbm85pa9ygpr0nmgdl2b1i7ff";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.444.0";
|
||||
version = "1.470.0";
|
||||
};
|
||||
aws-sigv4 = {
|
||||
dependencies = ["aws-eventstream"];
|
||||
@ -58,10 +58,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1g3w27wzjy4si6kp49w10as6ml6g6zl3xrfqs5ikpfciidv9kpc4";
|
||||
sha256 = "0yf396fxashbqn0drbnvd9srxfg7w06v70q8kqpzi04zqchf6lvp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.8.0";
|
||||
version = "1.9.1";
|
||||
};
|
||||
base64 = {
|
||||
groups = ["default"];
|
||||
@ -78,10 +78,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0cq1c29zbkcxgdihqisirhcw76xc768z2zpd5vbccpq0l1lv76g7";
|
||||
sha256 = "1gi7zqgmqwi5lizggs1jhc3zlwaqayy9rx2ah80sxy24bbnng558";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.1.7";
|
||||
version = "3.1.8";
|
||||
};
|
||||
bindata = {
|
||||
groups = ["default"];
|
||||
@ -99,20 +99,20 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1abj694v2asrlzpr68shy3whf73ajk6626zqy6mhmyy8qmg8i19h";
|
||||
sha256 = "0krs4mmy1db531gyibhzaxmghb606yjmqqyfghvriy7b9sgi6bq8";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.28.0";
|
||||
version = "3.30.0";
|
||||
};
|
||||
builder = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
|
||||
sha256 = "0pw3r2lyagsxkm71bf44v5b74f7l9r7di22brbyji9fwz791hya9";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.2.4";
|
||||
version = "3.3.0";
|
||||
};
|
||||
CFPropertyList = {
|
||||
dependencies = ["base64" "nkf" "rexml"];
|
||||
@ -140,10 +140,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1qh1b14jwbbj242klkyz5fc7npd4j0mvndz62gajhvl1l3wd7zc2";
|
||||
sha256 = "0chwfdq2a6kbj6xz9l6zrdfnyghnh32si82la1dnpa5h75ir5anl";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.3";
|
||||
version = "1.3.4";
|
||||
};
|
||||
connection_pool = {
|
||||
groups = ["default"];
|
||||
@ -160,10 +160,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1bhsgnjav94mz5vf3305gxz1g34gm9kxvnrn1dkz530r8bpj0hr5";
|
||||
sha256 = "1rank6i9p2drwdcmhan6ifkzrz1v3mwpx47fwjl75rskxwjfkgwa";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.15.11";
|
||||
version = "2.15.12";
|
||||
};
|
||||
deep_merge = {
|
||||
groups = ["default"];
|
||||
@ -180,10 +180,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7";
|
||||
sha256 = "0qnd6ff4az22ysnmni3730c41b979xinilahzg86bn7gv93ip9pw";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.12.0";
|
||||
version = "1.13.0";
|
||||
};
|
||||
facter = {
|
||||
dependencies = ["hocon" "thor"];
|
||||
@ -263,10 +263,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1fi8sda5hc54v1w3mqfl5yz09nhx35kglyx72w7b8xxvdr0cwi9j";
|
||||
sha256 = "10n6wikd442mfm15hd6gzm0qb527161w1wwch4h5m4iclkz2x6b3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
};
|
||||
faraday-net_http_persistent = {
|
||||
groups = ["default"];
|
||||
@ -320,24 +320,25 @@
|
||||
version = "1.2.0";
|
||||
};
|
||||
fast_gettext = {
|
||||
dependencies = ["prime"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "112gsrqah2w03kgi9mjsn6hl74mrwckphf223h36iayc4djf4lq2";
|
||||
sha256 = "1gsz2ywvnms7b4w7bs4dg7cykhgx7z74fa7xy0sbw45a0v2c89px";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.0";
|
||||
version = "2.4.0";
|
||||
};
|
||||
ffi = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1yvii03hcgqj30maavddqamqy50h7y6xcn2wcyq72wn823zl4ckd";
|
||||
sha256 = "07139870npj59jnl8vmk39ja3gdk3fb5z9vc0lf32y2h891hwqsi";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.16.3";
|
||||
version = "1.17.0";
|
||||
};
|
||||
forwardable = {
|
||||
groups = ["default"];
|
||||
@ -349,6 +350,16 @@
|
||||
};
|
||||
version = "1.3.3";
|
||||
};
|
||||
getoptlong = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "198vy9dxyzibqdbw9jg8p2ljj9iknkyiqlyl229vz55rjxrz08zx";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.1";
|
||||
};
|
||||
gettext = {
|
||||
dependencies = ["erubi" "locale" "prime" "racc" "text"];
|
||||
groups = ["default"];
|
||||
@ -405,14 +416,15 @@
|
||||
version = "3.4.0";
|
||||
};
|
||||
highline = {
|
||||
dependencies = ["reline"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "02ghhvigqbq4252gsi4w8a9klkdkybmbz29ghfp1y6sqzlcb466a";
|
||||
sha256 = "1sxqnaz6wvkwbwzsipwsqcg1zw2kn67x7l362whv87zl5133w60l";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.0.1";
|
||||
version = "3.1.0";
|
||||
};
|
||||
hocon = {
|
||||
groups = ["default"];
|
||||
@ -434,6 +446,16 @@
|
||||
};
|
||||
version = "2.8.3";
|
||||
};
|
||||
io-console = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08d2lx42pa8jjav0lcjbzfzmw61b8imxr9041pva8xzqabrczp7h";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.7.2";
|
||||
};
|
||||
jmespath = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
@ -490,20 +512,20 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1zflchpx4g8c110gjdcs540bk5a336nq6nmx379rdg56xw0pjd02";
|
||||
sha256 = "1jqcq2yxh973f3aw63nd3wxhqyhkncz3pf8v2gs3df0iqair725s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.1";
|
||||
version = "2.4.0";
|
||||
};
|
||||
minitar = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "126mq86x67d1p63acrfka4zx0cx2r0vc93884jggxnrmmnzbxh13";
|
||||
sha256 = "0f307mpj4j0gp7iq77xj4p149f4krcvbll9rismng3jcijpbn79s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9";
|
||||
version = "0.12.1";
|
||||
};
|
||||
molinillo = {
|
||||
groups = ["default"];
|
||||
@ -530,10 +552,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1033p35166d9p97y4vajbbvr13pmkk9zwn7sylxpmk9jrpk8ri67";
|
||||
sha256 = "1a5lrlvmg2kb2dhw3lxcsv6x276bwgsxpnka1752082miqxd0wlq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.4.0";
|
||||
version = "2.4.1";
|
||||
};
|
||||
net-http-persistent = {
|
||||
dependencies = ["connection_pool"];
|
||||
@ -562,10 +584,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1i01340c4i144vvn3x54lc2rb77ch829qipl1rh6rqwm3yxzml9w";
|
||||
sha256 = "0sqbq5aks9xxnldbd2hy20ypnd59zcra98ql0r7jjc26s5rgc18n";
|
||||
type = "gem";
|
||||
};
|
||||
version = "7.2.1";
|
||||
version = "7.2.3";
|
||||
};
|
||||
net-ssh-krb = {
|
||||
dependencies = ["gssapi" "net-ssh"];
|
||||
@ -594,10 +616,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "12wfv36jzc0978ij5c56nnfh5k8ax574njawigs98ysmp1x5s2ql";
|
||||
sha256 = "0qb84bbi74q0zgs09sdkq750jf2ri3lblbry0xi4g1ard4rwsrk1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.7.0";
|
||||
version = "2.7.1";
|
||||
};
|
||||
optimist = {
|
||||
groups = ["default"];
|
||||
@ -636,21 +658,21 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1bni4qjrsh2q49pnmmd6if4iv3ak36bd2cckrs6npl111n769k9m";
|
||||
sha256 = "0vqcw3iwby3yc6avs1vb3gfd0vcp2v7q310665dvxfswmcf4xm31";
|
||||
type = "gem";
|
||||
};
|
||||
version = "5.0.4";
|
||||
version = "6.0.1";
|
||||
};
|
||||
puppet = {
|
||||
dependencies = ["concurrent-ruby" "deep_merge" "facter" "fast_gettext" "locale" "multi_json" "puppet-resource_api" "scanf" "semantic_puppet"];
|
||||
dependencies = ["concurrent-ruby" "deep_merge" "facter" "fast_gettext" "getoptlong" "locale" "multi_json" "puppet-resource_api" "scanf" "semantic_puppet"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1dhax5d40c03n0lffy10mvs0c3mgfqq1dsc3gb5ihgb2l1sbs0a7";
|
||||
sha256 = "0v2jqkan3nidifxdlpm7lk0ih5s8khl9ps0nz62wj3zlywck0wsi";
|
||||
type = "gem";
|
||||
};
|
||||
version = "8.5.1";
|
||||
version = "8.8.1";
|
||||
};
|
||||
puppet-resource_api = {
|
||||
dependencies = ["hocon"];
|
||||
@ -702,30 +724,42 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "198bar06xqap19j9y831j98ahd3w4ky2k0klwaa39sa1p6fpcjdi";
|
||||
sha256 = "1f9fwfmr44lbnx31fdiabm7sb41nsbf10awm96zl79clp8kafxcp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.16.0";
|
||||
version = "3.16.2";
|
||||
};
|
||||
racc = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "01b9662zd2x9bp4rdjfid07h09zxj7kvn7f5fghbqhzc625ap1dp";
|
||||
sha256 = "0byn0c9nkahsl93y9ln5bysq4j31q8xkf2ws42swighxd4lnjzsa";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.7.3";
|
||||
version = "1.8.1";
|
||||
};
|
||||
rexml = {
|
||||
reline = {
|
||||
dependencies = ["io-console"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "05i8518ay14kjbma550mv0jm8a6di8yp5phzrd8rj44z9qnrlrp0";
|
||||
sha256 = "0y6kyz7kcilwdpfy3saqfgnar38vr5ys9sp40ndffy6h1znxfbax";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.2.6";
|
||||
version = "0.5.9";
|
||||
};
|
||||
rexml = {
|
||||
dependencies = ["strscan"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1ik3in0957l9s6iwdm3nsk4za072cj27riiqgpx6zzcd22flbw3s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.3.6";
|
||||
};
|
||||
rgen = {
|
||||
groups = ["default"];
|
||||
@ -759,14 +793,15 @@
|
||||
version = "1.1.0";
|
||||
};
|
||||
rubyntlm = {
|
||||
dependencies = ["base64"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0b8hczk8hysv53ncsqzx4q6kma5gy5lqc7s5yx8h64x3vdb18cjv";
|
||||
sha256 = "1x8l0d1v88m40mby4jvgal46137cv8gga2lk7zlrxqlsp41380a7";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.6.3";
|
||||
version = "0.6.5";
|
||||
};
|
||||
rubyzip = {
|
||||
groups = ["default"];
|
||||
@ -808,6 +843,16 @@
|
||||
};
|
||||
version = "0.2.0";
|
||||
};
|
||||
strscan = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0mamrl7pxacbc79ny5hzmakc9grbjysm3yy6119ppgsg44fsif01";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.1.0";
|
||||
};
|
||||
terminal-table = {
|
||||
dependencies = ["unicode-display_width"];
|
||||
groups = ["default"];
|
||||
@ -860,15 +905,15 @@
|
||||
version = "0.1.5";
|
||||
};
|
||||
winrm = {
|
||||
dependencies = ["builder" "erubi" "gssapi" "gyoku" "httpclient" "logging" "nori" "rubyntlm"];
|
||||
dependencies = ["builder" "erubi" "gssapi" "gyoku" "httpclient" "logging" "nori" "rexml" "rubyntlm"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0nxf6a47d1xf1nvi7rbfbzjyyjhz0iakrnrsr2hj6y24a381sd8i";
|
||||
sha256 = "01jxpshw5kx5ha21ymaaj14vibv5bvm0dd80ccc6xl3jaxy7cszg";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.6";
|
||||
version = "2.3.9";
|
||||
};
|
||||
winrm-fs = {
|
||||
dependencies = ["erubi" "logging" "rubyzip" "winrm"];
|
||||
|
@ -1,16 +1,19 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
base64 (0.2.0)
|
||||
colored2 (3.1.2)
|
||||
cri (2.15.11)
|
||||
erubi (1.12.0)
|
||||
faraday (2.9.0)
|
||||
cri (2.15.12)
|
||||
erubi (1.13.0)
|
||||
faraday (2.10.1)
|
||||
faraday-net_http (>= 2.0, < 3.2)
|
||||
logger
|
||||
faraday-follow_redirects (0.3.0)
|
||||
faraday (>= 1, < 3)
|
||||
faraday-net_http (3.1.0)
|
||||
faraday-net_http (3.1.1)
|
||||
net-http
|
||||
fast_gettext (2.3.0)
|
||||
fast_gettext (2.4.0)
|
||||
prime
|
||||
forwardable (1.3.3)
|
||||
gettext (3.4.9)
|
||||
erubi
|
||||
@ -22,31 +25,33 @@ GEM
|
||||
fast_gettext (~> 2.1)
|
||||
gettext (~> 3.4)
|
||||
locale
|
||||
jwt (2.7.1)
|
||||
jwt (2.8.2)
|
||||
base64
|
||||
locale (2.1.4)
|
||||
log4r (1.1.10)
|
||||
minitar (0.9)
|
||||
logger (1.6.0)
|
||||
minitar (0.12.1)
|
||||
multi_json (1.15.0)
|
||||
net-http (0.4.1)
|
||||
uri
|
||||
prime (0.1.2)
|
||||
forwardable
|
||||
singleton
|
||||
puppet_forge (5.0.3)
|
||||
puppet_forge (5.0.4)
|
||||
faraday (~> 2.0)
|
||||
faraday-follow_redirects (~> 0.3.0)
|
||||
minitar
|
||||
minitar (< 1.0.0)
|
||||
semantic_puppet (~> 1.0)
|
||||
r10k (4.0.1)
|
||||
r10k (4.1.0)
|
||||
colored2 (= 3.1.2)
|
||||
cri (>= 2.15.10)
|
||||
gettext-setup (>= 0.24, < 2.0)
|
||||
jwt (>= 2.2.3, < 2.8.0)
|
||||
jwt (>= 2.2.3, < 3)
|
||||
log4r (= 1.1.10)
|
||||
minitar (~> 0.9)
|
||||
multi_json (~> 1.10)
|
||||
puppet_forge (>= 4.1, < 6)
|
||||
racc (1.7.3)
|
||||
racc (1.8.1)
|
||||
semantic_puppet (1.1.0)
|
||||
singleton (0.2.0)
|
||||
text (1.3.1)
|
||||
@ -59,4 +64,4 @@ DEPENDENCIES
|
||||
r10k
|
||||
|
||||
BUNDLED WITH
|
||||
2.5.6
|
||||
2.5.16
|
||||
|
@ -1,4 +1,14 @@
|
||||
{
|
||||
base64 = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "01qml0yilb9basf7is2614skjp8384h2pycfx86cr8023arfj98g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.0";
|
||||
};
|
||||
colored2 = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
@ -14,31 +24,31 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1bhsgnjav94mz5vf3305gxz1g34gm9kxvnrn1dkz530r8bpj0hr5";
|
||||
sha256 = "1rank6i9p2drwdcmhan6ifkzrz1v3mwpx47fwjl75rskxwjfkgwa";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.15.11";
|
||||
version = "2.15.12";
|
||||
};
|
||||
erubi = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7";
|
||||
sha256 = "0qnd6ff4az22ysnmni3730c41b979xinilahzg86bn7gv93ip9pw";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.12.0";
|
||||
version = "1.13.0";
|
||||
};
|
||||
faraday = {
|
||||
dependencies = ["faraday-net_http"];
|
||||
dependencies = ["faraday-net_http" "logger"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1qqb1rmk0f9m82iijjlqadh5yby1bhnr6svjk9vxdvh6f181988s";
|
||||
sha256 = "104s7n9505488p923cs0pl3jlgn4naam28clkm2885hrysizpjbb";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.9.0";
|
||||
version = "2.10.1";
|
||||
};
|
||||
faraday-follow_redirects = {
|
||||
dependencies = ["faraday"];
|
||||
@ -57,20 +67,21 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "17w51yk4rrm9rpnbc3x509s619kba0jga3qrj4b17l30950vw9qn";
|
||||
sha256 = "0f49frpfdr8czwm2mjkfny4pini6fy49b6hamw4jrppl4vsg14ys";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.1.0";
|
||||
version = "3.1.1";
|
||||
};
|
||||
fast_gettext = {
|
||||
dependencies = ["prime"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "112gsrqah2w03kgi9mjsn6hl74mrwckphf223h36iayc4djf4lq2";
|
||||
sha256 = "1gsz2ywvnms7b4w7bs4dg7cykhgx7z74fa7xy0sbw45a0v2c89px";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.0";
|
||||
version = "2.4.0";
|
||||
};
|
||||
forwardable = {
|
||||
groups = ["default"];
|
||||
@ -105,14 +116,15 @@
|
||||
version = "1.1.0";
|
||||
};
|
||||
jwt = {
|
||||
dependencies = ["base64"];
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "16z11alz13vfc4zs5l3fk6n51n2jw9lskvc4h4prnww0y797qd87";
|
||||
sha256 = "04mw326i9vsdcqwm4bf0zvnqw237f8l7022nhlbmak92bqqpg62s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.7.1";
|
||||
version = "2.8.2";
|
||||
};
|
||||
locale = {
|
||||
groups = ["default"];
|
||||
@ -134,15 +146,25 @@
|
||||
};
|
||||
version = "1.1.10";
|
||||
};
|
||||
logger = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gpg8gzi0xwymw4aaq2iafcbx31i3xzkg3fb30mdxn1d4qhc3dqa";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.6.0";
|
||||
};
|
||||
minitar = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "126mq86x67d1p63acrfka4zx0cx2r0vc93884jggxnrmmnzbxh13";
|
||||
sha256 = "0f307mpj4j0gp7iq77xj4p149f4krcvbll9rismng3jcijpbn79s";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.9";
|
||||
version = "0.12.1";
|
||||
};
|
||||
multi_json = {
|
||||
groups = ["default"];
|
||||
@ -182,10 +204,10 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "168w15y5rnsm6wspqxn0wg543r89cbajc8wky0sg9vzpgpr27176";
|
||||
sha256 = "0d65zri1nmpph8iki5iigdzfqd6rfyc1mlgdfhg69q3566rcff06";
|
||||
type = "gem";
|
||||
};
|
||||
version = "5.0.3";
|
||||
version = "5.0.4";
|
||||
};
|
||||
r10k = {
|
||||
dependencies = ["colored2" "cri" "gettext-setup" "jwt" "log4r" "minitar" "multi_json" "puppet_forge"];
|
||||
@ -193,20 +215,20 @@
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1g7bx9k112mnxpnasj59zaz2c7x51ia856b5q41kfr3i9y2q3k78";
|
||||
sha256 = "0k3fr2f0pwyrabs12wqig31f37sqrqs8qza7jrn01d6blvhvkrb4";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.0.1";
|
||||
version = "4.1.0";
|
||||
};
|
||||
racc = {
|
||||
groups = ["default"];
|
||||
platforms = [];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "01b9662zd2x9bp4rdjfid07h09zxj7kvn7f5fghbqhzc625ap1dp";
|
||||
sha256 = "0byn0c9nkahsl93y9ln5bysq4j31q8xkf2ws42swighxd4lnjzsa";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.7.3";
|
||||
version = "1.8.1";
|
||||
};
|
||||
semantic_puppet = {
|
||||
groups = ["default"];
|
||||
|
@ -20,13 +20,13 @@
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "rakshasa-rtorrent";
|
||||
version = "0.9.8-unstable-2024-08-20";
|
||||
version = "0.9.8-unstable-2024-08-31";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rakshasa";
|
||||
repo = "rtorrent";
|
||||
rev = "eacf9798e2787df7dd4d5c800a46bac7931ac41c";
|
||||
hash = "sha256-VJ2QJfBRUgk0KcCZTHtlyBIMVhs0UfYWAPlTeA98VZU=";
|
||||
rev = "4e246a401f2572d6c8a3295cbe0335baa316cd24";
|
||||
hash = "sha256-tq/0Vq+rIyCn1UQlyo7lcTSVf6WW1I8MTfxiAwQYD/o=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
4866
pkgs/by-name/ru/rustdesk/Cargo.lock
generated
4866
pkgs/by-name/ru/rustdesk/Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -37,45 +37,53 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "rustdesk";
|
||||
version = "1.2.3";
|
||||
version = "1.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rustdesk";
|
||||
repo = "rustdesk";
|
||||
rev = version;
|
||||
hash = "sha256-6TdirqEnWvuPgKOLzNIAm66EgKNdGVjD7vf2maqlxI8=";
|
||||
hash = "sha256-pDGURsF0eft2BkuXOzaMtNCHp9VFgZZh4bbNRa5NDII=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"confy-0.4.0-2" = "sha256-r5VeggXrIq5Cwxc2WSrxQDI5Gvbw979qIUQfMKHgBUI=";
|
||||
"android-wakelock-0.1.0" = "sha256-09EH/U1BBs3l4galQOrTKmPUYBgryUjfc/rqPZhdYc4=";
|
||||
"arboard-3.4.0" = "sha256-lZIG5z115ExR6DcUut1rk9MrYFzSyCYH9kNGIikOPJM=";
|
||||
"cacao-0.4.0-beta2" = "sha256-U5tCLeVxjmZCm7ti1u71+i116xmozPaR69pCsA4pxrM=";
|
||||
"clipboard-master-4.0.0-beta.6" = "sha256-GZyzGMQOZ0iwGNZa/ZzFp8gU2tQVWZBpAbim8yb6yZA=";
|
||||
"confy-0.4.0-2" = "sha256-V7BCKISrkJIxWC3WT5+B5Vav86YTQvdO9TO6A++47FU=";
|
||||
"core-foundation-0.9.3" = "sha256-iB4OVmWZhuWbs9RFWvNc+RNut6rip2/50o5ZM6c0c3g=";
|
||||
"evdev-0.11.5" = "sha256-aoPmjGi/PftnH6ClEWXHvIj0X3oh15ZC1q7wPC1XPr0=";
|
||||
"hwcodec-0.1.1" = "sha256-EQGJr5kH8O48y1oSrzFF3QGGpGFKP3v4gn2JquAkdlY=";
|
||||
"impersonate_system-0.1.0" = "sha256-qbaTw9gxMKDjX5pKdUrKlmIxCxWwb99YuWPDvD2A3kY=";
|
||||
"keepawake-0.4.3" = "sha256-sLQf9q88dB2bkTN01UlxRWSpoF1kFsqqpYC4Sw6cbEY=";
|
||||
"hwcodec-0.7.0" = "sha256-pfzcaD7h/U5ou+P7qRLR56iXOkm043rF74y+Q0FsVLo=";
|
||||
"impersonate_system-0.1.0" = "sha256-pIV7s2qGoCIUrhaRovBDCJaGQ/pMdJacDXJmeBpkcyI=";
|
||||
"keepawake-0.4.3" = "sha256-cqSpkq/PCz+5+ZUyPy5hF6rP3fBzuZDywyxMUQ50Rk4=";
|
||||
"machine-uid-0.3.0" = "sha256-rEOyNThg6p5oqE9URnxSkPtzyW8D4zKzLi9pAnzTElE=";
|
||||
"magnum-opus-0.4.0" = "sha256-T4qaYOl8lCK1h9jWa9KqGvnVfDViT9Ob5R+YgnSw2tg=";
|
||||
"mouce-0.2.1" = "sha256-3PtNEmVMXgqKV4r3KiKTkk4oyCt4BKynniJREE+RyFk=";
|
||||
"pam-0.7.0" = "sha256-qe2GH6sfGEUnqLiQucYLB5rD/GyAaVtm9pAxWRb1H3Q=";
|
||||
"parity-tokio-ipc-0.7.3-2" = "sha256-WXDKcDBaJuq4K9gjzOKMozePOFiVX0EqYAFamAz/Yvw=";
|
||||
"rdev-0.5.0-2" = "sha256-MJ4Uqp0yz1CcFvoZYyUYwNojUcfW1AyVowKShihhhbY=";
|
||||
"reqwest-0.11.18" = "sha256-3k2wcVD+DzJEdP/+8BqP9qz3tgEWcbWZj5/CjrZz5LY=";
|
||||
"pam-0.7.0" = "sha256-o47tVoFlW9RiL7O8Lvuwz7rMYQHO+5TG27XxkAdHEOE=";
|
||||
"pam-sys-1.0.0-alpha4" = "sha256-5HIErVWnanLo5054NgU+DEKC2wwyiJ8AHvbx0BGbyWo=";
|
||||
"parity-tokio-ipc-0.7.3-4" = "sha256-PKw2Twd2ap+tRrQxqg8T1FvpoeKn0hvBqn1Z44F1LcY=";
|
||||
"rdev-0.5.0-2" = "sha256-KrzNa4sKyuVw3EV/Ec9VBNRyJy7QFR2Gu4c2WkltwUw=";
|
||||
"reqwest-0.11.23" = "sha256-kEUT+gs4ziknDiGdPMLnj5pmxC5SBpLopZ8jZ34GDWc=";
|
||||
"rust-pulsectl-0.2.12" = "sha256-8jXTspWvjONFcvw9/Z8C43g4BuGZ3rsG32tvLMQbtbM=";
|
||||
"sciter-rs-0.5.57" = "sha256-NQPDlMQ0sGY8c9lBMlplT82sNjbgJy2m/+REnF3fz8M=";
|
||||
"tao-0.22.2" = "sha256-vZx7WM6vK9UarbFQ/FMnTNEEDS+tglhWcPXt/h7YMFA=";
|
||||
"tfc-0.6.1" = "sha256-ukxJl7Z+pUXCjvTsG5Q0RiXocPERWGsnAyh3SIWm0HU=";
|
||||
"tokio-socks-0.5.1-2" = "sha256-x3aFJKo0XLaCGkZLtG9GYA+A/cGGedVZ8gOztWiYVUY=";
|
||||
"tray-icon-0.5.1" = "sha256-1VyUg8V4omgdRIYyXhfn8kUvhV5ef6D2cr2Djz2uQyc=";
|
||||
"sciter-rs-0.5.57" = "sha256-5Nd9npdx8yQJEczHv7WmSmrE1lBfvp5z7BubTbYBg3E=";
|
||||
"sysinfo-0.29.10" = "sha256-/UsFAvlWs/F7X1xT+97Fx+pnpCguoPHU3hTynqYMEs4=";
|
||||
"tao-0.25.0" = "sha256-kLmx1z9Ybn/hDt2OcszEjtZytQIE+NKTIn9zNr9oEQk=";
|
||||
"tfc-0.7.0" = "sha256-VAoOadgGajWjW7q1RCwmQ5gMmaA1oeZBSiL1tYSuIEI=";
|
||||
"tokio-socks-0.5.2-1" = "sha256-i1dfNatqN4dinMcyAdLhj9hJWVsT10OWpCXsxl7pifI=";
|
||||
"tray-icon-0.15.1" = "sha256-DvTVAsE3dB+o89SFk3RPRt5JzaWjPl4nlvC77zsVN/s=";
|
||||
"wallpaper-3.2.0" = "sha256-p9NRmusdA0wvF6onp1UTL0/4t7XnEAc19sqyGDnfg/Q=";
|
||||
"webm-1.1.0" = "sha256-p4BMej7yvb8c/dJynRWZmwo2hxAAY96Qx6Qx2DbT8hE=";
|
||||
"x11-2.19.0" = "sha256-GDCeKzUtvaLeBDmPQdyr499EjEfT6y4diBMzZVEptzc=";
|
||||
"x11-clipboard-0.8.1" = "sha256-PtqmSD2MwkbLVWbfTSXZW3WEvEnUlo04qieUTjN2whE=";
|
||||
};
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
# Patch 404 repos
|
||||
substituteInPlace Cargo.lock --replace-fail "fufesou" "rustdesk-org";
|
||||
substituteInPlace Cargo.toml --replace-fail "fufesou" "rustdesk-org";
|
||||
substituteInPlace libs/enigo/Cargo.toml --replace-fail "fufesou" "rustdesk-org";
|
||||
postPatch = ''
|
||||
# Overwrite cargo.lock because the one in the upstream repo has duplicates entries.
|
||||
# It should probably be removed in the next rustdesk update (if they fix their cargoLock)
|
||||
ln -fs ${./Cargo.lock} Cargo.lock
|
||||
'';
|
||||
|
||||
desktopItems = [
|
||||
|
53
pkgs/by-name/sc/schemaspy/package.nix
Normal file
53
pkgs/by-name/sc/schemaspy/package.nix
Normal file
@ -0,0 +1,53 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
graphviz,
|
||||
jre,
|
||||
makeWrapper,
|
||||
maven,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
maven.buildMavenPackage rec {
|
||||
pname = "schemaspy";
|
||||
version = "6.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "schemaspy";
|
||||
repo = "schemaspy";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-yEqhLpGrJ4hki8o+u+bigVXv+3YvEb8TvHDTYsEl8z4=";
|
||||
};
|
||||
|
||||
mvnParameters = "-Dmaven.test.skip=true -Dmaven.buildNumber.skip=true";
|
||||
mvnHash = "sha256-LCPRiY/DDSUnLGnaFUS9PPKnh3TmSyAOqKfEKRLRjpg=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -D target/${pname}-${version}-app.jar $out/share/java/${pname}-${version}.jar
|
||||
|
||||
makeWrapper ${jre}/bin/java $out/bin/schemaspy \
|
||||
--add-flags "-jar $out/share/java/${pname}-${version}.jar" \
|
||||
--prefix PATH : ${lib.makeBinPath [ graphviz ]}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = {
|
||||
homepage = "https://schemaspy.org";
|
||||
description = "Document your database simply and easily";
|
||||
mainProgram = "schemaspy";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
maintainers = with lib.maintainers; [
|
||||
jraygauthier
|
||||
anthonyroussel
|
||||
];
|
||||
};
|
||||
}
|
@ -5,7 +5,6 @@
|
||||
, mpich
|
||||
, tmux
|
||||
, reptyr
|
||||
, autoconf
|
||||
, makeWrapper
|
||||
}:
|
||||
|
||||
@ -22,7 +21,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
propagatedBuildInputs = [ mpi mpich reptyr tmux ];
|
||||
|
||||
buildInputs = [ autoconf makeWrapper ];
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
@ -101,7 +101,7 @@ lib.warnIf (useHardenedMalloc != null)
|
||||
++ lib.optionals mediaSupport [ ffmpeg ]
|
||||
);
|
||||
|
||||
version = "13.5.2";
|
||||
version = "13.5.3";
|
||||
|
||||
sources = {
|
||||
x86_64-linux = fetchurl {
|
||||
@ -111,7 +111,7 @@ lib.warnIf (useHardenedMalloc != null)
|
||||
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux-x86_64-${version}.tar.xz"
|
||||
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux-x86_64-${version}.tar.xz"
|
||||
];
|
||||
hash = "sha256-f6bKRWirHuOe2BnCYegZi1j58Ou3p6Syw++NVLGUGdU=";
|
||||
hash = "sha256-g4wSjFS3VFZcflN2lexAoSledOBCK9taixGEUbM3X1E=";
|
||||
};
|
||||
|
||||
i686-linux = fetchurl {
|
||||
@ -121,7 +121,7 @@ lib.warnIf (useHardenedMalloc != null)
|
||||
"https://tor.eff.org/dist/torbrowser/${version}/tor-browser-linux-i686-${version}.tar.xz"
|
||||
"https://tor.calyxinstitute.org/dist/torbrowser/${version}/tor-browser-linux-i686-${version}.tar.xz"
|
||||
];
|
||||
hash = "sha256-ye+l3aq3nV97SUyARZMcPhdtGLoAWoscbr81F5LdbS4=";
|
||||
hash = "sha256-sw8PFbCTUvmD1+fE3VXX/3A07CnzXjBydQ+b4rshpak=";
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -10,6 +10,8 @@
|
||||
, libXxf86vm
|
||||
}:
|
||||
let
|
||||
version = "4.13.2-redo";
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "unciv";
|
||||
exec = "unciv";
|
||||
@ -20,7 +22,7 @@ let
|
||||
};
|
||||
|
||||
desktopIcon = fetchurl {
|
||||
url = "https://github.com/yairm210/Unciv/blob/4.13.0-patch1/extraImages/Icons/Unciv%20icon%20v6.png?raw=true";
|
||||
url = "https://github.com/yairm210/Unciv/blob/${version}/extraImages/Icons/Unciv%20icon%20v6.png?raw=true";
|
||||
hash = "sha256-Zuz+HGfxjGviGBKTiHdIFXF8UMRLEIfM8f+LIB/xonk=";
|
||||
};
|
||||
|
||||
@ -33,7 +35,7 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "unciv";
|
||||
version = "4.13.0-patch1";
|
||||
inherit version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar";
|
||||
|
45
pkgs/by-name/yp/ypbind-mt/package.nix
Normal file
45
pkgs/by-name/yp/ypbind-mt/package.nix
Normal file
@ -0,0 +1,45 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchurl,
|
||||
autoreconfHook,
|
||||
libnsl,
|
||||
libtirpc,
|
||||
libxcrypt,
|
||||
pkg-config,
|
||||
rpcbind,
|
||||
systemdLibs,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ypbind-mt";
|
||||
version = "2.7.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/thkukuk/ypbind-mt/releases/download/v${version}/ypbind-mt-${version}.tar.xz";
|
||||
hash = "sha256-Bk8vGFZzxUk9+D9kALeZ86NZ3lYRi2ujfEMnER8vzYs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
libnsl
|
||||
libtirpc
|
||||
libxcrypt
|
||||
rpcbind
|
||||
systemdLibs
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Multithreaded daemon maintaining the NIS binding informations.";
|
||||
homepage = "https://github.com/thkukuk/ypbind-mt";
|
||||
changelog = "https://github.com/thkukuk/ypbind-mt/blob/master/NEWS";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
mainProgram = "ypbind";
|
||||
maintainers = with lib.maintainers; [ BarrOff ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
17
pkgs/by-name/ze/zed-editor/0001-generate-licenses.patch
Normal file
17
pkgs/by-name/ze/zed-editor/0001-generate-licenses.patch
Normal file
@ -0,0 +1,17 @@
|
||||
diff --git a/script/generate-licenses b/script/generate-licenses
|
||||
index 43b2f5c458..c740a3afa2 100755
|
||||
--- a/script/generate-licenses
|
||||
+++ b/script/generate-licenses
|
||||
@@ -15,12 +15,6 @@ cat assets/icons/LICENSES >> $OUTPUT_FILE
|
||||
|
||||
echo -e "# ###### CODE LICENSES ######\n" >> $OUTPUT_FILE
|
||||
|
||||
-if ! cargo install --list | grep "cargo-about v$CARGO_ABOUT_VERSION" > /dev/null; then
|
||||
- echo "Installing cargo-about@$CARGO_ABOUT_VERSION..."
|
||||
- cargo install "cargo-about@$CARGO_ABOUT_VERSION"
|
||||
-else
|
||||
- echo "cargo-about@$CARGO_ABOUT_VERSION is already installed."
|
||||
-fi
|
||||
|
||||
echo "Generating cargo licenses"
|
||||
cargo about generate --fail -c script/licenses/zed-licenses.toml script/licenses/template.hbs.md >> $OUTPUT_FILE
|
@ -27,6 +27,9 @@
|
||||
vulkan-loader,
|
||||
envsubst,
|
||||
nix-update-script,
|
||||
cargo-about,
|
||||
testers,
|
||||
zed-editor,
|
||||
|
||||
withGLES ? false,
|
||||
}:
|
||||
@ -45,6 +48,12 @@ rustPlatform.buildRustPackage rec {
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Zed uses cargo-install to install cargo-about during the script execution.
|
||||
# We provide cargo-about ourselves and can skip this step.
|
||||
./0001-generate-licenses.patch
|
||||
];
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
@ -73,6 +82,7 @@ rustPlatform.buildRustPackage rec {
|
||||
pkg-config
|
||||
protobuf
|
||||
rustPlatform.bindgenHook
|
||||
cargo-about
|
||||
] ++ lib.optionals stdenv.isDarwin [ xcbuild.xcrun ];
|
||||
|
||||
buildInputs =
|
||||
@ -128,11 +138,17 @@ rustPlatform.buildRustPackage rec {
|
||||
# Setting this environment variable allows to disable auto-updates
|
||||
# https://zed.dev/docs/development/linux#notes-for-packaging-zed
|
||||
ZED_UPDATE_EXPLANATION = "zed has been installed using nix. Auto-updates have thus been disabled.";
|
||||
# Used by `zed --version`
|
||||
RELEASE_VERSION = version;
|
||||
};
|
||||
|
||||
RUSTFLAGS = if withGLES then "--cfg gles" else "";
|
||||
gpu-lib = if withGLES then libglvnd else vulkan-loader;
|
||||
|
||||
preBuild = ''
|
||||
bash script/generate-licenses
|
||||
'';
|
||||
|
||||
postFixup = lib.optionalString stdenv.isLinux ''
|
||||
patchelf --add-rpath ${gpu-lib}/lib $out/libexec/*
|
||||
patchelf --add-rpath ${wayland}/lib $out/libexec/*
|
||||
@ -175,11 +191,17 @@ rustPlatform.buildRustPackage rec {
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
extraArgs = [
|
||||
"--version-regex"
|
||||
"v(.*)"
|
||||
];
|
||||
passthru = {
|
||||
updateScript = nix-update-script {
|
||||
extraArgs = [
|
||||
"--version-regex"
|
||||
"v(.*)"
|
||||
];
|
||||
};
|
||||
tests.version = testers.testVersion {
|
||||
inherit version;
|
||||
package = zed-editor;
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
@ -14,7 +14,6 @@
|
||||
config,
|
||||
cudaSupport ? config.cudaSupport,
|
||||
cupy,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@ -45,13 +44,10 @@ buildPythonPackage rec {
|
||||
pythonImportsCheck = [ "array_api_compat" ];
|
||||
|
||||
# CUDA (used via cupy) is not available in the testing sandbox
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
python -m pytest -k 'not cupy'
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
pytestFlagsArray = [
|
||||
"-k"
|
||||
"'not cupy'"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://data-apis.org/array-api-compat";
|
||||
|
@ -55,6 +55,10 @@ let self = buildPythonPackage rec {
|
||||
mainProgram = "fastapi";
|
||||
license = licenses.mit;
|
||||
maintainers = [ ];
|
||||
# This package provides a `fastapi`-executable that is in conflict with the one from
|
||||
# python3Packages.fastapi. Because this package is primarily used for the purpose of
|
||||
# implementing the CLI for python3Packages.fastapi, we reduce the executable's priority
|
||||
priority = 10;
|
||||
};
|
||||
};
|
||||
in self
|
||||
|
@ -2,21 +2,28 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
py-cpuinfo,
|
||||
h5py,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "hdf5plugin";
|
||||
version = "4.4.0";
|
||||
format = "setuptools";
|
||||
version = "5.0.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "silx-kit";
|
||||
repo = "hdf5plugin";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-MnqY1PyGzo31H696J9CekiA2rJrUYzUMDC3UJMZaFLA=";
|
||||
hash = "sha256-6lEU8ZGJKazDqloel5QcaXAbNGzV1fAbAjYC/hFUOdI=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
py-cpuinfo
|
||||
];
|
||||
|
||||
dependencies = [ h5py ];
|
||||
|
||||
checkPhase = ''
|
||||
|
@ -33,13 +33,13 @@ buildPythonPackage {
|
||||
|
||||
nativeBuildInputs = base.nativeBuildInputs;
|
||||
|
||||
buildFlags = [ "pymodule" ];
|
||||
ninjaFlags = [ "horizon.so" ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/${python.sitePackages}
|
||||
cp build/horizon.so $out/${python.sitePackages}
|
||||
cp horizon.so $out/${python.sitePackages}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
117
pkgs/development/python-modules/kaleido/default.nix
Normal file
117
pkgs/development/python-modules/kaleido/default.nix
Normal file
@ -0,0 +1,117 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
python,
|
||||
buildPythonPackage,
|
||||
callPackage,
|
||||
fetchurl,
|
||||
autoPatchelfHook,
|
||||
bash,
|
||||
dejavu_fonts,
|
||||
expat,
|
||||
fontconfig,
|
||||
lato,
|
||||
libGL,
|
||||
makeWrapper,
|
||||
nspr,
|
||||
nss,
|
||||
sbclPackages,
|
||||
sqlite,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "kaleido";
|
||||
version = "0.2.1";
|
||||
format = "wheel";
|
||||
|
||||
src =
|
||||
{
|
||||
# This library is so cursed that I have to use fetchurl instead of fetchPypi. I am not happy.
|
||||
x86_64-linux = fetchurl {
|
||||
url = "https://files.pythonhosted.org/packages/py2.py3/k/kaleido/kaleido-${version}-py2.py3-none-manylinux1_x86_64.whl";
|
||||
hash = "sha256-qiHPG/HHj4+lCp99ReEAPDh709b+CnZ8+780S5W9w6g=";
|
||||
};
|
||||
aarch64-linux = fetchurl {
|
||||
url = "https://files.pythonhosted.org/packages/py2.py3/k/kaleido/kaleido-${version}-py2.py3-none-manylinux2014_aarch64.whl";
|
||||
hash = "sha256-hFgZhEyAgslGnZwX5CYh+/hcKyN++KhuyKhSf5i2USo=";
|
||||
};
|
||||
x86_64-darwin = fetchurl {
|
||||
url = "https://files.pythonhosted.org/packages/py2.py3/k/kaleido/kaleido-${version}-py2.py3-none-macosx_10_11_x86_64.whl";
|
||||
hash = "sha256-ym9z5/8AquvyhD9z8dO6zeGTDvUEEJP+drg6FXhQSac=";
|
||||
};
|
||||
aarch64-darwin = fetchurl {
|
||||
url = "https://files.pythonhosted.org/packages/py2.py3/k/kaleido/kaleido-${version}-py2.py3-none-macosx_11_0_arm64.whl";
|
||||
hash = "sha256-u5pdH3EDV9XUMu4kDvZlim0STD5hCTWBe0tC2px4fAU=";
|
||||
};
|
||||
}
|
||||
."${stdenv.hostPlatform.system}"
|
||||
or (throw "Unsupported system for ${pname}: ${stdenv.hostPlatform.system}");
|
||||
|
||||
nativeBuildInputs = (lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ]) ++ [
|
||||
makeWrapper
|
||||
];
|
||||
buildInputs = [
|
||||
bash
|
||||
dejavu_fonts
|
||||
expat
|
||||
fontconfig
|
||||
lato
|
||||
libGL
|
||||
nspr
|
||||
nss
|
||||
sbclPackages.cl-dejavu
|
||||
sqlite
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "kaleido" ];
|
||||
|
||||
postInstall = ''
|
||||
# Expose kaleido binary
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/${python.sitePackages}/kaleido/executable/bin/kaleido $out/bin/kaleido
|
||||
|
||||
# Replace bundled swiftshader with libGL
|
||||
rm -rf $out/${python.sitePackages}/kaleido/executable/bin/swiftshader
|
||||
ln -s ${libGL}/lib $out/${python.sitePackages}/kaleido/executable/bin/swiftshader
|
||||
|
||||
# Relace bundled libraries with nixpkgs-packaged libraries
|
||||
rm -rf $out/${python.sitePackages}/kaleido/executable/lib
|
||||
mkdir -p $out/${python.sitePackages}/kaleido/executable/lib
|
||||
ln -s ${expat}/lib/* $out/${python.sitePackages}/kaleido/executable/lib/
|
||||
ln -s ${nspr}/lib/* $out/${python.sitePackages}/kaleido/executable/lib/
|
||||
ln -s ${nss}/lib/* $out/${python.sitePackages}/kaleido/executable/lib/
|
||||
ln -s ${sqlite}/lib/* $out/${python.sitePackages}/kaleido/executable/lib/
|
||||
|
||||
# Replace bundled font configuration with nixpkgs-packaged font configuration
|
||||
rm -rf $out/${python.sitePackages}/kaleido/executable/etc/fonts
|
||||
mkdir -p $out/${python.sitePackages}/kaleido/executable/etc/fonts/conf.d
|
||||
ln -s ${fontconfig}/etc/fonts/fonts.conf $out/${python.sitePackages}/kaleido/executable/etc/fonts/
|
||||
ls -s ${fontconfig}/etc/fonts/conf.d/* $out/${python.sitePackages}/kaleido/executable/etc/fonts/conf.d/
|
||||
ln -s ${sbclPackages.cl-dejavu}/dejavu-fonts-ttf-2.37/fontconfig/* $out/${python.sitePackages}/kaleido/executable/etc/fonts/conf.d/
|
||||
|
||||
# Replace bundled fonts with nixpkgs-packaged fonts
|
||||
# Currently this causes an issue where the fonts aren't found. I'm not sure why, so I'm leaving this commented out for now.
|
||||
#rm -rf $out/${python.sitePackages}/kaleido/executable/xdg/fonts
|
||||
#mkdir -p $out/${python.sitePackages}/kaleido/executable/xdg/fonts/truetype/dejavu $out/${python.sitePackages}/kaleido/executable/xdg/fonts/truetype/lato
|
||||
#ln -s ${dejavu_fonts}/share/fonts/truetype/* $out/${python.sitePackages}/kaleido/executable/xdg/fonts/truetype/dejavu/
|
||||
#ln -s ${lato}/share/fonts/lato/* $out/${python.sitePackages}/kaleido/executable/xdg/fonts/truetype/lato/
|
||||
'';
|
||||
|
||||
passthru.tests.kaleido = callPackage ./tests.nix { };
|
||||
|
||||
meta = {
|
||||
description = "Fast static image export for web-based visualization libraries with zero dependencies";
|
||||
homepage = "https://github.com/plotly/Kaleido";
|
||||
changelog = "https://github.com/plotly/Kaleido/releases";
|
||||
platforms = [
|
||||
"x86_64-linux"
|
||||
"x86_64-darwin"
|
||||
"aarch64-linux"
|
||||
"aarch64-darwin"
|
||||
];
|
||||
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; # Trust me, I'm not happy. But after literal hours of trying to reverse-engineer their build system and getting nowhere, I'll use the stupid binaries >:(
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ pandapip1 ];
|
||||
broken = stdenv.isDarwin; # Tests fail on darwin for some reason
|
||||
};
|
||||
}
|
15
pkgs/development/python-modules/kaleido/tests.nix
Normal file
15
pkgs/development/python-modules/kaleido/tests.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{
|
||||
runCommand,
|
||||
python,
|
||||
plotly,
|
||||
pandas,
|
||||
kaleido,
|
||||
}:
|
||||
|
||||
runCommand "${kaleido.pname}-tests" {
|
||||
nativeBuildInputs = [
|
||||
python
|
||||
plotly
|
||||
pandas
|
||||
];
|
||||
} "python3 ${./tests.py}"
|
11
pkgs/development/python-modules/kaleido/tests.py
Normal file
11
pkgs/development/python-modules/kaleido/tests.py
Normal file
@ -0,0 +1,11 @@
|
||||
import plotly.express as px
|
||||
import os
|
||||
import os.path
|
||||
|
||||
out = os.environ["out"]
|
||||
if not os.path.exists(out):
|
||||
os.makedirs(out)
|
||||
|
||||
outfile = os.path.join(out, "figure.png")
|
||||
fig = px.scatter(px.data.iris(), x="sepal_length", y="sepal_width", color="species")
|
||||
fig.write_image(outfile, engine="kaleido")
|
@ -5,6 +5,7 @@
|
||||
setuptools,
|
||||
packaging,
|
||||
tenacity,
|
||||
kaleido,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@ -29,6 +30,7 @@ buildPythonPackage rec {
|
||||
dependencies = [
|
||||
packaging
|
||||
tenacity
|
||||
kaleido
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "plotly" ];
|
||||
@ -41,6 +43,6 @@ buildPythonPackage rec {
|
||||
downloadPage = "https://github.com/plotly/plotly.py";
|
||||
homepage = "https://plot.ly/python/";
|
||||
license = with licenses; [ mit ];
|
||||
maintainers = [ ];
|
||||
maintainers = with maintainers; [ pandapip1 ];
|
||||
};
|
||||
}
|
||||
|
@ -4,24 +4,28 @@
|
||||
fetchPypi,
|
||||
pythonOlder,
|
||||
setuptools-scm,
|
||||
hypothesis,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sqids";
|
||||
version = "0.4.1";
|
||||
version = "0.5.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-/8P7/vY0kb7ouUCpgGU4g0Xb77BtSeQVt6nkdcogD50=";
|
||||
hash = "sha256-ZHeY59W/6yNuesRwnP1M2AhjCmxQ+AIF3xe0yT5WAUA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ setuptools-scm ];
|
||||
build-system = [ setuptools-scm ];
|
||||
|
||||
nativeCheckInputs = [ pytestCheckHook ];
|
||||
nativeCheckInputs = [
|
||||
hypothesis
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "sqids" ];
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pythonOlder,
|
||||
setuptools,
|
||||
wheel,
|
||||
pytestCheckHook,
|
||||
@ -10,16 +9,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "xdoctest";
|
||||
version = "1.1.6";
|
||||
version = "1.2.0";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Erotemic";
|
||||
repo = "xdoctest";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-L/RtD/e0ubW3j4623HQGfowXQYZjl7dDfwwbfxm3ll8=";
|
||||
hash = "sha256-1c3wnQ30J2OfnBffzGfPPt9St8VpLGmFGbifzbw+cOc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,67 +0,0 @@
|
||||
{ lib
|
||||
, maven
|
||||
, jre
|
||||
, makeWrapper
|
||||
, git
|
||||
, fetchFromGitHub
|
||||
, graphviz
|
||||
, ensureNewerSourcesHook
|
||||
}:
|
||||
|
||||
maven.buildMavenPackage rec {
|
||||
pname = "schemaspy";
|
||||
version = "6.1.1-SNAPSHOT";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "schemaspy";
|
||||
repo = "schemaspy";
|
||||
rev = "110b1614f9ae4aec0e4dc4e8f0e7c647274d3af6";
|
||||
hash = "sha256-X5B34zGhD/NxcK8TQvwdk1NljGJ1HwfBp47ocbE4HiU=";
|
||||
};
|
||||
|
||||
mvnParameters = "-Dmaven.test.skip=true";
|
||||
mvnFetchExtraArgs = {
|
||||
nativeBuildInputs = [
|
||||
# the build system gets angry if it doesn't see git (even though it's not
|
||||
# actually in a git repository)
|
||||
git
|
||||
maven
|
||||
];
|
||||
};
|
||||
mvnHash = "sha256-1x6cNt6t3FnjRNg8iNYflkyDnuPFXGKoxhVJWoz2jIU=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
git
|
||||
|
||||
# springframework boot gets angry about 1970 sources
|
||||
# fix from https://github.com/nix-community/mavenix/issues/25
|
||||
(ensureNewerSourcesHook { year = "1980"; })
|
||||
];
|
||||
|
||||
wrappedPath = lib.makeBinPath [
|
||||
graphviz
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
VERSION=${version}
|
||||
SEMVER_STR=${version}
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
install -D target/${pname}-${version}.jar $out/share/java/${pname}-${version}.jar
|
||||
|
||||
makeWrapper ${jre}/bin/java $out/bin/schemaspy \
|
||||
--add-flags "-jar $out/share/java/${pname}-${version}.jar" \
|
||||
--prefix PATH : "$wrappedPath"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://schemaspy.org";
|
||||
description = "Document your database simply and easily";
|
||||
mainProgram = "schemaspy";
|
||||
license = licenses.lgpl3Plus;
|
||||
maintainers = with maintainers; [ jraygauthier ];
|
||||
};
|
||||
}
|
||||
|
@ -18,19 +18,20 @@
|
||||
, libXi
|
||||
, libxkbcommon
|
||||
, ncurses
|
||||
, wayland
|
||||
, zlib
|
||||
}:
|
||||
|
||||
let
|
||||
buildNum = "2024-04-18-1396";
|
||||
buildNum = "2024-06-26-1341";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "rgp";
|
||||
version = "2.1";
|
||||
version = "2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gpuopen.com/download/radeon-developer-tool-suite/RadeonDeveloperToolSuite-${buildNum}.tgz";
|
||||
hash = "sha256-mP5tmq252IsWYVRGNKVib8ZbM5M4srUKXJ3x2ff4YhM=";
|
||||
hash = "sha256-mpm4hxWyunq6Z6kdSuk4jqnYOTuLFVe+XzXZvHJPf/Q=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
|
||||
@ -51,6 +52,7 @@ stdenv.mkDerivation {
|
||||
libXi
|
||||
libxkbcommon
|
||||
ncurses
|
||||
wayland
|
||||
zlib
|
||||
];
|
||||
|
||||
@ -65,13 +67,11 @@ stdenv.mkDerivation {
|
||||
# makeWrapper is needed so that executables are started from the opt
|
||||
# directory, where qt.conf and other tools are.
|
||||
# Unset Qt theme, it does not work if the nixos Qt version is different from the packaged one.
|
||||
# The packaged Qt version only supports X11, so enforce that.
|
||||
makeWrapper \
|
||||
$out/opt/rgp/$prog \
|
||||
$out/bin/$prog \
|
||||
--unset QT_QPA_PLATFORMTHEME \
|
||||
--unset QT_STYLE_OVERRIDE \
|
||||
--set QT_QPA_PLATFORM xcb \
|
||||
--prefix LD_LIBRARY_PATH : $out/opt/rgp/lib
|
||||
done
|
||||
'';
|
||||
|
@ -1,4 +1,4 @@
|
||||
import ./common.nix {
|
||||
version = "11.0.22";
|
||||
hash = "sha256-afFuUZ1csDuE60m+WKMriU/wObBZleTORLOCFU8qcJk=";
|
||||
version = "11.0.23";
|
||||
hash = "sha256-ISsDetefL9ow5aZ7vcSG1BgGwBO0FtDrd741mi8ORiY=";
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
import ./common.nix {
|
||||
version = "12.0.11";
|
||||
hash = "sha256-5fZMHb2ZpkoAFY/v124F+99Kq9vZypSYrG8QmQ/RK6k=";
|
||||
version = "12.0.12";
|
||||
hash = "sha256-CFdVT+AYK2KvXRzqMtTLz89BsXSuPolv+2u8EbTsil4=";
|
||||
}
|
||||
|
@ -31,13 +31,7 @@ stdenv.mkDerivation rec {
|
||||
expat
|
||||
];
|
||||
|
||||
CXXFLAGS = lib.concatStringsSep " " (lib.optionals stdenv.isDarwin [
|
||||
# see upstream bug: http://sphinxsearch.com/bugs/view.php?id=2578
|
||||
# workaround for "error: invalid suffix on literal
|
||||
"-Wno-reserved-user-defined-literal"
|
||||
# workaround for "error: non-constant-expression cannot be narrowed from type 'long' to 'int'"
|
||||
"-Wno-c++11-narrowing"
|
||||
]);
|
||||
CXXFLAGS = "-std=c++98";
|
||||
|
||||
meta = {
|
||||
description = "Open source full text search server";
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
pname = "patroni";
|
||||
version = "4.0.0";
|
||||
version = "4.0.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zalando";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "sha256-C0YjLak/m8ZMCzR5x22zjCATvzs72l56GRccN0Gur+4=";
|
||||
sha256 = "sha256-0Eqk9X/qO9MkETaVIOCS6vyvywAK175/CDCNHH+YatQ=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
|
@ -1,22 +1,26 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, darwin
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
rustPlatform,
|
||||
darwin,
|
||||
nix-update-script,
|
||||
testers,
|
||||
pgcat,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "pgcat";
|
||||
version = "1.1.1";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "postgresml";
|
||||
repo = "pgcat";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-BERxdGgPk8POnhLsyy4lKV4LCoHsJTmv2OhAOz6CKKc=";
|
||||
hash = "sha256-DHXUhAAOmPSt4aVp93I1y69of+MEboXJBZH50mzQTm8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-GwcqR8pEvz42NEmcuXpcoPdChzRBYsDEnllX62T8ulQ=";
|
||||
cargoHash = "sha256-QqwUEbWKSUuxzYjWpVpQuKZDiNib1gM2eZJ4y7XIzXY=";
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
darwin.apple_sdk.frameworks.Security
|
||||
@ -24,28 +28,21 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
checkFlags = [
|
||||
# requires network access
|
||||
"--skip=dns_cache::CachedResolver::lookup_ip"
|
||||
"--skip=dns_cache::CachedResolver::new"
|
||||
"--skip=dns_cache::CachedResolver"
|
||||
"--skip=dns_cache::tests::has_changed"
|
||||
"--skip=dns_cache::tests::incorrect_address"
|
||||
"--skip=dns_cache::tests::lookup_ip"
|
||||
"--skip=dns_cache::tests::new"
|
||||
"--skip=dns_cache::tests::thread"
|
||||
"--skip=dns_cache::tests::unknown_host"
|
||||
"--skip=dns_cache"
|
||||
];
|
||||
|
||||
doInstallCheck = true;
|
||||
installCheckPhase = ''
|
||||
$out/bin/pgcat --version | grep "pgcat ${version}"
|
||||
'';
|
||||
passthru = {
|
||||
updateScript = nix-update-script { };
|
||||
tests.version = testers.testVersion { package = pgcat; };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/postgresml/pgcat";
|
||||
description = "PostgreSQL pooler with sharding, load balancing and failover support";
|
||||
license = with licenses; [mit];
|
||||
changelog = "https://github.com/postgresml/pgcat/releases";
|
||||
license = with licenses; [ mit ];
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [cathalmullan];
|
||||
maintainers = with maintainers; [ cathalmullan ];
|
||||
mainProgram = "pgcat";
|
||||
};
|
||||
}
|
||||
|
@ -4,17 +4,20 @@
|
||||
, pkg-config
|
||||
, cctools
|
||||
, makeWrapper
|
||||
, mesa
|
||||
, python3
|
||||
, runCommand
|
||||
, vulkan-headers
|
||||
, vulkan-loader
|
||||
, vulkan-validation-layers
|
||||
}:
|
||||
let
|
||||
# From https://github.com/google/amber/blob/main/DEPS
|
||||
glslang = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "glslang";
|
||||
rev = "81cc10a498b25a90147cccd6e8939493c1e9e20e";
|
||||
hash = "sha256-jTOxZ1nU7kvtdWjPzyIp/5ZeKw3JtYyqhlFeIE7CyX8=";
|
||||
rev = "e8dd0b6903b34f1879520b444634c75ea2deedf5";
|
||||
hash = "sha256-B6jVCeoFjd2H6+7tIses+Kj8DgHS6E2dkVzQAIzDHEc=";
|
||||
};
|
||||
|
||||
lodepng = fetchFromGitHub {
|
||||
@ -27,34 +30,34 @@ let
|
||||
shaderc = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "shaderc";
|
||||
rev = "e72186b66bb90ed06aaf15cbdc9a053581a0616b";
|
||||
hash = "sha256-hd1IGsWksgAfB8Mq5yZOzSyNGxXsCJxb350pD/Gcskk=";
|
||||
rev = "f59f0d11b80fd622383199c867137ededf89d43b";
|
||||
hash = "sha256-kHz8Io5GZDWv1FjPyBWRpnKhGygKhSU4L9zl/AKXZlU=";
|
||||
};
|
||||
|
||||
spirv-headers = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Headers";
|
||||
rev = "d13b52222c39a7e9a401b44646f0ca3a640fbd47";
|
||||
hash = "sha256-bjiWGSmpEbydXtCLP8fRZfPBvdCzBoJxKXTx3BroQbg=";
|
||||
rev = "5e3ad389ee56fca27c9705d093ae5387ce404df4";
|
||||
hash = "sha256-gjF5mVTXqU/GZzr2S6oKGChgvqqHcQSrEq/ePP2yJys=";
|
||||
};
|
||||
|
||||
spirv-tools = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Tools";
|
||||
rev = "d87f61605b3647fbceae9aaa922fce0031afdc63";
|
||||
hash = "sha256-lB2i6wjehIFDOQdIPUvCy3zzcnJSsR5vNawPhGmb0es=";
|
||||
rev = "9241a58a8028c49510bc174b6c970e3c2b4b8e51";
|
||||
hash = "sha256-0qHUpwNDJI2jV4h68QaTNPIwTPxwTt0iAUnMXqFCiJE=";
|
||||
};
|
||||
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "amber";
|
||||
version = "unstable-2023-09-02";
|
||||
version = "unstable-2024-08-21";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = pname;
|
||||
rev = "8e90b2d2f532bcd4a80069e3f37a9698209a21bc";
|
||||
hash = "sha256-LuNCND/NXoNbbTWv7RYQUkq2QXL1qXR27uHwFIz0DXg=";
|
||||
repo = "amber";
|
||||
rev = "66399a35927606a435bf7a59756e87e6cb5a0013";
|
||||
hash = "sha256-PCO64zI/vzp4HyGz5WpeYpCBeaWjTvz1punWsTz1yiM=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
@ -92,10 +95,53 @@ stdenv.mkDerivation rec {
|
||||
--suffix VK_LAYER_PATH : ${vulkan-validation-layers}/share/vulkan/explicit_layer.d
|
||||
'';
|
||||
|
||||
passthru.tests.lavapipe = runCommand "vulkan-cts-tests-lavapipe" {
|
||||
nativeBuildInputs = [ finalAttrs.finalPackage mesa.llvmpipeHook ];
|
||||
} ''
|
||||
cat > test.amber <<EOF
|
||||
#!amber
|
||||
# Simple amber compute shader.
|
||||
|
||||
SHADER compute kComputeShader GLSL
|
||||
#version 450
|
||||
|
||||
layout(binding = 3) buffer block {
|
||||
uvec2 values[];
|
||||
};
|
||||
|
||||
void main() {
|
||||
values[gl_WorkGroupID.x + gl_WorkGroupID.y * gl_NumWorkGroups.x] =
|
||||
gl_WorkGroupID.xy;
|
||||
}
|
||||
END # shader
|
||||
|
||||
BUFFER kComputeBuffer DATA_TYPE vec2<int32> SIZE 524288 FILL 0
|
||||
|
||||
PIPELINE compute kComputePipeline
|
||||
ATTACH kComputeShader
|
||||
BIND BUFFER kComputeBuffer AS storage DESCRIPTOR_SET 0 BINDING 3
|
||||
END # pipeline
|
||||
|
||||
RUN kComputePipeline 256 256 1
|
||||
|
||||
# Four corners
|
||||
EXPECT kComputeBuffer IDX 0 EQ 0 0
|
||||
EXPECT kComputeBuffer IDX 2040 EQ 255 0
|
||||
EXPECT kComputeBuffer IDX 522240 EQ 0 255
|
||||
EXPECT kComputeBuffer IDX 524280 EQ 255 255
|
||||
|
||||
# Center
|
||||
EXPECT kComputeBuffer IDX 263168 EQ 128 128
|
||||
EOF
|
||||
|
||||
amber test.amber
|
||||
touch $out
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Multi-API shader test framework";
|
||||
homepage = "https://github.com/google/amber";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ Flakebi ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
@ -28,11 +28,11 @@ let
|
||||
sslPkg = sslPkgs.${sslLibrary};
|
||||
in stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "haproxy";
|
||||
version = "3.0.3";
|
||||
version = "3.0.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.haproxy.org/download/${lib.versions.majorMinor finalAttrs.version}/src/haproxy-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-Oac8GHoLANJgLLP/ylLRtZ2Q8JAyc0/owD6y4pp9Gd8=";
|
||||
hash = "sha256-qr/ZitpyG7+2j3gFWGztA3P7TI1z4Y+qlAVaFsIJaTY";
|
||||
};
|
||||
|
||||
buildInputs = [ sslPkg zlib libxcrypt ]
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloadmirror.intel.com/736634/mlc_v${version}.tgz";
|
||||
sha256 = "3vNI/CQwyY4KMFest1wkVYecsxigjXyGIUIKai979W4=";
|
||||
sha256 = "EDa5V56qCPQxgCu4eddYiWDrk7vkYS0jisnG004L+jQ=";
|
||||
};
|
||||
|
||||
sourceRoot = "Linux";
|
||||
|
@ -464,6 +464,7 @@ mapAliases ({
|
||||
firmwareLinuxNonfree = linux-firmware; # Added 2022-01-09
|
||||
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
|
||||
fit-trackee = fittrackee; # added 2024-09-03
|
||||
flashrom-stable = flashprog; # Added 2024-03-01
|
||||
flatbuffers_2_0 = flatbuffers; # Added 2022-05-12
|
||||
flintqs = throw "FlintQS has been removed due to lack of maintenance and security issues; use SageMath or FLINT instead"; # Added 2024-03-21
|
||||
|
@ -18850,8 +18850,6 @@ with pkgs;
|
||||
|
||||
shellharden = callPackage ../development/tools/shellharden { };
|
||||
|
||||
schemaspy = callPackage ../development/tools/database/schemaspy { };
|
||||
|
||||
scenebuilder = callPackage ../development/tools/scenebuilder { };
|
||||
|
||||
scenic-view = callPackage ../development/tools/scenic-view { };
|
||||
@ -25949,8 +25947,6 @@ with pkgs;
|
||||
|
||||
### SERVERS / GEOSPATIAL
|
||||
|
||||
fit-trackee = callPackage ../servers/geospatial/fit-trackee { };
|
||||
|
||||
martin = callPackage ../servers/geospatial/martin {
|
||||
inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
|
||||
};
|
||||
@ -28903,7 +28899,7 @@ with pkgs;
|
||||
|
||||
backintime-common = callPackage ../applications/networking/sync/backintime/common.nix { };
|
||||
|
||||
backintime-qt = libsForQt5.callPackage ../applications/networking/sync/backintime/qt.nix { };
|
||||
backintime-qt = qt6.callPackage ../applications/networking/sync/backintime/qt.nix { };
|
||||
|
||||
backintime = backintime-qt;
|
||||
|
||||
@ -31877,10 +31873,6 @@ with pkgs;
|
||||
|
||||
clerk = callPackage ../applications/audio/clerk { };
|
||||
|
||||
jujutsu = callPackage ../applications/version-management/jujutsu {
|
||||
inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
|
||||
};
|
||||
|
||||
nbstripout = callPackage ../applications/version-management/nbstripout { };
|
||||
|
||||
ncmpc = callPackage ../applications/audio/ncmpc { };
|
||||
@ -32819,9 +32811,17 @@ with pkgs;
|
||||
eiskaltdcpp = libsForQt5.callPackage ../applications/networking/p2p/eiskaltdcpp { };
|
||||
|
||||
qemu = callPackage ../applications/virtualization/qemu {
|
||||
inherit (darwin.apple_sdk.frameworks) CoreServices Cocoa Hypervisor vmnet;
|
||||
inherit (darwin.apple_sdk_12_3.frameworks) CoreServices Cocoa Hypervisor Kernel vmnet;
|
||||
inherit (darwin.stubs) rez setfile;
|
||||
inherit (darwin) sigtool;
|
||||
stdenv =
|
||||
if stdenv.hostPlatform.isDarwin then
|
||||
overrideSDK stdenv {
|
||||
darwinSdkVersion = "12.3";
|
||||
darwinMinVersion = "12.0";
|
||||
}
|
||||
else
|
||||
stdenv;
|
||||
};
|
||||
|
||||
qemu-python-utils = python3Packages.toPythonApplication (
|
||||
|
@ -6616,6 +6616,8 @@ self: super: with self; {
|
||||
|
||||
kaldi-active-grammar = callPackage ../development/python-modules/kaldi-active-grammar { };
|
||||
|
||||
kaleido = callPackage ../development/python-modules/kaleido { };
|
||||
|
||||
kanidm = callPackage ../development/python-modules/kanidm { };
|
||||
|
||||
kaptan = callPackage ../development/python-modules/kaptan { };
|
||||
|
Loading…
Reference in New Issue
Block a user