push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,86 @@
{
boost,
cmake,
expat,
fetchFromGitHub,
fontconfig,
freeimage,
freetype,
glfw3,
glm,
lib,
libGLU,
libGL,
libgbm,
opencl-clhpp,
pkg-config,
stdenv,
SDL2,
}:
stdenv.mkDerivation rec {
pname = "forge";
version = "1.0.8";
src = fetchFromGitHub {
owner = "arrayfire";
repo = "forge";
rev = "v1.0.8";
sha256 = "sha256-lSZAwcqAHiuZkpYcVfwvZCfNmEF3xGN9S/HuZQrGeKU=";
};
glad = fetchFromGitHub {
owner = "arrayfire";
repo = "glad";
rev = "b94680aee5b8ce01ae1644c5f2661769366c765a";
hash = "sha256-CrZy76gOGMpy9f1NuMK4tokZ57U//zYeNH5ZYY0SC2U=";
};
# This patch ensures that Forge does not try to fetch glad from GitHub and
# uses our sources that we've checked out via Nix.
patches = [ ./no-download-glad.patch ];
postPatch = ''
mkdir -p ./extern
cp -R --no-preserve=mode,ownership ${glad} ./extern/fg_glad-src
ln -s ${opencl-clhpp} ./extern/cl2hpp
'';
cmakeFlags = [ "-DFETCHCONTENT_FULLY_DISCONNECTED=ON" ];
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
boost.out
boost.dev
expat
fontconfig
freeimage
freetype
glfw3
glm
libGL
libGLU
opencl-clhpp
SDL2
libgbm
];
meta = with lib; {
description = "OpenGL interop library that can be used with ArrayFire or any other application using CUDA or OpenCL compute backend";
longDescription = ''
An OpenGL interop library that can be used with ArrayFire or any other application using CUDA or OpenCL compute backend.
The goal of Forge is to provide high performance OpenGL visualizations for C/C++ applications that use CUDA/OpenCL.
Forge uses OpenGL >=3.3 forward compatible contexts, so please make sure you have capable hardware before trying it out.
'';
license = licenses.bsd3;
homepage = "https://arrayfire.com/";
platforms = platforms.linux;
maintainers = with maintainers; [
chessai
twesterhout
];
};
}