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,41 @@
From f404e176e89c5d778363cb0177b44dc1aa5e1fda Mon Sep 17 00:00:00 2001
From: wxt <3264117476@qq.com>
Date: Tue, 5 Nov 2024 12:53:04 +0800
Subject: [PATCH] Bind Nix Store
---
src/core/judgingthread.cpp | 18 +++---------------
1 file changed, 3 insertions(+), 15 deletions(-)
diff --git a/src/core/judgingthread.cpp b/src/core/judgingthread.cpp
index 7201552..88aee9d 100644
--- a/src/core/judgingthread.cpp
+++ b/src/core/judgingthread.cpp
@@ -893,21 +893,9 @@ void JudgingThread::runProgram() {
auto *runner = new QProcess(this);
QStringList argumentsList;
- argumentsList << "--ro-bind"
- << "/usr"
- << "/usr";
- argumentsList << "--symlink"
- << "/usr/lib"
- << "/lib";
- argumentsList << "--symlink"
- << "/usr/lib64"
- << "/lib64";
- argumentsList << "--symlink"
- << "/usr/bin"
- << "/bin";
- argumentsList << "--symlink"
- << "/usr/sbin"
- << "/sbin";
+ argumentsList << "--bind"
+ << "/nix/store"
+ << "/nix/store";
argumentsList << "--tmpfs"
<< "/tmp";
--
2.46.1

View File

@@ -0,0 +1,65 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
qt6,
nix-update-script,
bubblewrap,
bash,
diffutils,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "project-lemonlime";
version = "0.3.5";
src = fetchFromGitHub {
owner = "Project-LemonLime";
repo = "Project_LemonLime";
tag = finalAttrs.version;
hash = "sha256-h/aE1+ED+RkXqFcsb23rboA+Dd7kiom3XiIRqb4oYkQ=";
fetchSubmodules = true;
};
nativeBuildInputs = [
cmake
qt6.wrapQtAppsHook
];
patches = [
./0001-Bind-Nix-Store.patch
];
postPatch = ''
substituteInPlace src/core/judgingthread.cpp \
--replace-fail "/usr/bin/bwrap" "${lib.getExe bubblewrap}"
substituteInPlace unix/watcher_unix.cpp \
--replace-fail "bash" "${lib.getExe bash}"
substituteInPlace src/base/settings.cpp \
--replace-fail "/usr/bin/diff" "${diffutils}/bin/diff"
'';
cmakeFlags = [
(lib.cmakeBool "LEMON_QT6" true)
];
buildInputs = [
qt6.qtbase
qt6.qttools
qt6.qtwayland
];
meta = {
description = "Lightweight evaluation system based on Lemon + LemonPlus for OI competitions";
homepage = "https://github.com/Project-LemonLime/Project_LemonLime";
changelog = "https://github.com/Project-LemonLime/Project_LemonLime/releases/tag/${finalAttrs.version}";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
sigmanificient
bot-wxt1221
];
platforms = lib.platforms.unix;
mainProgram = "lemon";
};
})