Merge master into staging-next

This commit is contained in:
github-actions[bot] 2023-02-20 12:01:32 +00:00 committed by GitHub
commit 507feca606
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
52 changed files with 789 additions and 202 deletions

View File

@ -14942,7 +14942,7 @@
};
toastal = {
email = "toastal+nix@posteo.net";
matrix = "@toastal:chat.mozilla.org";
matrix = "@toastal:mozilla.org";
github = "toastal";
githubId = 561087;
name = "toastal";

View File

@ -368,6 +368,7 @@ in {
login = handleTest ./login.nix {};
logrotate = handleTest ./logrotate.nix {};
loki = handleTest ./loki.nix {};
luks = handleTest ./luks.nix {};
lvm2 = handleTest ./lvm2 {};
lxd = handleTest ./lxd.nix {};
lxd-nftables = handleTest ./lxd-nftables.nix {};

69
nixos/tests/luks.nix Normal file
View File

@ -0,0 +1,69 @@
import ./make-test-python.nix ({ lib, pkgs, ... }: {
name = "luks";
nodes.machine = { pkgs, ... }: {
# Use systemd-boot
virtualisation = {
emptyDiskImages = [ 512 512 ];
useBootLoader = true;
useEFIBoot = true;
};
boot.loader.systemd-boot.enable = true;
boot.kernelParams = lib.mkOverride 5 [ "console=tty1" ];
environment.systemPackages = with pkgs; [ cryptsetup ];
specialisation = rec {
boot-luks.configuration = {
boot.initrd.luks.devices = lib.mkVMOverride {
# We have two disks and only type one password - key reuse is in place
cryptroot.device = "/dev/vdc";
cryptroot2.device = "/dev/vdd";
};
virtualisation.bootDevice = "/dev/mapper/cryptroot";
};
boot-luks-custom-keymap.configuration = lib.mkMerge [
boot-luks.configuration
{
console.keyMap = "neo";
}
];
};
};
enableOCR = true;
testScript = ''
# Create encrypted volume
machine.wait_for_unit("multi-user.target")
machine.succeed("echo -n supersecret | cryptsetup luksFormat -q --iter-time=1 /dev/vdc -")
machine.succeed("echo -n supersecret | cryptsetup luksFormat -q --iter-time=1 /dev/vdd -")
# Boot from the encrypted disk
machine.succeed("bootctl set-default nixos-generation-1-specialisation-boot-luks.conf")
machine.succeed("sync")
machine.crash()
# Boot and decrypt the disk
machine.start()
machine.wait_for_text("Passphrase for")
machine.send_chars("supersecret\n")
machine.wait_for_unit("multi-user.target")
assert "/dev/mapper/cryptroot on / type ext4" in machine.succeed("mount")
# Boot from the encrypted disk with custom keymap
machine.succeed("bootctl set-default nixos-generation-1-specialisation-boot-luks-custom-keymap.conf")
machine.succeed("sync")
machine.crash()
# Boot and decrypt the disk
machine.start()
machine.wait_for_text("Passphrase for")
machine.send_chars("havfkhfrkfl\n")
machine.wait_for_unit("multi-user.target")
assert "/dev/mapper/cryptroot on / type ext4" in machine.succeed("mount")
'';
})

View File

@ -3,7 +3,10 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
meta = {
maintainers = with lib.maintainers; [ OPNA2608 ];
# FIXME On ARM Miriway inside the VM doesn't receive keyboard inputs, why?
# Natively running Mir has problems with capturing the first registered libinput device.
# In our VM runners on ARM and on some hardware configs (my RPi4, distro-independent), this misses the keyboard.
# It can be worked around by dis- and reconnecting the affected hardware, but we can't do this in these tests.
# https://github.com/MirServer/mir/issues/2837
broken = pkgs.stdenv.hostPlatform.isAarch;
};
@ -30,6 +33,7 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
enable = true;
config = ''
add-wayland-extensions=all
enable-x11=
ctrl-alt=t:foot --maximized
ctrl-alt=a:env WINIT_UNIX_BACKEND=x11 WAYLAND_DISPLAY=invalid alacritty --option window.startup_mode=maximized

View File

@ -1741,6 +1741,23 @@ let
meta.license = lib.licenses.mit;
};
matthewpi.caddyfile-support = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "caddyfile-support";
publisher = "matthewpi";
version = "0.2.4";
sha256 = "sha256-7D7fNlI55MxD6M8ml/dzBAMwCGCEkC+9aKhreZCVMv4=";
};
meta = {
description = "Rich Caddyfile support for Visual Studio Code";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=matthewpi.caddyfile-support";
homepage = "https://github.com/caddyserver/vscode-caddyfile";
changelog = "https://marketplace.visualstudio.com/items/matthewpi.caddyfile-support/changelog";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ matthewpi ];
};
};
mattn.lisp = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "lisp";

View File

@ -5,20 +5,20 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "diswall";
version = "0.3.0";
version = "0.3.1";
src = fetchFromGitHub {
owner = "dis-works";
repo = "diswall-rs";
rev = "v${version}";
sha256 = "sha256-3FTqT3IL48lYmGoB9u76RQSgZPbaq7IkOyQjyxwpkWA=";
sha256 = "sha256-54iNbMZ+j6ioBTb/okyWZqqe4p6IyapZwc6VdtiAkLs=";
};
buildInputs = lib.optionals stdenv.isDarwin [
Security
];
cargoSha256 = "sha256-sb6s4Oc3W+I9DB0SGyZINxyWHCSpkakiEeQUatEpeEU=";
cargoHash = "sha256-stpJNDC+dQQNZdZTihbQWZ66wgdQ+oz8s3Ogb1wxnxY=";
doCheck = false;

View File

@ -1,7 +1,7 @@
{
"version": "1.11.22",
"desktopSrcHash": "UJesD6cshsf/NK2ZTzOtAUfH+8JcGP9oCLFhkgfM0E0=",
"desktopYarnHash": "0bq24rjf63rkq3jphv7raqaz2fnibmj41z905k5f3l4ln835ndfv",
"webSrcHash": "B2clSJgKkjvQdIXQgi3bBPaVTDKOjeNBOvkAtcPOkFI=",
"webYarnHash": "182fh1ayh1y98kbg4mn8fxqvljs19b02j4ivvjszm55dcpwfp1df"
"version": "1.11.23",
"desktopSrcHash": "Q3kyAiBvedTy4jiBkYmEJeonRf6HesdpKgmtOT2sYwI=",
"desktopYarnHash": "8lHIkUkFAo7m8XjfnFSAkp4mIKyrXOsnbstRIPXI+vE=",
"webSrcHash": "JOfuzo0DQ0v2rC80/HkucLgc2xsCb3eujaH0fg7j0nI=",
"webYarnHash": "0Cb7TuRFHcQvYbnVAnXOIwt6NXa7ITrMPJnmbUFaPNU="
}

View File

@ -2,42 +2,45 @@
, stdenv
, fetchFromGitHub
, ocamlPackages
, fontschumachermisc
, xset
, makeWrapper
, ncurses
, gnugrep
, copyDesktopItems
, makeDesktopItem
, wrapGAppsHook
, glib
, gsettings-desktop-schemas
, zlib
, enableX11 ? true
, Cocoa
}:
stdenv.mkDerivation rec {
pname = "unison";
version = "2.52.1";
version = "2.53.0";
src = fetchFromGitHub {
owner = "bcpierce00";
repo = "unison";
rev = "v${version}";
sha256 = "sha256-taA8eZ/wOe9uMccXVYfe34/XzWgqYKA3tLZnIOahOrQ=";
sha256 = "sha256-4Lyn1UecpVIhoEXIFu35XK4aoAfYGPCZ9L4ZY7224yo=";
};
strictDeps = true;
nativeBuildInputs = [ makeWrapper ocamlPackages.ocaml ]
nativeBuildInputs = [ glib wrapGAppsHook ocamlPackages.ocaml ]
++ lib.optional enableX11 copyDesktopItems;
buildInputs = [ ncurses ];
buildInputs = [ gsettings-desktop-schemas ncurses zlib ]
++ lib.optional stdenv.isDarwin Cocoa;
preBuild = lib.optionalString enableX11 ''
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk3}"/lib/ocaml/*/site-lib/lablgtk3)|" src/Makefile.OCaml
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.cairo2}"/lib/ocaml/*/site-lib/cairo2)|" src/Makefile.OCaml
'' + ''
echo -e '\ninstall:\n\tcp $(FSMONITOR)$(EXEC_EXT) $(INSTALLDIR)' >> src/fsmonitor/linux/Makefile
'';
makeFlags = [
"INSTALLDIR=$(out)/bin/"
"UISTYLE=${if enableX11 then "gtk2" else "text"}"
"UISTYLE=${if enableX11 then "gtk3" else "text"}"
] ++ lib.optional (!ocamlPackages.ocaml.nativeCompilers) "NATIVE=false";
preInstall = ''
@ -45,11 +48,6 @@ stdenv.mkDerivation rec {
'';
postInstall = lib.optionalString enableX11 ''
for i in $(cd $out/bin && ls); do
wrapProgram $out/bin/$i \
--run "[ -n \"\$DISPLAY\" ] && (${xset}/bin/xset q | ${gnugrep}/bin/grep -q \"${fontschumachermisc}\" || ${xset}/bin/xset +fp \"${fontschumachermisc}/lib/X11/fonts/misc\")"
done
install -D $src/icons/U.svg $out/share/icons/hicolor/scalable/apps/unison.svg
'';

View File

@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
owner = "librtlsdr";
repo = "librtlsdr";
rev = "v${version}";
sha256 = "1fgxlkgmdchbrf0nn98ivjr6css5hak3608nr4xrf2qzf7xy2kdk";
hash = "sha256-s03h+3EfC5c7yRYBM6aCRWtmstwRJWuBywuyVt+k/bk=";
};
postPatch = ''
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [ libusb1 ];
propagatedBuildInputs = [ libusb1 ];
cmakeFlags = lib.optionals stdenv.isLinux [
"-DINSTALL_UDEV_RULES=ON"

View File

@ -2,6 +2,7 @@
, rustPlatform
, lib
, fetchFromGitHub
, fetchpatch
, ncurses
, perl
, pkg-config
@ -40,12 +41,12 @@ rustPlatform.buildRustPackage rec {
sha256 = "sha256-1gnP2Dn4nkhxelUsXMay2VGvgvMjkdEKhFK5AAST++s=";
};
# Rust 1.65 does better at enum packing (according to
# 40e08fafe2f6e5b0c70d55996a0814d6813442ef), but Nixpkgs doesn't have 1.65
# yet (still in staging), so skip these tests for now.
checkFlags = [
"--skip=escape::action_size"
"--skip=surface::line::storage::test::memory_usage"
patches = [
# fix build with rust 1.67
(fetchpatch {
url = "https://github.com/wez/wezterm/commit/36519f0d90e1875fb4b3f11f6cbf94c7d716ef78.patch";
sha256 = "sha256-sOGFmDan1uO1xOBCpvlGrSotjfw01MjRg0KVqa5omig=";
})
];
postPatch = ''
@ -122,9 +123,7 @@ rustPlatform.buildRustPackage rec {
};
terminfo = runCommand "wezterm-terminfo"
{
nativeBuildInputs = [
ncurses
];
nativeBuildInputs = [ ncurses ];
} ''
mkdir -p $out/share/terminfo $out/nix-support
tic -x -o $out/share/terminfo ${src}/termwiz/data/wezterm.terminfo
@ -132,10 +131,9 @@ rustPlatform.buildRustPackage rec {
};
meta = with lib; {
description = "A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust";
description = "GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust";
homepage = "https://wezfurlong.org/wezterm";
license = licenses.mit;
maintainers = with maintainers; [ SuperSandro2000 ];
platforms = platforms.unix;
};
}

View File

@ -12,13 +12,13 @@
buildPythonApplication rec {
pname = "git-machete";
version = "3.15.0";
version = "3.15.2";
src = fetchFromGitHub {
owner = "virtuslab";
repo = pname;
rev = "v${version}";
hash = "sha256-HSgCvHjSOrMPsdOPtgFUeK6b0ioVnwTtg2oHGg4BrZw=";
hash = "sha256-hIm3JDLXUTwjuVfAHvZBWFBJNOAVWyfl/X4A6B0OoXg=";
};
nativeBuildInputs = [ installShellFiles ];

View File

@ -11,24 +11,15 @@
stdenv.mkDerivation rec {
pname = "miriway";
version = "unstable-2022-12-18";
version = "unstable-2023-02-18";
src = fetchFromGitHub {
owner = "Miriway";
repo = "Miriway";
rev = "d294c303cb99b7becb0d6686be9a09f0a1f57596";
hash = "sha256-H+IZgI1IQxNl5yAygbDKXkyXajGHV/mp9gEqZcp0TeE=";
rev = "1363ae0452c5093f84418bc65354e93796caec65";
hash = "sha256-hQ2z3GlTJG9qewJLkPpoRMSn0D7xCLyl+1O+G4NnedA=";
};
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "\''${CMAKE_INSTALL_PREFIX}/bin" "\''${CMAKE_INSTALL_BINDIR}" \
--replace "/usr/share" "\''${CMAKE_INSTALL_DATADIR}" \
--replace "/etc" "\''${CMAKE_INSTALL_SYSCONFDIR}"
sed -i -e '/project(/a include(GNUInstallDirs)' CMakeLists.txt
'';
strictDeps = true;
nativeBuildInputs = [

View File

@ -1,4 +1,4 @@
{ lib, stdenvNoCC, rustPlatform, makeWrapper, Security, gnutar, gzip, testers, fetchurl, prefetch-npm-deps, fetchNpmDeps }:
{ lib, stdenvNoCC, rustPlatform, makeWrapper, Security, gnutar, gzip, nix, testers, fetchurl, prefetch-npm-deps, fetchNpmDeps }:
{
prefetch-npm-deps = rustPlatform.buildRustPackage {
@ -20,7 +20,7 @@
buildInputs = lib.optional stdenvNoCC.isDarwin Security;
postInstall = ''
wrapProgram "$out/bin/prefetch-npm-deps" --prefix PATH : ${lib.makeBinPath [ gnutar gzip ]}
wrapProgram "$out/bin/prefetch-npm-deps" --prefix PATH : ${lib.makeBinPath [ gnutar gzip nix ]}
'';
passthru.tests =

View File

@ -156,7 +156,7 @@ foreach my $pkgName (@order) {
$cleanedName =~ s/~//g;
print " (fetchurl {\n";
print " url = $urlPrefix/$cdata->{Filename};\n";
print " url = \"$urlPrefix/$cdata->{Filename}\";\n";
print " sha256 = \"$cdata->{SHA256}\";\n";
print " name = \"$cleanedName\";\n" if $cleanedName ne $origName;
print " })\n";

View File

@ -2,11 +2,11 @@
stdenvNoCC.mkDerivation rec {
pname = "clash-geoip";
version = "20230112";
version = "20230212";
src = fetchurl {
url = "https://github.com/Dreamacro/maxmind-geoip/releases/download/${version}/Country.mmdb";
sha256 = "sha256-mMu+U3gtoZmi6LrTMTqsNZKZ+w4J6LZ16Aorneyy7P8=";
sha256 = "sha256-Tnma6tpET4Vrm5G8KmLpsVnpD2JIKts56kZQsBIbRZ8=";
};
dontUnpack = true;

View File

@ -15,7 +15,7 @@
python3.pkgs.buildPythonApplication rec {
pname = "warpinator";
version = "1.4.4";
version = "1.4.5";
format = "other";
@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
owner = "linuxmint";
repo = pname;
rev = version;
hash = "sha256-oHJOwdCvHnPalTHb5E3mNDYBaR9ZvlV1F6ux7nejBlc=";
hash = "sha256-5mMV4WinpFR9ihgoQsgIXre0VpBdg9S8GjSkx+7ocLg=";
};
nativeBuildInputs = [

View File

@ -1,14 +1,14 @@
{ lib, stdenv, fetchFromGitHub, substituteAll, glib, gnome, gettext }:
{ lib, stdenv, fetchFromGitHub, substituteAll, glib, gnome, gettext, jq }:
stdenv.mkDerivation rec {
pname = "gnome-shell-extension-EasyScreenCast";
version = "1.4.0";
version = "1.7.0";
src = fetchFromGitHub {
owner = "EasyScreenCast";
repo = "EasyScreenCast";
rev = version;
sha256 = "sha256-+lh/hqYC9+DUvLE016KuAY4Ybw8KrqEEG7WG4pUbg2k=";
hash = "sha256-+cH/gczCdxoSrLp5nD82Spo8bSGyRnUUut3Xkmr9f3o=";
};
patches = [
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
];
nativeBuildInputs = [
glib gettext
glib gettext jq
];
makeFlags = [ "INSTALLBASE=$(out)/share/gnome-shell/extensions" ];

View File

@ -1,16 +1,40 @@
diff --git i/utilaudio.js w/utilaudio.js
index 983b29c..7a94de8 100644
--- i/utilaudio.js
+++ w/utilaudio.js
@@ -11,10 +11,7 @@
*/
diff --git a/prefs.js b/prefs.js
index 97b85a3..2fc6539 100644
--- a/prefs.js
+++ b/prefs.js
@@ -14,8 +14,8 @@
'use strict';
const GIRepository = imports.gi.GIRepository;
-GIRepository.Repository.prepend_search_path("/usr/lib/gnome-shell");
-GIRepository.Repository.prepend_library_path("/usr/lib/gnome-shell");
-GIRepository.Repository.prepend_search_path("/usr/lib64/gnome-shell");
-GIRepository.Repository.prepend_library_path("/usr/lib64/gnome-shell");
-GIRepository.Repository.prepend_search_path('/usr/lib64/gnome-shell');
-GIRepository.Repository.prepend_library_path('/usr/lib64/gnome-shell');
+GIRepository.Repository.prepend_search_path('@gnomeShell@/lib/gnome-shell');
+GIRepository.Repository.prepend_library_path('@gnomeShell@/lib/gnome-shell');
const GObject = imports.gi.GObject;
const Gio = imports.gi.Gio;
@@ -746,7 +746,7 @@ const EasyScreenCastSettingsWidget = GObject.registerClass({
Lib.TalkativeLog('-^-NOT SET xdg-user video');
ctx.CtrlExe.Execute(
- '/usr/bin/sh -c "echo $HOME"',
+ '/bin/sh -c "echo $HOME"',
true,
(success, out) => {
Lib.TalkativeLog(`-^-CALLBACK sync S: ${success} out: ${out}`);
diff --git a/utilaudio.js b/utilaudio.js
index 957eda2..84af241 100644
--- a/utilaudio.js
+++ b/utilaudio.js
@@ -15,10 +15,7 @@
const GObject = imports.gi.GObject;
const GIRepository = imports.gi.GIRepository;
-GIRepository.Repository.prepend_search_path('/usr/lib/gnome-shell');
-GIRepository.Repository.prepend_library_path('/usr/lib/gnome-shell');
-GIRepository.Repository.prepend_search_path('/usr/lib64/gnome-shell');
-GIRepository.Repository.prepend_library_path('/usr/lib64/gnome-shell');
+GIRepository.Repository.prepend_search_path("@gnomeShell@/lib/gnome-shell");
const Gvc = imports.gi.Gvc;
const Lang = imports.lang;
const ExtensionUtils = imports.misc.extensionUtils;

View File

@ -10,12 +10,12 @@
ocamlPackages.buildDunePackage rec {
pname = "ligo";
version = "0.59.0";
version = "0.60.0";
src = fetchFromGitLab {
owner = "ligolang";
repo = "ligo";
rev = version;
sha256 = "sha256-JwFFreUV70W5soXY0UF8/4QlN2oWejdxqwh4KT5VDoQ=";
sha256 = "sha256-gyMSpy+F3pF2Kv1ygUs20mrspJ6GtJ6ySyZD7zfZj2w=";
fetchSubmodules = true;
};
@ -94,6 +94,7 @@ ocamlPackages.buildDunePackage rec {
data-encoding
pure-splitmix
zarith_stubs_js
simple-diff
];
nativeCheckInputs = [

View File

@ -17,7 +17,7 @@ in
assert useX11 -> safeX11 stdenv;
assert aflSupport -> lib.versionAtLeast version "4.05";
assert flambdaSupport -> lib.versionAtLeast version "4.03";
assert spaceTimeSupport -> lib.versionAtLeast version "4.04";
assert spaceTimeSupport -> lib.versionAtLeast version "4.04" && lib.versionOlder version "4.12";
assert unsafeStringSupport -> lib.versionAtLeast version "4.06" && lib.versionOlder version "5.0";
let

View File

@ -10,7 +10,7 @@ rustPlatform.buildRustPackage {
# changes hash of vendor directory otherwise
dontUpdateAutotoolsGnuConfigScripts = true;
buildInputs = [ rustc rustc.llvm ] ++ lib.optionals stdenv.isDarwin [ Security ];
buildInputs = [ rustc.llvm ] ++ lib.optionals stdenv.isDarwin [ Security ];
# fixes: error: the option `Z` is only accepted on the nightly compiler
RUSTC_BOOTSTRAP = 1;
@ -20,14 +20,21 @@ rustPlatform.buildRustPackage {
# (/private/tmp/nix-build-clippy-1.36.0.drv-0/rustc-1.36.0-src/src/librustc_llvm)
doCheck = false;
# Clippy uses the rustc_driver and std private libraries, and Rust's build process forces them to have
# an install name of `@rpath/...` [0] [1] instead of the standard on macOS, which is an absolute path
# to itself.
#
# [0]: https://github.com/rust-lang/rust/blob/f77f4d55bdf9d8955d3292f709bd9830c2fdeca5/src/bootstrap/builder.rs#L1543
# [1]: https://github.com/rust-lang/rust/blob/f77f4d55bdf9d8955d3292f709bd9830c2fdeca5/compiler/rustc_codegen_ssa/src/back/linker.rs#L323-L331
preFixup = lib.optionalString stdenv.isDarwin ''
install_name_tool -add_rpath "${rustc}/lib" $out/bin/clippy-driver
install_name_tool -add_rpath "${rustc}/lib" "$out/bin/clippy-driver"
install_name_tool -add_rpath "${rustc}/lib" "$out/bin/cargo-clippy"
'';
meta = with lib; {
homepage = "https://rust-lang.github.io/rust-clippy/";
description = "A bunch of lints to catch common mistakes and improve your Rust code";
maintainers = with maintainers; [ basvandijk ];
maintainers = with maintainers; [ basvandijk ] ++ teams.rust.members;
license = with licenses; [ mit asl20 ];
platforms = platforms.unix;
};

View File

@ -11,6 +11,8 @@
, sha256
, patches ? []
, fd
, ripgrep
, wezterm
, firefox
, thunderbird
}:
@ -204,7 +206,9 @@ in stdenv.mkDerivation rec {
passthru = {
llvm = llvmShared;
inherit llvmPackages;
tests = { inherit fd; } // lib.optionalAttrs stdenv.hostPlatform.isLinux { inherit firefox thunderbird; };
tests = {
inherit fd ripgrep wezterm;
} // lib.optionalAttrs stdenv.hostPlatform.isLinux { inherit firefox thunderbird; };
};
meta = with lib; {

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
pname = "love";
version = "11.4";
version = "0.10.2";
src = fetchFromGitHub {
owner = "love2d";
repo = "love";
rev = version;
sha256 = "sha256-C/Ifd0KjmaM5Y2fxBiDNz1GQoT4GeH/vyUCiira57U4=";
sha256 = "19yfmlcx6w8yi4ndm5lni8lrsvnn77bxw5py0dc293nzzlaqa9ym";
};
nativeBuildInputs = [ pkg-config autoconf automake ];

View File

@ -37,6 +37,10 @@ stdenv.mkDerivation rec {
./Install-contribs-lib.patch
# From arch
./fix-missing-include-time.patch
# required for darwin and linux-musl
./pthread-include.patch
] ++ lib.optionals stdenv.isDarwin [ ./fix-darwin.patch ];
# fails with "Unable to find executable:

View File

@ -1,16 +1,3 @@
--- a/src/shared/CLucene/LuceneThreads.h
+++ b/src/shared/CLucene/LuceneThreads.h
@@ -7,6 +7,9 @@
#ifndef _LuceneThreads_h
#define _LuceneThreads_h
+#if defined(_CL_HAVE_PTHREAD)
+ #include <pthread.h>
+#endif
CL_NS_DEF(util)
class CLuceneThreadIdCompare;
--- a/src/shared/CLucene/config/repl_tchar.h
+++ b/src/shared/CLucene/config/repl_tchar.h
@@ -28,26 +28,26 @@

View File

@ -0,0 +1,14 @@
--- a/src/shared/CLucene/LuceneThreads.h
+++ b/src/shared/CLucene/LuceneThreads.h
@@ -7,6 +7,9 @@
#ifndef _LuceneThreads_h
#define _LuceneThreads_h
+#if defined(_CL_HAVE_PTHREAD)
+ #include <pthread.h>
+#endif
CL_NS_DEF(util)
class CLuceneThreadIdCompare;

View File

@ -1,39 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, pkg-config
, libusb1
}:
stdenv.mkDerivation rec {
pname = "librtlsdr";
version = "0.8.0";
src = fetchFromGitHub {
owner = "librtlsdr";
repo = "librtlsdr";
rev = "v${version}";
sha256 = "sha256-s03h+3EfC5c7yRYBM6aCRWtmstwRJWuBywuyVt+k/bk=";
};
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace '/etc/udev/rules.d' "$out/etc/udev/rules.d"
substituteInPlace rtl-sdr.rules \
--replace 'MODE:="0666"' 'ENV{ID_SOFTWARE_RADIO}="1", MODE="0660", GROUP="plugdev"'
'';
nativeBuildInputs = [ pkg-config cmake ];
propagatedBuildInputs = [ libusb1 ];
meta = with lib; {
description = "Turns your Realtek RTL2832 based DVB dongle into a SDR receiver";
homepage = "https://github.com/librtlsdr/librtlsdr";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ bjornfor ];
platforms = platforms.linux ++ platforms.darwin;
};
}

View File

@ -0,0 +1,66 @@
From d4714fd7aac9c5f499c406703bc437dc6cf72ef3 Mon Sep 17 00:00:00 2001
From: Steffen <steffen.winter@proton.me>
Date: Mon, 13 Feb 2023 17:32:16 +0100
Subject: [PATCH 1/3] Add custom error function for tests.
On musl systems, liburing cannot build examples and tests due to
it's usage of error.h. t_error calls fprintf(stderr, ...) and
exits.
Closes: #786
Signed-off-by: Steffen Winter <steffen.winter@proton.me>
---
test/helpers.c | 18 ++++++++++++++++++
test/helpers.h | 2 ++
2 files changed, 20 insertions(+)
diff --git a/test/helpers.c b/test/helpers.c
index 8fb32b8..caa887e 100644
--- a/test/helpers.c
+++ b/test/helpers.c
@@ -8,6 +8,7 @@
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
+#include <stdarg.h>
#include <sys/types.h>
#include <arpa/inet.h>
@@ -266,3 +267,20 @@ bool t_probe_defer_taskrun(void)
io_uring_queue_exit(&ring);
return true;
}
+
+/*
+ * Implementation of error(3), prints an error message and exits.
+ */
+void t_error(int status, int errnum, const char *format, ...)
+{
+ va_list args;
+ va_start(args, format);
+
+ vfprintf(stderr, format, args);
+ if (errnum)
+ fprintf(stderr, ": %s", strerror(errnum));
+
+ fprintf(stderr, "\n");
+ va_end(args);
+ exit(status);
+}
diff --git a/test/helpers.h b/test/helpers.h
index 4375a9e..33b82cf 100644
--- a/test/helpers.h
+++ b/test/helpers.h
@@ -87,6 +87,8 @@ bool t_probe_defer_taskrun(void);
#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
+void t_error(int status, int errnum, const char *format, ...);
+
#ifdef __cplusplus
}
#endif
--
2.39.1

View File

@ -0,0 +1,109 @@
From e84f40ca872f0bce72b5686c95a11739d9c89494 Mon Sep 17 00:00:00 2001
From: Steffen <steffen.winter@proton.me>
Date: Mon, 13 Feb 2023 17:56:03 +0100
Subject: [PATCH 2/3] test: Use t_error instead of glibc's error.
On musl systems, liburing cannot build examples and tests due to
it's usage of error.h. Replacing calls to error() with t_error().
Closes: #786
Signed-off-by: Steffen Winter <steffen.winter@proton.me>
---
test/defer-taskrun.c | 1 -
test/send-zerocopy.c | 1 -
test/single-issuer.c | 15 +++++++--------
3 files changed, 7 insertions(+), 10 deletions(-)
diff --git a/test/defer-taskrun.c b/test/defer-taskrun.c
index 9283f28..87cd256 100644
--- a/test/defer-taskrun.c
+++ b/test/defer-taskrun.c
@@ -4,7 +4,6 @@
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
-#include <error.h>
#include <sys/eventfd.h>
#include <signal.h>
#include <poll.h>
diff --git a/test/send-zerocopy.c b/test/send-zerocopy.c
index 4db102b..be33094 100644
--- a/test/send-zerocopy.c
+++ b/test/send-zerocopy.c
@@ -4,7 +4,6 @@
#include <stdint.h>
#include <assert.h>
#include <errno.h>
-#include <error.h>
#include <limits.h>
#include <fcntl.h>
#include <unistd.h>
diff --git a/test/single-issuer.c b/test/single-issuer.c
index 1d13f47..d71cd74 100644
--- a/test/single-issuer.c
+++ b/test/single-issuer.c
@@ -5,7 +5,6 @@
#include <stdlib.h>
#include <string.h>
#include <fcntl.h>
-#include <error.h>
#include <sys/types.h>
#include <sys/wait.h>
@@ -56,13 +55,13 @@ static int try_submit(struct io_uring *ring)
return ret;
if (ret != 1)
- error(1, ret, "submit %i", ret);
+ t_error(1, ret, "submit %i", ret);
ret = io_uring_wait_cqe(ring, &cqe);
if (ret)
- error(1, ret, "wait fail %i", ret);
+ t_error(1, ret, "wait fail %i", ret);
if (cqe->res || cqe->user_data != 42)
- error(1, ret, "invalid cqe");
+ t_error(1, ret, "invalid cqe");
io_uring_cqe_seen(ring, cqe);
return 0;
@@ -106,7 +105,7 @@ int main(int argc, char *argv[])
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER |
IORING_SETUP_R_DISABLED);
if (ret)
- error(1, ret, "ring init (2) %i", ret);
+ t_error(1, ret, "ring init (2) %i", ret);
if (!fork_t()) {
io_uring_enable_rings(&ring);
@@ -122,7 +121,7 @@ int main(int argc, char *argv[])
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER |
IORING_SETUP_R_DISABLED);
if (ret)
- error(1, ret, "ring init (3) %i", ret);
+ t_error(1, ret, "ring init (3) %i", ret);
io_uring_enable_rings(&ring);
if (!fork_t()) {
@@ -137,7 +136,7 @@ int main(int argc, char *argv[])
/* test that anyone can submit to a SQPOLL|SINGLE_ISSUER ring */
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER|IORING_SETUP_SQPOLL);
if (ret)
- error(1, ret, "ring init (4) %i", ret);
+ t_error(1, ret, "ring init (4) %i", ret);
ret = try_submit(&ring);
if (ret) {
@@ -157,7 +156,7 @@ int main(int argc, char *argv[])
/* test that IORING_ENTER_REGISTERED_RING doesn't break anything */
ret = io_uring_queue_init(8, &ring, IORING_SETUP_SINGLE_ISSUER);
if (ret)
- error(1, ret, "ring init (5) %i", ret);
+ t_error(1, ret, "ring init (5) %i", ret);
if (!fork_t()) {
ret = try_submit(&ring);
--
2.39.1

View File

@ -0,0 +1,226 @@
From 23704bbd1416ed1a051b32d5d44e46dd654b8ffe Mon Sep 17 00:00:00 2001
From: Steffen <steffen.winter@proton.me>
Date: Mon, 13 Feb 2023 18:23:44 +0100
Subject: [PATCH 3/3] examples: Use t_error instead of glibc's error.
On musl systems, liburing cannot build examples and tests due to
it's usage of error.h. t_error copied from test/helpers.c.
Replacing calls to error() with t_error().
Closes: #786
Signed-off-by: Steffen Winter <steffen.winter@proton.me>
---
examples/send-zerocopy.c | 61 +++++++++++++++++++++++++---------------
1 file changed, 39 insertions(+), 22 deletions(-)
diff --git a/examples/send-zerocopy.c b/examples/send-zerocopy.c
index 7f5f2b1..6092af9 100644
--- a/examples/send-zerocopy.c
+++ b/examples/send-zerocopy.c
@@ -5,11 +5,11 @@
#include <stdint.h>
#include <assert.h>
#include <errno.h>
-#include <error.h>
#include <limits.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdbool.h>
+#include <stdarg.h>
#include <string.h>
#include <arpa/inet.h>
@@ -57,6 +57,23 @@ static struct sockaddr_storage cfg_dst_addr;
static char payload[IP_MAXPACKET] __attribute__((aligned(4096)));
+/*
+ * Implementation of error(3), prints an error message and exits.
+ */
+static void t_error(int status, int errnum, const char *format, ...)
+{
+ va_list args;
+ va_start(args, format);
+
+ vfprintf(stderr, format, args);
+ if (errnum)
+ fprintf(stderr, ": %s", strerror(errnum));
+
+ fprintf(stderr, "\n");
+ va_end(args);
+ exit(status);
+}
+
static unsigned long gettimeofday_ms(void)
{
struct timeval tv;
@@ -68,7 +85,7 @@ static unsigned long gettimeofday_ms(void)
static void do_setsockopt(int fd, int level, int optname, int val)
{
if (setsockopt(fd, level, optname, &val, sizeof(val)))
- error(1, errno, "setsockopt %d.%d: %d", level, optname, val);
+ t_error(1, errno, "setsockopt %d.%d: %d", level, optname, val);
}
static void setup_sockaddr(int domain, const char *str_addr,
@@ -84,7 +101,7 @@ static void setup_sockaddr(int domain, const char *str_addr,
addr4->sin_port = htons(cfg_port);
if (str_addr &&
inet_pton(AF_INET, str_addr, &(addr4->sin_addr)) != 1)
- error(1, 0, "ipv4 parse error: %s", str_addr);
+ t_error(1, 0, "ipv4 parse error: %s", str_addr);
break;
case PF_INET6:
memset(addr6, 0, sizeof(*addr6));
@@ -92,10 +109,10 @@ static void setup_sockaddr(int domain, const char *str_addr,
addr6->sin6_port = htons(cfg_port);
if (str_addr &&
inet_pton(AF_INET6, str_addr, &(addr6->sin6_addr)) != 1)
- error(1, 0, "ipv6 parse error: %s", str_addr);
+ t_error(1, 0, "ipv6 parse error: %s", str_addr);
break;
default:
- error(1, 0, "illegal domain");
+ t_error(1, 0, "illegal domain");
}
}
@@ -105,12 +122,12 @@ static int do_setup_tx(int domain, int type, int protocol)
fd = socket(domain, type, protocol);
if (fd == -1)
- error(1, errno, "socket t");
+ t_error(1, errno, "socket t");
do_setsockopt(fd, SOL_SOCKET, SO_SNDBUF, 1 << 21);
if (connect(fd, (void *) &cfg_dst_addr, cfg_alen))
- error(1, errno, "connect");
+ t_error(1, errno, "connect");
return fd;
}
@@ -125,7 +142,7 @@ static inline struct io_uring_cqe *wait_cqe_fast(struct io_uring *ring)
ret = io_uring_wait_cqe(ring, &cqe);
if (ret)
- error(1, ret, "wait cqe");
+ t_error(1, ret, "wait cqe");
return cqe;
}
@@ -143,17 +160,17 @@ static void do_tx(int domain, int type, int protocol)
ret = io_uring_queue_init(512, &ring, IORING_SETUP_COOP_TASKRUN);
if (ret)
- error(1, ret, "io_uring: queue init");
+ t_error(1, ret, "io_uring: queue init");
if (cfg_fixed_files) {
ret = io_uring_register_files(&ring, &fd, 1);
if (ret < 0)
- error(1, ret, "io_uring: files registration");
+ t_error(1, ret, "io_uring: files registration");
}
if (cfg_reg_ringfd) {
ret = io_uring_register_ring_fd(&ring);
if (ret < 0)
- error(1, ret, "io_uring: io_uring_register_ring_fd");
+ t_error(1, ret, "io_uring: io_uring_register_ring_fd");
}
iov.iov_base = payload;
@@ -161,7 +178,7 @@ static void do_tx(int domain, int type, int protocol)
ret = io_uring_register_buffers(&ring, &iov, 1);
if (ret)
- error(1, ret, "io_uring: buffer registration");
+ t_error(1, ret, "io_uring: buffer registration");
tstop = gettimeofday_ms() + cfg_runtime_ms;
do {
@@ -193,14 +210,14 @@ static void do_tx(int domain, int type, int protocol)
ret = io_uring_submit(&ring);
if (ret != cfg_nr_reqs)
- error(1, ret, "submit");
+ t_error(1, ret, "submit");
for (i = 0; i < cfg_nr_reqs; i++) {
cqe = wait_cqe_fast(&ring);
if (cqe->flags & IORING_CQE_F_NOTIF) {
if (cqe->flags & IORING_CQE_F_MORE)
- error(1, -EINVAL, "F_MORE notif");
+ t_error(1, -EINVAL, "F_MORE notif");
compl_cqes--;
i--;
io_uring_cqe_seen(&ring, cqe);
@@ -217,7 +234,7 @@ static void do_tx(int domain, int type, int protocol)
fprintf(stderr, "Connection failure");
goto out_fail;
} else if (cqe->res != -EAGAIN) {
- error(1, cqe->res, "send failed");
+ t_error(1, cqe->res, "send failed");
}
io_uring_cqe_seen(&ring, cqe);
}
@@ -226,7 +243,7 @@ static void do_tx(int domain, int type, int protocol)
out_fail:
shutdown(fd, SHUT_RDWR);
if (close(fd))
- error(1, errno, "close");
+ t_error(1, errno, "close");
fprintf(stderr, "tx=%lu (MB=%lu), tx/s=%lu (MB/s=%lu)\n",
packets, bytes >> 20,
@@ -254,7 +271,7 @@ static void do_test(int domain, int type, int protocol)
static void usage(const char *filepath)
{
- error(1, 0, "Usage: %s [-n<N>] [-z<val>] [-s<payload size>] "
+ t_error(1, 0, "Usage: %s [-n<N>] [-z<val>] [-s<payload size>] "
"(-4|-6) [-t<time s>] -D<dst_ip> udp", filepath);
}
@@ -276,13 +293,13 @@ static void parse_opts(int argc, char **argv)
switch (c) {
case '4':
if (cfg_family != PF_UNSPEC)
- error(1, 0, "Pass one of -4 or -6");
+ t_error(1, 0, "Pass one of -4 or -6");
cfg_family = PF_INET;
cfg_alen = sizeof(struct sockaddr_in);
break;
case '6':
if (cfg_family != PF_UNSPEC)
- error(1, 0, "Pass one of -4 or -6");
+ t_error(1, 0, "Pass one of -4 or -6");
cfg_family = PF_INET6;
cfg_alen = sizeof(struct sockaddr_in6);
break;
@@ -311,9 +328,9 @@ static void parse_opts(int argc, char **argv)
}
if (cfg_nr_reqs > MAX_SUBMIT_NR)
- error(1, 0, "-n: submit batch nr exceeds max (%d)", MAX_SUBMIT_NR);
+ t_error(1, 0, "-n: submit batch nr exceeds max (%d)", MAX_SUBMIT_NR);
if (cfg_payload_len > max_payload_len)
- error(1, 0, "-s: payload exceeds max (%d)", max_payload_len);
+ t_error(1, 0, "-s: payload exceeds max (%d)", max_payload_len);
setup_sockaddr(cfg_family, daddr, &cfg_dst_addr);
@@ -333,7 +350,7 @@ int main(int argc, char **argv)
else if (!strcmp(cfg_test, "udp"))
do_test(cfg_family, SOCK_DGRAM, 0);
else
- error(1, 0, "unknown cfg_test %s", cfg_test);
+ t_error(1, 0, "unknown cfg_test %s", cfg_test);
return 0;
}
--
2.39.1

View File

@ -12,6 +12,19 @@ stdenv.mkDerivation rec {
sha256 = "sha256-vN6lLb5kpgHTKDxwibJPS61sdelILETVtJE2BYgp79k=";
};
patches = [
# Backported portability fixes from liburing master, needed for pkgsMusl.liburing
./0001-Add-custom-error-function-for-tests.patch
./0002-test-Use-t_error-instead-of-glibc-s-error.patch
./0003-examples-Use-t_error-instead-of-glibc-s-error.patch
# More portability fixes, in the process of being upstreamed
(fetchpatch {
url = "https://github.com/axboe/liburing/pull/798/commits/0fbcc44fe1fb2dc6807660b2cff1c2995add095b.patch";
hash = "sha256-xOMsw0VpYGst/+Isd2Tmq8CmBDK+uyLw3KNKPnsCSoA=";
})
];
separateDebugInfo = true;
enableParallelBuilding = true;
# Upstream's configure script is not autoconf generated, but a hand written one.

View File

@ -0,0 +1,28 @@
{ stdenv, lib, fetchFromGitHub, ocaml, findlib, topkg, ocamlbuild, re }:
stdenv.mkDerivation rec {
pname = "ocaml${ocaml.version}-simple-diff";
version = "0.3";
src = fetchFromGitHub {
owner = "gjaldon";
repo = "simple_diff";
rev = "v${version}";
sha256 = "sha256-OaKECUBCCt9KfdRJf3HcXTUJVxKKdYtnzOHpMPOllrk=";
};
nativeBuildInputs = [ ocaml findlib ocamlbuild topkg ];
buildInputs = [ topkg ];
propagatedBuildInputs = [ re ];
strictDeps = true;
inherit (topkg) buildPhase installPhase;
meta = with lib; {
homepage = "https://github.com/gjaldon/simple_diff";
description = "Simple_diff is a pure OCaml diffing algorithm";
license = licenses.isc;
maintainers = with maintainers; [ ulrikstrid ];
};
}

View File

@ -22,14 +22,14 @@
buildPythonPackage rec {
pname = "ansible-lint";
version = "6.13.0";
version = "6.13.1";
format = "pyproject";
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-4tRdgxVyn0Kcu+/atEbTgFCtezbZ46oewb6vKRTQKaA=";
hash = "sha256-Q1wStP2I2oFa9oIfO/iwTrtlGBHaiaEcnRkLr/Ibrao=";
};
postPatch = ''

View File

@ -1,18 +1,16 @@
{ lib
, buildPythonPackage
, fetchPypi
, pythonOlder
, hatchling
, decorator
, requests
, typing ? null
, configparser
, click
, fetchPypi
, freezegun
, hatchling
, mock
, pytestCheckHook
, pytest-vcr
, pytestCheckHook
, python-dateutil
, pythonAtLeast
, pythonOlder
, requests
, vcrpy
}:
@ -21,22 +19,20 @@ buildPythonPackage rec {
version = "0.44.0";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "sha256-BxFw8MfvIlEdv3+b12xL5QDuLT1SBykApch7VJXSxzM=";
hash = "sha256-BxFw8MfvIlEdv3+b12xL5QDuLT1SBykApch7VJXSxzM=";
};
postPatch = ''
find . -name '*.pyc' -exec rm {} \;
'';
nativeBuildInputs = [
hatchling
];
propagatedBuildInputs = [ decorator requests ]
++ lib.optional (pythonOlder "3.5") typing
++ lib.optional (pythonOlder "3.0") configparser;
propagatedBuildInputs = [
requests
];
nativeCheckInputs = [
click
@ -54,13 +50,20 @@ buildPythonPackage rec {
disabledTests = [
"test_default_settings_set"
] ++ lib.optionals (pythonAtLeast "3.11") [
# https://github.com/DataDog/datadogpy/issues/746
"TestDogshell"
];
pythonImportsCheck = [ "datadog" ];
pythonImportsCheck = [
"datadog"
];
meta = with lib; {
description = "The Datadog Python library";
license = licenses.bsd3;
homepage = "https://github.com/DataDog/datadogpy";
changelog = "https://github.com/DataDog/datadogpy/blob/v${version}/CHANGELOG.md";
license = licenses.bsd3;
maintainers = with maintainers; [ ];
};
}

View File

@ -1,30 +1,42 @@
{ lib
, fetchPypi
, buildPythonPackage
, certifi
, chardet
, configparser
, datadog
, decorator
, fetchPypi
, idna
, requests
, python
, urllib3
, pythonOlder
}:
buildPythonPackage rec {
pname = "gradient_statsd";
pname = "gradient-statsd";
version = "1.0.1";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "iWlNX43ZtvU73wz4+8DgDulQNOnssJGxTBkvAaLj530=";
pname = "gradient_statsd";
inherit version;
hash = "sha256-iWlNX43ZtvU73wz4+8DgDulQNOnssJGxTBkvAaLj530=";
};
propagatedBuildInputs = [
certifi
chardet
datadog
decorator
idna
requests
]
++ lib.optional python.isPy2 configparser;
urllib3
];
pythonImportsCheck = [ "gradient_statsd" ];
pythonImportsCheck = [
"gradient_statsd"
];
# Pypi does not contain tests
doCheck = false;
@ -33,7 +45,7 @@ buildPythonPackage rec {
description = "Wrapper around the DogStatsd client";
homepage = "https://paperspace.com";
license = licenses.mit;
platforms = platforms.unix;
maintainers = with maintainers; [ freezeboy ];
platforms = platforms.unix;
};
}

View File

@ -17,7 +17,7 @@
buildPythonPackage rec {
pname = "mypy-boto3-builder";
version = "7.12.3";
version = "7.12.4";
format = "pyproject";
disabled = pythonOlder "3.10";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "youtype";
repo = "mypy_boto3_builder";
rev = "refs/tags/${version}";
hash = "sha256-cAbDw/u0kLUEdmd/NBNDy/bt5Wno9QpmqpqicqZ/Q6g=";
hash = "sha256-X8ATnycG7MvzDNaMClvhyy4Qy4hvoNhn0sQ+s/JnX64=";
};
nativeBuildInputs = [

View File

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "pyomo";
version = "6.4.4";
version = "6.5.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -18,7 +18,7 @@ buildPythonPackage rec {
repo = "pyomo";
owner = "pyomo";
rev = "refs/tags/${version}";
hash = "sha256-FVpwJRCRlc537tJomB4Alxx8zJj8FpZp+LxB0f12rGE=";
hash = "sha256-ZsoWz+35hQS15dbpe1IOzft6JwZygKjv5AQWjVe+8kQ=";
};
propagatedBuildInputs = [

View File

@ -24,7 +24,7 @@
buildPythonPackage rec {
pname = "weasyprint";
version = "57.2";
version = "58.0";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -32,7 +32,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit version;
pname = "weasyprint";
hash = "sha256-uOnvLcvPvILpkhWs/Wj5R7K18ZmbWxVtt1+r44C6fpo=";
hash = "sha256-cPSCytjlPCw+rpz4avQS65NAWxash4G1GeozJtR1vW8=";
};
patches = [

View File

@ -38,7 +38,7 @@ stdenv.mkDerivation {
mkdir -p $out/bin
mkdir -p $out/share/games/lovegames
cp -v $src $out/share/${pname}.love
cp -v $src $out/share/games/lovegames/${pname}.love
makeWrapper ${love}/bin/love $out/bin/${pname} --add-flags $out/share/games/lovegames/${pname}.love

View File

@ -71,13 +71,13 @@ let
PM_WAKELOCKS = yes;
POWERCAP = yes;
# ACPI Firmware Performance Data Table Support
ACPI_FPDT = whenAtLeast "5.12" yes;
ACPI_FPDT = whenAtLeast "5.12" (option yes);
# ACPI Heterogeneous Memory Attribute Table Support
ACPI_HMAT = whenAtLeast "5.2" yes;
ACPI_HMAT = whenAtLeast "5.2" (option yes);
# ACPI Platform Error Interface
ACPI_APEI = yes;
ACPI_APEI = (option yes);
# APEI Generic Hardware Error Source
ACPI_APEI_GHES = yes;
ACPI_APEI_GHES = (option yes);
} // optionalAttrs (stdenv.hostPlatform.isx86) {
INTEL_IDLE = yes;
INTEL_RAPL = whenAtLeast "5.3" module;

View File

@ -0,0 +1,18 @@
{ lib, buildPackages, fetchurl, perl, buildLinux, nixosTests, ... } @ args:
with lib;
buildLinux (args // rec {
version = "6.2";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = versions.pad 3 version;
# branchVersion needs to be x.y
extraMeta.branch = versions.majorMinor version;
src = fetchurl {
url = "mirror://kernel/linux/kernel/v6.x/linux-${version}.tar.xz";
sha256 = "sha256-dIYvqKtA7a6FuzOFwLcf4QMoi85RhSbWMZeACzy97LE=";
};
} // (args.argsOverride or { }))

View File

@ -43,8 +43,12 @@ buildGoModule {
substituteInPlace $out/lib/systemd/system/caddy.service --replace "/usr/bin/caddy" "$out/bin/caddy"
substituteInPlace $out/lib/systemd/system/caddy-api.service --replace "/usr/bin/caddy" "$out/bin/caddy"
$out/bin/caddy manpage --directory manpages
installManPage manpages/*
installShellCompletion --cmd metal \
--bash <($out/bin/caddy completion bash) \
--fish <($out/bin/caddy completion fish) \
--zsh <($out/bin/caddy completion zsh)
'';

View File

@ -19,13 +19,13 @@
stdenv.mkDerivation rec {
pname = "domoticz";
version = "2022.2";
version = "2023.1";
src = fetchFromGitHub {
owner = "domoticz";
repo = pname;
rev = version;
sha256 = "sha256-xgHfbNY5qzBkrMaJvFQ+EqJ7tcy0LNdPLD1bD92WkKg=";
sha256 = "sha256-fXNS7EVMqGM4tYppgG+l/adBt9eyW8RBK3Cs/pb2kg4=";
fetchSubmodules = true;
};
@ -83,6 +83,7 @@ stdenv.mkDerivation rec {
'';
maintainers = with maintainers; [ edcragg ];
homepage = "https://www.domoticz.com/";
changelog = "https://github.com/domoticz/domoticz/blob/${version}/History.txt";
license = licenses.gpl3Plus;
platforms = platforms.all;
broken = stdenv.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/domoticz.x86_64-darwin

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "icinga2${nameSuffix}";
version = "2.13.6";
version = "2.13.7";
src = fetchFromGitHub {
owner = "icinga";
repo = "icinga2";
rev = "v${version}";
sha256 = "sha256-Zrq+pw1dZyKVxpbsXeEPU3hLqcaYj/0wqB9HmYXnd0Y=";
sha256 = "sha256-YLNzXdR54DA9araC7pxZmopAZB90j9sx4gb3hOVsu0I=";
};
patches = [

View File

@ -14,7 +14,7 @@
, xdotool
}:
let release = "20180821"; in
let release = "20220825"; in
stdenv.mkDerivation {
pname = "keynav";
version = "0.${release}.0";
@ -22,8 +22,8 @@ stdenv.mkDerivation {
src = fetchFromGitHub {
owner = "jordansissel";
repo = "keynav";
rev = "78f9e076a5618aba43b030fbb9344c415c30c1e5";
sha256 = "0hmc14fj612z5h7gjgk95zyqab3p35c4a99snnblzxfg0p3x2f1d";
rev = "28a1ba9a045c62a9d2bc5c3474a66d96c8bf5c32";
hash = "sha256-y4ONq6fDBFhVGASvz28zlJRXfkCE/j8GDcbq/j8xvUY=";
};
nativeBuildInputs = [ pkg-config ];

View File

@ -19,12 +19,12 @@ in
openssh_hpn = common rec {
pname = "openssh-with-hpn";
version = "9.1p1";
version = "9.2p1";
extraDesc = " with high performance networking patches";
src = fetchurl {
url = "mirror://openbsd/OpenSSH/portable/openssh-${version}.tar.gz";
hash = "sha256-GfhQCcfj4jeH8CNvuxV4OSq01L+fjsX+a8HNfov90og=";
hash = "sha256-P2bb8WVftF9Q4cVtpiqwEhjCKIB7ITONY068351xz0Y=";
};
extraPatches = [
@ -32,17 +32,19 @@ in
# HPN Patch from FreeBSD ports
(fetchpatch {
name = "ssh-hpn.patch";
url = "https://raw.githubusercontent.com/freebsd/freebsd-ports/ae66cffc19f357cbd51d5841c9b110a9ffd63e32/security/openssh-portable/files/extra-patch-hpn";
name = "ssh-hpn-wo-channels.patch";
url = "https://raw.githubusercontent.com/freebsd/freebsd-ports/10491773d88012fe81d9c039cbbba647bde9ebc9/security/openssh-portable/files/extra-patch-hpn";
stripLen = 1;
sha256 = "sha256-p3CmMqTgrqFZUo4ZuqaPLczAhjmPufkCvptVW5dI+MI=";
excludes = [ "channels.c" ];
sha256 = "sha256-kSj0oE7gNHfIciy0/ErhdfrbmfjQmd8hduyiRXFnVZA=";
})
(fetchpatch {
name = "CVE-2023-25136.patch";
url = "https://ftp.openbsd.org/pub/OpenBSD/patches/7.2/common/017_sshd.patch.sig";
stripLen = 1;
hash = "sha256-ol/YXXb2gJNBfvg9JKmIEdwGK8RaDfW53aKKT6HU++M=";
name = "ssh-hpn-channels.patch";
url = "https://raw.githubusercontent.com/freebsd/freebsd-ports/10491773d88012fe81d9c039cbbba647bde9ebc9/security/openssh-portable/files/extra-patch-hpn";
extraPrefix = "";
includes = [ "channels.c" ];
sha256 = "sha256-pDLUbjv5XIyByEbiRAXC3WMUPKmn15af1stVmcvr7fE=";
})
];

View File

@ -7,6 +7,7 @@
, openssl
, bash
, nixosTests
, writeTextDir
}:
stdenv.mkDerivation rec {
@ -38,6 +39,17 @@ stdenv.mkDerivation rec {
bash
];
# This can be removed when ppp 2.5.0 is released:
# https://github.com/ppp-project/ppp/commit/509f04959ad891d7f981f035ed461d51bd1f74b0
propagatedBuildInputs = lib.optional stdenv.hostPlatform.isMusl (writeTextDir "include/net/ppp_defs.h" ''
#ifndef _NET_PPP_DEFS_H
#define _NET_PPP_DEFS_H 1
#include <linux/ppp_defs.h>
#endif /* net/ppp_defs.h */
'');
postPatch = ''
for file in $(find -name Makefile.linux); do
substituteInPlace "$file" --replace '-m 4550' '-m 550'

View File

@ -5,14 +5,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "commix";
version = "3.6";
version = "3.7";
format = "setuptools";
src = fetchFromGitHub {
owner = "commixproject";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-QdhJp7oUqOY8Z36haIrHgP4hVGaFXlOxNVg1ams7uhg=";
hash = "sha256-pqfb0CkWTPq6B8T7nn25lWuEQFRRziCDWYm5a1S3mIY=";
};
postInstall = ''

View File

@ -814,6 +814,7 @@ mapAliases ({
libressl_3_2 = throw "'libressl_3_2' has reached end-of-life "; # Added 2022-03-19
librevisa = throw "librevisa has been removed because its website and source have disappeared upstream"; # Added 2022-09-23
librsync_0_9 = throw "librsync_0_9 has been removed"; # Added 2021-07-24
librtlsdr = rtl-sdr; # Added 2023-02-18
librewolf-wayland = librewolf; # Added 2022-11-15
libseat = seatd; # Added 2021-06-24
libsForQt512 = throw "Qt 5 versions prior to 5.15 are no longer supported upstream and have been removed"; # Added 2022-11-24
@ -859,6 +860,7 @@ mapAliases ({
linuxPackages_5_4 = linuxKernel.packages.linux_5_4;
linuxPackages_6_0 = linuxKernel.packages.linux_6_0;
linuxPackages_6_1 = linuxKernel.packages.linux_6_1;
linuxPackages_6_2 = linuxKernel.packages.linux_6_2;
linuxPackages_hardkernel_4_14 = linuxKernel.packages.hardkernel_4_14;
linuxPackages_rpi0 = linuxKernel.packages.linux_rpi1;
linuxPackages_rpi02w = linuxKernel.packages.linux_rpi3;
@ -879,6 +881,7 @@ mapAliases ({
linux_5_4 = linuxKernel.kernels.linux_5_4;
linux_6_0 = linuxKernel.kernels.linux_6_0;
linux_6_1 = linuxKernel.kernels.linux_6_1;
linux_6_2 = linuxKernel.kernels.linux_6_2;
linuxPackages_mptcp = throw "'linuxPackages_mptcp' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
linux_mptcp = throw "'linux_mptcp' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04
linux_mptcp_95 = throw "'linux_mptcp_95' has been moved to https://github.com/teto/mptcp-flake"; # Converted to throw 2022-10-04

View File

@ -16459,7 +16459,7 @@ with pkgs;
love_0_10 = callPackage ../development/interpreters/love/0.10.nix { };
love_11 = callPackage ../development/interpreters/love/11.nix { };
love = love_0_10;
love = love_11;
wabt = callPackage ../development/tools/wabt { };
@ -32769,9 +32769,7 @@ with pkgs;
rtl-ais = callPackage ../applications/radio/rtl-ais { };
# librtlsdr is a friendly fork with additional features
rtl-sdr = callPackage ../applications/radio/rtl-sdr { };
librtlsdr = callPackage ../development/libraries/librtlsdr { };
rubyripper = callPackage ../applications/audio/rubyripper {};
@ -33620,6 +33618,7 @@ with pkgs;
unison = callPackage ../applications/networking/sync/unison {
enableX11 = config.unison.enableX11 or true;
inherit (darwin.apple_sdk.frameworks) Cocoa;
};
unpaper = callPackage ../tools/graphics/unpaper { };
@ -35449,7 +35448,7 @@ with pkgs;
python = python3;
};
mrrescue = callPackage ../games/mrrescue { };
mrrescue = callPackage ../games/mrrescue { love = love_0_10; };
mudlet = libsForQt5.callPackage ../games/mudlet {
lua = lua5_1;
@ -35560,7 +35559,7 @@ with pkgs;
openxray = callPackage ../games/openxray { };
orthorobot = callPackage ../games/orthorobot { };
orthorobot = callPackage ../games/orthorobot { love = love_0_10; };
pacvim = callPackage ../games/pacvim { };

View File

@ -174,6 +174,14 @@ in {
];
};
linux_6_2 = callPackage ../os-specific/linux/kernel/linux-6.2.nix {
kernelPatches = [
kernelPatches.bridge_stp_helper
kernelPatches.request_key_helper
kernelPatches.fix-em-ice-bonding
];
};
linux_testing = let
testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
kernelPatches = [
@ -540,6 +548,7 @@ in {
linux_5_19 = throw "linux 5.19 was removed because it reached its end of life upstream"; # Added 2022-11-01
linux_6_0 = throw "linux 6.0 was removed because it reached its end of life upstream"; # Added 2023-01-20
linux_6_1 = recurseIntoAttrs (packagesFor kernels.linux_6_1);
linux_6_2 = recurseIntoAttrs (packagesFor kernels.linux_6_2);
};
rtPackages = {
@ -600,7 +609,7 @@ in {
packageAliases = {
linux_default = packages.linux_5_15;
# Update this when adding the newest kernel major version!
linux_latest = packages.linux_6_1;
linux_latest = packages.linux_6_2;
linux_mptcp = packages.linux_mptcp_95;
linux_rt_default = packages.linux_rt_5_4;
linux_rt_latest = packages.linux_rt_5_10;

View File

@ -1260,6 +1260,8 @@ let
inherit (pkgs) shine;
};
simple-diff = callPackage ../development/ocaml-modules/simple-diff { };
sosa = callPackage ../development/ocaml-modules/sosa { };
soundtouch = callPackage ../development/ocaml-modules/soundtouch {