i'm gonna kill someone if this shit keeps going
This commit is contained in:
parent
8f97a15738
commit
9831a10505
7 changed files with 460 additions and 228 deletions
|
|
@ -123,6 +123,9 @@
|
||||||
CONTEXT_SWITCH_TRACER = lib.mkForce no;
|
CONTEXT_SWITCH_TRACER = lib.mkForce no;
|
||||||
SCHED_TRACER = lib.mkForce no;
|
SCHED_TRACER = lib.mkForce no;
|
||||||
STACK_TRACER = lib.mkForce no;
|
STACK_TRACER = lib.mkForce no;
|
||||||
|
#
|
||||||
|
CXL = no;
|
||||||
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -73,23 +73,26 @@ let
|
||||||
dir = "${sccacheDir}"
|
dir = "${sccacheDir}"
|
||||||
size = "100G"
|
size = "100G"
|
||||||
'';
|
'';
|
||||||
sccacheSetup = lib.optionalString enforceSccache ''
|
|
||||||
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
|
||||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
|
||||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
|
||||||
'';
|
|
||||||
|
|
||||||
mkSccacheWrapper =
|
mkSccacheWrapper =
|
||||||
name: compiler:
|
name: compiler:
|
||||||
pkgs.writeShellScriptBin name ''
|
pkgs.runCommand "${name}-sccache-wrapper"
|
||||||
set -euo pipefail
|
{
|
||||||
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
passthru.meta.mainProgram = name;
|
||||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
}
|
||||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
''
|
||||||
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
mkdir -p $out/bin
|
||||||
: > "''${SCCACHE_ENFORCE_MARKER}"
|
cat > $out/bin/${name} <<'WRAP'
|
||||||
fi
|
#!${pkgs.bash}/bin/bash
|
||||||
exec ${pkgs.sccache}/bin/sccache ${compiler} "$@"
|
exec ${pkgs.sccache}/bin/sccache ${compiler} "$@"
|
||||||
|
WRAP
|
||||||
|
chmod +x $out/bin/${name}
|
||||||
|
'';
|
||||||
|
sccacheSetup = lib.optionalString enforceSccache ''
|
||||||
|
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
||||||
|
mkdir -p "$NIX_BUILD_TOP/.sccache/preprocessor" 2>/dev/null || true
|
||||||
|
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||||
|
export SCCACHE_LOCAL_PREPROCESSOR_CACHE_DIR="$NIX_BUILD_TOP/.sccache/preprocessor"
|
||||||
|
export SCCACHE_NO_DAEMON=1
|
||||||
'';
|
'';
|
||||||
|
|
||||||
clangSccache = mkSccacheWrapper "clang" realClang;
|
clangSccache = mkSccacheWrapper "clang" realClang;
|
||||||
|
|
@ -98,8 +101,13 @@ let
|
||||||
rustcSccache = pkgs.writeShellScriptBin "rustc" ''
|
rustcSccache = pkgs.writeShellScriptBin "rustc" ''
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
||||||
|
mkdir -p "$NIX_BUILD_TOP/.sccache/preprocessor" 2>/dev/null || true
|
||||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
export SCCACHE_LOCAL_PREPROCESSOR_CACHE_DIR="$NIX_BUILD_TOP/.sccache/preprocessor"
|
||||||
|
export SCCACHE_NO_DAEMON=1
|
||||||
|
${lib.optionalString (
|
||||||
|
sccacheServerUds != null
|
||||||
|
) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||||
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
||||||
: > "''${SCCACHE_ENFORCE_MARKER}"
|
: > "''${SCCACHE_ENFORCE_MARKER}"
|
||||||
fi
|
fi
|
||||||
|
|
@ -109,12 +117,13 @@ let
|
||||||
hostrustcSccache = pkgs.writeShellScriptBin "rustc" ''
|
hostrustcSccache = pkgs.writeShellScriptBin "rustc" ''
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
mkdir -p ${lib.escapeShellArg sccacheDir} 2>/dev/null || true
|
||||||
|
mkdir -p "$NIX_BUILD_TOP/.sccache/preprocessor" 2>/dev/null || true
|
||||||
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
export SCCACHE_CONF=${lib.escapeShellArg sccacheConfig}
|
||||||
${lib.optionalString (sccacheServerUds != null) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
export SCCACHE_LOCAL_PREPROCESSOR_CACHE_DIR="$NIX_BUILD_TOP/.sccache/preprocessor"
|
||||||
if [ -n "''${SCCACHE_ENFORCE_MARKER-}" ]; then
|
export SCCACHE_NO_DAEMON=1
|
||||||
: > "''${SCCACHE_ENFORCE_MARKER}"
|
${lib.optionalString (
|
||||||
fi
|
sccacheServerUds != null
|
||||||
exec ${pkgs.sccache}/bin/sccache ${realHostRustc} "$@"
|
) "export SCCACHE_SERVER_UDS=${lib.escapeShellArg sccacheServerUds}"}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
structuredExtraConfig' =
|
structuredExtraConfig' =
|
||||||
|
|
@ -125,7 +134,7 @@ let
|
||||||
})
|
})
|
||||||
// structuredExtraConfig;
|
// structuredExtraConfig;
|
||||||
in
|
in
|
||||||
buildLinux (
|
(buildLinux (
|
||||||
args
|
args
|
||||||
// {
|
// {
|
||||||
kernelPatches = kernelPatches';
|
kernelPatches = kernelPatches';
|
||||||
|
|
@ -138,12 +147,10 @@ buildLinux (
|
||||||
stdenv = llvm.stdenv;
|
stdenv = llvm.stdenv;
|
||||||
buildPackages = llvmBuildPackages;
|
buildPackages = llvmBuildPackages;
|
||||||
|
|
||||||
extraMakeFlags =
|
extraMakeFlags = (args.extraMakeFlags or [ ]) ++ [
|
||||||
(args.extraMakeFlags or [ ])
|
|
||||||
++ [
|
|
||||||
"LLVM=1"
|
"LLVM=1"
|
||||||
"LLVM_IAS=1"
|
"LLVM_IAS=1"
|
||||||
"CC=${if enforceSccache then lib.getExe clangSccache else realClang}"
|
"CC=${lib.getExe clangSccache}"
|
||||||
"LD=${realLd}"
|
"LD=${realLd}"
|
||||||
"AR=${realAr}"
|
"AR=${realAr}"
|
||||||
"NM=${realNm}"
|
"NM=${realNm}"
|
||||||
|
|
@ -151,42 +158,13 @@ buildLinux (
|
||||||
"OBJCOPY=${realObjcopy}"
|
"OBJCOPY=${realObjcopy}"
|
||||||
"OBJDUMP=${realObjdump}"
|
"OBJDUMP=${realObjdump}"
|
||||||
"READELF=${realReadelf}"
|
"READELF=${realReadelf}"
|
||||||
"HOSTCC=${if enforceSccache then lib.getExe hostccSccache else realHostCC}"
|
"HOSTCC=${lib.getExe hostccSccache}"
|
||||||
"HOSTCXX=${if enforceSccache then lib.getExe hostcxxSccache else realHostCXX}"
|
"HOSTCXX=${lib.getExe hostcxxSccache}"
|
||||||
"HOSTAR=${realHostAr}"
|
"HOSTAR=${realHostAr}"
|
||||||
"HOSTLD=${realHostLd}"
|
"HOSTLD=${realHostLd}"
|
||||||
"RUSTC=${if enforceSccache then lib.getExe rustcSccache else realRustc}"
|
"RUSTC=${lib.getExe rustcSccache}"
|
||||||
"HOSTRUSTC=${if enforceSccache then lib.getExe hostrustcSccache else realHostRustc}"
|
"HOSTRUSTC=${lib.getExe hostrustcSccache}"
|
||||||
]
|
];
|
||||||
;
|
|
||||||
|
|
||||||
preConfigure = (args.preConfigure or "") + sccacheSetup;
|
|
||||||
|
|
||||||
preBuild = (args.preBuild or "") + sccacheSetup;
|
|
||||||
|
|
||||||
buildPhase =
|
|
||||||
if enforceSccache then
|
|
||||||
''
|
|
||||||
runHook preBuild
|
|
||||||
export SCCACHE_ENFORCE_MARKER="$NIX_BUILD_TOP/.sccache-used"
|
|
||||||
rm -f "$SCCACHE_ENFORCE_MARKER"
|
|
||||||
make "''${makeFlags[@]}" "''${buildFlags[@]}"
|
|
||||||
if [ ! -e "$SCCACHE_ENFORCE_MARKER" ]; then
|
|
||||||
echo "FATAL: sccache enforcement failed during buildPhase: compiler wrappers were not invoked."
|
|
||||||
echo "This means the build stage did not use your CC/HOSTCC/HOSTCXX/RUSTC/HOSTRUSTC overrides."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
${pkgs.sccache}/bin/sccache --show-stats --stats-format text || true
|
|
||||||
runHook postBuild
|
|
||||||
''
|
|
||||||
else
|
|
||||||
(args.buildPhase or ''
|
|
||||||
runHook preBuild
|
|
||||||
make "''${makeFlags[@]}" "''${buildFlags[@]}"
|
|
||||||
runHook postBuild
|
|
||||||
'');
|
|
||||||
|
|
||||||
postBuild = args.postBuild or "";
|
|
||||||
|
|
||||||
structuredExtraConfig = structuredExtraConfig';
|
structuredExtraConfig = structuredExtraConfig';
|
||||||
|
|
||||||
|
|
@ -194,4 +172,51 @@ buildLinux (
|
||||||
|
|
||||||
extraMeta.branch = "${V}.${P}";
|
extraMeta.branch = "${V}.${P}";
|
||||||
}
|
}
|
||||||
)
|
)).overrideAttrs
|
||||||
|
(old: {
|
||||||
|
__noChroot = true;
|
||||||
|
postPatch =
|
||||||
|
(old.postPatch or "")
|
||||||
|
+ sccacheSetup
|
||||||
|
+ lib.optionalString enforceSccache ''
|
||||||
|
# -- Sccache caching smoke test --
|
||||||
|
echo "==> Testing sccache caching..."
|
||||||
|
SCCACHE_TEST_SRC="$NIX_BUILD_TOP/.sccache-test.c"
|
||||||
|
SCCACHE_TEST_OBJ="$NIX_BUILD_TOP/.sccache-test.o"
|
||||||
|
SCCACHE_TEST_ID=$(date +%s%N)
|
||||||
|
printf '// sccache smoke test %s\nint main(void) { return 0; }\n' "$SCCACHE_TEST_ID" > "$SCCACHE_TEST_SRC"
|
||||||
|
${pkgs.sccache}/bin/sccache --zero-stats >/dev/null 2>&1 || true
|
||||||
|
|
||||||
|
${lib.getExe clangSccache} -c "$SCCACHE_TEST_SRC" -o "$SCCACHE_TEST_OBJ" 2>&1
|
||||||
|
STATS1=$(${pkgs.sccache}/bin/sccache --show-stats --stats-format json 2>/dev/null || echo '{}')
|
||||||
|
COMPILED=$(echo "$STATS1" | ${pkgs.jq}/bin/jq '[.stats.cache_hits.counts // {}, .stats.cache_misses.counts // {}] | add | to_entries | map(.value) | add // 0' 2>/dev/null || echo 0)
|
||||||
|
WRITE_ERRORS=$(echo "$STATS1" | ${pkgs.jq}/bin/jq '.stats.cache_errors.counts // {} | to_entries | map(.value) | add // 0' 2>/dev/null || echo 0)
|
||||||
|
|
||||||
|
if [ "$COMPILED" -lt 1 ]; then
|
||||||
|
echo "FATAL: sccache first compile was not cached."
|
||||||
|
${pkgs.sccache}/bin/sccache --show-stats --stats-format text || true
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if [ "$WRITE_ERRORS" -gt 0 ]; then
|
||||||
|
echo "FATAL: sccache cache write errors detected ($WRITE_ERRORS)."
|
||||||
|
${pkgs.sccache}/bin/sccache --show-stats --stats-format text || true
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "==> sccache first compile OK (cached=$COMPILED, write_errors=$WRITE_ERRORS)"
|
||||||
|
|
||||||
|
rm -f "$SCCACHE_TEST_OBJ"
|
||||||
|
${lib.getExe clangSccache} -c "$SCCACHE_TEST_SRC" -o "$SCCACHE_TEST_OBJ" 2>&1
|
||||||
|
STATS2=$(${pkgs.sccache}/bin/sccache --show-stats --stats-format json 2>/dev/null || echo '{}')
|
||||||
|
HITS=$(echo "$STATS2" | ${pkgs.jq}/bin/jq '.stats.cache_hits.counts // {} | to_entries | map(.value) | add // 0' 2>/dev/null || echo 0)
|
||||||
|
|
||||||
|
if [ "$HITS" -lt 1 ]; then
|
||||||
|
echo "FATAL: sccache second compile did not hit cache."
|
||||||
|
${pkgs.sccache}/bin/sccache --show-stats --stats-format text || true
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "==> sccache cache hit OK (hits=$HITS)"
|
||||||
|
rm -f "$SCCACHE_TEST_SRC" "$SCCACHE_TEST_OBJ"
|
||||||
|
${pkgs.sccache}/bin/sccache --zero-stats >/dev/null 2>&1 || true
|
||||||
|
# -- End sccache caching smoke test --
|
||||||
|
'';
|
||||||
|
})
|
||||||
|
|
|
||||||
|
|
@ -126,6 +126,7 @@ let
|
||||||
}
|
}
|
||||||
|
|
||||||
export SCCACHE_CONF=${final.lib.escapeShellArg effectiveSccacheConfig}
|
export SCCACHE_CONF=${final.lib.escapeShellArg effectiveSccacheConfig}
|
||||||
|
mkdir -p ${final.lib.escapeShellArg sandboxSccacheDir}
|
||||||
unset SCCACHE_START_SERVER
|
unset SCCACHE_START_SERVER
|
||||||
${final.lib.optionalString noDaemon ''
|
${final.lib.optionalString noDaemon ''
|
||||||
export SCCACHE_NO_DAEMON=1
|
export SCCACHE_NO_DAEMON=1
|
||||||
|
|
@ -285,6 +286,13 @@ in
|
||||||
' take_arg!("-isystem", PathBuf, CanBeSeparated, PreprocessorArgumentPath),
|
' take_arg!("-isystem", PathBuf, CanBeSeparated, PreprocessorArgumentPath),
|
||||||
take_arg!("-cxx-isystem", PathBuf, CanBeSeparated, PreprocessorArgumentPath),'
|
take_arg!("-cxx-isystem", PathBuf, CanBeSeparated, PreprocessorArgumentPath),'
|
||||||
'';
|
'';
|
||||||
|
env = (old.env or { }) // {
|
||||||
|
RUSTC_WRAPPER = "${prev.sccache}/bin/sccache";
|
||||||
|
SCCACHE_CONF = sharedSccacheConfig;
|
||||||
|
};
|
||||||
|
preBuild = (old.preBuild or "") + ''
|
||||||
|
mkdir -p ${final.lib.escapeShellArg sandboxSccacheDir}
|
||||||
|
'';
|
||||||
passthru = (old.passthru or { }) // {
|
passthru = (old.passthru or { }) // {
|
||||||
links =
|
links =
|
||||||
{
|
{
|
||||||
|
|
@ -399,13 +407,30 @@ in
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
sccache-config = sharedSccacheConfig;
|
sccache-config = sharedSccacheConfig;
|
||||||
intel-sycl = modify prev."intel-sycl" (
|
intel-sycl = modify prev.intel-sycl (
|
||||||
syFinal: syPrev: {
|
syFinal: syPrev:
|
||||||
|
let
|
||||||
|
sccacheWrappedDpcpp = final.sccache.links {
|
||||||
|
unwrappedCC = syFinal.dpcpp-compat;
|
||||||
|
extraConfig = mkSccacheExtraConfig { };
|
||||||
|
};
|
||||||
|
sccacheWrappedCompatStdenv = final.overrideCC syPrev.compatStdenv sccacheWrappedDpcpp;
|
||||||
|
# Inject sccache into stdenv without wrapping the compiler
|
||||||
|
# (avoids sccache-links-wrapper depending on intel-llvm-nightly directly)
|
||||||
|
sccacheStdenv = syPrev.stdenv.override (old: {
|
||||||
|
extraNativeBuildInputs = (old.extraNativeBuildInputs or [ ]) ++ [ final.sccache ];
|
||||||
|
preHook = (old.preHook or "") + ''
|
||||||
|
export SCCACHE_CONF=${final.lib.escapeShellArg sharedSccacheConfig}
|
||||||
|
${final.coreutils}/bin/mkdir -p ${final.lib.escapeShellArg sandboxSccacheDir}
|
||||||
|
export RUSTC_WRAPPER="${final.sccache}/bin/sccache"
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
in
|
||||||
|
{
|
||||||
llvm = modify syPrev.llvm mkCmakeSccacheAttrs;
|
llvm = modify syPrev.llvm mkCmakeSccacheAttrs;
|
||||||
lld = modify syPrev.lld mkCmakeSccacheAttrs;
|
lld = modify syPrev.lld mkCmakeSccacheAttrs;
|
||||||
stdenv = mkSccacheStdenv {
|
stdenv = sccacheStdenv;
|
||||||
stdenv = syPrev.stdenv;
|
compatStdenv = sccacheWrappedCompatStdenv;
|
||||||
};
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
# xdg-desktop-portal-cosmic = prev.xdg-desktop-portal-cosmic.overrideAttrs (old: {
|
# xdg-desktop-portal-cosmic = prev.xdg-desktop-portal-cosmic.overrideAttrs (old: {
|
||||||
|
|
@ -419,7 +444,7 @@ in
|
||||||
codex = modify prev.codex (
|
codex = modify prev.codex (
|
||||||
old:
|
old:
|
||||||
let
|
let
|
||||||
version = "0.114.0";
|
version = "0.116.0";
|
||||||
in
|
in
|
||||||
(versionBumpAttrs old.version version (
|
(versionBumpAttrs old.version version (
|
||||||
let
|
let
|
||||||
|
|
@ -427,7 +452,7 @@ in
|
||||||
owner = "openai";
|
owner = "openai";
|
||||||
repo = "codex";
|
repo = "codex";
|
||||||
tag = "rust-v${version}";
|
tag = "rust-v${version}";
|
||||||
hash = "sha256-7t+mVwP4+YrG1ciI+OLqsK7TUM9SrDbPsJNrt26iy9c=";
|
hash = "sha256-PTsKphg3gPlBUs5oMM34RhJJ4jxvD6hand5aVjXcuZ4=";
|
||||||
# hash = "";
|
# hash = "";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
|
|
@ -438,7 +463,7 @@ in
|
||||||
cargoDeps = prev.rustPlatform.fetchCargoVendor {
|
cargoDeps = prev.rustPlatform.fetchCargoVendor {
|
||||||
inherit src;
|
inherit src;
|
||||||
sourceRoot = "${src.name}/codex-rs";
|
sourceRoot = "${src.name}/codex-rs";
|
||||||
hash = "sha256-XThIexu3V18JG4OtyvYmybaRMctYpDuBLLH+lUvrtt8=";
|
hash = "sha256-X5Yh8+3UrCZfzIplb4OzFfcfoklMu3FikU9vZ6CJbfc=";
|
||||||
# hash = prev.lib.fakeHash;
|
# hash = prev.lib.fakeHash;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
@ -447,65 +472,72 @@ in
|
||||||
buildInputs = (old.buildInputs or [ ]) ++ [ prev.libcap ];
|
buildInputs = (old.buildInputs or [ ]) ++ [ prev.libcap ];
|
||||||
|
|
||||||
preBuild = (old.preBuild or "") + ''
|
preBuild = (old.preBuild or "") + ''
|
||||||
|
mkdir -p ${final.lib.escapeShellArg sandboxSccacheDir}
|
||||||
export CARGO_PROFILE_RELEASE_LTO=thin
|
export CARGO_PROFILE_RELEASE_LTO=thin
|
||||||
export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=8
|
export CARGO_PROFILE_RELEASE_CODEGEN_UNITS=8
|
||||||
'';
|
'';
|
||||||
}
|
|
||||||
);
|
|
||||||
electron_39 =
|
|
||||||
let
|
|
||||||
angleLib = final.lib.getLib final.angle;
|
|
||||||
realElectronClangBasePath = mkRealCompilerBasePath {
|
|
||||||
name = "electron-real-clang-base";
|
|
||||||
toolchain = prev.electron_39.passthru.unwrapped.llvmCcAndBintools;
|
|
||||||
};
|
|
||||||
electronUnwrapped = modify prev.electron_39.passthru.unwrapped (
|
|
||||||
old:
|
|
||||||
let
|
|
||||||
buildSccacheAttrs = mkBuildSccacheAttrs old;
|
|
||||||
oldClangBasePath = "clang_base_path=\"${old.llvmCcAndBintools}\"";
|
|
||||||
newClangBasePath = "clang_base_path=\"${realElectronClangBasePath}\"";
|
|
||||||
baseGnFlags = builtins.replaceStrings [ oldClangBasePath ] [ newClangBasePath ] (old.gnFlags or "");
|
|
||||||
electronGnFlags = "${baseGnFlags} 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 "") + ''
|
|
||||||
|
|
||||||
for angleLibName in \
|
env = (old.env or { }) // {
|
||||||
libEGL.so \
|
RUSTC_WRAPPER = "${final.sccache}/bin/sccache";
|
||||||
libEGL_vulkan_secondaries.so \
|
SCCACHE_CONF = sharedSccacheConfig;
|
||||||
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
|
# electron_39 =
|
||||||
prev.electron_39.override {
|
# let
|
||||||
electron-unwrapped = electronUnwrapped;
|
# angleLib = final.lib.getLib final.angle;
|
||||||
};
|
# realElectronClangBasePath = mkRealCompilerBasePath {
|
||||||
|
# name = "electron-real-clang-base";
|
||||||
|
# toolchain = prev.electron_39.passthru.unwrapped.llvmCcAndBintools;
|
||||||
|
# };
|
||||||
|
# electronUnwrapped = modify prev.electron_39.passthru.unwrapped (
|
||||||
|
# old:
|
||||||
|
# let
|
||||||
|
# buildSccacheAttrs = mkBuildSccacheAttrs old;
|
||||||
|
# oldClangBasePath = "clang_base_path=\"${old.llvmCcAndBintools}\"";
|
||||||
|
# newClangBasePath = "clang_base_path=\"${realElectronClangBasePath}\"";
|
||||||
|
# baseGnFlags = builtins.replaceStrings [ oldClangBasePath ] [ newClangBasePath ] (old.gnFlags or "");
|
||||||
|
# electronGnFlags = "${baseGnFlags} 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 "") + ''
|
||||||
|
|
||||||
|
# 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;
|
||||||
|
# };
|
||||||
|
electron_39 = prev.electron_39-bin;
|
||||||
oneapi-ccl =
|
oneapi-ccl =
|
||||||
modify
|
modify
|
||||||
(prev.oneapi-ccl.override {
|
(prev.oneapi-ccl.override {
|
||||||
|
|
@ -693,6 +725,134 @@ in
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
triton-xpu = pyFinal.buildPythonPackage rec {
|
||||||
|
pname = "pytorch_triton_xpu";
|
||||||
|
version = "3.5.0";
|
||||||
|
format = "wheel";
|
||||||
|
src = final.fetchurl {
|
||||||
|
url = "https://download.pytorch.org/whl/${pname}-${version}-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl";
|
||||||
|
hash = "sha256-DSTBcWCI8nZNDSTGQidzIZW2pCcGw8X8ie60kEv6CBg=";
|
||||||
|
};
|
||||||
|
build-system = with final.python3Packages; [
|
||||||
|
setuptools
|
||||||
|
];
|
||||||
|
nativeBuildInputs = (
|
||||||
|
with final;
|
||||||
|
[
|
||||||
|
autoPatchelfHook
|
||||||
|
]
|
||||||
|
);
|
||||||
|
buildInputs = [ final.zlib ];
|
||||||
|
postFixup = ''
|
||||||
|
substituteInPlace $out/${pyFinal.python.sitePackages}/triton/backends/intel/driver.py \
|
||||||
|
--replace-fail 'ze_root = os.getenv("ZE_PATH", default="/usr/local")' \
|
||||||
|
'ze_root = os.getenv("ZE_PATH", default="${final.level-zero}")'
|
||||||
|
substituteInPlace $out/${pyFinal.python.sitePackages}/triton/runtime/build.py \
|
||||||
|
--replace-fail 'icpx = shutil.which("icpx")' \
|
||||||
|
'icpx = "${final."intel-sycl".clang}/bin/clang++"'
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
torch =
|
||||||
|
let
|
||||||
|
intelHwSrc = builtins.fetchGit {
|
||||||
|
url = "https://github.com/MordragT/nixos.git";
|
||||||
|
rev = "5fc6b35b8aafafbe9fa8bda6e0dc4ddbb0327b43";
|
||||||
|
};
|
||||||
|
torchDir = intelHwSrc + /pkgs/by-lang/intel-python/torch;
|
||||||
|
torchFn = import torchDir;
|
||||||
|
in
|
||||||
|
(torchFn {
|
||||||
|
inherit (final)
|
||||||
|
lib
|
||||||
|
cmake
|
||||||
|
which
|
||||||
|
pkg-config
|
||||||
|
breakpointHook
|
||||||
|
writeShellScript
|
||||||
|
;
|
||||||
|
inherit (final)
|
||||||
|
openssl
|
||||||
|
ocl-icd
|
||||||
|
opencl-headers
|
||||||
|
level-zero
|
||||||
|
;
|
||||||
|
inherit (final)
|
||||||
|
fetchFromGitHub
|
||||||
|
fetchFromGitLab
|
||||||
|
runCommand
|
||||||
|
callPackage
|
||||||
|
applyPatches
|
||||||
|
;
|
||||||
|
inherit (final.buildPackages) ninja;
|
||||||
|
inherit (pyFinal)
|
||||||
|
buildPythonPackage
|
||||||
|
python
|
||||||
|
pybind11
|
||||||
|
astunparse
|
||||||
|
expecttest
|
||||||
|
filelock
|
||||||
|
fsspec
|
||||||
|
hypothesis
|
||||||
|
jinja2
|
||||||
|
networkx
|
||||||
|
packaging
|
||||||
|
psutil
|
||||||
|
pyyaml
|
||||||
|
requests
|
||||||
|
sympy
|
||||||
|
types-dataclasses
|
||||||
|
typing-extensions
|
||||||
|
pillow
|
||||||
|
six
|
||||||
|
tensorboard
|
||||||
|
protobuf
|
||||||
|
;
|
||||||
|
intel-sycl = final."intel-sycl";
|
||||||
|
oneapi-dnn = final.oneapi-dnn;
|
||||||
|
pti-gpu = final.pti-gpu;
|
||||||
|
intel-compute-runtime = final.intel-compute-runtime;
|
||||||
|
triton-xpu = pyFinal.triton-xpu;
|
||||||
|
inherit (final) git-unroll binutils;
|
||||||
|
}).overrideAttrs
|
||||||
|
(old: {
|
||||||
|
buildInputs = (old.buildInputs or [ ]) ++ [
|
||||||
|
final.vulkan-headers
|
||||||
|
final.vulkan-loader
|
||||||
|
final.shaderc
|
||||||
|
];
|
||||||
|
env = (old.env or { }) // {
|
||||||
|
USE_VULKAN = "1";
|
||||||
|
USE_OPENMP = "1";
|
||||||
|
VULKAN_SDK = "${final.shaderc}";
|
||||||
|
USE_CUDNN = "0";
|
||||||
|
USE_CUDSS = "0";
|
||||||
|
USE_CUFILE = "0";
|
||||||
|
USE_CUSPARSELT = "0";
|
||||||
|
USE_STATIC_NCCL = "0";
|
||||||
|
USE_NVRTC = "0";
|
||||||
|
USE_ROCM = "0";
|
||||||
|
USE_RCCL = "0";
|
||||||
|
USE_MPS = "0";
|
||||||
|
USE_PYTORCH_METAL = "0";
|
||||||
|
USE_PYTORCH_METAL_EXPORT = "0";
|
||||||
|
USE_COREML_DELEGATE = "0";
|
||||||
|
USE_MAGMA = "0";
|
||||||
|
USE_NNPACK = "0";
|
||||||
|
USE_XNNPACK = "0";
|
||||||
|
USE_PYTORCH_QNNPACK = "0";
|
||||||
|
USE_SNPE = "0";
|
||||||
|
USE_NNAPI = "0";
|
||||||
|
USE_KINETO = "0";
|
||||||
|
USE_ITT = "0";
|
||||||
|
USE_DISTRIBUTED = "0";
|
||||||
|
USE_GLOO = "0";
|
||||||
|
USE_MPI = "0";
|
||||||
|
USE_TENSORPIPE = "0";
|
||||||
|
USE_UCC = "0";
|
||||||
|
CC = "${final."intel-sycl".compatStdenv.cc}/bin/clang";
|
||||||
|
CXX = "${final."intel-sycl".compatStdenv.cc}/bin/clang++";
|
||||||
|
};
|
||||||
|
});
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
lutris-unwrapped = modify prev.lutris-unwrapped (
|
lutris-unwrapped = modify prev.lutris-unwrapped (
|
||||||
|
|
@ -722,7 +882,16 @@ in
|
||||||
--run 'export WINE WINESERVER WINE_BIN WINESERVER_BIN'
|
--run 'export WINE WINESERVER WINE_BIN WINESERVER_BIN'
|
||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
intel-openmp-nightly = modify prev.intel-openmp-nightly (
|
||||||
|
old:
|
||||||
|
let
|
||||||
|
cmakeSccacheAttrs = mkCmakeSccacheAttrs old;
|
||||||
|
in
|
||||||
|
cmakeSccacheAttrs
|
||||||
|
// {
|
||||||
|
cmakeFlags = (cmakeSccacheAttrs.cmakeFlags or [ ]);
|
||||||
|
}
|
||||||
|
);
|
||||||
intel-compute-runtime = modify prev.intel-compute-runtime (
|
intel-compute-runtime = modify prev.intel-compute-runtime (
|
||||||
old:
|
old:
|
||||||
let
|
let
|
||||||
|
|
@ -785,4 +954,23 @@ in
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
umu-launcher-unwrapped = modify prev.umu-launcher-unwrapped rec {
|
||||||
|
version = "1.4.0";
|
||||||
|
|
||||||
|
src = prev.fetchFromGitHub {
|
||||||
|
inherit version;
|
||||||
|
owner = "Open-Wine-Components";
|
||||||
|
repo = "umu-launcher";
|
||||||
|
tag = version;
|
||||||
|
hash = "sha256-7BdA/iAAIn2NR/uLzxdvsIh5/1SZacSfkiXJVJBT3EQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
cargoDeps = prev.rustPlatform.fetchCargoVendor {
|
||||||
|
inherit src;
|
||||||
|
hash = "sha256-CVcbktCBRZGnEuDVvl2iJpRgKh+ShFe5mjT6oMHIjtQ=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
umu-launcher = prev.umu-launcher.override {
|
||||||
|
extraLibraries = prevPkgs: [ prevPkgs.zstd ];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
18
devenv.lock
18
devenv.lock
|
|
@ -3,11 +3,11 @@
|
||||||
"devenv": {
|
"devenv": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "src/modules",
|
"dir": "src/modules",
|
||||||
"lastModified": 1773937316,
|
"lastModified": 1774466721,
|
||||||
"narHash": "sha256-1Ou0hiagyj7urRqWZgPW51VdcaCcM3GUwrMBHQ27stU=",
|
"narHash": "sha256-yi8Y0l5ZeJEGbvs48zBSqi183lMncn/ZQlpEbV07NEo=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "devenv",
|
"repo": "devenv",
|
||||||
"rev": "450735a11ddd934e923aaea8b693336d31e7df32",
|
"rev": "1172f805e4497b6d562b32116c8a15ba5d207967",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -22,11 +22,11 @@
|
||||||
"nixpkgs-src": "nixpkgs-src"
|
"nixpkgs-src": "nixpkgs-src"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773704619,
|
"lastModified": 1774287239,
|
||||||
"narHash": "sha256-LKtmit8Sr81z8+N2vpIaN/fyiQJ8f7XJ6tMSKyDVQ9s=",
|
"narHash": "sha256-W3krsWcDwYuA3gPWsFA24YAXxOFUL6iIlT6IknAoNSE=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "devenv-nixpkgs",
|
"repo": "devenv-nixpkgs",
|
||||||
"rev": "906534d75b0e2fe74a719559dfb1ad3563485f43",
|
"rev": "fa7125ea7f1ae5430010a6e071f68375a39bd24c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -39,11 +39,11 @@
|
||||||
"nixpkgs-src": {
|
"nixpkgs-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773597492,
|
"lastModified": 1773840656,
|
||||||
"narHash": "sha256-hQ284SkIeNaeyud+LS0WVLX+WL2rxcVZLFEaK0e03zg=",
|
"narHash": "sha256-9tpvMGFteZnd3gRQZFlRCohVpqooygFuy9yjuyRL2C0=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "a07d4ce6bee67d7c838a8a5796e75dff9caa21ef",
|
"rev": "9cf7092bdd603554bd8b63c216e8943cf9b12512",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
140
flake.lock
generated
140
flake.lock
generated
|
|
@ -46,11 +46,11 @@
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1774106245,
|
"lastModified": 1774419577,
|
||||||
"narHash": "sha256-gB3XhG900wWKDa/dbqgK0wFGRf8u9PQhqN/SvnTZlIM=",
|
"narHash": "sha256-1dmCZWYAhJ1Z65Bl11wgXCHcCu1CTTD0j+PBGFfjanM=",
|
||||||
"owner": "sadjow",
|
"owner": "sadjow",
|
||||||
"repo": "claude-code-nix",
|
"repo": "claude-code-nix",
|
||||||
"rev": "0b01bf3b7cb403ef11f502183b6de55e2aaccf88",
|
"rev": "8117d36a65200c7a2870620427296b381acb4c35",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -84,11 +84,11 @@
|
||||||
},
|
},
|
||||||
"crane": {
|
"crane": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771121070,
|
"lastModified": 1772080396,
|
||||||
"narHash": "sha256-aIlv7FRXF9q70DNJPI237dEDAznSKaXmL5lfK/Id/bI=",
|
"narHash": "sha256-84W9UNtSk9DNMh43WBkOjpkbfODlmg+RDi854PnNgLE=",
|
||||||
"owner": "ipetkov",
|
"owner": "ipetkov",
|
||||||
"repo": "crane",
|
"repo": "crane",
|
||||||
"rev": "a2812c19f1ed2e5ed5ce2ef7109798b575c180e1",
|
"rev": "8525580bc0316c39dbfa18bd09a1331e98c9e463",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -158,11 +158,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771469470,
|
"lastModified": 1773889306,
|
||||||
"narHash": "sha256-GnqdqhrguKNN3HtVfl6z+zbV9R9jhHFm3Z8nu7R6ml0=",
|
"narHash": "sha256-PAqwnsBSI9SVC2QugvQ3xeYCB0otOwCacB1ueQj2tgw=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "disko",
|
"repo": "disko",
|
||||||
"rev": "4707eec8d1d2db5182ea06ed48c820a86a42dc13",
|
"rev": "5ad85c82cc52264f4beddc934ba57f3789f28347",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -198,11 +198,11 @@
|
||||||
"rust-analyzer-src": "rust-analyzer-src"
|
"rust-analyzer-src": "rust-analyzer-src"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1769929675,
|
"lastModified": 1772348640,
|
||||||
"narHash": "sha256-EBpe7sXCPLs+qVePXbA7kc+Kmpmp0pWysEpjjEWTK+E=",
|
"narHash": "sha256-caiKs7O4khFydpKyg8O8/nmvw/NfN4fn/4spageGoig=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "fenix",
|
"repo": "fenix",
|
||||||
"rev": "78d518f5ca32a86dc767de481160dbae640c70cf",
|
"rev": "47c5355eaba0b08836e720d5d545c8ea1e1783db",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -268,11 +268,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1769996383,
|
"lastModified": 1772408722,
|
||||||
"narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
|
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
|
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -363,11 +363,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1770726378,
|
"lastModified": 1772893680,
|
||||||
"narHash": "sha256-kck+vIbGOaM/dHea7aTBxdFYpeUl/jHOy5W3eyRvVx8=",
|
"narHash": "sha256-JDqZMgxUTCq85ObSaFw0HhE+lvdOre1lx9iI6vYyOEs=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "5eaaedde414f6eb1aea8b8525c466dc37bba95ae",
|
"rev": "8baab586afc9c9b57645a734c820e4ac0a604af9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -451,11 +451,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1774135471,
|
"lastModified": 1774379316,
|
||||||
"narHash": "sha256-TVeIGOxnfSPM6JvkRkXHpJECnj1OG2dXkWMSA4elzzQ=",
|
"narHash": "sha256-0nGNxWDUH2Hzlj/R3Zf4FEK6fsFNB/dvewuboSRZqiI=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "856b01ebd1de3f53c3929ce8082d9d67d799d816",
|
"rev": "1eb0549a1ab3fe3f5acf86668249be15fa0e64f7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -472,11 +472,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771519029,
|
"lastModified": 1774007980,
|
||||||
"narHash": "sha256-H59Qf82wv5kBXVoyXsmUKW+9J3o8FqgY4uKaLdsLdLg=",
|
"narHash": "sha256-FOnZjElEI8pqqCvB6K/1JRHTE8o4rer8driivTpq2uo=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "167e0b6837115e672ec5f58e2b0ea39093abe807",
|
"rev": "9670de2921812bc4e0452f6e3efd8c859696c183",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -524,11 +524,11 @@
|
||||||
"vaultix": "vaultix"
|
"vaultix": "vaultix"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1772131544,
|
"lastModified": 1774176252,
|
||||||
"narHash": "sha256-rhKS/XoOMN90xpGZleFEQQ9gmn1+8Cagzg12kRRypuE=",
|
"narHash": "sha256-ldrHZQdua0rHq3dFy12nFkU4ZgCOf3CXpRe9SgJ7ZFM=",
|
||||||
"owner": "MordragT",
|
"owner": "MordragT",
|
||||||
"repo": "nixos",
|
"repo": "nixos",
|
||||||
"rev": "5fc6b35b8aafafbe9fa8bda6e0dc4ddbb0327b43",
|
"rev": "c329d001d4ea63b686315ff449a15d30338b515f",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -540,16 +540,16 @@
|
||||||
"kernel-src": {
|
"kernel-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773844285,
|
"lastModified": 1774368605,
|
||||||
"narHash": "sha256-vOF2HIA1J5Ktzt2aYqGPBv3AEQb0ziORKRQIOj+6h04=",
|
"narHash": "sha256-9wxoMXSl3z7LuLNjyue/Vbxq+1WY9XaccEzkej7Tsn4=",
|
||||||
"ref": "refs/heads/drm-tip",
|
"ref": "refs/heads/drm-tip",
|
||||||
"rev": "61409ba11a36fa5aff4ce0f0086a6026a43c5bce",
|
"rev": "0be244ee3139de3578e9acc56e1b917a4bd162cd",
|
||||||
"shallow": true,
|
"shallow": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitlab.freedesktop.org/drm/tip.git"
|
"url": "https://gitlab.freedesktop.org/drm/tip.git"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"rev": "61409ba11a36fa5aff4ce0f0086a6026a43c5bce",
|
"rev": "0be244ee3139de3578e9acc56e1b917a4bd162cd",
|
||||||
"shallow": true,
|
"shallow": true,
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://gitlab.freedesktop.org/drm/tip.git"
|
"url": "https://gitlab.freedesktop.org/drm/tip.git"
|
||||||
|
|
@ -566,11 +566,11 @@
|
||||||
"rust-overlay": "rust-overlay"
|
"rust-overlay": "rust-overlay"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771492583,
|
"lastModified": 1773344150,
|
||||||
"narHash": "sha256-nQzvnU4BGu8dA6BsPPCqmVcab/3ebVmHtX3ZWbW3Hxc=",
|
"narHash": "sha256-JSsXufJy2zdg5XS5pRGlkwF1dqN+sWPmCgrvJsnhEzg=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "lanzaboote",
|
"repo": "lanzaboote",
|
||||||
"rev": "5e9380994665ef66c87ab8e22c913ff837174ce4",
|
"rev": "d21013305ef39e1d9d2d06b161c3785ffad82281",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -611,11 +611,11 @@
|
||||||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1774113359,
|
"lastModified": 1774283383,
|
||||||
"narHash": "sha256-b7/LsPn5uZoFNjGVQ26q+6QPf8Q9IHHmRx+rGLZ8oyY=",
|
"narHash": "sha256-3aCfmL8hOcdIl783LTnK+lHcjMGCnc+2zQ98xUyefCU=",
|
||||||
"owner": "sodiboo",
|
"owner": "sodiboo",
|
||||||
"repo": "niri-flake",
|
"repo": "niri-flake",
|
||||||
"rev": "1c4a800bbe0c4cbcf99529fd88286a14450261a8",
|
"rev": "8a583029606cf072cc01c7e2f4298cc75a7ada28",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -680,11 +680,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773552174,
|
"lastModified": 1774156144,
|
||||||
"narHash": "sha256-mHSRNrT1rjeYBgkAlj07dW3+1nFEgAd8Gu6lgyfT9DU=",
|
"narHash": "sha256-gdYe9wTPl4ignDyXUl1LlICWj41+S0GB5lG1fKP17+A=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "8faeb68130df077450451b6734a221ba0d6cde42",
|
"rev": "55b588747fa3d7fc351a11831c4b874dab992862",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -695,11 +695,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773628058,
|
"lastModified": 1774273680,
|
||||||
"narHash": "sha256-hpXH0z3K9xv0fHaje136KY872VT2T5uwxtezlAskQgY=",
|
"narHash": "sha256-a++tZ1RQsDb1I0NHrFwdGuRlR5TORvCEUksM459wKUA=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "f8573b9c935cfaa162dd62cc9e75ae2db86f85df",
|
"rev": "fdc7b8f7b30fdbedec91b71ed82f36e1637483ed",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -726,11 +726,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773964973,
|
"lastModified": 1774244481,
|
||||||
"narHash": "sha256-NV/J+tTER0P5iJhUDL/8HO5MDjDceLQPRUYgdmy5wXw=",
|
"narHash": "sha256-4XfMXU0DjN83o6HWZoKG9PegCvKvIhNUnRUI19vzTcQ=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "812b3986fd1568f7a858f97fcf425ad996ba7d25",
|
"rev": "4590696c8693fea477850fe379a01544293ca4e2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -758,11 +758,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771369470,
|
"lastModified": 1773821835,
|
||||||
"narHash": "sha256-0NBlEBKkN3lufyvFegY4TYv5mCNHbi5OmBDrzihbBMQ=",
|
"narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "0182a361324364ae3f436a63005877674cf45efb",
|
"rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -787,11 +787,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_5": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773821835,
|
"lastModified": 1774106199,
|
||||||
"narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
|
"narHash": "sha256-US5Tda2sKmjrg2lNHQL3jRQ6p96cgfWh3J1QBliQ8Ws=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
|
"rev": "6c9a78c09ff4d6c21d0319114873508a6ec01655",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -826,11 +826,11 @@
|
||||||
"utils": "utils_2"
|
"utils": "utils_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1767894517,
|
"lastModified": 1773168029,
|
||||||
"narHash": "sha256-QF7hieotASi8KTe6dhJEaRg+Ex0HO1SkoqwsILzwO4k=",
|
"narHash": "sha256-dLcdUV+M7z5YIPpLGWKhJ71TZhHHHhEjsJAI0BqlHeI=",
|
||||||
"owner": "MordragT",
|
"owner": "MordragT",
|
||||||
"repo": "nu-env",
|
"repo": "nu-env",
|
||||||
"rev": "0b6d3b1ee6a5535e13e28d94a85a6eba0585964d",
|
"rev": "0636a884cd447d624e039f730b390d8737dad04c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -850,11 +850,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1770726378,
|
"lastModified": 1772024342,
|
||||||
"narHash": "sha256-kck+vIbGOaM/dHea7aTBxdFYpeUl/jHOy5W3eyRvVx8=",
|
"narHash": "sha256-+eXlIc4/7dE6EcPs9a2DaSY3fTA9AE526hGqkNID3Wg=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "pre-commit-hooks.nix",
|
"repo": "pre-commit-hooks.nix",
|
||||||
"rev": "5eaaedde414f6eb1aea8b8525c466dc37bba95ae",
|
"rev": "6e34e97ed9788b17796ee43ccdbaf871a5c2b476",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -874,11 +874,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1770726378,
|
"lastModified": 1772893680,
|
||||||
"narHash": "sha256-kck+vIbGOaM/dHea7aTBxdFYpeUl/jHOy5W3eyRvVx8=",
|
"narHash": "sha256-JDqZMgxUTCq85ObSaFw0HhE+lvdOre1lx9iI6vYyOEs=",
|
||||||
"owner": "cachix",
|
"owner": "cachix",
|
||||||
"repo": "git-hooks.nix",
|
"repo": "git-hooks.nix",
|
||||||
"rev": "5eaaedde414f6eb1aea8b8525c466dc37bba95ae",
|
"rev": "8baab586afc9c9b57645a734c820e4ac0a604af9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -928,11 +928,11 @@
|
||||||
"rust-analyzer-src": {
|
"rust-analyzer-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1769857242,
|
"lastModified": 1772310333,
|
||||||
"narHash": "sha256-3eKpRRzKz0KzY7CJzRXFm4POwEqbuTohyQ2ajI/zKvg=",
|
"narHash": "sha256-njFwHnxYcfQINwSa+XWhenv8s8PMg/j5ID0HpIa49xM=",
|
||||||
"owner": "rust-lang",
|
"owner": "rust-lang",
|
||||||
"repo": "rust-analyzer",
|
"repo": "rust-analyzer",
|
||||||
"rev": "17304e9c7e11d26139672d3d77aa498b1cae0d69",
|
"rev": "a96b6a9b887008bae01839543f9ca8e1f67f4ebe",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -951,11 +951,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771125043,
|
"lastModified": 1772334676,
|
||||||
"narHash": "sha256-ldf/s49n6rOAxl7pYLJGGS1N/assoHkCOWdEdLyNZkc=",
|
"narHash": "sha256-Jrc0J3AH+iNJDlUze3+FJZv2R0BZnhANFnD52V4kyvI=",
|
||||||
"owner": "oxalica",
|
"owner": "oxalica",
|
||||||
"repo": "rust-overlay",
|
"repo": "rust-overlay",
|
||||||
"rev": "4912f951a26dc8142b176be2c2ad834319dc06e8",
|
"rev": "9879be11f30fd3bbf848e653a7f991549e8973b5",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -1015,11 +1015,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1773852796,
|
"lastModified": 1774443684,
|
||||||
"narHash": "sha256-aEriBf9qkKeUoICKuxOj9e1GE8PZEnKke83+TzXpBT8=",
|
"narHash": "sha256-eXRUZ6Fvlfq0MreTDOXzXTpDGIBWJj+JxdhcZgr8kgs=",
|
||||||
"owner": "mozilla",
|
"owner": "mozilla",
|
||||||
"repo": "sccache",
|
"repo": "sccache",
|
||||||
"rev": "8d6cab9ee9356ff4054409c60f7a607cb798de03",
|
"rev": "f5edaf1076a093a1a0d17ab153e19bf920dc052b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
26
flake.nix
26
flake.nix
|
|
@ -24,7 +24,7 @@
|
||||||
nix-flatpak.url = "github:gmodena/nix-flatpak/latest";
|
nix-flatpak.url = "github:gmodena/nix-flatpak/latest";
|
||||||
kernel-src = {
|
kernel-src = {
|
||||||
# url = "git+https://gitlab.freedesktop.org/drm/tip.git?shallow=1";
|
# url = "git+https://gitlab.freedesktop.org/drm/tip.git?shallow=1";
|
||||||
url = "git+https://gitlab.freedesktop.org/drm/tip.git?rev=61409ba11a36fa5aff4ce0f0086a6026a43c5bce&shallow=1";
|
url = "git+https://gitlab.freedesktop.org/drm/tip.git?rev=0be244ee3139de3578e9acc56e1b917a4bd162cd&shallow=1";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
sccache = {
|
sccache = {
|
||||||
|
|
@ -85,7 +85,8 @@
|
||||||
pkgdefault = pkg: pkg.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
pkgdefault = pkg: pkg.packages.${pkgs.stdenv.hostPlatform.system}.default;
|
||||||
};
|
};
|
||||||
nixpkgs.overlays = [
|
nixpkgs.overlays = [
|
||||||
intel-hw.overlays.default
|
intel-hw.overlays.by-scope
|
||||||
|
intel-hw.overlays.by-name
|
||||||
mypkgs.overlays.default
|
mypkgs.overlays.default
|
||||||
(import ./custom/override.nix)
|
(import ./custom/override.nix)
|
||||||
niri-flake.overlays.niri
|
niri-flake.overlays.niri
|
||||||
|
|
@ -137,11 +138,11 @@
|
||||||
download-buffer-size = 160000000;
|
download-buffer-size = 160000000;
|
||||||
};
|
};
|
||||||
systemd.tmpfiles.rules = [
|
systemd.tmpfiles.rules = [
|
||||||
# setgid, чтобы файлы/папки сохраняли группу nixbld
|
# setgid, to preserve group nixbld
|
||||||
"d /var/cache/sccache 2770 root nixbld - -"
|
"d /var/cache/sccache 1777 root root - -"
|
||||||
"d /var/cache/sccache/nix-builds 2770 root nixbld - -"
|
"d /var/cache/sccache/nix-builds 1777 root root - -"
|
||||||
"d /var/cache/sccache/nix-builds/packages 2770 root nixbld - -"
|
"d /var/cache/sccache/nix-builds/packages 1777 root root - -"
|
||||||
"d /var/cache/sccache/nix-builds/kernel 2770 root nixbld - -"
|
"d /var/cache/sccache/nix-builds/kernel 1777 root root - -"
|
||||||
];
|
];
|
||||||
systemd.services.sccache = {
|
systemd.services.sccache = {
|
||||||
description = "Shared sccache server for Nix builds";
|
description = "Shared sccache server for Nix builds";
|
||||||
|
|
@ -248,6 +249,17 @@
|
||||||
security = {
|
security = {
|
||||||
polkit = {
|
polkit = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
extraConfig = ''
|
||||||
|
polkit.addRule(function(action, subject) {
|
||||||
|
if (action.id == "org.freedesktop.policykit.exec" &&
|
||||||
|
subject.isInGroup("wheel")) {
|
||||||
|
var cmd = action.lookup("program");
|
||||||
|
if (cmd && cmd.match(/\/ls$/)) {
|
||||||
|
return polkit.Result.YES;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
rtkit.enable = true;
|
rtkit.enable = true;
|
||||||
sudo = {
|
sudo = {
|
||||||
|
|
|
||||||
12
home.nix
12
home.nix
|
|
@ -27,6 +27,7 @@
|
||||||
package = pkgs.apple-cursor;
|
package = pkgs.apple-cursor;
|
||||||
size = 28;
|
size = 28;
|
||||||
};
|
};
|
||||||
|
gtk4.theme = config.gtk.theme;
|
||||||
};
|
};
|
||||||
home = {
|
home = {
|
||||||
stateVersion = "25.11";
|
stateVersion = "25.11";
|
||||||
|
|
@ -53,7 +54,7 @@
|
||||||
arch-install-scripts
|
arch-install-scripts
|
||||||
kdocker # tray the untrayable
|
kdocker # tray the untrayable
|
||||||
xwayland-satellite
|
xwayland-satellite
|
||||||
winboat
|
# winboat
|
||||||
xfce4-taskmanager
|
xfce4-taskmanager
|
||||||
xdg-desktop-portal-cosmic
|
xdg-desktop-portal-cosmic
|
||||||
file
|
file
|
||||||
|
|
@ -92,17 +93,20 @@
|
||||||
vintagestory
|
vintagestory
|
||||||
prismlauncher
|
prismlauncher
|
||||||
# bottles # sunthetik2 mouse issues
|
# bottles # sunthetik2 mouse issues
|
||||||
# umu-launcher
|
umu-launcher
|
||||||
|
|
||||||
### neural networks
|
### neural networks
|
||||||
dsearch
|
dsearch
|
||||||
lmstudio
|
# lmstudio
|
||||||
# vllm
|
# vllm
|
||||||
claude-code
|
claude-code
|
||||||
|
|
||||||
# kdePackages.kdenlive
|
# kdePackages.kdenlive
|
||||||
(python313.withPackages (
|
(python313.withPackages (
|
||||||
py: with py; [
|
py: with py; [
|
||||||
|
torch
|
||||||
|
# triton-xpu
|
||||||
|
#
|
||||||
huggingface-hub
|
huggingface-hub
|
||||||
# haystack-ai
|
# haystack-ai
|
||||||
# raganything
|
# raganything
|
||||||
|
|
@ -398,7 +402,7 @@
|
||||||
"mcp-server-qdrant"
|
"mcp-server-qdrant"
|
||||||
];
|
];
|
||||||
enabled = true;
|
enabled = true;
|
||||||
timeout = 15000;
|
timeout = 20000;
|
||||||
environment = {
|
environment = {
|
||||||
# NumPy from uvx needs libstdc++.so.6 on NixOS.
|
# NumPy from uvx needs libstdc++.so.6 on NixOS.
|
||||||
LD_LIBRARY_PATH = lib.makeLibraryPath [ pkgs.stdenv.cc.cc ];
|
LD_LIBRARY_PATH = lib.makeLibraryPath [ pkgs.stdenv.cc.cc ];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue