1
0
Fork 0
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-07-05 15:22:36 +03:00

Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-08-27 06:04:43 +00:00 committed by GitHub
commit da2ee88ef4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
26 changed files with 242 additions and 576 deletions

View file

@ -344,6 +344,15 @@
were not used by any other package. External users are encouraged to
migrate to OpenCV 4.
- The `tvheadend` package and the `services.tvheadend` module have been
removed as nobody was willing to maintain them and they were stuck on
an unmaintained version that required FFmpeg 4; please see [pull
request #332259](https://github.com/NixOS/nixpkgs/pull/332259) if you
are interested in maintaining a newer version.
- The `antennas` package and the `services.antennas` module have been
removed as they only work with `tvheadend` (see above).
## Other Notable Changes {#sec-release-24.11-notable-changes}
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->

View file

@ -969,7 +969,6 @@
./services/networking/adguardhome.nix
./services/networking/alice-lg.nix
./services/networking/amuled.nix
./services/networking/antennas.nix
./services/networking/aria2.nix
./services/networking/asterisk.nix
./services/networking/atftpd.nix
@ -1240,7 +1239,6 @@
./services/networking/tox-node.nix
./services/networking/toxvpn.nix
./services/networking/trickster.nix
./services/networking/tvheadend.nix
./services/networking/twingate.nix
./services/networking/ucarp.nix
./services/networking/unbound.nix

View file

@ -51,6 +51,7 @@ in
The hidepid module was removed, since the underlying machinery
is broken when using cgroups-v2.
'')
(mkRemovedOptionModule [ "services" "antennas" ] "The antennas package and the corresponding module have been removed as they only work with tvheadend, which nobody was willing to maintain and was stuck on an unmaintained version that required FFmpeg 4; please see https://github.com/NixOS/nixpkgs/pull/332259 if you are interested in maintaining a newer version.")
(mkRemovedOptionModule [ "services" "baget" "enable" ] "The baget module was removed due to the upstream package being unmaintained.")
(mkRemovedOptionModule [ "services" "beegfs" ] "The BeeGFS module has been removed")
(mkRemovedOptionModule [ "services" "beegfsEnable" ] "The BeeGFS module has been removed")
@ -94,6 +95,7 @@ in
the program being unmaintained. The options `programs.msmtp.*` can be
used instead.
'')
(mkRemovedOptionModule [ "services" "tvheadend" ] "The tvheadend package and the corresponding module have been removed as nobody was willing to maintain them and they were stuck on an unmaintained version that required FFmpeg 4; please see https://github.com/NixOS/nixpkgs/pull/332259 if you are interested in maintaining a newer version.")
(mkRemovedOptionModule [ "services" "venus" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "wakeonlan"] "This module was removed in favor of enabling it with networking.interfaces.<name>.wakeOnLan")
(mkRemovedOptionModule [ "services" "winstone" ] "The corresponding package was removed from nixpkgs.")

View file

@ -53,7 +53,7 @@ in {
Add "get" and "put" as query elements to enable those operations.
'';
example = [
"bolt+file:///srv/eris.bolt?get&put"
"badger+file:///var/db/eris.badger?get&put"
"coap+tcp://eris.example.com:5683?get"
];
};

View file

@ -1,77 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let cfg = config.services.antennas;
in
{
options = {
services.antennas = {
enable = mkEnableOption "Antennas";
tvheadendUrl = mkOption {
type = types.str;
default = "http://localhost:9981";
description = "URL of Tvheadend.";
};
antennasUrl = mkOption {
type = types.str;
default = "http://127.0.0.1:5004";
description = "URL of Antennas.";
};
tunerCount = mkOption {
type = types.int;
default = 6;
description = "Numbers of tuners in tvheadend.";
};
deviceUUID = mkOption {
type = types.str;
default = "2f70c0d7-90a3-4429-8275-cbeeee9cd605";
description = "Device tuner UUID. Change this if you are running multiple instances.";
};
};
};
config = mkIf cfg.enable {
systemd.services.antennas = {
description = "Antennas HDHomeRun emulator for Tvheadend.";
wantedBy = [ "multi-user.target" ];
# Config
environment = {
TVHEADEND_URL = cfg.tvheadendUrl;
ANTENNAS_URL = cfg.antennasUrl;
TUNER_COUNT = toString cfg.tunerCount;
DEVICE_UUID = cfg.deviceUUID;
};
serviceConfig = {
ExecStart = "${pkgs.antennas}/bin/antennas";
# Hardening
CapabilityBoundingSet = [ "" ];
DynamicUser = true;
LockPersonality = true;
ProcSubset = "pid";
PrivateDevices = true;
PrivateUsers = true;
PrivateTmp = true;
ProtectClock = true;
ProtectControlGroups = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectProc = "invisible";
ProtectSystem = "strict";
RestrictNamespaces = true;
RestrictRealtime = true;
};
};
};
}

View file

@ -1,63 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let cfg = config.services.tvheadend;
pidFile = "${config.users.users.tvheadend.home}/tvheadend.pid";
in
{
options = {
services.tvheadend = {
enable = mkEnableOption "Tvheadend";
httpPort = mkOption {
type = types.int;
default = 9981;
description = "Port to bind HTTP to.";
};
htspPort = mkOption {
type = types.int;
default = 9982;
description = "Port to bind HTSP to.";
};
};
};
config = mkIf cfg.enable {
users.users.tvheadend = {
description = "Tvheadend Service user";
home = "/var/lib/tvheadend";
createHome = true;
isSystemUser = true;
group = "tvheadend";
};
users.groups.tvheadend = {};
systemd.services.tvheadend = {
description = "Tvheadend TV streaming server";
wantedBy = [ "multi-user.target" ];
after = [ "network.target" ];
serviceConfig = {
Type = "forking";
PIDFile = pidFile;
Restart = "always";
RestartSec = 5;
User = "tvheadend";
Group = "video";
ExecStart = ''
${pkgs.tvheadend}/bin/tvheadend \
--http_port ${toString cfg.httpPort} \
--htsp_port ${toString cfg.htspPort} \
-f \
-C \
-p ${pidFile} \
-u tvheadend \
-g video
'';
ExecStop = "${pkgs.coreutils}/bin/rm ${pidFile}";
};
};
};
}

View file

@ -35,13 +35,13 @@
stdenv.mkDerivation rec {
pname = "tuba";
version = "0.8.2";
version = "0.8.3";
src = fetchFromGitHub {
owner = "GeopJr";
repo = "Tuba";
rev = "v${version}";
hash = "sha256-nBNb2Hqv2AumwYoQnYZnH6YGp9wGr1o9vRO8YOty214=";
hash = "sha256-K0TXWFCSVjwogSXiTRX2eE92w5OzOGVeU4hFkDTJl+M=";
};
nativeBuildInputs = [

View file

@ -1,104 +0,0 @@
{ lib
, stdenv
, darwin
, fetchFromGitHub
, rust
, rustPlatform
, cargo-tauri
, cinny
, copyDesktopItems
, wrapGAppsHook3
, pkg-config
, openssl
, dbus
, glib
, glib-networking
, libayatana-appindicator
, webkitgtk
, makeDesktopItem
}:
rustPlatform.buildRustPackage rec {
pname = "cinny-desktop";
# We have to be using the same version as cinny-web or this isn't going to work.
version = "4.0.3";
src = fetchFromGitHub {
owner = "cinnyapp";
repo = "cinny-desktop";
rev = "v${version}";
hash = "sha256-05T/2e5+st+vGQuO8lRw6KWz3+Qiqd14dCPvayyz5mo=";
};
sourceRoot = "${src.name}/src-tauri";
cargoHash = "sha256-bM+V37PJAob/DA2jy2g69zUY99ZyZBzgO6djadbdiJw=";
postPatch = let
cinny' =
assert lib.assertMsg (cinny.version == version) "cinny.version (${cinny.version}) != cinny-desktop.version (${version})";
cinny;
in ''
substituteInPlace tauri.conf.json \
--replace '"distDir": "../cinny/dist",' '"distDir": "${cinny'}",'
substituteInPlace tauri.conf.json \
--replace '"cd cinny && npm run build"' '""'
'' + lib.optionalString stdenv.hostPlatform.isLinux ''
substituteInPlace $cargoDepsCopy/libappindicator-sys-*/src/lib.rs \
--replace "libayatana-appindicator3.so.1" "${libayatana-appindicator}/lib/libayatana-appindicator3.so.1"
'';
postBuild = lib.optionalString stdenv.hostPlatform.isDarwin ''
cargo tauri build --bundles app --target "${rust.envVars.rustHostPlatform}"
'';
postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
install -DT icons/128x128@2x.png $out/share/icons/hicolor/256x256@2/apps/cinny.png
install -DT icons/128x128.png $out/share/icons/hicolor/128x128/apps/cinny.png
install -DT icons/32x32.png $out/share/icons/hicolor/32x32/apps/cinny.png
'' + lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir -p "$out/Applications/"
cp -r "target/${rust.envVars.rustHostPlatform}/release/bundle/macos/Cinny.app" "$out/Applications/"
ln -sf "$out/Applications/Cinny.app/Contents/MacOS/Cinny" "$out/bin/cinny"
'';
nativeBuildInputs = [
copyDesktopItems
wrapGAppsHook3
pkg-config
cargo-tauri
];
buildInputs = [
openssl
dbus
glib
] ++ lib.optionals stdenv.hostPlatform.isLinux [
glib-networking
libayatana-appindicator
webkitgtk
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
darwin.DarwinTools
darwin.apple_sdk.frameworks.WebKit
];
desktopItems = lib.optionals stdenv.hostPlatform.isLinux [
(makeDesktopItem {
name = "cinny";
exec = "cinny";
icon = "cinny";
desktopName = "Cinny";
comment = meta.description;
categories = [ "Network" "InstantMessaging" ];
})
];
meta = {
description = "Yet another matrix client for desktop";
homepage = "https://github.com/cinnyapp/cinny-desktop";
maintainers = with lib.maintainers; [ qyriad ];
license = lib.licenses.agpl3Only;
platforms = lib.platforms.linux ++ lib.platforms.darwin;
mainProgram = "cinny";
};
}

View file

@ -10,7 +10,7 @@
ncurses,
usePython ? false,
python ? null,
swig3,
swig,
extraPackages ? [ ],
buildPackages,
testers,
@ -47,7 +47,7 @@ stdenv.mkDerivation (finalAttrs: {
]
++ lib.optionals usePython [
python
swig3
swig
];
propagatedBuildInputs = lib.optionals usePython [ python.pkgs.numpy ];

View file

@ -10,7 +10,7 @@
, xylib
, readline
, gnuplot
, swig3
, swig
}:
stdenv.mkDerivation rec {
@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
xylib
readline
gnuplot
swig3
swig
];
env.NIX_CFLAGS_COMPILE = toString [

View file

@ -0,0 +1,125 @@
{
lib,
stdenv,
darwin,
fetchFromGitHub,
rust,
rustPlatform,
cargo-tauri,
cinny,
copyDesktopItems,
wrapGAppsHook3,
pkg-config,
openssl,
dbus,
glib,
glib-networking,
libayatana-appindicator,
webkitgtk,
makeDesktopItem,
}:
rustPlatform.buildRustPackage rec {
pname = "cinny-desktop";
# We have to be using the same version as cinny-web or this isn't going to work.
version = "4.1.0";
src = fetchFromGitHub {
owner = "cinnyapp";
repo = "cinny-desktop";
rev = "refs/tags/v${version}";
hash = "sha256-3HwKDD0O1Yx2OIjyO5FhV4d1INAIFXMO7FjSL7cOVmI=";
};
sourceRoot = "${src.name}/src-tauri";
cargoHash = "sha256-CwB4S/5UuDH1LlJ4CY77XUCriplT3ZFfdg1j41AUoTI=";
postPatch =
let
cinny' =
assert lib.assertMsg (
cinny.version == version
) "cinny.version (${cinny.version}) != cinny-desktop.version (${version})";
cinny.override {
conf = {
hashRouter.enabled = true;
};
};
in
''
substituteInPlace tauri.conf.json \
--replace '"distDir": "../cinny/dist",' '"distDir": "${cinny'}",'
substituteInPlace tauri.conf.json \
--replace '"cd cinny && npm run build"' '""'
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
substituteInPlace $cargoDepsCopy/libappindicator-sys-*/src/lib.rs \
--replace "libayatana-appindicator3.so.1" "${libayatana-appindicator}/lib/libayatana-appindicator3.so.1"
'';
postBuild = lib.optionalString stdenv.hostPlatform.isDarwin ''
cargo tauri build --bundles app --target "${rust.envVars.rustHostPlatform}"
'';
postInstall =
lib.optionalString stdenv.hostPlatform.isLinux ''
install -DT icons/128x128@2x.png $out/share/icons/hicolor/256x256@2/apps/cinny.png
install -DT icons/128x128.png $out/share/icons/hicolor/128x128/apps/cinny.png
install -DT icons/32x32.png $out/share/icons/hicolor/32x32/apps/cinny.png
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir -p "$out/Applications/"
cp -r "target/${rust.envVars.rustHostPlatform}/release/bundle/macos/Cinny.app" "$out/Applications/"
ln -sf "$out/Applications/Cinny.app/Contents/MacOS/Cinny" "$out/bin/cinny"
'';
nativeBuildInputs = [
copyDesktopItems
wrapGAppsHook3
pkg-config
cargo-tauri
];
buildInputs =
[
openssl
dbus
glib
]
++ lib.optionals stdenv.hostPlatform.isLinux [
glib-networking
libayatana-appindicator
webkitgtk
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
darwin.DarwinTools
darwin.apple_sdk.frameworks.WebKit
];
desktopItems = lib.optionals stdenv.hostPlatform.isLinux [
(makeDesktopItem {
name = "cinny";
exec = "cinny";
icon = "cinny";
desktopName = "Cinny";
comment = meta.description;
categories = [
"Network"
"InstantMessaging"
];
})
];
meta = {
description = "Yet another matrix client for desktop";
homepage = "https://github.com/cinnyapp/cinny-desktop";
maintainers = with lib.maintainers; [
qyriad
ryand56
];
license = lib.licenses.agpl3Only;
platforms = lib.platforms.linux ++ lib.platforms.darwin;
mainProgram = "cinny";
};
}

View file

@ -1,8 +1,8 @@
{ lib, stdenv, buildGoModule, fetchFromGitea, mandoc, tup, nixosTests }:
{ lib, stdenv, buildGoModule, fetchFromGitea, nixosTests }:
buildGoModule rec {
pname = "eris-go";
version = "20240128";
version = "20240826";
outputs = [ "out" "man" ];
src = fetchFromGitea {
@ -10,18 +10,11 @@ buildGoModule rec {
owner = "eris";
repo = "eris-go";
rev = version;
hash = "sha256-mS5PMrp6rBR8ehlpDAZaTQL8vhFSpcztMaQF5zjozxc=";
hash = "sha256-qw3HdHtyMuWqwkuGzVzQ8bXnXlJJPDpiYrQZb0lIYj8=";
};
vendorHash = "sha256-pA/fz7JpDwdTRFfLDY0M6p9TeBOK68byhy/0Cw53p4M=";
vendorHash = "sha256-TnB4BSO2Yb9AtcHgdEgNrFHAQJ7u4IzmhLdcSjbZ7SA=";
nativeBuildInputs = [ mandoc tup ];
postConfigure = ''
rm -f *.md
tupConfigure
'';
postBuild = "tupBuild";
postInstall = ''
install -D *.1.gz -t $man/share/man/man1
'';
@ -35,7 +28,6 @@ buildGoModule rec {
homepage = "https://codeberg.org/eris/eris-go";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ ehmry ];
broken = stdenv.isDarwin;
mainProgram = "eris-go";
};
}

View file

@ -51,13 +51,13 @@ let
};
pname = "pretix";
version = "2024.7.0";
version = "2024.7.1";
src = fetchFromGitHub {
owner = "pretix";
repo = "pretix";
rev = "refs/tags/v${version}";
hash = "sha256-08ykuFPcG3WvinJd9zadirXFqsMt9GbdOGU2CGbW7ls=";
hash = "sha256-lOcV3+CNGyKR0QiQXr/hP/9rhWauEvnSLOvxmQa/DSg=";
};
npmDeps = buildNpmPackage {

View file

@ -12,16 +12,16 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "railway";
version = "3.12.2";
version = "3.13.0";
src = fetchFromGitHub {
owner = "railwayapp";
repo = "cli";
rev = "v${version}";
hash = "sha256-G3sdwQ5SqCA5jEDMny7a446wSMrPmgs4q5u1mcNY7SU=";
hash = "sha256-uCgL08HADAtSt4OGqvHNGq95RG23QRYXHt0vIqCtjno=";
};
cargoHash = "sha256-zyMXx1CITE0y7RyRirT3o5F8U/9ReXwlGr2nrobwmYI=";
cargoHash = "sha256-UblS3jhn5yJTog/qblnoHVaJbXZKYRnw+ZgabZ+pPcI=";
nativeBuildInputs = [ pkg-config ];

View file

@ -7,20 +7,20 @@
rustPlatform.buildRustPackage rec {
pname = "rcp";
version = "0.11.0";
version = "0.12.0";
src = fetchFromGitHub {
owner = "wykurz";
repo = "rcp";
rev = "v${version}";
hash = "sha256-ymqglANM4vIIBC/lCnnLbYvAqJzdxX+lZGw4IB5O1sE=";
hash = "sha256-TQTn91FDqDpdPv6dn2cwseGF+3EcJ17sglHKD7EQLeY=";
};
buildInputs = lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [
IOKit
]);
cargoHash = "sha256-88DSK0E1Wu9RMYJsbsnnieCorJZ50TRF7Fm/uCSOYHU=";
cargoHash = "sha256-uhE1AphdYKL6pFY8vsmdMGxHxFiVw75oDXNP8qGykBc=";
RUSTFLAGS = "--cfg tokio_unstable";

View file

@ -0,0 +1,29 @@
{
lib,
buildGoModule,
fetchFromGitHub,
gitUpdater,
}:
buildGoModule rec {
pname = "wal-listener";
version = "2.6.1";
src = fetchFromGitHub {
owner = "ihippik";
repo = "wal-listener";
rev = "v${version}";
hash = "sha256-OqjCFIdU4wCiPGIMrlp+nGVr0XTNHTE8zB8/toZtM44=";
};
vendorHash = "sha256-VUuEVH3IUuvThIt/HJx8OE8oqbjnSeqDIQxP0sl0FJw=";
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
meta = {
description = "PostgreSQL WAL listener";
homepage = "https://github.com/ihippik/wal-listener";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ bbigras ];
};
}

View file

@ -1,31 +1,36 @@
{ lib
, stdenv
, fetchFromGitHub
, pkg-config
, openssl
, check
, pcsclite
, PCSC
, gengetopt
, help2man
, cmake
, zlib
, nix-update-script
, testers
, withApplePCSC ? stdenv.isDarwin
{
lib,
check,
cmake,
darwin,
fetchFromGitHub,
gengetopt,
help2man,
nix-update-script,
openssl,
pcsclite,
pkg-config,
stdenv,
testers,
zlib,
withApplePCSC ? stdenv.isDarwin,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "yubico-piv-tool";
version = "2.5.2";
version = "2.6.0";
outputs = [ "out" "dev" "man" ];
outputs = [
"out"
"dev"
"man"
];
src = fetchFromGitHub {
owner = "Yubico";
repo = "yubico-piv-tool";
rev = "refs/tags/yubico-piv-tool-${finalAttrs.version}";
hash = "sha256-SBVYr6OcWqT+WKOZgIeZ1TmqCbcGAjbq/HaWIwPduFw=";
hash = "sha256-53cgwXMzVKnouwHhbt6pODhjF2MH0sK5CPWpbZe71jE=";
};
postPatch = ''
@ -33,17 +38,16 @@ stdenv.mkDerivation (finalAttrs: {
'';
nativeBuildInputs = [
pkg-config
cmake
gengetopt
help2man
pkg-config
];
buildInputs = [
openssl
zlib.dev
]
++ (if withApplePCSC then [ PCSC ] else [ pcsclite ]);
zlib
] ++ (if withApplePCSC then [ darwin.apple_sdk.frameworks.PCSC ] else [ pcsclite ]);
cmakeFlags = [
(lib.cmakeBool "GENERATE_MAN_PAGES" true)
@ -60,7 +64,10 @@ stdenv.mkDerivation (finalAttrs: {
passthru = {
updateScript = nix-update-script {
extraArgs = [ "--version-regex" "yubico-piv-tool-([0-9.]+)$" ];
extraArgs = [
"--version-regex"
"yubico-piv-tool-([0-9.]+)$"
];
};
tests = {
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
@ -87,8 +94,14 @@ stdenv.mkDerivation (finalAttrs: {
'';
license = lib.licenses.bsd2;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ viraptor anthonyroussel ];
maintainers = with lib.maintainers; [
viraptor
anthonyroussel
];
mainProgram = "yubico-piv-tool";
pkgConfigModules = [ "ykcs11" "ykpiv" ];
pkgConfigModules = [
"ykcs11"
"ykpiv"
];
};
})

View file

@ -25,9 +25,9 @@ let
"18.1.8".officialRelease.sha256 = "sha256-iiZKMRo/WxJaBXct9GdAcAT3cz9d9pnAcO1mmR6oPNE=";
"19.1.0-rc3".officialRelease.sha256 = "sha256-SRonSpXt1pH6Xk+rQZk9mrfMdvYIvOImwUfMUu3sBgs=";
"20.0.0-git".gitRelease = {
rev = "4f5d866af7fed0de1671a68530d3023e9762b71e";
rev-version = "20.0.0-unstable-2024-08-13";
sha256 = "sha256-gr1DjZHfJlyGRDwkK7B82agTF8lRlYmCprcb/O4Do9E=";
rev = "2579b411a13799534c8b8a22246134b88ba7785d";
rev-version = "20.0.0-unstable-2024-08-25";
sha256 = "sha256-/Gymj9bEoaAAH5kWPRflD+lBWyPjWBpYGnQsP5vAlsk=";
};
} // llvmVersions;

View file

@ -2,7 +2,6 @@
lib,
aiohttp,
aioitertools,
asgiref,
buildPythonPackage,
django,
falcon,
@ -12,7 +11,7 @@
httpx,
isodate,
jsonschema,
jsonschema-spec,
jsonschema-path,
more-itertools,
multidict,
openapi-schema-validator,
@ -20,6 +19,7 @@
parse,
poetry-core,
pytest-aiohttp,
pytest-cov-stub,
pytestCheckHook,
pythonOlder,
responses,
@ -31,7 +31,7 @@
buildPythonPackage rec {
pname = "openapi-core";
version = "0.19.2";
version = "0.19.3";
pyproject = true;
disabled = pythonOlder "3.8";
@ -40,28 +40,23 @@ buildPythonPackage rec {
owner = "p1c2u";
repo = "openapi-core";
rev = "refs/tags/${version}";
hash = "sha256-6FFJsXObIA9tchTJJmoSu9u+/ZuKuw29AYsLEmvHXrY=";
hash = "sha256-UJkfAVorALGRqeoGr4136n98iTyPt9qzQxwnhkKgRNM=";
};
postPatch = ''
sed -i "/--cov/d" pyproject.toml
'';
build-system = [ poetry-core ];
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
dependencies = [
isodate
more-itertools
parse
openapi-schema-validator
openapi-spec-validator
werkzeug
jsonschema-spec
asgiref
jsonschema-path
jsonschema
];
passthru.optional-dependencies = {
optional-dependencies = {
aiohttp = [
aiohttp
multidict
@ -82,15 +77,11 @@ buildPythonPackage rec {
nativeCheckInputs = [
httpx
pytest-aiohttp
pytest-cov-stub
pytestCheckHook
responses
webob
] ++ lib.flatten (lib.attrValues passthru.optional-dependencies);
pytestFlagsArray = [
"-W"
"ignore::DeprecationWarning"
];
] ++ lib.flatten (lib.attrValues optional-dependencies);
disabledTestPaths = [
# Requires secrets and additional configuration
@ -104,6 +95,7 @@ buildPythonPackage rec {
];
meta = with lib; {
changelog = "https://github.com/python-openapi/openapi-core/releases/tag/${version}";
description = "Client-side and server-side support for the OpenAPI Specification v3";
homepage = "https://github.com/python-openapi/openapi-core";
license = licenses.bsd3;

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "yarn-berry";
version = "4.4.0";
version = "4.4.1";
src = fetchFromGitHub {
owner = "yarnpkg";
repo = "berry";
rev = "@yarnpkg/cli/${finalAttrs.version}";
hash = "sha256-X/axXgRsxek2EJ+B4EogAsaTWTZDEF1m5dXOTZ4OnQQ=";
hash = "sha256-bkhPdnRImeYBd0yY+iRYXk1KELyCWZusSmVGl2tbM+s=";
};
buildInputs = [

View file

@ -1,38 +0,0 @@
{ lib
, buildNpmPackage
, fetchFromGitHub
}:
buildNpmPackage rec {
pname = "antennas";
version = "4.2.0";
src = fetchFromGitHub {
owner = "jfarseneau";
repo = "antennas";
rev = "v${version}";
hash = "sha256-UQ+wvm7+x/evmtGwzCkUkrrDMCIZzUL4iSkLmYKJ3Mc=";
};
npmDepsHash = "sha256-D5ss7nCDY3ogZy64iFqLVKbmibAg7C/A+rEHJaE9c2U=";
dontNpmBuild = true;
doCheck = true;
checkPhase = ''
runHook preCheck
npm run test
runHook postCheck
'';
meta = {
description = "HDHomeRun emulator for Plex DVR to connect to Tvheadend";
homepage = "https://github.com/jfarseneau/antennas";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ bachp ];
mainProgram = "antennas";
};
}

View file

@ -1,134 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
# buildtime
, makeWrapper
, pkg-config
, python3
, which
# runtime
, avahi
, bzip2
, dbus
, dtv-scan-tables
, ffmpeg_4
, gettext
, gnutar
, gzip
, libiconv
, openssl
, uriparser
, zlib
}:
let
version = "4.2.8";
in stdenv.mkDerivation {
pname = "tvheadend";
inherit version;
src = fetchFromGitHub {
owner = "tvheadend";
repo = "tvheadend";
rev = "v${version}";
sha256 = "1xq059r2bplaa0nd0wkhw80jfwd962x0h5hgd7fz2yp6largw34m";
};
outputs = [
"out"
"man"
];
patches = [
# Pull upstream fix for -fno-common toolchain
# https://github.com/tvheadend/tvheadend/pull/1342
# TODO: can be removed with 4.3 release.
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/tvheadend/tvheadend/commit/bd92f1389f1aacdd08e913b0383a0ca9dc223153.patch";
sha256 = "17bsx6mnv4pjiayvx1d57dphva0kvlppvnmmaym06dh4524pnly1";
})
];
nativeBuildInputs = [
makeWrapper
pkg-config
python3
which
];
buildInputs = [
avahi
bzip2
dbus
ffmpeg_4 # depends on libav
gettext
gzip
libiconv
openssl
uriparser
zlib
];
enableParallelBuilding = true;
env.NIX_CFLAGS_COMPILE = toString ([
"-Wno-error=format-truncation"
"-Wno-error=stringop-truncation"
] ++ lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
# Needed with GCC 12 but unrecognized with GCC 9
"-Wno-error=use-after-free"
]);
configureFlags = [
# disable dvbscan, as having it enabled causes a network download which
# cannot happen during build. We now include the dtv-scan-tables ourselves
"--disable-dvbscan"
"--disable-bintray_cache"
"--disable-ffmpeg_static"
# incompatible with our libhdhomerun version
"--disable-hdhomerun_client"
"--disable-hdhomerun_static"
"--disable-libx264_static"
"--disable-libx265_static"
"--disable-libvpx_static"
"--disable-libtheora_static"
"--disable-libvorbis_static"
"--disable-libfdkaac_static"
"--disable-libmfx_static"
];
preConfigure = ''
substituteInPlace src/config.c \
--replace /usr/bin/tar ${gnutar}/bin/tar
substituteInPlace src/input/mpegts/scanfile.c \
--replace /usr/share/dvb ${dtv-scan-tables}/share/dvbv5
# the version detection script `support/version` reads this file if it
# exists, so let's just use that
echo ${version} > rpm/version
'';
postInstall = ''
wrapProgram $out/bin/tvheadend \
--prefix PATH : ${lib.makeBinPath [ bzip2 ]}
'';
meta = with lib; {
description = "TV streaming server and digital video recorder";
longDescription = ''
Tvheadend is a TV streaming server for Linux supporting DVB-S,
DVB-S2, DVB-C, DVB-T, ATSC, IPTV,SAT>IP and other formats
through the unix pipe as input sources.
'';
homepage = "https://tvheadend.org";
license = licenses.gpl3Only;
platforms = platforms.unix;
maintainers = with maintainers; [ simonvandel ];
mainProgram = "tvheadend";
};
}

View file

@ -6,25 +6,21 @@
python3.pkgs.buildPythonApplication rec {
pname = "spotdl";
version = "4.2.5";
version = "4.2.6";
pyproject = true;
src = fetchFromGitHub {
owner = "spotDL";
repo = "spotify-downloader";
rev = "refs/tags/v${version}";
hash = "sha256-vxMhFs2mLbVQndlC2UpeDP+M4pwU9Y4cZHbZ8y3vWbI=";
hash = "sha256-OhZXxGkcO/dlYth9xUnpd/IbyvsbjMzwqQ9lPSvnFSs=";
};
build-system = with python3.pkgs; [ poetry-core ];
pythonRelaxDeps = true;
# Remove when https://github.com/spotDL/spotify-downloader/issues/2119 is fixed
patches = [ ./is_lrc_valid-failure.patch ];
dependencies = with python3.pkgs; [
bandcamp-api
beautifulsoup4
fastapi
mutagen
@ -36,7 +32,6 @@ python3.pkgs.buildPythonApplication rec {
rapidfuzz
requests
rich
setuptools
soundcloud-v2
spotipy
syncedlyrics

View file

@ -1,65 +0,0 @@
From 0c1357470450d98b3b7fe5444ac460ba9ee04425 Mon Sep 17 00:00:00 2001
From: Jeremy Cutler <jerz4lunch@users.noreply.github.com>
Date: Mon, 17 Jun 2024 02:19:33 -0700
Subject: [PATCH 1/2] Update lrc.py for updated function in python-syncedlyrics
See syncedlyrics commit: [here](https://github.com/moehmeni/syncedlyrics/commit/64d3f9de3d17bec69cbc3b3b5acd1ab847fde4b2)
---
spotdl/utils/lrc.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/spotdl/utils/lrc.py b/spotdl/utils/lrc.py
index 726fefbee..e59490b53 100644
--- a/spotdl/utils/lrc.py
+++ b/spotdl/utils/lrc.py
@@ -7,7 +7,7 @@
from pathlib import Path
from syncedlyrics import search as syncedlyrics_search
-from syncedlyrics.utils import is_lrc_valid, save_lrc_file
+from syncedlyrics.utils import has_translation, save_lrc_file
from spotdl.types.song import Song
@@ -25,7 +25,7 @@ def generate_lrc(song: Song, output_file: Path):
- output_file: Path to the output file
"""
- if song.lyrics and is_lrc_valid(song.lyrics):
+ if song.lyrics and has_translation(song.lyrics):
lrc_data = song.lyrics
else:
try:
From bfa9456049132e64b5c83655bdeae7c9dcd1b532 Mon Sep 17 00:00:00 2001
From: Jeremy Cutler <jerz4lunch@users.noreply.github.com>
Date: Wed, 26 Jun 2024 18:06:59 -0700
Subject: [PATCH 2/2] Update lrc.py
Seems to have fixed the update of syncedlyrics to 1.0.0
---
spotdl/utils/lrc.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/spotdl/utils/lrc.py b/spotdl/utils/lrc.py
index e59490b53..cf7478214 100644
--- a/spotdl/utils/lrc.py
+++ b/spotdl/utils/lrc.py
@@ -7,7 +7,7 @@
from pathlib import Path
from syncedlyrics import search as syncedlyrics_search
-from syncedlyrics.utils import has_translation, save_lrc_file
+from syncedlyrics.utils import has_translation, Lyrics
from spotdl.types.song import Song
@@ -34,7 +34,7 @@ def generate_lrc(song: Song, output_file: Path):
lrc_data = None
if lrc_data:
- save_lrc_file(str(output_file.with_suffix(".lrc")), lrc_data)
+ Lyrics.save_lrc_file(str(output_file.with_suffix(".lrc")), lrc_data)
logger.debug("Saved lrc file for %s", song.display_name)
else:
logger.debug("No lrc file found for %s", song.display_name)

View file

@ -110,6 +110,7 @@ mapAliases ({
ansible_2_12 = throw "Ansible 2.12 goes end of life in 2023/05 and can't be supported throughout the 23.05 release cycle"; # Added 2023-05-16
ansible_2_13 = throw "Ansible 2.13 goes end of life in 2023/11"; # Added 2023-12-30
ansible_2_14 = throw "Ansible 2.14 goes end of life in 2024/05 and can't be supported throughout the 24.05 release cycle"; # Added 2024-04-11
antennas = throw "antennas has been removed as it only works with tvheadend, which nobody was willing to maintain and was stuck on an unmaintained version that required FFmpeg 4; please see https://github.com/NixOS/nixpkgs/pull/332259 if you are interested in maintaining a newer version"; # Added 2024-08-21
androidndkPkgs_23b = lib.warn "The package set `androidndkPkgs_23b` has been renamed to `androidndkPkgs_23`." androidndkPkgs_23; # Added 2024-07-21
apacheAnt_1_9 = throw "Ant 1.9 has been removed since it's not used in nixpkgs anymore"; # Added 2023-11-12
apacheKafka_2_8 = throw "apacheKafka_2_8 through _3_5 have been removed from nixpkgs as outdated"; # Added 2024-02-12
@ -1514,6 +1515,7 @@ mapAliases ({
tumpa = throw "tumpa has been removed, as it is broken"; # Added 2024-07-15
turbogit = throw "turbogit has been removed as it is unmaintained upstream and depends on an insecure version of libgit2"; # Added 2024-08-25
tvbrowser-bin = tvbrowser; # Added 2023-03-02
tvheadend = throw "tvheadend has been removed as it nobody was willing to maintain it and it was stuck on an unmaintained version that required FFmpeg 4; please see https://github.com/NixOS/nixpkgs/pull/332259 if you are interested in maintaining a newer version"; # Added 2024-08-21
typst-fmt = typstfmt; # Added 2023-07-15
typst-preview = throw "The features of 'typst-preview' have been consolidated to 'tinymist', an all-in-one language server for typst"; # Added 2024-07-07

View file

@ -3369,8 +3369,6 @@ with pkgs;
httpServer = true;
};
antennas = callPackage ../servers/antennas { };
apg = callPackage ../tools/security/apg { };
apt-dater = callPackage ../tools/package-management/apt-dater {
@ -4424,8 +4422,6 @@ with pkgs;
cht-sh = callPackage ../tools/misc/cht.sh { };
cinny-desktop = callPackage ../applications/networking/instant-messengers/cinny-desktop { };
ckbcomp = callPackage ../tools/X11/ckbcomp { };
clac = callPackage ../tools/misc/clac { };
@ -24272,10 +24268,6 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) CoreServices SystemConfiguration;
};
yubico-piv-tool = callPackage ../tools/misc/yubico-piv-tool {
inherit (darwin.apple_sdk.frameworks) PCSC;
};
yubihsm-connector = callPackage ../tools/security/yubihsm-connector { };
yubikey-manager = callPackage ../tools/misc/yubikey-manager { };
@ -39029,8 +39021,6 @@ with pkgs;
tvbrowser = callPackage ../applications/misc/tvbrowser { };
tvheadend = callPackage ../servers/tvheadend { };
twitch-cli = callPackage ../development/tools/twitch-cli { };
uacme = callPackage ../tools/admin/uacme { };