Merge master into staging-nixos
This commit is contained in:
@@ -957,6 +957,7 @@
|
||||
./services/misc/servarr/sonarr.nix
|
||||
./services/misc/servarr/whisparr.nix
|
||||
./services/misc/serviio.nix
|
||||
./services/misc/shelfmark.nix
|
||||
./services/misc/shoko.nix
|
||||
./services/misc/sickbeard.nix
|
||||
./services/misc/snapper.nix
|
||||
|
||||
@@ -0,0 +1,131 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.services.shelfmark;
|
||||
in
|
||||
{
|
||||
options.services.shelfmark = {
|
||||
|
||||
enable = lib.mkEnableOption "Shelfmark, a self-hosted book and audiobook search and download interface";
|
||||
|
||||
package = lib.mkPackageOption pkgs "shelfmark" { };
|
||||
|
||||
openFirewall = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = "Open the appropriate ports in the firewall for Shelfmark.";
|
||||
};
|
||||
|
||||
environment = lib.mkOption {
|
||||
type = lib.types.submodule {
|
||||
freeformType = lib.types.attrsOf lib.types.str;
|
||||
options = {
|
||||
FLASK_HOST = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "127.0.0.1";
|
||||
example = "0.0.0.0";
|
||||
description = "The IP address to bind the Shelfmark server to.";
|
||||
};
|
||||
|
||||
FLASK_PORT = lib.mkOption {
|
||||
type = lib.types.port;
|
||||
default = 8084;
|
||||
apply = toString;
|
||||
description = "TCP port for the Shelfmark web interface.";
|
||||
};
|
||||
|
||||
ENABLE_LOGGING = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
apply = toString;
|
||||
default = false;
|
||||
description = "Whether to enable file logging. Disabled by default since systemd captures console output via journald.";
|
||||
};
|
||||
|
||||
CONFIG_DIR = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
default = "/var/lib/shelfmark";
|
||||
description = "Directory for Shelfmark configuration, database, and artwork cache.";
|
||||
};
|
||||
};
|
||||
};
|
||||
default = { };
|
||||
example = {
|
||||
SEARCH_MODE = "universal";
|
||||
LOG_LEVEL = "DEBUG";
|
||||
};
|
||||
description = ''
|
||||
Environment variables to pass to the Shelfmark service.
|
||||
See <https://github.com/calibrain/shelfmark/blob/main/docs/environment-variables.md>
|
||||
for available options.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
systemd.services.shelfmark = {
|
||||
description = "Shelfmark - book and audiobook search and download interface";
|
||||
after = [ "network-online.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
inherit (cfg) environment;
|
||||
serviceConfig = {
|
||||
DynamicUser = true;
|
||||
ExecStart = "${lib.getExe cfg.package} -b ${cfg.environment.FLASK_HOST}:${cfg.environment.FLASK_PORT}";
|
||||
StateDirectory = "shelfmark";
|
||||
|
||||
ProtectSystem = "strict";
|
||||
ProtectHome = true;
|
||||
PrivateTmp = true;
|
||||
PrivateDevices = true;
|
||||
PrivateMounts = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectKernelTunables = true;
|
||||
RestrictSUIDSGID = true;
|
||||
RemoveIPC = true;
|
||||
UMask = "0077";
|
||||
|
||||
CapabilityBoundingSet = [ "" ];
|
||||
NoNewPrivileges = true;
|
||||
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectClock = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = [
|
||||
"@system-service"
|
||||
"~@privileged"
|
||||
"~@resources"
|
||||
];
|
||||
|
||||
RestrictAddressFamilies = [
|
||||
"AF_INET"
|
||||
"AF_INET6"
|
||||
"AF_UNIX"
|
||||
];
|
||||
|
||||
PrivateUsers = true;
|
||||
|
||||
LockPersonality = true;
|
||||
ProtectHostname = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictNamespaces = true;
|
||||
ProtectProc = "invisible";
|
||||
ProcSubset = "pid";
|
||||
DeviceAllow = [ "" ];
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall = lib.mkIf cfg.openFirewall {
|
||||
allowedTCPPorts = [ (lib.toInt cfg.environment.FLASK_PORT) ];
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
maintainers = with lib.maintainers; [ jamiemagee ];
|
||||
};
|
||||
}
|
||||
@@ -7,6 +7,9 @@
|
||||
|
||||
let
|
||||
cfg = config.virtualisation.incus;
|
||||
|
||||
acmeHostDir = config.security.acme.certs."${cfg.useACMEHost}".directory;
|
||||
|
||||
preseedFormat = pkgs.formats.yaml { };
|
||||
|
||||
nvidiaEnabled = (lib.elem "nvidia" config.services.xserver.videoDrivers);
|
||||
@@ -292,6 +295,17 @@ in
|
||||
|
||||
package = lib.mkPackageOption pkgs [ "incus-ui-canonical" ] { };
|
||||
};
|
||||
useACMEHost = lib.mkOption {
|
||||
type = lib.types.nullOr lib.types.str;
|
||||
default = null;
|
||||
example = "incus.example.com";
|
||||
description = ''
|
||||
Host of an existing Let's Encrypt certificate to use for TLS.
|
||||
*Note that this option does not create any certificates and it
|
||||
doesn't add subdomains to existing ones – you will need to create
|
||||
them manually using {option}`security.acme.certs`.*
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -391,6 +405,10 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
security.acme.certs = lib.mkIf (cfg.useACMEHost != null) {
|
||||
"${cfg.useACMEHost}".reloadServices = [ "incus.service" ];
|
||||
};
|
||||
|
||||
systemd.services.incus = {
|
||||
description = "Incus Container and Virtual Machine Management Daemon";
|
||||
|
||||
@@ -402,7 +420,8 @@ in
|
||||
"lxcfs.service"
|
||||
"incus.socket"
|
||||
]
|
||||
++ lib.optionals config.virtualisation.vswitch.enable [ "ovs-vswitchd.service" ];
|
||||
++ lib.optionals config.virtualisation.vswitch.enable [ "ovs-vswitchd.service" ]
|
||||
++ lib.optionals (cfg.useACMEHost != null) [ "acme-${cfg.useACMEHost}.service" ];
|
||||
|
||||
requires = [
|
||||
"lxcfs.service"
|
||||
@@ -410,7 +429,10 @@ in
|
||||
]
|
||||
++ lib.optionals config.virtualisation.vswitch.enable [ "ovs-vswitchd.service" ];
|
||||
|
||||
wants = [ "network-online.target" ];
|
||||
wants = [
|
||||
"network-online.target"
|
||||
]
|
||||
++ lib.optionals (cfg.useACMEHost != null) [ "acme-${cfg.useACMEHost}.service" ];
|
||||
|
||||
serviceConfig = {
|
||||
ExecStart = "${cfg.package}/bin/incusd --group incus-admin";
|
||||
@@ -427,6 +449,11 @@ in
|
||||
Restart = "on-failure";
|
||||
TimeoutStartSec = "${cfg.startTimeout}s";
|
||||
TimeoutStopSec = "30s";
|
||||
|
||||
BindReadOnlyPaths = lib.mkIf (cfg.useACMEHost != null) [
|
||||
"${acmeHostDir}/fullchain.pem:/var/lib/incus/server.crt"
|
||||
"${acmeHostDir}/key.pem:/var/lib/incus/server.key"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -1461,6 +1461,7 @@ in
|
||||
shadps4 = runTest ./shadps4.nix;
|
||||
sharkey = runTest ./web-apps/sharkey.nix;
|
||||
shattered-pixel-dungeon = runTest ./shattered-pixel-dungeon.nix;
|
||||
shelfmark = runTest ./shelfmark.nix;
|
||||
shiori = runTest ./shiori.nix;
|
||||
shoko = import ./shoko.nix { inherit runTest; };
|
||||
signal-desktop = runTest ./signal-desktop.nix;
|
||||
|
||||
@@ -86,7 +86,7 @@ in
|
||||
''
|
||||
def curl(command: str, proxy: bool = False):
|
||||
if proxy:
|
||||
command = "curl --proxy 127.0.0.1:8080 --cacert ~/.mitmproxy/mitmproxy-ca-cert.pem " + command
|
||||
command = "curl --proxy 127.0.0.1:8080 --cacert ~/.mitmproxy/mitmproxy-ca.pem " + command
|
||||
else:
|
||||
command = "curl " + command
|
||||
return machine.succeed(command)
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
{ lib, ... }:
|
||||
{
|
||||
name = "shelfmark";
|
||||
meta.maintainers = with lib.maintainers; [ jamiemagee ];
|
||||
|
||||
nodes.machine = {
|
||||
services.shelfmark = {
|
||||
enable = true;
|
||||
environment.FLASK_HOST = "0.0.0.0";
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("shelfmark.service")
|
||||
machine.wait_for_open_port(8084)
|
||||
|
||||
with subtest("Health endpoint responds"):
|
||||
machine.succeed("curl --fail http://localhost:8084/api/health")
|
||||
'';
|
||||
}
|
||||
@@ -219,13 +219,13 @@
|
||||
"vendorHash": "sha256-6MKWpiDq4yI3mfIJyzEsWLa7gi0+DScI5jKcOcM6Qs0="
|
||||
},
|
||||
"cloudposse_utils": {
|
||||
"hash": "sha256-Fjb+9NG+p+oTvKziRYHaNdAZaUv8Rs/FYLXmtwrfkOI=",
|
||||
"hash": "sha256-Pf2UHxGEacmtIlSIKACC0MULAZMj5EGKq2q8Tsv79F8=",
|
||||
"homepage": "https://registry.terraform.io/providers/cloudposse/utils",
|
||||
"owner": "cloudposse",
|
||||
"repo": "terraform-provider-utils",
|
||||
"rev": "v2.4.0",
|
||||
"rev": "v2.5.0",
|
||||
"spdx": "Apache-2.0",
|
||||
"vendorHash": "sha256-LNsJygeBSpY4xawhWfIcYOB0TEVK4DMeyiSgyn8PJ2A="
|
||||
"vendorHash": "sha256-F4vFlhpPQUa1q7cFfjRooK4krISfpPxdj8uhvDmZQuY="
|
||||
},
|
||||
"cloudscale-ch_cloudscale": {
|
||||
"hash": "sha256-Ynuyn0L5B7d81WXEHoTI03zFzlEP3LGY4yQIl/WBr/8=",
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchCrate,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "aasvg-rs";
|
||||
version = "1.0.0";
|
||||
|
||||
src = fetchCrate {
|
||||
inherit (finalAttrs) version;
|
||||
pname = "aasvg-cli";
|
||||
hash = "sha256-0qGCXHSCTg2yXLxREOfY7lOA3ZQCNFvST6GTBIsG/f4=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-zl3IPKKG738cr1Au4Vw9SRstgOp57hM/JhPRNl0VsII=";
|
||||
|
||||
meta = {
|
||||
description = "CLI tool to convert ASCII art diagrams to SVG";
|
||||
homepage = "https://github.com/bearcove/aasvg-rs";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = with lib.maintainers; [ chillcicada ];
|
||||
mainProgram = "aasvg";
|
||||
};
|
||||
})
|
||||
@@ -41,14 +41,14 @@ assert lib.assertMsg (
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "cadabra2";
|
||||
version = "2.5.14";
|
||||
version = "2.5.14-p1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kpeeters";
|
||||
repo = "cadabra2";
|
||||
tag = finalAttrs.version;
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-lQ/xGxWa126EzxDIsXoi3brnECcXLXxzzUizLpRjZOg=";
|
||||
hash = "sha256-Pbk9SmJ64CZ+yxMj53JpxULBQye2ETDi8xNKw38cC9k=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
@@ -118,7 +118,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
versionCheckProgramArg = "--version";
|
||||
doInstallCheck = !enableBuildAsCppLibrary;
|
||||
#doInstallCheck = !enableBuildAsCppLibrary;
|
||||
doInstallCheck = false; # FIXME: remove this line and uncomment the above after next release
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
|
||||
@@ -27,13 +27,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "dosbox-x";
|
||||
version = "2026.01.02";
|
||||
version = "2026.03.29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "joncampbell123";
|
||||
repo = "dosbox-x";
|
||||
rev = "dosbox-x-v${finalAttrs.version}";
|
||||
hash = "sha256-/1DACDf530rzxeLVMLGkB3n6d3d8sN/ci8Q3kHAtZJo=";
|
||||
hash = "sha256-hOP+hmvVCdFSqXnD6+6OVIQ7allEidKt9W9AT704htA=";
|
||||
};
|
||||
|
||||
# sips is unavailable in sandbox, replacing with imagemagick breaks build due to wrong Foundation propagation(?) so don't generate resolution variants
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
From 8c648b4a68e5ebadb4d0f08728e44078954cebae Mon Sep 17 00:00:00 2001
|
||||
From: kuflierl <41301536+kuflierl@users.noreply.github.com>
|
||||
Date: Fri, 27 Mar 2026 01:28:17 +0100
|
||||
Subject: [PATCH] fix: build with minizip 1.3.2
|
||||
|
||||
---
|
||||
src/drivers/Qt/AboutWindow.cpp | 2 +-
|
||||
src/drivers/Qt/fceuWrapper.cpp | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/drivers/Qt/AboutWindow.cpp b/src/drivers/Qt/AboutWindow.cpp
|
||||
index 025cf360..5638a3c1 100644
|
||||
--- a/src/drivers/Qt/AboutWindow.cpp
|
||||
+++ b/src/drivers/Qt/AboutWindow.cpp
|
||||
@@ -23,7 +23,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <string>
|
||||
-#include <unzip.h>
|
||||
+#include <minizip/unzip.h>
|
||||
|
||||
#ifdef _S9XLUA_H
|
||||
#include <lua.h>
|
||||
diff --git a/src/drivers/Qt/fceuWrapper.cpp b/src/drivers/Qt/fceuWrapper.cpp
|
||||
index 8d241258..5e48eaf7 100644
|
||||
--- a/src/drivers/Qt/fceuWrapper.cpp
|
||||
+++ b/src/drivers/Qt/fceuWrapper.cpp
|
||||
@@ -23,7 +23,7 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdint.h>
|
||||
#include <limits.h>
|
||||
-#include <unzip.h>
|
||||
+#include <minizip/unzip.h>
|
||||
|
||||
#include <QFileInfo>
|
||||
#include <QStyleFactory>
|
||||
--
|
||||
2.51.2
|
||||
|
||||
@@ -40,6 +40,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
hash = "sha256-2QDiAk2HO9oQ1gNvc7QFZSCbWkCDYW5OJWT8f4bmXyg=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./0001-fix-build-with-minizip-1.3.2.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ft2-clone";
|
||||
version = "2.12";
|
||||
version = "2.13";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "8bitbubsy";
|
||||
repo = "ft2-clone";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-Ca4vp2uEF7rZJ+0lAmVqC/6F+2CgbDLK2GkbG5Tn//0=";
|
||||
hash = "sha256-Ieu7dxNEPz2DVKTfo2sitvtvAeKMCu3EiF6/PKrgETs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "gendef";
|
||||
version = "11.0.1";
|
||||
version = "14.0.0";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://git.code.sf.net/p/mingw-w64/mingw-w64.git";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-0vbAHSN+uwxoXXZtbuycP67PxjcB8Ftxd/Oij1gqE3Y=";
|
||||
hash = "sha256-ZhbY/RvTBI8ELSe0D7uzWi13sspgNZhdYg4LLK0JRng=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/mingw-w64-tools/gendef";
|
||||
|
||||
@@ -7,16 +7,16 @@
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "homebridge";
|
||||
version = "1.11.3";
|
||||
version = "1.11.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "homebridge";
|
||||
repo = "homebridge";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-Hr4pwWsISj4zde5DNOVSciZr1xJmL7M0wG2GU62ZDk4=";
|
||||
hash = "sha256-usp7zszkEfGsWXApywAolFhG0i59Pr/IvvaBMeU7YHc=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-LPCaqJGMeX8PaGwxfLnxQ5hdNycaE9nUMIU3LM6PHkg=";
|
||||
npmDepsHash = "sha256-Ci5aIDIEchB0niORK2cRy06qObLplCSogo6wRVXv9Vs=";
|
||||
|
||||
# Homebridge's clean phase attempts to install rimraf directly, which fails in nix builds
|
||||
# rimraf is already in the declared dependencies, so we just don't need to do it.
|
||||
|
||||
@@ -11,18 +11,18 @@
|
||||
}:
|
||||
|
||||
let
|
||||
ocamlPackages = ocaml-ng.ocamlPackages_5_3;
|
||||
ocamlPackages = ocaml-ng.ocamlPackages_5_4;
|
||||
in
|
||||
ocamlPackages.buildDunePackage {
|
||||
pname = "owi";
|
||||
version = "0.2-unstable-2026-01-29";
|
||||
version = "0.2-unstable-2026-03-16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocamlpro";
|
||||
repo = "owi";
|
||||
rev = "07b96ef58021810352caceffbadf2d614785bb0d";
|
||||
rev = "7fb7af27025501c732d8dda903865b47bc5d4901";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-vVTAoPWfjbX4c3AXxh4C2igig5LiMLZMpLmLSjLcxgo=";
|
||||
hash = "sha256-aRNJiW6UTcpJU3fIcEQB3gujmAxsp2dwR1hFeWJrhzs=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = with ocamlPackages; [
|
||||
@@ -39,11 +39,15 @@ ocamlPackages.buildDunePackage {
|
||||
];
|
||||
|
||||
buildInputs = with ocamlPackages; [
|
||||
dune-build-info
|
||||
dune-site
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with ocamlPackages; [
|
||||
bos
|
||||
cmdliner
|
||||
digestif
|
||||
dune-build-info
|
||||
dune-site
|
||||
domainpc
|
||||
menhirLib
|
||||
ocaml_intrinsics
|
||||
ocamlgraph
|
||||
@@ -52,11 +56,11 @@ ocamlPackages.buildDunePackage {
|
||||
scfg
|
||||
sedlex
|
||||
smtml
|
||||
symex
|
||||
synchronizer
|
||||
uutf
|
||||
xmlm
|
||||
yojson
|
||||
z3
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
|
||||
@@ -17,6 +17,23 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
|
||||
cargoHash = "sha256-dCZGPIipSotcA7DT3VvTCYq8+DxWHi5cp/fwh/44Jwc=";
|
||||
|
||||
env = {
|
||||
_DEF_PR_AI_API_KEY = "";
|
||||
_DEF_PR_AI_URL = "";
|
||||
_DEF_PR_AI_MODEL = "";
|
||||
};
|
||||
|
||||
cargoBuildFlags = [
|
||||
"-p pay-respects"
|
||||
"-p pay-respects-module-runtime-rules"
|
||||
"-p pay-respects-module-request-ai"
|
||||
];
|
||||
cargoTestFlags = [
|
||||
"-p pay-respects"
|
||||
"-p pay-respects-module-runtime-rules"
|
||||
"-p pay-respects-module-request-ai"
|
||||
];
|
||||
|
||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||
doInstallCheck = true;
|
||||
|
||||
|
||||
@@ -18,12 +18,12 @@ let
|
||||
# We keep the override around even when the versions match, as
|
||||
# it's likely to become relevant again after the next Poetry update.
|
||||
poetry-core = super.poetry-core.overridePythonAttrs (old: rec {
|
||||
version = "2.3.1";
|
||||
version = "2.3.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "python-poetry";
|
||||
repo = "poetry-core";
|
||||
tag = version;
|
||||
hash = "sha256-gGXAPdFnrS/T7xvw8rpzI/7nW0bXdUiZnPeEwDgtWuQ=";
|
||||
hash = "sha256-Rv6JCHsqu5rRvihGaUFcRk/NUT90bnIUM01QxUUkxh4=";
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
@@ -11,13 +11,13 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "poetry-plugin-export";
|
||||
version = "1.9.0-unstable-2025-09-14";
|
||||
version = "1.10.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "python-poetry";
|
||||
repo = "poetry-plugin-export";
|
||||
rev = "70a2f386a52687adee7353b51e59dd45aa319ee7";
|
||||
tag = version;
|
||||
hash = "sha256-KsvkM4hjG+jrdPVauXYdc6E87Gp7srMg/mJHpWRjaEs=";
|
||||
};
|
||||
|
||||
@@ -36,7 +36,7 @@ buildPythonPackage rec {
|
||||
];
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/python-poetry/poetry-plugin-export/blob/${src.rev}/CHANGELOG.md";
|
||||
changelog = "https://github.com/python-poetry/poetry-plugin-export/blob/${src.tag}/CHANGELOG.md";
|
||||
description = "Poetry plugin to export the dependencies to various formats";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://github.com/python-poetry/poetry-plugin-export";
|
||||
|
||||
@@ -35,14 +35,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "poetry";
|
||||
version = "2.3.2";
|
||||
version = "2.3.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "python-poetry";
|
||||
repo = "poetry";
|
||||
tag = version;
|
||||
hash = "sha256-zJ7HA/NNBh9gy0WUXTxKBUsC74Yt+ANZuBxMrQrS6XU=";
|
||||
hash = "sha256-+8zVe2JeQbbqmKOydQw1tZM2PYa5H/5ImBcVpoxYC5w=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
|
||||
@@ -7,11 +7,11 @@
|
||||
}:
|
||||
let
|
||||
pname = "qidi-studio";
|
||||
version = "2.04.01.11";
|
||||
version = "2.05.01.52";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/QIDITECH/QIDIStudio/releases/download/v${version}/QIDIStudio_v0${version}_Ubuntu24.AppImage";
|
||||
hash = "sha256-+Uj0S4BOASST+3MqcFNdW1dBQeMxNC5btMUiNVxFs3g=";
|
||||
hash = "sha256-ikLqTei2smj++AbzNOOwW5PGy2zxmdAvXUQJ1YQ4zMU=";
|
||||
};
|
||||
|
||||
appimageContents = appimageTools.extract {
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
# redumper is using C++ modules, this requires latest C++20 compiler and build tools
|
||||
llvmPackages.libcxxStdenv.mkDerivation (finalAttrs: {
|
||||
pname = "redumper";
|
||||
version = "705";
|
||||
version = "706";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "superg";
|
||||
repo = "redumper";
|
||||
tag = "b${finalAttrs.version}";
|
||||
hash = "sha256-g824KEdIK/B1DtNPe09AL839DTKeE3xy+NbI1DOkm+U=";
|
||||
hash = "sha256-RPs5zfDMeXqOKsldlvdAbHM3XO36ezXou5YYxpw7jAo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -27,13 +27,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "ruffle";
|
||||
version = "0.2.0-nightly-2026-03-20";
|
||||
version = "0.2.0-nightly-2026-03-29";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ruffle-rs";
|
||||
repo = "ruffle";
|
||||
tag = lib.strings.removePrefix "0.2.0-" finalAttrs.version;
|
||||
hash = "sha256-CONx48SDjHu22AXasIMwCpD+s6+6Tsr8+XtderuQzpM=";
|
||||
hash = "sha256-QJorW1H0pmaa546L0Qk0EayjegA9ObhLwbBgPOccUOM=";
|
||||
};
|
||||
|
||||
postPatch =
|
||||
@@ -49,7 +49,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||
"OpenH264Version(${major}, ${minor}, ${patch})"
|
||||
'';
|
||||
|
||||
cargoHash = "sha256-LfGZuTDkfz0Wn9O8t474Y9US85ewWMPx7qPBjK9gFg8=";
|
||||
cargoHash = "sha256-WsygyqL8o+cRiHhrVj51F2hOws9wLDr/g0werSXv/i4=";
|
||||
cargoBuildFlags = lib.optional withRuffleTools "--workspace";
|
||||
|
||||
env =
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
buildNpmPackage,
|
||||
shelfmark,
|
||||
}:
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "shelfmark-frontend";
|
||||
inherit (shelfmark) version src;
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/src/frontend";
|
||||
|
||||
npmDepsHash = "sha256-RAzotFGj0FGpfF7iyB5f2fdKFvMLcpJx142yplRwboU=";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
cp -r dist $out
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Shelfmark frontend";
|
||||
homepage = "https://github.com/calibrain/shelfmark/tree/main/src/frontend";
|
||||
inherit (shelfmark.meta) changelog license maintainers;
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,96 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
python3Packages,
|
||||
makeWrapper,
|
||||
nixosTests,
|
||||
shelfmark-frontend,
|
||||
unrar-free,
|
||||
}:
|
||||
|
||||
let
|
||||
pythonDeps = with python3Packages; [
|
||||
flask
|
||||
flask-cors
|
||||
flask-socketio
|
||||
python-socketio
|
||||
requests
|
||||
pysocks
|
||||
defusedxml
|
||||
beautifulsoup4
|
||||
tqdm
|
||||
dnspython
|
||||
gunicorn
|
||||
gevent
|
||||
gevent-websocket
|
||||
psutil
|
||||
emoji
|
||||
rarfile
|
||||
qbittorrent-api
|
||||
transmission-rpc
|
||||
authlib
|
||||
apprise
|
||||
];
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "shelfmark";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "calibrain";
|
||||
repo = "shelfmark";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-t4t7je7Y/aezx/EX7paJIcsCq5qyZeU/+mPLeZ8oTPg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
python3Packages.wrapPython
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
pythonPath = pythonDeps;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
wrapPythonPrograms
|
||||
|
||||
mkdir -p $out/libexec $out/bin
|
||||
|
||||
cp -r shelfmark $out/libexec/shelfmark
|
||||
cp -r data $out/libexec/data
|
||||
ln -s ${finalAttrs.passthru.frontend} $out/libexec/frontend-dist
|
||||
|
||||
makeWrapper ${python3Packages.python.interpreter} $out/bin/shelfmark \
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
python3Packages.python
|
||||
unrar-free
|
||||
]
|
||||
} \
|
||||
--set PYTHONPATH "$out/libexec:$program_PYTHONPATH" \
|
||||
--set USING_EXTERNAL_BYPASSER true \
|
||||
--add-flags "-m gunicorn.app.wsgiapp --worker-class geventwebsocket.gunicorn.workers.GeventWebSocketWorker --workers 1 -t 300 shelfmark.main:app"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
frontend = shelfmark-frontend.override {
|
||||
shelfmark = finalAttrs.finalPackage;
|
||||
};
|
||||
tests = {
|
||||
inherit (nixosTests) shelfmark;
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Self-hosted web interface for searching and downloading books and audiobooks";
|
||||
homepage = "https://github.com/calibrain/shelfmark";
|
||||
changelog = "https://github.com/calibrain/shelfmark/releases/tag/${finalAttrs.src.tag}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.jamiemagee ];
|
||||
mainProgram = "shelfmark";
|
||||
};
|
||||
})
|
||||
@@ -11,16 +11,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "snouty";
|
||||
version = "0.3.3";
|
||||
version = "0.3.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antithesishq";
|
||||
repo = "snouty";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-ScE+Er8k86N6zmEnVEpxWPnW6g6Gyy1TA+2HNGZmqgE=";
|
||||
hash = "sha256-lE0SHk2pkWPAMRI8seBhP4lMVyruhF8DKW/LSRkqcRw=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-I/pXyX4Z+tGqVbFjog+GzXJYnBwpyYZsc0lvlBOdT/Q=";
|
||||
cargoHash = "sha256-b5FVhF+MVexf8ZV3+pUomzCA8fq1Un0g51aLg1muxRM=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
stdenvNoCC,
|
||||
fetchurl,
|
||||
steam-run,
|
||||
coreutils,
|
||||
@@ -24,12 +24,13 @@ let
|
||||
};
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = "steamcmd";
|
||||
version = "20180104"; # According to steamcmd_linux.tar.gz mtime
|
||||
|
||||
src =
|
||||
srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
|
||||
srcs.${stdenvNoCC.hostPlatform.system}
|
||||
or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}");
|
||||
|
||||
# The source tarball does not have a single top-level directory.
|
||||
preUnpack = ''
|
||||
@@ -49,7 +50,9 @@ stdenv.mkDerivation {
|
||||
--subst-var out \
|
||||
--subst-var-by coreutils ${coreutils} \
|
||||
--subst-var-by steamRoot '${steamRoot}' \
|
||||
--subst-var-by steamRun ${if stdenv.hostPlatform.isLinux then (lib.getExe steam-run) else "exec"}
|
||||
--subst-var-by steamRun ${
|
||||
if stdenvNoCC.hostPlatform.isLinux then (lib.getExe steam-run) else "exec"
|
||||
}
|
||||
chmod 0755 $out/bin/steamcmd
|
||||
'';
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
buildGoModule (finalAttrs: {
|
||||
pname = "telegraf";
|
||||
version = "1.38.1";
|
||||
version = "1.38.2";
|
||||
|
||||
subPackages = [ "cmd/telegraf" ];
|
||||
|
||||
@@ -18,10 +18,10 @@ buildGoModule (finalAttrs: {
|
||||
owner = "influxdata";
|
||||
repo = "telegraf";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-DKDKEYKm4vlyamGHLE1kPFYBgsZDvkzCGEmqBQ6/VIE=";
|
||||
hash = "sha256-EfT3uxUTRvAlZcIsm7zDn+6znE7UG+N0yBoGM5Fl8eo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-1fsyqCsxABDB4ZBAjshRo+GPtG70CEVu/mWzMoDjhjc=";
|
||||
vendorHash = "sha256-Ir9/JjnwfrxlF7oCTpsn/e+8UxdZJgCZM2SW3y2h1Rg=";
|
||||
proxyVendor = true;
|
||||
|
||||
ldflags = [
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitLab,
|
||||
fetchpatch,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
@@ -176,8 +175,5 @@ in
|
||||
wlroots_0_20 = generic {
|
||||
version = "0.20.0";
|
||||
hash = "sha256-hVJlJiJK6+9RkgkmQzUzb8ypVMqsNhbQG6KfeCvxtb0=";
|
||||
extraBuildInputs = [
|
||||
lcms2
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
dolmen_model,
|
||||
dolmen_type,
|
||||
dune-build-info,
|
||||
dune-site,
|
||||
fpath,
|
||||
hc,
|
||||
menhirLib,
|
||||
@@ -18,6 +19,7 @@
|
||||
# fix eval on legacy ocaml versions
|
||||
ocaml_intrinsics ? null,
|
||||
prelude,
|
||||
ppx_enumerate,
|
||||
scfg,
|
||||
yojson,
|
||||
z3,
|
||||
@@ -28,13 +30,13 @@
|
||||
|
||||
buildDunePackage (finalAttrs: {
|
||||
pname = "smtml";
|
||||
version = "0.20.0";
|
||||
version = "0.24.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "formalsec";
|
||||
repo = "smtml";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-VnkF+bZXeqaj9LSpyzqH5AM9EQsrW4Rlj5kvyTfYTKE=";
|
||||
hash = "sha256-9499a8ngL8rTeyhWumn08ZjymD8zOMyyG0ZgjVITSPQ=";
|
||||
};
|
||||
|
||||
minimalOCamlVersion = "4.14";
|
||||
@@ -45,6 +47,7 @@ buildDunePackage (finalAttrs: {
|
||||
|
||||
buildInputs = [
|
||||
dune-build-info
|
||||
dune-site
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
@@ -58,6 +61,7 @@ buildDunePackage (finalAttrs: {
|
||||
menhirLib
|
||||
mtime
|
||||
ocaml_intrinsics
|
||||
ppx_enumerate
|
||||
prelude
|
||||
scfg
|
||||
yojson
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
buildDunePackage (finalAttrs: {
|
||||
pname = "symex";
|
||||
version = "0.1";
|
||||
version = "0.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocamlpro";
|
||||
repo = "symex";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-jKwFtxVcBD8Y1bfKRB8Z/MSeQLQWKvk00i8HqodkBbM=";
|
||||
hash = "sha256-KX+OHiCsAHEw0kBWLUDVakIcshUNXLYjm2f2le75Mj8=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -20,14 +20,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "approvaltests";
|
||||
version = "17.4.0";
|
||||
version = "17.4.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "approvals";
|
||||
repo = "ApprovalTests.Python";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-Xtgzz5Z0tkwr9EmiYs8Nt/MUTvJ8sysySMp8QJnr33A=";
|
||||
hash = "sha256-8JOd1JRwJS+y5Eh/an0RrGtwBZMPW/ziGTRd1H9Sveo=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -3,32 +3,30 @@
|
||||
buildPythonPackage,
|
||||
cryptography,
|
||||
deepdiff,
|
||||
eval-type-backport,
|
||||
fetchFromGitHub,
|
||||
httpcore,
|
||||
httpx,
|
||||
lib,
|
||||
nest-asyncio,
|
||||
poetry-core,
|
||||
pydantic,
|
||||
pypdf,
|
||||
pypdfium2,
|
||||
pytest-asyncio,
|
||||
pytestCheckHook,
|
||||
python,
|
||||
python-dateutil,
|
||||
requests-toolbelt,
|
||||
typing-inspection,
|
||||
}:
|
||||
|
||||
buildPythonPackage (finalAttrs: {
|
||||
pname = "unstructured-client";
|
||||
version = "0.42.9";
|
||||
version = "0.42.12";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Unstructured-IO";
|
||||
repo = "unstructured-python-client";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-+neZK7I5qjidLlM298TrVl5mGFBdGZdxAdFaJIf0tNk=";
|
||||
hash = "sha256-xuaGvQEu1QpLn33AUgdWW120pVVNVPL08U/SCA7kGvc=";
|
||||
};
|
||||
|
||||
preBuild = ''
|
||||
@@ -44,14 +42,12 @@ buildPythonPackage (finalAttrs: {
|
||||
dependencies = [
|
||||
aiofiles
|
||||
cryptography
|
||||
eval-type-backport
|
||||
httpcore
|
||||
httpx
|
||||
nest-asyncio
|
||||
pydantic
|
||||
pypdf
|
||||
python-dateutil
|
||||
pypdfium2
|
||||
requests-toolbelt
|
||||
typing-inspection
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "unstructured_client" ];
|
||||
|
||||
@@ -1863,7 +1863,9 @@ let
|
||||
});
|
||||
|
||||
vegan3d = old.vegan3d.overrideAttrs (attrs: {
|
||||
RGL_USE_NULL = "true";
|
||||
env = (attrs.env or { }) // {
|
||||
RGL_USE_NULL = "true";
|
||||
};
|
||||
});
|
||||
|
||||
# it can happen that the major version of arrow-cpp is ahead of the
|
||||
@@ -2187,7 +2189,9 @@ let
|
||||
});
|
||||
|
||||
nanonext = old.nanonext.overrideAttrs (attrs: {
|
||||
NIX_LDFLAGS = "-lnng -lmbedtls -lmbedx509 -lmbedcrypto";
|
||||
env = (attrs.env or { }) // {
|
||||
NIX_LDFLAGS = "-lnng -lmbedtls -lmbedx509 -lmbedcrypto";
|
||||
};
|
||||
});
|
||||
|
||||
clustermq = old.clustermq.overrideAttrs (attrs: {
|
||||
@@ -2195,7 +2199,9 @@ let
|
||||
});
|
||||
|
||||
Cairo = old.Cairo.overrideAttrs (attrs: {
|
||||
NIX_LDFLAGS = "-lfontconfig";
|
||||
env = (attrs.env or { }) // {
|
||||
NIX_LDFLAGS = "-lfontconfig";
|
||||
};
|
||||
});
|
||||
|
||||
curl = old.curl.overrideAttrs (attrs: {
|
||||
@@ -2511,7 +2517,9 @@ let
|
||||
});
|
||||
|
||||
RAppArmor = old.RAppArmor.overrideAttrs (attrs: {
|
||||
LIBAPPARMOR_HOME = pkgs.libapparmor;
|
||||
env = (attrs.env or { }) // {
|
||||
LIBAPPARMOR_HOME = pkgs.libapparmor;
|
||||
};
|
||||
});
|
||||
|
||||
# Append cargo path to path variable
|
||||
@@ -2526,17 +2534,21 @@ let
|
||||
});
|
||||
|
||||
RMySQL = old.RMySQL.overrideAttrs (attrs: {
|
||||
MYSQL_DIR = "${pkgs.libmysqlclient}";
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.libmysqlclient.dev}/include/mysql";
|
||||
NIX_CFLAGS_LINK = "-L${pkgs.libmysqlclient}/lib/mysql -lmysqlclient";
|
||||
env = (attrs.env or { }) // {
|
||||
MYSQL_DIR = "${pkgs.libmysqlclient}";
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.libmysqlclient.dev}/include/mysql";
|
||||
NIX_CFLAGS_LINK = "-L${pkgs.libmysqlclient}/lib/mysql -lmysqlclient";
|
||||
};
|
||||
preConfigure = ''
|
||||
patchShebangs configure
|
||||
'';
|
||||
});
|
||||
|
||||
devEMF = old.devEMF.overrideAttrs (attrs: {
|
||||
NIX_CFLAGS_LINK = "-L${pkgs.libxft.out}/lib -lXft";
|
||||
NIX_LDFLAGS = "-lX11";
|
||||
env = (attrs.env or { }) // {
|
||||
NIX_CFLAGS_LINK = "-L${pkgs.libxft.out}/lib -lXft";
|
||||
NIX_LDFLAGS = "-lX11";
|
||||
};
|
||||
});
|
||||
|
||||
hdf5r = old.hdf5r.overrideAttrs (attrs: {
|
||||
@@ -2544,11 +2556,15 @@ let
|
||||
});
|
||||
|
||||
slfm = old.slfm.overrideAttrs (attrs: {
|
||||
PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
|
||||
env = (attrs.env or { }) // {
|
||||
PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
|
||||
};
|
||||
});
|
||||
|
||||
SamplerCompare = old.SamplerCompare.overrideAttrs (attrs: {
|
||||
PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
|
||||
env = (attrs.env or { }) // {
|
||||
PKG_LIBS = "-L${pkgs.blas}/lib -lblas -L${pkgs.lapack}/lib -llapack";
|
||||
};
|
||||
});
|
||||
|
||||
FLAMES = old.FLAMES.overrideAttrs (attrs: {
|
||||
@@ -2559,13 +2575,17 @@ let
|
||||
preConfigure = ''
|
||||
patchShebangs configure
|
||||
'';
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
|
||||
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
|
||||
env = (attrs.env or { }) // {
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
|
||||
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
|
||||
};
|
||||
});
|
||||
|
||||
websocket = old.websocket.overrideAttrs (attrs: {
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
|
||||
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
|
||||
env = (attrs.env or { }) // {
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include";
|
||||
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -lssl -lcrypto";
|
||||
};
|
||||
});
|
||||
|
||||
Rserve = old.Rserve.overrideAttrs (attrs: {
|
||||
@@ -2596,11 +2616,13 @@ let
|
||||
patchShebangs configure
|
||||
'';
|
||||
|
||||
R_MAKEVARS_SITE = lib.optionalString (pkgs.stdenv.system == "aarch64-linux") (
|
||||
pkgs.writeText "Makevars" ''
|
||||
CXX14PICFLAGS = -fPIC
|
||||
''
|
||||
);
|
||||
env = (attrs.env or { }) // {
|
||||
R_MAKEVARS_SITE = lib.optionalString (pkgs.stdenv.system == "aarch64-linux") (
|
||||
pkgs.writeText "Makevars" ''
|
||||
CXX14PICFLAGS = -fPIC
|
||||
''
|
||||
);
|
||||
};
|
||||
});
|
||||
|
||||
acs = old.acs.overrideAttrs (attrs: {
|
||||
@@ -2613,7 +2635,9 @@ let
|
||||
preConfigure = ''
|
||||
patchShebangs configure
|
||||
'';
|
||||
NIX_LDFLAGS = "-lfontconfig -lfreetype";
|
||||
env = (attrs.env or { }) // {
|
||||
NIX_LDFLAGS = "-lfontconfig -lfreetype";
|
||||
};
|
||||
});
|
||||
|
||||
magick = old.magick.overrideAttrs (attrs: {
|
||||
@@ -2642,7 +2666,9 @@ let
|
||||
preConfigure = ''
|
||||
export TCLLIBPATH="${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}"
|
||||
'';
|
||||
TCLLIBPATH = "${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}";
|
||||
env = (attrs.env or { }) // {
|
||||
TCLLIBPATH = "${pkgs.tclPackages.bwidget}/lib/bwidget${pkgs.tclPackages.bwidget.version}";
|
||||
};
|
||||
});
|
||||
|
||||
networkscaleup = old.networkscaleup.overrideAttrs (attrs: {
|
||||
@@ -2856,8 +2882,10 @@ let
|
||||
preConfigure = ''
|
||||
patchShebangs configure
|
||||
'';
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include -I${pkgs.cyrus_sasl.dev}/include -I${pkgs.zlib.dev}/include";
|
||||
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -L${pkgs.cyrus_sasl.out}/lib -L${pkgs.zlib.out}/lib -lssl -lcrypto -lsasl2 -lz";
|
||||
env = (attrs.env or { }) // {
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.openssl.dev}/include -I${pkgs.cyrus_sasl.dev}/include -I${pkgs.zlib.dev}/include";
|
||||
PKGCONFIG_LIBS = "-Wl,-rpath,${lib.getLib pkgs.openssl}/lib -L${lib.getLib pkgs.openssl}/lib -L${pkgs.cyrus_sasl.out}/lib -L${pkgs.zlib.out}/lib -lssl -lcrypto -lsasl2 -lz";
|
||||
};
|
||||
});
|
||||
|
||||
ChemmineOB = old.ChemmineOB.overrideAttrs (attrs: {
|
||||
@@ -3021,7 +3049,9 @@ let
|
||||
ChIPXpress = old.ChIPXpress.override { hydraPlatforms = [ ]; };
|
||||
|
||||
rgl = old.rgl.overrideAttrs (attrs: {
|
||||
RGL_USE_NULL = "true";
|
||||
env = (attrs.env or { }) // {
|
||||
RGL_USE_NULL = "true";
|
||||
};
|
||||
});
|
||||
|
||||
Rrdrand = old.Rrdrand.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
|
||||
@@ -3053,7 +3083,9 @@ let
|
||||
dbarts = old.dbarts.override { platforms = lib.platforms.x86_64 ++ lib.platforms.x86; };
|
||||
|
||||
geomorph = old.geomorph.overrideAttrs (attrs: {
|
||||
RGL_USE_NULL = "true";
|
||||
env = (attrs.env or { }) // {
|
||||
RGL_USE_NULL = "true";
|
||||
};
|
||||
});
|
||||
|
||||
gpuMagic = old.gpuMagic.overrideAttrs (_: {
|
||||
@@ -3107,9 +3139,11 @@ let
|
||||
postPatch = "patchShebangs configure";
|
||||
});
|
||||
|
||||
redland = old.redland.overrideAttrs (_: {
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.redland}/include -I${pkgs.librdf_raptor2}/include/raptor2 -I${pkgs.librdf_rasqal}/include/rasqal";
|
||||
PKGCONFIG_LIBS = "-L${pkgs.redland}/lib -L${pkgs.librdf_raptor2}/lib -L${pkgs.librdf_rasqal}/lib -lrdf -lraptor2 -lrasqal";
|
||||
redland = old.redland.overrideAttrs (attrs: {
|
||||
env = (attrs.env or { }) // {
|
||||
PKGCONFIG_CFLAGS = "-I${pkgs.redland}/include -I${pkgs.librdf_raptor2}/include/raptor2 -I${pkgs.librdf_rasqal}/include/rasqal";
|
||||
PKGCONFIG_LIBS = "-L${pkgs.redland}/lib -L${pkgs.librdf_raptor2}/lib -L${pkgs.librdf_rasqal}/lib -lrdf -lraptor2 -lrasqal";
|
||||
};
|
||||
});
|
||||
|
||||
textshaping = old.textshaping.overrideAttrs (attrs: {
|
||||
|
||||
@@ -751,6 +751,12 @@ in
|
||||
filesToInstall = [ "u-boot.bin" ];
|
||||
};
|
||||
|
||||
ubootRaspberryPiAarch64 = buildUBoot {
|
||||
defconfig = "rpi_arm64_defconfig";
|
||||
extraMeta.platforms = [ "aarch64-linux" ];
|
||||
filesToInstall = [ "u-boot.bin" ];
|
||||
};
|
||||
|
||||
ubootRaspberryPi2 = buildUBoot {
|
||||
defconfig = "rpi_2_defconfig";
|
||||
extraMeta.platforms = [ "armv7l-linux" ];
|
||||
|
||||
@@ -277,6 +277,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
hardeningDisable = [ "strictflexarrays1" ];
|
||||
|
||||
preBuild = ''
|
||||
export MAKEFLAGS="-j $NIX_BUILD_CORES"
|
||||
'';
|
||||
|
||||
@@ -8944,6 +8944,7 @@ with pkgs;
|
||||
ubootQuartz64B
|
||||
ubootRadxaZero3W
|
||||
ubootRaspberryPi
|
||||
ubootRaspberryPiAarch64
|
||||
ubootRaspberryPi2
|
||||
ubootRaspberryPi3_32bit
|
||||
ubootRaspberryPi3_64bit
|
||||
|
||||
Reference in New Issue
Block a user