Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2023-08-09 18:01:38 +00:00 committed by GitHub
commit 753276e426
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
40 changed files with 2555 additions and 3003 deletions

View file

@ -666,6 +666,7 @@ in
USER = cfg.user;
HOME = cfg.stateDir;
GITEA_WORK_DIR = cfg.stateDir;
GITEA_CUSTOM = cfg.customDir;
};
serviceConfig = {

View file

@ -214,9 +214,9 @@ in {
++ lib.optional config.virtualisation.libvirtd.enable (config.virtualisation.libvirtd.package);
environment = {
PYTHONPATH = "${cfg.package}/libexec/netdata/python.d/python_modules";
NETDATA_PIPENAME = "/run/netdata/ipc";
} // lib.optionalAttrs (!cfg.enableAnalyticsReporting) {
DO_NOT_TRACK = "1";
NETDATA_PIPENAME = "/run/netdata/ipc";
};
restartTriggers = [
config.environment.etc."netdata/netdata.conf".source

View file

@ -4,38 +4,9 @@ with lib;
let
systemBuilder =
let
kernelPath = "${config.boot.kernelPackages.kernel}/" +
"${config.system.boot.loader.kernelFile}";
initrdPath = "${config.system.build.initialRamdisk}/" +
"${config.system.boot.loader.initrdFile}";
in ''
''
mkdir $out
# Containers don't have their own kernel or initrd. They boot
# directly into stage 2.
${optionalString config.boot.kernel.enable ''
if [ ! -f ${kernelPath} ]; then
echo "The bootloader cannot find the proper kernel image."
echo "(Expecting ${kernelPath})"
false
fi
ln -s ${kernelPath} $out/kernel
ln -s ${config.system.modulesTree} $out/kernel-modules
${optionalString (config.hardware.deviceTree.package != null) ''
ln -s ${config.hardware.deviceTree.package} $out/dtbs
''}
echo -n "$kernelParams" > $out/kernel-params
ln -s ${initrdPath} $out/initrd
ln -s ${config.system.build.initialRamdiskSecretAppender}/bin/append-initrd-secrets $out
ln -s ${config.hardware.firmware}/lib/firmware $out/firmware
''}
${if config.boot.initrd.systemd.enable then ''
cp ${config.system.build.bootStage2} $out/prepare-root
substituteInPlace $out/prepare-root --subst-var-by systemConfig $out
@ -83,7 +54,6 @@ let
systemd = config.systemd.package;
kernelParams = config.boot.kernelParams;
nixosLabel = config.system.nixos.label;
inherit (config.system) extraDependencies;

View file

@ -309,6 +309,38 @@ in
system.modulesTree = [ kernel ] ++ config.boot.extraModulePackages;
# Not required for, e.g., containers as they don't have their own kernel or initrd.
# They boot directly into stage 2.
system.systemBuilderArgs.kernelParams = config.boot.kernelParams;
system.systemBuilderCommands =
let
kernelPath = "${config.boot.kernelPackages.kernel}/" +
"${config.system.boot.loader.kernelFile}";
initrdPath = "${config.system.build.initialRamdisk}/" +
"${config.system.boot.loader.initrdFile}";
in
''
if [ ! -f ${kernelPath} ]; then
echo "The bootloader cannot find the proper kernel image."
echo "(Expecting ${kernelPath})"
false
fi
ln -s ${kernelPath} $out/kernel
ln -s ${config.system.modulesTree} $out/kernel-modules
${optionalString (config.hardware.deviceTree.package != null) ''
ln -s ${config.hardware.deviceTree.package} $out/dtbs
''}
echo -n "$kernelParams" > $out/kernel-params
ln -s ${initrdPath} $out/initrd
ln -s ${config.system.build.initialRamdiskSecretAppender}/bin/append-initrd-secrets $out
ln -s ${config.hardware.firmware}/lib/firmware $out/firmware
'';
# Implement consoleLogLevel both in early boot and using sysctl
# (so you don't need to reboot to have changes take effect).
boot.kernelParams =

View file

@ -129,6 +129,60 @@ let
};
};
};
hooksModule = types.submodule {
options = {
daemon = mkOption {
type = types.attrsOf types.path;
default = { };
description = lib.mdDoc ''
Hooks that will be placed under /var/lib/libvirt/hooks/daemon.d/
and called for daemon start/shutdown/SIGHUP events.
Please see https://libvirt.org/hooks.html for documentation.
'';
};
qemu = mkOption {
type = types.attrsOf types.path;
default = { };
description = lib.mdDoc ''
Hooks that will be placed under /var/lib/libvirt/hooks/qemu.d/
and called for qemu domains begin/end/migrate events.
Please see https://libvirt.org/hooks.html for documentation.
'';
};
lxc = mkOption {
type = types.attrsOf types.path;
default = { };
description = lib.mdDoc ''
Hooks that will be placed under /var/lib/libvirt/hooks/lxc.d/
and called for lxc domains begin/end events.
Please see https://libvirt.org/hooks.html for documentation.
'';
};
libxl = mkOption {
type = types.attrsOf types.path;
default = { };
description = lib.mdDoc ''
Hooks that will be placed under /var/lib/libvirt/hooks/libxl.d/
and called for libxl-handled xen domains begin/end events.
Please see https://libvirt.org/hooks.html for documentation.
'';
};
network = mkOption {
type = types.attrsOf types.path;
default = { };
description = lib.mdDoc ''
Hooks that will be placed under /var/lib/libvirt/hooks/lxc.d/
and called for networks begin/end events.
Please see https://libvirt.org/hooks.html for documentation.
'';
};
};
};
in
{
@ -246,6 +300,14 @@ in
QEMU related options.
'';
};
hooks = mkOption {
type = hooksModule;
default = { };
description = lib.mdDoc ''
Hooks related options.
'';
};
};
@ -337,6 +399,15 @@ in
ln -s --force ${ovmfpackage}/FV/AAVMF_VARS.fd /run/${dirName}/nix-ovmf/
ln -s --force ${ovmfpackage}/FV/OVMF_VARS.fd /run/${dirName}/nix-ovmf/
'')}
# Symlink hooks to /var/lib/libvirt
${concatStringsSep "\n" (map (driver:
''
mkdir -p /var/lib/${dirName}/hooks/${driver}.d
rm -rf /var/lib/${dirName}/hooks/${driver}.d/*
${concatStringsSep "\n" (mapAttrsToList (name: value:
"ln -s --force ${value} /var/lib/${dirName}/hooks/${driver}.d/${name}") cfg.hooks.${driver})}
'') (attrNames cfg.hooks))}
'';
serviceConfig = {

View file

@ -11,6 +11,9 @@ import ./make-test-python.nix ({ pkgs, ... }: {
memorySize = 2048;
libvirtd.enable = true;
libvirtd.hooks.qemu.is_working = "${pkgs.writeShellScript "testHook.sh" ''
touch /tmp/qemu_hook_is_working
''}";
};
boot.supportedFilesystems = [ "zfs" ];
networking.hostId = "deadbeef"; # needed for zfs
@ -57,5 +60,9 @@ import ./make-test-python.nix ({ pkgs, ... }: {
virthost.shutdown()
virthost.wait_for_unit("multi-user.target")
virthost.wait_until_succeeds("ping -c 1 nixos")
with subtest("test if hooks are linked and run"):
virthost.succeed("ls /var/lib/libvirt/hooks/qemu.d/is_working")
virthost.succeed("ls /tmp/qemu_hook_is_working")
'';
})

View file

@ -11,6 +11,10 @@
"date": "2020-03-27",
"new": "vim-gist"
},
"lspsaga-nvim-original": {
"date": "2023-08-08",
"new": "lspsaga-nvim"
},
"lua-dev-nvim": {
"date": "2022-10-20",
"new": "neodev-nvim"

View file

@ -167,8 +167,8 @@ rec {
mkTerraform = attrs: pluggable (generic attrs);
terraform_1 = mkTerraform {
version = "1.5.4";
hash = "sha256-MvN4gSJcPORD0wj6ixc3gUXPISGvAKSJPA6bS/SmDOY=";
version = "1.5.5";
hash = "sha256-SBS3a/CIUdyIUJvc+rANIs+oXCQgfZut8b0517QKq64=";
vendorHash = "sha256-lQgWNMBf+ioNxzAV7tnTQSIS840XdI9fg9duuwoK+U4=";
patches = [ ./provider-path-0_15.patch ];
passthru = {

View file

@ -9,11 +9,13 @@ in
nodePackages.n8n.override {
nativeBuildInputs = [
pkgs.nodePackages.node-pre-gyp
pkgs.which
];
buildInputs = [
pkgs.postgresql
pkgs.libkrb5
pkgs.libmongocrypt
pkgs.postgresql
];
# Oracle's official package on npm is binary only (WHY?!) and doesn't provide binaries for aarch64.

File diff suppressed because it is too large Load diff

View file

@ -12,13 +12,13 @@
buildPythonApplication rec {
pname = "git-machete";
version = "3.17.8";
version = "3.17.9";
src = fetchFromGitHub {
owner = "virtuslab";
repo = pname;
rev = "v${version}";
hash = "sha256-d1vbLlGKln/zcuuKZgNOcu/z15co3p8ecrwL5lucIEk=";
hash = "sha256-oU4c57XU/DLGjOl/CyCt6oG3QaB2xnrOEg+sUAd7sww=";
};
nativeBuildInputs = [ installShellFiles ];

View file

@ -13,13 +13,13 @@
stdenvNoCC.mkDerivation rec {
pname = "elementary-icon-theme";
version = "7.3.0";
version = "7.3.1";
src = fetchFromGitHub {
owner = "elementary";
repo = "icons";
rev = version;
sha256 = "sha256-4ZXqIMXyb9MLd6EHmPn672Dbw992GYYU64oB+4p6jXY=";
sha256 = "sha256-3qvbpY1O8E3sX+66yBoZXEOeWQrgyNu2rOT6PPbli58=";
};
nativeBuildInputs = [

View file

@ -1,5 +1,5 @@
{ lib
, mkDerivation
, stdenv
, fetchFromGitHub
, kcoreaddons
, kwindowsystem
@ -7,17 +7,19 @@
, systemsettings
}:
mkDerivation rec {
stdenv.mkDerivation(finalAttrs: {
pname = "kzones";
version = "0.5";
version = "0.6";
src = fetchFromGitHub {
owner = "gerritdevriese";
repo = "kzones";
rev = "v${version}";
sha256 = "sha256-0f7Fv5cvRvqNrKjHpU/tLpjiBPN0ExwTDq1p9sdLd4o=";
rev = "v${finalAttrs.version}";
sha256 = "sha256-OAgzuX05dvotjRWiyPPeUieVJbQoy/opGYu6uVKQM60=";
};
nativeBuildInputs = [ plasma-framework ];
buildInputs = [
kcoreaddons
kwindowsystem
@ -27,13 +29,16 @@ mkDerivation rec {
dontBuild = true;
# we don't have anything to wrap anyway
dontWrapQtApps = true;
# 1. --global still installs to $HOME/.local/share so we use --packageroot
# 2. plasmapkg2 doesn't copy metadata.desktop into place, so we do that manually
installPhase = ''
runHook preInstall
plasmapkg2 --type kwinscript --install ${src} --packageroot $out/share/kwin/scripts
install -Dm644 ${src}/metadata.desktop $out/share/kservices5/kwin-script-kzones.desktop
plasmapkg2 --type kwinscript --install ${finalAttrs.src} --packageroot $out/share/kwin/scripts
install -Dm644 ${finalAttrs.src}/metadata.desktop $out/share/kservices5/kwin-script-kzones.desktop
runHook postInstall
'';
@ -42,8 +47,7 @@ mkDerivation rec {
description = "KWin Script for snapping windows into zones";
maintainers = with maintainers; [ matthiasbeyer ];
license = licenses.gpl3Plus;
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
inherit (kwindowsystem.meta) platforms;
};
}
})

View file

@ -8,15 +8,16 @@
}:
buildPythonPackage rec {
pname = "async_stagger";
pname = "async-stagger";
version = "0.3.1";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "1mj3daaqxjdavbxcjrdwx5ky9maa2blbv53aa6d7w9zxkrz3b7xa";
pname = "async_stagger";
inherit version;
hash = "sha256-qp81fp79J36aUWqUvegSStXkZ+m8Zcn62qrJjpVqQ9Y=";
};
nativeCheckInputs = [

View file

@ -13,7 +13,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
sha256 = "2163e1640ddb52b7a8c80d0a67a08587e5d245cc9c553a74a847056bc2976b15";
hash = "sha256-IWPhZA3bUreoyA0KZ6CFh+XSRcycVTp0qEcFa8KXaxU=";
};
propagatedBuildInputs = [

View file

@ -8,6 +8,7 @@
, setuptools
, setuptools-scm
, typing-extensions
, wheel
}:
buildPythonPackage rec {
@ -29,6 +30,7 @@ buildPythonPackage rec {
nativeBuildInputs = [
setuptools
setuptools-scm
wheel
];
propagatedBuildInputs = [

View file

@ -13,14 +13,14 @@
buildPythonPackage rec {
pname = "dask-image";
version = "2023.3.0";
version = "2023.8.1";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-M6qckhUG2DvBw2uY5pAJFyuvatC7owVlb6XWkkrzAys=";
hash = "sha256-XpqJhbBSehtZQsan50Tg5X0mTiIscFjwW664HDdNBLY=";
};
propagatedBuildInputs = [

View file

@ -6,7 +6,7 @@
, asyncio-rlock
, asyncio-throttle
, ircstates
, async_stagger
, async-stagger
, async-timeout
, python
}:
@ -35,7 +35,7 @@ buildPythonPackage rec {
asyncio-rlock
asyncio-throttle
ircstates
async_stagger
async-stagger
async-timeout
];

View file

@ -2,7 +2,6 @@
, stdenv
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, gitpython
, isort
, jupyter-client
@ -20,7 +19,7 @@
buildPythonPackage rec {
pname = "jupytext";
version = "1.14.1";
version = "1.15.0";
format = "pyproject";
disabled = pythonOlder "3.6";
@ -29,16 +28,9 @@ buildPythonPackage rec {
owner = "mwouts";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-DDF4aTLkhEl4xViYh/E0/y6swcwZ9KbeS0qKm+HdFz8=";
hash = "sha256-M4BoST18sf1C1lwhFkp4a0B3fc0VKerwuVEIfwkD7i0=";
};
patches = [
(fetchpatch {
url = "https://github.com/mwouts/jupytext/commit/be9b65b03600227b737b5f10ea259a7cdb762b76.patch";
hash = "sha256-3klx8I+T560EVfsKe/FlrSjF6JzdKSCt6uhAW2cSwtc=";
})
];
buildInputs = [
jupyter-packaging
jupyterlab
@ -85,7 +77,8 @@ buildPythonPackage rec {
meta = with lib; {
description = "Jupyter notebooks as Markdown documents, Julia, Python or R scripts";
homepage = "https://github.com/mwouts/jupytext";
changelog = "https://github.com/mwouts/jupytext/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = with maintainers; [ timokau ];
maintainers = teams.jupyter.members;
};
}

View file

@ -1,8 +1,8 @@
{ lib, fetchFromGitHub }:
let
version = "1.0.0";
srcHash = "sha256-1HSSHR3myn1x75kO/70w1p21a7dHwFiC7iAH/KRoYsE=";
vendorHash = "sha256-UFTK3EK8eYB3/iKxycCIkSHdLsKGnDkYCpoFJSajm5M=";
version = "1.0.1";
srcHash = "sha256-uwKLD3fW/em6UMkkyrWxAo7T//Hkzj6WjIp5qJVtBuc=";
vendorHash = "sha256-NYWJorVeRxbQTiirHK8gqpDddn2RsKsNWwDNdcONVQA=";
yarnHash = "sha256-QNeQwWU36A05zaARWmqEOhfyZRW68OgF4wTonQLYQfs=";
in
{
@ -32,6 +32,6 @@ in
meta = with lib; {
homepage = "https://woodpecker-ci.org/";
license = licenses.asl20;
maintainers = with maintainers; [ ambroisie techknowlogick ];
maintainers = with maintainers; [ ambroisie techknowlogick adamcstephens ];
};
}

View file

@ -8,7 +8,7 @@
},
"scripts": {
"start": "vite",
"build": "vite build",
"build": "vite build --base=/BASE_PATH",
"serve": "vite preview",
"lint": "eslint --max-warnings 0 --ext .js,.ts,.vue,.json .",
"formatcheck": "prettier -c .",

View file

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "golangci-lint";
version = "1.53.3";
version = "1.54.0";
src = fetchFromGitHub {
owner = "golangci";
repo = "golangci-lint";
rev = "v${version}";
hash = "sha256-5qTWYmr82BFuyA+lS1HwCHqdrtWScI6tuu0noRbali8=";
hash = "sha256-UXN5gN1SNv3uvBCliJQ+5PSGHRL7RyU6pmZtGUTFsrQ=";
};
vendorHash = "sha256-MEfvBlecFIXqAet3V9qHRmeUzzcsSnkfM3HMTMlxss0=";
vendorHash = "sha256-jUlK/A0HxBrIby2C0zYFtnxQX1bgKVyypI3QdH4u/rg=";
subPackages = [ "cmd/golangci-lint" ];
@ -35,6 +35,7 @@ buildGoModule rec {
meta = with lib; {
description = "Fast linters Runner for Go";
homepage = "https://golangci-lint.run/";
changelog = "https://github.com/golangci/golangci-lint/blob/v${version}/CHANGELOG.md";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ anpryl manveru mic92 ];
};

View file

@ -15,16 +15,16 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "texlab";
version = "5.8.0";
version = "5.9.0";
src = fetchFromGitHub {
owner = "latex-lsp";
repo = "texlab";
rev = "refs/tags/v${version}";
hash = "sha256-KjCE7ei01ks4TMYiHE9In2Z3AWOw/4D4kIl0vFA4YKs=";
hash = "sha256-mF0vbKdTACGeL1NZ57kzZANxjcHX92WtRJoU2Z4iJiM=";
};
cargoHash = "sha256-1R9bNyNHDcRwn5nlkEFtSGA4V7Bn1Pq3v0E8njGUAYU=";
cargoHash = "sha256-io0dkKDNoF+1n7D1q1JShd/Gj5Ce1Uh3dnM6uiTw0Vs=";
outputs = [ "out" ] ++ lib.optional (!isCross) "man";

View file

@ -1,8 +1,11 @@
{ lib, stdenv, fetchurl, fetchzip, cmake, SDL2, libpng, zlib, xz, freetype, fontconfig
{ lib, stdenv, fetchurl, fetchzip, cmake, pkg-config
, SDL2, libpng, zlib, xz, freetype, fontconfig
, nlohmann_json, curl, icu, harfbuzz, expat, glib, pcre2
, withOpenGFX ? true, withOpenSFX ? true, withOpenMSX ? true
, withFluidSynth ? true, audioDriver ? "alsa", fluidsynth, soundfont-fluid, procps
, writeScriptBin, makeWrapper, runtimeShell
}:
, withFluidSynth ? true, audioDriver ? "alsa"
, fluidsynth, soundfont-fluid, libsndfile
, flac, libogg, libvorbis, libopus, libmpg123, pulseaudio, alsa-lib, libjack2
, procps, writeScriptBin, makeWrapper, runtimeShell }:
let
opengfx = fetchzip {
@ -36,9 +39,14 @@ stdenv.mkDerivation rec {
hash = "sha256-Kh3roBv+WOIYiHn0UMP6TzgZJxq0m/NI3WZUXwQNFG8=";
};
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ SDL2 libpng xz zlib freetype fontconfig ]
++ lib.optionals withFluidSynth [ fluidsynth soundfont-fluid ];
nativeBuildInputs = [ cmake pkg-config makeWrapper ];
buildInputs = [
SDL2 libpng xz zlib freetype fontconfig
nlohmann_json curl icu harfbuzz expat glib pcre2
] ++ lib.optionals withFluidSynth [
fluidsynth soundfont-fluid libsndfile
flac libogg libvorbis libopus libmpg123 pulseaudio alsa-lib libjack2
];
prefixKey = "--prefix-dir=";

View file

@ -198,12 +198,12 @@ in rec {
dracula = mkTmuxPlugin rec {
pluginName = "dracula";
version = "2.1.0";
version = "2.2.0";
src = fetchFromGitHub {
owner = "dracula";
repo = "tmux";
rev = "v${version}";
sha256 = "89S8LHTx2gYWj+Ejws5f6YRQgoj0rYE7ITtGtZibl30=";
sha256 = "9p+KO3/SrASHGtEk8ioW+BnC4cXndYx4FL0T70lKU2w=";
};
meta = with lib; {
homepage = "https://draculatheme.com/tmux";

View file

@ -1,7 +1,7 @@
# This file is autogenerated! Run ./update.sh to regenerate.
{
version = "20230804";
revision = "20230804";
sourceHash = "sha256-TejOQazlH0rBuFHkHooYjR5slpjoSF7TaXvCVUvzevs=";
outputHash = "sha256-lD31M1Vio/MJlfKeHGT21xBzQETwgdeiObxPq79SrvU=";
version = "20230809";
revision = "f2eb058afc57348cde66852272d6bf11da1eef8f";
sourceHash = "sha256-tflH32hvHstFNZe1wJMV7gekekbhiUGkBUIUy1n203Q=";
outputHash = "sha256-OkqLvefP+KNk/zYPIiYOUA9i9evy9bX36No8Kw03RP0=";
}

View file

@ -6,8 +6,8 @@ let
};
in
buildMongoDB {
version = "4.4.22";
sha256 = "sha256-xJpRDfeG9zcUuyTDWw8XHRXQ38MLBespAE7knIaDxKg=";
version = "4.4.23";
sha256 = "sha256-3Jo5i2kA37FI3j9bj9MVPL9LU0E1bGhu3I6GhM6zqLY=";
patches = [
./forget-build-dependencies-4-4.patch
./fix-build-with-boost-1.79-4_4.patch

View file

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec {
pname = "sozu";
version = "0.15.2";
version = "0.15.3";
src = fetchFromGitHub {
owner = "sozu-proxy";
repo = pname;
rev = version;
hash = "sha256-6CuBJUMymnqNx/675PeBuZNhYYh9HtU99J1LYO2+Rxc=";
hash = "sha256-hZQ5pRzQy+BMGnxCl0Mw3hqCHZJcZ30vhqt6gWyLXWU=";
};
cargoHash = "sha256-c/TC8Mn9UFIymkXxD02iB6E3kKyeuKDgvlgapiV0Nco=";
cargoHash = "sha256-KFOsKyZZOWvkkTuLqVeLmHlk6HscEJi0sI2hJS6UnOU=";
nativeBuildInputs = [ protobuf ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "pgbouncer";
version = "1.19.1";
version = "1.20.0";
src = fetchurl {
url = "https://www.pgbouncer.org/downloads/files/${version}/${pname}-${version}.tar.gz";
hash = "sha256-WMPv+btywYEzso4fA0/Vk1bqdigcZeEnQyyhAcIIo5Q=";
hash = "sha256-5w1afLi3Hdfbq/01cdcaS2uZ8uhdjXGvHnNPbYZjXw4=";
};
nativeBuildInputs = [ pkg-config ];

View file

@ -0,0 +1,40 @@
{ lib
, buildGoModule
, fetchFromGitHub
}:
buildGoModule rec {
pname = "webmesh";
version = "0.1.2";
src = fetchFromGitHub {
owner = "webmeshproj";
repo = pname;
rev = "v${version}";
hash = "sha256-S7kenBrnhM8V0TdbRe+CJP2XGHG/dZbfGVwdRurPeP8=";
};
vendorHash = "sha256-LBd5IrNFGkEhz+joDv6juL7WuoFyoqCXnmEHFB1K6Nc=";
CGO_ENABLED = 0;
subPackages = [ "cmd/node" "cmd/wmctl" ];
ldflags = [
"-w"
"-s"
"-X github.com/webmeshproj/webmesh/pkg/version.Version=${version}"
"-X github.com/webmeshproj/webmesh/pkg/version.Commit=v${version}"
];
postInstall = ''
mv $out/bin/node $out/bin/webmesh-node
'';
meta = with lib; {
description = "A simple, distributed, zero-configuration WireGuard mesh provider";
homepage = "https://webmeshproj.github.io";
license = licenses.asl20;
maintainers = with maintainers; [ bbigras ];
};
}

View file

@ -30,26 +30,15 @@
stdenv.mkDerivation rec {
pname = "ueberzugpp";
version = "2.8.9";
version = "2.9.0";
src = fetchFromGitHub {
owner = "jstkdng";
repo = "ueberzugpp";
rev = "v${version}";
hash = "sha256-RW2dKueidFM/RkGfOAorHukGVm1srbuAlyUP/r+JWi0=";
hash = "sha256-n1cSHHPCx6igJmBxAbny7gntZQk4cMb358zx7f2lMi8=";
};
# error: no member named 'ranges' in namespace 'std'
postPatch = lib.optionalString withoutStdRanges ''
for f in src/canvas/chafa.cpp src/canvas/iterm2/iterm2.cpp src/terminal.cpp; do
sed -i "1i #include <range/v3/algorithm/for_each.hpp>" $f
sed -i "2i #include <range/v3/algorithm/reverse.hpp>" $f
substituteInPlace $f \
--replace "#include <ranges>" "" \
--replace "std::ranges" "ranges"
done
'';
strictDeps = true;
nativeBuildInputs = [

View file

@ -0,0 +1,38 @@
{ black
, fetchFromGitHub
, lib
, python3
}:
python3.pkgs.buildPythonApplication rec {
pname = "blacken-docs";
version = "1.15.0";
format = "pyproject";
src = fetchFromGitHub {
owner = "adamchainz";
repo = "blacken-docs";
rev = version;
hash = "sha256-3FGuFOAHCcybPwujWlh58NWtuF5CebaKTgBWgCGpSL8=";
};
nativeBuildInputs = [
python3.pkgs.setuptools
];
propagatedBuildInputs = [
black
];
nativeCheckInputs = [
black
python3.pkgs.pytestCheckHook
];
meta = with lib; {
homepage = "https://github.com/adamchainz/blacken-docs";
changelog = "https://github.com/adamchainz/blacken-docs/blob/${src.rev}/CHANGELOG.rst";
description = "Run Black on Python code blocks in documentation files";
license = licenses.mit;
maintainers = with maintainers; [ l0b0 ];
};
}

View file

@ -1,4 +1,11 @@
{ lib, stdenv, fetchFromGitHub, rustPlatform, installShellFiles, libiconv }:
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, rustPlatform
, installShellFiles
, libiconv
}:
rustPlatform.buildRustPackage rec {
pname = "ea";
@ -8,12 +15,22 @@ rustPlatform.buildRustPackage rec {
owner = "dduan";
repo = "ea";
rev = version;
sha256 = "VXSSe5d7VO3LfjumzN9a7rrKRedOtOzTdLVQWgV1ED8=";
hash = "sha256-VXSSe5d7VO3LfjumzN9a7rrKRedOtOzTdLVQWgV1ED8=";
};
cargoSha256 = "sha256-YP7OJaIWTXJHe3qF+a3zCFnCHnELX0rAWqnJPaC1T7I=";
cargoPatches = [
# https://github.com/dduan/ea/pull/64
(fetchpatch {
name = "update-guard.patch";
url = "https://github.com/dduan/ea/commit/068aa36d7a472c7a4bac855f2404e7094dec7d58.patch";
hash = "sha256-iK3fjB6zSDqe0yMUIFjP1nEFLYLFg7dy6+b0T6mC1GA=";
})
];
cargoHash = "sha256-/MkLWAbEr14CYdqSwJP1vNYxK7pAmMLdhiV61UQEbME=";
nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optionals stdenv.isDarwin [
libiconv
];

View file

@ -0,0 +1,93 @@
{ black
, blacken-docs
, fetchFromGitHub
, lib
, python3
, ruff
}:
python3.pkgs.buildPythonApplication rec {
pname = "nbqa";
version = "1.7.0";
src = fetchFromGitHub {
owner = "nbQA-dev";
repo = "nbQA";
rev = version;
hash = "sha256-CTF5HisBS44Ta18cVT04UrMIF30WmEBwZBGW7fkKXwk=";
};
passthru.optional-dependencies = {
black = [ black ];
blacken-docs = [ blacken-docs ];
flake8 = [ python3.pkgs.flake8 ];
isort = [ python3.pkgs.isort ];
jupytext = [ python3.pkgs.jupytext ];
mypy = [ python3.pkgs.mypy ];
pylint = [ python3.pkgs.pylint ];
pyupgrade = [ python3.pkgs.pyupgrade ];
ruff = [ ruff ];
};
propagatedBuildInputs = with python3.pkgs;
[
autopep8
ipython
tokenize-rt
tomli
]
++ builtins.attrValues passthru.optional-dependencies;
postPatch = ''
# Force using the Ruff executable rather than the Python package
substituteInPlace nbqa/__main__.py --replace 'if shell:' 'if shell or main_command == "ruff":'
'';
preCheck = ''
# Allow the tests to run `nbqa` itself from the path
export PATH="$out/bin":"$PATH"
'';
nativeCheckInputs =
[
black
ruff
]
++ (with python3.pkgs; [
autoflake
flake8
isort
jupytext
mdformat
pre-commit-hooks
pydocstyle
pylint
pytestCheckHook
pyupgrade
yapf
]);
disabledTests = [
# Test data not found
"test_black_multiple_files"
"test_black_return_code"
"test_grep"
"test_jupytext_on_folder"
"test_mypy_works"
"test_running_in_different_dir_works"
"test_unable_to_reconstruct_message_pythonpath"
"test_with_subcommand"
];
disabledTestPaths = [
# Test data not found
"tests/test_include_exclude.py"
];
meta = with lib; {
homepage = "https://github.com/nbQA-dev/nbQA";
changelog = "https://nbqa.readthedocs.io/en/latest/history.html";
description = "Run ruff, isort, pyupgrade, mypy, pylint, flake8, black, blacken-docs, and more on Jupyter Notebooks";
license = licenses.mit;
maintainers = with maintainers; [ l0b0 ];
};
}

View file

@ -1,5 +1,10 @@
{ python3Packages, fetchFromGitHub, lib, yubikey-personalization, libu2f-host, libusb1, procps
, stdenv }:
{ lib
, stdenv
, fetchFromGitHub
, python3Packages
, installShellFiles
, procps
}:
python3Packages.buildPythonPackage rec {
pname = "yubikey-manager";
@ -14,55 +19,50 @@ python3Packages.buildPythonPackage rec {
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'fido2 = ">=0.9, <1.0"' 'fido2 = ">*"'
substituteInPlace "ykman/pcsc/__init__.py" \
--replace 'pkill' '${if stdenv.isLinux then "${procps}" else "/usr"}/bin/pkill'
'';
nativeBuildInputs = with python3Packages; [ poetry-core ];
nativeBuildInputs = with python3Packages; [
poetry-core
pythonRelaxDepsHook
installShellFiles
];
propagatedBuildInputs =
with python3Packages; [
click
cryptography
pyscard
pyusb
six
fido2
keyring
] ++ [
libu2f-host
libusb1
yubikey-personalization
];
propagatedBuildInputs = with python3Packages; [
cryptography
pyscard
fido2
click
keyring
];
makeWrapperArgs = [
"--prefix" "LD_LIBRARY_PATH" ":"
(lib.makeLibraryPath [ libu2f-host libusb1 yubikey-personalization ])
pythonRelaxDeps = [
"keyring"
];
postInstall = ''
mkdir -p "$out/man/man1"
cp man/ykman.1 "$out/man/man1"
installManPage man/ykman.1
mkdir -p $out/share/bash-completion/completions
_YKMAN_COMPLETE=source $out/bin/ykman > $out/share/bash-completion/completions/ykman || :
mkdir -p $out/share/zsh/site-functions/
_YKMAN_COMPLETE=source_zsh "$out/bin/ykman" > "$out/share/zsh/site-functions/_ykman" || :
substituteInPlace "$out/share/zsh/site-functions/_ykman" \
--replace 'compdef _ykman_completion ykman;' '_ykman_completion "$@"'
installShellCompletion --cmd ykman \
--bash <(_YKMAN_COMPLETE=bash_source "$out/bin/ykman") \
--zsh <(_YKMAN_COMPLETE=zsh_source "$out/bin/ykman") \
--fish <(_YKMAN_COMPLETE=fish_source "$out/bin/ykman") \
'';
nativeCheckInputs = with python3Packages; [ pytestCheckHook makefun ];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
makefun
];
meta = with lib; {
homepage = "https://developers.yubico.com/yubikey-manager";
changelog = "https://github.com/Yubico/yubikey-manager/releases/tag/${version}";
description = "Command line tool for configuring any YubiKey over all USB transports";
license = licenses.bsd2;
platforms = platforms.unix;
maintainers = with maintainers; [ benley lassulus pinpox ];
maintainers = with maintainers; [ benley lassulus pinpox nickcao ];
mainProgram = "ykman";
};
}

View file

@ -0,0 +1,41 @@
{ lib
, stdenv
, fetchFromGitHub
, substituteAll
, iproute2
}:
stdenv.mkDerivation {
pname = "teavpn2";
version = "unstable-2023-07-25";
src = fetchFromGitHub {
owner = "TeaInside";
repo = "teavpn2";
rev = "b21898d001a2e7b821e045162dd18f13561cb04b";
hash = "sha256-0/eHK2/+pn6NfawL1xLJv4jDBFvLwELSXNWLUvff1gs=";
};
patches = [
(substituteAll {
src = ./nix.patch;
inherit iproute2;
})
];
installPhase = ''
runHook preInstall
install -Dm 0755 teavpn2 $out/bin/teavpn2
runHook postInstall
'';
meta = with lib; {
description = "An open source VPN Software";
homepage = "https://github.com/TeaInside/teavpn2";
license = licenses.gpl2Plus;
mainProgram = "teavpn2";
maintainers = with maintainers; [ ludovicopiero ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,14 @@
diff --git a/src/teavpn2/net/linux/iface.c b/src/teavpn2/net/linux/iface.c
index a77c1c8..e59c901 100644
--- a/src/teavpn2/net/linux/iface.c
+++ b/src/teavpn2/net/linux/iface.c
@@ -327,7 +327,8 @@ static __cold __always_inline const char *find_ip_cmd(void)
"/usr/sbin/ip",
"/usr/local/bin/ip",
"/usr/local/sbin/ip",
- "/data/data/com.termux/files/usr/bin/ip"
+ "/data/data/com.termux/files/usr/bin/ip",
+ "@iproute2@/bin/ip"
};
for (size_t i = 0; i < (sizeof(ip_bin) / sizeof(*ip_bin)); i++) {

View file

@ -6916,6 +6916,8 @@ with pkgs;
bbin = callPackage ../development/tools/bbin { };
blacken-docs = callPackage ../tools/misc/blacken-docs { };
bore = callPackage ../tools/networking/bore {
inherit (darwin) Libsystem;
inherit (darwin.apple_sdk.frameworks) SystemConfiguration;
@ -10989,6 +10991,8 @@ with pkgs;
nb = callPackage ../tools/misc/nb { };
nbqa = callPackage ../tools/misc/nbqa { };
kb = callPackage ../tools/misc/kb { };
notable = callPackage ../applications/misc/notable { };
@ -13502,6 +13506,8 @@ with pkgs;
tea = callPackage ../tools/misc/tea { };
teavpn2 = callPackage ../tools/networking/teavpn2 { };
inherit (nodePackages) teck-programmer;
ted = callPackage ../tools/typesetting/ted { };
@ -14640,6 +14646,8 @@ with pkgs;
webalizer = callPackage ../tools/networking/webalizer { };
webmesh = callPackage ../servers/webmesh { };
wget = callPackage ../tools/networking/wget { };
wget2 = callPackage ../tools/networking/wget2 {

View file

@ -45,6 +45,7 @@ mapAliases ({
apache-airflow = throw "apache-airflow has been moved out of pythonPackages and is available as a standalone package"; # added 2023-06-05
argon2_cffi = argon2-cffi; # added 2022-05-09
APScheduler = apscheduler; # added 2023-02-19
async_stagger = async-stagger; # added 2023-08-08
asyncio-nats-client = nats-py; # added 2022-02-08
awkward0 = throw "awkward0 has been removed, use awkward instead"; # added 2022-12-13
Babel = babel; # added 2022-05-06

View file

@ -754,7 +754,7 @@ self: super: with self; {
asyncio-dgram = callPackage ../development/python-modules/asyncio-dgram { };
asyncio-mqtt = callPackage ../development/python-modules/asyncio_mqtt { };
asyncio-mqtt = callPackage ../development/python-modules/asyncio-mqtt { };
asyncio-rlock = callPackage ../development/python-modules/asyncio-rlock { };
@ -772,11 +772,11 @@ self: super: with self; {
asyncstdlib = callPackage ../development/python-modules/asyncstdlib { };
async_stagger = callPackage ../development/python-modules/async_stagger { };
async-stagger = callPackage ../development/python-modules/async-stagger { };
asynctest = callPackage ../development/python-modules/asynctest { };
async-timeout = callPackage ../development/python-modules/async_timeout { };
async-timeout = callPackage ../development/python-modules/async-timeout { };
async-tkinter-loop = callPackage ../development/python-modules/async-tkinter-loop { };