Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-09-05 00:13:11 +00:00 committed by GitHub
commit 74cdd9c9b1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
139 changed files with 2148 additions and 14562 deletions

View File

@ -467,6 +467,7 @@ Yarn based projects use a `yarn.lock` file instead of a `package-lock.json` to p
- `yarnConfigHook`: Fetches the dependencies from the offline cache and installs them into `node_modules`.
- `yarnBuildHook`: Runs `yarn build` or a specified `yarn` command that builds the project.
- `yarnInstallHook`: Runs `yarn install --production` to prune dependencies and installs the project into `$out`.
An example usage of the above attributes is:
@ -501,9 +502,9 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
yarnInstallHook
# Needed for executing package.json scripts
nodejs
npmHooks.npmInstallHook
];
meta = {
@ -512,8 +513,6 @@ stdenv.mkDerivation (finalAttrs: {
})
```
Note that there is no setup hook for installing yarn based packages - `npmHooks.npmInstallHook` should fit most cases, but sometimes you may need to override the `installPhase` completely.
#### `yarnConfigHook` arguments {#javascript-yarnconfighook}
By default, `yarnConfigHook` relies upon the attribute `${yarnOfflineCache}` (or `${offlineCache}` if the former is not set) to find the location of the offline cache produced by `fetchYarnDeps`. To disable this phase, you can set `dontYarnInstallDeps = true` or override the `configurePhase`.
@ -525,9 +524,15 @@ This script by default runs `yarn --offline build`, and it relies upon the proje
- `yarnBuildScript`: Sets a different `yarn --offline` subcommand (defaults to `build`).
- `yarnBuildFlags`: Single string list of additional flags to pass the above command, or a Nix list of such additional flags.
#### `yarnInstallHook` arguments {#javascript-yarninstallhook}
To install the package `yarnInstallHook` uses both `npm` and `yarn` to cleanup project files and dependencies. To disable this phase, you can set `dontYarnInstall = true` or override the `installPhase`. Below is a list of additional `mkDerivation` arguments read by this hook:
- `yarnKeepDevDeps`: Disables the removal of devDependencies from `node_modules` before installation.
### yarn2nix {#javascript-yarn2nix}
WARNING: The `yarn2nix` functions have been deprecated in favor of the new `yarnConfigHook` and `yarnBuildHook`. Documentation for them still appears here for the sake of the packages that still use them. See also a tracking issue [#324246](https://github.com/NixOS/nixpkgs/issues/324246).
WARNING: The `yarn2nix` functions have been deprecated in favor of the new `yarnConfigHook`, `yarnBuildHook` and `yarnInstallHook`. Documentation for them still appears here for the sake of the packages that still use them. See also a tracking issue [#324246](https://github.com/NixOS/nixpkgs/issues/324246).
#### Preparation {#javascript-yarn2nix-preparation}

View File

@ -31,6 +31,10 @@
Users can use it by `services.displayManager.ly.enable` and config it by
`services.displayManager.ly.settings` to generate `/etc/ly/config.ini`
- The default sound server for most graphical sessions has been switched from PulseAudio to PipeWire.
Users that want to keep PulseAudio will want to set `services.pipewire.enable = false;` and `hardware.pulseaudio.enable = true;`.
There is currently no plan to fully deprecate and remove PulseAudio, however, PipeWire should generally be preferred for new installs.
## New Modules {#sec-release-24.11-new-modules}
- [TaskChampion Sync-Server](https://github.com/GothenburgBitFactory/taskchampion-sync-server), a [Taskwariror 3](https://taskwarrior.org/docs/upgrade-3/) sync server, replacing Taskwarrior 2's sync server named [`taskserver`](https://github.com/GothenburgBitFactory/taskserver).
@ -333,6 +337,10 @@
- `zx` was updated to v8, which introduces several breaking changes.
See the [v8 changelog](https://github.com/google/zx/releases/tag/8.0.0) for more information.
- `system.stateVersion` is now validated. If you never changed this yourself, you don't need to do anything. If your `stateVersion` is not a valid NixOS release version (e.g. "24.11" is valid),
your system was already at risk of experiencing silent incompatible state updates. If your previous value is a well-formed version but not a valid release (e.g. "23.12"),
round down to the nearest actual release. If it wasn't a well-formed version (e.g. "nixos-unstable"), set it to the version of NixOS that you originally installed.
- The `portunus` package and service do not support weak password hashes anymore.
If you installed Portunus on NixOS 23.11 or earlier, upgrade to NixOS 24.05 first to get support for strong password hashing.
Then, follow the instructions on the [upstream release notes](https://github.com/majewsky/portunus/releases/tag/v2.0.0) to upgrade all existing user accounts to strong password hashes.

View File

@ -32,9 +32,6 @@ with lib;
# there is no power management backend such as upower).
powerManagement.enable = true;
# Enable sound in graphical iso's.
hardware.pulseaudio.enable = true;
# VM guest additions to improve host-guest interaction
services.spice-vdagentd.enable = true;
services.qemuGuest.enable = true;

View File

@ -44,6 +44,49 @@ let
};
initrdRelease = pkgs.writeText "initrd-release" (attrsToText initrdReleaseContents);
checkRelease = version:
let
parts = lib.versions.splitVersion version;
isVersion = lib.length parts == 2 && lib.all (p: lib.stringLength p == 2) parts;
majorVersion = lib.toIntBase10 (lib.elemAt parts 0);
minorVersion = lib.elemAt parts 1;
versionPatterns = [
# only 13.10
{ fromMajor = 13; minor = [ "10" ]; }
# 14.04 and 14.12
{ fromMajor = 14; minor = [ "04" "12" ]; }
# only 15.09
{ fromMajor = 15; minor = [ "09" ]; }
# 16.03 to 20.09
{ fromMajor = 16; minor = [ "03" "09" ]; }
# from 21.05
{ fromMajor = 21; minor = [ "05" "11" ]; }
];
# find the versioning pattern that applies by looking for the first
# major version newer than `majorVersion`, and picking the previous pattern
patternIndex = lib.lists.findFirstIndex
({ fromMajor, ... }: fromMajor > majorVersion)
(lib.length versionPatterns)
versionPatterns;
validMinorVersions =
if patternIndex == 0
then []
else (lib.elemAt versionPatterns (patternIndex - 1)).minor;
correctMinorVersion = lib.elem minorVersion validMinorVersions;
notNewerThanNixpkgs = lib.versionAtLeast trivial.release version;
in isVersion && correctMinorVersion && notNewerThanNixpkgs;
releaseType = types.addCheck
(types.strMatching "[[:digit:]]{2}\\.[[:digit:]]{2}")
checkRelease // {
name = "nixosRelease";
description = "NixOS release version, e.g. \"${trivial.release}\"";
descriptionClass = "nonRestrictiveClause";
};
in
{
imports = [
@ -70,7 +113,7 @@ in
release = mkOption {
readOnly = true;
type = types.str;
type = releaseType;
default = trivial.release;
description = "The NixOS release (e.g. `16.03`).";
};
@ -151,7 +194,7 @@ in
};
stateVersion = mkOption {
type = types.str;
type = releaseType;
# TODO Remove this and drop the default of the option so people are forced to set it.
# Doing this also means fixing the comment in nixos/modules/testing/test-instrumentation.nix
apply = v:

View File

@ -14,8 +14,5 @@
libinput.enable = true; # for touchpad support on many laptops
};
# Enable sound in virtualbox appliances.
hardware.pulseaudio.enable = true;
environment.systemPackages = [ pkgs.mesa-demos pkgs.firefox ];
}

View File

@ -196,8 +196,9 @@ in {
programs.gamescope.enable = lib.mkDefault cfg.gamescopeSession.enable;
services.displayManager.sessionPackages = lib.mkIf cfg.gamescopeSession.enable [ gamescopeSessionFile ];
# optionally enable 32bit pulseaudio support if pulseaudio is enabled
# enable 32bit pulseaudio/pipewire support if needed
hardware.pulseaudio.support32Bit = config.hardware.pulseaudio.enable;
services.pipewire.alsa.support32Bit = config.services.pipewire.alsa.enable;
hardware.steam-hardware.enable = true;

View File

@ -50,7 +50,6 @@ in {
};
};
hardware.pulseaudio.enable = lib.mkDefault true;
networking.networkmanager.enable = lib.mkDefault true;
systemd.packages = with pkgs.lomiri; [

View File

@ -55,6 +55,12 @@ in
services.speechd.enable = lib.mkDefault true;
services.pipewire = {
enable = lib.mkDefault true;
pulse.enable = lib.mkDefault true;
alsa.enable = lib.mkDefault true;
};
systemd.defaultUnit = lib.mkIf (xcfg.autorun || dmcfg.enable) "graphical.target";
xdg = {

View File

@ -1,11 +1,8 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.unpoller;
configFile = pkgs.writeText "unpoller.json" (generators.toJSON {} {
configFile = pkgs.writeText "unpoller.json" (lib.generators.toJSON {} {
inherit (cfg) poller influxdb loki prometheus unifi;
});
@ -15,26 +12,26 @@ in {
];
options.services.unpoller = {
enable = mkEnableOption "unpoller";
enable = lib.mkEnableOption "unpoller";
poller = {
debug = mkOption {
type = types.bool;
debug = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Turns on line numbers, microsecond logging, and a per-device log.
This may be noisy if you have a lot of devices. It adds one line per device.
'';
};
quiet = mkOption {
type = types.bool;
quiet = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Turns off per-interval logs. Only startup and error logs will be emitted.
'';
};
plugins = mkOption {
type = with types; listOf str;
plugins = lib.mkOption {
type = with lib.types; listOf str;
default = [];
description = ''
Load additional plugins.
@ -43,22 +40,22 @@ in {
};
prometheus = {
disable = mkOption {
type = types.bool;
disable = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to disable the prometheus output plugin.
'';
};
http_listen = mkOption {
type = types.str;
http_listen = lib.mkOption {
type = lib.types.str;
default = "[::]:9130";
description = ''
Bind the prometheus exporter to this IP or hostname.
'';
};
report_errors = mkOption {
type = types.bool;
report_errors = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to report errors.
@ -67,53 +64,53 @@ in {
};
influxdb = {
disable = mkOption {
type = types.bool;
disable = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Whether to disable the influxdb output plugin.
'';
};
url = mkOption {
type = types.str;
url = lib.mkOption {
type = lib.types.str;
default = "http://127.0.0.1:8086";
description = ''
URL of the influxdb host.
'';
};
user = mkOption {
type = types.str;
user = lib.mkOption {
type = lib.types.str;
default = "unifipoller";
description = ''
Username for the influxdb.
'';
};
pass = mkOption {
type = types.path;
pass = lib.mkOption {
type = lib.types.path;
default = pkgs.writeText "unpoller-influxdb-default.password" "unifipoller";
defaultText = literalExpression "unpoller-influxdb-default.password";
defaultText = lib.literalExpression "unpoller-influxdb-default.password";
description = ''
Path of a file containing the password for influxdb.
This file needs to be readable by the unifi-poller user.
'';
apply = v: "file://${v}";
};
db = mkOption {
type = types.str;
db = lib.mkOption {
type = lib.types.str;
default = "unifi";
description = ''
Database name. Database should exist.
'';
};
verify_ssl = mkOption {
type = types.bool;
verify_ssl = lib.mkOption {
type = lib.types.bool;
default = true;
description = ''
Verify the influxdb's certificate.
'';
};
interval = mkOption {
type = types.str;
interval = lib.mkOption {
type = lib.types.str;
default = "30s";
description = ''
Setting this lower than the Unifi controller's refresh
@ -123,22 +120,22 @@ in {
};
loki = {
url = mkOption {
type = types.str;
url = lib.mkOption {
type = lib.types.str;
default = "";
description = ''
URL of the Loki host.
'';
};
user = mkOption {
type = types.str;
user = lib.mkOption {
type = lib.types.str;
default = "";
description = ''
Username for Loki.
'';
};
pass = mkOption {
type = types.path;
pass = lib.mkOption {
type = lib.types.path;
default = pkgs.writeText "unpoller-loki-default.password" "";
defaultText = "unpoller-influxdb-default.password";
description = ''
@ -147,29 +144,29 @@ in {
'';
apply = v: "file://${v}";
};
verify_ssl = mkOption {
type = types.bool;
verify_ssl = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Verify Loki's certificate.
'';
};
tenant_id = mkOption {
type = types.str;
tenant_id = lib.mkOption {
type = lib.types.str;
default = "";
description = ''
Tenant ID to use in Loki.
'';
};
interval = mkOption {
type = types.str;
interval = lib.mkOption {
type = lib.types.str;
default = "2m";
description = ''
How often the events are polled and pushed to Loki.
'';
};
timeout = mkOption {
type = types.str;
timeout = lib.mkOption {
type = lib.types.str;
default = "10s";
description = ''
Should be increased in case of timeout errors.
@ -179,92 +176,92 @@ in {
unifi = let
controllerOptions = {
user = mkOption {
type = types.str;
user = lib.mkOption {
type = lib.types.str;
default = "unifi";
description = ''
Unifi service user name.
'';
};
pass = mkOption {
type = types.path;
pass = lib.mkOption {
type = lib.types.path;
default = pkgs.writeText "unpoller-unifi-default.password" "unifi";
defaultText = literalExpression "unpoller-unifi-default.password";
defaultText = lib.literalExpression "unpoller-unifi-default.password";
description = ''
Path of a file containing the password for the unifi service user.
This file needs to be readable by the unifi-poller user.
'';
apply = v: "file://${v}";
};
url = mkOption {
type = types.str;
url = lib.mkOption {
type = lib.types.str;
default = "https://unifi:8443";
description = ''
URL of the Unifi controller.
'';
};
sites = mkOption {
type = with types; either (enum [ "default" "all" ]) (listOf str);
sites = lib.mkOption {
type = with lib.types; either (enum [ "default" "all" ]) (listOf str);
default = "all";
description = ''
List of site names for which statistics should be exported.
Or the string "default" for the default site or the string "all" for all sites.
'';
apply = toList;
apply = lib.toList;
};
save_ids = mkOption {
type = types.bool;
save_ids = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Collect and save data from the intrusion detection system to influxdb and Loki.
'';
};
save_events = mkOption {
type = types.bool;
save_events = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Collect and save data from UniFi events to influxdb and Loki.
'';
};
save_alarms = mkOption {
type = types.bool;
save_alarms = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Collect and save data from UniFi alarms to influxdb and Loki.
'';
};
save_anomalies = mkOption {
type = types.bool;
save_anomalies = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Collect and save data from UniFi anomalies to influxdb and Loki.
'';
};
save_dpi = mkOption {
type = types.bool;
save_dpi = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Collect and save data from deep packet inspection.
Adds around 150 data points and impacts performance.
'';
};
save_sites = mkOption {
type = types.bool;
save_sites = lib.mkOption {
type = lib.types.bool;
default = true;
description = ''
Collect and save site data.
'';
};
hash_pii = mkOption {
type = types.bool;
hash_pii = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Hash, with md5, client names and MAC addresses. This attempts
to protect personally identifiable information.
'';
};
verify_ssl = mkOption {
type = types.bool;
verify_ssl = lib.mkOption {
type = lib.types.bool;
default = true;
description = ''
Verify the Unifi controller's certificate.
@ -273,8 +270,8 @@ in {
};
in {
dynamic = mkOption {
type = types.bool;
dynamic = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Let prometheus select which controller to poll when scraping.
@ -284,18 +281,18 @@ in {
defaults = controllerOptions;
controllers = mkOption {
type = with types; listOf (submodule { options = controllerOptions; });
controllers = lib.mkOption {
type = with lib.types; listOf (submodule { options = controllerOptions; });
default = [];
description = ''
List of Unifi controllers to poll. Use defaults if empty.
'';
apply = map (flip removeAttrs [ "_module" ]);
apply = map (lib.flip removeAttrs [ "_module" ]);
};
};
};
config = mkIf cfg.enable {
config = lib.mkIf cfg.enable {
users.groups.unifi-poller = { };
users.users.unifi-poller = {
description = "unifi-poller Service User";

View File

@ -204,7 +204,6 @@ in {
programs.nm-applet.indicator = true; # Budgie uses AppIndicators.
hardware.bluetooth.enable = mkDefault true; # for Budgie's Status Indicator and BCC's Bluetooth panel.
hardware.pulseaudio.enable = mkDefault true; # for Budgie's Status Indicator and BCC's Sound panel.
xdg.portal.enable = mkDefault true; # for BCC's Applications panel.
xdg.portal.extraPortals = with pkgs; [

View File

@ -97,7 +97,6 @@ in
# Default services
services.blueman.enable = mkDefault (notExcluded pkgs.blueman);
hardware.bluetooth.enable = mkDefault true;
hardware.pulseaudio.enable = mkDefault true;
security.polkit.enable = true;
services.accounts-daemon.enable = true;
services.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));

View File

@ -47,7 +47,6 @@ in
'';
hardware.bluetooth.enable = mkDefault true;
hardware.pulseaudio.enable = mkDefault true;
security.polkit.enable = true;
services.deepin.dde-daemon.enable = mkForce true;

View File

@ -255,7 +255,6 @@ in
(lib.mkIf serviceCfg.core-os-services.enable {
hardware.bluetooth.enable = mkDefault true;
hardware.pulseaudio.enable = mkDefault true;
programs.dconf.enable = true;
security.polkit.enable = true;
services.accounts-daemon.enable = true;

View File

@ -130,7 +130,6 @@ in
# Default services
hardware.bluetooth.enable = mkDefault true;
hardware.pulseaudio.enable = mkDefault true;
security.polkit.enable = true;
services.accounts-daemon.enable = true;
services.bamf.enable = true;

View File

@ -380,7 +380,6 @@ in
xdg.portal.extraPortals = [ pkgs.plasma5Packages.xdg-desktop-portal-kde ];
xdg.portal.configPackages = mkDefault [ pkgs.plasma5Packages.xdg-desktop-portal-kde ];
# xdg-desktop-portal-kde expects PipeWire to be running.
# This does not, by default, replace PulseAudio.
services.pipewire.enable = mkDefault true;
# Update the start menu for each user that is currently logged in
@ -476,7 +475,7 @@ in
{
# The user interface breaks without pulse
assertion = config.hardware.pulseaudio.enable || (config.services.pipewire.enable && config.services.pipewire.pulse.enable);
message = "Plasma Mobile requires pulseaudio.";
message = "Plasma Mobile requires a Pulseaudio compatible sound server.";
}
];
@ -512,7 +511,6 @@ in
# The following services are needed or the UI is broken.
hardware.bluetooth.enable = true;
hardware.pulseaudio.enable = true;
networking.networkmanager.enable = true;
# Required for autorotate
hardware.sensor.iio.enable = lib.mkDefault true;

View File

@ -50,8 +50,6 @@ in
services.accounts-daemon.enable = true; # messages
hardware.pulseaudio.enable = true; # sound
# Lomiri-ish setup for Lomiri indicators
# TODO move into a Lomiri module, once the package set is far enough for the DE to start

View File

@ -21,7 +21,6 @@ import ./make-test-python.nix ({ pkgs, ...} :
user = "alice";
};
};
hardware.pulseaudio.enable = true; # needed for the factl test, /dev/snd/* exists without them but udev doesn't care then
environment.systemPackages = [ pkgs.xdotool ];
services.acpid.enable = true;
services.connman.enable = true;

View File

@ -21,10 +21,6 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
};
services.xserver.desktopManager.mate.enable = true;
# Silence log spam due to no sound drivers loaded:
# ALSA lib confmisc.c:855:(parse_card) cannot find card '0'
hardware.pulseaudio.enable = true;
};
enableOCR = true;

View File

@ -19,7 +19,6 @@ import ./make-test-python.nix ({ pkgs, ...} :
enable = true;
user = "alice";
};
hardware.pulseaudio.enable = true; # needed for the factl test, /dev/snd/* exists without them but udev doesn't care then
};
testScript = { nodes, ... }: let

View File

@ -19,9 +19,6 @@ import ./make-test-python.nix ({ pkgs, ...} : {
services.xserver.desktopManager.xfce.enable = true;
environment.systemPackages = [ pkgs.xfce.xfce4-whiskermenu-plugin ];
hardware.pulseaudio.enable = true; # needed for the factl test, /dev/snd/* exists without them but udev doesn't care then
};
enableOCR = true;

View File

@ -40,13 +40,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "86Box";
version = "4.2";
version = "4.2.1";
src = fetchFromGitHub {
owner = "86Box";
repo = "86Box";
rev = "v${finalAttrs.version}";
hash = "sha256-hXupMQ+i27sw3XOweZGatdRCUlp7weGR/PqCLAw/8fo=";
hash = "sha256-ue5Coy2MpP7Iwl81KJPQPC7eD53/Db5a0PGIR+DdPYI=";
};
patches = [ ./darwin.patch ];
@ -119,7 +119,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "86Box";
repo = "roms";
rev = "v${finalAttrs.version}";
hash = "sha256-WdQebSBuw2Wtz8ggMnGuxGoi2EKtNub3S8JKa6ZmdU8=";
hash = "sha256-p3djn950mTUIchFCEg56JbJtIsUuxmqRdYFRl50kI5Y=";
};
updateScript = ./update.sh;
};

View File

@ -14,14 +14,14 @@
stdenv.mkDerivation rec {
pname = "drawio";
version = "24.6.4";
version = "24.7.8";
src = fetchFromGitHub {
owner = "jgraph";
repo = "drawio-desktop";
rev = "v${version}";
fetchSubmodules = true;
hash = "sha256-6+a+70uN4Tk4pMXg3DQ3D0GcLNGFQEcPG05xxyUv1DQ=";
hash = "sha256-mpFmUPdgK9S6HcoO5wc6onUkmS6tRbFwLAsMhvIQ8sU=";
};
# `@electron/fuses` tries to run `codesign` and fails. Disable and use autoSignDarwinBinariesHook instead
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
offlineCache = fetchYarnDeps {
yarnLock = src + "/yarn.lock";
hash = "sha256-R8eCnp/ik3EfsmsVyJfLjyScUVQSm/EdXJesS/eVIX0=";
hash = "sha256-/3Dn4l5Bao01pcSXuPhq/AbH+gxZzHILP8TiHvplJpw=";
};
nativeBuildInputs = [

View File

@ -10,11 +10,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "stretchly";
version = "1.15.1";
version = "1.16.0";
src = fetchurl {
url = "https://github.com/hovancik/stretchly/releases/download/v${finalAttrs.version}/stretchly-${finalAttrs.version}.tar.xz";
hash = "sha256-suTH6o7vtUr2DidPXAwqrya5/WukQOFmS/34LaiWDBs=";
hash = "sha256-gOMUXGldtZUfqLABJHfbToYe0pcAn8dRWEFxCi/gY9Y=";
};
icon = fetchurl {

View File

@ -6,23 +6,23 @@
}:
rustPlatform.buildRustPackage rec {
pname = "notmuch-mailmover";
version = "0.2.0";
version = "0.3.0";
src = fetchFromGitHub {
owner = "michaeladler";
repo = pname;
rev = "v${version}";
hash = "sha256-12eDCqer13GJS0YjJDleJbkP4o7kZfof6HlLG06qZW0=";
hash = "sha256-b+6vQ7m49+9RQ+GA75VgOAJej/2zeu5JAje/OazsEsk=";
};
cargoHash = "sha256-B5VSkhY4nNXSG2SeCl22pSkl6SXEEoYj99wEsNhs/bQ=";
cargoHash = "sha256-qHSmfR5iUBXq8OQJkGCVA4JnExXisN2OIAVKiVMUaZo=";
nativeBuildInputs = [ installShellFiles ];
buildInputs = [ notmuch ];
postInstall = ''
installManPage share/notmuch-mailmover.1
installManPage share/notmuch-mailmover.1.gz
installShellCompletion --cmd notmuch-mailmover \
--bash share/notmuch-mailmover.bash \
--fish share/notmuch-mailmover.fish \

View File

@ -46,14 +46,14 @@
stdenv.mkDerivation (finalAttrs: {
# LAMMPS has weird versioning convention. Updates should go smoothly with:
# nix-update --commit lammps --version-regex 'stable_(.*)'
version = "2Aug2023_update4";
version = "29Aug2024";
pname = "lammps";
src = fetchFromGitHub {
owner = "lammps";
repo = "lammps";
rev = "stable_${finalAttrs.version}";
hash = "sha256-4y41kRO1iKFoCDVe6Dap4njcFa3z+9acKomoxOL7ipI=";
hash = "sha256-UySWbJPubl318IA2MeTrz3Ya+9YyVOeR/Fs4aYI1R2o=";
};
preConfigure = ''
cd cmake

View File

@ -20,24 +20,16 @@
rustPlatform.buildRustPackage rec {
pname = "jujutsu";
version = "0.20.0";
version = "0.21.0";
src = fetchFromGitHub {
owner = "martinvonz";
repo = "jj";
rev = "v${version}";
hash = "sha256-1lONtpataRi0yE6LpN6oNnC3OAW918v8GFCUwinYJWI=";
hash = "sha256-uZsfHhcYpobatWaDQczuc9Z3BWHN5VO0qr/8mu5kEio=";
};
cargoPatches = [
# cargo: bump `git2` to 0.19.0
(fetchpatch2 {
url = "https://github.com/martinvonz/jj/commit/38f6ee89183d886e432472c5888908c9900c9c18.patch?full_index=1";
hash = "sha256-BVcak7uIEhwoO0f9hf0GVKKSVmp/ueKD5C9F8J0iL3w=";
})
];
cargoHash = "sha256-FxcvLT0YnXcjDCKxuyijYsVSMLjx1glDzmFH5ctSx6s=";
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

View File

@ -1,10 +1,9 @@
{ lib, stdenv, fetchurl
, meson, ninja, pkg-config, python3, wayland-scanner
, cairo, libGL, libdrm, libevdev, libinput, libxkbcommon, mesa, seatd, wayland
, wayland-protocols, xcbutilcursor
, cairo, libGL, libdisplay-info, libdrm, libevdev, libinput, libxkbcommon, mesa
, seatd, wayland, wayland-protocols, xcbutilcursor
, demoSupport ? true
, hdrSupport ? true, libdisplay-info
, jpegSupport ? true, libjpeg
, lcmsSupport ? true, lcms2
, pangoSupport ? true, pango
@ -19,27 +18,19 @@
stdenv.mkDerivation rec {
pname = "weston";
version = "13.0.3";
version = "14.0.0";
src = fetchurl {
url = "https://gitlab.freedesktop.org/wayland/weston/-/releases/${version}/downloads/weston-${version}.tar.xz";
hash = "sha256-J/aNluO5fZjare8TogI1ZSSST6OBQY+mcWuRNu8JkJM=";
hash = "sha256-R/0DJbC5SOmwA6OP306zqFgfP9x0C4kys1roeTv05KU=";
};
postPatch = ''
# raise neatvnc version bound to < 0.9.0
# https://gitlab.freedesktop.org/wayland/weston/-/issues/890
substituteInPlace libweston/backend-vnc/meson.build \
--replace-fail "'neatvnc', version: ['>= 0.7.0', '< 0.8.0']" "'neatvnc', version: ['>= 0.7.0', '< 0.9.0']"
'';
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ meson ninja pkg-config python3 wayland-scanner ];
buildInputs = [
cairo libGL libdrm libevdev libinput libxkbcommon mesa seatd wayland
wayland-protocols
] ++ lib.optional hdrSupport libdisplay-info
++ lib.optional jpegSupport libjpeg
cairo libGL libdisplay-info libdrm libevdev libinput libxkbcommon mesa seatd
wayland wayland-protocols
] ++ lib.optional jpegSupport libjpeg
++ lib.optional lcmsSupport lcms2
++ lib.optional pangoSupport pango
++ lib.optional pipewireSupport pipewire

View File

@ -2,9 +2,14 @@
stdenv,
lib,
makeWrapper,
installShellFiles,
nodejsInstallManuals,
nodejsInstallExecutables,
coreutils,
nix-prefetch-git,
fetchurl,
jq,
nodejs,
nodejs-slim,
prefetch-yarn-deps,
fixup-yarn-lock,
@ -175,4 +180,16 @@ in
description = "Run yarn build in buildPhase";
};
} ./yarn-build-hook.sh;
yarnInstallHook = makeSetupHook {
name = "yarn-install-hook";
propagatedBuildInputs = [
yarn
nodejsInstallManuals
nodejsInstallExecutables
];
substitutions = {
jq = lib.getExe jq;
};
} ./yarn-install-hook.sh;
}

View File

@ -0,0 +1,79 @@
# shellcheck shell=bash
yarnInstallHook() {
echo "Executing yarnInstallHook"
runHook preInstall
local -r packageOut="$out/lib/node_modules/$(@jq@ --raw-output '.name' ./package.json)"
mkdir -p "$packageOut"
local -ar yarnArgs=(
--ignore-engines
--ignore-platform
--ignore-scripts
--no-progress
--non-interactive
--offline
)
local -r tmpDir="$(mktemp -d yarnInstallHook.XXXXXX)"
# yarn pack does not work at all with bundleDependencies.
# Since we are imediately unpacking, we can just remove them from package.json
# This will NOT be fixed in yarn v1: https://github.com/yarnpkg/yarn/issues/6794
mv ./package.json "$tmpDir/package.json.orig"
# Note: two spellings are accepted, 'bundleDependencies' and 'bundledDependencies'
@jq@ 'del(.bundleDependencies)|del(.bundledDependencies)' "$tmpDir/package.json.orig" > ./package.json
# TODO: figure out a way to avoid redundant compress/decompress steps
yarn pack \
--filename "$tmpDir/yarn-pack.tgz" \
"${yarnArgs[@]}"
tar xzf "$tmpDir/yarn-pack.tgz" \
-C "$packageOut" \
--strip-components 1 \
package/
mv "$tmpDir/package.json.orig" ./package.json
nodejsInstallExecutables ./package.json
nodejsInstallManuals ./package.json
local -r nodeModulesPath="$packageOut/node_modules"
if [ ! -d "$nodeModulesPath" ]; then
if [ -z "${yarnKeepDevDeps-}" ]; then
# Yarn has a 'prune' command, but it's only a stub that directs you to use install
if ! yarn install \
--frozen-lockfile \
--force \
--production=true \
"${yarnArgs[@]}"
then
echo
echo
echo "ERROR: yarn prune step failed"
echo
echo 'If yarn tried to download additional dependencies above, try setting `yarnKeepDevDeps = true`.'
echo
exit 1
fi
fi
find node_modules -maxdepth 1 -type d -empty -delete
cp -r node_modules "$nodeModulesPath"
fi
runHook postInstall
echo "Finished yarnInstallHook"
}
if [ -z "${dontYarnInstall-}" ] && [ -z "${installPhase-}" ]; then
installPhase=yarnInstallHook
fi

File diff suppressed because it is too large Load Diff

View File

@ -1,33 +1,44 @@
{
stdenvNoCC,
lib,
buildNpmPackage,
fetchFromGitHub,
fetchYarnDeps,
yarnConfigHook,
yarnBuildHook,
yarnInstallHook,
nodejs,
nix-update-script,
testers,
writeText,
runCommand,
blade-formatter,
nodejs,
}:
buildNpmPackage rec {
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "blade-formatter";
version = "1.41.1";
src = fetchFromGitHub {
owner = "shufo";
repo = "blade-formatter";
rev = "v${version}";
rev = "v${finalAttrs.version}";
hash = "sha256-iaWpIa+H+ocAXGc042PfmCu9UcJZeso9ripWB2/1oTs=";
};
postPatch = ''
cp ${./package-lock.json} ./package-lock.json
'';
yarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-zn0PgLIWk23EhYeOKF2RkpvLOusVrqoBazKcJpIAzm8=";
};
npmDepsHash = "sha256-wEz0DTbg+Fdmsf0Qyeu9QS+I8gkPJeaJC/3HuP913og=";
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
yarnInstallHook
nodejs
];
passthru = {
updateScript = ./update.sh;
updateScript = nix-update-script { };
tests = {
version = testers.testVersion {
package = blade-formatter;
@ -64,4 +75,4 @@ buildNpmPackage rec {
mainProgram = "blade-formatter";
inherit (nodejs.meta) platforms;
};
}
})

View File

@ -1,38 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p ripgrep common-updater-scripts prefetch-npm-deps jq sd
set -xeu -o pipefail
PACKAGE_DIR="$(realpath "$(dirname "$0")")"
cd "$PACKAGE_DIR/.."
while ! test -f default.nix; do cd .. ; done
NIXPKGS_DIR="$PWD"
new_version="$(
list-git-tags --url=https://github.com/shufo/blade-formatter \
| rg '^v([\d.]*)' -r '$1' \
| sort --version-sort \
| tail -n1
)"
cd "$NIXPKGS_DIR"
update-source-version blade-formatter "$new_version"
TMPDIR="$(mktemp -d)"
cd "$TMPDIR"
src="$(nix-build --no-link "$NIXPKGS_DIR" -A blade-formatter.src)"
cp $src/package.json .
npm update
cp ./package-lock.json "$PACKAGE_DIR"
prev_npm_hash="$(nix-instantiate "$NIXPKGS_DIR" \
--eval --json \
-A blade-formatter.npmDepsHash \
| jq -r .
)"
new_npm_hash="$(prefetch-npm-deps ./package-lock.json)"
sd --fixed-strings "$prev_npm_hash" "$new_npm_hash" "$PACKAGE_DIR/package.nix"
rm -rf "$TMPDIR"

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchFromGitHub, fetchYarnDeps, yarnConfigHook, npmHooks, nodejs, testers }:
{ lib, stdenv, fetchFromGitHub, fetchYarnDeps, yarnConfigHook, yarnInstallHook, nodejs, testers }:
stdenv.mkDerivation (finalAttrs: {
pname = "codefresh";
@ -17,11 +17,9 @@ stdenv.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
yarnConfigHook
npmHooks.npmInstallHook
yarnInstallHook
nodejs
];
# Tries to fetch stuff from the internet
dontNpmPrune = true;
passthru.tests.version = testers.testVersion {
package = finalAttrs.finalPackage;

View File

@ -4,24 +4,24 @@
fetchurl,
}:
let
version = "v1.18.1";
version = "v1.19.1";
sources = {
x86_64-linux = {
url = "https://github.com/GoogleContainerTools/container-structure-test/releases/download/${version}/container-structure-test-linux-amd64";
hash = "sha256-vnZsdjRix3P7DpDz00WUTbNBLQIFPKzfUbVbxn+1ygM=";
hash = "sha256-7KScpej6Km4fuv6XJez4frLwXUm91lII2RLLT71YRrs=";
};
aarch64-linux = {
url = "https://github.com/GoogleContainerTools/container-structure-test/releases/download/${version}/container-structure-test-linux-arm64";
hash = "sha256-/YPAeh/Ad2YVdZ/irpgikQST0uWITWYQOB4qI54aPlY=";
hash = "sha256-5MyjOzbDPrV5R3ldJCINipJPOILCzx8+xBVO4bxq9ic=";
};
x86_64-darwin = {
url = "https://github.com/GoogleContainerTools/container-structure-test/releases/download/${version}/container-structure-test-darwin-amd64";
hash = "sha256-tJ1gMnQ7d6du65fnw5GV425kWl/3jLwcqj3gIHHuOyU=";
hash = "sha256-2QwyKvgzOdGOEuZVwntCpBGBk0JnOLpYOoEYp48qB/I=";
};
aarch64-darwin = {
url = "https://github.com/GoogleContainerTools/container-structure-test/releases/download/${version}/container-structure-test-darwin-arm64";
hash = "sha256-cNSb3nhSGU9q/PJDNdEeV/hlCXAdXkaV6SROdXnXjp0=";
hash = "sha256-x3RmVdDFmHoGOqX49OWeAab/6m1U0jq/g/30rNjj5aI=";
};
};
in

View File

@ -8,12 +8,12 @@
}:
stdenvNoCC.mkDerivation rec {
pname = "cosmic-icons";
version = "0-unstable-2024-08-04";
version = "1.0.0-alpha.1-unstable-2024-08-16";
src = fetchFromGitHub {
owner = "pop-os";
repo = pname;
rev = "f93dcdfa1060c2cf3f8cf0b56b0338292edcafa5";
rev = "ea9e3b8cf12bfa7112b8be8390c0185888358504";
sha256 = "sha256-KvEKFmsh7ljt9JbaqyZfTUiFZHZM2Ha1TwUDljXXLDw=";
};

View File

@ -4,8 +4,8 @@
, fetchYarnDeps
, yarnConfigHook
, yarnBuildHook
, yarnInstallHook
, nodejs
, npmHooks
}:
let
@ -37,12 +37,9 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
yarnInstallHook
nodejs
npmHooks.npmInstallHook
];
# From some reason causes the build to fail due to dependencies not available
# offline
dontNpmPrune = true;
meta = with lib; {
homepage = "https://github.com/element-hq/element-call";

View File

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "gickup";
version = "0.10.34";
version = "0.10.36";
src = fetchFromGitHub {
owner = "cooperspencer";
repo = "gickup";
rev = "refs/tags/v${version}";
hash = "sha256-cdYQU5pQj+vypFtvPxN1Vg4ckui+vcYUmOJQ9d3XTK4=";
hash = "sha256-Os26Il/FhH5cpgpaMZGfOljZ4p3XlCrRPEvzKD6kgpg=";
};
vendorHash = "sha256-x+K3qXV0F4OKsldsnNcR5w4fmwYyt7V7IDrcHBNPttI=";

View File

@ -243,7 +243,13 @@ let
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:${addDriverRunpath.driverLink}/share" \
--set CHROME_WRAPPER "google-chrome-$dist" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \
--add-flags ${lib.escapeShellArg commandLineArgs}
--add-flags ${
lib.concatStringsSep " " [
(lib.escapeShellArg commandLineArgs)
# Disables auto updates and browser outdated popup
"--simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'"
]
}
for elf in $out/share/google/$appname/{chrome,chrome-sandbox,chrome_crashpad_handler}; do
patchelf --set-rpath $rpath $elf
@ -283,7 +289,13 @@ let
mkdir -p $out/bin
makeWrapper $out/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome $out/bin/google-chrome-stable \
--add-flags ${lib.escapeShellArg commandLineArgs}
--add-flags ${
lib.concatStringsSep " " [
(lib.escapeShellArg commandLineArgs)
# Disables auto updates and browser outdated popup
"--simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'"
]
}
runHook postInstall
'';

View File

@ -2,16 +2,16 @@
python3.pkgs.buildPythonApplication rec {
pname = "kas";
version = "4.2";
version = "4.4";
src = fetchFromGitHub {
owner = "siemens";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-NjNPcCqmjFeydTgNdN8QRrFG5Mys2jL4I8TiznO2rSA=";
hash = "sha256-ws2V16HSGn2zyMmcG601ScHfONSE/DBVO3Gaj8dktf4=";
};
propagatedBuildInputs = with python3.pkgs; [ setuptools kconfiglib jsonschema distro pyyaml ];
propagatedBuildInputs = with python3.pkgs; [ setuptools kconfiglib jsonschema distro pyyaml gitpython ];
# Tests require network as they try to clone repos
doCheck = false;

View File

@ -0,0 +1,40 @@
{
build2,
fetchgit,
gccStdenv,
lib,
xercesc,
}:
gccStdenv.mkDerivation (finalAttrs: {
pname = "libcutl";
version = "1.11.0";
src = fetchgit {
url = "https://git.codesynthesis.com/libcutl/libcutl.git";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-LY2ZyxduI6xftVjVqjNkhYPFTL5bvHC289Qcei1Kiw4=";
};
nativeBuildInputs = [ build2 ];
buildInputs = [ xercesc ];
enableParallelBuilding = true;
doCheck = true;
meta = {
description = "C++ utility library from Code Synthesis";
longDescription = ''
libcutl is a C++ utility library.
It contains a collection of generic and independent components such as
meta-programming tests, smart pointers, containers, compiler building blocks, etc.
'';
homepage = "https://codesynthesis.com/projects/libcutl/";
changelog = "https://git.codesynthesis.com/cgit/libcutl/libcutl/log/";
platforms = lib.platforms.all;
maintainers = [ lib.maintainers.xzfc ];
license = lib.licenses.mit;
};
})

View File

@ -0,0 +1,35 @@
{
lib,
appimageTools,
fetchurl,
}:
let
pname = "librewolf-bin";
upstreamVersion = "129.0.2-1";
version = lib.replaceStrings [ "-" ] [ "." ] upstreamVersion;
src = fetchurl {
url = "https://gitlab.com/api/v4/projects/24386000/packages/generic/librewolf/${upstreamVersion}/LibreWolf.x86_64.AppImage";
hash = "sha256-h4SZnI2BwCSsLADYIxTXu82Jyst1hqYGHt54MnluLss=";
};
appimageContents = appimageTools.extract { inherit pname version src; };
in
appimageTools.wrapType2 {
inherit pname version src;
extraInstallCommands = ''
mv $out/bin/{${pname},librewolf}
install -Dm444 ${appimageContents}/io.gitlab.LibreWolf.desktop -t $out/share/applications
install -Dm444 ${appimageContents}/librewolf.png -t $out/share/pixmaps
'';
meta = {
description = "Fork of Firefox, focused on privacy, security and freedom (upstream AppImage release)";
homepage = "https://librewolf.net";
license = lib.licenses.mpl20;
maintainers = with lib.maintainers; [ eclairevoyant ];
platforms = [ "x86_64-linux" ];
mainProgram = "librewolf";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
}

View File

@ -20,11 +20,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lunacy";
version = "9.6.2";
version = "10.0.1";
src = fetchurl {
url = "https://lcdn.icons8.com/setup/Lunacy_${finalAttrs.version}.deb";
hash = "sha256-iTne+vUnv+O/+QUKgSUr+ACdZpXrvRQkZmqghJH1fDw=";
hash = "sha256-roD/bKv1N2sru/tZ6Zl1J2AyY1mgj2ssB2a42kwBNHM=";
};
unpackCmd = ''

View File

@ -4,8 +4,8 @@
, fetchYarnDeps
, yarnConfigHook
, yarnBuildHook
, yarnInstallHook
, nodejs
, npmHooks
}:
stdenv.mkDerivation (finalAttrs: {
@ -27,8 +27,8 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
yarnConfigHook
yarnBuildHook
yarnInstallHook
nodejs
npmHooks.npmInstallHook
];
# Upstream doesn't include a script in package.json that only builds without
# testing, and tests fail because they need to access online websites. Hence
@ -39,8 +39,6 @@ stdenv.mkDerivation (finalAttrs: {
postBuild = ''
yarn --offline run rollup -c
'';
# Tries to download stuff from the internet in this phase.
dontNpmPrune = true;
meta = {
changelog = "https://github.com/postlight/parser/blob/${finalAttrs.src.rev}/CHANGELOG.md";

View File

@ -6,11 +6,11 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "proton-ge-bin";
version = "GE-Proton9-11";
version = "GE-Proton9-12";
src = fetchzip {
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${finalAttrs.version}/${finalAttrs.version}.tar.gz";
hash = "sha256-OGsgR56R/MaFxahsb/42kA9CEexGDF/aTZlyf6v8tXo=";
hash = "sha256-2/vxX5AT1qQ50jBrQkZIzlmzkOAX+qzINEeD3Lo1f40=";
};
outputs = [

View File

@ -33,10 +33,10 @@
let
# Keep these separate so the update script can regex them
rpcs3GitVersion = "16875-3b36df48e";
rpcs3Version = "0.0.32-16875-3b36df48e";
rpcs3Revision = "3b36df48e9682f257d4eb4151b7b7c390f952858";
rpcs3Hash = "sha256-rGRMIbLwUYTC11ErJMYreinZbckIwxGJ9WXdySQ9j28=";
rpcs3GitVersion = "16892-7e3b8b5cd";
rpcs3Version = "0.0.33-16892-7e3b8b5cd";
rpcs3Revision = "7e3b8b5cdb0c0579382a93d223bfb6e776999a35";
rpcs3Hash = "sha256-3wqJNn4/wP5f3+hUCvYjxrcuMZ6MegpuNot5Mq+DQdI=";
inherit (qt6Packages) qtbase qtmultimedia wrapQtAppsHook qtwayland;
in

View File

@ -6,13 +6,13 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "stevenblack-blocklist";
version = "3.14.100";
version = "3.14.104";
src = fetchFromGitHub {
owner = "StevenBlack";
repo = "hosts";
rev = "refs/tags/${finalAttrs.version}";
hash = "sha256-6PdF/COJ7UA8ULHMJ2HEIwc6wwNDUxS/92r3D8f6N1E=";
hash = "sha256-APxlS1c68AGOGUBv/SVHTFDYuvMZHxFVEqXDlfEJlqk=";
};
outputs = [

View File

@ -4,6 +4,8 @@
fetchFromGitHub,
makeBinaryWrapper,
mkpasswd,
nixosTests,
nix-update-script,
}:
rustPlatform.buildRustPackage rec {
@ -33,6 +35,19 @@ rustPlatform.buildRustPackage rec {
stripAllList = [ "bin" ];
passthru = {
updateScript = nix-update-script { };
tests = {
inherit (nixosTests)
userborn
userborn-mutable-users
userborn-mutable-etc
userborn-immutable-users
userborn-immutable-etc
;
};
};
meta = with lib; {
homepage = "https://github.com/nikstur/userborn";
description = "Declaratively bear (manage) Linux users and groups";

View File

@ -8,18 +8,18 @@
rustPlatform.buildRustPackage rec {
pname = "vimcats";
version = "1.0.2";
version = "1.1.0";
src = fetchFromGitHub {
owner = "mrcjkb";
repo = "vimcats";
rev = "v${version}";
sha256 = "sha256-YZPLZgC0v5zw/+X3r0G1MZ+46c0K8J3ClFQYH5BqbUE=";
sha256 = "sha256-QV/eIy6yd6Lnmo8XV+E37/oCZCC3jlPu31emH0MgiO4=";
};
buildFeatures = [ "cli" ];
cargoHash = "sha256-gxCsB8lx9gTEsWV3uCX2TKTzxCUZ9JHo+1+voU7gKhY=";
cargoHash = "sha256-LBiuh7OkEoOkoPXCeGnDQLSlRIMkbiWyCv0dk0y7swk=";
passthru.tests.version = testers.testVersion { package = vimcats; };

View File

@ -11,20 +11,20 @@
rustPlatform.buildRustPackage rec {
pname = "yazi";
version = "0.3.2";
version = "0.3.3";
src = fetchFromGitHub {
owner = "sxyazi";
repo = "yazi";
rev = "v${version}";
hash = "sha256-skJK0iAqQ4uyEx/SeF/97YHWKYBNHmdYpltx3h6JvNc=";
hash = "sha256-bTDf8muJN0G4+c6UagtWgNLlmGN15twEBjdmKEP0bCE=";
};
cargoHash = "sha256-w7eFeKmYFDmSpG/p4r2w6qw8uUm4q+VUbAI+TnKhp5s=";
cargoHash = "sha256-8UsdanF8y4uFoXdC7aAw7pVFRd9GACcfVvqkUtFmN5k=";
env.YAZI_GEN_COMPLETIONS = true;
env.VERGEN_GIT_SHA = "Nixpkgs";
env.VERGEN_BUILD_DATE = "2024-08-28";
env.VERGEN_BUILD_DATE = "2024-09-04";
nativeBuildInputs = [ installShellFiles ];
buildInputs = [ rust-jemalloc-sys ] ++ lib.optionals stdenv.isDarwin [ Foundation ];

View File

@ -12,13 +12,13 @@
rustPlatform.buildRustPackage rec {
pname = "youki";
version = "0.4.0";
version = "0.4.1";
src = fetchFromGitHub {
owner = "containers";
repo = pname;
rev = "v${version}";
hash = "sha256-dkVnNtBfvjf47p1N5/syHqjlDVnbKRDqNJ98ym5B+mg=";
hash = "sha256-vXYoLjmPiK2f6Yg5YGTp76hmawnbfcnMOOppsWwKtAk=";
};
nativeBuildInputs = [
@ -48,7 +48,7 @@ rustPlatform.buildRustPackage rec {
"youki"
];
cargoHash = "sha256-Nv1LAkWYwWb0Izvd7UlKU4wx3vVkmO9Rcpt6AuTwObU=";
cargoHash = "sha256-s8L/L3be5fRahDiLKnHQcU52F+AJVr7Q3uL8mcloVv8=";
meta = with lib; {
description = "Container runtime written in Rust";

File diff suppressed because it is too large Load Diff

View File

@ -35,22 +35,22 @@ assert withGLES -> stdenv.isLinux;
rustPlatform.buildRustPackage rec {
pname = "zed";
version = "0.150.4";
version = "0.151.1";
src = fetchFromGitHub {
owner = "zed-industries";
repo = "zed";
rev = "refs/tags/v${version}";
hash = "sha256-dMhsKaqEWyjPjxaSYrz6zAvOzDbWrsPh6oKRu+D57cM=";
hash = "sha256-9xvCElW1J3LMiNPUeVxaNIexx7a2rVEoAh4Ntrh1N6E=";
fetchSubmodules = true;
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"alacritty_terminal-0.24.1-dev" = "sha256-aVB1CNOLjNh6AtvdbomODNrk00Md8yz8QzldzvDo1LI=";
"alacritty_terminal-0.24.1-dev" = "sha256-b4oSDhsAAYjpYGfFgA1Q1642JoJQ9k5RTsPgFUpAFmc=";
"async-pipe-0.1.3" = "sha256-g120X88HGT8P6GNCrzpS5SutALx5H+45Sf4iSSxzctE=";
"blade-graphics-0.4.0" = "sha256-sGXhXmgtd7Wx/Gf7HCWro4RsQOGS4pQt8+S3T+2wMfY=";
"blade-graphics-0.4.0" = "sha256-LmJ8f1VVzPfjpZp2T5WKxjEdzE/avfWmA3dq/V27eJc=";
"cosmic-text-0.11.2" = "sha256-TLPDnqixuW+aPAhiBhSvuZIa69vgV3xLcw32OlkdCcM=";
"font-kit-0.14.1" = "sha256-qUKvmi+RDoyhMrZ7T6SoVAyMc/aasQ9Y/okzre4SzXo=";
"lsp-types-0.95.1" = "sha256-N4MKoU9j1p/Xeowki/+XiNQPwIcTm9DgmfM/Eieq4js=";

View File

@ -3,16 +3,16 @@
, python3
}:
python3.pkgs.buildPythonPackage rec {
python3.pkgs.buildPythonApplication rec {
pname = "zigpy-cli";
version = "1.0.4";
version = "1.0.5";
pyproject = true;
src = fetchFromGitHub {
owner = "zigpy";
repo = "zigpy-cli";
rev = "refs/tags/v${version}";
hash = "sha256-OxVSEBo+wFEBZnWpmQ4aUZWppCh0oavxlQvwDXiWiG8=";
hash = "sha256-69E6PkrCE5S498pO33uEz7g2dV41H0vNfFinUHDATTQ=";
};
postPatch = ''
@ -21,11 +21,11 @@ python3.pkgs.buildPythonPackage rec {
--replace-fail 'dynamic = ["version"]' 'version = "${version}"'
'';
nativeBuildInputs = with python3.pkgs; [
build-system = with python3.pkgs; [
setuptools
];
propagatedBuildInputs = with python3.pkgs; [
dependencies = with python3.pkgs; [
bellows
click
coloredlogs
@ -33,7 +33,7 @@ python3.pkgs.buildPythonPackage rec {
zigpy
zigpy-deconz
zigpy-xbee
# zigpy-zboss # not packaged
zigpy-zboss
zigpy-zigate
zigpy-znp
];
@ -53,7 +53,7 @@ python3.pkgs.buildPythonPackage rec {
description = "Command line interface for zigpy";
mainProgram = "zigpy";
homepage = "https://github.com/zigpy/zigpy-cli";
changelog = "https://github.com/zigpy/zigpy/releases/tag/v${version}";
changelog = "https://github.com/zigpy/zigpy-cli/releases/tag/v${version}";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ SuperSandro2000 ];
platforms = platforms.linux;

View File

@ -2,13 +2,13 @@
stdenvNoCC.mkDerivation rec {
pname = "tela-icon-theme";
version = "2024-04-19";
version = "2024-09-04";
src = fetchFromGitHub {
owner = "vinceliuice";
repo = "tela-icon-theme";
rev = version;
hash = "sha256-Z1U0KJMnNNXL5fn3kPoZ2RZNi95T27/tnWVgR8kTj1o=";
hash = "sha256-ZzF4U/cTy/7oSDQs4+dezewgNzS5zroba8wpcfPciW4=";
};
nativeBuildInputs = [ gtk3 jdupes ];

View File

@ -26,13 +26,13 @@ lib.checkListOfEnum "${pname}: theme tweaks" validTweaks tweaks
stdenvNoCC.mkDerivation
rec {
inherit pname;
version = "2024-05-30";
version = "2024-09-02";
src = fetchFromGitHub {
repo = "Orchis-theme";
owner = "vinceliuice";
rev = version;
hash = "sha256-Dpdt7acRodtR4EE4STIiYHidehZwFGoYS8Oh6DgpXOI=";
hash = "sha256-rgbqVU2tKLnp+ZQpLTthpo9vPFRkGuayJCADrI2R1ls=";
};
nativeBuildInputs = [ gtk3 sassc ];

View File

@ -13,13 +13,13 @@
llvmPackages.stdenv.mkDerivation (finalAttrs: {
pname = "c3c";
version = "0.6.1";
version = "0.6.2";
src = fetchFromGitHub {
owner = "c3lang";
repo = "c3c";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-PKeQOVByNvhUq7QBhnNsl3LfR48MWhRC2rhiD58fVHY=";
hash = "sha256-bGMtrdwjlTxEQdsasOvVuI+mRzir/tnENCIfy1/6JMM=";
};
postPatch = ''

View File

@ -1,34 +0,0 @@
{ lib, gccStdenv, fetchurl, xercesc }:
let
stdenv = gccStdenv;
in
stdenv.mkDerivation rec {
pname = "libcutl";
version = "1.10.0";
meta = with lib; {
description = "C++ utility library from Code Synthesis";
longDescription = ''
libcutl is a C++ utility library.
It contains a collection of generic and independent components such as
meta-programming tests, smart pointers, containers, compiler building blocks, etc.
'';
homepage = "https://codesynthesis.com/projects/libcutl/";
changelog = "https://git.codesynthesis.com/cgit/libcutl/libcutl/plain/NEWS?h=${version}";
platforms = platforms.all;
maintainers = [ ];
license = licenses.mit;
};
majmin = builtins.head ( builtins.match "([[:digit:]]\\.[[:digit:]]+).*" "${version}" );
src = fetchurl {
url = "https://codesynthesis.com/download/${pname}/${majmin}/${pname}-${version}.tar.bz2";
sha256 = "070j2x02m4gm1fn7gnymrkbdxflgzxwl7m96aryv8wp3f3366l8j";
};
buildInputs = [ xercesc ];
enableParallelBuilding = true;
env.NIX_CFLAGS_COMPILE = toString [ "-std=c++14" ];
}

View File

@ -14,13 +14,13 @@
stdenv.mkDerivation rec {
pname = "mongoc";
version = "1.27.5";
version = "1.27.6";
src = fetchFromGitHub {
owner = "mongodb";
repo = "mongo-c-driver";
rev = "refs/tags/${version}";
hash = "sha256-ZupUchw2XzMVB4ImxMRSitIpmjTX5zvLtsG2xhoyH9c=";
hash = "sha256-771DZ+8cr0iHHcs4TZVEkTP6qWK1bMzOxlG4OS14t28=";
};
nativeBuildInputs = [

View File

@ -15,13 +15,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "nco";
version = "5.2.7";
version = "5.2.8";
src = fetchFromGitHub {
owner = "nco";
repo = "nco";
rev = finalAttrs.version;
hash = "sha256-RtjLCs+1HI2tJsSzMwoKq09teILvxFapZCxeZAZ4iCM=";
hash = "sha256-FTaXgBmDlQv75roeJo4dJyJCpzOj9ilJo2hdxDnyjno=";
};
nativeBuildInputs = [

View File

@ -23,7 +23,7 @@
buildPythonPackage rec {
pname = "accelerate";
version = "0.33.0";
version = "0.34.0";
pyproject = true;
disabled = pythonOlder "3.8";
@ -32,7 +32,7 @@ buildPythonPackage rec {
owner = "huggingface";
repo = "accelerate";
rev = "refs/tags/v${version}";
hash = "sha256-SYhAYz180jdOUhzbe0iUFBuGRv4n4PmgfCVOEOZKBGA=";
hash = "sha256-MyV1GKxD43QSzS8jea8amt8Xe1h0Xm0WdtUNGkYHfvw=";
};
buildInputs = [ llvmPackages.openmp ];

View File

@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "aioautomower";
version = "2024.7.3";
version = "2024.8.0";
pyproject = true;
disabled = pythonOlder "3.11";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "Thomas55555";
repo = "aioautomower";
rev = "refs/tags/${version}";
hash = "sha256-tjdpQglhg78DsmtIHo5QDsP1U8f0fnaasF0IYUtrGh4=";
hash = "sha256-FrQpRz+HESmk837L4bLDiRpJOZXstMJQ8Ic58B9Ac10=";
};
postPatch = ''
@ -58,6 +58,8 @@ buildPythonPackage rec {
disabledTests = [
# File is missing
"test_standard_mower"
# Call no found
"test_post_commands"
];
meta = with lib; {

View File

@ -0,0 +1,57 @@
{
aiohttp,
attrs,
buildPythonPackage,
fetchFromGitHub,
lib,
multidict,
pytest-aiohttp,
pytestCheckHook,
setuptools,
yarl,
}:
buildPythonPackage rec {
pname = "aiohttp-sse-client2";
version = "0.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "compat-fork";
repo = "aiohttp-sse-client";
rev = "refs/tags/${version}";
hash = "sha256-uF39gpOYzNotVVYQShUoiuvYAhSRex2T1NfuhgwSCR4=";
};
postPatch = ''
substituteInPlace setup.py \
--replace-fail "pytest-runner" ""
'';
build-system = [ setuptools ];
dependencies = [
aiohttp
attrs
multidict
yarl
];
pythonImportsCheck = [ "aiohttp_sse_client2" ];
nativeCheckInputs = [
pytest-aiohttp
pytestCheckHook
];
# tests access the internet
doCheck = false;
meta = {
changelog = "https://github.com/compat-fork/aiohttp-sse-client/blob/${src.rev}/README.rst#fork-changelog";
description = "Server-Sent Event python client library based on aiohttp";
homepage = "https://github.com/compat-fork/aiohttp-sse-client";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -8,6 +8,7 @@
orjson,
poetry-core,
pytest-asyncio,
pytest-cov-stub,
pytestCheckHook,
pythonOlder,
syrupy,
@ -16,7 +17,7 @@
buildPythonPackage rec {
pname = "aiomealie";
version = "0.8.1";
version = "0.9.2";
pyproject = true;
disabled = pythonOlder "3.11";
@ -25,14 +26,9 @@ buildPythonPackage rec {
owner = "joostlek";
repo = "python-mealie";
rev = "refs/tags/v${version}";
hash = "sha256-1n/AMXEoJJ/jftYzYHvo+jTSasNEqnFVAYqlipHFmGc=";
hash = "sha256-rvizMeV1+tsBQiZl2Am4SjLrFkyhR/SvvLFwOTVP6wI=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "--cov" ""
'';
build-system = [ poetry-core ];
dependencies = [
@ -45,6 +41,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
aioresponses
pytest-asyncio
pytest-cov-stub
pytestCheckHook
syrupy
];

View File

@ -26,11 +26,6 @@ buildPythonPackage rec {
hash = "sha256-acu0EWP/k0qyylPtM8IBxhJhhQhXpbG2NheYpD8RTG8=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "setuptools>=68.1" "setuptools"
'';
build-system = [ setuptools ];
dependencies = [

View File

@ -1,13 +1,15 @@
{
lib,
aiohttp,
assertpy,
buildPythonPackage,
fetchFromGitHub,
freezegun,
poetry-core,
pycryptodome,
pytest-asyncio,
pytest-mockservers,
pytest-resource-path,
pytest-sugar,
pytestCheckHook,
pythonAtLeast,
pythonOlder,
@ -16,21 +18,28 @@
buildPythonPackage rec {
pname = "aioswitcher";
version = "3.4.3";
version = "4.0.3";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "TomerFi";
repo = pname;
repo = "aioswitcher";
rev = "refs/tags/${version}";
hash = "sha256-yKHSExtnO9m8Tc3BmCqV8tJs59ynKOqUmekaOatGRTc=";
hash = "sha256-QSnroxVHlfZd6QDaqUTMyoctiEsxWmGmFxzql1YIAD0=";
};
__darwinAllowLocalNetworking = true;
nativeBuildInputs = [ poetry-core ];
build-system = [ poetry-core ];
pythonRelaxDeps = [ "aiohttp" ];
dependencies = [
aiohttp
pycryptodome
];
preCheck = ''
export TZ=Asia/Jerusalem
@ -38,10 +47,10 @@ buildPythonPackage rec {
nativeCheckInputs = [
assertpy
freezegun
pytest-asyncio
pytest-mockservers
pytest-resource-path
pytest-sugar
pytestCheckHook
time-machine
];
@ -66,7 +75,7 @@ buildPythonPackage rec {
description = "Python module to interact with Switcher water heater";
homepage = "https://github.com/TomerFi/aioswitcher";
changelog = "https://github.com/TomerFi/aioswitcher/releases/tag/${version}";
license = with licenses; [ mit ];
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -10,14 +10,14 @@
buildPythonPackage rec {
pname = "apsystems-ez1";
version = "1.3.3";
version = "2.3.0";
pyproject = true;
src = fetchFromGitHub {
owner = "SonnenladenGmbH";
repo = "APsystems-EZ1-API";
rev = "refs/tags/${version}";
hash = "sha256-V6GcTSupjhjGEOsO+C9pImYJRnvdDbttW3Zh0PDYt5I=";
hash = "sha256-CG+QpdJfZt1S6IDDjabRjwuRflURFc1QYo39kf/p0Zw=";
};
build-system = [ poetry-core ];

View File

@ -4,33 +4,30 @@
fetchFromGitHub,
poetry-core,
pytest-asyncio,
pytest-cov-stub,
pytestCheckHook,
pythonOlder,
}:
buildPythonPackage rec {
pname = "async-interrupt";
version = "1.1.2";
format = "pyproject";
version = "1.2.0";
pyproject = true;
disabled = pythonOlder "3.8";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "bdraco";
repo = "async_interrupt";
rev = "refs/tags/v${version}";
hash = "sha256-CFCWlIx4iAG6gW2ORRYfZpFWRvjukqdcR2yg6NjVqps=";
hash = "sha256-opV5h3aLDDpjlRZRZ9OnrPjUOf/i7g+B9T6msk8wtgI=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace " --cov=async_interrupt --cov-report=term-missing:skip-covered" ""
'';
nativeBuildInputs = [ poetry-core ];
nativeCheckInputs = [
pytest-asyncio
pytest-cov-stub
pytestCheckHook
];

View File

@ -3,7 +3,7 @@
buildPythonPackage,
fetchPypi,
async-timeout,
pysnmp-lextudio,
pysnmp,
pythonOlder,
poetry-core,
}:
@ -20,11 +20,16 @@ buildPythonPackage rec {
hash = "sha256-KzRoE4tE/tQkKYroq5PbWKREmEl8AwbIOg3IHRZZtsQ=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail pysnmp-lextudio pysnmp
'';
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
async-timeout
pysnmp-lextudio
pysnmp
];
# Module has no test

View File

@ -0,0 +1,52 @@
{
aiohttp,
buildPythonPackage,
fetchFromGitHub,
lib,
pytest-asyncio,
pytestCheckHook,
requests,
setuptools,
ujson,
}:
buildPythonPackage rec {
pname = "ayla-iot-unofficial";
version = "1.3.1";
pyproject = true;
src = fetchFromGitHub {
owner = "rewardone";
repo = "ayla-iot-unofficial";
rev = "refs/tags/v${version}";
hash = "sha256-WfaDTKht+WEnozVFWGYwNvrC8Rr/IePxjNp5O7jz/9A=";
};
build-system = [ setuptools ];
dependencies = [
aiohttp
requests
ujson
];
pythonImportsCheck = [ "ayla_iot_unofficial" ];
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
];
pytestFlagsArray = [ "tests/ayla_iot_unofficial.py" ];
# tests interact with the actual API
doCheck = false;
meta = {
changelog = "https://github.com/rewardone/ayla-iot-unofficial/releases/tag/v${version}";
description = "Unofficial python library for interacting with the Ayla IoT API";
homepage = "https://github.com/rewardone/ayla-iot-unofficial";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "bellows";
version = "0.40.4";
version = "0.40.5";
pyproject = true;
disabled = pythonOlder "3.8";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "bellows";
rev = "refs/tags/${version}";
hash = "sha256-9YReXaD4qmd2gzbGwzhslzT4K3ajCQrCN7TVl/6fOMU=";
hash = "sha256-VOeoIv1tVcgLfDAH8NKtqyL3x5puDwdxlJ2gqw213t8=";
};
postPatch = ''

View File

@ -19,7 +19,7 @@
buildPythonPackage rec {
pname = "bimmer-connected";
version = "0.16.1";
version = "0.16.3";
pyproject = true;
disabled = pythonOlder "3.8";
@ -28,7 +28,7 @@ buildPythonPackage rec {
owner = "bimmerconnected";
repo = "bimmer_connected";
rev = "refs/tags/${version}";
hash = "sha256-rklWek0XDedJXxVlRLLVMOkU0wMOlv8+Uzn8aVAmc2k=";
hash = "sha256-IrGOhUnWTtCI5juFFuNdWSWxeFr7s8bRNT8sUludGo0=";
};
build-system = [

View File

@ -14,29 +14,29 @@
buildPythonPackage rec {
pname = "bluetooth-data-tools";
version = "1.19.4";
format = "pyproject";
version = "1.20.0";
pyproject = true;
disabled = pythonOlder "3.9";
disabled = pythonOlder "3.10";
src = fetchFromGitHub {
owner = "Bluetooth-Devices";
repo = pname;
repo = "bluetooth-data-tools";
rev = "refs/tags/v${version}";
hash = "sha256-VoldKrlD/1Crw0tJcHoMGiLR8uTUI25IlwZ/1AICx84=";
hash = "sha256-qg2QZc95DD2uTO0fTwoNaPfL+QSrcqDwJvx41lIZDRs=";
};
# The project can build both an optimized cython version and an unoptimized
# python version. This ensures we fail if we build the wrong one.
env.REQUIRE_CYTHON = 1;
nativeBuildInputs = [
build-system = [
cython
poetry-core
setuptools
];
propagatedBuildInputs = [ cryptography ];
dependencies = [ cryptography ];
nativeCheckInputs = [
pytest-benchmark

View File

@ -4,7 +4,7 @@
fetchFromGitHub,
freezegun,
dacite,
pysnmp-lextudio,
pysnmp,
pytest-asyncio,
pytest-error-for-skips,
pytestCheckHook,
@ -15,23 +15,23 @@
buildPythonPackage rec {
pname = "brother";
version = "4.2.0";
version = "4.3.0";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "bieniu";
repo = pname;
repo = "brother";
rev = "refs/tags/${version}";
hash = "sha256-5fd+UznnOFnqYL8CPX90Y2z6q35oUH638mz4l+Ux6oE=";
hash = "sha256-JnIJgR8OiN6y6ib0Y+FXa98Q/4dtvJ8q2r6tgQSRvN4=";
};
nativeBuildInputs = [ setuptools ];
build-system = [ setuptools ];
propagatedBuildInputs = [
dependencies = [
dacite
pysnmp-lextudio
pysnmp
];
nativeCheckInputs = [

View File

@ -6,26 +6,24 @@
pytestCheckHook,
boto3,
moto,
poetry-core,
}:
buildPythonPackage rec {
pname = "bucketstore";
version = "0.2.2";
format = "setuptools";
version = "0.3.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.10";
src = fetchFromGitHub {
owner = "jpetrucciani";
repo = "bucketstore";
rev = "refs/tags/${version}";
hash = "sha256-BtoyGqFbeBhGQeXnmeSfiuJLZtXFrK26WO0SDlAtKG4=";
hash = "sha256-WjweYFnlDEoR+TYzNgjPMdCLdUUEbdPROubov6kancc=";
};
postPatch = ''
substituteInPlace setup.py \
--replace "version=__version__," 'version="${version}",'
'';
build-system = [ poetry-core ];
propagatedBuildInputs = [ boto3 ];

View File

@ -4,47 +4,43 @@
cython,
fetchFromGitHub,
poetry-core,
pytest-cov-stub,
pytestCheckHook,
pythonOlder,
setuptools,
wheel,
}:
buildPythonPackage rec {
pname = "cached-ipaddress";
version = "0.3.0";
version = "0.5.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "bdraco";
repo = "cached-ipaddress";
rev = "refs/tags/v${version}";
hash = "sha256-iTQ1DSCZqjAzsf95nYUxnNj5YCb1Y4JIUW5VGIi7yoY=";
hash = "sha256-Ec2tW1X0iYdQFd5XFRABwUTPjqxV5lhwT6UEimmF+/o=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace " --cov=cached_ipaddress --cov-report=term-missing:skip-covered" "" \
--replace "Cython>=3.0.5" "Cython"
'';
nativeBuildInputs = [
build-system = [
cython
poetry-core
setuptools
wheel
];
nativeCheckInputs = [ pytestCheckHook ];
nativeCheckInputs = [
pytest-cov-stub
pytestCheckHook
];
pythonImportsCheck = [ "cached_ipaddress" ];
meta = with lib; {
description = "Cache construction of ipaddress objects";
homepage = "https://github.com/bdraco/cached-ipaddress";
changelog = "https://github.com/bdraco/cached-ipaddress/blob/${version}/CHANGELOG.md";
changelog = "https://github.com/bdraco/cached-ipaddress/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = [ ];
};

View File

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "clarifai-grpc";
version = "10.7.3";
version = "10.8.0";
pyproject = true;
disabled = pythonOlder "3.8";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "Clarifai";
repo = "clarifai-python-grpc";
rev = "refs/tags/${version}";
hash = "sha256-32ICs4V2XNEOjHBSmBAC0ZacQGam3fsTizEZ6Wz/xWw=";
hash = "sha256-Jp5pH1KZY9JoRKGOLeBqF9CC7UoRHC9wFOBPD9t5AR8=";
};
build-system = [ setuptools ];

View File

@ -3,27 +3,29 @@
async-timeout,
buildPythonPackage,
cython,
dbus,
fetchFromGitHub,
poetry-core,
pytest,
pytest-asyncio,
pytestCheckHook,
pytest-cov-stub,
python,
pythonOlder,
setuptools,
wheel,
}:
buildPythonPackage rec {
pname = "dbus-fast";
version = "2.22.1";
version = "2.24.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "Bluetooth-Devices";
repo = "dbus-fast";
rev = "refs/tags/v${version}";
hash = "sha256-WT32nkRcS+JFCJCZNXXFm38nzttYLsqU98tJD7YBn9w=";
hash = "sha256-8M2SRyAkuxNbwT5NRN6cwJ82OtprfBZXi9Yqwh1NLVY=";
};
# The project can build both an optimized cython version and an unoptimized
@ -34,21 +36,17 @@ buildPythonPackage rec {
cython
poetry-core
setuptools
wheel
];
dependencies = [ async-timeout ];
nativeCheckInputs = [
dbus
pytest
pytest-asyncio
pytestCheckHook
pytest-cov-stub
];
postPatch = ''
substituteInPlace pyproject.toml \
--replace " --cov=dbus_fast --cov-report=term-missing:skip-covered" ""
'';
pythonImportsCheck = [
"dbus_fast"
"dbus_fast.aio"
@ -56,52 +54,21 @@ buildPythonPackage rec {
"dbus_fast.message"
];
disabledTests = [
# Test require a running Dbus instance
"test_aio_big_message"
"test_aio_properties"
"test_aio_proxy_object"
"test_bus_disconnect_before_reply"
"test_error_handling"
"test_export_alias"
"test_export_introspection"
"test_export_unexport"
"test_fast_disconnect"
"test_glib_big_message"
"test_high_level_service_fd_passing"
"test_interface_add_remove_signal"
"test_introspectable_interface"
"test_methods"
"test_multiple_flags_in_message"
"test_name_requests"
"test_object_manager"
"test_peer_interface"
"test_property_changed_signal"
"test_property_changed_signal"
"test_property_methods"
"test_sending_file_descriptor_low_level"
"test_sending_file_descriptor_with_proxy"
"test_sending_messages_between_buses"
"test_sending_signals_between_buses"
"test_signals"
"test_standard_interface_properties"
"test_standard_interfaces"
"test_tcp_connection_with_forwarding"
"test_unexpected_disconnect"
# NameError: name '_cast_uint32_native' is not defined
"test_unmarshall_bluez_interfaces_added_message"
"test_unmarshall_bluez_interfaces_removed_message"
"test_unmarshall_bluez_message"
"test_unmarshall_bluez_properties_changed_with_service_data"
"test_unmarshall_can_resume"
"test_unmarshalling_with_table"
"test_ay_buffer"
];
checkPhase = ''
runHook preCheck
# test_peer_interface times out
dbus-run-session \
--config-file=${dbus}/share/dbus-1/session.conf \
${python.interpreter} -m pytest -k "not test_peer_interface"
runHook postCheck
'';
meta = with lib; {
description = "Faster version of dbus-next";
homepage = "https://github.com/bluetooth-devices/dbus-fast";
changelog = "https://github.com/Bluetooth-Devices/dbus-fast/releases/tag/v${version}";
changelog = "https://github.com/Bluetooth-Devices/dbus-fast/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};

View File

@ -7,21 +7,21 @@
defusedxml,
docker,
fetchFromGitHub,
hatch-vcs,
hatchling,
numpy,
pillow,
pycountry,
pytest-asyncio,
pytestCheckHook,
pythonOlder,
setuptools,
setuptools-scm,
svg-py,
testfixtures,
}:
buildPythonPackage rec {
pname = "deebot-client";
version = "8.3.0";
version = "8.4.0";
pyproject = true;
disabled = pythonOlder "3.12";
@ -30,15 +30,18 @@ buildPythonPackage rec {
owner = "DeebotUniverse";
repo = "client.py";
rev = "refs/tags/${version}";
hash = "sha256-a6gFy+w+5FEs4YwS2Pfcyiv0grLcSzFpxxbcZ0AYIL4=";
hash = "sha256-VWXJykG9XSrpTjnv5radUAp/OMCH2YVlmkT6L8S+wyI=";
};
build-system = [
setuptools
setuptools-scm
pythonRelaxDeps = [
"aiohttp"
"defusedxml"
];
pythonRelaxDeps = [ "aiohttp" ];
build-system = [
hatch-vcs
hatchling
];
dependencies = [
aiohttp

View File

@ -57,7 +57,7 @@
buildPythonPackage rec {
pname = "dvc";
version = "3.55.1";
version = "3.55.2";
pyproject = true;
disabled = pythonOlder "3.8";
@ -66,7 +66,7 @@ buildPythonPackage rec {
owner = "iterative";
repo = "dvc";
rev = "refs/tags/${version}";
hash = "sha256-DrhjmVHCX1lXJUrklVgO/eguL1uRQ33kJjSgCAEIyew=";
hash = "sha256-yNnOSYh4lCefTnIgNstsKaRbrPCgSiWEgKeF66KD66k=";
};
pythonRelaxDeps = [

View File

@ -36,10 +36,18 @@ buildPythonPackage rec {
nativeCheckInputs = [ pytestCheckHook ];
pytestFlagsArray = [ "tests" ];
disabledTests = lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
# slightly exceeds numerical tolerance on aarch64-linux:
"test_fts_frozen_bn_track_running_stats"
];
disabledTests =
# torch._dynamo.exc.BackendCompilerFailed: backend='inductor' raised:
# LoweringException: ImportError: cannot import name 'triton_key' from 'triton.compiler.compiler'
lib.optionals (pythonOlder "3.12") [
"test_fts_dynamo_enforce_p0"
"test_fts_dynamo_resume"
"test_fts_dynamo_intrafit"
]
++ lib.optionals (stdenv.isAarch64 && stdenv.isLinux) [
# slightly exceeds numerical tolerance on aarch64-linux:
"test_fts_frozen_bn_track_running_stats"
];
pythonImportsCheck = [ "finetuning_scheduler" ];

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "flipr-api";
version = "1.5.1";
version = "1.6.0";
pyproject = true;
disabled = pythonOlder "3.9";
@ -22,12 +22,12 @@ buildPythonPackage rec {
owner = "cnico";
repo = "flipr-api";
rev = "refs/tags/${version}";
hash = "sha256-xgLi2lH+EPPNlMixqOzdBGVLuoJh5dhZ2tHZ0UH+lOk=";
hash = "sha256-sFCeWfu5rwImIizzik9RzfCWaEHiqhsQrapfuCXHr+4=";
};
nativeBuildInputs = [ poetry-core ];
build-system = [ poetry-core ];
propagatedBuildInputs = [
dependencies = [
python-dateutil
requests
];
@ -38,6 +38,12 @@ buildPythonPackage rec {
pytestCheckHook
];
env = {
# used in test_session
FLIPR_USERNAME = "foobar";
FLIPR_PASSWORD = "secret";
};
pythonImportsCheck = [ "flipr_api" ];
meta = with lib; {
@ -45,7 +51,7 @@ buildPythonPackage rec {
mainProgram = "flipr-api";
homepage = "https://github.com/cnico/flipr-api";
changelog = "https://github.com/cnico/flipr-api/releases/tag/${version}";
license = licenses.mit;
license = licenses.gpl3Plus;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -5,40 +5,37 @@
cython,
poetry-core,
setuptools,
wheel,
fnvhash,
pytest-cov-stub,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "fnv-hash-fast";
version = "0.5.0";
format = "pyproject";
version = "1.0.2";
pyproject = true;
src = fetchFromGitHub {
owner = "bdraco";
repo = "fnv-hash-fast";
rev = "v${version}";
hash = "sha256-gAHCssJC6sTR6ftkQHrtF/5Nf9dXE4ykRhVusb0Gu3I=";
rev = "refs/tags/v${version}";
hash = "sha256-kJQZnj1ja7cVZSDOuUI3rkNIvyH508wFKAvJ5XfwCNU=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace "--cov=fnv_hash_fast --cov-report=term-missing:skip-covered" ""
'';
nativeBuildInputs = [
build-system = [
cython
poetry-core
setuptools
wheel
];
propagatedBuildInputs = [ fnvhash ];
dependencies = [ fnvhash ];
pythonImportsCheck = [ "fnv_hash_fast" ];
nativeCheckInputs = [ pytestCheckHook ];
nativeCheckInputs = [
pytest-cov-stub
pytestCheckHook
];
meta = with lib; {
description = "Fast version of fnv1a";

View File

@ -1,35 +1,49 @@
{
lib,
aiohttp,
aioresponses,
buildPythonPackage,
fetchFromGitHub,
hatchling,
mashumaro,
pytest-asyncio,
pytestCheckHook,
pythonOlder,
syrupy,
}:
buildPythonPackage rec {
pname = "fyta-cli";
version = "0.5.1";
version = "0.6.6";
pyproject = true;
disabled = pythonOlder "3.8";
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "dontinelli";
repo = "fyta_cli";
rev = "refs/tags/v${version}";
hash = "sha256-V6yf5XFPPePQkRKyH6pyVFDsviYjnIs9g+PavCTDiZo=";
hash = "sha256-yuTfrWiGxoiEmQ1zaYM2ZrlrssZ+hCupPxar9SUP4uU=";
};
build-system = [ hatchling ];
dependencies = [ aiohttp ];
dependencies = [
aiohttp
mashumaro
];
# Module has no tests
doCheck = false;
nativeCheckInputs = [
aioresponses
pytest-asyncio
pytestCheckHook
syrupy
];
pythonImportsCheck = [ "fyta_cli" ];
pytestFlagsArray = [ "--snapshot-update" ];
meta = with lib; {
description = "Module to access the FYTA API";
homepage = "https://github.com/dontinelli/fyta_cli";

View File

@ -11,15 +11,15 @@
fetchFromGitHub,
poetry-core,
pytest-asyncio,
pytest-cov-stub,
pytestCheckHook,
pythonOlder,
setuptools,
wheel,
}:
buildPythonPackage rec {
pname = "habluetooth";
version = "3.1.3";
version = "3.4.0";
pyproject = true;
disabled = pythonOlder "3.11";
@ -28,19 +28,13 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = "habluetooth";
rev = "refs/tags/v${version}";
hash = "sha256-HG2G/ymSw6e03KJOB/F5ja2Cv5nD+nPgOjMHPCYNSH8=";
hash = "sha256-qmb7hfrcKWSs1dkyozuTPsVbI0cjVAJ9Em0JIIKsyck=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail " --cov=habluetooth --cov-report=term-missing:skip-covered" ""
'';
build-system = [
cython
poetry-core
setuptools
wheel
];
dependencies = [
@ -54,6 +48,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
pytest-asyncio
pytest-cov-stub
pytestCheckHook
];

View File

@ -7,17 +7,17 @@
buildPythonPackage rec {
pname = "knx-frontend";
version = "2024.8.9.225351";
format = "pyproject";
version = "2024.9.4.64538";
pyproject = true;
# TODO: source build, uses yarn.lock
src = fetchPypi {
pname = "knx_frontend";
inherit version;
hash = "sha256-ZxEcGXSsdBZQAcwsXI7K/bmxw8+DFQc+aBbgaIfTQgU=";
hash = "sha256-xOBo6y2yT5MNIzyJ8SVVndHrM+Ol/GZXLC/nAwqXY2M=";
};
nativeBuildInputs = [ setuptools ];
build-system = [ setuptools ];
pythonImportsCheck = [ "knx_frontend" ];

View File

@ -0,0 +1,39 @@
{
buildPythonPackage,
fetchPypi,
lib,
setuptools,
}:
buildPythonPackage rec {
pname = "lcn-frontend";
version = "0.1.6";
pyproject = true;
src = fetchPypi {
pname = "lcn_frontend";
inherit version;
hash = "sha256-bOR2BFYHZjRVhlH72ljqp4WKtWdqBkzZNyrmtuIzmIM=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "setuptools~=68.0" setuptools \
--replace-fail "wheel~=0.40.0" wheel
'';
build-system = [ setuptools ];
pythonImportsCheck = [ "lcn_frontend" ];
# upstream has no tests
doCheck = false;
meta = {
changelog = "https://github.com/alengwenus/lcn-frontend/releases/tag/${version}";
description = "LCN panel for Home Assistant";
homepage = "https://github.com/alengwenus/lcn-frontend";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -19,16 +19,14 @@
buildPythonPackage rec {
pname = "lightning-utilities";
version = "0.11.6";
version = "0.11.7";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "Lightning-AI";
repo = "utilities";
rev = "refs/tags/v${version}";
hash = "sha256-Bw28mLz9GaMucqP+EqR1F3OKLxDJiIVacrCBIV35G/I=";
hash = "sha256-0XxBDe9OGQLfl4viuUm5Hx8WvZhSj+J0FoDqD/JOiZM=";
};
postPatch = ''

View File

@ -5,22 +5,25 @@
buildPythonPackage,
fetchFromGitHub,
httpx,
pytest-asyncio,
pytestCheckHook,
pythonOlder,
setuptools,
syrupy,
websockets,
}:
buildPythonPackage rec {
pname = "lmcloud";
version = ".1.2.2";
version = "1.2.2";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "zweckj";
repo = "lmcloud";
rev = "refs/tags/v${version}";
repo = "pylamarzocco";
rev = "refs/tags/v.${version}";
hash = "sha256-uYd52T9dAvFP6in1fHiCXFVUdbRXDE7crjfelbasW4Q=";
};
@ -33,15 +36,18 @@ buildPythonPackage rec {
websockets
];
# Module has no tests
doCheck = false;
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
syrupy
];
pythonImportsCheck = [ "lmcloud" ];
meta = with lib; {
description = "Library to interface with La Marzocco's cloud";
homepage = "https://github.com/zweckj/lmcloud";
changelog = "https://github.com/zweckj/lmcloud/releases/tag/v${version}";
homepage = "https://github.com/zweckj/pylamarzocco";
changelog = "https://github.com/zweckj/pylamarzocco/releases/tag/v.${version}";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};

View File

@ -0,0 +1,59 @@
{
buildPythonPackage,
fetchFromGitHub,
aiobotocore,
aiohttp,
lib,
poetry-core,
pycognito,
pytest-aiohttp,
pytest-asyncio,
pytest-cov-stub,
pytestCheckHook,
syrupy,
tenacity,
yarl,
}:
buildPythonPackage rec {
pname = "nice-go";
version = "0.3.8";
pyproject = true;
src = fetchFromGitHub {
owner = "IceBotYT";
repo = "nice-go";
rev = "refs/tags/${version}";
hash = "sha256-d035AA8N2yjkUJh2TBqkp2RLvH89cJXC4mFrny1sJ6k=";
};
build-system = [ poetry-core ];
pythonRelaxDeps = [ "tenacity" ];
dependencies = [
aiobotocore
aiohttp
pycognito
tenacity
yarl
];
pythonImportsCheck = [ "nice_go" ];
nativeCheckInputs = [
pytest-aiohttp
pytest-asyncio
pytest-cov-stub
pytestCheckHook
syrupy
];
meta = {
changelog = "https://github.com/IceBotYT/nice-go/blob/${src.rev}/CHANGELOG.md";
description = "Control various Nice access control products";
homepage = "https://github.com/IceBotYT/nice-go";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -7,6 +7,7 @@
python,
buildPythonPackage,
setuptools,
numpy,
numpy_2,
llvmlite,
libcxx,
@ -81,6 +82,7 @@ buildPythonPackage rec {
build-system = [
setuptools
numpy
];
nativeBuildInputs = lib.optionals cudaSupport [
@ -88,12 +90,10 @@ buildPythonPackage rec {
cudaPackages.cuda_nvcc
];
buildInputs = [
# Not propagating it, because it numba can work with either numpy_2 or numpy_1
numpy_2
] ++ lib.optionals cudaSupport [ cudaPackages.cuda_cudart ];
buildInputs = lib.optionals cudaSupport [ cudaPackages.cuda_cudart ];
dependencies = [
numpy
llvmlite
setuptools
] ++ lib.optionals (pythonOlder "3.9") [ importlib-metadata ];
@ -161,6 +161,9 @@ buildPythonPackage rec {
doFullCheck = true;
testsWithoutSandbox = false;
};
numpy_2 = numba.override {
numpy = numpy_2;
};
};
meta = with lib; {

View File

@ -29,14 +29,14 @@
buildPythonPackage rec {
pname = "opensearch-py";
version = "2.6.0";
version = "2.7.1";
pyproject = true;
src = fetchFromGitHub {
owner = "opensearch-project";
repo = "opensearch-py";
rev = "refs/tags/v${version}";
hash = "sha256-qpay0EDD99MzxDMkjk3hU/34rxLD71PM8zdcIcHj/0Q=";
hash = "sha256-GC0waXxHRiXVXjhTGbet3HvDKmUBKzoufu/J4fmrM+k=";
};
nativeBuildInputs = [ setuptools ];

View File

@ -11,16 +11,16 @@
buildPythonPackage rec {
pname = "py-synologydsm-api";
version = "2.4.5";
format = "pyproject";
version = "2.5.2";
pyproject = true;
disabled = pythonOlder "3.8";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "mib1185";
repo = "py-synologydsm-api";
rev = "refs/tags/v${version}";
hash = "sha256-aVU+E5TwGIH+y7qtS5pBkW14EbZI6kb1Hy2zEqk1nrk=";
hash = "sha256-c1qNCOmGEiI+bHDGxJ7OtdmPFcdkev+5U9cuDC8O5iQ=";
};
build-system = [ setuptools ];

View File

@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "pyatmo";
version = "8.0.3";
version = "8.1.0";
pyproject = true;
disabled = pythonOlder "3.10";
@ -26,20 +26,18 @@ buildPythonPackage rec {
owner = "jabesq";
repo = "pyatmo";
rev = "refs/tags/v${version}";
hash = "sha256-FnDXj+bY/TMdengnxgludXUTiZw9wpeFiNbWTIxrlzw=";
hash = "sha256-SRuBV7XWt4Myks7kbUzGAscggspUbRoLOvYNiorF8To=";
};
postPatch = ''
substituteInPlace setup.cfg \
--replace "oauthlib~=3.1" "oauthlib" \
--replace "requests~=2.24" "requests"
'';
pythonRelaxDeps = [
"oauthlib"
"requests-oauthlib"
"requests"
];
pythonRelaxDeps = [ "requests-oauthlib" ];
build-system = [ setuptools-scm ];
nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [
dependencies = [
aiohttp
oauthlib
requests

View File

@ -3,22 +3,25 @@
aiohttp,
buildPythonPackage,
fetchPypi,
poetry-core,
pythonOlder,
}:
buildPythonPackage rec {
pname = "pysensibo";
version = "1.0.36";
format = "setuptools";
version = "1.1.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.11";
src = fetchPypi {
inherit pname version;
hash = "sha256-lsHKwFzfkGWuUiZGkt9zwjNDDU7i6gcqcEsi5SQqsSQ=";
hash = "sha256-yITcVEBtqH1B+MyhQweOzmdgPgWrueAkczp/UsT4J/4=";
};
propagatedBuildInputs = [ aiohttp ];
build-system = [ poetry-core ];
dependencies = [ aiohttp ];
# No tests implemented
doCheck = false;

View File

@ -1,46 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
jinja2,
ply,
poetry-core,
pythonOlder,
requests,
}:
buildPythonPackage rec {
pname = "pysmi-lextudio";
version = "1.4.3";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "lextudio";
repo = "pysmi";
rev = "refs/tags/v${version}";
hash = "sha256-JrWVoK7fqESUIJeprjB28iaqOEWgsTpTqUEmSZp9XDk=";
};
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
jinja2
ply
requests
];
# Circular dependency on pysnmp-lextudio
doCheck = false;
pythonImportsCheck = [ "pysmi" ];
meta = with lib; {
description = "SNMP MIB parser";
homepage = "https://github.com/lextudio/pysmi";
changelog = "https://github.com/lextudio/pysmi/blob/v${version}/CHANGES.rst";
license = licenses.bsd2;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -1,29 +1,59 @@
{
lib,
buildPythonPackage,
fetchPypi,
fetchFromGitHub,
# build-system
poetry-core,
# dependencies
ply,
jinja2,
requests,
# tests
pysmi,
pysnmp,
pytestCheckHook,
}:
buildPythonPackage rec {
version = "0.3.4";
format = "setuptools";
version = "1.4.4";
pname = "pysmi";
pyproject = true;
src = fetchPypi {
inherit pname version;
sha256 = "bd15a15020aee8376cab5be264c26330824a8b8164ed0195bd402dd59e4e8f7c";
src = fetchFromGitHub {
owner = "lextudio";
repo = "pysmi";
rev = "refs/tags/v${version}";
hash = "sha256-9ArKo1UT4g+H8Z51NZ6rHlOhyz2grAc1V8Xl+ztfYic=";
};
propagatedBuildInputs = [ ply ];
build-system = [ poetry-core ];
dependencies = [
ply
jinja2
requests
];
# Tests require pysnmp, which in turn requires pysmi => infinite recursion
doCheck = false;
nativeCheckInputs = [
pysnmp
pytestCheckHook
];
pythonImportsCheck = [ "pysmi" ];
passthru.tests.pytest = pysmi.overridePythonAttrs { doCheck = true; };
meta = with lib; {
homepage = "http://pysmi.sf.net";
description = "SNMP SMI/MIB Parser";
description = "SNMP MIB parser";
homepage = "https://github.com/lextudio/pysmi";
changelog = "https://github.com/lextudio/pysmi/blob/v${version}/CHANGES.rst";
license = licenses.bsd2;
maintainers = with maintainers; [ koral ];
maintainers = with maintainers; [ fab ];
};
}

View File

@ -0,0 +1,49 @@
{
aiohttp,
aiohttp-sse-client2,
aresponses,
buildPythonPackage,
fetchFromGitHub,
lib,
mashumaro,
poetry-core,
pytest-asyncio,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "pysmlight";
version = "0.0.13";
pyproject = true;
src = fetchFromGitHub {
owner = "smlight-tech";
repo = "pysmlight";
rev = "refs/tags/v${version}";
hash = "sha256-yNTNcJGcTA7EN1JfbDaySCSfBx99vRKLQWqMG4OkC5k=";
};
build-system = [ poetry-core ];
dependencies = [
aiohttp
aiohttp-sse-client2
mashumaro
];
pythonImportsCheck = [ "pysmlight" ];
nativeCheckInputs = [
aresponses
pytest-asyncio
pytestCheckHook
];
meta = {
changelog = "https://github.com/smlight-tech/pysmlight/releases/tag/v${version}";
description = "Library implementing API control of the SMLIGHT SLZB-06 LAN Coordinators";
homepage = "https://github.com/smlight-tech/pysmlight";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -1,72 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
poetry-core,
# dependencies
pyasn1,
pysmi-lextudio,
pysnmpcrypto,
# tests
pytestCheckHook,
pytest-asyncio,
}:
buildPythonPackage rec {
pname = "pysnmp-lextudio";
version = "6.1.2";
pyproject = true;
src = fetchFromGitHub {
owner = "lextudio";
repo = "pysnmp";
rev = "refs/tags/v${version}";
hash = "sha256-iVej39OmTPiZL11+IetnqHaxFAhZ/YR7tjiRoc7pu8U=";
};
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
pyasn1
pysmi-lextudio
pysnmpcrypto
];
nativeCheckInputs = [
pytestCheckHook
pytest-asyncio
];
disabledTests = [
# Temporary failure in name resolutionc
"test_custom_asn1_mib_search_path"
"test_send_notification"
"test_send_trap"
"test_send_v3_inform_notification"
"test_send_v3_inform_sync"
"test_usm_sha_aes128"
"test_v1_get"
"test_v1_next"
"test_v1_set"
"test_v2c_bulk"
# pysnmp.smi.error.MibNotFoundError
"test_send_v3_trap_notification"
"test_addAsn1MibSource"
"test_v1_walk"
"test_v2_walk"
];
pythonImportsCheck = [ "pysnmp" ];
meta = with lib; {
description = "Python SNMP library";
homepage = "https://github.com/lextudio/pysnmp";
changelog = "https://github.com/lextudio/pysnmp/blob/${src.rev}/CHANGES.txt";
license = licenses.bsd2;
maintainers = with maintainers; [ hexa ];
};
}

View File

@ -1,40 +1,74 @@
{
lib,
buildPythonPackage,
fetchPypi,
fetchFromGitHub,
# build-system
poetry-core,
# dependencies
pyasn1,
pycryptodomex,
pysmi,
pysnmpcrypto,
# tests
pytestCheckHook,
pytest-asyncio,
}:
buildPythonPackage rec {
pname = "pysnmp";
version = "4.4.12";
format = "setuptools";
version = "6.2.5";
pyproject = true;
src = fetchPypi {
inherit pname version;
sha256 = "1acbfvpbr45i137s00mbhh21p71ywjfw3r8z0ybcmjjqz7rbwg8c";
src = fetchFromGitHub {
owner = "lextudio";
repo = "pysnmp";
rev = "refs/tags/v${version}";
hash = "sha256-EGMUTUN95wykU756GJSiXwr8Hi3kyaLPfqhuDgvhbBE=";
};
patches = [ ./setup.py-Fix-the-setuptools-version-check.patch ];
pythonRemoveDeps = [ "pytest-cov" ];
# NameError: name 'mibBuilder' is not defined
doCheck = false;
build-system = [ poetry-core ];
propagatedBuildInputs = [
dependencies = [
pyasn1
pycryptodomex
pysmi
pysnmpcrypto
];
nativeCheckInputs = [
pytestCheckHook
pytest-asyncio
];
disabledTests = [
# Temporary failure in name resolution
"test_custom_asn1_mib_search_path"
"test_send_notification"
"test_send_trap"
"test_send_v3_inform_notification"
"test_send_v3_inform_sync"
"test_usm_sha_aes128"
"test_v1_get"
"test_v1_next"
"test_v1_set"
"test_v2c_bulk"
# pysnmp.smi.error.MibNotFoundError
"test_send_v3_trap_notification"
"test_addAsn1MibSource"
"test_v1_walk"
"test_v2_walk"
];
pythonImportsCheck = [ "pysnmp" ];
meta = with lib; {
homepage = "http://snmplabs.com/pysnmp/index.html";
description = "Pure-Python SNMPv1/v2c/v3 library";
description = "Python SNMP library";
homepage = "https://github.com/lextudio/pysnmp";
changelog = "https://github.com/lextudio/pysnmp/blob/${src.rev}/CHANGES.txt";
license = licenses.bsd2;
maintainers = with maintainers; [
primeos
koral
];
maintainers = with maintainers; [ hexa ];
};
}

View File

@ -0,0 +1,43 @@
{
buildPythonPackage,
fetchFromGitHub,
lib,
pybind11,
pytestCheckHook,
setuptools,
}:
buildPythonPackage rec {
pname = "pyspeex-noise";
version = "1.0.2";
pyproject = true;
src = fetchFromGitHub {
owner = "rhasspy";
repo = "pyspeex-noise";
rev = "refs/tags/${version}";
hash = "sha256-XtLA5yVVCZdpALPu3fx+U+aaA729Vs1UeOJsIm6/S+k=";
};
build-system = [
pybind11
setuptools
];
pythonImportsCheck = [ "pyspeex_noise" ];
nativeCheckInputs = [
pytestCheckHook
];
meta = {
changelog = "https://github.com/rhasspy/pyspeex-noise/blob/${src.rev}/CHANGELOG.md";
description = "Noise suppression and automatic gain with speex";
homepage = "https://github.com/rhasspy/pyspeex-noise";
license = with lib.licenses; [
mit # pyspeex-noise
bsd3 # speex (vendored)
];
maintainers = with lib.maintainers; [ dotlambda ];
};
}

Some files were not shown because too many files have changed in this diff Show More