From 66f8bb337ade76dbe6e0ddf2e62593046753ac90 Mon Sep 17 00:00:00 2001 From: uku Date: Thu, 23 Nov 2023 15:14:13 +0100 Subject: [PATCH 01/28] shotcut: 21.09.20 -> 23.11.29 --- pkgs/applications/video/shotcut/default.nix | 62 ++++++-------- .../video/shotcut/fix-mlt-ffmpeg-path.patch | 80 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 104 insertions(+), 40 deletions(-) create mode 100644 pkgs/applications/video/shotcut/fix-mlt-ffmpeg-path.patch diff --git a/pkgs/applications/video/shotcut/default.nix b/pkgs/applications/video/shotcut/default.nix index efa7782891ce..42f281567749 100644 --- a/pkgs/applications/video/shotcut/default.nix +++ b/pkgs/applications/video/shotcut/default.nix @@ -1,6 +1,8 @@ { lib , fetchFromGitHub -, mkDerivation +, stdenv +, wrapQtAppsHook +, substituteAll , SDL2 , frei0r , ladspaPlugins @@ -8,72 +10,54 @@ , mlt , jack1 , pkg-config +, fftw , qtbase -, qtmultimedia -, qtx11extras -, qtwebsockets -, qtquickcontrols2 -, qtgraphicaleffects -, qmake , qttools +, qtmultimedia +, qtcharts +, cmake , gitUpdater }: - -assert lib.versionAtLeast mlt.version "6.24.0"; - -mkDerivation rec { +stdenv.mkDerivation rec { pname = "shotcut"; - version = "21.09.20"; + version = "23.11.29"; src = fetchFromGitHub { owner = "mltframework"; repo = "shotcut"; rev = "v${version}"; - sha256 = "1y46n5gmlayfl46l0vhg5g5dbbc0sg909mxb68sia0clkaas8xrh"; + hash = "sha256-szWXX/DIJk5ktESgecglptU1qrnrd/u0N6AffwZ5Tos="; }; - nativeBuildInputs = [ pkg-config qmake ]; + nativeBuildInputs = [ pkg-config cmake wrapQtAppsHook ]; buildInputs = [ SDL2 frei0r ladspaPlugins gettext mlt + fftw qtbase + qttools qtmultimedia - qtx11extras - qtwebsockets - qtquickcontrols2 - qtgraphicaleffects + qtcharts ]; - env.NIX_CFLAGS_COMPILE = "-I${mlt.dev}/include/mlt++ -I${mlt.dev}/include/mlt"; - qmakeFlags = [ - "QMAKE_LRELEASE=${lib.getDev qttools}/bin/lrelease" - "SHOTCUT_VERSION=${version}" - "DEFINES+=SHOTCUT_NOUPGRADE" + env.NIX_CFLAGS_COMPILE = "-DSHOTCUT_NOUPGRADE"; + cmakeFlags = [ + "-DSHOTCUT_VERSION=${version}" ]; - prePatch = '' - sed 's_shotcutPath, "melt[^"]*"_"${mlt}/bin/melt"_' -i src/jobs/meltjob.cpp - sed 's_shotcutPath, "ffmpeg"_"${mlt.ffmpeg}/bin/ffmpeg"_' -i src/jobs/ffmpegjob.cpp - sed 's_qApp->applicationDirPath(), "ffmpeg"_"${mlt.ffmpeg}/bin/ffmpeg"_' -i src/docks/encodedock.cpp - NICE=$(type -P nice) - sed "s_/usr/bin/nice_''${NICE}_" -i src/jobs/meltjob.cpp src/jobs/ffmpegjob.cpp - ''; + patches = [ + (substituteAll { inherit mlt; src = ./fix-mlt-ffmpeg-path.patch; }) + ]; qtWrapperArgs = [ - "--prefix FREI0R_PATH : ${frei0r}/lib/frei0r-1" - "--prefix LADSPA_PATH : ${ladspaPlugins}/lib/ladspa" - "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ jack1 SDL2 ]}" - "--prefix PATH : ${mlt}/bin" + "--set FREI0R_PATH ${frei0r}/lib/frei0r-1" + "--set LADSPA_PATH ${ladspaPlugins}/lib/ladspa" + "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [jack1 SDL2]}" ]; - postInstall = '' - mkdir -p $out/share/shotcut - cp -r src/qml $out/share/shotcut/ - ''; - passthru.updateScript = gitUpdater { rev-prefix = "v"; }; diff --git a/pkgs/applications/video/shotcut/fix-mlt-ffmpeg-path.patch b/pkgs/applications/video/shotcut/fix-mlt-ffmpeg-path.patch new file mode 100644 index 000000000000..fa584162cbe8 --- /dev/null +++ b/pkgs/applications/video/shotcut/fix-mlt-ffmpeg-path.patch @@ -0,0 +1,80 @@ +diff --git a/src/docks/encodedock.cpp b/src/docks/encodedock.cpp +index 3359f676..24e44f98 100644 +--- a/src/docks/encodedock.cpp ++++ b/src/docks/encodedock.cpp +@@ -2177,7 +2177,7 @@ bool EncodeDock::detectHardwareEncoders() + { + MAIN.showStatusMessage(tr("Detecting hardware encoders...")); + QStringList hwlist; +- QFileInfo ffmpegPath(qApp->applicationDirPath(), "ffmpeg"); ++ QFileInfo ffmpegPath("@ffmpeg@/bin/ffmpeg"); + foreach (const QString &codec, codecs()) { + LOG_INFO() << "checking for" << codec; + QProcess proc; +@@ -2220,7 +2220,7 @@ bool EncodeDock::detectHardwareEncoders() + QString &EncodeDock::defaultFormatExtension() + { + auto format = ui->formatCombo->currentText(); +- QFileInfo ffmpegPath(qApp->applicationDirPath(), "ffmpeg"); ++ QFileInfo ffmpegPath("@ffmpeg@/bin/ffmpeg"); + QProcess proc; + QStringList args; + args << "-hide_banner" << "-h" << format.prepend("muxer="); +diff --git a/src/jobs/ffmpegjob.cpp b/src/jobs/ffmpegjob.cpp +index 1f15e647..b6ad6633 100644 +--- a/src/jobs/ffmpegjob.cpp ++++ b/src/jobs/ffmpegjob.cpp +@@ -54,7 +54,7 @@ FfmpegJob::~FfmpegJob() + void FfmpegJob::start() + { + QString shotcutPath = qApp->applicationDirPath(); +- QFileInfo ffmpegPath(shotcutPath, "ffmpeg"); ++ QFileInfo ffmpegPath("@ffmpeg@/bin/ffmpeg"); + setReadChannel(QProcess::StandardError); + LOG_DEBUG() << ffmpegPath.absoluteFilePath() + " " + m_args.join(' '); + AbstractJob::start(ffmpegPath.absoluteFilePath(), m_args); +diff --git a/src/jobs/meltjob.cpp b/src/jobs/meltjob.cpp +index fd8c00b8..9150fe7b 100644 +--- a/src/jobs/meltjob.cpp ++++ b/src/jobs/meltjob.cpp +@@ -98,9 +98,9 @@ void MeltJob::start() + } + QString shotcutPath = qApp->applicationDirPath(); + #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) +- QFileInfo meltPath(shotcutPath, "melt-7"); ++ QFileInfo meltPath("@mlt@/bin/melt"); + #else +- QFileInfo meltPath(shotcutPath, "melt"); ++ QFileInfo meltPath("@mlt@/bin/melt"); + #endif + setReadChannel(QProcess::StandardError); + QStringList args; +diff --git a/src/mltcontroller.cpp b/src/mltcontroller.cpp +index 1e2299ac..b8f39f12 100644 +--- a/src/mltcontroller.cpp ++++ b/src/mltcontroller.cpp +@@ -1555,9 +1555,9 @@ int Controller::checkFile(const QString &path) + || path.endsWith(".aep")) { + QString shotcutPath = qApp->applicationDirPath(); + #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) +- QFileInfo meltPath(shotcutPath, "melt-7"); ++ QFileInfo meltPath("@mlt@/bin/melt"); + #else +- QFileInfo meltPath(shotcutPath, "melt"); ++ QFileInfo meltPath("@mlt@/bin/melt"); + #endif + QStringList args; + args << "-quiet" << "-consumer" << "null" << "real_time=0" << "out=0" << "terminate_on_pause=1" << +diff --git a/src/widgets/directshowvideowidget.cpp b/src/widgets/directshowvideowidget.cpp +index c91ba821..73dd5a61 100644 +--- a/src/widgets/directshowvideowidget.cpp ++++ b/src/widgets/directshowvideowidget.cpp +@@ -35,7 +35,7 @@ DirectShowVideoWidget::DirectShowVideoWidget(QWidget *parent) : + ui->setupUi(this); + Util::setColorsToHighlight(ui->label); + #ifdef Q_OS_WIN +- QFileInfo ffmpegPath(qApp->applicationDirPath(), "ffmpeg"); ++ QFileInfo ffmpegPath("@ffmpeg@/bin/ffmpeg"); + QProcess proc; + QStringList args; + args << "-hide_banner" << "-list_devices" << "true" << "-f" << "dshow" << "-i" << "dummy"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 274e3bc36e98..383a8deaf6f7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34225,7 +34225,7 @@ with pkgs; shod = callPackage ../applications/window-managers/shod { }; - shotcut = libsForQt5.callPackage ../applications/video/shotcut { }; + shotcut = qt6Packages.callPackage ../applications/video/shotcut { }; shogun = callPackage ../applications/science/machine-learning/shogun { protobuf = protobuf_21; From d3ceb22d663e1775194c7946f2cf781e9353085f Mon Sep 17 00:00:00 2001 From: Sefa Eyeoglu Date: Wed, 29 Nov 2023 15:26:34 +0100 Subject: [PATCH 02/28] mlt: fix jackrack support This makes ladspa filters work. Apparently glib is required for jackrack filters to function. Signed-off-by: Sefa Eyeoglu --- pkgs/development/libraries/mlt/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix index ded5a5990a60..22a38921ec49 100644 --- a/pkgs/development/libraries/mlt/default.nix +++ b/pkgs/development/libraries/mlt/default.nix @@ -24,6 +24,7 @@ , cudaSupport ? config.cudaSupport , cudaPackages ? { } , enableJackrack ? stdenv.isLinux +, glib , ladspa-sdk , ladspaPlugins , enablePython ? false @@ -83,6 +84,7 @@ stdenv.mkDerivation rec { ] ++ lib.optionals cudaSupport [ cudaPackages.cuda_cudart ] ++ lib.optionals enableJackrack [ + glib ladspa-sdk ladspaPlugins ] ++ lib.optionals enableQt [ From 6ff039d24c4c33a0cacba4b5bd2396d87ed7c3d5 Mon Sep 17 00:00:00 2001 From: Quantenzitrone Date: Sun, 10 Dec 2023 18:03:18 +0100 Subject: [PATCH 03/28] xdg-terminal-exec: init at unstable-2023-12-08 --- pkgs/by-name/xd/xdg-terminal-exec/package.nix | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 pkgs/by-name/xd/xdg-terminal-exec/package.nix diff --git a/pkgs/by-name/xd/xdg-terminal-exec/package.nix b/pkgs/by-name/xd/xdg-terminal-exec/package.nix new file mode 100644 index 000000000000..1dd07bd22396 --- /dev/null +++ b/pkgs/by-name/xd/xdg-terminal-exec/package.nix @@ -0,0 +1,32 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, +}: +stdenvNoCC.mkDerivation { + pname = "xdg-terminal-exec"; + version = "unstable-2023-12-08"; + + src = fetchFromGitHub { + owner = "Vladimir-csp"; + repo = "xdg-terminal-exec"; + rev = "04f37d4337b6ce157d4a7338dd600a32deb43a28"; + hash = "sha256-QIPdF+/dMUEVcz5j9o+wQ4dnw2yWwz7slnLdMNETkGs="; + }; + + dontBuild = true; + installPhase = '' + runHook preInstall + install -Dm555 xdg-terminal-exec -t $out/bin + runHook postInstall + ''; + + meta = { + description = "Proposal for XDG terminal execution utility"; + homepage = "https://github.com/Vladimir-csp/xdg-terminal-exec"; + license = lib.licenses.gpl3Plus; + mainProgram = "xdg-terminal-exec"; + maintainers = with lib.maintainers; [quantenzitrone]; + platforms = lib.platforms.unix; + }; +} From a025483a41eba6da06665b11228a963abefcc3c6 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Sat, 2 Dec 2023 13:27:11 +0100 Subject: [PATCH 04/28] qMasterPassword: 1.2.4 -> 2.0 https://github.com/bkueng/qMasterPassword/compare/v1.2.4...v2.0 Use Qt6 Add wayland variant which uses no x11 build dependencies and disables form filling features --- .../misc/qMasterPassword/default.nix | 32 +++++++++++-------- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/pkgs/applications/misc/qMasterPassword/default.nix b/pkgs/applications/misc/qMasterPassword/default.nix index 8ac8ae5f4f55..a2be621ad149 100644 --- a/pkgs/applications/misc/qMasterPassword/default.nix +++ b/pkgs/applications/misc/qMasterPassword/default.nix @@ -3,27 +3,33 @@ , fetchFromGitHub , libX11 , libXtst -, qmake +, cmake , qtbase , qttools +, qtwayland , openssl , libscrypt , wrapQtAppsHook +, x11Support ? true +, waylandSupport ? false }: stdenv.mkDerivation rec { pname = "qMasterPassword"; - version = "1.2.4"; + version = "2.0"; src = fetchFromGitHub { owner = "bkueng"; repo = pname; rev = "v${version}"; - sha256 = "sha256-VQ1ZkXaZ5sUbtWa/GreTr5uXvnZ2Go6owJ2ZBK25zns="; + hash = "sha256-4qxPjrf6r2S0l/hcs6bqfJm56jdDz+0a0xEkqGBYGBs="; }; - buildInputs = [ qtbase libX11 libXtst openssl libscrypt ]; - nativeBuildInputs = [ qmake qttools wrapQtAppsHook ]; + buildInputs = [ qtbase qtwayland openssl libscrypt ] ++ lib.optionals x11Support [ libX11 libXtst ]; + nativeBuildInputs = [ cmake qttools wrapQtAppsHook ]; + cmakeFlags = lib.optionals waylandSupport [ + "-DDISABLE_FILL_FORM_SHORTCUTS=1" + ]; # Upstream install is mostly defunct. It hardcodes target.path and doesn't # install anything but the binary. @@ -34,15 +40,13 @@ stdenv.mkDerivation rec { '' else '' mkdir -p $out/bin mkdir -p $out/share/{applications,doc/qMasterPassword,icons/qmasterpassword,icons/hicolor/512x512/apps,qMasterPassword/translations} - mv qMasterPassword $out/bin - mv data/qMasterPassword.desktop $out/share/applications - mv LICENSE README.md $out/share/doc/qMasterPassword - mv data/icons/app_icon.png $out/share/icons/hicolor/512x512/apps/qmasterpassword.png - mv data/icons/* $out/share/icons/qmasterpassword - lrelease ./data/translations/translation_de.ts - lrelease ./data/translations/translation_pl.ts - mv ./data/translations/translation_de.qm $out/share/qMasterPassword/translations/translation_de.qm - mv ./data/translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm + cp qMasterPassword $out/bin + cp $src/data/qMasterPassword.desktop $out/share/applications + cp $src/LICENSE $src/README.md $out/share/doc/qMasterPassword + cp $src/data/icons/app_icon.png $out/share/icons/hicolor/512x512/apps/qmasterpassword.png + cp $src/data/icons/* $out/share/icons/qmasterpassword + cp ./translations/translation_de.qm $out/share/qMasterPassword/translations/translation_de.qm + cp ./translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm ''; meta = with lib; { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 274e3bc36e98..693617d7c293 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -40950,7 +40950,7 @@ with pkgs; gtk2 = gtk2-x11; }; - qMasterPassword = libsForQt5.callPackage ../applications/misc/qMasterPassword { }; + qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { }; qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { }; From 71ae5a5023ed95908afffae436b7b5c69b3dc672 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Mon, 11 Dec 2023 20:16:01 +0100 Subject: [PATCH 05/28] qMasterPassword-wayland: init at 2.0 --- pkgs/top-level/all-packages.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 693617d7c293..e70a3f877177 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -40952,6 +40952,11 @@ with pkgs; qMasterPassword = qt6Packages.callPackage ../applications/misc/qMasterPassword { }; + qMasterPassword-wayland = qt6Packages.callPackage ../applications/misc/qMasterPassword { + x11Support = false; + waylandSupport = true; + }; + qmake2cmake = python3Packages.callPackage ../tools/misc/qmake2cmake { }; qtrvsim = libsForQt5.callPackage ../applications/science/computer-architecture/qtrvsim { }; From 5ee6ca04583366102eaba7cc8b24cf8d40c9b137 Mon Sep 17 00:00:00 2001 From: Gustavo Coutinho de Souza Date: Fri, 1 Dec 2023 11:49:11 -0300 Subject: [PATCH 06/28] hare: migrate to pkgs/by-name --- .../compilers/hare/default.nix => by-name/ha/hare/package.nix} | 0 pkgs/{development/compilers => by-name/ha}/hare/setup-hook.sh | 0 pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 2 deletions(-) rename pkgs/{development/compilers/hare/default.nix => by-name/ha/hare/package.nix} (100%) rename pkgs/{development/compilers => by-name/ha}/hare/setup-hook.sh (100%) diff --git a/pkgs/development/compilers/hare/default.nix b/pkgs/by-name/ha/hare/package.nix similarity index 100% rename from pkgs/development/compilers/hare/default.nix rename to pkgs/by-name/ha/hare/package.nix diff --git a/pkgs/development/compilers/hare/setup-hook.sh b/pkgs/by-name/ha/hare/setup-hook.sh similarity index 100% rename from pkgs/development/compilers/hare/setup-hook.sh rename to pkgs/by-name/ha/hare/setup-hook.sh diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1c80308d1b9a..fc8a480a3a7f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9140,8 +9140,6 @@ with pkgs; llvmPackages = llvmPackages_16; }; - hare = callPackage ../development/compilers/hare { }; - harec = callPackage ../development/compilers/harec { }; hareThirdParty = recurseIntoAttrs (callPackage ./hare-third-party.nix { }); From e3b56dd7021b616f6925a918c68c6224714e2b43 Mon Sep 17 00:00:00 2001 From: Gustavo Coutinho de Souza Date: Fri, 1 Dec 2023 11:50:01 -0300 Subject: [PATCH 07/28] harec: migrate to pkgs/by-name --- .../harec/default.nix => by-name/ha/harec/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{development/compilers/harec/default.nix => by-name/ha/harec/package.nix} (100%) diff --git a/pkgs/development/compilers/harec/default.nix b/pkgs/by-name/ha/harec/package.nix similarity index 100% rename from pkgs/development/compilers/harec/default.nix rename to pkgs/by-name/ha/harec/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fc8a480a3a7f..8ebb0319417a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9140,8 +9140,6 @@ with pkgs; llvmPackages = llvmPackages_16; }; - harec = callPackage ../development/compilers/harec { }; - hareThirdParty = recurseIntoAttrs (callPackage ./hare-third-party.nix { }); ham = pkgs.perlPackages.ham; From a0e632e84e16311d6a5ec0a2209a06b68ac646f0 Mon Sep 17 00:00:00 2001 From: Gustavo Coutinho de Souza Date: Fri, 1 Dec 2023 08:56:08 -0300 Subject: [PATCH 08/28] harec: unstable-2023-10-22 -> unstable-2023-11-29 --- pkgs/by-name/ha/harec/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ha/harec/package.nix b/pkgs/by-name/ha/harec/package.nix index 6ddb5ff1f01c..cbcb53b1ac4e 100644 --- a/pkgs/by-name/ha/harec/package.nix +++ b/pkgs/by-name/ha/harec/package.nix @@ -19,13 +19,13 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "harec"; - version = "unstable-2023-10-22"; + version = "unstable-2023-11-29"; src = fetchFromSourcehut { owner = "~sircmpwn"; repo = "harec"; - rev = "64dea196ce040fbf3417e1b4fb11331688672aca"; - hash = "sha256-2Aeb+OZ/hYUyyxx6aTw+Oxiac+p+SClxtg0h68ZBSHc="; + rev = "ec3193e3870436180b0f3df82b769adc57a1c099"; + hash = "sha256-HXQIgFC4YVDJjo5xbyg1ea3jWYKLEwKkD1KFzWFz9UI= "; }; nativeBuildInputs = [ From 0530fcc0b137fe7e38a58a95b83703777ecac935 Mon Sep 17 00:00:00 2001 From: starzation <145975416+starzation@users.noreply.github.com> Date: Wed, 13 Dec 2023 18:20:19 +0700 Subject: [PATCH 09/28] hareThirdParty.hare-compress: init at unstable-2023-11-01 --- .../hare-compress/default.nix | 31 +++++++++++++++++++ pkgs/top-level/hare-third-party.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/development/hare-third-party/hare-compress/default.nix diff --git a/pkgs/development/hare-third-party/hare-compress/default.nix b/pkgs/development/hare-third-party/hare-compress/default.nix new file mode 100644 index 000000000000..cc52e3e47eab --- /dev/null +++ b/pkgs/development/hare-third-party/hare-compress/default.nix @@ -0,0 +1,31 @@ +{ lib, stdenv, hare, harec, fetchFromSourcehut }: + +stdenv.mkDerivation (finalAttrs: { + pname = "hare-compress"; + version = "unstable-2023-11-01"; + + src = fetchFromSourcehut { + owner = "~sircmpwn"; + repo = "hare-compress"; + rev = "562706946871d1c994f60361883269916cbaa08e"; + hash = "sha256-sz8xPBZaUFye3HH4lkRnH52ye451e6seZXN/qvg87jE="; + }; + + nativeBuildInputs = [ hare ]; + + makeFlags = [ + "HARECACHE=.harecache" + "PREFIX=${builtins.placeholder "out"}" + ]; + + doCheck = true; + + meta = with lib; { + homepage = "https://git.sr.ht/~sircmpwn/hare-compress/"; + description = "Compression algorithms for Hare"; + license = with licenses; [ mpl20 ]; + maintainers = with maintainers; [ starzation ]; + + inherit (harec.meta) platforms badPlatforms; + }; +}) diff --git a/pkgs/top-level/hare-third-party.nix b/pkgs/top-level/hare-third-party.nix index 084e749c676c..73ffbc0ea790 100644 --- a/pkgs/top-level/hare-third-party.nix +++ b/pkgs/top-level/hare-third-party.nix @@ -6,4 +6,6 @@ let in { hare-json = callPackage ../development/hare-packages/hare-json { }; + + hare-compress = callPackage ../development/hare-third-party/hare-compress {}; }) From 90d5382750b6f6923dbb9f25766367011230b941 Mon Sep 17 00:00:00 2001 From: teutat3s <10206665+teutat3s@users.noreply.github.com> Date: Tue, 12 Dec 2023 17:25:43 +0100 Subject: [PATCH 10/28] qMasterPassword.tests: init version test --- pkgs/applications/misc/qMasterPassword/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/applications/misc/qMasterPassword/default.nix b/pkgs/applications/misc/qMasterPassword/default.nix index a2be621ad149..436c1fc70377 100644 --- a/pkgs/applications/misc/qMasterPassword/default.nix +++ b/pkgs/applications/misc/qMasterPassword/default.nix @@ -10,6 +10,8 @@ , openssl , libscrypt , wrapQtAppsHook +, testers +, qMasterPassword , x11Support ? true , waylandSupport ? false }: @@ -49,6 +51,13 @@ stdenv.mkDerivation rec { cp ./translations/translation_pl.qm $out/share/qMasterPassword/translations/translation_pl.qm ''; + passthru = { + tests.version = testers.testVersion { + package = qMasterPassword; + version = "v${version}"; + }; + }; + meta = with lib; { description = "Stateless Master Password Manager"; longDescription = '' From 6d499a262d2a26db1dab7d9c77fa135566e2b18b Mon Sep 17 00:00:00 2001 From: gaykitty <126119280+gaykitty@users.noreply.github.com> Date: Mon, 4 Dec 2023 14:59:33 -0500 Subject: [PATCH 11/28] framework-laptop-kmod: init at unstable-2023-12-03 --- .../linux/framework-laptop-kmod/default.nix | 38 +++++++++++++++++++ pkgs/top-level/linux-kernels.nix | 2 + 2 files changed, 40 insertions(+) create mode 100644 pkgs/os-specific/linux/framework-laptop-kmod/default.nix diff --git a/pkgs/os-specific/linux/framework-laptop-kmod/default.nix b/pkgs/os-specific/linux/framework-laptop-kmod/default.nix new file mode 100644 index 000000000000..088e30e91f8c --- /dev/null +++ b/pkgs/os-specific/linux/framework-laptop-kmod/default.nix @@ -0,0 +1,38 @@ +{ lib +, stdenv +, linuxPackages +, kernel +, fetchFromGitHub +}: + +stdenv.mkDerivation rec { + pname = "framework-laptop-kmod"; + version = "unstable-2023-12-03"; + + src = fetchFromGitHub { + owner = "DHowett"; + repo = "framework-laptop-kmod"; + rev = "d5367eb9e5b5542407494d04ac1a0e77f10cc89d"; + hash = "sha256-t8F4XHPkuCjWBrsEjW97ielYtf3V6hlLsrasvyab198="; + }; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + makeFlags = kernel.makeFlags ++ [ + "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" + ]; + + installPhase = '' + runHook preInstall + install -D framework_laptop.ko -t $out/lib/modules/${kernel.modDirVersion}/extra + runHook postInstall + ''; + + meta = with lib; { + description = "A kernel module that exposes the Framework Laptop (13, 16)'s battery charge limit and LEDs to userspace."; + homepage = "https://github.com/DHowett/framework-laptop-kmod"; + license = licenses.gpl2; + maintainers = with maintainers; [ gaykitty ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index d796fa7164d0..4319affc1032 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -341,6 +341,8 @@ in { fanout = callPackage ../os-specific/linux/fanout { }; + framework-laptop-kmod = callPackage ../os-specific/linux/framework-laptop-kmod { }; + fwts-efi-runtime = callPackage ../os-specific/linux/fwts/module.nix { }; gcadapter-oc-kmod = callPackage ../os-specific/linux/gcadapter-oc-kmod { }; From c29d53ba0fe8ed1f43abc7baca5ad7a60b0ea699 Mon Sep 17 00:00:00 2001 From: networkException Date: Thu, 14 Dec 2023 20:48:50 +0100 Subject: [PATCH 12/28] chromium: 120.0.6099.71 -> 120.0.6099.109 https://chromereleases.googleblog.com/2023/12/stable-channel-update-for-desktop_12.html This update includes 9 security fixes. CVEs: CVE-2023-6702 CVE-2023-6703 CVE-2023-6704 CVE-2023-6705 CVE-2023-6706 CVE-2023-6707 --- .../networking/browsers/chromium/upstream-info.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix index f600049011a0..948f731d23f0 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix @@ -15,9 +15,9 @@ version = "2023-10-23"; }; }; - hash = "sha256-2IYdIhe299Fn5gtmLKxqIPqTYYEpCJqbXh3Vx8zN9Uo="; - hash_deb_amd64 = "sha256-xHwBLIU1QoDM0swG2DzRJ7BY9ESiqOrm4SwvK0mfIZc="; - version = "120.0.6099.71"; + hash = "sha256-Zbo8xvOfvJVkjdqBaApK6hekmuRKHuYWRBTZTpqcOSM="; + hash_deb_amd64 = "sha256-ScFJQB9fY1cWHtFO8GpQ8yuCLaO1AvyAV5lbnqSrPCs="; + version = "120.0.6099.109"; }; ungoogled-chromium = { deps = { From 3644340b6e470140386de27e5789354e0ea0fbf1 Mon Sep 17 00:00:00 2001 From: networkException Date: Thu, 14 Dec 2023 20:49:10 +0100 Subject: [PATCH 13/28] ungoogled-chromium: 120.0.6099.71-1 -> 120.0.6099.109-1 https://chromereleases.googleblog.com/2023/12/stable-channel-update-for-desktop_12.html This update includes 9 security fixes. CVEs: CVE-2023-6702 CVE-2023-6703 CVE-2023-6704 CVE-2023-6705 CVE-2023-6706 CVE-2023-6707 --- .../networking/browsers/chromium/upstream-info.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix index 948f731d23f0..011d36562e1b 100644 --- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix +++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix @@ -28,12 +28,12 @@ version = "2023-10-23"; }; ungoogled-patches = { - hash = "sha256-S0Kt9M21zyjIozJuyy4kBDt07kJxXBR7SoNzdvf0iPI="; - rev = "120.0.6099.71-1"; + hash = "sha256-wiW1w+HVPpEjROuE3yhYuGiZSwI8z5+k1CFnVZ0HtME="; + rev = "120.0.6099.109-1"; }; }; - hash = "sha256-2IYdIhe299Fn5gtmLKxqIPqTYYEpCJqbXh3Vx8zN9Uo="; - hash_deb_amd64 = "sha256-xHwBLIU1QoDM0swG2DzRJ7BY9ESiqOrm4SwvK0mfIZc="; - version = "120.0.6099.71"; + hash = "sha256-Zbo8xvOfvJVkjdqBaApK6hekmuRKHuYWRBTZTpqcOSM="; + hash_deb_amd64 = "sha256-ScFJQB9fY1cWHtFO8GpQ8yuCLaO1AvyAV5lbnqSrPCs="; + version = "120.0.6099.109"; }; } From 9ec60b1f5ff68dd15916b1f3f325aadadd8e57af Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Thu, 14 Dec 2023 21:54:03 +0100 Subject: [PATCH 14/28] slurm: 23.02.6.1 -> 23.02.7.1 Fixes CVE-2023-49935, CVE-2023-49936, CVE-2023-49937, CVE-2023-49938, CVE-2023-49933 --- pkgs/servers/computing/slurm/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/computing/slurm/default.nix b/pkgs/servers/computing/slurm/default.nix index fe8f95ecdf36..21fd28f29923 100644 --- a/pkgs/servers/computing/slurm/default.nix +++ b/pkgs/servers/computing/slurm/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { pname = "slurm"; - version = "23.02.6.1"; + version = "23.02.7.1"; # N.B. We use github release tags instead of https://www.schedmd.com/downloads.php # because the latter does not keep older releases. @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { repo = "slurm"; # The release tags use - instead of . rev = "${pname}-${builtins.replaceStrings ["."] ["-"] version}"; - sha256 = "sha256-azgGM4qfS0xtUaiGfXtu8MNYdgpZRUfx+zBgAAlmt6g="; + sha256 = "sha256-0u96KnEahx7noA8vQEkC1f+hv4d3NGPmnof9G7bA7Oc="; }; outputs = [ "out" "dev" ]; From 22bbd1834e2aed9c917c67d2181fe7cf225cd7a5 Mon Sep 17 00:00:00 2001 From: emilylange Date: Thu, 14 Dec 2023 23:19:25 +0100 Subject: [PATCH 15/28] nixos/node-red: fix `cfg.package` default value This fixes the following eval error: ``` error: nodePackages.node-red cannot be found in pkgs ``` when having `services.node-red.enable = true;` without specifying `services.node-red.package`, just like the nixos VM test. Follow-up of f509382c11ed445b52f249efa6e2fe66d1b56fa7, which attempted to fix this as well. Breakage introduced in 0a37316d6cfea44280f4470b6867a711a24606bd. --- nixos/modules/services/web-apps/node-red.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/web-apps/node-red.nix b/nixos/modules/services/web-apps/node-red.nix index de78f05a98ca..7f265d289bdb 100644 --- a/nixos/modules/services/web-apps/node-red.nix +++ b/nixos/modules/services/web-apps/node-red.nix @@ -19,7 +19,7 @@ in options.services.node-red = { enable = mkEnableOption (lib.mdDoc "the Node-RED service"); - package = mkPackageOption pkgs "nodePackages.node-red" { }; + package = mkPackageOption pkgs.nodePackages "node-red" { }; openFirewall = mkOption { type = types.bool; From a47d6e0fd6edf862d53ea8554a181f810acb21b5 Mon Sep 17 00:00:00 2001 From: Gustavo Coutinho de Souza Date: Sat, 2 Dec 2023 13:13:44 -0300 Subject: [PATCH 16/28] hare: unstable-2023-10-23 -> unstable-2023-11-27 And also: - move platform and arch to outer let-in - patch tzdata paths to use the nix store - set `outputs` to `[ "out" "man" ]` - append `nixpkgs` `hare version`'s output - compact `postFixup` phase - rework description - move `binutils-unwrapped` only to `buildInputs` [1]: https://nixpk.gs/pr-tracker.html?pr=265124 --- pkgs/by-name/ha/hare/001-tzdata.patch | 28 +++++++++ pkgs/by-name/ha/hare/package.nix | 87 ++++++++++++--------------- 2 files changed, 67 insertions(+), 48 deletions(-) create mode 100644 pkgs/by-name/ha/hare/001-tzdata.patch diff --git a/pkgs/by-name/ha/hare/001-tzdata.patch b/pkgs/by-name/ha/hare/001-tzdata.patch new file mode 100644 index 000000000000..bb510514eb53 --- /dev/null +++ b/pkgs/by-name/ha/hare/001-tzdata.patch @@ -0,0 +1,28 @@ +diff --git a/time/chrono/+freebsd.ha b/time/chrono/+freebsd.ha +index 26d78ab1..6861bfe8 100644 +--- a/time/chrono/+freebsd.ha ++++ b/time/chrono/+freebsd.ha +@@ -2,7 +2,7 @@ + // (c) Hare authors + + def LOCALTIME_PATH: str = "/etc/localtime"; +-def ZONEINFO_PREFIX: str = "/usr/share/zoneinfo/"; ++def ZONEINFO_PREFIX: str = "@tzdata@/share/zoneinfo/"; + + // The filepath of the system's "leap-seconds.list" file, which contains UTC/TAI + // leap second data. +diff --git a/time/chrono/+linux.ha b/time/chrono/+linux.ha +index 600f606c..8d5617e2 100644 +--- a/time/chrono/+linux.ha ++++ b/time/chrono/+linux.ha +@@ -2,8 +2,8 @@ + // (c) Hare authors + + def LOCALTIME_PATH: str = "/etc/localtime"; +-def ZONEINFO_PREFIX: str = "/usr/share/zoneinfo/"; ++def ZONEINFO_PREFIX: str = "@tzdata@/share/zoneinfo/"; + + // The filepath of the system's "leap-seconds.list" file, which contains UTC/TAI + // leap second data. +-export def UTC_LEAPSECS_FILE: str = "/usr/share/zoneinfo/leap-seconds.list"; ++export def UTC_LEAPSECS_FILE: str = "@tzdata@/share/zoneinfo/leap-seconds.list"; diff --git a/pkgs/by-name/ha/hare/package.nix b/pkgs/by-name/ha/hare/package.nix index a78b3706f678..c509955c6f09 100644 --- a/pkgs/by-name/ha/hare/package.nix +++ b/pkgs/by-name/ha/hare/package.nix @@ -6,26 +6,40 @@ , makeWrapper , qbe , scdoc +, tzdata +, substituteAll }: let # We use harec's override of qbe until 1.2 is released, but the `qbe` argument # is kept to avoid breakage. qbe = harec.qbeUnstable; + # https://harelang.org/platforms/ + arch = stdenv.hostPlatform.uname.processor; + platform = lib.strings.toLower stdenv.hostPlatform.uname.system; in stdenv.mkDerivation (finalAttrs: { pname = "hare"; - version = "unstable-2023-10-23"; + version = "unstable-2023-11-27"; + + outputs = [ "out" "man" ]; src = fetchFromSourcehut { owner = "~sircmpwn"; repo = "hare"; - rev = "1048620a7a25134db370bf24736efff1ffcb2483"; - hash = "sha256-slQPIhrcM+KAVAvjuRnqNdEAEr4Xa4iQNVEpI7Wl+Ks="; + rev = "d94f355481a320fb2aec13ef62cb3bfe2416f5e4"; + hash = "sha256-Mpl3VO4xvLCKHeYr/FPuS6jl8CkyeqDz18mQ6Zv05oc="; }; + patches = [ + # Replace FHS paths with nix store + (substituteAll { + src = ./001-tzdata.patch; + inherit tzdata; + }) + ]; + nativeBuildInputs = [ - binutils-unwrapped harec makeWrapper qbe @@ -36,62 +50,39 @@ stdenv.mkDerivation (finalAttrs: { binutils-unwrapped harec qbe + tzdata ]; + makeFlags = [ + "HARECACHE=.harecache" + "PREFIX=${builtins.placeholder "out"}" + "PLATFORM=${platform}" + "ARCH=${arch}" + ]; + + enableParallelBuilding = true; + # Append the distribution name to the version - env.LOCALVER = "nix"; + env.LOCALVER = "nixpkgs"; - configurePhase = - let - # https://harelang.org/platforms/ - arch = - if stdenv.isx86_64 then "x86_64" - else if stdenv.isAarch64 then "aarch64" - else if stdenv.hostPlatform.isRiscV && stdenv.is64bit then "riscv64" - else "unsupported"; - platform = - if stdenv.isLinux then "linux" - else if stdenv.isFreeBSD then "freebsd" - else "unsupported"; - in - '' - runHook preConfigure - - cp config.example.mk config.mk - makeFlagsArray+=( - PREFIX="${builtins.placeholder "out"}" - HARECACHE="$(mktemp -d --tmpdir harecache.XXXXXXXX)" - BINOUT="$(mktemp -d --tmpdir bin.XXXXXXXX)" - PLATFORM="${platform}" - ARCH="${arch}" - ) - - runHook postConfigure - ''; + strictDeps = true; doCheck = true; - postFixup = - let - binPath = lib.makeBinPath [ - binutils-unwrapped - harec - qbe - ]; - in - '' - wrapProgram $out/bin/hare --prefix PATH : ${binPath} - ''; + preConfigure = '' + ln -s config.example.mk config.mk + ''; + + postFixup = '' + wrapProgram $out/bin/hare \ + --prefix PATH : ${lib.makeBinPath [binutils-unwrapped harec qbe]} + ''; setupHook = ./setup-hook.sh; - strictDeps = true; - enableParallelBuilding = true; - meta = { homepage = "https://harelang.org/"; - description = - "A systems programming language designed to be simple, stable, and robust"; + description = "Systems programming language designed to be simple, stable, and robust"; license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ onemoresuza ]; mainProgram = "hare"; From ea7e4baea03c8fd6142189567de1225177e37231 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 14 Dec 2023 22:27:45 +0000 Subject: [PATCH 17/28] fg-virgil: 0.16.1 -> 0.17.0 --- pkgs/data/fonts/fg-virgil/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/fonts/fg-virgil/default.nix b/pkgs/data/fonts/fg-virgil/default.nix index fdf83df42e03..e0837c71d8eb 100644 --- a/pkgs/data/fonts/fg-virgil/default.nix +++ b/pkgs/data/fonts/fg-virgil/default.nix @@ -2,13 +2,13 @@ stdenvNoCC.mkDerivation (finalAttrs: { pname = "fg-virgil"; - version = "0.16.1"; + version = "0.17.0"; src = fetchFromGitHub { owner = "excalidraw"; repo = "excalidraw"; rev = "v${finalAttrs.version}"; - hash = "sha256-iziCCHacaShPqb0f5nI8cCinFFs5fB3TcMJrifNhg4I="; + hash = "sha256-awd5jTz4sSiliEq7xt6dUR31C85oDcCP5GLuQn0ohj0="; }; installPhase = '' From e5ede120d292e7b0f2ecba37ced002eec0e35518 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 15 Dec 2023 01:28:14 +0100 Subject: [PATCH 18/28] python311Packages.renault-api: 0.2.0 -> 0.2.1 https://github.com/hacf-fr/renault-api/releases/tag/v0.2.1 --- pkgs/development/python-modules/renault-api/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/renault-api/default.nix b/pkgs/development/python-modules/renault-api/default.nix index 58fc148997b9..6310d70d2cc6 100644 --- a/pkgs/development/python-modules/renault-api/default.nix +++ b/pkgs/development/python-modules/renault-api/default.nix @@ -16,7 +16,7 @@ buildPythonPackage rec { pname = "renault-api"; - version = "0.2.0"; + version = "0.2.1"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "hacf-fr"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-x6+rFstZM7Uplwa8NeRBTb8FYSD/NGjN/3q5earvN7c="; + hash = "sha256-HDaX94XHkyrIA0hWYwcpUItEIeRK2ACvS6jg1YA6Wv4="; }; nativeBuildInputs = [ From c90d5cc985570d8306c82a9ca5d096f1fa683f96 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 15 Dec 2023 01:47:12 +0100 Subject: [PATCH 19/28] python311Packages.zeroconf: 0.128.4 -> 0.129.0 https://github.com/python-zeroconf/python-zeroconf/releases/tag/0.129.0 --- pkgs/development/python-modules/zeroconf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/zeroconf/default.nix b/pkgs/development/python-modules/zeroconf/default.nix index 70524a71d72f..2c6968144304 100644 --- a/pkgs/development/python-modules/zeroconf/default.nix +++ b/pkgs/development/python-modules/zeroconf/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "zeroconf"; - version = "0.128.4"; + version = "0.129.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "jstasiak"; repo = "python-zeroconf"; rev = "refs/tags/${version}"; - hash = "sha256-yNPILYI3zAY4LCWvfKw7iu0H0UNbhfhC9Vyp9fdjwbI="; + hash = "sha256-TjBaKw5AI1xPShmX/Ny7V7pvhz/4xwbxTZrDbMeLF5o="; }; postPatch = '' From 5a1e8c90ab7e7bf88d40c79fc535419363e8869e Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 15 Dec 2023 01:47:21 +0100 Subject: [PATCH 20/28] home-assistant: 2023.12.2 -> 2023.12.3 https://github.com/home-assistant/core/releases/tag/2023.12.3 --- pkgs/servers/home-assistant/component-packages.nix | 2 +- pkgs/servers/home-assistant/default.nix | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index b7b7d702cc79..31a389b98200 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "2023.12.2"; + version = "2023.12.3"; components = { "3_day_blinds" = ps: with ps; [ ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 55a368af3bb6..2323db5b085c 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -311,7 +311,7 @@ let extraBuildInputs = extraPackages python.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "2023.12.2"; + hassVersion = "2023.12.3"; in python.pkgs.buildPythonApplication rec { pname = "homeassistant"; @@ -329,13 +329,13 @@ in python.pkgs.buildPythonApplication rec { owner = "home-assistant"; repo = "core"; rev = "refs/tags/${version}"; - hash = "sha256-uP4aX8Fo4GopvzpZGKFw99rXxudEgsKfhdeMHhXv47s="; + hash = "sha256-pTDYiy9Ux7Rgsf9rXXF3GbaiJkTX5FA/7K2hJtiNOkQ="; }; # Secondary source is pypi sdist for translations sdist = fetchPypi { inherit pname version; - hash = "sha256-1KMTn/iuey/Cug1gq4+54J+ZJTqcU+sW5Zw5tS+DwcQ="; + hash = "sha256-cvsYkuQG4i3GG8VGJ+HGSjdvpSBLzh0BFYQQpoVq4FY="; }; nativeBuildInputs = with python.pkgs; [ From adf2347f8b49860d7c82e98f17b4a4b7a72709fd Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Thu, 14 Dec 2023 18:19:37 +0000 Subject: [PATCH 21/28] erlang_26: 26.1.2 -> 26.2 --- pkgs/development/interpreters/erlang/26.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/erlang/26.nix b/pkgs/development/interpreters/erlang/26.nix index a0e55bad3c5a..502983438df5 100644 --- a/pkgs/development/interpreters/erlang/26.nix +++ b/pkgs/development/interpreters/erlang/26.nix @@ -1,6 +1,6 @@ { mkDerivation }: mkDerivation { - version = "26.1.2"; - sha256 = "sha256-exLLdg7z/HKJI81w33vcQUDF6NG5n2WKtcYwdPxN+0A="; + version = "26.2"; + sha256 = "sha256-mk8vPgWFTMo4oPY/OIdboYMTyxG/22Ow4EYs1b+nHuM="; } From a33ae59eeb935515194f8edabbabe0df767fa8ba Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Fri, 15 Dec 2023 01:10:37 +0000 Subject: [PATCH 22/28] nvidia-optical-flow-sdk: refactor: propagation via setupCudaHook --- .../libraries/nvidia-optical-flow-sdk/default.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/development/libraries/nvidia-optical-flow-sdk/default.nix b/pkgs/development/libraries/nvidia-optical-flow-sdk/default.nix index 2914d059cfaf..813821bfb71c 100644 --- a/pkgs/development/libraries/nvidia-optical-flow-sdk/default.nix +++ b/pkgs/development/libraries/nvidia-optical-flow-sdk/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub }: +{ lib, stdenv, fetchFromGitHub, cudaPackages }: stdenv.mkDerivation { pname = "nvidia-optical-flow-sdk"; @@ -18,10 +18,12 @@ stdenv.mkDerivation { cp -R * $out/include ''; - postFixup = '' - mkdir -p $out/nix-support - echo $pname >> "$out/nix-support/include-in-cudatoolkit-root" - ''; + # Makes setupCudaHook propagate nvidia-optical-flow-sdk together with cuda + # packages. Currently used by opencv4.cxxdev, hopefully can be removed in the + # future + nativeBuildInputs = [ + cudaPackages.markForCudatoolkitRootHook + ]; meta = with lib; { description = "Nvidia optical flow headers for computing the relative motion of pixels between images"; From 5ef866783f04770bb0cc088075eb090627a4f7d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 6 Dec 2023 17:17:47 +0100 Subject: [PATCH 23/28] makeNugetSource: fix meta.description being overwritten, misc cleanup --- .../dotnet/make-nuget-source/default.nix | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/pkgs/build-support/dotnet/make-nuget-source/default.nix b/pkgs/build-support/dotnet/make-nuget-source/default.nix index a23a143ab246..ddc2e7b52dbb 100644 --- a/pkgs/build-support/dotnet/make-nuget-source/default.nix +++ b/pkgs/build-support/dotnet/make-nuget-source/default.nix @@ -6,10 +6,9 @@ }: let - nuget-source = stdenvNoCC.mkDerivation rec { + nuget-source = stdenvNoCC.mkDerivation { inherit name; - meta.description = description; nativeBuildInputs = [ python3 ]; buildCommand = '' @@ -24,11 +23,16 @@ let # Note that this currently ignores any license provided in plain text (e.g. "LICENSE.txt") python ${./extract-licenses-from-nupkgs.py} $out/lib > $out/share/licenses ''; + + meta.description = description; } // { # We need data from `$out` for `meta`, so we have to use overrides as to not hit infinite recursion. - meta.licence = let - depLicenses = lib.splitString "\n" (builtins.readFile "${nuget-source}/share/licenses"); - in (lib.flatten (lib.forEach depLicenses (spdx: - lib.optionals (spdx != "") (lib.getLicenseFromSpdxId spdx) - ))); + meta = nuget-source.meta // { + licenses = let + # TODO: avoid IFD + depLicenses = lib.splitString "\n" (builtins.readFile "${nuget-source}/share/licenses"); + in lib.flatten (lib.forEach depLicenses (spdx: + lib.optionals (spdx != "") (lib.getLicenseFromSpdxId spdx) + )); + }; }; in nuget-source From bf81cded7dfda6d27508cc4638befa87cde00838 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Thu, 7 Dec 2023 00:00:56 +0100 Subject: [PATCH 24/28] makeNugetSource: symlink files instead of copying them this reduces the closure size of the resulting derivation drastically --- pkgs/build-support/dotnet/make-nuget-source/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/dotnet/make-nuget-source/default.nix b/pkgs/build-support/dotnet/make-nuget-source/default.nix index ddc2e7b52dbb..48de65e8a881 100644 --- a/pkgs/build-support/dotnet/make-nuget-source/default.nix +++ b/pkgs/build-support/dotnet/make-nuget-source/default.nix @@ -17,7 +17,7 @@ let # use -L to follow symbolic links. When `projectReferences` is used in # buildDotnetModule, one of the deps will be a symlink farm. find -L ${lib.concatStringsSep " " deps} -type f -name '*.nupkg' -exec \ - cp --no-clobber '{}' $out/lib ';' + ln -s '{}' -t $out/lib ';' # Generates a list of all licenses' spdx ids, if available. # Note that this currently ignores any license provided in plain text (e.g. "LICENSE.txt") From d5b02fef5f6e7f59ad44220012ad8ebd686629fb Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 15 Dec 2023 02:26:58 +0100 Subject: [PATCH 25/28] python311Packages.pyatv: disable failing test --- pkgs/development/python-modules/pyatv/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/pyatv/default.nix b/pkgs/development/python-modules/pyatv/default.nix index b5785dfd3f2e..73c843404565 100644 --- a/pkgs/development/python-modules/pyatv/default.nix +++ b/pkgs/development/python-modules/pyatv/default.nix @@ -92,7 +92,10 @@ buildPythonPackage rec { pytestCheckHook ]; - disabledTests = lib.optionals (stdenv.isDarwin) [ + disabledTests = [ + # https://github.com/postlund/pyatv/issues/2307 + "test_zeroconf_service_published" + ] ++ lib.optionals (stdenv.isDarwin) [ # tests/protocols/raop/test_raop_functional.py::test_stream_retransmission[raop_properties2-2-True] - assert False "test_stream_retransmission" ]; From 805cac89ab33b11c5d5a0287db186568fabebfa4 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Fri, 15 Dec 2023 02:39:47 +0100 Subject: [PATCH 26/28] python311Packages.homeassistant-stubs: 2023.12.2 -> 2023.12.3 https://github.com/KapJI/homeassistant-stubs/releases/tag/2023.12.3 --- pkgs/servers/home-assistant/stubs.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/home-assistant/stubs.nix b/pkgs/servers/home-assistant/stubs.nix index 4995dc43773c..e31c587258b7 100644 --- a/pkgs/servers/home-assistant/stubs.nix +++ b/pkgs/servers/home-assistant/stubs.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "homeassistant-stubs"; - version = "2023.12.2"; + version = "2023.12.3"; format = "pyproject"; disabled = python.version != home-assistant.python.version; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "KapJI"; repo = "homeassistant-stubs"; rev = "refs/tags/${version}"; - hash = "sha256-O5qVC/ffI+bS+cS3i+qmJFYCazDaZwmrnFwUj/jKC20="; + hash = "sha256-PQZsesdGqeZgQUgO7DkKDcBrWRM/CY8giPx8cK3531s="; }; nativeBuildInputs = [ From 439350753ed2e27b0aa4fa1cfdf3ea80ea344644 Mon Sep 17 00:00:00 2001 From: networkException Date: Wed, 13 Dec 2023 02:51:17 +0100 Subject: [PATCH 27/28] nixos/sysctl: use highest value on conflict for net.core.wmem_max we previously defined a custom type for `boot.kernel.sysctl."net.core.rmem_max"` to resolve to the highest value set. this patch adds the same behavior to `"net.core.wmem_max"`. as this changes the type from a string to an integer, which is a breaking change this patch also includes a release note and updates the transmission module to use a number for `wmem_max`. --- .../manual/release-notes/rl-2405.section.md | 2 ++ nixos/modules/config/sysctl.nix | 24 ++++++++++++------- .../modules/services/torrent/transmission.nix | 2 +- 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/nixos/doc/manual/release-notes/rl-2405.section.md b/nixos/doc/manual/release-notes/rl-2405.section.md index 2e9cd781ffb1..6e9c741e8347 100644 --- a/nixos/doc/manual/release-notes/rl-2405.section.md +++ b/nixos/doc/manual/release-notes/rl-2405.section.md @@ -67,6 +67,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m `globalRedirect` can now have redirect codes other than 301 through `redirectCode`. +- [](#opt-boot.kernel.sysctl._net.core.wmem_max_) changed from a string to an integer because of the addition of a custom merge option (taking the highest value defined to avoid conflicts between 2 services trying to set that value), just as [](#opt-boot.kernel.sysctl._net.core.rmem_max_) since 22.11. + - Gitea 1.21 upgrade has several breaking changes, including: - Custom themes and other assets that were previously stored in `custom/public/*` now belong in `custom/public/assets/*` - New instances of Gitea using MySQL now ignore the `[database].CHARSET` config option and always use the `utf8mb4` charset, existing instances should migrate via the `gitea doctor convert` CLI command. diff --git a/nixos/modules/config/sysctl.nix b/nixos/modules/config/sysctl.nix index 452c050b6dda..b779f12aca30 100644 --- a/nixos/modules/config/sysctl.nix +++ b/nixos/modules/config/sysctl.nix @@ -21,19 +21,27 @@ in options = { boot.kernel.sysctl = mkOption { - type = types.submodule { + type = let + highestValueType = types.ints.unsigned // { + merge = loc: defs: + foldl + (a: b: if b.value == null then null else lib.max a b.value) + 0 + (filterOverrides defs); + }; + in types.submodule { freeformType = types.attrsOf sysctlOption; options."net.core.rmem_max" = mkOption { - type = types.nullOr types.ints.unsigned // { - merge = loc: defs: - foldl - (a: b: if b.value == null then null else lib.max a b.value) - 0 - (filterOverrides defs); - }; + type = types.nullOr highestValueType; default = null; description = lib.mdDoc "The maximum socket receive buffer size. In case of conflicting values, the highest will be used."; }; + + options."net.core.wmem_max" = mkOption { + type = types.nullOr highestValueType; + default = null; + description = lib.mdDoc "The maximum socket send buffer size. In case of conflicting values, the highest will be used."; + }; }; default = {}; example = literalExpression '' diff --git a/nixos/modules/services/torrent/transmission.nix b/nixos/modules/services/torrent/transmission.nix index 88537f8c4f7b..7fb7847ce935 100644 --- a/nixos/modules/services/torrent/transmission.nix +++ b/nixos/modules/services/torrent/transmission.nix @@ -434,7 +434,7 @@ in # at least up to the values hardcoded here: (mkIf cfg.settings.utp-enabled { "net.core.rmem_max" = mkDefault 4194304; # 4MB - "net.core.wmem_max" = mkDefault "1048576"; # 1MB + "net.core.wmem_max" = mkDefault 1048576; # 1MB }) (mkIf cfg.performanceNetParameters { # Increase the number of available source (local) TCP and UDP ports to 49151. From 968905ab76aba874bc4818eb3a491b94241aca25 Mon Sep 17 00:00:00 2001 From: networkException Date: Wed, 13 Dec 2023 02:55:50 +0100 Subject: [PATCH 28/28] nixos/caddy: also increase socket send buffer size as recommended by upstream this patch adjusts the `boot.kernel.sysctl."net.core.wmem_max"` to match the value suggested in the quic-go wiki, just as `"net.core.wmem_max"`. see fdfdc5df21d3df985b751bc61929e2305882dd48 see https://github.com/quic-go/quic-go/issues/3923 --- nixos/modules/services/web-servers/caddy/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/web-servers/caddy/default.nix b/nixos/modules/services/web-servers/caddy/default.nix index 9a544e98cfc4..95dc219d108c 100644 --- a/nixos/modules/services/web-servers/caddy/default.nix +++ b/nixos/modules/services/web-servers/caddy/default.nix @@ -342,8 +342,9 @@ in } ''; - # https://github.com/lucas-clemente/quic-go/wiki/UDP-Receive-Buffer-Size + # https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes boot.kernel.sysctl."net.core.rmem_max" = mkDefault 2500000; + boot.kernel.sysctl."net.core.wmem_max" = mkDefault 2500000; systemd.packages = [ cfg.package ]; systemd.services.caddy = {