Merge staging-next into staging
This commit is contained in:
commit
9d596c3b86
@ -27,7 +27,7 @@ let
|
||||
nvidiaSettings = cfg.nvidiaSettings;
|
||||
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
|
||||
|
||||
{
|
||||
|
@ -102,6 +102,18 @@ perlPackages.buildPerlPackage rec {
|
||||
]);
|
||||
|
||||
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:
|
||||
# t/169_import_scan.t ........................... 1/1
|
||||
# # Failed test 'variable-height scan imported with expected size'
|
||||
|
5443
pkgs/applications/graphics/oculante/Cargo.lock
generated
Normal file
5443
pkgs/applications/graphics/oculante/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -14,25 +14,27 @@
|
||||
, stdenv
|
||||
, gtk3
|
||||
, darwin
|
||||
, perl
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "oculante";
|
||||
version = "0.6.41";
|
||||
version = "0.6.58";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "woelper";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "sha256-2pXfdR5KUD6IUasxyUptxLSLDcvJtwJwOmhHD3I7op8=";
|
||||
sha256 = "sha256-Cs7f6RSOoZFOtQWH67l3A6kv/o2lN5NOn+BEasV03RU=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-F/NKTsDRfoueVrwlq/RkBR6wNn79NiuT2InAR+XPbqw=";
|
||||
cargoLock.lockFile = ./Cargo.lock;
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
nasm
|
||||
perl
|
||||
];
|
||||
|
||||
checkFlagsArray = [ "--skip=tests::net" ]; # requires network access
|
||||
|
@ -1,62 +1,57 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, autoPatchelfHook
|
||||
, wrapGAppsHook
|
||||
, hicolor-icon-theme
|
||||
, gtk3
|
||||
, gobject-introspection
|
||||
, libxml2
|
||||
, fetchpatch
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
{ mkDerivation, haskellPackages, fetchFromGitHub, lib, writeText }:
|
||||
|
||||
let
|
||||
# deadd-notification-center.service
|
||||
systemd-service = ''
|
||||
[Unit]
|
||||
Description=Deadd Notification Center
|
||||
PartOf=graphical-session.target
|
||||
|
||||
[Service]
|
||||
Type=dbus
|
||||
BusName=org.freedesktop.Notifications
|
||||
ExecStart=$out/bin/deadd-notification-center
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical-session.target
|
||||
'';
|
||||
in mkDerivation rec {
|
||||
pname = "deadd-notification-center";
|
||||
version = "2022-04-20";
|
||||
version = "unstable-2022-11-07";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phuhl";
|
||||
repo = "linux_notification_center";
|
||||
rev = "d31867472c35a09562c832b0a589479930c52b86";
|
||||
sha256 = "sha256-Arl4niscJPYCFWd4mw42IgNs+JsHsVpaTx86zEj3KFM=";
|
||||
rev = "f4b8e2b724d86def9e7b0e12ea624f95760352d5";
|
||||
hash = "sha256-ClJfWqStULvmj5YRAUDAmn2WOSA2sVtyZsa+qSY51Gk=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://github.com/phuhl/linux_notification_center/commit/5244e1498574983322be97925e1ff7ebe456d974.patch";
|
||||
sha256 = "sha256-hbqbgBmuewOhtx0na2tmFa5W128ZrBvDcyPme/mRzlI=";
|
||||
})
|
||||
isLibrary = false;
|
||||
|
||||
isExecutable = true;
|
||||
|
||||
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 = [
|
||||
autoPatchelfHook
|
||||
wrapGAppsHook
|
||||
];
|
||||
executableHaskellDepends = with haskellPackages; [ base ];
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
gobject-introspection
|
||||
libxml2
|
||||
hicolor-icon-theme
|
||||
];
|
||||
# Test suite does nothing.
|
||||
doCheck = false;
|
||||
|
||||
buildFlags = [
|
||||
# Exclude stack from `make all` to use the prebuilt binary from .out/
|
||||
"service"
|
||||
];
|
||||
# Add systemd user unit.
|
||||
postInstall = ''
|
||||
mkdir -p $out/lib/systemd/user
|
||||
echo "${systemd-service}" > $out/lib/systemd/user/deadd-notification-center.service
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"PREFIX=${placeholder "out"}"
|
||||
"SERVICEDIR_SYSTEMD=${placeholder "out"}/etc/systemd/user"
|
||||
"SERVICEDIR_DBUS=${placeholder "out"}/share/dbus-1/services"
|
||||
# Override systemd auto-detection.
|
||||
"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;
|
||||
};
|
||||
description = "A haskell-written notification center for users that like a desktop with style";
|
||||
homepage = "https://github.com/phuhl/linux_notification_center";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ melkor333 sna ];
|
||||
platforms = lib.platforms.linux;
|
||||
}
|
||||
|
@ -8,11 +8,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "snapmaker-luban";
|
||||
version = "4.4.0";
|
||||
version = "4.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
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 = [
|
||||
@ -47,7 +47,13 @@ stdenv.mkDerivation rec {
|
||||
libXtst nspr nss libxcb pango libXScrnSaver udev
|
||||
];
|
||||
|
||||
autoPatchelfIgnoreMissingDeps = [
|
||||
"libc.musl-x86_64.so.1"
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
@ -3,13 +3,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tilemaker";
|
||||
version = "2.3.0";
|
||||
version = "2.4.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "systemed";
|
||||
repo = "tilemaker";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-O1zoRYNUeReIH2ZpL05SiwCZrZrM2IAkwhsP30k/hHc=";
|
||||
hash = "sha256-xpOF/0qFuvTUWQ1I8x/gy5qSLKzSgcQahS47PG+bTRA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -2,16 +2,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "argocd-autopilot";
|
||||
version = "0.4.13";
|
||||
version = "0.4.15";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "argoproj-labs";
|
||||
repo = "argocd-autopilot";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-zmb4T6D7kkAUY+Ky/mpNM6srC0LfzpZ9b1cjFhhKS5A=";
|
||||
sha256 = "sha256-E0Y2GBklUiQBSdrKerFO0B8AAPYnDuxbdRk7uU7cQBI=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-p8Q+oQFbkulcDFdHUoQ1qdO1zsi7XmU/IjnScZogz2g=";
|
||||
vendorHash = "sha256-5YGe9OnZhjswLMlXohPGzpebocuJFfBd94cc1y88irs=";
|
||||
|
||||
proxyVendor = true;
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
(callPackage ./generic.nix { }) {
|
||||
channel = "edge";
|
||||
version = "23.3.3";
|
||||
sha256 = "014s1g7v8187ipk5y2azjbrvx6lxhrafkr4k78d7gxpirk50dwhy";
|
||||
vendorSha256 = "sha256-kcAtu/YrCgPPamPMEEUUwGBPdiCT9oGQEuYoIq9vGow=";
|
||||
version = "23.3.4";
|
||||
sha256 = "19i0g1vbfyjc2nlqh1iml0siqb3zi91ky8lf83ng40r49p1b1c6h";
|
||||
vendorSha256 = "sha256-f77s+WzLhHGbFdJfNRuhdx/DLFB/JyD5hG8ApCZ+h/s=";
|
||||
}
|
||||
|
@ -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 *
|
@ -24,18 +24,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "liferea";
|
||||
version = "1.14.3";
|
||||
version = "1.14.4";
|
||||
|
||||
src = fetchurl {
|
||||
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 = [
|
||||
wrapGAppsHook
|
||||
python3Packages.wrapPython
|
||||
|
@ -1,46 +1,40 @@
|
||||
{ stdenv, lib, fetchFromGitHub, autoconf, makeWrapper
|
||||
, curl, libiconv, mercurial, zlib
|
||||
, CoreServices
|
||||
{ stdenv, lib, fetchFromGitHub, pkg-config, rustPlatform
|
||||
, bzip2, curl, zlib, zstd, libiconv, CoreServices
|
||||
}:
|
||||
|
||||
let
|
||||
python3 = mercurial.python;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "git-cinnabar";
|
||||
version = "0.5.11";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "glandium";
|
||||
repo = "git-cinnabar";
|
||||
rev = version;
|
||||
sha256 = "sha256-64ofKGeHwCqiZHOA6MrYrN2eV/qqClcjerDuSqsjKDg=";
|
||||
sha256 = "IV7K/49IN2HMek247GWr5ybZRozHsnCm8RItC9sqFXc=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf makeWrapper ];
|
||||
buildInputs = [ curl zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv CoreServices ];
|
||||
nativeBuildInputs = [
|
||||
pkg-config rustPlatform.cargoSetupHook rustPlatform.rust.cargo
|
||||
];
|
||||
|
||||
# Ignore submodule status failing due to no git in environment.
|
||||
makeFlags = [ "SUBMODULE_STATUS=yes" ];
|
||||
buildInputs = [ bzip2 curl zlib zstd ]
|
||||
++ lib.optionals stdenv.isDarwin [ libiconv CoreServices ];
|
||||
|
||||
cargoDeps = rustPlatform.fetchCargoTarball {
|
||||
inherit src;
|
||||
sha256 = "YWhGAp64GAlySgUvDrD6qaNlc09swe1xCkvEpFR1ytg=";
|
||||
};
|
||||
|
||||
ZSTD_SYS_USE_PKG_CONFIG = true;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin $out/libexec
|
||||
install git-cinnabar-helper $out/bin
|
||||
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
|
||||
|
||||
mkdir -p $out/bin
|
||||
install -v target/release/git-cinnabar $out/bin
|
||||
ln -sv git-cinnabar $out/bin/git-remote-hg
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
@ -11,10 +11,10 @@
|
||||
mkXfceDerivation {
|
||||
category = "thunar-plugins";
|
||||
pname = "thunar-archive-plugin";
|
||||
version = "0.5.0";
|
||||
version = "0.5.1";
|
||||
odd-unstable = false;
|
||||
|
||||
sha256 = "sha256-3a42chfv4UQYkvWKCX0FShAcEwt9icJARTHGEgs6/8M=";
|
||||
sha256 = "sha256-TV70IaZClIyQnMGsJEPN0VxHzZAS5F5jSTLm8VwYuwI=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
intltool
|
||||
|
@ -5,6 +5,8 @@ args@
|
||||
, name ? ""
|
||||
, developerProgram ? false
|
||||
, runPatches ? []
|
||||
, autoPatchelfHook
|
||||
, autoAddOpenGLRunpathHook
|
||||
, addOpenGLRunpath
|
||||
, alsa-lib
|
||||
, expat
|
||||
@ -16,15 +18,25 @@ args@
|
||||
, glibc
|
||||
, gtk2
|
||||
, lib
|
||||
, libxkbcommon
|
||||
, libkrb5
|
||||
, krb5
|
||||
, makeWrapper
|
||||
, ncurses5
|
||||
, numactl
|
||||
, nss
|
||||
, perl
|
||||
, python3
|
||||
, python3 # FIXME: CUDAToolkit 10 may still need python27
|
||||
, pulseaudio
|
||||
, requireFile
|
||||
, backendStdenv # E.g. gcc11Stdenv, set in extension.nix
|
||||
, unixODBC
|
||||
, wayland
|
||||
, xorg
|
||||
, zlib
|
||||
, freeglut
|
||||
, libGLU
|
||||
, libsForQt5
|
||||
}:
|
||||
|
||||
backendStdenv.mkDerivation rec {
|
||||
@ -52,12 +64,82 @@ backendStdenv.mkDerivation rec {
|
||||
|
||||
outputs = [ "out" "lib" "doc" ];
|
||||
|
||||
nativeBuildInputs = [ perl makeWrapper addOpenGLRunpath ];
|
||||
buildInputs = [ gdk-pixbuf ]; # To get $GDK_PIXBUF_MODULE_FILE via setup-hook
|
||||
nativeBuildInputs = [
|
||||
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 = [
|
||||
ncurses5 expat python3 zlib glibc
|
||||
xorg.libX11 xorg.libXext xorg.libXrender xorg.libXt xorg.libXtst xorg.libXi xorg.libXext
|
||||
gtk2 glib fontconfig freetype unixODBC alsa-lib
|
||||
(placeholder "lib")
|
||||
(placeholder "out")
|
||||
"${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 = ''
|
||||
@ -196,62 +278,6 @@ backendStdenv.mkDerivation rec {
|
||||
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
|
||||
# temporarily disabling the install check. This should be set to true
|
||||
|
102
pkgs/development/libraries/nvidia-thrust/default.nix
Normal file
102
pkgs/development/libraries/nvidia-thrust/default.nix
Normal 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 ];
|
||||
};
|
||||
}
|
@ -1,21 +1,24 @@
|
||||
{ lib
|
||||
, config
|
||||
, fetchFromGitHub
|
||||
, symlinkJoin
|
||||
, stdenv
|
||||
, cmake
|
||||
, cudaPackages
|
||||
, cudaPackages ? { }
|
||||
, cudaSupport ? config.cudaSupport or false
|
||||
, cudaCapabilities ? [ "60" "70" "80" "86" ]
|
||||
, nvidia-thrust
|
||||
, useThrustSourceBuild ? true
|
||||
, pythonSupport ? true
|
||||
, pythonPackages
|
||||
, llvmPackages
|
||||
, boost
|
||||
, blas
|
||||
, swig
|
||||
, addOpenGLRunpath
|
||||
, optLevel ? let
|
||||
optLevels =
|
||||
lib.optional stdenv.hostPlatform.avx2Support "avx2"
|
||||
++ lib.optional stdenv.hostPlatform.sse4_1Support "sse4"
|
||||
lib.optionals stdenv.hostPlatform.avx2Support [ "avx2" ]
|
||||
++ lib.optionals stdenv.hostPlatform.sse4_1Support [ "sse4" ]
|
||||
++ [ "generic" ];
|
||||
in
|
||||
# Choose the maximum available optimization level
|
||||
@ -24,10 +27,31 @@
|
||||
, runCommand
|
||||
}:
|
||||
|
||||
assert cudaSupport -> nvidia-thrust.cudaSupport;
|
||||
|
||||
let
|
||||
pname = "faiss";
|
||||
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
|
||||
stdenv.mkDerivation {
|
||||
inherit pname version;
|
||||
@ -50,6 +74,8 @@ stdenv.mkDerivation {
|
||||
pythonPackages.wheel
|
||||
] ++ lib.optionals stdenv.cc.isClang [
|
||||
llvmPackages.openmp
|
||||
] ++ lib.optionals cudaSupport [
|
||||
cudaJoined
|
||||
];
|
||||
|
||||
propagatedBuildInputs = lib.optionals pythonSupport [
|
||||
@ -57,7 +83,7 @@ stdenv.mkDerivation {
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake ] ++ lib.optionals cudaSupport [
|
||||
cudatoolkit
|
||||
cudaPackages.cuda_nvcc
|
||||
addOpenGLRunpath
|
||||
] ++ lib.optionals pythonSupport [
|
||||
pythonPackages.python
|
||||
@ -72,7 +98,8 @@ stdenv.mkDerivation {
|
||||
"-DFAISS_ENABLE_PYTHON=${if pythonSupport then "ON" else "OFF"}"
|
||||
"-DFAISS_OPT_LEVEL=${optLevel}"
|
||||
] ++ 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/*
|
||||
'';
|
||||
|
||||
# Need buildPythonPackage for this one
|
||||
# pythonCheckImports = [
|
||||
# "faiss"
|
||||
# ];
|
||||
|
||||
passthru = {
|
||||
inherit cudaSupport cudaPackages pythonSupport;
|
||||
|
||||
|
@ -18,7 +18,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "json-schema-for-humans";
|
||||
version = "0.44.3";
|
||||
version = "0.44.4";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -27,7 +27,7 @@ buildPythonPackage rec {
|
||||
owner = "coveooss";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-qja4mYl8G/t3FqFoVToLo76XthJ4RXF4y6odkPZDoq4=";
|
||||
hash = "sha256-31F7TzuXyu7KaUFcbul7ZWGH0MfakMJrh2Crel+T4Is=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -25,7 +25,8 @@ in buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [ glibcLocales ];
|
||||
|
||||
buildInputs = [ ft pillow ];
|
||||
buildInputs = [ ft ];
|
||||
propagatedBuildInputs = [ pillow ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
|
@ -10,16 +10,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "buf";
|
||||
version = "1.15.1";
|
||||
version = "1.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bufbuild";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-XiB8ZlbtzU66abM9zJotaMCrbYScqWmDv4ulEeQS6+g=";
|
||||
hash = "sha256-VZgrt9Fy1PyMoItuCx9R3DxJWYZu7gmL+KnBfOrm0y4=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-bQKpy5xjUItgQ79r8TrMUOjo0Ze9E25glvOv312W1k0=";
|
||||
vendorHash = "sha256-ePM7TITBiwTqJEgew+1FTyuyywmAu8ZSPlhCghH3k5k=";
|
||||
|
||||
patches = [
|
||||
# Skip a test that requires networking to be available to work.
|
||||
|
@ -3,13 +3,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "quick-lint-js";
|
||||
version = "2.11.0";
|
||||
version = "2.12.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "quick-lint";
|
||||
repo = "quick-lint-js";
|
||||
rev = version;
|
||||
sha256 = "sha256-hpDVR58Qez+TcAO77GXvjuH7NfBxdRvIi8WsBIuz3nI=";
|
||||
sha256 = "sha256-OxzemfWYItYb4XWpW2tNUn4yZHUIpS8MJXaP8+3z4YY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ninja ];
|
||||
|
@ -11,14 +11,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-embed";
|
||||
version = "0.16.0";
|
||||
version = "0.18.0";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-YAeE3pDw5xqSn4rAv3lxJtKQHki1bf97CJHBEK8JoiA=";
|
||||
hash = "sha256-Z8PoM1zlbTYH1oF9nHzu3QykHQ+IXewrXAOieLguFuQ=";
|
||||
};
|
||||
|
||||
cargoSha256 = "sha256-p6d8vdiAVkufTQv3FliKCBgF5ZXM24UnG96EzlpyfZE=";
|
||||
cargoHash = "sha256-xL1QbeOLnAJVcBdp2NIMlT5LMxkNwA99VzCHV9NjwUo=";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ] ++ lib.optionals stdenv.isDarwin [ DarwinTools ];
|
||||
|
||||
|
@ -10,14 +10,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cargo-flash";
|
||||
version = "0.16.0";
|
||||
version = "0.18.0";
|
||||
|
||||
src = fetchCrate {
|
||||
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 ];
|
||||
buildInputs = [ libusb1 ] ++ lib.optionals stdenv.isDarwin [ AppKit ];
|
||||
|
@ -11,14 +11,14 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "probe-rs-cli";
|
||||
version = "0.16.0";
|
||||
version = "0.18.0";
|
||||
|
||||
src = fetchCrate {
|
||||
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 ];
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, ninja
|
||||
, jdk8
|
||||
, jdk17
|
||||
, zlib
|
||||
@ -43,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "sha256-7tptHKWkbdxTn6VIPxXE1K3opKRiUW2zv9r6J05dcS8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ extra-cmake-modules cmake file jdk17 wrapQtAppsHook ];
|
||||
nativeBuildInputs = [ extra-cmake-modules cmake file jdk17 ninja wrapQtAppsHook ];
|
||||
buildInputs = [
|
||||
qtbase
|
||||
qtsvg
|
||||
|
@ -9,11 +9,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "btrfs-progs";
|
||||
version = "6.2.1";
|
||||
version = "6.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
|
||||
sha256 = "sha256-r1XjEEz15SJSu5QKKR7TSFKRYiSlAgZgDJQTRmQnMpk=";
|
||||
sha256 = "sha256-5IiNuGN9kuZnRIOGmS0IVrlUzyUVuY05tmfaQ8SC1pM=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -63,7 +63,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with lib; {
|
||||
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;
|
||||
maintainers = with maintainers; [ raskin ];
|
||||
platforms = platforms.linux;
|
||||
|
@ -10318,6 +10318,17 @@ with pkgs;
|
||||
|
||||
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 { };
|
||||
|
||||
milu = callPackage ../applications/misc/milu { };
|
||||
@ -30381,7 +30392,7 @@ with pkgs;
|
||||
|
||||
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 { };
|
||||
|
||||
@ -37829,6 +37840,11 @@ with pkgs;
|
||||
swig = swig4;
|
||||
};
|
||||
|
||||
faissWithCuda = faiss.override {
|
||||
cudaSupport = true;
|
||||
nvidia-thrust = nvidia-thrust-cuda;
|
||||
};
|
||||
|
||||
fityk = callPackage ../applications/science/misc/fityk { };
|
||||
|
||||
galario = callPackage ../development/libraries/galario { };
|
||||
|
Loading…
Reference in New Issue
Block a user