Skip to content

Commit

Permalink
Merge staging-next into staging
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions[bot] authored Jan 29, 2023
2 parents fd89303 + 8222849 commit 62484a2
Show file tree
Hide file tree
Showing 22 changed files with 387 additions and 319 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,5 +35,20 @@
}
],
"filter.properties": {},
"stream.properties": {}
"stream.properties": {},
"alsa.properties": {},
"alsa.rules": [
{
"matches": [
{
"application.process.binary": "resolve"
}
],
"actions": {
"update-props": {
"alsa.buffer-bytes": 131072
}
}
}
]
}
12 changes: 12 additions & 0 deletions nixos/modules/services/desktops/pipewire/daemon/jack.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,18 @@
"node.passive": true
}
}
},
{
"matches": [
{
"client.name": "Mixxx"
}
],
"actions": {
"update-props": {
"jack.merge-monitor": false
}
}
}
]
}
12 changes: 9 additions & 3 deletions pkgs/applications/graphics/azpainter/default.nix
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitLab
, desktop-file-utils, shared-mime-info
, desktop-file-utils, shared-mime-info, ninja, pkg-config
, libiconv
, libX11, libXcursor, libXext, libXi
, freetype, fontconfig
Expand All @@ -9,18 +9,20 @@

stdenv.mkDerivation rec {
pname = "azpainter";
version = "3.0.4";
version = "3.0.6";

src = fetchFromGitLab {
owner = "azelpg";
repo = pname;
rev = "v${version}";
hash = "sha256-2gTTF1ti9bO24d75mhwyvJISSgMKdmp+oJVmgzEQHdY=";
hash = "sha256-/shmLdZ4mCBZAeUuqJtCiUjeI8B5f/8dIGPqmXMjZ1I=";
};

nativeBuildInputs = [
desktop-file-utils # for update-desktop-database
shared-mime-info # for update-mime-info
ninja
pkg-config
];

buildInputs = [
Expand All @@ -30,6 +32,10 @@ stdenv.mkDerivation rec {
zlib
] ++ lib.optionals stdenv.isDarwin [ libiconv ];

preBuild = ''
cd build
'';

enableParallelBuilding = true;

meta = with lib; {
Expand Down
8 changes: 1 addition & 7 deletions pkgs/applications/networking/powerdns-admin/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,7 @@ let
hash = "sha256-e11u0jdJr+2TDXvBAPlDfnuuDwSfBq+JtvnDUTNKp/c=";
};

python = python3.override {
packageOverrides = self: super: {
# The bravado-core dependency is incompatible with jschonschema 4.0:
# https://github.com/Yelp/bravado-core/pull/385
jsonschema = super.jsonschema_3;
};
};
python = python3;

pythonDeps = with python.pkgs; [
flask flask_assets flask-login flask-sqlalchemy flask_migrate flask-seasurf flask_mail flask-session flask-sslify
Expand Down
4 changes: 2 additions & 2 deletions pkgs/applications/system/monitor/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@

stdenv.mkDerivation rec {
pname = "monitor";
version = "0.15.0";
version = "0.15.1";

src = fetchFromGitHub {
owner = "stsdc";
repo = "monitor";
rev = version;
sha256 = "sha256-w4c9rVO54mrjUX2iRxUQ7PHqE+8D+BqBgHMK2X9nI0g=";
sha256 = "sha256-3Kgpb0gOVpsufevz4ZIsIngl/Djckft8nJW+wBgfp4A=";
fetchSubmodules = true;
};

Expand Down
6 changes: 3 additions & 3 deletions pkgs/applications/virtualization/pods/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,19 @@

stdenv.mkDerivation rec {
pname = "pods";
version = "1.0.2";
version = "1.0.3";

src = fetchFromGitHub {
owner = "marhkb";
repo = pname;
rev = "v${version}";
sha256 = "sha256-Kjonyd0xL0QLjPS+U3xDC6AhOOxQmVAZ3STLXaa8eXc=";
sha256 = "sha256-OK43U5Xq9qrHOp+WYkRNfIsCukL1AoWB38pDZcxmvOM=";
};

cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
sha256 = "sha256-K5oOpo3xJiNg7F549JLGs83658MYcoGfuIcNoF88Njc=";
sha256 = "sha256-aVlGi+44UXnrUf1/DbC+FqrxfuZm52/RwsYD/PkVPi0=";
};

nativeBuildInputs = [
Expand Down
25 changes: 25 additions & 0 deletions pkgs/development/libraries/directx-headers/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{ lib, stdenv, fetchFromGitHub, meson, ninja }:
stdenv.mkDerivation rec {
pname = "directx-headers";
version = "1.608.2";

src = fetchFromGitHub {
owner = "microsoft";
repo = "DirectX-Headers";
rev = "v${version}";
hash = "sha256-F0riTDJpydqe4yhE9GKSSvnRI0Sl3oY2sOP+H/vDHG0=";
};

nativeBuildInputs = [ meson ninja ];

# tests require WSL2
mesonFlags = [ "-Dbuild-test=false" ];

meta = with lib; {
description = "Official D3D12 headers from Microsoft";
homepage = "https://github.com/microsoft/DirectX-Headers";
license = licenses.mit;
maintainers = with maintainers; [ k900 ];
platforms = platforms.all;
};
}
4 changes: 2 additions & 2 deletions pkgs/development/libraries/libclc/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ in

stdenv.mkDerivation rec {
pname = "libclc";
version = "14.0.6";
version = "15.0.7";

src = fetchFromGitHub {
owner = "llvm";
repo = "llvm-project";
rev = "llvmorg-${version}";
sha256 = "sha256-vffu4HilvYwtzwgq+NlS26m65DGbp6OSSne2aje1yJE=";
sha256 = "sha256-wjuZQyXQ/jsmvy6y1aksCcEDXGBjuhpgngF3XQJ/T4s=";
};
sourceRoot = "source/libclc";

Expand Down
107 changes: 90 additions & 17 deletions pkgs/development/libraries/mesa/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,54 @@
, libelf, libvdpau
, libglvnd, libunwind
, vulkan-loader, glslang
, galliumDrivers ? ["auto"]
# upstream Mesa defaults to only enabling swrast (aka lavapipe) on aarch64 for some reason, so force building the others
, vulkanDrivers ? if (stdenv.isLinux && stdenv.isAarch64) then [ "swrast" "broadcom" "freedreno" "panfrost" ] else [ "auto" ]
, galliumDrivers ?
if stdenv.isLinux then
[
"d3d12" # WSL emulated GPU (aka Dozen)
"kmsro" # helper driver for display-only devices
"nouveau" # Nvidia
"radeonsi" # new AMD (GCN+)
"r300" # very old AMD
"r600" # less old AMD
"swrast" # software renderer (aka LLVMPipe)
"svga" # VMWare virtualized GPU
"virgl" # QEMU virtualized GPU (aka VirGL)
"zink" # generic OpenGL over Vulkan, experimental
]
++ lib.optionals stdenv.isAarch64 [
"etnaviv" # Vivante GPU designs (mostly NXP/Marvell SoCs)
"freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
"lima" # ARM Mali 4xx
"panfrost" # ARM Mali Midgard and up (T/G series)
"tegra" # Nvidia Tegra SoCs
"v3d" # Broadcom VC5 (Raspberry Pi 4)
"vc4" # Broadcom VC4 (Raspberry Pi 0-3)
] ++ lib.optionals stdenv.isx86_64 [
"iris" # new Intel, could work on non-x86_64 with PCIe cards, but doesn't build as of 22.3.4
"crocus" # Intel legacy, x86_64 only
]
else [ "auto" ]
, vulkanDrivers ?
if stdenv.isLinux then
[
"amd" # AMD (aka RADV)
"microsoft-experimental" # WSL virtualized GPU (aka DZN/Dozen)
"swrast" # software renderer (aka Lavapipe)
"virtio-experimental" # QEMU virtualized GPU (aka VirGL)
]
++ lib.optionals stdenv.isAarch64 [
"broadcom" # Broadcom VC5 (Raspberry Pi 4, aka V3D)
"freedreno" # Qualcomm Adreno (all Qualcomm SoCs)
"imagination-experimental" # PowerVR Rogue (currently N/A)
"panfrost" # ARM Mali Midgard and up (T/G series)
]
++ lib.optionals stdenv.isx86_64 [
"intel" # Intel (aka ANV), could work on non-x86_64 with PCIe cards, but doesn't build as of 22.3.4
"intel_hasvk" # Intel Haswell/Broadwell, experimental, x86_64 only
]
else [ "auto" ]
, eglPlatforms ? [ "x11" ] ++ lib.optionals stdenv.isLinux [ "wayland" ]
, vulkanLayers ? lib.optionals (!stdenv.isDarwin) [ "device-select" "overlay" ] # No Vulkan support on Darwin
, vulkanLayers ? lib.optionals (!stdenv.isDarwin) [ "device-select" "overlay" "intel-nullhw" ] # No Vulkan support on Darwin
, OpenGL, Xplugin
, withValgrind ? lib.meta.availableOn stdenv.hostPlatform valgrind-light && !valgrind-light.meta.broken, valgrind-light
, enableGalliumNine ? stdenv.isLinux
Expand All @@ -19,10 +62,12 @@
, enablePatentEncumberedCodecs ? true
, libclc
, jdupes
, cmake
, rustc
, rust-bindgen
, spirv-llvm-translator_14
, spirv-llvm-translator
, zstd
, directx-headers
, udev
}:

/** Packaging design:
Expand All @@ -44,12 +89,21 @@ let

withLibdrm = lib.meta.availableOn stdenv.hostPlatform libdrm;

# Align all the Mesa versions used. Required to prevent explosions when
# two different LLVMs are loaded in the same process.
# FIXME: these should really go into some sort of versioned LLVM package set
rust-bindgen' = rust-bindgen.override {
rust-bindgen-unwrapped = rust-bindgen.unwrapped.override {
clang = llvmPackages.clang;
};
};
spirv-llvm-translator' = spirv-llvm-translator.override {
inherit (llvmPackages) llvm;
};

haveWayland = lib.elem "wayland" eglPlatforms;
haveZink = lib.elem "zink" galliumDrivers;
haveDozen = (lib.elem "d3d12" galliumDrivers) || (lib.elem "microsoft-experimental" vulkanDrivers);
self = stdenv.mkDerivation {
pname = "mesa";
inherit version;
Expand Down Expand Up @@ -91,7 +145,11 @@ self = stdenv.mkDerivation {
outputs = [ "out" "dev" "drivers" ]
++ lib.optional enableOSMesa "osmesa"
++ lib.optional stdenv.isLinux "driversdev"
++ lib.optional enableOpenCL "opencl";
++ lib.optional enableOpenCL "opencl"
# the Dozen drivers depend on libspirv2dxil, but link it statically, and
# libspirv2dxil itself is pretty chonky, so relocate it to its own output
# in case anything wants to use it at some point
++ lib.optional haveDozen "spirv2dxil";

# FIXME: this fixes rusticl/iris segfaulting on startup, _somehow_.
# Needs more investigating.
Expand Down Expand Up @@ -122,6 +180,7 @@ self = stdenv.mkDerivation {
"-Domx-libs-path=${placeholder "drivers"}/lib/bellagio"
"-Dva-libs-path=${placeholder "drivers"}/lib/dri"
"-Dd3d-drivers-path=${placeholder "drivers"}/lib/d3d"

"-Dgallium-nine=${lib.boolToString enableGalliumNine}" # Direct3D in Wine
"-Dosmesa=${lib.boolToString enableOSMesa}" # used by wine
"-Dmicrosoft-clc=disabled" # Only relevant on Windows (OpenCL 1.2 API on top of D3D12)
Expand All @@ -130,8 +189,15 @@ self = stdenv.mkDerivation {
"-Dgbm-backends-path=${libglvnd.driverLink}/lib/gbm:${placeholder "out"}/lib/gbm"
] ++ lib.optionals stdenv.isLinux [
"-Dglvnd=true"

# Enable RT for Intel hardware
"-Dintel-clc=enabled"
] ++ lib.optionals enableOpenCL [
"-Dgallium-opencl=icd" # Enable the gallium OpenCL frontend
# Clover, old OpenCL frontend
"-Dgallium-opencl=icd"
"-Dopencl-spirv=true"

# Rusticl, new OpenCL frontend
"-Dgallium-rusticl=true" "-Drust_std=2021"
"-Dclang-libdir=${llvmPackages.clang-unwrapped.lib}/lib"
] ++ lib.optional enablePatentEncumberedCodecs
Expand All @@ -143,24 +209,23 @@ self = stdenv.mkDerivation {
libX11 libXext libxcb libXt libXfixes libxshmfence libXrandr
libffi libvdpau libelf libXvMC
libpthreadstubs openssl /*or another sha1 provider*/
] ++ lib.optionals (lib.elem "wayland" eglPlatforms) [ wayland wayland-protocols ]
++ lib.optionals stdenv.isLinux [ libomxil-bellagio libva-minimal ]
zstd
] ++ lib.optionals haveWayland [ wayland wayland-protocols ]
++ lib.optionals stdenv.isLinux [ libomxil-bellagio libva-minimal udev ]
++ lib.optionals stdenv.isDarwin [ libunwind ]
++ lib.optionals enableOpenCL [ libclc llvmPackages.clang llvmPackages.clang-unwrapped rustc rust-bindgen' spirv-llvm-translator_14 ]
++ lib.optionals enableOpenCL [ libclc llvmPackages.clang llvmPackages.clang-unwrapped rustc rust-bindgen' spirv-llvm-translator' ]
++ lib.optional withValgrind valgrind-light
# Mesa will not build zink when gallium-drivers=auto
++ lib.optional (lib.elem "zink" galliumDrivers) vulkan-loader;
++ lib.optional haveZink vulkan-loader
++ lib.optional haveDozen directx-headers;

depsBuildBuild = [ pkg-config ];

nativeBuildInputs = [
meson pkg-config ninja
intltool bison flex file
python3Packages.python python3Packages.Mako
python3Packages.python python3Packages.Mako python3Packages.ply
jdupes glslang
] ++ lib.optionals (lib.elem "wayland" eglPlatforms) [
wayland-scanner
];
] ++ lib.optional haveWayland wayland-scanner;

propagatedBuildInputs = with xorg; [
libXdamage libXxf86vm
Expand Down Expand Up @@ -217,6 +282,10 @@ self = stdenv.mkDerivation {
for js in $drivers/share/vulkan/{im,ex}plicit_layer.d/*.json; do
substituteInPlace "$js" --replace '"libVkLayer_' '"'"$drivers/lib/libVkLayer_"
done
'' + lib.optionalString haveDozen ''
mkdir -p $spirv2dxil/{bin,lib}
mv -t $spirv2dxil/lib $out/lib/libspirv_to_dxil*
mv -t $spirv2dxil/bin $out/bin/spirv2dxil
'';

postFixup = lib.optionalString stdenv.isLinux ''
Expand Down Expand Up @@ -253,6 +322,10 @@ self = stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = lib.optionals stdenv.isDarwin [ "-fno-common" ] ++ lib.optionals enableOpenCL [
"-UPIPE_SEARCH_DIR"
"-DPIPE_SEARCH_DIR=\"${placeholder "opencl"}/lib/gallium-pipe\""

# Work around regression from https://github.com/NixOS/nixpkgs/pull/210004
# TODO(trofi): remove
"--sysroot=/"
];

passthru = {
Expand Down
Loading

0 comments on commit 62484a2

Please sign in to comment.