Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2024-05-27 00:02:54 +00:00 committed by GitHub
commit 7b88bc39ef
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
55 changed files with 1102 additions and 2510 deletions

View File

@ -40,6 +40,82 @@ If the `moduleNames` argument is omitted, `hasPkgConfigModules` will use `meta.p
:::
## `lycheeLinkCheck` {#tester-lycheeLinkCheck}
Check a packaged static site's links with the [`lychee` package](https://search.nixos.org/packages?show=lychee&type=packages&query=lychee).
You may use Nix to reproducibly build static websites, such as for software documentation.
Some packages will install documentation in their `out` or `doc` outputs, or maybe you have dedicated package where you've made your static site reproducible by running a generator, such as [Hugo](https://gohugo.io/) or [mdBook](https://rust-lang.github.io/mdBook/), in a derivation.
If you have a static site that can be built with Nix, you can use `lycheeLinkCheck` to check that the hyperlinks in your site are correct, and do so as part of your Nix workflow and CI.
:::{.example #ex-lycheelinkcheck}
# Check hyperlinks in the `nix` documentation
```nix
testers.lycheeLinkCheck {
site = nix.doc + "/share/doc/nix/manual";
}
```
:::
### Return value {#tester-lycheeLinkCheck-return}
This tester produces a package that does not produce useful outputs, but only succeeds if the hyperlinks in your site are correct. The build log will list the broken links.
It has two modes:
- Build the returned derivation; its build process will check that internal hyperlinks are correct. This runs in the sandbox, so it will not check external hyperlinks, but it is quick and reliable.
- Invoke the `.online` attribute with [`nix run`](https://nixos.org/manual/nix/stable/command-ref/new-cli/nix3-run) ([experimental](https://nixos.org/manual/nix/stable/contributing/experimental-features#xp-feature-nix-command)). This runs outside the sandbox, and checks that both internal and external hyperlinks are correct.
Example:
```shell
nix run nixpkgs#lychee.tests.ok.online
```
### Inputs {#tester-lycheeLinkCheck-inputs}
`site` (path or derivation) {#tester-lycheeLinkCheck-param-site}
: The path to the files to check.
`remap` (attribe set, optional) {#tester-lycheeLinkCheck-param-remap}
: An attribute set where the attribute names are regular expressions.
The values should be strings, derivations, or path values.
In the returned check's default configuration, external URLs are only checked when you run the `.online` attribute.
By adding remappings, you can check offline that URLs to external resources are correct, by providing a stand-in from the file system.
Before checking the existence of a URL, the regular expressions are matched and replaced by their corresponding values.
Example:
```nix
{
"https://nix\\.dev/manual/nix/[a-z0-9.-]*" = "${nix.doc}/share/doc/nix/manual";
"https://nixos\\.org/manual/nix/(un)?stable" = "${emptyDirectory}/placeholder-to-disallow-old-nix-docs-urls";
}
```
Store paths in the attribute values are automatically prefixed with `file://`, because lychee requires this for paths in the file system.
If this is a problem, or if you need to control the order in which replacements are performed, use `extraConfig.remap` instead.
`extraConfig` (attribute set) {#tester-lycheeLinkCheck-param-extraConfig}
: Extra configuration to pass to `lychee` in its [configuration file](https://github.com/lycheeverse/lychee/blob/master/lychee.example.toml).
It is automatically [translated](https://nixos.org/manual/nixos/stable/index.html#sec-settings-nix-representable) to TOML.
Example: `{ "include_verbatim" = true; }`
`lychee` (derivation, optional) {#tester-lycheeLinkCheck-param-lychee}
: The `lychee` package to use.
## `testVersion` {#tester-testVersion}
Checks that the output from running a command contains the specified version string in it as a whole word.

View File

@ -1882,6 +1882,12 @@
fingerprint = "BF47 81E1 F304 1ADF 18CE C401 DE16 C7D1 536D A72F";
}];
};
astronaut0212 = {
email = "goatastronaut0212@proton.me";
github = "goatastronaut0212";
githubId = 119769817;
name = "goatastronaut0212";
};
astsmtl = {
email = "astsmtl@yandex.ru";
github = "astsmtl";
@ -19771,12 +19777,6 @@
githubId = 36031171;
name = "Supa";
};
superbo = {
email = "supernbo@gmail.com";
github = "SuperBo";
githubId = 2666479;
name = "Y Nguyen";
};
superherointj = {
email = "sergiomarcelo@yandex.com";
github = "superherointj";

View File

@ -366,7 +366,7 @@ In addition to numerous new and upgraded packages, this release includes the fol
__Note:__ secrets from these files will be leaked into the store unless you use a
[**file**-provider or env-var](https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#file-provider) for secrets!
- [services.grafana.provision.notifiers](#opt-services.grafana.provision.notifiers) is not affected by this change because
- `services.grafana.provision.notifiers` is not affected by this change because
this feature is deprecated by Grafana and will probably be removed in Grafana 10.
It's recommended to use `services.grafana.provision.alerting.contactPoints` instead.

View File

@ -1,46 +1,41 @@
{ config
, lib
, pkgs
, ...
}:
{ config, lib, pkgs, ... }:
let
cfg = config.programs.hyprland;
finalPortalPackage = cfg.portalPackage.override {
hyprland = cfg.finalPackage;
};
wayland-lib = import ./lib.nix { inherit lib; };
in
{
options.programs.hyprland = {
enable = lib.mkEnableOption null // {
description = ''
Whether to enable Hyprland, the dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
enable = lib.mkEnableOption ''
Hyprland, the dynamic tiling Wayland compositor that doesn't sacrifice on its looks.
You can manually launch Hyprland by executing {command}`Hyprland` on a TTY.
A configuration file will be generated in {file}`~/.config/hypr/hyprland.conf`.
See <https://wiki.hyprland.org> for more information'';
You can manually launch Hyprland by executing {command}`Hyprland` on a TTY.
A configuration file will be generated in {file}`~/.config/hypr/hyprland.conf`.
See <https://wiki.hyprland.org> for more information.
package = lib.mkPackageOption pkgs "hyprland" {
extraDescription = ''
If the package is not overridable with `enableXWayland`, then the module option
{option}`xwayland` will have no effect.
'';
};
package = lib.mkPackageOption pkgs "hyprland" { };
finalPackage = lib.mkOption {
type = lib.types.package;
readOnly = true;
default = cfg.package.override {
} // {
apply = p: wayland-lib.genFinalPackage p {
enableXWayland = cfg.xwayland.enable;
};
defaultText = lib.literalExpression
"`programs.hyprland.package` with applied configuration";
description = ''
The Hyprland package after applying configuration.
'';
};
portalPackage = lib.mkPackageOption pkgs "xdg-desktop-portal-hyprland" { };
portalPackage = lib.mkPackageOption pkgs "xdg-desktop-portal-hyprland" {
extraDescription = ''
If the package is not overridable with `hyprland`, then the Hyprland package
used by the portal may differ from the one set in the module option {option}`package`.
'';
} // {
apply = p: wayland-lib.genFinalPackage p {
hyprland = cfg.package;
};
};
xwayland.enable = lib.mkEnableOption ("XWayland") // { default = true; };
xwayland.enable = lib.mkEnableOption "XWayland" // { default = true; };
systemd.setPath.enable = lib.mkEnableOption null // {
default = true;
@ -53,33 +48,30 @@ in
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.finalPackage ];
config = lib.mkIf cfg.enable (lib.mkMerge [
{
environment.systemPackages = [ cfg.package ];
fonts.enableDefaultPackages = lib.mkDefault true;
hardware.opengl.enable = lib.mkDefault true;
# To make a Hyprland session available if a display manager like SDDM is enabled:
services.displayManager.sessionPackages = [ cfg.package ];
programs = {
dconf.enable = lib.mkDefault true;
xwayland.enable = lib.mkDefault cfg.xwayland.enable;
};
xdg.portal = {
extraPortals = [ cfg.portalPackage ];
configPackages = lib.mkDefault [ cfg.package ];
};
security.polkit.enable = true;
systemd = lib.mkIf cfg.systemd.setPath.enable {
user.extraConfig = ''
DefaultEnvironment="PATH=$PATH:/run/current-system/sw/bin:/etc/profiles/per-user/%u/bin:/run/wrappers/bin"
'';
};
}
services.displayManager.sessionPackages = [ cfg.finalPackage ];
xdg.portal = {
enable = lib.mkDefault true;
extraPortals = [ finalPortalPackage ];
configPackages = lib.mkDefault [ cfg.finalPackage ];
};
systemd = lib.mkIf cfg.systemd.setPath.enable {
user.extraConfig = ''
DefaultEnvironment="PATH=$PATH:/run/current-system/sw/bin:/etc/profiles/per-user/%u/bin:/run/wrappers/bin"
'';
};
};
(import ./wayland-session.nix {
inherit lib pkgs;
xwayland = cfg.xwayland.enable;
})
]);
imports = [
(lib.mkRemovedOptionModule

View File

@ -0,0 +1,12 @@
{ lib }:
{
genFinalPackage = pkg: args:
let
expectedArgs = with lib;
lib.naturalSort (lib.attrNames args);
existingArgs = with lib;
naturalSort (intersectLists expectedArgs (attrNames (functionArgs pkg.override)));
in
if existingArgs != expectedArgs then pkg else pkg.override args;
}

View File

@ -1,37 +1,40 @@
{
config,
pkgs,
lib,
...
}:
{ config, lib, pkgs, ... }:
let
cfg = config.programs.river;
in {
wayland-lib = import ./lib.nix { inherit lib; };
in
{
options.programs.river = {
enable = lib.mkEnableOption "river, a dynamic tiling Wayland compositor";
package = lib.mkPackageOption pkgs "river" {
nullable = true;
extraDescription = ''
If the package is not overridable with `xwaylandSupport`, then the module option
{option}`xwayland` will have no effect.
Set to `null` to not add any River package to your path.
This should be done if you want to use the Home Manager River module to install River.
'';
} // {
apply = p: if p == null then null else
wayland-lib.genFinalPackage p {
xwaylandSupport = cfg.xwayland.enable;
};
};
xwayland.enable = lib.mkEnableOption "XWayland" // { default = true; };
extraPackages = lib.mkOption {
type = with lib.types; listOf package;
default = with pkgs; [
swaylock
foot
dmenu
];
default = with pkgs; [ swaylock foot dmenu ];
defaultText = lib.literalExpression ''
with pkgs; [ swaylock foot dmenu ];
'';
example = lib.literalExpression ''
with pkgs; [
termite rofi light
]
with pkgs; [ termite rofi light ]
'';
description = ''
Extra packages to be installed system wide. See
@ -41,19 +44,22 @@ in {
};
};
config =
lib.mkIf cfg.enable (lib.mkMerge [
{
environment.systemPackages = lib.optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
config = lib.mkIf cfg.enable (lib.mkMerge [
{
environment.systemPackages = lib.optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
# To make a river session available if a display manager like SDDM is enabled:
services.displayManager.sessionPackages = lib.optionals (cfg.package != null) [ cfg.package ];
# To make a river session available if a display manager like SDDM is enabled:
services.displayManager.sessionPackages = lib.optional (cfg.package != null) cfg.package;
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
xdg.portal.config.river.default = lib.mkDefault [ "wlr" "gtk" ];
}
(import ./wayland-session.nix { inherit lib pkgs; })
]);
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
xdg.portal.config.river.default = lib.mkDefault [ "wlr" "gtk" ];
}
(import ./wayland-session.nix {
inherit lib pkgs;
xwayland = cfg.xwayland.enable;
})
]);
meta.maintainers = with lib.maintainers; [ GaetanLepage ];
}

View File

@ -1,52 +1,11 @@
{ config, pkgs, lib, ... }:
{ config, lib, pkgs, ... }:
let
cfg = config.programs.sway;
wrapperOptions = lib.types.submodule {
options =
let
mkWrapperFeature = default: description: lib.mkOption {
type = lib.types.bool;
inherit default;
example = !default;
description = "Whether to make use of the ${description}";
};
in {
base = mkWrapperFeature true ''
base wrapper to execute extra session commands and prepend a
dbus-run-session to the sway command.
'';
gtk = mkWrapperFeature false ''
wrapGAppsHook wrapper to execute sway with required environment
variables for GTK applications.
'';
};
};
genFinalPackage = pkg:
let
expectedArgs = lib.naturalSort [
"extraSessionCommands"
"extraOptions"
"withBaseWrapper"
"withGtkWrapper"
"isNixOS"
];
existedArgs = with lib;
naturalSort
(intersectLists expectedArgs (attrNames (functionArgs pkg.override)));
in if existedArgs != expectedArgs then
pkg
else
pkg.override {
extraSessionCommands = cfg.extraSessionCommands;
extraOptions = cfg.extraOptions;
withBaseWrapper = cfg.wrapperFeatures.base;
withGtkWrapper = cfg.wrapperFeatures.gtk;
isNixOS = true;
};
in {
wayland-lib = import ./lib.nix { inherit lib; };
in
{
options.programs.sway = {
enable = lib.mkEnableOption ''
Sway, the i3-compatible tiling Wayland compositor. You can manually launch
@ -55,28 +14,36 @@ in {
<https://github.com/swaywm/sway/wiki> and
"man 5 sway" for more information'';
package = lib.mkOption {
type = with lib.types; nullOr package;
default = pkgs.sway;
apply = p: if p == null then null else genFinalPackage p;
defaultText = lib.literalExpression "pkgs.sway";
description = ''
Sway package to use. If the package does not contain the override arguments
`extraSessionCommands`, `extraOptions`, `withBaseWrapper`, `withGtkWrapper`,
`isNixOS`, then the module options {option}`wrapperFeatures`,
{option}`wrapperFeatures` and {option}`wrapperFeatures` will have no effect.
Set to `null` to not add any Sway package to your path. This should be done if
you want to use the Home Manager Sway module to install Sway.
package = lib.mkPackageOption pkgs "sway" {
nullable = true;
extraDescription = ''
If the package is not overridable with `extraSessionCommands`, `extraOptions`,
`withBaseWrapper`, `withGtkWrapper`, `enableXWayland` and `isNixOS`,
then the module options {option}`wrapperFeatures`, {option}`extraSessionCommands`,
{option}`extraOptions` and {option}`xwayland` will have no effect.
Set to `null` to not add any Sway package to your path.
This should be done if you want to use the Home Manager Sway module to install Sway.
'';
} // {
apply = p: if p == null then null else
wayland-lib.genFinalPackage p {
extraSessionCommands = cfg.extraSessionCommands;
extraOptions = cfg.extraOptions;
withBaseWrapper = cfg.wrapperFeatures.base;
withGtkWrapper = cfg.wrapperFeatures.gtk;
enableXWayland = cfg.xwayland.enable;
isNixOS = true;
};
};
wrapperFeatures = lib.mkOption {
type = wrapperOptions;
default = { };
example = { gtk = true; };
description = ''
Attribute set of features to enable in the wrapper.
'';
wrapperFeatures = {
base = lib.mkEnableOption ''
the base wrapper to execute extra session commands and prepend a
dbus-run-session to the sway command'' // { default = true; };
gtk = lib.mkEnableOption ''
the wrapGAppsHook wrapper to execute sway with required environment
variables for GTK applications'';
};
extraSessionCommands = lib.mkOption {
@ -114,19 +81,16 @@ in {
'';
};
xwayland.enable = lib.mkEnableOption "XWayland" // { default = true; };
extraPackages = lib.mkOption {
type = with lib.types; listOf package;
default = with pkgs; [
swaylock swayidle foot dmenu wmenu
];
default = with pkgs; [ swaylock swayidle foot dmenu wmenu ];
defaultText = lib.literalExpression ''
with pkgs; [ swaylock swayidle foot dmenu wmenu ];
'';
example = lib.literalExpression ''
with pkgs; [
i3status i3status-rust
termite rofi light
]
with pkgs; [ i3status i3status-rust termite rofi light ]
'';
description = ''
Extra packages to be installed system wide. See
@ -135,46 +99,50 @@ in {
for a list of useful software.
'';
};
};
config = lib.mkIf cfg.enable
(lib.mkMerge [
{
assertions = [
{
assertion = cfg.extraSessionCommands != "" -> cfg.wrapperFeatures.base;
message = ''
The extraSessionCommands for Sway will not be run if
wrapperFeatures.base is disabled.
'';
}
];
config = lib.mkIf cfg.enable (lib.mkMerge [
{
assertions = [
{
assertion = cfg.extraSessionCommands != "" -> cfg.wrapperFeatures.base;
message = ''
The extraSessionCommands for Sway will not be run if wrapperFeatures.base is disabled.
'';
}
];
environment = {
systemPackages = lib.optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
# Needed for the default wallpaper:
pathsToLink = lib.optionals (cfg.package != null) [ "/share/backgrounds/sway" ];
etc = {
"sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" ''
# Import the most important environment variables into the D-Bus and systemd
# user environments (e.g. required for screen sharing and Pinentry prompts):
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
'';
} // lib.optionalAttrs (cfg.package != null) {
"sway/config".source = lib.mkOptionDefault "${cfg.package}/etc/sway/config";
};
environment = {
systemPackages = lib.optional (cfg.package != null) cfg.package ++ cfg.extraPackages;
# Needed for the default wallpaper:
pathsToLink = lib.optional (cfg.package != null) "/share/backgrounds/sway";
etc = {
"sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" ''
# Import the most important environment variables into the D-Bus and systemd
# user environments (e.g. required for screen sharing and Pinentry prompts):
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP
'';
} // lib.optionalAttrs (cfg.package != null) {
"sway/config".source = lib.mkOptionDefault "${cfg.package}/etc/sway/config";
};
};
programs.gnupg.agent.pinentryPackage = lib.mkDefault pkgs.pinentry-gnome3;
programs.gnupg.agent.pinentryPackage = lib.mkDefault pkgs.pinentry-gnome3;
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
xdg.portal.config.sway.default = lib.mkDefault [ "wlr" "gtk" ];
# To make a Sway session available if a display manager like SDDM is enabled:
services.displayManager.sessionPackages = lib.optional (cfg.package != null) cfg.package;
# To make a Sway session available if a display manager like SDDM is enabled:
services.displayManager.sessionPackages = lib.optionals (cfg.package != null) [ cfg.package ]; }
(import ./wayland-session.nix { inherit lib pkgs; })
]);
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050913
xdg.portal.config.sway.default = lib.mkDefault [ "wlr" "gtk" ];
}
(import ./wayland-session.nix {
inherit lib pkgs;
xwayland = cfg.xwayland.enable;
})
]);
meta.maintainers = with lib.maintainers; [ primeos colemickens ];
}

View File

@ -1,23 +1,18 @@
{ lib, pkgs, ... }: {
security = {
polkit.enable = true;
pam.services.swaylock = {};
};
{ lib, pkgs, xwayland ? true }:
hardware.opengl.enable = lib.mkDefault true;
fonts.enableDefaultPackages = lib.mkDefault true;
{
security = {
polkit.enable = true;
pam.services.swaylock = {};
};
programs = {
dconf.enable = lib.mkDefault true;
xwayland.enable = lib.mkDefault true;
};
hardware.opengl.enable = lib.mkDefault true;
fonts.enableDefaultPackages = lib.mkDefault true;
xdg.portal = {
enable = lib.mkDefault true;
programs = {
dconf.enable = lib.mkDefault true;
xwayland.enable = lib.mkDefault xwayland;
};
extraPortals = [
# For screen sharing
pkgs.xdg-desktop-portal-wlr
];
};
xdg.portal.wlr.enable = lib.mkDefault true;
}

View File

@ -47,13 +47,6 @@ let
datasourceFileOrDir = mkProvisionCfg "datasource" "datasources" cfg.provision.datasources;
dashboardFileOrDir = mkProvisionCfg "dashboard" "providers" cfg.provision.dashboards;
notifierConfiguration = {
apiVersion = 1;
notifiers = cfg.provision.notifiers;
};
notifierFileOrDir = pkgs.writeText "notifier.yaml" (builtins.toJSON notifierConfiguration);
generateAlertingProvisioningYaml = x:
if (cfg.provision.alerting."${x}".path == null)
then provisioningSettingsFormat.generate "${x}.yaml" cfg.provision.alerting."${x}".settings
@ -74,10 +67,9 @@ let
fi
'';
provisionConfDir = pkgs.runCommand "grafana-provisioning" { nativeBuildInputs = [ pkgs.xorg.lndir ]; } ''
mkdir -p $out/{alerting,datasources,dashboards,notifiers,plugins}
mkdir -p $out/{alerting,datasources,dashboards,plugins}
${ln { src = datasourceFileOrDir; dir = "datasources"; filename = "datasource"; }}
${ln { src = dashboardFileOrDir; dir = "dashboards"; filename = "dashboard"; }}
${ln { src = notifierFileOrDir; dir = "notifiers"; filename = "notifier"; }}
${ln { src = rulesFileOrDir; dir = "alerting"; filename = "rules"; }}
${ln { src = contactPointsFileOrDir; dir = "alerting"; filename = "contactPoints"; }}
${ln { src = policiesFileOrDir; dir = "alerting"; filename = "policies"; }}
@ -161,73 +153,13 @@ let
};
};
};
grafanaTypes.notifierConfig = types.submodule {
options = {
name = mkOption {
type = types.str;
default = "default";
description = "Notifier name.";
};
type = mkOption {
type = types.enum [ "dingding" "discord" "email" "googlechat" "hipchat" "kafka" "line" "teams" "opsgenie" "pagerduty" "prometheus-alertmanager" "pushover" "sensu" "sensugo" "slack" "telegram" "threema" "victorops" "webhook" ];
description = "Notifier type.";
};
uid = mkOption {
type = types.str;
description = "Unique notifier identifier.";
};
org_id = mkOption {
type = types.int;
default = 1;
description = "Organization ID.";
};
org_name = mkOption {
type = types.str;
default = "Main Org.";
description = "Organization name.";
};
is_default = mkOption {
type = types.bool;
description = "Is the default notifier.";
default = false;
};
send_reminder = mkOption {
type = types.bool;
default = true;
description = "Should the notifier be sent reminder notifications while alerts continue to fire.";
};
frequency = mkOption {
type = types.str;
default = "5m";
description = "How frequently should the notifier be sent reminders.";
};
disable_resolve_message = mkOption {
type = types.bool;
default = false;
description = "Turn off the message that sends when an alert returns to OK.";
};
settings = mkOption {
type = types.nullOr types.attrs;
default = null;
description = "Settings for the notifier type.";
};
secure_settings = mkOption {
type = types.nullOr types.attrs;
default = null;
description = ''
Secure settings for the notifier type. Please note that the contents of this option
will end up in a world-readable Nix store. Use the file provider
pointing at a reasonably secured file in the local filesystem
to work around that. Look at the documentation for details:
<https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#file-provider>
'';
};
};
};
in
{
imports = [
(mkRemovedOptionModule [ "services" "grafana" "provision" "notifiers" ] ''
Notifiers (services.grafana.provision.notifiers) were removed in Grafana 11.
'')
(mkRenamedOptionModule [ "services" "grafana" "protocol" ] [ "services" "grafana" "settings" "server" "protocol" ])
(mkRenamedOptionModule [ "services" "grafana" "addr" ] [ "services" "grafana" "settings" "server" "http_addr" ])
(mkRenamedOptionModule [ "services" "grafana" "port" ] [ "services" "grafana" "settings" "server" "http_port" ])
@ -1256,15 +1188,6 @@ in
};
};
notifiers = mkOption {
description = "Grafana notifier configuration.";
default = [ ];
type = types.listOf grafanaTypes.notifierConfig;
apply = x: map _filter x;
};
alerting = {
rules = {
path = mkOption {
@ -1746,12 +1669,6 @@ in
Use file provider or an env-var instead.
'';
# Warn about deprecated notifiers.
deprecatedNotifiers = optional (cfg.provision.notifiers != [ ]) ''
Notifiers are deprecated upstream and will be removed in Grafana 11.
Use `services.grafana.provision.alerting.contactPoints` instead.
'';
# Ensure that `secureJsonData` of datasources provisioned via `datasources.settings`
# only uses file/env providers.
secureJsonDataWithoutFileProvider = optional
@ -1770,15 +1687,10 @@ in
Declarations in the `secureJsonData`-block of a datasource will be leaked to the
Nix store unless a file-provider or an env-var is used!
'';
notifierSecureSettingsWithoutFileProvider = optional
(any (x: x.secure_settings != null) cfg.provision.notifiers)
"Notifier secure settings will be stored as plaintext in the Nix store! Use file provider instead.";
in
passwordWithoutFileProvider
++ deprecatedNotifiers
++ secureJsonDataWithoutFileProvider
++ notifierSecureSettingsWithoutFileProvider;
;
environment.systemPackages = [ cfg.package ];

View File

@ -1,7 +1,7 @@
import ../../make-test-python.nix ({ lib, pkgs, ... }:
let
inherit (lib) mkMerge nameValuePair maintainers;
inherit (lib) mkMerge maintainers;
baseGrafanaConf = {
services.grafana = {
@ -33,35 +33,6 @@ let
};
extraNodeConfs = {
provisionLegacyNotifiers = {
services.grafana.provision = {
datasources.settings = {
apiVersion = 1;
datasources = [{
name = "Test Datasource";
type = "testdata";
access = "proxy";
uid = "test_datasource";
}];
};
dashboards.settings = {
apiVersion = 1;
providers = [{
name = "default";
options.path = "/var/lib/grafana/dashboards";
}];
};
notifiers = [{
uid = "test_notifiers";
name = "Test Notifiers";
type = "email";
settings = {
singleEmail = true;
addresses = "test@test.com";
};
}];
};
};
provisionNix = {
services.grafana.provision = {
datasources.settings = {
@ -242,15 +213,5 @@ in {
machine.succeed(
"curl -sSfN -u testadmin:snakeoilpwd http://127.0.0.1:3000/api/v1/provisioning/mute-timings | grep Test\ Mute\ Timing"
)
with subtest("Successful notifiers provision"):
provisionLegacyNotifiers.wait_for_unit("grafana.service")
provisionLegacyNotifiers.wait_for_open_port(3000)
print(provisionLegacyNotifiers.succeed(
"curl -sSfN -u testadmin:snakeoilpwd http://127.0.0.1:3000/api/alert-notifications/uid/test_notifiers"
))
provisionLegacyNotifiers.succeed(
"curl -sSfN -u testadmin:snakeoilpwd http://127.0.0.1:3000/api/alert-notifications/uid/test_notifiers | grep Test\ Notifiers"
)
'';
})

View File

@ -9,7 +9,6 @@ with import ../lib/testing-python.nix { inherit system pkgs; };
let
packages = with pkgs; {
"default" = teleport;
"13" = teleport_13;
"14" = teleport_14;
};

View File

@ -6,12 +6,12 @@
python3.pkgs.buildPythonPackage rec {
pname = "ledfx";
version = "2.0.96";
version = "2.0.99";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-nvPHAnoD5j1rneeuMufQkXj8YWXau2zJYug+Avpe87I=";
hash = "sha256-pwrAVcIwZ3RDYFMDk80q5aVSqLTQ5weZqgB3GRRu2ig=";
};
pythonRelaxDeps = true;
@ -58,6 +58,7 @@ python3.pkgs.buildPythonPackage rec {
sounddevice
stupidartnet
uvloop
vnoise
voluptuous
zeroconf
];
@ -71,5 +72,6 @@ python3.pkgs.buildPythonPackage rec {
changelog = "https://github.com/LedFx/LedFx/blob/${version}/CHANGELOG.rst";
license = licenses.gpl3Only;
maintainers = teams.c3d2.members;
mainProgram = "ledfx";
};
}

View File

@ -13,7 +13,7 @@ let
in
stdenv.mkDerivation (args // {
name = "${name}-source";
installPhase = "cp -r . $out";
installPhase = "cp -pr --reflink=auto -- . $out";
outputs = [ "out" ];
separateDebugInfo = false;
dontUnpack = false;

View File

@ -1,6 +1,10 @@
{ pkgs, pkgsLinux, buildPackages, lib, callPackage, runCommand, stdenv, substituteAll, testers }:
# Documentation is in doc/builders/testers.chapter.md
{
# See https://nixos.org/manual/nixpkgs/unstable/#tester-lycheeLinkCheck
# or doc/builders/testers.chapter.md
inherit (callPackage ./lychee.nix {}) lycheeLinkCheck;
# See https://nixos.org/manual/nixpkgs/unstable/#tester-testBuildFailure
# or doc/builders/testers.chapter.md
testBuildFailure = drv: drv.overrideAttrs (orig: {

View File

@ -0,0 +1,69 @@
deps@{ formats, lib, lychee, stdenv, writeShellApplication }:
let
inherit (lib) mapAttrsToList throwIf;
inherit (lib.strings) hasInfix hasPrefix escapeNixString;
toURL = v:
let s = "${v}";
in if hasPrefix builtins.storeDir s
then # lychee requires that paths on the file system are prefixed with file://
"file://${s}"
else s;
withCheckedName = name:
throwIf (hasInfix " " name) ''
lycheeLinkCheck: remap patterns must not contain spaces.
A space marks the end of the regex in lychee.toml.
Please change attribute name 'remap.${escapeNixString name}'
'';
# See https://nixos.org/manual/nixpkgs/unstable/#tester-lycheeLinkCheck
# or doc/builders/testers.chapter.md
lycheeLinkCheck = {
site,
remap ? { },
lychee ? deps.lychee,
extraConfig ? { },
}:
stdenv.mkDerivation (finalAttrs: {
name = "lychee-link-check";
inherit site;
nativeBuildInputs = [ finalAttrs.passthru.lychee ];
configFile = (formats.toml {}).generate "lychee.toml" finalAttrs.passthru.config;
# These can be overriden with overrideAttrs if needed.
passthru = {
inherit lychee remap;
config = {
include_fragments = true;
} // lib.optionalAttrs (finalAttrs.passthru.remap != { }) {
remap =
mapAttrsToList
(name: value: withCheckedName name "${name} ${toURL value}")
finalAttrs.passthru.remap;
} // extraConfig;
online = writeShellApplication {
name = "run-lychee-online";
runtimeInputs = [ finalAttrs.passthru.lychee ];
# Comment out to run shellcheck:
checkPhase = "";
text = ''
site=${finalAttrs.site}
configFile=${finalAttrs.configFile}
echo Checking links on $site
exec lychee --config $configFile $site "$@"
'';
};
};
buildCommand = ''
echo Checking internal links on $site
lychee --offline --config $configFile $site
touch $out
'';
});
in
{
inherit lycheeLinkCheck;
}

View File

@ -12,6 +12,8 @@ let
in
lib.recurseIntoAttrs {
lycheeLinkCheck = lib.recurseIntoAttrs pkgs.lychee.tests;
hasPkgConfigModules = pkgs.callPackage ../hasPkgConfigModules/tests.nix { };
runNixOSTest-example = pkgs-with-overlay.testers.runNixOSTest ({ lib, ... }: {

View File

@ -0,0 +1,10 @@
diff --git a/package.json b/package.json
index e25221f2..5268d11a 100644
--- a/package.json
+++ b/package.json
@@ -1,4 +1,5 @@
{
+ "name": "element-call",
"version": "0.0.0",
"type": "module",
"scripts": {

View File

@ -0,0 +1,129 @@
{
"name": "element-call",
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "NODE_OPTIONS=--max-old-space-size=16384 vite build",
"serve": "vite preview",
"prettier:check": "prettier -c .",
"prettier:format": "prettier -w .",
"lint": "yarn lint:types && yarn lint:eslint",
"lint:eslint": "eslint --max-warnings 0 src",
"lint:eslint-fix": "eslint --max-warnings 0 src --fix",
"lint:types": "tsc",
"i18n": "node_modules/i18next-parser/bin/cli.js",
"i18n:check": "node_modules/i18next-parser/bin/cli.js --fail-on-warnings --fail-on-update",
"test": "vitest",
"test:coverage": "vitest run --coverage",
"backend": "docker-compose -f backend-docker-compose.yml up"
},
"dependencies": {
"@juggle/resize-observer": "^3.3.1",
"@livekit/components-core": "^0.10.0",
"@livekit/components-react": "^2.0.0",
"@matrix-org/olm": "https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.14.tgz",
"@opentelemetry/api": "^1.4.0",
"@opentelemetry/context-zone": "^1.9.1",
"@opentelemetry/exporter-jaeger": "^1.9.1",
"@opentelemetry/exporter-trace-otlp-http": "^0.48.0",
"@opentelemetry/instrumentation-document-load": "^0.36.0",
"@opentelemetry/instrumentation-user-interaction": "^0.36.0",
"@opentelemetry/sdk-trace-web": "^1.9.1",
"@radix-ui/react-dialog": "^1.0.4",
"@radix-ui/react-slider": "^1.1.2",
"@radix-ui/react-visually-hidden": "^1.0.3",
"@react-aria/button": "^3.3.4",
"@react-aria/focus": "^3.5.0",
"@react-aria/menu": "^3.3.0",
"@react-aria/overlays": "^3.7.3",
"@react-aria/select": "^3.6.0",
"@react-aria/tabs": "^3.1.0",
"@react-aria/tooltip": "^3.1.3",
"@react-aria/utils": "^3.10.0",
"@react-rxjs/core": "^0.10.7",
"@react-spring/web": "^9.4.4",
"@react-stately/collections": "^3.3.4",
"@react-stately/select": "^3.1.3",
"@react-stately/tooltip": "^3.0.5",
"@react-stately/tree": "^3.2.0",
"@sentry/react": "^7.0.0",
"@sentry/tracing": "^7.0.0",
"@types/lodash": "^4.14.199",
"@use-gesture/react": "^10.2.11",
"@vector-im/compound-design-tokens": "^1.0.0",
"@vector-im/compound-web": "^3.0.0",
"@vitejs/plugin-basic-ssl": "^1.0.1",
"@vitejs/plugin-react": "^4.0.1",
"buffer": "^6.0.3",
"classnames": "^2.3.1",
"events": "^3.3.0",
"i18next": "^23.0.0",
"i18next-browser-languagedetector": "^7.0.0",
"i18next-http-backend": "^2.0.0",
"livekit-client": "^2.0.2",
"lodash": "^4.17.21",
"matrix-js-sdk": "github:matrix-org/matrix-js-sdk#d55c6a36df539f6adacc335efe5b9be27c9cee4a",
"matrix-widget-api": "^1.3.1",
"normalize.css": "^8.0.1",
"pako": "^2.0.4",
"postcss-preset-env": "^9.0.0",
"posthog-js": "^1.29.0",
"react": "18",
"react-dom": "18",
"react-i18next": "^14.0.0",
"react-router-dom": "^5.2.0",
"react-use-clipboard": "^1.0.7",
"react-use-measure": "^2.1.1",
"rxjs": "^7.8.1",
"sdp-transform": "^2.14.1",
"tinyqueue": "^2.0.3",
"unique-names-generator": "^4.6.0",
"uuid": "9",
"vaul": "^0.9.0"
},
"devDependencies": {
"@babel/core": "^7.16.5",
"@babel/preset-env": "^7.22.20",
"@babel/preset-react": "^7.22.15",
"@babel/preset-typescript": "^7.23.0",
"@react-spring/rafz": "^9.7.3",
"@react-types/dialog": "^3.5.5",
"@sentry/vite-plugin": "^2.0.0",
"@testing-library/react": "^14.0.0",
"@testing-library/user-event": "^14.5.1",
"@types/content-type": "^1.1.5",
"@types/dom-screen-wake-lock": "^1.0.1",
"@types/dompurify": "^3.0.2",
"@types/grecaptcha": "^3.0.4",
"@types/node": "^20.0.0",
"@types/react-router-dom": "^5.3.3",
"@types/request": "^2.48.8",
"@types/sdp-transform": "^2.4.5",
"@types/uuid": "9",
"@typescript-eslint/eslint-plugin": "^7.0.0",
"@typescript-eslint/parser": "^7.0.0",
"babel-loader": "^9.0.0",
"babel-plugin-transform-vite-meta-env": "^1.0.3",
"eslint": "^8.14.0",
"eslint-config-google": "^0.14.0",
"eslint-config-prettier": "^9.0.0",
"eslint-plugin-deprecate": "^0.8.2",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jsx-a11y": "^6.5.1",
"eslint-plugin-matrix-org": "^1.2.1",
"eslint-plugin-react": "^7.29.4",
"eslint-plugin-react-hooks": "^4.5.0",
"eslint-plugin-unicorn": "^51.0.0",
"i18next-parser": "^8.0.0",
"jsdom": "^24.0.0",
"prettier": "^3.0.0",
"sass": "^1.42.1",
"typescript": "^5.1.6",
"typescript-eslint-language-service": "^5.0.5",
"vite": "^5.0.0",
"vite-plugin-html-template": "^1.1.0",
"vite-plugin-svgr": "^4.0.0",
"vitest": "^1.2.2"
}
}

View File

@ -0,0 +1,58 @@
{ lib
, stdenv
, mkYarnPackage
, fetchFromGitHub
, fetchYarnDeps
}:
let
inherit (stdenv.hostPlatform) system;
throwSystem = throw "Unsupported system: ${system}";
offlineCacheHash = {
x86_64-linux = "sha256-mZCnvX6hzkdi/zjPiefcmbyC2kGemjS4w7WTVkyq8W0=";
aarch64-linux = "sha256-mZCnvX6hzkdi/zjPiefcmbyC2kGemjS4w7WTVkyq8W0=";
x86_64-darwin = "sha256-G4doEnZORJqcl3bWaKZPuQmBeXNXud06nLO12Afr9kM=";
aarch64-darwin = "sha256-G4doEnZORJqcl3bWaKZPuQmBeXNXud06nLO12Afr9kM=";
}.${system} or throwSystem;
in
mkYarnPackage rec {
pname = "element-call";
version = "0.5.16";
src = fetchFromGitHub {
owner = "element-hq";
repo = "element-call";
rev = "v${version}";
hash = "sha256-GTHM27i716RZk+kDELMg/lYy355/SZoQLXGPQ90M4xg=";
};
packageJSON = ./package.json;
patches = [ ./name.patch ];
offlineCache = fetchYarnDeps {
yarnLock = "${src}/yarn.lock";
hash = offlineCacheHash;
};
buildPhase = ''
runHook preBuild
yarn --offline run build
runHook postBuild
'';
preInstall = ''
mkdir $out
cp -R ./deps/element-call/dist $out
'';
doDist = false;
meta = with lib; {
homepage = "https://github.com/element-hq/element-call";
description = "Group calls powered by Matrix";
license = licenses.asl20;
maintainers = with maintainers; [ kilimnik ];
mainProgram = "element-call";
};
}

View File

@ -0,0 +1,30 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "lk-jwt-service";
version = "0-unstable-2024-04-27";
src = fetchFromGitHub {
owner = "element-hq";
repo = "lk-jwt-service";
rev = "4a295044a4d0bd2af4474bf6a8a14fd0596ecf9e";
hash = "sha256-dN4iJ8P0u5dbZ93mp/FumcvByP7EpQhOvR+Oe4COWXQ=";
};
vendorHash = "sha256-9qOApmmOW+N1L/9hj9tVy0hLIUI36WL2TGWUcM3ajeM=";
postInstall = ''
mv $out/bin/ec-lms $out/bin/lk-jwt-service
'';
meta = with lib; {
description = "Minimal service to provide LiveKit JWTs using Matrix OpenID Connect";
homepage = "https://github.com/element-hq/lk-jwt-service";
license = licenses.agpl3Plus;
maintainers = with maintainers; [ kilimnik ];
mainProgram = "lk-jwt-service";
};
}

View File

@ -9,16 +9,16 @@
}:
rustPlatform.buildRustPackage rec {
pname = "mini-calc";
version = "3.0.1";
version = "3.1.0";
src = fetchFromGitHub {
owner = "coco33920";
repo = "calc";
rev = version;
hash = "sha256-vQQ0JKqNhcJ4UhbPzg3OmA2lmZ3HqNB3Ag68OffIXt0=";
hash = "sha256-wROeUi1j5oEUpr7nRge6bRUO0E8W2E34M7DeyK0xmjM=";
};
cargoHash = "sha256-PfhcQnAWK8/R+HTx/iHibqMvpjPDKUZssDbO9XgkOuk=";
cargoHash = "sha256-QPkaSJNoxnheECwcK129+PNeRm6+DFOw1wmwBev6oXc=";
nativeBuildInputs = [ makeWrapper ];
postFixup = ''

View File

@ -30,5 +30,5 @@ corretto.overrideAttrs (final: prev: {
url = "https://git.alpinelinux.org/aports/plain/community/openjdk17/FixNullPtrCast.patch?id=41e78a067953e0b13d062d632bae6c4f8028d91c";
sha256 = "sha256-LzmSew51+DyqqGyyMw2fbXeBluCiCYsS1nCjt9hX6zo=";
})
prev.patches;
(prev.patches or [ ]);
})

View File

@ -0,0 +1,21 @@
--- a/packages/gtk/mkorder.awk
+++ b/packages/gtk/mkorder.awk
@@ -33,6 +33,9 @@
paths[1] = "."
n_paths = 1
n_prefixes = split(_prefixes, prefixes)
+
+ ignored_files = [ "glib/gwin32.h" ]
+
split(_libs, libs)
split(_files, files)
for (i = 1; (i in libs); i++)
@@ -60,7 +63,7 @@
function process_file(name, file) {
file = find_file(name)
- if (file in processed)
+ if ((name in ignored_files) or (file in processed))
return
processed[file] = 1
if (file == "")

View File

@ -25,6 +25,12 @@ in stdenv.mkDerivation rec {
sha256 = "1k2ssrapfzhngc7bg1zrnd9n2vyxp9c9m70byvsma6wapbvib6l1";
};
patches = [
# The awk script incorrectly parsed `glib/glib.h` and was trying to find `glib/gwin32.h`,
# that isn't included since we're building only for linux.
./0000-fix_mkorder.patch
];
# The dependencies and their justification are explained at
# http://smalltalk.gnu.org/download
nativeBuildInputs = [ pkg-config ];

View File

@ -6,10 +6,10 @@ import re
import requests
import sys
feature_versions = (8, 11, 16, 17)
feature_versions = (8, 11, 16, 17, 21)
oses = ("mac", "linux")
types = ("jre", "jdk")
impls = ("openj9")
impls = ("openj9",)
arch_to_nixos = {
"x64": ("x86_64",),

View File

@ -3,14 +3,18 @@
let
sources = (lib.importJSON ./sources.json).openj9.mac;
common = opts: callPackage (import ./jdk-darwin-base.nix opts) {};
EOL = [ "This JDK/JRE version has reached End of Life." ];
in
{
jdk-8 = common { sourcePerArch = sources.jdk.openjdk8; };
jre-8 = common { sourcePerArch = sources.jre.openjdk8; };
jdk-11 = common { sourcePerArch = sources.jdk.openjdk11; };
jre-11 = common { sourcePerArch = sources.jre.openjdk11; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; };
jre-16 = common { sourcePerArch = sources.jre.openjdk16; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; knownVulnerabilities = EOL; };
jre-16 = common { sourcePerArch = sources.jre.openjdk16; knownVulnerabilities = EOL; };
jdk-17 = common { sourcePerArch = sources.jdk.openjdk17; };
jre-17 = common { sourcePerArch = sources.jre.openjdk17; };
jdk-21 = common { sourcePerArch = sources.jdk.openjdk21; };
jre-21 = common { sourcePerArch = sources.jre.openjdk21; };
}

View File

@ -3,14 +3,18 @@
let
sources = (lib.importJSON ./sources.json).openj9.linux;
common = opts: callPackage (import ./jdk-linux-base.nix opts) {};
EOL = [ "This JDK/JRE version has reached End of Life." ];
in
{
jdk-8 = common { sourcePerArch = sources.jdk.openjdk8; };
jre-8 = common { sourcePerArch = sources.jre.openjdk8; };
jdk-11 = common { sourcePerArch = sources.jdk.openjdk11; };
jre-11 = common { sourcePerArch = sources.jre.openjdk11; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; };
jre-16 = common { sourcePerArch = sources.jre.openjdk16; };
jdk-16 = common { sourcePerArch = sources.jdk.openjdk16; knownVulnerabilities = EOL; };
jre-16 = common { sourcePerArch = sources.jre.openjdk16; knownVulnerabilities = EOL; };
jdk-17 = common { sourcePerArch = sources.jdk.openjdk17; };
jre-17 = common { sourcePerArch = sources.jre.openjdk17; };
jdk-21 = common { sourcePerArch = sources.jdk.openjdk21; };
jre-21 = common { sourcePerArch = sources.jre.openjdk21; };
}

View File

@ -4,18 +4,18 @@
"jdk": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "488739171f84e3949df6ccb1c40eaf1b73541748b123d88780329648d6b383d0",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "23e280da1ce418692323f8aad94069ef34bae6566a98ffd349fc2cbb9fa285af",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jdk_aarch64_linux_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "eeca01d4e245a001d01663c5c20a8d50ef3d572b47a9b3689a5154f2a37bf005",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "033261124af247f944f820cad158df2b9db58945b4998750258c37d62fac99ff",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jdk_x64_linux_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
}
},
"openjdk16": {
@ -36,52 +36,68 @@
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "18d291411ee4a956018b4dcefe436971e73694128782617f1b44beca991956c5",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "cfdff21ce44ae6af494cba75c1f323bef83a982f2c11944988bab2125f85b906",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jdk_aarch64_linux_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "78ae15d9e01fce3a473f4d6a90c331fb766211b950931088c2a85590f178ad39",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "9b945e58f024108a20eb907015cca4a452332b7644e8dd8e051149a3ec62e3a3",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jdk_x64_linux_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
}
},
"openjdk21": {
"aarch64": {
"build": "9",
"sha256": "718e465d1b22034d889445e8ae371fc58dfc733c454cf344fa5e10db0ab8a775",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jdk_aarch64_linux_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "9",
"sha256": "5cccb39dc7ca6c61a11bd7179c4c3c30b747f9f22129576feef921b59725af25",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jdk_x64_linux_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
}
},
"openjdk8": {
"aarch64": {
"build": "01",
"sha256": "6b89e648899709459b7c7dbe0a5b1ea480a88da84c6163f01255d638dbdd051b",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
"build": "08",
"sha256": "2baa88e7ed0ea9f72310fb4adfe99ee06fdb514cc04517b0e0be3c0646493ea3",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/jdk8u412-b08_openj9-0.44.0/ibm-semeru-open-jdk_aarch64_linux_8u412b08_openj9-0.44.0.tar.gz",
"version": "8.0.412"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "82c8232a5cb420246457d65a5014602feb8b288079cdae896e22a2eb6e390b58",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jdk_x64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
"build": "08",
"sha256": "85af2c57078aab240ce31ba3f7a8e86696ff5bdf4c30f3c37f107986f07b23a6",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/jdk8u412-b08_openj9-0.44.0/ibm-semeru-open-jdk_x64_linux_8u412b08_openj9-0.44.0.tar.gz",
"version": "8.0.412"
}
}
},
"jre": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "49dc05a3e9f3f99c5f8fa466261aa3e33a753694c67cabfa7d3f682e5a2e3685",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "8613dc2b6c403f48d2a8e25da92ab9f8a7b5dd63cb81d1917e4cb070ae371557",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jre_aarch64_linux_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "ba09711193b8b8664478f3f949b5320232f65c1bdf61f32a885d84de73c02767",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_linux_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "b9558416d6d773fce0d9b4d3f875fdfc5ffc1afd922570b0f7a6f7cbab7468ab",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jre_x64_linux_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
}
},
"openjdk16": {
@ -102,34 +118,50 @@
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "6c40c1e0d7ee0509c44465e9f26dd970904137a95fd751e6447b1d6a9ef5092a",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "9760aa27a5790a8c20a702ff5f036535f3df51d3fb291bb5254b5ae76e096bad",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jre_aarch64_linux_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "b2c176f8aa8cc7138d4c22ce9298d8f49597e1d8e3fdd33125898e5ee0182c93",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_linux_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "1caf409f33f7738efe37742197525b5ae6244d6383b2017e7b8e925dc0b6a329",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jre_x64_linux_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
}
},
"openjdk21": {
"aarch64": {
"build": "9",
"sha256": "0222dc3749e1c94bd1b047cdb02eb18310aefd9f7965b66196da06e4e3844b7a",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jre_aarch64_linux_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "9",
"sha256": "b831e8c418374ccec13c51f60c36f4c32266f3cc83cb31f32286f89c26d66e00",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jre_x64_linux_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
}
},
"openjdk8": {
"aarch64": {
"build": "01",
"sha256": "03caff41622e84a6e7fa66a225414a9b6eefb38dd215f830cae0bc4bbfc55b5c",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jre_aarch64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
"build": "08",
"sha256": "08a41a48b79881590d65a09c62c56d8bcd9b8453f03420bcfd5dd3165bbba3c1",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/jdk8u412-b08_openj9-0.44.0/ibm-semeru-open-jre_aarch64_linux_8u412b08_openj9-0.44.0.tar.gz",
"version": "8.0.412"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "0d4fe62716b9da2ccce324b5b46d57e8d47e5dfb5d128f87e16135ee9bc36cdc",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jre_x64_linux_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
"build": "08",
"sha256": "ac5022b52b33b22c51d8370655f6157fd999e5e24c6525f91d1e778f34abcb8b",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/jdk8u412-b08_openj9-0.44.0/ibm-semeru-open-jre_x64_linux_8u412b08_openj9-0.44.0.tar.gz",
"version": "8.0.412"
}
}
}
@ -138,18 +170,18 @@
"jdk": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "9881b292142a129f6f5c6b21608b090f8f94625052b4f7d0ce5bd982c054ca2e",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "451336700a8b219d219e2e3b26b60154c44e8ab209056cc3466b0fcd4b15e53d",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jdk_aarch64_mac_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "8638735d2cae3efff212f898728685380355bb0a298076e9e46244d0bf3d4a64",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "6a225f3024d1919528107ece20256e8a8594523ea2204d93a041c012cbf1e2d2",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jdk_x64_mac_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
}
},
"openjdk16": {
@ -164,46 +196,62 @@
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "bf22628b54115dff9939b94751531544ab735b7cbbc8d6ddfe83d1b04df3a532",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_aarch64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "5fed15250cb613a4024f2b2e75ccb54e6526ffa5ff78d955a6e2a11ae330f003",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jdk_aarch64_mac_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "a935f20564e347a9292955c04eb57e51efdb1853ae7f0b4fe759b22c9fe248be",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jdk_x64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "585f48be83935a44ef980249aaab024119d4ea6ef0937a2cd2d97d0c77cda1c2",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jdk_x64_mac_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
}
},
"openjdk21": {
"aarch64": {
"build": "9",
"sha256": "a95896a4ca7b69050a25b1557520f430abc66d098e9fd15cd394e20c4c93e5cf",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jdk_aarch64_mac_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
},
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "9",
"sha256": "95640346ef677fbdbf40efa0298cc61314cffed0c43d1b3bd329b84d445db869",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jdk_x64_mac_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
}
},
"openjdk8": {
"packageType": "jdk",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "c69086950c006b17484a70ef7bc85e92d121be15e69e282e1446fd238d42b6b4",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jdk_x64_mac_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
"build": "08",
"sha256": "4e8a34442fc0c1c1288ca4d251ecfe744c201ec6494103d8dafa52e785d3f8ae",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/jdk8u412-b08_openj9-0.44.0/ibm-semeru-open-jdk_x64_mac_8u412b08_openj9-0.44.0.tar.gz",
"version": "8.0.412"
}
}
},
"jre": {
"openjdk11": {
"aarch64": {
"build": "8",
"sha256": "39802020896476342dc11486e3cbdf10f6311c172abeb4a1e2931b472da4417e",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "be6ba7e6904e8ca2fab9dab38607af1e4d36f6a391584eb8c4de0804493f3626",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jre_aarch64_mac_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "92f87a3c2fb5fe60d3d51020ff95b9c234b2ae2677b79aebbe749dda717c9cdd",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.16%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_mac_11.0.16_8_openj9-0.33.0.tar.gz",
"version": "11.0.16"
"build": "9",
"sha256": "9f9505e9ee5082c070de965c790d51758a9969b7bb9ca49057d0d5afb5cfc99b",
"url": "https://github.com/ibmruntimes/semeru11-binaries/releases/download/jdk-11.0.23%2B9_openj9-0.44.0/ibm-semeru-open-jre_x64_mac_11.0.23_9_openj9-0.44.0.tar.gz",
"version": "11.0.23"
}
},
"openjdk16": {
@ -218,28 +266,44 @@
},
"openjdk17": {
"aarch64": {
"build": "8",
"sha256": "4057c94cd46b814cc5a4d683d5f0b95dbd0b9e13e8c2e11155561ad0d8bec85b",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_aarch64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "fbd093ab7218c916aa4f49ac851635020dd1c8a98a98158fc44a6565e3d182ed",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jre_aarch64_mac_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "8",
"sha256": "8e957d2eb47eaca64516ac669272c6e5186155ed8ee4d6a77e0d4b7811cd7bb6",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.4%2B8_openj9-0.33.0/ibm-semeru-open-jre_x64_mac_17.0.4_8_openj9-0.33.0.tar.gz",
"version": "17.0.4"
"build": "9",
"sha256": "f5781de29132c04f54341349e99954ec3cfbdbc65fdebdd00feff47c68793299",
"url": "https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.9%2B9_openj9-0.41.0/ibm-semeru-open-jre_x64_mac_17.0.9_9_openj9-0.41.0.tar.gz",
"version": "17.0.9"
}
},
"openjdk21": {
"aarch64": {
"build": "9",
"sha256": "55650c3825a22dc1caabf672ee8e2ef3ce4cee32df92e7317780d3eae18f17a5",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jre_aarch64_mac_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
},
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "9",
"sha256": "4b4d6da4da96dfa233d0c262bcaecb15b29162a81c802179f56e4084141c6fd8",
"url": "https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.3%2B9_openj9-0.44.0/ibm-semeru-open-jre_x64_mac_21.0.3_9_openj9-0.44.0.tar.gz",
"version": "21.0.3"
}
},
"openjdk8": {
"packageType": "jre",
"vmType": "openj9",
"x86_64": {
"build": "01",
"sha256": "019e08dea8fbd54517dacbeac791d85717902800dd8bba77fbca1dfc6b0abd9e",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/8u345-b01_openj9-0.33.0/ibm-semeru-open-jre_x64_mac_8u345b01_openj9-0.33.0.tar.gz",
"version": "8.0.345"
"build": "08",
"sha256": "baf7d026012acc234fb1c2e64adf544a84449c856ee25a130c5aec32fbe34e3a",
"url": "https://github.com/ibmruntimes/semeru8-binaries/releases/download/jdk8u412-b08_openj9-0.44.0/ibm-semeru-open-jre_x64_mac_8u412b08_openj9-0.44.0.tar.gz",
"version": "8.0.412"
}
}
}

View File

@ -12,6 +12,7 @@
mock,
packaging,
testfixtures,
pythonAtLeast,
}:
buildPythonPackage rec {
@ -58,5 +59,6 @@ buildPythonPackage rec {
description = "An experimental library aimed at consolidating a lot of low-level code used for Enthought's eggs";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.bsd3;
broken = pythonAtLeast "3.12"; # multiple tests are failing
};
}

View File

@ -2,6 +2,7 @@
lib,
buildPythonPackage,
fetchFromGitHub,
fetchpatch,
pillow,
xlib,
six,
@ -15,19 +16,28 @@
buildPythonPackage rec {
pname = "pystray";
version = "0.19.2";
format = "pyproject";
version = "0.19.5";
pyproject = true;
src = fetchFromGitHub {
owner = "moses-palmer";
repo = "pystray";
rev = "v${version}";
hash = "sha256-8B178MSe4ujlnGBmQhIu+BoAh1doP9V5cL0ermLQTvs=";
hash = "sha256-CZhbaXwKFrRBEomzfFPMQdMkTOl5lbgI64etfDRiRu4=";
};
patches = [
# fix test_menu_construct_from_none test case
# https://github.com/moses-palmer/pystray/pull/133
(fetchpatch {
url = "https://github.com/moses-palmer/pystray/commit/813007e3034d950d93a2f3e5b029611c3c9c98ad.patch";
hash = "sha256-m2LfZcWXSfgxb73dac21VDdMDVz3evzcCz5QjdnfM1U=";
})
];
postPatch = ''
substituteInPlace setup.py \
--replace "'sphinx >=1.3.1'" ""
--replace-fail "'sphinx >=1.3.1'" ""
'';
nativeBuildInputs = [

View File

@ -9,13 +9,14 @@
networkx,
pandas,
requests,
six,
setuptools,
}:
buildPythonPackage rec {
pname = "pyxnat";
version = "1.6";
format = "setuptools";
version = "1.6.2";
pyproject = true;
disabled = pythonOlder "3.8";
# PyPI dist missing test configuration files:
@ -23,21 +24,19 @@ buildPythonPackage rec {
owner = "pyxnat";
repo = "pyxnat";
rev = "refs/tags/${version}";
hash = "sha256-QejYisvQFN7CsDOx9wAgTHmRZcSEqgIr8twG4XucfZ4=";
hash = "sha256-21nTIYbIYlFWNJTxqsuijamqRunpdc7/VBawvrWadWI=";
};
build-system = [ setuptools ];
propagatedBuildInputs = [
lxml
requests
six
];
# future is not used, and pathlib is installed part of python38+
# w/o an external package
# pathlib is installed part of python38+ w/o an external package
prePatch = ''
substituteInPlace setup.py \
--replace "pathlib>=1.0" "" \
--replace "future>=0.16" ""
substituteInPlace setup.py --replace-fail "pathlib>=1.0" ""
sed -i '/--cov/d' setup.cfg
'';
@ -52,15 +51,24 @@ buildPythonPackage rec {
'';
pytestFlagsArray = [ "pyxnat" ];
disabledTestPaths = [
# try to access network even though PYXNAT_SKIP_NETWORK_TESTS is set:
# require a running local XNAT instance e.g. in a docker container:
"pyxnat/tests/attributes_test.py"
"pyxnat/tests/custom_variables_test.py"
"pyxnat/tests/interfaces_test.py"
"pyxnat/tests/pipelines_test.py"
"pyxnat/tests/provenance_test.py"
"pyxnat/tests/prearchive_test.py"
"pyxnat/tests/repr_test.py"
"pyxnat/tests/resources_test.py"
"pyxnat/tests/search_test.py"
"pyxnat/tests/sessionmirror_test.py"
"pyxnat/tests/test_resource_functions.py"
"pyxnat/tests/user_and_project_management_test.py"
];
disabledTests = [
# try to access network even though PYXNAT_SKIP_NETWORK_TESTS is set:
"test_ashs_volumes"
"test_inspector_structure"
"test_project_manager"
];
pythonImportsCheck = [ "pyxnat" ];

View File

@ -1,7 +1,9 @@
{
lib,
buildPythonPackage,
fetchpatch,
fetchPypi,
meson-python,
numpy,
python,
}:
@ -9,14 +11,42 @@
buildPythonPackage rec {
pname = "scikit-fmm";
version = "2023.4.2";
format = "setuptools";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-14ccR/ggdyq6kvJWUe8U5NJ96M45PArjwCqzxuJCPAs=";
};
propagatedBuildInputs = [ numpy ];
# TODO: Remove these patches after another stable release is made.
# For now, these allow us to build with Python 3.12+ by switching to Meson
# and off the deprecated distutils.
patches = [
(fetchpatch {
name = "first-try-at-meson-build.patch";
hash = "sha256-Kclg4YrQZL6ZSVsLh6X6DqdztPjDK35L5dp5PqYjzaY=";
url = "https://github.com/scikit-fmm/scikit-fmm/commit/a52c0eccb70077553607a5084152316d136b668b.patch";
})
(fetchpatch {
name = "work-in-progress-on-meson-build.patch";
hash = "sha256-WvSwBz7exqe1H+CqdoMfT5jEoIHnyt/nbc/CryuEKiA=";
url = "https://github.com/scikit-fmm/scikit-fmm/commit/db0e7a5f51541745027c3d081d7841e74587793e.patch";
})
(fetchpatch {
name = "re-cythonize-the-heap-wrapper.patch";
hash = "sha256-ro97+06R0szXQ9I8/sR4JAnFxoQwJeiImDcl1Yp9P0Y=";
url = "https://github.com/scikit-fmm/scikit-fmm/commit/4168323e209343facd5f6ba93a85893242e781a2.patch";
})
];
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "oldest-supported-numpy" "numpy"
'';
build-system = [ meson-python ];
dependencies = [ numpy ];
checkPhase = ''
mkdir testdir; cd testdir

View File

@ -0,0 +1,35 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, numpy
, pytestCheckHook
, setuptools
}:
buildPythonPackage rec {
pname = "vnoise";
version = "0.1.0";
pyproject = true;
src = fetchFromGitHub {
owner = "plottertools";
repo = "vnoise";
rev = version;
hash = "sha256-nflAh3vj48wneM0wy/+M+XD6GC63KZEIFb1x4SS46YI=";
};
nativeBuildInputs = [ setuptools ];
propagatedBuildInputs = [ numpy ];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "vnoise" ];
meta = with lib; {
description = "Vectorized, pure-Python Perlin noise library";
homepage = "https://github.com/plottertools/vnoise";
license = licenses.mit;
maintainers = with maintainers; [ SuperSandro2000 ];
};
}

View File

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "xyzservices";
version = "2024.4.0";
format = "pyproject";
pyproject = true;
src = fetchPypi {
inherit pname version;
@ -24,9 +24,9 @@ buildPythonPackage rec {
setuptools-scm
];
disabledTests = [
pytestFlagsArray = [
# requires network connections
"test_free_providers"
"-m 'not request'"
];
pythonImportsCheck = [ "xyzservices.providers" ];
@ -37,11 +37,11 @@ buildPythonPackage rec {
requests
];
meta = with lib; {
meta = {
changelog = "https://github.com/geopandas/xyzservices/releases/tag/${version}";
description = "Source of XYZ tiles providers";
homepage = "https://github.com/geopandas/xyzservices";
license = licenses.bsd3;
maintainers = with maintainers; [ ];
license = lib.licenses.bsd3;
maintainers = lib.teams.geospatial.members;
};
}

View File

@ -2,6 +2,7 @@
buildPythonPackage,
fetchFromGitHub,
lib,
pythonAtLeast,
}:
buildPythonPackage rec {
@ -25,5 +26,6 @@ buildPythonPackage rec {
description = "A backwards-compatible improved zipfile class";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.psfl;
broken = pythonAtLeast "3.12"; # tests are failing because the signature of ZipInfo._decodeExtra changed
};
}

View File

@ -7,7 +7,7 @@
, xxd
, rocm-device-libs
, rocm-thunk
, libelf
, elfutils
, libdrm
, numactl
, valgrind
@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
rocm-thunk
libelf
elfutils
libdrm
numactl
valgrind

View File

@ -8,7 +8,7 @@
, xxd
, rocm-device-libs
, rocm-thunk
, libelf
, elfutils
, libdrm
, numactl
, valgrind
@ -36,7 +36,7 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
rocm-thunk
libelf
elfutils
libdrm
numactl
valgrind

View File

@ -3,6 +3,7 @@
, yarn, nodejs, python3, cacert
, jq, moreutils
, nix-update-script, nixosTests, xcbuild
, util-linux
}:
let
@ -21,7 +22,7 @@ let
in
buildGoModule rec {
pname = "grafana";
version = "10.4.2";
version = "11.0.0";
subPackages = [ "pkg/cmd/grafana" "pkg/cmd/grafana-server" "pkg/cmd/grafana-cli" ];
@ -29,7 +30,7 @@ buildGoModule rec {
owner = "grafana";
repo = "grafana";
rev = "v${version}";
hash = "sha256-ahG9ABJJUUgrFqqNjkJRA1Gia8T4J90jIsCMFOhZ55w=";
hash = "sha256-cC1dpgb8IiyPIqlVvn8Qi1l7j6lLtQF+BOOO+DQCp4E=";
};
# borrowed from: https://github.com/NixOS/nixpkgs/blob/d70d9425f49f9aba3c49e2c389fe6d42bac8c5b0/pkgs/development/tools/analysis/snyk/default.nix#L20-L22
@ -65,16 +66,16 @@ buildGoModule rec {
dontFixup = true;
outputHashMode = "recursive";
outputHash = rec {
x86_64-linux = "sha256-3CZgs732c6Z64t2sfWjPAmMFKVTzoolv2TwrbjeRCBA=";
x86_64-linux = "sha256-+Udq8oQSIAHku55VKnrfgHHevzBels0QiOZwnwuts8k=";
aarch64-linux = x86_64-linux;
aarch64-darwin = "sha256-NKEajOe9uDZw0MF5leiKBIRH1CHUELRho7gyCa96BO8=";
aarch64-darwin = "sha256-m3jtZNz0J2nZwFHXVp3ApgDfnGBOJvFeUpqOPQqv200=";
x86_64-darwin = aarch64-darwin;
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
};
disallowedRequisites = [ offlineCache ];
vendorHash = "sha256-XmIF/ZWVO1qjSmRPTFnHgxvnliXXicGgsV8gQcKJl9U=";
vendorHash = "sha256-kcdW6RQghyAOZUDmIo9G6YBC+YaLHdafvj+fCd+dcDE=";
proxyVendor = true;
@ -90,7 +91,6 @@ buildGoModule rec {
wire gen -tags oss ./pkg/server
wire gen -tags oss ./pkg/cmd/grafana-cli/runner
GOARCH= CGO_ENABLED=0 go generate ./pkg/plugins/plugindef
GOARCH= CGO_ENABLED=0 go generate ./kinds/gen.go
GOARCH= CGO_ENABLED=0 go generate ./public/app/plugins/gen.go
# Setup node_modules
@ -105,7 +105,7 @@ buildGoModule rec {
yarn config set enableTelemetry 0
yarn config set cacheFolder $offlineCache
yarn --immutable-cache
yarn install --immutable-cache
# The build OOMs on memory constrained aarch64 without this
export NODE_OPTIONS=--max_old_space_size=4096
@ -113,7 +113,9 @@ buildGoModule rec {
postBuild = ''
# After having built all the Go code, run the JS builders now.
yarn run build
# Workaround for https://github.com/nrwl/nx/issues/22445
${util-linux}/bin/script -c 'yarn run build' /dev/null
yarn run plugins:build-bundled
'';
@ -154,5 +156,8 @@ buildGoModule rec {
maintainers = with maintainers; [ offline fpletz willibutz globin ma27 Frostman ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ];
mainProgram = "grafana-server";
# requires util-linux to work around https://github.com/nrwl/nx/issues/22445
# `script` doesn't seem to be part of util-linux on Darwin though.
broken = stdenv.isDarwin;
};
}

File diff suppressed because it is too large Load Diff

View File

@ -1,17 +0,0 @@
args:
import ../generic.nix (args // {
version = "13.4.14";
hash = "sha256-g11D5lekI3pUpKf5CLUuNjejs0gN/bEemHkCj3akha0=";
vendorHash = "sha256-kiDhlR/P81u/yNq72JuskES/UzMrTFzJT0H3xldGk8I=";
yarnHash = "sha256-E9T+7aXVoERdUnVEL4va2fcMnv1jsL9Js/R2LZo4hu4=";
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"rdp-rs-0.1.0" = "sha256-4NbAsEmyUdmBcHuzx+SLQCGKICC4V4FX4GTK2SzyHC0=";
};
};
extPatches = [
# https://github.com/NixOS/nixpkgs/issues/120738
../tsh.patch
];
})

View File

@ -96,9 +96,9 @@ checksum = "b645a089122eccb6111b4f81cbc1a49f5900ac4666bb93ac027feaecf15607bf"
[[package]]
name = "bindgen"
version = "0.66.1"
version = "0.68.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7"
checksum = "726e4313eb6ec35d2730258ad4e15b547ee75d6afaa1361a922e78e59b7d8078"
dependencies = [
"bitflags 2.4.0",
"cexpr",
@ -149,9 +149,9 @@ dependencies = [
[[package]]
name = "boring"
version = "3.1.0"
version = "4.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7ae1aba472e42d3cf45ac6d0a6c8fc3ddf743871209e1b40229aed9fbdf48ece"
checksum = "92667e5967bf826198f88dd3e43616973f8902769a6151616a65be1289a3c531"
dependencies = [
"bitflags 2.4.0",
"boring-sys",
@ -162,9 +162,9 @@ dependencies = [
[[package]]
name = "boring-sys"
version = "3.1.0"
version = "4.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ceced5be0047c7c48d77599535fd7f0a81c1b0f0a1e97e7eece24c45022bb481"
checksum = "f04f5e0e2dc8315f68251391a4ac6da54793525c01d0206b10732b71139768cd"
dependencies = [
"bindgen",
"cmake",
@ -1233,7 +1233,7 @@ dependencies = [
[[package]]
name = "rdp-rs"
version = "0.1.0"
source = "git+https://github.com/gravitational/rdp-rs?rev=0ddb504e10051aaa8f0de57580a973d2853a5b7d#0ddb504e10051aaa8f0de57580a973d2853a5b7d"
source = "git+https://github.com/gravitational/rdp-rs?rev=edfb5330a11d11eaf36d65e4300555368b4c6b02#edfb5330a11d11eaf36d65e4300555368b4c6b02"
dependencies = [
"boring",
"bufstream",
@ -1462,9 +1462,9 @@ dependencies = [
[[package]]
name = "shlex"
version = "1.1.0"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3"
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
[[package]]
name = "signature"

View File

@ -1,13 +1,13 @@
args:
import ../generic.nix (args // {
version = "14.3.0";
hash = "sha256-yTbJeHCmPlelq7BrZQRY3XyNQiovV7NQ1tNh2NfYGbk=";
vendorHash = "sha256-lHsgSbY1nqQminU67QgV6FbHXNlv5tCMv2oVq48S33M=";
yarnHash = "sha256-m934P+KygGiCzr5fDsNTlmZ1T9JxA6P8zTimocQyVi0=";
version = "14.3.20";
hash = "sha256-oGN3t0xt7z3+U7wlhnJu4B8cSSMwONdiHZkv8UY7lkA=";
vendorHash = "sha256-RMTHWrbwKCGlxi9SP+8ccGk8YYqwhC8yWLPDf2Ha5bE=";
yarnHash = "sha256-c5ItZpq9Wp+kE9gw2WQdm5gTvBKA9I+nHAX/pT4Hqhs=";
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"rdp-rs-0.1.0" = "sha256-4NbAsEmyUdmBcHuzx+SLQCGKICC4V4FX4GTK2SzyHC0=";
"rdp-rs-0.1.0" = "sha256-U52FVuqo2DH/7f0cQ1qcb1GbFZ97yxExVFMX5cs0zw4=";
};
};
extPatches = [

View File

@ -1161,7 +1161,7 @@ dependencies = [
[[package]]
name = "ironrdp-async"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bytes",
"ironrdp-connector",
@ -1172,7 +1172,7 @@ dependencies = [
[[package]]
name = "ironrdp-cliprdr"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bitflags 2.4.2",
"ironrdp-pdu",
@ -1184,7 +1184,7 @@ dependencies = [
[[package]]
name = "ironrdp-connector"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"ironrdp-error",
"ironrdp-pdu",
@ -1196,10 +1196,21 @@ dependencies = [
"winapi",
]
[[package]]
name = "ironrdp-displaycontrol"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"ironrdp-dvc",
"ironrdp-pdu",
"ironrdp-svc",
"tracing",
]
[[package]]
name = "ironrdp-dvc"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"ironrdp-pdu",
"ironrdp-svc",
@ -1210,12 +1221,12 @@ dependencies = [
[[package]]
name = "ironrdp-error"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
[[package]]
name = "ironrdp-graphics"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bit_field",
"bitflags 2.4.2",
@ -1232,7 +1243,7 @@ dependencies = [
[[package]]
name = "ironrdp-pdu"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bit_field",
"bitflags 2.4.2",
@ -1254,7 +1265,7 @@ dependencies = [
[[package]]
name = "ironrdp-rdpdr"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bitflags 2.4.2",
"ironrdp-error",
@ -1266,7 +1277,7 @@ dependencies = [
[[package]]
name = "ironrdp-rdpsnd"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"ironrdp-pdu",
"ironrdp-svc",
@ -1275,9 +1286,10 @@ dependencies = [
[[package]]
name = "ironrdp-session"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"ironrdp-connector",
"ironrdp-displaycontrol",
"ironrdp-dvc",
"ironrdp-error",
"ironrdp-graphics",
@ -1289,7 +1301,7 @@ dependencies = [
[[package]]
name = "ironrdp-svc"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bitflags 2.4.2",
"ironrdp-pdu",
@ -1298,7 +1310,7 @@ dependencies = [
[[package]]
name = "ironrdp-tls"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"tokio",
"tokio-rustls",
@ -1308,7 +1320,7 @@ dependencies = [
[[package]]
name = "ironrdp-tokio"
version = "0.1.0"
source = "git+https://github.com/Devolutions/IronRDP?rev=04d78b6581efe91095169fb8a83eef1aa2d33a2d#04d78b6581efe91095169fb8a83eef1aa2d33a2d"
source = "git+https://github.com/Devolutions/IronRDP?rev=fd105e4b56647ab2f54aa23954aec4aaeef118e2#fd105e4b56647ab2f54aa23954aec4aaeef118e2"
dependencies = [
"bytes",
"ironrdp-async",
@ -1972,6 +1984,8 @@ dependencies = [
"env_logger",
"ironrdp-cliprdr",
"ironrdp-connector",
"ironrdp-displaycontrol",
"ironrdp-dvc",
"ironrdp-pdu",
"ironrdp-rdpdr",
"ironrdp-rdpsnd",
@ -2172,9 +2186,9 @@ dependencies = [
[[package]]
name = "rustls"
version = "0.21.9"
version = "0.21.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9"
checksum = "7fecbfb7b1444f477b345853b1fce097a2c6fb637b2bfb87e6bc5db0f043fae4"
dependencies = [
"log",
"ring",
@ -2976,9 +2990,9 @@ dependencies = [
[[package]]
name = "uuid"
version = "1.6.1"
version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0"
dependencies = [
"getrandom",
"serde",

View File

@ -1,14 +1,14 @@
{ wasm-bindgen-cli, ... }@args:
import ../generic.nix (args // {
version = "15.2.2";
hash = "sha256-LzJaskFaBtWkodeuT4mDNTs4+6FZj2OI+ZtjogU3KzQ=";
vendorHash = "sha256-D62Jk6LKdbprvkzAKoQVnEKdGQp5ITJYFf53q6154pU=";
yarnHash = "sha256-jpcjO1wT6m8J7LNQVeWo1j2G5P+sexrnNF1ipCZ8lCU=";
version = "15.3.7";
hash = "sha256-d+lfM1yt0xAWBqAqBCdEFcOHz32VT0EI4LybVbmjW0o=";
vendorHash = "sha256-pM6wy1tuMmUg8iNfeSmg8dW1cvP7G3fXa3vYuSEEdOc=";
yarnHash = "sha256-eWrR06FVkFxCrk+Z7BrY4dJjvEnUYzYrhSeD8ir3a08=";
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"boring-4.4.0" = "sha256-4wdl2kIA5oHQ0H6IddKQ+B5kRwrTeMbKe1+tAYZt2uw=";
"ironrdp-async-0.1.0" = "sha256-BKaVPr3O4D7DdwNJUjrU1zB7OwmJZnpJeyuMx+FqKjI=";
"ironrdp-async-0.1.0" = "sha256-NpBzPsvopu5Te6Ljln5rp1Wxc6O6mRB4lLh0JVnN+Xc=";
"sspi-0.10.1" = "sha256-fkclC/plTh2d8zcmqthYmr5yXqbPTeFxI1VuaPX5vxk=";
};
};

View File

@ -1,7 +1,6 @@
{ callPackages, lib, ... }@args:
let
f = args: rec {
teleport_13 = import ./13 args;
teleport_14 = import ./14 args;
teleport_15 = import ./15 args;
teleport = teleport_15;

View File

@ -1,44 +1,35 @@
{ lib, stdenv
, fetchFromGitHub
, glib
, gettext
, xorg
, pkg-config
, wrapGAppsHook3
, gtk3
, go
}:
stdenv.mkDerivation rec {
pname = "ibus-bamboo";
version = "0.8.2-rc18";
version = "0.8.4-rc3";
src = fetchFromGitHub {
owner = "BambooEngine";
repo = pname;
rev = "v" + lib.toUpper version;
sha256 = "sha256-5FSGPUJtUdYyeqJenvKaMIJcvon91I//62fnTCXcdig=";
sha256 = "sha256-P09gXuxbD4RJcXvgnRyFgSxt6NEXfpXJDPzl50ZtAxM=";
};
nativeBuildInputs = [
gettext
pkg-config
wrapGAppsHook3
go
];
buildInputs = [
glib
gtk3
xorg.libX11
xorg.xorgproto
xorg.libXtst
xorg.libXi
];
preConfigure = ''
export GOCACHE="$TMPDIR/go-cache"
sed -i "s,/usr,$out," bamboo.xml
sed -i "s,/usr,$out," data/bamboo.xml
'';
makeFlags = [
@ -52,6 +43,6 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/BambooEngine/ibus-bamboo";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ superbo ];
maintainers = with maintainers; [ astronaut0212 ];
};
}

View File

@ -1,14 +1,14 @@
{ lib, fetchFromGitHub, installShellFiles, python3Packages }:
{ lib, fetchFromGitHub, installShellFiles, nix-update-script, python3Packages }:
python3Packages.buildPythonApplication rec {
pname = "trash-cli";
version = "0.24.4.17";
version = "0.24.5.26";
src = fetchFromGitHub {
owner = "andreafrancia";
repo = "trash-cli";
rev = version;
hash = "sha256-pXDqn+QuhTE12zXq6A4GSGSCtYJ6hBahv2p9aYQXxaI=";
hash = "sha256-ltuMnxtG4jTTSZd6ZHWl8wI0oQMMFqW0HAPetZMfGtc=";
};
propagatedBuildInputs = with python3Packages; [ psutil six ];
@ -56,6 +56,8 @@ python3Packages.buildPythonApplication rec {
done
'';
passthru.updateScript = nix-update-script { };
meta = with lib; {
homepage = "https://github.com/andreafrancia/trash-cli";
description = "Command line interface to the freedesktop.org trashcan";

View File

@ -1,4 +1,5 @@
{ lib
{ callPackage
, lib
, stdenv
, rustPlatform
, fetchFromGitHub
@ -6,6 +7,7 @@
, openssl
, Security
, SystemConfiguration
, testers
}:
rustPlatform.buildRustPackage rec {
@ -41,6 +43,15 @@ rustPlatform.buildRustPackage rec {
"--skip=src/lib.rs"
];
passthru.tests = {
# NOTE: These assume that testers.lycheeLinkCheck uses this exact derivation.
# Which is true most of the time, but not necessarily after overriding.
ok = callPackage ./tests/ok.nix { };
fail = callPackage ./tests/fail.nix { };
fail-emptyDirectory = callPackage ./tests/fail-emptyDirectory.nix { };
network = testers.runNixOSTest ./tests/network.nix;
};
meta = with lib; {
description = "A fast, async, stream-based link checker written in Rust";
homepage = "https://github.com/lycheeverse/lychee";

View File

@ -0,0 +1,28 @@
{ runCommand, testers, emptyDirectory }:
let
sitePkg = runCommand "site" { } ''
dist=$out/dist
mkdir -p $dist
echo "<html><body><a href=\"https://example.com/foo\">foo</a></body></html>" > $dist/index.html
echo "<html><body></body></html>" > $dist/foo.html
'';
check = testers.lycheeLinkCheck {
site = sitePkg + "/dist";
remap = {
# Normally would recommend to append a subpath that hints why it's forbidden; see example in docs.
# However, we also want to test that a package is converted to a string *before*
# it's tested whether it's a store path. Mistake made during development caused:
# cannot check URI: InvalidUrlRemap("The remapping pattern must produce a valid URL, but it is not: /nix/store/4d0ix...empty-directory/foo
"https://example.com" = emptyDirectory;
};
};
failure = testers.testBuildFailure check;
in
runCommand "link-check-fail" { inherit failure; } ''
# The details of the message might change, but we have to make sure the
# correct error is reported, so that we know it's not something else that
# went wrong.
grep 'empty-directory/foo.*Cannot find file' $failure/testBuildFailure.log >/dev/null
touch $out
''

View File

@ -0,0 +1,21 @@
{ runCommand, testers }:
let
sitePkg = runCommand "site" { } ''
dist=$out/dist
mkdir -p $dist
echo "<html><body><a href=\"https://example.com/foo.html#foos-missing-anchor\">foo</a></body></html>" > $dist/index.html
echo "<html><body><a href=\".\">index</a></body></html>" > $dist/foo.html
'';
linkCheck = testers.lycheeLinkCheck rec {
site = sitePkg + "/dist";
remap = { "https://exampl[e]\\.com" = site; };
};
failure = testers.testBuildFailure linkCheck;
in
runCommand "link-check-fail" { inherit failure; } ''
grep -F foos-missing-anchor $failure/testBuildFailure.log >/dev/null
touch $out
''

View File

@ -0,0 +1,66 @@
{ config, hostPkgs, lib, ... }:
let
sitePkg = hostPkgs.runCommand "site" { } ''
dist=$out/dist
mkdir -p $dist
echo "<html><body><a href=\"http://example/foo.html\">foo</a></body></html>" > $dist/index.html
echo "<html><body><a href=\".\">index</a></body></html>" > $dist/foo.html
'';
check = config.node.pkgs.testers.lycheeLinkCheck {
site = sitePkg;
};
in
{
name = "testers-lychee-link-check-run";
nodes.client = { ... }: { };
nodes.example = {
networking.firewall.allowedTCPPorts = [ 80 ];
services.nginx = {
enable = true;
virtualHosts."example" = {
locations."/" = {
root = "/var/www/example";
index = "index.html";
};
};
};
};
testScript = ''
start_all()
# SETUP
example.succeed("""
mkdir -p /var/www/example
echo '<h1>hi</h1>' > /var/www/example/index.html
""")
client.wait_until_succeeds("""
curl --fail -v http://example
""")
# FAILURE CASE
client.succeed("""
exec 1>&2
r=0
${lib.getExe check.online} || {
r=$?
}
if [[ $r -ne 2 ]]; then
echo "lycheeLinkCheck unexpected exit code $r"
exit 1
fi
""")
# SUCCESS CASE
example.succeed("""
echo '<h1>foo</h1>' > /var/www/example/foo.html
""")
client.succeed("""
${lib.getExe check.online}
""")
'';
}

View File

@ -0,0 +1,12 @@
{ runCommand, testers }:
let
sitePkg = runCommand "site" { } ''
dist=$out/dist
mkdir -p $dist
echo "<html><body><a href=\"https://example.com/foo.html\">foo</a><a href=\"https://nixos.org/this-is-ignored.html\">bar</a></body></html>" > $dist/index.html
echo "<html><body><a href=\".\">index</a></body></html>" > $dist/foo.html
'';
in testers.lycheeLinkCheck rec {
site = sitePkg + "/dist";
remap = { "https://example.com" = site; };
}

View File

@ -1256,6 +1256,7 @@ mapAliases ({
telegram-cli = throw "telegram-cli was removed because it was broken and abandoned upstream"; # Added 2023-07-28
teleport_11 = throw "teleport 11 has been removed as it is EOL. Please upgrade to Teleport 12 or later"; # Added 2023-11-27
teleport_12 = throw "teleport 12 has been removed as it is EOL. Please upgrade to Teleport 13 or later"; # Added 2024-02-04
teleport_13 = throw "teleport 13 has been removed as it is EOL. Please upgrade to Teleport 14 or later"; # Added 2024-05-26
teleprompter = throw "teleprompter has been removed. reason: upstream dead and does not work with recent electron versions"; # Added 2024-03-14
tensile = throw "'tensile' has been replaced with 'rocmPackages.tensile'"; # Added 2023-10-08
tepl = libgedit-tepl; # Added 2024-04-29

View File

@ -13464,7 +13464,7 @@ with pkgs;
inherit (callPackages ../servers/teleport {
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security AppKit;
}) teleport_13 teleport_14 teleport_15 teleport;
}) teleport_14 teleport_15 teleport;
telepresence = callPackage ../tools/networking/telepresence {
pythonPackages = python3Packages;
@ -15095,6 +15095,8 @@ with pkgs;
temurin-bin = temurin-bin-21;
temurin-jre-bin = temurin-jre-bin-21;
semeru-bin-21 = javaPackages.compiler.semeru-bin.jdk-21;
semeru-jre-bin-21 = javaPackages.compiler.semeru-bin.jre-21;
semeru-bin-17 = javaPackages.compiler.semeru-bin.jdk-17;
semeru-jre-bin-17 = javaPackages.compiler.semeru-bin.jre-17;
semeru-bin-16 = javaPackages.compiler.semeru-bin.jdk-16;
@ -15104,8 +15106,8 @@ with pkgs;
semeru-bin-8 = javaPackages.compiler.semeru-bin.jdk-8;
semeru-jre-bin-8 = javaPackages.compiler.semeru-bin.jre-8;
semeru-bin = semeru-bin-17;
semeru-jre-bin = semeru-jre-bin-17;
semeru-bin = semeru-bin-21;
semeru-jre-bin = semeru-jre-bin-21;
adoptopenjdk-bin-17-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk17-linux.nix { inherit stdenv lib; };
adoptopenjdk-bin-17-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk17-darwin.nix { inherit lib; };

View File

@ -16718,6 +16718,8 @@ self: super: with self; {
vncdo = callPackage ../development/python-modules/vncdo { };
vnoise = callPackage ../development/python-modules/vnoise { };
vobject = callPackage ../development/python-modules/vobject { };
volatile = callPackage ../development/python-modules/volatile { };