Merge branch 'staging' into staging-next
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
, pkgsBuildHost
|
||||
# configurePhase:
|
||||
, gnChromium
|
||||
, symlinkJoin
|
||||
|
||||
# Build inputs:
|
||||
, libpng
|
||||
@@ -378,6 +379,14 @@ let
|
||||
${ungoogler}/utils/domain_substitution.py apply -r ${ungoogler}/domain_regex.list -f ${ungoogler}/domain_substitution.list -c ./ungoogled-domsubcache.tar.gz .
|
||||
'';
|
||||
|
||||
llvmCcAndBintools = symlinkJoin {
|
||||
name = "llvmCcAndBintools";
|
||||
paths = [
|
||||
pkgsBuildTarget.${llvmPackages_attrName}.llvm
|
||||
pkgsBuildTarget.${llvmPackages_attrName}.stdenv.cc
|
||||
];
|
||||
};
|
||||
|
||||
gnFlags = mkGnFlags ({
|
||||
# Main build and toolchain settings:
|
||||
# Create an official and optimized release build (only official builds
|
||||
@@ -445,7 +454,7 @@ let
|
||||
rtc_use_pipewire = true;
|
||||
# Disable PGO because the profile data requires a newer compiler version (LLVM 14 isn't sufficient):
|
||||
chrome_pgo_phase = 0;
|
||||
clang_base_path = "${pkgsBuildTarget.${llvmPackages_attrName}.stdenv.cc}";
|
||||
clang_base_path = "${llvmCcAndBintools}";
|
||||
use_qt = false;
|
||||
# To fix the build as we don't provide libffi_pic.a
|
||||
# (ld.lld: error: unable to find library -l:libffi_pic.a):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, fetchFromGitHub, nodejs, python3, callPackage, removeReferencesTo
|
||||
{ lib, stdenv, fetchFromGitHub, nodejs, python3, removeReferencesTo
|
||||
, pkg-config, libsecret, xcbuild, Security, AppKit, fetchNpmDeps, npmHooks }:
|
||||
|
||||
let
|
||||
@@ -31,6 +31,17 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
doCheck = false;
|
||||
|
||||
postPatch = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
|
||||
pkg-config() { "''${PKG_CONFIG}" "$@"; }
|
||||
export -f pkg-config
|
||||
'';
|
||||
|
||||
# https://nodejs.org/api/os.html#osarch
|
||||
npmFlagsArray = [ "--arch=${if stdenv.hostPlatform.parsed.cpu.name == "i686" then "ia32"
|
||||
else if stdenv.hostPlatform.parsed.cpu.name == "x86_64" then "x64"
|
||||
else if stdenv.hostPlatform.parsed.cpu.name == "aarch64" then "arm64"
|
||||
else stdenv.hostPlatform.parsed.cpu.name}" ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
shopt -s extglob
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ lib, stdenv, rustPlatform, fetchFromGitHub, callPackage, sqlcipher, nodejs, python3, yarn, fixup-yarn-lock, CoreServices, fetchYarnDeps, removeReferencesTo }:
|
||||
{ lib, stdenv, rustPlatform, fetchFromGitHub, rust, sqlcipher, nodejs, python3, yarn, fixup-yarn-lock, CoreServices, fetchYarnDeps, removeReferencesTo }:
|
||||
|
||||
let
|
||||
pinData = lib.importJSON ./pin.json;
|
||||
@@ -36,7 +36,7 @@ in rustPlatform.buildRustPackage rec {
|
||||
fixup-yarn-lock yarn.lock
|
||||
yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
|
||||
patchShebangs node_modules/
|
||||
node_modules/.bin/neon build --release
|
||||
node_modules/.bin/neon build --release -- --target ${rust.toRustTargetSpec stdenv.hostPlatform} -Z unstable-options --out-dir target/release
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCocmtyzPPjv+52
|
||||
JiZrpZFfaZ0eeUgugc8gV+0+2Q9GEkl/xxqjiDVg31gBO3iwQov2NmGuPbXr+vwZ
|
||||
QcUqNQakmmdi22tBaTtd6hMuhu9OfbP8sIFaf0dToZRHkPgf63+WCF6w0O9enEz4
|
||||
zjW3kPa1eVRVekiYCXGML/VhN+h5WwWouNWgEOw5JH39ZuGmhsGN5XekkHtyMkwq
|
||||
Vr+JodoSizhYs9VBYNA1J4PlyiS4BYr4pLiLffzPwRjcSS777x33g+nWNr1lsFxB
|
||||
nDoVvVnq0E7fiXxlmCtAr/7dv0Ug5ixuNfZ9yoT0f+mfUiG/anmfodHujIm2Db37
|
||||
jvmfxaq1AgMBAAECggEAFhJKBHSY92xod0g37A55fiZFTV8oZ1mgdXU386522yBd
|
||||
y5Wf5rIcBmm1axHrFjNeCgClq3JQEk/kdP3Ccy2YBXzq04/7HYrHmd5oLYZGOINt
|
||||
kExjYqN/SdTH7FmxPWN66AKIP8RcvQmfZ1GDxd4DiZNQitO3S96e53bIQPkVp8Lg
|
||||
GfK6LQCdOGimD00wvRoeqbV0PWGGVMfx+KvD5hxKYolyi/hNUxToD28qCAoMlMTi
|
||||
yL+17q3nIYZvUmL0k7d64U+lXF8ov3cVXNJzAzFi41MXZ2Xqk3Lj+IhNweUhlOyn
|
||||
fTo8QntNlirNL/XmtJ+5mPbGufE/6zsSNOf2Cyz2aQKBgQDio/tA3tFBzOz31hox
|
||||
gW6NKarhp7e5R3XHQjZPmQXKq2lGCTBN+LzwCLYDa+ZWkS+cel/xSbkUFl0dopCu
|
||||
7uGrSvmVAv+l1k879WHsYmLlDjJSa8WmDtVQ0SJr70X9UJmD2BivWnTnzrpZFu2A
|
||||
Nv57gvebJTI4tLfAAyIfbg8gOQKBgQC+RJRv8/jVha/4sPonQYvpH0scS0Xzwca6
|
||||
xd23e+vULBpk7IVzMbVGJEDdfWXVJeAO++FSQcgTJA38nfYm2XRPZAProliLaW8o
|
||||
XVhhhWbXP7Jc8BmL5zyfDaLOXNFBX2kfr/oKeOoQ+0dRDlWKlarw1SxC+RT6i2qQ
|
||||
YETgXHKmXQKBgGk8mWsqy2HRZOtDqE/6eLnlciprtVy7+M14Sj21oUHVTAGwPJTH
|
||||
/fs7IEEAdikWK1RuYmRoxh60r7IWDTadR35BRxjRFqILnCkMLNcVbDRN3kH1NwZ/
|
||||
dr+bDG+v4ADazx2wVu39g7Erhc3eXpOddZcmXhDVObeo+nWXPt33PeDJAoGBAJ4v
|
||||
+FVnuo8Tee1Cfogat87W5KSedIcnqSjpjt+Y2MXq8PrNplnSjwrE42UCd6KRvcnX
|
||||
Ykr4Q/ad+D75uYgtLMVAuv2yWPl3bCJcETnrJkh5PbqFKEgntT/rn1sA0j0OrSDa
|
||||
NwFz6+64a1+ZkkcJDjjykr0Px4BSXwOv9jOuyOdFAoGADZEADOLX5y4utxboe1M0
|
||||
UnaFKGEDE6H8qdRJQ9bSvEwJI142al02CvnvqvP4cpd8rKOCRs9nSXFJFXCedTLy
|
||||
ojSVfjTyJMTVJxab/c/Qugkxb/TqGfEnZF2yoTsfPYp2pXRd6DvyKlDQzlSOj933
|
||||
FrqeSe1QKapuPRsujVwLZDU=
|
||||
-----END PRIVATE KEY-----
|
||||
@@ -1,7 +1,6 @@
|
||||
{ stdenv
|
||||
, fetchgit
|
||||
, lib
|
||||
, fetchpatch
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
@@ -33,12 +32,24 @@ stdenv.mkDerivation rec {
|
||||
hash = "sha256-x0Im9m9MoACJhQKorMI34YQ+/bd62NdAPc2nWwaJAvM=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ];
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs utils/
|
||||
'';
|
||||
|
||||
# libcamera signs the IPA module libraries at install time, but they are then
|
||||
# modified by stripping and RPATH fixup. Therefore, we need to generate the
|
||||
# signatures again ourselves. For reproducibility, we use a static private key.
|
||||
#
|
||||
# If this is not done, libcamera will still try to load them, but it will
|
||||
# isolate them in separate processes, which can cause crashes for IPA modules
|
||||
# that are not designed for this (notably ipa_rpi.so).
|
||||
preBuild = ''
|
||||
ninja src/ipa-priv-key.pem
|
||||
install -D ${./ipa-priv-key.pem} src/ipa-priv-key.pem
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
buildInputs = [
|
||||
@@ -86,6 +97,10 @@ stdenv.mkDerivation rec {
|
||||
# Avoid blanket -Werror to evade build failures on less
|
||||
# tested compilers.
|
||||
"-Dwerror=false"
|
||||
# Documentation breaks binary compatibility.
|
||||
# Given that upstream also provides public documentation,
|
||||
# we can disable it here.
|
||||
"-Ddocumentation=disabled"
|
||||
];
|
||||
|
||||
# Fixes error on a deprecated declaration
|
||||
@@ -94,17 +109,6 @@ stdenv.mkDerivation rec {
|
||||
# Silence fontconfig warnings about missing config
|
||||
FONTCONFIG_FILE = makeFontsConf { fontDirectories = [ ]; };
|
||||
|
||||
# libcamera signs the IPA module libraries at install time, but they are then
|
||||
# modified by stripping and RPATH fixup. Therefore, we need to generate the
|
||||
# signatures again ourselves.
|
||||
#
|
||||
# If this is not done, libcamera will still try to load them, but it will
|
||||
# isolate them in separate processes, which can cause crashes for IPA modules
|
||||
# that are not designed for this (notably ipa_rpi.so).
|
||||
postFixup = ''
|
||||
../src/ipa/ipa-sign-install.sh src/ipa-priv-key.pem $out/lib/libcamera/ipa_*.so
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "An open source camera stack and framework for Linux, Android, and ChromeOS";
|
||||
homepage = "https://libcamera.org";
|
||||
|
||||
@@ -50,11 +50,11 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "unbound";
|
||||
version = "1.19.3";
|
||||
version = "1.20.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://nlnetlabs.nl/downloads/unbound/unbound-${finalAttrs.version}.tar.gz";
|
||||
hash = "sha256-OuMivn3C+DFgPksDkUNVM61YYcIyLjSnYAap+2XrVrk=";
|
||||
hash = "sha256-VrTO7TNjlSIAD9lndVdt34eCuzYXYQcV1/Hnd8XsHb8=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "lib" "man" ]; # "dev" would only split ~20 kB
|
||||
@@ -47,11 +47,11 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "go";
|
||||
version = "1.22.2";
|
||||
version = "1.22.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
|
||||
hash = "sha256-N06oKyiexzjpaCZ8rFnH1f8YD5SSJQJUeEsgROkN9ak=";
|
||||
hash = "sha256-gGSO80+QMZPXKlnA3/AZ9fmK4MmqE63gsOy/+ZGnb2g=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
@@ -67,6 +67,12 @@ let
|
||||
|
||||
cxxCMakeFlags = [
|
||||
"-DLIBCXX_CXX_ABI=${cxxabiName}"
|
||||
] ++ lib.optionals (cxxabi == null && lib.versionAtLeast release_version "16") [
|
||||
# Note: llvm < 16 doesn't support this flag (or it's broken); handled in postInstall instead.
|
||||
# Include libc++abi symbols within libc++.a for static linking libc++;
|
||||
# dynamic linking includes them through libc++.so being a linker script
|
||||
# which includes both shared objects.
|
||||
"-DLIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON"
|
||||
] ++ lib.optionals (cxxabi != null) [
|
||||
"-DLIBCXX_CXX_ABI_INCLUDE_PATHS=${lib.getDev cxxabi}/include"
|
||||
] ++ lib.optionals (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) [
|
||||
@@ -126,6 +132,31 @@ stdenv.mkDerivation (rec {
|
||||
postInstall = lib.optionalString (cxxabi != null) ''
|
||||
lndir ${lib.getDev cxxabi}/include $dev/include/c++/v1
|
||||
lndir ${lib.getLib cxxabi}/lib $out/lib
|
||||
libcxxabi=$out/lib/lib${cxxabi.libName}.a
|
||||
''
|
||||
# LIBCXX_STATICALLY_LINK_ABI_IN_STATIC_LIBRARY=ON doesn't work for LLVM < 16 or
|
||||
# external cxxabi libraries so merge libc++abi.a into libc++.a ourselves.
|
||||
|
||||
# GNU binutils emits objects in LIFO order in MRI scripts so after the merge
|
||||
# the objects are in reversed order so a second MRI script is required so the
|
||||
# objects in the archive are listed in proper order (libc++.a, libc++abi.a)
|
||||
+ lib.optionalString (cxxabi != null || lib.versionOlder release_version "16") ''
|
||||
libcxxabi=''${libcxxabi-$out/lib/libc++abi.a}
|
||||
if [[ -f $out/lib/libc++.a && -e $libcxxabi ]]; then
|
||||
$AR -M <<MRI
|
||||
create $out/lib/libc++.a
|
||||
addlib $out/lib/libc++.a
|
||||
addlib $libcxxabi
|
||||
save
|
||||
end
|
||||
MRI
|
||||
$AR -M <<MRI
|
||||
create $out/lib/libc++.a
|
||||
addlib $out/lib/libc++.a
|
||||
save
|
||||
end
|
||||
MRI
|
||||
fi
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
|
||||
@@ -3,9 +3,10 @@ from pathlib import Path
|
||||
import collections
|
||||
import sys
|
||||
import os
|
||||
from typing import Dict, List, Tuple
|
||||
from typing import Dict, List, Set, Tuple
|
||||
do_abort: bool = False
|
||||
packages: Dict[str, Dict[str, List[Dict[str, List[str]]]]] = collections.defaultdict(list)
|
||||
packages: Dict[str, Dict[str, Dict[str, List[str]]]] = collections.defaultdict(dict)
|
||||
found_paths: Set[Path] = set()
|
||||
out_path: Path = Path(os.getenv("out"))
|
||||
version: Tuple[int, int] = sys.version_info
|
||||
site_packages_path: str = f'lib/python{version[0]}.{version[1]}/site-packages'
|
||||
@@ -31,14 +32,10 @@ def describe_parents(parents: List[str]) -> str:
|
||||
|
||||
# inserts an entry into 'packages'
|
||||
def add_entry(name: str, version: str, store_path: str, parents: List[str]) -> None:
|
||||
if name not in packages:
|
||||
packages[name] = {}
|
||||
if store_path not in packages[name]:
|
||||
packages[name][store_path] = []
|
||||
packages[name][store_path].append(dict(
|
||||
packages[name][store_path] = dict(
|
||||
version=version,
|
||||
parents=parents,
|
||||
))
|
||||
)
|
||||
|
||||
|
||||
# transitively discover python dependencies and store them in 'packages'
|
||||
@@ -46,6 +43,12 @@ def find_packages(store_path: Path, site_packages_path: str, parents: List[str])
|
||||
site_packages: Path = (store_path / site_packages_path)
|
||||
propagated_build_inputs: Path = (store_path / "nix-support/propagated-build-inputs")
|
||||
|
||||
# only visit each path once, to avoid exponential complexity with highly
|
||||
# connected dependency graphs
|
||||
if store_path in found_paths:
|
||||
return
|
||||
found_paths.add(store_path)
|
||||
|
||||
# add the current package to the list
|
||||
if site_packages.exists():
|
||||
for dist_info in site_packages.glob("*.dist-info"):
|
||||
@@ -55,10 +58,9 @@ def find_packages(store_path: Path, site_packages_path: str, parents: List[str])
|
||||
# recursively add dependencies
|
||||
if propagated_build_inputs.exists():
|
||||
with open(propagated_build_inputs, "r") as f:
|
||||
build_inputs: List[str] = f.read().strip().split(" ")
|
||||
build_inputs: List[str] = f.read().split()
|
||||
for build_input in build_inputs:
|
||||
if build_input not in parents:
|
||||
find_packages(Path(build_input), site_packages_path, parents + [build_input])
|
||||
find_packages(Path(build_input), site_packages_path, parents + [build_input])
|
||||
|
||||
|
||||
find_packages(out_path, site_packages_path, [f"this derivation: {out_path}"])
|
||||
@@ -68,10 +70,9 @@ for name, store_paths in packages.items():
|
||||
if len(store_paths) > 1:
|
||||
do_abort = True
|
||||
print("Found duplicated packages in closure for dependency '{}': ".format(name))
|
||||
for store_path, candidates in store_paths.items():
|
||||
for candidate in candidates:
|
||||
print(f" {name} {candidate['version']} ({store_path})")
|
||||
print(describe_parents(candidate['parents']))
|
||||
for store_path, candidate in store_paths.items():
|
||||
print(f" {name} {candidate['version']} ({store_path})")
|
||||
print(describe_parents(candidate['parents']))
|
||||
|
||||
# fail if duplicates were found
|
||||
if do_abort:
|
||||
|
||||
@@ -143,4 +143,46 @@ in {
|
||||
};
|
||||
in
|
||||
expectFailure toplevel "Found duplicated packages in closure for dependency 'leaf'";
|
||||
|
||||
/*
|
||||
Transitive conflict with multiple dependency chains leading to the
|
||||
conflicting package.
|
||||
|
||||
Test sets up this dependency tree:
|
||||
|
||||
toplevel
|
||||
├── dep1
|
||||
│ └── leaf
|
||||
├── dep2
|
||||
│ └── leaf
|
||||
└── dep3
|
||||
└── leaf (customized version -> conflicting)
|
||||
*/
|
||||
catches-conflict-multiple-chains = let
|
||||
# package depending on dependency1, dependency2 and dependency3
|
||||
toplevel = generatePythonPackage {
|
||||
pname = "catches-conflict-multiple-chains";
|
||||
propagatedBuildInputs = [ dep1 dep2 dep3 ];
|
||||
};
|
||||
# dep1 package depending on leaf
|
||||
dep1 = generatePythonPackage {
|
||||
pname = "dependency1";
|
||||
propagatedBuildInputs = [ leaf ];
|
||||
};
|
||||
# dep2 package depending on leaf
|
||||
dep2 = generatePythonPackage {
|
||||
pname = "dependency2";
|
||||
propagatedBuildInputs = [ leaf ];
|
||||
};
|
||||
# dep3 package depending on conflicting version of leaf
|
||||
dep3 = generatePythonPackage {
|
||||
pname = "dependency3";
|
||||
propagatedBuildInputs = [ (customize leaf) ];
|
||||
};
|
||||
# some leaf package
|
||||
leaf = generatePythonPackage {
|
||||
pname = "leaf";
|
||||
};
|
||||
in
|
||||
expectFailure toplevel "Found duplicated packages in closure for dependency 'leaf'";
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
, libXext
|
||||
, gnome
|
||||
, systemd
|
||||
, systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -51,7 +52,7 @@ stdenv.mkDerivation rec {
|
||||
libXi
|
||||
# libXext is a transitive dependency of libXi
|
||||
libXext
|
||||
] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform systemd) [
|
||||
] ++ lib.optionals systemdSupport [
|
||||
# libsystemd is a needed for dbus-broker support
|
||||
systemd
|
||||
];
|
||||
@@ -72,9 +73,11 @@ stdenv.mkDerivation rec {
|
||||
# including the entire dbus closure in libraries linked with
|
||||
# the at-spi2-core libraries.
|
||||
"-Ddbus_daemon=/run/current-system/sw/bin/dbus-daemon"
|
||||
] ++ lib.optionals stdenv.hostPlatform.isLinux [
|
||||
] ++ lib.optionals systemdSupport [
|
||||
# Same as the above, but for dbus-broker
|
||||
"-Ddbus_broker=/run/current-system/sw/bin/dbus-broker-launch"
|
||||
] ++ lib.optionals (!systemdSupport) [
|
||||
"-Duse_systemd=false"
|
||||
];
|
||||
|
||||
passthru = {
|
||||
|
||||
@@ -33,6 +33,13 @@ stdenv.mkDerivation rec {
|
||||
url = "https://git.alpinelinux.org/aports/plain/community/directfb/0002-Fix-musl-PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP-comp.patch?id=f8158258493fc0c3eb5de2302e40f4bc44ecfb09";
|
||||
sha256 = "sha256-j3+mcP6hV9LKuba1GOdcM1cZfmXuJtRgx4vE484jIns=";
|
||||
})
|
||||
# This uses POSIX basename() while directfb expects GNU
|
||||
# basename(), but the POSIX behaviour of modifying the input
|
||||
# should be fine since directfb never uses the buffer afterwards.
|
||||
(fetchpatch {
|
||||
url = "https://git.alpinelinux.org/aports/plain/community/directfb/fix-missing-basename.patch?id=bc049ae1bcf9ef3f66cd12a6fbb7ac4e917764b1";
|
||||
hash = "sha256-BX/C8+nh2fovHx8vKXFqKzBtfiTKUcW2BUCsaDIhodc=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -427,6 +427,21 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/75b1a555a70c178a9166629e43ec2f6250219eb2";
|
||||
hash = "sha256-+2kzfPJf5piim+DqEgDuVEEX5HLwRsxq0dWONJ4ACrU=";
|
||||
}
|
||||
{
|
||||
name = "5.x-CVE-2024-31585.patch";
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/8711cea3841fc385cccb1e7255176479e865cd4d";
|
||||
hash = "sha256-WT+ly/l04yM/tRVbhkESA3sDDjwvtd/Cg2y8tQo4ApI=";
|
||||
}
|
||||
{
|
||||
name = "CVE-2024-31582.patch";
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/99debe5f823f45a482e1dc08de35879aa9c74bd2";
|
||||
hash = "sha256-+CQ9FXR6Vr/AmsbXFiCUXZcxKj1s8nInEdke/Oc/kUA=";
|
||||
}
|
||||
{
|
||||
name = "CVE-2024-31578.patch";
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/3bb00c0a420c3ce83c6fafee30270d69622ccad7";
|
||||
hash = "sha256-oZMZysBA+/gwaGEM1yvI+8wCadXWE7qLRL6Emap3b8Q=";
|
||||
}
|
||||
])
|
||||
++ (lib.optionals (lib.versionAtLeast version "6.1" && lib.versionOlder version "6.2") [
|
||||
{ # this can be removed post 6.1
|
||||
@@ -439,6 +454,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/e06ce6d2b45edac4a2df04f304e18d4727417d24";
|
||||
hash = "sha256-73mlX1rdJrguw7OXaSItfHtI7gflDrFj+7SepVvvUIg=";
|
||||
}
|
||||
{
|
||||
name = "CVE-2024-31582.patch";
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/99debe5f823f45a482e1dc08de35879aa9c74bd2";
|
||||
hash = "sha256-+CQ9FXR6Vr/AmsbXFiCUXZcxKj1s8nInEdke/Oc/kUA=";
|
||||
}
|
||||
{
|
||||
name = "CVE-2024-31578.patch";
|
||||
url = "https://git.ffmpeg.org/gitweb/ffmpeg.git/patch/3bb00c0a420c3ce83c6fafee30270d69622ccad7";
|
||||
hash = "sha256-oZMZysBA+/gwaGEM1yvI+8wCadXWE7qLRL6Emap3b8Q=";
|
||||
}
|
||||
])
|
||||
++ (lib.optionals (lib.versionAtLeast version "7.0") [
|
||||
{
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
, buildPackages
|
||||
, withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
|
||||
, gobject-introspection
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -41,6 +42,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
patches = [
|
||||
# Move installed tests to a separate output
|
||||
./installed-tests-path.patch
|
||||
# Remove post 2.42.11
|
||||
(fetchpatch {
|
||||
name = "fix-meson.build-typo.patch";
|
||||
url = "https://gitlab.gnome.org/GNOME/gdk-pixbuf/-/commit/238893d8cd6f9c2616a05ab521a29651a17a38c2.patch";
|
||||
hash = "sha256-6IhdNH6hhygSXD7EJo/hoBLFeb2lJlBIHNBPTkA3Do0=";
|
||||
})
|
||||
];
|
||||
|
||||
# gdk-pixbuf-thumbnailer is not wrapped therefore strictDeps will work
|
||||
@@ -79,6 +86,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"-Dgio_sniffing=false"
|
||||
(lib.mesonBool "gtk_doc" withIntrospection)
|
||||
(lib.mesonEnable "introspection" withIntrospection)
|
||||
(lib.mesonEnable "others" true)
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
@@ -93,6 +101,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
substituteInPlace docs/meson.build \
|
||||
--replace "dependency('gi-docgen'," "dependency('gi-docgen', native:true," \
|
||||
--replace "'gi-docgen', req" "'gi-docgen', native:true, req"
|
||||
|
||||
# Remove 'ani' loader until proper fix for CVE-2022-48622
|
||||
substituteInPlace meson.build --replace-fail "'ani'," ""
|
||||
'';
|
||||
|
||||
postInstall =
|
||||
|
||||
@@ -60,11 +60,11 @@ in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "glib";
|
||||
version = "2.80.0";
|
||||
version = "2.80.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
|
||||
hash = "sha256-giipL5KkEhYLE5rmi2NFvSjyRDSnta8VDr4h/1h6Vh0=";
|
||||
hash = "sha256-uc+296W9WzEjj9XVbfImst2l6jdhFHW/ifag+UAP6L0=";
|
||||
};
|
||||
|
||||
patches = lib.optionals stdenv.isDarwin [
|
||||
@@ -239,7 +239,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
done
|
||||
|
||||
# Cannot be in postInstall, otherwise _multioutDocs hook in preFixup will move right back.
|
||||
moveToOutput "share/doc/glib-2.0" "$devdoc"
|
||||
moveToOutput "share/doc" "$devdoc"
|
||||
'';
|
||||
|
||||
nativeCheckInputs = [ tzdata desktop-file-utils shared-mime-info ];
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -44,7 +44,7 @@
|
||||
|
||||
let
|
||||
version = "2.39";
|
||||
patchSuffix = "-31";
|
||||
patchSuffix = "-52";
|
||||
sha256 = "sha256-93vUfPgXDFc2Wue/hmlsEYrbOxINMlnGTFAtPcHi2SY=";
|
||||
in
|
||||
|
||||
@@ -60,7 +60,7 @@ stdenv.mkDerivation ({
|
||||
[
|
||||
/* No tarballs for stable upstream branch, only https://sourceware.org/git/glibc.git and using git would complicate bootstrapping.
|
||||
$ git fetch --all -p && git checkout origin/release/2.39/master && git describe
|
||||
glibc-2.39-31-g31da30f23c
|
||||
glibc-2.39-52-gf8e4623421
|
||||
$ git show --minimal --reverse glibc-2.39.. ':!ADVISORIES' > 2.39-master.patch
|
||||
|
||||
To compare the archive contents zdiff can be used.
|
||||
|
||||
@@ -6,22 +6,22 @@
|
||||
# files.
|
||||
|
||||
let
|
||||
rev = "28ea239c53a2d5d8800c472bc2452eaa16e37af2";
|
||||
rev = "948ae97ca5703224bd3eada06b7a69f40dd15a02";
|
||||
|
||||
# Don't use fetchgit as this is needed during Aarch64 bootstrapping
|
||||
configGuess = fetchurl {
|
||||
name = "config.guess-${builtins.substring 0 7 rev}";
|
||||
url = "https://git.savannah.gnu.org/cgit/config.git/plain/config.guess?id=${rev}";
|
||||
hash = "sha256-7CV3YUJSMm+InfHel7mkV8A6mpSBEEhWPCEaRElti6M=";
|
||||
hash = "sha256-ZByuPAx0xJNU0+3gCfP+vYD+vhUBp3wdn6yNQsxFtss=";
|
||||
};
|
||||
configSub = fetchurl {
|
||||
name = "config.sub-${builtins.substring 0 7 rev}";
|
||||
url = "https://git.savannah.gnu.org/cgit/config.git/plain/config.sub?id=${rev}";
|
||||
hash = "sha256-Rlxf5nx9NrcugIgScWRF1NONS5RzTKjTaoY50SMjh4s=";
|
||||
hash = "sha256-/jovMvuv9XhIcyVJ9I2YP9ZSYCTsLw9ancdcL0NZo6Y=";
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
pname = "gnu-config";
|
||||
version = "2023-09-19";
|
||||
version = "2024-01-01";
|
||||
|
||||
unpackPhase = ''
|
||||
runHook preUnpack
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{ stdenv, lib, fetchurl, pkg-config, meson, ninja, docutils
|
||||
, libpthreadstubs, libpciaccess
|
||||
, libpthreadstubs
|
||||
, withIntel ? lib.meta.availableOn stdenv.hostPlatform libpciaccess, libpciaccess
|
||||
, withValgrind ? lib.meta.availableOn stdenv.hostPlatform valgrind-light, valgrind-light
|
||||
, gitUpdater
|
||||
}:
|
||||
@@ -16,12 +17,14 @@ stdenv.mkDerivation rec {
|
||||
outputs = [ "out" "dev" "bin" ];
|
||||
|
||||
nativeBuildInputs = [ pkg-config meson ninja docutils ];
|
||||
buildInputs = [ libpthreadstubs libpciaccess ]
|
||||
buildInputs = [ libpthreadstubs ]
|
||||
++ lib.optional withIntel libpciaccess
|
||||
++ lib.optional withValgrind valgrind-light;
|
||||
|
||||
mesonFlags = [
|
||||
"-Dinstall-test-programs=true"
|
||||
"-Dcairo-tests=disabled"
|
||||
(lib.mesonEnable "intel" withIntel)
|
||||
(lib.mesonEnable "omap" stdenv.hostPlatform.isLinux)
|
||||
(lib.mesonEnable "valgrind" withValgrind)
|
||||
] ++ lib.optionals stdenv.hostPlatform.isAarch [
|
||||
|
||||
@@ -6,11 +6,13 @@
|
||||
, ninja
|
||||
, udev
|
||||
, glib
|
||||
, glibcLocales
|
||||
, umockdev
|
||||
, gnome
|
||||
, vala
|
||||
, gobject-introspection
|
||||
, glibcLocales
|
||||
, umockdev
|
||||
, buildPackages
|
||||
, withIntrospection ? lib.meta.availableOn stdenv.hostPlatform gobject-introspection && stdenv.hostPlatform.emulatorAvailable buildPackages
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -42,9 +44,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
pkg-config
|
||||
meson
|
||||
ninja
|
||||
vala
|
||||
glib # for glib-mkenums needed during the build
|
||||
] ++ lib.optionals withIntrospection [
|
||||
gobject-introspection
|
||||
vala
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
@@ -57,8 +60,12 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
umockdev
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
mesonFlags = lib.optional (!finalAttrs.finalPackage.doCheck) "-Dtests=disabled";
|
||||
doCheck = withIntrospection;
|
||||
mesonFlags = [
|
||||
(lib.mesonEnable "introspection" withIntrospection)
|
||||
(lib.mesonEnable "vapi" withIntrospection)
|
||||
(lib.mesonEnable "tests" finalAttrs.finalPackage.doCheck)
|
||||
];
|
||||
|
||||
passthru = {
|
||||
updateScript = gnome.updateScript {
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ index adb0ca45..46fc16dd 100644
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/jerror.h ${CMAKE_CURRENT_SOURCE_DIR}/jmorecfg.h
|
||||
- ${CMAKE_CURRENT_SOURCE_DIR}/jpeglib.h
|
||||
+ ${CMAKE_CURRENT_SOURCE_DIR}/jpeglib.h ${CMAKE_CURRENT_SOURCE_DIR}/transupp.h
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} COMPONENT include)
|
||||
|
||||
include(cmakescripts/BuildPackages.cmake)
|
||||
--
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, cmake
|
||||
, nasm
|
||||
, openjdk
|
||||
@@ -33,22 +32,16 @@ assert !(enableJpeg7 && enableJpeg8); # pick only one or none, not both
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
pname = "libjpeg-turbo";
|
||||
version = "3.0.2";
|
||||
version = "3.0.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libjpeg-turbo";
|
||||
repo = "libjpeg-turbo";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-xHjd0WHN50b75wdWPHUwfmJGsiWKmj+zA59UwakIo74=";
|
||||
hash = "sha256-w2wJaVf4sjJ9pPPqc9R4TE6Q6Yl0U6+fI5KLpQKwEXI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "CMAKE_CROSSCOMPILING_EMULATOR=env-fix.patch";
|
||||
url = "https://github.com/libjpeg-turbo/libjpeg-turbo/compare/36c51dd3eb60ebde3ca77d3cfa7df3422f1aaaf1..b6ee1016abbc55116304ad396cf88aa19391e10a.patch";
|
||||
hash = "sha256-dNwXicvZEsG02TBaM5nYMlZ+VczT/Dfx6ZM/6huZpwE=";
|
||||
})
|
||||
|
||||
# This is needed by freeimage
|
||||
./0001-Compile-transupp.c-as-part-of-the-library.patch
|
||||
] ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
, glib
|
||||
, python3
|
||||
, help2man
|
||||
, systemd
|
||||
, bash-completion
|
||||
, bash
|
||||
, buildPackages
|
||||
@@ -52,7 +51,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
systemd
|
||||
bash-completion
|
||||
bash
|
||||
];
|
||||
|
||||
@@ -11,6 +11,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
|
||||
configureFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
||||
"ac_cv_func_malloc_0_nonnull=yes"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://libndp.org/";
|
||||
description = "Library for Neighbor Discovery Protocol";
|
||||
|
||||
@@ -111,8 +111,8 @@
|
||||
# nix build .#mesa .#pkgsi686Linux.mesa .#pkgsCross.aarch64-multiplatform.mesa .#pkgsMusl.mesa
|
||||
|
||||
let
|
||||
version = "24.0.6";
|
||||
hash = "sha256-i3qS2+ZGjBjyODcAE1tf6d6DbN8MyP19uuPHEQI31gQ=";
|
||||
version = "24.0.7";
|
||||
hash = "sha256-dFRCXx7UpvG1sQfhZyswyIsi6g7+oACuLH2W25P2wmo=";
|
||||
|
||||
# Release calendar: https://www.mesa3d.org/release-calendar.html
|
||||
# Release frequency: https://www.mesa3d.org/releasing.html#schedule
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
, python3
|
||||
, meson
|
||||
, ninja
|
||||
, eudev
|
||||
, systemd
|
||||
, enableSystemd ? true
|
||||
, pkg-config
|
||||
@@ -76,7 +75,7 @@ assert ldacbtSupport -> bluezSupport;
|
||||
|
||||
stdenv.mkDerivation(finalAttrs: {
|
||||
pname = "pipewire";
|
||||
version = "1.0.5";
|
||||
version = "1.0.6";
|
||||
|
||||
outputs = [
|
||||
"out"
|
||||
@@ -92,7 +91,7 @@ stdenv.mkDerivation(finalAttrs: {
|
||||
owner = "pipewire";
|
||||
repo = "pipewire";
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "sha256-lgrwN83eywMKdsm0ig9QATDt3U5RboJ4kyILE+ts9Ts=";
|
||||
sha256 = "sha256-JrKSsYCMNRHHh92Sn/03Bq2gPaXNYTqmwaLXkE0axdA=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -125,8 +124,7 @@ stdenv.mkDerivation(finalAttrs: {
|
||||
lilv
|
||||
ncurses
|
||||
readline
|
||||
udev
|
||||
] ++ (if enableSystemd then [ systemd ] else [ eudev ])
|
||||
] ++ (if enableSystemd then [ systemd ] else [ udev ])
|
||||
++ (if lib.meta.availableOn stdenv.hostPlatform webrtc-audio-processing_1 then [ webrtc-audio-processing_1 ] else [ webrtc-audio-processing ])
|
||||
++ lib.optionals gstreamerSupport [ gst_all_1.gst-plugins-base gst_all_1.gstreamer ]
|
||||
++ lib.optionals libcameraSupport [ libcamera ]
|
||||
@@ -159,6 +157,7 @@ stdenv.mkDerivation(finalAttrs: {
|
||||
(lib.mesonEnable "libpulse" pulseTunnelSupport)
|
||||
(lib.mesonEnable "avahi" zeroconfSupport)
|
||||
(lib.mesonEnable "gstreamer" gstreamerSupport)
|
||||
(lib.mesonEnable "systemd" enableSystemd)
|
||||
(lib.mesonEnable "systemd-system-service" enableSystemd)
|
||||
(lib.mesonEnable "udev" (!enableSystemd))
|
||||
(lib.mesonEnable "ffmpeg" ffmpegSupport)
|
||||
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
From 7ba07551dfcd4ef9a87b8f0d9eb8b91fabcb41b3 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Tojnar <jtojnar@gmail.com>
|
||||
Date: Mon, 1 Nov 2021 14:17:17 +0100
|
||||
Subject: [PATCH] build: Use datarootdir in Meson-generated pkg-config files
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
With datadir outside of prefix (currently unsupported by Meson[1]
|
||||
but a frequent occurrence in Nixpkgs), the `datadir` entry,
|
||||
in the `polkit-gobject-1` pkg-config file will be an absolute path.
|
||||
This will prevent changing the base directory of `policydir`
|
||||
with `--define-variable=prefix=…`, which many projects use
|
||||
to install policy files to their own prefix.
|
||||
|
||||
Previously, this worked without changes on Nixpkgs’s part because
|
||||
the pkg-config template used by Autotools contained `@datarootdir@`,
|
||||
which resolves to `$(prefix)/share`[2], taking no heed of the changed datadir.
|
||||
|
||||
Similar issue can happen when a distribution package redefines datadir
|
||||
like Debian does/did.[3]
|
||||
|
||||
This patch changes Meson-based build system to use `$(prefix)/share`
|
||||
in the generated pkg-config files, mirroring Autotools.
|
||||
|
||||
---
|
||||
|
||||
1. Likely to change in the future: https://github.com/mesonbuild/meson/issues/2561#issuecomment-939253717
|
||||
2. https://www.gnu.org/prep/standards/html_node/Directory-Variables.html
|
||||
3. https://blogs.gnome.org/hughsie/2014/06/16/datarootdir-v-s-datadir/
|
||||
---
|
||||
src/polkit/meson.build | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/polkit/meson.build b/src/polkit/meson.build
|
||||
index 63dc1e85..c92cb70f 100644
|
||||
--- a/src/polkit/meson.build
|
||||
+++ b/src/polkit/meson.build
|
||||
@@ -113,9 +113,8 @@ pkg.generate(
|
||||
requires: common_deps,
|
||||
variables: [
|
||||
'exec_prefix=${prefix}',
|
||||
- 'datadir=' + ('${prefix}' / pk_datadir),
|
||||
- 'policydir=' + ('${datadir}' / pk_actiondir),
|
||||
- 'actiondir=' + ('${datadir}' / pk_actiondir),
|
||||
+ 'policydir=' + ('${prefix}' / 'share' / pk_actiondir),
|
||||
+ 'actiondir=' + ('${prefix}' / 'share' / pk_actiondir),
|
||||
'pkcheck_supports_uid=true',
|
||||
],
|
||||
)
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitLab
|
||||
, fetchFromGitHub
|
||||
, pkg-config
|
||||
, glib
|
||||
, expat
|
||||
@@ -10,7 +10,6 @@
|
||||
, ninja
|
||||
, perl
|
||||
, python3
|
||||
, fetchpatch
|
||||
, gettext
|
||||
, duktape
|
||||
, gobject-introspection
|
||||
@@ -38,26 +37,22 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "polkit";
|
||||
version = "123";
|
||||
version = "124";
|
||||
|
||||
outputs = [ "bin" "dev" "out" ]; # small man pages in $bin
|
||||
|
||||
# Tarballs do not contain subprojects.
|
||||
src = fetchFromGitLab {
|
||||
domain = "gitlab.freedesktop.org";
|
||||
owner = "polkit";
|
||||
src = fetchFromGitHub {
|
||||
owner = "polkit-org";
|
||||
repo = "polkit";
|
||||
rev = version;
|
||||
hash = "sha256-/kjWkh6w2FYgtYWzw3g3GlWJKKpkJ3cqwfE0iDqJctw=";
|
||||
hash = "sha256-Vc9G2xK6U1cX+xW2BnKp3oS/ACbSXS/lztbFP5oJOlM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Allow changing base for paths in pkg-config file as before.
|
||||
# https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/100
|
||||
(fetchpatch {
|
||||
url = "https://gitlab.freedesktop.org/polkit/polkit/-/commit/7ba07551dfcd4ef9a87b8f0d9eb8b91fabcb41b3.patch";
|
||||
sha256 = "ebbLILncq1hAZTBMsLm+vDGw6j0iQ0crGyhzyLZQgKA=";
|
||||
})
|
||||
./0001-build-Use-datarootdir-in-Meson-generated-pkg-config-.patch
|
||||
];
|
||||
|
||||
depsBuildBuild = [
|
||||
@@ -108,10 +103,14 @@ stdenv.mkDerivation rec {
|
||||
]))
|
||||
];
|
||||
|
||||
env = {
|
||||
PKG_CONFIG_SYSTEMD_SYSTEMDSYSTEMUNITDIR = "${placeholder "out"}/lib/systemd/system";
|
||||
PKG_CONFIG_SYSTEMD_SYSUSERS_DIR = "${placeholder "out"}/lib/sysusers.d";
|
||||
};
|
||||
|
||||
mesonFlags = [
|
||||
"--datadir=${system}/share"
|
||||
"--sysconfdir=/etc"
|
||||
"-Dsystemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
|
||||
"-Dpolkitd_user=polkituser" #TODO? <nixos> config.ids.uids.polkituser
|
||||
"-Dos_type=redhat" # only affects PAM includes
|
||||
"-Dintrospection=${lib.boolToString withIntrospection}"
|
||||
@@ -175,7 +174,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.freedesktop.org/polkit/polkit/";
|
||||
homepage = "https://github.com/polkit-org/polkit";
|
||||
description = "A toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes";
|
||||
license = licenses.lgpl2Plus;
|
||||
platforms = platforms.linux;
|
||||
|
||||
@@ -15,13 +15,13 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "tpm2-tss";
|
||||
version = "4.1.0";
|
||||
version = "4.1.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tpm2-software";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-cQdIPQNZzy5CisWw5yifPXC7FqaZxj4VKWpvtPOffE8=";
|
||||
hash = "sha256-paqTQ7DQI0Nd8q0qUPRa2UZ/oE5nrVEq5KUiG8hRXuQ=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" "dev" ];
|
||||
|
||||
@@ -34,13 +34,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tracker";
|
||||
version = "3.7.2";
|
||||
version = "3.7.3";
|
||||
|
||||
outputs = [ "out" "dev" "devdoc" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = with finalAttrs; "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
hash = "sha256-3ryqKR5Gr63Bz2olHxfvsCRAqki/9kPXjGESOAfc4A8=";
|
||||
hash = "sha256-qz1KUJN+BMXteEb227mZ4pCYGUAvOJylku5rd90o0fk=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
@@ -101,9 +101,16 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
ln -s zlib1.dll $out/bin/libz.dll
|
||||
'';
|
||||
|
||||
# As zlib takes part in the stdenv building, we don't want references
|
||||
# to the bootstrap-tools libgcc (as uses to happen on arm/mips)
|
||||
env.NIX_CFLAGS_COMPILE = lib.optionalString (!stdenv.hostPlatform.isDarwin) "-static-libgcc";
|
||||
env = lib.optionalAttrs (!stdenv.hostPlatform.isDarwin) {
|
||||
# As zlib takes part in the stdenv building, we don't want references
|
||||
# to the bootstrap-tools libgcc (as uses to happen on arm/mips)
|
||||
NIX_CFLAGS_COMPILE = "-static-libgcc";
|
||||
} // lib.optionalAttrs (stdenv.hostPlatform.linker == "lld") {
|
||||
# lld 16 enables --no-undefined-version by defualt
|
||||
# This makes configure think it can't build dynamic libraries
|
||||
# this may be removed when a version is packaged with https://github.com/madler/zlib/issues/960 fixed
|
||||
NIX_LDFLAGS = "--undefined-version";
|
||||
};
|
||||
|
||||
# We don't strip on static cross-compilation because of reports that native
|
||||
# stripping corrupted the target library; see commit 12e960f5 for the report.
|
||||
|
||||
@@ -1,44 +1,87 @@
|
||||
{ stdenv, lib, fetchurl, docbook_xsl, docbook_xsl_ns, gettext, libxslt, glibcLocales, docbook_xml_dtd_412, docbook_sgml_dtd_41, opensp, bash
|
||||
, perl, buildPerlPackage, ModuleBuild, TextWrapI18N, LocaleGettext, TermReadKey, SGMLSpm, UnicodeLineBreak, PodParser, YAMLTiny
|
||||
, fetchpatch, writeShellScriptBin
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchurl
|
||||
, docbook_xsl
|
||||
, docbook_xsl_ns
|
||||
, gettext
|
||||
, libxslt
|
||||
, glibcLocales
|
||||
, docbook_xml_dtd_45
|
||||
, docbook_sgml_dtd_41
|
||||
, opensp
|
||||
, bash
|
||||
, perl
|
||||
, buildPerlPackage
|
||||
, ModuleBuild
|
||||
, TextWrapI18N
|
||||
, LocaleGettext
|
||||
, SGMLSpm
|
||||
, UnicodeLineBreak
|
||||
, PodParser
|
||||
, YAMLTiny
|
||||
, SyntaxKeywordTry
|
||||
, writeShellScriptBin
|
||||
}:
|
||||
|
||||
buildPerlPackage rec {
|
||||
pname = "po4a";
|
||||
version = "0.62";
|
||||
version = "0.71";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/mquinson/po4a/releases/download/v${version}/po4a-${version}.tar.gz";
|
||||
sha256 = "0eb510a66f59de68cf7a205342036cc9fc08b39334b91f1456421a5f3359e68b";
|
||||
hash = "sha256-xXJAHknMEXV8bTBgkW/ftagzJR7R1K65ibZnBLzyg/k=";
|
||||
};
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
# make devdoc output reproducible
|
||||
# https://github.com/mquinson/po4a/pull/387
|
||||
url = "https://github.com/mquinson/po4a/commit/df7433b58f6570558d44b6aac885c2a8f7862e51.patch";
|
||||
sha256 = "9MVkYiItR2P3PBCUc4OhEOUHQuLqTWUYtYlZ3L8miC8=";
|
||||
})
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs =
|
||||
# the tests for the tex-format use kpsewhich -- texlive's file finding utility.
|
||||
# We don't want to depend on texlive here, so we replace it with a minimal
|
||||
# shellscript that suffices for the tests in t/fmt/tex/, i.e. it looks up
|
||||
# article.cls to an existing file, but doesn't find article-wrong.cls.
|
||||
let kpsewhich-stub = writeShellScriptBin "kpsewhich"
|
||||
''[[ $1 = "article.cls" ]] && echo /dev/null'';
|
||||
let
|
||||
kpsewhich-stub = writeShellScriptBin "kpsewhich"
|
||||
''[[ $1 = "article.cls" ]] && echo /dev/null'';
|
||||
in
|
||||
[ gettext libxslt docbook_xsl docbook_xsl_ns ModuleBuild docbook_xml_dtd_412 docbook_sgml_dtd_41 opensp kpsewhich-stub glibcLocales ];
|
||||
propagatedBuildInputs = lib.optional (!stdenv.hostPlatform.isMusl) TextWrapI18N ++ [ LocaleGettext SGMLSpm UnicodeLineBreak PodParser YAMLTiny ];
|
||||
[
|
||||
gettext
|
||||
libxslt
|
||||
docbook_xsl
|
||||
docbook_xsl_ns
|
||||
ModuleBuild
|
||||
docbook_xml_dtd_45
|
||||
docbook_sgml_dtd_41
|
||||
opensp
|
||||
kpsewhich-stub
|
||||
glibcLocales
|
||||
];
|
||||
|
||||
# TODO: TermReadKey was temporarily removed from propagatedBuildInputs to unfreeze the build
|
||||
propagatedBuildInputs = lib.optionals (!stdenv.hostPlatform.isMusl) [
|
||||
TextWrapI18N
|
||||
] ++ [
|
||||
LocaleGettext
|
||||
SGMLSpm
|
||||
UnicodeLineBreak
|
||||
PodParser
|
||||
YAMLTiny
|
||||
SyntaxKeywordTry
|
||||
];
|
||||
|
||||
buildInputs = [ bash ];
|
||||
|
||||
LC_ALL = "en_US.UTF-8";
|
||||
SGML_CATALOG_FILES = "${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml";
|
||||
SGML_CATALOG_FILES = "${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml";
|
||||
|
||||
preConfigure = ''
|
||||
touch Makefile.PL
|
||||
export PERL_MB_OPT="--install_base=$out --prefix=$out"
|
||||
'';
|
||||
buildPhase = "perl Build.PL --install_base=$out --install_path=\"lib=$out/${perl.libPrefix}\"; ./Build build";
|
||||
|
||||
buildPhase = ''
|
||||
perl Build.PL --install_base=$out --install_path="lib=$out/${perl.libPrefix}"
|
||||
./Build build
|
||||
'';
|
||||
|
||||
# Disabling tests on musl
|
||||
# Void linux package have investigated the failure and tracked it down to differences in gettext behavior. They decided to disable tests.
|
||||
@@ -53,15 +96,17 @@ buildPerlPackage rec {
|
||||
export SGML_CATALOG_FILES=${docbook_sgml_dtd_41}/sgml/dtd/docbook-4.1/docbook.cat
|
||||
./Build test
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
./Build install
|
||||
for f in $out/bin/*; do
|
||||
substituteInPlace $f --replace "#! /usr/bin/env perl" "#!${perl}/bin/perl"
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Tools for helping translation of documentation";
|
||||
homepage = "https://po4a.org";
|
||||
license = with lib.licenses; [ gpl2Only ];
|
||||
license = with lib.licenses; [ gpl2Plus ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
, dbus-glib
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
lib.fix (finalPackage: buildPythonPackage rec {
|
||||
pname = "dbus-python";
|
||||
version = "1.3.2";
|
||||
pyproject = true;
|
||||
@@ -52,6 +52,7 @@ buildPythonPackage rec {
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
dbus # build systems checks for `dbus-run-session` in PATH
|
||||
meson
|
||||
meson-python
|
||||
pkg-config
|
||||
@@ -67,6 +68,10 @@ buildPythonPackage rec {
|
||||
"-Cbuild-dir=_meson-build"
|
||||
];
|
||||
|
||||
mesonFlags = [
|
||||
(lib.mesonBool "tests" finalPackage.doInstallCheck)
|
||||
];
|
||||
|
||||
# workaround bug in meson-python
|
||||
# https://github.com/mesonbuild/meson-python/issues/240
|
||||
postInstall = ''
|
||||
@@ -98,4 +103,4 @@ buildPythonPackage rec {
|
||||
platforms = dbus.meta.platforms;
|
||||
maintainers = with maintainers; [ ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3,22 +3,29 @@
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
, six
|
||||
, decorator
|
||||
, nose
|
||||
, krb5
|
||||
, GSS
|
||||
, parameterized
|
||||
, shouldbe
|
||||
|
||||
# build-system
|
||||
, cython
|
||||
, python
|
||||
, krb5
|
||||
, setuptools
|
||||
|
||||
# dependencies
|
||||
, decorator
|
||||
|
||||
# native dependencies
|
||||
, GSS
|
||||
|
||||
# tests
|
||||
, parameterized
|
||||
, k5test
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "gssapi";
|
||||
version = "1.8.3";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
@@ -28,7 +35,6 @@ buildPythonPackage rec {
|
||||
hash = "sha256-H1JfdvxJvX5dmC9aTqIOkjAqFEL44KoUXEhoYj2uRY8=";
|
||||
};
|
||||
|
||||
# It's used to locate headers
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace 'get_output(f"{kc} gssapi --prefix")' '"${lib.getDev krb5}"'
|
||||
@@ -38,14 +44,14 @@ buildPythonPackage rec {
|
||||
GSSAPI_SUPPORT_DETECT = "false";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
build-system = [
|
||||
cython
|
||||
krb5
|
||||
setuptools
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
decorator
|
||||
six
|
||||
];
|
||||
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
@@ -54,26 +60,19 @@ buildPythonPackage rec {
|
||||
|
||||
nativeCheckInputs = [
|
||||
k5test
|
||||
nose
|
||||
parameterized
|
||||
shouldbe
|
||||
six
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
doCheck = pythonOlder "3.8" # `shouldbe` not available
|
||||
&& !stdenv.isDarwin; # many failures on darwin
|
||||
|
||||
# skip tests which fail possibly due to be an upstream issue (see
|
||||
# https://github.com/pythongssapi/python-gssapi/issues/220)
|
||||
checkPhase = ''
|
||||
# some tests don't respond to being disabled through nosetests -x
|
||||
echo $'\ndel CredsTestCase.test_add_with_impersonate' >> gssapi/tests/test_high_level.py
|
||||
echo $'\ndel TestBaseUtilities.test_acquire_creds_impersonate_name' >> gssapi/tests/test_raw.py
|
||||
echo $'\ndel TestBaseUtilities.test_add_cred_impersonate_name' >> gssapi/tests/test_raw.py
|
||||
|
||||
export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
|
||||
nosetests -e 'ext_test_\d.*'
|
||||
preCheck = ''
|
||||
mv gssapi/tests $TMPDIR/
|
||||
pushd $TMPDIR
|
||||
'';
|
||||
|
||||
postCheck = ''
|
||||
popd
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "gssapi" ];
|
||||
|
||||
meta = with lib; {
|
||||
|
||||
@@ -41,13 +41,13 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ipython";
|
||||
version = "8.23.0";
|
||||
version = "8.24.0";
|
||||
pyproject = true;
|
||||
disabled = pythonOlder "3.10";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-dGjtr09t4+G5EuV/ZsJB5v08cJny7CE24jnhQugAJ00=";
|
||||
hash = "sha256-AQ2z+KcopXi7ZB/dBsBjufuOlqlGTGOuxjEPvLXoBQE=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
|
||||
# build-system
|
||||
, setuptools
|
||||
@@ -31,6 +32,19 @@ buildPythonPackage rec {
|
||||
hash = "sha256-6VGC6M5oyGCOiXcYp6mpyhL+JlcYZKIqOQU9Sm/TkKM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "CVE-2024-33663.patch";
|
||||
url = "https://build.opensuse.org/public/source/openSUSE:Factory/python-python-jose/CVE-2024-33663.patch?rev=36cd8815411620042f56a3b81599b341";
|
||||
hash = "sha256-uxOCa7Lg82zY2nuHzw6CbcymCKUodITrFU3lLY1XMFU=";
|
||||
})
|
||||
(fetchpatch {
|
||||
name = "CVE-2024-33664.patch";
|
||||
url = "https://build.opensuse.org/public/source/openSUSE:Factory/python-python-jose/CVE-2024-33664.patch?rev=36cd8815411620042f56a3b81599b341";
|
||||
hash = "sha256-wx/U1T7t7TloP+dMXxGxEVB3bMC7e6epmN8RE8FKksM=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.py \
|
||||
--replace '"pytest-runner",' ""
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonAtLeast
|
||||
, fetchPypi
|
||||
, nose
|
||||
, forbiddenfruit
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "0.1.2";
|
||||
format = "setuptools";
|
||||
pname = "shouldbe";
|
||||
# incompatible, https://github.com/DirectXMan12/should_be/issues/4
|
||||
disabled = pythonAtLeast "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "16zbvjxf71dl4yfbgcr6idyim3mdrfvix1dv8b95p0s9z07372pj";
|
||||
};
|
||||
|
||||
nativeCheckInputs = [ nose ];
|
||||
propagatedBuildInputs = [ forbiddenfruit ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python Assertion Helpers inspired by Shouldly";
|
||||
homepage = "https://pypi.python.org/pypi/shouldbe/";
|
||||
license = licenses.mit;
|
||||
};
|
||||
|
||||
}
|
||||
@@ -28,14 +28,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "werkzeug";
|
||||
version = "3.0.2";
|
||||
version = "3.0.3";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-45tkWmrJKCJYjns5ppLngockzq4LDXAu+WcB+Q5wEo0=";
|
||||
hash = "sha256-CX5b/anwq6jaa4VFFG3vSB0Gqn0yZudEjizM9n3YvRg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -63,6 +63,8 @@ buildPythonPackage rec {
|
||||
greenlet
|
||||
] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
|
||||
|
||||
pythonImportsCheck = [ "werkzeug" ];
|
||||
|
||||
disabledTests = lib.optionals stdenv.isDarwin [
|
||||
"test_get_machine_id"
|
||||
];
|
||||
@@ -82,8 +84,8 @@ buildPythonPackage rec {
|
||||
inherit moto sentry-sdk;
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
changelog = "https://werkzeug.palletsprojects.com/en/${versions.majorMinor version}.x/changes/#version-${replaceStrings [ "." ] [ "-" ] version}";
|
||||
meta = {
|
||||
changelog = "https://werkzeug.palletsprojects.com/en/${lib.versions.majorMinor version}.x/changes/#version-${lib.replaceStrings [ "." ] [ "-" ] version}";
|
||||
homepage = "https://palletsprojects.com/p/werkzeug/";
|
||||
description = "The comprehensive WSGI web application library";
|
||||
longDescription = ''
|
||||
@@ -92,7 +94,7 @@ buildPythonPackage rec {
|
||||
applications and has become one of the most advanced WSGI
|
||||
utility libraries.
|
||||
'';
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ ];
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -227,7 +227,7 @@ let
|
||||
pname = builtins.head (lib.splitString "/" namePath);
|
||||
appleDerivation' = stdenv: appleDerivation'' stdenv pname version sdkName sha256;
|
||||
appleDerivation = appleDerivation' stdenv;
|
||||
callPackage = self.newScope { inherit appleDerivation' appleDerivation; };
|
||||
callPackage = self.newScope { inherit appleDerivation' appleDerivation; python3 = pkgs.buildPackages.python3Minimal; };
|
||||
in callPackage (./. + "/${namePath}");
|
||||
|
||||
applePackage = namePath: sdkName: sha256: let
|
||||
@@ -289,9 +289,7 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
|
||||
ppp = applePackage "ppp" "osx-10.12.6" "sha256-M1zoEjjeKIDUEP6ACbpUJk3OXjobw4g/qzUmxGdX1J0=" {};
|
||||
removefile = applePackage "removefile" "osx-10.12.6" "sha256-UpNk27kGXnZss1ZXWVJU9jLz/NW63ZAZEDLhyCYoi9M=" {};
|
||||
xnu = if stdenv.isx86_64 then
|
||||
applePackage "xnu" "osx-10.12.6" "sha256-C8TPQlUT3RbzAy8YnZPNtr70hpaVG9Llv0h42s3NENI=" {
|
||||
python3 = pkgs.buildPackages.buildPackages.python3; # TODO(@Ericson2314) this shouldn't be needed.
|
||||
}
|
||||
applePackage "xnu" "osx-10.12.6" "sha256-C8TPQlUT3RbzAy8YnZPNtr70hpaVG9Llv0h42s3NENI=" {}
|
||||
else macosPackages_11_0_1.xnu;
|
||||
hfs = applePackage "hfs" "osx-10.12.6" "sha256-eGi18HQFJrU5UHoBOE0LqO5gQ0xOf8+OJuAWQljfKE4=" {};
|
||||
Librpcsvc = applePackage "Librpcsvc" "osx-10.11.6" "sha256-YHbGws901xONzAbo6sB5zSea4Wp0sgYUJ8YgwVfWxnE=" {};
|
||||
|
||||
@@ -14,13 +14,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libbpf";
|
||||
version = "1.4.1";
|
||||
version = "1.4.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libbpf";
|
||||
repo = "libbpf";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-dAyUBcOItDZNe2xBWoegCAmOnTugc1C7+k/hj20icJA=";
|
||||
sha256 = "sha256-PlGr/qZbKnaY37wikdmX/iYtP11WHShn1I7vACUgLG0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
, nixosTests
|
||||
, pkgsCross
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, fetchzip
|
||||
, buildPackages
|
||||
, makeBinaryWrapper
|
||||
@@ -180,7 +179,7 @@ assert withBootloader -> withEfi;
|
||||
let
|
||||
wantCurl = withRemote || withImportd;
|
||||
wantGcrypt = withResolved || withImportd;
|
||||
version = "255.4";
|
||||
version = "255.6";
|
||||
|
||||
# Use the command below to update `releaseTimestamp` on every (major) version
|
||||
# change. More details in the commentary at mesonFlags.
|
||||
@@ -198,7 +197,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "systemd";
|
||||
repo = "systemd-stable";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-P1mKq+ythrv8MU7y2CuNtEx6qCDacugzfsPRZL+NPys=";
|
||||
hash = "sha256-ah0678iNfy0c5NhHhjn0roY6RoM8OE0hWyEt+qEGKRQ=";
|
||||
};
|
||||
|
||||
# On major changes, or when otherwise required, you *must* :
|
||||
@@ -229,15 +228,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
./0017-meson.build-do-not-create-systemdstatedir.patch
|
||||
] ++ lib.optional (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isGnu) [
|
||||
./0018-timesyncd-disable-NSCD-when-DNSSEC-validation-is-dis.patch
|
||||
] ++ lib.optional (stdenv.hostPlatform.isPower || stdenv.hostPlatform.isRiscV || stdenv.hostPlatform.isMips) [
|
||||
# Fixed upstream and included in the main and stable branches. Can be dropped
|
||||
# when bumping to >= v255.5.
|
||||
# https://github.com/systemd/systemd/issues/30448
|
||||
# https://github.com/NixOS/nixpkgs/pull/282607
|
||||
(fetchpatch {
|
||||
url = "https://github.com/systemd/systemd/commit/8040fa55a1cbc34dede3205a902095ecd26c21e3.patch";
|
||||
sha256 = "0c6z7bsndbkb8m130jnjpsl138sfv3q171726n5vkyl2n9ihnavk";
|
||||
})
|
||||
] ++ lib.optional stdenv.hostPlatform.isMusl (
|
||||
let
|
||||
oe-core = fetchzip {
|
||||
@@ -599,6 +589,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
(lib.mesonEnable "libiptc" withIptables)
|
||||
(lib.mesonEnable "repart" withRepart)
|
||||
(lib.mesonEnable "sysupdate" withSysupdate)
|
||||
(lib.mesonEnable "seccomp" withLibseccomp)
|
||||
(lib.mesonEnable "selinux" withSelinux)
|
||||
(lib.mesonEnable "tpm2" withTpm2Tss)
|
||||
(lib.mesonEnable "pcre2" withPCRE2)
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
, capabilitiesSupport ? stdenv.isLinux
|
||||
, libcap_ng
|
||||
, libxcrypt
|
||||
, sqlite
|
||||
, ncursesSupport ? true
|
||||
, ncurses
|
||||
, pamSupport ? true
|
||||
@@ -20,11 +21,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "util-linux" + lib.optionalString (!nlsSupport && !ncursesSupport && !systemdSupport) "-minimal";
|
||||
version = "2.39.3";
|
||||
version = "2.40.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/utils/util-linux/v${lib.versions.majorMinor version}/util-linux-${version}.tar.xz";
|
||||
hash = "sha256-e2YF5I0aSfQ8xLTPxZ8xPQ3VQC+kC5aBC9Vy4Wff7Q8=";
|
||||
hash = "sha256-WeZ2qlPMtEtsOfD/4BqPonSJHJG+8UdHUvrZJGHe8k8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -40,7 +41,7 @@ stdenv.mkDerivation rec {
|
||||
separateDebugInfo = true;
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs tests/run.sh
|
||||
patchShebangs tests/run.sh tools/all_syscalls
|
||||
|
||||
substituteInPlace sys-utils/eject.c \
|
||||
--replace "/bin/umount" "$bin/bin/umount"
|
||||
@@ -59,6 +60,7 @@ stdenv.mkDerivation rec {
|
||||
"--enable-fs-paths-default=/run/wrappers/bin:/run/current-system/sw/bin:/sbin"
|
||||
"--disable-makeinstall-setuid" "--disable-makeinstall-chown"
|
||||
"--disable-su" # provided by shadow
|
||||
"--with-tmpfilesdir=${placeholder "out"}/lib/tmpfiles.d"
|
||||
(lib.enableFeature writeSupport "write")
|
||||
(lib.enableFeature nlsSupport "nls")
|
||||
(lib.withFeature ncursesSupport "ncursesw")
|
||||
@@ -80,7 +82,7 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [ pkg-config installShellFiles ]
|
||||
++ lib.optionals translateManpages [ po4a ];
|
||||
|
||||
buildInputs = [ zlib libxcrypt ]
|
||||
buildInputs = [ zlib libxcrypt sqlite ]
|
||||
++ lib.optionals pamSupport [ pam ]
|
||||
++ lib.optionals capabilitiesSupport [ libcap_ng ]
|
||||
++ lib.optionals ncursesSupport [ ncurses ]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import ./generic.nix {
|
||||
version = "12.18";
|
||||
hash = "sha256-T5kZcl2UHOmGjgf+HtHTqGdIWZtIM4ZUdYOSi3TDkYo=";
|
||||
version = "12.19";
|
||||
hash = "sha256-YX495Swi6CL09X0B1bIkBQPhmKnsyvWYqFEQm9GOb7s=";
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import ./generic.nix {
|
||||
version = "13.14";
|
||||
hash = "sha256-uN8HhVGJiWC9UA3F04oXfpkFN234H+fytmChQH+mpe0=";
|
||||
version = "13.15";
|
||||
hash = "sha256-Qu3UFURtM7jCQr520a0FdTGyJksuhpOTObcHXG5OySU=";
|
||||
muslPatches = {
|
||||
disable-test-collate-icu-utf8 = {
|
||||
url = "https://git.alpinelinux.org/aports/plain/main/postgresql13/disable-test-collate.icu.utf8.patch?id=69faa146ec9fff3b981511068f17f9e629d4688b";
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import ./generic.nix {
|
||||
version = "14.11";
|
||||
hash = "sha256-pnC9fc4i3K1Cl7JhE2s7HUoJpvVBcZViqhTKY78paKg=";
|
||||
version = "14.12";
|
||||
hash = "sha256-YRjQj53cwb2Dzyt8x007WDvc7C835iRaisADuPqoCSM=";
|
||||
muslPatches = {
|
||||
disable-test-collate-icu-utf8 = {
|
||||
url = "https://git.alpinelinux.org/aports/plain/main/postgresql14/disable-test-collate.icu.utf8.patch?id=56999e6d0265ceff5c5239f85fdd33e146f06cb7";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import ./generic.nix {
|
||||
version = "15.6";
|
||||
hash = "sha256-hFUUbtnGnJOlfelUrq0DAsr60DXCskIXXWqh4X68svs=";
|
||||
version = "15.7";
|
||||
hash = "sha256-pG/klIWrY4Xjnau7tlT10wSSBvds1pXiJCaHKVIJmPc=";
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import ./generic.nix {
|
||||
version = "16.2";
|
||||
hash = "sha256-RG6IKU28LJCFq0twYaZG+mBLS+wDUh1epnHC5a2bKVI=";
|
||||
version = "16.3";
|
||||
hash = "sha256-Mxlj1dPcTK9CFqBJ+kC2bWvLjHMGFYWUEblRh2TmBYU=";
|
||||
}
|
||||
|
||||
@@ -198,18 +198,6 @@ let
|
||||
# autodetection doesn't seem to able to find this, but it's there.
|
||||
checkTarget = "check";
|
||||
|
||||
# TODO: Remove after the next set of minor releases on May 9th 2024
|
||||
preCheck =
|
||||
# On musl, comment skip the following tests, because they break due to
|
||||
# ! ERROR: could not load library "/build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so": Error loading shared library libpq.so.5: No such file or directory (needed by /build/postgresql-11.5/tmp_install/nix/store/...-postgresql-11.5-lib/lib/libpqwalreceiver.so)
|
||||
# See also here:
|
||||
# https://git.alpinelinux.org/aports/tree/main/postgresql/disable-broken-tests.patch?id=6d7d32c12e073a57a9e5946e55f4c1fbb68bd442
|
||||
if stdenv'.hostPlatform.isMusl then ''
|
||||
substituteInPlace src/test/regress/parallel_schedule \
|
||||
--replace "subscription" "" \
|
||||
--replace "object_address" ""
|
||||
'' else null;
|
||||
|
||||
disallowedReferences = [ stdenv'.cc ];
|
||||
|
||||
passthru = let
|
||||
|
||||
@@ -422,6 +422,10 @@ self: super:
|
||||
# https://gitlab.freedesktop.org/xorg/lib/libpciaccess/-/blob/master/configure.ac#L108-114
|
||||
platforms = lib.fold (os: ps: ps ++ lib.platforms.${os}) []
|
||||
[ "cygwin" "freebsd" "linux" "netbsd" "openbsd" "illumos" ];
|
||||
badPlatforms = [
|
||||
# mandatory shared library
|
||||
lib.systems.inspect.platformPatterns.isStatic
|
||||
];
|
||||
};
|
||||
});
|
||||
|
||||
|
||||
@@ -46,6 +46,17 @@ in stdenv.mkDerivation {
|
||||
$READELF -d ./atomics.so | grep libatomic.so && echo "ok" >&2 || echo "failed" >&2
|
||||
''}
|
||||
|
||||
# Test that linking libc++ works, and statically.
|
||||
${lib.optionalString isCxx ''
|
||||
echo "checking whether can link with libc++... " >&2
|
||||
NIX_DEBUG=1 $CXX ${./cxx-main.cc} -c -o cxx-main.o
|
||||
NIX_DEBUG=1 $CC cxx-main.o -lc++ -o cxx-main
|
||||
NIX_DEBUG=1 $CC cxx-main.o ${lib.getLib stdenv.cc.libcxx}/lib/libc++.a -o cxx-main-static
|
||||
${emulator} ./cxx-main
|
||||
${emulator} ./cxx-main-static
|
||||
rm cxx-main{,-static,.o}
|
||||
''}
|
||||
|
||||
${lib.optionalString (stdenv.isDarwin && stdenv.cc.isClang) ''
|
||||
echo "checking whether compiler can build with CoreFoundation.framework... " >&2
|
||||
mkdir -p foo/lib
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitLab
|
||||
, fetchpatch
|
||||
, glib
|
||||
, udev
|
||||
, libgudev
|
||||
, polkit
|
||||
, ppp
|
||||
@@ -38,6 +38,12 @@ stdenv.mkDerivation rec {
|
||||
# Since /etc is the domain of NixOS, not Nix, we cannot install files there.
|
||||
# But these are just placeholders so we do not need to install them at all.
|
||||
./no-dummy-dirs-in-sysconfdir.patch
|
||||
|
||||
(fetchpatch {
|
||||
name = "GI_TYPELIB_PATH.patch";
|
||||
url = "https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/commit/daa829287894273879799a383ed4dc373c6111b0.patch";
|
||||
hash = "sha256-tPQokiZO2SpTlX8xMlkWjP1AIXgoLHW3rJwnmG33z/k=";
|
||||
})
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
@@ -55,7 +61,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
udev
|
||||
libgudev
|
||||
polkit
|
||||
ppp
|
||||
@@ -89,14 +94,16 @@ stdenv.mkDerivation rec {
|
||||
# In Nixpkgs g-ir-scanner is patched to produce absolute paths, and
|
||||
# that interferes with ModemManager's tests, causing them to try to
|
||||
# load libraries from the install path, which doesn't usually exist
|
||||
# when `make check' is run. So to work around that, we run it as an
|
||||
# when `meson test' is run. So to work around that, we run it as an
|
||||
# install check instead, when those paths will have been created.
|
||||
doInstallCheck = true;
|
||||
preInstallCheck = ''
|
||||
installCheckPhase = ''
|
||||
runHook preInstallCheck
|
||||
export G_TEST_DBUS_DAEMON="${dbus}/bin/dbus-daemon"
|
||||
patchShebangs tools/tests/test-wrapper.sh
|
||||
mesonCheckPhase
|
||||
runHook postInstallCheck
|
||||
'';
|
||||
installCheckTarget = "check";
|
||||
|
||||
meta = with lib; {
|
||||
description = "WWAN modem manager, part of NetworkManager";
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
{ lib, stdenv, fetchFromGitHub, fetchpatch, perl, gettext, pkg-config, libidn2, libiconv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "5.5.22";
|
||||
version = "5.5.23";
|
||||
pname = "whois";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rfc1036";
|
||||
repo = "whois";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-5ogHgGODqEUQ5ggoevpfSmJ8GvWImm0ufjnpcbcX7rk=";
|
||||
hash = "sha256-c/Mx2HXAj6mHH8rElG7+F94sSrVSL1N9HZBvaMWUjlw=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
, fetchFromGitHub
|
||||
, which
|
||||
, enableStatic ? stdenv.hostPlatform.isStatic
|
||||
, gettext
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -16,7 +17,10 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "sha256-3CW41ULdXoID4cOgrcG2j85tgIJ/sz5hU7A83qpuxf4=";
|
||||
};
|
||||
|
||||
patches = [ ./dont-fail-ln.patch ./do-link-so.patch ];
|
||||
|
||||
nativeBuildInputs = [ which ];
|
||||
buildInputs = lib.optionals stdenv.hostPlatform.isFreeBSD [ gettext ];
|
||||
|
||||
# configure script is not autotools-based, doesn't support these options
|
||||
dontAddStaticConfigureFlags = true;
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
From b8c91ea6551e99e10352386cd46ea26973bb4a4d Mon Sep 17 00:00:00 2001
|
||||
From: Aleksey Kravchenko <rhash.admin@gmail.com>
|
||||
Date: Mon, 11 Sep 2023 03:49:20 +0300
|
||||
Subject: [PATCH] Fix #238: Build on Unix
|
||||
|
||||
---
|
||||
librhash/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/librhash/Makefile b/librhash/Makefile
|
||||
index e8ee862..34f1263 100644
|
||||
--- a/librhash/Makefile
|
||||
+++ b/librhash/Makefile
|
||||
@@ -27,7 +27,7 @@ install-lib-static: $(LIBRHASH_STATIC)
|
||||
install-lib-shared: $(LIBRHASH_SHARED) $(EXTRA_INSTALL_LIBSHARED)
|
||||
$(INSTALL) -d $(SO_DIR)
|
||||
$(INSTALL_SHARED) $(LIBRHASH_SHARED) $(SO_DIR)/
|
||||
- test "x$(LIBRHASH_SO_MAJ)" != "x$(LIBRHASH_SHARED)" || ( \
|
||||
+ test "x$(LIBRHASH_SO_MAJ)" = "x$(LIBRHASH_SHARED)" || ( \
|
||||
rm -f $(LIBDIR)/$(LIBRHASH_SO_MAJ) && \
|
||||
ln -s $(LIBRHASH_SHARED) $(LIBDIR)/$(LIBRHASH_SO_MAJ) )
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
From 9ef90b958b7ae50aeeb5c269468034d73d6e2efe Mon Sep 17 00:00:00 2001
|
||||
From: Aleksey Kravchenko <rhash.admin@gmail.com>
|
||||
Date: Mon, 31 Jul 2023 02:48:15 +0300
|
||||
Subject: [PATCH] Fix #238: Build on *BSD
|
||||
|
||||
---
|
||||
configure | 3 ++-
|
||||
librhash/Makefile | 8 ++++----
|
||||
2 files changed, 6 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index dae76d5..39ef8c1 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -567,6 +567,7 @@ qnx() { test "$OS_LC" = "qnx"; }
|
||||
sunos() { test "$OS_LC" = "sunos"; }
|
||||
wine() { test "$OS_LC" = "wine"; }
|
||||
win32() { cygwin || mingw32 || mingw64 || msys || wine; }
|
||||
+bsd() { dragonfly || freebsd || netbsd || openbsd ; }
|
||||
posix_make() { aix || bsdos || hpux || irix || qnx || sunos; }
|
||||
|
||||
#####################################################################
|
||||
@@ -713,7 +714,7 @@ if win32; then
|
||||
elif darwin; then
|
||||
SHARED_EXT=".${RHASH_VERSION_MAJOR}.dylib"
|
||||
SOLINK_EXT=".dylib"
|
||||
-elif linux; then
|
||||
+elif linux || bsd; then
|
||||
# use the full library version for the library file extension
|
||||
SHARED_EXT=".so.${RHASH_VERSION}"
|
||||
fi
|
||||
diff --git a/librhash/Makefile b/librhash/Makefile
|
||||
index d48e06e..e8ee862 100644
|
||||
--- a/librhash/Makefile
|
||||
+++ b/librhash/Makefile
|
||||
@@ -27,9 +27,9 @@ install-lib-static: $(LIBRHASH_STATIC)
|
||||
install-lib-shared: $(LIBRHASH_SHARED) $(EXTRA_INSTALL_LIBSHARED)
|
||||
$(INSTALL) -d $(SO_DIR)
|
||||
$(INSTALL_SHARED) $(LIBRHASH_SHARED) $(SO_DIR)/
|
||||
- test "x$(LIBRHASH_SO_MAJ)" != "x$(LIBRHASH_SHARED)" && \
|
||||
+ test "x$(LIBRHASH_SO_MAJ)" != "x$(LIBRHASH_SHARED)" || ( \
|
||||
rm -f $(LIBDIR)/$(LIBRHASH_SO_MAJ) && \
|
||||
- ln -s $(LIBRHASH_SHARED) $(LIBDIR)/$(LIBRHASH_SO_MAJ)
|
||||
+ ln -s $(LIBRHASH_SHARED) $(LIBDIR)/$(LIBRHASH_SO_MAJ) )
|
||||
|
||||
install-implib:
|
||||
$(INSTALL) -d $(LIBDIR)
|
||||
@@ -175,9 +175,9 @@ $(EXPORTS_FILE): $(LIB_HEADERS)
|
||||
$(LIB_HEADERS) | grep -v "$(EXPORTS_SKIP)" > $@
|
||||
|
||||
$(LIBRHASH_SOLINK):
|
||||
- test "x$(LIBRHASH_SO_MAJ)" != "x$(LIBRHASH_SHARED)" && \
|
||||
+ test "x$(LIBRHASH_SO_MAJ)" = "x$(LIBRHASH_SHARED)" || ( \
|
||||
rm -f $(LIBRHASH_SO_MAJ) && \
|
||||
- ln -s $(LIBRHASH_SHARED) $(LIBRHASH_SO_MAJ)
|
||||
+ ln -s $(LIBRHASH_SHARED) $(LIBRHASH_SO_MAJ) )
|
||||
rm -f $(LIBRHASH_SOLINK)
|
||||
ln -s $(LIBRHASH_SO_MAJ) $(LIBRHASH_SOLINK)
|
||||
|
||||
@@ -14438,8 +14438,6 @@ with pkgs;
|
||||
|
||||
unclutter-xfixes = callPackage ../tools/misc/unclutter-xfixes { };
|
||||
|
||||
unbound = callPackage ../tools/networking/unbound { };
|
||||
|
||||
unbound-with-systemd = unbound.override {
|
||||
withSystemd = true;
|
||||
};
|
||||
|
||||
@@ -478,6 +478,7 @@ mapAliases ({
|
||||
setuptools_scm = setuptools-scm; # added 2021-06-03
|
||||
setuptoolsTrial = setuptools-trial; # added 2023-11-11
|
||||
sharkiqpy = sharkiq; # added 2022-05-21
|
||||
shouldbe = throw "shouldbe was removed, because it was disabled on all python version since 3.8 and last updated in 2019."; # added 2024-05-12
|
||||
sip_4 = sip4; # added 2024-01-07
|
||||
ssh-mitm = throw "ssh-mitm was removed in favor of the top-level ssh-mitm"; # added 2023-05-09
|
||||
smart_open = smart-open; # added 2021-03-14
|
||||
|
||||
@@ -13862,8 +13862,6 @@ self: super: with self; {
|
||||
|
||||
shortuuid = callPackage ../development/python-modules/shortuuid { };
|
||||
|
||||
shouldbe = callPackage ../development/python-modules/shouldbe { };
|
||||
|
||||
should-dsl = callPackage ../development/python-modules/should-dsl { };
|
||||
|
||||
show-in-file-manager = callPackage ../development/python-modules/show-in-file-manager { };
|
||||
|
||||
Reference in New Issue
Block a user