[staging] Merge staging-next (#448555)
This commit is contained in:
@@ -9,7 +9,7 @@ wide variety of extensions and libraries available.
|
||||
|
||||
The different versions of PHP that nixpkgs provides are located under
|
||||
attributes named based on major and minor version number; e.g.,
|
||||
`php81` is PHP 8.1.
|
||||
`php84` is PHP 8.4.
|
||||
|
||||
Only versions of PHP that are supported by upstream for the entirety
|
||||
of a given NixOS release will be included in that release of
|
||||
@@ -22,8 +22,8 @@ NixOS - not necessarily the latest major release from upstream.
|
||||
|
||||
All available PHP attributes are wrappers around their respective
|
||||
binary PHP package and provide commonly used extensions this way. The
|
||||
real PHP 8.1 package, i.e. the unwrapped one, is available as
|
||||
`php81.unwrapped`; see the next section for more details.
|
||||
real PHP 8.4 package, i.e. the unwrapped one, is available as
|
||||
`php84.unwrapped`; see the next section for more details.
|
||||
|
||||
Interactive tools built on PHP are put in `php.packages`; composer is
|
||||
for example available at `php.packages.composer`.
|
||||
|
||||
@@ -167,6 +167,11 @@ lib.mapAttrs mkLicense (
|
||||
fullName = "Apache License 2.0";
|
||||
};
|
||||
|
||||
baekmuk = {
|
||||
spdxId = "Baekmuk";
|
||||
fullName = "Baekmuk License";
|
||||
};
|
||||
|
||||
bitstreamCharter = {
|
||||
spdxId = "Bitstream-Charter";
|
||||
fullName = "Bitstream Charter Font License";
|
||||
@@ -187,6 +192,11 @@ lib.mapAttrs mkLicense (
|
||||
fullName = " BitTorrent Open Source License v1.1";
|
||||
};
|
||||
|
||||
boehmGC = {
|
||||
spdxId = "Boehm-GC";
|
||||
fullName = "Boehm-Demers-Weiser GC License";
|
||||
};
|
||||
|
||||
bola11 = {
|
||||
url = "https://blitiri.com.ar/p/bola/";
|
||||
fullName = "Buena Onda License Agreement 1.1";
|
||||
@@ -596,6 +606,11 @@ lib.mapAttrs mkLicense (
|
||||
free = false;
|
||||
};
|
||||
|
||||
fontException = {
|
||||
spdxId = "Font-exception-2.0";
|
||||
fullName = "Font exception 2.0";
|
||||
};
|
||||
|
||||
fraunhofer-fdk = {
|
||||
fullName = "Fraunhofer FDK AAC Codec Library";
|
||||
spdxId = "FDK-AAC";
|
||||
@@ -605,6 +620,11 @@ lib.mapAttrs mkLicense (
|
||||
fullName = "Unspecified free software license";
|
||||
};
|
||||
|
||||
freeimage = {
|
||||
spdxId = "FreeImage";
|
||||
fullName = "FreeImage Public License v1.0";
|
||||
};
|
||||
|
||||
fsl11Mit = {
|
||||
fullName = "Functional Source License, Version 1.1, MIT Future License";
|
||||
spdxId = "FSL-1.1-MIT";
|
||||
@@ -776,6 +796,11 @@ lib.mapAttrs mkLicense (
|
||||
free = false;
|
||||
};
|
||||
|
||||
interbase = {
|
||||
spdxId = "Interbase-1.0";
|
||||
fullName = "Interbase Public License v1.0";
|
||||
};
|
||||
|
||||
ipa = {
|
||||
spdxId = "IPA";
|
||||
fullName = "IPA Font License";
|
||||
@@ -1052,6 +1077,11 @@ lib.mapAttrs mkLicense (
|
||||
redistributable = true; # Only if used in Netdata products.
|
||||
};
|
||||
|
||||
ngpl = {
|
||||
spdxId = "NGPL";
|
||||
fullName = "Nethack General Public License";
|
||||
};
|
||||
|
||||
nistSoftware = {
|
||||
spdxId = "NIST-Software";
|
||||
fullName = "NIST Software License";
|
||||
@@ -1144,6 +1174,11 @@ lib.mapAttrs mkLicense (
|
||||
fullName = "Open Software License 3.0";
|
||||
};
|
||||
|
||||
paratype = {
|
||||
fullName = "ParaType Free Font Licensing Agreement";
|
||||
url = "https://web.archive.org/web/20161209023955/http://www.paratype.ru/public/pt_openlicense_eng.asp";
|
||||
};
|
||||
|
||||
parity70 = {
|
||||
spdxId = "Parity-7.0.0";
|
||||
fullName = "Parity Public License 7.0.0";
|
||||
@@ -1272,6 +1307,11 @@ lib.mapAttrs mkLicense (
|
||||
redistributable = false; # only free to redistribute "for non-commercial purposes"
|
||||
};
|
||||
|
||||
tcpWrappers = {
|
||||
spdxId = "TCP-wrappers";
|
||||
fullName = "TCP Wrappers License";
|
||||
};
|
||||
|
||||
teamspeak = {
|
||||
fullName = "Teamspeak client license";
|
||||
url = "https://www.teamspeak.com/en/privacy-and-terms/";
|
||||
@@ -1319,6 +1359,11 @@ lib.mapAttrs mkLicense (
|
||||
# https://github.com/spdx/license-list-XML/issues/2757
|
||||
};
|
||||
|
||||
torque11 = {
|
||||
spdxId = "TORQUE-1.1";
|
||||
fullName = "TORQUE v2.5+ Software License v1.1";
|
||||
};
|
||||
|
||||
tsl = {
|
||||
shortName = "TSL";
|
||||
fullName = "Timescale License Agreegment";
|
||||
@@ -1459,6 +1504,11 @@ lib.mapAttrs mkLicense (
|
||||
fullName = "X11 License";
|
||||
};
|
||||
|
||||
xerox = {
|
||||
spdxId = "Xerox";
|
||||
fullName = "Xerox License";
|
||||
};
|
||||
|
||||
xfig = {
|
||||
spdxId = "Xfig";
|
||||
fullName = "xfig";
|
||||
|
||||
+8
-1
@@ -44,7 +44,14 @@ let
|
||||
baseName == ".git"
|
||||
||
|
||||
type == "directory"
|
||||
&& (baseName == ".svn" || baseName == "CVS" || baseName == ".hg" || baseName == ".jj")
|
||||
&& (
|
||||
baseName == ".svn"
|
||||
|| baseName == "CVS"
|
||||
|| baseName == ".hg"
|
||||
|| baseName == ".jj"
|
||||
|| baseName == ".pijul"
|
||||
|| baseName == "_darcs"
|
||||
)
|
||||
)
|
||||
||
|
||||
# Filter out editor backup / swap files.
|
||||
|
||||
@@ -127,7 +127,7 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [sx](https://github.com/earnestly/sx), a simple alternative to both xinit and startx for starting a Xorg server. Available as [services.xserver.displayManager.sx](#opt-services.xserver.displayManager.sx.enable)
|
||||
|
||||
- [postfixadmin](https://postfixadmin.sourceforge.io/), a web based virtual user administration interface for Postfix mail servers. Available as [postfixadmin](#opt-services.postfixadmin.enable).
|
||||
- [postfixadmin](https://postfixadmin.sourceforge.io/), a web based virtual user administration interface for Postfix mail servers.
|
||||
|
||||
- [prowlarr](https://wiki.servarr.com/prowlarr), an indexer manager/proxy built on the popular arr .net/reactjs base stack [services.prowlarr](#opt-services.prowlarr.enable).
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||
|
||||
- [input-remapper](https://github.com/sezanzeb/input-remapper), an easy to use tool to change the mapping of your input device buttons. Available at [services.input-remapper](#opt-services.input-remapper.enable).
|
||||
|
||||
- [InvoicePlane](https://invoiceplane.com), web application for managing and creating invoices. Available at [services.invoiceplane](#opt-services.invoiceplane.sites._name_.enable).
|
||||
- [InvoicePlane](https://invoiceplane.com), web application for managing and creating invoices. Available at `services.invoiceplane`.
|
||||
|
||||
- [k3b](https://userbase.kde.org/K3b), the KDE disk burning application. Available as [programs.k3b](#opt-programs.k3b.enable).
|
||||
|
||||
|
||||
@@ -330,6 +330,8 @@
|
||||
|
||||
Note that system activation will complete before all certificates may have been renewed or acquired.
|
||||
|
||||
- `php81` was removed.
|
||||
|
||||
- `libvirt` now supports using `nftables` backend.
|
||||
- The `virtualisation.libvirtd.firewallBackend` option can be used to configure the firewall backend used by libvirtd.
|
||||
|
||||
|
||||
@@ -752,7 +752,6 @@
|
||||
./services/mail/pfix-srsd.nix
|
||||
./services/mail/postfix-tlspol.nix
|
||||
./services/mail/postfix.nix
|
||||
./services/mail/postfixadmin.nix
|
||||
./services/mail/postgrey.nix
|
||||
./services/mail/postsrsd.nix
|
||||
./services/mail/protonmail-bridge.nix
|
||||
@@ -1613,7 +1612,6 @@
|
||||
./services/web-apps/immich-public-proxy.nix
|
||||
./services/web-apps/immich.nix
|
||||
./services/web-apps/invidious.nix
|
||||
./services/web-apps/invoiceplane.nix
|
||||
./services/web-apps/isso.nix
|
||||
./services/web-apps/jirafeau.nix
|
||||
./services/web-apps/jitsi-meet.nix
|
||||
|
||||
@@ -394,6 +394,14 @@ in
|
||||
Consider migrating or switching to Incus, or remove from your configuration.
|
||||
https://linuxcontainers.org/incus/docs/main/howto/server_migrate_lxd/
|
||||
'')
|
||||
(mkRemovedOptionModule [ "services" "invoiceplane" ] ''
|
||||
services.invoiceplane has been removed since the service only supported PHP 8.1 which is EOL
|
||||
and removed from nixpkgs.
|
||||
'')
|
||||
(mkRemovedOptionModule [ "services" "postfixadmin" ] ''
|
||||
services.postfixadmin has been removed since it was unmaintained in nixpkgs and the version
|
||||
available only supported PHP 8.1 which is EOL.
|
||||
'')
|
||||
# Do NOT add any option renames here, see top of the file
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,215 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.services.postfixadmin;
|
||||
fpm = config.services.phpfpm.pools.postfixadmin;
|
||||
localDB = cfg.database.host == "localhost";
|
||||
pgsql = config.services.postgresql;
|
||||
user = if localDB then cfg.database.username else "nginx";
|
||||
in
|
||||
{
|
||||
options.services.postfixadmin = {
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Whether to enable postfixadmin.
|
||||
|
||||
Also enables nginx virtual host management.
|
||||
Further nginx configuration can be done by adapting `services.nginx.virtualHosts.<name>`.
|
||||
See [](#opt-services.nginx.virtualHosts) for further information.
|
||||
'';
|
||||
};
|
||||
|
||||
hostName = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
example = "postfixadmin.example.com";
|
||||
description = "Hostname to use for the nginx vhost";
|
||||
};
|
||||
|
||||
adminEmail = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
example = "postmaster@example.com";
|
||||
description = ''
|
||||
Defines the Site Admin's email address.
|
||||
This will be used to send emails from to create mailboxes and
|
||||
from Send Email / Broadcast message pages.
|
||||
'';
|
||||
};
|
||||
|
||||
setupPasswordFile = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
description = ''
|
||||
Password file for the admin.
|
||||
Generate with `php -r "echo password_hash('some password here', PASSWORD_DEFAULT);"`
|
||||
'';
|
||||
};
|
||||
|
||||
database = {
|
||||
username = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "postfixadmin";
|
||||
description = ''
|
||||
Username for the postgresql connection.
|
||||
If `database.host` is set to `localhost`, a unix user and group of the same name will be created as well.
|
||||
'';
|
||||
};
|
||||
|
||||
host = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "localhost";
|
||||
description = ''
|
||||
Host of the postgresql server. If this is not set to
|
||||
`localhost`, you have to create the
|
||||
postgresql user and database yourself, with appropriate
|
||||
permissions.
|
||||
'';
|
||||
};
|
||||
|
||||
passwordFile = lib.mkOption {
|
||||
type = lib.types.path;
|
||||
description = "Password file for the postgresql connection. Must be readable by user `nginx`.";
|
||||
};
|
||||
|
||||
dbname = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "postfixadmin";
|
||||
description = "Name of the postgresql database";
|
||||
};
|
||||
};
|
||||
|
||||
extraConfig = lib.mkOption {
|
||||
type = lib.types.lines;
|
||||
default = "";
|
||||
description = "Extra configuration for the postfixadmin instance, see postfixadmin's config.inc.php for available options.";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.etc."postfixadmin/config.local.php".text = ''
|
||||
<?php
|
||||
|
||||
$CONF['setup_password'] = file_get_contents('${cfg.setupPasswordFile}');
|
||||
|
||||
$CONF['database_type'] = 'pgsql';
|
||||
$CONF['database_host'] = ${if localDB then "null" else "'${cfg.database.host}'"};
|
||||
${lib.optionalString localDB "$CONF['database_user'] = '${cfg.database.username}';"}
|
||||
$CONF['database_password'] = ${
|
||||
if localDB then "'dummy'" else "file_get_contents('${cfg.database.passwordFile}')"
|
||||
};
|
||||
$CONF['database_name'] = '${cfg.database.dbname}';
|
||||
$CONF['configured'] = true;
|
||||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
|
||||
systemd.tmpfiles.settings."10-postfixadmin"."/var/cache/postfixadmin/templates_c".d = {
|
||||
inherit user;
|
||||
group = user;
|
||||
mode = "700";
|
||||
};
|
||||
|
||||
services.nginx = {
|
||||
enable = true;
|
||||
virtualHosts = {
|
||||
${cfg.hostName} = {
|
||||
forceSSL = lib.mkDefault true;
|
||||
enableACME = lib.mkDefault true;
|
||||
locations."/" = {
|
||||
root = "${pkgs.postfixadmin}/public";
|
||||
index = "index.php";
|
||||
extraConfig = ''
|
||||
location ~* \.php$ {
|
||||
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
||||
fastcgi_pass unix:${fpm.socket};
|
||||
include ${config.services.nginx.package}/conf/fastcgi_params;
|
||||
include ${pkgs.nginx}/conf/fastcgi.conf;
|
||||
}
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
services.postgresql = lib.mkIf localDB {
|
||||
enable = true;
|
||||
ensureUsers = [
|
||||
{
|
||||
name = cfg.database.username;
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
# The postgresql module doesn't currently support concepts like
|
||||
# objects owners and extensions; for now we tack on what's needed
|
||||
# here.
|
||||
systemd.services.postfixadmin-postgres = lib.mkIf localDB {
|
||||
after = [ "postgresql.target" ];
|
||||
bindsTo = [ "postgresql.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
path = [
|
||||
pgsql.package
|
||||
pkgs.util-linux
|
||||
];
|
||||
script = ''
|
||||
set -euo pipefail
|
||||
|
||||
PSQL() {
|
||||
psql --port=${toString pgsql.settings.port} "$@"
|
||||
}
|
||||
|
||||
PSQL -tAc "SELECT 1 FROM pg_database WHERE datname = '${cfg.database.dbname}'" | grep -q 1 || PSQL -tAc 'CREATE DATABASE "${cfg.database.dbname}" OWNER "${cfg.database.username}"'
|
||||
current_owner=$(PSQL -tAc "SELECT pg_catalog.pg_get_userbyid(datdba) FROM pg_catalog.pg_database WHERE datname = '${cfg.database.dbname}'")
|
||||
if [[ "$current_owner" != "${cfg.database.username}" ]]; then
|
||||
PSQL -tAc 'ALTER DATABASE "${cfg.database.dbname}" OWNER TO "${cfg.database.username}"'
|
||||
if [[ -e "${pgsql.dataDir}/.reassigning_${cfg.database.dbname}" ]]; then
|
||||
echo "Reassigning ownership of database ${cfg.database.dbname} to user ${cfg.database.username} failed on last boot. Failing..."
|
||||
exit 1
|
||||
fi
|
||||
touch "${pgsql.dataDir}/.reassigning_${cfg.database.dbname}"
|
||||
PSQL "${cfg.database.dbname}" -tAc "REASSIGN OWNED BY \"$current_owner\" TO \"${cfg.database.username}\""
|
||||
rm "${pgsql.dataDir}/.reassigning_${cfg.database.dbname}"
|
||||
fi
|
||||
'';
|
||||
|
||||
serviceConfig = {
|
||||
User = pgsql.superUser;
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
};
|
||||
|
||||
users.users.${user} = lib.mkIf localDB {
|
||||
group = user;
|
||||
isSystemUser = true;
|
||||
createHome = false;
|
||||
};
|
||||
|
||||
users.groups.${user} = lib.mkIf localDB { };
|
||||
|
||||
services.phpfpm.pools.postfixadmin = {
|
||||
user = user;
|
||||
phpPackage = pkgs.php81;
|
||||
phpOptions = ''
|
||||
error_log = 'stderr'
|
||||
log_errors = on
|
||||
'';
|
||||
settings = lib.mapAttrs (_: lib.mkDefault) {
|
||||
"listen.owner" = "nginx";
|
||||
"listen.group" = "nginx";
|
||||
"listen.mode" = "0660";
|
||||
"pm" = "dynamic";
|
||||
"pm.max_children" = 75;
|
||||
"pm.start_servers" = 2;
|
||||
"pm.min_spare_servers" = 1;
|
||||
"pm.max_spare_servers" = 20;
|
||||
"pm.max_requests" = 500;
|
||||
"catch_workers_output" = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -56,7 +56,7 @@ let
|
||||
pkgs.writeTextFile {
|
||||
inherit name;
|
||||
text = "<?php\n${text}";
|
||||
checkPhase = "${pkgs.php81}/bin/php --syntax-check $target";
|
||||
checkPhase = "${pkgs.php84}/bin/php --syntax-check $target";
|
||||
};
|
||||
|
||||
mkPhpValue =
|
||||
@@ -368,8 +368,7 @@ let
|
||||
};
|
||||
|
||||
phpPackage = mkPackageOption pkgs "php" {
|
||||
default = "php81";
|
||||
example = "php82";
|
||||
default = "php84";
|
||||
};
|
||||
|
||||
phpOptions = mkOption {
|
||||
|
||||
@@ -1,492 +0,0 @@
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.invoiceplane;
|
||||
eachSite = cfg.sites;
|
||||
user = "invoiceplane";
|
||||
webserver = config.services.${cfg.webserver};
|
||||
|
||||
invoiceplane-config =
|
||||
hostName: cfg:
|
||||
pkgs.writeText "ipconfig.php" ''
|
||||
# <?php exit('No direct script access allowed'); ?>
|
||||
|
||||
IP_URL=http://${hostName}
|
||||
ENABLE_DEBUG=false
|
||||
DISABLE_SETUP=false
|
||||
REMOVE_INDEXPHP=false
|
||||
DB_HOSTNAME=${cfg.database.host}
|
||||
DB_USERNAME=${cfg.database.user}
|
||||
# NOTE: file_get_contents adds newline at the end of returned string
|
||||
DB_PASSWORD=${
|
||||
optionalString (
|
||||
cfg.database.passwordFile != null
|
||||
) "trim(file_get_contents('${cfg.database.passwordFile}'), \"\\r\\n\")"
|
||||
}
|
||||
DB_DATABASE=${cfg.database.name}
|
||||
DB_PORT=${toString cfg.database.port}
|
||||
SESS_EXPIRATION=864000
|
||||
ENABLE_INVOICE_DELETION=false
|
||||
DISABLE_READ_ONLY=false
|
||||
ENCRYPTION_KEY=
|
||||
ENCRYPTION_CIPHER=AES-256
|
||||
SETUP_COMPLETED=false
|
||||
REMOVE_INDEXPHP=true
|
||||
'';
|
||||
|
||||
mkPhpValue =
|
||||
v:
|
||||
if isString v then
|
||||
escapeShellArg v
|
||||
# NOTE: If any value contains a , (comma) this will not get escaped
|
||||
else if isList v && strings.isConvertibleWithToString v then
|
||||
escapeShellArg (concatMapStringsSep "," toString v)
|
||||
else if isInt v then
|
||||
toString v
|
||||
else if isBool v then
|
||||
boolToString v
|
||||
else
|
||||
abort "The Invoiceplane config value ${lib.generators.toPretty { } v} can not be encoded.";
|
||||
|
||||
extraConfig =
|
||||
hostName: cfg:
|
||||
let
|
||||
settings = mapAttrsToList (k: v: "${k}=${mkPhpValue v}") cfg.settings;
|
||||
in
|
||||
pkgs.writeText "extraConfig.php" (concatStringsSep "\n" settings);
|
||||
|
||||
pkg =
|
||||
hostName: cfg:
|
||||
pkgs.stdenv.mkDerivation rec {
|
||||
pname = "invoiceplane-${hostName}";
|
||||
version = src.version;
|
||||
src = pkgs.invoiceplane;
|
||||
|
||||
postPatch = ''
|
||||
# Patch index.php file to load additional config file
|
||||
substituteInPlace index.php \
|
||||
--replace-fail "require __DIR__ . '/vendor/autoload.php';" "require('vendor/autoload.php'); \$dotenv = Dotenv\Dotenv::createImmutable(__DIR__, 'extraConfig.php'); \$dotenv->load();";
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r * $out/
|
||||
|
||||
# symlink uploads and log directories
|
||||
rm -r $out/uploads $out/application/logs $out/vendor/mpdf/mpdf/tmp
|
||||
ln -sf ${cfg.stateDir}/uploads $out/
|
||||
ln -sf ${cfg.stateDir}/logs $out/application/
|
||||
ln -sf ${cfg.stateDir}/tmp $out/vendor/mpdf/mpdf/
|
||||
|
||||
# symlink the InvoicePlane config
|
||||
ln -s ${cfg.stateDir}/ipconfig.php $out/ipconfig.php
|
||||
|
||||
# symlink the extraConfig file
|
||||
ln -s ${extraConfig hostName cfg} $out/extraConfig.php
|
||||
|
||||
# symlink additional templates
|
||||
${concatMapStringsSep "\n" (
|
||||
template: "cp -r ${template}/. $out/application/views/invoice_templates/pdf/"
|
||||
) cfg.invoiceTemplates}
|
||||
${concatMapStringsSep "\n" (
|
||||
template: "cp -r ${template}/. $out/application/views/quote_templates/pdf/"
|
||||
) cfg.quoteTemplates}
|
||||
'';
|
||||
};
|
||||
|
||||
siteOpts =
|
||||
{ lib, name, ... }:
|
||||
{
|
||||
options = {
|
||||
|
||||
enable = mkEnableOption "InvoicePlane web application";
|
||||
|
||||
stateDir = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/lib/invoiceplane/${name}";
|
||||
description = ''
|
||||
This directory is used for uploads of attachments and cache.
|
||||
The directory passed here is automatically created and permissions
|
||||
adjusted as required.
|
||||
'';
|
||||
};
|
||||
|
||||
database = {
|
||||
host = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost";
|
||||
description = "Database host address.";
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
default = 3306;
|
||||
description = "Database host port.";
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "invoiceplane";
|
||||
description = "Database name.";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "invoiceplane";
|
||||
description = "Database user.";
|
||||
};
|
||||
|
||||
passwordFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/run/keys/invoiceplane-dbpassword";
|
||||
description = ''
|
||||
A file containing the password corresponding to
|
||||
{option}`database.user`.
|
||||
'';
|
||||
};
|
||||
|
||||
createLocally = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
description = "Create the database and database user locally.";
|
||||
};
|
||||
};
|
||||
|
||||
invoiceTemplates = mkOption {
|
||||
type = types.listOf types.path;
|
||||
default = [ ];
|
||||
description = ''
|
||||
List of path(s) to respective template(s) which are copied from the 'invoice_templates/pdf' directory.
|
||||
|
||||
::: {.note}
|
||||
These templates need to be packaged before use, see example.
|
||||
:::
|
||||
'';
|
||||
example = literalExpression ''
|
||||
let
|
||||
# Let's package an example template
|
||||
template-vtdirektmarketing = pkgs.stdenv.mkDerivation {
|
||||
name = "vtdirektmarketing";
|
||||
# Download the template from a public repository
|
||||
src = pkgs.fetchgit {
|
||||
url = "https://git.project-insanity.org/onny/invoiceplane-vtdirektmarketing.git";
|
||||
sha256 = "1hh0q7wzsh8v8x03i82p6qrgbxr4v5fb05xylyrpp975l8axyg2z";
|
||||
};
|
||||
sourceRoot = ".";
|
||||
# Installing simply means copying template php file to the output directory
|
||||
installPhase = ""
|
||||
mkdir -p $out
|
||||
cp invoiceplane-vtdirektmarketing/vtdirektmarketing.php $out/
|
||||
"";
|
||||
};
|
||||
# And then pass this package to the template list like this:
|
||||
in [ template-vtdirektmarketing ]
|
||||
'';
|
||||
};
|
||||
|
||||
quoteTemplates = mkOption {
|
||||
type = types.listOf types.path;
|
||||
default = [ ];
|
||||
description = ''
|
||||
List of path(s) to respective template(s) which are copied from the 'quote_templates/pdf' directory.
|
||||
|
||||
::: {.note}
|
||||
These templates need to be packaged before use, see example.
|
||||
:::
|
||||
'';
|
||||
example = literalExpression ''
|
||||
let
|
||||
# Let's package an example template
|
||||
template-vtdirektmarketing = pkgs.stdenv.mkDerivation {
|
||||
name = "vtdirektmarketing";
|
||||
# Download the template from a public repository
|
||||
src = pkgs.fetchgit {
|
||||
url = "https://git.project-insanity.org/onny/invoiceplane-vtdirektmarketing.git";
|
||||
sha256 = "1hh0q7wzsh8v8x03i82p6qrgbxr4v5fb05xylyrpp975l8axyg2z";
|
||||
};
|
||||
sourceRoot = ".";
|
||||
# Installing simply means copying template php file to the output directory
|
||||
installPhase = ""
|
||||
mkdir -p $out
|
||||
cp invoiceplane-vtdirektmarketing/vtdirektmarketing.php $out/
|
||||
"";
|
||||
};
|
||||
# And then pass this package to the template list like this:
|
||||
in [ template-vtdirektmarketing ]
|
||||
'';
|
||||
};
|
||||
|
||||
poolConfig = mkOption {
|
||||
type =
|
||||
with types;
|
||||
attrsOf (oneOf [
|
||||
str
|
||||
int
|
||||
bool
|
||||
]);
|
||||
default = {
|
||||
"pm" = "dynamic";
|
||||
"pm.max_children" = 32;
|
||||
"pm.start_servers" = 2;
|
||||
"pm.min_spare_servers" = 2;
|
||||
"pm.max_spare_servers" = 4;
|
||||
"pm.max_requests" = 500;
|
||||
};
|
||||
description = ''
|
||||
Options for the InvoicePlane PHP pool. See the documentation on `php-fpm.conf`
|
||||
for details on configuration directives.
|
||||
'';
|
||||
};
|
||||
|
||||
settings = mkOption {
|
||||
type = types.attrsOf types.anything;
|
||||
default = { };
|
||||
description = ''
|
||||
Structural InvoicePlane configuration. Refer to
|
||||
<https://github.com/InvoicePlane/InvoicePlane/blob/master/ipconfig.php.example>
|
||||
for details and supported values.
|
||||
'';
|
||||
example = literalExpression ''
|
||||
{
|
||||
SETUP_COMPLETED = true;
|
||||
DISABLE_SETUP = true;
|
||||
IP_URL = "https://invoice.example.com";
|
||||
}
|
||||
'';
|
||||
};
|
||||
|
||||
cron = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable cron service which periodically runs Invoiceplane tasks.
|
||||
Requires key taken from the administration page. Refer to
|
||||
<https://wiki.invoiceplane.com/en/1.0/modules/recurring-invoices>
|
||||
on how to configure it.
|
||||
'';
|
||||
};
|
||||
key = mkOption {
|
||||
type = types.str;
|
||||
description = "Cron key taken from the administration page.";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
in
|
||||
{
|
||||
# interface
|
||||
options = {
|
||||
services.invoiceplane = mkOption {
|
||||
type = types.submodule {
|
||||
|
||||
options.sites = mkOption {
|
||||
type = types.attrsOf (types.submodule siteOpts);
|
||||
default = { };
|
||||
description = "Specification of one or more InvoicePlane sites to serve";
|
||||
};
|
||||
|
||||
options.webserver = mkOption {
|
||||
type = types.enum [
|
||||
"caddy"
|
||||
"nginx"
|
||||
];
|
||||
default = "caddy";
|
||||
example = "nginx";
|
||||
description = ''
|
||||
Which webserver to use for virtual host management.
|
||||
'';
|
||||
};
|
||||
};
|
||||
default = { };
|
||||
description = "InvoicePlane configuration.";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
# implementation
|
||||
config = mkIf (eachSite != { }) (mkMerge [
|
||||
{
|
||||
|
||||
assertions = flatten (
|
||||
mapAttrsToList (hostName: cfg: [
|
||||
{
|
||||
assertion = cfg.database.createLocally -> cfg.database.user == user;
|
||||
message = ''services.invoiceplane.sites."${hostName}".database.user must be ${user} if the database is to be automatically provisioned'';
|
||||
}
|
||||
{
|
||||
assertion = cfg.database.createLocally -> cfg.database.passwordFile == null;
|
||||
message = ''services.invoiceplane.sites."${hostName}".database.passwordFile cannot be specified if services.invoiceplane.sites."${hostName}".database.createLocally is set to true.'';
|
||||
}
|
||||
{
|
||||
assertion = cfg.cron.enable -> cfg.cron.key != null;
|
||||
message = ''services.invoiceplane.sites."${hostName}".cron.key must be set in order to use cron service.'';
|
||||
}
|
||||
]) eachSite
|
||||
);
|
||||
|
||||
services.mysql = mkIf (any (v: v.database.createLocally) (attrValues eachSite)) {
|
||||
enable = true;
|
||||
package = mkDefault pkgs.mariadb;
|
||||
ensureDatabases = mapAttrsToList (hostName: cfg: cfg.database.name) eachSite;
|
||||
ensureUsers = mapAttrsToList (hostName: cfg: {
|
||||
name = cfg.database.user;
|
||||
ensurePermissions = {
|
||||
"${cfg.database.name}.*" = "ALL PRIVILEGES";
|
||||
};
|
||||
}) eachSite;
|
||||
};
|
||||
|
||||
services.phpfpm = {
|
||||
phpPackage = pkgs.php81;
|
||||
pools = mapAttrs' (
|
||||
hostName: cfg:
|
||||
(nameValuePair "invoiceplane-${hostName}" {
|
||||
inherit user;
|
||||
group = webserver.group;
|
||||
settings = {
|
||||
"listen.owner" = webserver.user;
|
||||
"listen.group" = webserver.group;
|
||||
}
|
||||
// cfg.poolConfig;
|
||||
})
|
||||
) eachSite;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
{
|
||||
|
||||
systemd.tmpfiles.rules = flatten (
|
||||
mapAttrsToList (hostName: cfg: [
|
||||
"d ${cfg.stateDir} 0750 ${user} ${webserver.group} - -"
|
||||
"f ${cfg.stateDir}/ipconfig.php 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/logs 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/uploads 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/uploads/archive 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/uploads/customer_files 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/uploads/temp 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/uploads/temp/mpdf 0750 ${user} ${webserver.group} - -"
|
||||
"d ${cfg.stateDir}/tmp 0750 ${user} ${webserver.group} - -"
|
||||
]) eachSite
|
||||
);
|
||||
|
||||
systemd.services.invoiceplane-config = {
|
||||
serviceConfig.Type = "oneshot";
|
||||
script = concatStrings (
|
||||
mapAttrsToList (hostName: cfg: ''
|
||||
mkdir -p ${cfg.stateDir}/logs \
|
||||
${cfg.stateDir}/uploads
|
||||
if ! grep -q IP_URL "${cfg.stateDir}/ipconfig.php"; then
|
||||
cp "${invoiceplane-config hostName cfg}" "${cfg.stateDir}/ipconfig.php"
|
||||
fi
|
||||
if ! grep -q 'php exit' "${cfg.stateDir}/ipconfig.php"; then
|
||||
sed -i "1i # <?php exit('No direct script access allowed'); ?>" "${cfg.stateDir}/ipconfig.php"
|
||||
fi
|
||||
'') eachSite
|
||||
);
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
|
||||
users.users.${user} = {
|
||||
group = webserver.group;
|
||||
isSystemUser = true;
|
||||
};
|
||||
|
||||
}
|
||||
{
|
||||
|
||||
# Cron service implementation
|
||||
|
||||
systemd.timers = mapAttrs' (
|
||||
hostName: cfg:
|
||||
(nameValuePair "invoiceplane-cron-${hostName}" (
|
||||
mkIf cfg.cron.enable {
|
||||
wantedBy = [ "timers.target" ];
|
||||
timerConfig = {
|
||||
OnBootSec = "5m";
|
||||
OnUnitActiveSec = "5m";
|
||||
Unit = "invoiceplane-cron-${hostName}.service";
|
||||
};
|
||||
}
|
||||
))
|
||||
) eachSite;
|
||||
|
||||
systemd.services = mapAttrs' (
|
||||
hostName: cfg:
|
||||
(nameValuePair "invoiceplane-cron-${hostName}" (
|
||||
mkIf cfg.cron.enable {
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
User = user;
|
||||
ExecStart = "${pkgs.curl}/bin/curl --header 'Host: ${hostName}' http://localhost/invoices/cron/recur/${cfg.cron.key}";
|
||||
};
|
||||
}
|
||||
))
|
||||
) eachSite;
|
||||
|
||||
}
|
||||
|
||||
(mkIf (cfg.webserver == "caddy") {
|
||||
services.caddy = {
|
||||
enable = true;
|
||||
virtualHosts = mapAttrs' (
|
||||
hostName: cfg:
|
||||
(nameValuePair "http://${hostName}" {
|
||||
extraConfig = ''
|
||||
root * ${pkg hostName cfg}
|
||||
file_server
|
||||
php_fastcgi unix/${config.services.phpfpm.pools."invoiceplane-${hostName}".socket}
|
||||
'';
|
||||
})
|
||||
) eachSite;
|
||||
};
|
||||
})
|
||||
|
||||
(mkIf (cfg.webserver == "nginx") {
|
||||
services.nginx = {
|
||||
enable = true;
|
||||
virtualHosts = mapAttrs' (
|
||||
hostName: cfg:
|
||||
(nameValuePair hostName {
|
||||
root = pkg hostName cfg;
|
||||
extraConfig = ''
|
||||
index index.php index.html index.htm;
|
||||
|
||||
if (!-e $request_filename){
|
||||
rewrite ^(.*)$ /index.php break;
|
||||
}
|
||||
'';
|
||||
|
||||
locations = {
|
||||
"/setup".extraConfig = ''
|
||||
rewrite ^(.*)$ http://${hostName}/ redirect;
|
||||
'';
|
||||
|
||||
"~ .php$" = {
|
||||
extraConfig = ''
|
||||
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
fastcgi_pass unix:${config.services.phpfpm.pools."invoiceplane-${hostName}".socket};
|
||||
include ${config.services.nginx.package}/conf/fastcgi_params;
|
||||
include ${config.services.nginx.package}/conf/fastcgi.conf;
|
||||
'';
|
||||
};
|
||||
};
|
||||
})
|
||||
) eachSite;
|
||||
};
|
||||
})
|
||||
|
||||
]);
|
||||
}
|
||||
@@ -327,7 +327,7 @@ in
|
||||
|
||||
services.phpfpm.pools.limesurvey = {
|
||||
inherit user group;
|
||||
phpPackage = pkgs.php81;
|
||||
phpPackage = pkgs.php83;
|
||||
phpEnv.DBENGINE = "${cfg.database.dbEngine}";
|
||||
phpEnv.LIMESURVEY_CONFIG = "${limesurveyConfig}";
|
||||
# App code cannot access credentials directly since the service starts
|
||||
@@ -419,8 +419,8 @@ in
|
||||
environment.LIMESURVEY_CONFIG = limesurveyConfig;
|
||||
script = ''
|
||||
# update or install the database as required
|
||||
${pkgs.php81}/bin/php ${cfg.package}/share/limesurvey/application/commands/console.php updatedb || \
|
||||
${pkgs.php81}/bin/php ${cfg.package}/share/limesurvey/application/commands/console.php install admin password admin admin@example.com verbose
|
||||
${pkgs.php83}/bin/php ${cfg.package}/share/limesurvey/application/commands/console.php updatedb || \
|
||||
${pkgs.php83}/bin/php ${cfg.package}/share/limesurvey/application/commands/console.php install admin password admin admin@example.com verbose
|
||||
'';
|
||||
serviceConfig = {
|
||||
User = user;
|
||||
|
||||
@@ -745,7 +745,6 @@ in
|
||||
installer-systemd-stage-1 = handleTest ./installer-systemd-stage-1.nix { };
|
||||
intune = runTest ./intune.nix;
|
||||
invidious = runTest ./invidious.nix;
|
||||
invoiceplane = runTest ./invoiceplane.nix;
|
||||
iodine = runTest ./iodine.nix;
|
||||
iosched = runTest ./iosched.nix;
|
||||
ipget = runTest ./ipget.nix;
|
||||
@@ -1173,10 +1172,6 @@ in
|
||||
inherit runTest;
|
||||
php = pkgs.php;
|
||||
};
|
||||
php81 = import ./php/default.nix {
|
||||
inherit runTest;
|
||||
php = pkgs.php81;
|
||||
};
|
||||
php82 = import ./php/default.nix {
|
||||
inherit runTest;
|
||||
php = pkgs.php82;
|
||||
@@ -1218,7 +1213,6 @@ in
|
||||
handleTest ./postfix-raise-smtpd-tls-security-level.nix
|
||||
{ };
|
||||
postfix-tlspol = runTest ./postfix-tlspol.nix;
|
||||
postfixadmin = runTest ./postfixadmin.nix;
|
||||
postgres-websockets = runTest ./postgres-websockets.nix;
|
||||
postgresql = handleTest ./postgresql { };
|
||||
postgrest = runTest ./postgrest.nix;
|
||||
@@ -1462,6 +1456,7 @@ in
|
||||
systemd-machinectl = runTest ./systemd-machinectl.nix;
|
||||
systemd-misc = runTest ./systemd-misc.nix;
|
||||
systemd-networkd = runTest ./systemd-networkd.nix;
|
||||
systemd-networkd-batadv = runTest ./systemd-networkd-batadv.nix;
|
||||
systemd-networkd-bridge = runTest ./systemd-networkd-bridge.nix;
|
||||
systemd-networkd-dhcpserver = runTest ./systemd-networkd-dhcpserver.nix;
|
||||
systemd-networkd-dhcpserver-static-leases = runTest ./systemd-networkd-dhcpserver-static-leases.nix;
|
||||
|
||||
+3
-3
@@ -49,7 +49,7 @@
|
||||
index = "index.php index.html";
|
||||
};
|
||||
};
|
||||
phpPackage = pkgs.php81;
|
||||
phpPackage = pkgs.php84;
|
||||
enablePHP = true;
|
||||
};
|
||||
|
||||
@@ -78,8 +78,8 @@
|
||||
frps.wait_for_open_port(80)
|
||||
frpc.wait_for_unit("frp.service")
|
||||
response = frpc.succeed("curl -fvvv -s http://127.0.0.1/")
|
||||
assert "PHP Version ${pkgs.php81.version}" in response, "PHP version not detected"
|
||||
assert "PHP Version ${pkgs.php84.version}" in response, "PHP version not detected"
|
||||
response = frpc.succeed("curl -fvvv -s http://10.0.0.1/")
|
||||
assert "PHP Version ${pkgs.php81.version}" in response, "PHP version not detected"
|
||||
assert "PHP Version ${pkgs.php84.version}" in response, "PHP version not detected"
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -1,116 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
name = "invoiceplane";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [
|
||||
onny
|
||||
];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
invoiceplane_caddy =
|
||||
{ ... }:
|
||||
{
|
||||
services.invoiceplane.webserver = "caddy";
|
||||
services.invoiceplane.sites = {
|
||||
"site1.local" = {
|
||||
database.name = "invoiceplane1";
|
||||
database.createLocally = true;
|
||||
enable = true;
|
||||
};
|
||||
"site2.local" = {
|
||||
database.name = "invoiceplane2";
|
||||
database.createLocally = true;
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
networking.hosts."127.0.0.1" = [
|
||||
"site1.local"
|
||||
"site2.local"
|
||||
];
|
||||
};
|
||||
|
||||
invoiceplane_nginx =
|
||||
{ ... }:
|
||||
{
|
||||
services.invoiceplane.webserver = "nginx";
|
||||
services.invoiceplane.sites = {
|
||||
"site1.local" = {
|
||||
database.name = "invoiceplane1";
|
||||
database.createLocally = true;
|
||||
enable = true;
|
||||
};
|
||||
"site2.local" = {
|
||||
database.name = "invoiceplane2";
|
||||
database.createLocally = true;
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
networking.hosts."127.0.0.1" = [
|
||||
"site1.local"
|
||||
"site2.local"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
invoiceplane_caddy.wait_for_unit("caddy")
|
||||
invoiceplane_nginx.wait_for_unit("nginx")
|
||||
|
||||
site_names = ["site1.local", "site2.local"]
|
||||
|
||||
machines = [invoiceplane_caddy, invoiceplane_nginx]
|
||||
|
||||
for machine in machines:
|
||||
machine.wait_for_open_port(80)
|
||||
machine.wait_for_open_port(3306)
|
||||
|
||||
for site_name in site_names:
|
||||
machine.wait_for_unit(f"phpfpm-invoiceplane-{site_name}")
|
||||
|
||||
with subtest("Website returns welcome screen"):
|
||||
assert "Please install InvoicePlane" in machine.succeed(f"curl -L {site_name}")
|
||||
|
||||
with subtest("Finish InvoicePlane setup"):
|
||||
machine.succeed(
|
||||
f"curl -sSfL --cookie-jar cjar {site_name}/setup/language"
|
||||
)
|
||||
csrf_token = machine.succeed(
|
||||
"grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
|
||||
)
|
||||
machine.succeed(
|
||||
f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&ip_lang=english&btn_continue=Continue' {site_name}/setup/language"
|
||||
)
|
||||
csrf_token = machine.succeed(
|
||||
"grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
|
||||
)
|
||||
machine.succeed(
|
||||
f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/prerequisites"
|
||||
)
|
||||
csrf_token = machine.succeed(
|
||||
"grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
|
||||
)
|
||||
machine.succeed(
|
||||
f"curl -sSfL --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/configure_database"
|
||||
)
|
||||
csrf_token = machine.succeed(
|
||||
"grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
|
||||
)
|
||||
machine.succeed(
|
||||
f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/install_tables"
|
||||
)
|
||||
csrf_token = machine.succeed(
|
||||
"grep ip_csrf_cookie cjar | cut -f 7 | tr -d '\n'"
|
||||
)
|
||||
machine.succeed(
|
||||
f"curl -sSfl --cookie cjar --cookie-jar cjar -d '_ip_csrf={csrf_token}&btn_continue=Continue' {site_name}/setup/upgrade_tables"
|
||||
)
|
||||
'';
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
name = "postfixadmin";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ globin ];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
postfixadmin =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
services.postfixadmin = {
|
||||
enable = true;
|
||||
hostName = "postfixadmin";
|
||||
setupPasswordFile = pkgs.writeText "insecure-test-setup-pw-file" "$2y$10$r0p63YCjd9rb9nHrV9UtVuFgGTmPDLKu.0UIJoQTkWCZZze2iuB1m";
|
||||
};
|
||||
services.nginx.virtualHosts.postfixadmin = {
|
||||
forceSSL = false;
|
||||
enableACME = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
postfixadmin.start
|
||||
postfixadmin.wait_for_unit("postgresql.target")
|
||||
postfixadmin.wait_for_unit("phpfpm-postfixadmin.service")
|
||||
postfixadmin.wait_for_unit("nginx.service")
|
||||
postfixadmin.succeed(
|
||||
"curl -sSfL http://postfixadmin/setup.php -X POST -F 'setup_password=not production'"
|
||||
)
|
||||
postfixadmin.succeed("curl -sSfL http://postfixadmin/ | grep 'Mail admins login here'")
|
||||
'';
|
||||
}
|
||||
@@ -0,0 +1,134 @@
|
||||
{ lib, ... }:
|
||||
{
|
||||
name = "systemd-networkd-batadv";
|
||||
|
||||
meta = with lib.maintainers; {
|
||||
maintainers = [ herbetom ];
|
||||
};
|
||||
|
||||
nodes = {
|
||||
machineA =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
virtualisation.vlans = [ 1 ];
|
||||
systemd.services.systemd-networkd.environment.SYSTEMD_LOG_LEVEL = "debug";
|
||||
|
||||
networking = {
|
||||
useNetworkd = true;
|
||||
useDHCP = false;
|
||||
firewall.enable = false;
|
||||
};
|
||||
|
||||
# Use default batman_adv module from kernel
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.batctl
|
||||
pkgs.jq
|
||||
];
|
||||
|
||||
systemd.network = {
|
||||
networks."10-eth1" = {
|
||||
matchConfig.Name = "eth1";
|
||||
networkConfig = {
|
||||
BatmanAdvanced = config.systemd.network.netdevs."20-bat0".netdevConfig.Name;
|
||||
IPv6AcceptRA = false;
|
||||
};
|
||||
};
|
||||
netdevs."20-bat0" = {
|
||||
netdevConfig = {
|
||||
Name = "bat0";
|
||||
Kind = "batadv";
|
||||
MACAddress = "00:00:5e:00:53:00";
|
||||
};
|
||||
batmanAdvancedConfig = {
|
||||
OriginatorIntervalSec = "5";
|
||||
RoutingAlgorithm = "batman-iv";
|
||||
};
|
||||
};
|
||||
networks."20-bat0" = {
|
||||
matchConfig.Name = config.systemd.network.netdevs."20-bat0".netdevConfig.Name;
|
||||
networkConfig.IPv6AcceptRA = false;
|
||||
address = [
|
||||
"10.0.0.1/24"
|
||||
"2001:db8::a/64"
|
||||
];
|
||||
|
||||
};
|
||||
};
|
||||
};
|
||||
machineB =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
virtualisation.vlans = [ 1 ];
|
||||
systemd.services.systemd-networkd.environment.SYSTEMD_LOG_LEVEL = "debug";
|
||||
|
||||
networking = {
|
||||
useNetworkd = true;
|
||||
useDHCP = false;
|
||||
firewall.enable = false;
|
||||
};
|
||||
|
||||
# Use batman_adv module from nixpkgs
|
||||
boot.extraModulePackages = [ config.boot.kernelPackages.batman_adv ];
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.batctl
|
||||
pkgs.jq
|
||||
];
|
||||
|
||||
systemd.network = {
|
||||
networks."10-eth1" = {
|
||||
matchConfig.Name = "eth1";
|
||||
networkConfig = {
|
||||
BatmanAdvanced = config.systemd.network.netdevs."20-bat0".netdevConfig.Name;
|
||||
IPv6AcceptRA = false;
|
||||
};
|
||||
};
|
||||
netdevs."20-bat0" = {
|
||||
netdevConfig = {
|
||||
Name = "bat0";
|
||||
Kind = "batadv";
|
||||
MACAddress = "00:00:5e:00:53:10";
|
||||
};
|
||||
batmanAdvancedConfig = {
|
||||
OriginatorIntervalSec = "5";
|
||||
RoutingAlgorithm = "batman-iv";
|
||||
};
|
||||
};
|
||||
networks."20-bat0" = {
|
||||
matchConfig.Name = config.systemd.network.netdevs."20-bat0".netdevConfig.Name;
|
||||
networkConfig.IPv6AcceptRA = false;
|
||||
address = [
|
||||
"10.0.0.2/24"
|
||||
"2001:db8::b/64"
|
||||
];
|
||||
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
machineA.wait_for_unit("default.target")
|
||||
machineB.wait_for_unit("default.target")
|
||||
|
||||
print(machineA.succeed("batctl -v").strip())
|
||||
print(machineB.succeed("batctl -v").strip())
|
||||
|
||||
machineA.wait_until_succeeds('batctl neighbors_json | jq -e ".[0].neigh_address | select(length > 0)"')
|
||||
|
||||
print(machineA.succeed("batctl n").strip())
|
||||
print(machineB.succeed("batctl n").strip())
|
||||
|
||||
print(machineA.wait_until_succeeds("batctl ping -c 5 00:00:5e:00:53:10").strip())
|
||||
print(machineB.wait_until_succeeds("batctl ping -c 5 00:00:5e:00:53:00").strip())
|
||||
|
||||
print(machineA.wait_until_succeeds("ping -c 5 2001:db8::b"))
|
||||
print(machineB.wait_until_succeeds("ping -c 5 10.0.0.1"))
|
||||
|
||||
machineA.fail("ping -c 3 10.0.0.99")
|
||||
'';
|
||||
}
|
||||
@@ -18,15 +18,15 @@ in
|
||||
services.unit = {
|
||||
enable = true;
|
||||
config = pkgs.lib.strings.toJSON {
|
||||
listeners."*:9081".application = "php_81";
|
||||
applications.php_81 = {
|
||||
type = "php 8.1";
|
||||
listeners."*:9081".application = "php_82";
|
||||
applications.php_82 = {
|
||||
type = "php 8.2";
|
||||
processes = 1;
|
||||
user = "testuser";
|
||||
group = "testgroup";
|
||||
root = "${testdir}/www";
|
||||
index = "info.php";
|
||||
options.file = "${pkgs.unit.usedPhp81}/lib/php.ini";
|
||||
options.file = "${pkgs.unit.usedPhp82}/lib/php.ini";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -49,7 +49,7 @@ in
|
||||
|
||||
# Check so we get an evaluated PHP back
|
||||
response = machine.succeed("curl -f -vvv -s http://127.0.0.1:9081/")
|
||||
assert "PHP Version ${pkgs.unit.usedPhp81.version}" in response, "PHP version not detected"
|
||||
assert "PHP Version ${pkgs.unit.usedPhp82.version}" in response, "PHP version not detected"
|
||||
|
||||
# Check so we have database and some other extensions loaded
|
||||
for ext in ["json", "opcache", "pdo_mysql", "pdo_pgsql", "pdo_sqlite"]:
|
||||
|
||||
@@ -8,8 +8,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "basedpyright";
|
||||
publisher = "detachhead";
|
||||
version = "1.31.4";
|
||||
hash = "sha256-KpX268CYGHtBJdDVMzjn5vLYupplikgAHvi5i+FhbHo=";
|
||||
version = "1.31.6";
|
||||
hash = "sha256-kYy3rpDhyE8n0aBRE8tUYz9Ayvh0kzEDmHLclF9pBcc=";
|
||||
};
|
||||
meta = {
|
||||
changelog = "https://github.com/detachhead/basedpyright/releases";
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
}:
|
||||
mkLibretroCore {
|
||||
core = "mame2003-plus";
|
||||
version = "0-unstable-2025-09-20";
|
||||
version = "0-unstable-2025-09-30";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libretro";
|
||||
repo = "mame2003-plus-libretro";
|
||||
rev = "a4239124d4da03ae4658610832e425febb0db134";
|
||||
hash = "sha256-TPYYFfAGJqlKpfLS1qDpzQXIfSXXFjRj1W/3+FTYMRQ=";
|
||||
rev = "59b8a9fb06a47a3ce6aecd09b07f3f001e3d9b08";
|
||||
hash = "sha256-hfC/6UqUSDd2FWpcCVcw4pkAtyHJGCgvG4UKlkM+fpk=";
|
||||
};
|
||||
|
||||
makefile = "Makefile";
|
||||
|
||||
@@ -187,6 +187,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"-DSLIC3R_FHS=1"
|
||||
"-DSLIC3R_GTK=3"
|
||||
"-DCMAKE_CXX_FLAGS=-DBOOST_LOG_DYN_LINK"
|
||||
# there is many different min versions set accross different
|
||||
# Find*.cmake files, substituting them all is not viable
|
||||
"-DCMAKE_POLICY_VERSION_MINIMUM=3.10"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -9,10 +9,10 @@
|
||||
|
||||
buildMozillaMach rec {
|
||||
pname = "firefox";
|
||||
version = "143.0.3";
|
||||
version = "143.0.4";
|
||||
src = fetchurl {
|
||||
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
|
||||
sha512 = "c092bd3aac79f856a804c908b76d40409ce052b00176269ea3029b5a3a6885d4d21ce26bd76c9ea13827ff75459b6b4b0566f5aa49035ac234ae5890c67845b0";
|
||||
sha512 = "2bcbde4e72ea41e9ccc98836901635350b5dc7b50c618e19ab6103a27adc0f017ca3fa7555378c8af6ee1f3a14d02935289fe2b0d35d840d610f5ac07a88e4b6";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -62,7 +62,7 @@ stdenv.mkDerivation {
|
||||
almost every other maxent package out there.
|
||||
'';
|
||||
homepage = "http://www.umiacs.umd.edu/~hal/megam";
|
||||
license = "non-commercial";
|
||||
license = lib.licenses.unfree;
|
||||
maintainers = with maintainers; [ leixb ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
|
||||
meta = with lib; {
|
||||
description = "urxvt plugin that allows to switch color themes during runtime";
|
||||
homepage = "https://github.com/felixr/urxvt-theme-switch";
|
||||
license = "CCBYNC";
|
||||
license = lib.licenses.cc-by-nc-30;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
|
||||
@@ -49,7 +49,7 @@ let
|
||||
outputHash =
|
||||
{
|
||||
"aarch64-linux" = "sha256-92UFGgYLmtN13hW0/BV0gJa6ImrVyn+zRpDp5KeRRhs=";
|
||||
"x86_64-linux" = "sha256-Td0+H0os4bfv8cfIFhvUJ43y8y9dHv9P1UD0B5Wqe4I=";
|
||||
"x86_64-linux" = "sha256-jVi+pgcz96Dj25T4e/s+SHqsZfonzXs1WZYe0lCI48Q=";
|
||||
}
|
||||
.${stdenvNoCC.hostPlatform.system} or (throw "authentik-website-deps: unsupported host platform");
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
{ stdenvNoCC, fetchurl }:
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchurl,
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "baekmuk-ttf";
|
||||
@@ -21,6 +25,6 @@ stdenvNoCC.mkDerivation rec {
|
||||
meta = {
|
||||
description = "Korean font";
|
||||
homepage = "http://kldp.net/projects/baekmuk/";
|
||||
license = "BSD-like";
|
||||
license = lib.licenses.baekmuk;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -117,7 +117,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
C or C++ programs, though that is not its primary goal.
|
||||
'';
|
||||
changelog = "https://github.com/bdwgc/bdwgc/blob/v${finalAttrs.version}/ChangeLog";
|
||||
license = "https://hboehm.info/gc/license.txt"; # non-copyleft, X11-style license
|
||||
license = lib.licenses.boehmGC;
|
||||
maintainers = with lib.maintainers; [ ];
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
|
||||
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "Library for operations on boolean expression binary trees";
|
||||
homepage = "http://perso.b2b2c.ca/~sarrazip/dev/boolstuff.html";
|
||||
license = "GPL";
|
||||
license = lib.licenses.gpl2Only;
|
||||
maintainers = [ lib.maintainers.marcweber ];
|
||||
mainProgram = "booldnf";
|
||||
platforms = lib.platforms.all;
|
||||
|
||||
@@ -221,8 +221,6 @@ stdenv.mkDerivation {
|
||||
--replace-fail /usr/bin/brave-browser-stable $out/bin/brave
|
||||
substituteInPlace $out/share/gnome-control-center/default-apps/brave-browser.xml \
|
||||
--replace-fail /opt/brave.com $out/opt/brave.com
|
||||
substituteInPlace $out/share/menu/brave-browser.menu \
|
||||
--replace-fail /opt/brave.com $out/opt/brave.com
|
||||
substituteInPlace $out/opt/brave.com/brave/default-app-block \
|
||||
--replace-fail /opt/brave.com $out/opt/brave.com
|
||||
|
||||
|
||||
@@ -3,24 +3,24 @@
|
||||
|
||||
let
|
||||
pname = "brave";
|
||||
version = "1.82.172";
|
||||
version = "1.83.109";
|
||||
|
||||
allArchives = {
|
||||
aarch64-linux = {
|
||||
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_arm64.deb";
|
||||
hash = "sha256-/RlrYfbUEfBVKzmVGtz9xI5h2++XaOZ8qD9sbN/4ZKA=";
|
||||
hash = "sha256-mbhJnNheLdFGto4AuXMW0Gfajo+lThE4qqT7kzNvUHU=";
|
||||
};
|
||||
x86_64-linux = {
|
||||
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
|
||||
hash = "sha256-tTByjOyzTXPu0wBzNmH2TETqFEATzfxDM6QIkgrxpHA=";
|
||||
hash = "sha256-ZpB0BhXeTa0SBRh2Dj/qLDi8cABUVmW8o5aK0kRPEUM=";
|
||||
};
|
||||
aarch64-darwin = {
|
||||
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-v${version}-darwin-arm64.zip";
|
||||
hash = "sha256-mqhXIpE3IGiDq2cyN5T/Qa+nibuuRShKPsPe5lBlXls=";
|
||||
hash = "sha256-8NzqrvxKiamBdpOnCxVfs50kmDu1xl3HApTUY9MdANQ=";
|
||||
};
|
||||
x86_64-darwin = {
|
||||
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-v${version}-darwin-x64.zip";
|
||||
hash = "sha256-TJ3dqnUR+4VEUBZ+2S57F8kXxLX2llh8LbrFHA0PIqM=";
|
||||
hash = "sha256-EJ+eT0RyleAjAofRiVeAyk5yLWSeAOf7QFGT5/HhWjo=";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@@ -27,7 +27,10 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
homepage = "https://sourceforge.net/projects/buddy/";
|
||||
description = "Binary decision diagram package";
|
||||
license = "as-is";
|
||||
license = {
|
||||
url = "https://sourceforge.net/p/buddy/gitcode/ci/master/tree/README";
|
||||
fullName = "Buddy License";
|
||||
};
|
||||
|
||||
platforms = lib.platforms.unix; # Once had cygwin problems
|
||||
};
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
boost,
|
||||
gmp,
|
||||
mpfr,
|
||||
testers,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -17,19 +18,32 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
sha256 = "sha256-8wxb58JaKj6iS8y6q1z2P6/aY8AnnzTX5/izISgh/tY=";
|
||||
};
|
||||
|
||||
patches = [ ./cgal_path.patch ];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
# note: optional component libCGAL_ImageIO would need zlib and opengl;
|
||||
# there are also libCGAL_Qt{3,4} omitted ATM
|
||||
buildInputs = [
|
||||
boost
|
||||
gmp
|
||||
mpfr
|
||||
];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
patches = [ ./cgal_path.patch ];
|
||||
propagatedBuildInputs = [
|
||||
boost
|
||||
];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
passthru = {
|
||||
tests = {
|
||||
cmake-config = testers.hasCmakeConfigModules {
|
||||
moduleNames = [ "CGAL" ];
|
||||
package = finalAttrs.finalPackage;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Computational Geometry Algorithms Library";
|
||||
homepage = "http://cgal.org";
|
||||
|
||||
@@ -44,13 +44,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "cockpit";
|
||||
version = "347";
|
||||
version = "348";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cockpit-project";
|
||||
repo = "cockpit";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-9jVtO97QdFe8pp6JmuftaKyVM/MnRCYCWLPLrtjgbJ8=";
|
||||
hash = "sha256-JO+tHrG1fxfDRdGHIDZ6TBLug/6p/vB8RkxC9TLoOuk=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -7,17 +7,17 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "codebook";
|
||||
version = "0.3.10";
|
||||
version = "0.3.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "blopker";
|
||||
repo = "codebook";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-MBhPVCnNXIFqwhWEY9ZDFVEQf7DRq2ZY6mamaMfneCc=";
|
||||
hash = "sha256-4jK5wmYnkQ0WDSSBmWL155fqFwG3SQENWvQuKdsfHF0=";
|
||||
};
|
||||
|
||||
buildAndTestSubdir = "crates/codebook-lsp";
|
||||
cargoHash = "sha256-LiVveJ27R6Joz3hpCn2sSiikMlerusSjD/eLfn+gaEw=";
|
||||
cargoHash = "sha256-FV7Ux+UuM57McQLqKYjgSvCbPCnM7ZOzX/jFEmtOz2o=";
|
||||
|
||||
# Integration tests require internet access for dictionaries
|
||||
doCheck = false;
|
||||
|
||||
@@ -14,18 +14,18 @@
|
||||
}:
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "codex";
|
||||
version = "0.42.0";
|
||||
version = "0.44.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openai";
|
||||
repo = "codex";
|
||||
tag = "rust-v${finalAttrs.version}";
|
||||
hash = "sha256-YyI4quZ1vcwzDx38EzqycnUQDBOg9SfEemR4zdKYYIw=";
|
||||
hash = "sha256-i7UhSQ16HqcX/QUb6JQgF6WOTAEDZZNkL/MSqefcwBI=";
|
||||
};
|
||||
|
||||
sourceRoot = "${finalAttrs.src.name}/codex-rs";
|
||||
|
||||
cargoHash = "sha256-No6/WmaCI+w1cVD+PsLJ1jK0zZDYziGlm9DD9E3hA58=";
|
||||
cargoHash = "sha256-sR7Y1SfP0akLRRvP/6tu3gZRNvQbG/a+4bOSEbbrV30=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
|
||||
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
|
||||
used to manage projects involving 20 million lines of code!
|
||||
'';
|
||||
|
||||
license = "BSD-style";
|
||||
license = lib.licenses.bsd3;
|
||||
|
||||
homepage = "https://cscope.sourceforge.net/";
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ stdenv.mkDerivation {
|
||||
meta = {
|
||||
homepage = "https://github.com/vedatechnologiesinc/deco";
|
||||
description = "Simple root image setter";
|
||||
license = lib.licenses.mit;
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = [ lib.maintainers.ebzzry ];
|
||||
platforms = lib.platforms.unix;
|
||||
mainProgram = "deco";
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
}:
|
||||
appimageTools.wrapType2 rec {
|
||||
pname = "dopamine";
|
||||
version = "3.0.0-preview.39";
|
||||
version = "3.0.0-preview.40";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/digimezzo/dopamine/releases/download/v${version}/Dopamine-${version}.AppImage";
|
||||
hash = "sha256-t4f+4ceGyEJHuJxk/8/BMWK0oGYoFXZMjk8UCHLJId8=";
|
||||
hash = "sha256-Cd0qUNkUXup9l3/tzagswY/MUgx4cCnXcML7c5ZSo4k=";
|
||||
};
|
||||
|
||||
extraInstallCommands =
|
||||
|
||||
@@ -15,16 +15,16 @@
|
||||
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "eza";
|
||||
version = "0.23.3";
|
||||
version = "0.23.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "eza-community";
|
||||
repo = "eza";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-z9lG2Ht8Kn/QxmxWqMV27iYGHdUwaz87ayLAZdKJPvQ=";
|
||||
hash = "sha256-zLb2VPfmv9J9UdPAXS+QPHI+hvDRl5UBcvW84J6nUK8=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-Izogi+IWOwAuaOBs+99UzuzwIzzfCM8pqo3xZuutYI8=";
|
||||
cargoHash = "sha256-3KLjlEZhGEyOcaiBnfIafR509oRbsWllqf1e6Z0M8Sg=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
|
||||
@@ -23,7 +23,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "Language independent, scalable, open extension to CGI";
|
||||
homepage = "https://fastcgi-archives.github.io/"; # Formerly http://www.fastcgi.com/
|
||||
license = "FastCGI, see LICENSE.TERMS";
|
||||
license = lib.licenses.oml;
|
||||
mainProgram = "cgi-fcgi";
|
||||
platforms = lib.platforms.all;
|
||||
maintainers = with lib.maintainers; [ jtbx ];
|
||||
|
||||
@@ -113,7 +113,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "Open Source library for accessing popular graphics image file formats";
|
||||
homepage = "http://freeimage.sourceforge.net/";
|
||||
license = "GPL";
|
||||
license = with lib.licenses; [
|
||||
freeimage
|
||||
gpl2Only
|
||||
gpl3Only
|
||||
];
|
||||
knownVulnerabilities = [
|
||||
"CVE-2024-31570"
|
||||
"CVE-2024-28584"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "gauge";
|
||||
version = "1.6.20";
|
||||
version = "1.6.21";
|
||||
|
||||
patches = [
|
||||
# adds a check which adds an error message when trying to
|
||||
@@ -18,10 +18,10 @@ buildGoModule rec {
|
||||
owner = "getgauge";
|
||||
repo = "gauge";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-Ynyi2ph1L9SfxDwgXqw55nieP5o9LyHxKw4HYQEhXEo=";
|
||||
hash = "sha256-mUuoGLAVUShhNsSjURCL6yWcIW+K7P8KEBwBoBelgyw=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-vv77sD+H2PI06iaJWNGoT4Oe53Shc7QxlSL1nX4i4+Y=";
|
||||
vendorHash = "sha256-WyQbvZNd61L4Bz5btZ2hkrCTb5iuJJU5yNDzuYR5Sdc=";
|
||||
|
||||
excludedPackages = [
|
||||
"build"
|
||||
|
||||
@@ -82,6 +82,13 @@ stdenv.mkDerivation rec {
|
||||
url = "https://salsa.debian.org/debian/ghostscript/-/raw/01e895fea033cc35054d1b68010de9818fa4a8fc/debian/patches/2010_add_build_timestamp_setting.patch";
|
||||
hash = "sha256-XTKkFKzMR2QpcS1YqoxzJnyuGk/l/Y2jdevsmbMtCXA=";
|
||||
})
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.is32bit [
|
||||
# 32 bit compat. conditional as to not cause rebuilds
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/ArtifexSoftware/ghostpdl/commit/3c0be6e4fcffa63e4a5a1b0aec057cebc4d2562f.patch?full_index=1";
|
||||
hash = "sha256-NrL4lI19x+OHaSIwV93Op/I9k2MWXxSWgbkwSGU7R6A=";
|
||||
})
|
||||
];
|
||||
|
||||
outputs = [
|
||||
|
||||
@@ -28,12 +28,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "gpu-screen-recorder";
|
||||
version = "5.7.0";
|
||||
version = "5.7.4";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://repo.dec05eba.com/${pname}";
|
||||
tag = version;
|
||||
hash = "sha256-1F4j62wqF+C6eA5ECCjqCoY8+DINBPVKnsWQi6GF2Us=";
|
||||
hash = "sha256-X1yvVmjKYUnwdsRC0kY+R1kEuUq6SB1bKhpHWnBvIho=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -10,13 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "hyprutils";
|
||||
version = "0.8.4";
|
||||
version = "0.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hyprwm";
|
||||
repo = "hyprutils";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-oRDel6pNl/T2tI+nc/USU9ZP9w08dxtl7hiZxa0C/Wc=";
|
||||
hash = "sha256-FWB9Xe9iIMlUskfLzKlYH3scvnHpSC5rMyN1EDHUQmE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -224,9 +224,9 @@ stdenv.mkDerivation {
|
||||
|
||||
echo '${builtins.toJSON buildLock}' > "$packageOut/build/build-lock.json"
|
||||
|
||||
makeWrapper '${lib.getExe nodejs}' "$out/bin/admin-cli" \
|
||||
makeWrapper '${lib.getExe nodejs}' "$out/bin/immich-admin" \
|
||||
--add-flags "$packageOut/dist/main" \
|
||||
--add-flags cli
|
||||
--add-flags immich-admin
|
||||
makeWrapper '${lib.getExe nodejs}' "$out/bin/server" \
|
||||
--add-flags "$packageOut/dist/main" \
|
||||
--chdir "$packageOut" \
|
||||
|
||||
@@ -1,651 +0,0 @@
|
||||
diff --git a/yarn.lock b/yarn.lock
|
||||
index 691942c1..6d3bd8ce 100644
|
||||
--- a/yarn.lock
|
||||
+++ b/yarn.lock
|
||||
@@ -2,11 +2,71 @@
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
+"@parcel/watcher-android-arm64@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz#507f836d7e2042f798c7d07ad19c3546f9848ac1"
|
||||
+ integrity sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==
|
||||
+
|
||||
+"@parcel/watcher-darwin-arm64@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz#3d26dce38de6590ef79c47ec2c55793c06ad4f67"
|
||||
+ integrity sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==
|
||||
+
|
||||
+"@parcel/watcher-darwin-x64@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz#99f3af3869069ccf774e4ddfccf7e64fd2311ef8"
|
||||
+ integrity sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==
|
||||
+
|
||||
+"@parcel/watcher-freebsd-x64@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz#14d6857741a9f51dfe51d5b08b7c8afdbc73ad9b"
|
||||
+ integrity sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==
|
||||
+
|
||||
+"@parcel/watcher-linux-arm-glibc@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz#43c3246d6892381db473bb4f663229ad20b609a1"
|
||||
+ integrity sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==
|
||||
+
|
||||
+"@parcel/watcher-linux-arm-musl@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz#663750f7090bb6278d2210de643eb8a3f780d08e"
|
||||
+ integrity sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==
|
||||
+
|
||||
+"@parcel/watcher-linux-arm64-glibc@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz#ba60e1f56977f7e47cd7e31ad65d15fdcbd07e30"
|
||||
+ integrity sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==
|
||||
+
|
||||
+"@parcel/watcher-linux-arm64-musl@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz#f7fbcdff2f04c526f96eac01f97419a6a99855d2"
|
||||
+ integrity sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==
|
||||
+
|
||||
"@parcel/watcher-linux-x64-glibc@2.5.1":
|
||||
version "2.5.1"
|
||||
resolved "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz"
|
||||
integrity sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==
|
||||
|
||||
+"@parcel/watcher-linux-x64-musl@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz#277b346b05db54f55657301dd77bdf99d63606ee"
|
||||
+ integrity sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==
|
||||
+
|
||||
+"@parcel/watcher-win32-arm64@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz#7e9e02a26784d47503de1d10e8eab6cceb524243"
|
||||
+ integrity sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==
|
||||
+
|
||||
+"@parcel/watcher-win32-ia32@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz#2d0f94fa59a873cdc584bf7f6b1dc628ddf976e6"
|
||||
+ integrity sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==
|
||||
+
|
||||
+"@parcel/watcher-win32-x64@2.5.1":
|
||||
+ version "2.5.1"
|
||||
+ resolved "https://registry.yarnpkg.com/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz#ae52693259664ba6f2228fa61d7ee44b64ea0947"
|
||||
+ integrity sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==
|
||||
+
|
||||
"@parcel/watcher@^2.4.1":
|
||||
version "2.5.1"
|
||||
resolved "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz"
|
||||
@@ -105,7 +165,9 @@ async@^2.6.0:
|
||||
lodash "^4.17.14"
|
||||
|
||||
async@^3.2.3, async@~3.2.0:
|
||||
- version "3.2.5"
|
||||
+ version "3.2.6"
|
||||
+ resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce"
|
||||
+ integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==
|
||||
|
||||
autoprefixer@9.8:
|
||||
version "9.8.8"
|
||||
@@ -155,33 +217,48 @@ brace-expansion@^1.1.7:
|
||||
balanced-match "^1.0.0"
|
||||
concat-map "0.0.1"
|
||||
|
||||
-braces@^3.0.2:
|
||||
- version "3.0.2"
|
||||
+braces@^3.0.3:
|
||||
+ version "3.0.3"
|
||||
+ resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
|
||||
+ integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
|
||||
dependencies:
|
||||
- fill-range "^7.0.1"
|
||||
+ fill-range "^7.1.1"
|
||||
|
||||
-browserslist@^4.12.0, "browserslist@>= 4.21.0":
|
||||
- version "4.22.1"
|
||||
+browserslist@^4.12.0:
|
||||
+ version "4.25.1"
|
||||
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.25.1.tgz#ba9e8e6f298a1d86f829c9b975e07948967bb111"
|
||||
+ integrity sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==
|
||||
dependencies:
|
||||
- caniuse-lite "^1.0.30001541"
|
||||
- electron-to-chromium "^1.4.535"
|
||||
- node-releases "^2.0.13"
|
||||
- update-browserslist-db "^1.0.13"
|
||||
+ caniuse-lite "^1.0.30001726"
|
||||
+ electron-to-chromium "^1.5.173"
|
||||
+ node-releases "^2.0.19"
|
||||
+ update-browserslist-db "^1.1.3"
|
||||
|
||||
bytes@1:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz"
|
||||
integrity sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ==
|
||||
|
||||
-call-bind@^1.0.0:
|
||||
- version "1.0.5"
|
||||
+call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2:
|
||||
+ version "1.0.2"
|
||||
+ resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6"
|
||||
+ integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==
|
||||
dependencies:
|
||||
+ es-errors "^1.3.0"
|
||||
function-bind "^1.1.2"
|
||||
- get-intrinsic "^1.2.1"
|
||||
- set-function-length "^1.1.1"
|
||||
|
||||
-caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001541:
|
||||
- version "1.0.30001561"
|
||||
+call-bound@^1.0.2:
|
||||
+ version "1.0.4"
|
||||
+ resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a"
|
||||
+ integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==
|
||||
+ dependencies:
|
||||
+ call-bind-apply-helpers "^1.0.2"
|
||||
+ get-intrinsic "^1.3.0"
|
||||
+
|
||||
+caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001726:
|
||||
+ version "1.0.30001731"
|
||||
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz#277c07416ea4613ec564e5b0ffb47e7b60f32e2f"
|
||||
+ integrity sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==
|
||||
|
||||
chalk@^1.1.1:
|
||||
version "1.1.3"
|
||||
@@ -241,16 +318,16 @@ color-convert@^2.0.1:
|
||||
dependencies:
|
||||
color-name "~1.1.4"
|
||||
|
||||
-color-name@~1.1.4:
|
||||
- version "1.1.4"
|
||||
- resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
|
||||
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
||||
-
|
||||
color-name@1.1.3:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
|
||||
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
|
||||
|
||||
+color-name@~1.1.4:
|
||||
+ version "1.1.4"
|
||||
+ resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
|
||||
+ integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
||||
+
|
||||
colors@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz"
|
||||
@@ -278,13 +355,6 @@ debug@^3.1.0:
|
||||
dependencies:
|
||||
ms "^2.1.1"
|
||||
|
||||
-define-data-property@^1.1.1:
|
||||
- version "1.1.1"
|
||||
- dependencies:
|
||||
- get-intrinsic "^1.2.1"
|
||||
- gopd "^1.0.1"
|
||||
- has-property-descriptors "^1.0.0"
|
||||
-
|
||||
delegate@^3.1.2:
|
||||
version "3.2.0"
|
||||
resolved "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz"
|
||||
@@ -310,13 +380,24 @@ dropzone@5.9:
|
||||
resolved "https://registry.npmjs.org/dropzone/-/dropzone-5.9.3.tgz"
|
||||
integrity sha512-Azk8kD/2/nJIuVPK+zQ9sjKMRIpRvNyqn9XwbBHNq+iNuSccbJS6hwm1Woy0pMST0erSo0u4j+KJaodndDk4vA==
|
||||
|
||||
+dunder-proto@^1.0.1:
|
||||
+ version "1.0.1"
|
||||
+ resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a"
|
||||
+ integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==
|
||||
+ dependencies:
|
||||
+ call-bind-apply-helpers "^1.0.1"
|
||||
+ es-errors "^1.3.0"
|
||||
+ gopd "^1.2.0"
|
||||
+
|
||||
duplexer@^0.1.1:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz"
|
||||
integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
|
||||
|
||||
-electron-to-chromium@^1.4.535:
|
||||
- version "1.4.576"
|
||||
+electron-to-chromium@^1.5.173:
|
||||
+ version "1.5.198"
|
||||
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.198.tgz#ac12b539ac1bb3dece1a4cd2d8882d0349c71c55"
|
||||
+ integrity sha512-G5COfnp3w+ydVu80yprgWSfmfQaYRh9DOxfhAxstLyetKaLyl55QrNjx8C38Pc/C+RaDmb1M0Lk8wPEMQ+bGgQ==
|
||||
|
||||
error@^7.0.0:
|
||||
version "7.2.1"
|
||||
@@ -325,8 +406,27 @@ error@^7.0.0:
|
||||
dependencies:
|
||||
string-template "~0.2.1"
|
||||
|
||||
-escalade@^3.1.1:
|
||||
- version "3.1.1"
|
||||
+es-define-property@^1.0.1:
|
||||
+ version "1.0.1"
|
||||
+ resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa"
|
||||
+ integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
|
||||
+
|
||||
+es-errors@^1.3.0:
|
||||
+ version "1.3.0"
|
||||
+ resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
|
||||
+ integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
|
||||
+
|
||||
+es-object-atoms@^1.0.0, es-object-atoms@^1.1.1:
|
||||
+ version "1.1.1"
|
||||
+ resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1"
|
||||
+ integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==
|
||||
+ dependencies:
|
||||
+ es-errors "^1.3.0"
|
||||
+
|
||||
+escalade@^3.2.0:
|
||||
+ version "3.2.0"
|
||||
+ resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5"
|
||||
+ integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
|
||||
|
||||
escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
|
||||
version "1.0.5"
|
||||
@@ -379,8 +479,10 @@ file-sync-cmp@^0.1.0:
|
||||
resolved "https://registry.npmjs.org/file-sync-cmp/-/file-sync-cmp-0.1.1.tgz"
|
||||
integrity sha512-0k45oWBokCqh2MOexeYKpyqmGKG+8mQ2Wd8iawx+uWd/weWJQAZ6SoPybagdCI4xFisag8iAR77WPm4h3pTfxA==
|
||||
|
||||
-fill-range@^7.0.1:
|
||||
- version "7.0.1"
|
||||
+fill-range@^7.1.1:
|
||||
+ version "7.1.1"
|
||||
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
|
||||
+ integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
|
||||
dependencies:
|
||||
to-regex-range "^5.0.1"
|
||||
|
||||
@@ -461,13 +563,29 @@ gaze@^1.1.0:
|
||||
dependencies:
|
||||
globule "^1.0.0"
|
||||
|
||||
-get-intrinsic@^1.0.2, get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2:
|
||||
- version "1.2.2"
|
||||
+get-intrinsic@^1.2.5, get-intrinsic@^1.3.0:
|
||||
+ version "1.3.0"
|
||||
+ resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01"
|
||||
+ integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==
|
||||
dependencies:
|
||||
+ call-bind-apply-helpers "^1.0.2"
|
||||
+ es-define-property "^1.0.1"
|
||||
+ es-errors "^1.3.0"
|
||||
+ es-object-atoms "^1.1.1"
|
||||
function-bind "^1.1.2"
|
||||
- has-proto "^1.0.1"
|
||||
- has-symbols "^1.0.3"
|
||||
- hasown "^2.0.0"
|
||||
+ get-proto "^1.0.1"
|
||||
+ gopd "^1.2.0"
|
||||
+ has-symbols "^1.1.0"
|
||||
+ hasown "^2.0.2"
|
||||
+ math-intrinsics "^1.1.0"
|
||||
+
|
||||
+get-proto@^1.0.1:
|
||||
+ version "1.0.1"
|
||||
+ resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1"
|
||||
+ integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==
|
||||
+ dependencies:
|
||||
+ dunder-proto "^1.0.1"
|
||||
+ es-object-atoms "^1.0.0"
|
||||
|
||||
getobject@~1.0.0:
|
||||
version "1.0.2"
|
||||
@@ -486,19 +604,7 @@ glob@^7.1.3:
|
||||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
-glob@~7.1.1:
|
||||
- version "7.1.7"
|
||||
- resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz"
|
||||
- integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
|
||||
- dependencies:
|
||||
- fs.realpath "^1.0.0"
|
||||
- inflight "^1.0.4"
|
||||
- inherits "2"
|
||||
- minimatch "^3.0.4"
|
||||
- once "^1.3.0"
|
||||
- path-is-absolute "^1.0.0"
|
||||
-
|
||||
-glob@~7.1.6:
|
||||
+glob@~7.1.1, glob@~7.1.6:
|
||||
version "7.1.7"
|
||||
resolved "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz"
|
||||
integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==
|
||||
@@ -546,10 +652,10 @@ good-listener@^1.2.2:
|
||||
dependencies:
|
||||
delegate "^3.1.2"
|
||||
|
||||
-gopd@^1.0.1:
|
||||
- version "1.0.1"
|
||||
- dependencies:
|
||||
- get-intrinsic "^1.1.3"
|
||||
+gopd@^1.2.0:
|
||||
+ version "1.2.0"
|
||||
+ resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1"
|
||||
+ integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==
|
||||
|
||||
grunt-cli@~1.4.3:
|
||||
version "1.4.3"
|
||||
@@ -656,7 +762,7 @@ grunt-sass@3.1:
|
||||
resolved "https://registry.npmjs.org/grunt-sass/-/grunt-sass-3.1.0.tgz"
|
||||
integrity sha512-90s27H7FoCDcA8C8+R0GwC+ntYD3lG6S/jqcavWm3bn9RiJTmSfOvfbFa1PXx4NbBWuiGQMLfQTj/JvvqT5w6A==
|
||||
|
||||
-grunt@>=0.4.5, grunt@>=1, grunt@>=1.4.1, grunt@1.6:
|
||||
+grunt@1.6:
|
||||
version "1.6.1"
|
||||
resolved "https://registry.npmjs.org/grunt/-/grunt-1.6.1.tgz"
|
||||
integrity sha512-/ABUy3gYWu5iBmrUSRBP97JLpQUm0GgVveDCp6t3yRNIoltIYw7rEj3g5y1o2PGPR2vfTRGa7WC/LZHLTXnEzA==
|
||||
@@ -700,21 +806,15 @@ has-flag@^4.0.0:
|
||||
resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz"
|
||||
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
|
||||
|
||||
-has-property-descriptors@^1.0.0:
|
||||
- version "1.0.1"
|
||||
- dependencies:
|
||||
- get-intrinsic "^1.2.2"
|
||||
-
|
||||
-has-proto@^1.0.1:
|
||||
- version "1.0.1"
|
||||
-
|
||||
-has-symbols@^1.0.3:
|
||||
- version "1.0.3"
|
||||
- resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz"
|
||||
- integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
|
||||
+has-symbols@^1.1.0:
|
||||
+ version "1.1.0"
|
||||
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338"
|
||||
+ integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
|
||||
|
||||
-hasown@^2.0.0:
|
||||
- version "2.0.0"
|
||||
+hasown@^2.0.2:
|
||||
+ version "2.0.2"
|
||||
+ resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
|
||||
+ integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
|
||||
dependencies:
|
||||
function-bind "^1.1.2"
|
||||
|
||||
@@ -784,9 +884,11 @@ is-absolute@^1.0.0:
|
||||
is-windows "^1.0.1"
|
||||
|
||||
is-core-module@^2.13.0:
|
||||
- version "2.13.1"
|
||||
+ version "2.16.1"
|
||||
+ resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4"
|
||||
+ integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==
|
||||
dependencies:
|
||||
- hasown "^2.0.0"
|
||||
+ hasown "^2.0.2"
|
||||
|
||||
is-extglob@^2.1.1:
|
||||
version "2.1.1"
|
||||
@@ -848,7 +950,7 @@ jquery-ui@1.14:
|
||||
dependencies:
|
||||
jquery ">=1.12.0 <5.0.0"
|
||||
|
||||
-"jquery@>=1.12.0 <5.0.0", "jquery@>=3.4.0 <4.0.0", jquery@3.7:
|
||||
+jquery@3.7, "jquery@>=1.12.0 <5.0.0", "jquery@>=3.4.0 <4.0.0":
|
||||
version "3.7.1"
|
||||
resolved "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz"
|
||||
integrity sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==
|
||||
@@ -925,6 +1027,11 @@ map-cache@^0.2.0:
|
||||
resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz"
|
||||
integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==
|
||||
|
||||
+math-intrinsics@^1.1.0:
|
||||
+ version "1.1.0"
|
||||
+ resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9"
|
||||
+ integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==
|
||||
+
|
||||
maxmin@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.npmjs.org/maxmin/-/maxmin-3.0.0.tgz"
|
||||
@@ -936,9 +1043,11 @@ maxmin@^3.0.0:
|
||||
pretty-bytes "^5.3.0"
|
||||
|
||||
micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5:
|
||||
- version "4.0.5"
|
||||
+ version "4.0.8"
|
||||
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202"
|
||||
+ integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==
|
||||
dependencies:
|
||||
- braces "^3.0.2"
|
||||
+ braces "^3.0.3"
|
||||
picomatch "^2.3.1"
|
||||
|
||||
minimatch@^3.0.4, minimatch@^3.1.1:
|
||||
@@ -948,14 +1057,7 @@ minimatch@^3.0.4, minimatch@^3.1.1:
|
||||
dependencies:
|
||||
brace-expansion "^1.1.7"
|
||||
|
||||
-minimatch@~3.0.2:
|
||||
- version "3.0.8"
|
||||
- resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz"
|
||||
- integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==
|
||||
- dependencies:
|
||||
- brace-expansion "^1.1.7"
|
||||
-
|
||||
-minimatch@~3.0.4:
|
||||
+minimatch@~3.0.2, minimatch@~3.0.4:
|
||||
version "3.0.8"
|
||||
resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz"
|
||||
integrity sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==
|
||||
@@ -979,15 +1081,19 @@ multimatch@^4.0.0:
|
||||
minimatch "^3.0.4"
|
||||
|
||||
nanoid@^3.3.7:
|
||||
- version "3.3.7"
|
||||
+ version "3.3.11"
|
||||
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b"
|
||||
+ integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==
|
||||
|
||||
node-addon-api@^7.0.0:
|
||||
version "7.1.1"
|
||||
resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz"
|
||||
integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==
|
||||
|
||||
-node-releases@^2.0.13:
|
||||
- version "2.0.13"
|
||||
+node-releases@^2.0.19:
|
||||
+ version "2.0.19"
|
||||
+ resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314"
|
||||
+ integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==
|
||||
|
||||
nopt@~3.0.6:
|
||||
version "3.0.6"
|
||||
@@ -1019,8 +1125,10 @@ object-assign@^4.1.0:
|
||||
resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"
|
||||
integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
|
||||
|
||||
-object-inspect@^1.9.0:
|
||||
- version "1.13.1"
|
||||
+object-inspect@^1.13.3:
|
||||
+ version "1.13.4"
|
||||
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213"
|
||||
+ integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==
|
||||
|
||||
object.defaults@^1.1.0:
|
||||
version "1.1.0"
|
||||
@@ -1137,12 +1245,9 @@ picocolors@^0.2.1:
|
||||
resolved "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz"
|
||||
integrity sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==
|
||||
|
||||
-picocolors@^1.0.0:
|
||||
- version "1.0.0"
|
||||
-
|
||||
-picocolors@^1.1.0:
|
||||
+picocolors@^1.1.1:
|
||||
version "1.1.1"
|
||||
- resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz"
|
||||
+ resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
|
||||
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
|
||||
|
||||
picomatch@^2.3.1:
|
||||
@@ -1167,6 +1272,15 @@ postcss-value-parser@^4.1.0:
|
||||
resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz"
|
||||
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
|
||||
|
||||
+postcss@8.4:
|
||||
+ version "8.4.49"
|
||||
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.49.tgz#4ea479048ab059ab3ae61d082190fabfd994fe19"
|
||||
+ integrity sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==
|
||||
+ dependencies:
|
||||
+ nanoid "^3.3.7"
|
||||
+ picocolors "^1.1.1"
|
||||
+ source-map-js "^1.2.1"
|
||||
+
|
||||
postcss@^6.0.11:
|
||||
version "6.0.23"
|
||||
resolved "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz"
|
||||
@@ -1184,22 +1298,17 @@ postcss@^7.0.32:
|
||||
picocolors "^0.2.1"
|
||||
source-map "^0.6.1"
|
||||
|
||||
-postcss@8.4:
|
||||
- version "8.4.47"
|
||||
- dependencies:
|
||||
- nanoid "^3.3.7"
|
||||
- picocolors "^1.1.0"
|
||||
- source-map-js "^1.2.1"
|
||||
-
|
||||
pretty-bytes@^5.3.0:
|
||||
version "5.6.0"
|
||||
resolved "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz"
|
||||
integrity sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==
|
||||
|
||||
qs@^6.4.0:
|
||||
- version "6.11.2"
|
||||
+ version "6.14.0"
|
||||
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930"
|
||||
+ integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==
|
||||
dependencies:
|
||||
- side-channel "^1.0.4"
|
||||
+ side-channel "^1.1.0"
|
||||
|
||||
raw-body@~1.1.0:
|
||||
version "1.1.7"
|
||||
@@ -1283,32 +1392,57 @@ sass@^1.89.2:
|
||||
optionalDependencies:
|
||||
"@parcel/watcher" "^2.4.1"
|
||||
|
||||
+select2@4.1.0-rc.0:
|
||||
+ version "4.1.0-rc.0"
|
||||
+ resolved "https://registry.npmjs.org/select2/-/select2-4.1.0-rc.0.tgz"
|
||||
+ integrity sha512-Hr9TdhyHCZUtwznEH2CBf7967mEM0idtJ5nMtjvk3Up5tPukOLXbHUNmh10oRfeNIhj+3GD3niu+g6sVK+gK0A==
|
||||
+
|
||||
select@^1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.npmjs.org/select/-/select-1.1.2.tgz"
|
||||
integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==
|
||||
|
||||
-select2@4.1.0-rc.0:
|
||||
- version "4.1.0-rc.0"
|
||||
- resolved "https://registry.npmjs.org/select2/-/select2-4.1.0-rc.0.tgz"
|
||||
- integrity sha512-Hr9TdhyHCZUtwznEH2CBf7967mEM0idtJ5nMtjvk3Up5tPukOLXbHUNmh10oRfeNIhj+3GD3niu+g6sVK+gK0A==
|
||||
+side-channel-list@^1.0.0:
|
||||
+ version "1.0.0"
|
||||
+ resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad"
|
||||
+ integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==
|
||||
+ dependencies:
|
||||
+ es-errors "^1.3.0"
|
||||
+ object-inspect "^1.13.3"
|
||||
|
||||
-set-function-length@^1.1.1:
|
||||
- version "1.1.1"
|
||||
+side-channel-map@^1.0.1:
|
||||
+ version "1.0.1"
|
||||
+ resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42"
|
||||
+ integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==
|
||||
dependencies:
|
||||
- define-data-property "^1.1.1"
|
||||
- get-intrinsic "^1.2.1"
|
||||
- gopd "^1.0.1"
|
||||
- has-property-descriptors "^1.0.0"
|
||||
+ call-bound "^1.0.2"
|
||||
+ es-errors "^1.3.0"
|
||||
+ get-intrinsic "^1.2.5"
|
||||
+ object-inspect "^1.13.3"
|
||||
|
||||
-side-channel@^1.0.4:
|
||||
- version "1.0.4"
|
||||
+side-channel-weakmap@^1.0.2:
|
||||
+ version "1.0.2"
|
||||
+ resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea"
|
||||
+ integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==
|
||||
+ dependencies:
|
||||
+ call-bound "^1.0.2"
|
||||
+ es-errors "^1.3.0"
|
||||
+ get-intrinsic "^1.2.5"
|
||||
+ object-inspect "^1.13.3"
|
||||
+ side-channel-map "^1.0.1"
|
||||
+
|
||||
+side-channel@^1.1.0:
|
||||
+ version "1.1.0"
|
||||
+ resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9"
|
||||
+ integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==
|
||||
dependencies:
|
||||
- call-bind "^1.0.0"
|
||||
- get-intrinsic "^1.0.2"
|
||||
- object-inspect "^1.9.0"
|
||||
+ es-errors "^1.3.0"
|
||||
+ object-inspect "^1.13.3"
|
||||
+ side-channel-list "^1.0.0"
|
||||
+ side-channel-map "^1.0.1"
|
||||
+ side-channel-weakmap "^1.0.2"
|
||||
|
||||
-source-map-js@^1.2.1, "source-map-js@>=0.6.2 <2.0.0":
|
||||
+"source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz"
|
||||
integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
|
||||
@@ -1333,16 +1467,16 @@ sprintf-js@~1.0.2:
|
||||
resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz"
|
||||
integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
|
||||
|
||||
-string_decoder@0.10:
|
||||
- version "0.10.31"
|
||||
- resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz"
|
||||
- integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==
|
||||
-
|
||||
string-template@~0.2.1:
|
||||
version "0.2.1"
|
||||
resolved "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz"
|
||||
integrity sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==
|
||||
|
||||
+string_decoder@0.10:
|
||||
+ version "0.10.31"
|
||||
+ resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz"
|
||||
+ integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==
|
||||
+
|
||||
strip-ansi@^3.0.0:
|
||||
version "3.0.1"
|
||||
resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz"
|
||||
@@ -1399,7 +1533,9 @@ to-regex-range@^5.0.1:
|
||||
is-number "^7.0.0"
|
||||
|
||||
uglify-js@^3.16.1:
|
||||
- version "3.17.4"
|
||||
+ version "3.19.3"
|
||||
+ resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.19.3.tgz#82315e9bbc6f2b25888858acd1fff8441035b77f"
|
||||
+ integrity sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==
|
||||
|
||||
unc-path-regex@^0.1.2:
|
||||
version "0.1.2"
|
||||
@@ -1414,11 +1550,13 @@ underscore.string@~3.3.5:
|
||||
sprintf-js "^1.1.1"
|
||||
util-deprecate "^1.0.2"
|
||||
|
||||
-update-browserslist-db@^1.0.13:
|
||||
- version "1.0.13"
|
||||
+update-browserslist-db@^1.1.3:
|
||||
+ version "1.1.3"
|
||||
+ resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420"
|
||||
+ integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==
|
||||
dependencies:
|
||||
- escalade "^3.1.1"
|
||||
- picocolors "^1.0.0"
|
||||
+ escalade "^3.2.0"
|
||||
+ picocolors "^1.1.1"
|
||||
|
||||
uri-path@^1.0.0:
|
||||
version "1.0.0"
|
||||
@@ -1,34 +0,0 @@
|
||||
From e404c835ae6681287f0d0ba005e43732becf8e9e Mon Sep 17 00:00:00 2001
|
||||
From: Jonas Heinrich <onny@project-insanity.org>
|
||||
Date: Sun, 17 Aug 2025 09:54:41 +0200
|
||||
Subject: [PATCH] composer.json omit version string
|
||||
|
||||
---
|
||||
composer.json | 1 -
|
||||
composer.lock | 2 +-
|
||||
2 files changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/composer.json b/composer.json
|
||||
index 4ae0b32b7..241d59be9 100644
|
||||
--- a/composer.json
|
||||
+++ b/composer.json
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"name": "invoiceplane/invoiceplane",
|
||||
- "version": "1.6.3-rc1",
|
||||
"description": "InvoicePlane is a self-hosted open source application for managing your invoices, clients and payments",
|
||||
"homepage": "https://invoiceplane.com",
|
||||
"license": "MIT",
|
||||
diff --git a/composer.lock b/composer.lock
|
||||
index 46fae450e..cf4aa24c1 100644
|
||||
--- a/composer.lock
|
||||
+++ b/composer.lock
|
||||
@@ -4,7 +4,7 @@
|
||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||
"This file is @generated automatically"
|
||||
],
|
||||
- "content-hash": "6920f42f5773c5e01f9f107ebcedb891",
|
||||
+ "content-hash": "16ec29d674456761958ca1c78513c3c5",
|
||||
"packages": [
|
||||
{
|
||||
"name": "bacon/bacon-qr-code",
|
||||
@@ -1,85 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
nixosTests,
|
||||
fetchYarnDeps,
|
||||
applyPatches,
|
||||
php,
|
||||
yarnConfigHook,
|
||||
yarnBuildHook,
|
||||
yarnInstallHook,
|
||||
nodePackages,
|
||||
fetchzip,
|
||||
}:
|
||||
let
|
||||
version = "1.6.3";
|
||||
# Fetch release tarball which contains language files
|
||||
# https://github.com/InvoicePlane/InvoicePlane/issues/1170
|
||||
languages = fetchzip {
|
||||
url = "https://github.com/InvoicePlane/InvoicePlane/releases/download/v${version}/v${version}.zip";
|
||||
hash = "sha256-MuqxbkayW3GeiaorxfZSJtlwCWvnIF2ED/UUqahyoIQ=";
|
||||
};
|
||||
in
|
||||
php.buildComposerProject2 (finalAttrs: {
|
||||
pname = "invoiceplane";
|
||||
inherit version;
|
||||
|
||||
src = applyPatches {
|
||||
src = fetchFromGitHub {
|
||||
owner = "InvoicePlane";
|
||||
repo = "InvoicePlane";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-XNjdFWP5AEulbPZcMDXYSdDhaLWlgu3nnCSFnjUjGpk=";
|
||||
};
|
||||
patches = [
|
||||
# Fix composer.json validation
|
||||
# See https://github.com/InvoicePlane/InvoicePlane/pull/1306
|
||||
./fix_composer_validation.patch
|
||||
];
|
||||
};
|
||||
|
||||
patches = [
|
||||
# yarn.lock missing some resolved attributes and fails
|
||||
./fix-yarn-lock.patch
|
||||
];
|
||||
|
||||
vendorHash = "sha256-UCYAnECuIbIYg1T4I8I9maXVKXJc1zkyauBuIy5frTY=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
yarnConfigHook
|
||||
yarnBuildHook
|
||||
yarnInstallHook
|
||||
# Needed for executing package.json scripts
|
||||
nodePackages.grunt-cli
|
||||
];
|
||||
|
||||
offlineCache = fetchYarnDeps {
|
||||
inherit (finalAttrs) src patches;
|
||||
hash = "sha256-0fPdxOIeQBTulPUxHtaQylm4jevQTONSN1bChqbGbGs=";
|
||||
};
|
||||
|
||||
postBuild = ''
|
||||
grunt build
|
||||
'';
|
||||
|
||||
# Cleanup and language files
|
||||
postInstall = ''
|
||||
chmod -R u+w $out/share
|
||||
mv $out/share/php/invoiceplane/* $out/
|
||||
cp -r ${languages}/application/language $out/application/
|
||||
rm -r $out/{composer.json,composer.lock,CONTRIBUTING.md,docker-compose.yml,Gruntfile.js,package.json,node_modules,yarn.lock,share}
|
||||
'';
|
||||
|
||||
passthru.tests = {
|
||||
inherit (nixosTests) invoiceplane;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Self-hosted open source application for managing your invoices, clients and payments";
|
||||
changelog = "https://github.com/InvoicePlane/InvoicePlane/releases/tag/v${version}";
|
||||
homepage = "https://www.invoiceplane.com";
|
||||
license = lib.licenses.mit;
|
||||
platforms = lib.platforms.all;
|
||||
maintainers = with lib.maintainers; [ onny ];
|
||||
};
|
||||
})
|
||||
@@ -104,7 +104,11 @@ stdenv.mkDerivation rec {
|
||||
# Fails to build on x86_64-linux as of 2025-03-16 and potentially earlier
|
||||
broken = true;
|
||||
description = "Jagged Alliance 2, with community fixes";
|
||||
license = "SFI Source Code license agreement";
|
||||
license = {
|
||||
fullName = "Strategy First Inc. Source Code License Agreement";
|
||||
url = "https://github.com/ja2-stracciatella/ja2-stracciatella/blob/master/SFI%20Source%20Code%20license%20agreement.txt";
|
||||
free = false;
|
||||
};
|
||||
homepage = "https://ja2-stracciatella.github.io/";
|
||||
maintainers = [ ];
|
||||
};
|
||||
|
||||
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "James Clark's DSSSL Engine";
|
||||
license = "custom";
|
||||
license = lib.licenses.x11;
|
||||
homepage = "http://www.jclark.com/jade/";
|
||||
platforms = with lib.platforms; linux;
|
||||
maintainers = [ ];
|
||||
|
||||
@@ -2,25 +2,22 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
fetchpatch2,
|
||||
cmake,
|
||||
pkg-config,
|
||||
mpi,
|
||||
cgal_5,
|
||||
boost,
|
||||
gmp,
|
||||
mpfr,
|
||||
cgal,
|
||||
sparsehash,
|
||||
imagemagick,
|
||||
gtest,
|
||||
ctestCheckHook,
|
||||
mpiCheckPhaseHook,
|
||||
withExamples ? false,
|
||||
testers,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "kagen";
|
||||
version = "1.1.0";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KarlsruheGraphGeneration";
|
||||
@@ -28,44 +25,27 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
tag = "v${finalAttrs.version}";
|
||||
# use vendor libmorton and xxHash
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-FSlTNOQgwPGOn4mIVIgFejvU0dpyydomHYJOKPz1UjU=";
|
||||
hash = "sha256-2jXHHS9Siu6hXrYPIrZSOWe6D2PgsvrbMw/7Ykpc3wk=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# replace asm by builtin function to ensure compatibility with arm64
|
||||
(fetchpatch2 {
|
||||
url = "https://github.com/KarlsruheGraphGeneration/KaGen/commit/cab9d5dc6cc256972e52675ad9c385524d40ecd9.patch?full_index=1";
|
||||
hash = "sha256-DCsuwUiE98UKZMxlUI9p36/wq486uHHrUphrIVqM+Cc=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace tests/CMakeLists.txt \
|
||||
--replace-fail "FetchContent_MakeAvailable(googletest)" "find_package(GTest REQUIRED)"\
|
||||
--replace-fail "set_property(DIRECTORY" "#set_property(DIRECTORY"
|
||||
|
||||
substituteInPlace kagen/CMakeLists.txt \
|
||||
--replace-fail "OBJECT" ""
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
mpi
|
||||
cgal_5
|
||||
sparsehash
|
||||
imagemagick
|
||||
# should be propagated by cgal
|
||||
boost
|
||||
gmp
|
||||
mpfr
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
mpi
|
||||
cgal
|
||||
sparsehash
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
(lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic))
|
||||
(lib.cmakeBool "KAGEN_USE_BUNDLED_GTEST" false)
|
||||
(lib.cmakeBool "KAGEN_BUILD_EXAMPLES" withExamples)
|
||||
(lib.cmakeBool "KAGEN_BUILD_TESTS" finalAttrs.finalPackage.doCheck)
|
||||
];
|
||||
@@ -80,15 +60,24 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
mpiCheckPhaseHook
|
||||
];
|
||||
|
||||
disabledTests = lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) [
|
||||
# flaky tests on aarch64-darwin
|
||||
disabledTests = lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
# flaky tests on darwin
|
||||
"test_rgg2d.2cores"
|
||||
"test_rgg2d.4cores"
|
||||
"test_edge_weights.2cores"
|
||||
"test_edge_weights.4cores"
|
||||
"test_permutation.2cores"
|
||||
"test_permutation.4cores"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
cmake --install . --component tools
|
||||
'';
|
||||
passthru = {
|
||||
tests = {
|
||||
cmake-config = testers.hasCmakeConfigModules {
|
||||
moduleNames = [ "KaGen" ];
|
||||
package = finalAttrs.finalPackage;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Communication-free Massively Distributed Graph Generators";
|
||||
|
||||
@@ -7,13 +7,13 @@
|
||||
|
||||
php.buildComposerProject2 (finalAttrs: {
|
||||
pname = "kimai";
|
||||
version = "2.38.0";
|
||||
version = "2.40.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kimai";
|
||||
repo = "kimai";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-4wi87RvNrfd6vmRG/w6BY84j9NxXqNpAD/rfFN93QyY=";
|
||||
hash = "sha256-/962VDi/50PMfSjMtJtlR9uIbJSzkF7kSQiRzb6o+SI=";
|
||||
};
|
||||
|
||||
php = php.buildEnv {
|
||||
@@ -38,7 +38,7 @@ php.buildComposerProject2 (finalAttrs: {
|
||||
'';
|
||||
};
|
||||
|
||||
vendorHash = "sha256-U9yBSHL3682dWf2VZDw6/CiSmHLMS0EO/o/JgWbfwVM=";
|
||||
vendorHash = "sha256-I4v4WkPGLc8vBPjCiYzPxcLn4rH3HWtQXSqwGVKXeGg=";
|
||||
|
||||
composerNoPlugins = false;
|
||||
composerNoScripts = false;
|
||||
|
||||
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "Library for managing 3D-Studio Release 3 and 4 \".3DS\" files";
|
||||
homepage = "https://lib3ds.sourceforge.net/";
|
||||
license = "LGPL";
|
||||
license = lib.licenses.lgpl2Only;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,13 +20,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libdeltachat";
|
||||
version = "2.14.0";
|
||||
version = "2.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "chatmail";
|
||||
repo = "core";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-oSTQcR7HE1YaVlNuSknG6JhoiiOjgNwAIaCecmLE7PY=";
|
||||
hash = "sha256-QmDWTQjVc+ZhxQTj89tKcN5he6avriXZmFPN7EuvoUE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
|
||||
cargoDeps = rustPlatform.fetchCargoVendor {
|
||||
pname = "chatmail-core";
|
||||
inherit version src;
|
||||
hash = "sha256-9Dmll7os2cq3mxp30L9Nrx53QK1ZF7loozDg/XTs0UE=";
|
||||
hash = "sha256-nPSWxbGuJ89j6ZfTp1jCF5iqxEgYMEohLxtayKzxGA4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
which are based on hash algorithms.
|
||||
'';
|
||||
homepage = "https://mhash.sourceforge.net";
|
||||
license = "LGPL";
|
||||
license = lib.licenses.lgpl2Only;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "Opensource implementation of the Open Financial eXchange specification";
|
||||
homepage = "https://libofx.sourceforge.net/";
|
||||
license = "LGPL";
|
||||
license = lib.licenses.gpl2Only;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = [ ];
|
||||
};
|
||||
|
||||
@@ -1,35 +1,30 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
boost,
|
||||
fetchFromGitHub,
|
||||
cmake,
|
||||
zlib,
|
||||
boost,
|
||||
openssl,
|
||||
python3,
|
||||
ncurses,
|
||||
}:
|
||||
|
||||
let
|
||||
version = "2.0.11";
|
||||
|
||||
# Make sure we override python, so the correct version is chosen
|
||||
boostPython = boost.override {
|
||||
enablePython = true;
|
||||
python = python3;
|
||||
};
|
||||
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "libtorrent-rasterbar";
|
||||
inherit version;
|
||||
version = "2.0.11";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "arvidn";
|
||||
repo = "libtorrent";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-iph42iFEwP+lCWNPiOJJOejISFF6iwkGLY9Qg8J4tyo=";
|
||||
tag = "v${finalAttrs.version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-iph42iFEwP+lCWNPiOJJOejISFF6iwkGLY9Qg8J4tyo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@@ -52,9 +47,15 @@ stdenv.mkDerivation {
|
||||
# https://github.com/arvidn/libtorrent/issues/6865
|
||||
postPatch = ''
|
||||
substituteInPlace cmake/Modules/GeneratePkgConfig/target-compile-settings.cmake.in \
|
||||
--replace-fail 'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")' \
|
||||
'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")
|
||||
set(_INSTALL_FULL_LIBDIR "@CMAKE_INSTALL_FULL_LIBDIR@")'
|
||||
--replace-fail \
|
||||
'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")' \
|
||||
'set(_INSTALL_LIBDIR "@CMAKE_INSTALL_LIBDIR@")
|
||||
set(_INSTALL_FULL_LIBDIR "@CMAKE_INSTALL_FULL_LIBDIR@")'
|
||||
''
|
||||
# a: libdir=''${prefix}//nix/store/...
|
||||
# b: libdir=/nix/store/...
|
||||
# https://github.com/NixOS/nixpkgs/issues/144170
|
||||
+ ''
|
||||
substituteInPlace cmake/Modules/GeneratePkgConfig/pkg-config.cmake.in \
|
||||
--replace-fail '$'{prefix}/@_INSTALL_LIBDIR@ @_INSTALL_FULL_LIBDIR@
|
||||
'';
|
||||
@@ -67,6 +68,12 @@ stdenv.mkDerivation {
|
||||
postFixup = ''
|
||||
substituteInPlace "$dev/lib/cmake/LibtorrentRasterbar/LibtorrentRasterbarTargets-release.cmake" \
|
||||
--replace-fail "\''${_IMPORT_PREFIX}/lib" "$out/lib"
|
||||
''
|
||||
# a: Cflags: ... -I/nix/store/x//nix/store/x-dev/include ...
|
||||
# b: Cflags: ... -I/nix/store/x-dev/include ...
|
||||
+ ''
|
||||
substituteInPlace $dev/lib/pkgconfig/libtorrent-rasterbar.pc \
|
||||
--replace-fail "$out/$dev" "$dev"
|
||||
'';
|
||||
|
||||
outputs = [
|
||||
@@ -76,14 +83,15 @@ stdenv.mkDerivation {
|
||||
];
|
||||
|
||||
cmakeFlags = [
|
||||
"-Dpython-bindings=on"
|
||||
(lib.cmakeBool "python-bindings" true)
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
meta = {
|
||||
homepage = "https://libtorrent.org/";
|
||||
description = "C++ BitTorrent implementation focusing on efficiency and scalability";
|
||||
license = licenses.bsd3;
|
||||
description = "Efficient feature complete C++ bittorrent implementation";
|
||||
changelog = "https://github.com/arvidn/libtorrent/blob/${finalAttrs.src.tag}/ChangeLog";
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = [ ];
|
||||
platforms = platforms.unix;
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
lib,
|
||||
stdenv,
|
||||
fetchFromGitHub,
|
||||
gitUpdater,
|
||||
substitute,
|
||||
cmake,
|
||||
coreutils,
|
||||
@@ -35,6 +34,8 @@
|
||||
buildServer ? true,
|
||||
SDL2,
|
||||
useSDL2 ? true,
|
||||
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -141,10 +142,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
doCheck = true;
|
||||
|
||||
passthru.updateScript = gitUpdater {
|
||||
allowedVersions = "\\.";
|
||||
ignoredVersions = "-android$";
|
||||
};
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.luanti.org/";
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "luau-lsp";
|
||||
version = "1.53.5";
|
||||
version = "1.54.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "JohnnyMorganz";
|
||||
repo = "luau-lsp";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-T0zwaBR2KYD5kcoo7mPomNVIixz/8J6ZMJSjfeVnPEs=";
|
||||
hash = "sha256-18r/NScWfSwAvFT46zdJsNYXoEW8FF34XyZajAaGb28=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "mcp-nixos";
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "utensils";
|
||||
repo = "mcp-nixos";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-NFy38FrU4N+bk4qGyRnrpf2AaBrlQyC9SyRbCLm/d9Y=";
|
||||
hash = "sha256-SbmfP5Qo7liu39tTpIm6IC2qfwChooTYaPZiJqgwTzY=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
||||
ISO 8859.1 to print 8-bit characters.
|
||||
'';
|
||||
|
||||
license = "liberal"; # a non-copyleft license, see `Copyright' file
|
||||
license = lib.licenses.gpl2Plus;
|
||||
homepage = "http://www.mesa.nl/pub/mpage/";
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
php81,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
php81.buildComposerProject2 (finalAttrs: {
|
||||
pname = "n98-magerun";
|
||||
version = "2.3.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "netz98";
|
||||
repo = "n98-magerun";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-/RffdYgl2cs8mlq4vHtzUZ6j0viV8Ot/cB/cB1dstFM=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-huYLbqJaxeSST2WGcSdk4gR3d3KWSkIK/6tzVpCw0oQ=";
|
||||
|
||||
passthru.updateScript = nix-update-script {
|
||||
# Excludes 1.x versions from the Github tags list
|
||||
extraArgs = [
|
||||
"--version-regex"
|
||||
"^(2\\.(.*))"
|
||||
];
|
||||
};
|
||||
|
||||
meta = {
|
||||
changelog = "https://magerun.net/category/magerun/";
|
||||
description = "Swiss army knife for Magento1/OpenMage developers";
|
||||
homepage = "https://magerun.net/";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "n98-magerun";
|
||||
teams = [ lib.teams.php ];
|
||||
};
|
||||
})
|
||||
@@ -61,7 +61,10 @@ stdenv.mkDerivation {
|
||||
# Used to be GPLv2. The license distributed with the fonts looks
|
||||
# more like a modified BSD, but still contains the GPLv2 embedded
|
||||
# font exception, and some not-for-resale language.
|
||||
license = "unknown";
|
||||
license = {
|
||||
fullName = "Nafees License Agreement";
|
||||
url = "https://www.cle.org.pk/software/license/Nafees_Pakistani_Naskh_License.html";
|
||||
};
|
||||
platforms = lib.platforms.all;
|
||||
maintainers = with lib.maintainers; [ bergey ];
|
||||
};
|
||||
|
||||
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
|
||||
lib.licenses.zlib # zlib.ndll
|
||||
lib.licenses.asl20 # mod_neko, mod_tora, mbedTLS
|
||||
lib.licenses.mit # overall, other libs
|
||||
"https://github.com/HaxeFoundation/neko/blob/v2-3-0/LICENSE#L24-L40" # boehm gc
|
||||
lib.licenses.boehmGC # boehm gc
|
||||
];
|
||||
maintainers = with lib.maintainers; [
|
||||
marcweber
|
||||
|
||||
@@ -67,7 +67,12 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
homepage = "https://neverball.org/";
|
||||
description = "Tilt the floor to roll a ball";
|
||||
license = "GPL";
|
||||
license = with lib.licenses; [
|
||||
gpl2Plus
|
||||
ijg
|
||||
mit
|
||||
gpl3Only
|
||||
];
|
||||
maintainers = [ ];
|
||||
platforms = with lib.platforms; linux;
|
||||
};
|
||||
|
||||
@@ -2,71 +2,45 @@
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
rustPlatform,
|
||||
stdenv,
|
||||
makeWrapper,
|
||||
python3,
|
||||
nix,
|
||||
unstableGitUpdater,
|
||||
}:
|
||||
|
||||
let
|
||||
version = "0-unstable-2025-02-09";
|
||||
rustPlatform.buildRustPackage (finalAttrs: {
|
||||
pname = "nixpkgs-hammering";
|
||||
version = "0-unstable-2025-09-10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "jtojnar";
|
||||
repo = "nixpkgs-hammering";
|
||||
rev = "df77e6533c21737e5976c6fe4a4d81d7dcfc3e0e";
|
||||
hash = "sha256-Nr/4WcBMA/fc9WfNECB/nM85JfT2xwQYwS7Jq6rGKoM=";
|
||||
rev = "8cb86601cfa5521b454974d7219924f2d1c304c9";
|
||||
hash = "sha256-9rSdimO591tpfe3MpcHkqsc0lPk6roNwgj6ajVSOG7E=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Set of nit-picky rules that aim to point out and explain common mistakes in nixpkgs package pull requests";
|
||||
homepage = "https://github.com/jtojnar/nixpkgs-hammering";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ figsoda ];
|
||||
};
|
||||
|
||||
rust-checks = rustPlatform.buildRustPackage {
|
||||
pname = "nixpkgs-hammering-rust-checks";
|
||||
inherit version src meta;
|
||||
sourceRoot = "${src.name}/rust-checks";
|
||||
|
||||
cargoHash = "sha256-cE1fzdxGa0WG2WCPs8UFnE2vzaKfU7r6LS+9HLCVJ1U=";
|
||||
};
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "nixpkgs-hammering";
|
||||
|
||||
inherit version src;
|
||||
cargoHash = "sha256-MRwmeR5rj0PWUF5VMW5+9BbcX7Pq82YhufUv2Gt107U=";
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
postInstall = ''
|
||||
datadir="$out/share/nixpkgs-hammering"
|
||||
mkdir -p "$datadir"
|
||||
|
||||
buildInputs = [ python3 ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
AST_CHECK_NAMES=$(find ${rust-checks}/bin -maxdepth 1 -type f -printf "%f:")
|
||||
|
||||
install -Dt $out/bin tools/nixpkgs-hammer
|
||||
wrapProgram $out/bin/nixpkgs-hammer \
|
||||
--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
nix
|
||||
rust-checks
|
||||
]
|
||||
} \
|
||||
--set AST_CHECK_NAMES ''${AST_CHECK_NAMES%:}
|
||||
|
||||
cp -r lib overlays $out
|
||||
|
||||
runHook postInstall
|
||||
wrapProgram "$out/bin/nixpkgs-hammer" \
|
||||
--prefix PATH ":" ${lib.makeBinPath [ nix ]} \
|
||||
--set OVERLAYS_DIR "$datadir/overlays"
|
||||
cp -r ./overlays "$datadir/overlays"
|
||||
cp -r ./lib "$datadir/lib"
|
||||
'';
|
||||
|
||||
# running checks requires to run nix inside of the builder which fails due to permission errors
|
||||
doCheck = false;
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
meta = meta // {
|
||||
meta = {
|
||||
description = "Set of nit-picky rules that aim to point out and explain common mistakes in nixpkgs package pull requests";
|
||||
homepage = "https://github.com/jtojnar/nixpkgs-hammering";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "nixpkgs-hammer";
|
||||
maintainers = with lib.maintainers; [ figsoda ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
||||
@@ -29,7 +29,11 @@ stdenv.mkDerivation {
|
||||
meta = {
|
||||
homepage = "http://www.ocaml.info/home/ocaml_sources.html";
|
||||
description = "Generic OCaml Makefile for GNU Make";
|
||||
license = "LGPL";
|
||||
license = with lib.licenses; [
|
||||
lgpl21Only
|
||||
ocamlLgplLinkingException
|
||||
gpl3Only
|
||||
];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -154,6 +154,9 @@ stdenv.mkDerivation rec {
|
||||
raskin
|
||||
];
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
license = "OpenSceneGraph Public License - free LGPL-based license";
|
||||
license = with lib.licenses; [
|
||||
lgpl21Only
|
||||
wxWindowsException31
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -42,7 +42,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "Qt bindings for OpenSceneGraph";
|
||||
homepage = "https://github.com/openscenegraph/osgQt";
|
||||
license = "OpenSceneGraph Public License - free LGPL-based license";
|
||||
license = with lib.licenses; [
|
||||
lgpl21Only
|
||||
wxWindowsException31
|
||||
];
|
||||
maintainers = [ lib.maintainers.nim65s ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenvNoCC.mkDerivation {
|
||||
homepage = "http://www.paratype.ru/public/";
|
||||
description = "Open Paratype font";
|
||||
|
||||
license = "Open Paratype license";
|
||||
license = lib.licenses.paratype;
|
||||
# no commercial distribution of the font on its own
|
||||
# must rename on modification
|
||||
# http://www.paratype.ru/public/pt_openlicense.asp
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenvNoCC.mkDerivation {
|
||||
homepage = "http://www.paratype.ru/public/";
|
||||
description = "Open Paratype font";
|
||||
|
||||
license = "Open Paratype license";
|
||||
license = lib.licenses.paratype;
|
||||
# no commercial distribution of the font on its own
|
||||
# must rename on modification
|
||||
# http://www.paratype.ru/public/pt_openlicense.asp
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenvNoCC.mkDerivation {
|
||||
homepage = "http://www.paratype.ru/public/";
|
||||
description = "Open Paratype font";
|
||||
|
||||
license = "Open Paratype license";
|
||||
license = lib.licenses.paratype;
|
||||
# no commercial distribution of the font on its own
|
||||
# must rename on modification
|
||||
# http://www.paratype.ru/public/pt_openlicense.asp
|
||||
|
||||
@@ -7,14 +7,14 @@
|
||||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "phase-cli";
|
||||
version = "1.19.6";
|
||||
version = "1.20.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phasehq";
|
||||
repo = "cli";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-SOFMTetw5kEduV7ufY1v2vnv3exDEmnCFBr9q83YVTo=";
|
||||
hash = "sha256-vhjDXQutRdkeeId2shPWFtoZGH6FXvQcWhH8MLe9JqI=";
|
||||
};
|
||||
|
||||
build-system = with python3Packages; [
|
||||
|
||||
@@ -1,40 +0,0 @@
|
||||
{
|
||||
fetchFromGitHub,
|
||||
stdenv,
|
||||
lib,
|
||||
nixosTests,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "postfixadmin";
|
||||
version = "3.3.16";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "postfixadmin";
|
||||
repo = "postfixadmin";
|
||||
tag = "postfixadmin-${version}";
|
||||
hash = "sha256-sSn5XHxnpP2Axv9BD9IvzSmu8MthcylEPk1kU51p/3k=";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir $out
|
||||
cp -r * $out/
|
||||
ln -sf /etc/postfixadmin/config.local.php $out/
|
||||
ln -sf /var/cache/postfixadmin/templates_c $out/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.tests = { inherit (nixosTests) postfixadmin; };
|
||||
|
||||
meta = {
|
||||
changelog = "https://github.com/postfixadmin/postfixadmin/releases/tag/${src.tag}";
|
||||
description = "Web based virtual user administration interface for Postfix mail servers";
|
||||
homepage = "https://postfixadmin.sourceforge.io/";
|
||||
maintainers = with lib.maintainers; [ globin ];
|
||||
license = lib.licenses.gpl2Plus;
|
||||
platforms = lib.platforms.all;
|
||||
};
|
||||
}
|
||||
@@ -9,16 +9,16 @@
|
||||
|
||||
buildNpmPackage rec {
|
||||
pname = "redocly";
|
||||
version = "2.1.0";
|
||||
version = "2.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Redocly";
|
||||
repo = "redocly-cli";
|
||||
rev = "@redocly/cli@${version}";
|
||||
hash = "sha256-94SqBRA2XqVCH6BN6pmaSKEfQC2SPPGfDe6fxQS+8as=";
|
||||
hash = "sha256-e25pjXopmWqoLV16DC+w57YZzH6bbwITsRhKI9IBr+0=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-u+zWxenJDsOjYEbTbAfrRvBTdWLzZKX1TITEXk8yHSo=";
|
||||
npmDepsHash = "sha256-/Gi0hNuG6fkgOCcjD1jDNyUT1ke3oipqmzAHDpdbiJg=";
|
||||
|
||||
npmBuildScript = "prepare";
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
}:
|
||||
let
|
||||
pname = "remnote";
|
||||
version = "1.20.18";
|
||||
version = "1.21.5";
|
||||
src = fetchurl {
|
||||
url = "https://download2.remnote.io/remnote-desktop2/RemNote-${version}.AppImage";
|
||||
hash = "sha256-GxME5+Un6bYoMg9tkcdF3r5kTCdifdWmWtQrihGBloY=";
|
||||
hash = "sha256-Tq8qyjlyB/1tQkB5rLVSLy8HbpnfBZ4QmNQB/CVEiN0=";
|
||||
};
|
||||
appimageContents = appimageTools.extractType2 { inherit pname version src; };
|
||||
in
|
||||
|
||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "Parse formatted man pages and man page source from most flavors of UNIX and converts them to HTML, ASCII, TkMan, DocBook, and other formats";
|
||||
license = "artistic";
|
||||
license = lib.licenses.artistic1;
|
||||
platforms = lib.platforms.all;
|
||||
mainProgram = "rman";
|
||||
};
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rofi-calc";
|
||||
version = "2.4.0";
|
||||
version = "2.4.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "svenstaro";
|
||||
repo = "rofi-calc";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-iTLi76GinRASawPSWAqmxSwLZPGvHesarHNoqO4m4dM=";
|
||||
sha256 = "sha256-E0C5hlrZGRGHT/yb4J2qFquf3AuB0T1zqbFPZdT1UxE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
|
||||
description = "Most Advanced REST & SOAP Testing Tool in the World";
|
||||
homepage = "https://www.soapui.org/";
|
||||
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
||||
license = "SoapUI End User License Agreement";
|
||||
license = lib.licenses.eupl11;
|
||||
maintainers = with maintainers; [ gerschtli ];
|
||||
platforms = platforms.linux; # we don't fetch the dmg yet
|
||||
mainProgram = "soapui";
|
||||
|
||||
@@ -44,6 +44,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://github.com/vasi/squashfuse";
|
||||
maintainers = [ ];
|
||||
platforms = lib.platforms.unix;
|
||||
license = "BSD-2-Clause";
|
||||
license = lib.licenses.bsd2;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -34,7 +34,10 @@ stdenv.mkDerivation {
|
||||
meta = with lib; {
|
||||
description = "SSLv3/TLS network protocol analyzer";
|
||||
homepage = "https://ssldump.sourceforge.net";
|
||||
license = "BSD-style";
|
||||
license = with lib.licenses; [
|
||||
bsdOriginal
|
||||
bsdOriginalShortened
|
||||
];
|
||||
maintainers = with maintainers; [ aycanirican ];
|
||||
platforms = platforms.unix;
|
||||
mainProgram = "ssldump";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
--- a/v2/pkg/runner/options.go
|
||||
+++ b/v2/pkg/runner/options.go
|
||||
--- a/pkg/runner/options.go
|
||||
+++ b/pkg/runner/options.go
|
||||
@@ -107,7 +107,7 @@ func ParseOptions() *Options {
|
||||
|
||||
flagSet.CreateGroup("update", "Update",
|
||||
|
||||
@@ -6,18 +6,16 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "subfinder";
|
||||
version = "2.8.0";
|
||||
version = "2.9.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "projectdiscovery";
|
||||
repo = "subfinder";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-HfQz0tLBKt16IrtxOT3lX28FcVG05X1hICw5Xq/dQJw=";
|
||||
hash = "sha256-llyzTGy7nj5RFwt0KDPP9Ua1FkcrErW8GdvbSWg3mpk=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-3bHIrjA5Bbl6prF+ttEs+N2Sa4AMZDtRk3ysoIitsdY=";
|
||||
|
||||
modRoot = "./v2";
|
||||
vendorHash = "sha256-z+CKoRxxskyKYmBfIEQjtf8nXuGfWH+4IG98+1eCCmk=";
|
||||
|
||||
patches = [
|
||||
# Disable automatic version check
|
||||
|
||||
@@ -65,13 +65,13 @@ let
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "syslog-ng";
|
||||
version = "4.10.0";
|
||||
version = "4.10.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "syslog-ng";
|
||||
repo = "syslog-ng";
|
||||
tag = "syslog-ng-${finalAttrs.version}";
|
||||
hash = "sha256-XqYfDRJc+AwkdQGSbkslFadYqNK0UDiZOruUUMYO1po=";
|
||||
hash = "sha256-Iha0HExkB0oM8IxzgMjnqwY4AlrK8ifL6DU3MxgGdXQ=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
|
||||
@@ -163,7 +163,10 @@ python3Packages.buildPythonApplication rec {
|
||||
homepage = "https://tahoe-lafs.org/";
|
||||
license = [
|
||||
lib.licenses.gpl2Plus # or
|
||||
"TGPPLv1+"
|
||||
{
|
||||
fullName = "Transitive Grace Period Public Licence version 1.0";
|
||||
url = "https://github.com/tahoe-lafs/tahoe-lafs/blob/master/COPYING.TGPPL.rst";
|
||||
}
|
||||
];
|
||||
maintainers = with lib.maintainers; [ MostAwesomeDude ];
|
||||
platforms = lib.platforms.linux;
|
||||
|
||||
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
homepage = "ftp://ftp.porcupine.org/pub/security/index.html";
|
||||
license = "BSD-style";
|
||||
license = lib.licenses.tcpWrappers;
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
which,
|
||||
@@ -41,6 +42,6 @@ stdenv.mkDerivation rec {
|
||||
description = "GNU Arch (aka. `tla'), a distributed revision control system";
|
||||
mainProgram = "tla";
|
||||
homepage = "https://www.gnu.org/software/gnu-arch/";
|
||||
license = "GPL";
|
||||
license = lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -94,6 +94,6 @@ stdenv.mkDerivation {
|
||||
homepage = "https://github.com/adaptivecomputing/torque";
|
||||
description = "Resource management system for submitting and controlling jobs on supercomputers, clusters, and grids";
|
||||
platforms = platforms.linux;
|
||||
license = "TORQUEv1.1";
|
||||
license = lib.licenses.torque11;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -47,7 +47,13 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
meta = {
|
||||
description = "True Type to Postscript Type 3 converter, fpdf";
|
||||
homepage = "https://ttf2pt1.sourceforge.net/index.html";
|
||||
license = "ttf2pt1";
|
||||
license = with lib.licenses; [
|
||||
gpl2Plus
|
||||
{
|
||||
fullName = "ttf2pt1 License";
|
||||
url = "https://git.altlinux.org/gears/t/ttf2pt1.git?p=ttf2pt1.git;a=blob;f=ttf2pt1/COPYRIGHT;h=75e8f38e5a7638ee7d23892c86442ddcc35f4761;hb=f3cdb9f16159edf8115dc81520be9af791e846b2";
|
||||
}
|
||||
];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
})
|
||||
|
||||
@@ -14,7 +14,7 @@ bundlerApp {
|
||||
meta = with lib; {
|
||||
description = "OAuth-enabled curl for the Twitter API";
|
||||
homepage = "https://github.com/twitter/twurl";
|
||||
license = "MIT";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with maintainers; [ brecht ];
|
||||
platforms = platforms.unix;
|
||||
mainProgram = "twurl";
|
||||
|
||||
@@ -66,7 +66,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
homepage = "https://unifoundry.com/unifont/";
|
||||
|
||||
# Basically GPL2+ with font exception.
|
||||
license = "https://unifoundry.com/LICENSE.txt";
|
||||
license = with lib.licenses; [
|
||||
gpl2Plus
|
||||
fontException
|
||||
];
|
||||
maintainers = [ maintainers.rycee ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
@@ -28,7 +28,10 @@ stdenvNoCC.mkDerivation rec {
|
||||
homepage = "https://unifoundry.com/unifont/";
|
||||
|
||||
# Basically GPL2+ with font exception.
|
||||
license = "https://unifoundry.com/LICENSE.txt";
|
||||
license = with lib.licenses; [
|
||||
gpl2Plus
|
||||
fontException
|
||||
];
|
||||
maintainers = [ maintainers.mathnerd314 ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
|
||||
@@ -8,9 +8,7 @@
|
||||
withPython3 ? true,
|
||||
python3,
|
||||
ncurses,
|
||||
withPHP81 ? true,
|
||||
php81,
|
||||
withPHP82 ? false,
|
||||
withPHP82 ? true,
|
||||
php82,
|
||||
withPerl ? true,
|
||||
perl,
|
||||
@@ -34,7 +32,6 @@ let
|
||||
fpmSupport = false;
|
||||
};
|
||||
|
||||
php81-unit = php81.override phpConfig;
|
||||
php82-unit = php82.override phpConfig;
|
||||
|
||||
inherit (lib) optional optionals optionalString;
|
||||
@@ -59,7 +56,6 @@ stdenv.mkDerivation rec {
|
||||
python3
|
||||
ncurses
|
||||
]
|
||||
++ optional withPHP81 php81-unit
|
||||
++ optional withPHP82 php82-unit
|
||||
++ optional withPerl perl
|
||||
++ optional withRuby_3_1 ruby_3_1
|
||||
@@ -77,11 +73,10 @@ stdenv.mkDerivation rec {
|
||||
++ optional withDebug "--debug";
|
||||
|
||||
# Optionally add the PHP derivations used so they can be addressed in the configs
|
||||
usedPhp81 = optionals withPHP81 php81-unit;
|
||||
usedPhp82 = optionals withPHP82 php82-unit;
|
||||
|
||||
postConfigure = ''
|
||||
${optionalString withPython3 "./configure python --module=python3 --config=python3-config --lib-path=${python3}/lib"}
|
||||
${optionalString withPHP81 "./configure php --module=php81 --config=${php81-unit.unwrapped.dev}/bin/php-config --lib-path=${php81-unit}/lib"}
|
||||
${optionalString withPHP82 "./configure php --module=php82 --config=${php82-unit.unwrapped.dev}/bin/php-config --lib-path=${php82-unit}/lib"}
|
||||
${optionalString withPerl "./configure perl --module=perl --perl=${perl}/bin/perl"}
|
||||
${optionalString withRuby_3_1 "./configure ruby --module=ruby31 --ruby=${ruby_3_1}/bin/ruby"}
|
||||
|
||||
@@ -77,7 +77,11 @@ stdenv.mkDerivation {
|
||||
description = "Fork of NetHack";
|
||||
mainProgram = "unnethack";
|
||||
homepage = "https://unnethack.wordpress.com/";
|
||||
license = "nethack";
|
||||
license = with lib.licenses; [
|
||||
gpl3Only
|
||||
cc-by-sa-30
|
||||
publicDomain
|
||||
];
|
||||
platforms = lib.platforms.all;
|
||||
maintainers = [ ];
|
||||
};
|
||||
|
||||
@@ -80,7 +80,11 @@ stdenv.mkDerivation rec {
|
||||
description = "Bitmapped character-art-friendly Unicode fonts";
|
||||
# Basically GPL2+ with font exception — because of the Unifont-augmented
|
||||
# version. The reduced version is public domain.
|
||||
license = "http://unifoundry.com/LICENSE.txt";
|
||||
license = with lib.licenses; [
|
||||
gpl2Plus
|
||||
fontException
|
||||
ofl
|
||||
];
|
||||
maintainers = [ lib.maintainers.raskin ];
|
||||
homepage = "http://viznut.fi/unscii/";
|
||||
};
|
||||
|
||||
@@ -9,13 +9,13 @@
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
pname = "vcpkg";
|
||||
version = "2025.08.27";
|
||||
version = "2025.09.17";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "microsoft";
|
||||
repo = "vcpkg";
|
||||
tag = finalAttrs.version;
|
||||
hash = "sha256-rgpFnISzqmmb3Ce+iLd9HkcZnhqQ2dEVl2GkoeLrs2U=";
|
||||
hash = "sha256-DySLGZrsUwXEW3NbcG6hEvcJZyPHub+oI9HWiKvYIpM=";
|
||||
leaveDotGit = true;
|
||||
postFetch = ''
|
||||
cd "$out"
|
||||
|
||||
@@ -11,16 +11,16 @@
|
||||
|
||||
buildNpmPackage (finalAttrs: {
|
||||
pname = "vsce";
|
||||
version = "3.6.0";
|
||||
version = "3.6.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "microsoft";
|
||||
repo = "vscode-vsce";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-6Tt7IewbCLHG8DVoD8PV6VmrNu3MCUHITgYFq9smvOo=";
|
||||
hash = "sha256-TcBzXDNpjJvI+0ir80d+HFp6mF/Ecle4vhOMcACvF7M=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-pZUDui2mhGe+My9QL+pqeBU16AyJ+/udULbo2EQjZd0=";
|
||||
npmDepsHash = "sha256-G09pn6JX389GMbIzYmmLutH7qwiaDb8V9zCGAOFaDdk=";
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace package.json --replace-fail '"version": "0.0.0"' '"version": "${finalAttrs.version}"'
|
||||
|
||||
@@ -27,7 +27,8 @@ stdenv.mkDerivation {
|
||||
homepage = "https://help.wooting.io/article/147-configuring-device-access-for-wootility-under-linux-udev-rules";
|
||||
description = "udev rules that give NixOS permission to communicate with Wooting keyboards";
|
||||
platforms = platforms.linux;
|
||||
license = "unknown";
|
||||
# We think they are so simple that they are uncopyrightable
|
||||
license = lib.licenses.publicDomain;
|
||||
maintainers = with maintainers; [
|
||||
returntoreality
|
||||
];
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user