Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2023-04-02 06:01:46 +00:00 committed by GitHub
commit 9d596c3b86
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 5814 additions and 209 deletions

View File

@ -27,7 +27,7 @@ let
nvidiaSettings = cfg.nvidiaSettings; nvidiaSettings = cfg.nvidiaSettings;
busIDType = types.strMatching "([[:print:]]+[\:\@][0-9]{1,3}\:[0-9]{1,2}\:[0-9])?"; busIDType = types.strMatching "([[:print:]]+[\:\@][0-9]{1,3}\:[0-9]{1,2}\:[0-9])?";
ibtSupport = cfg.open || (nvidia.ibtSupport or false); ibtSupport = cfg.open || (nvidia_x11.ibtSupport or false);
in in
{ {

View File

@ -102,6 +102,18 @@ perlPackages.buildPerlPackage rec {
]); ]);
checkPhase = '' checkPhase = ''
# Temporarily disable a test failing after a patch imagemagick update.
# It might only due to the reporting and matching used in the test.
# See https://github.com/NixOS/nixpkgs/issues/223446
# See https://sourceforge.net/p/gscan2pdf/bugs/417/
#
# Failed test 'valid TIFF created'
# at t/131_save_tiff.t line 44.
# 'test.tif TIFF 70x46 70x46+0+0 8-bit sRGB 10024B 0.000u 0:00.000
# '
# doesn't match '(?^:test.tif TIFF 70x46 70x46\+0\+0 8-bit sRGB [7|9][.\d]+K?B)'
rm t/131_save_tiff.t
# Temporarily disable a dubiously failing test: # Temporarily disable a dubiously failing test:
# t/169_import_scan.t ........................... 1/1 # t/169_import_scan.t ........................... 1/1
# # Failed test 'variable-height scan imported with expected size' # # Failed test 'variable-height scan imported with expected size'

File diff suppressed because it is too large Load Diff

View File

@ -14,25 +14,27 @@
, stdenv , stdenv
, gtk3 , gtk3
, darwin , darwin
, perl
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "oculante"; pname = "oculante";
version = "0.6.41"; version = "0.6.58";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "woelper"; owner = "woelper";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-2pXfdR5KUD6IUasxyUptxLSLDcvJtwJwOmhHD3I7op8="; sha256 = "sha256-Cs7f6RSOoZFOtQWH67l3A6kv/o2lN5NOn+BEasV03RU=";
}; };
cargoHash = "sha256-F/NKTsDRfoueVrwlq/RkBR6wNn79NiuT2InAR+XPbqw="; cargoLock.lockFile = ./Cargo.lock;
nativeBuildInputs = [ nativeBuildInputs = [
cmake cmake
pkg-config pkg-config
nasm nasm
perl
]; ];
checkFlagsArray = [ "--skip=tests::net" ]; # requires network access checkFlagsArray = [ "--skip=tests::net" ]; # requires network access

View File

@ -1,62 +1,57 @@
{ lib { mkDerivation, haskellPackages, fetchFromGitHub, lib, writeText }:
, stdenv
, fetchFromGitHub let
, autoPatchelfHook # deadd-notification-center.service
, wrapGAppsHook systemd-service = ''
, hicolor-icon-theme [Unit]
, gtk3 Description=Deadd Notification Center
, gobject-introspection PartOf=graphical-session.target
, libxml2
, fetchpatch [Service]
}: Type=dbus
stdenv.mkDerivation rec { BusName=org.freedesktop.Notifications
ExecStart=$out/bin/deadd-notification-center
[Install]
WantedBy=graphical-session.target
'';
in mkDerivation rec {
pname = "deadd-notification-center"; pname = "deadd-notification-center";
version = "2022-04-20"; version = "unstable-2022-11-07";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "phuhl"; owner = "phuhl";
repo = "linux_notification_center"; repo = "linux_notification_center";
rev = "d31867472c35a09562c832b0a589479930c52b86"; rev = "f4b8e2b724d86def9e7b0e12ea624f95760352d5";
sha256 = "sha256-Arl4niscJPYCFWd4mw42IgNs+JsHsVpaTx86zEj3KFM="; hash = "sha256-ClJfWqStULvmj5YRAUDAmn2WOSA2sVtyZsa+qSY51Gk=";
}; };
patches = [ isLibrary = false;
(fetchpatch {
url = "https://github.com/phuhl/linux_notification_center/commit/5244e1498574983322be97925e1ff7ebe456d974.patch"; isExecutable = true;
sha256 = "sha256-hbqbgBmuewOhtx0na2tmFa5W128ZrBvDcyPme/mRzlI=";
}) libraryHaskellDepends = with haskellPackages; [
base bytestring ConfigFile containers dbus directory env-locale
filepath gi-cairo gi-gdk gi-gdkpixbuf gi-gio gi-glib gi-gobject
gi-gtk gi-pango haskell-gettext haskell-gi haskell-gi-base
hdaemonize here lens mtl process regex-tdfa setlocale split stm
tagsoup text time transformers tuple unix
]; ];
nativeBuildInputs = [ executableHaskellDepends = with haskellPackages; [ base ];
autoPatchelfHook
wrapGAppsHook
];
buildInputs = [ # Test suite does nothing.
gtk3 doCheck = false;
gobject-introspection
libxml2
hicolor-icon-theme
];
buildFlags = [ # Add systemd user unit.
# Exclude stack from `make all` to use the prebuilt binary from .out/ postInstall = ''
"service" mkdir -p $out/lib/systemd/user
]; echo "${systemd-service}" > $out/lib/systemd/user/deadd-notification-center.service
'';
makeFlags = [ description = "A haskell-written notification center for users that like a desktop with style";
"PREFIX=${placeholder "out"}" homepage = "https://github.com/phuhl/linux_notification_center";
"SERVICEDIR_SYSTEMD=${placeholder "out"}/etc/systemd/user" license = lib.licenses.bsd3;
"SERVICEDIR_DBUS=${placeholder "out"}/share/dbus-1/services" maintainers = with lib.maintainers; [ melkor333 sna ];
# Override systemd auto-detection. platforms = lib.platforms.linux;
"SYSTEMD=1"
];
meta = with lib; {
description = "A haskell-written notification center for users that like a desktop with style";
homepage = "https://github.com/phuhl/linux_notification_center";
license = licenses.bsd3;
maintainers = [ maintainers.pacman99 ];
platforms = platforms.linux;
};
} }

View File

@ -8,11 +8,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "snapmaker-luban"; pname = "snapmaker-luban";
version = "4.4.0"; version = "4.7.0";
src = fetchurl { src = fetchurl {
url = "https://github.com/Snapmaker/Luban/releases/download/v${version}/snapmaker-luban-${version}-linux-x64.tar.gz"; url = "https://github.com/Snapmaker/Luban/releases/download/v${version}/snapmaker-luban-${version}-linux-x64.tar.gz";
sha256 = "sha256-cXFnFWa6IDGuC6M46Ybnr9/LM8hG0KTUlkzcyuje5SI="; sha256 = "sha256-iIAK4XqxtdV+3FZHhzerMLcpfniKhNMGnfGA+W2inZc=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -47,7 +47,13 @@ stdenv.mkDerivation rec {
libXtst nspr nss libxcb pango libXScrnSaver udev libXtst nspr nss libxcb pango libXScrnSaver udev
]; ];
autoPatchelfIgnoreMissingDeps = [
"libc.musl-x86_64.so.1"
];
dontWrapGApps = true; dontWrapGApps = true;
dontConfigure = true;
dontBuild = true;
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "tilemaker"; pname = "tilemaker";
version = "2.3.0"; version = "2.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "systemed"; owner = "systemed";
repo = "tilemaker"; repo = "tilemaker";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-O1zoRYNUeReIH2ZpL05SiwCZrZrM2IAkwhsP30k/hHc="; hash = "sha256-xpOF/0qFuvTUWQ1I8x/gy5qSLKzSgcQahS47PG+bTRA=";
}; };
postPatch = '' postPatch = ''

View File

@ -2,16 +2,16 @@
buildGoModule rec { buildGoModule rec {
pname = "argocd-autopilot"; pname = "argocd-autopilot";
version = "0.4.13"; version = "0.4.15";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "argoproj-labs"; owner = "argoproj-labs";
repo = "argocd-autopilot"; repo = "argocd-autopilot";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-zmb4T6D7kkAUY+Ky/mpNM6srC0LfzpZ9b1cjFhhKS5A="; sha256 = "sha256-E0Y2GBklUiQBSdrKerFO0B8AAPYnDuxbdRk7uU7cQBI=";
}; };
vendorHash = "sha256-p8Q+oQFbkulcDFdHUoQ1qdO1zsi7XmU/IjnScZogz2g="; vendorHash = "sha256-5YGe9OnZhjswLMlXohPGzpebocuJFfBd94cc1y88irs=";
proxyVendor = true; proxyVendor = true;

View File

@ -2,7 +2,7 @@
(callPackage ./generic.nix { }) { (callPackage ./generic.nix { }) {
channel = "edge"; channel = "edge";
version = "23.3.3"; version = "23.3.4";
sha256 = "014s1g7v8187ipk5y2azjbrvx6lxhrafkr4k78d7gxpirk50dwhy"; sha256 = "19i0g1vbfyjc2nlqh1iml0siqb3zi91ky8lf83ng40r49p1b1c6h";
vendorSha256 = "sha256-kcAtu/YrCgPPamPMEEUUwGBPdiCT9oGQEuYoIq9vGow="; vendorSha256 = "sha256-f77s+WzLhHGbFdJfNRuhdx/DLFB/JyD5hG8ApCZ+h/s=";
} }

View File

@ -1,21 +0,0 @@
diff -pru liferea-1.14.3-orig/src/common.c liferea-1.14.3/src/common.c
--- liferea-1.14.3-orig/src/common.c 2023-03-23 20:36:21.000000000 +0100
+++ liferea-1.14.3/src/common.c 2023-03-24 23:34:08.971922545 +0100
@@ -85,6 +85,8 @@ common_init_paths (void)
common_check_dir (g_build_filename (g_get_user_config_dir(), "liferea", NULL));
common_check_dir (g_build_filename (g_get_user_data_dir(), "liferea", NULL));
+ pathsChecked = TRUE;
+
/* Install default stylesheet if it does not yet exist */
filename = common_create_config_filename ("liferea.css");
if (!g_file_test (filename, G_FILE_TEST_EXISTS))
@@ -95,8 +97,6 @@ common_init_paths (void)
umask (077);
g_free (lifereaCachePath);
-
- pathsChecked = TRUE;
}
gchar *

View File

@ -24,18 +24,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "liferea"; pname = "liferea";
version = "1.14.3"; version = "1.14.4";
src = fetchurl { src = fetchurl {
url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2"; url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${pname}-${version}.tar.bz2";
sha256 = "VmEyGXrePdnRzRldSOOfiB55KBu7w9x4Y9vA8gufot4="; sha256 = "MD1Qx+4/y1wdIllHFPuthLZMLiMdox0FFpVE7tcdYu8=";
}; };
patches = [
# https://github.com/lwindolf/liferea/issues/1217
./bug-1217-segfaults.patch
];
nativeBuildInputs = [ nativeBuildInputs = [
wrapGAppsHook wrapGAppsHook
python3Packages.wrapPython python3Packages.wrapPython

View File

@ -1,46 +1,40 @@
{ stdenv, lib, fetchFromGitHub, autoconf, makeWrapper { stdenv, lib, fetchFromGitHub, pkg-config, rustPlatform
, curl, libiconv, mercurial, zlib , bzip2, curl, zlib, zstd, libiconv, CoreServices
, CoreServices
}: }:
let
python3 = mercurial.python;
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "git-cinnabar"; pname = "git-cinnabar";
version = "0.5.11"; version = "0.6.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "glandium"; owner = "glandium";
repo = "git-cinnabar"; repo = "git-cinnabar";
rev = version; rev = version;
sha256 = "sha256-64ofKGeHwCqiZHOA6MrYrN2eV/qqClcjerDuSqsjKDg="; sha256 = "IV7K/49IN2HMek247GWr5ybZRozHsnCm8RItC9sqFXc=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
nativeBuildInputs = [ autoconf makeWrapper ]; nativeBuildInputs = [
buildInputs = [ curl zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreServices ]; pkg-config rustPlatform.cargoSetupHook rustPlatform.rust.cargo
];
# Ignore submodule status failing due to no git in environment. buildInputs = [ bzip2 curl zlib zstd ]
makeFlags = [ "SUBMODULE_STATUS=yes" ]; ++ lib.optionals stdenv.isDarwin [ libiconv CoreServices ];
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
sha256 = "YWhGAp64GAlySgUvDrD6qaNlc09swe1xCkvEpFR1ytg=";
};
ZSTD_SYS_USE_PKG_CONFIG = true;
enableParallelBuilding = true; enableParallelBuilding = true;
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/bin
mkdir -p $out/bin $out/libexec install -v target/release/git-cinnabar $out/bin
install git-cinnabar-helper $out/bin ln -sv git-cinnabar $out/bin/git-remote-hg
install git-cinnabar git-remote-hg $out/libexec
cp -r cinnabar mercurial $out/libexec
for pythonBin in git-cinnabar git-remote-hg; do
makeWrapper $out/libexec/$pythonBin $out/bin/$pythonBin \
--prefix PATH : ${lib.getBin python3}/bin \
--set PYTHONPATH ${mercurial}/${python3.sitePackages}
done
runHook postInstall runHook postInstall
''; '';

View File

@ -11,10 +11,10 @@
mkXfceDerivation { mkXfceDerivation {
category = "thunar-plugins"; category = "thunar-plugins";
pname = "thunar-archive-plugin"; pname = "thunar-archive-plugin";
version = "0.5.0"; version = "0.5.1";
odd-unstable = false; odd-unstable = false;
sha256 = "sha256-3a42chfv4UQYkvWKCX0FShAcEwt9icJARTHGEgs6/8M="; sha256 = "sha256-TV70IaZClIyQnMGsJEPN0VxHzZAS5F5jSTLm8VwYuwI=";
nativeBuildInputs = [ nativeBuildInputs = [
intltool intltool

View File

@ -5,6 +5,8 @@ args@
, name ? "" , name ? ""
, developerProgram ? false , developerProgram ? false
, runPatches ? [] , runPatches ? []
, autoPatchelfHook
, autoAddOpenGLRunpathHook
, addOpenGLRunpath , addOpenGLRunpath
, alsa-lib , alsa-lib
, expat , expat
@ -16,15 +18,25 @@ args@
, glibc , glibc
, gtk2 , gtk2
, lib , lib
, libxkbcommon
, libkrb5
, krb5
, makeWrapper , makeWrapper
, ncurses5 , ncurses5
, numactl
, nss
, perl , perl
, python3 , python3 # FIXME: CUDAToolkit 10 may still need python27
, pulseaudio
, requireFile , requireFile
, backendStdenv # E.g. gcc11Stdenv, set in extension.nix , backendStdenv # E.g. gcc11Stdenv, set in extension.nix
, unixODBC , unixODBC
, wayland
, xorg , xorg
, zlib , zlib
, freeglut
, libGLU
, libsForQt5
}: }:
backendStdenv.mkDerivation rec { backendStdenv.mkDerivation rec {
@ -52,12 +64,82 @@ backendStdenv.mkDerivation rec {
outputs = [ "out" "lib" "doc" ]; outputs = [ "out" "lib" "doc" ];
nativeBuildInputs = [ perl makeWrapper addOpenGLRunpath ]; nativeBuildInputs = [
buildInputs = [ gdk-pixbuf ]; # To get $GDK_PIXBUF_MODULE_FILE via setup-hook perl
makeWrapper
addOpenGLRunpath
autoPatchelfHook
autoAddOpenGLRunpathHook
] ++ lib.optionals (lib.versionOlder version "11") [
libsForQt5.wrapQtAppsHook
];
buildInputs = [
# To get $GDK_PIXBUF_MODULE_FILE via setup-hook
gdk-pixbuf
# For autoPatchelf
ncurses5
expat
python3
zlib
glibc
xorg.libX11
xorg.libXext
xorg.libXrender
xorg.libXt
xorg.libXtst
xorg.libXi
xorg.libXext
xorg.libXdamage
xorg.libxcb
xorg.xcbutilimage
xorg.xcbutilrenderutil
xorg.xcbutilwm
xorg.xcbutilkeysyms
pulseaudio
libxkbcommon
libkrb5
krb5
gtk2
glib
fontconfig
freetype
numactl
nss
unixODBC
alsa-lib
wayland
] ++ lib.optionals (lib.versionOlder version "11") [
libsForQt5.qt5.qtwebengine
freeglut
libGLU
];
# Prepended to runpaths by autoPatchelf.
# The order inherited from older rpath preFixup code
runtimeDependencies = [ runtimeDependencies = [
ncurses5 expat python3 zlib glibc (placeholder "lib")
xorg.libX11 xorg.libXext xorg.libXrender xorg.libXt xorg.libXtst xorg.libXi xorg.libXext (placeholder "out")
gtk2 glib fontconfig freetype unixODBC alsa-lib "${placeholder "out"}/nvvm"
# Is it not handled by autoPatchelf automatically?
"${lib.getLib backendStdenv.cc.cc}/lib64"
"${placeholder "out"}/jre/lib/amd64/jli"
"${placeholder "out"}/lib64"
"${placeholder "out"}/nvvm/lib64"
];
autoPatchelfIgnoreMissingDeps = [
# This is the hardware-dependent userspace driver that comes from
# nvidia_x11 package. It must be deployed at runtime in
# /run/opengl-driver/lib or pointed at by LD_LIBRARY_PATH variable, rather
# than pinned in runpath
"libcuda.so.1"
# The krb5 expression ships libcom_err.so.3 but cudatoolkit asks for the
# older
# This dependency is asked for by target-linux-x64/CollectX/RedHat/x86_64/libssl.so.10
# - do we even want to use nvidia-shipped libssl?
"libcom_err.so.2"
]; ];
unpackPhase = '' unpackPhase = ''
@ -196,62 +278,6 @@ backendStdenv.mkDerivation rec {
done done
''; '';
preFixup =
let rpath = lib.concatStringsSep ":" [
(lib.makeLibraryPath (runtimeDependencies ++ [ "$lib" "$out" "$out/nvvm" ]))
# The path to libstdc++ and such
#
# `backendStdenv` is the cuda-compatible toolchain that we pick in
# extension.nix; we hand it to NVCC to use as a back-end, and we link
# cudatoolkit's binaries against its libstdc++
"${backendStdenv.cc.cc.lib}/lib64"
"$out/jre/lib/amd64/jli"
"$out/lib64"
"$out/nvvm/lib64"
];
in
''
while IFS= read -r -d $'\0' i; do
if ! isELF "$i"; then continue; fi
echo "patching $i..."
if [[ ! $i =~ \.so ]]; then
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $i
fi
if [[ $i =~ libcudart ]]; then
patchelf --remove-rpath $i
else
patchelf --set-rpath "${rpath}" --force-rpath $i
fi
done < <(find $out $lib $doc -type f -print0)
'' + lib.optionalString (lib.versionAtLeast version "11") ''
for file in $out/target-linux-x64/*.so; do
echo "patching $file..."
patchelf --set-rpath "${rpath}:\$ORIGIN" $file
done
'';
# Set RPATH so that libcuda and other libraries in
# /run/opengl-driver(-32)/lib can be found. See the explanation in
# addOpenGLRunpath. Don't try to figure out which libraries really need
# it, just patch all (but not the stubs libraries). Note that
# --force-rpath prevents changing RPATH (set above) to RUNPATH.
postFixup = ''
addOpenGLRunpath --force-rpath {$out,$lib}/lib/lib*.so
'' + lib.optionalString (lib.versionAtLeast version "11") ''
addOpenGLRunpath $out/cuda_sanitizer_api/compute-sanitizer/*
addOpenGLRunpath $out/cuda_sanitizer_api/compute-sanitizer/x86/*
addOpenGLRunpath $out/target-linux-x64/*
'' +
# Prune broken symlinks which can cause problems with consumers of this package.
''
while read -r -d "" file; do
echo "Found and removing broken symlink $file"
rm "$file"
done < <(find "$out" "$lib" "$doc" -xtype l -print0)
'';
# cuda-gdb doesn't run correctly when not using sandboxing, so # cuda-gdb doesn't run correctly when not using sandboxing, so
# temporarily disabling the install check. This should be set to true # temporarily disabling the install check. This should be set to true

View File

@ -0,0 +1,102 @@
{ lib
, config
, fetchFromGitHub
, stdenv
, cmake
, pkg-config
, cudaPackages ? { }
, symlinkJoin
, tbb
, hostSystem ? "CPP"
, deviceSystem ? if config.cudaSupport or false then "CUDA" else "OMP"
}:
# Policy for device_vector<T>
assert builtins.elem deviceSystem [
"CPP" # Serial on CPU
"OMP" # Parallel with OpenMP
"TBB" # Parallel with Intel TBB
"CUDA" # Parallel on GPU
];
# Policy for host_vector<T>
# Always lives on CPU, but execution can be made parallel
assert builtins.elem hostSystem [ "CPP" "OMP" "TBB" ];
let
pname = "nvidia-thrust";
version = "1.16.0";
inherit (cudaPackages) backendStdenv cudaFlags;
cudaCapabilities = map cudaFlags.dropDot cudaFlags.cudaCapabilities;
tbbSupport = builtins.elem "TBB" [ deviceSystem hostSystem ];
cudaSupport = deviceSystem == "CUDA";
# TODO: Would like to use this:
cudaJoined = symlinkJoin {
name = "cuda-packages-unsplit";
paths = with cudaPackages; [
cuda_nvcc
cuda_nvrtc # symbols: cudaLaunchDevice, &c; notice postBuild
cuda_cudart # cuda_runtime.h
libcublas
];
postBuild = ''
ln -s $out/lib $out/lib64
'';
};
in
stdenv.mkDerivation {
inherit pname version;
src = fetchFromGitHub {
owner = "NVIDIA";
repo = "thrust";
rev = version;
fetchSubmodules = true;
hash = "sha256-/EyznxWKuHuvHNjq+SQg27IaRbtkjXR2zlo2YgCWmUQ=";
};
# NVIDIA's "compiler hacks" seem like work-arounds for legacy toolchains and
# cause us errors such as:
# > Thrust's test harness uses CMAKE_CXX_COMPILER for the CUDA host compiler.
# > Refusing to overwrite specified CMAKE_CUDA_HOST_COMPILER
# So we un-fix cmake after them:
postPatch = ''
echo > cmake/ThrustCompilerHacks.cmake
'';
buildInputs = lib.optionals tbbSupport [ tbb ];
nativeBuildInputs = [
cmake
pkg-config
] ++ lib.optionals cudaSupport [
# Goes in native build inputs because thrust looks for headers
# in a path relative to nvcc...
cudaJoined
];
cmakeFlags = [
"-DTHRUST_INCLUDE_CUB_CMAKE=${if cudaSupport then "ON" else "OFF"}"
"-DTHRUST_DEVICE_SYSTEM=${deviceSystem}"
"-DTHRUST_HOST_SYSTEM=${hostSystem}"
"-DTHRUST_AUTO_DETECT_COMPUTE_ARCHS=OFF"
"-DTHRUST_DISABLE_ARCH_BY_DEFAULT=ON"
] ++ lib.optionals cudaFlags.enableForwardCompat [
"-DTHRUST_ENABLE_COMPUTE_FUTURE=ON"
] ++ map (sm: "THRUST_ENABLE_COMPUTE_${sm}") cudaCapabilities;
passthru = {
inherit cudaSupport cudaPackages cudaJoined;
};
meta = with lib; {
description = "A high-level C++ parallel algorithms library that builds on top of CUDA, TBB, OpenMP, etc";
homepage = "https://github.com/NVIDIA/thrust";
license = licenses.asl20;
platforms = platforms.unix;
maintainers = with maintainers; [ SomeoneSerge ];
};
}

View File

@ -1,21 +1,24 @@
{ lib { lib
, config , config
, fetchFromGitHub , fetchFromGitHub
, symlinkJoin
, stdenv , stdenv
, cmake , cmake
, cudaPackages , cudaPackages ? { }
, cudaSupport ? config.cudaSupport or false , cudaSupport ? config.cudaSupport or false
, cudaCapabilities ? [ "60" "70" "80" "86" ] , nvidia-thrust
, useThrustSourceBuild ? true
, pythonSupport ? true , pythonSupport ? true
, pythonPackages , pythonPackages
, llvmPackages , llvmPackages
, boost
, blas , blas
, swig , swig
, addOpenGLRunpath , addOpenGLRunpath
, optLevel ? let , optLevel ? let
optLevels = optLevels =
lib.optional stdenv.hostPlatform.avx2Support "avx2" lib.optionals stdenv.hostPlatform.avx2Support [ "avx2" ]
++ lib.optional stdenv.hostPlatform.sse4_1Support "sse4" ++ lib.optionals stdenv.hostPlatform.sse4_1Support [ "sse4" ]
++ [ "generic" ]; ++ [ "generic" ];
in in
# Choose the maximum available optimization level # Choose the maximum available optimization level
@ -24,10 +27,31 @@
, runCommand , runCommand
}: }:
assert cudaSupport -> nvidia-thrust.cudaSupport;
let let
pname = "faiss"; pname = "faiss";
version = "1.7.2"; version = "1.7.2";
inherit (cudaPackages) cudatoolkit;
inherit (cudaPackages) cudaFlags;
inherit (cudaFlags) cudaCapabilities dropDot;
cudaJoined = symlinkJoin {
name = "cuda-packages-unsplit";
paths = with cudaPackages; [
cuda_cudart # cuda_runtime.h
libcublas
libcurand
] ++ lib.optionals useThrustSourceBuild [
nvidia-thrust
] ++ lib.optionals (!useThrustSourceBuild) [
cuda_cccl
] ++ lib.optionals (cudaPackages ? cuda_profiler_api) [
cuda_profiler_api # cuda_profiler_api.h
] ++ lib.optionals (!(cudaPackages ? cuda_profiler_api)) [
cuda_nvprof # cuda_profiler_api.h
];
};
in in
stdenv.mkDerivation { stdenv.mkDerivation {
inherit pname version; inherit pname version;
@ -50,6 +74,8 @@ stdenv.mkDerivation {
pythonPackages.wheel pythonPackages.wheel
] ++ lib.optionals stdenv.cc.isClang [ ] ++ lib.optionals stdenv.cc.isClang [
llvmPackages.openmp llvmPackages.openmp
] ++ lib.optionals cudaSupport [
cudaJoined
]; ];
propagatedBuildInputs = lib.optionals pythonSupport [ propagatedBuildInputs = lib.optionals pythonSupport [
@ -57,7 +83,7 @@ stdenv.mkDerivation {
]; ];
nativeBuildInputs = [ cmake ] ++ lib.optionals cudaSupport [ nativeBuildInputs = [ cmake ] ++ lib.optionals cudaSupport [
cudatoolkit cudaPackages.cuda_nvcc
addOpenGLRunpath addOpenGLRunpath
] ++ lib.optionals pythonSupport [ ] ++ lib.optionals pythonSupport [
pythonPackages.python pythonPackages.python
@ -72,7 +98,8 @@ stdenv.mkDerivation {
"-DFAISS_ENABLE_PYTHON=${if pythonSupport then "ON" else "OFF"}" "-DFAISS_ENABLE_PYTHON=${if pythonSupport then "ON" else "OFF"}"
"-DFAISS_OPT_LEVEL=${optLevel}" "-DFAISS_OPT_LEVEL=${optLevel}"
] ++ lib.optionals cudaSupport [ ] ++ lib.optionals cudaSupport [
"-DCMAKE_CUDA_ARCHITECTURES=${lib.concatStringsSep ";" cudaCapabilities}" "-DCMAKE_CUDA_ARCHITECTURES=${builtins.concatStringsSep ";" (map dropDot cudaCapabilities)}"
"-DCUDAToolkit_INCLUDE_DIR=${cudaJoined}/include"
]; ];
@ -101,6 +128,11 @@ stdenv.mkDerivation {
addOpenGLRunpath $demos/bin/* addOpenGLRunpath $demos/bin/*
''; '';
# Need buildPythonPackage for this one
# pythonCheckImports = [
# "faiss"
# ];
passthru = { passthru = {
inherit cudaSupport cudaPackages pythonSupport; inherit cudaSupport cudaPackages pythonSupport;

View File

@ -18,7 +18,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "json-schema-for-humans"; pname = "json-schema-for-humans";
version = "0.44.3"; version = "0.44.4";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "coveooss"; owner = "coveooss";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-qja4mYl8G/t3FqFoVToLo76XthJ4RXF4y6odkPZDoq4="; hash = "sha256-31F7TzuXyu7KaUFcbul7ZWGH0MfakMJrh2Crel+T4Is=";
}; };
postPatch = '' postPatch = ''

View File

@ -25,7 +25,8 @@ in buildPythonPackage rec {
nativeCheckInputs = [ glibcLocales ]; nativeCheckInputs = [ glibcLocales ];
buildInputs = [ ft pillow ]; buildInputs = [ ft ];
propagatedBuildInputs = [ pillow ];
postPatch = '' postPatch = ''
substituteInPlace setup.py \ substituteInPlace setup.py \

View File

@ -10,16 +10,16 @@
buildGoModule rec { buildGoModule rec {
pname = "buf"; pname = "buf";
version = "1.15.1"; version = "1.16.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bufbuild"; owner = "bufbuild";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-XiB8ZlbtzU66abM9zJotaMCrbYScqWmDv4ulEeQS6+g="; hash = "sha256-VZgrt9Fy1PyMoItuCx9R3DxJWYZu7gmL+KnBfOrm0y4=";
}; };
vendorHash = "sha256-bQKpy5xjUItgQ79r8TrMUOjo0Ze9E25glvOv312W1k0="; vendorHash = "sha256-ePM7TITBiwTqJEgew+1FTyuyywmAu8ZSPlhCghH3k5k=";
patches = [ patches = [
# Skip a test that requires networking to be available to work. # Skip a test that requires networking to be available to work.

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "quick-lint-js"; pname = "quick-lint-js";
version = "2.11.0"; version = "2.12.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "quick-lint"; owner = "quick-lint";
repo = "quick-lint-js"; repo = "quick-lint-js";
rev = version; rev = version;
sha256 = "sha256-hpDVR58Qez+TcAO77GXvjuH7NfBxdRvIi8WsBIuz3nI="; sha256 = "sha256-OxzemfWYItYb4XWpW2tNUn4yZHUIpS8MJXaP8+3z4YY=";
}; };
nativeBuildInputs = [ cmake ninja ]; nativeBuildInputs = [ cmake ninja ];

View File

@ -11,14 +11,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "cargo-embed"; pname = "cargo-embed";
version = "0.16.0"; version = "0.18.0";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
sha256 = "sha256-YAeE3pDw5xqSn4rAv3lxJtKQHki1bf97CJHBEK8JoiA="; hash = "sha256-Z8PoM1zlbTYH1oF9nHzu3QykHQ+IXewrXAOieLguFuQ=";
}; };
cargoSha256 = "sha256-p6d8vdiAVkufTQv3FliKCBgF5ZXM24UnG96EzlpyfZE="; cargoHash = "sha256-xL1QbeOLnAJVcBdp2NIMlT5LMxkNwA99VzCHV9NjwUo=";
nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ]; nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ];

View File

@ -10,14 +10,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "cargo-flash"; pname = "cargo-flash";
version = "0.16.0"; version = "0.18.0";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
sha256 = "sha256-Zwb9jUZwkvuBzvACMwKwpAHEMkjLVDkXfDLo4ntG3+k="; hash = "sha256-RCcl0cZhGOKdwlNY7wuCBP0AgoNSU3c/LfCM2pPjsoo=";
}; };
cargoSha256 = "sha256-giGSTMtGTIw4ZZglHqbW2sGKO/D/3TVQR5olTgitBjE="; cargoHash = "sha256-NGwWmqP4D5LdXTwo+B+cj+i66Ec9fB723h2kggugLgg=";
nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ]; nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
buildInputs = [ libusb1 ] ++ lib.optionals stdenv.isDarwin [ AppKit ]; buildInputs = [ libusb1 ] ++ lib.optionals stdenv.isDarwin [ AppKit ];

View File

@ -11,14 +11,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "probe-rs-cli"; pname = "probe-rs-cli";
version = "0.16.0"; version = "0.18.0";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
sha256 = "sha256-YNOD0hDDQ6M496m9lps28UX41pMO1r/CE30rcS53h48="; hash = "sha256-5p3SxroztyJnBN/lzFagbpmAAIQmR9iwWHDMxuighDA=";
}; };
cargoSha256 = "sha256-/1bnDtfNxnOI4Inmnd+r2epT236ghQsiNuoAuROEfPM="; cargoHash = "sha256-0osWLXrpz6/CnCK1mfwnwqk+OsZLxO2JxbgRnqMhLeE=";
nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ]; nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ];

View File

@ -2,6 +2,7 @@
, stdenv , stdenv
, fetchFromGitHub , fetchFromGitHub
, cmake , cmake
, ninja
, jdk8 , jdk8
, jdk17 , jdk17
, zlib , zlib
@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
sha256 = "sha256-7tptHKWkbdxTn6VIPxXE1K3opKRiUW2zv9r6J05dcS8="; sha256 = "sha256-7tptHKWkbdxTn6VIPxXE1K3opKRiUW2zv9r6J05dcS8=";
}; };
nativeBuildInputs = [ extra-cmake-modules cmake file jdk17 wrapQtAppsHook ]; nativeBuildInputs = [ extra-cmake-modules cmake file jdk17 ninja wrapQtAppsHook ];
buildInputs = [ buildInputs = [
qtbase qtbase
qtsvg qtsvg

View File

@ -9,11 +9,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "btrfs-progs"; pname = "btrfs-progs";
version = "6.2.1"; version = "6.2.2";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz"; url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
sha256 = "sha256-r1XjEEz15SJSu5QKKR7TSFKRYiSlAgZgDJQTRmQnMpk="; sha256 = "sha256-5IiNuGN9kuZnRIOGmS0IVrlUzyUVuY05tmfaQ8SC1pM=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -63,7 +63,8 @@ stdenv.mkDerivation rec {
meta = with lib; { meta = with lib; {
description = "Utilities for the btrfs filesystem"; description = "Utilities for the btrfs filesystem";
homepage = "https://btrfs.wiki.kernel.org/"; homepage = "https://btrfs.readthedocs.io/en/latest/";
changelog = "https://github.com/kdave/btrfs-progs/raw/v${version}/CHANGES";
license = licenses.gpl2Only; license = licenses.gpl2Only;
maintainers = with maintainers; [ raskin ]; maintainers = with maintainers; [ raskin ];
platforms = platforms.linux; platforms = platforms.linux;

View File

@ -10318,6 +10318,17 @@ with pkgs;
nvfetcher = haskell.lib.compose.justStaticExecutables haskellPackages.nvfetcher; nvfetcher = haskell.lib.compose.justStaticExecutables haskellPackages.nvfetcher;
nvidia-thrust = callPackage ../development/libraries/nvidia-thrust { };
nvidia-thrust-intel = callPackage ../development/libraries/nvidia-thrust {
hostSystem = "TBB";
deviceSystem = if config.cudaSupport or false then "CUDA" else "TBB";
};
nvidia-thrust-cuda = callPackage ../development/libraries/nvidia-thrust {
deviceSystem = "CUDA";
};
miller = callPackage ../tools/text/miller { }; miller = callPackage ../tools/text/miller { };
milu = callPackage ../applications/misc/milu { }; milu = callPackage ../applications/misc/milu { };
@ -30381,7 +30392,7 @@ with pkgs;
linvstmanager = qt5.callPackage ../applications/audio/linvstmanager { }; linvstmanager = qt5.callPackage ../applications/audio/linvstmanager { };
deadd-notification-center = callPackage ../applications/misc/deadd-notification-center { }; deadd-notification-center = haskell.lib.compose.justStaticExecutables (haskellPackages.callPackage ../applications/misc/deadd-notification-center { });
lollypop = callPackage ../applications/audio/lollypop { }; lollypop = callPackage ../applications/audio/lollypop { };
@ -37829,6 +37840,11 @@ with pkgs;
swig = swig4; swig = swig4;
}; };
faissWithCuda = faiss.override {
cudaSupport = true;
nvidia-thrust = nvidia-thrust-cuda;
};
fityk = callPackage ../applications/science/misc/fityk { }; fityk = callPackage ../applications/science/misc/fityk { };
galario = callPackage ../development/libraries/galario { }; galario = callPackage ../development/libraries/galario { };