Merge pull request #158080 from NixOS/staging-next

Staging next 2022-02-03
This commit is contained in:
Jonathan Ringer
2022-02-10 09:45:34 -08:00
committed by GitHub
537 changed files with 6136 additions and 4089 deletions
+10
View File
@@ -465,6 +465,11 @@ in mkLicense lset) ({
spdxId = "imagemagick";
};
imlib2 = {
spdxId = "Imlib2";
fullName = "Imlib2 License";
};
inria-compcert = {
fullName = "INRIA Non-Commercial License Agreement for the CompCert verified compiler";
url = "https://compcert.org/doc/LICENSE.txt";
@@ -592,6 +597,11 @@ in mkLicense lset) ({
fullName = "MIT License";
};
mitAdvertising = {
spdxId = "MIT-advertising";
fullName = "Enlightenment License (e16)";
};
mpl10 = {
spdxId = "MPL-1.0";
fullName = "Mozilla Public License 1.0";
+7
View File
@@ -278,6 +278,13 @@ with lib.maintainers; {
scope = "Maintain SageMath and the dependencies that are likely to break it.";
};
sphinx = {
members = [
SuperSandro2000
];
scope = "Maintain Sphinx related packages.";
};
serokell = {
# Verify additions by approval of an already existing member of the team.
members = [
@@ -901,6 +901,17 @@
warning.
</para>
</listitem>
<listitem>
<para>
The option
<link linkend="opt-services.networking.networkmanager.enableFccUnlock">services.networking.networkmanager.enableFccUnlock</link>
was added to support FCC unlock procedures. Since release
1.18.4, the ModemManager daemon no longer automatically
performs the FCC unlock procedure by default. See
<link xlink:href="https://modemmanager.org/docs/modemmanager/fcc-unlock/">the
docs</link> for more details.
</para>
</listitem>
<listitem>
<para>
<literal>programs.tmux</literal> has a new option
@@ -303,6 +303,12 @@ In addition to numerous new and upgraded packages, this release has the followin
Reason is that the old name has been deprecated upstream.
Using the old option name will still work, but produce a warning.
- The option
[services.networking.networkmanager.enableFccUnlock](#opt-services.networking.networkmanager.enableFccUnlock)
was added to support FCC unlock procedures. Since release 1.18.4, the ModemManager
daemon no longer automatically performs the FCC unlock procedure by default. See
[the docs](https://modemmanager.org/docs/modemmanager/fcc-unlock/) for more details.
- `programs.tmux` has a new option `plugins` that accepts a list of packages from the `tmuxPlugins` group. The specified packages are added to the system and loaded by `tmux`.
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
+1 -1
View File
@@ -22,7 +22,7 @@ rec {
else throw "Unknown QEMU serial device for system '${pkgs.stdenv.hostPlatform.system}'";
qemuBinary = qemuPkg: {
x86_64-linux = "${qemuPkg}/bin/qemu-kvm -cpu qemu64";
x86_64-linux = "${qemuPkg}/bin/qemu-kvm -cpu max";
armv7l-linux = "${qemuPkg}/bin/qemu-system-arm -enable-kvm -machine virt -cpu host";
aarch64-linux = "${qemuPkg}/bin/qemu-system-aarch64 -enable-kvm -machine virt,gic-version=host -cpu host";
powerpc64le-linux = "${qemuPkg}/bin/qemu-system-ppc64 -machine powernv";
@@ -181,8 +181,8 @@ in
rgwMimeTypesFile = mkOption {
type = with types; nullOr path;
default = "${pkgs.mime-types}/etc/mime.types";
defaultText = literalExpression ''"''${pkgs.mime-types}/etc/mime.types"'';
default = "${pkgs.mailcap}/etc/mime.types";
defaultText = literalExpression ''"''${pkgs.mailcap}/etc/mime.types"'';
description = ''
Path to mime types used by radosgw.
'';
@@ -384,6 +384,17 @@ in {
so you don't need to to that yourself.
'';
};
enableFccUnlock = mkOption {
type = types.bool;
default = false;
description = ''
Enable FCC unlock procedures. Since release 1.18.4, the ModemManager daemon no longer
automatically performs the FCC unlock procedure by default. See
<link xlink:href="https://modemmanager.org/docs/modemmanager/fcc-unlock/">the docs</link>
for more details.
'';
};
};
};
@@ -438,7 +449,13 @@ in {
"NetworkManager/VPN/nm-sstp-service.name".source =
"${networkmanager-sstp}/lib/NetworkManager/VPN/nm-sstp-service.name";
}
// optionalAttrs cfg.enableFccUnlock
{
"ModemManager/fcc-unlock.d".source =
"${pkgs.modemmanager}/share/ModemManager/fcc-unlock.available.d/*";
}
// optionalAttrs (cfg.appendNameservers != [] || cfg.insertNameservers != [])
{
"NetworkManager/dispatcher.d/02overridedns".source = overrideNameserversScript;
+2 -2
View File
@@ -24,7 +24,7 @@
, expat
, libid3tag
, libopus
, ffmpeg
, ffmpeg_4
, soundtouch
, pcre
/*, portaudio - given up fighting their portaudio.patch */
@@ -123,7 +123,7 @@ stdenv.mkDerivation rec {
buildInputs = [
expat
ffmpeg
ffmpeg_4
file
flac
libid3tag
+2 -2
View File
@@ -1,12 +1,12 @@
{ lib, fetchFromGitHub }:
rec {
version = "8.2.4186";
version = "8.2.4227";
src = fetchFromGitHub {
owner = "vim";
repo = "vim";
rev = "v${version}";
sha256 = "0g276mbmq69z7c4kgj59r0azxmx9ih2sd8v83dx2gfph6wgw65ph";
sha256 = "sha256-Xj4ymkrWY5GWpQhEDYtPtaRovBa6j19dW9GWg9WSdig=";
};
enableParallelBuilding = true;
@@ -1,6 +1,9 @@
{ lib, stdenv, fetchurl, bzip2, freetype, graphviz, ghostscript
, libjpeg, libpng, libtiff, libxml2, zlib, libtool, xz, libX11
, libwebp, quantumdepth ? 8, fixDarwinDylibNames, nukeReferences }:
, libwebp, quantumdepth ? 8, fixDarwinDylibNames, nukeReferences
, runCommand
, graphicsmagick # for passthru.tests
}:
stdenv.mkDerivation rec {
pname = "graphicsmagick";
@@ -33,13 +36,23 @@ stdenv.mkDerivation rec {
# Remove CFLAGS from the binaries to avoid closure bloat.
# In the past we have had -dev packages in the closure of the binaries soley due to the string references.
postConfigure = ''
nuke-refs ./magick/magick_config.h
nuke-refs -e $out ./magick/magick_config.h
'';
postInstall = ''
sed -i 's/-ltiff.*'\'/\'/ $out/bin/*
'';
passthru = {
tests = {
issue-157920 = runCommand "issue-157920-regression-test" {
buildInputs = [ graphicsmagick ];
} ''
gm convert ${graphviz}/share/graphviz/doc/pdf/neatoguide.pdf jpg:$out
'';
};
};
meta = {
homepage = "http://www.graphicsmagick.org";
description = "Swiss army knife of image processing";
@@ -9,20 +9,27 @@ stdenv.mkDerivation {
};
buildInputs = [ libX11 imlib2 libXinerama ];
buildPhase = ''
gcc -g imlibsetroot.c -o imlibsetroot \
`imlib2-config --cflags` `imlib2-config --libs` \
-I/include/X11/extensions -lXinerama -lX11
runHook preBuild
gcc -g imlibsetroot.c -o imlibsetroot \
-I${imlib2.dev}/include -L${imlib2}/lib -lImlib2 \
-I${libX11.dev}/include -lXinerama -lX11
runHook postBuild
'';
installPhase = ''
mkdir -p $out/bin
install -m 755 imlibsetroot $out/bin
runHook preInstall
install -D -m 0755 imlibsetroot -t $out/bin
runHook postInstall
'';
meta = with lib; {
description = "A Xinerama Aware Background Changer";
homepage = "http://robotmonkeys.net/2010/03/30/imlibsetroot/";
license = licenses.gpl2;
license = licenses.mitAdvertising;
platforms = platforms.linux;
maintainers = with maintainers; [ dwarfmaster ];
};
@@ -1,5 +1,5 @@
{ stdenv, lib, requireFile, wrapQtAppsHook, autoPatchelfHook, makeWrapper, unixtools, fakeroot
, mime-types, libGL, libpulseaudio, alsa-lib, nss, gd, gst_all_1, nspr, expat, fontconfig
, mailcap, libGL, libpulseaudio, alsa-lib, nss, gd, gst_all_1, nspr, expat, fontconfig
, dbus, glib, zlib, openssl, libdrm, cups, avahi-compat, xorg, wayland, libudev0-shim
# Qt 5 subpackages
, qtbase, qtgamepad, qtserialport, qtserialbus, qtvirtualkeyboard, qtmultimedia, qtwebkit, qt3d, mlt
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
fakeroot
wrapQtAppsHook
autoPatchelfHook
mime-types
mailcap
libudev0-shim
];
@@ -77,6 +77,11 @@ python3.pkgs.buildPythonApplication {
postPatch = ''
substituteInPlace contrib/requirements/requirements.txt \
--replace "dnspython>=2.0,<2.1" "dnspython>=2.0"
# according to upstream, this is fine
# https://github.com/spesmilo/electrum/issues/7361
substituteInPlace contrib/requirements/requirements.txt \
--replace "qdarkstyle<2.9" "qdarkstyle>=2.7"
'';
patches = [
+5
View File
@@ -76,6 +76,11 @@ python3.pkgs.buildPythonApplication {
prePatch = ''
substituteInPlace contrib/requirements/requirements.txt \
--replace "dnspython>=2.0,<2.1" "dnspython>=2.0"
# according to upstream, this is fine
# https://github.com/spesmilo/electrum/issues/7361
substituteInPlace contrib/requirements/requirements.txt \
--replace "qdarkstyle<2.9" "qdarkstyle>=2.7"
'';
nativeBuildInputs = lib.optionals enableQt [ wrapQtAppsHook ];
+2 -1
View File
@@ -21,10 +21,11 @@ mkDerivation rec {
version = "3.27.1.6";
src = fetchFromGitHub {
name = "qcad-${version}-src";
owner = "qcad";
repo = "qcad";
rev = "v${version}";
sha256 = "sha256-ouvWE1fa4DfPLqFYuMsUPWDx/NUaoCc7TfR6Ed0uuF4=";
sha256 = "sha256-NnaCwbk8w0ZPnBz7xxs5LMFMUSnEERCSRBXpJL0u+s0=";
};
patches = [
@@ -1,7 +1,7 @@
{ stdenv, lib, lispPackages
, makeWrapper, wrapGAppsHook, gst_all_1
, glib, gdk-pixbuf, cairo
, mime-types, pango, gtk3
, mailcap, pango, gtk3
, glib-networking, gsettings-desktop-schemas
, xclip, notify-osd, enchant
}:
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
];
buildInputs = [
glib gdk-pixbuf cairo
mime-types pango gtk3
mailcap pango gtk3
glib-networking gsettings-desktop-schemas
xclip notify-osd enchant
] ++ gstBuildInputs;
@@ -7,7 +7,7 @@
, autoreconfHook
, pkg-config
, perl # for pod2man
, ffmpeg
, ffmpeg_4
, pjsip
, alsa-lib
, asio
@@ -39,7 +39,7 @@
let
readLinesToList = with builtins; file: filter (s: isString s && stringLength s > 0) (split "\n" (readFile file));
ffmpeg-jami = ffmpeg.overrideAttrs (old:
ffmpeg-jami = ffmpeg_4.overrideAttrs (old:
let
patch-src = src + "/daemon/contrib/src/ffmpeg/";
in
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, pkg-config, cmake, ninja, yasm
, libjpeg, openssl, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf
, libjpeg, openssl, libopus, ffmpeg_4, alsa-lib, libpulseaudio, protobuf
, xorg, libXtst
}:
@@ -23,7 +23,7 @@ in stdenv.mkDerivation {
nativeBuildInputs = [ pkg-config cmake ninja yasm ];
buildInputs = [
libjpeg openssl libopus ffmpeg alsa-lib libpulseaudio protobuf
libjpeg openssl libopus ffmpeg_4 alsa-lib libpulseaudio protobuf
xorg.libX11 libXtst
];
@@ -25,7 +25,7 @@ assert sendEmailSupport -> perlSupport;
assert svnSupport -> perlSupport;
let
version = "2.34.1";
version = "2.35.1";
svn = subversionClient.override { perlBindings = perlSupport; };
gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
@@ -37,7 +37,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
sha256 = "0b40vf315s1kz65x1wq47g8srl4wqac39pwnvlj1mdzs3kfma1rs";
sha256 = "100h37cpw49pmlpf6lcpm1xi578gllf6y9in60h5mxj3cj754s6p";
};
outputs = [ "out" ] ++ lib.optional withManual "doc";
+6 -8
View File
@@ -1,4 +1,4 @@
{ config, lib, stdenv, fetchurl, pkg-config, freetype, yasm, ffmpeg
{ config, lib, stdenv, fetchurl, fetchsvn, pkg-config, freetype, yasm, ffmpeg
, aalibSupport ? true, aalib ? null
, fontconfigSupport ? true, fontconfig ? null, freefont_ttf ? null
, fribidiSupport ? true, fribidi ? null
@@ -93,11 +93,12 @@ in
stdenv.mkDerivation rec {
pname = "mplayer";
version = "1.4";
version = "unstable-2022-02-03";
src = fetchurl {
url = "http://www.mplayerhq.hu/MPlayer/releases/MPlayer-${version}.tar.xz";
sha256 = "0j5mflr0wnklxsvnpmxvk704hscyn2785hvvihj2i3a7b3anwnc2";
src = fetchsvn {
url = "svn://svn.mplayerhq.hu/mplayer/trunk";
rev = "38331";
sha256 = "1vpic8i6zvg0zsy50vhm45ysqag561bpn9jycfbvvwl9ji7l55zi";
};
prePatch = ''
@@ -106,8 +107,6 @@ stdenv.mkDerivation rec {
rm -rf ffmpeg
'';
patches = [ ./svn-r38199-ffmpeg44fix.patch ];
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ pkg-config yasm ];
buildInputs = with lib;
@@ -163,7 +162,6 @@ stdenv.mkDerivation rec {
(if pulseSupport then "--enable-pulse" else "--disable-pulse")
(if v4lSupport then "--enable-v4l2 --enable-tv-v4l2" else "--disable-v4l2 --disable-tv-v4l2")
"--disable-xanim"
"--disable-ivtv"
"--disable-xvid --disable-xvid-lavc"
"--disable-ossaudio"
"--disable-ffmpeg_a"
@@ -1,22 +0,0 @@
Index: libmpcodecs/ad_spdif.c
===================================================================
diff --git a/libmpcodecs/ad_spdif.c b/libmpcodecs/ad_spdif.c
--- a/libmpcodecs/ad_spdif.c (revision 38198)
+++ b/libmpcodecs/ad_spdif.c (revision 38199)
@@ -298,14 +298,8 @@
if (spdif_ctx->header_written)
av_write_trailer(lavf_ctx);
av_freep(&lavf_ctx->pb);
- if (lavf_ctx->streams) {
- av_freep(&lavf_ctx->streams[0]->codec);
- av_freep(&lavf_ctx->streams[0]->info);
- av_freep(&lavf_ctx->streams[0]);
- }
- av_freep(&lavf_ctx->streams);
- av_freep(&lavf_ctx->priv_data);
+ avformat_free_context(lavf_ctx);
+ lavf_ctx = NULL;
}
- av_freep(&lavf_ctx);
av_freep(&spdif_ctx);
}
@@ -6,7 +6,7 @@
, addOpenGLRunpath
, cmake
, fdk_aac
, ffmpeg
, ffmpeg_4
, jansson
, libjack2
, libxkbcommon
@@ -73,7 +73,7 @@ mkDerivation rec {
buildInputs = [
curl
fdk_aac
ffmpeg
ffmpeg_4
jansson
libcef
libjack2
+2 -2
View File
@@ -10,7 +10,7 @@
, avahi
, dbus
, faad2
, ffmpeg
, ffmpeg_4
, flac
, fluidsynth
, freefont_ttf
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
avahi
dbus
faad2
ffmpeg
ffmpeg_4
flac
fluidsynth
fribidi
@@ -15,11 +15,11 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook makeWrapper ];
buildInputs = [
docker
(python3.withPackages (ps: [ ps.lark-parser ps.requests ]))
(python3.withPackages (ps: [ ps.lark ps.requests ]))
];
configureFlags = let
pythonEnv = python3.withPackages (ps: [ ps.lark-parser ps.requests ]);
pythonEnv = python3.withPackages (ps: [ ps.lark ps.requests ]);
in [
"--with-python=${pythonEnv}/bin/python3"
];
@@ -33,24 +33,16 @@
, nixosTestRunner ? false
}:
let
audio = lib.optionalString alsaSupport "alsa,"
+ lib.optionalString pulseSupport "pa,"
+ lib.optionalString sdlSupport "sdl,"
+ lib.optionalString jackSupport "jack,";
in
stdenv.mkDerivation rec {
pname = "qemu"
+ lib.optionalString xenSupport "-xen"
+ lib.optionalString hostCpuOnly "-host-cpu-only"
+ lib.optionalString nixosTestRunner "-for-vm-tests";
version = "6.1.0";
version = "6.2.0";
src = fetchurl {
url= "https://download.qemu.org/qemu-${version}.tar.xz";
sha256 = "15iw7982g6vc4jy1l9kk1z9sl5bm1bdbwr74y7nvwjs1nffhig7f";
sha256 = "0iavlsy9hin8k38230j8lfmyipx3965zljls1dp34mmc8n75vqb8";
};
depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -101,55 +93,7 @@ stdenv.mkDerivation rec {
sha256 = "09xz06g57wxbacic617pq9c0qb7nly42gif0raplldn5lw964xl2";
revert = true;
})
(fetchpatch {
name = "CVE-2021-3713.patch"; # remove with next release
url = "https://gitlab.com/qemu-project/qemu/-/commit/13b250b12ad3c59114a6a17d59caf073ce45b33a.patch";
sha256 = "0lkzfc7gdlvj4rz9wk07fskidaqysmx8911g914ds1jnczgk71mf";
})
# Fixes a crash that frequently happens in some setups that share /nix/store over 9p like nixos tests
# on some systems. Remove with next release.
(fetchpatch {
name = "fix-crash-in-v9fs_walk.patch";
url = "https://gitlab.com/qemu-project/qemu/-/commit/f83df00900816476cca41bb536e4d532b297d76e.patch";
sha256 = "sha256-LYGbBLS5YVgq8Bf7NVk7HBFxXq34NmZRPCEG79JPwk8=";
})
# Fixes an io error on discard/unmap operation for aio/file backend. Remove with next release.
(fetchpatch {
name = "fix-aio-discard-return-value.patch";
url = "https://gitlab.com/qemu-project/qemu/-/commit/13a028336f2c05e7ff47dfdaf30dfac7f4883e80.patch";
sha256 = "sha256-23xVixVl+JDBNdhe5j5WY8CB4MsnUo+sjrkAkG+JS6M=";
})
# Fixes managedsave (snapshot creation) with QXL video device. Remove with next release.
(fetchpatch {
name = "qxl-fix-pre-save-logic.patch";
url = "https://gitlab.com/qemu-project/qemu/-/commit/eb94846280df3f1e2a91b6179fc05f9890b7e384.patch";
sha256 = "sha256-p31fd47RTSw928DOMrubQQybnzDAGm23z4Yhe+hGJQ8=";
})
# Fixes socket_sockaddr_to_address_unix assertion errors in some setups. Remove with next release.
(fetchpatch {
name = "fix-unix-socket-path-copy-again.patch";
url = "https://gitlab.com/qemu-project/qemu/-/commit/118d527f2e4baec5fe8060b22a6212468b8e4d3f.patch";
sha256 = "sha256-ox+JSpc0pqd3bMi5Ot7ljQyk70SX8g+BLufR06mZPps=";
})
] ++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch
++ lib.optionals stdenv.hostPlatform.isMusl [
./sigrtminmax.patch
(fetchpatch {
url = "https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/fix-sigevent-and-sigval_t.patch";
sha256 = "0wk0rrcqywhrw9hygy6ap0lfg314m9z1wr2hn8338r5gfcw75mav";
})
] ++ lib.optionals stdenv.isDarwin [
# The Hypervisor.framework support patch converted something that can be applied:
# * https://patchwork.kernel.org/project/qemu-devel/list/?series=548227
# The base revision is whatever commit there is before the series starts:
# * https://github.com/patchew-project/qemu/commits/patchew/20210916155404.86958-1-agraf%40csgraf.de
# The target revision is what patchew has as the series tag from patchwork:
# * https://github.com/patchew-project/qemu/releases/tag/patchew%2F20210916155404.86958-1-agraf%40csgraf.de
(fetchpatch {
url = "https://github.com/patchew-project/qemu/compare/7adb961995a3744f51396502b33ad04a56a317c3..d2603c06d9c4a28e714b9b70fe5a9d0c7b0f934d.diff";
sha256 = "sha256-nSi5pFf9+EefUmyJzSEKeuxOt39ztgkXQyUB8fTHlcY=";
})
];
] ++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
postPatch = ''
# Otherwise tries to ensure /var/run exists.
@@ -180,12 +124,9 @@ stdenv.mkDerivation rec {
--replace '$source_path/VERSION' '$source_path/QEMU_VERSION'
substituteInPlace meson.build \
--replace "'VERSION'" "'QEMU_VERSION'"
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
NIX_CFLAGS_COMPILE+=" -D_LINUX_SYSINFO_H"
'';
configureFlags = [
"--audio-drv-list=${audio}"
"--disable-strip" # We'll strip ourselves after separating debug info.
"--enable-docs"
"--enable-tools"
@@ -1,30 +0,0 @@
From 2697fcc42546e814a2d2617671cb8398b15256fb Mon Sep 17 00:00:00 2001
From: Will Dietz <w@wdtz.org>
Date: Fri, 17 Aug 2018 00:22:35 -0500
Subject: [PATCH] quick port __SIGRTMIN/__SIGRTMAX patch for qemu 3.0
---
linux-user/signal.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/linux-user/signal.c b/linux-user/signal.c
index 602b631b92..87f9240134 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -26,6 +26,13 @@
#include "trace.h"
#include "signal-common.h"
+#ifndef __SIGRTMIN
+#define __SIGRTMIN 32
+#endif
+#ifndef __SIGRTMAX
+#define __SIGRTMAX (NSIG-1)
+#endif
+
struct target_sigaltstack target_sigaltstack_used = {
.ss_sp = 0,
.ss_size = 0,
--
2.18.0
+4 -2
View File
@@ -57,7 +57,9 @@ else stdenv.mkDerivation rec {
''}
if [ -n "$doInstallCheck" ]; then
$CC -Wall -std=c99 -O3 test.c -o test
$CC -Wall -std=c99 \
${lib.optionalString (!stdenv.isDarwin) "-D_GNU_SOURCE"} \
-O3 test.c -o test
fi
runHook postBuild
@@ -97,7 +99,7 @@ else stdenv.mkDerivation rec {
installCheckPhase = ''
(
source "$hook/nix-support/setup-hook"
NIX_REDIRECTS="/foo/bar/test=${coreutils}/bin/true" ./test
NIX_REDIRECTS="/foo/bar/test=${coreutils}/bin/true:/bar/baz=$(mktemp -d)" ./test
)
'';
@@ -84,6 +84,13 @@ static const char * rewrite(const char * path, char * buf)
return path;
}
static char * rewrite_non_const(char * path, char * buf)
{
// as long as the argument `path` is non-const, we can consider discarding
// the const qualifier of the return value to be safe.
return (char *)rewrite(path, buf);
}
static int open_needs_mode(int flags)
{
#ifdef O_TMPFILE
@@ -354,3 +361,117 @@ WRAPPER(int, mkdirat)(int dirfd, const char *path, mode_t mode)
return mkdirat_real(dirfd, rewrite(path, buf), mode);
}
WRAPPER_DEF(mkdirat)
WRAPPER(int, unlink)(const char *path)
{
int (*unlink_real) (const char *path) = LOOKUP_REAL(unlink);
char buf[PATH_MAX];
return unlink_real(rewrite(path, buf));
}
WRAPPER_DEF(unlink)
WRAPPER(int, unlinkat)(int dirfd, const char *path, int flags)
{
int (*unlinkat_real) (int dirfd, const char *path, int flags) = LOOKUP_REAL(unlinkat);
char buf[PATH_MAX];
return unlinkat_real(dirfd, rewrite(path, buf), flags);
}
WRAPPER_DEF(unlinkat)
WRAPPER(int, rmdir)(const char *path)
{
int (*rmdir_real) (const char *path) = LOOKUP_REAL(rmdir);
char buf[PATH_MAX];
return rmdir_real(rewrite(path, buf));
}
WRAPPER_DEF(rmdir)
static void copy_temp_wildcard(char * dest, char * src, int suffixlen) {
int dest_len = strnlen(dest, PATH_MAX);
int src_len = strnlen(src, PATH_MAX);
memcpy(dest + dest_len - (6 + suffixlen), src + src_len - (6 + suffixlen), 6);
}
WRAPPER(int, mkstemp)(char *template)
{
int (*mkstemp_real) (char *template) = LOOKUP_REAL(mkstemp);
char buf[PATH_MAX];
char * rewritten = rewrite_non_const(template, buf);
int retval = mkstemp_real(rewritten);
if (retval >= 0 && rewritten != template) {
copy_temp_wildcard(template, rewritten, 0);
}
return retval;
}
WRAPPER_DEF(mkstemp)
WRAPPER(int, mkostemp)(char *template, int flags)
{
int (*mkostemp_real) (char *template, int flags) = LOOKUP_REAL(mkostemp);
char buf[PATH_MAX];
char * rewritten = rewrite_non_const(template, buf);
int retval = mkostemp_real(rewritten, flags);
if (retval >= 0 && rewritten != template) {
copy_temp_wildcard(template, rewritten, 0);
}
return retval;
}
WRAPPER_DEF(mkostemp)
WRAPPER(int, mkstemps)(char *template, int suffixlen)
{
int (*mkstemps_real) (char *template, int suffixlen) = LOOKUP_REAL(mkstemps);
char buf[PATH_MAX];
char * rewritten = rewrite_non_const(template, buf);
int retval = mkstemps_real(rewritten, suffixlen);
if (retval >= 0 && rewritten != template) {
copy_temp_wildcard(template, rewritten, suffixlen);
}
return retval;
}
WRAPPER_DEF(mkstemps)
WRAPPER(int, mkostemps)(char *template, int suffixlen, int flags)
{
int (*mkostemps_real) (char *template, int suffixlen, int flags) = LOOKUP_REAL(mkostemps);
char buf[PATH_MAX];
char * rewritten = rewrite_non_const(template, buf);
int retval = mkostemps_real(rewritten, suffixlen, flags);
if (retval >= 0 && rewritten != template) {
copy_temp_wildcard(template, rewritten, suffixlen);
}
return retval;
}
WRAPPER_DEF(mkostemps)
WRAPPER(char *, mkdtemp)(char *template)
{
char * (*mkdtemp_real) (char *template) = LOOKUP_REAL(mkdtemp);
char buf[PATH_MAX];
char * rewritten = rewrite_non_const(template, buf);
char * retval = mkdtemp_real(rewritten);
if (retval == NULL) {
return retval;
};
if (rewritten != template) {
copy_temp_wildcard(template, rewritten, 0);
}
return template;
}
WRAPPER_DEF(mkdtemp)
WRAPPER(char *, mktemp)(char *template)
{
char * (*mktemp_real) (char *template) = LOOKUP_REAL(mktemp);
char buf[PATH_MAX];
char * rewritten = rewrite_non_const(template, buf);
char * retval = mktemp_real(rewritten);
if (retval == NULL) {
return retval;
};
if (rewritten != template) {
copy_temp_wildcard(template, rewritten, 0);
}
return template;
}
WRAPPER_DEF(mktemp)
+66
View File
@@ -1,14 +1,18 @@
#include <assert.h>
#include <errno.h>
#include <fcntl.h>
#include <limits.h>
#include <spawn.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/wait.h>
#define TESTDIR "/bar/baz"
#define TESTPATH "/foo/bar/test"
#define SUBTEST "./test sub"
@@ -41,11 +45,25 @@ void test_subprocess(void) {
assert(system(SUBTEST) == 0);
}
void assert_mktemp_path(
const char * orig_prefix,
const char * orig_suffix,
const char * updated
) {
// prefix unchanged
assert(strncmp(updated, orig_prefix, strlen(orig_prefix)) == 0);
// wildcards replaced
assert(strcmp(updated + strlen(orig_prefix), "XXXXXX") != 0);
// suffix unchanged
assert(strcmp(updated + strlen(orig_prefix) + 6, orig_suffix) == 0);
}
int main(int argc, char *argv[])
{
FILE *testfp;
int testfd;
struct stat testsb;
char buf[PATH_MAX];
testfp = fopen(TESTPATH, "r");
assert(testfp != NULL);
@@ -59,6 +77,54 @@ int main(int argc, char *argv[])
assert(stat(TESTPATH, &testsb) != -1);
assert(mkdir(TESTDIR "/dir-mkdir", 0777) == 0);
assert(unlink(TESTDIR "/dir-mkdir") == -1); // it's a directory!
#ifndef __APPLE__
assert(errno == EISDIR);
#endif
assert(rmdir(TESTDIR "/dir-mkdir") == 0);
assert(unlink(TESTDIR "/dir-mkdir") == -1);
assert(errno == ENOENT);
assert(mkdirat(123, TESTDIR "/dir-mkdirat", 0777) == 0);
assert(unlinkat(123, TESTDIR "/dir-mkdirat", 0) == -1); // it's a directory!
#ifndef __APPLE__
assert(errno == EISDIR);
#endif
assert(unlinkat(123, TESTDIR "/dir-mkdirat", AT_REMOVEDIR) == 0);
strncpy(buf, TESTDIR "/tempXXXXXX", PATH_MAX);
testfd = mkstemp(buf);
assert(testfd > 0);
assert_mktemp_path(TESTDIR "/temp", "", buf);
close(testfd);
strncpy(buf, TESTDIR "/tempXXXXXX", PATH_MAX);
testfd = mkostemp(buf, 0);
assert(testfd > 0);
assert_mktemp_path(TESTDIR "/temp", "", buf);
close(testfd);
strncpy(buf, TESTDIR "/tempXXXXXX.test", PATH_MAX);
testfd = mkstemps(buf, strlen(".test"));
assert(testfd > 0);
assert_mktemp_path(TESTDIR "/temp", ".test", buf);
close(testfd);
strncpy(buf, TESTDIR "/tempXXXXXX.test", PATH_MAX);
testfd = mkostemps(buf, strlen(".test"), 0);
assert(testfd > 0);
assert_mktemp_path(TESTDIR "/temp", ".test", buf);
close(testfd);
strncpy(buf, TESTDIR "/tempXXXXXX", PATH_MAX);
assert(mkdtemp(buf) == buf);
assert_mktemp_path(TESTDIR "/temp", "", buf);
strncpy(buf, TESTDIR "/tempXXXXXX", PATH_MAX);
assert(mktemp(buf) == buf);
assert_mktemp_path(TESTDIR "/temp", "", buf);
test_spawn();
test_system();
+56 -22
View File
@@ -36,6 +36,58 @@ makeWrapper() {
assertExecutable "$original"
# Write wrapper code which adds `value` to the beginning or end of
# the list variable named by `varName`, depending on the `mode`
# specified.
#
# A value which is already part of the list will not be added
# again. If this is the case and the `suffix` mode is used, the
# list won't be touched at all. The `prefix` mode will however
# move the last matching instance of the value to the beginning
# of the list. Any remaining duplicates of the value will be left
# as-is.
addValue() {
local mode="$1" # `prefix` or `suffix` to add to the beginning or end respectively
local varName="$2" # name of list variable to add to
local separator="$3" # character used to separate elements of list
local value="$4" # one value, or multiple values separated by `separator`, to add to list
if test -n "$value"; then
local old_ifs=$IFS
IFS=$separator
if [[ "$mode" == '--prefix'* ]]; then
# Keep the order of the components as written when
# prefixing; normally, they would be added in the
# reverse order.
local tmp=
for v in $value; do
tmp=$v${tmp:+$separator}$tmp
done
value="$tmp"
fi
for v in $value; do
{
echo "$varName=\${$varName:+${separator@Q}\$$varName${separator@Q}}" # add separators on both ends unless empty
if [[ "$mode" == '--prefix'* ]]; then # -- in prefix mode --
echo "$varName=\${$varName/${separator@Q}${v@Q}${separator@Q}/${separator@Q}}" # remove the first instance of the value (if any)
echo "$varName=${v@Q}\$$varName" # prepend the value
elif [[ "$mode" == '--suffix'* ]]; then # -- in suffix mode --
echo "if [[ \$$varName != *${separator@Q}${v@Q}${separator@Q}* ]]; then" # if the value isn't already in the list
echo " $varName=\$$varName${v@Q}" # append the value
echo "fi"
else
echo "unknown mode $mode!" 1>&2
exit 1
fi
echo "$varName=\${$varName#${separator@Q}}" # remove leading separator
echo "$varName=\${$varName%${separator@Q}}" # remove trailing separator
echo "export $varName"
} >> "$wrapper"
done
IFS=$old_ifs
fi
}
mkdir -p "$(dirname "$wrapper")"
echo "#! @shell@ -e" > "$wrapper"
@@ -67,28 +119,14 @@ makeWrapper() {
separator="${params[$((n + 2))]}"
value="${params[$((n + 3))]}"
n=$((n + 3))
if test -n "$value"; then
if test "$p" = "--suffix"; then
echo "export $varName=\$$varName\${$varName:+${separator@Q}}${value@Q}" >> "$wrapper"
else
echo "export $varName=${value@Q}\${$varName:+${separator@Q}}\$$varName" >> "$wrapper"
fi
fi
elif [[ "$p" == "--prefix-each" ]]; then
addValue "$p" "$varName" "$separator" "$value"
elif [[ ("$p" == "--suffix-each") || ("$p" == "--prefix-each") ]]; then
varName="${params[$((n + 1))]}"
separator="${params[$((n + 2))]}"
values="${params[$((n + 3))]}"
n=$((n + 3))
for value in $values; do
echo "export $varName=${value@Q}\${$varName:+${separator@Q}}\$$varName" >> "$wrapper"
done
elif [[ "$p" == "--suffix-each" ]]; then
varName="${params[$((n + 1))]}"
separator="${params[$((n + 2))]}"
values="${params[$((n + 3))]}"
n=$((n + 3))
for value in $values; do
echo "export $varName=\$$varName\${$varName:+$separator}${value@Q}" >> "$wrapper"
addValue "$p" "$varName" "$separator" "$value"
done
elif [[ ("$p" == "--suffix-contents") || ("$p" == "--prefix-contents") ]]; then
varName="${params[$((n + 1))]}"
@@ -97,11 +135,7 @@ makeWrapper() {
n=$((n + 3))
for fileName in $fileNames; do
contents="$(cat "$fileName")"
if test "$p" = "--suffix-contents"; then
echo "export $varName=\$$varName\${$varName:+$separator}${contents@Q}" >> "$wrapper"
else
echo "export $varName=${contents@Q}\${$varName:+$separator}\$$varName" >> "$wrapper"
fi
addValue "$p" "$varName" "$separator" "$contents"
done
elif [[ "$p" == "--add-flags" ]]; then
flags="${params[$((n + 1))]}"
-21
View File
@@ -1,21 +0,0 @@
{ lib, fetchzip }:
let
version = "9";
in fetchzip rec {
name = "mime-types-${version}";
url = "https://mirrors.kernel.org/gentoo/distfiles/${name}.tar.bz2";
postFetch = ''
mkdir -p $out/etc
tar xjvf $downloadedFile --directory=$out/etc --strip-components=1
'';
sha256 = "0gyla4wfiaccs0qh0hw7n08kdpnkkssglcg0z2jblb2lsdr4qna0";
meta = with lib; {
description = "A database of common mappings of file extensions to MIME types";
homepage = "https://packages.gentoo.org/packages/app-misc/mime-types";
license = licenses.gpl2;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.all;
};
}
@@ -1,5 +1,5 @@
{ stdenv, lib, fetchurl, writeText, gradle_4, pkg-config, perl, cmake
, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib, ffmpeg, python2, ruby
, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib, ffmpeg_4, python2, ruby
, openjdk11-bootstrap }:
let
@@ -19,7 +19,7 @@ let
sha256 = "1h7qsylr7rnwnbimqjyn3whszp9kv4h3gpicsrb3mradxc9yv194";
};
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg ];
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python2 ruby ];
dontUseCmakeConfigure = true;
@@ -1,6 +1,6 @@
{ stdenv, lib, fetchFromGitHub, writeText, openjdk11_headless, gradle_5
, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib
, ffmpeg, python3, ruby }:
, ffmpeg_4, python3, ruby }:
let
major = "15";
@@ -21,7 +21,7 @@ let
sha256 = "019glq8rhn6amy3n5jc17vi2wpf1pxpmmywvyz1ga8n09w7xscq1";
};
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg ];
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
dontUseCmakeConfigure = true;
@@ -20,8 +20,8 @@
} @ args:
import ./default.nix {
rustcVersion = "1.57.0";
rustcSha256 = "06jw8ka2p3kls8p0gd4p0chhhb1ia1mlvj96zn78n7qvp71zjiim";
rustcVersion = "1.58.1";
rustcSha256 = "1iq7kj16qfpkx8gvw50d8rf7glbm6s0pj2y1qkrz7mi56vfsyfd8";
llvmSharedForBuild = pkgsBuildBuild.llvmPackages_13.libllvm.override { enableSharedLibraries = true; };
llvmSharedForHost = pkgsBuildHost.llvmPackages_13.libllvm.override { enableSharedLibraries = true; };
@@ -37,24 +37,24 @@ import ./default.nix {
# Note: the version MUST be one version prior to the version we're
# building
bootstrapVersion = "1.56.1";
bootstrapVersion = "1.57.0";
# fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
bootstrapHashes = {
i686-unknown-linux-gnu = "84db34603ce22d93312ff8bccd5580fe112e932bbeb0361e7cc37668a9803a27";
x86_64-unknown-linux-gnu = "a6be5d045183a0b12dddf0d81633e2a64e63e4c2dfa44eb7593970c1ef93a98f";
x86_64-unknown-linux-musl = "3c09058d104d9a88943fb343af1fb70422f9c4a987e6703666ee8a8051211190";
arm-unknown-linux-gnueabihf = "c445706d109bb74de4c889687ae08a48af5808676fda15b84b7ef5970a82a5f6";
armv7-unknown-linux-gnueabihf = "29ec65af502370c0c1a49faecd7131f1243fe3005b419ead4b40b267af2b2db0";
aarch64-unknown-linux-gnu = "69792887357c8dd78c5424f0b4a624578296796d99edf6c30ebe2acc2b939aa3";
aarch64-unknown-linux-musl = "971d13d41657e50e3ac54f17f52b4198c3d8bc25ec489a6a9e6d12c18226dda5";
x86_64-apple-darwin = "8d65ef02a123c23be00101fb204d28b60498b9145dd2ee8edabf0afde6e01e55";
aarch64-apple-darwin = "e71c14c1368048a22e4d1851f301872ac2e6f4c574f04d2a7ae4d64b0e7c7235";
powerpc64le-unknown-linux-gnu = "fa78b28fe1ef3cd4add9ec151e5eab756dfc83c8bc3e5a576a6eddd350c4de7a";
riscv64gc-unknown-linux-gnu = "5ec327d1bd3ba8d00afbe9be4a1f0fb8ab845063fcf9be479be9493c52a4dbb6";
i686-unknown-linux-gnu = "7e4ac8ca2874897099a3ceb89039ceee170f474a98ee247589fd6bca8dda7cfa";
x86_64-unknown-linux-gnu = "ea0253784b2e5c22659ff148d492a68d2e11da734491714ebc61cc93896efcda";
x86_64-unknown-linux-musl = "56876ebca0e46236208c8bd3c3425dba553abe49639e1040ee8b95bc66a45d33";
arm-unknown-linux-gnueabihf = "b4448f7a96da4feee99a2c4b16b5738b99ab7e86e22d284ea6f7dca5921bca9b";
armv7-unknown-linux-gnueabihf = "577682b1405e8901f971839407daaad06d8ae68ad370305b75d569ba293c4fb4";
aarch64-unknown-linux-gnu = "d66847f7cf7b548ecb328c400ac4f691ee2aea6ff5cd9286ad8733239569556c";
aarch64-unknown-linux-musl = "91c8e5171e5715261f7f635142a10a9415a4e5ba55374daf76f0b713c8b08132";
x86_64-apple-darwin = "15ceffc4743434c19d08f73fb4edd6642b7fd8162ed7101d3e6ca2c691fcb699";
aarch64-apple-darwin = "7511075e28b715e2d9c7ee74221779f8444681a4bb60ac3a0270a5fdf08bdd5a";
powerpc64le-unknown-linux-gnu = "3ddc1abed6b7535c4150bf54291901fa856806c948bc21b711e24a3c8d810be7";
riscv64gc-unknown-linux-gnu = "f809df1c6ac0adc9bd37eb871dfb0d9809f3ed7f61ba611f9305e9eb8f8c9226";
};
selectRustPackage = pkgs: pkgs.rust_1_57;
selectRustPackage = pkgs: pkgs.rust_1_58;
rustcPatches = [
];
@@ -4,7 +4,7 @@
, libffi
, gdbm
, xz
, mime-types ? null, mimetypesSupport ? true
, mailcap, mimetypesSupport ? true
, ncurses
, openssl
, readline
@@ -17,6 +17,7 @@
, configd
, autoreconfHook
, autoconf-archive
, pkg-config
, python-setup-hook
, nukeReferences
# For the Python package set
@@ -62,8 +63,6 @@ assert x11Support -> tcl != null
assert bluezSupport -> bluez != null;
assert mimetypesSupport -> mime-types != null;
assert lib.assertMsg (enableOptimizations -> (!stdenv.cc.isClang))
"Optimizations with clang are not supported. configure: error: llvm-profdata is required for a --enable-optimizations build but could not be found.";
@@ -105,7 +104,7 @@ let
nativeBuildInputs = optionals (!stdenv.isDarwin) [
autoreconfHook
] ++ optionals (!stdenv.isDarwin && passthru.pythonAtLeast "3.10") [
pkg-config
autoconf-archive # needed for AX_CHECK_COMPILE_FLAG
] ++ [
nukeReferences
@@ -277,7 +276,7 @@ in with passthru; stdenv.mkDerivation {
--replace "'/bin/sh'" "'${bash}/bin/sh'"
'' + optionalString mimetypesSupport ''
substituteInPlace Lib/mimetypes.py \
--replace "@mime-types@" "${mime-types}"
--replace "@mime-types@" "${mailcap}"
'' + optionalString (x11Support && (tix != null)) ''
substituteInPlace "Lib/tkinter/tix.py" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'"
'';
@@ -133,10 +133,19 @@ with pkgs;
sourceVersion = {
major = "3";
minor = "9";
patch = "9";
patch = "10";
suffix = "";
};
sha256 = "sha256-BoKMBKVzwHOk5RxCkqJ8G+SuJmIcPtx8+TGEGM47bSc=";
sha256 = "sha256-Co+/tSh+vDoT6brz1U4I+gZ3j/7M9jEa74Ibs6ZYbMg=";
};
python310 = {
sourceVersion = {
major = "3";
minor = "10";
patch = "2";
suffix = "";
};
sha256 = "sha256-F946x9qfJRmqnWQ3jGA6c6DprVjf+ogS5FFgwIbeZMc=";
};
};
@@ -180,18 +189,11 @@ in {
inherit passthruFun;
} // sources.python39);
python310 = callPackage ./cpython {
python310 = callPackage ./cpython ({
self = python310;
sourceVersion = {
major = "3";
minor = "10";
patch = "1";
suffix = "";
};
sha256 = "0xz1wrd6xi20sbli30vm6jclc4rlnnd03irybknf2p8sdrdjdwd7";
inherit (darwin) configd;
inherit passthruFun;
};
} // sources.python310);
python311 = callPackage ./cpython {
self = python311;
@@ -199,9 +201,9 @@ in {
major = "3";
minor = "11";
patch = "0";
suffix = "a2";
suffix = "a4";
};
sha256 = "sha256-aKjE1s4lSKe2F9aZ+9s0iTe9rODPltsaoIOEnfXa0T8=";
sha256 = "sha256-Q3/nN2w2Pa+vNM6A8ERrQfyaQsDiqMflGdPwoLfPs+0=";
inherit (darwin) configd;
inherit passthruFun;
};
@@ -166,6 +166,8 @@ let
# Bundler tries to create this directory
postInstall = ''
rbConfig=$(find $out/lib/ruby -name rbconfig.rb)
# Remove references to the build environment from the closure
sed -i '/^ CONFIG\["\(BASERUBY\|SHELL\|GREP\|EGREP\|MKDIR_P\|MAKEDIRS\|INSTALL\)"\]/d' $rbConfig
# Remove unnecessary groff reference from runtime closure, since it's big
sed -i '/NROFF/d' $rbConfig
${
@@ -203,7 +205,6 @@ let
# Add rbconfig shim so ri can find docs
mkdir -p $devdoc/lib/ruby/site_ruby
cp ${./rbconfig.rb} $devdoc/lib/ruby/site_ruby/rbconfig.rb
sed -i '/^ CONFIG\["\(BASERUBY\|SHELL\|GREP\|EGREP\|MKDIR_P\|MAKEDIRS\|INSTALL\)"\]/d' $rbConfig
'' + opString useBaseRuby ''
# Prevent the baseruby from being included in the closure.
${removeReferencesTo}/bin/remove-references-to \
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
owner = "abseil";
repo = "abseil-cpp";
rev = version;
sha256 = "0g9rbhk3mwjdfxk7cscd04vm8fphd5flz9yykpgvyy1nwa34zk3x";
sha256 = "sha256-fcxPhuI2eL/fnd6nT11p8DpUNwGNaXZmd03yOiZcOT0=";
};
patches = [
@@ -0,0 +1,36 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, static ? stdenv.hostPlatform.isStatic
, cxxStandard ? null
}:
stdenv.mkDerivation rec {
pname = "abseil-cpp";
version = "20211102.0";
src = fetchFromGitHub {
owner = "abseil";
repo = "abseil-cpp";
rev = version;
sha256 = "sha256-sSXT6D4JSrk3dA7kVaxfKkzOMBpqXQb0WbMYWG+nGwk=";
};
cmakeFlags = [
"-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
] ++ lib.optionals (cxxStandard != null) [
"-DCMAKE_CXX_STANDARD=${cxxStandard}"
];
nativeBuildInputs = [ cmake ];
meta = with lib; {
description = "An open-source collection of C++ code designed to augment the C++ standard library";
homepage = "https://abseil.io/";
license = licenses.asl20;
platforms = platforms.all;
maintainers = [ maintainers.andersk ];
};
}
@@ -19,10 +19,6 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "doc" ];
separateDebugInfo = stdenv.isLinux && stdenv.hostPlatform.libc != "musl";
preConfigure = lib.optionalString (stdenv.hostPlatform.libc == "musl") ''
export NIX_CFLAGS_COMPILE+=" -D_GNU_SOURCE -DUSE_MMAP -DHAVE_DL_ITERATE_PHDR"
'';
# boehm-gc whitelists GCC threading models
patches = lib.optional stdenv.hostPlatform.isMinGW ./mcfgthread.patch;
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "catch2";
version = "2.13.7";
version = "2.13.8";
src = fetchFromGitHub {
owner = "catchorg";
repo = "Catch2";
rev = "v${version}";
sha256="sha256-NhZ8Hh7dka7KggEKKZyEbIZahuuTYeCT7cYYSUvkPzI=";
sha256="sha256-jOA2TxDgaJUJ2Jn7dVGZUbjmphTDuVZahzSaxfJpRqE=";
};
nativeBuildInputs = [ cmake ];
@@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, cmake, boost, ffmpeg, darwin, zlib }:
{ lib, stdenv, fetchurl, cmake, boost, ffmpeg_4, darwin, zlib }:
stdenv.mkDerivation rec {
pname = "chromaprint";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
buildInputs = [ boost ffmpeg ] ++ lib.optionals stdenv.isDarwin
buildInputs = [ boost ffmpeg_4 ] ++ lib.optionals stdenv.isDarwin
(with darwin.apple_sdk.frameworks; [Accelerate CoreGraphics CoreVideo zlib]);
cmakeFlags = [ "-DBUILD_EXAMPLES=ON" "-DBUILD_TOOLS=ON" ];
+2 -2
View File
@@ -7,11 +7,11 @@
stdenv.mkDerivation rec {
pname = "expat";
version = "2.4.2";
version = "2.4.4";
src = fetchurl {
url = "https://github.com/libexpat/libexpat/releases/download/R_${lib.replaceStrings ["."] ["_"] version}/${pname}-${version}.tar.xz";
sha256 = "sha256-vC/1j0nCmqx7/3BabBZ6gh8mxRIHn/CKxDL9D9ybsZk=";
sha256 = "sha256-tdJdbjczUcLtGbVitHMtAdJYmsjI6eeWLY3xIHzDEbg=";
};
outputs = [ "out" "dev" ]; # TODO: fix referrers
+1 -1
View File
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
meta = {
description = "An open source MPEG-4 and MPEG-2 AAC decoder";
license = licenses.gpl2;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ codyopel ];
platforms = platforms.all;
};
@@ -62,5 +62,7 @@ stdenv.mkDerivation rec {
description = "Audio/Video Communications Framework formely known as farsight";
platforms = platforms.linux;
license = licenses.lgpl21;
# no longer compatible with gstreamer 1.20
broken = true;
};
}
@@ -32,7 +32,6 @@
, avdeviceLibrary ? true # Build avdevice library
, avfilterLibrary ? true # Build avfilter library
, avformatLibrary ? true # Build avformat library
, avresampleLibrary ? true # Build avresample library
, avutilLibrary ? true # Build avutil library
, postprocLibrary ? true # Build postproc library
, swresampleLibrary ? true # Build swresample library
@@ -100,6 +99,7 @@
, libxcbshapeExtlib ? true # X11 grabbing shape rendering
, libXv ? null # Xlib support
, libXext ? null # Xlib support
, libxml2 ? null # libxml2 support, for IMF and DASH demuxers
, xz ? null # xz-utils
, nvenc ? !stdenv.isDarwin && !stdenv.isAarch64, nv-codec-headers ? null # NVIDIA NVENC support
, openal ? null # OpenAL 1.1 capture support
@@ -225,7 +225,6 @@ assert avdeviceLibrary -> avformatLibrary
&& avcodecLibrary
&& avutilLibrary; # configure flag since 0.6
assert avformatLibrary -> avcodecLibrary && avutilLibrary; # configure flag since 0.6
assert avresampleLibrary -> avutilLibrary;
assert postprocLibrary -> avutilLibrary;
assert swresampleLibrary -> soxr != null;
assert swscaleLibrary -> avutilLibrary;
@@ -304,7 +303,6 @@ stdenv.mkDerivation rec {
(enableFeature avdeviceLibrary "avdevice")
(enableFeature avfilterLibrary "avfilter")
(enableFeature avformatLibrary "avformat")
(enableFeature avresampleLibrary "avresample")
(enableFeature avutilLibrary "avutil")
(enableFeature (postprocLibrary && gplLicensing) "postproc")
(enableFeature swresampleLibrary "swresample")
@@ -375,6 +373,7 @@ stdenv.mkDerivation rec {
(enableFeature libxcbshmExtlib "libxcb-shm")
(enableFeature libxcbxfixesExtlib "libxcb-xfixes")
(enableFeature libxcbshapeExtlib "libxcb-shape")
(enableFeature (libxml2 != null) "libxml2")
(enableFeature (xz != null) "lzma")
(enableFeature nvenc "nvenc")
(enableFeature (openal != null) "openal")
@@ -432,7 +431,7 @@ stdenv.mkDerivation rec {
bzip2 celt dav1d fontconfig freetype frei0r fribidi game-music-emu gnutls gsm
libjack2 ladspaH lame libaom libass libbluray libbs2b libcaca libdc1394 libmodplug libmysofa
libogg libopus librsvg libssh libtheora libvdpau libvorbis libvpx libwebp libX11
libxcb libXv libXext xz openal openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr
libxcb libXv libXext libxml2 xz openal openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr
samba SDL2 soxr speex srt vid-stab vo-amrwbenc x264 x265 xavs xvidcore
zeromq4 zimg zlib openh264
] ++ optionals openglExtlib [ libGL libGLU ]
@@ -454,7 +453,7 @@ stdenv.mkDerivation rec {
checkPhase = let
ldLibraryPathEnv = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
in ''
${ldLibraryPathEnv}="libavcodec:libavdevice:libavfilter:libavformat:libavresample:libavutil:libpostproc:libswresample:libswscale:''${${ldLibraryPathEnv}}" \
${ldLibraryPathEnv}="libavcodec:libavdevice:libavfilter:libavformat:libavutil:libpostproc:libswresample:libswscale:''${${ldLibraryPathEnv}}" \
make check -j$NIX_BUILD_CORES
'';
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "ffmpegthumbnailer";
version = "2.2.2";
version = "unstable-2021-09-02";
src = fetchFromGitHub {
owner = "dirkvdb";
repo = "ffmpegthumbnailer";
rev = version;
sha256 = "1bakbr714j7yxdal1f5iq0gcl4cxggbbgj227ihdh5kvygqlwich";
rev = "d92e191dd793b12cee0a0f685f5a8d8252988399";
sha256 = "1ysfq3g74b8ivivrdpfi4vm23d3cyc3rfla5i6y8q9aycis9xv6q";
};
nativeBuildInputs = [ cmake pkg-config ];
+2 -2
View File
@@ -3,7 +3,7 @@
, fetchFromGitHub
, autoreconfHook
, pkg-config
, ffmpeg
, ffmpeg_4
, zlib
}:
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
'';
buildInputs = [
ffmpeg
ffmpeg_4
zlib
];
+5 -9
View File
@@ -3,7 +3,7 @@
, lib
, gfortran
, perl
, llvmPackages ? null
, llvmPackages
, precision ? "double"
, enableAvx ? stdenv.hostPlatform.avxSupport
, enableAvx2 ? stdenv.hostPlatform.avx2Support
@@ -11,24 +11,20 @@
, enableFma ? stdenv.hostPlatform.fmaSupport
, enableMpi ? false
, mpi
, withDoc ? stdenv.cc.isGNU
}:
with lib;
assert stdenv.cc.isClang -> llvmPackages != null;
assert elem precision [ "single" "double" "long-double" "quad-precision" ];
let
stdenv.mkDerivation rec {
pname = "fftw-${precision}";
version = "3.3.10";
withDoc = stdenv.cc.isGNU;
in
stdenv.mkDerivation {
name = "fftw-${precision}-${version}";
src = fetchurl {
urls = [
"http://fftw.org/fftw-${version}.tar.gz"
"https://fftw.org/fftw-${version}.tar.gz"
"ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz"
];
sha256 = "sha256-VskyVJhSzdz6/as4ILAgDHdCZ1vpIXnlnmIVs0DiZGc=";
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
# Hardcode paths used by Flatpak itself.
(substituteAll {
src = ./fix-paths.patch;
p11kit = "${p11-kit.dev}/bin/p11-kit";
p11kit = "${p11-kit.bin}/bin/p11-kit";
})
# Adapt paths exposed to sandbox for NixOS.
@@ -1,37 +0,0 @@
{ lib, stdenv, fetchurl, xlibsWrapper, imlib2 }:
stdenv.mkDerivation rec {
pname = "giblib";
version = "1.2.4";
src = fetchurl {
url = "http://linuxbrit.co.uk/downloads/giblib-${version}.tar.gz";
sha256 = "1b4bmbmj52glq0s898lppkpzxlprq9aav49r06j2wx4dv3212rhp";
};
outputs = [ "out" "dev" ];
setOutputFlags = false;
preConfigure = ''
configureFlagsArray+=(
--includedir=$dev/include
)
'';
buildInputs = [ xlibsWrapper ];
propagatedBuildInputs = [ imlib2 ];
postFixup = ''
moveToOutput bin/giblib-config "$dev"
# Doesn't contain useful stuff
rm -rf $out/share/doc
'';
meta = {
homepage = "http://linuxbrit.co.uk/giblib/";
description = "wrapper library for imlib2, and other stuff";
platforms = lib.platforms.unix;
license = lib.licenses.mit;
};
}
@@ -46,6 +46,15 @@ stdenv.mkDerivation rec {
src = ./absolute_shlib_path.patch;
inherit nixStoreDir;
})
# Fix build with meson 0.61.0
(fetchurl {
url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/827494d6415b696a98fa195cbd883b50cc893bfc.patch";
sha256 = "sha256-imVWzU760FRsX+eXREQDQ6mDcmzZ5ASLT9rBf4oyBGQ=";
})
(fetchurl {
url = "https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/effb1e09dee263cdac4ec593e8caf316e6f01fe2.patch";
sha256 = "sha256-o7a0qDT5IYcYcz8toeZu+nPj3SwS52sNgmxgzsmlp4Q=";
})
] ++ lib.optionals x11Support [
# Hardcode the cairo shared library path in the Cairo gir shipped with this package.
# https://github.com/NixOS/nixpkgs/issues/34080
@@ -8,18 +8,20 @@
, python3
, gst-plugins-base
, orc
, gstreamer
, gobject-introspection
, enableZbar ? false
, faacSupport ? false
, faac
, faad2
, ldacbt
, libass
, libkate
, libmms
, lrdf
, ladspaH
, libnice
, webrtc-audio-processing
, webrtc-audio-processing_1
, lilv
, lv2
, serd
@@ -27,7 +29,7 @@
, sratom
, libbs2b
, libmodplug
, mpeg2dec
, libmpeg2
, libmicrodns
, openjpeg
, libopus
@@ -39,6 +41,7 @@
, fdk_aac
, flite
, gsm
, json-glib
, libaom
, libdc1394
, libde265
@@ -46,7 +49,7 @@
, libdvdnav
, libdvdread
, libgudev
, libofa
, qrencode
, libsndfile
, libusb1
, neon
@@ -88,24 +91,20 @@
, CoreVideo
, Foundation
, MediaToolbox
, enableGplPlugins ? true
}:
stdenv.mkDerivation rec {
pname = "gst-plugins-bad";
version = "1.18.5";
version = "1.20.0";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-oWSSO5Tw0IV4pvyuqsbgwF2niKRpA6EIaHDpykWtZ44=";
sha256 = "sha256-AVuNTZo5Xr9ETUCHaGeiA03TMEs61IvDoN0MHucdwR0=";
};
patches = [
# Use pkgconfig to inject the includedirs
./fix_pkgconfig_includedir.patch
];
nativeBuildInputs = [
meson
ninja
@@ -113,6 +112,7 @@ stdenv.mkDerivation rec {
orc # for orcc
python3
gettext
gstreamer # for gst-tester-1.0
gobject-introspection
] ++ lib.optionals stdenv.isLinux [
wayland # for wayland-scanner
@@ -124,14 +124,14 @@ stdenv.mkDerivation rec {
# gobject-introspection has to be in both nativeBuildInputs and
# buildInputs. The build tries to link against libgirepository-1.0.so
gobject-introspection
faad2
json-glib
ldacbt
libass
libkate
libmms
webrtc-audio-processing # webrtc
webrtc-audio-processing # required by webrtcdsp
#webrtc-audio-processing_1 # required by isac
libbs2b
libmodplug
mpeg2dec
libmicrodns
openjpeg
libopenmpt
@@ -145,9 +145,9 @@ stdenv.mkDerivation rec {
libde265
libdvdnav
libdvdread
qrencode
libsndfile
libusb1
mjpegtools
neon
openal
opencv4
@@ -166,7 +166,6 @@ stdenv.mkDerivation rec {
libGLU
libgme
openssl
x265
libxml2
libintl
srt
@@ -175,6 +174,11 @@ stdenv.mkDerivation rec {
zbar
] ++ lib.optionals faacSupport [
faac
] ++ lib.optionals enableGplPlugins [
libmpeg2
mjpegtools
faad2
x265
] ++ lib.optionals stdenv.isLinux [
bluez
libva # vaapi requires libva -> libdrm -> libpciaccess, which is Linux-only in nixpkgs
@@ -193,7 +197,6 @@ stdenv.mkDerivation rec {
libdrm
libgudev
libnice
libofa
sbc
spandsp
@@ -229,7 +232,7 @@ stdenv.mkDerivation rec {
"-Ddts=disabled" # required `libdca` library not packaged in nixpkgs as of writing, and marked as "BIG FAT WARNING: libdca is still in early development"
"-Dzbar=${if enableZbar then "enabled" else "disabled"}"
"-Dfaac=${if faacSupport then "enabled" else "disabled"}"
"-Diqa=disabled" # required `dssim` library not packaging in nixpkgs as of writing
"-Diqa=disabled" # required `dssim` library not packaging in nixpkgs as of writing, also this is AGPL so update license when adding support
"-Dmagicleap=disabled" # required `ml_audio` library not packaged in nixpkgs as of writing
"-Dmsdk=disabled" # not packaged in nixpkgs as of writing / no Windows support
# As of writing, with `libmpcdec` in `buildInputs` we get
@@ -255,6 +258,10 @@ stdenv.mkDerivation rec {
"-Dwasapi2=disabled" # not packaged in nixpkgs as of writing / no Windows support
"-Dwpe=disabled" # required `wpe-webkit` library not packaged in nixpkgs as of writing
"-Dzxing=disabled" # required `zxing-cpp` library not packaged in nixpkgs as of writing
"-Disac=disabled" # depends on `webrtc-audio-coding-1` not compatible with 0.3
"-Dgs=disabled" # depends on `google-cloud-cpp`
"-Donnx=disabled" # depends on `libonnxruntime` not packaged in nixpkgs as of writing
"-Dopenaptx=disabled" # depends on older version of `libopenaptx` due to licensing conflict https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2235
]
++ lib.optionals (!stdenv.isLinux) [
"-Dva=disabled" # see comment on `libva` in `buildInputs`
@@ -286,7 +293,17 @@ stdenv.mkDerivation rec {
"-Dapplemedia=disabled"
] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
"-Dintrospection=disabled"
];
] ++ (if enableGplPlugins then [
"-Dgpl=enabled"
] else [
"-Ddts=disabled"
"-Dfaad=disabled"
"-Diqa=disabled"
"-Dmpeg2enc=disabled"
"-Dmplex=disabled"
"-Dresindvd=disabled"
"-Dx265=disabled"
]);
# Argument list too long
strictDeps = true;
@@ -311,7 +328,7 @@ stdenv.mkDerivation rec {
something - be it a good code review, some documentation, a set of tests,
a real live maintainer, or some actual wide use.
'';
license = licenses.lgpl2Plus;
license = if enableGplPlugins then licenses.gpl2Plus else licenses.lgpl2Plus;
platforms = platforms.linux ++ platforms.darwin;
maintainers = with maintainers; [ matthewbauer ];
};
@@ -1,15 +0,0 @@
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
index 271f327f3..7e2afa754 100644
--- a/pkgconfig/meson.build
+++ b/pkgconfig/meson.build
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', join_paths(get_option('prefix')))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
pkgconf.set('GST_API_VERSION', api_version)
pkgconf.set('VERSION', gst_version)
@@ -41,19 +41,15 @@
stdenv.mkDerivation rec {
pname = "gst-plugins-base";
version = "1.18.5";
version = "1.20.0";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-lgt69FhXANsP3VuENVThHiVk/tngYfWR+uiKe+ZEb6M=";
sha256 = "sha256-TLZvzPcwsQN+ZTOGLCEomQkSpttOW70U4O+RRFDrTHw=";
};
patches = [
./fix_pkgconfig_includedir.patch
];
nativeBuildInputs = [
meson
ninja
@@ -120,7 +116,7 @@ stdenv.mkDerivation rec {
postPatch = ''
patchShebangs \
common/scangobj-merge.py \
scripts/meson-pkg-config-file-fixup.py \
scripts/extract-release-date-from-doap-file.py
'';
@@ -1,15 +0,0 @@
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
index 04abfbee5..88c86b431 100644
--- a/pkgconfig/meson.build
+++ b/pkgconfig/meson.build
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', get_option('prefix'))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
pkgconf.set('GST_API_VERSION', api_version)
pkgconf.set('VERSION', gst_version)
pkgconf.set('LIBM', libm.found() ? '-lm' : '')
@@ -21,7 +21,7 @@
stdenv.mkDerivation rec {
pname = "gstreamer";
version = "1.18.5";
version = "1.20.0";
outputs = [
"bin"
@@ -34,13 +34,9 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-VYYiMqY0Wbv1ar694whcqa7CEbR46JHazqTW34yv6Ao=";
sha256 = "sha256-7fS///hVkdT/97Ibue1/D+q8EjrEpO/ynnPLzkVPnbc=";
};
patches = [
./fix_pkgconfig_includedir.patch
];
nativeBuildInputs = [
meson
ninja
@@ -1,17 +0,0 @@
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
index edb0586c2..7ed46dfce 100644
--- a/pkgconfig/meson.build
+++ b/pkgconfig/meson.build
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', join_paths(get_option('prefix')))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('libexecdir', '${prefix}/@0@'.format(get_option('libexecdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
+pkgconf.set('libexecdir', join_paths(get_option('prefix'), get_option('libexecdir')))
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
pkgconf.set('GST_API_VERSION', apiversion)
pkgconf.set('VERSION', gst_version)
pkgconf.set('LIBM', mathlib.found() ? '-lm' : '')
@@ -1,5 +1,6 @@
{ lib, stdenv
, fetchurl
, cairo
, meson
, ninja
, pkg-config
@@ -12,17 +13,13 @@
stdenv.mkDerivation rec {
pname = "gst-devtools";
version = "1.18.5";
version = "1.20.0";
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-/s/8hkR9r1wqBoQ8dXqZHXRcqiBpRGoNdG6ZsT98sHk=";
sha256 = "sha256-afyHVuydk+XFJYyZCIQ08gPpH9vFryjR8sWD/YGbeh0=";
};
patches = [
./fix_pkgconfig_includedir.patch
];
outputs = [
"out"
"dev"
@@ -40,6 +37,7 @@ stdenv.mkDerivation rec {
];
buildInputs = [
cairo
python3
json-glib
];
@@ -1,15 +0,0 @@
diff --git a/validate/pkgconfig/meson.build b/validate/pkgconfig/meson.build
index a612b21b..c017eaff 100644
--- a/validate/pkgconfig/meson.build
+++ b/validate/pkgconfig/meson.build
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', get_option('prefix'))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
pkgconf.set('GST_API_VERSION', apiversion)
pkgconf.set('VERSION', gst_version)
@@ -16,7 +16,7 @@
stdenv.mkDerivation rec {
pname = "gst-editing-services";
version = "1.18.5";
version = "1.20.0";
outputs = [
"out"
@@ -26,13 +26,9 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-ivSoOU0FHz4YKAaG20mm76zMlcDFmhfw9WTjIABZDfU=";
sha256 = "sha256-+Detz0Bz0ZpZCJhOh5zQOfQZLKNo5x056MzYpWuf7t8=";
};
patches = [
./fix_pkgconfig_includedir.patch
];
nativeBuildInputs = [
meson
ninja
@@ -1,15 +0,0 @@
diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
index a612b21b..c017eaff 100644
--- a/pkgconfig/meson.build
+++ b/pkgconfig/meson.build
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', get_option('prefix'))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
pkgconf.set('GST_API_VERSION', apiversion)
pkgconf.set('VERSION', gst_version)
@@ -48,13 +48,13 @@ assert raspiCameraSupport -> (stdenv.isLinux && stdenv.isAarch64);
stdenv.mkDerivation rec {
pname = "gst-plugins-good";
version = "1.18.5";
version = "1.20.0";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-Oq7up3Zfv4gBrM5KUDqbBfc/BOijU1Lp0AIyz9VVeWs=";
sha256 = "sha256-LRGcFauMnnn4zTxr9YL/egULKMyuUqtIZeGhRkmRZZw=";
};
nativeBuildInputs = [
@@ -5,6 +5,7 @@
, ninja
, pkg-config
, python3
, gstreamer
, gst-plugins-base
, gettext
, libav
@@ -15,11 +16,11 @@
stdenv.mkDerivation rec {
pname = "gst-libav";
version = "1.18.5";
version = "1.20.0";
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-gi4AipEOndE67b3Y3GP+3vQEDA7i6Se6sxEuneaTpUg=";
sha256 = "sha256-Xu5e2NUIKjG1AESOQVNcci7jDNX4Ik8ymCu6ui7t7xc=";
};
outputs = [ "out" "dev" ];
@@ -33,6 +34,7 @@ stdenv.mkDerivation rec {
];
buildInputs = [
gstreamer
gst-plugins-base
libav
];
@@ -1,4 +1,5 @@
{ lib, stdenv
{ stdenv
, lib
, fetchurl
, meson
, ninja
@@ -12,11 +13,11 @@
stdenv.mkDerivation rec {
pname = "gst-rtsp-server";
version = "1.18.5";
version = "1.20.0";
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-BNY79IgWxvQcc/beD5EqfO8KqznEQWKnvOzhkj38nR8=";
sha256 = "sha256-wgn17ZBtpxP91EqIROkJqmyK89+2MCWbCSz7d6d1WEM=";
};
outputs = [
@@ -25,15 +26,6 @@ stdenv.mkDerivation rec {
# "devdoc" # disabled until `hotdoc` is packaged in nixpkgs
];
patches = [
# To use split outputs, we need this so double prefix won't be used in the
# pkg-config files. Hopefully, this won't be needed on the next release,
# _if_
# https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/merge_requests/1
# will be merged. For the current release, this merge request won't apply.
./fix_pkgconfig_includedir.patch
];
nativeBuildInputs = [
meson
ninja
@@ -1,15 +0,0 @@
diff --git i/pkgconfig/meson.build w/pkgconfig/meson.build
index 8ed8299..594cbfe 100644
--- i/pkgconfig/meson.build
+++ w/pkgconfig/meson.build
@@ -2,8 +2,8 @@ pkgconf = configuration_data()
pkgconf.set('prefix', get_option('prefix'))
pkgconf.set('exec_prefix', '${prefix}')
-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
+pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
+pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
pkgconf.set('GST_API_VERSION', api_version)
pkgconf.set('VERSION', gst_version)
@@ -19,17 +19,18 @@
, IOKit
, CoreFoundation
, DiskArbitration
, enableGplPlugins ? true
}:
stdenv.mkDerivation rec {
pname = "gst-plugins-ugly";
version = "1.18.5";
version = "1.20.0";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-3zKAPpj4qZeTc/osp+BeYvl3sQl1dtOoBhnZ9cafZtk=";
sha256 = "sha256-To3LXSZVLwpJN/a8Ynm9kHD1XKauDqoy1y0mTEQAHC4=";
};
nativeBuildInputs = [
@@ -43,14 +44,15 @@ stdenv.mkDerivation rec {
buildInputs = [
gst-plugins-base
orc
libintl
opencore-amr
] ++ lib.optionals enableGplPlugins [
a52dec
libcdio
libdvdread
libmad
libmpeg2
x264
libintl
opencore-amr
] ++ lib.optionals stdenv.isDarwin [
IOKit
CoreFoundation
@@ -60,7 +62,16 @@ stdenv.mkDerivation rec {
mesonFlags = [
"-Ddoc=disabled" # `hotdoc` not packaged in nixpkgs as of writing
"-Dsidplay=disabled" # sidplay / sidplay/player.h isn't packaged in nixpkgs as of writing
];
] ++ (if enableGplPlugins then [
"-Dgpl=enabled"
] else [
"-Da52dec=disabled"
"-Dcdio=disabled"
"-Ddvdread=disabled"
"-Dmpeg2dec=disabled"
"-Dsidplay=disabled"
"-Dx264=disabled"
]);
postPatch = ''
patchShebangs \
@@ -76,7 +87,7 @@ stdenv.mkDerivation rec {
the plug-ins or the supporting libraries might not be how we'd
like. The code might be widely known to present patent problems.
'';
license = licenses.lgpl2Plus;
license = if enableGplPlugins then licenses.gpl2Plus else licenses.lgpl2Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ matthewbauer ];
};
@@ -21,11 +21,11 @@
stdenv.mkDerivation rec {
pname = "gstreamer-vaapi";
version = "1.18.5";
version = "1.20.0";
src = fetchurl {
url = "https://gstreamer.freedesktop.org/src/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-SkYPuVVZ9BRE6ySGStLZ43kitu6pQVEDEDGfw+C6cns=";
sha256 = "sha256-95pHNG39XlheBj53B45fxJiwbe6JW/y/R9iGP8rJ6jI=";
};
outputs = [
@@ -24,7 +24,7 @@
}:
let
version = "3.1.2";
version = "3.2.0";
inherit (lib) optional optionals optionalString;
mesonFeatureFlag = opt: b:
"-D${opt}=${if b then "enabled" else "disabled"}";
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
owner = "harfbuzz";
repo = "harfbuzz";
rev = version;
sha256 = "sha256-1xndbJhx+1AzJNnpvvdEcBHPZMPaMI03h6sG2h1d3qs=";
sha256 = "sha256-iNYp/hyJTaaF6e09YpUL7ktBhq2wRN9zKiEH59WLbYU=";
};
postPatch = ''
@@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "hidapi";
version = "0.11.0";
version = "0.11.2";
src = fetchFromGitHub {
owner = "libusb";
repo = "hidapi";
rev = "${pname}-${version}";
sha256 = "0dzigvmwbg20b33xn0sklnf489m8g84yrcm8kqlrsd7x8iymsg63";
sha256 = "sha256-zSAhnvnDI3+q8VwZ8fIx/YmvwTpL87PBJ2C1mTmD7Ko=";
};
nativeBuildInputs = [ cmake pkg-config ];
+5 -13
View File
@@ -12,11 +12,11 @@ let
in
stdenv.mkDerivation rec {
pname = "imlib2";
version = "1.7.3";
version = "1.7.5";
src = fetchurl {
url = "mirror://sourceforge/enlightenment/${pname}-${version}.tar.bz2";
sha256 = "sha256-FY0LjCC8ESIa+ed6ZKEW/KcFGwPN6ixPMdMfRpOC+Zc=";
url = "mirror://sourceforge/enlightenment/${pname}-${version}.tar.xz";
hash = "sha256-RY2DAKp6bUzjU1GDi7pdn9+wiES9WxU8WTjs/kP/Ngo=";
};
buildInputs = [
@@ -28,11 +28,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
preConfigure = ''
substituteInPlace imlib2-config.in \
--replace "@my_libs@" ""
'';
# Do not build amd64 assembly code on Darwin, because it fails to compile
# with unknow directive errors
configureFlags = optional stdenv.isDarwin "--enable-amd64=no"
@@ -40,10 +35,6 @@ stdenv.mkDerivation rec {
outputs = [ "bin" "out" "dev" ];
postInstall = ''
moveToOutput bin/imlib2-config "$dev"
'';
meta = with lib; {
description = "Image manipulation library";
@@ -56,7 +47,8 @@ stdenv.mkDerivation rec {
'';
homepage = "https://docs.enlightenment.org/api/imlib2/html";
license = licenses.mit;
changelog = "https://git.enlightenment.org/legacy/imlib2.git/plain/ChangeLog?h=v${version}";
license = licenses.imlib2;
platforms = platforms.unix;
maintainers = with maintainers; [ spwhitt ];
};
@@ -59,23 +59,24 @@ xdgDataSubdirs=( \
"wallpapers" "applications" "desktop-directories" "mime" "appdata" "dbus-1" \
)
ecmHostPathSeen=( )
# ecmHostPathsSeen is an associative array of the paths that have already been
# seen by ecmHostPathHook.
declare -gA ecmHostPathsSeen
ecmUnseenHostPath() {
for pkg in "${ecmHostPathSeen[@]}"
do
if [ "${pkg:?}" == "$1" ]
then
return 1
fi
done
ecmHostPathSeen+=("$1")
return 0
ecmHostPathIsNotSeen() {
if [[ -n "${ecmHostPathsSeen["$1"]:-}" ]]; then
# The path has been seen before.
return 1
else
# The path has not been seen before.
# Now it is seen, so record it.
ecmHostPathsSeen["$1"]=1
return 0
fi
}
ecmHostPathHook() {
ecmUnseenHostPath "$1" || return 0
ecmHostPathIsNotSeen "$1" || return 0
local xdgConfigDir="$1/etc/xdg"
if [ -d "$xdgConfigDir" ]
@@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/frameworks/5.89/ -A '*.tar.xz' )
WGET_ARGS=( https://download.kde.org/stable/frameworks/5.90/ -A '*.tar.xz' )
+332 -332
View File
@@ -4,667 +4,667 @@
{
attica = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/attica-5.89.0.tar.xz";
sha256 = "03q2ajvwrl1x6h0jcvc6nh0avj7dqhx4k1lx5qa3xgfxwk01kgp9";
name = "attica-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/attica-5.90.0.tar.xz";
sha256 = "0zs37qyh9biafk76ps2xfc41hbd1n4dq42qqqcvbqcrwfgqz2wlk";
name = "attica-5.90.0.tar.xz";
};
};
baloo = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/baloo-5.89.0.tar.xz";
sha256 = "091gjzn4armm4xs61csavwgij54mv8v9hx3gvva18g06gjkajyis";
name = "baloo-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/baloo-5.90.0.tar.xz";
sha256 = "1nnfys8dyiivd2if81qrgrmpprfni77an9l3wff0l5k85ac86i56";
name = "baloo-5.90.0.tar.xz";
};
};
bluez-qt = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/bluez-qt-5.89.0.tar.xz";
sha256 = "00wczjvvhxzi12ijf65d66x36gm0x6j5z3b6cwqgdz2s66wr0jw5";
name = "bluez-qt-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/bluez-qt-5.90.0.tar.xz";
sha256 = "056i5ndrg5fqm1bx49a0plfhlladphha128wi766zdhcm6np11z3";
name = "bluez-qt-5.90.0.tar.xz";
};
};
breeze-icons = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/breeze-icons-5.89.0.tar.xz";
sha256 = "12l2wzc3pah5qapznriaffh4wz97s6nqxlj9i119k9qw295d6wfw";
name = "breeze-icons-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/breeze-icons-5.90.0.tar.xz";
sha256 = "06dfh571rf8gp4gnnqn13xqgc1bpc4ycn6bmxf38x53fxxfl3fnn";
name = "breeze-icons-5.90.0.tar.xz";
};
};
extra-cmake-modules = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/extra-cmake-modules-5.89.0.tar.xz";
sha256 = "0bzhd6xcphrcnbg8ylx91rq5y3vvl3jfcgik19bvh8sr4ad25mrx";
name = "extra-cmake-modules-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/extra-cmake-modules-5.90.0.tar.xz";
sha256 = "1c5wza7srib3mdkf29ygmyj5b6jq322s6h7k5hlljqm5xhy7q07k";
name = "extra-cmake-modules-5.90.0.tar.xz";
};
};
frameworkintegration = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/frameworkintegration-5.89.0.tar.xz";
sha256 = "0f7cqxmgnwi4n8fa8vifqaysbk7839x1qbmp9qfa998jxnn1w92f";
name = "frameworkintegration-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/frameworkintegration-5.90.0.tar.xz";
sha256 = "1v7vlq2gk7j5b6gzbawgnpii7csh2zclp5v24qhx4qrmpfssylan";
name = "frameworkintegration-5.90.0.tar.xz";
};
};
kactivities = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kactivities-5.89.0.tar.xz";
sha256 = "1dhxl487246kpx4w5zhhdgk94jwns09dvragvh2bb787mszqq5v9";
name = "kactivities-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kactivities-5.90.0.tar.xz";
sha256 = "0wf7nnf3bjz2iq2wqxnyay1100ks0zscsh7sa8xfcijrl7pp305w";
name = "kactivities-5.90.0.tar.xz";
};
};
kactivities-stats = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kactivities-stats-5.89.0.tar.xz";
sha256 = "1pp3vkkadaday0pzd09hdhccw6hbrqp481hcdzzyqj1x2ckb59bj";
name = "kactivities-stats-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kactivities-stats-5.90.0.tar.xz";
sha256 = "0qamy8xggjlnm8pkv6vxbaagcp1hg9vgi2ws2yb9xpqk8mdlfbvp";
name = "kactivities-stats-5.90.0.tar.xz";
};
};
kapidox = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kapidox-5.89.0.tar.xz";
sha256 = "0a3vwh3rzpcaylz77fs4biiadljchs2lfh6svg149yg95yqwng3b";
name = "kapidox-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kapidox-5.90.0.tar.xz";
sha256 = "16jl519sx7pirjp5x57x5gbgv477457063rrbwpvyf2ldb6lc29p";
name = "kapidox-5.90.0.tar.xz";
};
};
karchive = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/karchive-5.89.0.tar.xz";
sha256 = "1s45mns9km1fy2d07d2nmslf4dc2pl5i169ncq2dc7vabjvyh59b";
name = "karchive-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/karchive-5.90.0.tar.xz";
sha256 = "0411rpgr9dy0zf9mmhj7n7ax0afrn7zvkpzpnjvpvvqsrfkz7qm6";
name = "karchive-5.90.0.tar.xz";
};
};
kauth = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kauth-5.89.0.tar.xz";
sha256 = "1ys9xr7js8rj07ff7ncp9d52rcn10bg49jcyg4ldam07bfpq36nz";
name = "kauth-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kauth-5.90.0.tar.xz";
sha256 = "1g4i1prspcczpx25wvd8lgdk8c3my7kp3wv489gvcci40rl5z913";
name = "kauth-5.90.0.tar.xz";
};
};
kbookmarks = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kbookmarks-5.89.0.tar.xz";
sha256 = "16bh5daimpjwy0gz56v32vslnmzmyfsf8z92s5gi13bkjfp03syn";
name = "kbookmarks-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kbookmarks-5.90.0.tar.xz";
sha256 = "1svc1i9zxbxf65crfhnv6sz5gknb7x87lzjd8cn11y5lwnsw36kx";
name = "kbookmarks-5.90.0.tar.xz";
};
};
kcalendarcore = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcalendarcore-5.89.0.tar.xz";
sha256 = "1xy045d5jl3qk9ka13ximk7x70q5pswh143kqk7cf6x0f7bvgpap";
name = "kcalendarcore-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcalendarcore-5.90.0.tar.xz";
sha256 = "0qbds2ysjv9rqwpvrhisvdd6wyhq5qwhbw5xcbj7ndxwpf8lpa8w";
name = "kcalendarcore-5.90.0.tar.xz";
};
};
kcmutils = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcmutils-5.89.0.tar.xz";
sha256 = "0za9x8v9lnwyib1gip6wbmda19wfjaf2yh6yiqlszxcbsfq7kzhm";
name = "kcmutils-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcmutils-5.90.0.tar.xz";
sha256 = "04crq3j48xwlvp047p3waqrv1gg5sv1950jh02w85q00yjjh0qxk";
name = "kcmutils-5.90.0.tar.xz";
};
};
kcodecs = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcodecs-5.89.0.tar.xz";
sha256 = "1j2pmsyi8lvhnzhrrvsm98x7inf503vr2b58yl070zp293fyhd9q";
name = "kcodecs-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcodecs-5.90.0.tar.xz";
sha256 = "0kwqyhjs63pqslqcmv3sngyqvl6ah8iaa6nn045sb8a58xb09inh";
name = "kcodecs-5.90.0.tar.xz";
};
};
kcompletion = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcompletion-5.89.0.tar.xz";
sha256 = "0bv9kxrdprk1jvsf9mqkag0pkq7h1wngdpvdx9wfy4kkbj7y46zf";
name = "kcompletion-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcompletion-5.90.0.tar.xz";
sha256 = "0hd3nsixibw5z846mpib2lap3ar65rqvasifdnlmqsrvxfmw0ggk";
name = "kcompletion-5.90.0.tar.xz";
};
};
kconfig = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kconfig-5.89.0.tar.xz";
sha256 = "0ixil0qyd8byn4ix5w9mp5kdvkscnwhamknrnbqzikhmmknprccf";
name = "kconfig-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kconfig-5.90.0.tar.xz";
sha256 = "0yqs3ydxzhhb7rrl01swjc9xw8j1bs3n204bf9slb2bs7lfz56rn";
name = "kconfig-5.90.0.tar.xz";
};
};
kconfigwidgets = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kconfigwidgets-5.89.0.tar.xz";
sha256 = "0rzqx2knc8bc26jyislb1dw5qdhmkga3cqlyiyynbawx3scind60";
name = "kconfigwidgets-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kconfigwidgets-5.90.0.tar.xz";
sha256 = "1sm1x64x2v3xfcz9ia6qk8d8y1q02fggrc2q0yy5ag5xh1yr9zwq";
name = "kconfigwidgets-5.90.0.tar.xz";
};
};
kcontacts = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcontacts-5.89.0.tar.xz";
sha256 = "1yjgrzn3bx8fzmr6mjd2c99gxlh0nqm1fi3sgmcn1bj07jdrp52r";
name = "kcontacts-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcontacts-5.90.0.tar.xz";
sha256 = "0vv2136da5a6lwdj2x38jx2qwrk96hgn8iwaad4yynvc2csx6dim";
name = "kcontacts-5.90.0.tar.xz";
};
};
kcoreaddons = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcoreaddons-5.89.0.tar.xz";
sha256 = "0ss27wz8z2lfhn0njads2rwd62aciamr0vcbj4gyfiv2ddw8bl71";
name = "kcoreaddons-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcoreaddons-5.90.0.tar.xz";
sha256 = "02m4h4r0kdy94zq8c6d2fhnd8qwrp4a0v5i4wf6khk4yf4fqy5kf";
name = "kcoreaddons-5.90.0.tar.xz";
};
};
kcrash = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kcrash-5.89.0.tar.xz";
sha256 = "07pc449qqvz6rfs1wk6r2jgfncpliig8c1cxzhbkzqrkcf1gj6ba";
name = "kcrash-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kcrash-5.90.0.tar.xz";
sha256 = "0634jqzbvr8xkv53n2q3fcqlkcmq843w7g455v3swnlaqi92l04f";
name = "kcrash-5.90.0.tar.xz";
};
};
kdav = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kdav-5.89.0.tar.xz";
sha256 = "1wyg6bxfp1r1snk40y6q70ix00aqwx4sl4z7jrg12h38cnc8sa6v";
name = "kdav-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kdav-5.90.0.tar.xz";
sha256 = "0181ray8vigmwlamx4j5dinw10al0g4l965kyx4wjq9k59nxxgbi";
name = "kdav-5.90.0.tar.xz";
};
};
kdbusaddons = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kdbusaddons-5.89.0.tar.xz";
sha256 = "1yh5xx01wsjcj6axcw1r94p32rrs111078prssgnngbrihbhbjzh";
name = "kdbusaddons-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kdbusaddons-5.90.0.tar.xz";
sha256 = "0g609bymfixwaic30y7i0q96anf7pi3galipmjbbfg85ghj9rsa4";
name = "kdbusaddons-5.90.0.tar.xz";
};
};
kdeclarative = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kdeclarative-5.89.0.tar.xz";
sha256 = "18a4rcx60h5j44d79bhr2l46f3lhgnf2x0sb64dr7dcc0m5rmsay";
name = "kdeclarative-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kdeclarative-5.90.0.tar.xz";
sha256 = "1z7zyj6pw2ym3izi19kpgy12mqpar6mbdbsn6jpxy36l6m3jld1y";
name = "kdeclarative-5.90.0.tar.xz";
};
};
kded = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kded-5.89.0.tar.xz";
sha256 = "1rr3g7b60zlx8j7d7k2hlhhv2wa67lakfpyd1zgpy2y3k281hbfl";
name = "kded-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kded-5.90.0.tar.xz";
sha256 = "094g6p87nd5cxcars71315w6zrxjgiw2080p6cf6g72ww54k7sps";
name = "kded-5.90.0.tar.xz";
};
};
kdelibs4support = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kdelibs4support-5.89.0.tar.xz";
sha256 = "1672f75f0wmdrqhx9vynzgflm3ssmngkpp1r5li53ppb11wg6sbr";
name = "kdelibs4support-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kdelibs4support-5.90.0.tar.xz";
sha256 = "0zxc11jbg06qz79ljrd6wl36jp73hafcmbk29d0hcvxnkscg3k29";
name = "kdelibs4support-5.90.0.tar.xz";
};
};
kdesignerplugin = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kdesignerplugin-5.89.0.tar.xz";
sha256 = "0g8y51i70m8s7y829qyqnki57s8d4l3xdpdbn1p2rr1szglj8hvf";
name = "kdesignerplugin-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kdesignerplugin-5.90.0.tar.xz";
sha256 = "18gsy8f32hjadzjnavi3dsknc6hflcnfpr0107lwfc735fd2x2iq";
name = "kdesignerplugin-5.90.0.tar.xz";
};
};
kdesu = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kdesu-5.89.0.tar.xz";
sha256 = "0jmww11l6709cpfriwklhij5izsh948mki9grzzq3jijw8zs0mrx";
name = "kdesu-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kdesu-5.90.0.tar.xz";
sha256 = "1q8k2q7c41fzw9gwx9nq4zjpjdwvh29zyh3zd0w3r2kxf6vhf1wp";
name = "kdesu-5.90.0.tar.xz";
};
};
kdewebkit = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kdewebkit-5.89.0.tar.xz";
sha256 = "0xwd346z928yk4iwykgashc36m2xqnwn49jix5jbk1w57dbia2da";
name = "kdewebkit-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kdewebkit-5.90.0.tar.xz";
sha256 = "19dqlxy2sl822aldqy1jj7fvxabmg97a0av7d5ayzhnbhhy5izx1";
name = "kdewebkit-5.90.0.tar.xz";
};
};
kdnssd = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kdnssd-5.89.0.tar.xz";
sha256 = "0v72g137l8kl2xapfrcrw8w6zmn94h08hvwdggzr9fvgswzdbvsh";
name = "kdnssd-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kdnssd-5.90.0.tar.xz";
sha256 = "17szlqsafz6p4h7s9wascaggn5909c1ig452wy6y4z4402s2lsrr";
name = "kdnssd-5.90.0.tar.xz";
};
};
kdoctools = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kdoctools-5.89.0.tar.xz";
sha256 = "1x8q45y2sgi3d9j79qcx02z2939j52mp1jrs3rjqq42xxvvrlcg1";
name = "kdoctools-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kdoctools-5.90.0.tar.xz";
sha256 = "1l2a9mlcm8np3s8myq0hj08l82284r90yhx3z2gn7h68b8fzyx0s";
name = "kdoctools-5.90.0.tar.xz";
};
};
kemoticons = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kemoticons-5.89.0.tar.xz";
sha256 = "0mcyq20ca6x73jhwwhhwq8jzqpadnazjy5y9dyfa2wz8ijbnjqzw";
name = "kemoticons-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kemoticons-5.90.0.tar.xz";
sha256 = "08mgk56dafj3q9gs69qcx17qfc45s8ifkjrpzg44p8zs0q51q6cb";
name = "kemoticons-5.90.0.tar.xz";
};
};
kfilemetadata = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kfilemetadata-5.89.0.tar.xz";
sha256 = "04abysdijmpdd05grihawpbw8f9h3fhlv3y7wjz76kl66gyqg035";
name = "kfilemetadata-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kfilemetadata-5.90.0.tar.xz";
sha256 = "18y4bn6hz8xa68m0nxv88a1f3xkkks7c7pbiqb1vkrp9bbh52yax";
name = "kfilemetadata-5.90.0.tar.xz";
};
};
kglobalaccel = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kglobalaccel-5.89.0.tar.xz";
sha256 = "0jxxlhmwsgrx1p6w1al9c11bglxn5im181wqih7ds5h2naa7b8kj";
name = "kglobalaccel-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kglobalaccel-5.90.0.tar.xz";
sha256 = "04qd1fcc22x70jacqzrv44q1jg5ldzynlfpw5cg2679409r0wnxw";
name = "kglobalaccel-5.90.0.tar.xz";
};
};
kguiaddons = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kguiaddons-5.89.0.tar.xz";
sha256 = "17mxkk4w4q6bkqblkdinw2b0jdfxhk7xkfy5hw730gjm6is6p861";
name = "kguiaddons-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kguiaddons-5.90.0.tar.xz";
sha256 = "0m9l8xyc7xyj29fzxwp8ahr2l1rzs5rw1c26x446kb7smxvy8awx";
name = "kguiaddons-5.90.0.tar.xz";
};
};
kholidays = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kholidays-5.89.0.tar.xz";
sha256 = "0ry0n73dkjxv7ani753mh8ymy4yblhj841ca5y5kci8wr9h6358w";
name = "kholidays-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kholidays-5.90.0.tar.xz";
sha256 = "1p1kgy110ijk5a3ix4g9y1i7w0gsnzf82jdkwbdza95vibm82iz8";
name = "kholidays-5.90.0.tar.xz";
};
};
khtml = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/khtml-5.89.0.tar.xz";
sha256 = "072pawwp62mx5shh8x4mcpr8h6a24qr82zyyiricz4jba0r7z3yr";
name = "khtml-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/khtml-5.90.0.tar.xz";
sha256 = "1bi839x4dhlkqxmv98pq01725b8i8szdxf9b1hf1jv37fk468mja";
name = "khtml-5.90.0.tar.xz";
};
};
ki18n = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/ki18n-5.89.0.tar.xz";
sha256 = "1zlq0ywd8hnaniwdv3vd76xmv91cdn6pqs6k9y6dz3fayl15p0g6";
name = "ki18n-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/ki18n-5.90.0.tar.xz";
sha256 = "13k8kbkmgdywclcdbfj5ri3gmdblv8yzalmvqd0hn7sym6pkdqfw";
name = "ki18n-5.90.0.tar.xz";
};
};
kiconthemes = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kiconthemes-5.89.0.tar.xz";
sha256 = "1hv8blvvg12agjynl0yvvsl8dfsyk2aa9clmq60igcs5lm4jpvaa";
name = "kiconthemes-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kiconthemes-5.90.0.tar.xz";
sha256 = "0w3wi4xy1yy2s1a927cj4my63q0fqhw06ghy9zjw830m31xwpx1k";
name = "kiconthemes-5.90.0.tar.xz";
};
};
kidletime = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kidletime-5.89.0.tar.xz";
sha256 = "0547yj8yn9nly3bkq3in38ljhwbg0bvj0wp3yxp2dl05wpyvzqfz";
name = "kidletime-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kidletime-5.90.0.tar.xz";
sha256 = "1xzwmk0aqv1lcdi51nl1k0lyiinnqxwla6w0xxmsh6193qa3fpvq";
name = "kidletime-5.90.0.tar.xz";
};
};
kimageformats = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kimageformats-5.89.0.tar.xz";
sha256 = "1m3fl14lzsfl0fam38nnalapc1xhpryf1ibvcm7bgh4g1cm1bvnw";
name = "kimageformats-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kimageformats-5.90.0.tar.xz";
sha256 = "0r3ihkly0hf20aqbn7b9171mzqjna078rksdp96z6f7f1qy99v1v";
name = "kimageformats-5.90.0.tar.xz";
};
};
kinit = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kinit-5.89.0.tar.xz";
sha256 = "1llaqz7yv011k4g1fvy1rzlff8bdgvqwqvh3s3nrqahwq2gx2rr9";
name = "kinit-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kinit-5.90.0.tar.xz";
sha256 = "0z65hfhj68ahjm558p2pj7dlrczcww8f2xyw9f44w10bp3p5hf1a";
name = "kinit-5.90.0.tar.xz";
};
};
kio = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kio-5.89.0.tar.xz";
sha256 = "1ka8s6cj7ms74w4xj6x91hx1ijlh883x3ibjwmbhva6mbzk1z0nx";
name = "kio-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kio-5.90.0.tar.xz";
sha256 = "0ds6465fyzjj2azwdghrkxr9wvih0m96lv4kp6syqwii8nv2w7rs";
name = "kio-5.90.0.tar.xz";
};
};
kirigami2 = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kirigami2-5.89.0.tar.xz";
sha256 = "1jn5c0lhh7hcp81278kagw0r96nri80x9vrg51jg7cs42h7pfp98";
name = "kirigami2-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kirigami2-5.90.0.tar.xz";
sha256 = "0r48n11pv3yqsf11phl19cs52ph5ldabrfmq3xmsvxsknm6c4f9b";
name = "kirigami2-5.90.0.tar.xz";
};
};
kitemmodels = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kitemmodels-5.89.0.tar.xz";
sha256 = "10bag80kjz4x22097z9w1liw73kkirk72266vr0qplyr00jwqi33";
name = "kitemmodels-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kitemmodels-5.90.0.tar.xz";
sha256 = "0f7zlif7kskbwpw8yrzlfyl954b623icdd9qn0algjcc2i9gqbzi";
name = "kitemmodels-5.90.0.tar.xz";
};
};
kitemviews = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kitemviews-5.89.0.tar.xz";
sha256 = "180n41gkv6vgmljcqh2sg5922glq59z56zq7y299vwnkgix9aqns";
name = "kitemviews-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kitemviews-5.90.0.tar.xz";
sha256 = "10s285vxaaxjcy3am4bvch5wd7wv64wwcjvj7lqk2866aql9hmzp";
name = "kitemviews-5.90.0.tar.xz";
};
};
kjobwidgets = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kjobwidgets-5.89.0.tar.xz";
sha256 = "02ysdzn25a9lms70fawnz3h5vdxy9p528qmbxslsnpz29r5h2wb8";
name = "kjobwidgets-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kjobwidgets-5.90.0.tar.xz";
sha256 = "1jv3c68mlsxhnd6jgqw5d4qqd66jf8bh6zbcs6bq0bad52ad2r8d";
name = "kjobwidgets-5.90.0.tar.xz";
};
};
kjs = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kjs-5.89.0.tar.xz";
sha256 = "0yxk4qwl4cxv3kklvla5q3xx2vgj4lwp4pb3bplkkbighm01naih";
name = "kjs-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kjs-5.90.0.tar.xz";
sha256 = "1z5d1ixzvaq6x9x0jhmh5bdrdqpsl1x7mh3s8wnycfxwmln6bawv";
name = "kjs-5.90.0.tar.xz";
};
};
kjsembed = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kjsembed-5.89.0.tar.xz";
sha256 = "08ajxgh1lfbx8nf4vsljzcwkfjih8fyqp9nr2xbv2a9dbv51x1sf";
name = "kjsembed-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kjsembed-5.90.0.tar.xz";
sha256 = "0ydrsg7z1b5hkskjvkb0b9lhx60aqcby2alhfbmkac197sf2frn4";
name = "kjsembed-5.90.0.tar.xz";
};
};
kmediaplayer = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kmediaplayer-5.89.0.tar.xz";
sha256 = "0hf44hij1bqcfvxhs7ka00habgh3lc39xajnblpm9br8xybgkaz0";
name = "kmediaplayer-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kmediaplayer-5.90.0.tar.xz";
sha256 = "010m5qrn41hcxsmxsq72m83qxikfvn3mgibkgy4bn2x8kxibzmlq";
name = "kmediaplayer-5.90.0.tar.xz";
};
};
knewstuff = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/knewstuff-5.89.0.tar.xz";
sha256 = "1qw3lm4vjxal7r314y0zqj59fmzj4b9z2dsd10r3mxpiwjra0s45";
name = "knewstuff-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/knewstuff-5.90.0.tar.xz";
sha256 = "0q30p7z5zg3p24gp8q83i7my5bg4yfcdwsblmhl230kih8aap2cg";
name = "knewstuff-5.90.0.tar.xz";
};
};
knotifications = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/knotifications-5.89.0.tar.xz";
sha256 = "1jghpawqp0zy1scs2l0dqz2sqv4xd65xiavabpjwhycx5pxpvbhs";
name = "knotifications-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/knotifications-5.90.0.tar.xz";
sha256 = "15qb3jh5y1z84dp6wddwid4bk3ks05knkxlwv79hb9cdj8m4m7gi";
name = "knotifications-5.90.0.tar.xz";
};
};
knotifyconfig = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/knotifyconfig-5.89.0.tar.xz";
sha256 = "041qnnxhsi35xygyzlppvpghfd8fxraas824dz7rfjiym2zid7jh";
name = "knotifyconfig-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/knotifyconfig-5.90.0.tar.xz";
sha256 = "1qss40sr7az9x4yvl59mblzzgjm3hd8nvxgqmqlylargvggw496c";
name = "knotifyconfig-5.90.0.tar.xz";
};
};
kpackage = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kpackage-5.89.0.tar.xz";
sha256 = "198n0gr2v9r11ml2vkx9xazxf3rbw3qgc44l7x134rpn1jv9b0s3";
name = "kpackage-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kpackage-5.90.0.tar.xz";
sha256 = "1rig9aws8530sav0pmginqmdcrnz10qjbxfc5lw6mmb3sfig53z0";
name = "kpackage-5.90.0.tar.xz";
};
};
kparts = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kparts-5.89.0.tar.xz";
sha256 = "0vdz1sxqkx2nynlsywyp8j2ciq226cs40c3m70lqs0j5w283i5ra";
name = "kparts-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kparts-5.90.0.tar.xz";
sha256 = "1x8kxd8kgzabd9dyqx2yx1qrrzl1mms4hm3lyg3f1nxki7xl6ra2";
name = "kparts-5.90.0.tar.xz";
};
};
kpeople = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kpeople-5.89.0.tar.xz";
sha256 = "12bry15lr7xpgmfgpw1mdd805n1af6050vaa3pk4mbf0vc6clg5y";
name = "kpeople-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kpeople-5.90.0.tar.xz";
sha256 = "1632k365bn9n3n8babq620v0px2hmapk8fprx28xpfp27zakhfgw";
name = "kpeople-5.90.0.tar.xz";
};
};
kplotting = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kplotting-5.89.0.tar.xz";
sha256 = "1asqzv5jl2nb9ml5vwlpcsi9f2vw7y8rcihlvkf569s7kxsrswns";
name = "kplotting-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kplotting-5.90.0.tar.xz";
sha256 = "0i5ganvpzkpkd2p1avw0fpbp3mgbbifg8mmpvdf28ayh75dvrh9y";
name = "kplotting-5.90.0.tar.xz";
};
};
kpty = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kpty-5.89.0.tar.xz";
sha256 = "0053sx30d1w2m03wqv3mhkjrxdf7ps1xj8h74fv0a0clf9ab0i4x";
name = "kpty-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kpty-5.90.0.tar.xz";
sha256 = "1p5ny9ry0wwwprhpj9s9xg96h9476rldly7mawvfp5q3ihys8c4a";
name = "kpty-5.90.0.tar.xz";
};
};
kquickcharts = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kquickcharts-5.89.0.tar.xz";
sha256 = "05syj1162j1zhg9wws81kk9z2ri3jvlvnq95l3gv29zf582j7h91";
name = "kquickcharts-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kquickcharts-5.90.0.tar.xz";
sha256 = "1vf9vwrb03z6f19xyc1dc50s3kz21s4mkrv85mmyia0by4qvq5fi";
name = "kquickcharts-5.90.0.tar.xz";
};
};
kross = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kross-5.89.0.tar.xz";
sha256 = "0j88ikhxypyy4yickcz3hcdfaj8g7qjinf5va7g5ghzjar7q9x4y";
name = "kross-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kross-5.90.0.tar.xz";
sha256 = "1gs7h03j753pq78q0fmajgd5pw8j3mc105rsph1c22l23vccya3z";
name = "kross-5.90.0.tar.xz";
};
};
krunner = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/krunner-5.89.0.tar.xz";
sha256 = "11wzn33k6gwfiwc6idhsr8fj441c82bbzz8bx8i228ymvnqrdcqx";
name = "krunner-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/krunner-5.90.0.tar.xz";
sha256 = "1q3hsml5274v8dy8rnqpnwxliad2q7a8mbs8k6kpqzih9z94crgi";
name = "krunner-5.90.0.tar.xz";
};
};
kservice = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kservice-5.89.0.tar.xz";
sha256 = "0srbjazz302w7zsxh5zcq5zhgz8ad09zxld1rpfkyxg5z820lrq5";
name = "kservice-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kservice-5.90.0.tar.xz";
sha256 = "121y8bbq3m4pv5m9pj753v2nk914216a86ksmdqbgffw217qckdd";
name = "kservice-5.90.0.tar.xz";
};
};
ktexteditor = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/ktexteditor-5.89.0.tar.xz";
sha256 = "02bg84dmqadjlwfmccviz0d0wj0qf9fy2i9igq4mv150hqy93bb7";
name = "ktexteditor-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/ktexteditor-5.90.0.tar.xz";
sha256 = "1g1dky9bgr2zjr0rw9c730shz588ykyw7qw3sgf0dr3sh8aq222n";
name = "ktexteditor-5.90.0.tar.xz";
};
};
ktextwidgets = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/ktextwidgets-5.89.0.tar.xz";
sha256 = "0yz2y111hjs1zq1f8887sn334gpf0sv4lrfq3i5dj0x3vcjgmccl";
name = "ktextwidgets-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/ktextwidgets-5.90.0.tar.xz";
sha256 = "02g85zahh6hfsw3fcac7hp8kv4d1ha2asmmhnknqd054yl0adxjg";
name = "ktextwidgets-5.90.0.tar.xz";
};
};
kunitconversion = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kunitconversion-5.89.0.tar.xz";
sha256 = "1bmnlcsi8qbba38ywr3f4vd7kddiwzmrnn9n69c6626jg4aj3g1q";
name = "kunitconversion-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kunitconversion-5.90.0.tar.xz";
sha256 = "1vrvbsd8limfsmgjcv5kvzyf7g62rv1a0rvbdyq15z23zf4rsmf3";
name = "kunitconversion-5.90.0.tar.xz";
};
};
kwallet = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kwallet-5.89.0.tar.xz";
sha256 = "1yy34asal5jni78jxywddh3hjpzsr1myck0f89h78a2zc28xnd1h";
name = "kwallet-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kwallet-5.90.0.tar.xz";
sha256 = "06ffg84jvrc8xhymg1g5j311vq3ajfqg3arx2cxa98aqld213akl";
name = "kwallet-5.90.0.tar.xz";
};
};
kwayland = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kwayland-5.89.0.tar.xz";
sha256 = "1sq4zy9bifbqlg8s3af2vwxyyg84kmxfyvdi479cn46vdavylp2j";
name = "kwayland-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kwayland-5.90.0.tar.xz";
sha256 = "0n7f4rx695q889j8g4sdpdi3jhk29z8zc4wrk5srs2diqi4y0qqi";
name = "kwayland-5.90.0.tar.xz";
};
};
kwidgetsaddons = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kwidgetsaddons-5.89.0.tar.xz";
sha256 = "1rs30ialmrhwvxah6rvzbavjnp4ziaaf0j0jcm63kyqbb5nywgmk";
name = "kwidgetsaddons-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kwidgetsaddons-5.90.0.tar.xz";
sha256 = "1c17iq0q2w80p7v7k32db0pc5sbzqhvh0w5d145a1nkgr3nbnk6a";
name = "kwidgetsaddons-5.90.0.tar.xz";
};
};
kwindowsystem = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kwindowsystem-5.89.0.tar.xz";
sha256 = "1h0v72mb7s36ggw8nv70rpk16q0cflbhgvqwzlfqvh68kbs35a4q";
name = "kwindowsystem-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kwindowsystem-5.90.0.tar.xz";
sha256 = "0fj7a86dk833ld76c3b1s4ri47bhpvjsi6ryfgdv5q7h2fwh6ia5";
name = "kwindowsystem-5.90.0.tar.xz";
};
};
kxmlgui = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/kxmlgui-5.89.0.tar.xz";
sha256 = "0mjfg0hd9rswz3jpmc8xjw5jqgip58cx3bavijdlnp7pla7r7j56";
name = "kxmlgui-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/kxmlgui-5.90.0.tar.xz";
sha256 = "1q8v1wrx67c37jnd874ilkk8kfk3zvf3f86qg51k16ml0nrwjysg";
name = "kxmlgui-5.90.0.tar.xz";
};
};
kxmlrpcclient = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/portingAids/kxmlrpcclient-5.89.0.tar.xz";
sha256 = "0ri3z76r1v1vfp3j0mrpvan6jzmp57a5g4vwshv4zgyvr484qhlp";
name = "kxmlrpcclient-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/portingAids/kxmlrpcclient-5.90.0.tar.xz";
sha256 = "0mq2wgi4qnvscjdkis7jhs004k3s1b3wg0vijjai7xzy772kvclc";
name = "kxmlrpcclient-5.90.0.tar.xz";
};
};
modemmanager-qt = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/modemmanager-qt-5.89.0.tar.xz";
sha256 = "1sam8cr638h9gyp60dhgmrpddy6y7waf9xaij46kvc0xdan501fi";
name = "modemmanager-qt-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/modemmanager-qt-5.90.0.tar.xz";
sha256 = "08nlvg5lwvl3rspi848gp2b2b5pki6sy8c3ww9nn4afy4lk7p609";
name = "modemmanager-qt-5.90.0.tar.xz";
};
};
networkmanager-qt = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/networkmanager-qt-5.89.0.tar.xz";
sha256 = "1x1pxsf4dm8h0bj6my9rg2j95nnn81919fv9apvqglf6i3xd2pq4";
name = "networkmanager-qt-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/networkmanager-qt-5.90.0.tar.xz";
sha256 = "0i9wvrxbkbil21zndiq4cmnldbqsrdp9gnhmp2ns78xdih8wysa7";
name = "networkmanager-qt-5.90.0.tar.xz";
};
};
oxygen-icons5 = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/oxygen-icons5-5.89.0.tar.xz";
sha256 = "1gmx2k5hqfa0lap2y9sv7csi09s8nl3rvab5nz731wr3s9m2frpr";
name = "oxygen-icons5-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/oxygen-icons5-5.90.0.tar.xz";
sha256 = "1izfh6cxivmwiymy7lwbmf9j1hxy2skv6z1lbjr0c4snmx6pqx1g";
name = "oxygen-icons5-5.90.0.tar.xz";
};
};
plasma-framework = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/plasma-framework-5.89.0.tar.xz";
sha256 = "0wx6a3agplfmf2p86ljhgd3pjx7f15g1hp660i62zw84zvpsh2dp";
name = "plasma-framework-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/plasma-framework-5.90.0.tar.xz";
sha256 = "1msqjnwvb815kii0rjhn1lvsnvq5wr8iprdjzsviw67va6gaz4p1";
name = "plasma-framework-5.90.0.tar.xz";
};
};
prison = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/prison-5.89.0.tar.xz";
sha256 = "0jd3qfj5k4fxqpbkjpr81mvni9kqppcq0gn5yyc9nys4wk4nr934";
name = "prison-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/prison-5.90.0.tar.xz";
sha256 = "0z2k2hyjj86va5rqgd8qrvhflfppcl2d3f9smxb5w9pp19ashvyk";
name = "prison-5.90.0.tar.xz";
};
};
purpose = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/purpose-5.89.0.tar.xz";
sha256 = "1sfhwzw1ghr1yg4fkrz0r2myd5569mscsr98pnc3plr78ppq9lwy";
name = "purpose-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/purpose-5.90.0.tar.xz";
sha256 = "182196hj3mdy1k7wfgadfxy7m1kbqzk6kksn7yd681h2gpky82l1";
name = "purpose-5.90.0.tar.xz";
};
};
qqc2-desktop-style = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/qqc2-desktop-style-5.89.0.tar.xz";
sha256 = "1q2y0hb69f3ldaslbpw8v0xapchqndjp4wzgmghd1zqab8lqjl5c";
name = "qqc2-desktop-style-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/qqc2-desktop-style-5.90.0.tar.xz";
sha256 = "05g1rydx0innmiz28mslix4bjsrhsnci227gadngzijncp2v288r";
name = "qqc2-desktop-style-5.90.0.tar.xz";
};
};
solid = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/solid-5.89.0.tar.xz";
sha256 = "1gy8ddg5803fpdifg68gkjrl9l2dwjrmwyzq5jzsfr6yabcfih93";
name = "solid-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/solid-5.90.0.tar.xz";
sha256 = "10hk4mh426dhi7is5hxa1varn15ijzra5a420zk297pzkphvx0ip";
name = "solid-5.90.0.tar.xz";
};
};
sonnet = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/sonnet-5.89.0.tar.xz";
sha256 = "0fdkx68hyp5fq0fyfbq0691vcx70qm7md2nd4028gmpcbxxaixa1";
name = "sonnet-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/sonnet-5.90.0.tar.xz";
sha256 = "0d4xxm9vw1rc2mypv4z0yihcn679sab0afxr2kbzq01wr6p759y7";
name = "sonnet-5.90.0.tar.xz";
};
};
syndication = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/syndication-5.89.0.tar.xz";
sha256 = "186dw32jhgfwz7dz9payx645gvhgzcf6qy5qiad6ifkvda50g9cw";
name = "syndication-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/syndication-5.90.0.tar.xz";
sha256 = "0a9j443w42jwvlzjh5mfxn25kwjrz1ya6sgy0c4y3n5xbg031zmx";
name = "syndication-5.90.0.tar.xz";
};
};
syntax-highlighting = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/syntax-highlighting-5.89.0.tar.xz";
sha256 = "0iy9ryjf6bcxwp9kni00p82mx1bg101z8331ykixffn41vfgxb9a";
name = "syntax-highlighting-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/syntax-highlighting-5.90.0.tar.xz";
sha256 = "19mckdfdxb5i26y75cgmda91s864jbh1wmf98bv8xa1iqxwkwj5z";
name = "syntax-highlighting-5.90.0.tar.xz";
};
};
threadweaver = {
version = "5.89.0";
version = "5.90.0";
src = fetchurl {
url = "${mirror}/stable/frameworks/5.89/threadweaver-5.89.0.tar.xz";
sha256 = "03yrlp9ixfb3wsrfmgxfhryzy2jsfnk4wnphmlk5nh98nxa9706x";
name = "threadweaver-5.89.0.tar.xz";
url = "${mirror}/stable/frameworks/5.90/threadweaver-5.90.0.tar.xz";
sha256 = "1frhzlzmnrp5y3lrl0ahzxh8syj4vlkjvaypsmbm2bkkn4akizg3";
name = "threadweaver-5.90.0.tar.xz";
};
};
}
@@ -1,32 +0,0 @@
From cbdbc8d00d31344fafe00e0fdf984e04e631f7c4 Mon Sep 17 00:00:00 2001
From: TBK <tbk@jjtc.eu>
Date: Wed, 26 Feb 2020 21:12:45 +0100
Subject: [PATCH] Fix Linux build error with musl libc
Commit bf5953c549a6d279977df69ffe89b2ba51460eaf caused a build failure
on non-glibc Linux build environments. Change the conditionalization
so that __GLIBC_PREREQ will only be used if it is defined.
[ghudson@mit.edu: simplified conditionals; rewrote commit message]
ticket: 8880 (new)
tags: pullup
target_version: 1.18-next
---
src/util/support/plugins.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c
index 3329db7dc3..1644d16fd0 100644
--- a/src/util/support/plugins.c
+++ b/src/util/support/plugins.c
@@ -62,8 +62,7 @@
* dlopen() with RTLD_NODELETE, we weren't going to unload the plugin objects
* anyway.
*/
-#ifdef __linux__
-#include <features.h>
+#ifdef __GLIBC__PREREQ
#if ! __GLIBC_PREREQ(2, 25)
#define dlclose(x)
#endif
@@ -1,28 +0,0 @@
From b009cca2026b615ef5386faa4c0230bc27c4161d Mon Sep 17 00:00:00 2001
From: Greg Hudson <ghudson@mit.edu>
Date: Thu, 12 Mar 2020 00:44:10 -0400
Subject: [PATCH] Fix typo in musl build fix
Commit cbdbc8d00d31344fafe00e0fdf984e04e631f7c4 checked for
__GLIBC__PREREQ instead of __GLIBC_PREREQ, thus accidentally reverting
the workaround introduced in commit
bf5953c549a6d279977df69ffe89b2ba51460eaf. Fix the typo.
ticket: 8880
---
src/util/support/plugins.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c
index 1644d16fd0..1ff10c354d 100644
--- a/src/util/support/plugins.c
+++ b/src/util/support/plugins.c
@@ -62,7 +62,7 @@
* dlopen() with RTLD_NODELETE, we weren't going to unload the plugin objects
* anyway.
*/
-#ifdef __GLIBC__PREREQ
+#ifdef __GLIBC_PREREQ
#if ! __GLIBC_PREREQ(2, 25)
#define dlclose(x)
#endif
+3 -13
View File
@@ -19,23 +19,13 @@ in
with lib;
stdenv.mkDerivation rec {
name = "${type}krb5-${version}";
majorVersion = "1.18"; # remove patches below with next upgrade
version = majorVersion;
version = "1.19.2";
src = fetchurl {
url = "https://kerberos.org/dist/krb5/${majorVersion}/krb5-${version}.tar.gz";
sha256 = "121c5xsy3x0i4wdkrpw62yhvji6virbh6n30ypazkp0isws3k4bk";
url = "https://kerberos.org/dist/krb5/${versions.majorMinor version}/krb5-${version}.tar.gz";
sha256 = "0snz1jm2w4dkk65zcz953jmmv9mqa30fanch2bk8r3rs9vp3yi8h";
};
patches = optionals stdenv.hostPlatform.isMusl [
# TODO: Remove with next release > 1.18
# Patches to fix musl build with 1.18.
# Not using `fetchpatch` for these for now to avoid infinite recursion
# errors in downstream projects (unclear if it's a nixpkgs issue so far).
./krb5-Fix-Linux-build-error-with-musl-libc.patch
./krb5-Fix-typo-in-musl-build-fix.patch
];
outputs = [ "out" "dev" ];
configureFlags = [ "--with-tcl=no" "--localstatedir=/var/lib"]
@@ -1,15 +1,14 @@
{ lib, stdenv, autoconf, automake, libtool, m4, fetchFromGitLab, bash, pkg-config, sqlite }:
{ lib, stdenv, autoconf, automake, libtool, m4, fetchurl, bash, pkg-config, sqlite }:
stdenv.mkDerivation rec {
pname = "libcangjie";
version = "1.4_rev_${rev}";
rev = "a73c1d8783f7b6526fd9b2cc44a669ffa5518d3d";
src = fetchFromGitLab {
owner = "Cangjians";
repo = "libcangjie";
inherit rev;
sha256 = "sha256-R7WqhxciaTxhTiwPp2EUNTOh477gi/Pj3VpMtat5qXw=";
# fetchFromGitLab isn't working for some reason
src = fetchurl {
url = "https://gitlab.freedesktop.org/cangjie/libcangjie/-/archive/a73c1d8783f7b6526fd9b2cc44a669ffa5518d3d/libcangjie-a73c1d8783f7b6526fd9b2cc44a669ffa5518d3d.tar.gz";
sha256 = "sha256-j5IQ0hBefoF8p966YrfZgYCw7ht5twJhYi4l0NneukQ=";
};
nativeBuildInputs = [ pkg-config ];
@@ -17,13 +17,13 @@
stdenv.mkDerivation rec {
pname = "libgphoto2";
version = "2.5.27";
version = "2.5.28";
src = fetchFromGitHub {
owner = "gphoto";
repo = "libgphoto2";
rev = "libgphoto2-${builtins.replaceStrings [ "." ] [ "_" ] version}-release";
sha256 = "sha256-c7fBl6GBLAU+RL5WFC4PL+n/nEHZUfqIJ9qq1+qNNCg=";
sha256 = "sha256-e3zMinUUBKzZlQQzkS0oPWAzIVlmQoLj73Spj0XiTIE=";
};
depsBuildBuild = [ pkg-config ];
@@ -20,7 +20,7 @@
stdenv.mkDerivation rec {
pname = "libical";
version = "3.0.10";
version = "3.0.11";
outputs = [ "out" "dev" ]; # "devdoc" ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
owner = "libical";
repo = "libical";
rev = "v${version}";
sha256 = "sha256-fLmEJlkZLYLcKZqZwitf8rH261QDPTJZf/+/+FMsGIg=";
sha256 = "sha256-9kMYqWITZ2LlBDebJUZFWyVclAjfIZtc3Dm7lii9ZMc=";
};
nativeBuildInputs = [
+75 -39
View File
@@ -1,47 +1,71 @@
{ lib, stdenv, fetchurl, pkg-config, meson, ninja
, libevdev, mtdev, udev, libwacom
, documentationSupport ? false, doxygen, graphviz # Documentation
, eventGUISupport ? false, cairo, glib, gtk3 # GUI event viewer support
, testsSupport ? false, check, valgrind, python3
{ lib
, stdenv
, fetchurl
, pkg-config
, meson
, ninja
, libevdev
, mtdev
, udev
, libwacom
, documentationSupport ? false
, doxygen
, graphviz
, runCommand
, eventGUISupport ? false
, cairo
, glib
, gtk3
, testsSupport ? false
, check
, valgrind
, python3
, nixosTests
}:
let
mkFlag = optSet: flag: "-D${flag}=${lib.boolToString optSet}";
sphinx-build = if documentationSupport then
python3.pkgs.sphinx.overrideAttrs (super: {
propagatedBuildInputs = super.propagatedBuildInputs ++ (with python3.pkgs; [ recommonmark sphinx_rtd_theme ]);
postFixup = super.postFixup or "" + ''
# Do not propagate Python
rm $out/nix-support/propagated-build-inputs
'';
})
else null;
sphinx-build =
let
env = python3.withPackages (pp: with pp; [
sphinx
recommonmark
sphinx_rtd_theme
]);
in
# Expose only the sphinx-build binary to avoid contaminating
# everything with Sphinxs Python environment.
runCommand "sphinx-build" { } ''
mkdir -p "$out/bin"
ln -s "${env}/bin/sphinx-build" "$out/bin"
'';
in
stdenv.mkDerivation rec {
pname = "libinput";
version = "1.19.1";
src = fetchurl {
url = "https://www.freedesktop.org/software/libinput/libinput-${version}.tar.xz";
sha256 = "sha256-C9z1sXg7c3hUt68coi32e8Nqb+fJz6cfAekUn5IgRG0=";
};
version = "1.19.3";
outputs = [ "bin" "out" "dev" ];
mesonFlags = [
(mkFlag documentationSupport "documentation")
(mkFlag eventGUISupport "debug-gui")
(mkFlag testsSupport "tests")
"--sysconfdir=/etc"
"--libexecdir=${placeholder "bin"}/libexec"
src = fetchurl {
url = "https://www.freedesktop.org/software/libinput/libinput-${version}.tar.xz";
sha256 = "sha256-PK54zN4Z19Dzh+WLxzTU0Xq19kJvVKnotyjJCxe6oGg=";
};
patches = [
./udev-absolute-path.patch
];
nativeBuildInputs = [ pkg-config meson ninja ]
++ lib.optionals documentationSupport [ doxygen graphviz sphinx-build ];
nativeBuildInputs = [
pkg-config
meson
ninja
] ++ lib.optionals documentationSupport [
doxygen
graphviz
sphinx-build
];
buildInputs = [
libevdev
@@ -53,20 +77,34 @@ stdenv.mkDerivation rec {
pyyaml
setuptools
]))
] ++ lib.optionals eventGUISupport [ cairo glib gtk3 ];
] ++ lib.optionals eventGUISupport [
# GUI event viewer
cairo
glib
gtk3
];
propagatedBuildInputs = [
udev
];
checkInputs = [
check
valgrind
];
propagatedBuildInputs = [ udev ];
mesonFlags = [
(mkFlag documentationSupport "documentation")
(mkFlag eventGUISupport "debug-gui")
(mkFlag testsSupport "tests")
"--sysconfdir=/etc"
"--libexecdir=${placeholder "bin"}/libexec"
];
patches = [ ./udev-absolute-path.patch ];
doCheck = testsSupport && stdenv.hostPlatform == stdenv.buildPlatform;
postPatch = ''
patchShebangs \
tools/helper-copy-and-exec-from-tmp.sh \
test/symbols-leak-test \
test/check-leftover-udev-rules.sh \
test/helper-copy-and-exec-from-tmp.sh
@@ -75,17 +113,15 @@ stdenv.mkDerivation rec {
sed -i "/install_subdir('libinput', install_dir : dir_etc)/d" meson.build
'';
doCheck = testsSupport && stdenv.hostPlatform == stdenv.buildPlatform;
passthru.tests = {
libinput-module = nixosTests.libinput;
};
meta = with lib; {
description = "Handles input devices in Wayland compositors and provides a generic X.Org input driver";
homepage = "https://www.freedesktop.org/wiki/Software/libinput/";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ codyopel ];
homepage = "https://www.freedesktop.org/wiki/Software/libinput/";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ codyopel ] ++ teams.freedesktop.members;
};
}
@@ -24,13 +24,13 @@
stdenv.mkDerivation rec {
pname = "librsvg";
version = "2.52.4";
version = "2.52.5";
outputs = [ "out" "dev" "installedTests" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "Zg7Ig2o6kVh7yThJIBMtTDjR0XGMZ/4WDFIT/k3sKSg=";
sha256 = "QHy7q1GBN+oYo/MiC+oYD77nXz5b1roQp6hiwab3TYI=";
};
cargoVendorDir = "vendor";
@@ -1,12 +1,12 @@
{ lib, stdenv, fetchurl, perl }:
stdenv.mkDerivation rec {
version = "0.13.0";
version = "0.13.1";
pname = "liburcu";
src = fetchurl {
url = "https://lttng.org/files/urcu/userspace-rcu-${version}.tar.bz2";
sha256 = "sha256-y7INvhqJLCpNiJi6xDFhduWFOSaT1Jh2bMu8aM8guiA=";
sha256 = "sha256-MhPzPSuPcQ65IOsauyeewEv4rmNh9E8lE8KMINM2MIM=";
};
checkInputs = [ perl ];
+2 -2
View File
@@ -1,5 +1,5 @@
{ lib, stdenv, fetchFromGitHub, makeWrapper
, SDL, ffmpeg, frei0r, libjack2, libdv, libsamplerate, libexif
, SDL, ffmpeg_4, frei0r, libjack2, libdv, libsamplerate, libexif
, libvorbis, libxml2, movit, pkg-config, sox, fftw, opencv4, SDL2
, gtk2, genericUpdater, common-updater-scripts, libebur128
, jack2, ladspa-sdk, swig, which, ncurses
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [
SDL ffmpeg frei0r libjack2 libdv libsamplerate libvorbis libxml2.dev
SDL ffmpeg_4 frei0r libjack2 libdv libsamplerate libvorbis libxml2.dev
movit sox libexif gtk2 fftw libebur128 opencv4 SDL2 jack2
ladspa-sdk
] ++ lib.optional enablePython ncurses;
@@ -35,6 +35,7 @@ stdenv.mkDerivation rec {
"--enable-symlinks"
"--with-manpage-format=normal"
"--disable-stripping"
"--with-versioned-syms"
] ++ lib.optional unicodeSupport "--enable-widec"
++ lib.optional (!withCxx) "--without-cxx"
++ lib.optional (abiVersion == "5") "--with-abi-version=5"
@@ -23,9 +23,12 @@ stdenv.mkDerivation rec {
--replace "@OUT@" $out
'';
strictDeps = true;
nativeBuildInputs = [ cmake ];
buildInputs = lib.optional alsaSupport alsa-lib
buildInputs = lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) stdenv.cc.libc
++ lib.optional alsaSupport alsa-lib
++ lib.optional pulseSupport libpulseaudio
++ lib.optionals stdenv.isDarwin [ CoreServices AudioUnit AudioToolbox ];
+45 -10
View File
@@ -1,34 +1,61 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, which
, gettext, libffi, libiconv, libtasn1
{ lib
, stdenv
, fetchFromGitHub
, autoreconfHook
, docbook-xsl-nons
, gtk-doc
, installShellFiles
, libxslt # for xsltproc
, pkg-config
, which
, libffi
, libiconv
, libintl
, libtasn1
}:
stdenv.mkDerivation rec {
pname = "p11-kit";
version = "0.24.0";
version = "0.24.1";
src = fetchFromGitHub {
owner = "p11-glue";
repo = pname;
rev = version;
sha256 = "sha256-jvUzOhMvbq05SxQ+kjKQHDDMzNwo4U6nFHu3JjygJHw=";
hash = "sha256-1QIMEGBZsqLYU3v5ZswD5K9VcIGLBovJlC10lBHhH7c=";
};
outputs = [ "out" "dev"];
outputBin = "dev";
outputs = [ "out" "bin" "dev"];
# for cross platform builds of p11-kit, libtasn1 in nativeBuildInputs
# For cross platform builds of p11-kit, libtasn1 in nativeBuildInputs
# provides the asn1Parser binary on the hostPlatform needed for building.
# at the same time, libtasn1 in buildInputs provides the libasn1 library
# to link against for the target platform.
# hence, libtasn1 is required in both native and build inputs.
nativeBuildInputs = [ autoreconfHook pkg-config which libtasn1 ];
buildInputs = [ gettext libffi libiconv libtasn1 ];
# Hence, libtasn1 is required in both native and build inputs.
nativeBuildInputs = [
autoreconfHook
docbook-xsl-nons
gtk-doc
installShellFiles
libtasn1
libxslt.bin
pkg-config
which
];
buildInputs = [
libffi
libiconv
libintl
libtasn1
];
autoreconfPhase = ''
NOCONFIGURE=1 ./autogen.sh
'';
configureFlags = [
"--enable-doc"
"--sysconfdir=/etc"
"--localstatedir=/var"
"--with-trust-paths=${lib.concatStringsSep ":" [
@@ -53,6 +80,10 @@ stdenv.mkDerivation rec {
"exampledir=${placeholder "out"}/etc/pkcs11"
];
postInstall = ''
installShellCompletion --bash bash-completion/{p11-kit,trust}
'';
meta = with lib; {
description = "Library for loading and sharing PKCS#11 modules";
longDescription = ''
@@ -61,6 +92,10 @@ stdenv.mkDerivation rec {
PKCS#11 modules in such a way that they're discoverable.
'';
homepage = "https://p11-glue.github.io/p11-glue/p11-kit.html";
changelog = [
"https://github.com/p11-glue/p11-kit/raw/${version}/NEWS"
"https://github.com/p11-glue/p11-kit/releases/tag/${version}"
];
platforms = platforms.all;
license = licenses.bsd3;
};
+2 -2
View File
@@ -5,10 +5,10 @@
stdenv.mkDerivation rec {
pname = "pcre2";
version = "10.37";
version = "10.39";
src = fetchurl {
url = "https://github.com/PhilipHazel/pcre2/releases/download/pcre2-${version}/pcre2-${version}.tar.bz2";
hash = "sha256-TZWpbouAUpiTtFYr4SZI15i5V7G6Gq45YGu8KrlW0nA=";
hash = "sha256-DwPK9X+B2f82KsKM04nAVewr8GeNJ3NJoaS+4ArW1EA=";
};
# Disable jit on Apple Silicon, https://github.com/zherczeg/sljit/issues/51
+2 -2
View File
@@ -1,6 +1,6 @@
{ callPackage, ... }:
callPackage ./generic-v3.nix {
version = "3.16.0";
sha256 = "0jc523ys6xh1fk3l52f5mfqxhb4g8aim1js7330v0fdc3fjr8ncf";
version = "3.16.1";
sha256 = "sha256-eOwUyZtrmyh3HwLQ1kLnk+briaXQPrlUqtbFol/nGBo=";
}
+2 -2
View File
@@ -1,6 +1,6 @@
{ callPackage, ... }:
callPackage ./generic-v3.nix {
version = "3.18.1";
sha256 = "sha256-5PK0uuk7Du9hX/hHy0gninHIKu6b8THdfVh87Gn7y2Q=";
version = "3.18.2";
sha256 = "sha256-IXxVTZOAKVMuGCJtD32rVQRBJRWUJMEK2d+fPEmgzRU=";
}
+2 -2
View File
@@ -1,6 +1,6 @@
{ callPackage, ... }:
callPackage ./generic-v3.nix {
version = "3.19.0";
sha256 = "0rx4r4d7hqr0gi3v90jbkm2lnkj9p37dhgwx9d0w7kgh3rvr4i7g";
version = "3.19.3";
sha256 = "sha256-nA6L064MuyP5Si4MCLk2yg8PDM7RWggFEGQyibputYQ=";
}
@@ -19,7 +19,7 @@
, ApplicationServices, AVFoundation, Foundation, ForceFeedback, GameController, AppKit
, ImageCaptureCore, CoreBluetooth, IOBluetooth, CoreWLAN, Quartz, Cocoa, LocalAuthentication
, cups, openbsm, runCommand, xcbuild, writeScriptBin
, ffmpeg ? null
, ffmpeg_4 ? null
, lib, stdenv, fetchpatch
, version ? null
, qtCompatVersion
@@ -115,6 +115,7 @@ qtModule {
] ++ lib.optionals stdenv.isDarwin [
"-DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_12"
"-DMAC_OS_X_VERSION_MIN_REQUIRED=MAC_OS_X_VERSION_10_12"
"-Wno-elaborated-enum-base"
#
# Prevent errors like
@@ -153,7 +154,7 @@ qtModule {
harfbuzz icu
libevent
ffmpeg
ffmpeg_4
] ++ lib.optionals (!stdenv.isDarwin) [
dbus zlib minizip snappy nss protobuf jsoncpp
@@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "s2n-tls";
version = "1.3.0";
version = "1.3.4";
src = fetchFromGitHub {
owner = "aws";
repo = pname;
rev = "v${version}";
sha256 = "sha256-gd91thIcJO6Bhn1ENkW0k2iDzu1CvSYwWVv0VEM9umU=";
hash = "sha256-/kZI/NOZO8T5jlG9Qtfr14aCJDKrP7wEQLgJ6qe9VzY=";
};
nativeBuildInputs = [ cmake ];
@@ -46,6 +46,12 @@ stdenv.mkDerivation rec {
postPatch = ''
install ${doxygen_sh} doxygen.sh
patchShebangs build-aux
# https://gitlab.freedesktop.org/spice/spice-common/-/issues/5
substituteInPlace subprojects/spice-common/meson.build \
--replace \
"cmd = run_command(python, '-m', module)" \
"cmd = run_command(python, '-c', 'import @0@'.format(module))"
'';
nativeBuildInputs = [
+2 -2
View File
@@ -4,13 +4,13 @@
with lib;
stdenv.mkDerivation rec {
pname = "srt";
version = "1.4.3";
version = "1.4.4";
src = fetchFromGitHub {
owner = "Haivision";
repo = "srt";
rev = "v${version}";
sha256 = "1f60vlfxhh9bhafws82c3301whjlz5gy92jz9a9ymwfg5h53bv1j";
sha256 = "sha256-OfcMHH+MSOGY9pxpXt19EIGdP4FJFssSv/lENX+iIf8=";
};
nativeBuildInputs = [ cmake ];
+2 -2
View File
@@ -11,11 +11,11 @@
stdenv.mkDerivation rec {
pname = "tdb";
version = "1.4.5";
version = "1.4.6";
src = fetchurl {
url = "mirror://samba/tdb/${pname}-${version}.tar.gz";
sha256 = "sha256-vPztiE9wMQgJmLXEscXc5XVnBV95QX+G26QNzemaDkE=";
sha256 = "sha256-1okr2L7+BKd2QqHdVuSoeTSb8c9bLAv1+4QQYZON7ws=";
};
nativeBuildInputs = [
@@ -69,7 +69,8 @@ stdenv.mkDerivation rec {
python3 # for data-generators
systemd # used for checks to install systemd user service
dbus # used for checks and pkg-config to install dbus service/s
];
] ++ checkInputs; # gi is in the main meson.build and checked regardless of
# whether tests are enabled
buildInputs = [
glib
@@ -85,7 +86,6 @@ stdenv.mkDerivation rec {
checkInputs = with python3.pkgs; [
pygobject3
tappy
];
mesonFlags = [
@@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "wayland-protocols";
version = "1.24";
version = "1.25";
doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
src = fetchurl {
url = "https://wayland.freedesktop.org/releases/${pname}-${version}.tar.xz";
sha256 = "1hlb6gvyqlmsdkv5179ccj07p04cn6xacjkgklakbszczv7xiw5z";
sha256 = "0q0laxdvf8p8b7ks2cbpqf6q0rwrjycqrp8pf8rxm86hk5qhzzzi";
};
postPatch = lib.optionalString doCheck ''
@@ -0,0 +1,26 @@
{ lib, stdenv, fetchurl, darwin }:
stdenv.mkDerivation rec {
pname = "webrtc-audio-processing";
version = "0.3.1";
src = fetchurl {
url = "https://freedesktop.org/software/pulseaudio/webrtc-audio-processing/webrtc-audio-processing-${version}.tar.xz";
sha256 = "1gsx7k77blfy171b6g3m0k0s0072v6jcawhmx1kjs9w5zlwdkzd0";
};
patches = [ ./enable-riscv.patch ];
buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices ]);
patchPhase = lib.optionalString stdenv.hostPlatform.isMusl ''
substituteInPlace webrtc/base/checks.cc --replace 'defined(__UCLIBC__)' 1
'';
meta = with lib; {
homepage = "http://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing";
description = "A more Linux packaging friendly copy of the AudioProcessing module from the WebRTC project";
license = licenses.bsd3;
platforms = platforms.unix;
};
}
@@ -1,19 +1,34 @@
{ lib, stdenv, fetchurl, darwin }:
{ lib, stdenv, fetchurl
, darwin
, abseil-cpp_202111
, meson
, ninja
}:
stdenv.mkDerivation rec {
pname = "webrtc-audio-processing";
version = "0.3.1";
version = "1.0";
src = fetchurl {
url = "https://freedesktop.org/software/pulseaudio/webrtc-audio-processing/webrtc-audio-processing-${version}.tar.xz";
sha256 = "1gsx7k77blfy171b6g3m0k0s0072v6jcawhmx1kjs9w5zlwdkzd0";
url = "https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/archive/v1.0/webrtc-audio-processing-v${version}.tar.gz";
sha256 = "sha256-dqRy1OfOG9TX2cgCD8cowU44zVanns/nPYZrilPfuiU=";
};
patches = [ ./enable-riscv.patch ];
nativeBuildInputs = [
meson
ninja
];
buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices ]);
buildInputs = [
abseil-cpp_202111
] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices ]);
patchPhase = lib.optionalString stdenv.hostPlatform.isMusl ''
patchPhase = ''
# this is just incorrect upstream
# see https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/4
substituteInPlace meson.build \
--replace "absl_flags_registry" "absl_flags_reflection"
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
substituteInPlace webrtc/base/checks.cc --replace 'defined(__UCLIBC__)' 1
'';
@@ -21,6 +36,8 @@ stdenv.mkDerivation rec {
homepage = "http://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing";
description = "A more Linux packaging friendly copy of the AudioProcessing module from the WebRTC project";
license = licenses.bsd3;
platforms = platforms.unix;
# attempts to inline 256bit AVX instructions on x86
# https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/5
platforms = lib.lists.subtractLists platforms.i686 platforms.unix;
};
}

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