Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-09-28 00:13:56 +00:00 committed by GitHub
commit 9badc90a26
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
61 changed files with 923 additions and 319 deletions

View File

@ -18703,6 +18703,13 @@
githubId = 34161949;
keys = [ { fingerprint = "155C F413 0129 C058 9A5F 5524 3658 73F2 F0C6 153B"; } ];
};
sanana = {
email = "asya@waifu.club";
github = "AsyaTheAbove";
githubId = 40492846;
keys = [ { fingerprint = "B766 7717 1644 5ABC DE82 94AA 4679 BF7D CC04 4783"; } ];
name = "sanana the skenana";
};
sander = {
email = "s.vanderburg@tudelft.nl";
github = "svanderburg";

View File

@ -1,6 +1,7 @@
{ config, lib, pkgs, ... }:
with lib;
let
inherit (lib) mkIf mkOption types;
cfg = config.services.jenkinsSlave;
masterCfg = config.services.jenkins;
in {
@ -47,16 +48,16 @@ in {
'';
};
javaPackage = mkPackageOption pkgs "jdk" { };
javaPackage = lib.mkPackageOption pkgs "jdk" { };
};
};
config = mkIf (cfg.enable && !masterCfg.enable) {
users.groups = optionalAttrs (cfg.group == "jenkins") {
users.groups = lib.optionalAttrs (cfg.group == "jenkins") {
jenkins.gid = config.ids.gids.jenkins;
};
users.users = optionalAttrs (cfg.user == "jenkins") {
users.users = lib.optionalAttrs (cfg.user == "jenkins") {
jenkins = {
description = "jenkins user";
createHome = true;

View File

@ -1,17 +1,17 @@
{ config, lib, pkgs, ... }:
with lib;
let
inherit (lib) mkIf mkOption mkEnableOption types optional optionals;
inherit (lib.types) nullOr bool listOf str;
cfg = config.services.i2pd;
homeDir = "/var/lib/i2pd";
strOpt = k: v: k + " = " + v;
boolOpt = k: v: k + " = " + boolToString v;
boolOpt = k: v: k + " = " + lib.boolToString v;
intOpt = k: v: k + " = " + toString v;
lstOpt = k: xs: k + " = " + concatStringsSep "," xs;
lstOpt = k: xs: k + " = " + lib.concatStringsSep "," xs;
optionalNullString = o: s: optional (s != null) (strOpt o s);
optionalNullBool = o: b: optional (b != null) (boolOpt o b);
optionalNullInt = o: i: optional (i != null) (intOpt o i);
@ -54,7 +54,7 @@ let
mkKeyedEndpointOpt = name: addr: port: keyloc:
(mkEndpointOpt name addr port) // {
keys = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = keyloc;
description = ''
File to persist ${lib.toUpper name} keys.
@ -162,8 +162,8 @@ let
(sec "meshnets")
(boolOpt "yggdrasil" cfg.yggdrasil.enable)
] ++ (optionalNullString "yggaddress" cfg.yggdrasil.address)
++ (flip map
(collect (proto: proto ? port && proto ? address) cfg.proto)
++ (lib.flip map
(lib.collect (proto: proto ? port && proto ? address) cfg.proto)
(proto: let protoOpts = [
(sec proto.name)
(boolOpt "enabled" proto.enable)
@ -178,10 +178,10 @@ let
++ (optionals (proto ? outproxy) (optionalNullString "outproxy" proto.outproxy))
++ (optionals (proto ? outproxyPort) (optionalNullInt "outproxyport" proto.outproxyPort))
++ (optionals (proto ? outproxyEnable) (optionalNullBool "outproxy.enabled" proto.outproxyEnable));
in (concatStringsSep "\n" protoOpts)
in (lib.concatStringsSep "\n" protoOpts)
));
in
pkgs.writeText "i2pd.conf" (concatStringsSep "\n" opts);
pkgs.writeText "i2pd.conf" (lib.concatStringsSep "\n" opts);
tunnelConf = let
mkOutTunnel = tun:
@ -200,7 +200,7 @@ let
++ (optionals (tun ? outbound.quantity) (optionalNullInt "outbound.quantity" tun.outbound.quantity))
++ (optionals (tun ? crypto.tagsToSend) (optionalNullInt "crypto.tagstosend" tun.crypto.tagsToSend));
in
concatStringsSep "\n" outTunOpts;
lib.concatStringsSep "\n" outTunOpts;
mkInTunnel = tun:
let
@ -214,16 +214,16 @@ let
++ (optionals (tun ? inPort) (optionalNullInt "inport" tun.inPort))
++ (optionals (tun ? accessList) (optionalEmptyList "accesslist" tun.accessList));
in
concatStringsSep "\n" inTunOpts;
lib.concatStringsSep "\n" inTunOpts;
allOutTunnels = collect (tun: tun ? port && tun ? destination) cfg.outTunnels;
allInTunnels = collect (tun: tun ? port && tun ? address) cfg.inTunnels;
allOutTunnels = lib.collect (tun: tun ? port && tun ? destination) cfg.outTunnels;
allInTunnels = lib.collect (tun: tun ? port && tun ? address) cfg.inTunnels;
opts = [ notice ] ++ (map mkOutTunnel allOutTunnels) ++ (map mkInTunnel allInTunnels);
in
pkgs.writeText "i2pd-tunnels.conf" (concatStringsSep "\n" opts);
pkgs.writeText "i2pd-tunnels.conf" (lib.concatStringsSep "\n" opts);
i2pdFlags = concatStringsSep " " (
i2pdFlags = lib.concatStringsSep " " (
optional (cfg.address != null) ("--host=" + cfg.address) ++ [
"--service"
("--conf=" + i2pdConf)
@ -235,7 +235,7 @@ in
{
imports = [
(mkRenamedOptionModule [ "services" "i2pd" "extIp" ] [ "services" "i2pd" "address" ])
(lib.mkRenamedOptionModule [ "services" "i2pd" "extIp" ] [ "services" "i2pd" "address" ])
];
###### interface
@ -252,7 +252,7 @@ in
'';
};
package = mkPackageOption pkgs "i2pd" { };
package = lib.mkPackageOption pkgs "i2pd" { };
logLevel = mkOption {
type = types.enum ["debug" "info" "warn" "error"];
@ -269,7 +269,7 @@ in
logCLFTime = mkEnableOption "full CLF-formatted date and time to log";
address = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Your external IP or hostname.
@ -277,7 +277,7 @@ in
};
family = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Specify a family the router belongs to.
@ -285,7 +285,7 @@ in
};
dataDir = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Alternative path to storage of i2pd data (RI, keys, peer profiles, ...)
@ -301,7 +301,7 @@ in
};
ifname = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Network interface to bind to.
@ -309,7 +309,7 @@ in
};
ifname4 = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
IPv4 interface to bind to.
@ -317,7 +317,7 @@ in
};
ifname6 = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
IPv6 interface to bind to.
@ -325,7 +325,7 @@ in
};
ntcpProxy = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Proxy URL for NTCP transport.
@ -399,7 +399,7 @@ in
reseed.verify = mkEnableOption "SU3 signature verification";
reseed.file = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Full path to SU3 file to reseed from.
@ -407,7 +407,7 @@ in
};
reseed.urls = mkOption {
type = with types; listOf str;
type = listOf str;
default = [];
description = ''
Reseed URLs.
@ -415,7 +415,7 @@ in
};
reseed.floodfill = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Path to router info of floodfill to reseed from.
@ -423,7 +423,7 @@ in
};
reseed.zipfile = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Path to local .zip file to reseed from.
@ -431,7 +431,7 @@ in
};
reseed.proxy = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
URL for reseed proxy, supports http/socks.
@ -446,7 +446,7 @@ in
'';
};
addressbook.subscriptions = mkOption {
type = with types; listOf str;
type = listOf str;
default = [
"http://inr.i2p/export/alive-hosts.txt"
"http://i2p-projekt.i2p/hosts.txt"
@ -460,7 +460,7 @@ in
trust.enable = mkEnableOption "explicit trust options";
trust.family = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Router Family to trust for first hops.
@ -468,7 +468,7 @@ in
};
trust.routers = mkOption {
type = with types; listOf str;
type = listOf str;
default = [];
description = ''
Only connect to the listed routers.
@ -543,7 +543,7 @@ in
yggdrasil.enable = mkEnableOption "Yggdrasil";
yggdrasil.address = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Your local yggdrasil address. Specify it if you want to bind your router to a
@ -572,7 +572,7 @@ in
};
strictHeaders = mkOption {
type = with types; nullOr bool;
type = nullOr bool;
default = null;
description = ''
Enable strict host checking on WebUI.
@ -580,7 +580,7 @@ in
};
hostname = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = ''
Expected hostname for WebUI.
@ -591,7 +591,7 @@ in
proto.httpProxy = (mkKeyedEndpointOpt "httpproxy" "127.0.0.1" 4444 "httpproxy-keys.dat")
// {
outproxy = mkOption {
type = with types; nullOr str;
type = nullOr str;
default = null;
description = "Upstream outproxy bind address.";
};
@ -648,7 +648,7 @@ in
description = "Service port. Default to the tunnel's listen port.";
};
accessList = mkOption {
type = with types; listOf str;
type = listOf str;
default = [];
description = "I2P nodes that are allowed to connect to this service.";
};

View File

@ -167,7 +167,8 @@ in
asar
copyDesktopItems
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
(buildPackages.wrapGAppsHook3.override { inherit (buildPackages) makeWrapper; })
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
dontBuild = true;

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, wrapGAppsHook3, makeWrapper
{ lib, stdenv, fetchurl, buildPackages
, alsa-lib
, at-spi2-atk
, at-spi2-core
@ -112,7 +112,9 @@ stdenv.mkDerivation {
nativeBuildInputs = [
dpkg
(wrapGAppsHook3.override { inherit makeWrapper; })
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
buildInputs = [

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "kubedb-cli";
version = "0.47.0";
version = "0.48.0";
src = fetchFromGitHub {
owner = "kubedb";
repo = "cli";
rev = "v${version}";
sha256 = "sha256-C106krMg4vtRe78hh6emAGBxEApfc5ZorRgTtH+QZ9g=";
sha256 = "sha256-xqupDfcjCSP7uomBCuFlhCAOetZrvSiKehOgCqZKLLg=";
};
vendorHash = null;

View File

@ -10,16 +10,16 @@
buildGoModule rec {
pname = "kubevela";
version = "1.9.11";
version = "1.9.12";
src = fetchFromGitHub {
owner = "kubevela";
repo = "kubevela";
rev = "v${version}";
hash = "sha256-u9UGV1UwZoj4eSqqMLf8BvsfTFIYagoslN5pflDKm8c=";
hash = "sha256-AltyaV4tFW/3nOzEgWwlIqFXVaEtcpN5IxdFScZ7Nes=";
};
vendorHash = "sha256-NnUZnlvVb2VmNx4HM8lkbTNcQA3/pctkg1UVpOY8Acs=";
vendorHash = "sha256-Ethbor1nZRYuemBL03QdnExNJtdOJ4w76sjLrBDW9Aw=";
ldflags = [
"-s" "-w"

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "pachyderm";
version = "2.11.2";
version = "2.11.3";
src = fetchFromGitHub {
owner = "pachyderm";
repo = "pachyderm";
rev = "v${version}";
hash = "sha256-CNYFaUZBUwa+RF4JFXSmsdHalCPeowM4FYeWBojOOjA=";
hash = "sha256-tn+wOd01zClMcANYTolXHTEMGohXGNnKbsZ5NA4kELc=";
};
vendorHash = "sha256-d2MSMucGMGGPLE0wh8Y27AUVPkeyOCkCa0JSPawYQmc=";

View File

@ -4,11 +4,11 @@ let
in
stdenv.mkDerivation rec {
pname = "rocketchat-desktop";
version = "4.1.0";
version = "4.1.1";
src = fetchurl {
url = "https://github.com/RocketChat/Rocket.Chat.Electron/releases/download/${version}/rocketchat-${version}-linux-amd64.deb";
hash = "sha256-SMpcsRKxx51O7cagDFIrp70QiAHaoAU5NhLHtog647g=";
hash = "sha256-6NvQtc+IUWqixFwWUHvl+SkSl0pk3SK4VmQXoZYyqqg=";
};
nativeBuildInputs = [

View File

@ -8,8 +8,7 @@
, asar
, rsync
, python3
, wrapGAppsHook3
, makeWrapper
, buildPackages
, nixosTests
, gtk3
, atk
@ -127,7 +126,9 @@ stdenv.mkDerivation rec {
asar
python3
autoPatchelfHook
(wrapGAppsHook3.override { inherit makeWrapper; })
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
buildInputs = [

View File

@ -1,11 +1,11 @@
{ lib
, stdenv
, fetchFromGitHub
, buildGoModule
, buildGo123Module
, cmake
, extra-cmake-modules
, git
, go
, go_1_23
, wrapQtAppsHook
, qtbase
, qtdeclarative
@ -23,20 +23,20 @@
}:
let
version = "0.17.2";
version = "0.18.0";
src = fetchFromGitHub {
owner = "f-koehler";
repo = "KTailctl";
rev = "v${version}";
hash = "sha256-jACcTRIdzYiSLy7zw5QuDu9tZfee9ufhlEecbTbSr+4=";
hash = "sha256-tZnwn94qZyQ8JAC6Y1dDTmc7Cob+kMZnEaP7+EytbH8=";
};
goDeps = (buildGoModule {
goDeps = (buildGo123Module {
pname = "ktailctl-go-wrapper";
inherit src version;
modRoot = "src/wrapper";
vendorHash = "sha256-V4Bn5/VaoFOZlNGBedA4Ly8Kocw0BWyfIHv8IU6Eay4=";
vendorHash = "sha256-KdkvAPLnoC7DccRVIz7t/Ns71dnG59DpO5qwOhJk7qc=";
}).goModules;
in
stdenv.mkDerivation {
@ -61,7 +61,7 @@ stdenv.mkDerivation {
cmake
extra-cmake-modules
git
go
go_1_23
wrapQtAppsHook
];

View File

@ -25,7 +25,8 @@ let
};
aarch64-darwin = x86_64-darwin;
}
."${stdenvNoCC.hostPlatform.system}";
."${stdenvNoCC.hostPlatform.system}"
or (throw "appflowy: No source for system: ${stdenvNoCC.hostPlatform.system}");
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "appflowy";

View File

@ -6,24 +6,29 @@
, gitpython
, humanfriendly
, tenacity
, setuptools
, distutils
}:
buildPythonApplication rec {
pname = "git-annex-remote-googledrive";
version = "1.3.2";
format = "setuptools";
pyproject = true;
src = fetchPypi {
inherit pname version;
sha256 = "0rwjcdvfgzdlfgrn1rrqwwwiqqzyh114qddrbfwd46ld5spry6r1";
};
build-system = [ setuptools ];
propagatedBuildInputs = [
annexremote
drivelib
gitpython
tenacity
humanfriendly
distutils
];
# while git-annex does come with a testremote command that *could* be used,
@ -36,7 +41,7 @@ buildPythonApplication rec {
meta = with lib; {
description = "Git-annex special remote for Google Drive";
homepage = "https://pypi.org/project/git-annex-remote-googledrive/";
homepage = "https://github.com/Lykos153/git-annex-remote-googledrive";
license = licenses.gpl3Only;
maintainers = with maintainers; [ gravndal ];
mainProgram = "git-annex-remote-googledrive";

View File

@ -37,7 +37,7 @@
makeDesktopItem,
openssl,
wrapGAppsHook3,
makeShellWrapper,
buildPackages,
at-spi2-atk,
at-spi2-core,
libuuid,
@ -166,7 +166,9 @@ let
nativeBuildInputs = [
copyDesktopItems
(wrapGAppsHook3.override { makeWrapper = makeShellWrapper; })
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
buildInputs = [
gtk3

View File

@ -18,13 +18,13 @@
mkDerivation rec {
pname = "anilibria-winmaclinux";
version = "2.2.18";
version = "2.2.19";
src = fetchFromGitHub {
owner = "anilibria";
repo = "anilibria-winmaclinux";
rev = version;
hash = "sha256-gFIz2tkuBaC4DoN/oVNra5pQi23MAuhFJRGxEcZgvAo=";
hash = "sha256-f4AlTfLTn0GvBj3ztpkNPc6BDlLsEtz/yE5F2WfjU8U=";
};
sourceRoot = "${src.name}/src";

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation (final: {
pname = "boxed-cpp";
version = "1.4.2";
version = "1.4.3";
src = fetchFromGitHub {
owner = "contour-terminal";
repo = "boxed-cpp";
rev = "v${final.version}";
hash = "sha256-Z/dfSa/6SnzLWnFCXjJUbTBNa5dFZna099Crbcya/Dw=";
hash = "sha256-uZ/wT159UuEcTUtoQyt0D59z2wnLT5KpeeCpjyij198=";
};
nativeBuildInputs = [ cmake ];

View File

@ -25,10 +25,13 @@ stdenvNoCC.mkDerivation {
installPhase =
let
arch = builtins.getAttr stdenvNoCC.hostPlatform.system {
x86_64-linux = "x64";
x86-linux = "x86";
};
arch =
{
x86_64-linux = "x64";
x86-linux = "x86";
}
."${stdenvNoCC.hostPlatform.system}"
or (throw "cups-idprt-barcode: No prebuilt filters for system: ${stdenvNoCC.hostPlatform.system}");
in
''
runHook preInstall

View File

@ -25,10 +25,13 @@ stdenvNoCC.mkDerivation {
installPhase =
let
arch = builtins.getAttr stdenvNoCC.hostPlatform.system {
x86_64-linux = "x64";
x86-linux = "x86";
};
arch =
{
x86_64-linux = "x64";
x86-linux = "x86";
}
."${stdenvNoCC.hostPlatform.system}"
or (throw "cups-idprt-mt888: No prebuilt filters for system: ${stdenvNoCC.hostPlatform.system}");
in
''
runHook preInstall

View File

@ -25,10 +25,13 @@ stdenvNoCC.mkDerivation {
installPhase =
let
arch = builtins.getAttr stdenvNoCC.hostPlatform.system {
x86_64-linux = "x64";
x86-linux = "x86";
};
arch =
{
x86_64-linux = "x64";
x86-linux = "x86";
}
."${stdenvNoCC.hostPlatform.system}"
or (throw "cups-idprt-mt890: No prebuilt filters for system: ${stdenvNoCC.hostPlatform.system}");
in
''
runHook preInstall

View File

@ -34,10 +34,13 @@ stdenvNoCC.mkDerivation (finalAttrs: {
installPhase =
let
arch = builtins.getAttr stdenvNoCC.hostPlatform.system {
x86_64-linux = "x64";
x86-linux = "x86";
};
arch =
{
x86_64-linux = "x64";
x86-linux = "x86";
}
."${stdenvNoCC.hostPlatform.system}"
or (throw "cups-idprt-sp900: No prebuilt filters for system: ${stdenvNoCC.hostPlatform.system}");
in
''
runHook preInstall

View File

@ -33,10 +33,13 @@ stdenvNoCC.mkDerivation {
installPhase =
let
arch = builtins.getAttr stdenvNoCC.hostPlatform.system {
x86_64-linux = "x64";
x86-linux = "x86";
};
arch =
{
x86_64-linux = "x64";
x86-linux = "x86";
}
."${stdenvNoCC.hostPlatform.system}"
or (throw "cups-idprt-tspl: No prebuilt filters for system: ${stdenvNoCC.hostPlatform.system}");
in
''
runHook preInstall

View File

@ -0,0 +1,104 @@
{
"name": "dokieli",
"version": "0.3.1417",
"description": "dokieli is a clientside editor for decentralised article publishing, annotations, and social interactions.",
"main": "./src/dokieli.js",
"type": "module",
"scripts": {
"build-dist": "webpack --progress --color",
"build": "yarn build-dist",
"test": "TZ=UTC node --experimental-vm-modules node_modules/jest/bin/jest.js --silent",
"test:e2e": "playwright test",
"watch": "webpack --progress --color --watch",
"minify": "webpack --progress --color --env minimize",
"postinstall": "patch-package",
"lint": "eslint ."
},
"repository": "https://github.com/linkeddata/dokieli",
"keywords": [
"activitystreams",
"activitypub",
"annotations",
"authoring",
"decentralized",
"editor",
"knowledge graph",
"linked data",
"notifications",
"publishing",
"social web",
"web standards"
],
"author": "dokieli team",
"license": "Apache-2.0",
"bugs": {
"url": "https://github.com/linkeddata/dokieli/issues"
},
"homepage": "https://dokie.li/",
"engines": {
"node": ">=18.0.0"
},
"dependencies": {
"buffer": "^6.0.3",
"d3-force": "^3.0.0",
"d3-selection": "^3.0.0",
"diff": "^5.2.0",
"dompurify": "^3.1.5",
"fs": "^0.0.1-security",
"http-link-header": "^1.1.3",
"leaflet": "^1.9.4",
"leaflet-gpx": "^1.7.0",
"medium-editor": "^5.23.3",
"medium-editor-tables": "^0.6.1",
"micromark": "^4.0.0",
"micromark-extension-gfm": "^3.0.0",
"micromark-extension-gfm-tagfilter": "^2.0.0",
"rdf-parser-rdfa": "https://github.com/rdf-ext/rdf-parser-rdfa.git#master",
"rdf-store-ldp": "^0.3.1",
"shower": "https://github.com/shower/core.git#main",
"simplerdf": "^0.2.14",
"simplerdf-parse": "^0.1.3",
"solid-auth-client": "^2.5.6"
},
"devDependencies": {
"@axe-core/playwright": "^4.9.1",
"@playwright/test": "^1.44.1",
"babel-eslint": "^10.1.0",
"dotenv": "^16.4.5",
"eslint": "^9.10.0",
"eslint-plugin-jest": "^27.9.0",
"husky": "^9.0.11",
"jest": "^29.0.3",
"jest-environment-jsdom": "^29.0.3",
"patch-package": "^8.0.0",
"process": "^0.11.10",
"terser-webpack-plugin": "^5.3.3",
"webpack": "5.94.0",
"webpack-cli": "^5.0.1"
},
"resolutions": {
"ansi-regex": "^5.0.0",
"xmldom": "https://github.com/xmldom/xmldom.git#master",
"green-turtle": "https://github.com/csarven/green-turtle#master",
"json5": "^1.0.2",
"http-cache-semantics": "^4.1.1",
"jsonld": "^5.0.0",
"xml2js": "^0.6.2",
"semver": "^7.6.2",
"lru-cache": "^8.0.0",
"micromatch": "^4.0.8"
},
"standard": {
"globals": [
"DO",
"SimpleRDF",
"ld",
"describe",
"it",
"before",
"beforeEach",
"after",
"afterEach"
]
}
}

View File

@ -0,0 +1,58 @@
{
lib,
mkYarnPackage,
fetchFromGitHub,
fetchYarnDeps,
makeWrapper,
nodejs,
xsel,
}:
mkYarnPackage rec {
pname = "dokieli";
version = "0-unstable-2024-09-23";
src = fetchFromGitHub {
owner = "linkeddata";
repo = "dokieli";
rev = "40ebbc60ba48d8b08f763b07befba96382c5f027";
hash = "sha256-lc96jOR8uXLcZFhN3wpSd9O5cUdKxllB8WWCh2oWuEw=";
};
offlineCache = fetchYarnDeps {
yarnLock = src + "/yarn.lock";
hash = "sha256-TEXCCLFhpwHZJ8zRGsC7J6EwNaFpIi+CZ3L5uilebK4=";
};
packageJSON = ./package.json;
installPhase = ''
mkdir -p $out/bin
cp -r * $out
'';
nativeBuildInputs = [ makeWrapper ];
postFixup = ''
makeWrapper ${nodejs}/bin/npx $out/bin/dokieli \
--prefix PATH : ${
lib.makeBinPath ([
nodejs
xsel
])
} \
--add-flags serve \
--chdir $out/deps/dokieli
'';
doDist = false;
meta = {
description = "dokieli is a clientside editor for decentralised article publishing, annotations and social interactions";
homepage = "https://github.com/linkeddata/dokieli";
license = lib.licenses.mit;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ shogo ];
mainProgram = "dokieli";
};
}

View File

@ -2,8 +2,7 @@
, lib
, fetchurl
, autoPatchelfHook
, wrapGAppsHook3
, makeWrapper
, buildPackages
, gnome-keyring
, libsecret
, git
@ -44,7 +43,9 @@ stdenvNoCC.mkDerivation (finalAttrs: {
nativeBuildInputs = [
autoPatchelfHook
(wrapGAppsHook3.override { inherit makeWrapper; })
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
buildInputs = [

View File

@ -16,17 +16,17 @@
buildGoModule rec {
pname = "grafana-alloy";
version = "1.3.1";
version = "1.4.1";
src = fetchFromGitHub {
rev = "v${version}";
owner = "grafana";
repo = "alloy";
hash = "sha256-6YjQUIHZmuguzqTeaLgkrM/WdBPZu/KUXUDOmEB7rNQ=";
hash = "sha256-/LCp4PUt85HR+ig0/v7KlS1cFcFGpI8TXHk3IlcEkvk=";
};
proxyVendor = true;
vendorHash = "sha256-eMtwmADYbvpIm4FHTHieQ1i4xCty5xCwsZ/JD9r94/8=";
vendorHash = "sha256-fhUoQGNRoWNbU5U21X45s+eJ8XjCkvYULTRShyq0f3E=";
nativeBuildInputs = [ fixup-yarn-lock yarn nodejs installShellFiles ];
@ -55,9 +55,14 @@ buildGoModule rec {
"."
];
# Skip building the frontend in the goModules FOD
overrideModAttrs = (_: {
preBuild = null;
});
yarnOfflineCache = fetchYarnDeps {
yarnLock = "${src}/internal/web/ui/yarn.lock";
hash = "sha256-Jk+zqR/+NBde9ywncIEJM4kgavqiDvcIAjxJCSMrZDc=";
hash = "sha256-Y0WcmjFtiNXue2kcJGlvHVBGmMLewGICISoRHnBPHGw=";
};
preBuild = ''

View File

@ -1,33 +1,30 @@
{ lib
, stdenv
, fetchFromSourcehut
, pixman
, libpng
, libjpeg
, meson
, ninja
, pkg-config
, scdoc
, wayland
, wayland-protocols
, wayland-scanner
{
lib,
fetchFromSourcehut,
libjpeg,
libpng,
meson,
ninja,
pixman,
pkg-config,
scdoc,
stdenv,
wayland,
wayland-protocols,
wayland-scanner,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "grim";
version = "1.4.1";
src = fetchFromSourcehut {
owner = "~emersion";
repo = pname;
rev = "v${version}";
repo = "grim";
rev = "v${finalAttrs.version}";
hash = "sha256-5csJqRLNqhyeXR4dEQtnPUSwuZ8oY+BIt6AVICkm1+o=";
};
mesonFlags = [
"-Dwerror=false"
];
nativeBuildInputs = [
meson
ninja
@ -44,12 +41,16 @@ stdenv.mkDerivation rec {
wayland-protocols
];
meta = with lib; {
description = "Grab images from a Wayland compositor";
mesonFlags = [ (lib.mesonBool "werror" false) ];
strictDeps = true;
meta = {
homepage = "https://github.com/emersion/grim";
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ ];
description = "Grab images from a Wayland compositor";
license = lib.licenses.mit;
mainProgram = "grim";
maintainers = with lib.maintainers; [ AndersonTorres ];
inherit (wayland.meta) platforms;
};
}
})

View File

@ -48,7 +48,7 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "ipxe";
version = "1.21.1-unstable-2024-09-13";
version = "1.21.1-unstable-2024-09-27";
nativeBuildInputs = [
gnu-efi
@ -66,8 +66,8 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchFromGitHub {
owner = "ipxe";
repo = "ipxe";
rev = "c85ad1246890cf3c0c5f2ac6de06ab046ddd0043";
hash = "sha256-Py0mXcCj/NhVW3crngR9ZLHvH9N0QJeVmykc3k+yi6Y=";
rev = "3f4f843920afdc1d808a8b20354cf3eca481401a";
hash = "sha256-+Zpl8xhiWrnkFVL+DLuV0N9pn6hjw5JxDMxeDmfcNS4=";
};
# Calling syslinux on a FAT image isn't going to work on Aarch64.

View File

@ -1,67 +1,115 @@
# Builds limine with all available features.
# Derivation containing the Limine host tool and the compiled bootloader
{
# Helpers
stdenv
, fetchurl
, lib
, # Dependencies
llvmPackages
, mtools
, nasm
fetchurl,
lib,
llvmPackages_18,
mtools,
nasm,
# The following options map to configure flags.
enableAll ? false,
buildCDs ? false,
targets ? [ ],
# x86 specific flags
biosSupport ? false,
pxeSupport ? false,
}:
let
version = "7.9.1";
llvmPackages = llvmPackages_18;
stdenv = llvmPackages.stdenv;
version = "8.0.13";
hasI686 =
(if targets == [ ] then stdenv.hostPlatform.isx86_32 else (builtins.elem "i686" targets))
|| enableAll;
hasX86_64 =
(if targets == [ ] then stdenv.hostPlatform.isx86_64 else (builtins.elem "x86_64" targets))
|| enableAll;
uefiFlags =
target:
{
aarch64 = [ "--enable-uefi-aarch64" ];
i686 = [ "--enable-uefi-ia32" ];
loongarch64 = [ "--enable-uefi-loongarch64" ];
riscv64 = [ "--enable-uefi-riscv64" ];
x86_64 = [ "--enable-uefi-x86-64" ];
}
.${target} or (throw "Unsupported target ${target}");
configureFlags =
lib.optionals enableAll [ "--enable-all" ]
++ lib.optionals biosSupport [ "--enable-bios" ]
++ lib.optionals (buildCDs && biosSupport) [ "--enable-bios-cd" ]
++ lib.optionals buildCDs [ "--enable-uefi-cd" ]
++ lib.optionals pxeSupport [ "--enable-bios-pxe" ]
++ lib.concatMap uefiFlags (
if targets == [ ] then [ stdenv.hostPlatform.parsed.cpu.name ] else targets
);
in
assert lib.assertMsg (!(biosSupport && !hasI686)) "BIOS builds are possible only for x86";
assert lib.assertMsg (!(pxeSupport && !hasI686)) "PXE builds are possible only for x86";
# The output of the derivation is a tool to create bootable images using Limine
# as bootloader for various platforms and corresponding binary and helper files.
stdenv.mkDerivation {
inherit version;
inherit version configureFlags;
pname = "limine";
# We don't use the Git source but the release tarball, as the source has a
# `./bootstrap` script performing network access to download resources.
# Packaging that in Nix is very cumbersome.
src = fetchurl {
url = "https://github.com/limine-bootloader/limine/releases/download/v${version}/limine-${version}.tar.gz";
hash = "sha256-cR6ilV5giwvbqUoOGbnXQnqZzUz/oL7OGZPYNoFKvy0=";
hash = "sha256-pg0tAn4YlfEzpyxb9QAAR0PApYmtnafMbIXfhHw+w3k=";
};
nativeBuildInputs = [
llvmPackages.bintools
# gcc is used for the host tool, while clang is used for the bootloader.
llvmPackages.clang
llvmPackages.lld
mtools
nasm
hardeningDisable = [
# clang doesn't support this for RISC-V target
"zerocallusedregs"
];
configureFlags = [
"--enable-all"
nativeBuildInputs =
[
llvmPackages.libllvm
llvmPackages.lld
]
++ lib.optionals (enableAll || buildCDs) [
mtools
]
++ lib.optionals (hasI686 || hasX86_64) [ nasm ];
outputs = [
"out"
"dev"
"doc"
"man"
];
installFlags = [ "destdir=$out" "manprefix=/share" ];
outputs = [ "out" "doc" "dev" "man" ];
meta = with lib; {
homepage = "https://limine-bootloader.org/";
description = "Limine Bootloader";
# Caution. Some submodules have different licenses.
license = [
licenses.bsd2 # limine, flanterm
licenses.bsd0 # freestanding-toolchain, freestanding-headers
licenses.asl20 # cc-runtime
licenses.mit # limine-efi, stb
licenses.zlib # tinf
];
# The platforms on that the Liminine binary and helper tools can run, not
mainProgram = "limine";
# The platforms on that the Limine binary and helper tools can run, not
# necessarily the platforms for that bootable images can be created.
platforms = platforms.unix;
badPlatforms = platforms.darwin;
# Caution. Some submodules have different licenses.
license = [
licenses.asl20 # cc-runtime
licenses.bsd0 # freestanding-toolchain, freestanding-headers
licenses.bsd2 # limine, flanterm
licenses.mit # limine-efi, stb
licenses.zlib # tinf
];
maintainers = [
maintainers._48cf
maintainers.phip1611
maintainers.sanana
maintainers.surfaceflinger
];
};
}

View File

@ -8,14 +8,14 @@
python3.pkgs.buildPythonApplication rec {
pname = "mcdreforged";
version = "2.13.1";
version = "2.13.2";
pyproject = true;
src = fetchFromGitHub {
owner = "MCDReforged";
repo = "MCDReforged";
rev = "refs/tags/v${version}";
hash = "sha256-Um4XSpkpJupBy5h/hUuHNyXnaDvjL1IIcmSqBHKycEM=";
hash = "sha256-4podJ3InBnNc+t4BpCQrg2QbJ9ZJr5fmroXyzo7JrZw=";
};
build-system = [ python3.pkgs.setuptools ];

View File

@ -1,7 +1,6 @@
{ lib
, fetchFromGitHub
, gtk4
, wrapGAppsHook3
, libadwaita
, tdlib
, rlottie
@ -18,6 +17,7 @@
, libshumate
, gst_all_1
, darwin
, buildPackages
}:
let
@ -36,7 +36,7 @@ let
gtk4-paperplane = gtk4.overrideAttrs (prev: {
patches = (prev.patches or []) ++ [ "${src}/build-aux/gtk-reversed-list.patch" ];
});
wrapPaperPlaneHook = wrapGAppsHook3.override {
wrapPaperPlaneHook = buildPackages.wrapGAppsHook3.override {
gtk3 = gtk4-paperplane;
};
# libadwaita has gtk4 in propagatedBuildInputs so it must be overrided

View File

@ -9,10 +9,10 @@
stdenv.mkDerivation rec {
pname = "peergos";
version = "0.19.0";
version = "0.20.0";
src = fetchurl {
url = "https://github.com/Peergos/web-ui/releases/download/v${version}/Peergos.jar";
hash = "sha256-GxJI33EVNSZfmrj5H70kwW9RE8YuJKt36qYmdWKtEJ8=";
hash = "sha256-Kk0ahAsvfTYkmVZTDE+QhyDFHQFY6lpWhmIOYBeJ1xk=";
};
dontUnpack = true;

View File

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "pipet";
version = "0.2.1";
version = "0.2.2";
src = fetchFromGitHub {
owner = "bjesus";
repo = "pipet";
rev = version;
hash = "sha256-PqOx/aFI5gHt78th1nkSKlTGw/r1eU7Ggz5kvtjMCmI=";
hash = "sha256-NhqrNehmL6LLLEOVT/s2PdQ7HtSCfoM4MST1IHVrJXE=";
};
vendorHash = "sha256-jNIjF5jxcpNLAjuWo7OG/Ac4l6NpQNCKzYUgdAoL+C4=";

View File

@ -2,13 +2,13 @@
buildGoModule rec {
pname = "podman-tui";
version = "1.2.1";
version = "1.2.2";
src = fetchFromGitHub {
owner = "containers";
repo = "podman-tui";
rev = "v${version}";
hash = "sha256-Is4qpN6i8zBK0WNYbb/YhtzsrgOth9sQdUT81sx7i7g=";
hash = "sha256-ldFlW0QNjOvuJGyd2SzmMWA3ofS2ZW5krvCJRU83NXs=";
};
vendorHash = null;

View File

@ -0,0 +1,3 @@
{ sasquatch }:
sasquatch.override { bigEndian = true; }

View File

@ -0,0 +1,357 @@
Patch based on commits by Dave Vasilevsky <dave@vasilevsky.ca> and
Blake Riley <blake.riley@gmail.com>, squashed into a single patch,
with BSD-specific changes omitted.
See also https://github.com/plougher/squashfs-tools/pull/69.
diff --git a/squashfs-tools/action.c b/squashfs-tools/action.c
index ea2f604..9c979f8 100644
--- a/squashfs-tools/action.c
+++ b/squashfs-tools/action.c
@@ -39,6 +39,10 @@
#include <errno.h>
#include <ctype.h>
+#ifndef FNM_EXTMATCH /* glibc extension */
+ #define FNM_EXTMATCH 0
+#endif
+
#include "squashfs_fs.h"
#include "mksquashfs.h"
#include "action.h"
@@ -2415,9 +2419,12 @@ static char *get_start(char *s, int n)
static int subpathname_fn(struct atom *atom, struct action_data *action_data)
{
- return fnmatch(atom->argv[0], get_start(strdupa(action_data->subpath),
+ char *path = strdup(action_data->subpath);
+ int is_match = fnmatch(atom->argv[0], get_start(path,
count_components(atom->argv[0])),
FNM_PATHNAME|FNM_EXTMATCH) == 0;
+ free(path);
+ return is_match;
}
/*
diff --git a/squashfs-tools/info.c b/squashfs-tools/info.c
index 216b979..eea2ec9 100644
--- a/squashfs-tools/info.c
+++ b/squashfs-tools/info.c
@@ -144,31 +144,22 @@ void dump_state()
void *info_thrd(void *arg)
{
sigset_t sigmask;
- struct timespec timespec = { .tv_sec = 1, .tv_nsec = 0 };
- int sig, waiting = 0;
+ int sig, err, waiting = 0;
sigemptyset(&sigmask);
sigaddset(&sigmask, SIGQUIT);
sigaddset(&sigmask, SIGHUP);
+ sigaddset(&sigmask, SIGALRM);
while(1) {
- if(waiting)
- sig = sigtimedwait(&sigmask, NULL, &timespec);
- else
- sig = sigwaitinfo(&sigmask, NULL);
+ err = sigwait(&sigmask, &sig);
- if(sig == -1) {
+ if(err == -1) {
switch(errno) {
- case EAGAIN:
- /* interval timed out */
- waiting = 0;
- /* FALLTHROUGH */
case EINTR:
- /* if waiting, the wait will be longer, but
- that's OK */
continue;
default:
- BAD_ERROR("sigtimedwait/sigwaitinfo failed "
+ BAD_ERROR("sigwait failed "
"because %s\n", strerror(errno));
}
}
@@ -179,8 +170,12 @@ void *info_thrd(void *arg)
/* set one second interval period, if ^\ received
within then, dump queue and cache status */
waiting = 1;
- } else
+ alarm(1);
+ } else if (sig == SIGQUIT) {
dump_state();
+ } else if (sig == SIGALRM) {
+ waiting = 0;
+ }
}
}
diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
index 843f9f4..ed2c3a6 100644
--- a/squashfs-tools/mksquashfs.c
+++ b/squashfs-tools/mksquashfs.c
@@ -35,7 +35,12 @@
#include <stddef.h>
#include <sys/types.h>
#include <sys/stat.h>
+#ifndef linux
+#include <sys/sysctl.h>
+#else
+#include <sys/sysinfo.h>
#include <sys/sysmacros.h>
+#endif
#include <fcntl.h>
#include <errno.h>
#include <dirent.h>
@@ -50,7 +55,10 @@
#include <sys/wait.h>
#include <limits.h>
#include <ctype.h>
-#include <sys/sysinfo.h>
+
+#ifndef FNM_EXTMATCH /* glibc extension */
+ #define FNM_EXTMATCH 0
+#endif
#ifndef linux
#include <sys/sysctl.h>
@@ -5064,6 +5072,7 @@ static void initialise_threads(int readq, int fragq, int bwriteq, int fwriteq,
sigemptyset(&sigmask);
sigaddset(&sigmask, SIGQUIT);
sigaddset(&sigmask, SIGHUP);
+ sigaddset(&sigmask, SIGALRM);
if(pthread_sigmask(SIG_BLOCK, &sigmask, NULL) != 0)
BAD_ERROR("Failed to set signal mask in intialise_threads\n");
@@ -5802,6 +5811,35 @@ static int get_physical_memory()
long long page_size = sysconf(_SC_PAGESIZE);
int phys_mem;
+#ifndef linux
+ #ifdef HW_MEMSIZE
+ #define SYSCTL_PHYSMEM HW_MEMSIZE
+ #elif defined(HW_PHYSMEM64)
+ #define SYSCTL_PHYSMEM HW_PHYSMEM64
+ #else
+ #define SYSCTL_PHYSMEM HW_PHYSMEM
+ #endif
+
+ int mib[2];
+ uint64_t sysctl_physmem = 0;
+ size_t sysctl_len = sizeof(sysctl_physmem);
+
+ mib[0] = CTL_HW;
+ mib[1] = SYSCTL_PHYSMEM;
+
+ if(sysctl(mib, 2, &sysctl_physmem, &sysctl_len, NULL, 0) == 0) {
+ /* some systems use 32-bit values, work with what we're given */
+ if (sysctl_len == 4)
+ sysctl_physmem = *(uint32_t*)&sysctl_physmem;
+ phys_mem = sysctl_physmem >> 20;
+ } else {
+ ERROR_START("Failed to get amount of available "
+ "memory.");
+ ERROR_EXIT(" Defaulting to least viable amount\n");
+ phys_mem = SQUASHFS_LOWMEM;
+ }
+ #undef SYSCTL_PHYSMEM
+#else
if(num_pages == -1 || page_size == -1) {
struct sysinfo sys;
int res = sysinfo(&sys);
@@ -5814,6 +5852,7 @@ static int get_physical_memory()
}
phys_mem = num_pages * page_size >> 20;
+#endif
if(phys_mem < SQUASHFS_LOWMEM)
BAD_ERROR("Mksquashfs requires more physical memory than is "
diff --git a/squashfs-tools/read_xattrs.c b/squashfs-tools/read_xattrs.c
index 2067f80..ca8b7f4 100644
--- a/squashfs-tools/read_xattrs.c
+++ b/squashfs-tools/read_xattrs.c
@@ -31,13 +31,13 @@
#include <stdio.h>
#include <string.h>
+#include <stdlib.h>
+
#include "squashfs_fs.h"
#include "squashfs_swap.h"
#include "xattr.h"
#include "error.h"
-#include <stdlib.h>
-
extern int read_fs_bytes(int, long long, long long, void *);
extern int read_block(int, long long, long long *, int, void *);
diff --git a/squashfs-tools/unsquashfs.c b/squashfs-tools/unsquashfs.c
index d434b42..1208e45 100644
--- a/squashfs-tools/unsquashfs.c
+++ b/squashfs-tools/unsquashfs.c
@@ -32,8 +32,12 @@
#include "stdarg.h"
#include "fnmatch_compat.h"
+#ifndef linux
+#include <sys/sysctl.h>
+#else
#include <sys/sysinfo.h>
#include <sys/sysmacros.h>
+#endif
#include <sys/types.h>
#include <sys/time.h>
#include <sys/resource.h>
@@ -1182,7 +1186,7 @@ int create_inode(char *pathname, struct inode *i)
break;
case SQUASHFS_SYMLINK_TYPE:
case SQUASHFS_LSYMLINK_TYPE: {
- struct timespec times[2] = {
+ struct timeval times[2] = {
{ i->time, 0 },
{ i->time, 0 }
};
@@ -1201,8 +1205,7 @@ int create_inode(char *pathname, struct inode *i)
goto failed;
}
- res = utimensat(AT_FDCWD, pathname, times,
- AT_SYMLINK_NOFOLLOW);
+ res = lutimes(pathname, times);
if(res == -1) {
EXIT_UNSQUASH_STRICT("create_inode: failed to"
" set time on %s, because %s\n",
@@ -2687,6 +2690,7 @@ void initialise_threads(int fragment_buffer_size, int data_buffer_size, int cat_
sigemptyset(&sigmask);
sigaddset(&sigmask, SIGQUIT);
sigaddset(&sigmask, SIGHUP);
+ sigaddset(&sigmask, SIGALRM);
if(pthread_sigmask(SIG_BLOCK, &sigmask, NULL) != 0)
EXIT_UNSQUASH("Failed to set signal mask in initialise_threads\n");
diff --git a/squashfs-tools/unsquashfs.h b/squashfs-tools/unsquashfs.h
index 1099678..5b6a038 100644
--- a/squashfs-tools/unsquashfs.h
+++ b/squashfs-tools/unsquashfs.h
@@ -46,6 +46,10 @@
#include <sys/ioctl.h>
#include <sys/time.h>
+#ifndef FNM_EXTMATCH /* glibc extension */
+ #define FNM_EXTMATCH 0
+#endif
+
#include "endian_compat.h"
#include "squashfs_fs.h"
#include "unsquashfs_error.h"
diff --git a/squashfs-tools/unsquashfs_info.c b/squashfs-tools/unsquashfs_info.c
index e906eaf..f1e68c2 100644
--- a/squashfs-tools/unsquashfs_info.c
+++ b/squashfs-tools/unsquashfs_info.c
@@ -96,31 +96,22 @@ void dump_state()
void *info_thrd(void *arg)
{
sigset_t sigmask;
- struct timespec timespec = { .tv_sec = 1, .tv_nsec = 0 };
- int sig, waiting = 0;
+ int sig, err, waiting = 0;
sigemptyset(&sigmask);
sigaddset(&sigmask, SIGQUIT);
sigaddset(&sigmask, SIGHUP);
+ sigaddset(&sigmask, SIGALRM);
while(1) {
- if(waiting)
- sig = sigtimedwait(&sigmask, NULL, &timespec);
- else
- sig = sigwaitinfo(&sigmask, NULL);
+ err = sigwait(&sigmask, &sig);
- if(sig == -1) {
+ if(err == -1) {
switch(errno) {
- case EAGAIN:
- /* interval timed out */
- waiting = 0;
- /* FALLTHROUGH */
case EINTR:
- /* if waiting, the wait will be longer, but
- that's OK */
continue;
default:
- BAD_ERROR("sigtimedwait/sigwaitinfo failed "
+ BAD_ERROR("sigwait failed "
"because %s\n", strerror(errno));
}
}
@@ -132,8 +123,12 @@ void *info_thrd(void *arg)
/* set one second interval period, if ^\ received
within then, dump queue and cache status */
waiting = 1;
- } else
+ alarm(1);
+ } else if (sig == SIGQUIT) {
dump_state();
+ } else if (sig == SIGALRM) {
+ waiting = 0;
+ }
}
}
diff --git a/squashfs-tools/unsquashfs_xattr.c b/squashfs-tools/unsquashfs_xattr.c
index 61910e1..73e0090 100644
--- a/squashfs-tools/unsquashfs_xattr.c
+++ b/squashfs-tools/unsquashfs_xattr.c
@@ -27,6 +27,11 @@
#include <sys/xattr.h>
+#ifdef XATTR_NOFOLLOW /* Apple's xattrs */
+ #define lsetxattr(path_, name_, val_, sz_, flags_) \
+ setxattr(path_, name_, val_, sz_, 0, flags_ | XATTR_NOFOLLOW)
+#endif
+
#define NOSPACE_MAX 10
extern int root_process;
diff --git a/squashfs-tools/xattr.c b/squashfs-tools/xattr.c
index b1c0089..6d7ed98 100644
--- a/squashfs-tools/xattr.c
+++ b/squashfs-tools/xattr.c
@@ -22,6 +22,14 @@
* xattr.c
*/
+#ifndef linux
+#define __BYTE_ORDER BYTE_ORDER
+#define __BIG_ENDIAN BIG_ENDIAN
+#define __LITTLE_ENDIAN LITTLE_ENDIAN
+#else
+#include <endian.h>
+#endif
+
#define TRUE 1
#define FALSE 0
@@ -36,6 +44,13 @@
#include <stdlib.h>
#include <sys/xattr.h>
+#ifdef XATTR_NOFOLLOW /* Apple's xattrs */
+ #define llistxattr(path_, buf_, sz_) \
+ listxattr(path_, buf_, sz_, XATTR_NOFOLLOW)
+ #define lgetxattr(path_, name_, val_, sz_) \
+ getxattr(path_, name_, val_, sz_, 0, XATTR_NOFOLLOW)
+#endif
+
#include "squashfs_fs.h"
#include "squashfs_swap.h"
#include "mksquashfs.h"
--
2.35.1

View File

@ -0,0 +1,72 @@
{
lib,
stdenv,
fetchFromGitHub,
lz4,
lzo,
which,
xz,
zlib,
zstd,
bigEndian ? false,
}:
let
drv = stdenv.mkDerivation (finalAttrs: {
pname = "sasquatch";
version = "4.5.1-4";
src = fetchFromGitHub {
owner = "onekey-sec";
repo = "sasquatch";
rev = "sasquatch-v${finalAttrs.version}";
hash = "sha256-0itva+j5WMKvueiUaO253UQ1S6W29xgtFvV4i3yvMtU=";
};
patches = lib.optional stdenv.isDarwin ./darwin.patch;
strictDeps = true;
nativeBuildInputs = [ which ];
buildInputs = [
zlib
xz
zstd
lz4
lzo
];
preBuild = ''
cd squashfs-tools
'';
installFlags = [
"INSTALL_DIR=${placeholder "out"}/bin"
"INSTALL_MANPAGES_DIR=${placeholder "out"}/share/man/man1"
];
makeFlags = [
"GZIP_SUPPORT=1"
"LZ4_SUPPORT=1"
"LZMA_SUPPORT=1"
"LZO_SUPPORT=1"
"XZ_SUPPORT=1"
"ZSTD_SUPPORT=1"
];
env.NIX_CFLAGS_COMPILE = lib.optionalString bigEndian "-DFIX_BE";
postInstall = lib.optionalString bigEndian ''
mv $out/bin/sasquatch{,-v4be}
'';
meta = {
homepage = "https://github.com/onekey-sec/sasquatch";
description = "Set of patches to the standard unsquashfs utility (part of squashfs-tools) that attempts to add support for as many hacked-up vendor-specific SquashFS implementations as possible";
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ vlaci ];
platforms = lib.platforms.unix;
mainProgram = if bigEndian then "sasquatch-v4be" else "sasquatch";
};
});
in
drv

View File

@ -8,13 +8,13 @@
buildGoModule rec {
pname = "stackql";
version = "0.5.740";
version = "0.5.742";
src = fetchFromGitHub {
owner = "stackql";
repo = "stackql";
rev = "v${version}";
hash = "sha256-XwNz+O0FSNzWFiZvOUQCvcjg6L0f53c2ZaNiT8T0ikU=";
hash = "sha256-GMc22n0y4lKv4DlG9069p/TrMJLyw0Zdiykuo41Tgys=";
};
vendorHash = "sha256-dssGqcS9l3VipEypKErlCeRs087Tb5Kx4VXvkErZar4=";

View File

@ -2,11 +2,11 @@
stdenvNoCC.mkDerivation rec {
pname = "flix";
version = "0.50.0";
version = "0.51.0";
src = fetchurl {
url = "https://github.com/flix/flix/releases/download/v${version}/flix.jar";
sha256 = "sha256-fAEt7JsljnEXubYgiF8uEOuoOXHjv9AHgQbPunaEMw4=";
sha256 = "sha256-JeOw9mdmFAG0mMe8G/yanKCLPbCUPJxUBluNFFqjfbA=";
};
dontUnpack = true;

View File

@ -65,7 +65,7 @@ finalAttrs: prevAttrs: {
# We need to look inside the extracted output to get the files we need.
sourceRoot = "TensorRT-${finalAttrs.version}";
buildInputs = prevAttrs.buildInputs ++ [ finalAttrs.passthru.cudnn.lib ];
buildInputs = prevAttrs.buildInputs ++ [ (finalAttrs.passthru.cudnn.lib or null) ];
preInstall =
(prevAttrs.preInstall or "")

View File

@ -1,10 +1,10 @@
{ lib, buildDunePackage, fetchFromGitHub, ocaml, m4, camlp-streams, core_kernel, ounit }:
{ lib, buildDunePackage, fetchFromGitHub, m4, camlp-streams, core_kernel, ounit }:
buildDunePackage rec {
pname = "cfstream";
version = "1.3.2";
minimalOCamlVersion = "4.07";
minimalOCamlVersion = "4.08";
src = fetchFromGitHub {
owner = "biocaml";
@ -15,13 +15,11 @@ buildDunePackage rec {
patches = [ ./git_commit.patch ./janestreet-0.17.patch ];
strictDeps = true;
nativeBuildInputs = [ m4 ];
checkInputs = [ ounit ];
propagatedBuildInputs = [ camlp-streams core_kernel ];
doCheck = lib.versionAtLeast ocaml.version "4.08";
doCheck = true;
meta = with lib; {
inherit (src.meta) homepage;

View File

@ -4,7 +4,7 @@ buildDunePackage rec {
pname = "ppx_blob";
version = "0.9.0";
duneVersion = "3";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/johnwhitington/${pname}/releases/download/${version}/ppx_blob-${version}.tbz";
@ -13,7 +13,7 @@ buildDunePackage rec {
checkInputs = [ alcotest ];
propagatedBuildInputs = [ ppxlib ];
doCheck = lib.versionAtLeast ocaml.version "4.08";
doCheck = true;
meta = with lib; {
homepage = "https://github.com/johnwhitington/ppx_blob";

View File

@ -4,9 +4,7 @@ buildDunePackage rec {
pname = "printbox";
version = "0.11";
useDune2 = true;
minimalOCamlVersion = "4.03";
minimalOCamlVersion = "4.04";
src = fetchFromGitHub {
owner = "c-cube";

View File

@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "adafruit-io";
version = "2.7.2";
version = "2.8.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "adafruit";
repo = "Adafruit_IO_Python";
rev = "refs/tags/${version}";
hash = "sha256-JBpF08WGe1pMK1y7HZLH/jSQkJtbWdiTGYHWRd39UIk=";
hash = "sha256-OwTHMyc2ePSdYVuY1h3PY+uDBl6/7fTMXiZC3sZm8fU=";
};
nativeBuildInputs = [ setuptools-scm ];

View File

@ -17,14 +17,14 @@
buildPythonPackage rec {
pname = "aiohasupervisor";
version = "0.1.0b1";
version = "0.1.0";
pyproject = true;
disabled = pythonOlder "3.12";
src = fetchPypi {
inherit pname version;
hash = "sha256-INpyN5jdXOzTC6t18PvbkbDM7n4Y4rejb08UfyJyFSk=";
hash = "sha256-Jq9cSdMMXVgRHhQK1LuGwVR6GBTIrw3th7y9huRSQjM=";
};
postPatch = ''

View File

@ -57,14 +57,13 @@ else
--replace '/usr/include/libffi' '${lib.getDev libffi}/include'
'';
nativeBuildInputs = [
pkg-config
setuptools
];
nativeBuildInputs = [ pkg-config ];
build-system = [ setuptools ];
buildInputs = [ libffi ];
propagatedBuildInputs = [ pycparser ];
dependencies = [ pycparser ];
# The tests use -Werror but with python3.6 clang detects some unreachable code.
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-unused-command-line-argument -Wno-unreachable-code -Wno-c++11-narrowing";

View File

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "fastcore";
version = "1.7.9";
version = "1.7.10";
pyproject = true;
disabled = pythonOlder "3.8";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "fastai";
repo = "fastcore";
rev = "refs/tags/${version}";
hash = "sha256-OGqd+pLM3THcPD3JtccjH6sgpVEhcNVnGbIbyMFfqTU=";
hash = "sha256-ksHJrgNju2rEVHcKU6jpW6izQPFgrWvDrvDZy0/Cgug=";
};
build-system = [ setuptools ];

View File

@ -21,14 +21,14 @@
buildPythonPackage rec {
pname = "mobly";
version = "1.12.3";
version = "1.12.4";
pyproject = true;
src = fetchFromGitHub {
owner = "google";
repo = "mobly";
rev = "refs/tags/${version}";
hash = "sha256-hhI1jrHJk4wo49MK8J4VTS2dGmHG2kwzgZeSWBXdXkA=";
hash = "sha256-77wZK5dqxXUkOgWE7NBpGJBbbtYYxRCJwPbtwLIX09I=";
};
build-system = [ setuptools ];

View File

@ -12,12 +12,12 @@
buildPythonPackage rec {
pname = "pulsectl";
version = "24.4.0";
version = "24.8.0";
format = "setuptools";
src = fetchPypi {
inherit pname version;
hash = "sha256-aX7VDn1FLnhniuOOKrk1hDAIvsRIlVKDzQ+zYoZ+MWU=";
hash = "sha256-sFFQbQ1z08xDV879PeF7uFnX7PAE6ZSw98+oeFG8cVY=";
};
patches = [

View File

@ -3,12 +3,12 @@
buildGraalvmNativeImage rec {
pname = "clj-kondo";
version = "2024.08.29";
version = "2024.09.27";
src = fetchurl {
url =
"https://github.com/clj-kondo/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
sha256 = "sha256-0Mvj8FW6/Q9GudaD3lnRFvTjMkkAGwpAokdNJa/HfsI=";
sha256 = "sha256-DrSfL1WazlNd5H0jG6m0S5aED4BLVufr1rGIAyifn6E=";
};
graalvmDrv = graalvmCEPackages.graalvm-ce;

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "fblog";
version = "4.10.0";
version = "4.12.0";
src = fetchFromGitHub {
owner = "brocode";
repo = pname;
rev = "v${version}";
hash = "sha256-4Yg7gWVBG9GI1ailEbbcslM+XR8L7yjjjvf4dQq/87I=";
hash = "sha256-OZE+jqjsyvHLDJ+6r0txH56afufnl4H9PHcG7XRfxnE=";
};
cargoHash = "sha256-8rnQllCne1q1uDpeJkqAdzNKSkEgVp+v9drXL8TaQmM=";
cargoHash = "sha256-zZ/xE7DVX1HSK81xwB4VxCtnOTUwJvSScmJeA/t/ACI=";
meta = with lib; {
description = "Small command-line JSON log viewer";

View File

@ -17,7 +17,7 @@
let
otherArgs = lib.attrsets.removeAttrs args [ "pname" "data" "repo" "releasePrefix" "isMultiArch" ];
inherit (stdenvNoCC.hostPlatform) system;
inherit (if isCrossArch then data else data.${system}) url hash;
inherit (if isCrossArch then data else data.${system} or (throw "gaugePlugins.${pname}: No source for system: ${system}")) url hash;
# Upstream uses a different naming scheme for platforms
systemMap = {
"x86_64-darwin" = "darwin.x86_64";

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "gosec";
version = "2.21.2";
version = "2.21.4";
src = fetchFromGitHub {
owner = "securego";
repo = pname;
rev = "v${version}";
hash = "sha256-1lVyIytIorxxipDZAf2AYqtO1Slz9aUw6MpC40ji89w=";
hash = "sha256-fu0k+dZyEo2l0PWfN8iryGgUIJsWi7AQD3ku+w1tuGM=";
};
vendorHash = "sha256-jxbGAEvkjvuK878nkl8TGbZmBzS7n9nG4hH9BL3UGwE=";
vendorHash = "sha256-LYEAQ/7S31Rv2gmkLReV1lKeAHW5DpKkegKb0Js75q0=";
subPackages = [
"cmd/gosec"

View File

@ -9,6 +9,7 @@
, libGLX
, coreutils
, unixtools
, runtimeShell
, targetPackages
, gnugrep
, gawk
@ -89,7 +90,7 @@ stdenv.mkDerivation rec {
preFixup = ''
substituteInPlace $out/libexec/pgms/multi.sh \
--replace '/bin/sh "$' '${targetPackages.runtimeShell} "$'
--replace '/bin/sh "$' '${runtimeShell} "$'
substituteInPlace $out/bin/ubench \
--subst-var out

View File

@ -3,6 +3,7 @@
, atk
, autoPatchelfHook
, buildEnv
, buildPackages
, cairo
, cups
, dbus
@ -32,7 +33,6 @@
, stdenv
, systemd
, udev
, wrapGAppsHook3
, xorg
}:
@ -107,7 +107,9 @@ stdenv.mkDerivation {
nativeBuildInputs = [
autoPatchelfHook
(wrapGAppsHook3.override { inherit makeWrapper; })
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
buildInputs = [ nwEnv ];

View File

@ -8,13 +8,13 @@
}:
buildGoModule rec {
pname = "turso-cli";
version = "0.97.1";
version = "0.97.2";
src = fetchFromGitHub {
owner = "tursodatabase";
repo = "turso-cli";
rev = "v${version}";
hash = "sha256-sS9H9mdbjV2EEsMKikQKND+gPeghH5cqRxhHcbjr7ok=";
hash = "sha256-6Ci1QESSN6wNpUAQoWtTyHWrGaI/3xs/jGCSkJsYC8o=";
};
vendorHash = "sha256-tBO21IgUczwMgrEyV7scV3YTY898lYHASaLeXqvBopU=";

View File

@ -4,13 +4,13 @@
, gtk2
, gtk3
, lib
, buildPackages
, makeShellWrapper
, mesa
, nss
, stdenv
, udev
, unzip
, wrapGAppsHook3
, xorg
, darwin
}:
@ -46,8 +46,18 @@ in stdenv.mkDerivation rec {
# don't remove runtime deps
dontPatchELF = true;
nativeBuildInputs = [ unzip makeShellWrapper ]
++ lib.optionals stdenv.isLinux [ autoPatchelfHook (wrapGAppsHook3.override { makeWrapper = makeShellWrapper; }) ];
nativeBuildInputs =
[
unzip
makeShellWrapper
]
++ lib.optionals stdenv.isLinux [
autoPatchelfHook
# override doesn't preserve splicing https://github.com/NixOS/nixpkgs/issues/132651
# Has to use `makeShellWrapper` from `buildPackages` even though `makeShellWrapper` from the inputs is spliced because `propagatedBuildInputs` would pick the wrong one because of a different offset.
(buildPackages.wrapGAppsHook3.override { makeWrapper = buildPackages.makeShellWrapper; })
];
buildInputs = lib.optionals stdenv.isLinux (with xorg; [
libXScrnSaver

View File

@ -6,13 +6,13 @@
stdenvNoCC.mkDerivation rec {
pname = "nu_scripts";
version = "0-unstable-2024-09-11";
version = "0-unstable-2024-09-26";
src = fetchFromGitHub {
owner = "nushell";
repo = pname;
rev = "d04eea634a3ac35d481fa26c35271dfe175bf3e2";
hash = "sha256-uHD8j98WubyvtbtOqTdfGmeRJ7zoVDVZ9+CJzmB6vF0=";
rev = "e10ffbaaa7dc8c9ecd300e72d5f0b6c7e6691175";
hash = "sha256-CT4CI/oKidy7nwiqEbDJxKDuinrcjGQBke9bwwOcD8A=";
};
installPhase = ''

View File

@ -1,76 +0,0 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchurl
, xz
, lzo
, zlib
, zstd
, lz4
, lz4Support ? false
}:
let
patch = fetchFromGitHub
{
# NOTE: This uses my personal fork for now, until
# https://github.com/devttys0/sasquatch/pull/40 is merged.
# I, cole-h, will keep this fork available until that happens.
owner = "cole-h";
repo = "sasquatch";
rev = "6edc54705454c6410469a9cb5bc58e412779731a";
sha256 = "x+PuPYGD4Pd0fcJtlLWByGy/nggsmZkxwSXxJfPvUgo=";
} + "/patches/patch0.txt";
in
stdenv.mkDerivation rec {
pname = "sasquatch";
version = "4.4";
src = fetchurl {
url = "mirror://sourceforge/squashfs/squashfs${version}.tar.gz";
sha256 = "qYGz8/IFS1ouZYhRo8BqJGCtBKmopkXgr+Bjpj/bsH4=";
};
buildInputs = [
xz
lzo
zlib
zstd
]
++ lib.optionals lz4Support [ lz4 ];
patches = [ patch ];
patchFlags = [ "-p0" ];
postPatch = ''
# Drop blanket -Werror to avoid build failure on fresh toolchains
# like gcc-11.
substituteInPlace squashfs-tools/Makefile --replace ' -Werror' ' '
cd squashfs-tools
'';
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: unsquashfs_xattr.o:/build/squashfs4.4/squashfs-tools/error.h:34: multiple definition of
# `verbose'; unsquashfs.o:/build/squashfs4.4/squashfs-tools/error.h:34: first defined here
env.NIX_CFLAGS_COMPILE = "-fcommon";
installFlags = [ "INSTALL_DIR=\${out}/bin" ];
makeFlags = [
"XZ_SUPPORT=1"
"CC=${stdenv.cc.targetPrefix}cc"
"CXX=${stdenv.cc.targetPrefix}c++"
"AR=${stdenv.cc.targetPrefix}ar"
]
++ lib.optional lz4Support "LZ4_SUPPORT=1";
meta = with lib; {
homepage = "https://github.com/devttys0/sasquatch";
description = "Set of patches to the standard unsquashfs utility (part of squashfs-tools) that attempts to add support for as many hacked-up vendor-specific SquashFS implementations as possible";
license = licenses.gpl2Plus;
maintainers = [ maintainers.pamplemousse ];
platforms = platforms.linux;
mainProgram = "sasquatch";
};
}

View File

@ -5,16 +5,16 @@
rustPlatform.buildRustPackage rec {
pname = "automatic-timezoned";
version = "2.0.32";
version = "2.0.33";
src = fetchFromGitHub {
owner = "maxbrunet";
repo = pname;
rev = "v${version}";
sha256 = "sha256-J8DAHwbpcSQtOWOkWjya3zXRhr9Dje2QzumDmeq2rR0=";
sha256 = "sha256-q2OVd3eb1zGQMiI3T0oXAq5dFzdYTYQGqPNBUeuMEck=";
};
cargoHash = "sha256-M0MX2ZjVsJuWQ6nuxpF1VDYIlGPAsebRbxZ40oSYVO0=";
cargoHash = "sha256-cu6d9sCvVYt+85cl0dTOY9874QdnyA13T7Nb/KFjkMg=";
meta = with lib; {
description = "Automatically update system timezone based on location";

View File

@ -7,13 +7,13 @@
buildGoModule rec {
pname = "nsc";
version = "2.8.9";
version = "2.9.0";
src = fetchFromGitHub {
owner = "nats-io";
repo = pname;
rev = "v${version}";
hash = "sha256-KNW9meeThHT9ZZJFXsb9RAzLsvgnaXWbuMR4tei/s2U=";
hash = "sha256-pzUjcezzZ3Fo9b7nuPV08ZSxrk7cBufQL6Dbfvmjkg4=";
};
ldflags = [
@ -23,7 +23,7 @@ buildGoModule rec {
"-X main.builtBy=nixpkgs"
];
vendorHash = "sha256-3qUgzvb7VkYrlYb+W0ZycJ0S7CQAHSUFNQSfwiKqMdI=";
vendorHash = "sha256-tZTrjIax3zofrRuSJQO7VA7rlTXN/GT1KTcsLpvB+2Q=";
nativeBuildInputs = [ installShellFiles ];
@ -46,7 +46,7 @@ buildGoModule rec {
# the test strips table formatting from the command output in a naive way
# that removes all the table characters, including '-'.
# The nix build directory looks something like:
# /private/tmp/nix-build-nsc-2.8.9.drv-0/nsc_test2000598938/keys
# /private/tmp/nix-build-nsc-2.9.0.drv-0/nsc_test2000598938/keys
# Then the `-` are removed from the path unintentionally and the test fails.
# This should be fixed upstream to avoid mangling the path when
# removing the table decorations from the command output.

View File

@ -2186,15 +2186,7 @@ with pkgs;
humanfriendly;
};
git-annex-remote-googledrive = callPackage ../applications/version-management/git-annex-remote-googledrive {
inherit (python3Packages)
buildPythonApplication
annexremote
drivelib
gitpython
tenacity
humanfriendly;
};
git-annex-remote-googledrive = python3Packages.callPackage ../applications/version-management/git-annex-remote-googledrive { };
git-annex-remote-rclone = callPackage ../applications/version-management/git-annex-remote-rclone { };
@ -5195,8 +5187,6 @@ with pkgs;
pythonPackages = python3Packages;
};
grim = callPackage ../tools/graphics/grim { };
grit = callPackage ../tools/misc/grit { };
grobi = callPackage ../tools/X11/grobi { };
@ -12128,8 +12118,6 @@ with pkgs;
sanctity = callPackage ../tools/misc/sanctity { };
sasquatch = callPackage ../tools/filesystems/sasquatch { };
sasview = libsForQt5.callPackage ../applications/science/misc/sasview { };
sbs = callPackage ../tools/X11/sbs { };