Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-01-25 00:02:13 +00:00 committed by GitHub
commit a4b5a14b07
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
73 changed files with 3181 additions and 2403 deletions

View File

@ -8,7 +8,15 @@ name: Check pkgs/by-name
# see pkgs/test/nixpkgs-check-by-name/scripts/README.md
on:
# Using pull_request_target instead of pull_request avoids having to approve first time contributors
pull_request_target
pull_request_target:
# This workflow depends on the base branch of the PR,
# but changing the base branch is not included in the default trigger events,
# which would be `opened`, `synchronize` or `reopened`.
# Instead it causes an `edited` event, so we need to add it explicitly here
# While `edited` is also triggered when the PR title/body is changed,
# this PR action is fairly quick, and PR's don't get edited that often,
# so it shouldn't be a problem
types: [opened, synchronize, reopened, edited]
permissions:
# We need this permission to cancel the workflow run if there's a merge conflict

View File

@ -38,8 +38,6 @@ The file system can be configured in NixOS via the usual [fileSystems](#opt-file
Here's a typical setup:
```nix
{
system.fsPackages = [ pkgs.sshfs ];
fileSystems."/mnt/my-dir" = {
device = "my-user@example.com:/my-dir/";
fsType = "sshfs";

View File

@ -1519,6 +1519,7 @@
./tasks/filesystems/nfs.nix
./tasks/filesystems/ntfs.nix
./tasks/filesystems/reiserfs.nix
./tasks/filesystems/sshfs.nix
./tasks/filesystems/squashfs.nix
./tasks/filesystems/unionfs-fuse.nix
./tasks/filesystems/vboxsf.nix

View File

@ -16,6 +16,7 @@ let
"fwupd/fwupd.conf" = {
source = format.generate "fwupd.conf" {
fwupd = cfg.daemonSettings;
} // lib.optionalAttrs (lib.length (lib.attrNames cfg.uefiCapsuleSettings) != 0) {
uefi_capsule = cfg.uefiCapsuleSettings;
};
# fwupd tries to chmod the file if it doesn't have the right permissions

View File

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
config = lib.mkIf (lib.any (fs: fs == "sshfs" || fs == "fuse.sshfs") config.boot.supportedFilesystems) {
system.fsPackages = [ pkgs.sshfs ];
};
}

View File

@ -18,13 +18,13 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "gpxsee";
version = "13.14";
version = "13.15";
src = fetchFromGitHub {
owner = "tumic0";
repo = "GPXSee";
rev = finalAttrs.version;
hash = "sha256-9Vq5CfZi58hqTKnIZSR5iQefXzNq0BErtZ8NoxLchxo=";
hash = "sha256-+JxxJKHOCz1Ccii27II4L4owo/qvb7RQ6STqJ+PEEBA=";
};
buildInputs = [

View File

@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "iptsd";
version = "1.4.0";
version = "2";
src = fetchFromGitHub {
owner = "linux-surface";
repo = pname;
rev = "v${version}";
hash = "sha256-qBABt0qEePGrZH4khnikvStrSi/OVmP3yVMJZbEd36M=";
hash = "sha256-zTXTyDgSa1akViDZlYLtJk1yCREGCSJKxzF+HZAWx0c=";
};
nativeBuildInputs = [
@ -68,6 +68,7 @@ stdenv.mkDerivation rec {
description = "Userspace daemon for Intel Precise Touch & Stylus";
homepage = "https://github.com/linux-surface/iptsd";
license = licenses.gpl2Plus;
mainProgram = "iptsd";
maintainers = with maintainers; [ tomberek dotlambda ];
platforms = platforms.linux;
};

View File

@ -6,14 +6,35 @@
, python3
}:
python3.pkgs.buildPythonApplication rec {
let
py = python3.override {
packageOverrides = self: super: {
# Doesn't work with latest urwid
urwid = super.urwid.overridePythonAttrs (oldAttrs: rec {
version = "2.1.2";
src = fetchFromGitHub {
owner = "urwid";
repo = "urwid";
rev = "refs/tags/${version}";
hash = "sha256-oPb2h/+gaqkZTXIiESjExMfBNnOzDvoMkXvkZ/+KVwo=";
};
doCheck = false;
});
};
};
in
with py.pkgs;
buildPythonApplication rec {
pname = "khal";
version = "0.11.2";
pyproject = true;
src = fetchFromGitHub {
owner = "pimutils";
repo = pname;
rev = "v${version}";
repo = "khal";
rev = "refs/tags/v${version}";
hash = "sha256-yI33pB/t+UISvSbLUzmsZqBxLF6r8R3j9iPNeosKcYw=";
};
@ -21,12 +42,13 @@ python3.pkgs.buildPythonApplication rec {
glibcLocales
installShellFiles
] ++ (with python3.pkgs; [
setuptools
setuptools-scm
sphinx
sphinxcontrib-newsfeed
]);
propagatedBuildInputs = with python3.pkgs;[
propagatedBuildInputs = with py.pkgs;[
atomicwrites
click
click-log
@ -82,6 +104,7 @@ python3.pkgs.buildPythonApplication rec {
meta = with lib; {
description = "CLI calendar application";
homepage = "http://lostpackets.de/khal/";
changelog = "https://github.com/pimutils/khal/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ gebner ];
};

View File

@ -48,11 +48,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "mysql-workbench";
version = "8.0.34";
version = "8.0.36";
src = fetchurl {
url = "https://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-${finalAttrs.version}-src.tar.gz";
hash = "sha256-ub/D6HRtXOvX+lai71t1UjMmMzBsz5ljCrJCuf9aq7U=";
hash = "sha256-Y02KZrbCd3SRBYpgq6gYfpR+TEmg566D3zEvpwcUY3w=";
};
patches = [

View File

@ -3,10 +3,10 @@
{
firefox = buildMozillaMach rec {
pname = "firefox";
version = "121.0.1";
version = "122.0";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "7810850a922cb4a274ced6556e14256d3ff518a96f10a0f86d1f8e40daa0a8b1a5cfcc9cbf1391029d920944e94a9149951ee107a0e718a294954bb50b6ced2e";
sha512 = "619b735c16970207f3f8fb31dd2350a5e665a802c30501c89aee4817b8b0f7f466da93c66ab238e94967587e538e6858934b18164ff312dbdbfbc3b2bf8bd824";
};
extraPatches = [
@ -94,11 +94,11 @@
firefox-esr-115 = buildMozillaMach rec {
pname = "firefox-esr-115";
version = "115.6.0esr";
version = "115.7.0esr";
applicationName = "Mozilla Firefox ESR";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "9fe23b5f715e35b788d9c8fefe6b7be8785789b4ae6f5649b05a54221934101c6e1b9580319145f9bcaebfbd00fcc33e97afb63f7d57ba102a6b02c874d324af";
sha512 = "d468d8ef117d76e0660c5359c3becf0502354c61bdaaeb4137d86f52b50143abec2ac4578af69afa5670700b57efff1c7323ca23e3339a9eaaa888dee7e8e922";
};
meta = {

View File

@ -14,13 +14,13 @@
let
package = buildGoModule rec {
pname = "opentofu";
version = "1.6.0";
version = "1.6.1";
src = fetchFromGitHub {
owner = "opentofu";
repo = "opentofu";
rev = "v${version}";
hash = "sha256-S/D2qaXdBGEJS1/ihPJAEueUvD2bmqG1hpv+HTXCJSQ=";
hash = "sha256-wEDxZtmC+SLIYbN+mGTmefcD6VZu87E9E0XhiJPGmK0=";
};
vendorHash = "sha256-kSm5RZqQRgbmPaKt5IWmuMhHwAu+oJKTX1q1lbE7hWk=";

View File

@ -31,13 +31,13 @@ let
in
stdenv.mkDerivation rec {
pname = "firewalld";
version = "2.0.2";
version = "2.1.0";
src = fetchFromGitHub {
owner = "firewalld";
repo = "firewalld";
rev = "v${version}";
sha256 = "sha256-nCCIi+UAQqvx+IqQDr6tQj42OHYamvCnKeBJOm6XjZE=";
sha256 = "sha256-3kP8Z8YtIcLHOFj9gqspSClsxWiefOqZlJQ5OzNZPeY=";
};
patches = [

View File

@ -21,3 +21,23 @@ index 28c95ea9..790b0b73 100644
namespace rtc {
class BitBuffer;
}
--- a/src/rtc_base/third_party/base64/base64.h
+++ b/src/rtc_base/third_party/base64/base64.h
@@ -11,6 +11,7 @@
#ifndef RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_
#define RTC_BASE_THIRD_PARTY_BASE64_BASE64_H_
+#include <cstdint>
#include <string>
#include <vector>
--- a/src/modules/audio_processing/transient/file_utils.h
+++ b/src/modules/audio_processing/transient/file_utils.h
@@ -11,6 +11,7 @@
#ifndef MODULES_AUDIO_PROCESSING_TRANSIENT_FILE_UTILS_H_
#define MODULES_AUDIO_PROCESSING_TRANSIENT_FILE_UTILS_H_
+#include <stdint.h>
#include <string.h>
#include "rtc_base/system/file_wrapper.h"

View File

@ -6,16 +6,16 @@
buildGoModule rec {
pname = "rclone";
version = "1.65.1";
version = "1.65.2";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
hash = "sha256-wRksCRQR6JZjYtXgq3iARCoYck76O17Kd2Ht1XpA9KE=";
hash = "sha256-P7VJ6pauZ7J8LvyYNi7ANsKrYOcmInZCfRO+X+K6LzI=";
};
vendorHash = "sha256-kWaMo6ALieuwf53H05UdoI7xtH1LAnsD6Ak9bJTa6jc=";
vendorHash = "sha256-budC8psvTtfVi3kYOaJ+dy/9H11ekJVkXMmeV9RhXVU=";
subPackages = [ "." ];

View File

@ -1,45 +1,57 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config
, libX11, glfw, glew, fftwFloat, volk, AppKit
, libX11, glfw, glew, fftwFloat, volk, zstd, AppKit
# Sources
, airspy_source ? true, airspy
, airspyhf_source ? true, airspyhf
, bladerf_source ? false, libbladeRF
, bladerf_source ? true, libbladeRF
, file_source ? true
, hackrf_source ? true, hackrf
, limesdr_source ? false, limesuite
, sddc_source ? false
, rtl_sdr_source ? true, rtl-sdr, libusb1
, limesdr_source ? true, limesuite
, perseus_source ? false # needs libperseus-sdr, not yet available in nixpks
, plutosdr_source ? stdenv.isLinux, libiio, libad9361
, rfspace_source ? true
, rtl_sdr_source ? true, rtl-sdr-osmocom, libusb1 # osmocom better w/ rtlsdr v4
, rtl_tcp_source ? true
, sdrplay_source ? false, sdrplay
, soapy_source ? true, soapysdr
, spyserver_source ? true
, plutosdr_source ? stdenv.isLinux, libiio, libad9361
, usrp_source ? false, uhd, boost
# Sinks
, audio_sink ? true, rtaudio
, portaudio_sink ? false, portaudio
, network_sink ? true
, portaudio_sink ? false, portaudio
# Decoders
, falcon9_decoder ? false
, m17_decoder ? false, codec2
, meteor_demodulator ? true
, radio ? true
, weather_sat_decoder ? true
, weather_sat_decoder ? false # is missing some dsp/pll.h
# Misc
, discord_presence ? true
, frequency_manager ? true
, recorder ? true
, rigctl_server ? true
, scanner ? true
}:
stdenv.mkDerivation rec {
pname = "sdrpp";
version = "1.0.4";
# SDR++ uses a rolling release model.
# Choose a git hash from head and use the date from that commit as
# version qualifier
git_hash = "27ab5bf3c194169ddf60ca312723fce96149cc8e";
git_date = "2024-01-22";
version = "1.1.0-unstable-" + git_date;
src = fetchFromGitHub {
owner = "AlexandreRouma";
repo = "SDRPlusPlus";
rev = version;
hash = "sha256-g9tpWvVRMXRhPfgvOeJhX6IMouF9+tLUr9wo5r35i/c=";
rev = git_hash;
hash = "sha256-R4xWeqdHEAaje37VQaGlg+L2iYIOH4tXMHvZkZq4SDU=";
};
patches = [ ./runtime-prefix.patch ];
@ -50,11 +62,14 @@ stdenv.mkDerivation rec {
--replace "set(CMAKE_INSTALL_PREFIX" "#set(CMAKE_INSTALL_PREFIX"
substituteInPlace decoder_modules/m17_decoder/src/m17dsp.h \
--replace "codec2.h" "codec2/codec2.h"
# Since the __TIME_ and __DATE__ is canonicalized in the build,
# use our qualified version shown in the programs window title.
substituteInPlace core/src/version.h --replace "1.1.0" "$version"
'';
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ glfw glew fftwFloat volk ]
buildInputs = [ glfw glew fftwFloat volk zstd ]
++ lib.optional stdenv.isDarwin AppKit
++ lib.optional stdenv.isLinux libX11
++ lib.optional airspy_source airspy
@ -62,42 +77,52 @@ stdenv.mkDerivation rec {
++ lib.optional bladerf_source libbladeRF
++ lib.optional hackrf_source hackrf
++ lib.optional limesdr_source limesuite
++ lib.optionals rtl_sdr_source [ rtl-sdr libusb1 ]
++ lib.optionals rtl_sdr_source [ rtl-sdr-osmocom libusb1 ]
++ lib.optional sdrplay_source sdrplay
++ lib.optional soapy_source soapysdr
++ lib.optionals plutosdr_source [ libiio libad9361 ]
++ lib.optionals usrp_source [ uhd boost ]
++ lib.optional audio_sink rtaudio
++ lib.optional portaudio_sink portaudio
++ lib.optional m17_decoder codec2;
cmakeFlags = lib.mapAttrsToList (k: v: "-D${k}=${if v then "ON" else "OFF"}") {
OPT_BUILD_AIRSPY_SOURCE = airspy_source;
OPT_BUILD_AIRSPYHF_SOURCE = airspyhf_source;
OPT_BUILD_BLADERF_SOURCE = bladerf_source;
OPT_BUILD_FILE_SOURCE = file_source;
OPT_BUILD_HACKRF_SOURCE = hackrf_source;
OPT_BUILD_LIMESDR_SOURCE = limesdr_source;
OPT_BUILD_SDDC_SOURCE = sddc_source;
OPT_BUILD_RTL_SDR_SOURCE = rtl_sdr_source;
OPT_BUILD_RTL_TCP_SOURCE = rtl_tcp_source;
OPT_BUILD_SDRPLAY_SOURCE = sdrplay_source;
OPT_BUILD_SOAPY_SOURCE = soapy_source;
OPT_BUILD_SPYSERVER_SOURCE = spyserver_source;
OPT_BUILD_PLUTOSDR_SOURCE = plutosdr_source;
OPT_BUILD_AUDIO_SINK = audio_sink;
OPT_BUILD_PORTAUDIO_SINK = portaudio_sink;
OPT_BUILD_NETWORK_SINK = network_sink;
OPT_BUILD_NEW_PORTAUDIO_SINK = portaudio_sink;
OPT_BUILD_FALCON9_DECODER = falcon9_decoder;
OPT_BUILD_M17_DECODER = m17_decoder;
OPT_BUILD_METEOR_DEMODULATOR = meteor_demodulator;
OPT_BUILD_RADIO = radio;
OPT_BUILD_WEATHER_SAT_DECODER = weather_sat_decoder;
OPT_BUILD_DISCORD_PRESENCE = discord_presence;
OPT_BUILD_FREQUENCY_MANAGER = frequency_manager;
OPT_BUILD_RECORDER = recorder;
OPT_BUILD_RIGCTL_SERVER = rigctl_server;
};
cmakeFlags = [
# Sources
(lib.cmakeBool "OPT_BUILD_AIRSPYHF_SOURCE" airspyhf_source)
(lib.cmakeBool "OPT_BUILD_AIRSPY_SOURCE" airspy_source)
(lib.cmakeBool "OPT_BUILD_BLADERF_SOURCE" bladerf_source)
(lib.cmakeBool "OPT_BUILD_FILE_SOURCE" file_source)
(lib.cmakeBool "OPT_BUILD_HACKRF_SOURCE" hackrf_source)
(lib.cmakeBool "OPT_BUILD_LIMESDR_SOURCE" limesdr_source)
(lib.cmakeBool "OPT_BUILD_PERSEUS_SOURCE" perseus_source)
(lib.cmakeBool "OPT_BUILD_PLUTOSDR_SOURCE" plutosdr_source)
(lib.cmakeBool "OPT_BUILD_RFSPACE_SOURCE" rfspace_source)
(lib.cmakeBool "OPT_BUILD_RTL_SDR_SOURCE" rtl_sdr_source)
(lib.cmakeBool "OPT_BUILD_RTL_TCP_SOURCE" rtl_tcp_source)
(lib.cmakeBool "OPT_BUILD_SDRPLAY_SOURCE" sdrplay_source)
(lib.cmakeBool "OPT_BUILD_SOAPY_SOURCE" soapy_source)
(lib.cmakeBool "OPT_BUILD_SPYSERVER_SOURCE" spyserver_source)
(lib.cmakeBool "OPT_BUILD_USRP_SOURCE" usrp_source)
# Sinks
(lib.cmakeBool "OPT_BUILD_AUDIO_SINK" audio_sink)
(lib.cmakeBool "OPT_BUILD_NETWORK_SINK" network_sink)
(lib.cmakeBool "OPT_BUILD_NEW_PORTAUDIO_SINK" portaudio_sink)
# Decoders
(lib.cmakeBool "OPT_BUILD_FALCON9_DECODER" falcon9_decoder)
(lib.cmakeBool "OPT_BUILD_M17_DECODER" m17_decoder)
(lib.cmakeBool "OPT_BUILD_METEOR_DEMODULATOR" meteor_demodulator)
(lib.cmakeBool "OPT_BUILD_RADIO" radio)
(lib.cmakeBool "OPT_BUILD_WEATHER_SAT_DECODER" weather_sat_decoder)
# Misc
(lib.cmakeBool "OPT_BUILD_DISCORD_PRESENCE" discord_presence)
(lib.cmakeBool "OPT_BUILD_FREQUENCY_MANAGER" frequency_manager)
(lib.cmakeBool "OPT_BUILD_RECORDER" recorder)
(lib.cmakeBool "OPT_BUILD_RIGCTL_SERVER" rigctl_server)
(lib.cmakeBool "OPT_BUILD_SCANNER" scanner)
];
env.NIX_CFLAGS_COMPILE = "-fpermissive";

View File

@ -25,14 +25,14 @@ let
};
in
stdenv.mkDerivation rec {
version = "16.1.47";
version = "16.1.49";
pname = "jmol";
src = let
baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
in fetchurl {
url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
hash = "sha256-3hsH+RkPPoViKp1bc/88GDVSG8jf9hiPKPkUfe9PIkk=";
hash = "sha256-rzW0dB6LkKnbqHMLII6u3a6iJ1nz6gys/TN0fZFcrBk=";
};
patchPhase = ''

View File

@ -121,7 +121,7 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "fwupd";
version = "1.9.11";
version = "1.9.12";
# libfwupd goes to lib
# daemon, plug-ins and libfwupdplugin go to out
@ -132,7 +132,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "fwupd";
repo = "fwupd";
rev = finalAttrs.version;
hash = "sha256-chPZ9nGhFcaExoJDJvFy8terIGZRU6S90RKBYkoWyGQ=";
hash = "sha256-hPRp61m/XTXFacYkBOb4SsG4fcFvWrdMfc+sxLk5/sQ=";
};
patches = [
@ -256,9 +256,6 @@ stdenv.mkDerivation (finalAttrs: {
contrib/generate-man.py \
po/test-deps
substituteInPlace data/installed-tests/fwupdmgr-p2p.sh \
--replace "gdbus" ${glib.bin}/bin/gdbus
# tests fail with: Failed to load SMBIOS: neither SMBIOS or DT found
sed -i 's/test(.*)//' plugins/lenovo-thinklmi/meson.build
sed -i 's/test(.*)//' plugins/mtd/meson.build

View File

@ -48,6 +48,8 @@ stdenv.mkDerivation (finalAttrs: {
install -Dm444 -t $out/bin bin/jdtls.py
'';
passthru.updateScript = ./update.sh;
meta = {
homepage = "https://github.com/eclipse/eclipse.jdt.ls";
description = "Java language server";

View File

@ -0,0 +1,21 @@
#! /usr/bin/env nix-shell
#! nix-shell -i bash --pure -p curl cacert libxml2 yq nix jq
set -euo pipefail
cd "$(dirname "${BASH_SOURCE[0]}")"
DRV_DIR="$PWD"
# scrape the downloads page for release info
newver=$(curl -s 'https://download.eclipse.org/jdtls/milestones/' | xmllint --html - --xmlout 2>/dev/null | xq --raw-output '.html.body.main.div.div.div[0].div.table.tr | max_by(.td[3]).td[1].a.["#text"]')
prefix="https://download.eclipse.org/jdtls/milestones/$newver"
filename=$(curl -s "$prefix/latest.txt")
newtimestamp=$(echo $filename | sed "s|^.*-$newver-||;s|\.tar\.gz$||")
newhash="$(nix-hash --to-sri --type sha256 $(nix-prefetch-url "$prefix/$filename"))";
sed -i default.nix \
-e "/^ version =/ s|\".*\"|\"$newver\"|" \
-e "/^ timestamp =/ s|\".*\"|\"$newtimestamp\"|" \
-e "/^ hash =/ s|\".*\"|\"$newhash\"|" \

View File

@ -0,0 +1,95 @@
{ lib
, darwin
, fetchurl
, fetchpatch
, openssl
, stdenv
, vlc
}:
stdenv.mkDerivation (finalAttrs: {
pname = "live555";
version = "2023.11.30";
src = fetchurl {
urls = [
"http://www.live555.com/liveMedia/public/live.${finalAttrs.version}.tar.gz"
"https://src.rrz.uni-hamburg.de/files/src/live555/live.${finalAttrs.version}.tar.gz"
"https://download.videolan.org/contrib/live555/live.${finalAttrs.version}.tar.gz"
"mirror://sourceforge/slackbuildsdirectlinks/live.${finalAttrs.version}.tar.gz"
];
hash = "sha256-xue+9YtdAM2XkzAY6dU2PZ3n6bvPwlULIHqBqc8wuSU=";
};
patches = [
(fetchpatch {
name = "cflags-when-darwin.patch";
url = "https://github.com/rgaufman/live555/commit/16701af5486bb3a2d25a28edaab07789c8a9ce57.patch?full_index=1";
hash = "sha256-IDSdByBu/EBLsUTBe538rWsDwH61RJfAEhvT68Nb9rU=";
})
];
nativeBuildInputs = lib.optionals stdenv.isDarwin [
darwin.cctools
];
buildInputs = [
openssl
];
strictDeps = true;
# Since NIX_CFLAGS_COMPILE does not differentiate C and C++ toolchains, we
# set CXXFLAGS directly
env.CXXFLAGS = "-std=c++20";
postPatch = ''
substituteInPlace config.macosx-catalina \
--replace '/usr/lib/libssl.46.dylib' "${lib.getLib openssl}/lib/libssl.dylib" \
--replace '/usr/lib/libcrypto.44.dylib' "${lib.getLib openssl}/lib/libcrypto.dylib"
sed -i -e 's|/bin/rm|rm|g' genMakefiles
sed -i \
-e 's/$(INCLUDES) -I. -O2 -DSOCKLEN_T/$(INCLUDES) -I. -O2 -I. -fPIC -DRTSPCLIENT_SYNCHRONOUS_INTERFACE=1 -DSOCKLEN_T/g' \
config.linux
''
# condition from icu/base.nix
+ lib.optionalString (stdenv.hostPlatform.libc == "glibc"
|| stdenv.hostPlatform.libc == "musl") ''
substituteInPlace liveMedia/include/Locale.hh \
--replace '<xlocale.h>' '<locale.h>'
'';
configurePhase = let
platform = if stdenv.isLinux
then "linux"
else if stdenv.isDarwin
then "macosx-catalina"
else throw "Unsupported platform: ${stdenv.hostPlatform.system}";
in ''
runHook preConfigure
./genMakefiles ${platform}
runHook postConfigure
'';
makeFlags = [
"PREFIX=${placeholder "out"}"
];
enableParallelBuilding = true;
passthru.tests = {
# Downstream dependency
inherit vlc;
};
meta = {
homepage = "http://www.live555.com/liveMedia/";
description = "Set of C++ libraries for multimedia streaming, using open standard protocols (RTP/RTCP, RTSP, SIP)";
changelog = "http://www.live555.com/liveMedia/public/changelog.txt";
license = with lib.licenses; [ lgpl21Plus ];
maintainers = with lib.maintainers; [ AndersonTorres ];
platforms = lib.platforms.unix;
};
})

View File

@ -0,0 +1,189 @@
{ lib
, stdenv
, fetchurl
, tzdata
, substituteAll
, iana-etc
, Security
, Foundation
, xcbuild
, mailcap
, buildPackages
, pkgsBuildTarget
, threadsCross
, testers
, skopeo
, buildGo122Module
}:
let
useGccGoBootstrap = stdenv.buildPlatform.isMusl;
goBootstrap = if useGccGoBootstrap then buildPackages.gccgo12 else buildPackages.callPackage ./bootstrap121.nix { };
skopeoTest = skopeo.override { buildGoModule = buildGo122Module; };
goarch = platform: {
"aarch64" = "arm64";
"arm" = "arm";
"armv5tel" = "arm";
"armv6l" = "arm";
"armv7l" = "arm";
"i686" = "386";
"mips" = "mips";
"mips64el" = "mips64le";
"mipsel" = "mipsle";
"powerpc64le" = "ppc64le";
"riscv64" = "riscv64";
"s390x" = "s390x";
"x86_64" = "amd64";
}.${platform.parsed.cpu.name} or (throw "Unsupported system: ${platform.parsed.cpu.name}");
# We need a target compiler which is still runnable at build time,
# to handle the cross-building case where build != host == target
targetCC = pkgsBuildTarget.targetPackages.stdenv.cc;
isCross = stdenv.buildPlatform != stdenv.targetPlatform;
in
stdenv.mkDerivation (finalAttrs: {
pname = "go";
version = "1.22rc2";
src = fetchurl {
url = "https://go.dev/dl/go${finalAttrs.version}.src.tar.gz";
hash = "sha256-0ZOofbgiOCHh7oke3+42yOrJugz4PkLt5keVp96Kfyc=";
};
strictDeps = true;
buildInputs = [ ]
++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
depsTargetTargetPropagated = lib.optionals stdenv.targetPlatform.isDarwin [ Foundation Security xcbuild ];
depsBuildTarget = lib.optional isCross targetCC;
depsTargetTarget = lib.optional stdenv.targetPlatform.isWindows threadsCross.package;
postPatch = ''
patchShebangs .
'';
patches = [
(substituteAll {
src = ./iana-etc-1.17.patch;
iana = iana-etc;
})
# Patch the mimetype database location which is missing on NixOS.
# but also allow static binaries built with NixOS to run outside nix
(substituteAll {
src = ./mailcap-1.17.patch;
inherit mailcap;
})
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
# that run outside a nix server
(substituteAll {
src = ./tzdata-1.19.patch;
inherit tzdata;
})
./remove-tools-1.11.patch
./go_no_vendor_checks-1.22.patch
];
GOOS = stdenv.targetPlatform.parsed.kernel.name;
GOARCH = goarch stdenv.targetPlatform;
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
# Go will nevertheless build a for host system that we will copy over in
# the install phase.
GOHOSTOS = stdenv.buildPlatform.parsed.kernel.name;
GOHOSTARCH = goarch stdenv.buildPlatform;
# {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
# to be different from CC/CXX
CC_FOR_TARGET =
if isCross then
"${targetCC}/bin/${targetCC.targetPrefix}cc"
else
null;
CXX_FOR_TARGET =
if isCross then
"${targetCC}/bin/${targetCC.targetPrefix}c++"
else
null;
GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
CGO_ENABLED = 1;
GOROOT_BOOTSTRAP = if useGccGoBootstrap then goBootstrap else "${goBootstrap}/share/go";
buildPhase = ''
runHook preBuild
export GOCACHE=$TMPDIR/go-cache
# this is compiled into the binary
export GOROOT_FINAL=$out/share/go
export PATH=$(pwd)/bin:$PATH
${lib.optionalString isCross ''
# Independent from host/target, CC should produce code for the building system.
# We only set it when cross-compiling.
export CC=${buildPackages.stdenv.cc}/bin/cc
''}
ulimit -a
pushd src
./make.bash
popd
runHook postBuild
'';
preInstall = ''
# Contains the wrong perl shebang when cross compiling,
# since it is not used for anything we can deleted as well.
rm src/regexp/syntax/make_perl_groups.pl
'' + (if (stdenv.buildPlatform.system != stdenv.hostPlatform.system) then ''
mv bin/*_*/* bin
rmdir bin/*_*
${lib.optionalString (!(finalAttrs.GOHOSTARCH == finalAttrs.GOARCH && finalAttrs.GOOS == finalAttrs.GOHOSTOS)) ''
rm -rf pkg/${finalAttrs.GOHOSTOS}_${finalAttrs.GOHOSTARCH} pkg/tool/${finalAttrs.GOHOSTOS}_${finalAttrs.GOHOSTARCH}
''}
'' else lib.optionalString (stdenv.hostPlatform.system != stdenv.targetPlatform.system) ''
rm -rf bin/*_*
${lib.optionalString (!(finalAttrs.GOHOSTARCH == finalAttrs.GOARCH && finalAttrs.GOOS == finalAttrs.GOHOSTOS)) ''
rm -rf pkg/${finalAttrs.GOOS}_${finalAttrs.GOARCH} pkg/tool/${finalAttrs.GOOS}_${finalAttrs.GOARCH}
''}
'');
installPhase = ''
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc go.env $GOROOT_FINAL
mkdir -p $out/bin
ln -s $GOROOT_FINAL/bin/* $out/bin
runHook postInstall
'';
disallowedReferences = [ goBootstrap ];
passthru = {
inherit goBootstrap skopeoTest;
tests = {
skopeo = testers.testVersion { package = skopeoTest; };
version = testers.testVersion {
package = finalAttrs.finalPackage;
command = "go version";
version = "go${finalAttrs.version}";
};
};
};
meta = with lib; {
changelog = "https://go.dev/doc/devel/release#go${lib.versions.majorMinor finalAttrs.version}";
description = "The Go Programming language";
homepage = "https://go.dev/";
license = licenses.bsd3;
maintainers = teams.golang.members;
platforms = platforms.darwin ++ platforms.linux;
mainProgram = "go";
};
})

View File

@ -0,0 +1,23 @@
Starting from go1.14, go verifes that vendor/modules.txt matches the requirements
and replacements listed in the main module go.mod file, and it is a hard failure if
vendor/modules.txt is missing.
Relax module consistency checks and switch back to pre go1.14 behaviour if
vendor/modules.txt is missing regardless of go version requirement in go.mod.
This has been ported from FreeBSD: https://reviews.freebsd.org/D24122
See https://github.com/golang/go/issues/37948 for discussion.
diff --git a/src/cmd/go/internal/modload/vendor.go b/src/cmd/go/internal/modload/vendor.go
index b2cb44100e..05bf3829d5 100644
--- a/src/cmd/go/internal/modload/vendor.go
+++ b/src/cmd/go/internal/modload/vendor.go
@@ -159,7 +159,7 @@ func checkVendorConsistency(indexes []*modFileIndex, modFiles []*modfile.File, m
panic(fmt.Errorf("not in workspace mode but number of indexes is %v, not 1", len(indexes)))
}
index := indexes[0]
- if gover.Compare(index.goVersion, "1.14") < 0 {
+ if gover.Compare(index.goVersion, "1.14") < 0 || (os.Getenv("GO_NO_VENDOR_CHECKS") == "1" && len(vendorMeta) == 0) {
// Go versions before 1.14 did not include enough information in
// vendor/modules.txt to check for consistency.
// If we know that we're on an earlier version, relax the consistency check.

View File

@ -1,75 +0,0 @@
{ lib
, stdenv
, fetchurl
, darwin
, openssl
# major and only downstream dependency
, vlc
}:
stdenv.mkDerivation rec {
pname = "live555";
version = "2023.05.10";
src = fetchurl {
urls = [
"http://www.live555.com/liveMedia/public/live.${version}.tar.gz"
"https://download.videolan.org/contrib/live555/live.${version}.tar.gz"
"mirror://sourceforge/slackbuildsdirectlinks/live.${version}.tar.gz"
];
sha256 = "sha256-6ph9x4UYELkkJVIE9r25ycc5NOYbPcgAy9LRZebvGFY=";
};
nativeBuildInputs = lib.optional stdenv.isDarwin darwin.cctools;
buildInputs = [ openssl ];
postPatch = ''
substituteInPlace config.macosx-catalina \
--replace '/usr/lib/libssl.46.dylib' "${lib.getLib openssl}/lib/libssl.dylib" \
--replace '/usr/lib/libcrypto.44.dylib' "${lib.getLib openssl}/lib/libcrypto.dylib"
sed -i -e 's|/bin/rm|rm|g' genMakefiles
sed -i \
-e 's/$(INCLUDES) -I. -O2 -DSOCKLEN_T/$(INCLUDES) -I. -O2 -I. -fPIC -DRTSPCLIENT_SYNCHRONOUS_INTERFACE=1 -DSOCKLEN_T/g' \
config.linux
'' # condition from icu/base.nix
+ lib.optionalString (stdenv.hostPlatform.libc == "glibc" || stdenv.hostPlatform.libc == "musl") ''
substituteInPlace liveMedia/include/Locale.hh \
--replace '<xlocale.h>' '<locale.h>'
'';
configurePhase = ''
runHook preConfigure
./genMakefiles ${
if stdenv.isLinux then
"linux"
else if stdenv.isDarwin then
"macosx-catalina"
else
throw "Unsupported platform ${stdenv.hostPlatform.system}"}
runHook postConfigure
'';
makeFlags = [
"DESTDIR=${placeholder "out"}"
"PREFIX="
];
enableParallelBuilding = true;
passthru.tests = {
inherit vlc;
};
meta = with lib; {
homepage = "http://www.live555.com/liveMedia/";
description = "Set of C++ libraries for multimedia streaming, using open standard protocols (RTP/RTCP, RTSP, SIP)";
changelog = "http://www.live555.com/liveMedia/public/changelog.txt";
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
};
}

View File

@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "appthreat-vulnerability-db";
version = "5.5.8";
version = "5.5.10";
pyproject = true;
disabled = pythonOlder "3.7";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "AppThreat";
repo = "vulnerability-db";
rev = "refs/tags/v${version}";
hash = "sha256-C3A7mNsiTe50jKD98zjU37GL20zw5SNSVte+GtrvbFA=";
hash = "sha256-yBB66H8l+kjVcpmt3gYzggRgfxjFvMPwy3rcYuKYqks=";
};
postPatch = ''

View File

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "blurhash-python";
version = "1.2.1";
version = "1.2.2";
disabled = pythonOlder "3.8";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "woltapp";
repo = "blurhash-python";
rev = "v${version}";
hash = "sha256-z7V2Ck8h12Vuj/5/s9ZP/uqQ4olo8xwg+ZR3iW4ca/M=";
hash = "sha256-Cz+PkPp1knvT3U5ofyb1PstM9kzBOkgPbx03LgOLXgw=";
};
nativeBuildInputs = [

View File

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "botocore-stubs";
version = "1.34.25";
version = "1.34.26";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -17,7 +17,7 @@ buildPythonPackage rec {
src = fetchPypi {
pname = "botocore_stubs";
inherit version;
hash = "sha256-cyIZICHgSSIE0iOqyIDU0r39OQ8+fzh00enhmPgkg2c=";
hash = "sha256-65EItCrdCs4ocQQr+0HToSRqHkR8tHp3EEIniopoSb8=";
};
nativeBuildInputs = [

View File

@ -2,47 +2,44 @@
, buildPythonPackage
, fetchFromGitHub
, jsonschema
, pytestCheckHook
, unittestCheckHook
, pythonOlder
, setuptools
}:
buildPythonPackage rec {
pname = "cvss";
version = "2.6";
format = "setuptools";
version = "3.0";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "RedHatProductSecurity";
repo = pname;
repo = "cvss";
rev = "refs/tags/v${version}";
hash = "sha256-gD9MreJQPaxziy02Wt3BGFiIoQ/+pW3KqiNfNlTijJY=";
hash = "sha256-xrkWpE13Y4KgQEZjitWE3Ka+IyfShqE2cj0/yzsAnX4=";
};
nativeBuildInputs = [
setuptools
];
nativeCheckInputs = [
jsonschema
pytestCheckHook
unittestCheckHook
];
pythonImportsCheck = [
"cvss"
];
disabledTests = [
# Tests require additional data
"test_calculator"
"test_cvsslib"
"test_json_ordering"
"test_json_schema_repr"
"test_random"
"test_rh_vector"
"test_simple"
"test_simple_31"
];
preCheck = ''
cd tests
'';
meta = with lib; {
description = "Library for CVSS2/3";
description = "Library for CVSS2/3/4";
homepage = "https://github.com/RedHatProductSecurity/cvss";
changelog = "https://github.com/RedHatProductSecurity/cvss/releases/tag/v${version}";
license = with licenses; [ lgpl3Plus ];

View File

@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "dvc-data";
version = "3.7.0";
version = "3.8.0";
pyproject = true;
disabled = pythonOlder "3.8";
@ -23,7 +23,7 @@ buildPythonPackage rec {
owner = "iterative";
repo = "dvc-data";
rev = "refs/tags/${version}";
hash = "sha256-ycC6NWvU00yUEHu62H5VLKDEZEHyIo4+TBwj5XaswII=";
hash = "sha256-i9pFdGMzUypUFZKtE4k1w116r+NjfIECg1a6xw9TpG0=";
};
nativeBuildInputs = [

View File

@ -58,7 +58,7 @@
buildPythonPackage rec {
pname = "dvc";
version = "3.41.0";
version = "3.42.0";
pyproject = true;
disabled = pythonOlder "3.8";
@ -67,7 +67,7 @@ buildPythonPackage rec {
owner = "iterative";
repo = "dvc";
rev = "refs/tags/${version}";
hash = "sha256-j4UkPHav97s5GAuR9yYWaI1ObfKcsyozlTDC9jeBfK4=";
hash = "sha256-NTviaNhGe3hisP32Ccp1wHTrKXHZZP7gJFwDy7BlI/M=";
};
pythonRelaxDeps = [

View File

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "hahomematic";
version = "2024.1.7";
version = "2024.1.8";
pyproject = true;
disabled = pythonOlder "3.11";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "danielperna84";
repo = "hahomematic";
rev = "refs/tags/${version}";
hash = "sha256-98biJ/BXFZV55FMRvT8QexzWVB2rfF/YVa66+HU06mI=";
hash = "sha256-ln+Dich2I503LA5nIWK9k3B83LjIBsRUmBv2xJmFRQI=";
};
__darwinAllowLocalNetworking = true;

View File

@ -15,6 +15,7 @@
, pytest
, pytestCheckHook
, pythonOlder
, pythonRelaxDepsHook
, pyyaml
, reptor
, requests
@ -22,16 +23,17 @@
, setuptools
, sqlparse
, termcolor
, toml
, tomli
, tomli-w
, tomlkit
, urllib3
, xmltodict
}:
buildPythonPackage rec {
pname = "reptor";
version = "0.7";
format = "pyproject";
version = "0.8";
pyproject = true;
disabled = pythonOlder "3.8";
@ -39,10 +41,13 @@ buildPythonPackage rec {
owner = "Syslifters";
repo = "reptor";
rev = "refs/tags/${version}";
hash = "sha256-d76Hsf+leJKYOh7k/RVuo6adfjMW6yAYt+vh7KNh7sA=";
hash = "sha256-YnDAjbj3TTr+WajuW6Dq3f+fjeJxrWk7VNWKhh9O7Zw=";
};
pythonRelaxDeps = true;
nativeBuildInputs = [
pythonRelaxDepsHook
setuptools
];
@ -61,7 +66,8 @@ buildPythonPackage rec {
rich
sqlparse
termcolor
toml
tomli
tomlkit
tomli-w
urllib3
xmltodict

View File

@ -3,6 +3,7 @@
, fetchFromGitHub
, flit-core
, pythonImportsCheckHook
, pythonOlder
# documentation build dependencies
, sphinxHook
, sphinx-prompt
@ -12,18 +13,25 @@
, sphinxemoji
# runtime dependencies
, sphinx
, setuptools
}:
buildPythonPackage rec {
pname = "sphinx-notfound-page";
version = "1.0.0";
format = "pyproject";
outputs = [ "out" "doc" ];
pyproject = true;
disabled = pythonOlder "3.8";
outputs = [
"out"
"doc"
];
src = fetchFromGitHub {
owner = "readthedocs";
repo = "sphinx-notfound-page";
rev = version;
rev = "refs/tags/${version}";
hash = "sha256-tG71UuYbdlWNgq6Y5xRH3aWc9/eTr/RlsRNWSUjrbBE=";
};
@ -38,13 +46,22 @@ buildPythonPackage rec {
sphinxemoji
];
propagatedBuildInputs = [ sphinx ];
buildInputs = [
sphinx
];
pythonImportsCheck = [ "notfound" ];
propagatedBuildInputs = [
setuptools
];
pythonImportsCheck = [
"notfound"
];
meta = with lib; {
description = "A sphinx extension to create a custom 404 page with absolute URLs hardcoded";
homepage = "https://github.com/readthedocs/sphinx-notfound-page";
changelog = "https://github.com/readthedocs/sphinx-notfound-page/blob/${version}/CHANGELOG.rst";
license = licenses.mit;
maintainers = with maintainers; [ kaction ];
};

View File

@ -3,13 +3,15 @@
, fetchFromGitHub
, fetchpatch
, pythonImportsCheckHook
, pythonOlder
, setuptools
, sphinx
, sphinxHook
, sphinx-autoapi
, sphinx-prompt
, sphinx-rtd-theme
, sphinx-tabs
, sphinx-prompt
, sphinxemoji
, sphinxHook
}:
# Latest tagged release release "1.1.2" (Nov 2018) does not contain
@ -18,9 +20,14 @@
buildPythonPackage {
pname = "sphinx-version-warning";
version = "unstable-2019-08-10";
format = "pyproject";
pyproject = true;
outputs = [ "out" "doc" ];
disabled = pythonOlder "3.7";
outputs = [
"out"
"doc"
];
src = fetchFromGitHub {
owner = "humitos";
@ -40,21 +47,27 @@ buildPythonPackage {
nativeBuildInputs = [
pythonImportsCheckHook
sphinxHook
sphinx-autoapi
sphinx-prompt
sphinx-rtd-theme
sphinx-tabs
sphinx-prompt
sphinxemoji
sphinxHook
setuptools
];
propagatedBuildInputs = [ sphinx ];
buildInputs = [
sphinx
];
pythonImportsCheck = [ "versionwarning" ];
pythonImportsCheck = [
"versionwarning"
];
meta = with lib; {
description = "A sphinx extension to show a warning banner at the top of your documentation";
homepage = "https://github.com/humitos/sphinx-version-warning";
changelog = "https://github.com/humitos/sphinx-version-warning/blob/${version}/CHANGELOG.rst";
license = licenses.mit;
maintainers = with maintainers; [ kaction ];
};

View File

@ -0,0 +1,45 @@
{ lib
, aiohttp
, buildPythonPackage
, fetchFromGitHub
, poetry-core
, pythonOlder
}:
buildPythonPackage rec {
pname = "switchbot-api";
version = "2.0.0";
pyproject = true;
disabled = pythonOlder "3.10";
src = fetchFromGitHub {
owner = "SeraphicCorp";
repo = "py-switchbot-api";
rev = "refs/tags/v${version}";
hash = "sha256-QM8oVfd+hdVNdhOgI3ujyY82Im0Yr5Nl+OcqzEtZ7XE=";
};
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
aiohttp
];
# Module has no tests
doCheck= false;
pythonImportsCheck = [
"switchbot_api"
];
meta = with lib; {
description = "An asynchronous library to use Switchbot API";
homepage = "https://github.com/SeraphicCorp/py-switchbot-api";
changelog = "https://github.com/SeraphicCorp/py-switchbot-api/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -53,7 +53,7 @@
buildPythonPackage rec {
pname = "transformers";
version = "4.37.0";
version = "4.37.1";
format = "setuptools";
disabled = pythonOlder "3.8";
@ -62,7 +62,7 @@ buildPythonPackage rec {
owner = "huggingface";
repo = "transformers";
rev = "refs/tags/v${version}";
hash = "sha256-om/UAQ7UvwAiEClUDLxVC7cbd4Ye8VPcu3Gnug919xg=";
hash = "sha256-1W6Ec3+zdv75qd6s6Ogy/wkAKc+lA0xjZNAcMo8Q3ns=";
};
propagatedBuildInputs = [

View File

@ -10,16 +10,16 @@
rustPlatform.buildRustPackage rec {
pname = "fzf-make";
version = "0.21.0";
version = "0.22.0";
src = fetchFromGitHub {
owner = "kyu08";
repo = "fzf-make";
rev = "v${version}";
hash = "sha256-wQ39qysRu5i5Po7G3uC/qHcssUhhIWwBdRwPiWgA004=";
hash = "sha256-MeJRXvMshhnNWNkEtOfxKMLLqoLjOREuDGcRHTnOxS8=";
};
cargoHash = "sha256-Kjr5lWEX1iki1C+r8OziCgu0WAvPcNk7U4uhQzCAWLA=";
cargoHash = "sha256-pHunUez3bsGwcSuQzx3DEDSKxx6UlUcuU35frEsc0+8=";
nativeBuildInputs = [ makeBinaryWrapper ];

View File

@ -10,14 +10,14 @@
buildGoModule rec {
pname = "symfony-cli";
version = "5.8.2";
vendorHash = "sha256-bscRqFYV2qzTmu04l00/iMsFQR5ITPBFVr9BQwVGFU8=";
version = "5.8.4";
vendorHash = "sha256-ACK0JCaS1MOCgUi2DMEjIcKf/nMCcrdDyIdioBZv7qw=";
src = fetchFromGitHub {
owner = "symfony-cli";
repo = "symfony-cli";
rev = "v${version}";
hash = "sha256-P5VitZL6KYplMpWdwTkzJEqf5UoSB5HaH/0kL2CbUEA=";
hash = "sha256-b6vjJaRSi5qNl4qpOEndqdZkaWxeI/6GnBiBIM2Vwr8=";
};
ldflags = [

View File

@ -4756,7 +4756,8 @@
zeroconf
];
"switchbot_cloud" = ps: with ps; [
]; # missing inputs: switchbot-api
switchbot-api
];
"switcher_kis" = ps: with ps; [
aioswitcher
];
@ -6358,6 +6359,7 @@
"switch_as_x"
"switchbee"
"switchbot"
"switchbot_cloud"
"switcher_kis"
"syncthing"
"syncthru"

View File

@ -1870,10 +1870,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0w9978zwjf1qhy3amkivab0f9syz6a7k0xgydjidaf7xc831d78f";
sha256 = "0xkjz56qc7hl7zy7i7bhiyw5pl85wwjsa4p70rj6s958xj2sd1lm";
type = "gem";
};
version = "2.5.9";
version = "2.7.0";
};
nokogiri = {
dependencies = ["mini_portile2" "racc"];
@ -2139,10 +2139,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1x4dwx2shx0p7lsms97r85r7ji7zv57bjy3i1kmcpxc8bxvrr67c";
sha256 = "0i2vaww6qcazj0ywva1plmjnj6rk23b01szswc5jhcq7s2cikd1y";
type = "gem";
};
version = "6.3.1";
version = "6.4.2";
};
pundit = {
dependencies = ["activesupport"];

View File

@ -1,7 +1,7 @@
# This file was generated by pkgs.mastodon.updateScript.
{ fetchFromGitHub, applyPatches, patches ? [] }:
let
version = "4.2.3";
version = "4.2.4";
in
(
applyPatches {
@ -9,7 +9,7 @@ in
owner = "mastodon";
repo = "mastodon";
rev = "v${version}";
hash = "sha256-e8O4kxsrHf+wEtl4S57xIL1VEvhUSjyCbmz4r9p8Zhw=";
hash = "sha256-YPGOe9wywRls26PqEbqFeQRg7rcnRBO2NyiNW1fssts=";
};
patches = patches ++ [];
}) // {

View File

@ -8,14 +8,14 @@
}:
buildGoModule rec {
version = "2.9.3";
version = "2.9.4";
pname = "grafana-loki";
src = fetchFromGitHub {
owner = "grafana";
repo = "loki";
rev = "v${version}";
hash = "sha256-9EUlznnZczgHXUy784830FvUS6OwaFf7FmUJGeWeXP0=";
hash = "sha256-uT3rMvSW1eTBhXboA71QeIvuYvc017TxoGG3z3G4K4Y=";
};
vendorHash = null;

View File

@ -1,4 +1,15 @@
{ lib, stdenv, buildGoModule, fetchFromGitHub, makeWrapper, iptables, iproute2, procps, shadow, getent }:
{ lib
, stdenv
, buildGoModule
, fetchFromGitHub
, makeWrapper
, getent
, iproute2
, iptables
, shadow
, procps
, nixosTests
}:
let
version = "1.58.2";
@ -38,6 +49,10 @@ buildGoModule {
install -D -m0444 -t $out/lib/systemd/system ./cmd/tailscaled/tailscaled.service
'';
passthru.tests = {
inherit (nixosTests) headscale;
};
meta = with lib; {
homepage = "https://tailscale.com";
description = "The node agent for Tailscale, a mesh VPN built on WireGuard";

View File

@ -9,10 +9,12 @@ with pkgs;
pkgSets = lib.pipe pkgNames [
(filter (lib.hasPrefix "llvmPackages"))
(filter (n: n != "rocmPackages.llvm"))
# Is a throw alias.
# Are throw aliases.
(filter (n: n != "llvmPackages_rocm"))
(filter (n: n != "llvmPackages_latest"))
(filter (n: n != "llvmPackages_git"))
(filter (n: n != "llvmPackages_6"))
(filter (n: n != "llvmPackages_7"))
];
tests = lib.genAttrs pkgSets (name: recurseIntoAttrs {
clang = callPackage ./cc-wrapper { stdenv = pkgs.${name}.stdenv; };

View File

@ -159,8 +159,8 @@ pub fn check_values(
let uses_by_name = match attribute_info {
// In these cases the package doesn't qualify for being in pkgs/by-name,
// so the UsesByName ratchet is already as tight as it can be
NonAttributeSet => Success(Tight),
NonCallPackage => Success(Tight),
NonAttributeSet => Success(NonApplicable),
NonCallPackage => Success(NonApplicable),
// This is the case when the `pkgs/by-name`-internal _internalCallByNamePackageFile
// is used for a package outside `pkgs/by-name`
CallPackage(CallPackageInfo {
@ -176,14 +176,14 @@ pub fn check_values(
// In the future we could kind of abuse this behavior to have better
// enforcement of conditional aliases, but for now we just need to not
// give an error.
Success(Tight)
Success(NonApplicable)
}
// Only derivations can be in pkgs/by-name,
// so this attribute doesn't qualify
CallPackage(CallPackageInfo {
is_derivation: false,
..
}) => Success(Tight),
}) => Success(NonApplicable),
// The case of an attribute that qualifies:
// - Uses callPackage
@ -191,30 +191,35 @@ pub fn check_values(
CallPackage(CallPackageInfo {
is_derivation: true,
call_package_variant: Manual { path, empty_arg },
}) => Success(Loose(ratchet::UsesByName {
}) => Success(Loose(ratchet::CouldUseByName {
call_package_path: path,
empty_arg,
})),
};
uses_by_name.map(|x| ratchet::Package {
empty_non_auto_called: Tight,
manual_definition: Tight,
uses_by_name: x,
})
}
NonByName(EvalFailure) => {
// This is a bit of an odd case: We don't even _know_ whether this attribute
// would qualify for using pkgs/by-name. We can either:
// - Assume it's not using pkgs/by-name, which has the problem that if a
// package evaluation gets broken temporarily, the fix can remove it from
// pkgs/by-name again
// - Assume it's using pkgs/by-name already, which has the problem that if a
// package evaluation gets broken temporarily, fixing it requires a move to
// pkgs/by-name
// We choose the latter, since we want to move towards pkgs/by-name, not away
// from it
// We don't know anything about this attribute really
Success(ratchet::Package {
empty_non_auto_called: Tight,
uses_by_name: Tight,
// We'll assume that we can't remove any manual definitions, which has the
// minimal drawback that if there was a manual definition that could've
// been removed, fixing the package requires removing the definition, no
// big deal, that's a minor edit.
manual_definition: Tight,
// Regarding whether this attribute could `pkgs/by-name`, we don't really
// know, so return NonApplicable, which has the effect that if a
// package evaluation gets broken temporarily, the fix can remove it from
// pkgs/by-name again. For now this isn't our problem, but in the future we
// might have another check to enforce that evaluation must not be broken.
// The alternative of assuming that it's using `pkgs/by-name` already
// has the problem that if a package evaluation gets broken temporarily,
// fixing it requires a move to pkgs/by-name, which could happen more
// often and isn't really justified.
uses_by_name: NonApplicable,
})
}
ByName(Missing) => NixpkgsProblem::UndefinedAttr {
@ -248,7 +253,7 @@ pub fn check_values(
check_result.and(match &call_package_variant {
Auto => Success(ratchet::Package {
empty_non_auto_called: Tight,
manual_definition: Tight,
uses_by_name: Tight,
}),
Manual { path, empty_arg } => {
@ -261,11 +266,7 @@ pub fn check_values(
if correct_file {
Success(ratchet::Package {
// Empty arguments for non-auto-called packages are not allowed anymore.
empty_non_auto_called: if *empty_arg {
Loose(ratchet::EmptyNonAutoCalled)
} else {
Tight
},
manual_definition: if *empty_arg { Loose(()) } else { Tight },
uses_by_name: Tight,
})
} else {

View File

@ -33,7 +33,7 @@ impl Nixpkgs {
/// The ratchet value for a top-level package
pub struct Package {
/// The ratchet value for the check for non-auto-called empty arguments
pub empty_non_auto_called: RatchetState<EmptyNonAutoCalled>,
pub manual_definition: RatchetState<ManualDefinition>,
/// The ratchet value for the check for new packages using pkgs/by-name
pub uses_by_name: RatchetState<UsesByName>,
@ -43,10 +43,10 @@ impl Package {
/// Validates the ratchet checks for a top-level package
pub fn compare(name: &str, optional_from: Option<&Self>, to: &Self) -> Validation<()> {
validation::sequence_([
RatchetState::<EmptyNonAutoCalled>::compare(
RatchetState::<ManualDefinition>::compare(
name,
optional_from.map(|x| &x.empty_non_auto_called),
&to.empty_non_auto_called,
optional_from.map(|x| &x.manual_definition),
&to.manual_definition,
),
RatchetState::<UsesByName>::compare(
name,
@ -58,55 +58,82 @@ impl Package {
}
/// The ratchet state of a generic ratchet check.
pub enum RatchetState<Context> {
pub enum RatchetState<Ratchet: ToNixpkgsProblem> {
/// The ratchet is loose, it can be tightened more.
/// In other words, this is the legacy state we're trying to move away from.
/// Introducing new instances is not allowed but previous instances will continue to be allowed.
/// The `Context` is context for error messages in case a new instance of this state is
/// introduced
Loose(Context),
Loose(Ratchet::ToContext),
/// The ratchet is tight, it can't be tightened any further.
/// This is either because we already use the latest state, or because the ratchet isn't
/// relevant.
Tight,
/// This ratchet can't be applied.
/// State transitions from/to NonApplicable are always allowed
NonApplicable,
}
/// A trait that can convert an attribute-specific error context into a NixpkgsProblem
pub trait ToNixpkgsProblem {
/// Context relating to the Nixpkgs that is being transitioned _to_
type ToContext;
/// How to convert an attribute-specific error context into a NixpkgsProblem
fn to_nixpkgs_problem(name: &str, context: &Self, existed_before: bool) -> NixpkgsProblem;
fn to_nixpkgs_problem(
name: &str,
optional_from: Option<()>,
to: &Self::ToContext,
) -> NixpkgsProblem;
}
impl<Context: ToNixpkgsProblem> RatchetState<Context> {
/// Compare the previous ratchet state of an attribute to the new state.
/// The previous state may be `None` in case the attribute is new.
fn compare(name: &str, optional_from: Option<&Self>, to: &Self) -> Validation<()> {
// If we don't have a previous state, enforce a tight ratchet
let from = optional_from.unwrap_or(&RatchetState::Tight);
match (from, to) {
// Always okay to keep it tight or tighten the ratchet
(_, RatchetState::Tight) => Success(()),
// Grandfathering policy for a loose ratchet
(RatchetState::Loose { .. }, RatchetState::Loose { .. }) => Success(()),
match (optional_from, to) {
// Loosening a ratchet is now allowed
(RatchetState::Tight, RatchetState::Loose(context)) => {
Context::to_nixpkgs_problem(name, context, optional_from.is_some()).into()
(Some(RatchetState::Tight), RatchetState::Loose(loose_context)) => {
Context::to_nixpkgs_problem(name, Some(()), loose_context).into()
}
// Introducing a loose ratchet is also not allowed
(None, RatchetState::Loose(loose_context)) => {
Context::to_nixpkgs_problem(name, None, loose_context).into()
}
// Everything else is allowed, including:
// - Loose -> Loose (grandfathering policy for a loose ratchet)
// - -> Tight (always okay to keep or make the ratchet tight)
// - Anything involving NotApplicable, where we can't really make any good calls
_ => Success(()),
}
}
}
/// The ratchet value of an attribute
/// for the non-auto-called empty argument check of a single.
/// The ratchet to check whether a top-level attribute has/needs
/// a manual definition, e.g. in all-packages.nix.
///
/// This checks that packages defined in `pkgs/by-name` cannot be overridden
/// with an empty second argument like `callPackage ... { }`.
pub struct EmptyNonAutoCalled;
/// This ratchet is only tight for attributes that:
/// - Are not defined in `pkgs/by-name`, and rely on a manual definition
/// - Are defined in `pkgs/by-name` without any manual definition,
/// (no custom argument overrides)
/// - Are defined with `pkgs/by-name` with a manual definition that can't be removed
/// because it provides custom argument overrides
///
/// In comparison, this ratchet is loose for attributes that:
/// - Are defined in `pkgs/by-name` with a manual definition
/// that doesn't have any custom argument overrides
pub enum ManualDefinition {}
impl ToNixpkgsProblem for EmptyNonAutoCalled {
fn to_nixpkgs_problem(name: &str, _context: &Self, _existed_before: bool) -> NixpkgsProblem {
impl ToNixpkgsProblem for ManualDefinition {
type ToContext = ();
fn to_nixpkgs_problem(
name: &str,
_optional_from: Option<()>,
_to: &Self::ToContext,
) -> NixpkgsProblem {
NixpkgsProblem::WrongCallPackage {
relative_package_file: structure::relative_file_for_package(name),
package_name: name.to_owned(),
@ -119,8 +146,10 @@ impl ToNixpkgsProblem for EmptyNonAutoCalled {
///
/// This checks that all new package defined using callPackage must be defined via pkgs/by-name
/// It also checks that once a package uses pkgs/by-name, it can't switch back to all-packages.nix
pub enum UsesByName {}
#[derive(Clone)]
pub struct UsesByName {
pub struct CouldUseByName {
/// The first callPackage argument, used for better errors
pub call_package_path: Option<PathBuf>,
/// Whether the second callPackage argument is empty, used for better errors
@ -128,18 +157,24 @@ pub struct UsesByName {
}
impl ToNixpkgsProblem for UsesByName {
fn to_nixpkgs_problem(name: &str, a: &Self, existed_before: bool) -> NixpkgsProblem {
if existed_before {
type ToContext = CouldUseByName;
fn to_nixpkgs_problem(
name: &str,
optional_from: Option<()>,
to: &Self::ToContext,
) -> NixpkgsProblem {
if let Some(()) = optional_from {
NixpkgsProblem::MovedOutOfByName {
package_name: name.to_owned(),
call_package_path: a.call_package_path.clone(),
empty_arg: a.empty_arg,
call_package_path: to.call_package_path.clone(),
empty_arg: to.empty_arg,
}
} else {
NixpkgsProblem::NewPackageNotUsingByName {
package_name: name.to_owned(),
call_package_path: a.call_package_path.clone(),
empty_arg: a.empty_arg,
call_package_path: to.call_package_path.clone(),
empty_arg: to.empty_arg,
}
}
}

View File

@ -0,0 +1,10 @@
self: super: {
nonAttributeSet = self.callPackage ({ someDrv }: someDrv) { };
nonCallPackage = self.callPackage ({ someDrv }: someDrv) { };
internalCallByName = self.callPackage ({ someDrv }: someDrv) { };
nonDerivation = self.callPackage ({ someDrv }: someDrv) { };
onlyMove = self.callPackage ./pkgs/by-name/on/onlyMove/package.nix { };
noEval = self.callPackage ./pkgs/by-name/no/noEval/package.nix { };
}

View File

@ -0,0 +1,9 @@
self: super: {
nonAttributeSet = null;
nonCallPackage = self.someDrv;
internalCallByName = self._internalCallByNamePackageFile ./some-pkg.nix;
nonDerivation = self.callPackage ({ }: { }) { };
onlyMove = self.callPackage ({ someDrv }: someDrv) { };
noEval = throw "foo";
}

View File

@ -0,0 +1 @@
import <test-nixpkgs> { root = ./.; }

View File

@ -0,0 +1 @@
import <test-nixpkgs> { root = ./.; }

View File

@ -0,0 +1,2 @@
pkgs.noEval: This attribute is manually defined (most likely in pkgs/top-level/all-packages.nix), which is only allowed if the definition is of the form `pkgs.callPackage pkgs/by-name/no/noEval/package.nix { ... }` with a non-empty second argument.
pkgs.onlyMove: This attribute is manually defined (most likely in pkgs/top-level/all-packages.nix), which is only allowed if the definition is of the form `pkgs.callPackage pkgs/by-name/on/onlyMove/package.nix { ... }` with a non-empty second argument.

View File

@ -0,0 +1 @@
{ someDrv }: someDrv

View File

@ -1,3 +1,5 @@
self: super: {
iDontEval = throw "I don't eval";
futureEval = self.callPackage ({ someDrv }: someDrv) { };
}

View File

@ -0,0 +1,3 @@
self: super: {
futureEval = throw "foo";
}

View File

@ -0,0 +1 @@
import <test-nixpkgs> { root = ./.; }

View File

@ -1 +0,0 @@
(this is just here so the directory can get tracked by git)

View File

@ -7,11 +7,11 @@
}:
yarn2nix-moretea.mkYarnPackage {
version = "1.1.6";
version = "1.1.19";
src = fetchzip {
url = "https://registry.npmjs.org/meshcentral/-/meshcentral-1.1.6.tgz";
sha256 = "03f2jyjrxmmr28949m3niwb437akyp6kg6h1m2jkaxfg5yj4hs4v";
url = "https://registry.npmjs.org/meshcentral/-/meshcentral-1.1.19.tgz";
sha256 = "0kphzzhzc29jmldbfdfczw0395a1kr38bpyz0hjl9hm0d6glz74h";
};
patches = [ ./fix-js-include-paths.patch ];
@ -21,7 +21,7 @@ yarn2nix-moretea.mkYarnPackage {
offlineCache = fetchYarnDeps {
yarnLock = ./yarn.lock;
hash = "sha256-aKWa6pvIi2JkOtpiWH19KZoncPuSIgvDk/j7PvXp2nw=";
hash = "sha256-tKS7Nrd5tWuRFfl5hZXCmVBxUe+W3+uhtw0YF0IBGZU=";
};
# Tarball has CRLF line endings. This makes patching difficult, so let's convert them.
@ -45,7 +45,7 @@ yarn2nix-moretea.mkYarnPackage {
meta = with lib; {
description = "Computer management web app";
homepage = "https://meshcentral.com/";
maintainers = [ maintainers.lheckemann ];
maintainers = with maintainers; [ ma27 ];
license = licenses.asl20;
};
}

View File

@ -1,6 +1,6 @@
{
"name": "meshcentral",
"version": "1.1.6",
"version": "1.1.19",
"keywords": [
"Remote Device Management",
"Remote Device Monitoring",
@ -37,24 +37,25 @@
"sample-config-advanced.json"
],
"dependencies": {
"archiver": "^5.3.1",
"body-parser": "^1.19.0",
"cbor": "~5.2.0",
"compression": "^1.7.4",
"cookie-session": "^2.0.0",
"express": "^4.17.0",
"express-handlebars": "^5.3.5",
"express-ws": "^4.0.0",
"ipcheck": "^0.1.0",
"minimist": "^1.2.5",
"multiparty": "^4.2.1",
"@yetzt/nedb": "^1.8.0",
"node-forge": "^1.0.0",
"ws": "^5.2.3",
"yauzl": "^2.10.0"
"archiver": "5.3.2",
"body-parser": "1.20.2",
"cbor": "5.2.0",
"compression": "1.7.4",
"cookie-session": "2.0.0",
"express": "4.18.2",
"express-handlebars": "5.3.5",
"express-ws": "4.0.0",
"ipcheck": "0.1.0",
"minimist": "1.2.8",
"multiparty": "4.2.3",
"@yetzt/nedb": "1.8.0",
"node-forge": "1.3.1",
"ua-parser-js": "1.0.37",
"ws": "8.14.2",
"yauzl": "2.10.0"
},
"engines": {
"node": ">=10.0.0"
"node": ">=11.0.0"
},
"repository": {
"type": "git",
@ -62,7 +63,7 @@
},
"readme": "readme.md",
"optionalDependencies": {
"passport": "0.5.3",
"passport": "*",
"passport-twitter": "*",
"passport-google-oauth20": "*",
"passport-github2": "*",
@ -71,70 +72,72 @@
"jwt-simple": "*",
"@mstrhakr/passport-openidconnect": "*",
"openid-client": "*",
"connect-flash": "*",
"passport-saml": "*",
"ws": "5.2.3",
"archiver": "5.3.2",
"body-parser": "1.20.2",
"cbor": "5.2.0",
"@yetzt/nedb": "*",
"https": "*",
"yauzl": "*",
"ipcheck": "*",
"express": "*",
"archiver": "5.3.1",
"multiparty": "*",
"node-forge": "*",
"express-ws": "4.0.0",
"compression": "*",
"body-parser": "*",
"compression": "1.7.4",
"cookie-session": "2.0.0",
"express-handlebars": "*",
"node-windows": "0.1.4",
"loadavg-windows": "*",
"node-sspi": "*",
"ldapauth-fork": "*",
"ssh2": "*",
"svg-captcha": "*",
"image-size": "*",
"express": "4.18.2",
"express-handlebars": "5.3.5",
"express-ws": "4.0.0",
"ipcheck": "0.1.0",
"minimist": "1.2.8",
"multiparty": "4.2.3",
"@yetzt/nedb": "*",
"node-forge": "1.3.1",
"ua-parser-js": "1.0.37",
"ws": "8.14.2",
"yauzl": "2.10.0",
"node-windows": "0.1.14",
"loadavg-windows": "1.1.1",
"node-sspi": "0.2.10",
"ldapauth-fork": "5.0.5",
"ssh2": "1.15.0",
"svg-captcha": "1.4.0",
"image-size": "1.0.2",
"acme-client": "4.2.5",
"aedes": "0.39.0",
"mysql": "*",
"@mysql/xdevapi": "*",
"mysql2": "3.6.2",
"@mysql/xdevapi": "8.0.33",
"mongodb": "4.13.0",
"saslprep": "*",
"saslprep": "1.0.3",
"pg": "8.7.1",
"pgtools": "0.3.2",
"mariadb": "*",
"acebase": "*",
"sqlite3": "*",
"node-vault": "*",
"semver": "*",
"https-proxy-agent": "*",
"mongojs": "*",
"nodemailer": "*",
"mariadb": "3.2.2",
"acebase": "1.29.5",
"sqlite3": "5.1.6",
"node-vault": "0.10.2",
"semver": "7.5.4",
"https-proxy-agent": "7.0.2",
"mongojs": "3.1.0",
"nodemailer": "6.9.8",
"@sendgrid/mail": "*",
"jsdom": "*",
"esprima": "*",
"minify-js": "*",
"html-minifier": "*",
"@crowdsec/express-bouncer": "*",
"archiver-zip-encrypted": "*",
"googleapis": "*",
"webdav": "*",
"jsdom": "22.1.0",
"esprima": "4.0.1",
"minify-js": "0.0.4",
"html-minifier": "4.0.0",
"@crowdsec/express-bouncer": "0.1.0",
"archiver-zip-encrypted": "1.0.11",
"googleapis": "128.0.0",
"webdav": "4.11.3",
"wildleek": "2.0.0",
"yubikeyotp": "*",
"yubikeyotp": "0.2.0",
"otplib": "10.2.3",
"twilio": "*",
"plivo": "*",
"telnyx": "*",
"telegram": "*",
"input": "*",
"twilio": "4.19.0",
"plivo": "4.58.0",
"telnyx": "1.25.5",
"telegram": "2.19.8",
"input": "1.0.1",
"discord.js": "14.6.0",
"@xmpp/client": "*",
"node-pushover": "*",
"zulip": "*",
"web-push": "*",
"@xmpp/client": "0.13.1",
"node-pushover": "1.0.0",
"zulip": "0.1.0",
"web-push": "3.6.6",
"node-xcs": "0.1.7",
"modern-syslog": "*",
"syslog": "*",
"heapdump": "*"
"modern-syslog": "1.2.0",
"syslog": "0.1.1-1",
"heapdump": "0.3.15"
}
}

File diff suppressed because it is too large Load Diff

View File

@ -11,16 +11,16 @@
buildGoModule rec {
pname = "sing-box";
version = "1.8.2";
version = "1.8.4";
src = fetchFromGitHub {
owner = "SagerNet";
repo = pname;
rev = "v${version}";
hash = "sha256-+N+3RfWOIM6bZAxmmfG3jMWICWKvOC1CV4hBv8oZjIM=";
hash = "sha256-Zn2akHyStq014k4ze3zsqASFnn6VTQ6fu1HdYMBDI1Y=";
};
vendorHash = "sha256-NgtZ0z/9X+GWaZqQJMecF/Bxq9u8JKCewgQGSru+EJc=";
vendorHash = "sha256-L5TFMwhxit4Bm6h6KSEygKxGHbflNa0UQ9lzNqsvuGA=";
tags = [
"with_quic"

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "httpx";
version = "1.3.8";
version = "1.3.9";
src = fetchFromGitHub {
owner = "projectdiscovery";
repo = "httpx";
rev = "refs/tags/v${version}";
hash = "sha256-mHksSCOy0vF7YRg2Pu6r8VzA8YNP8JXTCd44QoGTyww=";
hash = "sha256-3k/3CJ+/17Ygj4N8KPRYiAT+QJx3RlQMNemFztKtTt4=";
};
vendorHash = "sha256-TctifN2YhW5t+nuFVB1yPgOopLzQfgi5QIJitMlVPJc=";
vendorHash = "sha256-apTCSKWkAarAHDEVvyyRjBm5s5M2YDXP5bMITDLoq20=";
subPackages = [
"cmd/httpx"

View File

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "trufflehog";
version = "3.63.11";
version = "3.64.0";
src = fetchFromGitHub {
owner = "trufflesecurity";
repo = "trufflehog";
rev = "refs/tags/v${version}";
hash = "sha256-potMA/fLiwH0TZNwXJSC+SFRG8qxXe2drdk6Aj+4GUQ=";
hash = "sha256-juacw+Y6gmEsmBtW3gDJQiQjjxh15Sr23dYoR7PuVTU=";
};
vendorHash = "sha256-hzSGhq10n09C2lTeJr3oO+KyeTLqpuNXfn7NukGf0ck=";
vendorHash = "sha256-qmU04k+gzn1A+Zq4GlZubud2g7Vs9uiWYiG6xWCBMVw=";
ldflags = [
"-s"

View File

@ -16638,7 +16638,8 @@ with pkgs;
else if platform.isAndroid then 12
else if platform.isLinux then 16
else if platform.isWasm then 16
else 14;
# For unknown systems, assume the latest version is required.
else 17;
# We take the "max of the mins". Why? Since those are lower bounds of the
# supported version set, this is like intersecting those sets and then
# taking the min bound of that.
@ -18327,8 +18328,6 @@ with pkgs;
javascript-typescript-langserver = callPackage ../development/tools/language-servers/javascript-typescript-langserver { };
jdt-language-server = callPackage ../development/tools/language-servers/jdt-language-server { };
jsonnet-language-server = callPackage ../development/tools/language-servers/jsonnet-language-server { };
kotlin-language-server = callPackage ../development/tools/language-servers/kotlin-language-server { };
@ -23829,8 +23828,6 @@ with pkgs;
litehtml = callPackage ../development/libraries/litehtml { };
live555 = callPackage ../development/libraries/live555 { };
llhttp = callPackage ../development/libraries/llhttp { };
log4cpp = callPackage ../development/libraries/log4cpp { };
@ -24932,9 +24929,9 @@ with pkgs;
sdrplay = callPackage ../applications/radio/sdrplay { };
sdrpp = pin-to-gcc12-if-gcc13 (callPackage ../applications/radio/sdrpp {
sdrpp = callPackage ../applications/radio/sdrpp {
inherit (darwin.apple_sdk.frameworks) AppKit;
});
};
sigdigger = libsForQt5.callPackage ../applications/radio/sigdigger { };
@ -25922,6 +25919,17 @@ with pkgs;
go = buildPackages.go_1_21;
};
# requires a newer Apple SDK
go_1_22 = darwin.apple_sdk_11_0.callPackage ../development/compilers/go/1.22.nix {
inherit (darwin.apple_sdk_11_0.frameworks) Foundation Security;
};
buildGo122Module = darwin.apple_sdk_11_0.callPackage ../build-support/go/module.nix {
go = buildPackages.go_1_22;
};
buildGo122Package = darwin.apple_sdk_11_0.callPackage ../build-support/go/package.nix {
go = buildPackages.go_1_22;
};
leaps = callPackage ../development/tools/leaps { };
### DEVELOPMENT / JAVA MODULES
@ -27783,8 +27791,6 @@ with pkgs;
fwanalyzer = callPackage ../tools/filesystems/fwanalyzer { };
fwupd = callPackage ../os-specific/linux/firmware/fwupd { };
fwupd-efi = callPackage ../os-specific/linux/firmware/fwupd-efi { };
firmware-manager = callPackage ../os-specific/linux/firmware/firmware-manager { };

View File

@ -13998,6 +13998,8 @@ self: super: with self; {
swagger-ui-bundle = callPackage ../development/python-modules/swagger-ui-bundle { };
switchbot-api = callPackage ../development/python-modules/switchbot-api { };
swift = callPackage ../development/python-modules/swift { };
swisshydrodata = callPackage ../development/python-modules/swisshydrodata { };