Merge remote-tracking branch 'origin/staging-next' into staging

This commit is contained in:
K900
2025-02-02 09:49:00 +03:00
56 changed files with 2443 additions and 204 deletions
+6
View File
@@ -11373,6 +11373,12 @@
github = "josephsurin";
githubId = 14977484;
};
joshainglis = {
name = "Josha Inglis";
email = "joshainglis@gmail.com";
github = "joshainglis";
githubId = 1281131;
};
joshniemela = {
name = "Joshua Niemelä";
email = "josh@jniemela.dk";
@@ -139,6 +139,8 @@
- [PowerStation](https://github.com/ShadowBlip/PowerStation/), an open source TDP control and performance daemon with DBus interface for Linux. Available as [services.powerstation](#opt-services.powerstation.enable).
- [`g3proxy`](https://github.com/bytedance/g3), an open source enterprise forward proxy from ByteDance, similar to Squid or tinyproxy. Available as [services.g3proxy](#opt-services.g3proxy.enable).
- [echoip](https://github.com/mpolden/echoip), a simple service for looking up your IP address. Available as [services.echoip](#opt-services.echoip.enable).
- [Buffyboard](https://gitlab.postmarketos.org/postmarketOS/buffybox/-/tree/master/buffyboard), a framebuffer on-screen keyboard. Available as [services.buffyboard](option.html#opt-services.buffyboard).
+1
View File
@@ -1267,6 +1267,7 @@
./services/networking/spacecookie.nix
./services/networking/spiped.nix
./services/networking/squid.nix
./services/networking/g3proxy.nix
./services/networking/ssh/sshd.nix
./services/networking/sslh.nix
./services/networking/strongswan-swanctl/module.nix
@@ -0,0 +1,92 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.services.g3proxy;
inherit (lib)
mkPackageOption
mkEnableOption
mkOption
mkIf
literalExpression
;
settingsFormat = pkgs.formats.yaml { };
in
{
options.services.g3proxy = {
enable = mkEnableOption "g3proxy, a generic purpose forward proxy";
package = mkPackageOption pkgs "g3proxy" { };
settings = mkOption {
type = settingsFormat.type;
default = { };
example = literalExpression ''
{
server = [{
name = "test";
escaper = "default";
type = "socks_proxy";
listen = {
address = "[::]:10086";
};
}];
}
'';
description = ''
Settings of g3proxy.
'';
};
};
config = mkIf cfg.enable {
systemd.services.g3proxy = {
description = "g3proxy server";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart =
let
g3proxy-yaml = settingsFormat.generate "g3proxy.yaml" cfg.settings;
in
"${lib.getExe cfg.package} --config-file ${g3proxy-yaml}";
WorkingDirectory = "/var/lib/g3proxy";
StateDirectory = "g3proxy";
RuntimeDirectory = "g3proxy";
DynamicUser = true;
RuntimeDirectoryMode = "0755";
PrivateTmp = true;
DevicePolicy = "closed";
LockPersonality = true;
MemoryDenyWriteExecute = true;
PrivateUsers = true;
ProtectHome = true;
ProtectHostname = true;
ProtectKernelLogs = true;
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectControlGroups = true;
ProtectSystem = "strict";
ProcSubset = "pid";
RestrictNamespaces = true;
RestrictRealtime = true;
RemoveIPC = true;
SystemCallArchitectures = "native";
UMask = "0077";
RestrictAddressFamilies = [
"AF_UNIX"
"AF_INET"
"AF_INET6"
];
RestrictSUIDSGID = true;
};
};
};
}
+1 -1
View File
@@ -141,7 +141,7 @@ in
ExecStart = "${lib.getExe cfg.package} ${userbornConfigJson} ${cfg.passwordFilesLocation}";
ExecStartPre = lib.mkMerge [
(lib.mkIf (!config.system.etc.overlay.mutable) [
(lib.mkIf (cfg.passwordFilesLocation != "/etc") [
"${pkgs.coreutils}/bin/mkdir -p ${cfg.passwordFilesLocation}"
])
+1 -1
View File
@@ -131,7 +131,7 @@ in
};
webserver = mkOption {
type = types.enum [ "nginx" "caddy" "none"];
type = types.enum [ "nginx" "caddy" ];
default = "nginx";
description = ''
Whether to use nginx or caddy for virtual host management.
+2 -1
View File
@@ -69,7 +69,8 @@ fi
chown -f 0:30000 /nix/store
chmod -f 1775 /nix/store
if [ -n "@readOnlyNixStore@" ]; then
if ! [[ "$(findmnt --noheadings --output OPTIONS /nix/store)" =~ ro(,|$) ]]; then
# #375257: Ensure that we pick the "top" (i.e. last) mount so we don't get a false positive for a lower mount.
if ! [[ "$(findmnt --direction backward --first-only --noheadings --output OPTIONS /nix/store)" =~ (^|,)ro(,|$) ]]; then
if [ -z "$container" ]; then
mount --bind /nix/store /nix/store
else
+16 -6
View File
@@ -194,9 +194,14 @@ in
default = "+${toString config.uid}";
type = lib.types.str;
description = ''
User name of created file.
Only takes effect when the file is copied (that is, the mode is not 'symlink').
Changing this option takes precedence over `uid`.
User name of file owner.
Only takes effect when the file is copied (that is, the
mode is not `symlink`).
When `services.userborn.enable`, this option has no effect.
You have to assign a `uid` instead. Otherwise this option
takes precedence over `uid`.
'';
};
@@ -204,9 +209,14 @@ in
default = "+${toString config.gid}";
type = lib.types.str;
description = ''
Group name of created file.
Only takes effect when the file is copied (that is, the mode is not 'symlink').
Changing this option takes precedence over `gid`.
Group name of file owner.
Only takes effect when the file is copied (that is, the
mode is not `symlink`).
When `services.userborn.enable`, this option has no effect.
You have to assign a `gid` instead. Otherwise this option
takes precedence over `gid`.
'';
};
+1
View File
@@ -165,6 +165,7 @@ in {
boot = handleTestOn ["x86_64-linux" "aarch64-linux"] ./boot.nix {};
bootspec = handleTestOn ["x86_64-linux"] ./bootspec.nix {};
boot-stage1 = handleTest ./boot-stage1.nix {};
boot-stage2 = handleTest ./boot-stage2.nix {};
borgbackup = handleTest ./borgbackup.nix {};
borgmatic = handleTest ./borgmatic.nix {};
botamusique = handleTest ./botamusique.nix {};
+73
View File
@@ -0,0 +1,73 @@
import ./make-test-python.nix (
{ pkgs, ... }:
{
name = "boot-stage2";
nodes.machine =
{
config,
pkgs,
lib,
...
}:
{
virtualisation = {
emptyDiskImages = [ 256 ];
# Mount an ext4 as the upper layer of the Nix store.
fileSystems = {
"/nix/store" = lib.mkForce {
device = "/dev/vdb"; # the above disk image
fsType = "ext4";
# data=journal always displays after errors=remount-ro; this is only needed because of the overlay
# and #375257 will trigger with `errors=remount-ro` on a non-overlaid store:
# see ordering in https://github.com/torvalds/linux/blob/v6.12/fs/ext4/super.c#L2974
options = [
"defaults"
"errors=remount-ro"
"data=journal"
];
};
};
};
boot = {
initrd = {
# Format the upper Nix store.
postDeviceCommands = ''
${pkgs.e2fsprogs}/bin/mkfs.ext4 /dev/vdb
'';
# Overlay the RO store onto it.
# Note that bug #375257 can be triggered without an overlay,
# using the errors=remount-ro option (or similar) or with an overlay where any of the
# paths ends in 'ro'. The offending mountpoint also has to be the last (top) one
# if an option ending in 'ro' is the last in the list, so test both cases here.
postMountCommands = ''
mkdir -p /mnt-root/nix/store/ro /mnt-root/nix/store/rw /mnt-root/nix/store/work
mount --bind /mnt-root/nix/.ro-store /mnt-root/nix/store/ro
mount -t overlay overlay \
-o lowerdir=/mnt-root/nix/store/ro,upperdir=/mnt-root/nix/store/rw,workdir=/mnt-root/nix/store/work \
/mnt-root/nix/store
'';
kernelModules = [ "overlay" ];
};
postBootCommands = ''
touch /etc/post-boot-ran
mount
'';
};
};
testScript = ''
machine.wait_for_unit("multi-user.target")
machine.succeed("test /etc/post-boot-ran")
machine.fail("touch /nix/store/should-not-work");
'';
meta.maintainers = with pkgs.lib.maintainers; [ numinit ];
}
)
+3 -3
View File
@@ -192,15 +192,15 @@ import ./make-test-python.nix (
machine.screenshot("sway_exit")
swaymsg("exec swaylock")
machine.wait_until_succeeds("pgrep -x swaylock")
machine.wait_until_succeeds("pgrep -xf swaylock")
machine.sleep(3)
machine.send_chars("${nodes.machine.config.users.users.alice.password}")
machine.send_key("ret")
machine.wait_until_fails("pgrep -x swaylock")
machine.wait_until_fails("pgrep -xf swaylock")
# Exit Sway and verify process exit status 0:
swaymsg("exit", succeed=False)
machine.wait_until_fails("pgrep -x sway")
machine.wait_until_fails("pgrep -xf sway")
machine.wait_for_file("/tmp/sway-exit-ok")
'';
}
+3 -3
View File
@@ -190,15 +190,15 @@ import ./make-test-python.nix (
machine.screenshot("sway_exit")
swaymsg("exec swaylock")
machine.wait_until_succeeds("pgrep -x swaylock")
machine.wait_until_succeeds("pgrep -xf swaylock")
machine.sleep(3)
machine.send_chars("${nodes.machine.users.users.alice.password}")
machine.send_key("ret")
machine.wait_until_fails("pgrep -x swaylock")
machine.wait_until_fails("pgrep -xf swaylock")
# Exit Sway and verify process exit status 0:
swaymsg("exit", succeed=False)
machine.wait_until_fails("pgrep -x sway")
machine.wait_until_fails("pgrep -xf sway")
machine.wait_for_file("/tmp/sway-exit-ok")
'';
}
@@ -12,17 +12,17 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "electrs";
version = "0.10.8";
version = "0.10.9";
src = fetchFromGitHub {
owner = "romanz";
repo = pname;
rev = "v${version}";
hash = "sha256-L26jzAn8vwnw9kFd6ciyYS/OLEFTbN8doNKy3P8qKRE=";
hash = "sha256-Xo7aqP4tIh/kYthPucscxnl+ZtVioEja4TTFdH0Q350=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-dqVnIiaGXnoKLvwQm/aiwSptKksikNGgAOu704rhDPA=";
cargoHash = "sha256-wDEtVsgkddGv89tTy96wYzNWVicn34Gxi+YAo7yAfQA=";
# needed for librocksdb-sys
nativeBuildInputs = [ rustPlatform.bindgenHook ];
@@ -60,7 +60,7 @@ buildDotnetModule (
installPhase = ''
runHook preInstall
dotnet tool install --tool-path $out/lib/${pname} ${nugetName}
dotnet tool install --tool-path $out/lib/${pname} ${nugetName} --version ${version}
# remove files that contain nix store paths to temp nuget sources we made
find $out -name 'project.assets.json' -delete
+3 -3
View File
@@ -8,7 +8,7 @@
}:
let
version = "0.2.71";
version = "0.2.72";
in
buildGoModule {
pname = "act";
@@ -18,10 +18,10 @@ buildGoModule {
owner = "nektos";
repo = "act";
tag = "v${version}";
hash = "sha256-ykZ6n9v56G5PZNTYdkGp8xveA7gzYhICkBoCCx3s0ew=";
hash = "sha256-7tllNoloKlwBYL4TQY0o2ojbCtT0zG9GrU3xeRJu298=";
};
vendorHash = "sha256-zCiqIl08s00U/DQkUhbb/qrjWof9xzBf4EznuvE4rlE=";
vendorHash = "sha256-Px+pftEqpf/JhN11vNxYWIKVhUsrtd+XLIDaEAJHkX0=";
doCheck = false;
+3 -3
View File
@@ -6,16 +6,16 @@
buildGoModule rec {
pname = "argo-rollouts";
version = "1.7.2";
version = "1.8.0";
src = fetchFromGitHub {
owner = "argoproj";
repo = "argo-rollouts";
rev = "v${version}";
sha256 = "sha256-KljhBI7vNqQVV0UeFRXfdan1gEiwS1CwokgWnJ1RR5Q=";
sha256 = "sha256-PjtuUlZ+qAnmXo4QDfgi8onJ6QVBHIj/wTothma5H88=";
};
vendorHash = "sha256-38BLPNc6en70+UxlldmrwtRTMRLh/fCPL6FtuA2ODGM=";
vendorHash = "sha256-ypx5DF24CQNHLAVlw59bSHK++LMyNgcXMn0qkTUh/qs=";
# Disable tests since some test fail because of missing test data
doCheck = false;
+2 -2
View File
@@ -9,13 +9,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "cpp-utilities";
version = "5.27.2";
version = "5.27.3";
src = fetchFromGitHub {
owner = "Martchus";
repo = "cpp-utilities";
rev = "v${finalAttrs.version}";
sha256 = "sha256-WdIXakivkeg98c3zDKUBlFIRcFo8iFHgFZVMIbkrR0g=";
sha256 = "sha256-/602rIjPZ6b9bMTpfjKz+XWpAlKoTHyCKUyGIA9qpto=";
};
nativeBuildInputs = [ cmake ];
+3 -3
View File
@@ -8,13 +8,13 @@
buildGoModule rec {
pname = "deck";
version = "1.42.1";
version = "1.43.1";
src = fetchFromGitHub {
owner = "Kong";
repo = "deck";
tag = "v${version}";
hash = "sha256-+HXTBTE8oEvyEwzwJbM0snVV0sKcKFHFnHB1iJ+4LJc=";
hash = "sha256-6GzO3FyrVyhggjPPOsdX7gnOddYpthNbxQPa8t8gvbM=";
};
nativeBuildInputs = [ installShellFiles ];
@@ -27,7 +27,7 @@ buildGoModule rec {
];
proxyVendor = true; # darwin/linux hash mismatch
vendorHash = "sha256-YFEiv+mbU8ZE9u1lL4cZUo+7sVSu9P1UEkuKyAGwlkg=";
vendorHash = "sha256-b1c6bazXENCsphxasKfS3pPhuYkZBXywxopWUiyxXeY=";
postInstall = ''
installShellCompletion --cmd deck \
+4 -4
View File
@@ -25,18 +25,18 @@
stdenv.mkDerivation rec {
pname = "diebahn";
version = "2.7.2";
version = "2.7.3";
src = fetchFromGitLab {
owner = "schmiddi-on-mobile";
repo = "railway";
tag = version;
hash = "sha256-jk2Pn/kqjMx5reMkIL8nLMWMZylwdoVq4FmnzaohnjU=";
hash = "sha256-PD76zxgQJ332MVu5LL9SNDrf66xmE/td4uDv/FYq0aU=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-WiFW+xz5kxFKe9y8vHaFD9xW7f9iHc9hyCBWW4uMquU=";
hash = "sha256-3+UTN0KKnbpPm948XW4NSZkMYJUv974VtTqtG8orR/E=";
};
nativeBuildInputs = [
@@ -83,7 +83,7 @@ stdenv.mkDerivation rec {
};
meta = {
changelog = "https://gitlab.com/schmiddi-on-mobile/railway/-/blob/${src.rev}/CHANGELOG.md";
changelog = "https://gitlab.com/schmiddi-on-mobile/railway/-/blob/${src.tag}/CHANGELOG.md";
description = "Travel with all your train information in one place. Also known as Railway";
homepage = "https://gitlab.com/schmiddi-on-mobile/railway";
license = lib.licenses.gpl3Plus;
+2 -2
View File
@@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "easyrsa";
version = "3.2.1";
version = "3.2.2";
src = fetchFromGitHub {
owner = "OpenVPN";
repo = "easy-rsa";
rev = "v${version}";
hash = "sha256-/c2Redb6whfM2D8hHBrcSaQ3YsBESLjeoKFb5a2lFbQ=";
hash = "sha256-gNuVijMAHVKEHU0Z6INKUZt68qSg5ssxSaXOH/+MU1I=";
};
nativeBuildInputs = [ makeWrapper ];
+5 -17
View File
@@ -1,11 +1,12 @@
{
fetchgit,
installShellFiles,
lib,
libftdi1,
libgpiod,
libjaylink,
libusb1,
meson,
ninja,
pciutils,
pkg-config,
stdenv,
@@ -24,9 +25,11 @@ stdenv.mkDerivation (finalAttrs: {
};
nativeBuildInputs = [
installShellFiles
meson
ninja
pkg-config
];
buildInputs =
[
libftdi1
@@ -42,21 +45,6 @@ stdenv.mkDerivation (finalAttrs: {
libgpiod
];
makeFlags =
let
yesNo = flag: if flag then "yes" else "no";
in
[
"libinstall"
"PREFIX=$(out)"
"CONFIG_JLINK_SPI=${yesNo withJlink}"
"CONFIG_LINUX_GPIO_SPI=${yesNo withGpio}"
"CONFIG_ENABLE_LIBPCI_PROGRAMMERS=${yesNo (!stdenv.hostPlatform.isDarwin)}"
"CONFIG_INTERNAL_X86=${yesNo (!(stdenv.hostPlatform.isDarwin) && stdenv.hostPlatform.isx86_64)}"
"CONFIG_INTERNAL_DMI=${yesNo (!(stdenv.hostPlatform.isDarwin) && stdenv.hostPlatform.isx86_64)}"
"CONFIG_RAYER_SPI=${yesNo (!(stdenv.hostPlatform.isDarwin) && stdenv.hostPlatform.isx86_64)}"
];
meta = with lib; {
homepage = "https://flashprog.org";
description = "Utility for reading, writing, erasing and verifying flash ROM chips";
+1 -1
View File
@@ -79,7 +79,7 @@ python.pkgs.buildPythonApplication rec {
substituteInPlace frigate/detectors/detector_config.py \
--replace-fail "/labelmap.txt" "${placeholder "out"}/share/frigate/labelmap.txt"
substituteInPlace frigate/output/birdseye.py \
substituteInPlace frigate/output/birdseye.py frigate/api/media.py \
--replace-fail "/opt/frigate/" "${placeholder "out"}/${python.sitePackages}/"
# work around onvif-zeep idiosyncrasy
+63
View File
@@ -0,0 +1,63 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
stdenv,
darwin,
c-ares,
python3,
lua5_4,
capnproto,
cmake,
}:
rustPlatform.buildRustPackage rec {
pname = "g3";
version = "v1.10.4";
src = fetchFromGitHub {
owner = "bytedance";
repo = "g3";
tag = "g3proxy-${version}";
hash = "sha256-uafKYyzjGdtC+oMJG1wWOvgkSht/wTOzyODcPoTfOnU=";
};
cargoHash = "sha256-NbrJGGnpZkF7ZX3MqrMsZ03tWkN/nqWahh00O3IJGOw=";
useFetchCargoVendor = true;
# TODO: can we unvendor AWS LC somehow?
buildFeatures = [
"vendored-aws-lc"
"rustls-aws-lc"
];
# aws-lc/crypto compilation will trigger `strictoverflow` errors.
hardeningDisable = [ "strictoverflow" ];
nativeBuildInputs = [
pkg-config
rustPlatform.bindgenHook
python3
capnproto
cmake
];
buildInputs =
[
c-ares
lua5_4
]
++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];
meta = {
description = "Enterprise-oriented Generic Proxy Solutions";
homepage = "https://github.com/bytedance/g3";
changelog = "https://github.com/bytedance/g3/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ raitobezarius ];
mainProgram = "g3proxy";
};
}
+64 -53
View File
@@ -1,65 +1,76 @@
{
lib,
fetchurl,
stdenv,
fetchFromGitHub,
flutter324,
autoPatchelfHook,
dpkg,
makeWrapper,
wrapGAppsHook3,
buildGoModule,
libayatana-appindicator,
libayatana-indicator,
libdbusmenu,
ayatana-ido,
zenity,
}:
stdenv.mkDerivation rec {
pname = "gopeed";
version = "1.6.6";
src = fetchurl {
url = "https://github.com/GopeedLab/gopeed/releases/download/v${version}/Gopeed-v${version}-linux-amd64.deb";
hash = "sha256-Q2eCOah5Pz5kOiHjvB0CzC0iL8m4XAjAJzYxQ+YyBoY=";
let
version = "1.6.8";
src = fetchFromGitHub {
owner = "GopeedLab";
repo = "gopeed";
tag = "v${version}";
hash = "sha256-Z6t652m420FcCK4V9sG9I+Dzc2OTyXwWunBhVSreyac=";
};
nativeBuildInputs = [
dpkg
autoPatchelfHook
wrapGAppsHook3
makeWrapper
];
buildInputs = [
libayatana-appindicator
libayatana-indicator
libdbusmenu
ayatana-ido
];
installPhase = ''
runHook preInstall
mkdir $out
cp -r opt $out/app
cp -r usr/share $out/share
runHook postInstall
'';
dontWrapGApps = true;
preFixup = ''
makeWrapper $out/app/gopeed/gopeed $out/bin/gopeed \
"''${gappsWrapperArgs[@]}" \
--prefix PATH : ${lib.makeBinPath [ zenity ]}
'';
meta = {
homepage = "https://gopeed.com";
description = "Modern download manager that supports all platforms. Built with Golang and Flutter";
mainProgram = "gopeed";
platforms = [ "x86_64-linux" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
metaCommon = {
description = "Modern download manager that supports all platforms";
homepage = "https://github.com/GopeedLab/gopeed";
license = with lib.licenses; [ gpl3Plus ];
maintainers = with lib.maintainers; [ ];
platforms = lib.platforms.linux;
};
libgopeed = buildGoModule {
inherit version src;
pname = "libgopeed";
vendorHash = "sha256-rJriTQF4tf7sZXcEDS6yZXk3xUI8Cav8OC7o4egpfIw=";
buildPhase = ''
runHook preBuild
mkdir -p $out/lib
go build -tags nosqlite -ldflags="-w -s -X github.com/GopeedLab/gopeed/pkg/base.Version=v${version}" -buildmode=c-shared -o $out/lib/libgopeed.so github.com/GopeedLab/gopeed/bind/desktop
runHook postBuild
'';
meta = metaCommon;
};
in
flutter324.buildFlutterApplication {
inherit version src libgopeed;
pname = "gopeed";
sourceRoot = "${src.name}/ui/flutter";
pubspecLock = lib.importJSON ./pubspec.lock.json;
gitHashes.permission_handler_windows = "sha256-MRTmuH0MfhGaMEb9bRotimAPRlFyl3ovtJUJ2WK7+DA=";
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs = [ libayatana-appindicator ];
preBuild = ''
mkdir -p linux/bundle/lib
cp ${libgopeed}/lib/libgopeed.so linux/bundle/lib/libgopeed.so
'';
postInstall = ''
install -Dm644 linux/assets/com.gopeed.Gopeed.desktop $out/share/applications/gopeed.desktop
install -Dm644 assets/icon/icon_512.png $out/share/icons/hicolor/512x512/apps/com.gopeed.Gopeed.png
install -Dm644 assets/icon/icon_1024.png $out/share/icons/hicolor/1024x1024/apps/com.gopeed.Gopeed.png
'';
passthru.updateScript = ./update.sh;
meta = metaCommon // {
mainProgram = "gopeed";
};
}
File diff suppressed because it is too large Load Diff
+20
View File
@@ -0,0 +1,20 @@
#!/usr/bin/env nix-shell
#!nix-shell -I nixpkgs=./. -i bash -p curl gnused jq yq nix bash coreutils nix-update
set -eou pipefail
ROOT="$(dirname "$(readlink -f "$0")")"
latestTag=$(curl ${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} -sL https://api.github.com/repos/GopeedLab/gopeed/releases/latest | jq --raw-output .tag_name)
latestVersion=$(echo "$latestTag" | sed 's/^v//')
currentVersion=$(nix-instantiate --eval -E "with import ./. {}; gopeed.version or (lib.getVersion gopeed)" | tr -d '"')
if [[ "$currentVersion" == "$latestVersion" ]]; then
echo "package is up-to-date: $currentVersion"
exit 0
fi
nix-update gopeed.libgopeed
curl https://raw.githubusercontent.com/GopeedLab/gopeed/${latestTag}/ui/flutter/pubspec.lock | yq . >$ROOT/pubspec.lock.json
+3 -3
View File
@@ -6,17 +6,17 @@
rustPlatform.buildRustPackage rec {
pname = "harper";
version = "0.18.0";
version = "0.18.1";
src = fetchFromGitHub {
owner = "Automattic";
repo = "harper";
rev = "v${version}";
hash = "sha256-phwFwrRuMPWPaPKi41G/YQfiRWFfNCir9478VrGckWI=";
hash = "sha256-UzsRiEYDKvOQR1jlD5KVZlJjhqzF1Digii85HI3vuOc=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-sbEky7mRPq7p9W+TXYE+3vGoZXP4NuC9dec3rTIxBPI=";
cargoHash = "sha256-TrABsTBO0Tn7V6Ev2GDsHguB792S7FSK3bBoi0JbhcI=";
meta = {
description = "Grammar Checker for Developers";
+3 -3
View File
@@ -8,17 +8,17 @@
rustPlatform.buildRustPackage rec {
pname = "hyprdim";
version = "3.0.0";
version = "3.0.1";
src = fetchFromGitHub {
owner = "donovanglover";
repo = "hyprdim";
rev = version;
hash = "sha256-+nzIDtRLVA6CgCtbyeR+TU5euSZQb7wi2187IxLrAmQ=";
hash = "sha256-o06HnN/E8QWRFOqd9Sxolm4g/fI5+6hYITptnRNAFag=";
};
useFetchCargoVendor = true;
cargoHash = "sha256-4EMzl0KGpDBGfHpHVx+7YwEti+DLUjPEipkRmzK+dyM=";
cargoHash = "sha256-8xbmVQHMXs9rq4iP5Svx2Zdg/B9WuZuq+hKsokk2m78=";
nativeBuildInputs = [ installShellFiles ];
+5 -5
View File
@@ -1,7 +1,7 @@
{
"branch": "v0.47.1-b",
"commit_hash": "75dff7205f6d2bd437abfb4196f700abee92581a",
"commit_message": "version: bump to 0.47.1",
"date": "2025-01-29",
"tag": "v0.47.1"
"branch": "v0.47.2-b",
"commit_hash": "882f7ad7d2bbfc7440d0ccaef93b1cdd78e8e3ff",
"commit_message": "version: bump to 0.47.2",
"date": "2025-02-02",
"tag": "v0.47.2"
}
+2 -2
View File
@@ -86,14 +86,14 @@ assert assertMsg (!hidpiXWayland)
customStdenv.mkDerivation (finalAttrs: {
pname = "hyprland" + optionalString debug "-debug";
version = "0.47.1";
version = "0.47.2";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "hyprland";
fetchSubmodules = true;
tag = "v${finalAttrs.version}";
hash = "sha256-374Ul6LCnuDdZ7o1xl2lDxTfmwt46K6csf6eniqFRYA=";
hash = "sha256-dSKR1VpjpdJVZ5dmLgIvAu3K+DYrSbohZkqxSQhjw8U=";
};
postPatch = ''
+14 -22
View File
@@ -4,7 +4,6 @@
cargo,
cmake,
fetchFromGitHub,
fetchpatch,
go,
lib,
libcap,
@@ -23,27 +22,15 @@
stdenv.mkDerivation (finalAttrs: {
pname = "mozillavpn";
version = "2.24.3";
version = "2.25.0";
src = fetchFromGitHub {
owner = "mozilla-mobile";
repo = "mozilla-vpn-client";
rev = "v${finalAttrs.version}";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-GRt0diDt8bEeMfDwiEtYyR+20/bJAVcDal9eGfvk340=";
hash = "sha256-XunvADSdLA6jFVjXTAtmYvC1i5ZE7WYaCTvlAd8C1ko=";
};
patches = [
# Fix build errors from deprecated `QByteArray::count()`, `QVariant::type()`, `QEventPoint::pos()` (#9961)
(fetchpatch {
url = "https://github.com/mozilla-mobile/mozilla-vpn-client/commit/b4077b9927d9208118e81694dce490dac2f0e76f.patch";
hash = "sha256-Vx7aHEBxubthqsmH37ZZDJDPI9jE9vS/p+JNJP6eUlI=";
})
# Re:#9966 Fix Crash in MZFlickable
(fetchpatch {
url = "https://github.com/mozilla-mobile/mozilla-vpn-client/pull/9984/commits/485a2ad8feab6b1dee7c672ce03736d819fd9d37.patch";
includes = [ "nebula/ui/components/MZFlickable.qml" ];
hash = "sha256-fnOXBTsuQC3kqAvHgoJ7rRGX5ra0R/MO8M9Ysys/l7Q=";
})
];
patches = [ ];
netfilter = buildGoModule {
pname = "${finalAttrs.pname}-netfilter";
@@ -58,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
cargoDeps = rustPlatform.fetchCargoVendor {
inherit (finalAttrs) src patches;
hash = "sha256-EUD6eAhe5Qjom60EZ9LTRmBsfDyIJV1Kx7PBU4ikR0w=";
hash = "sha256-HaOqhjDodn9z0XQMsxJAMKrs1s7l2cJCIzHECjwnA5A=";
};
buildInputs = [
@@ -89,13 +76,18 @@ stdenv.mkDerivation (finalAttrs: {
];
postPatch = ''
substituteInPlace scripts/cmake/addons.cmake \
--replace-fail 'set(ADDON_BUILD_ARGS ' 'set(ADDON_BUILD_ARGS -q ${qt6.qttools.dev}/bin '
substituteInPlace src/cmake/linux.cmake \
--replace '/etc/xdg/autostart' "$out/etc/xdg/autostart" \
--replace '/usr/share/dbus-1' "$out/share/dbus-1" \
--replace '${"$"}{SYSTEMD_UNIT_DIR}' "$out/lib/systemd/system"
--replace-fail '/usr/share/dbus-1' "$out/share/dbus-1" \
--replace-fail '${"$"}{SYSTEMD_UNIT_DIR}' "$out/lib/systemd/system"
substituteInPlace extension/CMakeLists.txt \
--replace '/etc' "$out/etc"
--replace-fail '/etc' "$out/etc"
substituteInPlace extension/socks5proxy/bin/CMakeLists.txt \
--replace-fail '${"$"}{SYSTEMD_UNIT_DIR}' "$out/lib/systemd/system"
ln -s '${finalAttrs.netfilter.goModules}' linux/netfilter/vendor
'';
+2 -2
View File
@@ -18,13 +18,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "mympd";
version = "19.0.3";
version = "20.0.0";
src = fetchFromGitHub {
owner = "jcorporation";
repo = "myMPD";
rev = "v${finalAttrs.version}";
sha256 = "sha256-aNb/zM/KF46XDV0GjQfm2XvkbToJZf6ZdwK1E1ShA+o=";
sha256 = "sha256-+j6Y1Z17fJkH4KQyC1gjZeWhFRwHpCGcLQC2hOmIZ2A=";
};
nativeBuildInputs = [
+3 -3
View File
@@ -19,14 +19,14 @@
}:
stdenv.mkDerivation rec {
version = "2024-10-01";
version = "2025-01-30";
pname = "oh-my-zsh";
src = fetchFromGitHub {
owner = "ohmyzsh";
repo = "ohmyzsh";
rev = "f4423ebd09fbc7670815c3c20cc86c81b7319e5f";
sha256 = "sha256-JlYgWssS1DT1/Jlk6fOZqyEr6ta3ky6tlDqDZbJ1A9k=";
rev = "1c34b0e67d4f1dff36a079f31d7dafe8bcf92f6e";
sha256 = "sha256-+y8fN1A+wb24H4s/KJ8VpuauCvwoItoruDwXlIw8ed4=";
};
strictDeps = true;
+3 -3
View File
@@ -16,13 +16,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "renovate";
version = "39.137.1";
version = "39.153.1";
src = fetchFromGitHub {
owner = "renovatebot";
repo = "renovate";
tag = finalAttrs.version;
hash = "sha256-E3J+jEd21j5r4iaa4D2mNbWcwfwyzcaHTHiD3jBVXlQ=";
hash = "sha256-QKCUHwm6c50wTDFbmAqhh/tV8Lzx9HD4U9k7ke6t8OE=";
};
postPatch = ''
@@ -40,7 +40,7 @@ stdenv.mkDerivation (finalAttrs: {
pnpmDeps = pnpm_9.fetchDeps {
inherit (finalAttrs) pname version src;
hash = "sha256-ljhRpFMafpB0xbmGVoh8Icwm0c0dr7JPqAA/6sln03w=";
hash = "sha256-MTkbRQnimEXP4XepJ+x2KGHtJTkqN9WBWvisAHH/j18=";
};
env.COREPACK_ENABLE_STRICT = 0;
+5 -9
View File
@@ -3,22 +3,18 @@
fetchFromGitHub,
lib,
}:
let
version = "16.14.0";
in
buildNpmPackage {
buildNpmPackage rec {
pname = "stylelint";
inherit version;
version = "16.14.1";
src = fetchFromGitHub {
owner = "stylelint";
repo = "stylelint";
rev = version;
hash = "sha256-AAlo8fGUH+jvUsB66cztLDyKA7j25ZWH0BIM7iiyp+c=";
tag = version;
hash = "sha256-VBr/16r/hpHRTMwndsklCo/9V8lb0NI/MSgOyEM7TYI=";
};
npmDepsHash = "sha256-FT6UctAsUP9KTSWENutibhyXjZHOT7t93z90XCAIuv4=";
npmDepsHash = "sha256-2D4uaZk3OAruFRucjSroMnGBWWnOxm+r7WndmPPbNv0=";
dontNpmBuild = true;
+34 -8
View File
@@ -1,7 +1,18 @@
{ lib, stdenv, fetchFromGitHub
, meson, ninja, pkg-config, scdoc
, wayland, wayland-protocols, cairo, gdk-pixbuf
, wayland-scanner
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
pkg-config,
scdoc,
wayland,
wayland-protocols,
cairo,
gdk-pixbuf,
wayland-scanner,
wrapGAppsNoGuiHook,
librsvg
}:
stdenv.mkDerivation rec {
@@ -11,17 +22,32 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "swaywm";
repo = "swaybg";
rev = "v${version}";
tag = "v${version}";
hash = "sha256-IJcPSBJErf8Dy9YhYAc9eg/llgaaLZCQSB0Brof+kpg=";
};
strictDeps = true;
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-scanner ];
buildInputs = [ wayland wayland-protocols cairo gdk-pixbuf ];
nativeBuildInputs = [
meson
ninja
pkg-config
scdoc
wayland-scanner
wrapGAppsNoGuiHook
gdk-pixbuf
];
buildInputs = [
wayland
wayland-protocols
cairo
gdk-pixbuf
librsvg
];
mesonFlags = [
"-Dgdk-pixbuf=enabled" "-Dman-pages=enabled"
"-Dgdk-pixbuf=enabled"
"-Dman-pages=enabled"
];
meta = with lib; {
+39 -7
View File
@@ -1,6 +1,20 @@
{ lib, stdenv, fetchFromGitHub
, meson, ninja, pkg-config, scdoc, wayland-scanner
, wayland, wayland-protocols, libxkbcommon, cairo, gdk-pixbuf, pam
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
pkg-config,
scdoc,
wayland-scanner,
wayland,
wayland-protocols,
libxkbcommon,
cairo,
gdk-pixbuf,
pam,
wrapGAppsNoGuiHook,
librsvg
}:
stdenv.mkDerivation rec {
@@ -10,17 +24,35 @@ stdenv.mkDerivation rec {
src = fetchFromGitHub {
owner = "swaywm";
repo = "swaylock";
rev = "v${version}";
tag = "v${version}";
hash = "sha256-1+AXxw1gH0SKAxUa0JIhSzMbSmsfmBPCBY5IKaYtldg=";
};
strictDeps = true;
depsBuildBuild = [ pkg-config ];
nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-scanner ];
buildInputs = [ wayland wayland-protocols libxkbcommon cairo gdk-pixbuf pam ];
nativeBuildInputs = [
meson
ninja
pkg-config
scdoc
wayland-scanner
wrapGAppsNoGuiHook
gdk-pixbuf
];
buildInputs = [
wayland
wayland-protocols
libxkbcommon
cairo
gdk-pixbuf
pam
librsvg
];
mesonFlags = [
"-Dpam=enabled" "-Dgdk-pixbuf=enabled" "-Dman-pages=enabled"
"-Dpam=enabled"
"-Dgdk-pixbuf=enabled"
"-Dman-pages=enabled"
];
meta = with lib; {
+3 -3
View File
@@ -7,13 +7,13 @@
buildGoModule rec {
pname = "terragrunt";
version = "0.72.2";
version = "0.72.6";
src = fetchFromGitHub {
owner = "gruntwork-io";
repo = pname;
tag = "v${version}";
hash = "sha256-SX7y4YLKehyz0vutNDWCBF9w20xW1EuDBaAkqENNTJ0=";
hash = "sha256-dlEyeDh5OkERboEUPhe/jYYEc7jnGZL6PhW9Tu6vxcs=";
};
nativeBuildInputs = [ go-mockery ];
@@ -22,7 +22,7 @@ buildGoModule rec {
make generate-mocks
'';
vendorHash = "sha256-a+nsbgAUgC7d8Nqexzubbx9CqK3o+TJbO+FJH3Fr2Js=";
vendorHash = "sha256-hgjVmbM0qh8o1e2UaU9Q0GURzC8XPthLAuXZ+eCuflU=";
doCheck = false;
+6 -6
View File
@@ -6,7 +6,7 @@
stdenv.mkDerivation rec {
pname = "vault-bin";
version = "1.18.3";
version = "1.18.4";
src =
let
@@ -20,11 +20,11 @@ stdenv.mkDerivation rec {
aarch64-darwin = "darwin_arm64";
};
hash = selectSystem {
x86_64-linux = "sha256-pELGadExnOMVC+BZMk6vmth6cN2f0DdVz8gQmaHDv8Y=";
aarch64-linux = "sha256-53LGpPcJUz+1Dw8UKE5tX6VGMJc4LfXw2MaiKKfYbvI=";
i686-linux = "sha256-3SEw3iOEYC/HopzvjJNXgtYZhpSag1lgsmsq7goyZDs=";
x86_64-darwin = "sha256-Bz0mhmFOfJL3m1qX7lmLHNGuZCkyKXu14X523M9Dp0Q=";
aarch64-darwin = "sha256-GM6pN4cngjt7dhF5mNqeoygS4+fkCjsCGyxo/IEaMWs=";
x86_64-linux = "sha256-rQXtyxaM1OOF54kIeIWHEwaXYbJyHhuruH+kOSZ/6zc=";
aarch64-linux = "sha256-Bqg3UE8CXplJiYK9YKwAy88unZWmWus5IgQS4Bh0ODA=";
i686-linux = "sha256-qVEueQ00gqAEbOI4ThcU7vZu8TL4oeBDarOtOkSaGvY=";
x86_64-darwin = "sha256-tCTnOHmLaa2uTOr9ju0QHN/LexAoBlCUMrEXPLc2LJ4=";
aarch64-darwin = "sha256-sbwVOxMNCq1wcAT4PcDlu9HEsrPphLE2L87zZqfAg8M=";
};
in
fetchzip {
+3 -3
View File
@@ -12,16 +12,16 @@
buildGoModule rec {
pname = "vault";
version = "1.18.3";
version = "1.18.4";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "vault";
rev = "v${version}";
hash = "sha256-DwwKxTjwY6CKN4RPRJFxgdTdGYeG4A7lYk7iZFC9SbY=";
hash = "sha256-lGca4156jcAfm9ohTus/yhpu4XhGxKW5bZqZ3CCMY7o=";
};
vendorHash = "sha256-nrQIlenyXCCfjIyJT6whmWwzUmHl+rwFeyI2LiIxHkk=";
vendorHash = "sha256-KrfXM9jDRpJCzEsLXYCcKbQM4qnFQejslLdNmcvgDlg=";
proxyVendor = true;
+56
View File
@@ -0,0 +1,56 @@
{
lib,
fetchFromGitHub,
rustPlatform,
pkg-config,
openssl,
nix-update-script,
versionCheckHook,
}:
let
version = "0.16.0";
in
rustPlatform.buildRustPackage {
pname = "yek";
version = version;
src = fetchFromGitHub {
owner = "bodo-run";
repo = "yek";
tag = "v${version}";
hash = "sha256-dboKZuY6mlFZu/xCoLXFJ4ARXyYs5/yOYeGkAnUKRX4=";
};
cargoHash = "sha256-3+jTzYwu9eHji8o4abLiiJGXtZYPfXtXeiZEZajxrVo=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
env.OPENSSL_NO_VENDOR = 1;
checkFlags = [
# Tests with git fail
"--skip=e2e_tests::test_git_boost_config"
"--skip=e2e_tests::test_git_integration"
"--skip=lib_tests::test_serialize_repo_with_git"
"--skip=priority_tests::test_get_recent_commit_times_empty_repo"
"--skip=priority_tests::test_get_recent_commit_times_with_git"
"--skip=priority_tests::test_get_recent_commit_times_git_failure"
];
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Serialize text files for LLM consumption";
longDescription = ''
Tool to read text-based files, chunk them, and serialize them for LLM consumption.
'';
homepage = "https://github.com/bodo-run/yek";
changelog = "https://github.com/bodo-run/yek/releases/tag/v${version}";
license = lib.licenses.mit;
mainProgram = "yek";
maintainers = with lib.maintainers; [ louis-thevenet ];
};
}
+3 -3
View File
@@ -95,7 +95,7 @@ let
in
rustPlatform.buildRustPackage rec {
pname = "zed-editor";
version = "0.171.4";
version = "0.171.6";
outputs = [ "out" ] ++ lib.optional buildRemoteServer "remote_server";
@@ -103,7 +103,7 @@ rustPlatform.buildRustPackage rec {
owner = "zed-industries";
repo = "zed";
tag = "v${version}";
hash = "sha256-DeZHXU106uqCyqjdF+rMdnFifra9ug9Dzosg+PcD8Nw=";
hash = "sha256-OQE/6bNGogcDpZOEUXq33E98/t1HKelTTX48X4wo2MI=";
};
patches = [
@@ -123,7 +123,7 @@ rustPlatform.buildRustPackage rec {
'';
useFetchCargoVendor = true;
cargoHash = "sha256-uB6CM3KSr57sfbh81rXBhNq8LChme5+WHVIjwZrSso4=";
cargoHash = "sha256-lucQTqTc63a3HvqwWVosqxMzy4TgC+Mj77rFzVbwBR8=";
nativeBuildInputs =
[
@@ -3,6 +3,7 @@
stdenv,
enableMultilib,
targetConfig,
withoutTargetLibc,
}:
let
@@ -314,4 +315,7 @@ originalAttrs:
done
'';
}
// lib.optionalAttrs ((stdenv.targetPlatform.config != stdenv.hostPlatform.config) && withoutTargetLibc) {
dontCheckForBrokenSymlinks = true;
}
))
@@ -207,10 +207,9 @@ in
...
}@attrs:
assert (pyproject != null) -> (format == null);
let
format' =
assert (pyproject != null) -> (format == null);
if pyproject != null then
if pyproject then "pyproject" else "other"
else if format != null then
@@ -276,6 +275,7 @@ let
# Keep extra attributes from `attrs`, e.g., `patchPhase', etc.
self = toPythonModule (
stdenv.mkDerivation (
finalAttrs:
(cleanAttrs attrs)
// {
@@ -402,13 +402,12 @@ let
{
inherit disabled;
}
// attrs.passthru or { }
// {
updateScript =
let
filename = head (splitString ":" self.meta.position);
filename = head (splitString ":" finalAttrs.finalPackage.meta.position);
in
attrs.passthru.updateScript or [
[
update-python-libraries
filename
];
@@ -421,7 +420,8 @@ let
}
// optionalAttrs (build-system != [ ]) {
inherit build-system;
};
}
// attrs.passthru or { };
meta = {
# default to python's platforms
@@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "qtutilities";
version = "6.14.5";
version = "6.14.6";
src = fetchFromGitHub {
owner = "Martchus";
repo = "qtutilities";
rev = "v${finalAttrs.version}";
hash = "sha256-jjrmagznL0N9vCtLN6tMeierIjI9Q5JGJLYIimQO3ts=";
hash = "sha256-A61X6WKrP7CVgcRyB6phrVQo/B9VESRo0xTZV49KA3M=";
};
nativeBuildInputs = [
@@ -39,7 +39,10 @@ buildPythonPackage rec {
hash = "sha256-pZhHlNcQJLBww7ur2Z6Yb2IdbRsBtjzQAzfa4UzGKt4=";
};
pythonRelaxDeps = [ "pydantic" ];
pythonRelaxDeps = [
"pydantic"
"numpy"
];
nativeBuildInputs = [
poetry-core
@@ -2,7 +2,6 @@
lib,
buildPythonPackage,
fetchFromGitHub,
pythonRelaxDepsHook,
pytestCheckHook,
poetry-core,
poetry-dynamic-versioning,
@@ -43,6 +42,7 @@ buildPythonPackage rec {
"protobuf"
"python-bidi"
"youseedee"
"unicodedata2"
];
build-system = [
@@ -2,6 +2,7 @@
lib,
buildPythonPackage,
fetchFromGitHub,
fetchpatch2,
pytestCheckHook,
fontmath,
fonttools,
@@ -26,6 +27,16 @@ buildPythonPackage rec {
hash = "sha256-ZlK8QyZ5cIEphFiZXMV/Z5pL9H62X2UwLBtpwLGpUMQ=";
};
patches = [
# Update to FontTools 4.55 and glyphsLib 6.9.5
# https://github.com/googlefonts/fontmake/pull/1133
(fetchpatch2 {
url = "https://github.com/googlefonts/fontmake/commit/ca96d25faa67638930ddc7f9bd1ab218a76caf22.patch";
includes = [ "tests/test_main.py" ];
hash = "sha256-vz+KeWiGCpUdX5HaXDdyyUCbuMkIylB364j6cD7xR1E=";
})
];
build-system = [
setuptools
setuptools-scm
@@ -112,6 +112,10 @@ buildPythonPackage rec {
dontBypassPoetryDynamicVersioning = true;
env.POETRY_DYNAMIC_VERSIONING_BYPASS = lib.head (lib.strings.splitString "-" version);
pythonRelaxDeps = [
"toolz"
];
dependencies = [
atpublic
parsy
@@ -25,9 +25,13 @@ buildPythonPackage rec {
hash = "sha256-/3xRPrKzYAdSlY+sQxwCUzKhf3NJBSyWG2Q0ZKb6v3U=";
};
nativeBuildInputs = [ poetry-core ];
build-system = [ poetry-core ];
propagatedBuildInputs = [
pythonRelaxDeps = [
"numpy"
];
dependencies = [
dataprep-ml
numpy
pandas
@@ -0,0 +1,51 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
setuptools-scm,
numpy,
pint,
xarray,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "pint-xarray";
version = "0.4";
pyproject = true;
src = fetchFromGitHub {
owner = "xarray-contrib";
repo = "pint-xarray";
tag = "v${version}";
hash = "sha256-IFHSgrnqS7ZpNhRzzSgHPRUP90WNv84jBH4um/DRMCU=";
};
build-system = [
setuptools
setuptools-scm
];
dependencies = [
numpy
pint
xarray
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"pint_xarray"
];
meta = {
description = "Interface for using pint with xarray, providing convenience accessors";
homepage = "https://github.com/xarray-contrib/pint-xarray";
changelog = "https://github.com/xarray-contrib/pint-xarray/blob/v${version}/docs/whats-new.rst";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ doronbehar ];
};
}
@@ -48,6 +48,7 @@ buildPythonPackage rec {
pythonRelaxDeps = [
"psutil"
"py3langid"
"numpy"
];
build-system = [ poetry-core ];
+3 -3
View File
@@ -18,20 +18,20 @@ let
in
python3.pkgs.buildPythonApplication rec {
pname = "matrix-synapse";
version = "1.122.0";
version = "1.123.0";
format = "pyproject";
src = fetchFromGitHub {
owner = "element-hq";
repo = "synapse";
rev = "v${version}";
hash = "sha256-pucGVKEjQNihlHmFxhgJSiX7sxpQYrCpSwhZByBtbe8=";
hash = "sha256-fbT0DMz6F76e/IRb0e1nFEOxmtIDQ53it8zi88jiUDU=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit src;
name = "${pname}-${version}";
hash = "sha256-1BFVW89+1js5mn/EPxkuHaUfkFn/dNlMlH1pN2lDcwE=";
hash = "sha256-Lfs7myNxWoPZI4USoK+aaTPLjT2EoEvnVnXFwdcKofE=";
};
postPatch = ''
@@ -116,6 +116,8 @@ in {
tsja = super.callPackage ./tsja.nix { };
wal2json = super.callPackage ./wal2json.nix { };
pgddl = super.callPackage ./pgddl.nix {};
} // lib.optionalAttrs config.allowAliases {
pg_embedding = throw "PostgreSQL extension `pg_embedding` has been removed since the project has been abandoned. Upstream's recommendation is to use pgvector instead (https://neon.tech/docs/extensions/pg_embedding#migrate-from-pg_embedding-to-pgvector)";
}
+52
View File
@@ -0,0 +1,52 @@
{
lib,
fetchFromGitHub,
postgresql,
buildPostgresqlExtension,
postgresqlTestExtension,
perl,
}:
buildPostgresqlExtension (finalAttrs: {
pname = "pgddl";
version = "0.29";
src = fetchFromGitHub {
owner = "lacanoid";
repo = "pgddl";
tag = finalAttrs.version;
hash = "sha256-W3G6TGtkj+zXXdGZZR0bmZhsLuFJvuGTlDoo8kL8sf0=";
};
strictDeps = true;
nativeBuildInputs = [
postgresql
perl
];
preBuild = ''
patchShebangs --build ./bin/ ./docs
'';
passthru.tests.extension = postgresqlTestExtension {
inherit (finalAttrs) finalPackage;
sql = ''
CREATE EXTENSION ddlx;
CREATE TABLE a(i int PRIMARY KEY, j int);
SELECT ddlx_create('a'::regclass);
SELECT ddlx_drop('a'::regclass);
SELECT ddlx_script('a'::regclass);
'';
};
meta = {
description = "DDL eXtractor functions for PostgreSQL";
homepage = "https://github.com/lacanoid/pgddl";
changelog = "https://github.com/lacanoid/pgddl/releases/tag/${finalAttrs.version}";
platforms = postgresql.meta.platforms;
maintainers = [ lib.maintainers.joshainglis ];
license = lib.licenses.postgresql;
};
})
+2
View File
@@ -10495,6 +10495,8 @@ self: super: with self; {
pint-pandas = callPackage ../development/python-modules/pint-pandas { };
pint-xarray = callPackage ../development/python-modules/pint-xarray { };
pip = callPackage ../development/python-modules/pip { };
pipdate = callPackage ../development/python-modules/pipdate { };