LET'S GO GAMBLING!!!!!!
This commit is contained in:
parent
20828a09fc
commit
6e63bb0a90
5 changed files with 521 additions and 97 deletions
|
|
@ -178,7 +178,7 @@
|
|||
gamescope
|
||||
telegram-desktop
|
||||
ladybird
|
||||
# krita # BOOST BROKE, FUCK
|
||||
krita
|
||||
meld
|
||||
pavucontrol
|
||||
pwvucontrol
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
structuredExtraConfig ? { },
|
||||
kernelPatches ? [ ],
|
||||
extraConfig ? "",
|
||||
sccacheDir ? "/var/cache/sccache",
|
||||
sccacheDir ? "/var/cache/sccache/nix-builds/kernel",
|
||||
sccacheServerUds ? null,
|
||||
enforceSccache ? true,
|
||||
}:
|
||||
|
|
@ -57,12 +57,17 @@ pkgs.callPackage (
|
|||
realHostLd = lib.getExe' buildLlvm.lld "ld.lld";
|
||||
realRustc = lib.getExe' rust "rustc";
|
||||
realHostRustc = realRustc;
|
||||
sccacheConfig = pkgs.writeText "kernel-sccache.conf" ''
|
||||
[cache.disk]
|
||||
dir = "${sccacheDir}"
|
||||
size = "100G"
|
||||
'';
|
||||
|
||||
mkSccacheWrapper =
|
||||
name: compiler:
|
||||
pkgs.writeShellScriptBin name ''
|
||||
set -euo pipefail
|
||||
export SCCACHE_DIR=${lib.escapeShellArg sccacheDir}
|
||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
||||
: > "''${SCCACHE_ENFORCE_MARKER}"
|
||||
|
|
@ -75,7 +80,7 @@ pkgs.callPackage (
|
|||
hostcxxSccache = mkSccacheWrapper "c++" realHostCXX;
|
||||
rustcSccache = pkgs.writeShellScriptBin "rustc" ''
|
||||
set -euo pipefail
|
||||
export SCCACHE_DIR=${lib.escapeShellArg sccacheDir}
|
||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
||||
: > "''${SCCACHE_ENFORCE_MARKER}"
|
||||
|
|
@ -85,7 +90,7 @@ pkgs.callPackage (
|
|||
|
||||
hostrustcSccache = pkgs.writeShellScriptBin "rustc" ''
|
||||
set -euo pipefail
|
||||
export SCCACHE_DIR=${lib.escapeShellArg sccacheDir}
|
||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
||||
: > "''${SCCACHE_ENFORCE_MARKER}"
|
||||
|
|
@ -138,7 +143,9 @@ pkgs.callPackage (
|
|||
preBuild =
|
||||
(args.preBuild or "")
|
||||
+ lib.optionalString enforceSccache ''
|
||||
export SCCACHE_DIR=${lib.escapeShellArg sccacheDir}
|
||||
mkdir -p ${lib.escapeShellArg sccacheDir}
|
||||
chmod 0777 ${lib.escapeShellArg sccacheDir} || true
|
||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||
'';
|
||||
|
||||
|
|
@ -146,7 +153,9 @@ pkgs.callPackage (
|
|||
if enforceSccache then
|
||||
''
|
||||
runHook preBuild
|
||||
export SCCACHE_DIR=${lib.escapeShellArg sccacheDir}
|
||||
mkdir -p ${lib.escapeShellArg sccacheDir}
|
||||
chmod 0777 ${lib.escapeShellArg sccacheDir} || true
|
||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||
export SCCACHE_ENFORCE_MARKER="$NIX_BUILD_TOP/.sccache-used"
|
||||
rm -f "$SCCACHE_ENFORCE_MARKER"
|
||||
|
|
|
|||
|
|
@ -1,8 +1,245 @@
|
|||
final: prev:
|
||||
let
|
||||
winePkg = final.wineWow64Packages.full;
|
||||
sandboxSccacheDir = "/var/cache/sccache/nix-builds/packages";
|
||||
sharedSccacheConfig = final.writeText "sccache.conf" ''
|
||||
[cache.disk]
|
||||
dir = "${sandboxSccacheDir}"
|
||||
size = "100G"
|
||||
'';
|
||||
versionBumpAttrs =
|
||||
oldVersion: version: attrs:
|
||||
if final.lib.versionOlder oldVersion version then attrs else { };
|
||||
modify =
|
||||
target: f:
|
||||
if target ? overridePythonAttrs then
|
||||
target.overridePythonAttrs f
|
||||
else if target ? overrideAttrs then
|
||||
target.overrideAttrs f
|
||||
else if target ? overrideScope then
|
||||
target.overrideScope f
|
||||
else
|
||||
throw "modify: target does not support overridePythonAttrs, overrideAttrs, or overrideScope";
|
||||
mkSccacheLauncher =
|
||||
{
|
||||
name,
|
||||
sccacheDir ? null,
|
||||
sccacheServerUds ? null,
|
||||
sccacheCacheSize ? "100G",
|
||||
noDaemon ? false,
|
||||
passthroughWrappedCompiler ? false,
|
||||
}:
|
||||
let
|
||||
sccacheConfig = final.writeText "${name}-config" ''
|
||||
[cache.disk]
|
||||
dir = "${if sccacheDir != null then sccacheDir else sandboxSccacheDir}"
|
||||
size = "${sccacheCacheSize}"
|
||||
'';
|
||||
effectiveSccacheConfig =
|
||||
if sccacheDir == null && sccacheCacheSize == "100G" then sharedSccacheConfig else sccacheConfig;
|
||||
in
|
||||
final.writeShellScriptBin name ''
|
||||
is_cmake_derivation() {
|
||||
case " ''${nativeBuildInputs:-} ''${propagatedNativeBuildInputs:-} " in
|
||||
*"/cmake-"*) return 0 ;;
|
||||
esac
|
||||
|
||||
[ -n "''${cmakeFlags:-}" ] || [ -n "''${cmakeDir:-}" ] || [ -n "''${cmakeBuildType:-}" ]
|
||||
}
|
||||
|
||||
is_cmake_probe_invocation() {
|
||||
local arg
|
||||
for arg in "$@"; do
|
||||
case "$arg" in
|
||||
*CMakeFiles/*CompilerId*|*CMakeFiles/CMakeTmp/*|*CMakeScratch/*)
|
||||
return 0
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
export SCCACHE_CONF=${final.lib.escapeShellArg effectiveSccacheConfig}
|
||||
unset SCCACHE_START_SERVER
|
||||
${final.lib.optionalString noDaemon ''
|
||||
export SCCACHE_NO_DAEMON=1
|
||||
unset SCCACHE_SERVER_UDS
|
||||
''}
|
||||
${final.lib.optionalString (!noDaemon && sccacheServerUds != null) ''
|
||||
export SCCACHE_SERVER_UDS=${final.lib.escapeShellArg sccacheServerUds}
|
||||
''}
|
||||
if [ "$#" -eq 0 ] || [ "''${1#-}" != "$1" ]; then
|
||||
exec ${final.sccache}/bin/sccache "$@"
|
||||
fi
|
||||
|
||||
compiler="$1"
|
||||
shift
|
||||
|
||||
if [ "''${SCCACHE_WRAPPED_COMPILER_PASSTHROUGH:-}" = 1 ] || {
|
||||
is_cmake_derivation && is_cmake_probe_invocation "$@"
|
||||
}; then
|
||||
exec "$compiler" "$@"
|
||||
fi
|
||||
|
||||
${final.lib.optionalString passthroughWrappedCompiler ''
|
||||
export SCCACHE_WRAPPED_COMPILER_PASSTHROUGH=1
|
||||
''}
|
||||
exec ${final.sccache}/bin/sccache "$compiler" "$@"
|
||||
'';
|
||||
buildSccacheLauncher = mkSccacheLauncher {
|
||||
name = "build-sccache";
|
||||
};
|
||||
mkBuildSccacheAttrs =
|
||||
old:
|
||||
{
|
||||
nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ buildSccacheLauncher ];
|
||||
|
||||
preConfigure = (old.preConfigure or "") + ''
|
||||
|
||||
mkdir -p ${final.lib.escapeShellArg sandboxSccacheDir}
|
||||
chmod 0777 ${final.lib.escapeShellArg sandboxSccacheDir} || true
|
||||
export SCCACHE_SERVER_UDS="$TMPDIR/sccache/server.sock"
|
||||
export SCCACHE_IDLE_TIMEOUT=0
|
||||
unset SCCACHE_NO_DAEMON
|
||||
mkdir -p "$(dirname "$SCCACHE_SERVER_UDS")"
|
||||
if ! ${buildSccacheLauncher}/bin/build-sccache --show-stats >/dev/null 2>&1; then
|
||||
rm -f "$SCCACHE_SERVER_UDS"
|
||||
if ! ${buildSccacheLauncher}/bin/build-sccache --start-server >/tmp/sccache-start.log 2>&1; then
|
||||
if ! grep -Fq "Address already in use" /tmp/sccache-start.log; then
|
||||
cat /tmp/sccache-start.log >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
'';
|
||||
|
||||
postBuild = (old.postBuild or "") + ''
|
||||
|
||||
${buildSccacheLauncher}/bin/build-sccache --show-stats --stats-format text || true
|
||||
${buildSccacheLauncher}/bin/build-sccache --stop-server || true
|
||||
'';
|
||||
};
|
||||
mkCmakeSccacheAttrs =
|
||||
old:
|
||||
let
|
||||
sccacheLauncher = mkSccacheLauncher {
|
||||
name = "cmake-sccache";
|
||||
passthroughWrappedCompiler = true;
|
||||
};
|
||||
in
|
||||
{
|
||||
cmakeFlags = (old.cmakeFlags or [ ]) ++ [
|
||||
"-DCMAKE_C_COMPILER_LAUNCHER=${sccacheLauncher}/bin/cmake-sccache"
|
||||
"-DCMAKE_CXX_COMPILER_LAUNCHER=${sccacheLauncher}/bin/cmake-sccache"
|
||||
];
|
||||
|
||||
nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ sccacheLauncher ];
|
||||
|
||||
preConfigure = (old.preConfigure or "") + ''
|
||||
|
||||
mkdir -p ${final.lib.escapeShellArg sandboxSccacheDir}
|
||||
chmod 0777 ${final.lib.escapeShellArg sandboxSccacheDir} || true
|
||||
export SCCACHE_SERVER_UDS="$TMPDIR/sccache/server.sock"
|
||||
export SCCACHE_IDLE_TIMEOUT=0
|
||||
unset SCCACHE_NO_DAEMON
|
||||
mkdir -p "$(dirname "$SCCACHE_SERVER_UDS")"
|
||||
if ! ${sccacheLauncher}/bin/cmake-sccache --show-stats >/dev/null 2>&1; then
|
||||
rm -f "$SCCACHE_SERVER_UDS"
|
||||
if ! ${sccacheLauncher}/bin/cmake-sccache --start-server >/tmp/sccache-start.log 2>&1; then
|
||||
if ! grep -Fq "Address already in use" /tmp/sccache-start.log; then
|
||||
cat /tmp/sccache-start.log >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
'';
|
||||
|
||||
postBuild = (old.postBuild or "") + ''
|
||||
|
||||
${sccacheLauncher}/bin/cmake-sccache --show-stats --stats-format text || true
|
||||
${sccacheLauncher}/bin/cmake-sccache --stop-server || true
|
||||
'';
|
||||
};
|
||||
mkSccacheStdenv =
|
||||
{
|
||||
stdenv,
|
||||
sccacheDir ? "/var/cache/sccache/nix-builds/packages",
|
||||
sccacheServerUds ? null,
|
||||
noDaemon ? true,
|
||||
}:
|
||||
let
|
||||
cc = stdenv.cc;
|
||||
ccName = "${cc.targetPrefix or ""}cc";
|
||||
cxxName = "${cc.targetPrefix or ""}c++";
|
||||
sccacheLauncher = mkSccacheLauncher {
|
||||
name = "stdenv-sccache";
|
||||
inherit sccacheDir sccacheServerUds noDaemon;
|
||||
};
|
||||
sccacheCc = cc.overrideAttrs (old: {
|
||||
setupHooks = (old.setupHooks or [ ]) ++ [
|
||||
(final.writeText "sccache-wrapped-compiler-hook.sh" ''
|
||||
set_sccache_passthrough_for_cmake_configure() {
|
||||
case " ''${nativeBuildInputs:-} ''${propagatedNativeBuildInputs:-} " in
|
||||
*"/cmake-"*)
|
||||
export SCCACHE_WRAPPED_COMPILER_PASSTHROUGH=1
|
||||
;;
|
||||
*)
|
||||
if [ -n "''${cmakeFlags:-}" ] || [ -n "''${cmakeDir:-}" ] || [ -n "''${cmakeBuildType:-}" ]; then
|
||||
export SCCACHE_WRAPPED_COMPILER_PASSTHROUGH=1
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
clear_sccache_passthrough_after_configure() {
|
||||
unset SCCACHE_WRAPPED_COMPILER_PASSTHROUGH
|
||||
}
|
||||
|
||||
preConfigureHooks+=(set_sccache_passthrough_for_cmake_configure)
|
||||
postConfigureHooks+=(clear_sccache_passthrough_after_configure)
|
||||
'')
|
||||
];
|
||||
nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [
|
||||
final.makeWrapper
|
||||
sccacheLauncher
|
||||
];
|
||||
postFixup = (old.postFixup or "") + ''
|
||||
|
||||
wrap_with_sccache() {
|
||||
local tool_path="$1"
|
||||
if [ ! -x "$tool_path" ]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
mv "$tool_path" "$tool_path.orig"
|
||||
makeWrapper ${sccacheLauncher}/bin/stdenv-sccache "$tool_path" \
|
||||
--add-flags "$tool_path.orig"
|
||||
}
|
||||
|
||||
wrap_with_sccache "$out/bin/${ccName}"
|
||||
wrap_with_sccache "$out/bin/${cxxName}"
|
||||
wrap_with_sccache "$out/bin/gcc"
|
||||
wrap_with_sccache "$out/bin/g++"
|
||||
wrap_with_sccache "$out/bin/clang"
|
||||
wrap_with_sccache "$out/bin/clang++"
|
||||
wrap_with_sccache "$out/bin/arocc"
|
||||
'';
|
||||
});
|
||||
in
|
||||
final.overrideCC stdenv sccacheCc;
|
||||
in
|
||||
{
|
||||
sccache-config = sharedSccacheConfig;
|
||||
intel-sycl = modify prev."intel-sycl" (
|
||||
syFinal: syPrev: {
|
||||
llvm = modify syPrev.llvm mkCmakeSccacheAttrs;
|
||||
lld = modify syPrev.lld mkCmakeSccacheAttrs;
|
||||
stdenv = mkSccacheStdenv {
|
||||
stdenv = syPrev.stdenv;
|
||||
};
|
||||
}
|
||||
);
|
||||
# xdg-desktop-portal-cosmic = prev.xdg-desktop-portal-cosmic.overrideAttrs (old: {
|
||||
# postPatch = (old.postPatch or "") + ''
|
||||
# unitDir="$out/lib/systemd/user"
|
||||
|
|
@ -11,29 +248,34 @@ in
|
|||
# '';
|
||||
# });
|
||||
# );
|
||||
codex = prev.codex.overrideAttrs (
|
||||
codex = modify prev.codex (
|
||||
old:
|
||||
let
|
||||
version = "0.114.0";
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "openai";
|
||||
repo = "codex";
|
||||
tag = "rust-v${version}";
|
||||
hash = "sha256-7t+mVwP4+YrG1ciI+OLqsK7TUM9SrDbPsJNrt26iy9c=";
|
||||
#hash = "";
|
||||
};
|
||||
in
|
||||
{
|
||||
inherit version src;
|
||||
sourceRoot = "${src.name}/codex-rs";
|
||||
|
||||
cargoDeps = prev.rustPlatform.fetchCargoVendor {
|
||||
inherit src;
|
||||
(versionBumpAttrs old.version version (
|
||||
let
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "openai";
|
||||
repo = "codex";
|
||||
tag = "rust-v${version}";
|
||||
hash = "sha256-7t+mVwP4+YrG1ciI+OLqsK7TUM9SrDbPsJNrt26iy9c=";
|
||||
#hash = "";
|
||||
};
|
||||
in
|
||||
{
|
||||
inherit version src;
|
||||
sourceRoot = "${src.name}/codex-rs";
|
||||
hash = "sha256-XThIexu3V18JG4OtyvYmybaRMctYpDuBLLH+lUvrtt8=";
|
||||
#hash = prev.lib.fakeHash;
|
||||
};
|
||||
|
||||
cargoDeps = prev.rustPlatform.fetchCargoVendor {
|
||||
inherit src;
|
||||
sourceRoot = "${src.name}/codex-rs";
|
||||
hash = "sha256-XThIexu3V18JG4OtyvYmybaRMctYpDuBLLH+lUvrtt8=";
|
||||
#hash = prev.lib.fakeHash;
|
||||
};
|
||||
}
|
||||
))
|
||||
// {
|
||||
buildInputs = (old.buildInputs or [ ]) ++ [ prev.libcap ];
|
||||
|
||||
preBuild = (old.preBuild or "") + ''
|
||||
|
|
@ -42,28 +284,191 @@ in
|
|||
'';
|
||||
}
|
||||
);
|
||||
llama-cpp = prev.llama-cpp.overrideAttrs (old: rec {
|
||||
version = "8124";
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "ggml-org";
|
||||
repo = "llama.cpp";
|
||||
tag = "b${version}";
|
||||
hash = old.src.hash;
|
||||
};
|
||||
# nativeBuildInputs = old.nativeBuildInputs ++ [ prev.pkgs.curl ];
|
||||
});
|
||||
pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [
|
||||
(pyFinal: pyPrev: {
|
||||
haystack-ai = pyPrev.haystack-ai.overridePythonAttrs (old: rec {
|
||||
version = "2.24.1";
|
||||
electron_39 =
|
||||
let
|
||||
angleLib = final.lib.getLib final.angle;
|
||||
electronUnwrapped = modify prev.electron_39.passthru.unwrapped (
|
||||
old:
|
||||
let
|
||||
buildSccacheAttrs = mkBuildSccacheAttrs old;
|
||||
electronGnFlags =
|
||||
"${old.gnFlags or ""} cc_wrapper=\"${buildSccacheLauncher}/bin/build-sccache\"";
|
||||
in
|
||||
buildSccacheAttrs
|
||||
// {
|
||||
gnFlags = electronGnFlags;
|
||||
configurePhase = builtins.replaceStrings
|
||||
[ old.gnFlags or "" ]
|
||||
[ electronGnFlags ]
|
||||
(old.configurePhase or "");
|
||||
patches = builtins.filter (
|
||||
patch: builtins.baseNameOf (toString patch) != "39-angle-patchdir.patch"
|
||||
) (old.patches or [ ]);
|
||||
postPatch = ''
|
||||
substituteInPlace electron/patches/config.json \
|
||||
--replace-fail '"repo": "src/third_party/angle/src"' '"repo": "src/third_party/angle"'
|
||||
'' + (old.postPatch or "");
|
||||
postFixup = (old.postFixup or "") + ''
|
||||
|
||||
src = final.fetchFromGitHub {
|
||||
owner = "deepset-ai";
|
||||
repo = "haystack";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-tlQ3Bp+HcIsmoUoOMkm2APUSgNcdsujMUnSx+un/r8c=";
|
||||
for angleLibName in \
|
||||
libEGL.so \
|
||||
libEGL_vulkan_secondaries.so \
|
||||
libGLESv1_CM.so \
|
||||
libGLESv2.so \
|
||||
libGLESv2_vulkan_secondaries.so \
|
||||
libGLESv2_with_capture.so \
|
||||
libVkICD_mock_icd.so \
|
||||
libfeature_support.so
|
||||
do
|
||||
if [ -e "$libExecPath/$angleLibName" ] || [ -L "$libExecPath/$angleLibName" ]; then
|
||||
rm -f "$libExecPath/$angleLibName"
|
||||
fi
|
||||
ln -s ${angleLib}/lib/"$angleLibName" "$libExecPath/$angleLibName"
|
||||
done
|
||||
'';
|
||||
}
|
||||
);
|
||||
in
|
||||
prev.electron_39.override {
|
||||
electron-unwrapped = electronUnwrapped;
|
||||
};
|
||||
oneapi-ccl = modify (prev.oneapi-ccl.override {
|
||||
intel-sycl = final."intel-sycl";
|
||||
}) (
|
||||
old:
|
||||
let
|
||||
version = "2021.17.2";
|
||||
intelSycl = final."intel-sycl".llvm;
|
||||
intelSyclDev = final.lib.getDev intelSycl;
|
||||
intelSyclLib = final.lib.getLib intelSycl;
|
||||
levelZero = final.lib.getDev final.level-zero;
|
||||
openclHeaders = final.opencl-headers;
|
||||
cmakeSccacheAttrs = mkCmakeSccacheAttrs old;
|
||||
in
|
||||
(versionBumpAttrs old.version version {
|
||||
inherit version;
|
||||
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "uxlfoundation";
|
||||
repo = "oneCCL";
|
||||
rev = version;
|
||||
hash = "sha256-dV1PadrcJSdwwpNxXAK1fo/B5p26Lvd36wqC+xM5KJM=";
|
||||
};
|
||||
})
|
||||
// cmakeSccacheAttrs
|
||||
// {
|
||||
setOutputFlags = false;
|
||||
|
||||
postPatch = (old.postPatch or "") + ''
|
||||
mkdir -p deps/level_zero
|
||||
rm -rf deps/level_zero/include
|
||||
ln -s ${levelZero}/include/level_zero deps/level_zero/include
|
||||
|
||||
sed -i '/^#if defined(SYCL_LANGUAGE_VERSION) && defined (__INTEL_LLVM_COMPILER)$/,/^#endif$/c\
|
||||
#cmakedefine CCL_ENABLE_SYCL\
|
||||
#cmakedefine CCL_ENABLE_ZE' include/oneapi/ccl/config.h.in
|
||||
|
||||
sed -i 's/^#define ICPX_VERSION 0$/#define ICPX_VERSION 140000/' src/common/utils/sycl_utils.hpp
|
||||
|
||||
sed -i '/^inline sycl::event get_last_event(const sycl::queue &q) {$/, /^inline sycl::event submit_wait_on_events(sycl::queue q, const std::vector<sycl::event> &deps) {$/c\
|
||||
inline sycl::event get_last_event(const sycl::queue &q) {\
|
||||
auto last_event_opt = q.ext_oneapi_get_last_event();\
|
||||
if (last_event_opt.has_value()) {\
|
||||
return last_event_opt.value();\
|
||||
}\
|
||||
return sycl::event{};\
|
||||
}\
|
||||
\
|
||||
inline sycl::event submit_wait_on_events(sycl::queue q, const std::vector<sycl::event> \&deps) {' src/coll/algorithms/utils/sycl_coll_base.hpp
|
||||
|
||||
find src -type f \( -name '*.hpp' -o -name '*.cpp' \) \
|
||||
-exec sed -i 's/reqd_sub_group_size(sg_size)/reqd_sub_group_size(32)/g' {} +
|
||||
|
||||
awk '
|
||||
pending {
|
||||
if ($0 ~ /^[[:space:]]*send_buf, new_send_count,/) {
|
||||
sub(/send_buf, new_send_count,/, "q, send_buf, new_send_count,")
|
||||
}
|
||||
pending = 0
|
||||
}
|
||||
/^[[:space:]]*e = allgatherv_large\($/ {
|
||||
pending = 1
|
||||
}
|
||||
{ print }
|
||||
' src/coll/algorithms/allgatherv/sycl/allgatherv_sycl.cpp \
|
||||
> src/coll/algorithms/allgatherv/sycl/allgatherv_sycl.cpp.tmp
|
||||
mv src/coll/algorithms/allgatherv/sycl/allgatherv_sycl.cpp.tmp \
|
||||
src/coll/algorithms/allgatherv/sycl/allgatherv_sycl.cpp
|
||||
'';
|
||||
|
||||
cmakeFlags = (cmakeSccacheAttrs.cmakeFlags or [ ]) ++ [
|
||||
"-DCMAKE_INSTALL_INCLUDEDIR=include"
|
||||
"-DINTEL_SYCL_INCLUDE_DIRS=${intelSyclDev}/include"
|
||||
"-DINTEL_SYCL_LIBRARIES=${intelSyclLib}/lib/libsycl.so"
|
||||
];
|
||||
|
||||
buildInputs = (old.buildInputs or [ ]) ++ [ openclHeaders ];
|
||||
|
||||
meta = (old.meta or { }) // {
|
||||
broken = false;
|
||||
};
|
||||
}
|
||||
);
|
||||
oneapi-dpl =
|
||||
let
|
||||
version = "2022.11.1";
|
||||
in
|
||||
modify prev.oneapi-dpl (old:
|
||||
(versionBumpAttrs old.version version {
|
||||
inherit version;
|
||||
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "uxlfoundation";
|
||||
repo = "oneDPL";
|
||||
rev = "oneDPL-${version}-release";
|
||||
hash = "sha256-NfyV34mdKfCxlU+l6ETKWcC9MwvVEgwcBedtLe6WCV4=";
|
||||
};
|
||||
|
||||
meta = (old.meta or { }) // {
|
||||
changelog = "https://github.com/uxlfoundation/oneDPL/releases/tag/oneDPL-${version}-release";
|
||||
};
|
||||
})
|
||||
// (mkCmakeSccacheAttrs old)
|
||||
);
|
||||
llama-cpp = modify prev.llama-cpp (
|
||||
old:
|
||||
let
|
||||
version = "8124";
|
||||
in
|
||||
(versionBumpAttrs old.version version {
|
||||
inherit version;
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "ggml-org";
|
||||
repo = "llama.cpp";
|
||||
tag = "b${version}";
|
||||
hash = old.src.hash;
|
||||
};
|
||||
})
|
||||
// (mkCmakeSccacheAttrs old)
|
||||
);
|
||||
pythonPackagesExtensions = prev.pythonPackagesExtensions ++ [
|
||||
(pyFinal: pyPrev: {
|
||||
haystack-ai = modify pyPrev.haystack-ai (
|
||||
old:
|
||||
let
|
||||
version = "2.24.1";
|
||||
in
|
||||
(versionBumpAttrs old.version version {
|
||||
inherit version;
|
||||
|
||||
src = final.fetchFromGitHub {
|
||||
owner = "deepset-ai";
|
||||
repo = "haystack";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-tlQ3Bp+HcIsmoUoOMkm2APUSgNcdsujMUnSx+un/r8c=";
|
||||
};
|
||||
})
|
||||
// {
|
||||
propagatedBuildInputs =
|
||||
(old.propagatedBuildInputs or [ ])
|
||||
++ (with pyPrev; [
|
||||
|
|
@ -79,8 +484,9 @@ in
|
|||
meta = (old.meta or { }) // {
|
||||
broken = false;
|
||||
};
|
||||
});
|
||||
sseclient-py = pyPrev.sseclient-py.overridePythonAttrs (old: rec {
|
||||
}
|
||||
);
|
||||
sseclient-py = modify pyPrev.sseclient-py (old: rec {
|
||||
format = "pyproject";
|
||||
nativeBuildInputs =
|
||||
(old.nativeBuildInputs or [ ])
|
||||
|
|
@ -91,24 +497,31 @@ in
|
|||
]);
|
||||
doCheck = false;
|
||||
});
|
||||
vllm = pyPrev.vllm.overridePythonAttrs (old: rec {
|
||||
version = "0.17.1";
|
||||
vllm = modify pyPrev.vllm (
|
||||
old:
|
||||
let
|
||||
version = "0.17.1";
|
||||
in
|
||||
versionBumpAttrs old.version version {
|
||||
inherit version;
|
||||
|
||||
src = final.fetchFromGitHub {
|
||||
owner = "vllm-project";
|
||||
repo = "vllm";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-EZozwA+GIjN8/CBNhtdeM3HsPhVdx1/J0B9gvvn2qKU=";
|
||||
};
|
||||
});
|
||||
src = final.fetchFromGitHub {
|
||||
owner = "vllm-project";
|
||||
repo = "vllm";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-EZozwA+GIjN8/CBNhtdeM3HsPhVdx1/J0B9gvvn2qKU=";
|
||||
};
|
||||
}
|
||||
);
|
||||
})
|
||||
];
|
||||
lutris-unwrapped = prev.lutris-unwrapped.overrideAttrs (
|
||||
lutris-unwrapped = modify prev.lutris-unwrapped (
|
||||
old:
|
||||
let
|
||||
version = "0.5.22";
|
||||
in
|
||||
{
|
||||
versionBumpAttrs old.version version {
|
||||
inherit version;
|
||||
src = prev.fetchFromGitHub {
|
||||
owner = "lutris";
|
||||
repo = "lutris";
|
||||
|
|
@ -117,12 +530,10 @@ in
|
|||
};
|
||||
}
|
||||
);
|
||||
winetricks = final.symlinkJoin {
|
||||
name = "winetricks-${prev.winetricks.version}";
|
||||
paths = [ prev.winetricks ];
|
||||
nativeBuildInputs = [ final.makeWrapper ];
|
||||
winetricks = modify prev.winetricks (old: {
|
||||
nativeBuildInputs = (old.nativeBuildInputs or [ ]) ++ [ final.makeWrapper ];
|
||||
|
||||
postBuild = ''
|
||||
postFixup = (old.postFixup or "") + ''
|
||||
wrapProgram "$out/bin/winetricks" \
|
||||
--prefix PATH : "${final.lib.makeBinPath [ winePkg ]}" \
|
||||
--set-default WINE "${winePkg}/bin/wine" \
|
||||
|
|
@ -130,9 +541,7 @@ in
|
|||
--run ': "''${WINE_BIN:=$wine_dir/.wine}"' \
|
||||
--run 'export WINE WINESERVER WINE_BIN WINESERVER_BIN'
|
||||
'';
|
||||
|
||||
meta = prev.winetricks.meta;
|
||||
};
|
||||
});
|
||||
# winetricks = prev.winetricks.overrideAttrs (
|
||||
# old:
|
||||
# let
|
||||
|
|
|
|||
62
flake.lock
generated
62
flake.lock
generated
|
|
@ -46,11 +46,11 @@
|
|||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773421907,
|
||||
"narHash": "sha256-TN8Qf8RhmOX7TAwhdjGaE/clgAxzfHwsOjGSxz0Bz/0=",
|
||||
"lastModified": 1773504138,
|
||||
"narHash": "sha256-CQZelDz8KtJBcY88cP9KKpqD5WNYkkwOR2U7RhW53T8=",
|
||||
"owner": "sadjow",
|
||||
"repo": "claude-code-nix",
|
||||
"rev": "4746a848ccb3e1ba1a1c99fd063bf998045b81ac",
|
||||
"rev": "57fec627abf180c338ebdf1b0c5230b59e536ce0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -176,11 +176,11 @@
|
|||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773118123,
|
||||
"narHash": "sha256-uwU+JTxjzveJgepaA84gyi28cx/akT7RE/qH8s7qMjk=",
|
||||
"lastModified": 1773492089,
|
||||
"narHash": "sha256-ZKzjqbc4vAivOptaxEsfWt9yoD7rmlYVyTgr168+sdc=",
|
||||
"owner": "imaviso",
|
||||
"repo": "dwproton-flake",
|
||||
"rev": "2279531470e2d98febfe0ad7433bcbd7dc83c9aa",
|
||||
"rev": "ec94234a5c7d185855975c5854115c7cacef7323",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -451,11 +451,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773422513,
|
||||
"narHash": "sha256-MPjR48roW7CUMU6lu0+qQGqj92Kuh3paIulMWFZy+NQ=",
|
||||
"lastModified": 1773681856,
|
||||
"narHash": "sha256-+bRqxoFCJFO9ZTFhcCkzNXbDT3b8AEk88fyjB7Is6eo=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "ef12a9a2b0f77c8fa3dda1e7e494fca668909056",
|
||||
"rev": "57d5560ee92a424fb71fde800acd6ed2c725dfce",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -540,16 +540,16 @@
|
|||
"kernel-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1773006395,
|
||||
"narHash": "sha256-f3IzNvzYFskEwgQZi2v0g5tcKabCUZfpDHn2x5dpNIU=",
|
||||
"lastModified": 1773493865,
|
||||
"narHash": "sha256-3f17iyo1Dh96KKPYLAGFAUQxVZrxe06ne2uy/Y3FPuE=",
|
||||
"ref": "refs/heads/drm-tip",
|
||||
"rev": "6884fe03ff2bc5a2f501ba4710f950dd4933ac84",
|
||||
"rev": "bbe6ae2e40f59b05f04a75989b3b3bbb005342a2",
|
||||
"shallow": true,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.freedesktop.org/drm/tip.git"
|
||||
},
|
||||
"original": {
|
||||
"rev": "6884fe03ff2bc5a2f501ba4710f950dd4933ac84",
|
||||
"rev": "bbe6ae2e40f59b05f04a75989b3b3bbb005342a2",
|
||||
"shallow": true,
|
||||
"type": "git",
|
||||
"url": "https://gitlab.freedesktop.org/drm/tip.git"
|
||||
|
|
@ -611,11 +611,11 @@
|
|||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773390002,
|
||||
"narHash": "sha256-0RVjh9h0sgPHngxEs/Wd2/xdGsgKgZWjxFu5JsX3ASw=",
|
||||
"lastModified": 1773675540,
|
||||
"narHash": "sha256-P4S7I15rxuJ+Iq7F4Z1OrMAcZaJEiIasYNioiJjc4/s=",
|
||||
"owner": "sodiboo",
|
||||
"repo": "niri-flake",
|
||||
"rev": "adc63b19724247f947385381481effd225a6e2fc",
|
||||
"rev": "9061fa226d41fceec5bcec72e0e7ee2282b5645e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -680,11 +680,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772945408,
|
||||
"narHash": "sha256-PMt48sEQ8cgCeljQ9I/32uoBq/8t8y+7W/nAZhf72TQ=",
|
||||
"lastModified": 1773552174,
|
||||
"narHash": "sha256-mHSRNrT1rjeYBgkAlj07dW3+1nFEgAd8Gu6lgyfT9DU=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-index-database",
|
||||
"rev": "1c1d8ea87b047788fd7567adf531418c5da321ec",
|
||||
"rev": "8faeb68130df077450451b6734a221ba0d6cde42",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -726,11 +726,11 @@
|
|||
},
|
||||
"nixpkgs-stable": {
|
||||
"locked": {
|
||||
"lastModified": 1773222311,
|
||||
"narHash": "sha256-BHoB/XpbqoZkVYZCfXJXfkR+GXFqwb/4zbWnOr2cRcU=",
|
||||
"lastModified": 1773610124,
|
||||
"narHash": "sha256-EpC7ELOKmb+xXaqpK5ZRpJ5g9fxxg6tWny7/rUBfrwk=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "0590cd39f728e129122770c029970378a79d076a",
|
||||
"rev": "9fe1300f4360e13f39d6d1d006e54fd5093e9ad5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -787,11 +787,11 @@
|
|||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1773282481,
|
||||
"narHash": "sha256-b/GV2ysM8mKHhinse2wz+uP37epUrSE+sAKXy/xvBY4=",
|
||||
"lastModified": 1773646010,
|
||||
"narHash": "sha256-iYrs97hS7p5u4lQzuNWzuALGIOdkPXvjz7bviiBjUu8=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "fe416aaedd397cacb33a610b33d60ff2b431b127",
|
||||
"rev": "5b2c2d84341b2afb5647081c1386a80d7a8d8605",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1015,11 +1015,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772751120,
|
||||
"narHash": "sha256-4cBOTPXv6Pkqa6qL1SH3UZTShciQWpyKJy3c3cQEU8I=",
|
||||
"lastModified": 1773673214,
|
||||
"narHash": "sha256-cjdDXKuMFO9mtBr1jCQsfKMsPBUdbG/8Hklhym29X5k=",
|
||||
"owner": "mozilla",
|
||||
"repo": "sccache",
|
||||
"rev": "2b65ac80ed3a3ff63c41711d65ae10106a163a09",
|
||||
"rev": "7b751fccd4e3dfc4e16564f967dae306649dee0b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
@ -1288,11 +1288,11 @@
|
|||
"xwayland-satellite-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772429643,
|
||||
"narHash": "sha256-M+bAeCCcjBnVk6w/4dIVvXvpJwOKnXjwi/lDbaN6Yws=",
|
||||
"lastModified": 1773622265,
|
||||
"narHash": "sha256-wToKwH7IgWdGLMSIWksEDs4eumR6UbbsuPQ42r0oTXQ=",
|
||||
"owner": "Supreeeme",
|
||||
"repo": "xwayland-satellite",
|
||||
"rev": "10f985b84cdbcc3bbf35b3e7e43d1b2a84fa9ce2",
|
||||
"rev": "a879e5e0896a326adc79c474bf457b8b99011027",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
|||
10
flake.nix
10
flake.nix
|
|
@ -51,7 +51,7 @@
|
|||
let
|
||||
system = "x86_64-linux";
|
||||
# pkgs = nixpkgs.${system}.packages;
|
||||
pkgs = nixpkgs {
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
overlays = [
|
||||
sccache.overlays.default
|
||||
|
|
@ -101,6 +101,12 @@
|
|||
intel-ocl
|
||||
vpl-gpu-rt
|
||||
intel-compute-runtime
|
||||
### intel-hw
|
||||
oneapi-ccl
|
||||
oneapi-dpl
|
||||
oneapi-math
|
||||
oneapi-tbb
|
||||
unified-memory-framework
|
||||
]
|
||||
);
|
||||
# ++ (with inputs.intel-hw.packages."${system}"; [
|
||||
|
|
@ -145,7 +151,7 @@
|
|||
RestartSec = 2;
|
||||
};
|
||||
environment = {
|
||||
SCCACHE_DIR = "/var/cache/sccache";
|
||||
SCCACHE_CONF = pkgs."sccache-config";
|
||||
SCCACHE_SERVER_UDS = "/run/sccache/server.sock";
|
||||
SCCACHE_IDLE_TIMEOUT = "0";
|
||||
SCCACHE_START_SERVER = "1";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue