Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-07-19 12:01:13 +00:00 committed by GitHub
commit e0955a6e8e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
74 changed files with 1425 additions and 412 deletions

View File

@ -24,6 +24,7 @@ shell-helpers.section.md
steam.section.md
cataclysm-dda.section.md
urxvt.section.md
vcpkg.section.md
weechat.section.md
xorg.section.md
```

View File

@ -0,0 +1,24 @@
# VCPKG {#sec-vcpkg}
The `vcpkg-tool` package has a wrapper around the `vcpkg` executable to avoid writing to the nix store.
The wrapper will also be present in `vcpkg`, unless you specify `vcpkg.override { vcpkg-tool = vcpkg-tool-unwrapped; }`
The wrapper has been made in a way so that it will provide default cli arguments, but tries not to interfere if the user provides the same arguments.
The arguments also have corresponding environment variables that can be used as an alternative way of overriding these paths.
Run the wrapper with the environment variable `NIX_VCPKG_DEBUG_PRINT_ENVVARS=true` to get a full list of corresponding environment variables.
## Nix specific environment variables {#sec-vcpkg-nix-envvars}
The wrapper also provides some new nix-specific environment variables that lets you control some of the wrapper functionality.
- `NIX_VCPKG_WRITABLE_PATH = <path>`
Set this environment variable to specify the path where `vcpkg` will store buildtime artifacts.
This will become the base path for all of the other paths.
- `NIX_VCPKG_DEBUG_PRINT_ENVVARS = true | false`
Set this to `true` for the wrapper to print the corresponding environment variables for the arguments that will be provided to the unwrapped executable.
The list of variables will be printed right before invoking `vcpkg`.
This can be useful if you suspect that the wrapper for some reason was unable to prioritize user-provided cli args over its default ones, or for fixing other issues like typos or unexpanded environment variables.

View File

@ -2066,6 +2066,13 @@
githubId = 76545554;
name = "Avery";
};
averyanalex = {
name = "Alexander Averyanov";
email = "alex@averyan.ru";
github = "averyanalex";
githubId = 59499799;
keys = [ { fingerprint = "A0FF 4F26 6B80 0B86 726D EA5B 3C23 C7BD 9945 2036"; } ];
};
avh4 = {
email = "gruen0aermel@gmail.com";
github = "avh4";

View File

@ -202,13 +202,11 @@ assert (lib.assertMsg (lib.all
== ((attrs.group or null) == null))
contents) "Contents of the disk image should set none of {user, group} or both at the same time.");
with lib;
let format' = format; in let
format = if format' == "qcow2-compressed" then "qcow2" else format';
compress = optionalString (format' == "qcow2-compressed") "-c";
compress = lib.optionalString (format' == "qcow2-compressed") "-c";
filename = "nixos." + {
qcow2 = "qcow2";
@ -240,7 +238,7 @@ let format' = format; in let
mkpart primary ext4 2MB -1 \
align-check optimal 2 \
print
${optionalString deterministic ''
${lib.optionalString deterministic ''
sgdisk \
--disk-guid=97FD5997-D90B-4AA3-8D16-C1723AEA73C \
--partition-guid=1:1C06F03B-704E-4657-B9CD-681A087A2FDC \
@ -255,7 +253,7 @@ let format' = format; in let
mkpart ESP fat32 8MiB ${bootSize} \
set 1 boot on \
mkpart primary ext4 ${bootSize} -1
${optionalString deterministic ''
${lib.optionalString deterministic ''
sgdisk \
--disk-guid=97FD5997-D90B-4AA3-8D16-C1723AEA73C \
--partition-guid=1:1C06F03B-704E-4657-B9CD-681A087A2FDC \
@ -271,7 +269,7 @@ let format' = format; in let
mkpart BOOT fat32 100MiB ${bootSize} \
set 2 bls_boot on \
mkpart ROOT ext4 ${bootSize} -1
${optionalString deterministic ''
${lib.optionalString deterministic ''
sgdisk \
--disk-guid=97FD5997-D90B-4AA3-8D16-C1723AEA73C \
--partition-guid=1:1C06F03B-704E-4657-B9CD-681A087A2FDC \
@ -288,7 +286,7 @@ let format' = format; in let
mkpart no-fs 0 1024KiB \
set 2 bios_grub on \
mkpart primary ext4 ${bootSize} -1
${optionalString deterministic ''
${lib.optionalString deterministic ''
sgdisk \
--disk-guid=97FD5997-D90B-4AA3-8D16-C1723AEA73C \
--partition-guid=1:1C06F03B-704E-4657-B9CD-681A087A2FDC \
@ -302,7 +300,7 @@ let format' = format; in let
useEFIBoot = touchEFIVars;
nixpkgs = cleanSource pkgs.path;
nixpkgs = lib.cleanSource pkgs.path;
# FIXME: merge with channel.nix / make-channel.nix.
channelSources = pkgs.runCommand "nixos-${config.system.nixos.version}" {} ''
@ -316,8 +314,8 @@ let format' = format; in let
echo -n ${config.system.nixos.versionSuffix} > $out/nixos/.version-suffix
'';
binPath = with pkgs; makeBinPath (
[ rsync
binPath = lib.makeBinPath (with pkgs; [
rsync
util-linux
parted
e2fsprogs
@ -342,7 +340,7 @@ let format' = format; in let
basePaths = [ config.system.build.toplevel ]
++ lib.optional copyChannel channelSources;
additionalPaths' = subtractLists basePaths additionalPaths;
additionalPaths' = lib.subtractLists basePaths additionalPaths;
closureInfo = pkgs.closureInfo {
rootPaths = basePaths ++ additionalPaths';
@ -389,9 +387,9 @@ let format' = format; in let
# Semi-shamelessly copied from make-etc.sh. I (@copumpkin) shall factor this stuff out as part of
# https://github.com/NixOS/nixpkgs/issues/23052.
set -f
sources_=(${concatStringsSep " " sources})
targets_=(${concatStringsSep " " targets})
modes_=(${concatStringsSep " " modes})
sources_=(${lib.concatStringsSep " " sources})
targets_=(${lib.concatStringsSep " " targets})
modes_=(${lib.concatStringsSep " " modes})
set +f
for ((i = 0; i < ''${#targets_[@]}; i++)); do
@ -443,8 +441,8 @@ let format' = format; in let
${if copyChannel then "--channel ${channelSources}" else "--no-channel-copy"} \
--substituters ""
${optionalString (additionalPaths' != []) ''
nix --extra-experimental-features nix-command copy --to $root --no-check-sigs ${concatStringsSep " " additionalPaths'}
${lib.optionalString (additionalPaths' != []) ''
nix --extra-experimental-features nix-command copy --to $root --no-check-sigs ${lib.concatStringsSep " " additionalPaths'}
''}
diskImage=nixos.raw
@ -514,10 +512,10 @@ let format' = format; in let
''}
echo "copying staging root to image..."
cptofs -p ${optionalString (partitionTableType != "none") "-P ${rootPartition}"} \
cptofs -p ${lib.optionalString (partitionTableType != "none") "-P ${rootPartition}"} \
-t ${fsType} \
-i $diskImage \
$root${optionalString onlyNixStore builtins.storeDir}/* / ||
$root${lib.optionalString onlyNixStore builtins.storeDir}/* / ||
(echo >&2 "ERROR: cptofs failed. diskSize might be too small for closure."; exit 1)
'';
@ -547,7 +545,7 @@ let format' = format; in let
buildInputs = with pkgs; [ util-linux e2fsprogs dosfstools ];
postVM = moveOrConvertImage + createHydraBuildProducts + postVM;
QEMU_OPTS =
concatStringsSep " " (lib.optional useEFIBoot "-drive if=pflash,format=raw,unit=0,readonly=on,file=${efiFirmware}"
lib.concatStringsSep " " (lib.optional useEFIBoot "-drive if=pflash,format=raw,unit=0,readonly=on,file=${efiFirmware}"
++ lib.optionals touchEFIVars [
"-drive if=pflash,format=raw,unit=1,file=$efiVars"
] ++ lib.optionals (OVMF.systemManagementModeRequired or false) [
@ -564,8 +562,8 @@ let format' = format; in let
# It is necessary to set root filesystem unique identifier in advance, otherwise
# bootloader might get the wrong one and fail to boot.
# At the end, we reset again because we want deterministic timestamps.
${optionalString (fsType == "ext4" && deterministic) ''
tune2fs -T now ${optionalString deterministic "-U ${rootFSUID}"} -c 0 -i 0 $rootDisk
${lib.optionalString (fsType == "ext4" && deterministic) ''
tune2fs -T now ${lib.optionalString deterministic "-U ${rootFSUID}"} -c 0 -i 0 $rootDisk
''}
# make systemd-boot find ESP without udev
mkdir /dev/block
@ -577,33 +575,33 @@ let format' = format; in let
# Create the ESP and mount it. Unlike e2fsprogs, mkfs.vfat doesn't support an
# '-E offset=X' option, so we can't do this outside the VM.
${optionalString (partitionTableType == "efi" || partitionTableType == "hybrid") ''
${lib.optionalString (partitionTableType == "efi" || partitionTableType == "hybrid") ''
mkdir -p /mnt/boot
mkfs.vfat -n ESP /dev/vda1
mount /dev/vda1 /mnt/boot
${optionalString touchEFIVars "mount -t efivarfs efivarfs /sys/firmware/efi/efivars"}
${lib.optionalString touchEFIVars "mount -t efivarfs efivarfs /sys/firmware/efi/efivars"}
''}
${optionalString (partitionTableType == "efixbootldr") ''
${lib.optionalString (partitionTableType == "efixbootldr") ''
mkdir -p /mnt/{boot,efi}
mkfs.vfat -n ESP /dev/vda1
mkfs.vfat -n BOOT /dev/vda2
mount /dev/vda1 /mnt/efi
mount /dev/vda2 /mnt/boot
${optionalString touchEFIVars "mount -t efivarfs efivarfs /sys/firmware/efi/efivars"}
${lib.optionalString touchEFIVars "mount -t efivarfs efivarfs /sys/firmware/efi/efivars"}
''}
# Install a configuration.nix
mkdir -p /mnt/etc/nixos
${optionalString (configFile != null) ''
${lib.optionalString (configFile != null) ''
cp ${configFile} /mnt/etc/nixos/configuration.nix
''}
${lib.optionalString installBootLoader ''
# In this throwaway resource, we only have /dev/vda, but the actual VM may refer to another disk for bootloader, e.g. /dev/vdb
# Use this option to create a symlink from vda to any arbitrary device you want.
${optionalString (config.boot.loader.grub.enable) (lib.concatMapStringsSep " " (device:
${lib.optionalString (config.boot.loader.grub.enable) (lib.concatMapStringsSep " " (device:
lib.optionalString (device != "/dev/vda") ''
mkdir -p "$(dirname ${device})"
ln -s /dev/vda ${device}
@ -625,9 +623,9 @@ let format' = format; in let
# Set the ownerships of the contents. The modes are set in preVM.
# No globbing on targets, so no need to set -f
targets_=(${concatStringsSep " " targets})
users_=(${concatStringsSep " " users})
groups_=(${concatStringsSep " " groups})
targets_=(${lib.concatStringsSep " " targets})
users_=(${lib.concatStringsSep " " users})
groups_=(${lib.concatStringsSep " " groups})
for ((i = 0; i < ''${#targets_[@]}; i++)); do
target="''${targets_[$i]}"
user="''${users_[$i]}"
@ -646,9 +644,9 @@ let format' = format; in let
# In deterministic mode, this is fixed to 1970-01-01 (UNIX timestamp 0).
# This two-step approach is necessary otherwise `tune2fs` will want a fresher filesystem to perform
# some changes.
${optionalString (fsType == "ext4") ''
tune2fs -T now ${optionalString deterministic "-U ${rootFSUID}"} -c 0 -i 0 $rootDisk
${optionalString deterministic "tune2fs -f -T 19700101 $rootDisk"}
${lib.optionalString (fsType == "ext4") ''
tune2fs -T now ${lib.optionalString deterministic "-U ${rootFSUID}"} -c 0 -i 0 $rootDisk
${lib.optionalString deterministic "tune2fs -f -T 19700101 $rootDisk"}
''}
''
);

View File

@ -1,9 +1,7 @@
{ config, lib, pkgs, ... }:
with pkgs;
with lib;
let
inherit (lib) mkEnableOption mkIf mkMerge mkOption mkRenamedOptionModule types;
cfg = config.users.ldap;
@ -11,40 +9,40 @@ let
# this file. Directives HAVE to start in the first column!
ldapConfig = {
target = "ldap.conf";
source = writeText "ldap.conf" ''
source = pkgs.writeText "ldap.conf" ''
uri ${config.users.ldap.server}
base ${config.users.ldap.base}
timelimit ${toString config.users.ldap.timeLimit}
bind_timelimit ${toString config.users.ldap.bind.timeLimit}
bind_policy ${config.users.ldap.bind.policy}
${optionalString config.users.ldap.useTLS ''
${lib.optionalString config.users.ldap.useTLS ''
ssl start_tls
''}
${optionalString (config.users.ldap.bind.distinguishedName != "") ''
${lib.optionalString (config.users.ldap.bind.distinguishedName != "") ''
binddn ${config.users.ldap.bind.distinguishedName}
''}
${optionalString (cfg.extraConfig != "") cfg.extraConfig }
${lib.optionalString (cfg.extraConfig != "") cfg.extraConfig }
'';
};
nslcdConfig = writeText "nslcd.conf" ''
nslcdConfig = pkgs.writeText "nslcd.conf" ''
uri ${cfg.server}
base ${cfg.base}
timelimit ${toString cfg.timeLimit}
bind_timelimit ${toString cfg.bind.timeLimit}
${optionalString (cfg.bind.distinguishedName != "")
${lib.optionalString (cfg.bind.distinguishedName != "")
"binddn ${cfg.bind.distinguishedName}" }
${optionalString (cfg.daemon.rootpwmoddn != "")
${lib.optionalString (cfg.daemon.rootpwmoddn != "")
"rootpwmoddn ${cfg.daemon.rootpwmoddn}" }
${optionalString (cfg.daemon.extraConfig != "") cfg.daemon.extraConfig }
${lib.optionalString (cfg.daemon.extraConfig != "") cfg.daemon.extraConfig }
'';
# nslcd normally reads configuration from /etc/nslcd.conf.
# this file might contain secrets. We append those at runtime,
# so redirect its location to something more temporary.
nslcdWrapped = runCommand "nslcd-wrapped" { nativeBuildInputs = [ makeWrapper ]; } ''
nslcdWrapped = pkgs.runCommand "nslcd-wrapped" { nativeBuildInputs = [ pkgs.makeWrapper ]; } ''
mkdir -p $out/bin
makeWrapper ${nss_pam_ldapd}/sbin/nslcd $out/bin/nslcd \
makeWrapper ${pkgs.nss_pam_ldapd}/sbin/nslcd $out/bin/nslcd \
--set LD_PRELOAD "${pkgs.libredirect}/lib/libredirect.so" \
--set NIX_REDIRECTS "/etc/nslcd.conf=/run/nslcd/nslcd.conf"
'';
@ -222,17 +220,17 @@ in
config = mkIf cfg.enable {
environment.etc = optionalAttrs (!cfg.daemon.enable) {
environment.etc = lib.optionalAttrs (!cfg.daemon.enable) {
"ldap.conf" = ldapConfig;
};
system.nssModules = mkIf cfg.nsswitch (singleton (
if cfg.daemon.enable then nss_pam_ldapd else nss_ldap
system.nssModules = mkIf cfg.nsswitch (lib.singleton (
if cfg.daemon.enable then pkgs.nss_pam_ldapd else pkgs.nss_ldap
));
system.nssDatabases.group = optional cfg.nsswitch "ldap";
system.nssDatabases.passwd = optional cfg.nsswitch "ldap";
system.nssDatabases.shadow = optional cfg.nsswitch "ldap";
system.nssDatabases.group = lib.optional cfg.nsswitch "ldap";
system.nssDatabases.passwd = lib.optional cfg.nsswitch "ldap";
system.nssDatabases.shadow = lib.optional cfg.nsswitch "ldap";
users = mkIf cfg.daemon.enable {
groups.nslcd = {

View File

@ -761,7 +761,6 @@
./services/misc/klipper.nix
./services/misc/languagetool.nix
./services/misc/leaps.nix
./services/misc/libreddit.nix
./services/misc/lidarr.nix
./services/misc/lifecycled.nix
./services/misc/llama-cpp.nix
@ -807,6 +806,7 @@
./services/misc/radarr.nix
./services/misc/radicle.nix
./services/misc/readarr.nix
./services/misc/redlib.nix
./services/misc/redmine.nix
./services/misc/renovate.nix
./services/misc/ripple-data-api.nix

View File

@ -61,13 +61,13 @@ let
etcdEndpoints = ["https://${cfg.masterAddress}:2379"];
mkCert = { name, CN, hosts ? [], fields ? {}, action ? "",
privateKeyOwner ? "kubernetes" }: rec {
privateKeyOwner ? "kubernetes", privateKeyGroup ? "kubernetes" }: rec {
inherit name caCert CN hosts fields action;
cert = secret name;
key = secret "${name}-key";
privateKeyOptions = {
owner = privateKeyOwner;
group = "nogroup";
group = privateKeyGroup;
mode = "0600";
path = key;
};

View File

@ -20,6 +20,17 @@ in
description = "Odoo addons.";
};
autoInit = mkEnableOption "automatically initialize the DB";
autoInitExtraFlags = mkOption {
type = with types; listOf str;
default = [ ];
example = literalExpression /*nix*/ ''
[ "--without-demo=all" ]
'';
description = "Extra flags passed to odoo when run for the first time by autoInit";
};
settings = mkOption {
type = format.type;
default = {};
@ -84,8 +95,11 @@ in
};
services.odoo.settings.options = {
data_dir = "/var/lib/private/odoo/data";
proxy_mode = cfg.domain != null;
};
} // (lib.optionalAttrs (cfg.addons != []) {
addons_path = concatMapStringsSep "," escapeShellArg cfg.addons;
});
users.users.odoo = {
isSystemUser = true;
@ -101,12 +115,40 @@ in
path = [ config.services.postgresql.package ];
requires = [ "postgresql.service" ];
script = "HOME=$STATE_DIRECTORY ${cfg.package}/bin/odoo ${optionalString (cfg.addons != []) "--addons-path=${concatMapStringsSep "," escapeShellArg cfg.addons}"} -c ${cfgFile}";
serviceConfig = {
ExecStart = "${cfg.package}/bin/odoo";
ExecStartPre = pkgs.writeShellScript "odoo-start-pre.sh" (
''
set -euo pipefail
cd "$STATE_DIRECTORY"
# Auto-migrate old deployments
if [[ -d .local/share/Odoo ]]; then
echo "pre-start: migrating state directory from $STATE_DIRECTORY/.local/share/Odoo to $STATE_DIRECTORY/data"
mv .local/share/Odoo ./data
rmdir .local/share
rmdir .local
fi
''
+ (lib.optionalString cfg.autoInit
''
echo "pre-start: auto-init"
INITIALIZED="${cfg.settings.options.data_dir}/.odoo.initialized"
if [ ! -e "$INITIALIZED" ]; then
${cfg.package}/bin/odoo --init=INIT --database=odoo --db_user=odoo --stop-after-init ${concatStringsSep " " cfg.autoInitExtraFlags}
touch "$INITIALIZED"
fi
'')
+ "echo pre-start: OK"
);
DynamicUser = true;
User = "odoo";
StateDirectory = "odoo";
Environment = [
"ODOO_RC=${cfgFile}"
];
};
};

View File

@ -3,7 +3,7 @@
with lib;
let
cfg = config.services.libreddit;
cfg = config.services.redlib;
args = concatStringsSep " " ([
"--port ${toString cfg.port}"
@ -11,11 +11,15 @@ let
]);
in
{
imports = [
(mkRenamedOptionModule [ "services" "libreddit" ] [ "services" "redlib" ])
];
options = {
services.libreddit = {
services.redlib = {
enable = mkEnableOption "Private front-end for Reddit";
package = mkPackageOption pkgs "libreddit" { };
package = mkPackageOption pkgs "redlib" { };
address = mkOption {
default = "0.0.0.0";
@ -34,14 +38,14 @@ in
openFirewall = mkOption {
type = types.bool;
default = false;
description = "Open ports in the firewall for the libreddit web interface";
description = "Open ports in the firewall for the redlib web interface";
};
};
};
config = mkIf cfg.enable {
systemd.services.libreddit = {
systemd.services.redlib = {
description = "Private front-end for Reddit";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];

View File

@ -504,7 +504,6 @@ in {
leaps = handleTest ./leaps.nix {};
lemmy = handleTest ./lemmy.nix {};
libinput = handleTest ./libinput.nix {};
libreddit = handleTest ./libreddit.nix {};
librenms = handleTest ./librenms.nix {};
libresprite = handleTest ./libresprite.nix {};
libreswan = runTest ./libreswan.nix;

View File

@ -1,19 +0,0 @@
import ./make-test-python.nix ({ lib, ... }:
{
name = "libreddit";
meta.maintainers = with lib.maintainers; [ fab ];
nodes.machine = {
services.libreddit.enable = true;
# Test CAP_NET_BIND_SERVICE
services.libreddit.port = 80;
};
testScript = ''
machine.wait_for_unit("libreddit.service")
machine.wait_for_open_port(80)
# Query a page that does not require Internet access
machine.succeed("curl --fail http://localhost:80/settings")
'';
})

View File

@ -12,20 +12,10 @@ import ./make-test-python.nix ({ pkgs, lib, package ? pkgs.odoo, ...} : {
services.odoo = {
enable = true;
package = package;
autoInit = true;
autoInitExtraFlags = [ "--without-demo=all" ];
domain = "localhost";
};
# odoo does not automatically initialize its database,
# even if passing what _should_ be the equivalent of these options:
# settings = {
# options = {
# database = "odoo";
# init = "base";
# };
# };
systemd.services.odoo.preStart = ''
HOME=$STATE_DIRECTORY ${package}/bin/odoo -d odoo -i base --stop-after-init --without-demo all
'';
};
};

View File

@ -3,7 +3,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
meta.maintainers = with lib.maintainers; [ soispha ];
nodes.machine = {
services.libreddit = {
services.redlib = {
package = pkgs.redlib;
enable = true;
# Test CAP_NET_BIND_SERVICE
@ -12,7 +12,7 @@ import ./make-test-python.nix ({ lib, pkgs, ... }: {
};
testScript = ''
machine.wait_for_unit("libreddit.service")
machine.wait_for_unit("redlib.service")
machine.wait_for_open_port(80)
# Query a page that does not require Internet access
machine.succeed("curl --fail http://localhost:80/settings")

View File

@ -174,6 +174,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
# for fowarding/input from the configured interfaces so you do not have
# to manage multiple places
firewall.enable = false;
interfaces.eth1.ipv6.addresses = lib.mkForce [ ];
};
systemd.network = {
@ -275,6 +276,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
networking = {
useNetworkd = true;
useDHCP = false;
interfaces.eth1.ipv6.addresses = lib.mkForce [ ];
};
};
};

View File

@ -16,13 +16,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "mympd";
version = "16.0.1";
version = "16.1.0";
src = fetchFromGitHub {
owner = "jcorporation";
repo = "myMPD";
rev = "v${finalAttrs.version}";
sha256 = "sha256-MyVGWdc9ASWWW9CikK06bFYKi1DHyjFxFlMgBLdBwbU=";
sha256 = "sha256-fka7FQkJKHB2L28JzN1SOtmDkJvvox9dKguuh96lVo0=";
};
nativeBuildInputs = [

View File

@ -1,67 +1,64 @@
{ lib
, stdenv
, buildDotnetModule
, fetchFromGitHub
, meson
, ninja
, pkg-config
, jsoncpp
, taglib
, curl
, curlpp
, dotnetCorePackages
, blueprint-compiler
, chromaprint
, glib
, gtk4
, libadwaita
, wrapGAppsHook4
, desktop-file-utils
, chromaprint # fpcalc
}:
stdenv.mkDerivation rec {
let
dotnet = dotnetCorePackages.dotnet_8;
in
buildDotnetModule rec {
pname = "tagger";
version = "2022.11.2";
version = "2024.6.0-1";
src = fetchFromGitHub {
owner = "nlogozzo";
repo = "NickvisionTagger";
rev = version;
hash = "sha256-gFpnTuUROYwPANrkD+g7a3FHSCVY2oB97flCK+LLowY=";
hash = "sha256-4OfByQYhLXmeFWxzhqt8d7pLUyuMLhDM20E2YcA9Q3s=";
};
projectFile = "NickvisionTagger.GNOME/NickvisionTagger.GNOME.csproj";
dotnet-sdk = dotnet.sdk;
dotnet-runtime = dotnet.runtime;
nugetDeps = ./deps.nix;
nativeBuildInputs = [
meson
ninja
pkg-config
wrapGAppsHook4
desktop-file-utils
blueprint-compiler
libadwaita
];
buildInputs = [
chromaprint
];
runtimeDeps = [
glib
gtk4
libadwaita
jsoncpp
taglib
curl
curlpp
];
# Don't install compiled binary
postPatch = ''
sed -i '/fpcalc/d' meson.build
'';
executables = [ "NickvisionTagger.GNOME" ];
preFixup = ''
gappsWrapperArgs+=(
--prefix PATH : "${lib.makeBinPath [ chromaprint ]}"
)
postInstall = ''
substituteInPlace NickvisionTagger.Shared/Linux/org.nickvision.tagger.desktop.in --replace '@EXEC@' "NickvisionTagger.GNOME"
install -Dm444 NickvisionTagger.Shared/Resources/org.nickvision.tagger.svg -t $out/share/icons/hicolor/scalable/apps/
install -Dm444 NickvisionTagger.Shared/Resources/org.nickvision.tagger-symbolic.svg -t $out/share/icons/hicolor/symbolic/apps/
install -Dm444 NickvisionTagger.Shared/Linux/org.nickvision.tagger.desktop.in -T $out/share/applications/org.nickvision.tagger.desktop
'';
meta = with lib; {
description = "Easy-to-use music tag (metadata) editor";
homepage = "https://github.com/nlogozzo/NickvisionTagger";
mainProgram = "org.nickvision.tagger";
license = licenses.gpl3Plus;
homepage = "https://github.com/NickvisionApps/Tagger";
mainProgram = "NickvisionTagger.GNOME";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ zendo ];
maintainers = with maintainers; [ zendo ratcornu ];
};
}

53
pkgs/applications/audio/tagger/deps.nix generated Normal file
View File

@ -0,0 +1,53 @@
# This file was automatically generated by passthru.fetch-deps.
# Please dont edit it manually, your changes might get overwritten!
{ fetchNuGet }: [
(fetchNuGet { pname = "Ace4896.DBus.Services.Secrets"; version = "1.2.0"; hash = "sha256-dgGnQL+y7UubFgG0dVmuz1J/uMhR7bOirKA38dHmOcQ="; })
(fetchNuGet { pname = "AcoustID.NET"; version = "1.3.3"; hash = "sha256-VF7GwQhk9hVBToj9K2UK356H6toDugMI/rosAT2P2TY="; })
(fetchNuGet { pname = "Cake.Tool"; version = "4.0.0"; hash = "sha256-guIxNh+ENqZroPaoh7bJ+R0OP9Ed64BAMYSbWKMrbIc="; })
(fetchNuGet { pname = "FuzzySharp"; version = "2.0.2"; hash = "sha256-GuWqVOo+AG8MSvIbusLPjKfJFQRJhSSJ9eGWljTBA/c="; })
(fetchNuGet { pname = "GetText.NET"; version = "1.9.14"; hash = "sha256-JAFqmwXkRJCHMOLIN2NShSe5aXtDvo5+II412oBj5KM="; })
(fetchNuGet { pname = "GirCore.Adw-1"; version = "0.5.0"; hash = "sha256-qfXR3lTI5IeFlZ+eoXiEjvvU7a94ksDA1NDDO+fjEow="; })
(fetchNuGet { pname = "GirCore.Cairo-1.0"; version = "0.5.0"; hash = "sha256-9vu8cLiI8UJzIwcx/EtNPp0uYBTAYYP7f+K4+78cLfU="; })
(fetchNuGet { pname = "GirCore.FreeType2-2.0"; version = "0.5.0"; hash = "sha256-ngF0UjqeWWPJM6oHWe1Ii+h1BUccFDQd1Qwz35DNCJk="; })
(fetchNuGet { pname = "GirCore.Gdk-4.0"; version = "0.5.0"; hash = "sha256-pl04bEdh1kzjzT2MgENyitvU9YNU+7zdxzSQBF+iVuw="; })
(fetchNuGet { pname = "GirCore.GdkPixbuf-2.0"; version = "0.5.0"; hash = "sha256-2dY45sZRqLAHjXx8G3aLGnftJuMS/367E7oMAtlkdT0="; })
(fetchNuGet { pname = "GirCore.Gio-2.0"; version = "0.5.0"; hash = "sha256-lEcxgUtvw+/wP68h1xXLodjALdFgA8fWlP8e75kcovs="; })
(fetchNuGet { pname = "GirCore.GLib-2.0"; version = "0.5.0"; hash = "sha256-e8/5XRtUr5PMROr9t3t1y+S5ittGigeMvkC1x0AaPpk="; })
(fetchNuGet { pname = "GirCore.GObject-2.0"; version = "0.5.0"; hash = "sha256-cobt8ueN6++TqbOfSn1yKYkjCKlpRc04te8BW2dQZfA="; })
(fetchNuGet { pname = "GirCore.Graphene-1.0"; version = "0.5.0"; hash = "sha256-mF5paOfxW2T/BIa9MSRBCXI0IxyjPEiHSVAl+58ZyJs="; })
(fetchNuGet { pname = "GirCore.Gsk-4.0"; version = "0.5.0"; hash = "sha256-joLS4KfAWkp3z8r7i5MtBDotTv2zMnYRw2bTQNNATJQ="; })
(fetchNuGet { pname = "GirCore.Gtk-4.0"; version = "0.5.0"; hash = "sha256-LN/u9QuAxRMDJfly1LeMwCgJMkTeZyJJ4unrmTpORlI="; })
(fetchNuGet { pname = "GirCore.HarfBuzz-0.0"; version = "0.5.0"; hash = "sha256-hBFkQK/LPSTIU8M8Tv0hyRG4d4ibh/Iaa3ZySYpg0TI="; })
(fetchNuGet { pname = "GirCore.Pango-1.0"; version = "0.5.0"; hash = "sha256-6cxAaxynKx7kTsLy++qcrhD+G7OBfVRYohe1MX3Sk1w="; })
(fetchNuGet { pname = "GirCore.PangoCairo-1.0"; version = "0.5.0"; hash = "sha256-tpIeKhZPrntKIFkeMIYyDHgOSw2Il/L4E7OpBHsUo0g="; })
(fetchNuGet { pname = "HtmlAgilityPack"; version = "1.11.61"; hash = "sha256-exRJTP7mHNt31CKaejKSSkKPm74ratfnpGl50AqZwlY="; })
(fetchNuGet { pname = "Markdig"; version = "0.33.0"; hash = "sha256-OWlYrZnvNIFwmxKnmfWTq1wOz9e+hewsiVJW3B43QLY="; })
(fetchNuGet { pname = "MetaBrainz.Common"; version = "3.0.0"; hash = "sha256-P+XTQhffqSVIn0ZbC5Npl80xlx1QYHoL0y20KTvKRy0="; })
(fetchNuGet { pname = "MetaBrainz.Common.Json"; version = "6.0.2"; hash = "sha256-4IcF9xZZmI3H7WAiuN2kK61BMXS4gh2T2WrCqkwQhX8="; })
(fetchNuGet { pname = "MetaBrainz.MusicBrainz"; version = "6.1.0"; hash = "sha256-wZBTTSQNPll/5/sZPPxa6d0QBjwA8FLA2vFE/838VWs="; })
(fetchNuGet { pname = "MetaBrainz.MusicBrainz.CoverArt"; version = "6.0.0"; hash = "sha256-yN+godNeB6l8ihNupq9cNe+PaYaPTngHJzwkMH9ySbE="; })
(fetchNuGet { pname = "Meziantou.Framework.Win32.CredentialManager"; version = "1.4.5"; hash = "sha256-aJyLlVg6jKY2Van0hwAC5JEF/j+YtEq5ZFLkyI3scsY="; })
(fetchNuGet { pname = "Microsoft.AspNetCore.App.Runtime.linux-arm64"; version = "8.0.6"; hash = "sha256-wvudYblAZ5vOdQ/3Ssl24exAXRkhOG7KBZUjquLGo5o="; })
(fetchNuGet { pname = "Microsoft.Data.Sqlite.Core"; version = "8.0.0"; hash = "sha256-aew8/vRyzCc7MMNHziR8tsg66EFkJC+Snst3F+a3Ehc="; })
(fetchNuGet { pname = "Microsoft.NETCore.App.Host.linux-arm64"; version = "8.0.6"; hash = "sha256-7kLTos2RiNJOmxg6NcM8QieifWMHgxHgd5e+DBNQI0Q="; })
(fetchNuGet { pname = "Microsoft.NETCore.App.Runtime.linux-arm64"; version = "8.0.6"; hash = "sha256-oAQI/uV0G/uEFp+2yAyhILZ6hr9t+oWh9TEY646Vphk="; })
(fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "5.0.0"; hash = "sha256-5rFBJ8Fkw7+11iCG9nMVhOqPCpyVIrbUzrFQhc/2eHw="; })
(fetchNuGet { pname = "Microsoft.Win32.SystemEvents"; version = "8.0.0"; hash = "sha256-UcxurEamYD+Bua0PbPNMYAZaRulMrov8CfbJGIgTaRQ="; })
(fetchNuGet { pname = "Nickvision.Aura"; version = "2023.11.4"; hash = "sha256-us9K5RayuZGe2fkhk/c2Qw45gKmrfvyNBvHdcOnzWj0="; })
(fetchNuGet { pname = "Octokit"; version = "9.0.0"; hash = "sha256-5crRhibEw2pl8M6AmgutI/uA0xcBoFRSF43MDgNPhE8="; })
(fetchNuGet { pname = "SixLabors.ImageSharp"; version = "3.1.4"; hash = "sha256-zOqHVIInvJiqmx4JF+8USYvdKAGRZVUqQpdncrrjRjM="; })
(fetchNuGet { pname = "SQLitePCLRaw.bundle_e_sqlcipher"; version = "2.1.6"; hash = "sha256-ikaVYtmka8VuZ2BDbH4rkT/L19uLMZnUIZSdSfzpYpc="; })
(fetchNuGet { pname = "SQLitePCLRaw.core"; version = "2.1.6"; hash = "sha256-RxWjm52PdmMV98dgDy0BCpF988+BssRZUgALLv7TH/E="; })
(fetchNuGet { pname = "SQLitePCLRaw.lib.e_sqlcipher"; version = "2.1.6"; hash = "sha256-HyCw64Ir+JTmAQpBRR2Y7L/o1l+RiwoL9URDXoJVhTY="; })
(fetchNuGet { pname = "SQLitePCLRaw.provider.e_sqlcipher"; version = "2.1.6"; hash = "sha256-OD+cJ6dvUv/bYhMR9hWnsz23un1CHH5WKEnwghtpqMs="; })
(fetchNuGet { pname = "System.Drawing.Common"; version = "8.0.0"; hash = "sha256-xPNnKUTcZiqnTtRgI2YazMoZgay/prwKrJjbZUbVmcg="; })
(fetchNuGet { pname = "System.IO.Pipelines"; version = "6.0.0"; hash = "sha256-xfjF4UqTMJpf8KsBWUyJlJkzPTOO/H5MW023yTYNQSA="; })
(fetchNuGet { pname = "System.Memory"; version = "4.5.3"; hash = "sha256-Cvl7RbRbRu9qKzeRBWjavUkseT2jhZBUWV1SPipUWFk="; })
(fetchNuGet { pname = "System.Memory"; version = "4.5.5"; hash = "sha256-EPQ9o1Kin7KzGI5O3U3PUQAZTItSbk9h/i4rViN3WiI="; })
(fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "8.0.0"; hash = "sha256-fjCLQc1PRW0Ix5IZldg0XKv+J1DqPSfu9pjMyNBp7dE="; })
(fetchNuGet { pname = "Tmds.DBus"; version = "0.15.0"; hash = "sha256-hnG44eEULZY79phZ/E1/RG2acjW0y12eIxam67iR5a8="; })
(fetchNuGet { pname = "Tmds.DBus.Protocol"; version = "0.15.0"; hash = "sha256-4gk2vXDjKFaBh82gTkwg3c/5GRjiH+bvM5elfDSbKTU="; })
(fetchNuGet { pname = "Ude.NetStandard"; version = "1.2.0"; hash = "sha256-9Dq7UE5OiuvciURQV8Aa13elolt1fzDhvF8c8Yxznhw="; })
(fetchNuGet { pname = "z440.atl.core"; version = "5.25.0"; hash = "sha256-wyhSBvwzIXFLERBCr2s1zebaebOVANvUcwmJkrNdJi8="; })
]

View File

@ -2,9 +2,12 @@
melpaBuild {
pname = "llvm-mode";
inherit (llvmPackages.llvm) version;
inherit (llvmPackages.llvm) src version;
src = "${llvmPackages.llvm.src}/llvm/utils/emacs";
files = ''
("llvm/utils/emacs/*.el"
"llvm/utils/emacs/README")
'';
meta = {
inherit (llvmPackages.llvm.meta) homepage license;

View File

@ -3,33 +3,24 @@
stdenv.mkDerivation (finalAttrs: {
pname = "goxel";
version = "0.14.0";
version = "0.15.0";
src = fetchFromGitHub {
owner = "guillaumechereau";
repo = "goxel";
rev = "v${finalAttrs.version}";
hash = "sha256-ueA0YW2n/DXd9AytDzfPtvtXbvuUm4VDwcdvHWObKxc=";
hash = "sha256-bJnIZwTmvHNHXYq3zsMwu0EORtX2o9lLi6LFNrolwe4=";
};
nativeBuildInputs = [ scons pkg-config wrapGAppsHook3 ];
buildInputs = [ glfw3 gtk3 libpng ];
buildPhase = ''
make release
'';
dontUseSconsBuild = true;
dontUseSconsInstall = true;
installPhase = ''
install -D ./goxel $out/bin/goxel
makeFlags = [ "PREFIX=$(out)" ];
for res in $(ls data/icons | sed -e 's/icon//g' -e 's/.png//g'); do
install -Dm444 data/icons/icon$res.png $out/share/icons/hicolor/''${res}x''${res}/apps/goxel.png
done
install -Dm444 snap/gui/goxel.desktop -t $out/share/applications
substituteInPlace $out/share/applications/goxel.desktop \
--replace 'Icon=''${SNAP}/icon.png' 'Icon=goxel'
'';
buildFlags = [ "release" ];
meta = with lib; {
description = "Open Source 3D voxel editor";

View File

@ -12,13 +12,13 @@
python3Packages.buildPythonApplication rec {
pname = "xdgmenumaker";
version = "2.1";
version = "2.2";
src = fetchFromGitHub {
owner = "gapan";
repo = pname;
rev = version;
sha256 = "K+IecWWRjnY/5TBJydTuEPqNRSg1OIE1t0u6HkLS9uI=";
sha256 = "zFqaNKHJiGP8MoNFUZL13/F1oRx2LBvtFMvLAy+cLJQ=";
};
format = "other";

View File

@ -1,5 +1,17 @@
{ lib, stdenv, cmake, boost, bison, flex, fetchFromGitHub, perl
, python3, python3Packages, zlib, minisat, cryptominisat }:
{ lib
, stdenv
, cmake
, boost
, bison
, flex
, fetchFromGitHub
, fetchpatch
, perl
, python3
, zlib
, minisat
, cryptominisat
}:
stdenv.mkDerivation rec {
pname = "stp";
@ -8,14 +20,20 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "stp";
repo = "stp";
rev = version;
sha256 = "1yg2v4wmswh1sigk47drwsxyayr472mf4i47lqmlcgn9hhbx1q87";
rev = version;
hash = "sha256-B+HQF4TJPkYrpodE4qo4JHvlu+a5HTJf1AFyXTnZ4vk=";
};
patches = [
# Fix missing type declaration
# due to undeterminisitic compilation
# of circularly dependent headers
./stdint.patch
# Python 3.12+ compatibility for build: https://github.com/stp/stp/pull/450
(fetchpatch {
url = "https://github.com/stp/stp/commit/fb185479e760b6ff163512cb6c30ac9561aadc0e.patch";
hash = "sha256-guFgeWOrxRrxkU7kMvd5+nmML0rwLYW196m1usE2qiA=";
})
];
postPatch = ''
@ -26,10 +44,16 @@ stdenv.mkDerivation rec {
sed -e '1i #include <cstdint>' -i include/stp/AST/ASTNode.h
'';
buildInputs = [ boost zlib minisat cryptominisat python3 ];
buildInputs = [
boost
zlib
minisat
cryptominisat
python3
];
nativeBuildInputs = [ cmake bison flex perl ];
preConfigure = ''
python_install_dir=$out/${python3Packages.python.sitePackages}
python_install_dir=$out/${python3.sitePackages}
mkdir -p $python_install_dir
cmakeFlagsArray=(
$cmakeFlagsArray
@ -40,7 +64,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
description = "Simple Theorem Prover";
maintainers = with maintainers; [ McSinyx ];
maintainers = with maintainers; [ McSinyx numinit ];
platforms = platforms.linux;
license = licenses.mit;
};

View File

@ -98,8 +98,7 @@ buildNpmPackage rec {
postPatch = ''
chmod +w ../../
mkdir ../../docstubs
ln -s ${docstubs}/stubs ../../docstubs
ln -s ${docstubs} ../../docstubs
ln -s ${pyright-root}/node_modules ../../node_modules
chmod +w ../pyright-internal
ln -s ${pyright-internal}/node_modules ../pyright-internal/node_modules

View File

@ -0,0 +1,70 @@
{ lib
, stdenv
, fetchFromGitHub
, blueprint-compiler
, desktop-file-utils
, meson
, ninja
, pkg-config
, vala
, wrapGAppsHook4
, glib-networking
, gst_all_1
, gtk4
, json-glib
, libadwaita
, libgee
, libsoup_3
, libxml2
, sqlite
, webkitgtk_6_0
}:
stdenv.mkDerivation rec {
pname = "cassette";
version = "0.2.0";
src = fetchFromGitHub {
owner = "Rirusha";
repo = "Cassette";
rev = "ver-${version}";
hash = "sha256-x9BRoLXrCO/7pI392MbO6m39rmpiOdCcp+pOLG6+k/s=";
};
nativeBuildInputs = [
blueprint-compiler
desktop-file-utils
meson
ninja
pkg-config
vala
wrapGAppsHook4
];
buildInputs = [
glib-networking
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gstreamer
gtk4
json-glib
libadwaita
libgee
libsoup_3
libxml2
sqlite
webkitgtk_6_0
];
strictDeps = true;
meta = {
description = "GTK4/Adwaita application that allows you to use Yandex Music service on Linux operating systems";
homepage = "https://github.com/Rirusha/Cassette";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ averyanalex ];
platforms = lib.platforms.linux;
mainProgram = "cassette";
};
}

View File

@ -6,11 +6,11 @@
}:
appimageTools.wrapType2 rec {
pname = "dopamine";
version = "3.0.0-preview.26";
version = "3.0.0-preview.27";
src = fetchurl {
url = "https://github.com/digimezzo/dopamine/releases/download/v${version}/Dopamine-${version}.AppImage";
hash = "sha256-wINHglhP4t5wNyHzIircW4Z5qC21ZbHBQD2AVp33/KQ=";
hash = "sha256-OTnpFtkdCVoyrDoLdKD382+ZD4FJYSDTBgRoB6YAKHE=";
};
extraInstallCommands =

View File

@ -6,11 +6,11 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "fcitx5-pinyin-moegirl";
version = "20240609";
version = "20240709";
src = fetchurl {
url = "https://github.com/outloudvi/mw2fcitx/releases/download/${finalAttrs.version}/moegirl.dict";
hash = "sha256-dXFV0kVr8hgT17Jmr28PiYTiELm8kS/KM71igHXA6hs=";
hash = "sha256-1BNfyMM7T19glWsB9oOOMHEWc+SE/qrxx5rsAz386Os=";
};
dontUnpack = true;

View File

@ -11,16 +11,16 @@
buildGoModule rec {
pname = "fzf";
version = "0.54.0";
version = "0.54.1";
src = fetchFromGitHub {
owner = "junegunn";
repo = "fzf";
rev = "v${version}";
hash = "sha256-y2A3WsPD58zbJx/vLKiuXJ1rVdlhQ9Ylm8sh+RYJ9qA=";
hash = "sha256-nE4ibYAOH3fgZbpf/tPocXFH6GfialYk/gvLltO8x/w=";
};
vendorHash = "sha256-GC92YuGHQuoLHb7etxpI20ZyvKlJNbeDnHyUOkM4lrg=";
vendorHash = "sha256-uhjJPB/jfRPAu9g41vWFnSBIN9TIZW3s6BGz0fA2ygE=";
CGO_ENABLED = 0;
@ -45,7 +45,7 @@ buildGoModule rec {
# fzf-tmux depends on bc
substituteInPlace bin/fzf-tmux \
--replace "bc" "${bc}/bin/bc"
--replace-fail "bc" "${lib.getExe bc}"
'';
postInstall = ''
@ -53,9 +53,9 @@ buildGoModule rec {
installManPage man/man1/fzf.1 man/man1/fzf-tmux.1
install -D plugin/* -t $out/share/vim-plugins/${pname}/plugin
install -D plugin/* -t $out/share/vim-plugins/fzf/plugin
mkdir -p $out/share/nvim
ln -s $out/share/vim-plugins/${pname} $out/share/nvim/site
ln -s $out/share/vim-plugins/fzf $out/share/nvim/site
# Install shell integrations
install -D shell/* -t $out/share/fzf/

View File

@ -7,15 +7,17 @@
, pkg-config
, gobject-introspection
, blueprint-compiler
, itstool
, wrapGAppsHook4
, desktop-file-utils
, shared-mime-info
, libadwaita
, libgee
}:
python3Packages.buildPythonApplication rec {
pname = "gnome-graphs";
version = "1.7.2";
version = "1.8.1";
pyproject = false;
src = fetchFromGitLab {
@ -23,7 +25,7 @@ python3Packages.buildPythonApplication rec {
owner = "World";
repo = "Graphs";
rev = "v${version}";
hash = "sha256-CgCLOkKrMEN0Jnib5NZyVa+s3ico2ANt0ALGa4we3Ak=";
hash = "sha256-ae6lyyr3vvENyn1kKc8Va4I++7B0rdURwjEpA9klLGg=";
};
nativeBuildInputs = [
@ -33,6 +35,7 @@ python3Packages.buildPythonApplication rec {
pkg-config
gobject-introspection
blueprint-compiler
itstool
wrapGAppsHook4
desktop-file-utils
shared-mime-info
@ -40,9 +43,10 @@ python3Packages.buildPythonApplication rec {
buildInputs = [
libadwaita
libgee
];
propagatedBuildInputs = with python3Packages; [
dependencies = with python3Packages; [
pygobject3
numpy
numexpr

View File

@ -64,11 +64,11 @@ let
in stdenv.mkDerivation (finalAttrs: {
pname = "google-chrome";
version = "126.0.6478.126";
version = "126.0.6478.182";
src = fetchurl {
url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-PsHK27Vc9mzFHwQh6s4ySoiDbuLZgrlFuPZ6PxMbCSQ=";
hash = "sha256-izz3oEJAScI1MV3pBHLzwxCKs6M+rTORernvLv3sBYA=";
};
nativeBuildInputs = [ patchelf makeWrapper ];

View File

@ -44,13 +44,13 @@ let
in
effectiveStdenv.mkDerivation (finalAttrs: {
pname = "koboldcpp";
version = "1.69.1";
version = "1.70.1";
src = fetchFromGitHub {
owner = "LostRuins";
repo = "koboldcpp";
rev = "refs/tags/v${finalAttrs.version}";
sha256 = "sha256-808HyqrB9/cFJU7nq7Cm5Fm4OFPML4oQtnv0hystwAg=";
sha256 = "sha256-wtSkmjx5mzESMvIflqH+QEavH5oeBgKBz8/JjU+CASo=";
};
enableParallelBuilding = true;

View File

@ -8,14 +8,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "mcdreforged";
version = "2.13.0";
version = "2.13.1";
pyproject = true;
src = fetchFromGitHub {
owner = "MCDReforged";
repo = "MCDReforged";
rev = "refs/tags/v${version}";
hash = "sha256-843vsazBXnvVs6DqY6HPUaBn33DktknT8+yH09n+aSI=";
hash = "sha256-Um4XSpkpJupBy5h/hUuHNyXnaDvjL1IIcmSqBHKycEM=";
};
build-system = [ python3.pkgs.setuptools ];

View File

@ -7,16 +7,16 @@
}:
buildGoModule rec {
pname = "nezha-agent";
version = "0.17.3";
version = "0.18.0";
src = fetchFromGitHub {
owner = "nezhahq";
repo = "agent";
rev = "refs/tags/v${version}";
hash = "sha256-dnmoGf9z7R14Fen7maQyk/H600Hgkx7esGWvjddLDMc=";
hash = "sha256-Y7wuZmFc1ztofbfjmoAKZv9U05RbINYTyoNDHXKORYY=";
};
vendorHash = "sha256-SLF5Oq++VzKzy6mfqJuRlAJMBXyb1EHWN+qoyCw9kv4=";
vendorHash = "sha256-M928t59dP5xqMZ+EzyFrzW0fYWuebk1V7UajI7g4VKg=";
ldflags = [
"-s"

View File

@ -52,12 +52,14 @@ in python.pkgs.buildPythonApplication rec {
docutils-0_17 # sphinx has a docutils requirement >= 18
ebaysdk
freezegun
geoip2
gevent
greenlet
idna
jinja2
libsass
lxml
lxml-html-clean
markupsafe
num2words
ofxparse

View File

@ -0,0 +1,30 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Guanran Wang <guanran928@outlook.com>
Date: Tue, 9 Jul 2024 16:49:41 +0800
Subject: [PATCH] fix git hash
---
lib/utils/git-hash.ts | 12 ++----------
1 file changed, 2 insertions(+), 10 deletions(-)
diff --git a/lib/utils/git-hash.ts b/lib/utils/git-hash.ts
index 9a8131696..f1f568fb4 100644
--- a/lib/utils/git-hash.ts
+++ b/lib/utils/git-hash.ts
@@ -1,14 +1,6 @@
import { execSync } from 'child_process';
-let gitHash = process.env.HEROKU_SLUG_COMMIT?.slice(0, 8) || process.env.VERCEL_GIT_COMMIT_SHA?.slice(0, 8);
-let gitDate: Date | undefined;
-if (!gitHash) {
- try {
- gitHash = execSync('git rev-parse HEAD').toString().trim().slice(0, 8);
- gitDate = new Date(execSync('git log -1 --format=%cd').toString().trim());
- } catch {
- gitHash = 'unknown';
- }
-}
+let gitHash = '@GIT_HASH@'.slice(0, 8);
+let gitDate = new Date('Thu Jan 1 00:00:00 1970 +0000');
export { gitHash, gitDate };

View File

@ -0,0 +1,86 @@
{
lib,
fetchFromGitHub,
makeBinaryWrapper,
nodejs,
pnpm,
stdenv,
substitute,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "rsshub";
version = "0-unstable-2024-07-08";
src = fetchFromGitHub {
owner = "DIYgod";
repo = "RSSHub";
rev = "6a29ca395191e745f991b9a0643a2fa9a66c8730";
hash = "sha256-K7qNPF1vdqhNEjWcysnj20Qaltu3rnhi1bVnIEOTiuk=";
};
patches = [
(substitute {
src = ./0001-fix-git-hash.patch;
substitutions = [
"--subst-var-by"
"GIT_HASH"
finalAttrs.src.rev
];
})
];
pnpmDeps = pnpm.fetchDeps {
inherit (finalAttrs) pname version src;
hash = "sha256-1Djef4QRLiEKr6ERtL0/IQSYp9dMq3cOCHPW4QnfaZU=";
};
nativeBuildInputs = [
makeBinaryWrapper
nodejs
pnpm.configHook
];
buildPhase = ''
runHook preBuild
pnpm build
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/lib/rsshub
cp -r lib node_modules assets api package.json tsconfig.json $out/lib/rsshub
runHook postInstall
'';
preFixup = ''
makeWrapper ${lib.getExe nodejs} $out/bin/rsshub \
--chdir "$out/lib/rsshub" \
--set "NODE_ENV" "production" \
--set "NO_LOGFILES" "true" \
--set "TSX_TSCONFIG_PATH" "$out/lib/rsshub/tsconfig.json" \
--append-flags "$out/lib/rsshub/node_modules/tsx/dist/cli.mjs" \
--append-flags "$out/lib/rsshub/lib/index.ts"
'';
meta = {
description = "RSS feed generator";
longDescription = ''
RSSHub is an open source, easy to use, and extensible RSS feed generator.
It's capable of generating RSS feeds from pretty much everything.
RSSHub delivers millions of contents aggregated from all kinds of sources,
our vibrant open source community is ensuring the deliver of RSSHub's new routes,
new features and bug fixes.
'';
homepage = "https://docs.rsshub.app";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ Guanran928 ];
mainProgram = "rsshub";
platforms = lib.platforms.all;
};
})

View File

@ -1,20 +1,25 @@
{ lib
, stdenv
, fetchFromGitHub
, runtimeShell
, cacert
, cmake
, cmakerc
, curl
, fmt
, git
, gzip
, makeWrapper
, meson
, ninja
, openssh
, python3
, unzip
, zip
, zstd
, runCommand
, writeText
, extraRuntimeDeps ? []
, doWrap ? true
}:
stdenv.mkDerivation (finalAttrs: {
pname = "vcpkg-tool";
@ -30,7 +35,6 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
cmake
ninja
makeWrapper
];
buildInputs = [
@ -47,31 +51,139 @@ stdenv.mkDerivation (finalAttrs: {
"-DVCPKG_DEPENDENCY_CMAKERC=ON"
];
postFixup = let
passAsFile = [ "vcpkgWrapper" ];
vcpkgWrapper = let
# These are the most common binaries used by vcpkg
# Extra binaries can be added via overlay when needed
# Extra binaries can be added through override when needed
runtimeDeps = [
cacert
cmake
curl
git
gzip
meson
ninja
openssh
python3
unzip
zip
zstd
] ++ extraRuntimeDeps;
# Apart from adding the runtime dependencies to $PATH,
# the wrapper will also override these arguments by default.
# This is to ensure that the executable does not try to
# write to the nix store. If the user tries to set any of the
# arguments themself, the wrapper will detect that the
# arguments are present, and prefer the user-provided value.
#
# It is also possible to override the cli arguments by
# settings either of the nix-specific environment variables.
argsWithDefault = [
{
arg = "--downloads-root";
env = "NIX_VCPKG_DOWNLOADS_ROOT";
default = "$NIX_VCPKG_WRITABLE_PATH/downloads";
}
{
arg = "--x-buildtrees-root";
env = "NIX_VCPKG_BUILDTREES_ROOT";
default = "$NIX_VCPKG_WRITABLE_PATH/buildtrees";
}
{
arg = "--x-packages-root";
env = "NIX_VCPKG_PACKAGES_ROOT";
default = "$NIX_VCPKG_WRITABLE_PATH/packages";
}
{
arg = "--x-install-root";
env = "NIX_VCPKG_INSTALL_ROOT";
default = "$NIX_VCPKG_WRITABLE_PATH/installed";
}
];
in ''
wrapProgram $out/bin/vcpkg --prefix PATH ${lib.makeBinPath runtimeDeps}
#!${runtimeShell}
get_vcpkg_path() {
if [[ -n $NIX_VCPKG_WRITABLE_PATH ]]; then
echo "$NIX_VCPKG_WRITABLE_PATH"
elif [[ -n $XDG_CACHE_HOME ]]; then
echo "$XDG_CACHE_HOME/vcpkg"
elif [[ -n $HOME ]]; then
echo "$HOME/.vcpkg/root"
elif [[ -n $TMP ]]; then
echo "$TMP"
else
echo "/tmp"
fi
}
NIX_VCPKG_WRITABLE_PATH=$(get_vcpkg_path)
${lib.concatMapStringsSep "\n" ({ env, default, ... }: ''${env}=''${${env}-"${default}"}'') argsWithDefault}
export PATH="${lib.makeBinPath runtimeDeps}''${PATH:+":$PATH"}"
ARGS=( "$@" )
FINAL_NONMODIFIED_ARGS=()
for (( i=0; i<''${#ARGS[@]}; i++ ));
do
case "''${ARGS[i]%%=*}" in
${let
f = { arg, env, ... }: ''
'${arg}')
${env}="''${ARGS[i]#*=}"
if [ "''$${env}" = '${arg}' ]; then
${env}="''${ARGS[i+1]}"
((i++))
fi
;;
'';
in lib.concatMapStringsSep "\n" f argsWithDefault}
*)
FINAL_NONMODIFIED_ARGS+=(''${ARGS[i]})
;;
esac
done
if [ "''${NIX_VCPKG_DEBUG_PRINT_ENVVARS-'false'}" = 'true' ]; then
${lib.concatMapStringsSep "\n" ({ env, ... }: " " + ''echo "${env} = ''$${env}"'') argsWithDefault}
echo ""
fi
exec -a "$0" "${placeholder "out"}/bin/.vcpkg-wrapped" \
${lib.concatMapStringsSep "\n" ({ arg, env, ... }: " " + ''${arg}="''$${env}" \'') argsWithDefault}
"''${FINAL_NONMODIFIED_ARGS[@]}"
'';
postFixup = lib.optionalString doWrap ''
mv "$out/bin/vcpkg" "$out/bin/.vcpkg-wrapped"
install -Dm555 "$vcpkgWrapperPath" "$out/bin/vcpkg"
'';
passthru.tests = {
testWrapper = runCommand "vcpkg-tool-test-wrapper" { buildInputs = [ finalAttrs.finalPackage ]; } ''
export NIX_VCPKG_DEBUG_PRINT_ENVVARS=true
vcpkg --x-packages-root="test" --x-install-root="test2" contact > "$out"
cat "$out" | head -n 4 | diff - ${writeText "vcpkg-tool-test-wrapper-expected" ''
NIX_VCPKG_DOWNLOADS_ROOT = /homeless-shelter/.vcpkg/root/downloads
NIX_VCPKG_BUILDTREES_ROOT = /homeless-shelter/.vcpkg/root/buildtrees
NIX_VCPKG_PACKAGES_ROOT = test
NIX_VCPKG_INSTALL_ROOT = test2
''}
'';
};
meta = {
description = "Components of microsoft/vcpkg's binary";
mainProgram = "vcpkg";
homepage = "https://github.com/microsoft/vcpkg-tool";
changelog = "https://github.com/microsoft/vcpkg-tool/releases/tag/${finalAttrs.src.rev}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ guekka gracicot ];
maintainers = with lib.maintainers; [ guekka gracicot h7x4 ];
platforms = lib.platforms.all;
};
})

View File

@ -2,7 +2,8 @@
, stdenvNoCC
, lib
, vcpkg-tool
, writeShellScript
, makeWrapper
, doWrap ? true
}:
stdenvNoCC.mkDerivation (finalAttrs: {
@ -16,27 +17,31 @@ stdenvNoCC.mkDerivation (finalAttrs: {
hash = "sha256-eDpMGDtC44eh0elLWV0r1H/WbpVdZ5qMedKh7Ct50Cs=";
};
installPhase = let
# vcpkg needs two directories to write to that is independent of installation directory.
# Since vcpkg already creates $HOME/.vcpkg/ we use that to create a root where vcpkg can write into.
vcpkgScript = writeShellScript "vcpkg" ''
vcpkg_writable_path="$HOME/.vcpkg/root/"
nativeBuildInputs = [ makeWrapper ];
VCPKG_ROOT="@out@/share/vcpkg" ${vcpkg-tool}/bin/vcpkg \
--x-downloads-root="$vcpkg_writable_path"/downloads \
--x-buildtrees-root="$vcpkg_writable_path"/buildtrees \
--x-packages-root="$vcpkg_writable_path"/packages \
"$@"
'';
in ''
postPatch = ''
substituteInPlace scripts/toolchains/linux.cmake \
--replace-fail "aarch64-linux-gnu-as" "aarch64-unknown-linux-gnu-as" \
--replace-fail "aarch64-linux-gnu-gcc" "aarch64-unknown-linux-gnu-gcc" \
--replace-fail "aarch64-linux-gnu-g++" "aarch64-unknown-linux-gnu-g++" \
--replace-fail "arm-linux-gnueabihf-as" "armv7l-unknown-linux-gnueabihf-as" \
--replace-fail "arm-linux-gnueabihf-gcc" "armv7l-unknown-linux-gnueabihf-gcc" \
--replace-fail "arm-linux-gnueabihf-g++" "armv7l-unknown-linux-gnueabihf-g++"
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/share/vcpkg/scripts/buildsystems
cp --preserve=mode -r ./{docs,ports,triplets,scripts,.vcpkg-root,versions,LICENSE.txt} $out/share/vcpkg/
substitute ${vcpkgScript} $out/bin/vcpkg --subst-var-by out $out
chmod +x $out/bin/vcpkg
ln -s $out/bin/vcpkg $out/share/vcpkg/vcpkg
touch $out/share/vcpkg/vcpkg.disable-metrics
mkdir -p "$out/bin" "$out/share/vcpkg/scripts/buildsystems"
cp --preserve=mode -r ./{docs,ports,triplets,scripts,.vcpkg-root,versions,LICENSE.txt} "$out/share/vcpkg/"
${lib.optionalString doWrap ''
makeWrapper "${vcpkg-tool}/bin/vcpkg" "$out/bin/vcpkg" \
--set-default VCPKG_ROOT "$out/share/vcpkg"
''}
ln -s "$out/bin/vcpkg" "$out/share/vcpkg/vcpkg"
touch "$out/share/vcpkg/vcpkg.disable-metrics"
runHook postInstall
'';
@ -46,7 +51,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
mainProgram = "vcpkg";
homepage = "https://vcpkg.io/";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ guekka gracicot ];
maintainers = with lib.maintainers; [ guekka gracicot h7x4 ];
platforms = lib.platforms.all;
};
})

View File

@ -0,0 +1,48 @@
{
lib,
buildPythonPackage,
fetchPypi,
setuptools,
aiobotocore,
aiohttp,
attr,
aws-request-signer,
botocore,
requests-aws4auth,
pycognito,
}:
buildPythonPackage rec {
pname = "aioaquacell";
version = "0.2.0";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-n2kPD1t5d/nf43rB0q1hNNYdHeaBiadsFWTmu1bYN1A=";
};
build-system = [ setuptools ];
dependencies = [
aiohttp
aiobotocore
attr
aws-request-signer
botocore
requests-aws4auth
pycognito
];
pythonImportsCheck = [ "aioaquacell" ];
doCheck = false;
meta = {
changelog = "https://github.com/Jordi1990/aioaquacell/releases/tag/v${version}";
description = "Asynchronous library to retrieve details of your Aquacell water softener device.";
homepage = "https://github.com/Jordi1990/aioaquacell";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ pyrox0 ];
};
}

View File

@ -0,0 +1,35 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
python,
}:
buildPythonPackage rec {
pname = "attr";
version = "0.3.2";
pyproject = true;
src = fetchFromGitHub {
owner = "denis-ryzhkov";
repo = "attr";
rev = version;
hash = "sha256-1gOAONDuZb7xEPFZJc00BRtFF06uX65S8b3RRRNGeSo=";
};
build-system = [ setuptools ];
checkPhase = ''
runHook preCheck
${python.interpreter} -c "import dry_attr; dry_attr.test()"
runHook postCheck
'';
meta = {
description = "Simple decorator to set attributes of target function or class in a DRY way.";
homepage = "https://github.com/denis-ryzhkov/attr";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ pyrox0 ];
};
}

View File

@ -0,0 +1,43 @@
{
lib,
buildPythonPackage,
fetchPypi,
poetry-core,
requests,
requests-toolbelt,
}:
buildPythonPackage rec {
pname = "aws-request-signer";
version = "1.2.0";
pyproject = true;
src = fetchPypi {
inherit version;
pname = "aws_request_signer";
hash = "sha256-DVorDO0wz94Fhduax7VsQZ5B5SnBfsHQoLoW4m6Ce+U=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "poetry>=0.12" poetry-core \
--replace-fail poetry.masonry.api poetry.core.masonry.api
'';
build-system = [ poetry-core ];
dependencies = [
requests
requests-toolbelt
];
doCheck = false;
meta = {
changelog = "https://github.com/iksteen/aws-request-signer/releases/tag/${version}";
description = "Python library to sign AWS requests using AWS Signature V4.";
homepage = "https://github.com/iksteen/aws-request-signer";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ pyrox0 ];
};
}

View File

@ -11,6 +11,7 @@
conda-libmamba-solver,
conda-package-handling,
distro,
frozendict,
jsonpatch,
packaging,
platformdirs,
@ -48,6 +49,7 @@ buildPythonPackage rec {
conda-libmamba-solver
conda-package-handling
distro
frozendict
jsonpatch
packaging
platformdirs

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "cvelib";
version = "1.4.0";
version = "1.5.0";
pyproject = true;
disabled = pythonOlder "3.7";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "RedHatProductSecurity";
repo = "cvelib";
rev = "refs/tags/${version}";
hash = "sha256-nj5bkep8jYJE1qh2zNxivjKOpHj93UZ8bU+qNs2On8s=";
hash = "sha256-me61A1SyktPTd9u0t51kF4237/t9wiHqz+IVoyojMXY=";
};
postPatch = ''

View File

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "fakeredis";
version = "2.23.2";
version = "2.23.3";
pyproject = true;
disabled = pythonOlder "3.7";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "dsoftwareinc";
repo = "fakeredis-py";
rev = "refs/tags/v${version}";
hash = "sha256-/nuBj9h5MMz1YvJozhl4Fq/OkLckesnQHHTUWfz06sA=";
hash = "sha256-U+jLxI2Ly+LvC/0eGXdaAa6iqDFfu5n8X0UrTWFRhhE=";
};
build-system = [ poetry-core ];

View File

@ -0,0 +1,76 @@
{
lib,
azure-identity,
buildPythonPackage,
fetchFromGitHub,
freezegun,
langchain-core,
langchain-openai,
lark,
pandas,
poetry-core,
pytest-asyncio,
pytest-mock,
pytest-socket,
pytestCheckHook,
pythonOlder,
requests-mock,
responses,
syrupy,
toml,
}:
buildPythonPackage rec {
pname = "langchain-azure-dynamic-sessions";
version = "0.1.0";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-azure-dynamic-sessions==${version}";
hash = "sha256-jz4IBMnWuk8FsSsyfLN14B0xWZrmZrvEW95a45S+FOo=";
};
sourceRoot = "${src.name}/libs/partners/azure-dynamic-sessions";
build-system = [ poetry-core ];
dependencies = [
azure-identity
langchain-core
langchain-openai
];
nativeCheckInputs = [
freezegun
lark
pandas
pytest-asyncio
pytest-mock
pytest-socket
pytestCheckHook
requests-mock
responses
syrupy
toml
];
pytestFlagsArray = [ "tests/unit_tests" ];
pythonImportsCheck = [ "langchain_azure_dynamic_sessions" ];
passthru = {
updateScript = langchain-core.updateScript;
};
meta = {
description = "Integration package connecting Azure Container Apps dynamic sessions and LangChain";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/partners/azure-dynamic-sessions";
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-azure-dynamic-sessions==${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ natsukium ];
};
}

View File

@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "langchain-chroma";
version = "0.2.9";
version = "0.1.2";
pyproject = true;
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-core==${version}";
hash = "sha256-/BUn/NxaE9l3VY6dPshr1JJaHTGzn9NMQhSQ2De65Jg=";
rev = "refs/tags/langchain-chroma==${version}";
hash = "sha256-PQ3bepiAqzWhQdKofQSzQKxRrwI6dxBfSNV91462aJE=";
};
sourceRoot = "${src.name}/libs/partners/chroma";
@ -44,8 +44,9 @@ buildPythonPackage rec {
};
meta = {
description = "Build context-aware reasoning applications";
homepage = "https://github.com/langchain-ai/langchain";
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-chroma==${version}";
description = "Integration package connecting Chroma and LangChain";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/partners/chroma";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ natsukium ];
};

View File

@ -9,6 +9,7 @@
langchain,
langchain-core,
langsmith,
httpx,
lark,
numpy,
pandas,
@ -28,7 +29,7 @@
buildPythonPackage rec {
pname = "langchain-community";
version = "0.2.9";
version = "0.2.7";
pyproject = true;
disabled = pythonOlder "3.8";
@ -36,12 +37,19 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-core==${version}";
hash = "sha256-/BUn/NxaE9l3VY6dPshr1JJaHTGzn9NMQhSQ2De65Jg=";
rev = "refs/tags/langchain-community==${version}";
hash = "sha256-r0YSJkYPcwjHyw1xST5Zrgg9USjN9GOsvhV97imSFCQ=";
};
sourceRoot = "${src.name}/libs/community";
preConfigure = ''
ln -s ${src}/libs/standard-tests/langchain_standard_tests ./langchain_standard_tests
substituteInPlace pyproject.toml \
--replace-fail "path = \"../standard-tests\"" "path = \"./langchain_standard_tests\""
'';
build-system = [ poetry-core ];
dependencies = [
@ -57,13 +65,14 @@ buildPythonPackage rec {
tenacity
];
passthru.optional-dependencies = {
optional-dependencies = {
cli = [ typer ];
};
pythonImportsCheck = [ "langchain_community" ];
nativeCheckInputs = [
httpx
lark
pandas
pytest-asyncio
@ -93,9 +102,9 @@ buildPythonPackage rec {
];
meta = {
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-community==${version}";
description = "Community contributed LangChain integrations";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/community";
changelog = "https://github.com/langchain-ai/langchain/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ natsukium ];
};

View File

@ -1,9 +1,11 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
freezegun,
grandalf,
httpx,
jsonpatch,
langsmith,
numpy,
@ -23,7 +25,7 @@
buildPythonPackage rec {
pname = "langchain-core";
version = "0.2.9";
version = "0.2.21";
pyproject = true;
disabled = pythonOlder "3.8";
@ -32,19 +34,20 @@ buildPythonPackage rec {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-core==${version}";
hash = "sha256-/BUn/NxaE9l3VY6dPshr1JJaHTGzn9NMQhSQ2De65Jg=";
hash = "sha256-8qEN03iimGLnhg6TdpPal+MXBZJ/QHJKwjxRF96abBw=";
};
sourceRoot = "${src.name}/libs/core";
pythonRelaxDeps = [
"langsmith"
"packaging"
];
preConfigure = ''
ln -s ${src}/libs/standard-tests/langchain_standard_tests ./langchain_standard_tests
substituteInPlace pyproject.toml \
--replace-fail "path = \"../standard-tests\"" "path = \"./langchain_standard_tests\""
'';
build-system = [ poetry-core ];
dependencies = [
jsonpatch
langsmith
@ -59,6 +62,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
freezegun
grandalf
httpx
numpy
pytest-asyncio
pytest-mock
@ -69,13 +73,6 @@ buildPythonPackage rec {
pytestFlagsArray = [ "tests/unit_tests" ];
disabledTests = [
# Fail for an unclear reason with:
# AssertionError: assert '6a92363c-4ac...-d344769ab6ac' == '09af124a-2ed...-671c64c72b70'
"test_config_traceable_handoff"
"test_config_traceable_async_handoff"
];
passthru = {
updateScript = writeScript "update.sh" ''
#!/usr/bin/env nix-shell
@ -89,6 +86,12 @@ buildPythonPackage rec {
'';
};
disabledTests = lib.optionals stdenv.isDarwin [
# Langchain-core the following tests due to the test comparing execution time with magic values.
"test_queue_for_streaming_via_sync_call"
"test_same_event_loop"
];
meta = {
description = "Building applications with LLMs through composability";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/core";

View File

@ -0,0 +1,80 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
freezegun,
huggingface-hub,
langchain-core,
sentence-transformers,
tokenizers,
transformers,
lark,
pandas,
poetry-core,
pytest-asyncio,
pytest-mock,
pytest-socket,
pytestCheckHook,
pythonOlder,
requests-mock,
responses,
syrupy,
toml,
}:
buildPythonPackage rec {
pname = "langchain-huggingface";
version = "0.0.3";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-huggingface==${version}";
hash = "sha256-4k3C6T2N7SBM/wP8KAwMQqt9DkXDdYNt2i/OkZilWw0=";
};
sourceRoot = "${src.name}/libs/partners/huggingface";
build-system = [ poetry-core ];
dependencies = [
huggingface-hub
langchain-core
sentence-transformers
tokenizers
transformers
];
nativeCheckInputs = [
freezegun
lark
pandas
pytest-asyncio
pytest-mock
pytest-socket
pytestCheckHook
requests-mock
responses
syrupy
toml
];
pytestFlagsArray = [ "tests/unit_tests" ];
pythonImportsCheck = [ "langchain_huggingface" ];
passthru = {
updateScript = langchain-core.updateScript;
};
meta = {
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-huggingface==${version}";
description = "An integration package connecting Huggingface related classes and LangChain";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/partners/huggingface";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ natsukium ];
};
}

View File

@ -0,0 +1,77 @@
{
lib,
azure-identity,
buildPythonPackage,
fetchFromGitHub,
freezegun,
langchain,
langchain-core,
pymongo,
lark,
pandas,
poetry-core,
pytest-asyncio,
pytest-mock,
pytest-socket,
pytestCheckHook,
pythonOlder,
requests-mock,
responses,
syrupy,
toml,
}:
buildPythonPackage rec {
pname = "langchain-mongodb";
version = "0.1.6";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-mongodb==${version}";
hash = "sha256-p/cdWFPc2Oi5aRmjj1oAixM6aDKw0TbyzMdP4h2acG4=";
};
sourceRoot = "${src.name}/libs/partners/mongodb";
build-system = [ poetry-core ];
dependencies = [
langchain-core
pymongo
];
nativeCheckInputs = [
freezegun
langchain
lark
pandas
pytest-asyncio
pytest-mock
pytest-socket
pytestCheckHook
requests-mock
responses
syrupy
toml
];
pytestFlagsArray = [ "tests/unit_tests" ];
pythonImportsCheck = [ "langchain_mongodb" ];
passthru = {
updateScript = langchain-core.updateScript;
};
meta = {
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-mongodb==${version}";
description = "Integration package connecting MongoDB and LangChain";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/partners/mongodb";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ natsukium ];
};
}

View File

@ -0,0 +1,103 @@
{
lib,
async-timeout,
bash,
buildPythonPackage,
fetchFromGitHub,
freezegun,
langchain,
langchain-core,
openai,
tiktoken,
lark,
pandas,
poetry-core,
pytest-asyncio,
pytest-mock,
pytest-socket,
pytestCheckHook,
pythonOlder,
requests-mock,
responses,
syrupy,
toml,
}:
buildPythonPackage rec {
pname = "langchain-openai";
version = "0.1.17";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-openai==${version}";
hash = "sha256-ELD1KXCVx3SmiJodagtOHgBGKdjRWiRVCCNYcL63eCY=";
};
sourceRoot = "${src.name}/libs/partners/openai";
preConfigure = ''
ln -s ${src}/libs/standard-tests/langchain_standard_tests ./langchain_standard_tests
substituteInPlace pyproject.toml \
--replace-fail "path = \"../../standard-tests\"" "path = \"./langchain_standard_tests\"" \
--replace-fail "--cov=langchain_openai" ""
'';
build-system = [ poetry-core ];
dependencies = [
langchain
langchain-core
openai
tiktoken
];
nativeCheckInputs = [
freezegun
lark
pandas
pytest-asyncio
pytest-mock
pytest-socket
pytestCheckHook
requests-mock
responses
syrupy
toml
];
pytestFlagsArray = [ "tests/unit_tests" ];
disabledTests = [
# These tests require network access
"test__get_encoding_model"
"test_get_token_ids"
"test_azure_openai_secrets"
"test_azure_openai_api_key_is_secret_string"
"test_get_num_tokens_from_messages"
"test_azure_openai_api_key_masked_when_passed_from_env"
"test_azure_openai_api_key_masked_when_passed_via_constructor"
"test_azure_openai_uses_actual_secret_value_from_secretstr"
"test_azure_serialized_secrets"
"test_openai_get_num_tokens"
"test_chat_openai_get_num_tokens"
];
pythonImportsCheck = [ "langchain_openai" ];
passthru = {
updateScript = langchain-core.updateScript;
};
meta = {
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-openai==${version}";
description = "Integration package connecting OpenAI and LangChain";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/partners/openai";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ natsukium ];
};
}

View File

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "langchain-text-splitters";
version = "0.2.9";
version = "0.2.2";
pyproject = true;
disabled = pythonOlder "3.9";
@ -19,8 +19,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-core==${version}";
hash = "sha256-/BUn/NxaE9l3VY6dPshr1JJaHTGzn9NMQhSQ2De65Jg=";
rev = "refs/tags/langchain-text-splitters==${version}";
hash = "sha256-SixF3ZkN+gjQ4KYLhGoezdQAOQ1AlGEC6IBzHePF6/o=";
};
sourceRoot = "${src.name}/libs/text-splitters";
@ -43,9 +43,9 @@ buildPythonPackage rec {
};
meta = {
description = "Build context-aware reasoning applications";
changelog = "https://github.com/langchain-ai/langchain/releases/tag/langchain-text-splitters==${version}";
description = "LangChain utilities for splitting into chunks a wide variety of text documents";
homepage = "https://github.com/langchain-ai/langchain/tree/master/libs/text-splitters";
changelog = "https://github.com/langchain-ai/langchain/releases/tag/${src.rev}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};

View File

@ -39,8 +39,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "langchain-ai";
repo = "langchain";
rev = "refs/tags/langchain-core==${version}";
hash = "sha256-/BUn/NxaE9l3VY6dPshr1JJaHTGzn9NMQhSQ2De65Jg=";
rev = "refs/tags/langchain==${version}";
hash = "sha256-HSr1watEDC28SZTsJWbXGrZsQd0O/wgxmj7pTsxMBOA=";
};
sourceRoot = "${src.name}/libs/langchain";

View File

@ -77,7 +77,6 @@ buildPythonPackage rec {
pypaBuildPhase
'';
pythonRemoveDeps = [ "scikit-build" ];
pythonImportsCheck = [
"libmambapy"

View File

@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "peewee";
version = "3.17.5";
version = "3.17.6";
pyproject = true;
disabled = pythonOlder "3.7";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "coleifer";
repo = "peewee";
rev = "refs/tags/${version}";
hash = "sha256-2SrqWPyeDBKOweLu7bEcDIAqCCtnKv0VBdzfpaA22ow=";
hash = "sha256-HluoCXblqwaOb+gtAhvaYshTj9CtHoegn0QUaq0V+eA=";
};
build-system = [ setuptools ];

View File

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "plexapi";
version = "4.15.14";
version = "4.15.15";
pyproject = true;
disabled = pythonOlder "3.8";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "pkkid";
repo = "python-plexapi";
rev = "refs/tags/${version}";
hash = "sha256-fcKLsx+hCMcY+LE7tHW0oys89MnmnYZndnctGBCiFDk=";
hash = "sha256-8sn+ttW8JzxrjDYvtRcjlahE0PNufMXySDwFsbg5zqk=";
};
build-system = [ setuptools ];

View File

@ -4,6 +4,7 @@
pythonOlder,
fetchFromGitHub,
# dependencies
rope,
python-lsp-server,
@ -25,7 +26,7 @@ buildPythonPackage rec {
hash = "sha256-Mr+mWRvOXoy7+SosMae80o0V1jBMn1dEoGmaR/BGHrc=";
};
propagatedBuildInputs = [
dependencies = [
rope
python-lsp-server
];

View File

@ -0,0 +1,51 @@
{
buildPythonPackage,
fetchFromGitHub,
lib,
pytestCheckHook,
setuptools,
# dependencies
fluent-syntax,
pygments,
six,
}:
let
version = "1.0";
src = fetchFromGitHub {
owner = "projectfluent";
repo = "python-fluent";
rev = "fluent.pygments@${version}";
hash = "sha256-AR2uce3HS1ELzpoHmx7F/5/nrL+7KhYemw/00nmvLik=";
};
in
buildPythonPackage {
pname = "fluent-pygments";
inherit version;
pyproject = true;
inherit src;
sourceRoot = "${src.name}/fluent.pygments";
build-system = [ setuptools ];
dependencies = [
fluent-syntax
pygments
six
];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "fluent.pygments" ];
meta = {
changelog = "https://github.com/projectfluent/python-fluent/blob/main/fluent.pygments/CHANGELOG.rst";
description = "Plugin for pygments to add syntax highlighting of Fluent files in Sphinx";
homepage = "https://projectfluent.org/python-fluent/fluent.pygments/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ getpsyched ];
};
}

View File

@ -0,0 +1,61 @@
{
buildPythonPackage,
fetchFromGitHub,
lib,
pytestCheckHook,
setuptools,
# dependencies
attrs,
babel,
fluent-syntax,
pytz,
typing-extensions,
}:
let
version = "0.4.0";
src = fetchFromGitHub {
owner = "projectfluent";
repo = "python-fluent";
rev = "fluent.runtime@${version}";
hash = "sha256-Crg6ybweOZ4B3WfLMOcD7+TxGEZPTHJUxr8ItLB4G+Y=";
};
in
buildPythonPackage {
pname = "fluent-runtime";
inherit version;
pyproject = true;
inherit src;
sourceRoot = "${src.name}/fluent.runtime";
build-system = [ setuptools ];
dependencies = [
attrs
babel
fluent-syntax
pytz
typing-extensions
];
nativeCheckInputs = [ pytestCheckHook ];
disabledTests = [
# https://github.com/projectfluent/python-fluent/pull/203
"test_timeZone"
];
pythonImportsCheck = [ "fluent.runtime" ];
meta = {
changelog = "https://github.com/projectfluent/python-fluent/blob/${src.rev}/fluent.runtime/CHANGELOG.rst";
description = "Localization library for expressive translations";
downloadPage = "https://github.com/projectfluent/python-fluent/releases/tag/${src.rev}";
homepage = "https://projectfluent.org/python-fluent/fluent.runtime/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ getpsyched ];
};
}

View File

@ -0,0 +1,44 @@
{
buildPythonPackage,
fetchFromGitHub,
lib,
pytestCheckHook,
setuptools,
typing-extensions,
}:
let
version = "0.19.0";
src = fetchFromGitHub {
owner = "projectfluent";
repo = "python-fluent";
rev = "fluent.syntax@${version}";
hash = "sha256-nULngwBG/ebICRDi6HMHBdT+r/oq6tbDL7C1iMZpMsA=";
};
in
buildPythonPackage {
pname = "fluent-syntax";
inherit version;
pyproject = true;
inherit src;
sourceRoot = "${src.name}/fluent.syntax";
build-system = [ setuptools ];
dependencies = [ typing-extensions ];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "fluent.syntax" ];
meta = {
changelog = "https://github.com/projectfluent/python-fluent/blob/${src.rev}/fluent.syntax/CHANGELOG.md";
description = "Parse, analyze, process, and serialize Fluent files";
downloadPage = "https://github.com/projectfluent/python-fluent/releases/tag/${src.rev}";
homepage = "https://projectfluent.org/python-fluent/fluent.syntax/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ getpsyched ];
};
}

View File

@ -208,16 +208,16 @@ buildPythonPackage {
"tensorflow.python.framework"
];
meta = with lib; {
meta = {
description = "Computation using data flow graphs for scalable machine learning";
homepage = "http://tensorflow.org";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.asl20;
maintainers = with maintainers; [
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
jyp
abbradar
];
platforms = platforms.all;
badPlatforms = [ "x86_64-darwin" ];
# Cannot import tensortfow on python 3.12 as it still dependends on distutils:
# ModuleNotFoundError: No module named 'distutils'
# https://github.com/tensorflow/tensorflow/issues/58073

View File

@ -1,83 +1,67 @@
{
version = "2.16.1";
version = "2.17.0";
x86_64-linux_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow_cpu-2.16.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0j4311fav3b4wdhw9wb3zvc3grvgxddl28i4kwnbsvvjb191pcs5";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow_cpu-2.17.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1aacn68b88bnnmpl1q0irih0avzm2lfyhwr3wldg144n5zljlrbx";
};
x86_64-linux_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow_cpu-2.16.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0b8q3r2ql7rknlshiv3bh3hj9zll0dn6w0wdxnqgg18cljys5nhh";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow_cpu-2.17.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0swhlncyaxdhygml1z246799lihfp72yxym845n46z4gm0s3hb86";
};
x86_64-linux_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow_cpu-2.16.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "12vv2jxybdfa8nq7r2y53vl7lvmaacb1xmy2368hkwqm2ld4mplg";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow_cpu-2.17.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "11a2i78hdlmzfkzxpr3g07n6cr2l8jmjdz5h73ipvmjkw7zq7wz7";
};
x86_64-linux_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow_cpu-2.16.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0vvv3cr10r6kgkalk3hydqz18y4lp990pm4vwq8mbwdi101m59mf";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow_cpu-2.17.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0v31jwlhbbv5aby3zlr1lk5gjwqq6y41vpf4mnwlj69jj0wlv3qw";
};
x86_64-linux_39_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "17v85433ns360rcccx7pnkhjzd003cr8p6rj51wqb3gl7gkldf83";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0xa1brn4207c0rcilnjmadmnmyyg5zb2dfh2p43whbpbdmsfds2a";
};
x86_64-linux_310_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0w3jd7siamvhgd7si59zpv3rdpq3s2ii3hhcdaimji66axv095hy";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1v5l57rqpl6i00mzx2ksvdh1dx2gfis6vhnkcl550znbskg96z0l";
};
x86_64-linux_311_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "014liy5wnbi2d2lnr8lqhd7221a4a1v6gzih7nv5qfnf1h86234k";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0ll55lwn6igja9xyin3ilf0v1yv5drw6y6d8vbx8zgay3dxpffc3";
};
x86_64-linux_312_gpu = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "0qd09bxfnad969y2h3mlzib51y6xcsqipq1w278k1fl8ayxky4ja";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl";
sha256 = "1977hcs0rk1z2sjh7h8497m6r1yskzgj8nya50wyskgvdbmbzmqa";
};
aarch64-linux_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1n3qf0snjwrc0lcahls4bi2qhpd4yrd531b80vlq89j0gjkjl5cj";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "0ird9r7s7pib89k9d66wdblkibh1n02li57a5vxbh8pdfkzprqyx";
};
aarch64-linux_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1aygypgm5fbpskf6xvzni2yd9l49hf3ls855z2aq0as73m3m81df";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "05bgybxgwwrqvxcrvlrx3wdxy03vags2pis8lp1sn85g52n86rmk";
};
aarch64-linux_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1c0bqiq2hbzcqhaym3s3s0dsp06m07mqgvm35z14nz395pxgjzb1";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "17cxqqpz1dk3iddi36c91arkanxb5xnfnsfcikhck9lglf7gk0na";
};
aarch64-linux_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1ai2hrmn1il0hididdvhd005pjcn6hjivpgcw7dbhmdv6vacs4n6";
};
x86_64-darwin_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp39-cp39-macosx_10_15_x86_64.whl";
sha256 = "0dkcd1v0ivjp6v5pngg0x461wci94nxvwprc6jwgi7rqgyx3zkz9";
};
x86_64-darwin_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp310-cp310-macosx_10_15_x86_64.whl";
sha256 = "0rnlxrb4q2cgqaifalhpji15g1f3m9flqfvfj2p2sv3lvmbg2ydb";
};
x86_64-darwin_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp311-cp311-macosx_10_15_x86_64.whl";
sha256 = "1xc9lis61adk2y22a82i3rvc0j7qznf4fqwg2pd1665zlhybi9gq";
};
x86_64-darwin_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp312-cp312-macosx_10_15_x86_64.whl";
sha256 = "10g8y02ncp5l7f133vank6h01palc445h6s9jndmmy7vm33c7jh9";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl";
sha256 = "1zrscms9qkfpiscnl8c7ibfipwpw8jrdfvwh4wb69p9rxvqgxbbj";
};
aarch64-darwin_39 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp39-cp39-macosx_12_0_arm64.whl";
sha256 = "0541ldysc1a06xcb632340gn1c33w245lzqwq2f2p6hm2ifqp1a2";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp39-cp39-macosx_12_0_arm64.whl";
sha256 = "01a3hjnrgjp2i0ciwyy0gki41cy32prvjhr20zhlcjwbssarxy4p";
};
aarch64-darwin_310 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp310-cp310-macosx_12_0_arm64.whl";
sha256 = "1crrd4izayqwji5gxjw1g9qppkvfsc8p1mr7z6hiipxidys6ldwf";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp310-cp310-macosx_12_0_arm64.whl";
sha256 = "10ypfpmgppvvf3h7hl0m9i8ndjpk2n2v04jlaw907icviapfapsi";
};
aarch64-darwin_311 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp311-cp311-macosx_12_0_arm64.whl";
sha256 = "0kg4g4p563nhw0l2jzydhw4ycyj3dkgqzzm0m3z8k7vzsb8na86c";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp311-cp311-macosx_12_0_arm64.whl";
sha256 = "0kd62x53fzv6zcxh4bggakiczxd8ghjrjr9hn6fi7yyc4in6vlp8";
};
aarch64-darwin_312 = {
url = "https://storage.googleapis.com/tensorflow/versions/2.16.1/tensorflow-2.16.1-cp312-cp312-macosx_12_0_arm64.whl";
sha256 = "1hnzfpfncw8fa84y0jivpfyb5cbbd4cvpln72wkcxpvhj23nvw5v";
url = "https://storage.googleapis.com/tensorflow/versions/2.17.0/tensorflow-2.17.0-cp312-cp312-macosx_12_0_arm64.whl";
sha256 = "0482xdh9mj65iz4651llfznbc268yqm0j9dvx9rfii97svyb867f";
};
}

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
version="2.16.1"
version="2.17.0"
bucket="https://storage.googleapis.com/tensorflow/versions/${version}"
@ -20,10 +20,6 @@ url_and_key_list=(
"aarch64-linux_310 $bucket/tensorflow-${version}-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"aarch64-linux_311 $bucket/tensorflow-${version}-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"aarch64-linux_312 $bucket/tensorflow-${version}-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"
"x86_64-darwin_39 $bucket/tensorflow-${version}-cp39-cp39-macosx_10_15_x86_64.whl"
"x86_64-darwin_310 $bucket/tensorflow-${version}-cp310-cp310-macosx_10_15_x86_64.whl"
"x86_64-darwin_311 $bucket/tensorflow-${version}-cp311-cp311-macosx_10_15_x86_64.whl"
"x86_64-darwin_312 $bucket/tensorflow-${version}-cp312-cp312-macosx_10_15_x86_64.whl"
"aarch64-darwin_39 $bucket/tensorflow-${version}-cp39-cp39-macosx_12_0_arm64.whl"
"aarch64-darwin_310 $bucket/tensorflow-${version}-cp310-cp310-macosx_12_0_arm64.whl"
"aarch64-darwin_311 $bucket/tensorflow-${version}-cp311-cp311-macosx_12_0_arm64.whl"

View File

@ -2,7 +2,7 @@
buildGoModule rec {
pname = "doctl";
version = "1.108.0";
version = "1.109.1";
vendorHash = null;
@ -31,7 +31,7 @@ buildGoModule rec {
owner = "digitalocean";
repo = "doctl";
rev = "v${version}";
sha256 = "sha256-7qfzayuCpjOY8n+bixvm1OcS+BumkZJ0Oyn1xfNezX4=";
sha256 = "sha256-K27K79OAQERREu5doQGhy87XV5Fz4uZWctsZj+GiON0=";
};
meta = with lib; {

View File

@ -234,9 +234,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5"
[[package]]
name = "castaway"
version = "0.2.2"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a17ed5635fc8536268e5d4de1e22e81ac34419e5f052d4d51f4e01dcc263fcc"
checksum = "0abae9be0aaf9ea96a3b1b8b1b55c602ca751eba1b1500220cea4ecbafe7c0d5"
dependencies = [
"rustversion",
]
@ -314,9 +314,9 @@ dependencies = [
[[package]]
name = "clap"
version = "4.5.8"
version = "4.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "84b3edb18336f4df585bc9aa31dd99c036dfa5dc5e9a2939a722a188f3a8970d"
checksum = "64acc1846d54c1fe936a78dc189c34e28d3f5afc348403f28ecf53660b9b8462"
dependencies = [
"clap_builder",
"clap_derive",
@ -324,9 +324,9 @@ dependencies = [
[[package]]
name = "clap_builder"
version = "4.5.8"
version = "4.5.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c1c09dd5ada6c6c78075d6fd0da3f90d8080651e2d6cc8eb2f1aaa4034ced708"
checksum = "6fb8393d67ba2e7bfaf28a23458e4e2b543cc73a99595511eb207fdb8aede942"
dependencies = [
"anstream",
"anstyle",
@ -346,31 +346,20 @@ dependencies = [
[[package]]
name = "clap_complete_command"
version = "0.5.1"
version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "183495371ea78d4c9ff638bfc6497d46fed2396e4f9c50aebc1278a4a9919a3d"
checksum = "da8e198c052315686d36371e8a3c5778b7852fc75cc313e4e11eeb7a644a1b62"
dependencies = [
"clap",
"clap_complete",
"clap_complete_fig",
"clap_complete_nushell",
]
[[package]]
name = "clap_complete_fig"
version = "4.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "54b3e65f91fabdd23cac3d57d39d5d938b4daabd070c335c006dccb866a61110"
dependencies = [
"clap",
"clap_complete",
]
[[package]]
name = "clap_complete_nushell"
version = "0.1.11"
version = "4.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d02bc8b1a18ee47c4d2eec3fb5ac034dc68ebea6125b1509e9ccdffcddce66e"
checksum = "1accf1b463dee0d3ab2be72591dccdab8bef314958340447c882c4c72acfe2a3"
dependencies = [
"clap",
"clap_complete",
@ -447,13 +436,14 @@ dependencies = [
[[package]]
name = "compact_str"
version = "0.7.1"
version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f"
checksum = "6050c3a16ddab2e412160b31f2c871015704239bca62f72f6e5f0be631d3f644"
dependencies = [
"castaway",
"cfg-if",
"itoa",
"rustversion",
"ryu",
"serde",
"static_assertions",
@ -1372,9 +1362,9 @@ checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
[[package]]
name = "matchit"
version = "0.8.3"
version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d3c2fcf089c060eb333302d80c5f3ffa8297abecf220f788e4a09ef85f59420"
checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3"
[[package]]
name = "memchr"
@ -1914,6 +1904,7 @@ dependencies = [
"ruff_index",
"ruff_python_ast",
"ruff_python_parser",
"ruff_python_trivia",
"ruff_text_size",
"rustc-hash 2.0.0",
"salsa",
@ -2001,7 +1992,7 @@ dependencies = [
[[package]]
name = "ruff"
version = "0.5.2"
version = "0.5.3"
dependencies = [
"anyhow",
"argfile",
@ -2060,7 +2051,6 @@ dependencies = [
"mimalloc",
"once_cell",
"red_knot",
"red_knot_module_resolver",
"ruff_db",
"ruff_linter",
"ruff_python_ast",
@ -2095,7 +2085,10 @@ dependencies = [
"countme",
"dashmap 6.0.1",
"filetime",
"ignore",
"insta",
"ruff_cache",
"ruff_notebook",
"ruff_python_ast",
"ruff_python_parser",
"ruff_source_file",
@ -2183,7 +2176,7 @@ dependencies = [
[[package]]
name = "ruff_linter"
version = "0.5.2"
version = "0.5.3"
dependencies = [
"aho-corasick",
"annotate-snippets 0.9.2",
@ -2449,6 +2442,7 @@ version = "0.2.2"
dependencies = [
"anyhow",
"crossbeam",
"ignore",
"insta",
"jod-thread",
"libc",
@ -2473,7 +2467,6 @@ dependencies = [
"shellexpand",
"tracing",
"tracing-subscriber",
"walkdir",
]
[[package]]
@ -2498,7 +2491,7 @@ dependencies = [
[[package]]
name = "ruff_wasm"
version = "0.0.0"
version = "0.5.3"
dependencies = [
"console_error_panic_hook",
"console_log",
@ -2797,9 +2790,9 @@ dependencies = [
[[package]]
name = "serde_with"
version = "3.8.3"
version = "3.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e73139bc5ec2d45e6c5fd85be5a46949c1c39a4c18e56915f5eb4c12f975e377"
checksum = "69cecfa94848272156ea67b2b1a53f20fc7bc638c4a46d2f8abde08f05f4b857"
dependencies = [
"serde",
"serde_derive",
@ -2808,9 +2801,9 @@ dependencies = [
[[package]]
name = "serde_with_macros"
version = "3.8.3"
version = "3.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b80d3d6b56b64335c0180e5ffde23b3c5e08c14c585b51a15bd0e95393f46703"
checksum = "a8fee4991ef4f274617a51ad4af30519438dacb2f56ac773b08a1922ff743350"
dependencies = [
"darling",
"proc-macro2",
@ -2917,9 +2910,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc"
[[package]]
name = "syn"
version = "2.0.69"
version = "2.0.71"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "201fcda3845c23e8212cd466bfebf0bd20694490fc0356ae8e428e0824a915a6"
checksum = "b146dcf730474b4bcd16c311627b31ede9ab149045db4d6088b3becaea046462"
dependencies = [
"proc-macro2",
"quote",
@ -3007,18 +3000,18 @@ dependencies = [
[[package]]
name = "thiserror"
version = "1.0.61"
version = "1.0.62"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709"
checksum = "f2675633b1499176c2dff06b0856a27976a8f9d436737b4cf4f312d4d91d8bbb"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
version = "1.0.61"
version = "1.0.62"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533"
checksum = "d20468752b09f49e909e55a5d338caa8bedf615594e9d80bc4c565d30faf798c"
dependencies = [
"proc-macro2",
"quote",
@ -3037,9 +3030,9 @@ dependencies = [
[[package]]
name = "tikv-jemalloc-sys"
version = "0.5.4+5.3.0-patched"
version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1"
checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d"
dependencies = [
"cc",
"libc",
@ -3047,9 +3040,9 @@ dependencies = [
[[package]]
name = "tikv-jemallocator"
version = "0.5.4"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "965fe0c26be5c56c94e38ba547249074803efd52adfb66de62107d95aab3eaca"
checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865"
dependencies = [
"libc",
"tikv-jemalloc-sys",

View File

@ -1,7 +1,6 @@
{ lib
, rustPlatform
, fetchFromGitHub
, fetchpatch
, installShellFiles
, stdenv
, darwin
@ -14,13 +13,13 @@
rustPlatform.buildRustPackage rec {
pname = "ruff";
version = "0.5.2";
version = "0.5.3";
src = fetchFromGitHub {
owner = "astral-sh";
repo = "ruff";
rev = "refs/tags/${version}";
hash = "sha256-g71RqbEoCpmCjd0CKkc++yv00ohoORDeMYAwYEHKhW4=";
hash = "sha256-+tlE5izXD+kNVwF0nucRsLALYQnkAnCZEONPVDG6dwk=";
};
cargoLock = {

View File

@ -46,11 +46,11 @@ in
stdenv.mkDerivation (finalAttrs: {
inherit pname;
version = "4.4.2";
version = "4.5.1";
src = fetchurl {
url = "mirror://sourceforge/project/warzone2100/releases/${finalAttrs.version}/warzone2100_src.tar.xz";
hash = "sha256-O5Yqxqp1vKYr8uvAZ1SdsI/kocOzg0KRCirCqqvLrN4=";
hash = "sha256-+bOS0wJzTZN0bXp0KKL7OO4QWY6TYhZi1R5vJolBdDQ=";
};
buildInputs = [

View File

@ -13,13 +13,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "evdi";
version = "1.14.4";
version = "1.14.5";
src = fetchFromGitHub {
owner = "DisplayLink";
repo = "evdi";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-+T2shA6n+A0c20+/ZZoXmspH7uPdIRaHT1Cj7BxpL+U=";
hash = "sha256-G+zNFwKWtAFr2AapQoukjFQlFItIP5Q5m5TWuvTMY8k=";
};
env.NIX_CFLAGS_COMPILE = toString [
@ -37,6 +37,8 @@ stdenv.mkDerivation (finalAttrs: {
];
makeFlags = kernel.makeFlags ++ [
# This was removed in https://github.com/DisplayLink/evdi/commit/9884501a20346ff85d8a8e3782e9ac9795013ced#diff-5d2a962cad1c08060cbab9e0bba5330ed63958b64ac04024593562cec55f176dL52
"CONFIG_DRM_EVDI=m"
"KVER=${kernel.modDirVersion}"
"KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
];

View File

@ -219,11 +219,12 @@
apsystems-ez1
];
"aquacell" = ps: with ps; [
aioaquacell
fnv-hash-fast
ifaddr
psutil-home-assistant
sqlalchemy
]; # missing inputs: aioaquacell
];
"aqualogic" = ps: with ps; [
aqualogic
];
@ -5274,6 +5275,7 @@
"aprilaire"
"aprs"
"apsystems"
"aquacell"
"aranet"
"arcam_fmj"
"aseko_pool_live"

View File

@ -27,13 +27,13 @@ let
in
buildNpmPackage rec {
pname = "homepage-dashboard";
version = "0.9.3";
version = "0.9.5";
src = fetchFromGitHub {
owner = "gethomepage";
repo = "homepage";
rev = "v${version}";
hash = "sha256-2t3SGN/VsD16uupeqs7tW+dyTJgt8ch60OzbvE/21vg=";
hash = "sha256-j5DGi5bLoUOoeu8RupiN+qeixNcpPAu3XG4PidZ5Bsg=";
};
npmDepsHash = "sha256-jYZUVwrOxoAbfHHSBkN5IlYhC6yZVVwRoZErkbYrjUs=";

View File

@ -1,38 +0,0 @@
{ lib
, stdenv
, nixosTests
, rustPlatform
, fetchFromGitHub
, Security
}:
rustPlatform.buildRustPackage rec {
pname = "libreddit";
version = "0.30.1";
src = fetchFromGitHub {
owner = "libreddit";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-Z+COSDiJoWHHZQM4BJca0JA5RrJKYjhfkFj8yx/0gZA=";
};
cargoHash = "sha256-42xtt5dCcV6+TcssFjufkVtDSRiDGaatAaiP6K8DT8I=";
buildInputs = lib.optionals stdenv.isDarwin [
Security
];
passthru.tests = {
inherit (nixosTests) libreddit;
};
meta = with lib; {
description = "Private front-end for Reddit";
mainProgram = "libreddit";
homepage = "https://github.com/libreddit/libreddit";
changelog = "https://github.com/libreddit/libreddit/releases/tag/v${version}";
license = with licenses; [ agpl3Only ];
maintainers = with maintainers; [ fab jojosch ];
};
}

View File

@ -2,10 +2,10 @@
stdenv.mkDerivation rec {
pname = "apache-jena";
version = "5.0.0";
version = "5.1.0";
src = fetchurl {
url = "mirror://apache/jena/binaries/apache-jena-${version}.tar.gz";
hash = "sha256-Se47rsgp8V6Ypv0QHrwjIXrDPchM1nSl/GmUWMEvLIo=";
hash = "sha256-LsNno/s2KFKykxKN7klTLfmFWu/jtXJCV9TFPX/Osh4=";
};
nativeBuildInputs = [
makeWrapper

View File

@ -8,7 +8,7 @@
buildGoModule rec {
pname = "boulder";
version = "2024-07-02";
version = "2024-07-16";
src = fetchFromGitHub {
owner = "letsencrypt";
@ -21,7 +21,7 @@ buildGoModule rec {
find $out -name .git -print0 | xargs -0 rm -rf
popd
'';
hash = "sha256-SWOWx1K+m+VWGPqBEyn/m5/9qspEd2JiLLskXJLH5AM=";
hash = "sha256-mIUT9qVBPWrL0ySORwgEH6azaQmzMCl7ha/eYRtvAg4=";
};
vendorHash = null;

View File

@ -730,6 +730,7 @@ mapAliases ({
librdf = lrdf; # Added 2020-03-22
LibreArp = librearp; # Added 2024-06-12
LibreArp-lv2 = librearp-lv2; # Added 2024-06-12
libreddit = throw "'libreddit' has been removed because it is unmaintained upstream. Consider using 'redlib', a maintained fork"; # Added 2024-07-17
libressl_3_5 = throw "'libressl_3_5' has reached end-of-life "; # Added 2023-05-07
librtlsdr = rtl-sdr; # Added 2023-02-18
librewolf-wayland = librewolf; # Added 2022-11-15

View File

@ -10168,10 +10168,6 @@ with pkgs;
libzmf = callPackage ../development/libraries/libzmf { };
libreddit = callPackage ../servers/libreddit {
inherit (darwin.apple_sdk.frameworks) Security;
};
librespeed-cli = callPackage ../tools/misc/librespeed-cli { };
libreswan = callPackage ../tools/networking/libreswan { };
@ -19572,6 +19568,8 @@ with pkgs;
qcachegrind = libsForQt5.callPackage ../development/tools/analysis/qcachegrind { };
vcpkg-tool-unwrapped = callPackage ../by-name/vc/vcpkg-tool/package.nix { doWrap = false; };
visualvm = callPackage ../development/tools/java/visualvm { };
volta = callPackage ../development/tools/volta { };
@ -38103,7 +38101,8 @@ with pkgs;
inherit (callPackages ../applications/science/logic/z3 { python = python3; })
z3_4_12
z3_4_11
z3_4_8
z3_4_8;
inherit (callPackages ../applications/science/logic/z3 { python = python311; })
z3_4_8_5;
z3 = z3_4_8;
z3-tptp = callPackage ../applications/science/logic/z3/tptp.nix { };

View File

@ -157,6 +157,8 @@ self: super: with self; {
aioapns = callPackage ../development/python-modules/aioapns { };
aioaquacell = callPackage ../development/python-modules/aioaquacell { };
aiocron = callPackage ../development/python-modules/aiocron { };
ailment = callPackage ../development/python-modules/ailment { };
@ -945,6 +947,8 @@ self: super: with self; {
attacut = callPackage ../development/python-modules/attacut { };
attr = callPackage ../development/python-modules/attr { };
attrdict = callPackage ../development/python-modules/attrdict { };
attrs = callPackage ../development/python-modules/attrs { };
@ -1062,6 +1066,8 @@ self: super: with self; {
aws-lambda-builders = callPackage ../development/python-modules/aws-lambda-builders { };
aws-request-signer = callPackage ../development/python-modules/aws-request-signer { };
aws-sam-translator = callPackage ../development/python-modules/aws-sam-translator { };
aws-secretsmanager-caching = callPackage ../development/python-modules/aws-secretsmanager-caching { };
@ -4516,6 +4522,12 @@ self: super: with self; {
fluent-logger = callPackage ../development/python-modules/fluent-logger { };
fluent-pygments = callPackage ../development/python-modules/python-fluent/fluent-pygments.nix { };
fluent-runtime = callPackage ../development/python-modules/python-fluent/fluent-runtime.nix { };
fluent-syntax = callPackage ../development/python-modules/python-fluent/fluent-syntax.nix { };
flufl-bounce = callPackage ../development/python-modules/flufl/bounce.nix { };
flufl-i18n = callPackage ../development/python-modules/flufl/i18n.nix { };
@ -6626,12 +6638,20 @@ self: super: with self; {
langchain = callPackage ../development/python-modules/langchain { };
langchain-azure-dynamic-sessions = callPackage ../development/python-modules/langchain-azure-dynamic-sessions { };
langchain-chroma = callPackage ../development/python-modules/langchain-chroma { };
langchain-community = callPackage ../development/python-modules/langchain-community { };
langchain-core = callPackage ../development/python-modules/langchain-core { };
langchain-huggingface = callPackage ../development/python-modules/langchain-huggingface { };
langchain-mongodb = callPackage ../development/python-modules/langchain-mongodb { };
langchain-openai = callPackage ../development/python-modules/langchain-openai { };
langchain-text-splitters = callPackage ../development/python-modules/langchain-text-splitters { };
langcodes = callPackage ../development/python-modules/langcodes { };