Merge remote-tracking branch 'origin/staging-next' into staging
This commit is contained in:
@@ -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).
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -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}"
|
||||
])
|
||||
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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`.
|
||||
'';
|
||||
};
|
||||
|
||||
|
||||
@@ -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 {};
|
||||
|
||||
@@ -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 ];
|
||||
}
|
||||
)
|
||||
@@ -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")
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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 \
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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";
|
||||
};
|
||||
}
|
||||
@@ -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
Executable
+20
@@ -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
|
||||
@@ -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";
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
|
||||
@@ -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 = ''
|
||||
|
||||
@@ -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
|
||||
'';
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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; {
|
||||
|
||||
@@ -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; {
|
||||
|
||||
@@ -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,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 {
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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 ];
|
||||
};
|
||||
}
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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)";
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
})
|
||||
@@ -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 { };
|
||||
|
||||
Reference in New Issue
Block a user