Merge master into staging-next
This commit is contained in:
commit
a4b5a14b07
10
.github/workflows/check-by-name.yml
vendored
10
.github/workflows/check-by-name.yml
vendored
|
@ -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
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
7
nixos/modules/tasks/filesystems/sshfs.nix
Normal file
7
nixos/modules/tasks/filesystems/sshfs.nix
Normal 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 ];
|
||||
};
|
||||
}
|
|
@ -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 = [
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
|
|
@ -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 ];
|
||||
};
|
||||
|
|
|
@ -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 = [
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -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 = {
|
||||
|
|
|
@ -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=";
|
||||
|
|
|
@ -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 = [
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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 = [ "." ];
|
||||
|
||||
|
|
|
@ -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";
|
||||
|
||||
|
|
|
@ -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 = ''
|
||||
|
|
|
@ -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
|
|
@ -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";
|
21
pkgs/by-name/jd/jdt-language-server/update.sh
Normal file
21
pkgs/by-name/jd/jdt-language-server/update.sh
Normal 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\"|" \
|
95
pkgs/by-name/li/live555/package.nix
Normal file
95
pkgs/by-name/li/live555/package.nix
Normal 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;
|
||||
};
|
||||
})
|
189
pkgs/development/compilers/go/1.22.nix
Normal file
189
pkgs/development/compilers/go/1.22.nix
Normal 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";
|
||||
};
|
||||
})
|
23
pkgs/development/compilers/go/go_no_vendor_checks-1.22.patch
Normal file
23
pkgs/development/compilers/go/go_no_vendor_checks-1.22.patch
Normal 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.
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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 = ''
|
||||
|
|
|
@ -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 = [
|
||||
|
|
|
@ -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 = [
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -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 = [
|
||||
|
|
|
@ -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 = [
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 ];
|
||||
};
|
||||
|
|
|
@ -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 ];
|
||||
};
|
||||
|
|
45
pkgs/development/python-modules/switchbot-api/default.nix
Normal file
45
pkgs/development/python-modules/switchbot-api/default.nix
Normal 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 ];
|
||||
};
|
||||
}
|
|
@ -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 = [
|
||||
|
|
|
@ -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 ];
|
||||
|
||||
|
|
|
@ -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 = [
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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"];
|
||||
|
|
|
@ -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 ++ [];
|
||||
}) // {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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; };
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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 { };
|
||||
}
|
|
@ -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";
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
import <test-nixpkgs> { root = ./.; }
|
|
@ -0,0 +1 @@
|
|||
import <test-nixpkgs> { root = ./.; }
|
|
@ -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.
|
|
@ -0,0 +1 @@
|
|||
{ someDrv }: someDrv
|
|
@ -0,0 +1 @@
|
|||
{ someDrv }: someDrv
|
|
@ -1,3 +1,5 @@
|
|||
self: super: {
|
||||
iDontEval = throw "I don't eval";
|
||||
|
||||
futureEval = self.callPackage ({ someDrv }: someDrv) { };
|
||||
}
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
self: super: {
|
||||
futureEval = throw "foo";
|
||||
}
|
|
@ -0,0 +1 @@
|
|||
import <test-nixpkgs> { root = ./.; }
|
|
@ -1 +0,0 @@
|
|||
(this is just here so the directory can get tracked by git)
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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
|
@ -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"
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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"
|
||||
|
|
|
@ -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 { };
|
||||
|
|
|
@ -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 { };
|
||||
|
|
Loading…
Reference in New Issue
Block a user