Merge staging-next into staging

This commit is contained in:
github-actions[bot]
2025-01-03 00:14:58 +00:00
committed by GitHub
76 changed files with 1291 additions and 403 deletions
+5 -2
View File
@@ -7,9 +7,12 @@ The module system is a language for handling configuration, implemented as a Nix
Compared to plain Nix, it adds documentation, type checking and composition or extensibility.
::: {.note}
This chapter is new and not complete yet. For a gentle introduction to the module system, in the context of NixOS, see [Writing NixOS Modules](https://nixos.org/manual/nixos/unstable/index.html#sec-writing-modules) in the NixOS manual.
:::
This chapter is new and not complete yet.
See also:
- Introduction to the module system, in the context of NixOS, see [Writing NixOS Modules](https://nixos.org/manual/nixos/unstable/index.html#sec-writing-modules) in the NixOS manual.
- Generic guide to the module system on [nix.dev](https://nix.dev/tutorials/module-system/index.html).
:::
## `lib.evalModules` {#module-system-lib-evalModules}
+12
View File
@@ -5988,6 +5988,12 @@
githubId = 57304299;
keys = [ { fingerprint = "33CD 5C0A 673C C54D 661E 5E4C 0DB5 361B EEE5 30AB"; } ];
};
dopplerian = {
name = "Dopplerian";
github = "Dopplerian";
githubId = 53937537;
keys = [ { fingerprint = "BBC4 C071 516B A147 8D07 F9DC D2FD E6EC 2E8C 2BF4"; } ];
};
doriath = {
email = "tomasz.zurkowski@gmail.com";
github = "doriath";
@@ -22308,6 +22314,12 @@
github = "teatwig";
githubId = 18734648;
};
tebriel = {
email = "tebriel@frodux.in";
name = "tebriel";
github = "tebriel";
githubId = 821688;
};
techknowlogick = {
email = "techknowlogick@gitea.com";
github = "techknowlogick";
@@ -51,6 +51,8 @@
- [networking.modemmanager](options.html#opt-networking.modemmanager) has been split out of [networking.networkmanager](options.html#opt-networking.networkmanager). NetworkManager still enables ModemManager by default, but options exist now to run NetworkManager without ModemManager.
- [ncps](https://github.com/kalbasit/ncps), a Nix binary cache proxy service implemented in Go using [go-nix](https://github.com/nix-community/go-nix). Available as [services.ncps](options.html#opt-services.ncps.enable).
- [Conduwuit](https://conduwuit.puppyirl.gay/), a federated chat server implementing the Matrix protocol, forked from Conduit. Available as [services.conduwuit](#opt-services.conduwuit.enable).
- [Traccar](https://www.traccar.org/), a modern GPS Tracking Platform. Available as [services.traccar](#opt-services.traccar.enable).
@@ -306,6 +308,8 @@
- For matrix homeserver Synapse we are now following the upstream recommendation to enable jemalloc as the memory allocator by default.
- `services.kmonad` now creates a determinate symlink (in `/dev/input/by-id/`) to each of KMonad virtual devices.
- `bind.cacheNetworks` now only controls access for recursive queries, where it previously controlled access for all queries.
- Caddy can now be built with plugins by using `caddy.withPlugins`, a `passthru` function that accepts an attribute set as a parameter. The `plugins` argument represents a list of Caddy plugins, with each Caddy plugin being a versioned module. The `hash` argument represents the `vendorHash` of the resulting Caddy source code with the plugins added.
+1
View File
@@ -1160,6 +1160,7 @@
./services/networking/nats.nix
./services/networking/nbd.nix
./services/networking/ncdns.nix
./services/networking/ncps.nix
./services/networking/ndppd.nix
./services/networking/nebula.nix
./services/networking/netbird.nix
+1 -1
View File
@@ -75,7 +75,7 @@ let
{
freeformType = attrsOf (either scalarType (listOf scalarType));
# Client system-options file directives are explained here:
# https://www.ibm.com/docs/en/storage-protect/8.1.24?topic=commands-processing-options
# https://www.ibm.com/docs/en/storage-protect/8.1.25?topic=commands-processing-options
options.servername = mkOption {
type = servernameType;
default = name;
+1 -1
View File
@@ -89,7 +89,7 @@ in
environment.HOME = "/var/lib/tsm-backup";
serviceConfig = {
# for exit status description see
# https://www.ibm.com/docs/en/storage-protect/8.1.24?topic=clients-client-return-codes
# https://www.ibm.com/docs/en/storage-protect/8.1.25?topic=clients-client-return-codes
SuccessExitStatus = "4 8";
# The `-se` option must come after the command.
# The `-optfile` option suppresses a `dsm.opt`-not-found warning.
@@ -205,9 +205,14 @@ in
};
extraConfig = mkOption {
description = "Kubernetes kubelet extra configuration file entries.";
description = ''
Kubernetes kubelet extra configuration file entries.
See also [Set Kubelet Parameters Via A Configuration File](https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/)
and [Kubelet Configuration](https://kubernetes.io/docs/reference/config-api/kubelet-config.v1beta1/).
'';
default = { };
type = attrsOf attrs;
type = attrsOf ((pkgs.formats.json { }).type);
};
featureGates = mkOption {
+16 -11
View File
@@ -2,6 +2,7 @@
config,
lib,
pkgs,
utils,
...
}:
@@ -118,19 +119,8 @@ let
# Build a systemd service that starts KMonad:
mkService =
keyboard:
let
cmd =
[
(lib.getExe cfg.package)
"--input"
''device-file "${keyboard.device}"''
]
++ cfg.extraArgs
++ [ "${mkCfg keyboard}" ];
in
lib.nameValuePair (mkName keyboard.name) {
description = "KMonad for ${keyboard.device}";
script = lib.escapeShellArgs cmd;
unitConfig = {
# Control rate limiting.
# Stop the restart logic if we restart more than
@@ -139,6 +129,10 @@ let
StartLimitBurst = 5;
};
serviceConfig = {
ExecStart = ''
${lib.getExe cfg.package} ${mkCfg keyboard} \
${utils.escapeSystemdExecArgs cfg.extraArgs}
'';
Restart = "always";
# Restart at increasing intervals from 2s to 1m
RestartSec = 2;
@@ -195,6 +189,17 @@ in
config = lib.mkIf cfg.enable {
hardware.uinput.enable = true;
services.udev.extraRules =
let
mkRule = name: ''
ACTION=="add", KERNEL=="event*", SUBSYSTEM=="input", ATTRS{name}=="${name}", ATTRS{id/product}=="5679", ATTRS{id/vendor}=="1235", SYMLINK+="input/by-id/${name}"
'';
in
lib.foldlAttrs (
rules: _: keyboard:
rules + "\n" + mkRule (mkName keyboard.name)
) "" cfg.keyboards;
systemd = {
paths = lib.mapAttrs' (_: mkPath) cfg.keyboards;
services = lib.mapAttrs' (_: mkService) cfg.keyboards;
+326
View File
@@ -0,0 +1,326 @@
{
config,
pkgs,
lib,
...
}:
let
cfg = config.services.ncps;
logLevels = [
"trace"
"debug"
"info"
"warn"
"error"
"fatal"
"panic"
];
globalFlags = lib.concatStringsSep " " (
[ "--log-level='${cfg.logLevel}'" ]
++ (lib.optionals cfg.openTelemetry.enable (
[
"--otel-enabled"
]
++ (lib.optional (
cfg.openTelemetry.grpcURL != null
) "--otel-grpc-url='${cfg.openTelemetry.grpcURL}'")
))
);
serveFlags = lib.concatStringsSep " " (
[
"--cache-hostname='${cfg.cache.hostName}'"
"--cache-data-path='${cfg.cache.dataPath}'"
"--cache-database-url='${cfg.cache.databaseURL}'"
"--server-addr='${cfg.server.addr}'"
]
++ (lib.optional cfg.cache.allowDeleteVerb "--cache-allow-delete-verb")
++ (lib.optional cfg.cache.allowPutVerb "--cache-allow-put-verb")
++ (lib.optional (cfg.cache.maxSize != null) "--cache-max-size='${cfg.cache.maxSize}'")
++ (lib.optionals (cfg.cache.lru.schedule != null) [
"--cache-lru-schedule='${cfg.cache.lru.schedule}'"
"--cache-lru-schedule-timezone='${cfg.cache.lru.scheduleTimeZone}'"
])
++ (lib.optional (cfg.cache.secretKeyPath != null) "--cache-secret-key-path='%d/secretKey'")
++ (lib.forEach cfg.upstream.caches (url: "--upstream-cache='${url}'"))
++ (lib.forEach cfg.upstream.publicKeys (pk: "--upstream-public-key='${pk}'"))
);
isSqlite = lib.strings.hasPrefix "sqlite:" cfg.cache.databaseURL;
dbPath = lib.removePrefix "sqlite:" cfg.cache.databaseURL;
dbDir = dirOf dbPath;
in
{
options = {
services.ncps = {
enable = lib.mkEnableOption "ncps: Nix binary cache proxy service implemented in Go";
package = lib.mkPackageOption pkgs "ncps" { };
dbmatePackage = lib.mkPackageOption pkgs "dbmate" { };
openTelemetry = {
enable = lib.mkEnableOption "Enable OpenTelemetry logs, metrics, and tracing";
grpcURL = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = null;
description = ''
Configure OpenTelemetry gRPC URL. Missing or "https" scheme enables
secure gRPC, "insecure" otherwise. Omit to emit telemetry to
stdout.
'';
};
};
logLevel = lib.mkOption {
type = lib.types.enum logLevels;
default = "info";
description = ''
Set the level for logging. Refer to
<https://pkg.go.dev/github.com/rs/zerolog#readme-leveled-logging> for
more information.
'';
};
cache = {
allowDeleteVerb = lib.mkEnableOption ''
Whether to allow the DELETE verb to delete narinfo and nar files from
the cache.
'';
allowPutVerb = lib.mkEnableOption ''
Whether to allow the PUT verb to push narinfo and nar files directly
to the cache.
'';
hostName = lib.mkOption {
type = lib.types.str;
description = ''
The hostname of the cache server. **This is used to generate the
private key used for signing store paths (.narinfo)**
'';
};
dataPath = lib.mkOption {
type = lib.types.str;
default = "/var/lib/ncps";
description = ''
The local directory for storing configuration and cached store paths
'';
};
databaseURL = lib.mkOption {
type = lib.types.str;
default = "sqlite:${cfg.cache.dataPath}/db/db.sqlite";
defaultText = "sqlite:/var/lib/ncps/db/db.sqlite";
description = ''
The URL of the database (currently only SQLite is supported)
'';
};
lru = {
schedule = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = null;
example = "0 2 * * *";
description = ''
The cron spec for cleaning the store to keep it under
config.ncps.cache.maxSize. Refer to
https://pkg.go.dev/github.com/robfig/cron/v3#hdr-Usage for
documentation.
'';
};
scheduleTimeZone = lib.mkOption {
type = lib.types.str;
default = "Local";
example = "America/Los_Angeles";
description = ''
The name of the timezone to use for the cron schedule. See
<https://en.wikipedia.org/wiki/List_of_tz_database_time_zones>
for a comprehensive list of possible values for this setting.
'';
};
};
maxSize = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = null;
example = "100G";
description = ''
The maximum size of the store. It can be given with units such as
5K, 10G etc. Supported units: B, K, M, G, T.
'';
};
secretKeyPath = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = null;
description = ''
The path to load the secretKey for signing narinfos. Leave this
empty to automatically generate a private/public key.
'';
};
};
server = {
addr = lib.mkOption {
type = lib.types.str;
default = ":8501";
description = ''
The address and port the server listens on.
'';
};
};
upstream = {
caches = lib.mkOption {
type = lib.types.listOf lib.types.str;
example = [ "https://cache.nixos.org" ];
description = ''
A list of URLs of upstream binary caches.
'';
};
publicKeys = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ ];
example = [ "cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" ];
description = ''
A list of public keys of upstream caches in the format
`host[-[0-9]*]:public-key`. This flag is used to verify the
signatures of store paths downloaded from upstream caches.
'';
};
};
};
};
config = lib.mkIf cfg.enable {
assertions = [
{
assertion = cfg.cache.lru.schedule == null || cfg.cache.maxSize != null;
message = "You must specify config.ncps.cache.lru.schedule when config.ncps.cache.maxSize is set";
}
{
assertion = cfg.cache.secretKeyPath == null || (builtins.pathExists cfg.cache.secretKeyPath);
message = "config.ncps.cache.secresecretKeyPath=${cfg.cache.secretKeyPath} must exist but does not";
}
];
users.users.ncps = {
isSystemUser = true;
group = "ncps";
};
users.groups.ncps = { };
systemd.services.ncps-create-datadirs = {
description = "Created required directories by ncps";
serviceConfig = {
Type = "oneshot";
UMask = "0066";
};
script =
(lib.optionalString (cfg.cache.dataPath != "/var/lib/ncps") ''
if ! test -d ${cfg.cache.dataPath}; then
mkdir -p ${cfg.cache.dataPath}
chown ncps:ncps ${cfg.cache.dataPath}
fi
'')
+ (lib.optionalString isSqlite ''
if ! test -d ${dbDir}; then
mkdir -p ${dbDir}
chown ncps:ncps ${dbDir}
fi
'');
wantedBy = [ "ncps.service" ];
before = [ "ncps.service" ];
};
systemd.services.ncps = {
description = "ncps binary cache proxy service";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
preStart = ''
${lib.getExe cfg.dbmatePackage} --migrations-dir=${cfg.package}/share/ncps/db/migrations --url=${cfg.cache.databaseURL} up
'';
serviceConfig = lib.mkMerge [
{
ExecStart = "${lib.getExe cfg.package} ${globalFlags} serve ${serveFlags}";
User = "ncps";
Group = "ncps";
Restart = "on-failure";
RuntimeDirectory = "ncps";
}
# credentials
(lib.mkIf (cfg.cache.secretKeyPath != null) {
LoadCredential = "secretKey:${cfg.cache.secretKeyPath}";
})
# ensure permissions on required directories
(lib.mkIf (cfg.cache.dataPath != "/var/lib/ncps") {
ReadWritePaths = [ cfg.cache.dataPath ];
})
(lib.mkIf (cfg.cache.dataPath == "/var/lib/ncps") {
StateDirectory = "ncps";
StateDirectoryMode = "0700";
})
(lib.mkIf (isSqlite && !lib.strings.hasPrefix "/var/lib/ncps" dbDir) {
ReadWritePaths = [ dbDir ];
})
# Hardening
{
SystemCallFilter = [
"@system-service"
"~@privileged"
"~@resources"
];
CapabilityBoundingSet = "";
PrivateUsers = true;
DevicePolicy = "closed";
DeviceAllow = [ "" ];
ProtectKernelModules = true;
ProtectKernelTunables = true;
ProtectControlGroups = true;
ProtectKernelLogs = true;
ProtectHostname = true;
ProtectClock = true;
ProtectProc = "invisible";
ProtectSystem = "strict";
ProtectHome = true;
RestrictSUIDSGID = true;
RestrictRealtime = true;
MemoryDenyWriteExecute = true;
ProcSubset = "pid";
RestrictNamespaces = true;
SystemCallArchitectures = "native";
PrivateNetwork = false;
PrivateTmp = true;
PrivateDevices = true;
PrivateMounts = true;
NoNewPrivileges = true;
LockPersonality = true;
RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6";
LimitNOFILE = 65536;
UMask = "0066";
}
];
unitConfig.RequiresMountsFor = lib.concatStringsSep " " (
[ "${cfg.cache.dataPath}" ] ++ lib.optional (isSqlite) dbDir
);
};
};
meta.maintainers = with lib.maintainers; [ kalbasit ];
}
+54 -8
View File
@@ -9,18 +9,31 @@ let
cfg = config.services.komga;
inherit (lib) mkOption mkEnableOption maintainers;
inherit (lib.types) port str bool;
settingsFormat = pkgs.formats.yaml { };
in
{
imports = [
(lib.mkRenamedOptionModule
[
"services"
"komga"
"port"
]
[
"services"
"komga"
"settings"
"server"
"port"
]
)
];
options = {
services.komga = {
enable = mkEnableOption "Komga, a free and open source comics/mangas media server";
port = mkOption {
type = port;
default = 8080;
description = "The port that Komga will listen on.";
};
user = mkOption {
type = str;
default = "komga";
@@ -39,10 +52,25 @@ in
description = "State and configuration directory Komga will use.";
};
settings = lib.mkOption {
inherit (settingsFormat) type;
default = { };
defaultText = lib.literalExpression ''
{
server.port = 8080;
}
'';
description = ''
Komga configuration.
See [documentation](https://komga.org/docs/installation/configuration).
'';
};
openFirewall = mkOption {
type = bool;
default = false;
description = "Whether to open the firewall for the port in {option}`services.komga.port`.";
description = "Whether to open the firewall for the port in {option}`services.komga.settings.server.port`.";
};
};
};
@@ -52,6 +80,16 @@ in
inherit (lib) mkIf getExe;
in
mkIf cfg.enable {
assertions = [
{
assertion = (cfg.settings.komga.config-dir or cfg.stateDir) == cfg.stateDir;
message = "You must use the `services.komga.stateDir` option to properly configure `komga.config-dir`.";
}
];
services.komga.settings = {
server.port = lib.mkDefault 8080;
};
networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ];
@@ -66,9 +104,17 @@ in
};
};
systemd.tmpfiles.settings."10-komga" = {
${cfg.stateDir}.d = {
inherit (cfg) user group;
};
"${cfg.stateDir}/application.yml"."L+" = {
argument = builtins.toString (settingsFormat.generate "application.yml" cfg.settings);
};
};
systemd.services.komga = {
environment = {
SERVER_PORT = builtins.toString cfg.port;
KOMGA_CONFIGDIR = cfg.stateDir;
};
@@ -88,9 +88,13 @@ in
]
}
pushd $out
tar -Sc $diskImage | gzip -${toString cfg.compressionLevel} > \
# RTFM:
# https://cloud.google.com/compute/docs/images/create-custom
# https://cloud.google.com/compute/docs/import/import-existing-image
mv $diskImage disk.raw
tar -Sc disk.raw | gzip -${toString cfg.compressionLevel} > \
${config.image.fileName}
rm $diskImage
rm disk.raw
popd
'';
format = "raw";
+5
View File
@@ -660,6 +660,11 @@ in {
navidrome = handleTest ./navidrome.nix {};
nbd = handleTest ./nbd.nix {};
ncdns = handleTest ./ncdns.nix {};
ncps = runTest ./ncps.nix;
ncps-custom-cache-datapath = runTest {
imports = [ ./ncps.nix ];
defaults.services.ncps.cache.dataPath = "/path/to/ncps";
};
ndppd = handleTest ./ndppd.nix {};
nix-channel = pkgs.callPackage ../modules/config/nix-channel/test.nix { };
nebula = handleTest ./nebula.nix {};
+5
View File
@@ -11,6 +11,9 @@
machine = {
services.kmonad = {
enable = true;
extraArgs = [
"--log-level=debug"
];
keyboards = {
defaultKbd = {
device = "/dev/input/by-id/vm-default-kbd";
@@ -43,5 +46,7 @@
with subtest("kmonad is running"):
machine.succeed(f"systemctl status {service_name}")
with subtest("kmonad symlink is created"):
machine.wait_for_file(f"/dev/input/by-id/{service_name}", timeout=5)
'';
}
+1 -1
View File
@@ -8,7 +8,7 @@ import ./make-test-python.nix ({ lib, ... }:
{ pkgs, ... }:
{ services.komga = {
enable = true;
port = 1234;
settings.server.port = 1234;
};
};
+89
View File
@@ -0,0 +1,89 @@
{
lib,
pkgs,
...
}:
{
name = "ncps";
nodes = {
harmonia = {
services.harmonia = {
enable = true;
signKeyPaths = [
(pkgs.writeText "cache-key" "cache.example.com-1:9FhO0w+7HjZrhvmzT1VlAZw4OSAlFGTgC24Seg3tmPl4gZBdwZClzTTHr9cVzJpwsRSYLTu7hEAQe3ljy92CWg==")
];
settings.priority = 35;
};
networking.firewall.allowedTCPPorts = [ 5000 ];
system.extraDependencies = [ pkgs.emptyFile ];
};
ncps = {
services.ncps = {
enable = true;
cache = {
hostName = "ncps";
secretKeyPath = builtins.toString (
pkgs.writeText "ncps-cache-key" "ncps:dcrGsrku0KvltFhrR5lVIMqyloAdo0y8vYZOeIFUSLJS2IToL7dPHSSCk/fi+PJf8EorpBn8PU7MNhfvZoI8mA=="
);
};
upstream = {
caches = [ "http://harmonia:5000" ];
publicKeys = [
"cache.example.com-1:eIGQXcGQpc00x6/XFcyacLEUmC07u4RAEHt5Y8vdglo="
];
};
};
networking.firewall.allowedTCPPorts = [ 8501 ];
};
client01 = {
nix.settings = {
substituters = lib.mkForce [ "http://ncps:8501" ];
trusted-public-keys = lib.mkForce [
"ncps:UtiE6C+3Tx0kgpP34vjyX/BKK6QZ/D1OzDYX72aCPJg="
];
};
};
};
testScript =
{ nodes, ... }:
let
narinfoName =
(lib.strings.removePrefix "/nix/store/" (
lib.strings.removeSuffix "-empty-file" pkgs.emptyFile.outPath
))
+ ".narinfo";
narinfoNameChars = lib.strings.stringToCharacters narinfoName;
narinfoPath = lib.concatStringsSep "/" [
nodes.ncps.services.ncps.cache.dataPath
"store/narinfo"
(lib.lists.elemAt narinfoNameChars 0)
((lib.lists.elemAt narinfoNameChars 0) + (lib.lists.elemAt narinfoNameChars 1))
narinfoName
];
in
''
start_all()
harmonia.wait_for_unit("harmonia.service")
ncps.wait_for_unit("ncps.service")
client01.wait_until_succeeds("curl -f http://ncps:8501/ | grep '\"hostname\":\"${toString nodes.ncps.services.ncps.cache.hostName}\"' >&2")
client01.succeed("cat /etc/nix/nix.conf >&2")
client01.succeed("nix-store --realise ${pkgs.emptyFile}")
ncps.succeed("cat ${narinfoPath} >&2")
'';
}
@@ -761,6 +761,9 @@ let
# Optimizer error: too much on the stack
ack-menu = ignoreCompilationError super.ack-menu;
# https://github.com/skeeto/emacs-aio/issues/31
aio = ignoreCompilationError super.aio;
# https://github.com/gongo/airplay-el/issues/2
airplay = addPackageRequires super.airplay [ self.request-deferred ];
@@ -9785,6 +9785,18 @@ final: prev:
meta.homepage = "https://github.com/RRethy/nvim-treesitter-textsubjects/";
};
nvim-trevJ-lua = buildVimPlugin {
pname = "nvim-trevJ.lua";
version = "2024-12-23";
src = fetchFromGitHub {
owner = "AckslD";
repo = "nvim-trevJ.lua";
rev = "86445d0143d47aede944b6daa5c0a463e9d3e730";
sha256 = "0wrmzk7wyr4mk8y0c7hq0qqk19ngdwvvd80690vqs3vby89a5zkj";
};
meta.homepage = "https://github.com/AckslD/nvim-trevJ.lua/";
};
nvim-ts-autotag = buildVimPlugin {
pname = "nvim-ts-autotag";
version = "2024-12-02";
@@ -2308,6 +2308,11 @@ in
dependencies = [ self.nvim-treesitter ];
};
nvim-trevJ-lua = super.nvim-trevJ-lua.overrideAttrs {
dependencies = [ self.nvim-treesitter ];
nvimRequireCheck = "trevj";
};
nvim-ufo = super.nvim-ufo.overrideAttrs {
dependencies = [ self.promise-async ];
nvimRequireCheck = "ufo";
@@ -812,6 +812,7 @@ https://github.com/nvim-treesitter/nvim-treesitter-refactor/,,
https://github.com/PaterJason/nvim-treesitter-sexp/,HEAD,
https://github.com/nvim-treesitter/nvim-treesitter-textobjects/,,
https://github.com/RRethy/nvim-treesitter-textsubjects/,HEAD,
https://github.com/AckslD/nvim-trevJ.lua/,HEAD,
https://github.com/windwp/nvim-ts-autotag/,,
https://github.com/joosepalviste/nvim-ts-context-commentstring/,,
https://github.com/kevinhwang91/nvim-ufo/,HEAD,
@@ -199,7 +199,7 @@ stdenv.mkDerivation {
description = "Native debugger extension for VSCode based on LLDB";
homepage = "https://github.com/vadimcn/vscode-lldb";
license = [ lib.licenses.mit ];
maintainers = [ lib.maintainers.nigelgbanks ];
maintainers = [ ];
platforms = lib.platforms.all;
};
}
@@ -9,7 +9,7 @@
git,
python3,
swig,
boost180,
boost,
cbc, # for clp
cimg,
clp, # for or-tools
@@ -70,7 +70,7 @@ mkDerivation rec {
];
buildInputs = [
boost180
boost
cbc
cimg
clp
+2 -2
View File
@@ -15,13 +15,13 @@
stdenv.mkDerivation rec {
pname = "abracadabra";
version = "2.8.0";
version = "2.9.0";
src = fetchFromGitHub {
owner = "KejPi";
repo = "AbracaDABra";
rev = "v${version}";
hash = "sha256-bzRXGxSWoiBqvx8r2coNVPQKilOAKFoqBcB4F0uAV8g=";
hash = "sha256-PPG71W5HeLr4R8je88K4VXPiSbJn5T7dP3M05C+bkv0=";
};
nativeBuildInputs = [
+3 -12
View File
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
src = fetchgit {
url = "https://git.deuxfleurs.fr/Deuxfleurs/aerogramme/";
rev = "refs/tags/${version}";
tag = version;
hash = "sha256-ER+P/XGqNzTLwDLK5EBZq/Dl29ZZKl2FdxDb+oLEJ8Y=";
};
@@ -20,16 +20,8 @@ rustPlatform.buildRustPackage rec {
./0001-update-time-rs.patch
];
# must use our own Cargo.lock due to git dependencies
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"imap-codec-2.0.0" = "sha256-o64Q74Q84xLRfU4K4JtcjyS0J8mfoApvUs9siscd0RA=";
"imap-flow-0.1.0" = "sha256-IopxybuVt5OW6vFiw/4MxojzaNZrKu2xyfaX6F8IYlA=";
"k2v-client-0.0.4" = "sha256-V71FCIsgK3VStFOzVntm8P0vXRobF5rQ74qar+cKyik=";
"smtp-message-0.1.0" = "sha256-FoSakm3D1xg1vefLf/zkyvzsij1G0QstK3CRo+LbByE=";
};
};
useFetchCargoVendor = true;
cargoHash = "sha256-GPj8qhfKgfAadQD9DJafN4ec8L6oY62PS/w/ljkPHpw=";
# disable network tests as Nix sandbox breaks them
doCheck = false;
@@ -50,6 +42,5 @@ rustPlatform.buildRustPackage rec {
maintainers = with lib.maintainers; [ supinie ];
mainProgram = "aerogramme";
platforms = lib.platforms.linux;
broken = true; # https://github.com/rust-lang/rust/issues/129811
};
}
+90
View File
@@ -0,0 +1,90 @@
{
fetchFromGitHub,
lib,
stdenv,
makeWrapper,
xorg,
ncurses,
coreutils,
bashInteractive,
gnused,
gnugrep,
glibc,
xterm,
util-linux,
}:
stdenv.mkDerivation rec {
pname = "bashrun2";
version = "0.2.6";
src = fetchFromGitHub {
owner = "hbekel";
repo = "bashrun2";
tag = "v${version}";
hash = "sha256-U2ntplhyv8KAkaMd2D6wRsUIYkhJzxdgHo2xsbNRfqM=";
};
nativeBuildInputs = [
makeWrapper
];
buildInputs = [
xorg.libX11
];
patches = [
./remote-permissions.patch
];
postPatch = ''
substituteInPlace \
man/bashrun2.1 \
--replace-fail '/usr/bin/brwctl' "$out/bin/brwctl"
substituteInPlace \
src/bindings \
src/registry \
src/utils \
src/bashrun2 \
src/frontend \
src/remote \
src/plugin \
src/engine \
src/bookmarks \
--replace-fail '/bin/rm' '${coreutils}/bin/rm'
substituteInPlace \
src/bashrun2 \
--replace-fail '#!/usr/bin/env bash' '#!${lib.getExe bashInteractive}'
substituteInPlace \
src/remote \
--replace-fail '/bin/cp' '${coreutils}/bin/cp'
'';
postFixup = ''
wrapProgram $out/bin/bashrun2 \
--prefix PATH : "$out/bin:${
lib.makeBinPath [
ncurses
coreutils
gnused
gnugrep
glibc
bashInteractive
xterm
util-linux
]
}" \
--prefix XDG_CONFIG_DIRS : "$out/etc/xdg"
'';
meta = {
maintainers = with lib.maintainers; [ dopplerian ];
mainProgram = "bashrun2";
homepage = "http://henning-liebenau.de/bashrun2/";
license = lib.licenses.gpl2Plus;
description = "Application launcher based on a modified bash session in a small terminal window";
};
}
@@ -0,0 +1,12 @@
diff --git a/src/remote b/src/remote
index 07674ca..07a6b25 100644
--- a/src/remote
+++ b/src/remote
@@ -97,6 +97,7 @@ function §remote.interface.create {
local bookmarks="$bashrun_cache_home/remote-bookmarks.bash"
/bin/cp "$bashrun_site/interface" "$interface"
+ chmod +w "$interface"
printf '%s\n' "$bashrun_remote_interface" >> "$interface"
printf '%s\n' "source $bindings" >> "$interface"
+3 -3
View File
@@ -11,14 +11,14 @@
python3Packages.buildPythonApplication {
pname = "chirp";
version = "0.4.0-unstable-2024-12-17";
version = "0.4.0-unstable-2024-12-26";
pyproject = true;
src = fetchFromGitHub {
owner = "kk7ds";
repo = "chirp";
rev = "605037deb68994bbb3114c2a35db7a7a7e4755a6";
hash = "sha256-5AwoXX5Qa4ROjt5wSdcElLJ7ZVguKK3urn0ygVDJiGQ=";
rev = "43449629fb3c2ae0b71e8b7cb7d49e8e97a00c64";
hash = "sha256-zn9pInfJ/QbwgvBqkqzdW7txVGZVU1EPDo4I4ZQDdLY=";
};
nativeBuildInputs = [
@@ -0,0 +1,58 @@
{
lib,
fetchFromGitHub,
fetchpatch,
python3,
}:
python3.pkgs.buildPythonApplication rec {
pname = "cve-prioritizer";
version = "1.8.0";
pyproject = true;
src = fetchFromGitHub {
owner = "TURROKS";
repo = "CVE_Prioritizer";
rev = "refs/tags/v${version}";
hash = "sha256-ade/gcRrdvVsp5F61ZndsNL3s3gq8TDk/dZvPc55S/8=";
};
patches = [
# Add script, https://github.com/TURROKS/CVE_Prioritizer/pull/33
(fetchpatch {
name = "add-script.patch";
url = "https://github.com/TURROKS/CVE_Prioritizer/commit/c29f2332cde7d79e0c9f34c0a1811611a8fb73c9.patch";
hash = "sha256-/hnS+YKO4zNGVGTG+KsugJH7Bt2OE8Q2F+7ZX+uhFlU=";
})
];
postPatch = ''
# https://github.com/TURROKS/CVE_Prioritizer/pull/32
substituteInPlace pyproject.toml \
--replace-fail "CVE Prioritizer" "cve-prioritizer"
'';
build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [
click
pandas
python-dotenv
requests
termcolor
];
# Project has no tests
doCheck = false;
pythonImportsCheck = [ "cve_prioritizer" ];
meta = {
description = "Vulnerability patching with CVSS, EPSS, and CISA's Known Exploited Vulnerabilities";
homepage = "https://github.com/TURROKS/CVE_Prioritizer";
changelog = "https://github.com/TURROKS/CVE_Prioritizer/releases/tag/v${version}";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "cve-prioritizer";
};
}
+3
View File
@@ -29,6 +29,9 @@ stdenv.mkDerivation rec {
-DINI_FILE='"'"$out/share/fairymax/fmax.ini"'"'
'';
# errors by default in GCC 14
NIX_CFLAGS_COMPILE = "-Wno-error=return-mismatch -Wno-error=implicit-int";
installPhase = ''
mkdir -p "$out"/{bin,share/fairymax}
cp fairymax "$out/bin"
+2
View File
@@ -7,6 +7,7 @@
jdk17,
gradle_8,
which,
copyDesktopItems,
}:
let
@@ -31,6 +32,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
makeBinaryWrapper
jdk
gradle
copyDesktopItems
];
mitmCache = gradle.fetchDeps {
+10
View File
@@ -25,6 +25,12 @@ stdenv.mkDerivation rec {
patches = [ ./wxgtk-3.2.patch ];
# use correct wx-config for cross-compiling
postPatch = ''
substituteInPlace makefile \
--replace-fail 'wx-config' "${lib.getExe' wxGTK32 "wx-config"}"
'';
hardeningDisable = [ "format" ];
nativeBuildInputs = [ pkg-config ];
@@ -45,6 +51,10 @@ stdenv.mkDerivation rec {
sed -re '/ctrans_prob/s/energy\[center][+]energy\[other]/(int)(fmin(energy[center]+energy[other],99))/g' -i Canvas.cpp
'';
makeFlags = [
"CPP=${stdenv.cc.targetPrefix}c++"
];
installPhase = ''
mkdir -p $out/bin $out/libexec
cp sand $out/libexec
@@ -7,13 +7,13 @@
python3Packages.buildPythonApplication rec {
pname = "git-delete-merged-branches";
version = "7.4.1";
version = "7.4.2";
src = fetchFromGitHub {
owner = "hartwork";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "sha256-1CUwac2TPU5s1uLS1zPvtXZEGCWYwm1y935jqbI173Q=";
tag = version;
sha256 = "sha256-l+R4gINZJ8bJdhcK+U9jOuIoAm2/bd5P+w9AbwPZMrk=";
};
propagatedBuildInputs = with python3Packages; [
+11 -10
View File
@@ -7,25 +7,26 @@
pam,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "gradm";
version = "3.1-202102241600";
version = "3.1-202111052217";
src = fetchurl {
url = "https://grsecurity.net/stable/${pname}-${version}.tar.gz";
sha256 = "02ni34hpggv00140p9gvh0lqi173zdddd2qhfi96hyr1axd5pl50";
url = "https://grsecurity.net/stable/gradm-${finalAttrs.version}.tar.gz";
hash = "sha256-JFkpDzZ6R8ihzk6i7Ag1l5nqM9wV7UQ2Q5WWzogoT7k=";
};
nativeBuildInputs = [
bison
flex
];
buildInputs = [ pam ];
enableParallelBuilding = true;
makeFlags = [
"DESTDIR=$(out)"
"DESTDIR=${placeholder "out"}"
"LEX=${flex}/bin/flex"
"MANDIR=/share/man"
"MKNOD=true"
@@ -48,14 +49,14 @@ stdenv.mkDerivation rec {
postInstall = "rmdir $out/dev";
meta = with lib; {
meta = {
description = "grsecurity RBAC administration and policy analysis utility";
homepage = "https://grsecurity.net";
license = licenses.gpl2Only;
platforms = platforms.linux;
maintainers = with maintainers; [
license = lib.licenses.gpl2Only;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [
thoughtpolice
joachifm
];
};
}
})
+10 -7
View File
@@ -3,17 +3,17 @@
stdenvNoCC,
fetchurl,
makeWrapper,
jdk17_headless,
jdk23_headless,
nixosTests,
}:
stdenvNoCC.mkDerivation rec {
pname = "komga";
version = "1.15.0";
version = "1.15.1";
src = fetchurl {
url = "https://github.com/gotson/${pname}/releases/download/${version}/${pname}-${version}.jar";
sha256 = "sha256-mgPGhBdZ7FyxkVNPJkfFjQ6mJDbQ049PKzacTN6cajk=";
sha256 = "sha256-Gv0AaW3aTjLjNAzC5FJMVfvZyIN23ezPpRk15OYyKKs=";
};
nativeBuildInputs = [
@@ -21,7 +21,7 @@ stdenvNoCC.mkDerivation rec {
];
buildCommand = ''
makeWrapper ${jdk17_headless}/bin/java $out/bin/komga --add-flags "-jar $src"
makeWrapper ${jdk23_headless}/bin/java $out/bin/komga --add-flags "-jar $src"
'';
passthru.tests = {
@@ -32,9 +32,12 @@ stdenvNoCC.mkDerivation rec {
description = "Free and open source comics/mangas server";
homepage = "https://komga.org/";
license = lib.licenses.mit;
platforms = jdk17_headless.meta.platforms;
maintainers = with lib.maintainers; [ govanify ];
platforms = jdk23_headless.meta.platforms;
maintainers = with lib.maintainers; [
tebriel
govanify
];
mainProgram = "komga";
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
};
}
+3 -3
View File
@@ -12,13 +12,13 @@
}:
stdenv.mkDerivation rec {
pname = "legcord";
version = "1.0.5";
version = "1.0.6";
src = fetchFromGitHub {
owner = "Legcord";
repo = "Legcord";
rev = "v${version}";
hash = "sha256-9CicqDZDetxElD36OLizyVNxkqz3rQOjAtUNTGWVwss=";
hash = "sha256-0dVuSqViMqhWBMEY36ZcXM1FYnMcDH5brp5gsMWg3Rc=";
};
nativeBuildInputs = [
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
pnpmDeps = pnpm.fetchDeps {
inherit pname version src;
hash = "sha256-5GE/I2xLmu2Wu9mjzZMk1YZvtS5PgpwgXnxuY+4nimQ=";
hash = "sha256-QTePf/QE85OzXIcnwLJsCJJyRxwoV+FNef2Z9nAt35E=";
};
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+5
View File
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
sha256 = "sha256-7aFz+6XJOVEA/Fmi0ywd6rZdTW8sHq8MoHqXR0Hc2o4=";
};
postPatch = ''
substituteInPlace src/CMakeLists.txt \
--replace-warn " -Werror " " "
'';
nativeBuildInputs = [ cmake ];
buildInputs = [
+14 -10
View File
@@ -7,10 +7,11 @@
erlang,
fetchFromGitHub,
nixosTests,
nix-update-script,
}:
beamPackages.mixRelease rec {
pname = "livebook";
version = "0.14.4";
version = "0.14.5";
inherit elixir;
@@ -21,14 +22,14 @@ beamPackages.mixRelease rec {
src = fetchFromGitHub {
owner = "livebook-dev";
repo = "livebook";
rev = "v${version}";
hash = "sha256-XpBJlPLr7E3OqTnLxnSmKCgDyiU1hT8WfOhWeRGYROA=";
tag = "v${version}";
hash = "sha256-VSxW+X5zt6npV4tVVgTEvQhjA+jTramSX5h92BWWaQM=";
};
mixFodDeps = beamPackages.fetchMixDeps {
pname = "mix-deps-${pname}";
inherit src version;
hash = "sha256-jB6IOBX3LwdrEtaWY3gglo1HO2OhdiK8j3BgzfZ1nAU=";
hash = "sha256-FrkM82LO7GIFpKQfhlEUrAuKu33BzPBs6OrWW4C6pI0=";
};
postInstall = ''
@@ -42,18 +43,21 @@ beamPackages.mixRelease rec {
--set MIX_REBAR3 ${rebar3}/bin/rebar3
'';
passthru.tests = {
livebook-service = nixosTests.livebook-service;
passthru = {
updateScript = nix-update-script { };
tests = {
livebook-service = nixosTests.livebook-service;
};
};
meta = with lib; {
license = licenses.asl20;
meta = {
license = lib.licenses.asl20;
homepage = "https://livebook.dev/";
description = "Automate code & data workflows with interactive Elixir notebooks";
maintainers = with maintainers; [
maintainers = with lib.maintainers; [
munksgaard
scvalex
];
platforms = platforms.unix;
platforms = lib.platforms.unix;
};
}
+2 -2
View File
@@ -19,13 +19,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lock";
version = "1.3.6";
version = "1.3.7";
src = fetchFromGitHub {
owner = "konstantintutsch";
repo = "Lock";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-Zd0fVCeE/QTvptoxbyDxcPiBrZ/qZMx/A0tB1wZbX6A=";
hash = "sha256-UZt8SlkwhtVRLUMf1uYNLchzkWnL+6e7xLYZ81+YQsw=";
};
strictDeps = true;
+2
View File
@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
"CC=${stdenv.cc.targetPrefix}cc"
];
env.NIX_CFLAGS_COMPILE = "-fpermissive";
src = fetchFromGitHub {
owner = "kfl";
repo = "mosml";
+18 -73
View File
@@ -9,18 +9,20 @@
sudo,
python3Packages,
gitUpdater,
util-linux,
versionCheckHook,
}:
python3Packages.buildPythonApplication rec {
pname = "pmbootstrap";
version = "3.0.0";
version = "3.1.0";
pyproject = true;
src = fetchFromGitLab {
owner = "postmarketOS";
repo = pname;
rev = version;
hash = "sha256-hUrWMU4V7tf/qVR4geR5FsCQ+BZA+zCPTdCZGN1PMKk=";
tag = version;
hash = "sha256-ijXyX+VJqiS0z5IOXGjeL2SGZ/4ledhnq/Zr1ZLW/Io=";
domain = "gitlab.postmarketos.org";
};
@@ -34,103 +36,46 @@ python3Packages.buildPythonApplication rec {
];
nativeCheckInputs = [
python3Packages.pytestCheckHook
git
multipath-tools
openssl
ps
python3Packages.pytestCheckHook
sudo
util-linux
versionCheckHook
];
# Add test dependency in PATH
preCheck = "export PYTHONPATH=$PYTHONPATH:${pmb_test}";
preCheck = ''
export PYTHONPATH=$PYTHONPATH:${pmb_test}
'';
# skip impure tests
disabledTests = [
"test_apk_static"
"test_aportgen"
"test_aportgen_device_wizard"
"test_bootimg"
"test_build_abuild_leftovers"
"test_build_depends_binary_outdated"
"test_build_depends_high_level"
"test_build_depends_no_binary_error"
"test_build_is_necessary"
"test_build_local_source_high_level"
"test_build_src_invalid_path"
"test_check"
"test_can_fast_forward"
"test_check_build_for_arch"
"test_check_config"
"test_chroot_arguments"
"test_chroot_interactive_shell"
"test_chroot_interactive_shell_user"
"test_chroot_mount"
"test_clean_worktree"
"test_config_user"
"test_cross_compile_distcc"
"test_crossdirect"
"test_extract_arch"
"test_extract_version"
"test_file"
"test_filter_aport_packages"
"test_filter_missing_packages_binary_exists"
"test_filter_missing_packages_invalid"
"test_filter_missing_packages_pmaports"
"test_finish"
"test_folder_size"
"test_get_all_component_names"
"test_get_apkbuild"
"test_get_depends"
"test_get_upstream_remote"
"test_helpers_lint"
"test_helpers_package_get_apkindex"
"test_helpers_repo"
"test_helpers_ui"
"test_init_buildenv"
"test_kconfig_check"
"test_keys"
"test_newapkbuild"
"test_package"
"test_package_from_aports"
"test_pkgrepo_pmaports"
"test_pkgrel_bump"
"test_pmbootstrap_status"
"test_print_checks_git_repo"
"test_proxy"
"test_pull"
"test_qemu_running_processes"
"test_questions_additional_options"
"test_questions_bootimg"
"test_questions_channel"
"test_questions_keymaps"
"test_questions_work_path"
"test_read_config_channel"
"test_recurse_invalid"
"test_run_abuild"
"test_run_core"
"test_shell_escape"
"test_skip_already_built"
"test_switch_to_channel_branch"
"test_version"
];
versionCheckProgramArg = "--version";
makeWrapperArgs = [
"--prefix PATH : ${
lib.makeBinPath [
git
openssl
multipath-tools
util-linux
]
}"
];
passthru.updateScript = gitUpdater { };
meta = with lib; {
meta = {
description = "Sophisticated chroot/build/flash tool to develop and install postmarketOS";
homepage = "https://gitlab.com/postmarketOS/pmbootstrap";
license = licenses.gpl3Plus;
maintainers = with maintainers; [
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
onny
lucasew
];
+17 -14
View File
@@ -2,42 +2,45 @@
lib,
stdenv,
fetchFromGitHub,
makeWrapper,
perl,
perlPackages,
runtimeShell,
}:
stdenv.mkDerivation rec {
let
perlDeps = [
perlPackages.ParseWin32Registry
];
in
stdenv.mkDerivation {
pname = "regripper";
version = "0-unstable-2024-11-02";
version = "0-unstable-2024-12-12";
src = fetchFromGitHub {
owner = "keydet89";
repo = "RegRipper3.0";
rev = "89f3cac57e10bce1a79627e6038353e8e8a0c378";
hash = "sha256-dW3Gr4HQH484i47Bg+CEnBYoGQQRMBJr88+YeuU+iV4=";
rev = "bdf7ac2500a41319479846fe07202b7e8a61ca1f";
hash = "sha256-JEBwTpDck0w85l0q5WjF1d20NyU+GJ89yAzbkUVOsu0=";
};
nativeBuildInputs = [ makeWrapper ];
propagatedBuildInputs = [
perl
perlPackages.ParseWin32Registry
];
] ++ perlDeps;
installPhase = ''
runHook preInstall
mkdir -p $out/{bin,share}
rm -r *.md *.exe *.bat *.dll
rm -r *.md *.exe *.bat *.dll *.zip
cp -aR . "$out/share/regripper/"
cat > "$out/bin/regripper" << EOF
#!${runtimeShell}
exec ${perl}/bin/perl $out/share/regripper/rip.pl "\$@"
EOF
chmod u+x "$out/bin/regripper"
makeWrapper ${perl}/bin/perl $out/bin/regripper \
--add-flags "$out/share/regripper/rip.pl" \
--set PERL5LIB ${perlPackages.makeFullPerlPath perlDeps}
runHook postInstall
'';
+3 -3
View File
@@ -9,16 +9,16 @@
rustPlatform.buildRustPackage rec {
pname = "reindeer";
version = "2024.12.16.00";
version = "2024.12.30.00";
src = fetchFromGitHub {
owner = "facebookincubator";
repo = "reindeer";
rev = "refs/tags/v${version}";
hash = "sha256-yM+iVX+5caiSW6K45EbkHgHEhceIvauCIYwlLTYpzbQ=";
hash = "sha256-o8PHtGG3Ndz6Ei9ZBoAdeNmBb70m4c+jCvHCGOjaA+w=";
};
cargoHash = "sha256-TWu2p6d/jec7zZpFP8Gly4RdgkL18yU2VWsFHVZLDJY=";
cargoHash = "sha256-guRi+kYLjPHFLm4eN3kJ2kHYIBZ5JXMb3ii8416e+IA=";
nativeBuildInputs = [ pkg-config ];
+2 -2
View File
@@ -7,13 +7,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "sarasa-gothic";
version = "1.0.26";
version = "1.0.27";
src = fetchurl {
# Use the 'ttc' files here for a smaller closure size.
# (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${finalAttrs.version}/Sarasa-TTC-${finalAttrs.version}.zip";
hash = "sha256-Z2J8yW9yLnkGh+nNb57+xyz8uZFwePpuSlBdRxfPABA=";
hash = "sha256-/pN3NIwkJZ4a5g87Z3kr71Xvef0TIbN2UzsfvXJryNk=";
};
sourceRoot = ".";
+9 -15
View File
@@ -19,18 +19,18 @@ in
stdenv.mkDerivation rec {
pname = "sby";
version = "0.47";
version = "0.48";
src = fetchFromGitHub {
owner = "YosysHQ";
repo = "sby";
rev = "yosys-${version}";
hash = "sha256-Il2pXw2doaoZrVme2p0dSUUa8dCQtJJrmYitn1MkTD4=";
tag = "v${version}";
hash = "sha256-icOlWutvajHMCi2YUIGU4v5S63YobXw4fYYUvPoSzo4=";
};
nativeBuildInputs = [ bash ];
buildInputs = [
pythonEnv
nativeCheckInputs = [
python3
python3.pkgs.xmlschema
yosys
boolector
yices
@@ -40,7 +40,8 @@ stdenv.mkDerivation rec {
];
postPatch = ''
patchShebangs docs/source/conf.py \
patchShebangs --build \
docs/source/conf.py \
docs/source/conf.diff \
tests/autotune/*.sh \
tests/keepgoing/*.sh \
@@ -64,8 +65,6 @@ stdenv.mkDerivation rec {
--replace-fail '/usr/bin/env python3' '${pythonEnv}/bin/python'
substituteInPlace sbysrc/sby_autotune.py \
--replace-fail '["btorsim", "--vcd"]' '["${btor2tools}/bin/btorsim", "--vcd"]'
substituteInPlace tests/make/required_tools.py \
--replace-fail '["btorsim", "--vcd"]' '["${btor2tools}/bin/btorsim", "--vcd"]'
'';
dontBuild = true;
@@ -89,12 +88,7 @@ stdenv.mkDerivation rec {
runHook postCheck
'';
passthru.updateScript = nix-update-script {
extraArgs = [
"--version-regex"
"yosys-([0-9].*)"
];
};
passthru.updateScript = nix-update-script { };
meta = {
description = "SymbiYosys, a front-end for Yosys-based formal verification flows";
+4 -4
View File
@@ -35,20 +35,20 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "siyuan";
version = "3.1.16";
version = "3.1.18";
src = fetchFromGitHub {
owner = "siyuan-note";
repo = "siyuan";
rev = "v${finalAttrs.version}";
hash = "sha256-8+Gz9AuxmK2hOApRZ2b1+rROOG94EBJR3pyp8YwtgiA=";
hash = "sha256-hUPHWVULyHQgGNTpLZKDk6hUlBIK1ouYAYecr0oUe/M=";
};
kernel = buildGo123Module {
name = "${finalAttrs.pname}-${finalAttrs.version}-kernel";
inherit (finalAttrs) src;
sourceRoot = "${finalAttrs.src.name}/kernel";
vendorHash = "sha256-B2pGXs0IN5WhNHoFgTufd46q60RNvWzNdwoCxpayYC8=";
vendorHash = "sha256-1JwUQ/WhR1O3LTevI2kWk+FNpH4FBVgF46d+W6M7UBg=";
patches = [
(replaceVars ./set-pandoc-path.patch {
@@ -89,7 +89,7 @@ stdenv.mkDerivation (finalAttrs: {
src
sourceRoot
;
hash = "sha256-LlQdfRGsBn3IZWKSUqH5tAljXnWanuFXO2x+Wi3on7E=";
hash = "sha256-357iBgxevtXus0Dpa8+LHKsO42HoHibkhRSy+tpD8jo=";
};
sourceRoot = "${finalAttrs.src.name}/app";
+3 -3
View File
@@ -35,7 +35,7 @@ in
stdenv.mkDerivation {
pname = "tdlib";
version = "1.8.41";
version = "1.8.42";
src = fetchFromGitHub {
owner = "tdlib";
@@ -44,8 +44,8 @@ stdenv.mkDerivation {
# The tdlib authors do not set tags for minor versions, but
# external programs depending on tdlib constrain the minor
# version, hence we set a specific commit with a known version.
rev = "5b974c298d4ed551d3ad2c061ad7b8280d137c7e";
hash = "sha256-1TyGv2yMjX75+ccZSox/2m6SMmwEZAkShIhLfCeNmZg=";
rev = "ef580cd3dd0e5223c2be503342dc29e128be866e";
hash = "sha256-k1YQpQXYmEdoiyWeAcj2KRU+BcWuWbHpd4etxLspEoo=";
};
buildInputs = [
+3 -3
View File
@@ -6,16 +6,16 @@
buildGoModule rec {
pname = "templ";
version = "0.2.793";
version = "0.3.819";
src = fetchFromGitHub {
owner = "a-h";
repo = "templ";
rev = "v${version}";
hash = "sha256-0KGht5IMbJV8KkXgT5qJxA9bcmWevzXXAVPMQTm0ccw=";
hash = "sha256-kTP/DLnou3KETZRtvHdeiMmRW6xldgZBAn9O9p9s/MA=";
};
vendorHash = "sha256-ZWY19f11+UI18jeHYIEZjdb9Ii74mD6w+dYRLPkdfBU=";
vendorHash = "sha256-ipLn52MsgX7KQOJixYcwMR9TCeHz55kQQ7fgkIgnu7w=";
subPackages = [ "cmd/templ" ];
+5 -18
View File
@@ -23,7 +23,7 @@
# For an explanation of optional packages
# (features provided by them, version limits), see
# https://www.ibm.com/support/pages/node/660813#Version%208.1
# https://web.archive.org/web/20240118051918/https://www.ibm.com/support/pages/node/660813#Version%208.1
# IBM Tivoli Storage Manager Client uses a system-wide
# client system-options file `dsm.sys` and expects it
@@ -44,26 +44,13 @@
# point to this derivations `/dsmi_dir` directory symlink.
# Other environment variables might be necessary,
# depending on local configuration or usage; see:
# https://www.ibm.com/docs/en/storage-protect/8.1.24?topic=solaris-set-api-environment-variables
# The newest version of TSM client should be discoverable by
# going to the `downloadPage` (see `meta` below).
# Find the "Backup-archive client" table on that page.
# Look for "Download Documents" of the latest release.
# Follow the "Download Information" link.
# Look for the "Linux x86_64 ..." rows in the table at
# the bottom of the page and follow their "HTTPS" links (one
# link per row -- each link might point to the latest release).
# In the directory listings to show up,
# check the big `.tar` file.
#
# (as of 2023-07-01)
# https://www.ibm.com/docs/en/storage-protect/8.1.25?topic=solaris-set-api-environment-variables
let
meta = {
homepage = "https://www.ibm.com/products/storage-protect";
downloadPage = "https://www.ibm.com/support/pages/ibm-storage-protect-downloads-latest-fix-packs-and-interim-fixes";
downloadPage = "https://www.ibm.com/support/fixcentral/swg/selectFixes?product=ibm/StorageSoftware/IBM+Spectrum+Protect";
platforms = [ "x86_64-linux" ];
mainProgram = "dsmc";
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
@@ -104,10 +91,10 @@ let
unwrapped = stdenv.mkDerivation (finalAttrs: {
name = "tsm-client-${finalAttrs.version}-unwrapped";
version = "8.1.24.0";
version = "8.1.25.0";
src = fetchurl {
url = mkSrcUrl finalAttrs.version;
hash = "sha512-TqTDE2oJK/Wu/MNYUCqxmOE6asAqDLz4GtdcFZuKqvfT8pJUCYKz9yjRPIrM3u2XfLH0wDq+Q8ER4ui680mswA==";
hash = "sha512-OPNjSMnWJ/8Ogy9O0wG0H4cEbYiOwyCVzkWhpG00v/Vm0LDxLzPteMnMOyH8L1egIDhy7lmQYSzI/EC4WWUDDA==";
};
inherit meta passthru;
+33
View File
@@ -0,0 +1,33 @@
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "urlfinder";
version = "0.0.2";
src = fetchFromGitHub {
owner = "projectdiscovery";
repo = "urlfinder";
rev = "refs/tags/v${version}";
hash = "sha256-hORZzeGNcRTcFsvY8pfs8f1JNpdTJjMdO/lJHR83DfY=";
};
vendorHash = "sha256-Wu9itQfcrwWuzRHtTKk+lF7n6eIzSfATWtI+8xLQQsI=";
ldflags = [
"-s"
"-w"
];
meta = {
description = "Tool for passively gathering URLs without active scanning";
homepage = "https://github.com/projectdiscovery/urlfinder";
changelog = "https://github.com/projectdiscovery/urlfinder/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "urlfinder";
};
}
+41 -34
View File
@@ -1,45 +1,18 @@
{
lib,
stdenv,
fetchzip,
fetchurl,
unzip,
autoPatchelfHook,
}:
let
platformInfoTable = {
"x86_64-linux" = {
id = "linux-x64";
hash = "sha256-/PD5e0bWgnIsIrvyOypoJw30VkgbOFWV1NJpPS2G0WM=";
};
"aarch64-linux" = {
id = "linux-arm64";
hash = "sha256-zfiorXZyIISZPXPwmcdYeHceDmQXkUhsvTkNZScg648=";
};
"x86_64-darwin" = {
id = "osx-x64";
hash = "sha256-cdNdV1fVPkz6B7vtKZiPsLQGqnIiDtYa9KTcwSkjdJg=";
};
"aarch64-darwin" = {
id = "osx-arm64";
hash = "sha256-Z1dq2t/HBQulbPF23ZCihOrcZHMpTXEQ6yXKORZaFPk=";
};
};
platformInfo =
platformInfoTable.${stdenv.hostPlatform.system}
or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
in
stdenv.mkDerivation (finalAttrs: {
pname = "voicevox-core";
version = "0.15.4";
version = "0.15.7";
# Note: Only the prebuilt binaries are able to decrypt the encrypted voice models
src = fetchzip {
url = "https://github.com/VOICEVOX/voicevox_core/releases/download/${finalAttrs.version}/voicevox_core-${platformInfo.id}-cpu-${finalAttrs.version}.zip";
inherit (platformInfo) hash;
};
src = finalAttrs.passthru.sources.${stdenv.hostPlatform.system};
nativeBuildInputs = lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];
nativeBuildInputs = [ unzip ] ++ lib.optionals stdenv.hostPlatform.isLinux [ autoPatchelfHook ];
buildInputs = [ stdenv.cc.cc.lib ];
@@ -54,6 +27,37 @@ stdenv.mkDerivation (finalAttrs: {
runHook postInstall
'';
# When updating, run the following command to fetch all FODs:
# nix-build -A voicevox-core.sources --keep-going
passthru.sources =
let
# Note: Only the prebuilt binaries are able to decrypt the encrypted voice models
fetchCoreArtifact =
{ id, hash }:
fetchurl {
url = "https://github.com/VOICEVOX/voicevox_core/releases/download/${finalAttrs.version}/voicevox_core-${id}-cpu-${finalAttrs.version}.zip";
inherit hash;
};
in
{
"x86_64-linux" = fetchCoreArtifact {
id = "linux-x64";
hash = "sha256-7FgrJ1HlB8l5MHd2KM4lYRx2bYdxrD2+su1G33/ugUA=";
};
"aarch64-linux" = fetchCoreArtifact {
id = "linux-arm64";
hash = "sha256-fD7YMTo9jeB4vJibnVwX8VrukCUeAwS6VXGOr3VXG+c=";
};
"x86_64-darwin" = fetchCoreArtifact {
id = "osx-x64";
hash = "sha256-5h9qEKbdcvip50TLs3vf6lXkSv24VEjOrx6CTUo7Q4Q=";
};
"aarch64-darwin" = fetchCoreArtifact {
id = "osx-arm64";
hash = "sha256-0bFLhvP7LqDzuk3pyM9QZfc8eLMW0IgqVkaXsuS3qlY=";
};
};
meta = {
changelog = "https://github.com/VOICEVOX/voicevox_core/releases/tag/${finalAttrs.version}";
description = "Core library for the VOICEVOX speech synthesis software";
@@ -67,8 +71,11 @@ stdenv.mkDerivation (finalAttrs: {
redistributable = true;
})
];
maintainers = with lib.maintainers; [ tomasajt ];
platforms = lib.attrNames platformInfoTable;
maintainers = with lib.maintainers; [
tomasajt
eljamm
];
platforms = lib.attrNames finalAttrs.passthru.sources;
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
})
+15 -7
View File
@@ -8,14 +8,14 @@
python3Packages.buildPythonApplication rec {
pname = "voicevox-engine";
version = "0.20.0";
version = "0.22.2";
pyproject = true;
src = fetchFromGitHub {
owner = "VOICEVOX";
repo = "voicevox_engine";
rev = "refs/tags/${version}";
hash = "sha256-Gib5R7oleg+XXyu2V65EqrflQ1oiAR7a09a0MFhSITc=";
tag = version;
hash = "sha256-TZycd3xX5d4dNk4ze2JozyO7zDpGAuO+O7xHAx7QXUI=";
};
patches = [
@@ -95,6 +95,10 @@ python3Packages.buildPythonApplication rec {
# this test checks the behaviour of openapi
# one of the functions returns a slightly different output due to openapi version differences
"test_OpenAPI"
# these tests fail due to some tiny floating point discrepancies
"test_upspeak_voiced_last_mora"
"test_upspeak_voiced_N_last_mora"
];
nativeCheckInputs = with python3Packages; [
@@ -105,22 +109,26 @@ python3Packages.buildPythonApplication rec {
passthru = {
resources = fetchFromGitHub {
name = "voicevox-resource-${version}"; # this contains ${version} to invalidate the hash upon updating the package
owner = "VOICEVOX";
repo = "voicevox_resource";
rev = "refs/tags/${version}";
hash = "sha256-m888DF9qgGbK30RSwNnAoT9D0tRJk6cD5QY72FRkatM=";
tag = version;
hash = "sha256-oeWJESm1v0wicAXXFAyZT8z4QRVv9c+3vsWksmuY5wY=";
};
pyopenjtalk = python3Packages.callPackage ./pyopenjtalk.nix { };
};
meta = {
changelog = "https://github.com/VOICEVOX/voicevox_engine/releases/tag/${version}";
changelog = "https://github.com/VOICEVOX/voicevox_engine/releases/tag/${src.tag}";
description = "Engine for the VOICEVOX speech synthesis software";
homepage = "https://github.com/VOICEVOX/voicevox_engine";
license = lib.licenses.lgpl3Only;
mainProgram = "voicevox-engine";
maintainers = with lib.maintainers; [ tomasajt ];
maintainers = with lib.maintainers; [
tomasajt
eljamm
];
platforms = lib.platforms.linux ++ lib.platforms.darwin;
};
}
+10 -11
View File
@@ -12,30 +12,29 @@ index 5b0dcb0..5848ccd 100644
"host": "http://127.0.0.1:50021"
}
diff --git a/electron-builder.config.js b/electron-builder.config.js
index 462e6f2..10a9bff 100644
index 196a0d7..7e313c2 100644
--- a/electron-builder.config.js
+++ b/electron-builder.config.js
@@ -35,19 +35,6 @@ const isMac = process.platform === "darwin";
@@ -37,18 +37,7 @@ const isArm64 = process.arch === "arm64";
// cf: https://k-hyoda.hatenablog.com/entry/2021/10/23/000349#%E8%BF%BD%E5%8A%A0%E5%B1%95%E9%96%8B%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E5%85%88%E3%81%AE%E8%A8%AD%E5%AE%9A
const extraFilePrefix = isMac ? "MacOS/" : "";
-const sevenZipFile = fs
- .readdirSync(path.resolve(__dirname, "build", "vendored", "7z"))
- .readdirSync(path.resolve(__dirname, "vendored", "7z"))
- .find(
- // Windows: 7za.exe, Linux: 7zzs, macOS: 7zz
- (fileName) => ["7za.exe", "7zzs", "7zz"].includes(fileName),
- );
-
-if (!sevenZipFile) {
- throw new Error(
- "7z binary file not found. Run `node ./build/download7z.js` first.",
- "7z binary file not found. Run `node ./tools/download7z.js` first.",
- );
-}
-
/** @type {import("electron-builder").Configuration} */
const builderOptions = {
beforeBuild: async () => {
@@ -88,14 +75,6 @@ const builderOptions = {
@@ -90,14 +79,6 @@ const builderOptions = {
from: "build/README.txt",
to: extraFilePrefix + "README.txt",
},
@@ -44,17 +43,17 @@ index 462e6f2..10a9bff 100644
- to: path.join(extraFilePrefix, "vv-engine"),
- },
- {
- from: path.resolve(__dirname, "build", "vendored", "7z", sevenZipFile),
- from: path.resolve(__dirname, "vendored", "7z", sevenZipFile),
- to: extraFilePrefix + sevenZipFile,
- },
],
// electron-builder installer
productName: "VOICEVOX",
diff --git a/src/backend/electron/manager/vvppManager.ts b/src/backend/electron/manager/vvppManager.ts
index 6aa17b6..b8b52b7 100644
index edd3177..22d0114 100644
--- a/src/backend/electron/manager/vvppManager.ts
+++ b/src/backend/electron/manager/vvppManager.ts
@@ -196,16 +196,8 @@ export class VvppManager {
@@ -184,16 +184,8 @@ export class VvppManager {
const args = ["x", "-o" + outputDir, archiveFile, "-t" + format];
+17 -6
View File
@@ -10,17 +10,18 @@
electron,
_7zz,
voicevox-engine,
dart-sass,
}:
buildNpmPackage rec {
pname = "voicevox";
version = "0.20.0";
version = "0.22.3";
src = fetchFromGitHub {
owner = "VOICEVOX";
repo = "voicevox";
rev = "refs/tags/${version}";
hash = "sha256-05WTecNc1xxe7SGDPZbLtRELNghFkMTqI4pkX4PsVWI=";
tag = version;
hash = "sha256-6z+A4bJIDfN/K8IjEdt2TqEa/EDt4uQpGh+zSWfP74I=";
};
patches = [
@@ -36,7 +37,10 @@ buildNpmPackage rec {
--replace-fail "postinstall" "_postinstall"
'';
npmDepsHash = "sha256-g3avCj3S96qYPAyGXn4yvrZ4gteJld+g4eV4aRtv/3g=";
npmDepsHash = "sha256-NuKFhDb/J6G3pFYHZedKnY2hDC5GCp70DpqrST4bJMA=";
# unlock very specific node version bounds specified by upstream
npmInstallFlags = [ "--engine-strict=false" ];
nativeBuildInputs =
[
@@ -54,6 +58,10 @@ buildNpmPackage rec {
buildPhase = ''
runHook preBuild
# force sass-embedded to use our own sass instead of the bundled one
substituteInPlace node_modules/sass-embedded/dist/lib/src/compiler-path.js \
--replace-fail 'compilerCommand = (() => {' 'compilerCommand = (() => { return ["${lib.getExe dart-sass}"];'
# build command taken from the definition of the `electron:build` npm script
VITE_TARGET=electron npm exec vite build
@@ -105,12 +113,15 @@ buildNpmPackage rec {
];
meta = {
changelog = "https://github.com/VOICEVOX/voicevox/releases/tag/${version}";
changelog = "https://github.com/VOICEVOX/voicevox/releases/tag/${src.tag}";
description = "Editor for the VOICEVOX speech synthesis software";
homepage = "https://github.com/VOICEVOX/voicevox";
license = lib.licenses.lgpl3Only;
mainProgram = "voicevox";
maintainers = with lib.maintainers; [ tomasajt ];
maintainers = with lib.maintainers; [
tomasajt
eljamm
];
platforms = electron.meta.platforms;
};
}
+38 -15
View File
@@ -1,31 +1,54 @@
{
lib,
stdenv,
fetchurl,
fetchFromGitHub,
autoreconfHook,
}:
stdenv.mkDerivation rec {
pname = "zsync";
version = "0.6.2";
version = "0.6.2-unstable-2017-04-25";
src = fetchurl {
url = "http://zsync.moria.org.uk/download/zsync-${version}.tar.bz2";
hash = "sha256-C51TQzOHqk8EY0psY6XvqCAwcPIpivcqcF+b492mWvI=";
src = fetchFromGitHub {
owner = "cph6";
repo = "zsync";
rev = "6cfe374f8f2310cbd624664ca98e5bb28244ba7a";
hash = "sha256-SnCzNDMyhMx+2JmgsrjtYDa31Ki1EWix9iBfaduDnro=";
};
env = lib.optionalAttrs stdenv.cc.isClang {
# Suppress error "call to undeclared library function 'strcasecmp'" during compilation.
# The function is found by the linker correctly, so this doesn't introduce any issues.
NIX_CFLAGS_COMPILE = " -Wno-implicit-function-declaration";
};
sourceRoot = "${src.name}/c";
patches = [
./remove-inexisting-rsumtest.patch
./read-blocksums-declaration-fix.patch
];
makeFlags = [ "AR=${stdenv.cc.bintools.targetPrefix}ar" ];
meta = with lib; {
homepage = "http://zsync.moria.org.uk/";
# Suppress error "call to undeclared library function 'strcasecmp'" during compilation.
# The function is found by the linker correctly, so this doesn't introduce any issues.
# Also supress errors that come from incompatible pointer types due to GCC 14 changes.
env.NIX_CFLAGS_COMPILE = toString (
lib.optionals stdenv.cc.isClang [
"-Wno-implicit-function-declaration"
]
++ lib.optionals stdenv.cc.isGNU [
"-Wno-error=incompatible-pointer-types"
]
);
nativeBuildInputs = [
autoreconfHook
];
meta = {
homepage = "https://github.com/cph6/zsync";
description = "File distribution system using the rsync algorithm";
license = licenses.artistic2;
maintainers = with maintainers; [ viric ];
platforms = with platforms; all;
license = lib.licenses.artistic2;
maintainers = with lib.maintainers; [
viric
ryand56
];
platforms = with lib.platforms; all;
};
}
@@ -0,0 +1,13 @@
diff --git a/libzsync/zsync.c b/libzsync/zsync.c
index 793a426..783c349 100644
--- a/libzsync/zsync.c
+++ b/libzsync/zsync.c
@@ -116,7 +116,7 @@ struct zsync_state {
};
static int zsync_read_blocksums(struct zsync_state *zs, FILE * f,
- int rsum_bytes, int checksum_bytes,
+ int rsum_bytes, unsigned int checksum_bytes,
int seq_matches);
static int zsync_sha1(struct zsync_state *zs, int fh);
static int zsync_recompress(struct zsync_state *zs);
@@ -0,0 +1,17 @@
diff --git a/c/librcksum/Makefile.am b/c/librcksum/Makefile.am
index 0216e49..f4fce72 100644
--- a/librcksum/Makefile.am
+++ b/librcksum/Makefile.am
@@ -2,9 +2,8 @@
noinst_LIBRARIES = librcksum.a
-TESTS = md4test rsumtest
-noinst_PROGRAMS = md4test rsumtest
+TESTS = md4test
+noinst_PROGRAMS = md4test
md4test_SOURCES = md4test.c md4.h md4.c
-rsumtest_SOURCES = rsum.c rsumtest.c hash.c range.c state.c md4.c ../progress.c
librcksum_a_SOURCES = internal.h rcksum.h md4.h rsum.c hash.c state.c range.c md4.c
@@ -0,0 +1,48 @@
From 36354a7aca58753893148d62a889ca9e27381ac0 Mon Sep 17 00:00:00 2001
From: David McFarland <corngood@gmail.com>
Date: Thu, 2 Jan 2025 15:30:16 -0400
Subject: [PATCH] fix clang19 build
---
src/runtime/src/coreclr/vm/comreflectioncache.hpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/runtime/src/coreclr/vm/comreflectioncache.hpp b/src/runtime/src/coreclr/vm/comreflectioncache.hpp
index 08d173e616..12db55251d 100644
--- a/src/runtime/src/coreclr/vm/comreflectioncache.hpp
+++ b/src/runtime/src/coreclr/vm/comreflectioncache.hpp
@@ -26,6 +26,7 @@ public:
void Init();
+#ifndef DACCESS_COMPILE
BOOL GetFromCache(Element *pElement, CacheType& rv)
{
CONTRACTL
@@ -102,6 +103,7 @@ public:
AdjustStamp(TRUE);
this->LeaveWrite();
}
+#endif // !DACCESS_COMPILE
private:
// Lock must have been taken before calling this.
@@ -141,6 +143,7 @@ private:
return CacheSize;
}
+#ifndef DACCESS_COMPILE
void AdjustStamp(BOOL hasWriterLock)
{
CONTRACTL
@@ -170,6 +173,7 @@ private:
if (!hasWriterLock)
this->LeaveWrite();
}
+#endif // !DACCESS_COMPILE
void UpdateHashTable(SIZE_T hash, int slot)
{
--
2.47.0
@@ -148,6 +148,7 @@ stdenv.mkDerivation rec {
]
++ lib.optionals (lib.versionOlder version "9") [
./fix-aspnetcore-portable-build.patch
./fix-clang19-build.patch
];
postPatch =
@@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "croniter";
version = "3.0.3";
version = "6.0.0";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-NBF+wXQfEKe9DsOtfY8OuPpFei/rm+MuaiJQ4ViVdmg=";
hash = "sha256-N8UEsxOVYRSpg+ziwrB3kLHxCU/p2BzJRzkhR0glVXc=";
};
nativeBuildInputs = [ setuptools ];
@@ -9,16 +9,16 @@
}:
buildPythonPackage rec {
pname = "gotenberg-client";
version = "0.7.0";
version = "0.8.2";
pyproject = true;
disabled = pythonOlder "3.8";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "stumpylog";
repo = "gotenberg-client";
rev = "refs/tags/${version}";
hash = "sha256-pkxu9WIsyHW2iTepv5B2naKkK+yw8lT+i3EwobE+u1M=";
tag = version;
hash = "sha256-EMukzSY8nfm1L1metGhiEc9VqnI/vaLz7ITgbZi0fBw=";
};
nativeBuildInputs = [ hatchling ];
@@ -14,7 +14,7 @@
buildPythonPackage rec {
pname = "griffe";
version = "1.5.1";
version = "1.5.4";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -22,8 +22,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "mkdocstrings";
repo = "griffe";
rev = "refs/tags/${version}";
hash = "sha256-DeXmKswapXPYGTiJLq2yvCwJywCNl79XYHSau0VCCIY=";
tag = version;
hash = "sha256-F1/SjWy32d/CU86ZR/PK0QPiRMEbUNNeomZOBP/3K/k=";
};
build-system = [ pdm-backend ];
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "ipympl";
version = "0.9.4";
version = "0.9.5";
format = "wheel";
disabled = pythonOlder "3.5";
src = fetchPypi {
inherit pname version format;
hash = "sha256-WwwIxvT26mVbpYI5NjRXwQ+5IVV/UDjBpG20RX1taw4=";
hash = "sha256-/xSjV/Q1UuySWC64svdrhEtGmqL6doM/FerX+lhMGfw=";
dist = "py3";
python = "py3";
};
@@ -22,7 +22,7 @@
buildPythonPackage rec {
pname = "minio";
version = "7.2.12";
version = "7.2.13";
pyproject = true;
disabled = pythonOlder "3.8";
@@ -30,8 +30,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "minio";
repo = "minio-py";
rev = "refs/tags/${version}";
hash = "sha256-8CthbR62TZ7MFC3OCwtbHtGwmlQeFLgBtkyRX1P5SYU=";
tag = version;
hash = "sha256-RauPMoqVp4xnS4CXLH0HVTjA8o/BstoEWKWFHvjVllA=";
};
postPatch = ''
@@ -10,9 +10,6 @@
rustc,
setuptools-rust,
# buildInputs
libiconv,
# tests
h5py,
numpy,
@@ -22,20 +19,20 @@
buildPythonPackage rec {
pname = "safetensors";
version = "0.4.5";
version = "0.5.0";
pyproject = true;
src = fetchFromGitHub {
owner = "huggingface";
repo = "safetensors";
rev = "refs/tags/v${version}";
hash = "sha256-gr4hBbecaGHaoNhRQQXWfLfNB0/wQPKftSiTnGgngog=";
tag = "v${version}";
hash = "sha256-rs9mYl/2KNdV9e+L/kZr59kLw7ckW9UQPZwkaGyl1Iw=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
sourceRoot = "${src.name}/bindings/python";
hash = "sha256-zDXzEVvmJF1dEVUFGBc3losr9U1q/qJCjNFkdJ/pCd4=";
hash = "sha256-bQkLBiuhVm2dzrf6hq+S04+zoXUszA7be8iS0WJSoOU=";
};
sourceRoot = "${src.name}/bindings/python";
@@ -48,8 +45,6 @@ buildPythonPackage rec {
setuptools-rust
];
buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ libiconv ];
nativeCheckInputs = [
h5py
numpy
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "slixmpp";
version = "1.8.5";
version = "1.8.6";
format = "setuptools";
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.9";
src = fetchPypi {
inherit pname version;
hash = "sha256-dePwrUhVX39ckijnBmwdQ1izPWQLT753PsNLA7f66aM=";
hash = "sha256-YK/Kp8laD7nn8RWctwRkpVWIBterrinNMeP8iD+biws=";
};
propagatedBuildInputs = [
@@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "tencentcloud-sdk-python";
version = "3.0.1293";
version = "3.0.1294";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "TencentCloud";
repo = "tencentcloud-sdk-python";
rev = "refs/tags/${version}";
hash = "sha256-ho1RneF7xRO6Lc7i4BxAVjHA9UZiEZA2+olnasv4RSw=";
hash = "sha256-6Xuih0E+i5dxTlkYzYa0J3T0aNpCoGnnBo1tpfuzWQM=";
};
build-system = [ setuptools ];
@@ -9,16 +9,16 @@
buildPythonPackage rec {
pname = "tika-client";
version = "0.7.0";
version = "0.8.1";
pyproject = true;
disabled = pythonOlder "3.8";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "stumpylog";
repo = "tika-client";
rev = "refs/tags/${version}";
hash = "sha256-0cv2HaquIUQOb5CPkCxSYvXDzu3OV7WKIT80jI+pjpY=";
tag = version;
hash = "sha256-UXd6GnwwFVUbBXhskBXDQaYlURQyrhgvMsncOwaLT1o=";
};
build-system = [ hatchling ];
@@ -454,59 +454,11 @@ buildPythonPackage rec {
env =
{
# Suppress a weird warning in mkl-dnn, part of ideep in pytorch
# (upstream seems to have fixed this in the wrong place?)
# https://github.com/intel/mkl-dnn/commit/8134d346cdb7fe1695a2aa55771071d455fae0bc
# https://github.com/pytorch/pytorch/issues/22346
#
# disable warnings as errors as they break the build on every compiler
# bump, among other things.
# Also of interest: pytorch ignores CXXFLAGS uses CFLAGS for both C and C++:
# https://github.com/pytorch/pytorch/blob/v1.11.0/setup.py#L17
NIX_CFLAGS_COMPILE = toString (
(
lib.optionals (blas.implementation == "mkl") [ "-Wno-error=array-bounds" ]
# Suppress gcc regression: avx512 math function raises uninitialized variable warning
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105593
# See also: Fails to compile with GCC 12.1.0 https://github.com/pytorch/pytorch/issues/77939
++ lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12.0.0") [
"-Wno-error=maybe-uninitialized"
"-Wno-error=uninitialized"
]
# Since pytorch 2.0:
# gcc-12.2.0/include/c++/12.2.0/bits/new_allocator.h:158:33: error: void operator delete(void*, std::size_t)
# ... called on pointer <unknown> with nonzero offset [1, 9223372036854775800] [-Werror=free-nonheap-object]
++ lib.optionals (stdenv.cc.isGNU && lib.versions.major stdenv.cc.version == "12") [
"-Wno-error=free-nonheap-object"
]
# .../source/torch/csrc/autograd/generated/python_functions_0.cpp:85:3:
# error: cast from ... to ... converts to incompatible function type [-Werror,-Wcast-function-type-strict]
++ lib.optionals (stdenv.cc.isClang && lib.versionAtLeast stdenv.cc.version "16") [
"-Wno-error=cast-function-type-strict"
# Suppresses the most spammy warnings.
# This is mainly to fix https://github.com/NixOS/nixpkgs/issues/266895.
]
++ lib.optionals rocmSupport [
"-Wno-#warnings"
"-Wno-cpp"
"-Wno-unknown-warning-option"
"-Wno-ignored-attributes"
"-Wno-deprecated-declarations"
"-Wno-defaulted-function-deleted"
"-Wno-pass-failed"
]
++ [
"-Wno-unused-command-line-argument"
"-Wno-uninitialized"
"-Wno-array-bounds"
"-Wno-free-nonheap-object"
"-Wno-unused-result"
]
++ lib.optionals stdenv.cc.isGNU [
"-Wno-maybe-uninitialized"
"-Wno-stringop-overflow"
]
)
);
NIX_CFLAGS_COMPILE = "-Wno-error";
USE_VULKAN = setBool vulkanSupport;
}
// lib.optionalAttrs vulkanSupport {
@@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "wagtail-localize";
version = "1.10";
version = "1.11.1";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -26,8 +26,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
repo = "wagtail-localize";
owner = "wagtail";
rev = "refs/tags/v${version}";
hash = "sha256-khGzJj7LBxz5WPU8l20CmQjC9p5umk6spSyMMHBBguc=";
tag = "v${version}";
hash = "sha256-HBc5t74zA7kUE8pvaYRZtslVInWrTw0UkmrGd+xaW0Q=";
};
build-system = [ flit-core ];
@@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "ytmusicapi";
version = "1.8.2";
version = "1.9.1";
pyproject = true;
disabled = pythonOlder "3.9";
@@ -17,8 +17,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "sigma67";
repo = "ytmusicapi";
rev = "refs/tags/${version}";
hash = "sha256-SZ5YsQNrE91ycSXy/NjtjXp0E6msVKlV0f+Td0AwYpQ=";
tag = version;
hash = "sha256-yg8wjJTbx6LaVrln+Qdfn7XKnnI2n4W56YQZRYXrtLI=";
};
build-system = [ setuptools-scm ];
@@ -0,0 +1,40 @@
{
lib,
aiohttp,
buildPythonPackage,
fetchFromGitHub,
pytestCheckHook,
pythonOlder,
setuptools,
}:
buildPythonPackage rec {
pname = "zabbix-utils";
version = "2.0.2";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "zabbix";
repo = "python-zabbix-utils";
rev = "refs/tags/v${version}";
hash = "sha256-rRPen/FzWT0cCnXWiSdoybtXeP1pxYqnjq5b0QPVs1I=";
};
build-system = [ setuptools ];
dependencies = [ aiohttp ];
nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "zabbix_utils" ];
meta = {
description = "Library for zabbix";
homepage = "https://github.com/zabbix/python-zabbix-utils";
changelog = "https://github.com/zabbix/python-zabbix-utils/blob/${src.rev}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
}
@@ -58,6 +58,7 @@ gem 'ffi'
gem 'ffi-rzmq-core'
gem 'fog-dnsimple'
gem 'gdk_pixbuf2'
gem 'gettext'
gem 'gio2'
gem 'git'
gem 'github-pages'
@@ -0,0 +1,13 @@
diff --git a/mix.exs b/mix.exs
index 8338abf8..883e6987 100644
--- a/mix.exs
+++ b/mix.exs
@@ -1,7 +1,7 @@
defmodule Mobilizon.Mixfile do
use Mix.Project
- @version "5.1.0"
+ @version "5.1.1"
def project do
[
+5
View File
@@ -19,6 +19,11 @@ in
mixRelease rec {
inherit (common) pname version src;
# Version 5.1.1 failed to bump their internal package version,
# which causes issues with static file serving in the NixOS module.
# See https://github.com/NixOS/nixpkgs/pull/370277
patches = [ ./0001-fix-version.patch ];
nativeBuildInputs = [
git
cmake
+45 -23
View File
@@ -146,29 +146,51 @@ let
"lib"
"man"
];
outputChecks.out = {
disallowedReferences = [
"dev"
"doc"
"man"
];
disallowedRequisites = [
stdenv'.cc
llvmPackages.llvm.out
] ++ (map lib.getDev (builtins.filter (drv: drv ? "dev") finalAttrs.buildInputs));
};
outputChecks.lib = {
disallowedReferences = [
"out"
"dev"
"doc"
"man"
];
disallowedRequisites = [
stdenv'.cc
llvmPackages.llvm.out
] ++ (map lib.getDev (builtins.filter (drv: drv ? "dev") finalAttrs.buildInputs));
};
outputChecks =
{
out = {
disallowedReferences = [
"dev"
"doc"
"man"
];
disallowedRequisites = [
stdenv'.cc
llvmPackages.llvm.out
] ++ (map lib.getDev (builtins.filter (drv: drv ? "dev") finalAttrs.buildInputs));
};
lib = {
disallowedReferences = [
"out"
"dev"
"doc"
"man"
];
disallowedRequisites = [
stdenv'.cc
llvmPackages.llvm.out
] ++ (map lib.getDev (builtins.filter (drv: drv ? "dev") finalAttrs.buildInputs));
};
}
// lib.optionalAttrs (atLeast "14" && olderThan "15") {
# TODO: Make this unconditional via staging because of number of rebuilds.
doc = {
disallowedReferences = [
"out"
"dev"
"man"
];
};
man = {
disallowedReferences = [
"out"
"dev"
"doc"
];
};
};
strictDeps = true;
+2
View File
@@ -18367,6 +18367,8 @@ self: super: with self; {
pname = "z3-solver";
}))).python;
zabbix-utils = callPackage ../development/python-modules/zabbix-utils { };
zadnegoale = callPackage ../development/python-modules/zadnegoale { };
zamg = callPackage ../development/python-modules/zamg { };
+62
View File
@@ -1113,6 +1113,16 @@
};
version = "1.1.0";
};
forwardable = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1b5g1i3xdvmxxpq4qp0z4v78ivqnazz26w110fh4cvzsdayz8zgi";
type = "gem";
};
version = "1.3.3";
};
forwardable-extended = {
groups = ["default"];
platforms = [];
@@ -1155,6 +1165,17 @@
};
version = "3.0.1";
};
gettext = {
dependencies = ["erubi" "locale" "prime" "racc" "text"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "16h0kda5z4s4zqygyk0f52xzs9mlz9r4lnhjwk729hhmdbz68a19";
type = "gem";
};
version = "3.4.9";
};
gio2 = {
dependencies = ["fiddle" "gobject-introspection"];
groups = ["default"];
@@ -2141,6 +2162,16 @@
};
version = "0.5.0";
};
locale = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "107pm4ccmla23z963kyjldgngfigvchnv85wr6m69viyxxrrjbsj";
type = "gem";
};
version = "2.1.4";
};
loofah = {
dependencies = ["crass" "nokogiri"];
groups = ["default"];
@@ -2748,6 +2779,17 @@
};
version = "1.2.1";
};
prime = {
dependencies = ["forwardable" "singleton"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1qsk9q2n4yb80f5mwslxzfzm2ckar25grghk95cj7sbc1p2k3w5s";
type = "gem";
};
version = "0.1.3";
};
prism = {
groups = ["default"];
platforms = [];
@@ -3600,6 +3642,16 @@
};
version = "4.0.0";
};
singleton = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0y2pc7lr979pab5n5lvk3jhsi99fhskl5f2s6004v8sabz51psl3";
type = "gem";
};
version = "0.3.0";
};
slather = {
dependencies = ["clamp" "xcodeproj"];
groups = ["default"];
@@ -3779,6 +3831,16 @@
};
version = "1.6.0";
};
text = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1x6kkmsr49y3rnrin91rv8mpc3dhrf3ql08kbccw8yffq61brfrg";
type = "gem";
};
version = "1.3.1";
};
thor = {
groups = ["default"];
platforms = [];