Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot]
2025-08-05 00:18:56 +00:00
committed by GitHub
140 changed files with 1615 additions and 9436 deletions
+1
View File
@@ -1258,6 +1258,7 @@ in
qgis-ltr = handleTest ./qgis.nix { package = pkgs.qgis-ltr; };
qownnotes = runTest ./qownnotes.nix;
qtile = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./qtile/default.nix;
qtile-extras = runTestOn [ "x86_64-linux" "aarch64-linux" ] ./qtile-extras/default.nix;
quake3 = runTest ./quake3.nix;
quicktun = runTest ./quicktun.nix;
quickwit = runTest ./quickwit.nix;
@@ -0,0 +1,22 @@
--- a/config.py 2025-08-03 00:37:13.058374602 +0200
+++ b/config.py 2025-08-03 00:45:51.869382363 +0200
@@ -24,10 +24,18 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
-from libqtile import bar, layout, qtile, widget
+from libqtile import bar, layout, qtile, widget, hook
from libqtile.config import Click, Drag, Group, Key, Match, Screen
from libqtile.lazy import lazy
from libqtile.utils import guess_terminal
+from libqtile.log_utils import logger
+
+
+@hook.subscribe.startup
+def print_ready():
+ logger.warning("ready!") # warning to make it always visible
+
+
mod = "mod4"
terminal = guess_terminal()
+30
View File
@@ -0,0 +1,30 @@
{
stdenvNoCC,
fetchurl,
}:
stdenvNoCC.mkDerivation {
name = "qtile-extras-config";
version = "0.0.1";
src = fetchurl {
url = "https://raw.githubusercontent.com/qtile/qtile/v0.28.1/libqtile/resources/default_config.py";
hash = "sha256-Y5W277CWVNSi4BdgEW/f7Px/MMjnN9W9TDqdOncVwPc=";
};
prePatch = ''
cp $src config.py
'';
patches = [
./add-widget.patch
./add-startup-hook.patch
];
dontUnpack = true;
dontBuild = true;
installPhase = ''
mkdir -p $out
cp config.py $out/config.py
'';
}
+65
View File
@@ -0,0 +1,65 @@
{ lib, ... }:
{
name = "qtile-extras";
meta = {
maintainers = with lib.maintainers; [
sigmanificient
gurjaka
];
};
nodes.machine =
{
pkgs,
lib,
...
}:
let
# We create a custom Qtile configuration file that adds a widget from
# qtile-extras to the bar. This ensure that the qtile-extras package
# also works, and that extraPackages behave as expected.
config-deriv = pkgs.callPackage ./config.nix { };
in
{
imports = [
../common/x11.nix
../common/user-account.nix
];
test-support.displayManager.auto.user = "alice";
services.xserver.windowManager.qtile = {
enable = true;
configFile = "${config-deriv}/config.py";
extraPackages = ps: [ ps.qtile-extras ];
};
services.displayManager.defaultSession = lib.mkForce "qtile";
environment.systemPackages = [ pkgs.kitty ];
};
testScript = ''
from pathlib import Path
with subtest("ensure x starts"):
machine.wait_for_x()
machine.wait_for_file("/home/alice/.Xauthority")
machine.succeed("xauth merge ~alice/.Xauthority")
with subtest("ensure client is available"):
machine.succeed("qtile --version")
with subtest("Qtile signals that it is ready"):
qtile_logfile = Path("/home/alice/.local/share/qtile/qtile.log")
machine.succeed(f"mkdir -p {qtile_logfile.parent}")
machine.succeed(f"touch {qtile_logfile}")
machine.succeed(f"sh -c 'tail -f {qtile_logfile} | grep --line-buffered \'ready\' -m 1'")
with subtest("ensure we can open a new terminal"):
machine.send_key("meta_l-ret")
machine.wait_for_window(r"alice.*?machine")
machine.screenshot("terminal")
'';
}
+22
View File
@@ -0,0 +1,22 @@
--- a/config.py 2025-08-03 00:37:13.058374602 +0200
+++ b/config.py 2025-08-03 00:45:51.869382363 +0200
@@ -24,10 +24,18 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
-from libqtile import bar, layout, qtile, widget
+from libqtile import bar, layout, qtile, widget, hook
from libqtile.config import Click, Drag, Group, Key, Match, Screen
from libqtile.lazy import lazy
from libqtile.utils import guess_terminal
+from libqtile.log_utils import logger
+
+
+@hook.subscribe.startup
+def print_ready():
+ logger.warning("ready!") # warning to make it always visible
+
+
mod = "mod4"
terminal = guess_terminal()
+6 -3
View File
@@ -1,6 +1,9 @@
{ stdenvNoCC, fetchurl }:
{
stdenvNoCC,
fetchurl,
}:
stdenvNoCC.mkDerivation {
name = "qtile-config";
name = "qtile-extras-config";
version = "0.0.1";
src = fetchurl {
@@ -12,7 +15,7 @@ stdenvNoCC.mkDerivation {
cp $src config.py
'';
patches = [ ./add-widget.patch ];
patches = [ ./add-startup-hook.patch ];
dontUnpack = true;
dontBuild = true;
+25 -9
View File
@@ -3,16 +3,22 @@
name = "qtile";
meta = {
maintainers = with lib.maintainers; [ sigmanificient ];
maintainers = with lib.maintainers; [
sigmanificient
gurjaka
];
};
nodes.machine =
{ pkgs, lib, ... }:
{
pkgs,
lib,
...
}:
let
# We create a custom Qtile configuration file that adds a widget from
# qtile-extras to the bar. This ensure that the qtile-extras package
# also works, and that extraPackages behave as expected.
# We create a custom Qtile configuration file that adds a
# startup hook to qtile. This ensure we can reproducibly check
# when Qtile is truly ready to receive our inputs
config-deriv = pkgs.callPackage ./config.nix { };
in
{
@@ -30,10 +36,15 @@
services.displayManager.defaultSession = lib.mkForce "qtile";
environment.systemPackages = [ pkgs.kitty ];
environment.systemPackages = [
pkgs.kitty
pkgs.xorg.xwininfo
];
};
testScript = ''
from pathlib import Path
with subtest("ensure x starts"):
machine.wait_for_x()
machine.wait_for_file("/home/alice/.Xauthority")
@@ -42,11 +53,16 @@
with subtest("ensure client is available"):
machine.succeed("qtile --version")
with subtest("Qtile signals that it is ready"):
qtile_logfile = Path("/home/alice/.local/share/qtile/qtile.log")
machine.succeed(f"mkdir -p {qtile_logfile.parent}")
machine.succeed(f"touch {qtile_logfile}")
machine.succeed(f"sh -c 'tail -f {qtile_logfile} | grep --line-buffered \'ready\' -m 1'")
with subtest("ensure we can open a new terminal"):
machine.sleep(2)
machine.send_key("meta_l-ret")
machine.wait_for_window(r"alice.*?machine")
machine.sleep(2)
machine.screenshot("terminal")
'';
}
+2 -11
View File
@@ -28,24 +28,15 @@ assert withQt -> wrapQtAppsHook != null;
stdenv.mkDerivation (finalAttrs: {
pname = "carla";
version = "2.5.9";
version = "2.5.10";
src = fetchFromGitHub {
owner = "falkTX";
repo = "carla";
rev = "v${finalAttrs.version}";
hash = "sha256-FM/6TtNhDml1V9C5VisjLcZ3CzXsuwCZrsoz4yP3kI8=";
hash = "sha256-21QaFCIjGjRTcJtf2nwC5RcVJF8JgcFPIbS8apvf9tw=";
};
patches = [
(fetchpatch2 {
# https://github.com/falkTX/Carla/pull/1933
name = "prefer-pyliblo3-over-pyliblo.patch";
url = "https://github.com/falkTX/Carla/commit/a81a2a545d2529233a6e0faa776fbd2d851442fb.patch?full_index=1";
hash = "sha256-CHK3Aq/W9PdfMGsJunLN/WAxOmWJHc0jr/3TdEaIcMM=";
})
];
nativeBuildInputs = [
python3Packages.wrapPython
pkg-config
@@ -1501,8 +1501,8 @@ let
# semver scheme, contrary to preview versions which are listed on
# the VSCode Marketplace and use a calver scheme. We should avoid
# using preview versions, because they expire after two weeks.
version = "17.3.2";
hash = "sha256-z93AKGwgW5ySgb+5iCEXb/N9sWu3S3aS6PqKt8LXZjY=";
version = "17.3.3";
hash = "sha256-o16wFKcH/sYluRWXSTulZ9K7D/ECUXa3w6DeikVQe5w=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/eamodio.gitlens/changelog";
@@ -2203,8 +2203,8 @@ let
mktplcRef = {
publisher = "haskell";
name = "haskell";
version = "2.6.0";
hash = "sha256-2lvG7yZ+QAoafwyWQkVwyl2MsP8zWWQkTw8hBtib+C0=";
version = "2.6.1";
hash = "sha256-44pQBHz8e1dCqZaa5+GhPr0/SUsHlaqdNMPZklKdY+Q=";
};
meta = {
license = lib.licenses.mit;
@@ -3735,8 +3735,8 @@ let
mktplcRef = {
name = "ocaml-platform";
publisher = "ocamllabs";
version = "1.30.1";
hash = "sha256-N6GPqUKMW5VC2oxKvRQWQjKtcIlvvf7M00nj8O6e4xw=";
version = "1.32.0";
hash = "sha256-tLGHAEvKy+83PcF35zMABV7HtdXZGwCBdhMB+EG1El0=";
};
};
@@ -4614,8 +4614,8 @@ let
mktplcRef = {
name = "tabnine-vscode";
publisher = "tabnine";
version = "3.297.0";
hash = "sha256-K5XRBefGWG3BGyBCK0QIpZ6Jjm+qNjVEyMucCGs+LKs=";
version = "3.298.0";
hash = "sha256-zzsoVOiSgA5W88YuWVHILdHN/PuWaQAXjZ0eUL9B9ZI=";
};
meta = {
license = lib.licenses.mit;
@@ -5573,8 +5573,8 @@ let
mktplcRef = {
name = "vscode-zig";
publisher = "ziglang";
version = "0.6.11";
hash = "sha256-yJrU47C/cJKmVcPoI1ibsBAiA0zSyP0AE6p87DUl28M=";
version = "0.6.12";
hash = "sha256-7oZWKk7qqG9maGcjurpsbD1frIH/g+KKe4F2BXmqTeo=";
};
meta = {
changelog = "https://marketplace.visualstudio.com/items/ziglang.vscode-zig/changelog";
@@ -8,8 +8,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "basedpyright";
publisher = "detachhead";
version = "1.31.0";
hash = "sha256-ZwVtvjzrAlScj/dcYEG4XVi7dcRI/Lny052pFXbVmHc=";
version = "1.31.1";
hash = "sha256-MlkLoM1415KYCKlwfV67HLLvmF7PRtdyQrPgeNm2nyM=";
};
meta = {
changelog = "https://github.com/detachhead/basedpyright/releases";
@@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "fbneo";
version = "0-unstable-2025-07-24";
version = "0-unstable-2025-08-01";
src = fetchFromGitHub {
owner = "libretro";
repo = "fbneo";
rev = "ae41c16e10a1996e71ac7dd9a5484b725b8d1a51";
hash = "sha256-mBlk4tjMd67dOw/+oYC0ly7u2Soqva4MxiODGXPjBrM=";
rev = "e90b821fc0507a6bdde3596ec32b7b59feae1d1a";
hash = "sha256-DbY+bQ4vNj4q2Q/tmEZXngdlUHqfZXTl16m14VG5gYY=";
};
makefile = "Makefile";
@@ -9,13 +9,13 @@
}:
mkLibretroCore {
core = "mame";
version = "0-unstable-2025-07-12";
version = "0-unstable-2025-08-03";
src = fetchFromGitHub {
owner = "libretro";
repo = "mame";
rev = "d6423328d57857c05ef3513999fe4ff4917db197";
hash = "sha256-aKPyLszralaS6vIKv2RjJrVOJMIVXDx6W6cRAI6o2EM=";
rev = "9c05f5b1ed748394cc8ef83a77873c6c9ab9a6a5";
hash = "sha256-b/Qwto3draMZOD7a6IHxQwQmaKf11v/r/sOS2oCrGVg=";
fetchSubmodules = true;
};
@@ -6,13 +6,13 @@
}:
mkLibretroCore {
core = "vice-${type}";
version = "0-unstable-2025-07-19";
version = "0-unstable-2025-07-30";
src = fetchFromGitHub {
owner = "libretro";
repo = "vice-libretro";
rev = "d545628dfacc90c4124381f254c693ec92f6cb7e";
hash = "sha256-l3FLtD+MBP8hCikHlbNsoYt+8ASb2zW+K52/nRIpfCs=";
rev = "e9f8ac034ddef3025f0567768f7af8219f7cfdb8";
hash = "sha256-Rut9NyBF0yPFDYtFKzvSESaZL6CFhfcw6OFIHMeuzHk=";
};
makefile = "Makefile";
@@ -480,11 +480,11 @@
"vendorHash": "sha256-ZbU2z7qUHPR7vDSflesSjgK7x3LYXVe/gnVsy19q6Bs="
},
"fortios": {
"hash": "sha256-N1GJNlvoy9TfI7S7TTnQyQkBdKz94cRT2Xza+gb7etw=",
"hash": "sha256-vQ5PYY2EJb7+O65YbyqmIPKiqsd9UysnZXYGzZvkTPQ=",
"homepage": "https://registry.terraform.io/providers/fortinetdev/fortios",
"owner": "fortinetdev",
"repo": "terraform-provider-fortios",
"rev": "1.22.0",
"rev": "1.22.1",
"spdx": "MPL-2.0",
"vendorHash": "sha256-9BBBmuj7rEX5h3LEZzw7C7AtwvJgo7yEGReQ38lfE6U="
},
@@ -660,13 +660,13 @@
"vendorHash": null
},
"ibm": {
"hash": "sha256-cZ7j/bhXxhTIU7J9XB4M4N3zteRKybmOIEeVw9XM62o=",
"hash": "sha256-541obBfBV/odhFvJISxeBtBmaLGoUB7rYymA0U7rhpY=",
"homepage": "https://registry.terraform.io/providers/IBM-Cloud/ibm",
"owner": "IBM-Cloud",
"repo": "terraform-provider-ibm",
"rev": "v1.80.4",
"rev": "v1.81.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-lxd5op9QETBR7Q8ndgvYyYBy9URu16+DmtnFydpy3EA="
"vendorHash": "sha256-cWfISNNeVPb6BU2V3sLbvlnFKzf3fVniV5Lu1Kpb9f0="
},
"icinga2": {
"hash": "sha256-Y/Oq0aTzP+oSKPhHiHY9Leal4HJJm7TNDpcdqkUsCmk=",
@@ -931,11 +931,11 @@
"vendorHash": "sha256-LRIfxQGwG988HE5fftGl6JmBG7tTknvmgpm4Fu1NbWI="
},
"oci": {
"hash": "sha256-xdVHJWEvap6Bp/r5hz/113kJF6SexsCROFkQgRTJgYA=",
"hash": "sha256-bfe55ApaalhJpQtkl8YD9k5U7uyuqMuzOcM/ksBRglw=",
"homepage": "https://registry.terraform.io/providers/oracle/oci",
"owner": "oracle",
"repo": "terraform-provider-oci",
"rev": "v7.11.0",
"rev": "v7.12.0",
"spdx": "MPL-2.0",
"vendorHash": null
},
@@ -42,14 +42,14 @@
stdenv.mkDerivation (finalAttrs: {
pname = "telegram-desktop-unwrapped";
version = "5.16.4";
version = "6.0.2";
src = fetchFromGitHub {
owner = "telegramdesktop";
repo = "tdesktop";
rev = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-yU2Ai2JgxDlaTK5GsL+yWkwtFbk14tPRAj1Rdt+gmmQ=";
hash = "sha256-l6i5ml4dCvJ5QJShK9jacJZlEujm1ObCFGa9VJ1y2zE=";
};
nativeBuildInputs = [
@@ -11,14 +11,14 @@
buildPythonApplication rec {
pname = "pass-git-helper";
version = "3.3.0";
version = "4.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "languitar";
repo = "pass-git-helper";
tag = "v${version}";
sha256 = "sha256-Y+Y/WcVY5XrxhLoixWwsi9TMkWsJ+jXbs1rZuzo3MFo=";
sha256 = "sha256-SAMndgcxBa7wymXbOwRGcoogFfzpFFIZ0tF4NSCXpjw=";
};
build-system = [ setuptools ];
+13 -1
View File
@@ -192,6 +192,18 @@ let
}
else
throw "fetchurl requires a hash for fixed-output derivation: ${lib.generators.toPretty urls_}";
resolvedUrl =
let
mirrorSplit = lib.match "mirror://([[:alpha:]]+)/(.+)" url;
mirrorName = lib.head mirrorSplit;
mirrorList =
if lib.hasAttr mirrorName mirrors then
mirrors."${mirrorName}"
else
throw "unknown mirror:// site ${mirrorName}";
in
if mirrorName == null then url else "${lib.head mirrorList}${lib.elemAt mirrorSplit 1}";
in
assert
@@ -279,7 +291,7 @@ stdenvNoCC.mkDerivation (
inherit meta;
passthru = {
inherit url;
inherit url resolvedUrl;
}
// passthru;
}
+2 -13
View File
@@ -2,7 +2,6 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
telegram-desktop,
alsa-lib,
jemalloc,
@@ -16,26 +15,16 @@ telegram-desktop.override {
inherit withWebkit;
unwrapped = telegram-desktop.unwrapped.overrideAttrs (old: rec {
pname = "64gram-unwrapped";
version = "1.1.58";
version = "1.1.77";
src = fetchFromGitHub {
owner = "TDesktop-x64";
repo = "tdesktop";
tag = "v${version}";
hash = "sha256-RHybrvm5p8BUt5StT/NuR76f2y1CCICirTMjdeRLtkY=";
hash = "sha256-qpL/OCcFi9WRfFhfDLbaHzybTBG5WmcV1I+jsFJISYM=";
fetchSubmodules = true;
};
patches = [
(fetchpatch {
# https://github.com/desktop-app/lib_base/pull/268
url = "https://github.com/desktop-app/lib_base/commit/c952da37294b958e896b27528e7834f0892faa0a.patch";
extraPrefix = "Telegram/lib_base/";
stripLen = 1;
hash = "sha256-xiq8WLAiSZwpvdyK5JbRAdQ9us93+9oMmeMBqVb1TbI=";
})
];
buildInputs = (old.buildInputs or [ ]) ++ [
alsa-lib
jemalloc
+2 -2
View File
@@ -6,12 +6,12 @@
python3Packages.buildPythonApplication rec {
pname = "alibuild";
version = "1.17.21";
version = "1.17.26";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-bUZJs1FnKbPCQYCURynN2L/6qu1w80aMxnWL4oYEJgI=";
hash = "sha256-Adiz+vIquMXWgwGSGwuQlVHiMaQhJiNAoAq5K8Ra4bc=";
};
build-system = with python3Packages; [
+2 -2
View File
@@ -8,11 +8,11 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "alt-tab-macos";
version = "7.25.0";
version = "7.26.0";
src = fetchurl {
url = "https://github.com/lwouis/alt-tab-macos/releases/download/v${finalAttrs.version}/AltTab-${finalAttrs.version}.zip";
hash = "sha256-e13en0fQHO0i49gP1zU6ms9TDMAwo1qsubsTi/DdIUo=";
hash = "sha256-tDy+GFZw9hD2kelPOJioRvcmbPZ9bQu+IRDBEOamsJs=";
};
sourceRoot = ".";
@@ -0,0 +1,16 @@
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
index 0c04c9036..1f32ec562 100644
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -1992,6 +1992,11 @@ config("tot_warnings") {
"-Wno-character-conversion",
]
}
+
+ cflags += [
+ # TODO(crbug.com/432275627): Fix and re-enable.
+ "-Wno-uninitialized-const-pointer"
+ ]
}
# default_warnings ------------------------------------------------------------
+522
View File
@@ -0,0 +1,522 @@
{
"src/build": {
"args": {
"hash": "sha256-dF/oqsbgJ+rqu+4G5s5/h77tByKaejj0DD+Yj3HG9r0=",
"rev": "169fcf699b64d2d5e75a391beaec8a7ad6e41a7f",
"url": "https://chromium.googlesource.com/chromium/src/build.git"
},
"fetcher": "fetchFromGitiles"
},
"src/buildtools": {
"args": {
"hash": "sha256-Oc3PLsNSY5feY+qGZgXWv6GlW07tk3S64xwkErueY6Y=",
"rev": "5b7491dfe58d387aaf1391749afdfbaa19dcbb89",
"url": "https://chromium.googlesource.com/chromium/src/buildtools.git"
},
"fetcher": "fetchFromGitiles"
},
"src": {
"args": {
"hash": "sha256-2KV5vzBbn27PfxwtVCLgoEdxGrd3GiDiiqffWGv16MM=",
"rev": "7ab02e1d49a649adaba62b8a7fdfabf8144b313f",
"url": "https://chromium.googlesource.com/angle/angle"
},
"fetcher": "fetchFromGitiles"
},
"src/testing": {
"args": {
"hash": "sha256-q2eSRf9vO+MoQorl4ybMKcFLiE6qCklmO+63jdr1TV0=",
"rev": "0d5210a4b1978e7e2c6b8623c719dff0a0994a8f",
"url": "https://chromium.googlesource.com/chromium/src/testing"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/EGL-Registry/src": {
"args": {
"hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
"rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/OpenCL-CTS/src": {
"args": {
"hash": "sha256-/YmLOW0kcLWaJcUnX+x//R8pgy05YihZykkhKnbp25o=",
"rev": "e0a31a03fc8f816d59fd8b3051ac6a61d3fa50c6",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenCL-CTS"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/OpenCL-Docs/src": {
"args": {
"hash": "sha256-RnukrtXh8mAbskzNx99OjDzcFfQHl+Lq2OmPEZlu1Vo=",
"rev": "774114e8761920b976d538d47fad8178d05984ec",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenCL-Docs"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/OpenCL-ICD-Loader/src": {
"args": {
"hash": "sha256-JJgTD8fD3TNCIq16bfg+nTaVs17vKFNShCn6F4ermCA=",
"rev": "9b5e3849b49a1448996c8b96ba086cd774d987db",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenCL-ICD-Loader"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/OpenGL-Registry/src": {
"args": {
"hash": "sha256-RdGIm0thB10DvyFYnYgTkUU8LgTLPfIgyfEgua4FJYE=",
"rev": "200cea4030cb49d3e40677379e6368a5f0e8c27b",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/Python-Markdown": {
"args": {
"hash": "sha256-qvtPcNJ0Pz1oCqZqrdm/TCQ+QBwDZjuWWvEGftXAPW8=",
"rev": "0f4473546172a64636f5d841410c564c0edad625",
"url": "https://chromium.googlesource.com/chromium/src/third_party/Python-Markdown"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/SwiftShader": {
"args": {
"hash": "sha256-kfY/I2V3t52wWrT8CU9TK3EhZP/Cw5sd/wF9dMGpHBI=",
"rev": "0ce9bc68d3fc995f76dcab4771c26471100ce759",
"url": "https://swiftshader.googlesource.com/SwiftShader"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/VK-GL-CTS/src": {
"args": {
"hash": "sha256-fl3yXkdi1KqrrmHB9k+l/eaINuFHgruUL6MB/9QXvhE=",
"rev": "4c617fa74b67a177c7bde5f48c73f5a5509121ed",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/abseil-cpp": {
"args": {
"hash": "sha256-0ztP0QhEnChkGOXbSP3T4epbzzf/T6POfohe58sFTwE=",
"rev": "e3d58ba1a2a04f85225c3c04fa4603bb64399b2c",
"url": "https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/astc-encoder/src": {
"args": {
"hash": "sha256-rCyi5Nla2IXsLD+rLMTN1h3B9umlNN0epZmPi/IFHPQ=",
"rev": "2319d9c4d4af53a7fc7c52985e264ce6e8a02a9b",
"url": "https://chromium.googlesource.com/external/github.com/ARM-software/astc-encoder"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/catapult": {
"args": {
"hash": "sha256-GlcGCmcQrA/YawQDFs8QB4GKZIPyBNiSgwm45LFg+go=",
"rev": "a03b70978cc52840b549947f0fb165f03764c700",
"url": "https://chromium.googlesource.com/catapult.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/cherry": {
"args": {
"hash": "sha256-x41m6HooD57wTDne58/sRK5QJvvOYfRWgdrwuw9tQyM=",
"rev": "4f8fb08d33ca5ff05a1c638f04c85bbb8d8b52cc",
"url": "https://android.googlesource.com/platform/external/cherry"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/clang-format/script": {
"args": {
"hash": "sha256-d9uweklBffiuCWEb03ti1eFLnMac2qRtvggzXY1n/RU=",
"rev": "37f6e68a107df43b7d7e044fd36a13cbae3413f2",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/clang/tools/clang-format.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/clspv/src": {
"args": {
"hash": "sha256-OYD/74HVwg5o910luPVB0Benj1nNZ1eGXijoqHy/OH8=",
"rev": "60f822e8123ca414dddc0e0f944440c99cb3c04d",
"url": "https://chromium.googlesource.com/external/github.com/google/clspv"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/dawn": {
"args": {
"hash": "sha256-Xc86K5H4kNe9vtqQAW6y/iBGgdrK9qxT1Z8/gGkSEvQ=",
"rev": "7a8946456d4957dedd0137278f2198e02066b319",
"url": "https://dawn.googlesource.com/dawn.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/dawn/third_party/dxc": {
"args": {
"hash": "sha256-sUSQTOi0EuIHX9h27RXb5HnbcdfkG/U1K6EbBdjSto8=",
"rev": "0a1143572d107c8b6980df092b84a79190ec1fbd",
"url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectXShaderCompiler"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/dawn/third_party/dxheaders": {
"args": {
"hash": "sha256-0Miw1Cy/jmOo7bLFBOHuTRDV04cSeyvUEyPkpVsX9DA=",
"rev": "980971e835876dc0cde415e8f9bc646e64667bf7",
"url": "https://chromium.googlesource.com/external/github.com/microsoft/DirectX-Headers"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/dawn/third_party/glfw": {
"args": {
"hash": "sha256-E1zXIDiw87badrLOZTvV+Wh9NZHu51nb70ZK9vlAlqE=",
"rev": "b35641f4a3c62aa86a0b3c983d163bc0fe36026d",
"url": "https://chromium.googlesource.com/external/github.com/glfw/glfw"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/dawn/third_party/khronos/EGL-Registry": {
"args": {
"hash": "sha256-Z6DwLfgQ1wsJXz0KKJyVieOatnDmx3cs0qJ6IEgSq1A=",
"rev": "7dea2ed79187cd13f76183c4b9100159b9e3e071",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/EGL-Registry"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/dawn/third_party/khronos/OpenGL-Registry": {
"args": {
"hash": "sha256-K3PcRIiD3AmnbiSm5TwaLs4Gu9hxaN8Y91WMKK8pOXE=",
"rev": "5bae8738b23d06968e7c3a41308568120943ae77",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/depot_tools": {
"args": {
"hash": "sha256-GcBMHMvjSpKPoE8RK5xatfWT5BWPkFFUEkZpSeAcqWA=",
"rev": "8f878438075a8d5d76f57bd10ab866d58d706319",
"url": "https://chromium.googlesource.com/chromium/tools/depot_tools.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/glmark2/src": {
"args": {
"hash": "sha256-VebUALLFKwEa4+oE+jF8mBSzhJd6aflphPmcK1Em8bw=",
"rev": "6edcf02205fd1e8979dc3f3964257a81959b80c8",
"url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/glslang/src": {
"args": {
"hash": "sha256-kfboAzNtplxcedYVt2F10Iqfp404amk/JkFt76gtuk0=",
"rev": "21b4e37133868b3a50ef15fc027ecd6d3a52c875",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/googletest": {
"args": {
"hash": "sha256-88lAwz2c3HgFdO1tmPrp/StXfSSAZnvUAUgaTcwdFQA=",
"rev": "17bbed2084d3127bd7bcd27283f18d7a5861bea8",
"url": "https://chromium.googlesource.com/chromium/src/third_party/googletest"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/googletest/src": {
"args": {
"hash": "sha256-VuOfUPwl3QHtxjGfWq2tjObutncRoOjEJoY1ET+4pNI=",
"rev": "2d924d7a971e9667d76ad09727fb2402b4f8a1e3",
"url": "https://chromium.googlesource.com/external/github.com/google/googletest.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/jinja2": {
"args": {
"hash": "sha256-RhNDCE9d9ik/YNF0CSrSoBvpeGi04y3ChIY2c66lJpo=",
"rev": "c3027d884967773057bf74b957e3fea87e5df4d7",
"url": "https://chromium.googlesource.com/chromium/src/third_party/jinja2"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/jsoncpp": {
"args": {
"hash": "sha256-QdWSlzvgtOkr2dRRhkDz64InkDsVOXx43q9ABzrdFMo=",
"rev": "f62d44704b4da6014aa231cfc116e7fd29617d2a",
"url": "https://chromium.googlesource.com/chromium/src/third_party/jsoncpp"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/jsoncpp/source": {
"args": {
"hash": "sha256-bSLNcoYBz3QCt5VuTR056V9mU2PmBuYBa0W6hFg2m8Q=",
"rev": "42e892d96e47b1f6e29844cc705e148ec4856448",
"url": "https://chromium.googlesource.com/external/github.com/open-source-parsers/jsoncpp.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libc++/src": {
"args": {
"hash": "sha256-WbEMS4wowBw1j7UT/5G5DSmgy5ldmdjxMszYtobr9UI=",
"rev": "2c359c239b138a20a03f798e47889448ef131c22",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libc++abi/src": {
"args": {
"hash": "sha256-WIJAAHO+n6C5N7nyw8m8xGXr/OXvRGfsScBBdUyjxyg=",
"rev": "e44c3c4560f1742744ef3f9fb4217a5f26ebca1b",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libdrm/src": {
"args": {
"hash": "sha256-woSYEDUfcEBpYOYnli13wLMt754A7KnUbmTEcFQdFGw=",
"rev": "ad78bb591d02162d3b90890aa4d0a238b2a37cde",
"url": "https://chromium.googlesource.com/chromiumos/third_party/libdrm.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libjpeg_turbo": {
"args": {
"hash": "sha256-Ig+tmprZDvlf/M72/DTar2pbxat9ZElgSqdXdoM0lPs=",
"rev": "e14cbfaa85529d47f9f55b0f104a579c1061f9ad",
"url": "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libpng/src": {
"args": {
"hash": "sha256-ATde609XPHqSrT3www6M+pA1qd69hVhhW6wSMCIrJnM=",
"rev": "8cc222cd3e79fa5190f3aa039a03a4cbea6cfbe7",
"url": "https://android.googlesource.com/platform/external/libpng"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/libunwind/src": {
"args": {
"hash": "sha256-hpOxKXZkZEWNptp31B1DZ8V9E7LsRbbYdPdUD7EYA+8=",
"rev": "5bbf35ae6801f579c523893176789774c0726e22",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/llvm-libc/src": {
"args": {
"hash": "sha256-tZDU/6mtjT8ZVIzahA4q9fqs5a2IYAGw/m9jO99tDcI=",
"rev": "3dc83eebbdc6adf43831985d410fb451d385a5b1",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/llvm/src": {
"args": {
"hash": "sha256-Oc8TvPj4hRrA7Dj8s7qx2bscLeKxZ8wpWtFfB9C6XF4=",
"rev": "1fd8d3fea53e6e4573cdce55bd38ef0a7813a442",
"url": "https://chromium.googlesource.com/external/github.com/llvm/llvm-project"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/lunarg-vulkantools/src": {
"args": {
"hash": "sha256-eYqBAet7SnTjouzEkJNr/eaMg+PxRAz9arZpAyeItM0=",
"rev": "da60ac4327af194dfa773a07db6cd5d5aaa6848d",
"url": "https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/markupsafe": {
"args": {
"hash": "sha256-mYsC/xZHpAbP/US2VRAfCYm0JeJ03is38S9s2KuA9PI=",
"rev": "4256084ae14175d38a3ff7d739dca83ae49ccec6",
"url": "https://chromium.googlesource.com/chromium/src/third_party/markupsafe"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/nasm": {
"args": {
"hash": "sha256-TxzAcp+CoKnnM0lCGjm+L3h6M30vYHjM07vW6zUe/vY=",
"rev": "e2c93c34982b286b27ce8b56dd7159e0b90869a2",
"url": "https://chromium.googlesource.com/chromium/deps/nasm.git"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/protobuf": {
"args": {
"hash": "sha256-JZU7ZqE8eE2M1urS4H6HM/jwEmjqp0XLEqPmbzE7dO4=",
"rev": "e0f7527112a9310b608afa49affe72e810697dce",
"url": "https://chromium.googlesource.com/chromium/src/third_party/protobuf"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/rapidjson/src": {
"args": {
"hash": "sha256-btUl1a/B0sXwf/+hyvCvVJjWqIkXfVYCpHm3TeBuOxk=",
"rev": "781a4e667d84aeedbeb8184b7b62425ea66ec59f",
"url": "https://chromium.googlesource.com/external/github.com/Tencent/rapidjson"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/rust": {
"args": {
"hash": "sha256-VXXPaj8XiSKbGa7eU5daq1AvwfjN7hhbpnHx/WL8OZk=",
"rev": "274de19b1d9b411b98b81672d1e300c86aaa2601",
"url": "https://chromium.googlesource.com/chromium/src/third_party/rust"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/spirv-cross/src": {
"args": {
"hash": "sha256-H43M9DXfEuyKuvo6rjb5k0KEbYOSFodbPJh8ZKY4PQg=",
"rev": "b8fcf307f1f347089e3c46eb4451d27f32ebc8d3",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/spirv-headers/src": {
"args": {
"hash": "sha256-LRjMy9xtOErbJbMh+g2IKXfmo/hWpegZM72F8E122oY=",
"rev": "2a611a970fdbc41ac2e3e328802aed9985352dca",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/spirv-tools/src": {
"args": {
"hash": "sha256-EPD+1RX4lCulEua4WfLTIqlDGCnxDRnRcH2a+pSI6mk=",
"rev": "108b19e5c6979f496deffad4acbe354237afa7d3",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan-deps": {
"args": {
"hash": "sha256-hXZs4L+XaHog/CyjX5WYP+2dl9WL3e/A8ql4xWEtwtI=",
"rev": "317a1e4780ef130e7b92fc287cf390ac2aff0c22",
"url": "https://chromium.googlesource.com/vulkan-deps"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan-headers/src": {
"args": {
"hash": "sha256-OorBl9vIN4DqVgT8ae+05yCLon7m0ixQczEzDlpwFRI=",
"rev": "10739e8e00a7b6f74d22dd0a547f1406ff1f5eb9",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan-loader/src": {
"args": {
"hash": "sha256-j9LAqdwI3+D6CY6a6CcFK85Cd3xxdjnhLSycuqZDGN0=",
"rev": "c8a2c8c9164a58ce71c1c77104e28e8de724539e",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan-tools/src": {
"args": {
"hash": "sha256-EqLG8kMQx6nHX9iZMrsu0fn1z4nY6TEQ/feTINNbUzQ=",
"rev": "e3fc64396755191b3c51e5c57d0454872e7fa487",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan-utility-libraries/src": {
"args": {
"hash": "sha256-pQJln43t4U1VXJ2mpdRoUhOKyBTH0QePIMOy5f/0GXU=",
"rev": "0f0babb553a60da5971d9f4d40cf720ce01602f1",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan-validation-layers/src": {
"args": {
"hash": "sha256-yGciJW5vKvxdybz5jDo7LSw9K0d+oKr7/Yg/fBRTd4A=",
"rev": "89c6a9b6500e2e0bda127113bbfe1d70f1ab2d20",
"url": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/vulkan_memory_allocator": {
"args": {
"hash": "sha256-YzxHZagz/M8Y54UnI4h1wu5jSTuaOgv0ifC9d3fJZlQ=",
"rev": "56300b29fbfcc693ee6609ddad3fdd5b7a449a21",
"url": "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator"
},
"fetcher": "fetchFromGitiles"
},
"src/third_party/zlib": {
"args": {
"hash": "sha256-MEUIIrlH4gBebO58sPhPLbRX+BeXo1SelJqhZAQk+wQ=",
"rev": "4028ebf8710ee39d2286cb0f847f9b95c59f84d8",
"url": "https://chromium.googlesource.com/chromium/src/third_party/zlib"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/clang": {
"args": {
"hash": "sha256-3wLCPt0tqVVcojJWy7c1Z6a+b026kW6fha4Jg3ulScc=",
"rev": "ae0ff7090810342e6c7c378521bd78e79ed63bad",
"url": "https://chromium.googlesource.com/chromium/src/tools/clang.git"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/mb": {
"args": {
"hash": "sha256-/hBZV38mn6/lj28AsJ0/SzcgaTJGH5IxoNXtJ8XhQVE=",
"rev": "1c0b50128bb1eee3d40731733ecae62f0e3ee40a",
"url": "https://chromium.googlesource.com/chromium/src/tools/mb"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/md_browser": {
"args": {
"hash": "sha256-QJC7tI2CHE1Y9F42dgblPirUhS69s2P6qULrfDm2f7M=",
"rev": "6cc8e58a83412dc31de6fb7614fadb0b51748d4b",
"url": "https://chromium.googlesource.com/chromium/src/tools/md_browser"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/memory": {
"args": {
"hash": "sha256-i5VVlfkKvymItH5S0d4eER+I6A4omMk3XrDNoGwnzmo=",
"rev": "cc38b4b04fbf942926366f420c43afb9e9ab364b",
"url": "https://chromium.googlesource.com/chromium/src/tools/memory"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/perf": {
"args": {
"hash": "sha256-4qQcqlY1QcNk+wSL7on9Lc8101txQv3Usanprw/oVv4=",
"rev": "bd0baf9e31a384c4ff99b8911be4c07772ad513c",
"url": "https://chromium.googlesource.com/chromium/src/tools/perf"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/protoc_wrapper": {
"args": {
"hash": "sha256-f8lpjbB7VnQQcDBSzxFbOroYjxprX+fU6fpl2Z3B3l8=",
"rev": "502dcad5230ec1da544e7720b15d91782f040d9f",
"url": "https://chromium.googlesource.com/chromium/src/tools/protoc_wrapper"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/rust": {
"args": {
"hash": "sha256-ejYbEIlLpgdRedFVmZ9K8x3B//23BATw6w/n68mGBaI=",
"rev": "6c0ba3465b64d460de7426b707dcc73939a2226f",
"url": "https://chromium.googlesource.com/chromium/src/tools/rust.git"
},
"fetcher": "fetchFromGitiles"
},
"src/tools/valgrind": {
"args": {
"hash": "sha256-EBcH7f6lRPBYKX9NeaLShWPL1eeJhBDxJkR61OrFydU=",
"rev": "5ba62550b2f3d4d97974ebcdb4f8462e4ba14af2",
"url": "https://chromium.googlesource.com/chromium/src/tools/valgrind"
},
"fetcher": "fetchFromGitiles"
}
}
+159
View File
@@ -0,0 +1,159 @@
{
stdenv,
gn,
ninja,
llvmPackages_21,
gclient2nix,
pkg-config,
glib,
python3,
symlinkJoin,
lib,
xorg,
wayland,
pciutils,
libGL,
}:
let
llvmPackages = llvmPackages_21;
llvmMajorVersion = lib.versions.major llvmPackages.llvm.version;
arch = stdenv.hostPlatform.parsed.cpu.name;
triplet = lib.getAttr arch {
"x86_64" = "x86_64-unknown-linux-gnu";
"aarch64" = "aarch64-unknown-linux-gnu";
};
clang = symlinkJoin {
name = "angle-clang-llvm-join";
paths = [
llvmPackages.llvm
llvmPackages.clang
];
postBuild = ''
mkdir -p $out/lib/clang/${llvmMajorVersion}/lib/
ln -s $out/resource-root/lib/linux \
$out/lib/clang/${llvmMajorVersion}/lib/${triplet}
'';
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "angle";
version = "7258";
gclientDeps = gclient2nix.importGclientDeps ./info.json;
sourceRoot = "src";
strictDeps = true;
nativeBuildInputs = [
gn
ninja
gclient2nix.gclientUnpackHook
pkg-config
python3
llvmPackages.bintools
];
buildInputs = [
glib
xorg.libxcb.dev
xorg.libX11.dev
xorg.libXext.dev
xorg.libXi
wayland.dev
pciutils
libGL
];
gnFlags = [
"is_debug=false"
"use_sysroot=false"
"clang_base_path=\"${clang}\""
"angle_build_tests=false"
"concurrent_links=1"
"use_custom_libcxx=true"
"angle_enable_swiftshader=false"
"angle_enable_wgpu=false"
];
patches = [
# https://issues.chromium.org/issues/432275627
# https://chromium-review.googlesource.com/c/chromium/src/+/6761936/2/build/config/compiler/BUILD.gn
./fix-uninitialized-const-pointer-error-001.patch
];
postPatch = ''
substituteInPlace build/config/clang/BUILD.gn \
--replace-fail \
"_dir = \"${triplet}\"" \
"_dir = \"${triplet}\"
_suffix = \"-${arch}\""
cat > build/config/gclient_args.gni <<EOF
# Generated from 'DEPS'
checkout_angle_internal = false
checkout_angle_mesa = false
checkout_angle_restricted_traces = false
generate_location_tags = false
EOF
'';
installPhase = ''
runHook preInstallPhase
install -v -m755 -D *.so *.so.1 -t "$out/lib"
install -v -m755 -D \
angle_shader_translator \
gaussian_distribution_gentables \
-t "$out/bin"
cp -rv ../../include "$out"
mkdir -p $out/lib/pkgconfig
cat > $out/lib/pkgconfig/angle.pc <<EOF
prefix=${placeholder "out"}
exec_prefix=''${prefix}
libdir=''${prefix}/lib
includedir=''${prefix}/include
Name: angle
Description: ${finalAttrs.meta.description}
URL: ${finalAttrs.meta.homepage}
Version: ${lib.versions.major finalAttrs.version}
Libs: -L''${libdir} -l${
lib.concatStringsSep " -l" [
"EGL"
"EGL_vulkan_secondaries"
"GLESv1_CM"
"GLESv2"
"GLESv2_vulkan_secondaries"
"GLESv2_with_capture"
"VkICD_mock_icd"
"feature_support"
]
}
Cflags: -I''${includedir}
EOF
runHook postInstallPhase
'';
meta = {
description = "Conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android";
longDescription = ''
The goal of ANGLE is to allow users of multiple operating systems
to seamlessly run WebGL and other OpenGL ES content by translating
OpenGL ES API calls to one of the hardware-supported APIs available
for that platform.
'';
homepage = "https://angleproject.org";
maintainers = with lib.maintainers; [
jess
jk
];
license = lib.licenses.bsd3;
platforms = lib.platforms.linux ++ lib.platforms.darwin;
broken = stdenv.hostPlatform.isDarwin;
};
})
@@ -1,21 +1,12 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
click,
semantic-version,
requests,
colorama,
pyserial,
wheel,
scons,
setuptools,
tinyprog,
flit-core,
pytestCheckHook,
scons,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "apio";
version = "0.9.5";
@@ -24,7 +15,7 @@ buildPythonApplication rec {
src = fetchFromGitHub {
owner = "FPGAwars";
repo = "apio";
rev = "v${version}";
tag = "v${version}";
hash = "sha256-VU4tOszGkw20DWW2SerFsnjFiSkrSwqBcwosGnHJfU8=";
};
@@ -50,24 +41,30 @@ buildPythonApplication rec {
'version = semantic_version.Version(pkg_version.replace(".dev", "-dev"))'
'';
nativeBuildInputs = [
nativeBuildInputs = with python3Packages; [
flit-core
];
propagatedBuildInputs = [
click
semantic-version
requests
colorama
pyserial
wheel
scons
setuptools # needs pkg_resources at runtime (technically not needed when tinyprog is also in this list because of the propagatedBuildInputs of tinyprog)
dependencies =
with python3Packages;
[
click
semantic-version
requests
colorama
pyserial
wheel
]
++ [
scons
tinyprog # needed for upload to TinyFPGA
];
tinyprog # needed for upload to TinyFPGA
build-system = with python3Packages; [
setuptools # needs pkg_resources at runtime (technically not needed when tinyprog is also in this list because of the propagatedBuildInputs of tinyprog)
];
nativeCheckInputs = [
nativeCheckInputs = with python3Packages; [
pytestCheckHook
];
@@ -80,11 +77,11 @@ buildPythonApplication rec {
strictDeps = true;
meta = with lib; {
meta = {
description = "Open source ecosystem for open FPGA boards";
mainProgram = "apio";
homepage = "https://github.com/FPGAwars/apio";
license = licenses.gpl2Only;
maintainers = with maintainers; [ Luflosi ];
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ Luflosi ];
};
}
+3 -3
View File
@@ -11,13 +11,13 @@
buildGoModule (finalAttrs: {
pname = "apko";
version = "0.29.3";
version = "0.30.2";
src = fetchFromGitHub {
owner = "chainguard-dev";
repo = "apko";
tag = "v${finalAttrs.version}";
hash = "sha256-3BmWxHhpdkJ7Zyd+K+YS/u4cIiwPsNGaYNvb6ZrIaeQ=";
hash = "sha256-5d/92BrrKfDGtIVp3AAg0cfKooaJH9YtDgmO635gZc4=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
@@ -29,7 +29,7 @@ buildGoModule (finalAttrs: {
find "$out" -name .git -print0 | xargs -0 rm -rf
'';
};
vendorHash = "sha256-gN8lAmLJmoGQA0l62d4EPx2w2SbhUwbNYhIcyAamaqU=";
vendorHash = "sha256-jHvImL22IYaeYhhedN+C/AfJAFkCFN1UqKZOBsNhQnA=";
nativeBuildInputs = [ installShellFiles ];
+2 -2
View File
@@ -11,14 +11,14 @@
python3Packages.buildPythonApplication rec {
pname = "backblaze-b2";
version = "4.4.0";
version = "4.4.1";
pyproject = true;
src = fetchFromGitHub {
owner = "Backblaze";
repo = "B2_Command_Line_Tool";
tag = "v${version}";
hash = "sha256-SZQilulk+07Ua1n9EbalYyTo/3vxK3MILGkXVthLETw=";
hash = "sha256-j+HlwFB9wTL5XNO/IBwBY+z3Qke/6LmLIFr9ZrMPZuA=";
};
nativeBuildInputs = with python3Packages; [
+3 -3
View File
@@ -12,16 +12,16 @@
rustPlatform.buildRustPackage rec {
pname = "cyme";
version = "2.2.3";
version = "2.2.4";
src = fetchFromGitHub {
owner = "tuna-f1sh";
repo = "cyme";
rev = "v${version}";
hash = "sha256-Zbb9CEsDtig9Nc6FUFZSdsfU7l6XHQvQK8asZ7O/Weo=";
hash = "sha256-zwte2YzjEMW1wVti02tOa2IZMd2Z8amYUB9RHevx5bg=";
};
cargoHash = "sha256-HdlhsOctPxOanbPAIJnlUoY4QeIluVsJlPglFXHBpFY=";
cargoHash = "sha256-wOOcIkEgyR5Af78uMuCksalVH8VPFXptg232It/ilXE=";
nativeBuildInputs = [
pkg-config
+5 -3
View File
@@ -35,7 +35,7 @@ let
davinci = (
stdenv.mkDerivation rec {
pname = "davinci-resolve${lib.optionalString studioVariant "-studio"}";
version = "20.0";
version = "20.0.1";
nativeBuildInputs = [
(appimage-run.override { buildFHSEnv = buildFHSEnvChroot; })
@@ -57,9 +57,9 @@ let
outputHashAlgo = "sha256";
outputHash =
if studioVariant then
"sha256-q0jfP/DtroK7Dzj/BiB1JmYPihCma/OgcGmQOE/uwGY="
"sha256-20ZmxkniX4rbKqxxjqGJOCSeZt6i+HN72Vm8HtsONUg="
else
"sha256-JM/V449KUEXuQmRpyQC2z9DRmID7hJ3Mnt5N6p/HOXA=";
"sha256-ZbiQdsm0zoVe0Riw8K6ZBRKd+v73OdplS0Db7P1DE6E=";
impureEnvVars = lib.fetchers.proxyImpureEnvVars;
@@ -269,6 +269,8 @@ buildFHSEnv {
passthru = {
inherit davinci;
}
// lib.optionalAttrs (!studioVariant) {
updateScript = lib.getExe (writeShellApplication {
name = "update-davinci-resolve";
runtimeInputs = [
+2 -2
View File
@@ -106,12 +106,12 @@ in
# Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
python.pkgs.buildPythonApplication rec {
pname = "diffoscope";
version = "302";
version = "303";
pyproject = true;
src = fetchurl {
url = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
hash = "sha256-PngiG+nPaPrGHt+uTeH7R+MlKjPXFxfkFiDo6+pssTw=";
hash = "sha256-kalURmsdYl0HOnzAkJ6aGRvYcjnb8BeWimokmpqE+Ds=";
};
outputs = [
+3 -3
View File
@@ -8,16 +8,16 @@
buildNpmPackage rec {
pname = "dotenvx";
version = "1.45.2";
version = "1.48.3";
src = fetchFromGitHub {
owner = "dotenvx";
repo = "dotenvx";
tag = "v${version}";
hash = "sha256-43CfqPd3GzBAZ97IUSQuS96xOy34941wNcieKMoLZV4=";
hash = "sha256-5clMrH9r7CltZ2oEfDvyubFroOq/YVRaPkBfRnMyHNc=";
};
npmDepsHash = "sha256-bSOZWZ3CJl3tnjAFb7ozHmaBTOV9FS+t/+9DVoma4ag=";
npmDepsHash = "sha256-O8w5gyG2PDUSGuAcSQ4ccvkYhb9pQL5NjWXjSoXk6gQ=";
dontNpmBuild = true;
+3 -3
View File
@@ -9,14 +9,14 @@
rustPlatform.buildRustPackage rec {
pname = "dotslash";
version = "0.5.3";
version = "0.5.7";
src = fetchCrate {
inherit pname version;
hash = "sha256-csggbV5IyO9TlhN8S/E3LRfqqFJvj4cshByC6S7qpDk=";
hash = "sha256-VFesGum2xjknUuCwIojntdst5dmhvZb78ejJ2OG1FVI=";
};
cargoHash = "sha256-FyFrKaV5itdr0HtE5Ize21mwCwHRTzmIt+kmB972s9M=";
cargoHash = "sha256-+FWDeR4AcFSFz0gGQ8VMvX68/F0yEm25cNfHeedqsWE=";
doCheck = false; # http tests
passthru = {
+7 -4
View File
@@ -10,16 +10,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ferron";
version = "1.3.4";
version = "1.3.5";
src = fetchFromGitHub {
owner = "ferronweb";
repo = "ferron";
tag = finalAttrs.version;
hash = "sha256-kERR2wEKMjOIjcEYKzCyUFkEeOxDP4ypfs69kPWxQ9Y=";
hash = "sha256-bBIhLkh9UV2MJKovQaFk3cC1rYafiyxknRlKWVQ5gwY=";
};
cargoHash = "sha256-+UJ+wF/U2T315E1T1QhG1cCV3DJ/tIXZ8O09pyrXRIU=";
cargoHash = "sha256-xsJJglSq8hpWWi0zknPL03nle99GxznPI3HON2o8zco=";
nativeBuildInputs = [
pkg-config
@@ -48,7 +48,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
homepage = "https://github.com/ferronweb/ferron";
changelog = "https://github.com/ferronweb/ferron/releases/tag/${finalAttrs.version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ GaetanLepage ];
maintainers = with lib.maintainers; [
_0x4A6F
GaetanLepage
];
mainProgram = "ferron";
};
})
@@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "flood-for-transmission";
version = "2024-11-16T12-26-17";
version = "2025-07-19T10-51-22";
src = fetchFromGitHub {
owner = "johman10";
repo = "flood-for-transmission";
tag = version;
hash = "sha256-OED2Ypi1V+wwnJ5KFVRbJAyh/oTYs90E6uhSnSwJwJU=";
hash = "sha256-2oHEVvZZcxH9RBKreaiwFKp7Iu5ijYdpXdgVknCxwKw=";
};
npmDepsHash = "sha256-J3gRzvSXXyoS0OoLrTSV1vBSupFqky0Jt99nyz+hy1k=";
npmDepsHash = "sha256-IUdsUGsm6yAbXqf4UGkz1VPa366TnWsTakkbywbLeTU=";
strictDeps = true;
+1 -1
View File
@@ -87,7 +87,7 @@ class Repo:
{
**{
f"checkout_{platform}": platform == "linux"
for platform in ["ios", "chromeos", "android", "mac", "win", "linux"]
for platform in ["ios", "chromeos", "android", "mac", "win", "linux", "fuchsia"]
},
**{
f"checkout_{arch}": True
+2 -2
View File
@@ -23,14 +23,14 @@
python3Packages.buildPythonApplication rec {
pname = "gearlever";
version = "3.3.3";
version = "3.3.4";
pyproject = false; # Built with meson
src = fetchFromGitHub {
owner = "mijorus";
repo = "gearlever";
tag = version;
hash = "sha256-IAvUKxXXdHntsksShiWyGuLbKOX+dHsKYQE1UBypV4A=";
hash = "sha256-n7R4BiNxEy2uL6yg5h/L+l/EiQFTc5uND4ZVdERll08=";
};
postPatch =
+20 -12
View File
@@ -12,23 +12,21 @@
openssl,
pkg-config,
readline,
nix-update-script,
versionCheckHook,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "gftp";
version = "2.9.1b";
src = fetchFromGitHub {
owner = "masneyb";
repo = "gftp";
rev = version;
tag = finalAttrs.version;
hash = "sha256-0zdv2oYl24BXh61IGCWby/2CCkzNjLpDrAFc0J89Pw4=";
};
env.NIX_CFLAGS_COMPILE = toString [
"-Wno-incompatible-pointer-types" # https://github.com/masneyb/gftp/issues/178
];
nativeBuildInputs = [
autoconf
automake
@@ -45,18 +43,28 @@ stdenv.mkDerivation rec {
readline
];
# https://github.com/masneyb/gftp/issues/178
postPatch = ''
substituteInPlace lib/gftp.h \
--replace-fail "size_t remote_addr_len" "socklen_t remote_addr_len"
'';
preConfigure = ''
./autogen.sh
'';
hardeningDisable = [ "format" ];
meta = with lib; {
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
passthru.updateScript = nix-update-script { };
meta = {
homepage = "https://github.com/masneyb/gftp";
description = "GTK-based multithreaded FTP client for *nix-based machines";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ ];
platforms = platforms.unix;
license = lib.licenses.gpl2Plus;
maintainers = [ lib.maintainers.haylin ];
platforms = lib.platforms.unix;
};
}
# TODO: report the hardeningDisable to upstream
})
@@ -1,14 +1,11 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
git,
pytestCheckHook,
pytest-cov-stub,
pytest-mock,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "git-archive-all";
version = "1.23.1";
format = "setuptools";
@@ -16,7 +13,7 @@ buildPythonApplication rec {
src = fetchFromGitHub {
owner = "Kentzo";
repo = "git-archive-all";
rev = version;
tag = version;
hash = "sha256-fIPjggOx+CEorj1bazz8s81ZdppkTL0OlA5tRqCYZyc=";
};
@@ -40,7 +37,7 @@ buildPythonApplication rec {
git
];
checkInputs = [
checkInputs = with python3Packages; [
pytestCheckHook
pytest-cov-stub
pytest-mock
@@ -52,15 +49,15 @@ buildPythonApplication rec {
export HOME="$(mktemp -d)"
'';
meta = with lib; {
meta = {
description = "Archive a repository with all its submodules";
longDescription = ''
A python script wrapper for git-archive that archives a git superproject
and its submodules, if it has any. Takes into account .gitattributes
'';
homepage = "https://github.com/Kentzo/git-archive-all";
license = licenses.mit;
maintainers = with maintainers; [ fgaz ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fgaz ];
mainProgram = "git-archive-all";
};
}
@@ -1,11 +1,11 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchPypi,
installShellFiles,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "git-imerge";
version = "1.2.0";
format = "setuptools";
@@ -21,11 +21,11 @@ buildPythonApplication rec {
installShellCompletion --bash completions/git-imerge
'';
meta = with lib; {
meta = {
homepage = "https://github.com/mhagger/git-imerge";
description = "Perform a merge between two branches incrementally";
license = licenses.gpl2Plus;
maintainers = [ ];
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ ];
mainProgram = "git-imerge";
};
}
@@ -1,19 +1,19 @@
{
lib,
stdenv,
python,
python3,
perl,
fetchFromGitHub,
installShellFiles,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "git-publish";
version = "1.8.2";
src = fetchFromGitHub {
owner = "stefanha";
repo = "git-publish";
rev = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-jjpbr+ZqG4U8/z0PurnXR+IUKQkG3QB8YqhDkH8uu2Y=";
};
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
perl
installShellFiles
];
buildInputs = [ python ];
buildInputs = [ python3 ];
installPhase = ''
runHook preInstall
@@ -40,4 +40,4 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/stefanha/git-publish";
mainProgram = "git-publish";
};
}
})
@@ -1,24 +1,21 @@
{
lib,
buildPythonApplication,
hatchling,
colorama,
python3Packages,
fetchPypi,
gitpython,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "gitup";
version = "0.5.2";
pyproject = true;
src = fetchPypi {
inherit pname version;
sha256 = "sha256-51DWPJ9JOMrRdWGaiiL4qzo4VFFeT1rG5yyI6Ej+ZRw=";
hash = "sha256-51DWPJ9JOMrRdWGaiiL4qzo4VFFeT1rG5yyI6Ej+ZRw=";
};
build-system = [ hatchling ];
propagatedBuildInputs = [
build-system = with python3Packages; [ hatchling ];
dependencies = with python3Packages; [
colorama
gitpython
];
@@ -26,11 +23,11 @@ buildPythonApplication rec {
# no tests
doCheck = false;
meta = with lib; {
meta = {
description = "Easily update multiple Git repositories at once";
homepage = "https://github.com/earwig/git-repo-updater";
license = licenses.mit;
maintainers = with maintainers; [
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
bdesham
artturin
];
@@ -1,19 +1,16 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchgit,
pbr,
requests,
setuptools,
gitUpdater,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "git-review";
version = "2.5.0";
format = "setuptools";
# Manually set version because prb wants to get it from the git
# Manually set version because pbr wants to get it from the git
# upstream repository (and we are installing from tarball instead)
PBR_VERSION = version;
@@ -29,11 +26,11 @@ buildPythonApplication rec {
"man"
];
nativeBuildInputs = [
nativeBuildInputs = with python3Packages; [
pbr
];
propagatedBuildInputs = [
dependencies = with python3Packages; [
requests
setuptools # implicit dependency, used to get package version through pkg_resources
];
@@ -47,12 +44,12 @@ buildPythonApplication rec {
passthru.updateScript = gitUpdater { };
meta = with lib; {
meta = {
description = "Tool to submit code to Gerrit";
homepage = "https://opendev.org/opendev/git-review";
changelog = "https://docs.opendev.org/opendev/git-review/latest/releasenotes.html#relnotes-${version}";
license = licenses.asl20;
maintainers = with maintainers; [ kira-bruneau ];
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ kira-bruneau ];
mainProgram = "git-review";
};
}
+3 -3
View File
@@ -8,15 +8,15 @@
rustPlatform.buildRustPackage rec {
pname = "gitlab-ci-ls";
version = "1.1.2";
version = "1.1.8";
src = fetchFromGitHub {
owner = "alesbrelih";
repo = "gitlab-ci-ls";
rev = "${version}";
hash = "sha256-0AVi/DyaWh+dCXm/jUf3M63KjobJWCCKHDvm1xGUzCw=";
hash = "sha256-8386MX5jR4LNrpuXVmv+aLnfEvzSJBZgggS3Uj2MU9A=";
};
cargoHash = "sha256-3Ko+vf24dEfu+g4yGA5xY0R0TA9fSWuG398DxhHIVFU=";
cargoHash = "sha256-tyx3GGhVyOOo1SnGlS02JqEhY+D70NqzKVX7WeXu+ls=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
@@ -0,0 +1,26 @@
diff --git a/packages/iconv/iconv.c b/packages/iconv/iconv.c
index ba2c38a7..55c2e737 100644
--- a/packages/iconv/iconv.c
+++ b/packages/iconv/iconv.c
@@ -66,7 +66,7 @@ iconvWrapper (iconv_t handle, OOP readBufferOOP, int readPos,
int readCount, OOP writeBufferOOP, int writeCount,
OOP bytesLeftOOP)
{
- const char *inbuf;
+ char *inbuf;
size_t inbytesleft;
char *outbuf;
size_t outbytesleft;
diff --git a/packages/xml/expat/expat.c b/packages/xml/expat/expat.c
index 0ceee46c..4ea35289 100644
--- a/packages/xml/expat/expat.c
+++ b/packages/xml/expat/expat.c
@@ -573,7 +573,7 @@ gst_XML_ParserCreate (OOP parserOOP)
XML_SetNotationDeclHandler (p, gst_NotationDeclHandler);
XML_SetStartNamespaceDeclHandler (p, gst_StartNamespaceDeclHandler);
XML_SetEndNamespaceDeclHandler (p, gst_EndNamespaceDeclHandler);
- XML_SetSkippedEntityHandler (p, gst_SkippedEntityHandler);
+ XML_SetSkippedEntityHandler (p, (void (*)(void *, const XML_Char *, int))(gst_SkippedEntityHandler));
XML_SetReturnNSTriplet (p, true);
if (!saxEventSequenceClass)
+13 -11
View File
@@ -33,22 +33,24 @@ let
});
in
stdenv.mkDerivation rec {
version = "3.2.5";
stdenv.mkDerivation (finalAttrs: {
pname = "gnu-smalltalk";
version = "3.2.5";
src = fetchurl {
url = "mirror://gnu/smalltalk/smalltalk-${version}.tar.xz";
sha256 = "1k2ssrapfzhngc7bg1zrnd9n2vyxp9c9m70byvsma6wapbvib6l1";
url = "mirror://gnu/smalltalk/smalltalk-${finalAttrs.version}.tar.xz";
hash = "sha256-gZoV97qKG1X19gucmli63W9hU7P5h7cOexZ+d1XWWsw=";
};
patches = [
# The awk script incorrectly parsed `glib/glib.h` and was trying to find `glib/gwin32.h`,
# that isn't included since we're building only for linux.
./0000-fix_mkorder.patch
./0001-fix-compilation.patch
];
enableParallelBuilding = true;
# The dependencies and their justification are explained at
# http://smalltalk.gnu.org/download
nativeBuildInputs = [ pkg-config ];
@@ -71,13 +73,13 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "format" ];
installFlags = lib.optional emacsSupport "lispdir=$(out)/share/emacs/site-lisp";
installFlags = lib.optional emacsSupport "lispdir=${placeholder "$out"}/share/emacs/site-lisp";
# For some reason the tests fail if executated with nix-build, but pass if
# executed within nix-shell --pure.
doCheck = false;
meta = with lib; {
meta = {
description = "Free implementation of the Smalltalk-80 language";
longDescription = ''
GNU Smalltalk is a free implementation of the Smalltalk-80 language. It
@@ -86,11 +88,11 @@ stdenv.mkDerivation rec {
language, well-versed to scripting tasks.
'';
homepage = "http://smalltalk.gnu.org/";
license = with licenses; [
license = with lib.licenses; [
gpl2
lgpl2
];
platforms = platforms.linux;
maintainers = with maintainers; [ ];
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ ];
};
}
})
@@ -28,12 +28,12 @@
stdenv.mkDerivation rec {
pname = "gpu-screen-recorder";
version = "5.6.3";
version = "5.6.4";
src = fetchgit {
url = "https://repo.dec05eba.com/${pname}";
tag = version;
hash = "sha256-VtB3UhfXTdfcdVs1or48pEHsN8DL8CLg12O0jMN5PIM=";
hash = "sha256-is9O0tRMhdkiKzpYa2QI+BmELLFP8WPMTa1LLLtjkxw=";
};
nativeBuildInputs = [
+3 -3
View File
@@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "gql";
version = "0.39.0";
version = "0.40.0";
src = fetchFromGitHub {
owner = "AmrDeveloper";
repo = "GQL";
rev = version;
hash = "sha256-qV4Annd3gJzuxoXtDrhw9C8ESI1+4sdogJ5x2k/EBgc=";
hash = "sha256-i6UbgtSWKXd/qqn1eBUoHo1kLTIybu2bnbrNn6aTAos=";
};
cargoHash = "sha256-lQMTWUFjxcev5PTdoNmZHgZWq7wPiI9AewQjYgXitxU=";
cargoHash = "sha256-z2AXJGwzMYpGLqXkw8OpqJ++H7GpLbSdPoiA9RpMbKE=";
nativeBuildInputs = [
pkg-config
+3 -3
View File
@@ -8,16 +8,16 @@
buildGoModule rec {
pname = "gtree";
version = "1.11.7";
version = "1.11.8";
src = fetchFromGitHub {
owner = "ddddddO";
repo = "gtree";
rev = "v${version}";
hash = "sha256-C/Ouk903jCi39TbYNggUO2Q8MBgB9Lq3p+9DiR/oHSA=";
hash = "sha256-IBsfE0Y/LzXIaQdbXv1ZOslwj2U5fAhYIo67BixwDMY=";
};
vendorHash = "sha256-TS46EokHoh/GUSYlWnHTUaqvIrFHXhH/NMvcJ4GscjM=";
vendorHash = "sha256-jGFEKwe0eglsj3U2jdlfMKYsMvwSu/z0EX+heCKQP0c=";
subPackages = [
"cmd/gtree"
+2 -2
View File
@@ -12,13 +12,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "guile-curl";
version = "0.9";
version = "0.10";
src = fetchFromGitHub {
owner = "spk121";
repo = "guile-curl";
tag = "v${finalAttrs.version}";
hash = "sha256-nVA0cl4Oog3G+Ww0n0QMxJ66iqTn4VxrV+sqd6ACWl4=";
hash = "sha256-pCYihn3Z0AeGt/6HueMAz0kPFYLVSB5NDPPGOUaAI2U=";
};
strictDeps = true;
+3 -3
View File
@@ -7,18 +7,18 @@
rustPlatform.buildRustPackage rec {
pname = "harper";
version = "0.54.0";
version = "0.55.0";
src = fetchFromGitHub {
owner = "Automattic";
repo = "harper";
rev = "v${version}";
hash = "sha256-pWxn7bQF28oAchOYNGM0vKRvrjF4uh1VTUqvQPowjpE=";
hash = "sha256-lqN6TW78jCfn8HUBrkf7R7FV8iFEAoeycBVsUgggZHw=";
};
buildAndTestSubdir = "harper-ls";
cargoHash = "sha256-etNmmPStjrsl4iS6kJxyzopiTqSCwX6K4dzT3EVxScE=";
cargoHash = "sha256-befFgoP1bZSH9hqrLs9MCK2YkwJb4kK4h09I5y6qmzM=";
passthru.updateScript = nix-update-script { };
@@ -6,16 +6,16 @@
}:
buildGoModule rec {
pname = "infrastructure-agent";
version = "1.65.4";
version = "1.65.5";
src = fetchFromGitHub {
owner = "newrelic";
repo = "infrastructure-agent";
rev = version;
hash = "sha256-jorMZxcJlaFlOm53Wtt4dssvXAUaiw5c8mL8UQoXrFk=";
hash = "sha256-wrnZ7ZORPHoS1Y1mUvyaUUwhr+kdOA/18DLOB7fn/8E=";
};
vendorHash = "sha256-rnF/kX1CE8KFFp7Pud3dMH6660ScN8Un1qvHciXLAD8=";
vendorHash = "sha256-UNbWsPu+1Qsjpa4T1Im8e+hm4XO7lQDkGutK5MLMUpc=";
ldflags = [
"-s"
+3 -3
View File
@@ -21,16 +21,16 @@
rustPlatform.buildRustPackage rec {
pname = "irust";
version = "1.73.0";
version = "1.74.0";
src = fetchFromGitHub {
owner = "sigmaSd";
repo = "IRust";
rev = "irust@${version}";
hash = "sha256-oBHqyOqUNXO5c3TYFp84fDKA+R8ZmrgFCQswu7yXkGw=";
hash = "sha256-xqBKacNc+sehQeviqs5uPi4ZKh7fD5LAI2Zlp27zaTc=";
};
cargoHash = "sha256-YRptwZm00Px+3S+QFZAZxg25ObwmRdbgonzbMnBBb50=";
cargoHash = "sha256-w28lPqK87qegzIJdab3DjxUkHgeepYlIH3Y0VUrS5uI=";
nativeBuildInputs = [ makeWrapper ];
+3 -3
View File
@@ -7,15 +7,15 @@
stdenvNoCC.mkDerivation {
pname = "jp-zip-code";
version = "0-unstable-2025-07-01";
version = "0-unstable-2025-08-01";
# This package uses a mirror as the source because the
# original provider uses the same URL for updated content.
src = fetchFromGitHub {
owner = "musjj";
repo = "jp-zip-codes";
rev = "14225eb658d065f030f856891060b8b490af79c0";
hash = "sha256-T0mCBFFV6WNExmAn/HXpdwSslSsvqtqO3Ua87Ud9lbk=";
rev = "e3f5e6c1509e2dc5f2e60c88324a72635923fcbc";
hash = "sha256-bGBQ/S6U6agVxlKk3ZZ2ffiO1JipzQt+ctpLt6laLPk=";
};
installPhase = ''
+3 -3
View File
@@ -9,16 +9,16 @@
buildGoModule rec {
pname = "jx";
version = "3.11.97";
version = "3.16.1";
src = fetchFromGitHub {
owner = "jenkins-x";
repo = "jx";
rev = "v${version}";
sha256 = "sha256-UhtYX6InyCIP83+cVTjUImqm7oFuL4vU9wVlEM11fZw=";
sha256 = "sha256-pvFSvaPdqq2uBDdn723TyGzz0MxNjM/MtI/1llcAxFI=";
};
vendorHash = "sha256-8I4yTzLAL7E0ozHcBZDNsJLHkTh+SjT0SjDSECGRYIc=";
vendorHash = "sha256-qCcwCsinzkjN+g7wxn60JoFBGk6Swydi93w3dZNpsZY=";
subPackages = [ "cmd" ];
@@ -6,7 +6,7 @@
openssl,
}:
let
version = "0.22.0";
version = "1.0.0";
in
rustPlatform.buildRustPackage {
pname = "markuplinkchecker";
@@ -16,10 +16,10 @@ rustPlatform.buildRustPackage {
owner = "becheran";
repo = "mlc";
rev = "v${version}";
hash = "sha256-3saRIAKVTCi145hoD0SGPloCeIwVKR3Wp3Qo3zo9g7k=";
hash = "sha256-Bj1Yf+lrKwMvYnE/YVb+KC8tZtRr2OkWoYxQChLINyY=";
};
cargoHash = "sha256-DHpOReEdufQ4++74CJDnW6EJtUwhtq+RgZ6hVGqHkKE=";
cargoHash = "sha256-r3LGWJ5RsvWRXNVXWIM83quC3AT8T+WDfSJnD3sVoOM=";
nativeBuildInputs = [ pkg-config ];
@@ -1,22 +1,13 @@
{
lib,
mkDerivation,
stdenv,
fetchFromGitHub,
cmake,
extra-cmake-modules,
qtx11extras,
kcoreaddons,
kguiaddons,
kconfig,
kdecoration,
kconfigwidgets,
kwindowsystem,
kiconthemes,
kwayland,
libsForQt5,
unstableGitUpdater,
}:
mkDerivation {
stdenv.mkDerivation {
pname = "material-kwin-decoration";
version = "7-unstable-2023-01-15";
@@ -24,7 +15,7 @@ mkDerivation {
owner = "Zren";
repo = "material-decoration";
rev = "0e989e5b815b64ee5bca989f983da68fa5556644";
sha256 = "sha256-Ncn5jxkuN4ZBWihfycdQwpJ0j4sRpBGMCl6RNiH4mXg=";
hash = "sha256-Ncn5jxkuN4ZBWihfycdQwpJ0j4sRpBGMCl6RNiH4mXg=";
};
# Remove -Werror since it uses deprecated methods
@@ -35,10 +26,13 @@ mkDerivation {
nativeBuildInputs = [
cmake
]
++ (with libsForQt5; [
extra-cmake-modules
];
wrapQtAppsHook
]);
buildInputs = [
buildInputs = with libsForQt5; [
qtx11extras
kcoreaddons
kguiaddons
@@ -56,10 +50,10 @@ mkDerivation {
};
};
meta = with lib; {
meta = {
description = "Material-ish window decoration theme for KWin";
homepage = "https://github.com/Zren/material-decoration";
license = licenses.gpl2;
maintainers = with maintainers; [ nickcao ];
license = lib.licenses.gpl2;
maintainers = with lib.maintainers; [ nickcao ];
};
}
+2 -2
View File
@@ -11,13 +11,13 @@ telegram-desktop.override {
unwrapped = telegram-desktop.unwrapped.overrideAttrs (
finalAttrs: previousAttrs: {
pname = "materialgram-unwrapped";
version = "5.16.4.1";
version = "6.0.0.1";
src = fetchFromGitHub {
owner = "kukuruzka165";
repo = "materialgram";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-sN+Asoy9oZ08wZv9y454HqBxkEK7Zt0ynmfyuzk/SBc=";
hash = "sha256-MXIXYwYuILm/bAShH9tZWOndDFOsp9oVYonX+BPPK4M=";
fetchSubmodules = true;
};
@@ -8,16 +8,16 @@
buildGoModule (finalAttrs: {
pname = "matrix-alertmanager-receiver";
version = "2025.7.23";
version = "2025.7.30";
src = fetchFromGitHub {
owner = "metio";
repo = "matrix-alertmanager-receiver";
tag = finalAttrs.version;
hash = "sha256-DkltZsWcCFLMDzTMxDv+amwbTVNHxpQVBtgpnTJOFsU=";
hash = "sha256-2zTkRXXXMMphNyw/OeiIAmc4KP0LqN6M0vtpX/7fhoI=";
};
vendorHash = "sha256-6N0G0JGFp+dIUyTFHwpp526QmVZlp071NX+H6CB0uVE=";
vendorHash = "sha256-zOaAvPCAEQkJMogJ6ly0jkHfj+SAlFqk5m+eQdsaxK4=";
env.CGO_ENABLED = "0";
+6
View File
@@ -8,6 +8,7 @@
libtool,
llvmPackages,
stdenv,
bash,
}:
stdenv.mkDerivation (finalAttrs: {
@@ -26,6 +27,7 @@ stdenv.mkDerivation (finalAttrs: {
automake
cunit
libtool
bash
];
preConfigure = ''
@@ -38,6 +40,10 @@ stdenv.mkDerivation (finalAttrs: {
"--enable-portable-binary"
];
env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types";
enableParalleBuilding = true;
buildInputs = lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
propagatedBuildInputs = [ fftw ];
+2 -2
View File
@@ -6,13 +6,13 @@
buildGoModule rec {
pname = "nova";
version = "3.11.6";
version = "3.11.7";
src = fetchFromGitHub {
owner = "FairwindsOps";
repo = "nova";
rev = "v${version}";
hash = "sha256-lYnVysBeZAYM++tlbVnIUfmJMujilHiPtLBH5Vp0puI=";
hash = "sha256-5N4WHb5IWvUIg4i0XqSUWCLZM2rXPAiy2JVGlddvLFQ=";
};
vendorHash = "sha256-+cw2NclPLT9S1iakK2S5uc+nFE84MIl6QOH/L0kgoHE=";
+2 -2
View File
@@ -8,13 +8,13 @@
buildGoModule (finalAttrs: {
pname = "nvrh";
version = "0.1.19";
version = "0.1.20";
src = fetchFromGitHub {
owner = "mikew";
repo = "nvrh";
tag = "v${finalAttrs.version}";
hash = "sha256-oLCHuU2KZypMnW+KOuc3RhSP/mO4hQUN3Pi1W8uhoJA=";
hash = "sha256-hKlL/kjfDtWZHfDuVbVNVnhBEeJcX5zWFtDaNW/KExI=";
};
postPatch = ''
+2 -2
View File
@@ -22,12 +22,12 @@ let
in
stdenv.mkDerivation (final: {
pname = "openterface-qt";
version = "0.3.17";
version = "0.3.18";
src = fetchFromGitHub {
owner = "TechxArtisanStudio";
repo = "Openterface_QT";
rev = "${final.version}";
hash = "sha256-kXDiQINbP7D2qUqKUAZXEW2iJqKEH/AqMSE2zU+jRHg=";
hash = "sha256-yD71UOi6iRd9N3NeASUzqoeHMcTYIqkysAfxRm7GkOA=";
};
nativeBuildInputs = [
copyDesktopItems
@@ -14,13 +14,13 @@
nixosTests,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "orangefs";
version = "2.9.8";
src = fetchurl {
url = "http://download.orangefs.org/current/source/orangefs-${version}.tar.gz";
sha256 = "0c2yla615j04ygclfavh8g5miqhbml2r0zs2c5mvkacf9in7p7sq";
url = "http://download.orangefs.org/current/source/orangefs-${finalAttrs.version}.tar.gz";
hash = "sha256-WJ97bEyOqblrYUJ/kAWtC+JYy0NwK0fZ8wTIEoyiXjA=";
};
patches = [
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/waltligon/orangefs/commit/f472beb50356bea657d1c32f1ca8a73e4718fd57.patch";
sha256 = "0jaq1ffdxgymjciddsy8h8r87nwbif4v5yv4wd7jxysn25a0hdai";
hash = "sha256-UTUIVBFW+y5P42T7somLi9uDMoLI69Yik9W/3pwLWEk=";
})
];
@@ -83,10 +83,10 @@ stdenv.mkDerivation rec {
passthru.tests = { inherit (nixosTests) orangefs; };
meta = with lib; {
meta = {
description = "Scale-out network file system for use on high-end computing systems";
homepage = "http://www.orangefs.org/";
license = with licenses; [
license = with lib.licenses; [
asl20
bsd3
gpl2Only
@@ -95,6 +95,6 @@ stdenv.mkDerivation rec {
openldap
];
platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ markuskowa ];
maintainers = with lib.maintainers; [ markuskowa ];
};
}
})
@@ -0,0 +1,106 @@
{
lib,
stdenv,
fetchFromGitHub,
buildGoModule,
cmake,
curl,
go,
unzip,
zip,
catch2,
cxxopts,
fmt,
versionCheckHook,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "protonmail-export";
version = "1.0.5";
src = fetchFromGitHub {
owner = "ProtonMail";
repo = "proton-mail-export";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-rpfTI3vcZlEK1TrxRMMHFKutwC/YqAZrZCFiUsfMafc=";
};
goModules =
(buildGoModule {
pname = "protonmail-export-go-modules";
inherit (finalAttrs) src version;
sourceRoot = "${finalAttrs.src.name}/go-lib";
vendorHash = "sha256-rKi3PNsYsZA+MLcLTVrVI3T2SUBZCiq9Zxtf+1SGArk=";
nativeBuildInputs = [ unzip ];
proxyVendor = true;
}).goModules;
postPatch = ''
echo "" > vcpkg/scripts/buildsystems/vcpkg.cmake
substituteInPlace CMakeLists.txt \
--replace-fail 'include(clang_tidy)' ''' \
--replace-fail 'include(clang_format)' '''
substituteInPlace lib/CMakeLists.txt \
--replace-fail 'add_subdirectory(tests)' '''
substituteInPlace cli/bin/main.cpp --replace-fail \
'execPath = etcpp::getExecutableDir();' 'execPath = std::filesystem::u8path(std::getenv("HOME")) / ".config" / "protonmail-export";'
'';
preConfigure = ''
export GOCACHE=$TMPDIR/go-cache
export GOPATH=$TMPDIR/go
export GOPROXY=file://$goModules
'';
nativeBuildInputs = [
cmake
curl
go
unzip
zip
];
buildInputs = [
fmt
catch2
cxxopts
];
postInstall =
let
so = "proton-mail-export${stdenv.hostPlatform.extensions.library}";
in
''
install -Dm644 $out/bin/${so} -t $out/lib
rm -f $out/bin/${so}
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
install_name_tool -change @loader_path/${so} \
$out/lib/${so} \
$out/bin/proton-mail-export-cli
'';
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/proton-mail-export-cli";
versionCheckProgramArg = "--version";
doInstallCheck = true;
meta = {
description = "Export your Proton Mail emails as eml files";
homepage = "https://github.com/ProtonMail/proton-mail-export";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.unix;
maintainers = [ lib.maintainers.ryand56 ];
mainProgram = "proton-mail-export-cli";
};
})
+3 -3
View File
@@ -10,16 +10,16 @@
buildGoModule rec {
pname = "pscale";
version = "0.248.0";
version = "0.250.0";
src = fetchFromGitHub {
owner = "planetscale";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-Vp9qS8Od+OVV/kVMH8CsD/Ltx9aFykU7E8w+o91J2gY=";
sha256 = "sha256-5SDdYHfOlPzPwnz0ibW9j6rI74XywnzzIg3SSW0aolg=";
};
vendorHash = "sha256-eGF44NEW8dIm2neJmGnYiafvRISIAUgA5jKV9EzsJj0=";
vendorHash = "sha256-1r5KGYKjABQI2HZETvY80M9Cbza1bsZnf1401MbVE5U=";
ldflags = [
"-s"
+2 -2
View File
@@ -25,13 +25,13 @@
stdenv.mkDerivation rec {
pname = "pwsafe";
version = "1.21.0fp"; # do NOT update to 3.x Windows releases
version = "1.22.0fp"; # do NOT update to 3.x Windows releases
src = fetchFromGitHub {
owner = "pwsafe";
repo = "pwsafe";
rev = version;
hash = "sha256-pPKUFX6NNGtGGjHL3g0Y6xzj+bHU2KDNMhYCnpP9wgM=";
hash = "sha256-oVhpdJPpGNMqL1y67Kv3osa1Cx5YM8SyaNuRWeMfd9g=";
};
strictDeps = true;
+3 -3
View File
@@ -7,17 +7,17 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "pyrefly";
version = "0.20.2";
version = "0.26.1";
src = fetchFromGitHub {
owner = "facebook";
repo = "pyrefly";
tag = finalAttrs.version;
hash = "sha256-E3CPs3/c5/0VKeRFI6dNRj0xUoU9YBV1rZ1qFt4E2+U=";
hash = "sha256-XjAeCbg4Jgk/5PVnUMzFaJS1Qz24UEnQVV/cXEyUnZU=";
};
buildAndTestSubdir = "pyrefly";
cargoHash = "sha256-EkGw7y5NtJ6Yd3DzL4z+81I0v5WyIwZ28klHXMqHjJc=";
cargoHash = "sha256-SadZDZA0B99MGDYGppZvQtThKX3YLMe/lQ2eMLuYMhk=";
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
-82
View File
@@ -1,82 +0,0 @@
{
lib,
stdenvNoCC,
fetchzip,
writeShellApplication,
curl,
gawk,
xmlstarlet,
common-updater-scripts,
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "rewind-ai";
# Example version with explanation
# 1.5284 (Base version)
# 15284.1 (build number)
# dcd0176 (commit hash)
# 20240504 (pub date)
version = "1.5310-15310.1-5f6bcc5-20240930";
src = fetchzip {
url =
let
buildNumber = lib.elemAt (lib.splitString "-" finalAttrs.version) 1;
commitHash = lib.elemAt (lib.splitString "-" finalAttrs.version) 2;
in
"https://updates.rewind.ai/builds/main/b${buildNumber}-main-${commitHash}.zip";
hash = "sha256-uNqblEOezCj1JanDl6MZZO3GLX5jgWh19VeMcmwZvZg=";
};
installPhase = ''
runHook preInstall
mkdir -p "$out/Applications/Rewind.app"
cp -R . "$out/Applications/Rewind.app"
runHook postInstall
'';
# Example response to use when modifying the script: https://pastebin.com/raw/90qU3n6H
# There is a real harsh limit on update checks, so DO NOT send any unnecessary update checks
# Wait at least 3 days since the last pub_date (you will find the date at the end of the version number)
# Example: 20240504 would be 2024/05/04, and that would mean that we want to check no earlier than on 2024/05/07 for any updates
passthru.updateScript = lib.getExe (writeShellApplication {
name = "${finalAttrs.pname}-update-script";
runtimeInputs = [
curl
gawk
xmlstarlet
common-updater-scripts
];
text = ''
xml_get () {
echo "$update_xml" | xmlstarlet sel -t -v "$1"
}
update_url="https://updates.rewind.ai/appcasts/main.xml"
update_xml=$(curl -s "$update_url")
version_base=$(xml_get "/rss/channel/item/sparkle:shortVersionString")
url=$(xml_get "/rss/channel/item/enclosure/@url")
pub_date=$(xml_get "/rss/channel/item/pubDate")
commit_id=$(echo "$url" | awk -F '-|\\.' '{ print $(NF - 1) }')
build_number=$(xml_get "/rss/channel/item/sparkle:version")
formatted_pub_date=$(date -d "$pub_date" +"%Y%m%d")
full_version="''${version_base}-''${build_number}-''${commit_id}-''${formatted_pub_date}"
update-source-version "rewind-ai" "$full_version" --version-key=version --file=./pkgs/by-name/re/rewind-ai/package.nix --print-changes
'';
});
meta = {
changelog = "https://www.rewind.ai/changelog";
description = "Rewind is a personalized AI powered by everything you've seen, said, or heard";
homepage = "https://www.rewind.ai/";
license = lib.licenses.unfree;
maintainers = with lib.maintainers; [ donteatoreo ];
platforms = [ "aarch64-darwin" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
})
+3 -3
View File
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec {
pname = "rust-motd";
version = "2.0.0";
version = "2.1.0";
src = fetchFromGitHub {
owner = "rust-motd";
repo = "rust-motd";
rev = "v${version}";
hash = "sha256-NgNMTsm9C+0Lt6r1zYA486oSQpGIMxLsPozdDw7lILs=";
hash = "sha256-06iWk0VobdHP94eNaEyQnIBx5YkoW0/IQQtUFWTkEe0=";
};
cargoHash = "sha256-pm/N00H840WzuP/BcvyqgZ/9zbNsHKm/UZ0O88giasY=";
cargoHash = "sha256-f+441tEy1+AWXsz2Byrg0+Tz8jHcC1SD9WNZlkgWGZ4=";
nativeBuildInputs = [
pkg-config
@@ -17,13 +17,13 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "sherlock-launcher";
version = "0.1.13-hotfix-2";
version = "0.1.14-2";
src = fetchFromGitHub {
owner = "Skxxtz";
repo = "sherlock";
tag = "v${finalAttrs.version}";
hash = "sha256-5ERCusCDf+GCwmJc5BrEK8Kn5ClMOILBStv17vyS7MQ=";
hash = "sha256-k5v1eeRxwCpU7+nBU6/q8I6O2e0kXojyhNTeZ3k/Qxo=";
};
nativeBuildInputs = [
@@ -43,7 +43,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
librsvg
];
cargoHash = "sha256-F2jXCJnj2kGPANXSzx65DfKxKgXtwR0xRNFZie6PYx0=";
cargoHash = "sha256-fct2xHZmrPMn/HXPtMaYraODT0Yi/wZEPw5X8KwhnGk=";
passthru.updateScript = nix-update-script { };
+2 -2
View File
@@ -13,13 +13,13 @@
stdenv.mkDerivation rec {
pname = "signaturepdf";
version = "1.8.0";
version = "1.9.0";
src = fetchFromGitHub {
owner = "24eme";
repo = "signaturepdf";
rev = "v${version}";
hash = "sha256-Sk59yHnLSmO/Dd+cAntiAXzYyo6Rsp779Q+SszonbMc=";
hash = "sha256-DLPLloSt9yMEWFqmplQ8WictanlwRc4oQbTEQLUxR+E=";
};
nativeBuildInputs = [ makeWrapper ];
+2 -2
View File
@@ -8,11 +8,11 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "stats";
version = "2.11.45";
version = "2.11.49";
src = fetchurl {
url = "https://github.com/exelban/stats/releases/download/v${finalAttrs.version}/Stats.dmg";
hash = "sha256-OdZ8LCU0kCCKk4SeyDryDpyCUsjf8aUZAv2o/cR4GX8=";
hash = "sha256-v+ZwEFYb5v7dUZlXar8io4/Lr34326ZM1p5j7OzSmig=";
};
sourceRoot = ".";
+3 -3
View File
@@ -12,16 +12,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "sudo-rs";
version = "0.2.7";
version = "0.2.8";
src = fetchFromGitHub {
owner = "trifectatechfoundation";
repo = "sudo-rs";
tag = "v${finalAttrs.version}";
hash = "sha256-02ODKMumYUKcmSfPAiCwpRph5+Zy+g5uqqbJ9ThRxRg=";
hash = "sha256-82qd9lVwxI9Md7NWpfauGWKtvR1MvX9VNZ9e1RvzmP4=";
};
cargoHash = "sha256-o3//zJxB6CNHQl1DtfmFnSBP9npC4I9/hRuzpWrKoNs=";
cargoHash = "sha256-hvXVdPs2K1FPi06NZSockNXA9QOnXOsrONiMCTiIs2I=";
nativeBuildInputs = [ installShellFiles ];
@@ -5,16 +5,16 @@
}:
buildGoModule (finalAttrs: {
pname = "terraform-mcp-server";
version = "0.2.0";
version = "0.2.1";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "terraform-mcp-server";
tag = "v${finalAttrs.version}";
hash = "sha256-wc9XnaVC/mQIy57PETDgJBskzqjU/HscAQTCFh11Q28=";
hash = "sha256-bbCVW9zAlpLpe012AXCkV/EY7QyeXrOqjEExvJGA5aY=";
};
vendorHash = "sha256-R3sfdx7xffmldH2jzE/q/tBaB/YLOhdLAoFvEScFvn0=";
vendorHash = "sha256-lW5XIaY5NAn3sSDJExMd1i/dueb4p1Uc4Qpr4xsgmfE=";
ldflags = [
"-X main.version=${finalAttrs.version}"
+38
View File
@@ -0,0 +1,38 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
alsa-lib,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "ting";
version = "0.1.0";
src = fetchFromGitHub {
owner = "dhth";
repo = "ting";
tag = "v${finalAttrs.version}";
hash = "sha256-k6TJ9/YtsjNNYPj8YUGCfaQaVwXHoUQG4muOvrkN34A=";
};
cargoHash = "sha256-yDSOXvRRBIDYhggj1SwAHxI3jv+xAs2LTUmUqPxCk00=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ alsa-lib ];
passthru.updateScript = nix-update-script { };
meta = {
description = "Audio feedback on the command line";
homepage = "https://github.com/dhth/ting";
changelog = "https://github.com/dhth/ting/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ yiyu ];
mainProgram = "ting";
platforms = lib.platforms.linux;
};
})
+2 -2
View File
@@ -6,13 +6,13 @@
buildGoModule rec {
pname = "url-parser";
version = "2.1.8";
version = "2.1.9";
src = fetchFromGitHub {
owner = "thegeeklab";
repo = "url-parser";
tag = "v${version}";
hash = "sha256-pxpeqZfvNZbX+Eh4Jh1SRo0ymvZokeEQRotW7XV3Udo=";
hash = "sha256-JVrdqASkFwVl8p5vuaiWY6Qvl2VNNb4YKFjChEJHbUs=";
};
vendorHash = "sha256-GhBSVbzZ3UqFroLimi5VbTVO6DhEMVAd6iyhGwO6HK0=";
@@ -2,29 +2,25 @@
lib,
stdenv,
fetchFromGitHub,
breeze-icons,
kdeclarative,
kirigami,
plasma-framework,
plasma-workspace,
kdePackages,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation {
pname = "utterly-nord-plasma";
version = "3.2";
src = fetchFromGitHub {
owner = "HimDek";
repo = pname;
repo = "utterly-nord-plasma";
rev = "e513b4dfeddd587a34bfdd9ba6b1d1eac8ecadf5";
hash = "sha256-moLgBFR+BgoiEBzV3y/LA6JZfLHrG1weL1+h8LN9ztA=";
};
propagatedUserEnvPkgs = [
propagatedUserEnvPkgs = with kdePackages; [
breeze-icons
kdeclarative
kirigami
plasma-framework
libplasma
plasma-workspace
];
@@ -54,11 +50,11 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
meta = with lib; {
meta = {
description = "Plasma theme with Nordic Colors, transparency, blur and round edges for UI elements";
homepage = "https://himdek.com/Utterly-Nord-Plasma/";
license = licenses.gpl2Plus;
platforms = platforms.all;
maintainers = [ maintainers.romildo ];
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ romildo ];
};
}
+2 -2
View File
@@ -4,12 +4,12 @@
appimageTools,
}:
let
version = "0.7.3";
version = "0.7.4";
pname = "Vial";
src = fetchurl {
url = "https://github.com/vial-kb/vial-gui/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
hash = "sha256-tdSJjmf1IUQ1S7V90dTVgWJDOAuBsiUTUz0QV6LPlqo=";
hash = "sha256-SxZC+ihJsmIQAZ31G6wS42qTxdt1/8lx80bHox3sy28=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };
+2 -2
View File
@@ -10,13 +10,13 @@
buildGoModule rec {
pname = "wakatime-cli";
version = "1.124.1";
version = "1.129.1";
src = fetchFromGitHub {
owner = "wakatime";
repo = "wakatime-cli";
tag = "v${version}";
hash = "sha256-Fr3ROi8OXZqyN3lXPkAtelkN47X+MXHGAhr5FQvPSqQ=";
hash = "sha256-FGHjcPDRGEGFacPZzzwtuCD/c8l5gYBBOBaU1fQOkGw=";
};
vendorHash = "sha256-jyFUauK+CAuSv+dKUyVtuoTizeGkKnNquZLA96oq1BM=";
+2 -2
View File
@@ -14,13 +14,13 @@
buildGoModule rec {
pname = "walker";
version = "0.13.13";
version = "0.13.14";
src = fetchFromGitHub {
owner = "abenz1267";
repo = "walker";
rev = "v${version}";
hash = "sha256-/4XKb2nU76EvUeuvhaTQr2CeLA5k20D0/XXYdX4n9cs=";
hash = "sha256-IX1m/1T6FDhGunS3wvZbn4Iv1sziMQzuRepNkEe9LC4=";
};
vendorHash = "sha256-N7lNxO/l3E1BlSSbSiQjrDPy2sWwk4G4JYlUArmMJxs=";
+3 -3
View File
@@ -57,11 +57,11 @@
stdenv.mkDerivation rec {
pname = "webex";
version = "45.6.1.32593";
version = "45.6.2.32823";
src = fetchurl {
url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Gold/20250617170507/Webex_ubuntu.7z";
sha256 = "a024d8b9c40309a291d2070123935077579ae5aa9b60366e7aaa52fa818122b0";
url = "https://binaries.webex.com/WebexDesktop-Ubuntu-Gold/20250725151734/Webex_ubuntu.7z";
sha256 = "72e9693d7c1c09ebf2c93c5e29e2b52a012eaf3ac108d7759d66be500c528b3b";
};
nativeBuildInputs = [
+2 -2
View File
@@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "wxsqlite3";
version = "4.10.11";
version = "4.10.12";
src = fetchFromGitHub {
owner = "utelle";
repo = "wxsqlite3";
rev = "v${version}";
hash = "sha256-AjBtwA94yN4PYaWiL71SbdBjRV5ehBvf5IP6aru9dgM=";
hash = "sha256-3t8SQJdB7ivuCnsr5TxmgslQNkvz+O/mE3NB+R/kXHM=";
};
nativeBuildInputs = [
+2 -2
View File
@@ -6,14 +6,14 @@
python3Packages.buildPythonApplication rec {
pname = "wyoming-piper";
version = "1.6.1";
version = "1.6.3";
pyproject = true;
src = fetchFromGitHub {
owner = "rhasspy";
repo = "wyoming-piper";
tag = "v${version}";
hash = "sha256-r7odRraBSDP2fbRJ3ixaL80fhBSb9r5icPuf1Qa6Va8=";
hash = "sha256-Opnv4PtLZpG2kBAuJ8xWsQpJ2y9G9zYFsHQm7nwjUKk=";
};
build-system = with python3Packages; [
+1 -1
View File
@@ -91,7 +91,7 @@ stdenv.mkDerivation (finalAttrs: {
description = "Package that implements a pre-document language and tools to process it";
homepage = "https://fbb-git.gitlab.io/yodl/";
mainProgram = "yodl";
license = lib.licenses.agpl3Only; # Upstream did not clarify the license used. https://gitlab.com/fbb-git/yodl/-/issues/4
license = lib.licenses.agpl3Plus;
maintainers = with lib.maintainers; [ pSub ];
platforms = lib.platforms.linux;
};
@@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-valent";
version = "1.0.0.alpha.47";
version = "1.0.0.alpha.48";
src = fetchFromGitHub {
owner = "andyholmes";
repo = "gnome-shell-extension-valent";
tag = "v${version}";
hash = "sha256-KynVbJtpGl4moIAlxzXouM+nxOGImIcCWdevveshbbo=";
hash = "sha256-j5590Emcga3Wp7/lC/ni2NpEC3bkR2/vT4Cq/m8GvBM=";
};
nativeBuildInputs = [
@@ -28,111 +28,6 @@
```
*/
nvccCompatibilities = {
# Our baseline
# https://docs.nvidia.com/cuda/archive/11.0/cuda-toolkit-release-notes/index.html#cuda-compiler-new-features
"11.0" = {
clang = {
maxMajorVersion = "9";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "9";
minMajorVersion = "6";
};
};
# Added support for Clang 10 and GCC 10
# https://docs.nvidia.com/cuda/archive/11.1.1/cuda-toolkit-release-notes/index.html#cuda-compiler-new-features
"11.1" = {
clang = {
maxMajorVersion = "10";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "10";
minMajorVersion = "6";
};
};
# Added support for Clang 11
# https://docs.nvidia.com/cuda/archive/11.2.2/cuda-installation-guide-linux/index.html#system-requirements
"11.2" = {
clang = {
maxMajorVersion = "11";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "10";
minMajorVersion = "6";
};
};
# No changes from 11.2 to 11.3
"11.3" = {
clang = {
maxMajorVersion = "11";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "10";
minMajorVersion = "6";
};
};
# Added support for Clang 12 and GCC 11
# https://docs.nvidia.com/cuda/archive/11.4.4/cuda-toolkit-release-notes/index.html#cuda-general-new-features
# NOTE: There is a bug in the version of GLIBC that GCC 11 uses which causes it to fail to compile some CUDA
# code. As such, we skip it for this release, and do the bump in 11.6 (skipping 11.5).
# https://forums.developer.nvidia.com/t/cuda-11-5-samples-throw-multiple-error-attribute-malloc-does-not-take-arguments/192750/15
"11.4" = {
clang = {
maxMajorVersion = "12";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "10";
minMajorVersion = "6";
};
};
# No changes from 11.4 to 11.5
"11.5" = {
clang = {
maxMajorVersion = "12";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "10";
minMajorVersion = "6";
};
};
# No changes from 11.5 to 11.6
# However, as mentioned above, we add GCC 11 this release.
"11.6" = {
clang = {
maxMajorVersion = "12";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "11";
minMajorVersion = "6";
};
};
# Added support for Clang 13
# https://docs.nvidia.com/cuda/archive/11.7.1/cuda-toolkit-release-notes/index.html#cuda-compiler-new-features
"11.7" = {
clang = {
maxMajorVersion = "13";
minMajorVersion = "7";
};
gcc = {
maxMajorVersion = "11";
minMajorVersion = "6";
};
};
# Added support for Clang 14
# https://docs.nvidia.com/cuda/archive/11.8.0/cuda-installation-guide-linux/index.html#system-requirements
"11.8" = {
@@ -1,16 +1,15 @@
{
cudaOlder,
cudatoolkit,
cudaMajorMinorVersion,
fetchurl,
lib,
libcublas ? null, # cuDNN uses CUDA Toolkit on old releases, where libcublas is not available.
libcublas,
patchelf,
zlib,
}:
let
inherit (lib)
lists
attrsets
maintainers
meta
strings
@@ -33,11 +32,10 @@ finalAttrs: prevAttrs: {
"CUDA version is too new" = cudaTooNew;
};
buildInputs =
prevAttrs.buildInputs or [ ]
++ [ zlib ]
++ lists.optionals finalAttrs.passthru.useCudatoolkitRunfile [ cudatoolkit ]
++ lists.optionals (!finalAttrs.passthru.useCudatoolkitRunfile) [ (libcublas.lib or null) ];
buildInputs = prevAttrs.buildInputs or [ ] ++ [
zlib
(attrsets.getLib libcublas)
];
# Tell autoPatchelf about runtime dependencies. *_infer* libraries only
# exist in CuDNN 8.
@@ -55,10 +53,6 @@ finalAttrs: prevAttrs: {
${meta.getExe patchelf} $lib/lib/libcudnn_ops_infer.so --add-needed libcublas.so --add-needed libcublasLt.so
'';
passthru = prevAttrs.passthru or { } // {
useCudatoolkitRunfile = cudaOlder "11.3.999";
};
meta = prevAttrs.meta or { } // {
homepage = "https://developer.nvidia.com/cudnn";
maintainers =
@@ -70,15 +64,12 @@ finalAttrs: prevAttrs: {
]);
# TODO(@connorbaker): Temporary workaround to avoid changing the derivation hash since introducing more
# brokenConditions would change the derivation as they're top-level and __structuredAttrs is set.
broken =
prevAttrs.meta.broken or false || (finalAttrs.passthru.useCudatoolkitRunfile && libcublas == null);
teams = prevAttrs.meta.teams or [ ];
license = {
shortName = "cuDNN EULA";
fullName = "NVIDIA cuDNN Software License Agreement (EULA)";
url = "https://docs.nvidia.com/deeplearning/sdk/cudnn-sla/index.html#supplement";
free = false;
redistributable = !finalAttrs.passthru.useCudatoolkitRunfile;
};
};
}
@@ -1,6 +1,4 @@
{
cudaOlder,
lib,
libcublas,
numactl,
rdma-core,
@@ -11,8 +9,4 @@ prevAttrs: {
numactl
rdma-core
];
# Before 11.7 libcufile depends on itself for some reason.
autoPatchelfIgnoreMissingDeps =
prevAttrs.autoPatchelfIgnoreMissingDeps or [ ]
++ lib.lists.optionals (cudaOlder "11.7") [ "libcufile.so.0" ];
}
@@ -1,31 +1,17 @@
{
cuda_cudart ? null,
cudaAtLeast,
cudaOlder,
cudatoolkit,
cuda_cudart,
lib,
libcublas ? null,
libcublas,
}:
finalAttrs: prevAttrs: {
buildInputs =
prevAttrs.buildInputs or [ ]
++ lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
++ lib.optionals (cudaAtLeast "11.4") (
[ (libcublas.lib or null) ]
# For some reason, the 1.4.x release of cusparselt requires the cudart library.
++ lib.optionals (lib.hasPrefix "1.4" finalAttrs.version) [ (cuda_cudart.lib or null) ]
);
++ [ (lib.getLib libcublas) ]
# For some reason, the 1.4.x release of cusparselt requires the cudart library.
++ lib.optionals (lib.hasPrefix "1.4" finalAttrs.version) [ (lib.getLib cuda_cudart) ];
meta = prevAttrs.meta or { } // {
description = "cuSPARSELt: A High-Performance CUDA Library for Sparse Matrix-Matrix Multiplication";
homepage = "https://developer.nvidia.com/cusparselt-downloads";
# TODO(@connorbaker): Temporary workaround to avoid changing the derivation hash since introducing more
# brokenConditions would change the derivation as they're top-level and __structuredAttrs is set.
broken =
prevAttrs.meta.broken or false
|| (
cudaAtLeast "11.4"
&& (libcublas == null || (lib.hasPrefix "1.4" finalAttrs.version && cuda_cudart == null))
);
maintainers = prevAttrs.meta.maintainers or [ ] ++ [ lib.maintainers.sepiabrown ];
teams = prevAttrs.meta.teams or [ ];
license = lib.licenses.unfreeRedistributable // {
@@ -1,31 +1,17 @@
{
cuda_cudart ? null,
cudaAtLeast,
cudaOlder,
cudatoolkit,
cuda_cudart,
lib,
libcublas ? null,
libcublas,
}:
finalAttrs: prevAttrs: {
buildInputs =
prevAttrs.buildInputs or [ ]
++ lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
++ lib.optionals (cudaAtLeast "11.4") (
[ (libcublas.lib or null) ]
# For some reason, the 1.4.x release of cuTENSOR requires the cudart library.
++ lib.optionals (lib.hasPrefix "1.4" finalAttrs.version) [ (cuda_cudart.lib or null) ]
);
++ [ (lib.getLib libcublas) ]
# For some reason, the 1.4.x release of cuTENSOR requires the cudart library.
++ lib.optionals (lib.hasPrefix "1.4" finalAttrs.version) [ (lib.getLib cuda_cudart) ];
meta = prevAttrs.meta or { } // {
description = "cuTENSOR: A High-Performance CUDA Library For Tensor Primitives";
homepage = "https://developer.nvidia.com/cutensor";
# TODO(@connorbaker): Temporary workaround to avoid changing the derivation hash since introducing more
# brokenConditions would change the derivation as they're top-level and __structuredAttrs is set.
broken =
prevAttrs.meta.broken or false
|| (
cudaAtLeast "11.4"
&& (libcublas == null || (lib.hasPrefix "1.4" finalAttrs.version && cuda_cudart == null))
);
maintainers = prevAttrs.meta.maintainers or [ ] ++ [ lib.maintainers.obsidian-systems-maintenance ];
teams = prevAttrs.meta.teams;
license = lib.licenses.unfreeRedistributable // {
@@ -1,56 +1,93 @@
{
cudaAtLeast,
cudaMajorMinorVersion,
cudaOlder,
e2fsprogs,
elfutils,
flags,
gst_all_1,
lib,
qt5 ? null,
qt6 ? null,
libjpeg8,
qt6,
rdma-core,
stdenv,
ucx,
}:
prevAttrs:
let
inherit (lib.strings) versionOlder versionAtLeast;
inherit (prevAttrs) version;
qt = if versionOlder version "2022.2.0" then qt5 else qt6;
qtwayland =
if lib.versions.major qt.qtbase.version == "5" then
lib.getBin qt.qtwayland
else
lib.getLib qt.qtwayland;
inherit (qt) wrapQtAppsHook qtwebview;
qtwayland = lib.getLib qt6.qtwayland;
inherit (qt6) wrapQtAppsHook qtwebview;
archDir =
{
aarch64-linux = "linux-desktop-t210-a64";
aarch64-linux = "linux-" + (if flags.isJetsonBuild then "v4l_l4t" else "desktop") + "-t210-a64";
x86_64-linux = "linux-desktop-glibc_2_11_3-x64";
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
in
{
outputs = [ "out" ]; # NOTE(@connorbaker): Force a single output so relative lookups work.
nativeBuildInputs = prevAttrs.nativeBuildInputs or [ ] ++ [ wrapQtAppsHook ];
buildInputs = prevAttrs.buildInputs or [ ] ++ [
qtwayland
qtwebview
(qt.qtwebengine or qt.full)
rdma-core
];
buildInputs =
prevAttrs.buildInputs or [ ]
++ [
qtwayland
qtwebview
(qt6.qtwebengine or qt6.full)
rdma-core
]
++ lib.optionals (cudaMajorMinorVersion == "12.0" && stdenv.hostPlatform.isAarch64) [
libjpeg8
]
++ lib.optionals (cudaAtLeast "12.1" && cudaOlder "12.4") [
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
]
++ lib.optionals (cudaAtLeast "12.0" && cudaOlder "12.7") [
e2fsprogs
ucx
]
++ lib.optionals (cudaMajorMinorVersion == "12.9") [
elfutils
];
dontWrapQtApps = true;
preInstall = prevAttrs.preInstall or "" + ''
if [[ -d nsight-compute ]]; then
nixLog "Lifting components of Nsight Compute to the top level"
mv -v nsight-compute/*/* .
nixLog "Removing empty directories"
rmdir -pv nsight-compute/*
fi
rm -rf host/${archDir}/Mesa/
'';
postInstall = prevAttrs.postInstall or "" + ''
moveToOutput 'ncu' "''${!outputBin}/bin"
moveToOutput 'ncu-ui' "''${!outputBin}/bin"
moveToOutput 'host/${archDir}' "''${!outputBin}/bin"
moveToOutput 'target/${archDir}' "''${!outputBin}/bin"
wrapQtApp "''${!outputBin}/bin/host/${archDir}/ncu-ui.bin"
'';
postInstall =
prevAttrs.postInstall or ""
+ ''
moveToOutput 'ncu' "''${!outputBin}/bin"
moveToOutput 'ncu-ui' "''${!outputBin}/bin"
moveToOutput 'host/${archDir}' "''${!outputBin}/bin"
moveToOutput 'target/${archDir}' "''${!outputBin}/bin"
wrapQtApp "''${!outputBin}/bin/host/${archDir}/ncu-ui.bin"
''
# NOTE(@connorbaker): No idea what this platform is or how to patchelf for it.
+ lib.optionalString (flags.isJetsonBuild && cudaAtLeast "11.8" && cudaOlder "12.9") ''
nixLog "Removing QNX 700 target directory for Jetson builds"
rm -rfv "''${!outputBin}/target/qnx-700-t210-a64"
''
+ lib.optionalString (flags.isJetsonBuild && cudaAtLeast "12.8") ''
nixLog "Removing QNX 800 target directory for Jetson builds"
rm -rfv "''${!outputBin}/target/qnx-800-tegra-a64"
'';
# lib needs libtiff.so.5, but nixpkgs provides libtiff.so.6
preFixup = prevAttrs.preFixup or "" + ''
# lib needs libtiff.so.5, but nixpkgs provides libtiff.so.6
patchelf --replace-needed libtiff.so.5 libtiff.so "''${!outputBin}/bin/host/${archDir}/Plugins/imageformats/libqtiff.so"
'';
autoPatchelfIgnoreMissingDeps = prevAttrs.autoPatchelfIgnoreMissingDeps or [ ] ++ [
"libnvidia-ml.so.1"
];
brokenConditions = prevAttrs.brokenConditions or { } // {
"Qt 5 missing (<2022.2.0)" = !(versionOlder version "2022.2.0" -> qt5 != null);
"Qt 6 missing (>=2022.2.0)" = !(versionAtLeast version "2022.2.0" -> qt6 != null);
};
# NOTE(@connorbaker): It might be a problem that when nsight_compute contains hosts and targets of different
# architectures, that we patchelf just the binaries matching the builder's platform; autoPatchelfHook prints
# messages like
# skipping [$out]/host/linux-desktop-glibc_2_11_3-x64/libQt6Core.so.6 because its architecture (x64) differs from
# target (AArch64)
}
@@ -1,15 +1,14 @@
{
boost178,
cuda_cudart,
cudaOlder,
cudaAtLeast,
e2fsprogs,
gst_all_1,
lib,
nss,
numactl,
pulseaudio,
qt5 ? null,
qt6 ? null,
qt6,
rdma-core,
stdenv,
ucx,
@@ -18,15 +17,9 @@
}:
prevAttrs:
let
inherit (lib.strings) versionOlder versionAtLeast;
inherit (prevAttrs) version;
qt = if lib.strings.versionOlder prevAttrs.version "2022.4.2.1" then qt5 else qt6;
qtwayland =
if lib.versions.major qt.qtbase.version == "5" then
lib.getBin qt.qtwayland
else
lib.getLib qt.qtwayland;
qtWaylandPlugins = "${qtwayland}/${qt.qtbase.qtPluginPrefix}";
qtwayland = lib.getLib qt6.qtwayland;
qtWaylandPlugins = "${qtwayland}/${qt6.qtbase.qtPluginPrefix}";
# NOTE(@connorbaker): nsight_systems doesn't support Jetson, so no need for case splitting on aarch64-linux.
hostDir =
{
aarch64-linux = "host-linux-armv8";
@@ -39,88 +32,105 @@ let
x86_64-linux = "target-linux-x64";
}
.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
versionString = with lib.versions; "${majorMinor version}.${patch version}";
in
{
outputs = [ "out" ]; # NOTE(@connorbaker): Force a single output so relative lookups work.
# An ad hoc replacement for
# https://github.com/ConnorBaker/cuda-redist-find-features/issues/11
env = prevAttrs.env or { } // {
rmPatterns =
prevAttrs.env.rmPatterns or ""
+ toString [
"nsight-systems/${versionString}/${hostDir}/lib{arrow,jpeg}*"
"nsight-systems/${versionString}/${hostDir}/lib{ssl,ssh,crypto}*"
"nsight-systems/${versionString}/${hostDir}/libboost*"
"nsight-systems/${versionString}/${hostDir}/libexec"
"nsight-systems/${versionString}/${hostDir}/libstdc*"
"nsight-systems/${versionString}/${hostDir}/python/bin/python"
"nsight-systems/${versionString}/${hostDir}/Mesa"
"${hostDir}/lib{arrow,jpeg}*"
"${hostDir}/lib{ssl,ssh,crypto}*"
"${hostDir}/libboost*"
"${hostDir}/libexec"
"${hostDir}/libstdc*"
"${hostDir}/python/bin/python"
"${hostDir}/Mesa"
];
};
# NOTE(@connorbaker): nsight-exporter and nsight-sys are deprecated scripts wrapping nsys, it's fine to remove them.
prePatch = prevAttrs.prePatch or "" + ''
if [[ -d bin ]]; then
nixLog "Removing bin wrapper scripts"
for knownWrapper in bin/{nsys{,-ui},nsight-{exporter,sys}}; do
[[ -e $knownWrapper ]] && rm -v "$knownWrapper"
done
unset -v knownWrapper
nixLog "Removing empty bin directory"
rmdir -v bin
fi
if [[ -d nsight-systems ]]; then
nixLog "Lifting components of Nsight System to the top level"
mv -v nsight-systems/*/* .
nixLog "Removing empty nsight-systems directory"
rmdir -pv nsight-systems/*
fi
'';
postPatch = prevAttrs.postPatch or "" + ''
for path in $rmPatterns; do
rm -r "$path"
done
patchShebangs nsight-systems
'';
nativeBuildInputs = prevAttrs.nativeBuildInputs or [ ] ++ [ qt.wrapQtAppsHook ];
nativeBuildInputs = prevAttrs.nativeBuildInputs or [ ] ++ [ qt6.wrapQtAppsHook ];
dontWrapQtApps = true;
buildInputs = prevAttrs.buildInputs or [ ] ++ [
(qt.qtdeclarative or qt.full)
(qt.qtsvg or qt.full)
(qt.qtimageformats or qt.full)
(qt.qtpositioning or qt.full)
(qt.qtscxml or qt.full)
(qt.qttools or qt.full)
(qt.qtwebengine or qt.full)
(qt.qtwayland or qt.full)
boost178
cuda_cudart.stubs
e2fsprogs
gst_all_1.gst-plugins-base
gst_all_1.gstreamer
nss
numactl
pulseaudio
qt.qtbase
qtWaylandPlugins
rdma-core
ucx
wayland
xorg.libXcursor
xorg.libXdamage
xorg.libXrandr
xorg.libXtst
];
postInstall =
prevAttrs.postInstall or ""
# 1. Move dependencies of nsys, nsys-ui binaries to bin output
# 2. Fix paths in wrapper scripts
+ ''
moveToOutput 'nsight-systems/${versionString}/${hostDir}' "''${!outputBin}"
moveToOutput 'nsight-systems/${versionString}/${targetDir}' "''${!outputBin}"
moveToOutput 'nsight-systems/${versionString}/bin' "''${!outputBin}"
substituteInPlace $bin/bin/nsys $bin/bin/nsys-ui \
--replace-fail 'nsight-systems-#VERSION_RSPLIT#' nsight-systems/${versionString}
wrapQtApp "$bin/nsight-systems/${versionString}/${hostDir}/nsys-ui.bin"
'';
buildInputs =
prevAttrs.buildInputs or [ ]
++ [
(qt6.qtdeclarative or qt6.full)
(qt6.qtsvg or qt6.full)
(qt6.qtimageformats or qt6.full)
(qt6.qtpositioning or qt6.full)
(qt6.qtscxml or qt6.full)
(qt6.qttools or qt6.full)
(qt6.qtwebengine or qt6.full)
(qt6.qtwayland or qt6.full)
boost178
cuda_cudart.stubs
e2fsprogs
gst_all_1.gst-plugins-base
gst_all_1.gstreamer
nss
numactl
pulseaudio
qt6.qtbase
qtWaylandPlugins
rdma-core
ucx
wayland
xorg.libXcursor
xorg.libXdamage
xorg.libXrandr
xorg.libXtst
]
# NOTE(@connorbaker): Seems to be required only for aarch64-linux.
++ lib.optionals (stdenv.hostPlatform.isAarch64 && cudaAtLeast "11.8") [
gst_all_1.gst-plugins-bad
];
postInstall = prevAttrs.postInstall or "" + ''
moveToOutput '${hostDir}' "''${!outputBin}"
moveToOutput '${targetDir}' "''${!outputBin}"
moveToOutput 'bin' "''${!outputBin}"
wrapQtApp "''${!outputBin}/${hostDir}/nsys-ui.bin"
'';
# lib needs libtiff.so.5, but nixpkgs provides libtiff.so.6
preFixup = prevAttrs.preFixup or "" + ''
# lib needs libtiff.so.5, but nixpkgs provides libtiff.so.6
patchelf --replace-needed libtiff.so.5 libtiff.so $bin/nsight-systems/${versionString}/${hostDir}/Plugins/imageformats/libqtiff.so
patchelf --replace-needed libtiff.so.5 libtiff.so "''${!outputBin}/${hostDir}/Plugins/imageformats/libqtiff.so"
'';
autoPatchelfIgnoreMissingDeps = prevAttrs.autoPatchelfIgnoreMissingDeps or [ ] ++ [
"libnvidia-ml.so.1"
];
brokenConditions = prevAttrs.brokenConditions or { } // {
"Qt 5 missing (<2022.4.2.1)" = !(versionOlder version "2022.4.2.1" -> qt5 != null);
"Qt 6 missing (>=2022.4.2.1)" = !(versionAtLeast version "2022.4.2.1" -> qt6 != null);
};
badPlatformsConditions = prevAttrs.badPlatformsConditions or { } // {
# Older releases require boost 1.70, which is deprecated in Nixpkgs
"CUDA too old (<11.8)" = cudaOlder "11.8";
};
}
@@ -96,7 +96,6 @@ finalAttrs: prevAttrs: {
'';
passthru = prevAttrs.passthru or { } // {
useCudatoolkitRunfile = strings.versionOlder cudaMajorMinorVersion "11.3.999";
# The CUDNN used with TensorRT.
# If null, the default cudnn derivation will be used.
# If a version is specified, the cudnn derivation with that version will be used,
@@ -100,8 +100,6 @@ in
sourceRoot = "${finalAttrs.src.name}/cuSPARSELt/matmul";
buildInputs = prevAttrs.buildInputs or [ ] ++ lib.optionals (cudaOlder "11.4") [ cudatoolkit ];
nativeBuildInputs =
prevAttrs.nativeBuildInputs or [ ]
++ [
@@ -109,9 +107,6 @@ in
addDriverRunpath
(lib.getDev cusparselt)
(lib.getDev libcusparse)
]
++ lib.optionals (cudaOlder "11.4") [ cudatoolkit ]
++ lib.optionals (cudaAtLeast "11.4") [
cuda_nvcc
(lib.getDev cuda_cudart) # <cuda_runtime_api.h>
]
@@ -5,17 +5,6 @@
}:
let
cudaVersionToHash = {
"10.0" = "sha256-XAI6iiPpDVbZtFoRaP1s6VKpu9aV3bwOqqkw33QncP8=";
"10.1" = "sha256-DY8E2FKCFj27jPgQEB1qE9HcLn7CfSiVGdFm+yFQE+k=";
"10.2" = "sha256-JDW4i7rC2MwIRvKRmUd6UyJZI9bWNHqZijrB962N4QY=";
"11.0" = "sha256-BRwQuUvJEVi1mTbVtGODH8Obt7rXFfq6eLH9wxCTe9g=";
"11.1" = "sha256-kM8gFItBaTpkoT34vercmQky9qTFtsXjXMGjCMrsUc4=";
"11.2" = "sha256-gX6V98dRwdAQIsvru2byDLiMswCW2lrHSBSJutyWONw=";
"11.3" = "sha256-34MdMFS2cufNbZVixFdSUDFfLeuKIGFwLBL9d81acU0=";
"11.4" = "sha256-Ewu+Qk6GtGXC37CCn1ZXHc0MQAuyXCGf3J6T4cucTSA=";
"11.5" = "sha256-AKRZbke0K59lakhTi8dX2cR2aBuWPZkiQxyKaZTvHrI=";
"11.6" = "sha256-AsLNmAplfuQbXg9zt09tXAuFJ524EtTYsQuUlV1tPkE=";
# The tag 11.7 of cuda-samples does not exist
"11.8" = "sha256-7+1P8+wqTKUGbCUBXGMDO9PkxYr2+PLDx9W2hXtXbuc=";
"12.0" = "sha256-Lj2kbdVFrJo5xPYPMiE4BS7Z8gpU5JLKXVJhZABUe/g=";
"12.1" = "sha256-xE0luOMq46zVsIEWwK4xjLs7NorcTIi9gbfZPVjIlqo=";
@@ -5,7 +5,6 @@
cudatoolkit,
cudaMajorMinorVersion,
fetchFromGitHub,
fetchpatch,
freeimage,
glfw3,
hash,
@@ -46,14 +45,6 @@ backendStdenv.mkDerivation (finalAttrs: {
glfw3
];
# See https://github.com/NVIDIA/cuda-samples/issues/75.
patches = lib.optionals (finalAttrs.version == "11.3") [
(fetchpatch {
url = "https://github.com/NVIDIA/cuda-samples/commit/5c3ec60faeb7a3c4ad9372c99114d7bb922fda8d.patch";
hash = "sha256-0XxdmNK9MPpHwv8+qECJTvXGlFxc+fIbta4ynYprfpU=";
})
];
enableParallelBuilding = true;
preConfigure = ''
@@ -7,10 +7,6 @@ let
# https://developer.download.nvidia.com/compute/cuda/redist/
# Maps a cuda version to the specific version of the manifest.
cudaVersionMap = {
"11.4" = "11.4.4";
"11.5" = "11.5.2";
"11.6" = "11.6.2";
"11.7" = "11.7.1";
"11.8" = "11.8.0";
"12.0" = "12.0.1";
"12.1" = "12.1.1";
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More