Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot]
2025-10-26 18:05:22 +00:00
committed by GitHub
56 changed files with 9985 additions and 5484 deletions
+3
View File
@@ -300,3 +300,6 @@ f7611cad5154a9096faa26d156a4079577bfae17
90e7159c559021ac4f4cc1222000f08a91feff69 # !autorebase nix-shell --run treefmt
c283f32d296564fd649ef3ed268c1f1f7b199c49 # !autorebase nix-shell --run treefmt
91a8fee3aaf79348aa2dc1552a29fc1b786c5133 # !autorebase nix-shell --run treefmt
# aliases: keep-sorted
48ce0739044bd6eba83c3a43bd4ad1046399cdad # !autorebase nix-shell --run treefmt
+3
View File
@@ -68,6 +68,9 @@
- `base16-builder` node package has been removed due to lack of upstream maintenance.
- The default glibc ELF ABI for the powerpc64-linux platform has been changed from ELFv2 back to ELFv1, due to the latter having less remaining issues when bootstrapping & building Nixpkgs packages on hardware.
If glibc ELFv2 is desired, use a fuller target triplet like `powerpc64-unknown-linux-gnuabielfv2` or the provided `ppc64-elfv2` platform example.
- `python3Packages.bjoern` has been removed, as the upstream is unmaintained and it depends on a 14-year-old version of http-parser with numerous vulnerabilities.
- `buildGoModule` removes the compatibility layer of `CGO_ENABLED` not specified via `env`.
+12
View File
@@ -5960,6 +5960,12 @@
githubId = 49904992;
name = "Dawid Sowa";
};
dawnofmidnight = {
email = "dawnofmidnight@duck.com";
github = "dawnofmidnight";
githubId = 78233879;
name = "whispers";
};
dawoox = {
email = "contact@antoinebellanger.fr";
github = "Dawoox";
@@ -29155,6 +29161,12 @@
githubId = 332534;
name = "Zach Shipko";
};
zstg = {
email = "zestig@duck.com";
github = "zstg";
githubId = 69384921;
name = "ZeStig";
};
ztzg = {
email = "dd@crosstwine.com";
github = "ztzg";
@@ -1,57 +0,0 @@
{
lib,
buildPythonApplication,
fetchFromGitHub,
pythonOlder,
requests,
docopt,
pythondialog,
jinja2,
distro,
dialog,
iptables,
openvpn,
}:
buildPythonApplication rec {
pname = "protonvpn-cli_2";
version = "2.2.12";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "Rafficer";
repo = "linux-cli-community";
# There is a tag and branch with the same name
rev = "refs/tags/v${version}";
sha256 = "sha256-vNbqjdkIRK+MkYRKUUe7W5Ytc1PU1t5ZLr9fPDOZXUs=";
};
propagatedBuildInputs = [
requests
docopt
pythondialog
jinja2
distro
dialog
openvpn
iptables
];
# No tests
doCheck = false;
meta = with lib; {
description = "Linux command-line client for ProtonVPN using Openvpn";
homepage = "https://github.com/Rafficer/linux-cli-community";
maintainers = with maintainers; [
jtcoolen
jefflabonte
shamilton
];
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "protonvpn";
};
}
@@ -1,60 +0,0 @@
{
lib,
buildPythonApplication,
pythonOlder,
fetchFromGitHub,
protonvpn-nm-lib,
pythondialog,
dialog,
wrapGAppsNoGuiHook,
gobject-introspection,
glib,
}:
buildPythonApplication rec {
pname = "protonvpn-cli";
version = "3.13.0";
format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "protonvpn";
repo = "linux-cli";
tag = version;
sha256 = "sha256-KhfogC23i7THe6YZJ6Sy1+q83vZupHsS69NurHCeo8I=";
};
nativeBuildInputs = [
wrapGAppsNoGuiHook
gobject-introspection
];
buildInputs = [
glib
];
propagatedBuildInputs = [
protonvpn-nm-lib
pythondialog
dialog
];
dontWrapGApps = true;
makeWrapperArgs = [
"\${gappsWrapperArgs[@]}"
];
# Project has a dummy test
doCheck = false;
meta = with lib; {
description = "Linux command-line client for ProtonVPN";
homepage = "https://github.com/protonvpn/linux-cli";
maintainers = [ ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
mainProgram = "protonvpn-cli";
};
}
@@ -8,13 +8,13 @@
let
drv = stdenv.mkDerivation rec {
pname = "controller-topology-project";
version = "1.0.7";
version = "1.0.8";
src = fetchFromGitHub {
owner = "kodi-game";
repo = "controller-topology-project";
rev = "v${version}";
sha256 = "sha256-LzwMKsoip+ajmmk4qUJynOmhhf3Auivn8Af8VRGWkTA=";
sha256 = "sha256-hYakxkGAF6kh2nTLwKdnLVqtQLvEgayvexTfqvfoLuw=";
};
postPatch = ''
+9 -4
View File
@@ -6,20 +6,21 @@
bzip2,
xz,
zstd,
versionCheckHook,
}:
rustPlatform.buildRustPackage rec {
pname = "cargo-binstall";
version = "1.15.7";
version = "1.15.9";
src = fetchFromGitHub {
owner = "cargo-bins";
repo = "cargo-binstall";
rev = "v${version}";
hash = "sha256-EQhEI4MqYNwjqb8awROTLfxjGsoPKeT7VHt642uSgCc=";
tag = "v${version}";
hash = "sha256-v/tilaoDLZDV0VbMTT/DfqSNO4Ezyu3AWGzMftMubqc=";
};
cargoHash = "sha256-a9X8L4AZWhlcQ5lVo0I1GL2wpCjOClNuZLy+GwHJDcA=";
cargoHash = "sha256-itYqZi1tSWVwqGfNFSBh4/+PoLrQZQTnla4lOCjoX8Q=";
nativeBuildInputs = [
pkg-config
@@ -57,6 +58,10 @@ rustPlatform.buildRustPackage rec {
"--skip=gh_api_client::test::test_gh_api_client_cargo_binstall_v0_20_1"
];
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
versionCheckProgramArg = "-V";
meta = {
description = "Tool for installing rust binaries as an alternative to building from source";
mainProgram = "cargo-binstall";
+2 -2
View File
@@ -8,11 +8,11 @@
buildGraalvmNativeImage (finalAttrs: {
pname = "cljfmt";
version = "0.14.0";
version = "0.15.3";
src = fetchurl {
url = "https://github.com/weavejester/cljfmt/releases/download/${finalAttrs.version}/cljfmt-${finalAttrs.version}-standalone.jar";
hash = "sha256-A12co+7Ux9rGCcBMRMqwTH7s4hllfs0Ku/+HFQJ4XGE=";
hash = "sha256-DlPnni5p0zdauAtBEoCrh6S/STT8nvZJAJ90VjXlZLA=";
};
extraNativeImageBuildArgs = [
+2 -2
View File
@@ -7,13 +7,13 @@
buildGoModule rec {
pname = "ecspresso";
version = "2.6.1";
version = "2.6.2";
src = fetchFromGitHub {
owner = "kayac";
repo = "ecspresso";
tag = "v${version}";
hash = "sha256-kZKfhGOxtuZM6oytt/36AW8R2XVoKuLZdaj7NvoRWGA=";
hash = "sha256-9C/OJ1rnH77jcF3hDr2uyXcNViAkM84LjmkJsKmQkXo=";
};
subPackages = [
+11 -3
View File
@@ -15,6 +15,7 @@
miniz,
yaml-cpp,
udevCheckHook,
applyPatches,
# List of targets to build simulators for
targetsToBuild ? import ./targets.nix,
}:
@@ -36,18 +37,24 @@ let
libclang
]
);
# paches are needed to fix build with CMake 4
yaml-cppSrc = applyPatches {
inherit (yaml-cpp) src;
patches = yaml-cpp.patches or [ ];
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "edgetx";
version = "2.11.2";
version = "2.11.3";
src = fetchFromGitHub {
owner = "EdgeTX";
repo = "edgetx";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-F3T1lX0FSSUIQxSlqLQHj7JrfF+20Ndv63zDA0sRzFQ=";
hash = "sha256-vlJsfebTWhdh6HDpUEA1QJJSVGMlcL49XFwIx4A9zHs=";
};
nativeBuildInputs = [
@@ -93,7 +100,7 @@ stdenv.mkDerivation (finalAttrs: {
# Unvendoring these libraries is infeasible. At least lets reuse the same sources.
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_GOOGLETEST" "${gtest.src}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_MINIZ" "${miniz.src}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_YAML-CPP" "${yaml-cpp.src}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_YAML-CPP" "${yaml-cppSrc}")
# Custom library https://github.com/edgetx/maxLibQt.
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_MAXLIBQT" "${maxlibqt}")
(lib.cmakeFeature "DFU_UTIL_ROOT_DIR" "${lib.getBin dfu-util}/bin")
@@ -168,6 +175,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
mainProgram = "companion" + lib.concatStrings (lib.take 2 (lib.splitVersion finalAttrs.version));
homepage = "https://edgetx.org/";
changelog = "https://github.com/EdgeTX/edgetx/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.gpl2Only;
platforms = [
"i686-linux"
+2 -2
View File
@@ -43,14 +43,14 @@
stdenv.mkDerivation rec {
pname = "intel-gpu-tools";
version = "2.1";
version = "2.2";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "drm";
repo = "igt-gpu-tools";
rev = "refs/tags/v${version}";
hash = "sha256-O//tL7AuYmrpTlZ61YzpSKOxbtM6u6zlcANzXWTTbhw=";
hash = "sha256-Lt/mqx13nHyD5QiDl8oWGiYIiK006uQvbbzHH44LB/0=";
};
nativeBuildInputs = [
File diff suppressed because it is too large Load Diff
+32
View File
@@ -0,0 +1,32 @@
{
buildNpmPackage,
fetchzip,
lib,
}:
buildNpmPackage (finalAttrs: {
pname = "ionic-cli";
version = "7.2.1";
src = fetchzip {
url = "https://registry.npmjs.org/@ionic/cli/-/cli-${finalAttrs.version}.tgz";
hash = "sha256-nrZMMyzoiO7ZJbNrPSRA1sOEy3OpgEXdyNS0JzAaTjY=";
};
postPatch = ''
cp ${./package-lock.json} package-lock.json
'';
npmDepsHash = "sha256-Nu4AWwFaGBakGAxUNllx4etUm4H5ygxAeMs1RWhzRQQ=";
dontNpmBuild = true;
meta = {
description = "Your go-to tool for developing Ionic apps";
homepage = "https://ionicframework.com/";
license = lib.licenses.mit;
mainProgram = "ionic";
maintainers = with lib.maintainers; [
albertlarsan68
];
};
})
+2
View File
@@ -119,6 +119,8 @@ stdenv.mkDerivation (finalAttrs: {
};
meta = {
# error: in-class initializer for static data member is not a constant expression
broken = stdenv.hostPlatform.isDarwin;
changelog = "https://gitlab.isc.org/isc-projects/kea/-/wikis/Release-Notes/release-notes-${finalAttrs.version}";
homepage = "https://kea.isc.org/";
description = "High-performance, extensible DHCP server by ISC";
+3 -3
View File
@@ -18,16 +18,16 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "lockbook-desktop";
version = "25.10.13";
version = "25.10.23";
src = fetchFromGitHub {
owner = "lockbook";
repo = "lockbook";
tag = version;
hash = "sha256-TxNJpHQc18VVEnETNGpDSOn5yh+vHRyha8wXfipyyII=";
hash = "sha256-WZ6XbsIqoLfVRtxnqBPaspQQPYdn4gOrsz5WPrKFiH4=";
};
cargoHash = "sha256-UBzngkgfTObhoh9MSq80gZqpJtmB6hFDtW2dYuGgQB4=";
cargoHash = "sha256-t7/UK/PwnUyw61mw9BlSQuT0qSeBKvFaKkS2ocmAViE=";
nativeBuildInputs = [
pkg-config
+3 -3
View File
@@ -12,16 +12,16 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "lockbook";
version = "25.10.13";
version = "25.10.23";
src = fetchFromGitHub {
owner = "lockbook";
repo = "lockbook";
tag = version;
hash = "sha256-TxNJpHQc18VVEnETNGpDSOn5yh+vHRyha8wXfipyyII=";
hash = "sha256-WZ6XbsIqoLfVRtxnqBPaspQQPYdn4gOrsz5WPrKFiH4=";
};
cargoHash = "sha256-UBzngkgfTObhoh9MSq80gZqpJtmB6hFDtW2dYuGgQB4=";
cargoHash = "sha256-t7/UK/PwnUyw61mw9BlSQuT0qSeBKvFaKkS2ocmAViE=";
doCheck = false; # there are no cli tests
cargoBuildFlags = [
+2 -2
View File
@@ -6,7 +6,7 @@
}:
let
version = "1.0.1-20495154";
version = "1.0.1-20510020";
urlVersion = lib.replaceStrings [ "." ] [ "-" ] version;
in
@@ -16,7 +16,7 @@ stdenvNoCC.mkDerivation {
src = fetchzip {
url = "https://necessegame.com/content/server/${urlVersion}/necesse-server-linux64-${urlVersion}.zip";
hash = "sha256-1k+4ywYjVddAb4yyGx1Fi/RXMyJzPIiQIyUzA0VhpAI=";
hash = "sha256-e2pnyexvl0mbhlX2Y+4NKJz1VqR1LoV9VlSfqOgXy7E=";
};
# removing packaged jre since we use our own
-61
View File
@@ -1,61 +0,0 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
openssl,
versionCheckHook,
}:
rustPlatform.buildRustPackage rec {
pname = "orogene";
version = "0.3.34";
src = fetchFromGitHub {
owner = "orogene";
repo = "orogene";
tag = "v${version}";
hash = "sha256-GMWrlvZZ2xlcvcRG3u8jS8KiewHpyX0brNe4pmCpHbM=";
fetchSubmodules = true;
};
cargoPatches = [
# Workaround to avoid "error[E0282]"
# ref: https://github.com/orogene/orogene/pull/315
./update-outdated-lockfile.patch
];
cargoHash = "sha256-I08mqyogEuadp+V10svMmCm0i0zOZWiocOpM9E3lgag=";
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
];
preCheck = ''
export CI=true
export HOME=$(mktemp -d)
'';
doInstallCheck = true;
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgram = "${placeholder "out"}/bin/oro";
versionCheckProgramArg = "--version";
meta = with lib; {
description = "Package manager for tools that use node_modules";
homepage = "https://github.com/orogene/orogene";
changelog = "https://github.com/orogene/orogene/blob/${src.rev}/CHANGELOG.md";
license = with licenses; [
asl20
isc
];
maintainers = with maintainers; [ figsoda ];
mainProgram = "oro";
};
}
File diff suppressed because it is too large Load Diff
+2
View File
@@ -46,6 +46,8 @@ buildPythonApplication rec {
disabledTestPaths = [
# out-of-date browser tests
"test/e2e"
# click 8.2.0 exits with 2 instead of 0 when no args are passed
"test/integration/test_command.py::test_main"
];
__darwinAllowLocalNetworking = true;
+200
View File
@@ -0,0 +1,200 @@
diff --git a/Cargo.lock b/Cargo.lock
index e799bfd1..efd6601a 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -86,6 +86,21 @@ dependencies = [
"zbus",
]
+[[package]]
+name = "astral-tokio-tar"
+version = "0.5.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec179a06c1769b1e42e1e2cbe74c7dcdb3d6383c838454d063eaac5bbb7ebbe5"
+dependencies = [
+ "filetime",
+ "futures-core",
+ "libc",
+ "portable-atomic",
+ "rustc-hash",
+ "tokio",
+ "tokio-stream",
+]
+
[[package]]
name = "async-broadcast"
version = "0.7.2"
@@ -147,12 +162,6 @@ version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
-[[package]]
-name = "bitflags"
-version = "1.3.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
-
[[package]]
name = "bitflags"
version = "2.9.0"
@@ -213,7 +222,7 @@ version = "0.20.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae50b5510d86cf96ac2370e66d8dc960882f3df179d6a5a1e52bd94a1416c0f7"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
"cairo-sys-rs",
"glib",
"libc",
@@ -833,7 +842,7 @@ version = "0.20.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "707b819af8059ee5395a2de9f2317d87a53dbad8846a2f089f0bb44703f37686"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
"futures-channel",
"futures-core",
"futures-executor",
@@ -1368,9 +1377,9 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
"libc",
- "redox_syscall 0.5.10",
+ "redox_syscall",
]
[[package]]
@@ -1488,7 +1497,7 @@ version = "0.29.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
"cfg-if",
"cfg_aliases",
"libc",
@@ -1842,6 +1851,7 @@ version = "2.2.0"
dependencies = [
"anyhow",
"ashpd",
+ "astral-tokio-tar",
"futures",
"gettext-rs",
"gtk4",
@@ -1860,11 +1870,16 @@ dependencies = [
"syslog",
"tokio",
"tokio-stream",
- "tokio-tar",
"vte",
"vte4",
]
+[[package]]
+name = "portable-atomic"
+version = "1.11.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483"
+
[[package]]
name = "powerfmt"
version = "0.2.0"
@@ -1973,22 +1988,13 @@ dependencies = [
"getrandom 0.3.2",
]
-[[package]]
-name = "redox_syscall"
-version = "0.3.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
-dependencies = [
- "bitflags 1.3.2",
-]
-
[[package]]
name = "redox_syscall"
version = "0.5.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
]
[[package]]
@@ -2026,6 +2032,12 @@ version = "0.1.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f"
+[[package]]
+name = "rustc-hash"
+version = "2.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
+
[[package]]
name = "rustc_version"
version = "0.4.1"
@@ -2041,7 +2053,7 @@ version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e56a18552996ac8d29ecc3b190b4fdbb2d91ca4ec396de7bbffaf43f3d637e96"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
"errno",
"libc",
"linux-raw-sys",
@@ -2434,20 +2446,6 @@ dependencies = [
"tokio",
]
-[[package]]
-name = "tokio-tar"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5714c010ca3e5c27114c1cdeb9d14641ace49874aa5626d7149e47aedace75"
-dependencies = [
- "filetime",
- "futures-core",
- "libc",
- "redox_syscall 0.3.5",
- "tokio",
- "tokio-stream",
-]
-
[[package]]
name = "toml"
version = "0.8.20"
@@ -2862,7 +2860,7 @@ version = "0.39.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
dependencies = [
- "bitflags 2.9.0",
+ "bitflags",
]
[[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 9a0b95d7..7d818fbf 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -8,6 +8,7 @@ edition = "2024"
adw = { version = "0.7", package = "libadwaita", features = ["v1_7"] }
anyhow = "1"
ashpd = { version = "0.11", default-features = false, features = ["gtk4", "tokio"] }
+astral-tokio-tar = { version = "0.5.6", default-features = false }
futures = { version = "0.3", default-features = false }
gettext-rs = { version = "=0.7.0", features = ["gettext-system"] }
gtk = { version = "0.9", package = "gtk4", features = ["gnome_47"] }
@@ -25,7 +26,6 @@ sourceview5 = { version = "0.9" }
syslog = "7"
tokio = "1"
tokio-stream = { version = "0.1", default-features = false }
-tokio-tar = { version = "0.3", default-features = false }
vte = { version = "0.15", default-features = false }
vte4 = "0.8"
+27 -7
View File
@@ -2,6 +2,8 @@
lib,
stdenv,
fetchFromGitHub,
applyPatches,
fetchpatch2,
cargo,
desktop-file-utils,
glib,
@@ -16,22 +18,32 @@
libadwaita,
libpanel,
vte-gtk4,
versionCheckHook,
nix-update-script,
}:
stdenv.mkDerivation rec {
pname = "pods";
version = "2.1.2";
version = "2.2.0";
src = fetchFromGitHub {
owner = "marhkb";
repo = "pods";
tag = "v${version}";
hash = "sha256-S84Qb+hySjIxcznuA7Sh8n9XFvdZpf32Yznb1Sj+owY=";
src = applyPatches {
name = "pods-patched";
src = fetchFromGitHub {
owner = "marhkb";
repo = "pods";
tag = "v${version}";
hash = "sha256-m+0XjxY0nDAJbVX3r/Jfg+G+RU8Q51e0ZXxkdH69SiQ=";
};
# Based on upstream PR: https://github.com/marhkb/pods/pull/895
# which cannot be merged into 2.2.0 because dependencies were bumped since its release.
# Hopefully 2.2.1 will be released soon
patches = [ ./cve-2025-62516.patch ];
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-UBInZdoluWXq1jm2rhS5wBwXQ/zYFPSEeWhpSmkc2aY=";
hash = "sha256-GBWaGCNXYCiT/favrIYB30VGMMoQQk1iUh4GTNPerK8=";
};
nativeBuildInputs = [
@@ -55,6 +67,14 @@ stdenv.mkDerivation rec {
vte-gtk4
];
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
passthru = {
updateScript = nix-update-script { };
};
meta = {
description = "Podman desktop application";
homepage = "https://github.com/marhkb/pods";
@@ -0,0 +1,42 @@
{
stdenv,
lib,
fetchFromGitHub,
tinyxml-2,
cmake,
qt5,
}:
stdenv.mkDerivation (finalAttrs: {
version = "1.0.13";
pname = "pro-office-calculator";
src = fetchFromGitHub {
owner = "RobJinman";
repo = "pro_office_calc";
tag = "v${finalAttrs.version}";
hash = "sha256-7cYItmWOBDP/ajanwYnyBZobVny/9HumI7e+rLRn5ew=";
};
buildInputs = [
qt5.qtbase
qt5.qtmultimedia
tinyxml-2
];
nativeBuildInputs = [
cmake
qt5.wrapQtAppsHook
];
meta = {
description = "Completely normal office calculator";
mainProgram = "procalc";
homepage = "https://proofficecalculator.com/";
maintainers = with lib.maintainers; [
pmiddend
iedame
];
platforms = lib.platforms.linux;
license = lib.licenses.gpl3Only;
};
})
@@ -2,46 +2,27 @@
lib,
python3Packages,
fetchFromGitHub,
fetchpatch2,
unstableGitUpdater,
}:
python3Packages.buildPythonApplication {
python3Packages.buildPythonApplication rec {
pname = "prometheus-rasdaemon-exporter";
version = "0-unstable-2023-03-15";
version = "0-unstable-2025-01-02";
pyproject = true;
src = fetchFromGitHub {
owner = "sanecz";
repo = "prometheus-rasdaemon-exporter";
rev = "e37084edeb4d397dd360298cb22f18f83a35ff46";
hash = "sha256-O0Zzog+5jDixFRGbqmjPYi6JDpHbxpU4hKfsqTnexS8=";
rev = "06cf02a4fa277fdc422275d9c4fe930786fc3f78";
hash = "sha256-QPbCwEpbG7gDPOSRcgu82QEqKkmW0uRhmSOWGgwVMDI=";
};
patches = [
# Normalization of metric names
# https://github.com/sanecz/prometheus-rasdaemon-exporter/pull/1
(fetchpatch2 {
url = "https://github.com/sanecz/prometheus-rasdaemon-exporter/commit/46d379ba205c2340a0b266bf3cd48ec88ce025d0.patch";
hash = "sha256-kqo1Tjn51M1FzArS4K0ylQ2/rFDOAiZU3OUt/oBhGhM=";
})
(fetchpatch2 {
url = "https://github.com/sanecz/prometheus-rasdaemon-exporter/commit/c9ab08e8918497edb8f1ab0f933fa270cb7860a8.patch";
hash = "sha256-QtjzXuxPG7e+cgUDVbAVNY4VyBp3W5+vQDAvFJ9t92I=";
})
# Fix sqlite3.connect URI passing
# https://github.com/sanecz/prometheus-rasdaemon-exporter/pull/2
(fetchpatch2 {
url = "https://github.com/sanecz/prometheus-rasdaemon-exporter/commit/52f6c47b77f480cd7f83853a2baffffb45f77b37.patch";
hash = "sha256-XYeWMkAhWJIOUKLeTstIJr3P37Jwt8tzRURCvlrrxVs=";
})
];
build-system = with python3Packages; [
setuptools
setuptools-scm
];
env.SETUPTOOLS_SCM_PRETEND_VERSION = "0.1.dev9+ge37084e";
env.SETUPTOOLS_SCM_PRETEND_VERSION = "0.1.dev+g${lib.substring 0 7 src.rev}";
dependencies = with python3Packages; [
prometheus-client
@@ -53,6 +34,8 @@ python3Packages.buildPythonApplication {
doCheck = false; # no tests
passthru.updateScript = unstableGitUpdater { };
meta = {
description = "Rasdaemon exporter for Prometheus";
homepage = "https://github.com/sanecz/prometheus-rasdaemon-exporter";
+4 -4
View File
@@ -66,13 +66,13 @@ in
rustPlatform.buildRustPackage {
pname = "servo";
version = "0.0.1-unstable-2025-10-22";
version = "0.0.1-unstable-2025-10-26";
src = fetchFromGitHub {
owner = "servo";
repo = "servo";
rev = "efc8c0f6647e542e35bac732585bc3aef6578028";
hash = "sha256-mLXs0OaOLD12hFQ8w/3xnDV+4fhjRKToRjZZMPDJ9X8=";
rev = "504a8d819f207833240b90fe5d61e81ff9f5d82b";
hash = "sha256-mToBb9bcdUx7ZWQkax88SLqTS85lUNMGK1sYASWGt4o=";
# Breaks reproducibility depending on whether the picked commit
# has other ref-names or not, which may change over time, i.e. with
# "ref-names: HEAD -> main" as long this commit is the branch HEAD
@@ -82,7 +82,7 @@ rustPlatform.buildRustPackage {
'';
};
cargoHash = "sha256-POMWoM5NVeas/t1XivqBDrhZy7qRvIL3e01Wu3893L4=";
cargoHash = "sha256-vyfiMsJlxt7dG9FeZ1XL6Qb7oma4pB+Aq7heaWKiyvY=";
# set `HOME` to a temp dir for write access
# Fix invalid option errors during linking (https://github.com/mozilla/nixpkgs-mozilla/commit/c72ff151a3e25f14182569679ed4cd22ef352328)
+33 -15
View File
@@ -30,25 +30,32 @@
fixDarwinDylibNames,
applyPatches,
shipwright,
libopus,
opusfile,
libogg,
libvorbis,
bzip2,
libX11,
sdl_gamecontrollerdb,
}:
let
# The following would normally get fetched at build time, or a specific version is required
gamecontrollerdb = fetchFromGitHub {
owner = "mdqinc";
repo = "SDL_GameControllerDB";
rev = "a74711e1e87733ccdf02d7020d8fa9e4fa67176e";
hash = "sha256-rXC4akz9BaKzr/C2CryZC6RGk6+fGVG7RsQryUFUUk0=";
dr_libs = fetchFromGitHub {
owner = "mackron";
repo = "dr_libs";
rev = "da35f9d6c7374a95353fd1df1d394d44ab66cf01";
hash = "sha256-ydFhQ8LTYDBnRTuETtfWwIHZpRciWfqGsZC6SuViEn0=";
};
imgui' = applyPatches {
src = fetchFromGitHub {
owner = "ocornut";
repo = "imgui";
tag = "v1.91.6-docking";
hash = "sha256-28wyzzwXE02W5vbEdRCw2iOF8ONkb3M3Al8XlYBvz1A=";
tag = "v1.91.9b-docking";
hash = "sha256-mQOJ6jCN+7VopgZ61yzaCnt4R1QLrW7+47xxMhFRHLQ=";
};
patches = [
"${shipwright.src}/libultraship/cmake/dependencies/patches/imgui-fixes-and-config.patch"
@@ -65,8 +72,8 @@ let
prism = fetchFromGitHub {
owner = "KiritoDv";
repo = "prism-processor";
rev = "fb3f8b4a2d14dfcbae654d0f0e59a73b6f6ca850";
hash = "sha256-gGdQSpX/TgCNZ0uyIDdnazgVHpAQhl30e+V0aVvTFMM=";
rev = "bbcbc7e3f890a5806b579361e7aa0336acd547e7";
hash = "sha256-jRPwO1Vub0cH12YMlME6kd8zGzKmcfIrIJZYpQJeOks=";
};
stb_impl = writeTextFile {
@@ -111,12 +118,12 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "shipwright";
version = "9.0.5";
version = "9.1.0";
src = fetchFromGitHub {
owner = "harbourmasters";
repo = "shipwright";
tag = finalAttrs.version;
hash = "sha256-F5d4u3Nq/+yYiOgkH/bwWPhZDxgBpJ5ktee0Hc5UmEo=";
hash = "sha256-sRUg6wa0KOG+hoR+6QEVyPe/9O9yEefNB69BMO+H+iU=";
fetchSubmodules = true;
deepClone = true;
postFetch = ''
@@ -161,6 +168,12 @@ stdenv.mkDerivation (finalAttrs: {
nlohmann_json
tinyxml-2
spdlog
(lib.getDev libopus)
(lib.getDev opusfile)
libogg
libvorbis
bzip2
libX11
]
++ lib.optionals stdenv.hostPlatform.isLinux [
libpulseaudio
@@ -175,11 +188,14 @@ stdenv.mkDerivation (finalAttrs: {
(lib.cmakeBool "BUILD_REMOTE_CONTROL" true)
(lib.cmakeBool "NON_PORTABLE" true)
(lib.cmakeFeature "CMAKE_INSTALL_PREFIX" "${placeholder "out"}/lib")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_DR_LIBS" "${dr_libs}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_IMGUI" "${imgui'}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_LIBGFXD" "${libgfxd}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_PRISM" "${prism}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_STORMLIB" "${stormlib'}")
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_THREADPOOL" "${thread_pool}")
(lib.cmakeFeature "OPUS_INCLUDE_DIR" "${lib.getDev libopus}/include/opus")
(lib.cmakeFeature "OPUSFILE_INCLUDE_DIR" "${lib.getDev opusfile}/include/opus")
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
(lib.cmakeFeature "FETCHCONTENT_SOURCE_DIR_METALCPP" "${metalcpp}")
@@ -188,6 +204,8 @@ stdenv.mkDerivation (finalAttrs: {
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-Wno-int-conversion -Wno-implicit-int -Wno-elaborated-enum-base";
strictDeps = true;
dontAddPrefix = true;
# Linking fails without this
@@ -210,16 +228,16 @@ stdenv.mkDerivation (finalAttrs: {
postBuild = ''
port_ver=$(grep CMAKE_PROJECT_VERSION: "$PWD/CMakeCache.txt" | cut -d= -f2)
cp ${gamecontrollerdb}/gamecontrollerdb.txt gamecontrollerdb.txt
mv ../libultraship/src/graphic/Fast3D/shaders ../soh/assets/custom
cp ${sdl_gamecontrollerdb}/share/gamecontrollerdb.txt gamecontrollerdb.txt
mv ../libultraship/src/fast/shaders ../soh/assets/custom
pushd ../OTRExporter
python3 ./extract_assets.py -z ../build/ZAPD/ZAPD.out --norom --xml-root ../soh/assets/xml --custom-assets-path ../soh/assets/custom --custom-otr-file soh.otr --port-ver $port_ver
python3 ./extract_assets.py -z ../build/ZAPD/ZAPD.out --norom --xml-root ../soh/assets/xml --custom-assets-path ../soh/assets/custom --custom-otr-file soh.o2r --port-ver $port_ver
popd
'';
preInstall = ''
# Cmake likes it here for its install paths
cp ../OTRExporter/soh.otr soh/soh.otr
cp ../OTRExporter/soh.o2r soh/soh.o2r
'';
postInstall =
+2 -2
View File
@@ -10,14 +10,14 @@
python3Packages.buildPythonApplication rec {
pname = "snakemake";
version = "9.13.2";
version = "9.13.4";
pyproject = true;
src = fetchFromGitHub {
owner = "snakemake";
repo = "snakemake";
tag = "v${version}";
hash = "sha256-7XEs+BTy6xPQidbuafrzELvfNjpzU9RcatXpRwHZ+1A=";
hash = "sha256-SNI9MS1rQ7G27HBeORQ83JOCaCNgp+6h5GeK6sXU2Lg=";
};
postPatch = ''
+104
View File
@@ -0,0 +1,104 @@
{
cmake,
cmark-gfm,
fetchFromGitHub,
fetchNpmDeps,
grpc-tools,
kdePackages,
lib,
libqalculate,
minizip,
ninja,
nodejs,
npmHooks,
pkg-config,
protobuf,
qt6,
rapidfuzz-cpp,
stdenv,
wayland,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "vicinae";
version = "0.15.5";
src = fetchFromGitHub {
owner = "vicinaehq";
repo = "vicinae";
tag = "v${finalAttrs.version}";
hash = "sha256-3pKexTUWfohL/S/yWsVMShmtMlBFI9zsd7NFzySKG0w=";
};
apiDeps = fetchNpmDeps {
src = "${finalAttrs.src}/typescript/api";
hash = "sha256-dSHEzw15lSRRbldl9PljuWFf2htdG+HgSeKPAB88RBg=";
};
extensionManagerDeps = fetchNpmDeps {
src = "${finalAttrs.src}/typescript/extension-manager";
hash = "sha256-TCT7uZRZn4rsLA/z2yLeK5Bt4DJPmdSC4zkmuCxTtc8=";
};
cmakeFlags = lib.mapAttrsToList lib.cmakeFeature {
"VICINAE_GIT_TAG" = "v${finalAttrs.version}";
"VICINAE_PROVENANCE" = "nix";
"INSTALL_NODE_MODULES" = "OFF";
"CMAKE_INSTALL_PREFIX" = placeholder "out";
"CMAKE_INSTALL_DATAROOTDIR" = "share";
"CMAKE_INSTALL_BINDIR" = "bin";
"CMAKE_INSTALL_LIBDIR" = "lib";
};
nativeBuildInputs = [
cmake
ninja
nodejs
pkg-config
protobuf
qt6.wrapQtAppsHook
];
buildInputs = [
cmark-gfm
grpc-tools
kdePackages.layer-shell-qt
kdePackages.qtkeychain
libqalculate
minizip
nodejs
protobuf
qt6.qtbase
qt6.qtsvg
qt6.qtwayland
rapidfuzz-cpp
wayland
];
postPatch = ''
local postPatchHooks=()
source ${npmHooks.npmConfigHook}/nix-support/setup-hook
npmRoot=typescript/api npmDeps=${finalAttrs.apiDeps} npmConfigHook
npmRoot=typescript/extension-manager npmDeps=${finalAttrs.extensionManagerDeps} npmConfigHook
'';
qtWrapperArgs = [
"--prefix PATH : ${
lib.makeBinPath [
nodejs
(placeholder "out")
]
}"
];
meta = {
description = "A focused launcher for your desktop native, fast, extensible";
homepage = "https://github.com/vicinaehq/vicinae";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
dawnofmidnight
zstg
];
platforms = lib.platforms.linux;
mainProgram = "vicinae";
};
})
@@ -12,7 +12,7 @@
libclang,
version,
python3,
buildLlvmTools,
buildLlvmPackages,
patches ? [ ],
devExtraCmakeFlags ? [ ],
fetchpatch,
@@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
];
cmakeFlags = [
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmTools.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmPackages.tblgen}/bin/llvm-tblgen")
]
++ devExtraCmakeFlags;
@@ -12,7 +12,7 @@
release_version,
version,
python3,
buildLlvmTools,
buildLlvmPackages,
fixDarwinDylibNames,
enableManpages ? false,
enableClangToolsExtra ? true,
@@ -96,9 +96,9 @@ stdenv.mkDerivation (
(lib.cmakeBool "CLANGD_BUILD_XPC" false)
(lib.cmakeBool "LLVM_ENABLE_RTTI" true)
(lib.cmakeBool "LLVM_INCLUDE_TESTS" false)
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmTools.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "CLANG_TABLEGEN" "${buildLlvmTools.tblgen}/bin/clang-tblgen")
(lib.cmakeFeature "CLANG_TIDY_CONFUSABLE_CHARS_GEN" "${buildLlvmTools.tblgen}/bin/clang-tidy-confusable-chars-gen")
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmPackages.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "CLANG_TABLEGEN" "${buildLlvmPackages.tblgen}/bin/clang-tblgen")
(lib.cmakeFeature "CLANG_TIDY_CONFUSABLE_CHARS_GEN" "${buildLlvmPackages.tblgen}/bin/clang-tidy-confusable-chars-gen")
]
++ lib.optional (lib.versionAtLeast release_version "20") (
lib.cmakeFeature "LLVM_DIR" "${libllvm.dev}/lib/cmake/llvm"
@@ -115,7 +115,7 @@ stdenv.mkDerivation (
]
++ lib.optionals (lib.versionOlder release_version "20") [
# clang-pseudo removed in LLVM20: https://github.com/llvm/llvm-project/commit/ed8f78827895050442f544edef2933a60d4a7935
(lib.cmakeFeature "CLANG_PSEUDO_GEN" "${buildLlvmTools.tblgen}/bin/clang-pseudo-gen")
(lib.cmakeFeature "CLANG_PSEUDO_GEN" "${buildLlvmPackages.tblgen}/bin/clang-pseudo-gen")
]
++ devExtraCmakeFlags;
+180 -185
View File
@@ -1,34 +1,31 @@
{
lowPrio,
newScope,
pkgs,
targetPackages,
lib,
stdenv,
libxcrypt,
substitute,
replaceVars,
fetchFromGitHub,
fetchpatch,
fetchpatch2,
overrideCC,
wrapCCWith,
wrapBintoolsWith,
buildPackages,
buildLlvmTools, # tools, but from the previous stage, for cross
targetLlvmLibraries, # libraries, but from the next stage, for cross
targetLlvm,
makeScopeWithSplicing',
otherSplices,
splicePackages,
# This is the default binutils, but with *this* version of LLD rather
# than the default LLVM version's, if LLD is the choice. We use these for
# the `useLLVM` bootstrapping below.
bootBintoolsNoLibc ? if stdenv.targetPlatform.linker == "lld" then null else pkgs.bintoolsNoLibc,
bootBintools ? if stdenv.targetPlatform.linker == "lld" then null else pkgs.bintools,
bootBintoolsNoLibc,
bootBintools,
darwin,
gitRelease ? null,
officialRelease ? null,
monorepoSrc ? null,
version ? null,
patchesFn ? lib.id,
cmake,
cmakeMinimal,
python3,
python3Minimal,
# Allows passthrough to packages via newScope. This makes it possible to
# do `(llvmPackages.override { <someLlvmDependency> = bar; }).clang` and get
# an llvmPackages whose packages are overridden in an internally consistent way.
@@ -110,11 +107,24 @@ let
};
};
tools = lib.makeExtensible (
tools:
buildLlvmPackages = otherSplices.selfBuildHost;
in
makeScopeWithSplicing' {
inherit otherSplices;
extra = _spliced0: args // metadata // { inherit buildLlvmPackages; };
f =
self:
let
callPackage = newScope (tools // args // metadata);
targetLlvmPackages =
if otherSplices.selfTargetTarget == { } then self else otherSplices.selfTargetTarget;
# FIXME: This is a tragic and unprincipled hack, but I dont
# know what would actually be good instead.
newScope = scope: self.newScope ({ inherit (args) stdenv; } // scope);
callPackage = newScope { };
clangVersion = lib.versions.major metadata.release_version;
mkExtraBuildCommands0 =
cc:
''
@@ -134,37 +144,40 @@ let
ln -s "${lib.getLib cc}/lib/clang/${clangVersion}/include" "$rsrc"
''
);
mkExtraBuildCommandsBasicRt =
cc:
mkExtraBuildCommands0 cc
+ ''
ln -s "${targetLlvmLibraries.compiler-rt-no-libc.out}/lib" "$rsrc/lib"
ln -s "${targetLlvmPackages.compiler-rt-no-libc.out}/lib" "$rsrc/lib"
'';
mkExtraBuildCommands =
cc:
mkExtraBuildCommands0 cc
+ ''
ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
ln -s "${targetLlvmPackages.compiler-rt.out}/lib" "$rsrc/lib"
ln -s "${targetLlvmPackages.compiler-rt.out}/share" "$rsrc/share"
'';
bintoolsNoLibc' = if bootBintoolsNoLibc == null then tools.bintoolsNoLibc else bootBintoolsNoLibc;
bintools' = if bootBintools == null then tools.bintools else bootBintools;
bintoolsNoLibc' = if bootBintoolsNoLibc == null then self.bintoolsNoLibc else bootBintoolsNoLibc;
bintools' = if bootBintools == null then self.bintools else bootBintools;
in
{
libllvm = callPackage ./llvm {
};
inherit (metadata) release_version;
libllvm = callPackage ./llvm { };
# `llvm` historically had the binaries. When choosing an output explicitly,
# we need to reintroduce `outputSpecified` to get the expected behavior e.g. of lib.get*
llvm = tools.libllvm;
llvm = self.libllvm;
tblgen = callPackage ./tblgen.nix {
patches =
builtins.filter
# Crude method to drop polly patches if present, they're not needed for tblgen.
(p: (!lib.hasInfix "-polly" p))
tools.libllvm.patches;
self.libllvm.patches;
clangPatches = [
# Would take tools.libclang.patches, but this introduces a cycle due
# to replacements depending on the llvm outpath (e.g. the LLVMgold patch).
@@ -173,20 +186,19 @@ let
];
};
libclang = callPackage ./clang {
};
libclang = callPackage ./clang { };
clang-unwrapped = tools.libclang;
clang-unwrapped = self.libclang;
llvm-manpages = lowPrio (
tools.libllvm.override {
self.libllvm.override {
enableManpages = true;
python3 = pkgs.python3; # don't use python-boot
}
);
clang-manpages = lowPrio (
tools.libclang.override {
self.libclang.override {
enableManpages = true;
python3 = pkgs.python3; # don't use python-boot
}
@@ -198,55 +210,59 @@ let
# pick clang appropriate for package set we are targeting
clang =
if stdenv.targetPlatform.libc == null then
tools.clangNoLibc
self.clangNoLibc
else if stdenv.targetPlatform.isDarwin then
tools.systemLibcxxClang
self.systemLibcxxClang
else if stdenv.targetPlatform.useLLVM or false then
tools.clangUseLLVM
else if (pkgs.targetPackages.stdenv or args.stdenv).cc.isGNU then
tools.libstdcxxClang
self.clangUseLLVM
else if (targetPackages.stdenv or stdenv).cc.isGNU then
self.libstdcxxClang
else
tools.libcxxClang;
self.libcxxClang;
libstdcxxClang = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
# libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper.
libcxx = null;
extraPackages = [ targetLlvmLibraries.compiler-rt ];
extraPackages = [ targetLlvmPackages.compiler-rt ];
extraBuildCommands = mkExtraBuildCommands cc;
};
libcxxClang = wrapCCWith rec {
cc = tools.clang-unwrapped;
libcxx = targetLlvmLibraries.libcxx;
extraPackages = [ targetLlvmLibraries.compiler-rt ];
cc = self.clang-unwrapped;
libcxx = targetLlvmPackages.libcxx;
extraPackages = [ targetLlvmPackages.compiler-rt ];
extraBuildCommands = mkExtraBuildCommands cc;
};
# Darwin uses the system libc++ by default. It is set up as its own clang definition so that `libcxxClang`
# continues to use the libc++ from LLVM.
systemLibcxxClang = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
libcxx = darwin.libcxx;
extraPackages = [ targetLlvmLibraries.compiler-rt ];
extraPackages = [ targetLlvmPackages.compiler-rt ];
extraBuildCommands = mkExtraBuildCommands cc;
};
lld = callPackage ./lld {
};
lld = callPackage ./lld { };
lldbPlugins = lib.makeExtensible (
lldbPlugins:
let
callPackage = newScope (lldbPlugins // tools // args // metadata);
in
lib.recurseIntoAttrs { llef = callPackage ./lldb-plugins/llef.nix { }; }
lldbPlugins = lib.recurseIntoAttrs (
lib.makeScopeWithSplicing'
{
inherit splicePackages newScope;
}
{
otherSplices = lib.mapAttrs (_: selfSplice: selfSplice.lldbPlugins or { }) otherSplices;
f = selfLldbPlugins: {
llef = selfLldbPlugins.callPackage ./lldb-plugins/llef.nix { };
};
}
);
lldb = callPackage ./lldb { };
lldb-manpages = lowPrio (
tools.lldb.override {
self.lldb.override {
enableManpages = true;
python3 = pkgs.python3; # don't use python-boot
}
@@ -262,27 +278,29 @@ let
bintools-unwrapped = callPackage ./bintools.nix { };
bintoolsNoLibc = wrapBintoolsWith {
bintools = tools.bintools-unwrapped;
bintools = self.bintools-unwrapped;
libc = targetPackages.preLibcHeaders;
};
bintools = wrapBintoolsWith { bintools = tools.bintools-unwrapped; };
bintools = wrapBintoolsWith {
bintools = self.bintools-unwrapped;
};
clangUseLLVM = wrapCCWith rec {
cc = tools.clang-unwrapped;
libcxx = targetLlvmLibraries.libcxx;
cc = self.clang-unwrapped;
libcxx = targetLlvmPackages.libcxx;
bintools = bintools';
extraPackages = [
targetLlvmLibraries.compiler-rt
targetLlvmPackages.compiler-rt
]
++ lib.optionals (!stdenv.targetPlatform.isWasm && !stdenv.targetPlatform.isFreeBSD) [
targetLlvmLibraries.libunwind
targetLlvmPackages.libunwind
];
extraBuildCommands = mkExtraBuildCommands cc;
nixSupport.cc-cflags = [
"-rtlib=compiler-rt"
"-Wno-unused-command-line-argument"
"-B${targetLlvmLibraries.compiler-rt}/lib"
"-B${targetLlvmPackages.compiler-rt}/lib"
]
++ lib.optional (
!stdenv.targetPlatform.isWasm && !stdenv.targetPlatform.isFreeBSD
@@ -295,16 +313,19 @@ let
++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions";
nixSupport.cc-ldflags = lib.optionals (
!stdenv.targetPlatform.isWasm && !stdenv.targetPlatform.isFreeBSD
) [ "-L${targetLlvmLibraries.libunwind}/lib" ];
) [ "-L${targetLlvmPackages.libunwind}/lib" ];
};
clangWithLibcAndBasicRtAndLibcxx = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
# This is used to build compiler-rt. Make sure to use the system libc++ on Darwin.
libcxx = if stdenv.hostPlatform.isDarwin then darwin.libcxx else targetLlvmLibraries.libcxx;
#
# FIXME: This should almost certainly use
# `stdenv.targetPlatform` and `targetPackages.darwin.libcxx`.
libcxx = if stdenv.hostPlatform.isDarwin then darwin.libcxx else targetLlvmPackages.libcxx;
bintools = bintools';
extraPackages = [
targetLlvmLibraries.compiler-rt-no-libc
targetLlvmPackages.compiler-rt-no-libc
]
++
lib.optionals
@@ -312,13 +333,13 @@ let
!stdenv.targetPlatform.isWasm && !stdenv.targetPlatform.isFreeBSD && !stdenv.targetPlatform.isDarwin
)
[
targetLlvmLibraries.libunwind
targetLlvmPackages.libunwind
];
extraBuildCommands = mkExtraBuildCommandsBasicRt cc;
nixSupport.cc-cflags = [
"-rtlib=compiler-rt"
"-Wno-unused-command-line-argument"
"-B${targetLlvmLibraries.compiler-rt-no-libc}/lib"
"-B${targetLlvmPackages.compiler-rt-no-libc}/lib"
]
++ lib.optional (
!stdenv.targetPlatform.isWasm && !stdenv.targetPlatform.isFreeBSD && !stdenv.targetPlatform.isDarwin
@@ -331,50 +352,50 @@ let
++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions";
nixSupport.cc-ldflags = lib.optionals (
!stdenv.targetPlatform.isWasm && !stdenv.targetPlatform.isFreeBSD && !stdenv.targetPlatform.isDarwin
) [ "-L${targetLlvmLibraries.libunwind}/lib" ];
) [ "-L${targetLlvmPackages.libunwind}/lib" ];
};
clangWithLibcAndBasicRt = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
libcxx = null;
bintools = bintools';
extraPackages = [ targetLlvmLibraries.compiler-rt-no-libc ];
extraPackages = [ targetLlvmPackages.compiler-rt-no-libc ];
extraBuildCommands = mkExtraBuildCommandsBasicRt cc;
nixSupport.cc-cflags = [
"-rtlib=compiler-rt"
"-B${targetLlvmLibraries.compiler-rt-no-libc}/lib"
"-B${targetLlvmPackages.compiler-rt-no-libc}/lib"
"-nostdlib++"
]
++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions";
};
clangNoLibcWithBasicRt = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
libcxx = null;
bintools = bintoolsNoLibc';
extraPackages = [ targetLlvmLibraries.compiler-rt-no-libc ];
extraPackages = [ targetLlvmPackages.compiler-rt-no-libc ];
extraBuildCommands = mkExtraBuildCommandsBasicRt cc;
nixSupport.cc-cflags = [
"-rtlib=compiler-rt"
"-B${targetLlvmLibraries.compiler-rt-no-libc}/lib"
"-B${targetLlvmPackages.compiler-rt-no-libc}/lib"
]
++ lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions";
};
clangNoLibcNoRt = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
libcxx = null;
bintools = bintoolsNoLibc';
extraPackages = [ ];
# "-nostartfiles" used to be needed for pkgsLLVM, causes problems so don't include it.
extraBuildCommands = mkExtraBuildCommands0 cc;
# "-nostartfiles" used to be needed for pkgsLLVM, causes problems so don't include it.
nixSupport.cc-cflags = lib.optional stdenv.targetPlatform.isWasm "-fno-exceptions";
};
# This is an "oddly ordered" bootstrap just for Darwin. Probably
# don't want it otherwise.
clangNoCompilerRtWithLibc = wrapCCWith rec {
cc = tools.clang-unwrapped;
cc = self.clang-unwrapped;
libcxx = null;
bintools = bintools';
extraPackages = [ ];
@@ -383,126 +404,100 @@ let
};
# Aliases
clangNoCompilerRt = tools.clangNoLibcNoRt;
clangNoLibc = tools.clangNoLibcWithBasicRt;
clangNoLibcxx = tools.clangWithLibcAndBasicRt;
clangNoCompilerRt = self.clangNoLibcNoRt;
clangNoLibc = self.clangNoLibcWithBasicRt;
clangNoLibcxx = self.clangWithLibcAndBasicRt;
compiler-rt-libc = callPackage ./compiler-rt (
let
# temp rename to avoid infinite recursion
stdenv =
# Darwin needs to use a bootstrap stdenv to avoid an infinite recursion when cross-compiling.
if args.stdenv.hostPlatform.isDarwin then
overrideCC darwin.bootstrapStdenv buildLlvmPackages.clangWithLibcAndBasicRtAndLibcxx
else if args.stdenv.hostPlatform.useLLVM or false then
overrideCC args.stdenv buildLlvmPackages.clangWithLibcAndBasicRtAndLibcxx
else
args.stdenv;
in
{
inherit stdenv;
}
);
compiler-rt-no-libc = callPackage ./compiler-rt {
doFakeLibgcc = stdenv.hostPlatform.useLLVM or false;
stdenv =
# Darwin needs to use a bootstrap stdenv to avoid an infinite recursion when cross-compiling.
if stdenv.hostPlatform.isDarwin then
overrideCC darwin.bootstrapStdenv buildLlvmPackages.clangNoLibcNoRt
else
overrideCC stdenv buildLlvmPackages.clangNoLibcNoRt;
};
compiler-rt =
if
stdenv.hostPlatform.libc == null
# Building the with-libc compiler-rt and WASM doesn't yet work,
# because wasilibc doesn't provide some expected things. See
# compiler-rt's file for further details.
|| stdenv.hostPlatform.isWasm
# Failing `#include <term.h>` in
# `lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp`
# sanitizers, not sure where to get it.
|| stdenv.hostPlatform.isFreeBSD
then
self.compiler-rt-no-libc
else
self.compiler-rt-libc;
stdenv = overrideCC stdenv buildLlvmPackages.clang;
libcxxStdenv = overrideCC stdenv buildLlvmPackages.libcxxClang;
libcxx = callPackage ./libcxx {
stdenv =
if stdenv.hostPlatform.isDarwin then
overrideCC darwin.bootstrapStdenv buildLlvmPackages.clangWithLibcAndBasicRt
else
overrideCC stdenv buildLlvmPackages.clangWithLibcAndBasicRt;
};
libunwind = callPackage ./libunwind {
stdenv = overrideCC stdenv buildLlvmPackages.clangWithLibcAndBasicRt;
};
openmp = callPackage ./openmp { };
mlir = callPackage ./mlir { };
libclc = callPackage ./libclc { };
}
// lib.optionalAttrs (lib.versionAtLeast metadata.release_version "19") {
bolt = callPackage ./bolt {
};
bolt = callPackage ./bolt { };
}
// lib.optionalAttrs (lib.versionAtLeast metadata.release_version "20") {
flang = callPackage ./flang {
mlir = tools.mlir;
flang = callPackage ./flang { };
libc-overlay = callPackage ./libc {
isFullBuild = false;
# Use clang due to "gnu::naked" not working on aarch64.
# Issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77882
stdenv = overrideCC stdenv buildLlvmPackages.clang;
};
}
);
libraries = lib.makeExtensible (
libraries:
let
callPackage = newScope (libraries // buildLlvmTools // args // metadata);
in
(
{
compiler-rt-libc = callPackage ./compiler-rt (
let
# temp rename to avoid infinite recursion
stdenv =
# Darwin needs to use a bootstrap stdenv to avoid an infinite recursion when cross-compiling.
if args.stdenv.hostPlatform.isDarwin then
overrideCC darwin.bootstrapStdenv buildLlvmTools.clangWithLibcAndBasicRtAndLibcxx
else if args.stdenv.hostPlatform.useLLVM or false then
overrideCC args.stdenv buildLlvmTools.clangWithLibcAndBasicRtAndLibcxx
else
args.stdenv;
in
{
inherit stdenv;
}
);
libc-full = callPackage ./libc {
isFullBuild = true;
# Use clang due to "gnu::naked" not working on aarch64.
# Issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77882
stdenv = overrideCC stdenv buildLlvmPackages.clangNoLibcNoRt;
# FIXME: This should almost certainly be `stdenv.hostPlatform`.
cmake = if stdenv.targetPlatform.libc == "llvm" then cmakeMinimal else cmake;
python3 = if stdenv.targetPlatform.libc == "llvm" then python3Minimal else python3;
};
compiler-rt-no-libc = callPackage ./compiler-rt {
doFakeLibgcc = stdenv.hostPlatform.useLLVM or false;
stdenv =
# Darwin needs to use a bootstrap stdenv to avoid an infinite recursion when cross-compiling.
if stdenv.hostPlatform.isDarwin then
overrideCC darwin.bootstrapStdenv buildLlvmTools.clangNoLibcNoRt
else
overrideCC stdenv buildLlvmTools.clangNoLibcNoRt;
};
compiler-rt =
if
stdenv.hostPlatform.libc == null
# Building the with-libc compiler-rt and WASM doesn't yet work,
# because wasilibc doesn't provide some expected things. See
# compiler-rt's file for further details.
|| stdenv.hostPlatform.isWasm
# Failing `#include <term.h>` in
# `lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp`
# sanitizers, not sure where to get it.
|| stdenv.hostPlatform.isFreeBSD
then
libraries.compiler-rt-no-libc
else
libraries.compiler-rt-libc;
stdenv = overrideCC stdenv buildLlvmTools.clang;
libcxxStdenv = overrideCC stdenv buildLlvmTools.libcxxClang;
libcxx = callPackage ./libcxx {
stdenv =
if stdenv.hostPlatform.isDarwin then
overrideCC darwin.bootstrapStdenv buildLlvmTools.clangWithLibcAndBasicRt
else
overrideCC stdenv buildLlvmTools.clangWithLibcAndBasicRt;
};
libunwind = callPackage ./libunwind {
stdenv = overrideCC stdenv buildLlvmTools.clangWithLibcAndBasicRt;
};
openmp = callPackage ./openmp {
};
}
// lib.optionalAttrs (lib.versionAtLeast metadata.release_version "20") {
libc-overlay = callPackage ./libc {
isFullBuild = false;
# Use clang due to "gnu::naked" not working on aarch64.
# Issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77882
stdenv = overrideCC stdenv buildLlvmTools.clang;
};
libc-full = callPackage ./libc {
isFullBuild = true;
# Use clang due to "gnu::naked" not working on aarch64.
# Issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77882
stdenv = overrideCC stdenv buildLlvmTools.clangNoLibcNoRt;
cmake =
if stdenv.targetPlatform.libc == "llvm" then buildPackages.cmakeMinimal else buildPackages.cmake;
python3 =
if stdenv.targetPlatform.libc == "llvm" then
buildPackages.python3Minimal
else
buildPackages.python3;
};
libc = if stdenv.targetPlatform.libc == "llvm" then libraries.libc-full else libraries.libc-overlay;
}
)
);
noExtend = extensible: lib.attrsets.removeAttrs extensible [ "extend" ];
in
{
inherit tools libraries;
inherit (metadata) release_version;
libc =
# FIXME: This should almost certainly be `stdenv.hostPlatform`.
if stdenv.targetPlatform.libc == "llvm" then self.libc-full else self.libc-overlay;
};
}
// (noExtend libraries)
// (noExtend tools)
@@ -15,7 +15,7 @@
mlir,
version,
python3,
buildLlvmTools,
buildLlvmPackages,
devExtraCmakeFlags ? [ ],
}:
@@ -64,11 +64,12 @@ stdenv.mkDerivation (finalAttrs: {
cmakeFlags = [
(lib.cmakeBool "CMAKE_VERBOSE_MAKEFILE" true)
(lib.cmakeFeature "LLVM_DIR" "${libllvm.dev}/lib/cmake/llvm")
(lib.cmakeFeature "LLVM_TOOLS_BINARY_DIR" "${buildLlvmTools.tblgen}/bin/")
(lib.cmakeFeature "LLVM_EXTERNAL_LIT" "${buildLlvmTools.tblgen}/bin/llvm-lit")
# TODO: Needs patches and the `lit` package like other LLVM builds?
(lib.cmakeFeature "LLVM_TOOLS_BINARY_DIR" "${buildLlvmPackages.tblgen}/bin/")
(lib.cmakeFeature "LLVM_EXTERNAL_LIT" "${buildLlvmPackages.tblgen}/bin/llvm-lit")
(lib.cmakeFeature "CLANG_DIR" "${libclang.dev}/lib/cmake/clang")
(lib.cmakeFeature "MLIR_DIR" "${mlir.dev}/lib/cmake/mlir")
(lib.cmakeFeature "MLIR_TABLEGEN_EXE" "${buildLlvmTools.tblgen}/bin/mlir-tblgen")
(lib.cmakeFeature "MLIR_TABLEGEN_EXE" "${buildLlvmPackages.tblgen}/bin/mlir-tblgen")
(lib.cmakeFeature "MLIR_TABLEGEN_TARGET" "MLIR-TBLGen")
(lib.cmakeBool "LLVM_BUILD_EXAMPLES" false)
(lib.cmakeBool "LLVM_ENABLE_PLUGINS" false)
@@ -6,7 +6,7 @@
monorepoSrc,
llvm,
buildPackages,
buildLlvmTools,
buildLlvmPackages,
ninja,
cmake,
python3,
@@ -15,7 +15,7 @@
}:
let
spirv-llvm-translator = buildPackages.spirv-llvm-translator.override {
inherit (buildLlvmTools) llvm;
inherit (buildLlvmPackages) llvm;
};
# The build requires an unwrapped clang but wrapped clang++ thus we need to
@@ -23,7 +23,7 @@ let
# unwrapped clang++
clang-only = runCommand "clang-only" { } ''
mkdir -p "$out"/bin
ln -s "${lib.getExe' buildLlvmTools.clang.cc "clang"}" "$out"/bin
ln -s "${lib.getExe' buildLlvmPackages.clang.cc "clang"}" "$out"/bin
'';
in
stdenv.mkDerivation (finalAttrs: {
@@ -59,13 +59,13 @@ stdenv.mkDerivation (finalAttrs: {
lib.optionalString (lib.versionOlder release_version "19") ''
substituteInPlace CMakeLists.txt \
--replace-fail 'find_program( LLVM_CLANG clang PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \
'find_program( LLVM_CLANG clang PATHS "${buildLlvmTools.clang.cc}/bin" NO_DEFAULT_PATH )' \
'find_program( LLVM_CLANG clang PATHS "${buildLlvmPackages.clang.cc}/bin" NO_DEFAULT_PATH )' \
--replace-fail 'find_program( LLVM_AS llvm-as PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \
'find_program( LLVM_AS llvm-as PATHS "${buildLlvmTools.llvm}/bin" NO_DEFAULT_PATH )' \
'find_program( LLVM_AS llvm-as PATHS "${buildLlvmPackages.llvm}/bin" NO_DEFAULT_PATH )' \
--replace-fail 'find_program( LLVM_LINK llvm-link PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \
'find_program( LLVM_LINK llvm-link PATHS "${buildLlvmTools.llvm}/bin" NO_DEFAULT_PATH )' \
'find_program( LLVM_LINK llvm-link PATHS "${buildLlvmPackages.llvm}/bin" NO_DEFAULT_PATH )' \
--replace-fail 'find_program( LLVM_OPT opt PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \
'find_program( LLVM_OPT opt PATHS "${buildLlvmTools.llvm}/bin" NO_DEFAULT_PATH )' \
'find_program( LLVM_OPT opt PATHS "${buildLlvmPackages.llvm}/bin" NO_DEFAULT_PATH )' \
--replace-fail 'find_program( LLVM_SPIRV llvm-spirv PATHS ''${LLVM_TOOLS_BINARY_DIR} NO_DEFAULT_PATH )' \
'find_program( LLVM_SPIRV llvm-spirv PATHS "${spirv-llvm-translator}/bin" NO_DEFAULT_PATH )'
''
@@ -74,13 +74,13 @@ stdenv.mkDerivation (finalAttrs: {
''
substituteInPlace CMakeLists.txt \
--replace-fail 'COMMAND prepare_builtins' \
'COMMAND ${buildLlvmTools.libclc.dev}/bin/prepare_builtins'
'COMMAND ${buildLlvmPackages.libclc.dev}/bin/prepare_builtins'
''
else
''
substituteInPlace CMakeLists.txt \
--replace-fail 'set( prepare_builtins_exe prepare_builtins )' \
'set( prepare_builtins_exe ${buildLlvmTools.libclc.dev}/bin/prepare_builtins )'
'set( prepare_builtins_exe ${buildLlvmPackages.libclc.dev}/bin/prepare_builtins )'
''
);
@@ -91,7 +91,7 @@ stdenv.mkDerivation (finalAttrs: {
]
++ lib.optionals (lib.versionAtLeast release_version "19") [
clang-only
buildLlvmTools.llvm
llvm
spirv-llvm-translator
];
buildInputs = [ llvm ];
@@ -3,7 +3,7 @@
stdenv,
llvm_meta,
release_version,
buildLlvmTools,
buildLlvmPackages,
monorepoSrc ? null,
src ? null,
runCommand,
@@ -59,7 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
cmakeFlags = [
(lib.cmakeFeature "LLD_INSTALL_PACKAGE_DIR" "${placeholder "dev"}/lib/cmake/lld")
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmTools.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmPackages.tblgen}/bin/llvm-tblgen")
]
++ devExtraCmakeFlags;
@@ -22,7 +22,7 @@
zlib,
which,
sysctl,
buildLlvmTools,
buildLlvmPackages,
updateAutotoolsGnuConfigScriptsHook,
enableManpages ? false,
enableSharedLibraries ? !stdenv.hostPlatform.isStatic,
@@ -468,7 +468,7 @@ stdenv.mkDerivation (
(lib.cmakeFeature "LLVM_INSTALL_PACKAGE_DIR" "${placeholder "dev"}/lib/cmake/llvm")
(lib.cmakeBool "LLVM_ENABLE_RTTI" true)
(lib.cmakeBool "LLVM_LINK_LLVM_DYLIB" enableSharedLibraries)
(lib.cmakeFeature "LLVM_TABLEGEN" "${buildLlvmTools.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "LLVM_TABLEGEN" "${buildLlvmPackages.tblgen}/bin/llvm-tblgen")
];
in
flagsForLlvmConfig
@@ -3,7 +3,7 @@
stdenv,
llvm_meta,
release_version,
buildLlvmTools,
buildLlvmPackages,
monorepoSrc,
runCommand,
cmake,
@@ -63,8 +63,8 @@ stdenv.mkDerivation (finalAttrs: {
(lib.cmakeFeature "LLVM_HOST_TRIPLE" stdenv.hostPlatform.config)
(lib.cmakeFeature "LLVM_DEFAULT_TARGET_TRIPLE" stdenv.hostPlatform.config)
(lib.cmakeBool "LLVM_ENABLE_DUMP" true)
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmTools.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "MLIR_TABLEGEN_EXE" "${buildLlvmTools.tblgen}/bin/mlir-tblgen")
(lib.cmakeFeature "LLVM_TABLEGEN_EXE" "${buildLlvmPackages.tblgen}/bin/llvm-tblgen")
(lib.cmakeFeature "MLIR_TABLEGEN_EXE" "${buildLlvmPackages.tblgen}/bin/mlir-tblgen")
(lib.cmakeBool "LLVM_BUILD_LLVM_DYLIB" (!stdenv.hostPlatform.isStatic))
]
++ lib.optionals stdenv.hostPlatform.isStatic [
@@ -9,7 +9,6 @@
cmake,
ninja,
llvm,
targetLlvm,
lit,
clang-unwrapped,
perl,
@@ -54,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
cmake
python3.pythonOnBuildForHost
python3
perl
ninja
pkg-config
@@ -62,7 +61,7 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
(if stdenv.buildPlatform == stdenv.hostPlatform then llvm else targetLlvm)
llvm
]
++ lib.optionals (ompdSupport && ompdGdbSupport) [
python3
+5 -6
View File
@@ -13,6 +13,7 @@
bootBintoolsNoLibc ? if stdenv.targetPlatform.linker == "lld" then null else pkgs.bintoolsNoLibc,
bootBintools ? if stdenv.targetPlatform.linker == "lld" then null else pkgs.bintools,
llvmVersions ? { },
generateSplicesForMkScope,
patchesFn ? lib.id,
# Allows passthrough to packages via newScope in ./common/default.nix.
# This makes it possible to do
@@ -59,19 +60,17 @@ let
callPackage ./common (
{
inherit (stdenvAdapters) overrideCC;
buildLlvmTools = buildPackages."llvmPackages_${attrName}".tools;
targetLlvmLibraries =
# Allow overriding targetLlvmLibraries; this enables custom runtime builds.
packageSetArgs.targetLlvmLibraries or targetPackages."llvmPackages_${attrName}".libraries
or llvmPackages."${attrName}".libraries;
targetLlvm = targetPackages."llvmPackages_${attrName}".llvm or llvmPackages."${attrName}".llvm;
inherit
officialRelease
gitRelease
monorepoSrc
version
patchesFn
bootBintools
bootBintoolsNoLibc
;
otherSplices = generateSplicesForMkScope "llvmPackages_${attrName}";
}
// packageSetArgs # Allow overrides.
)
@@ -1,22 +0,0 @@
From 2867f022aad754fe54d95222b3ae52f6e7f14c2f Mon Sep 17 00:00:00 2001
From: "P. R. d. O" <d.ol.rod@tutanota.com>
Date: Wed, 27 Apr 2022 21:49:12 -0600
Subject: [PATCH] Patching GIRepository
---
protonvpn_nm_lib/__init__.py | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/protonvpn_nm_lib/__init__.py b/protonvpn_nm_lib/__init__.py
index e69de29..00b95f4 100644
--- a/protonvpn_nm_lib/__init__.py
+++ b/protonvpn_nm_lib/__init__.py
@@ -0,0 +1,5 @@
+import gi
+gi.require_version('GIRepository', '2.0')
+from gi.repository import GIRepository
+repo = GIRepository.Repository.get_default()
+repo.prepend_search_path('@networkmanager_path@')
--
2.35.1
@@ -1,81 +0,0 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
replaceVars,
dbus-python,
distro,
jinja2,
keyring,
proton-client,
pygobject3,
pyxdg,
systemd,
ncurses,
networkmanager,
pkgs-systemd,
python,
xdg-utils,
}:
buildPythonPackage rec {
pname = "protonvpn-nm-lib";
version = "3.16.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "ProtonVPN";
repo = "protonvpn-nm-lib";
tag = version;
hash = "sha256-n3jfBHMYqyQZgvFFJcylNbTWZ3teuqhdelTfpNrwWuA=";
};
propagatedBuildInputs = [
dbus-python
distro
jinja2
keyring
proton-client
pygobject3
pyxdg
systemd
ncurses
networkmanager
pkgs-systemd
xdg-utils
];
patches = [
(replaceVars ./0001-Patching-GIRepository.patch {
networkmanager_path = "${networkmanager}/lib/girepository-1.0";
})
];
postPatch = ''
substituteInPlace protonvpn_nm_lib/core/dbus/dbus_reconnect.py \
--replace "exec_start = python_interpreter_path + \" \" + python_service_path" "exec_start = \"$out/bin/protonvpn_reconnector.py\""
'';
postInstall = ''
makeWrapper ${python.interpreter} $out/bin/protonvpn_reconnector.py \
--add-flags $out/${python.sitePackages}/protonvpn_nm_lib/daemon/dbus_daemon_reconnector.py \
--prefix PYTHONPATH : "$PYTHONPATH"
'';
# Checks cannot be run in the sandbox
# "Failed to connect to socket /run/dbus/system_bus_socket: No such file or directory"
doCheck = false;
pythonImportsCheck = [ "protonvpn_nm_lib" ];
meta = with lib; {
description = "ProtonVPN NetworkManager Library intended for every ProtonVPN service user";
mainProgram = "protonvpn_reconnector.py";
homepage = "https://github.com/ProtonVPN/protonvpn-nm-lib";
license = licenses.gpl3Only;
maintainers = [ ];
platforms = platforms.linux;
};
}
@@ -34,13 +34,13 @@
let
pname = "psycopg";
version = "3.2.11";
version = "3.2.12";
src = fetchFromGitHub {
owner = "psycopg";
repo = "psycopg";
tag = version;
hash = "sha256-x7ca/A6K0nbcKs2iv5f2rPct5GLd2E7lymT5QZC2B/g=";
hash = "sha256-g1mms12EqRiln5dK/BmBa9dd9duSPRgRIiZkVmSRaYI=";
};
patches = [
@@ -44,7 +44,7 @@
buildPythonPackage rec {
pname = "sqlalchemy";
version = "2.0.43";
version = "2.0.44";
pyproject = true;
disabled = pythonOlder "3.7";
@@ -53,7 +53,7 @@ buildPythonPackage rec {
owner = "sqlalchemy";
repo = "sqlalchemy";
tag = "rel_${lib.replaceStrings [ "." ] [ "_" ] version}";
hash = "sha256-yZIYcJ6gI1oUsQ/vRd5yz6Tgcl7ARpjxnjZNsfeXinM=";
hash = "sha256-XjmSMgFOMYzJ5IR7tDImj37mM7qhiesKsaBerfzxL4g=";
};
postPatch = ''
@@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "unicode-rbnf";
version = "2.3.0";
version = "2.4.0";
pyproject = true;
src = fetchFromGitHub {
owner = "rhasspy";
repo = "unicode-rbnf";
tag = "v${version}";
hash = "sha256-RRPQHU8UMVspbhqKVR165czbYY42JopF6Nrhm0up3hw=";
hash = "sha256-t5QHZVBIRVyhqmgVno3Nql6W0Q91DZ8sJA+nFBdKkj4=";
};
build-system = [ setuptools ];
@@ -10,7 +10,6 @@
runCommand,
symlinkJoin,
rdfind,
wrapBintoolsWith,
zstd,
zlib,
gcc-unwrapped,
@@ -32,7 +31,7 @@
withLto ? true,
# whether rocm stdenv uses libcxx (clang c++ stdlib) instead of gcc stdlibc++
withLibcxx ? false,
}@args:
}:
let
version = "6.4.3";
@@ -142,6 +141,28 @@ let
stdenv.cc.cc
stdenv.cc.bintools
];
# Hacky way to avoid nixfmt indenting the entire scope body suggested by @emilazy
overrideLlvmPackagesRocm =
f:
let
overridenScope = llvmPackagesRocm.overrideScope (final: prev: f { inherit final prev; });
in
{
inherit (overridenScope)
# Expose only a limited set of packages that we care about for ROCm
bintools
compiler-rt
compiler-rt-libc
clang
clang-unwrapped
libcxx
lld
llvm
rocm-toolchain
rocmClangStdenv
openmp
;
};
sysrootCompiler =
{
cc,
@@ -258,13 +279,8 @@ let
]
);
in
rec {
inherit (llvmPackagesRocm) libcxx;
inherit args;
# Pass through original attrs for debugging where non-overridden llvm/clang is getting used
# llvm-orig = llvmPackagesRocm.llvm; # nix why-depends --derivation .#rocmPackages.clr .#rocmPackages.llvm.llvm-orig
# clang-orig = llvmPackagesRocm.clang; # nix why-depends --derivation .#rocmPackages.clr .#rocmPackages.llvm.clang-orig
llvm = llvmPackagesRocm.llvm.overrideAttrs (old: {
overrideLlvmPackagesRocm (s: {
libllvm = (s.prev.libllvm.override { }).overrideAttrs (old: {
patches = old.patches ++ [
(fetchpatch {
# fix compile error in tools/gold/gold-plugin.cpp
@@ -310,8 +326,7 @@ rec {
meta = old.meta // llvmMeta;
});
lld =
(llvmPackagesRocm.lld.override {
libllvm = llvm;
(s.prev.lld.override {
}).overrideAttrs
(old: {
dontStrip = profilableStdenv;
@@ -336,8 +351,7 @@ rec {
meta = old.meta // llvmMeta;
});
clang-unwrapped = (
(llvmPackagesRocm.clang-unwrapped.override {
libllvm = llvm;
(s.prev.clang-unwrapped.override {
enableClangToolsExtra = false;
}).overrideAttrs
(
@@ -373,10 +387,10 @@ rec {
url = "https://github.com/GZGavinZhao/rocm-llvm-project/commit/6d296f879b0fed830c54b2a9d26240da86c8bb3a.patch";
relative = "clang";
})
# FIXME: Needed due to https://github.com/NixOS/nixpkgs/issues/375431
# Once we can switch to overrideScope this can be removed
# FIXME: Temporarily kept for rebuild avoidance
# Should be dropped in followup and we no longer need to filter out the original application
(replaceVars ./../../../compilers/llvm/common/clang/clang-at-least-16-LLVMgold-path.patch {
libllvmLibdir = "${llvm.lib}/lib";
libllvmLibdir = "${s.final.libllvm.lib}/lib";
})
];
hardeningDisable = [ "all" ];
@@ -397,6 +411,7 @@ rec {
__structuredAttrs = true;
# https://github.com/llvm/llvm-project/blob/6976deebafa8e7de993ce159aa6b82c0e7089313/clang/cmake/caches/DistributionExample-stage2.cmake#L9-L11
cmakeFlags =
# TODO: Remove in followup, tblgen now works correctly but would rebuild
(builtins.filter tablegenUsage old.cmakeFlags)
++ commonCmakeFlags
++ lib.optionals (!withLibcxx) [
@@ -426,6 +441,7 @@ rec {
# in the right order
# and expects its libc to be in the sysroot
rocm-toolchain =
with s.final;
(sysrootCompiler {
cc = clang-unwrapped;
name = "rocm-toolchain";
@@ -458,45 +474,33 @@ rec {
isClang = true;
isGNU = false;
};
compiler-rt-libc =
(llvmPackagesRocm.compiler-rt-libc.override {
libllvm = llvm;
}).overrideAttrs
(old: {
patches = old.patches ++ [
(fetchpatch {
name = "Fix-missing-main-function-in-float16-bfloat16-support-checks.patch";
url = "https://github.com/ROCm/llvm-project/commit/68d8b3846ab1e6550910f2a9a685690eee558af2.patch";
hash = "sha256-Db+L1HFMWVj4CrofsGbn5lnMoCzEcU+7q12KKFb17/g=";
relative = "compiler-rt";
})
(fetchpatch {
# Fixes fortify hardening compile error related to openat usage
hash = "sha256-pgpN1q1vIQrPXHPxNSZ6zfgV2EflHO5Amzl+2BDjXbs=";
url = "https://github.com/llvm/llvm-project/commit/155b7a12820ec45095988b6aa6e057afaf2bc892.patch";
relative = "compiler-rt";
})
];
meta = old.meta // llvmMeta;
});
compiler-rt = compiler-rt-libc;
bintools = wrapBintoolsWith {
bintools = llvmPackagesRocm.bintools-unwrapped.override {
inherit lld llvm;
};
};
compiler-rt-libc = s.prev.compiler-rt-libc.overrideAttrs (old: {
patches = old.patches ++ [
(fetchpatch {
name = "Fix-missing-main-function-in-float16-bfloat16-support-checks.patch";
url = "https://github.com/ROCm/llvm-project/commit/68d8b3846ab1e6550910f2a9a685690eee558af2.patch";
hash = "sha256-Db+L1HFMWVj4CrofsGbn5lnMoCzEcU+7q12KKFb17/g=";
relative = "compiler-rt";
})
(fetchpatch {
# Fixes fortify hardening compile error related to openat usage
hash = "sha256-pgpN1q1vIQrPXHPxNSZ6zfgV2EflHO5Amzl+2BDjXbs=";
url = "https://github.com/llvm/llvm-project/commit/155b7a12820ec45095988b6aa6e057afaf2bc892.patch";
relative = "compiler-rt";
})
];
meta = old.meta // llvmMeta;
});
compiler-rt = s.final.compiler-rt-libc;
clang = s.final.rocm-toolchain;
clang = rocm-toolchain;
rocmClangStdenv = overrideCC (
if withLibcxx then llvmPackagesRocm.libcxxStdenv else llvmPackagesRocm.stdenv
) clang;
rocmClangStdenv = with s.final; overrideCC (if withLibcxx then libcxxStdenv else stdenv) clang;
# Projects
openmp =
with s.final;
(llvmPackagesRocm.openmp.override {
llvm = llvm;
targetLlvm = llvm;
clang-unwrapped = clang-unwrapped;
}).overrideAttrs
(old: {
@@ -521,4 +525,7 @@ rec {
libffi
];
});
}
# AMD has a separate MLIR impl which we package under rocmPackages.rocmlir
# It would be an error to rely on the original mlir package from this scope
mlir = null;
})
@@ -1,37 +0,0 @@
{
mkDerivation,
lib,
fetchFromGitHub,
tinyxml-2,
cmake,
qtbase,
qtmultimedia,
}:
mkDerivation rec {
version = "1.0.13";
pname = "pro-office-calculator";
src = fetchFromGitHub {
owner = "RobJinman";
repo = "pro_office_calc";
rev = "v${version}";
sha256 = "1v75cysargmp4fk7px5zgib1p6h5ya4w39rndbzk614fcnv0iipd";
};
buildInputs = [
qtbase
qtmultimedia
tinyxml-2
];
nativeBuildInputs = [ cmake ];
meta = with lib; {
description = "Completely normal office calculator";
mainProgram = "procalc";
homepage = "https://proofficecalculator.com/";
maintainers = [ maintainers.pmiddend ];
platforms = platforms.linux;
license = licenses.gpl3;
};
}
@@ -6,15 +6,17 @@
callPackage ./generic.nix rec {
pname = "shattered-pixel-dungeon";
version = "3.1.1";
version = "3.2.5";
src = fetchFromGitHub {
owner = "00-Evan";
repo = "shattered-pixel-dungeon";
rev = "v${version}";
hash = "sha256-MUpQdH8RMzZtI6e2duSRWHK1gPJDhMRKsm5kIKDcFuk=";
tag = "v${version}";
hash = "sha256-ltCKM46nzZZVJqHzo3V0Igyd4q+uD95fuLMWCi18jbQ=";
};
patches = [ ];
depsPath = ./deps.json;
passthru.tests = {
+79 -42
View File
@@ -1,60 +1,97 @@
{
"!comment": "This is a nixpkgs Gradle dependency lockfile. For more details, refer to the Gradle section in the nixpkgs manual.",
"!version": 1,
"https://oss.sonatype.org/content/repositories/snapshots/com/badlogicgames": {
"gdx-controllers#gdx-controllers-core/2.2.4-20231021.200112-6/SNAPSHOT": {
"jar": "sha256-Gdz2J1IvDJFktUD2XeGNS0SIrOyym19X/+dCbbbe3/U=",
"pom": "sha256-90QW/Mtz1jbDUhKjdJ88ekhulZR2a7eCaEJoswmeny4="
"https://central.sonatype.com/repository/maven-snapshots/com/badlogicgames": {
"gdx#gdx-backend-lwjgl3/1.13.6-20251003.170113-33/SNAPSHOT": {
"jar": "sha256-T2/VHXjfySwA+IjO2Bm0h29WvyoJsKyLmx2lkkBVJRw=",
"module": "sha256-JNBWxVhzTj4LFBGT/kZc36chXJ2uqwaUtcMUGQFLn2I=",
"pom": "sha256-P7DA/UDAWmA+/t4H3EJkktKK/e9+pX0gH4fpljqZXWQ="
},
"gdx-controllers#gdx-controllers-desktop/2.2.4-20231021.200114-6/SNAPSHOT": {
"jar": "sha256-4mhLijZwQHk2pP5qXIIzrsO9CwNC3CDti/5szclkVa8=",
"pom": "sha256-10+zD8flpKIPzji5NFgtYcwE5O74hSzzvvqBh84wLf4="
"gdx#gdx-freetype-platform/1.13.6-20251003.170113-34/SNAPSHOT": {
"pom": "sha256-kTnggHqjEcoBlUTM+K15WHCqKodiKvGPrgnTHuTKU4o="
},
"gdx-controllers/gdx-controllers-core/2.2.4-SNAPSHOT/maven-metadata": {
"gdx#gdx-freetype-platform/1.13.6-20251003.170113-34/SNAPSHOT/natives-desktop": {
"jar": "sha256-oHueMYiUcjnj/Ub6rxlyvLcqXRCVNlqGlV27aYHBqAs="
},
"gdx#gdx-freetype/1.13.6-20251003.170113-34/SNAPSHOT": {
"jar": "sha256-S6xHm1D4e5bWdtozqD1fwHe86HZAfnZ6KhzlIxXFf7s=",
"module": "sha256-gqUIFknNKRsg9HMnX0Gis0IEvIpJW8kphcjtwCAoLo4=",
"pom": "sha256-wi92v9kAtTv++AZjKT3wJYBeISF98NLNy26X9kEVFSk="
},
"gdx#gdx-platform/1.13.6-20251003.170113-33/SNAPSHOT": {
"pom": "sha256-UW0w1+UTHDD4HaYruY6QVmd/ur/0vHS4wYDZ5hDCEuQ="
},
"gdx#gdx-platform/1.13.6-20251003.170113-33/SNAPSHOT/natives-desktop": {
"jar": "sha256-yBteE7BAK+MEG1e43PjmQZy03S6LIcvJt4W41bGp34s="
},
"gdx#gdx/1.13.6-20251003.170113-33/SNAPSHOT": {
"jar": "sha256-GUbkm354hjSxjlPFsfQmTQi5FDcGEQUEry+avKWhsxI=",
"module": "sha256-t9BpvisJ2P37hHmwRUGxAKbCwhH6faZXL9AZ9V4T8Hw=",
"pom": "sha256-aDtJJZT/VHJyxd5RKFrQbc32IFT2wk9R7LeDvhBt8v4="
},
"gdx/gdx-backend-lwjgl3/1.13.6-SNAPSHOT/maven-metadata": {
"xml": {
"groupId": "com.badlogicgames.gdx-controllers",
"lastUpdated": "20231021200112"
"groupId": "com.badlogicgames.gdx",
"lastUpdated": "20251003191628"
}
},
"gdx-controllers/gdx-controllers-desktop/2.2.4-SNAPSHOT/maven-metadata": {
"gdx/gdx-freetype-platform/1.13.6-SNAPSHOT/maven-metadata": {
"xml": {
"groupId": "com.badlogicgames.gdx-controllers",
"lastUpdated": "20231021200114"
"groupId": "com.badlogicgames.gdx",
"lastUpdated": "20251003191640"
}
},
"gdx/gdx-freetype/1.13.6-SNAPSHOT/maven-metadata": {
"xml": {
"groupId": "com.badlogicgames.gdx",
"lastUpdated": "20251003191639"
}
},
"gdx/gdx-platform/1.13.6-SNAPSHOT/maven-metadata": {
"xml": {
"groupId": "com.badlogicgames.gdx",
"lastUpdated": "20251010022949"
}
},
"gdx/gdx/1.13.6-SNAPSHOT/maven-metadata": {
"xml": {
"groupId": "com.badlogicgames.gdx",
"lastUpdated": "20251003191624"
}
}
},
"https://plugins.gradle.org/m2/org": {
"beryx#badass-runtime-plugin/1.13.1": {
"jar": "sha256-IW3RL1SacHD31B2wTupXAaF5Z0mzVerAzkMVLs0DGBc=",
"module": "sha256-Jf4I7QwECTJuc38vDJ/7BhyFQihl53ATdMOVyjpy9PA=",
"pom": "sha256-qZgenE/Me3hqUL+/IW93EBgs27ECjqsGiavMYeS37XI="
},
"beryx/runtime#org.beryx.runtime.gradle.plugin/1.13.1": {
"pom": "sha256-7SsiPX22wuiujLyvq8E96b0kKfwfNMtEFVh0jJCBu+U="
},
"slf4j#slf4j-api/1.7.32": {
"jar": "sha256-NiT4R0wa9G11+YvAl9eGSjI8gbOAiqQ2iabhxgHAJ74=",
"pom": "sha256-ABzeWzxrqRBwQlz+ny5pXkrri8KQotTNllMRJ6skT+U="
},
"slf4j#slf4j-parent/1.7.32": {
"pom": "sha256-WrNJ0PTHvAjtDvH02ThssZQKL01vFSFQ4W277MC4PHA="
}
},
"https://repo.maven.apache.org/maven2": {
"com/badlogicgames/gdx#gdx-backend-lwjgl3/1.12.1": {
"jar": "sha256-B3OwjHfBoHcJPFlyy4u2WJuRe4ZF/+tKh7gKsDg41o0=",
"module": "sha256-9O7d2ip5+E6OiwN47WWxC8XqSX/mT+b0iDioCRTTyqc=",
"pom": "sha256-IRSihaCUPC2d0QzB0MVDoOWM1DXjcisTYtnaaxR9SRo="
"com/badlogicgames/gdx#gdx-jnigen-loader/2.5.2": {
"jar": "sha256-34HyPP1nhcUtNeEI7qo5MPVZ1NJ3CmEC51ynv6b58no=",
"module": "sha256-jwtii5G9Ez24XxUuFZMprPf0tmeDvR32AcNZfcJRIiQ=",
"pom": "sha256-i0dgu2bbPz+ZuEBj7z6ZDWOhzZx81XSlatf07kvRdoc="
},
"com/badlogicgames/gdx#gdx-freetype-platform/1.12.1": {
"pom": "sha256-cAGFUunqi4o21kDX8V86OT6aMmXjJUqyMHLHhUWLBm4="
"com/badlogicgames/gdx-controllers#gdx-controllers-core/2.2.4": {
"jar": "sha256-BNpnYnsaNkbvjyFMkdKWdCp8BVl9vCFnqqsJy9zHdHA=",
"module": "sha256-dxOP5TsOdeRf4dOROsublicWFxCuVPJUR0sizmp6pIA=",
"pom": "sha256-k7HO3nAet8GNZfFei7eds5zzGk6u5pMceIl84NgOMlQ="
},
"com/badlogicgames/gdx#gdx-freetype-platform/1.12.1/natives-desktop": {
"jar": "sha256-1g5ZN21QWpk+yLogowR3rwaQKx4pJ/8uN17/2/Ql2UE="
},
"com/badlogicgames/gdx#gdx-freetype/1.12.1": {
"jar": "sha256-rbjskAa7YdrW0pdslaHeGN5eGmUULRilgH0OUkyL8WU=",
"module": "sha256-HG9UGDxQFjSvGqLrKEkE7YnVvqtURs7FyqWwunHdXKE=",
"pom": "sha256-pLaMZBcEufzo+xszIlcUPJSYJJQg1uY6rm7tb6fHyT8="
},
"com/badlogicgames/gdx#gdx-jnigen-loader/2.3.1": {
"jar": "sha256-ZJDdoiWmHHYCwnu+xOSBE3/1lfjOCy3bpBTww0Bq7mA=",
"module": "sha256-nNWFK9nlHTbRJxrypGzZfOwk5XEHblQTbsmtNxhGua8=",
"pom": "sha256-7e2XZPzSpbw8peeAUEHppiAZ+ovkNLWZ8D1JR+KkQng="
},
"com/badlogicgames/gdx#gdx-platform/1.12.1": {
"pom": "sha256-bZhlcVVYfr/+qIAG20v12CgcyUetGduKZP28TnOzkZc="
},
"com/badlogicgames/gdx#gdx-platform/1.12.1/natives-desktop": {
"jar": "sha256-P+utqUwiNjYQkXufuMJLD55h4+bGnHO9DTUDhYTA4e0="
},
"com/badlogicgames/gdx#gdx/1.12.1": {
"jar": "sha256-jTIJ6UghH96c2swrAfrO0yPlSKpS73jlx2CEWoh0aXA=",
"module": "sha256-7Th6fCSDcEBGAyOsXYZIZwKAPw88K1h448x4If03n6o=",
"pom": "sha256-Qg9vfLMYtQsglKsHYme67w6bBlI0yHqWCqkvtCEYpZY="
"com/badlogicgames/gdx-controllers#gdx-controllers-desktop/2.2.4": {
"jar": "sha256-jjkOWcYhHtI+Cm/UAYzvo3+LmGXe5pmVaZBTSWuAHWw=",
"module": "sha256-zhrDRlPnkWGq8Nycm+vdDb1zQW0pHSz8ljavonod9mU=",
"pom": "sha256-2pO01ZTa8EMd+Q7bPPEOHjpGnCgCDHZb5P+fYKD6bTY="
},
"com/badlogicgames/jamepad#jamepad/2.26.5.0": {
"jar": "sha256-sO+RC6Uxyt/gQYSWow2Hy6xGAhsGJUf1tZR+A1Q1cRo=",
+2 -7
View File
@@ -8,13 +8,13 @@
postgresqlBuildExtension (finalAttrs: {
pname = "rum";
version = "1.3.14";
version = "1.3.15";
src = fetchFromGitHub {
owner = "postgrespro";
repo = "rum";
tag = finalAttrs.version;
hash = "sha256-VsfpxQqRBu9bIAP+TfMRXd+B3hSjuhU2NsutocNiCt8=";
hash = "sha256-iOx7u0JURBUUFerRlg3DuidFeBmGFOXz8mu20mQeopo=";
};
makeFlags = [ "USE_PGXS=1" ];
@@ -29,11 +29,6 @@ postgresqlBuildExtension (finalAttrs: {
};
meta = {
# PostgreSQL 18 support issue upstream: https://github.com/postgrespro/rum/issues/156
# Check after next package update.
broken = lib.warnIf (finalAttrs.version != "1.3.14") "Is postgresql18Packages.rum still broken?" (
lib.versionAtLeast postgresql.version "18"
);
description = "Full text search index method for PostgreSQL";
homepage = "https://github.com/postgrespro/rum";
license = lib.licenses.postgresql;
+170 -160
View File
@@ -467,97 +467,90 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
);
llvmPackages =
super.llvmPackages
// (
let
tools = super.llvmPackages.tools.extend (
selfTools: _: {
libclang = self.stdenv.mkDerivation {
name = "bootstrap-stage0-clang";
version = "boot";
outputs = [
"out"
"lib"
];
buildCommand = ''
mkdir -p $out/lib
ln -s $out $lib
ln -s ${bootstrapTools}/bin $out/bin
ln -s ${bootstrapTools}/lib/clang $out/lib
ln -s ${bootstrapTools}/include $out
'';
passthru = {
isFromBootstrapFiles = true;
hardeningUnsupportedFlags = [
"fortify3"
"pacret"
"shadowstack"
"stackclashprotection"
"zerocallusedregs"
];
};
};
libllvm = self.stdenv.mkDerivation {
name = "bootstrap-stage0-llvm";
outputs = [
"out"
"lib"
];
buildCommand = ''
mkdir -p $out/bin $out/lib
ln -s $out $lib
for tool in ${toString super.darwin.binutils-unwrapped.llvm_cmds}; do
cctoolsTool=''${tool//-/_}
toolsrc="${bootstrapTools}/bin/$cctoolsTool"
if [ -e "$toolsrc" ]; then
ln -s "$toolsrc" $out/bin/llvm-$tool
fi
done
ln -s ${bootstrapTools}/bin/dsymutil $out/bin/dsymutil
ln -s ${bootstrapTools}/bin/llvm-readtapi $out/bin/llvm-readtapi
ln -s ${bootstrapTools}/lib/libLLVM* $out/lib
'';
passthru.isFromBootstrapFiles = true;
};
llvm-manpages = self.llvmPackages.libllvm;
lld = self.stdenv.mkDerivation {
name = "bootstrap-stage0-lld";
buildCommand = "";
passthru = {
isLLVM = true;
isFromBootstrapFiles = true;
};
};
}
);
libraries = super.llvmPackages.libraries.extend (
_: _: {
compiler-rt = self.stdenv.mkDerivation {
name = "bootstrap-stage0-compiler-rt";
buildCommand = ''
mkdir -p $out/lib $out/share
ln -s ${bootstrapTools}/lib/libclang_rt* $out/lib
ln -s ${bootstrapTools}/lib/darwin $out/lib
'';
passthru.isFromBootstrapFiles = true;
};
libcxx = self.stdenv.mkDerivation {
name = "bootstrap-stage0-libcxx";
buildCommand = ''
mkdir -p $out/lib $out/include
ln -s ${bootstrapTools}/lib/libc++.dylib $out/lib
ln -s ${bootstrapTools}/include/c++ $out/include
'';
passthru = {
isLLVM = true;
isFromBootstrapFiles = true;
};
};
}
);
in
{ inherit tools libraries; } // tools // libraries
);
(super.llvmPackages.overrideScope (
selfLlvmPackages: _: {
libclang = self.stdenv.mkDerivation {
name = "bootstrap-stage0-clang";
version = "boot";
outputs = [
"out"
"lib"
];
buildCommand = ''
mkdir -p $out/lib
ln -s $out $lib
ln -s ${bootstrapTools}/bin $out/bin
ln -s ${bootstrapTools}/lib/clang $out/lib
ln -s ${bootstrapTools}/include $out
'';
passthru = {
isFromBootstrapFiles = true;
hardeningUnsupportedFlags = [
"fortify3"
"pacret"
"shadowstack"
"stackclashprotection"
"zerocallusedregs"
];
};
};
libllvm = self.stdenv.mkDerivation {
name = "bootstrap-stage0-llvm";
outputs = [
"out"
"lib"
];
buildCommand = ''
mkdir -p $out/bin $out/lib
ln -s $out $lib
for tool in ${toString super.darwin.binutils-unwrapped.llvm_cmds}; do
cctoolsTool=''${tool//-/_}
toolsrc="${bootstrapTools}/bin/$cctoolsTool"
if [ -e "$toolsrc" ]; then
ln -s "$toolsrc" $out/bin/llvm-$tool
fi
done
ln -s ${bootstrapTools}/bin/dsymutil $out/bin/dsymutil
ln -s ${bootstrapTools}/bin/llvm-readtapi $out/bin/llvm-readtapi
ln -s ${bootstrapTools}/lib/libLLVM* $out/lib
'';
passthru.isFromBootstrapFiles = true;
};
llvm-manpages = self.llvmPackages.libllvm;
lld = self.stdenv.mkDerivation {
name = "bootstrap-stage0-lld";
buildCommand = "";
passthru = {
isLLVM = true;
isFromBootstrapFiles = true;
};
};
compiler-rt = self.stdenv.mkDerivation {
name = "bootstrap-stage0-compiler-rt";
buildCommand = ''
mkdir -p $out/lib $out/share
ln -s ${bootstrapTools}/lib/libclang_rt* $out/lib
ln -s ${bootstrapTools}/lib/darwin $out/lib
'';
passthru.isFromBootstrapFiles = true;
};
libcxx = self.stdenv.mkDerivation {
name = "bootstrap-stage0-libcxx";
buildCommand = ''
mkdir -p $out/lib $out/include
ln -s ${bootstrapTools}/lib/libc++.dylib $out/lib
ln -s ${bootstrapTools}/include/c++ $out/include
'';
passthru = {
isLLVM = true;
isFromBootstrapFiles = true;
};
};
}
))
// {
inherit (super.llvmPackages) override;
};
};
extraPreHook = ''
@@ -683,11 +676,12 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
);
llvmPackages =
let
tools = super.llvmPackages.tools.extend (_: _: llvmToolsPackages prevStage);
libraries = super.llvmPackages.libraries.extend (_: _: llvmLibrariesPackages prevStage);
in
super.llvmPackages // { inherit tools libraries; } // tools // libraries;
(super.llvmPackages.overrideScope (
_: _: llvmToolsPackages prevStage // llvmLibrariesPackages prevStage
))
// {
inherit (super.llvmPackages) override;
};
};
extraNativeBuildInputs = lib.optionals localSystem.isAarch64 [
@@ -834,13 +828,17 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
);
llvmPackages =
let
tools = super.llvmPackages.tools.extend (
_: _: llvmToolsPackages prevStage // { inherit (prevStage.llvmPackages) clangNoCompilerRtWithLibc; }
);
libraries = super.llvmPackages.libraries.extend (_: _: llvmLibrariesPackages prevStage);
in
super.llvmPackages // { inherit tools libraries; } // tools // libraries;
(super.llvmPackages.overrideScope (
_: _:
llvmToolsPackages prevStage
// llvmLibrariesPackages prevStage
// {
inherit (prevStage.llvmPackages) clangNoCompilerRtWithLibc;
}
))
// {
inherit (super.llvmPackages) override;
};
}
];
@@ -915,11 +913,9 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
}
);
llvmPackages =
let
libraries = super.llvmPackages.libraries.extend (_: _: llvmLibrariesPackages prevStage);
in
super.llvmPackages // { inherit libraries; } // libraries;
llvmPackages = (super.llvmPackages.overrideScope (_: _: llvmLibrariesPackages prevStage)) // {
inherit (super.llvmPackages) override;
};
}
];
@@ -990,48 +986,48 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
);
llvmPackages =
let
tools = super.llvmPackages.tools.extend (
_: _:
llvmToolsPackages prevStage
// {
systemLibcxxClang = super.wrapCCWith rec {
nativeTools = false;
nativeLibc = false;
(super.llvmPackages.overrideScope (
_: _:
llvmToolsPackages prevStage
// llvmLibrariesPackages prevStage
// {
systemLibcxxClang = super.wrapCCWith rec {
nativeTools = false;
nativeLibc = false;
inherit (prevStage) expand-response-params;
inherit (prevStage) expand-response-params;
extraPackages = [ self.llvmPackages.compiler-rt ];
extraPackages = [ self.llvmPackages.compiler-rt ];
extraBuildCommands = ''
rsrc="$out/resource-root"
mkdir "$rsrc"
ln -s "${lib.getLib cc}/lib/clang/${lib.versions.major (lib.getVersion cc)}/include" "$rsrc"
echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
ln -s "${prevStage.llvmPackages.compiler-rt.out}/lib" "$rsrc/lib"
ln -s "${prevStage.llvmPackages.compiler-rt.out}/share" "$rsrc/share"
'';
extraBuildCommands = ''
rsrc="$out/resource-root"
mkdir "$rsrc"
ln -s "${lib.getLib cc}/lib/clang/${lib.versions.major (lib.getVersion cc)}/include" "$rsrc"
echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
ln -s "${prevStage.llvmPackages.compiler-rt.out}/lib" "$rsrc/lib"
ln -s "${prevStage.llvmPackages.compiler-rt.out}/share" "$rsrc/share"
'';
cc = self.llvmPackages.clang-unwrapped;
bintools = self.darwin.binutils;
cc = self.llvmPackages.clang-unwrapped;
bintools = self.darwin.binutils;
isClang = true;
libc = self.darwin.libSystem;
inherit (self.darwin) libcxx;
isClang = true;
libc = self.darwin.libSystem;
inherit (self.darwin) libcxx;
inherit lib;
inherit (self)
stdenvNoCC
coreutils
gnugrep
runtimeShell
;
};
}
);
libraries = super.llvmPackages.libraries.extend (_: _: llvmLibrariesPackages prevStage);
in
super.llvmPackages // { inherit tools libraries; } // tools // libraries;
inherit lib;
inherit (self)
stdenvNoCC
coreutils
gnugrep
runtimeShell
;
};
}
))
// {
inherit (super.llvmPackages) override;
};
}
];
@@ -1241,22 +1237,19 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
"llvmPackages_${lib.versions.major prevStage.llvmPackages.release_version}" =
let
llvmVersion = lib.versions.major prevStage.llvmPackages.release_version;
tools = super."llvmPackages_${llvmVersion}".tools.extend (_: _: llvmToolsPackages prevStage);
libraries = super."llvmPackages_${llvmVersion}".libraries.extend (
_: _:
llvmLibrariesPackages prevStage
# Avoid depending on llvm-manpages from the bootstrap, which brings a bunch of Python dependencies
# into the bootstrap. This means that there are no man pages in darwin.binutils, but they are still
# available from llvm-manpages, ld64, and cctools.
// {
inherit (super."llvmPackages_${llvmVersion}") llvm-manpages;
}
// lib.optionalAttrs (super.stdenv.targetPlatform == localSystem) {
inherit (prevStage.llvmPackages) clang;
}
);
in
super."llvmPackages_${llvmVersion}" // { inherit tools libraries; } // tools // libraries;
(super."llvmPackages_${llvmVersion}".overrideScope (
_: _:
llvmToolsPackages prevStage
// llvmLibrariesPackages prevStage
// {
inherit (super."llvmPackages_${llvmVersion}") llvm-manpages;
}
))
// {
inherit (super."llvmPackages_${llvmVersion}") override;
recurseForDerivations = true;
};
}
];
};
@@ -1288,7 +1281,24 @@ assert bootstrapTools.passthru.isFromBootstrapFiles or false; # sanity check
assert prevStage.libiconv == prevStage.darwin.libiconv;
{
inherit (prevStage) config overlays stdenv;
inherit (prevStage) config overlays;
# This should be done in the `overrideScope` above, but it causes rebuilds.
# TODO: Move it there once https://github.com/NixOS/nixpkgs/pull/445668 is merged.
stdenv = prevStage.stdenv // {
overrides =
self: super:
(prevStage.stdenv.overrides self super)
// lib.optionalAttrs (super.stdenv.targetPlatform == localSystem) (
let
llvmVersion = lib.versions.major prevStage.llvmPackages.release_version;
in
{
"llvmPackages_${llvmVersion}" = prevStage."llvmPackages_${llvmVersion}" // {
inherit (prevStage) clang;
};
}
);
};
}
)
]
@@ -30,7 +30,7 @@
stdenv.mkDerivation rec {
pname = "packagekit";
version = "1.3.1";
version = "1.3.2";
outputs = [
"out"
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
owner = "PackageKit";
repo = "PackageKit";
rev = "v${version}";
hash = "sha256-8sgvD6pZ2n4Du44kTPsvYtSYpkMKCpfxeSrGjWeSw50=";
hash = "sha256-oQuJpn9G/V8CrrEs2agbKVS9xZnS1MgHa8B8P1nFmiw=";
};
buildInputs = [
@@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "packagekit-qt";
version = "1.1.3";
version = "1.1.4";
src = fetchFromGitHub {
owner = "hughsie";
repo = "PackageKit-Qt";
tag = "v${version}";
hash = "sha256-ZHkOFPaOMLCectYKzQs9oQ70kv8APOdkjDRimHgld+c=";
hash = "sha256-D1LsEaxc6lA0ULmYQ9n2KEs6NpoHeTgOJsKzdEnImUM=";
};
buildInputs = [ packagekit ];
+2 -2
View File
@@ -15,13 +15,13 @@
let
self = stdenv.mkDerivation rec {
pname = "highlight";
version = "4.16";
version = "4.17";
src = fetchFromGitLab {
owner = "saalen";
repo = "highlight";
rev = "v${version}";
hash = "sha256-SAOlW2IaYY2GzQ+1FClqm62pcxdtf1cow2R4MRS/2Vg=";
hash = "sha256-XSfiQGMd7GtewyZ72VK/0D9Z9sYzVBWeO1CQXVk63Zc=";
};
enableParallelBuilding = true;
+665 -800
View File
File diff suppressed because it is too large Load Diff
-5
View File
@@ -12060,9 +12060,6 @@ with pkgs;
// (config.profanity or { })
);
protonvpn-cli = python3Packages.callPackage ../applications/networking/protonvpn-cli { };
protonvpn-cli_2 = python3Packages.callPackage ../applications/networking/protonvpn-cli/2.nix { };
protonvpn-gui = python3Packages.callPackage ../applications/networking/protonvpn-gui { };
psi = libsForQt5.callPackage ../applications/networking/instant-messengers/psi { };
@@ -13061,8 +13058,6 @@ with pkgs;
fmodex = callPackage ../games/doom-ports/zandronum/fmod.nix { };
pro-office-calculator = libsForQt5.callPackage ../games/pro-office-calculator { };
qgo = libsForQt5.callPackage ../games/qgo { };
anki-utils = callPackage ../by-name/an/anki/addons/anki-utils.nix { };
+1
View File
@@ -550,6 +550,7 @@ mapAliases {
prometheus_client = prometheus-client; # added 2021-06-10
prompt_toolkit = prompt-toolkit; # added 2021-07-22
protonup = protonup-ng; # Added 2022-11-06
protonvpn-nm-lib = throw "protonvpn-nm-lib source code was removed from upstream"; # Added 2025-10-16
proton-keyring-linux-secretservice = throw "proton-keyring-linux-secretservice functionality was integrated in the proton-keyring-linux module"; # added 2024-10-16
proton-vpn-connection = throw "proton-vpn-connection functionality was integrated in the proton-vpn-api-core module"; # added 2024-10-16
proton-vpn-killswitch = throw "proton-vpn-killswitch functionality was integrated in the proton-vpn-api-core module"; # added 2024-10-16
-4
View File
@@ -12276,10 +12276,6 @@ self: super: with self; {
protonup-ng = callPackage ../development/python-modules/protonup-ng { };
protonvpn-nm-lib = callPackage ../development/python-modules/protonvpn-nm-lib {
pkgs-systemd = pkgs.systemd;
};
prov = callPackage ../development/python-modules/prov { };
prox-tv = callPackage ../development/python-modules/prox-tv { };