Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2023-05-02 00:03:00 +00:00 committed by GitHub
commit 0ee4180a08
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
42 changed files with 545 additions and 22885 deletions

View File

@ -217,6 +217,11 @@ In addition to numerous new and upgraded packages, this release has the followin
- The [services.wordpress.sites.<name>.plugins](#opt-services.wordpress.sites._name_.plugins) and [services.wordpress.sites.<name>.themes](#opt-services.wordpress.sites._name_.themes) options have been converted from sets to attribute sets to allow for consumers to specify explicit install paths via attribute name.
- [`services.nextcloud.database.createLocally`](#opt-services.nextcloud.database.createLocally) now uses socket authentication and is no longer compatible with password authentication.
- If you want the module to manage the database for you, unset [`services.nextcloud.config.dbpassFile`](#opt-services.nextcloud.config.dbpassFile) (and [`services.nextcloud.config.dbhost`](#opt-services.nextcloud.config.dbhost), if it's set).
- If your database is external, simply set [`services.nextcloud.database.createLocally`](#opt-services.nextcloud.database.createLocally) to `false`.
- If you want to use password authentication **and** create the database locally, you will have to use [`services.mysql`](#opt-services.mysql.enable) to set it up.
- `protonmail-bridge` package has been updated to major version 3.
- Nebula now runs as a system user and group created for each nebula network, using the `CAP_NET_ADMIN` ambient capability on launch rather than starting as root. Ensure that any files each Nebula instance needs to access are owned by the correct user and group, by default `nebula-${networkName}`.

View File

@ -11,6 +11,8 @@ in {
enable = mkEnableOption (lib.mdDoc "Navidrome music server");
package = mkPackageOptionMD pkgs "navidrome" { };
settings = mkOption rec {
type = settingsFormat.type;
apply = recursiveUpdate default;
@ -36,7 +38,7 @@ in {
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = ''
${pkgs.navidrome}/bin/navidrome --configfile ${settingsFormat.generate "navidrome.json" cfg.settings}
${cfg.package}/bin/navidrome --configfile ${settingsFormat.generate "navidrome.json" cfg.settings}
'';
DynamicUser = true;
StateDirectory = "navidrome";

View File

@ -76,7 +76,7 @@ in
export DATABASE_PASSWORD="$(<"${cfg.dbpassFile}")"
'' + ''
export DATABASE_URL="${dbUrl}"
${cfg.package}/bin/notify_push --glob-config '${config.services.nextcloud.datadir}/config/config.php'
${cfg.package}/bin/notify_push '${config.services.nextcloud.datadir}/config/config.php'
'';
serviceConfig = {
User = "nextcloud";

View File

@ -12,10 +12,16 @@ major version available.
Nextcloud is a PHP-based application which requires an HTTP server
([`services.nextcloud`](#opt-services.nextcloud.enable)
optionally supports
[`services.nginx`](#opt-services.nginx.enable))
and a database (it's recommended to use
[`services.postgresql`](#opt-services.postgresql.enable)).
and optionally supports
[`services.nginx`](#opt-services.nginx.enable)).
For the database, you can set
[`services.nextcloud.config.dbtype`](#opt-services.nextcloud.config.dbtype) to
either `sqlite` (the default), `mysql`, or `pgsql`. For the last two, by
default, a local database will be created and nextcloud will connect to it via
socket; this can be disabled by setting
[`services.nextcloud.database.createLocally`](#opt-services.nextcloud.database.createLocally)
to `false`.
A very basic configuration may look like this:
```
@ -26,30 +32,10 @@ A very basic configuration may look like this:
hostName = "nextcloud.tld";
config = {
dbtype = "pgsql";
dbuser = "nextcloud";
dbhost = "/run/postgresql"; # nextcloud will add /.s.PGSQL.5432 by itself
dbname = "nextcloud";
adminpassFile = "/path/to/admin-pass-file";
adminuser = "root";
};
};
services.postgresql = {
enable = true;
ensureDatabases = [ "nextcloud" ];
ensureUsers = [
{ name = "nextcloud";
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
}
];
};
# ensure that postgres is running *before* running the setup
systemd.services."nextcloud-setup" = {
requires = ["postgresql.service"];
after = ["postgresql.service"];
};
networking.firewall.allowedTCPPorts = [ 80 443 ];
}
```

View File

@ -57,6 +57,9 @@ let
inherit (config.system) stateVersion;
mysqlLocal = cfg.database.createLocally && cfg.config.dbtype == "mysql";
pgsqlLocal = cfg.database.createLocally && cfg.config.dbtype == "pgsql";
in {
imports = [
@ -314,13 +317,9 @@ in {
createLocally = mkOption {
type = types.bool;
default = false;
default = true;
description = lib.mdDoc ''
Create the database and database user locally. Only available for
mysql database.
Note that this option will use the latest version of MariaDB which
is not officially supported by Nextcloud. As for now a workaround
is used to also support MariaDB version >= 10.6.
Create the database and database user locally.
'';
};
@ -352,12 +351,15 @@ in {
};
dbhost = mkOption {
type = types.nullOr types.str;
default = "localhost";
default =
if pgsqlLocal then "/run/postgresql"
else if mysqlLocal then "localhost:/run/mysqld/mysqld.sock"
else "localhost";
defaultText = "localhost";
description = lib.mdDoc ''
Database host.
Note: for using Unix authentication with PostgreSQL, this should be
set to `/run/postgresql`.
Database host or socket path. Defaults to the correct unix socket
instead if `services.nextcloud.database.createLocally` is true and
`services.nextcloud.config.dbtype` is either `pgsql` or `mysql`.
'';
};
dbport = mkOption {
@ -737,8 +739,22 @@ in {
}
{ assertions = [
{ assertion = cfg.database.createLocally -> cfg.config.dbtype == "mysql";
message = ''services.nextcloud.config.dbtype must be set to mysql if services.nextcloud.database.createLocally is set to true.'';
{ assertion = cfg.database.createLocally -> cfg.config.dbpassFile == null;
message = ''
Using `services.nextcloud.database.createLocally` (that now defaults
to true) with database password authentication is no longer
supported.
If you use an external database (or want to use password auth for any
other reason), set `services.nextcloud.database.createLocally` to
`false`. The database won't be managed for you (use `services.mysql`
if you want to set it up).
If you want this module to manage your nextcloud database for you,
unset `services.nextcloud.config.dbpassFile` and
`services.nextcloud.config.dbhost` to use socket authentication
instead of password.
'';
}
]; }
@ -902,6 +918,8 @@ in {
in {
wantedBy = [ "multi-user.target" ];
before = [ "phpfpm-nextcloud.service" ];
after = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
requires = optional mysqlLocal "mysql.service" ++ optional pgsqlLocal "postgresql.service";
path = [ occ ];
script = ''
${optionalString (c.dbpassFile != null) ''
@ -1007,7 +1025,7 @@ in {
environment.systemPackages = [ occ ];
services.mysql = lib.mkIf cfg.database.createLocally {
services.mysql = lib.mkIf mysqlLocal {
enable = true;
package = lib.mkDefault pkgs.mariadb;
ensureDatabases = [ cfg.config.dbname ];
@ -1015,14 +1033,15 @@ in {
name = cfg.config.dbuser;
ensurePermissions = { "${cfg.config.dbname}.*" = "ALL PRIVILEGES"; };
}];
initialScript = pkgs.writeText "mysql-init" ''
CREATE USER '${cfg.config.dbname}'@'localhost' IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}';
CREATE DATABASE IF NOT EXISTS ${cfg.config.dbname};
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER,
CREATE TEMPORARY TABLES ON ${cfg.config.dbname}.* TO '${cfg.config.dbuser}'@'localhost'
IDENTIFIED BY '${builtins.readFile( cfg.config.dbpassFile )}';
FLUSH privileges;
'';
};
services.postgresql = mkIf pgsqlLocal {
enable = true;
ensureDatabases = [ cfg.config.dbname ];
ensureUsers = [{
name = cfg.config.dbuser;
ensurePermissions = { "DATABASE ${cfg.config.dbname}" = "ALL PRIVILEGES"; };
}];
};
services.nginx.enable = mkDefault true;

View File

@ -1,6 +1,11 @@
import ../make-test-python.nix ({ pkgs, ...}: let
adminpass = "hunter2";
adminuser = "custom-admin-username";
username = "custom_admin_username";
# This will be used both for redis and postgresql
pass = "hunter2";
# Don't do this at home, use a file outside of the nix store instead
passFile = toString (pkgs.writeText "pass-file" ''
${pass}
'');
in {
name = "nextcloud-with-declarative-redis";
meta = with pkgs.lib.maintainers; {
@ -22,15 +27,15 @@ in {
redis = true;
memcached = false;
};
# This test also validates that we can use an "external" database
database.createLocally = false;
config = {
dbtype = "pgsql";
dbname = "nextcloud";
dbuser = "nextcloud";
dbhost = "/run/postgresql";
inherit adminuser;
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
${adminpass}
'');
dbuser = username;
dbpassFile = passFile;
adminuser = username;
adminpassFile = passFile;
};
secretFile = "/etc/nextcloud-secrets.json";
@ -52,20 +57,20 @@ in {
systemd.services.nextcloud-setup= {
requires = ["postgresql.service"];
after = [
"postgresql.service"
];
after = [ "postgresql.service" ];
};
services.postgresql = {
enable = true;
ensureDatabases = [ "nextcloud" ];
ensureUsers = [
{ name = "nextcloud";
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
}
];
};
systemd.services.postgresql.postStart = pkgs.lib.mkAfter ''
password=$(cat ${passFile})
${config.services.postgresql.package}/bin/psql <<EOF
CREATE ROLE ${username} WITH LOGIN PASSWORD '$password' CREATEDB;
CREATE DATABASE nextcloud;
GRANT ALL PRIVILEGES ON DATABASE nextcloud TO ${username};
EOF
'';
# This file is meant to contain secret options which should
# not go into the nix store. Here it is just used to set the
@ -86,8 +91,8 @@ in {
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
export RCLONE_CONFIG_NEXTCLOUD_USER="${adminuser}"
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
export RCLONE_CONFIG_NEXTCLOUD_USER="${username}"
export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${pass})"
"''${@}"
'';
copySharedFile = pkgs.writeScript "copy-shared-file" ''

View File

@ -26,24 +26,13 @@ in {
redis = false;
memcached = true;
};
database.createLocally = true;
config = {
dbtype = "mysql";
dbname = "nextcloud";
dbuser = "nextcloud";
dbhost = "127.0.0.1";
dbport = 3306;
dbpassFile = "${pkgs.writeText "dbpass" "hunter2" }";
# Don't inherit adminuser since "root" is supposed to be the default
adminpassFile = "${pkgs.writeText "adminpass" adminpass}"; # Don't try this at home!
};
};
systemd.services.nextcloud-setup= {
requires = ["mysql.service"];
after = ["mysql.service"];
};
services.memcached.enable = true;
};
};

View File

@ -27,9 +27,6 @@ in {
};
config = {
dbtype = "pgsql";
dbname = "nextcloud";
dbuser = "nextcloud";
dbhost = "/run/postgresql";
inherit adminuser;
adminpassFile = toString (pkgs.writeText "admin-pass-file" ''
${adminpass}
@ -48,23 +45,6 @@ in {
services.redis.servers."nextcloud".enable = true;
services.redis.servers."nextcloud".port = 6379;
systemd.services.nextcloud-setup= {
requires = ["postgresql.service"];
after = [
"postgresql.service"
];
};
services.postgresql = {
enable = true;
ensureDatabases = [ "nextcloud" ];
ensureUsers = [
{ name = "nextcloud";
ensurePermissions."DATABASE nextcloud" = "ALL PRIVILEGES";
}
];
};
};
};

View File

@ -8,6 +8,7 @@
, pkg-config
, ronn
, substituteAll
, buildPackages
, mbrolaSupport ? true
, mbrola
, pcaudiolibSupport ? true
@ -49,6 +50,14 @@ stdenv.mkDerivation rec {
"--with-mbrola=${if mbrolaSupport then "yes" else "no"}"
];
# ref https://github.com/void-linux/void-packages/blob/3cf863f894b67b3c93e23ac7830ca46b697d308a/srcpkgs/espeak-ng/template#L29-L31
postConfigure = lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
substituteInPlace Makefile \
--replace 'ESPEAK_DATA_PATH=$(CURDIR) src/espeak-ng' 'ESPEAK_DATA_PATH=$(CURDIR) ${lib.getExe buildPackages.espeak-ng}' \
--replace 'espeak-ng-data/%_dict: src/espeak-ng' 'espeak-ng-data/%_dict: ${lib.getExe buildPackages.espeak-ng}' \
--replace '../src/espeak-ng --compile' "${lib.getExe buildPackages.espeak-ng} --compile"
'';
postInstall = lib.optionalString stdenv.isLinux ''
patchelf --set-rpath "$(patchelf --print-rpath $out/bin/espeak-ng)" $out/bin/speak-ng
wrapProgram $out/bin/espeak-ng \

View File

@ -5,16 +5,16 @@
buildGoModule rec {
pname = "lightning-loop";
version = "0.20.0-beta";
version = "0.23.0-beta";
src = fetchFromGitHub {
owner = "lightninglabs";
repo = "loop";
rev = "v${version}";
sha256 = "1nx7i4i96982z756r79655hjf0yyz5l9lqjkvyvb62pbzqgm6my8";
sha256 = "sha256-nYDu451BS5gV4pbV9Pp+S7oKsLGzgVu1a9Df7651e4c=";
};
vendorSha256 = "0gp89fw6g8mz2ifn9wcbj84dgm736cspfxj2x34b524l2d8wz3lb";
vendorSha256 = "sha256-6bRg6is1g/eRCr82tHMXTWVFv2S0d2h/J3w1gpentjo=";
subPackages = [ "cmd/loop" "cmd/loopd" ];

View File

@ -81,6 +81,8 @@ in
voicemacs = callPackage ./manual-packages/voicemacs { };
wat-mode = callPackage ./manual-packages/wat-mode { };
yes-no = callPackage ./manual-packages/yes-no { };
youtube-dl = callPackage ./manual-packages/youtube-dl { };

View File

@ -0,0 +1,23 @@
# Manually packaged until it is upstreamed to melpa
# See https://github.com/devonsparks/wat-mode/issues/1
{ lib, trivialBuild, fetchFromGitHub, fetchpatch, emacs }:
trivialBuild rec {
pname = "wat-mode";
version = "unstable-2022-07-13";
src = fetchFromGitHub {
owner = "devonsparks";
repo = pname;
rev = "46b4df83e92c585295d659d049560dbf190fe501";
hash = "sha256-jV5V3TRY+D3cPSz3yFwVWn9yInhGOYIaUTPEhsOBxto=";
};
meta = with lib; {
homepage = "https://github.com/devonsparks/wat-mode";
description = "An Emacs major mode for WebAssembly's text format";
license = licenses.gpl3Only;
maintainers = with maintainers; [ nagy ];
inherit (emacs.meta) platforms;
};
}

View File

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "lf";
version = "28";
version = "29";
src = fetchFromGitHub {
owner = "gokcehan";
repo = "lf";
rev = "r${version}";
hash = "sha256-VEXWjpdUP5Kabimp9kKoLR7/FlE39MAroRBl9au2TI8=";
hash = "sha256-kch+FQAO/Xn3GFXOzBTV1VUeJ+0CnDj/GmzxPUO5dlo=";
};
vendorHash = "sha256-oIIyQbw42+B6T6Qn6nIV62Xr+8ms3tatfFI8ocYNr0A=";
vendorHash = "sha256-z34WN4z9reBbwITLm7igQscmIVuoRpdAvZ4QMNGAPaE=";
nativeBuildInputs = [ installShellFiles ];

View File

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub, qmake, qtquickcontrols2, qtserialport, qtsvg, wrapQtAppsHook }:
stdenv.mkDerivation rec {
pname = "serial-studio";
version = "1.1.7";
src = fetchFromGitHub {
owner = "Serial-Studio";
repo = "Serial-Studio";
rev = "v${version}";
hash = "sha256-Tsd1PGB7cO8h3HDifOtB8jsnj+fS4a/o5nfLoohVLM4=";
fetchSubmodules = true;
};
nativeBuildInputs = [ qmake wrapQtAppsHook ];
buildInputs = [ qtquickcontrols2 qtserialport qtsvg ];
meta = with lib; {
description = "Multi-purpose serial data visualization & processing program";
homepage = "https://serial-studio.github.io/";
license = licenses.mit;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.linux;
};
}

View File

@ -7,16 +7,16 @@
buildGoModule rec {
pname = "seaweedfs";
version = "3.47";
version = "3.48";
src = fetchFromGitHub {
owner = "seaweedfs";
repo = "seaweedfs";
rev = version;
hash = "sha256-0RDzTS/bjcXeYBWqRq/oWwI0kEmxYkT6oqCBYRi3dnQ=";
hash = "sha256-yD9GZnx4OvzI4Jo5BJPRsZEDeUg9pUxg1cxfCCiS6AU=";
};
vendorHash = "sha256-oXf+aZxf0jBiOqYzD9mTjYND0LjjQeHIZXIrqcEuyYk=";
vendorHash = "sha256-xmo82HgPRnrR53zKfKPadmut/vuNEM9jqbnqj0cTAuM=";
subPackages = [ "weed" ];
@ -38,8 +38,13 @@ buildGoModule rec {
export GODEBUG=http2client=0
'';
# There are no tests.
doCheck = false;
preCheck = ''
# Test all targets.
unset subPackages
# Remove unmaintained tests ahd those that require additional services.
rm -rf unmaintained test/s3
'';
passthru.tests.version = testers.testVersion {
package = seaweedfs;

View File

@ -0,0 +1,54 @@
{ lib
, buildGoModule
, fetchFromGitHub
, pkg-config
, wrapGAppsHook4
, tailscale
, gtk4
, gobject-introspection
, libadwaita
}:
buildGoModule rec {
pname = "trayscale";
version = "0.9.6";
src = fetchFromGitHub {
owner = "DeedleFake";
repo = "trayscale";
rev = "v${version}";
hash = "sha256-qMQ0WykBHXyXZ6GkDM5l5ki27X1h8rl3sUBooqF3234=";
};
vendorHash = "sha256-K1Za2j4kUtsktFi9DjZYXrtfsWF1r6vIbyocLUrj5IU=";
subPackages = [ "cmd/trayscale" ];
ldflags = [
"-s"
"-w"
"-X=deedles.dev/trayscale/internal/version.version=${version}"
];
nativeBuildInputs = [ pkg-config gobject-introspection wrapGAppsHook4 ];
buildInputs = [ gtk4 libadwaita ];
# there are no actual tests, and it takes 20 minutes to rebuild
doCheck = false;
postInstall = ''
sh ./dist.sh install $out
glib-compile-schemas $out/share/glib-2.0/schemas
'';
preFixup = ''
gappsWrapperArgs+=(--prefix PATH : "${tailscale}/bin")
'';
meta = with lib; {
description = "An unofficial GUI wrapper around the Tailscale CLI client";
homepage = "https://github.com/DeedleFake/trayscale";
license = licenses.mit;
maintainers = with maintainers; [ k900 ];
};
}

View File

@ -5,12 +5,12 @@
}: stdenv.mkDerivation rec {
pname = "vdr";
version = "2.6.3";
version = "2.6.4";
src = fetchgit {
url = "git://git.tvdr.de/vdr.git";
rev = version;
sha256 = "sha256-SDaNk8tDaO70+V7sozMGTCzpnOqa52xdEQPURkyuTt8=";
sha256 = "sha256-QCq+IxulrxDX+fzI+IHywboemJQnUfZrHRzP6B9qfvk=";
};
enableParallelBuilding = true;

View File

@ -26,13 +26,13 @@ lib.checkListOfEnum "${pname}: theme tweaks" validTweaks tweaks
stdenvNoCC.mkDerivation
rec {
inherit pname;
version = "2024-04-08";
version = "2023-04-08";
src = fetchFromGitHub {
repo = "Orchis-theme";
owner = "vinceliuice";
rev = version;
hash = "sha256-1Yatb5BeRLu4kWm+EAiRYPvGxRNeIo63SAN3/Dp7Na8=";
hash = "sha256-/X4Hr2M/7pf6JxTUvPoG5VkQd+rweEPeTNe9glSLh78=";
};
nativeBuildInputs = [ gtk3 sassc ];

View File

@ -0,0 +1,47 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, ninja
, useFloat ? false
}:
stdenv.mkDerivation rec {
pname = "fuzzylite";
version = "6.0";
src = fetchFromGitHub {
owner = "fuzzylite";
repo = "fuzzylite";
rev = "v${version}";
hash = "sha256-i1txeUE/ZSRggwLDtpS8dd4uuZfHX9w3zRH0gBgGXnk=";
};
sourceRoot = "source/fuzzylite";
outputs = [ "out" "dev" ];
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace "-Werror" "-Wno-error"
'';
nativeBuildInputs = [
cmake
ninja
];
cmakeFlags = [
"-DFL_BUILD_TESTS:BOOL=OFF"
"-DFL_USE_FLOAT:BOOL=${if useFloat then "ON" else "OFF"}"
];
meta = with lib; {
description = "A fuzzy logic control library in C++";
homepage = "https://fuzzylite.com";
changelog = "https://github.com/fuzzylite/fuzzylite/${src.rev}/release/CHANGELOG";
license = licenses.gpl3Only;
maintainers = with maintainers; [ azahi ];
platforms = platforms.all;
};
}

View File

@ -3,7 +3,6 @@
, fetchFromGitHub
, pythonOlder
, packaging
, pytest
, cython
, numpy
, scipy
@ -14,7 +13,8 @@
buildPythonPackage rec {
pname = "dipy";
version = "1.5.0";
version = "1.7.0";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -22,10 +22,14 @@ buildPythonPackage rec {
owner = "dipy";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-kJ8JbnNpjTqGJXwwMTqZdgeN8fOEuxarycunDCRLB74=";
hash = "sha256-sfqCK2r9Io1gDDHL9s9R37J0h9KcOQML3B2zJx2+QuA=";
};
nativeBuildInputs = [ cython packaging ];
nativeBuildInputs = [
cython
packaging
];
propagatedBuildInputs = [
numpy
scipy
@ -34,8 +38,6 @@ buildPythonPackage rec {
tqdm
];
nativeCheckInputs = [ pytest ];
# disable tests for now due to:
# - some tests require data download (see dipy/dipy/issues/2092);
# - running the tests manually causes a multiprocessing hang;
@ -64,6 +66,7 @@ buildPythonPackage rec {
meta = with lib; {
homepage = "https://dipy.org/";
description = "Diffusion imaging toolkit for Python";
changelog = "https://github.com/dipy/dipy/blob/${version}/Changelog";
license = licenses.bsd3;
maintainers = with maintainers; [ bcdarwin ];
};

View File

@ -4,6 +4,7 @@
, diff-match-patch
, django
, fetchFromGitHub
, psycopg2
, python
, pythonOlder
, pytz
@ -12,7 +13,7 @@
buildPythonPackage rec {
pname = "django-import-export";
version = "3.1.0";
version = "3.2.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -21,7 +22,7 @@ buildPythonPackage rec {
owner = "django-import-export";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-GvauDAkQd8dVCgon8nC7FPW4yLM7kS72g8bOBwt9RuY=";
hash = "sha256-ws9gUPCr5nM8HGbCt9+6IFjLgAKiCMQRkY/yfIb2mng=";
};
propagatedBuildInputs = [
@ -32,6 +33,7 @@ buildPythonPackage rec {
nativeCheckInputs = [
chardet
psycopg2
pytz
];

View File

@ -12,14 +12,16 @@
buildPythonPackage rec {
pname = "django-model-utils";
version = "4.2.0";
version = "4.3.1";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "jazzband";
repo = "django-model-utils";
rev = version;
hash = "sha256-TLqvpP/ZaGGFdqnN+UHbhXv1K1YVYTYBkCiWCjYrFh8=";
rev = "refs/tags/${version}";
hash = "sha256-p3/JO6wNwZPYX7MIgMj/0caHt5s+uL51Sxa28/VITxo=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
@ -47,6 +49,7 @@ buildPythonPackage rec {
meta = with lib; {
homepage = "https://github.com/jazzband/django-model-utils";
description = "Django model mixins and utilities";
changelog = "https://github.com/jazzband/django-model-utils/blob/${version}/CHANGES.rst";
license = licenses.bsd3;
maintainers = with maintainers; [ SuperSandro2000 ];
};

View File

@ -27,7 +27,7 @@
buildPythonPackage rec {
pname = "maestral";
version = "1.7.1";
version = "1.7.2";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -36,7 +36,7 @@ buildPythonPackage rec {
owner = "SamSchott";
repo = "maestral";
rev = "refs/tags/v${version}";
hash = "sha256-WYLYDDXxO5ot30oSBkxgJszn8nyAQh5XtCyywBz56J4=";
hash = "sha256-XyyEAeEQEc7MhGyXBBLZDqzBL7K+0dMMCKhr0iENvog=";
};
propagatedBuildInputs = [

View File

@ -0,0 +1,41 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, pytestCheckHook
, numpy
}:
buildPythonPackage rec {
pname = "sipyco";
version = "1.4";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "m-labs";
repo = "sipyco";
rev = "refs/tags/v${version}";
hash = "sha256-sEYWtp11piUIa8YyuTOdFIIJ2GfcrUb+HEzPVKr4hW8=";
};
propagatedBuildInputs = [
numpy
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"sipyco"
];
meta = with lib; {
description = "Simple Python Communications - used by the ARTIQ experimental control package";
homepage = "https://github.com/m-labs/sipyco";
changelog = "https://github.com/m-labs/sipyco/releases/tag/v${version}";
license = licenses.lgpl3Plus;
maintainers = with maintainers; [ charlesbaynham ];
};
}

View File

@ -1,14 +1,20 @@
GEM
remote: https://rubygems.org/
specs:
cbor-diag (0.5.6)
json
cbor-canonical (0.1.2)
cbor-deterministic (0.1.3)
cbor-diag (0.8.4)
cbor-canonical
cbor-deterministic
cbor-packed
json_pure
neatjson
treetop (~> 1)
json (2.2.0)
neatjson (0.9)
cbor-packed (0.1.5)
json_pure (2.6.3)
neatjson (0.10.5)
polyglot (0.3.5)
treetop (1.6.10)
treetop (1.6.12)
polyglot (~> 0.3)
PLATFORMS
@ -18,4 +24,4 @@ DEPENDENCIES
cbor-diag
BUNDLED WITH
2.1.4
2.4.10

View File

@ -10,6 +10,10 @@ bundlerApp {
"cbor2json.rb"
"cbor2pretty.rb"
"cbor2yaml.rb"
"cborseq2diag.rb"
"cborseq2json.rb"
"cborseq2neatjson.rb"
"cborseq2yaml.rb"
"diag2cbor.rb"
"diag2pretty.rb"
"json2cbor.rb"

View File

@ -1,34 +1,64 @@
{
cbor-diag = {
dependencies = ["json" "neatjson" "treetop"];
cbor-canonical = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0pd0k4malg1l7w3ck5glh9w0hrsvknk8rp32vrir74yww1g6yplv";
sha256 = "1fhj51s5d9b9spw096sb0p92bgilw9hrsay383563dh913j2jn11";
type = "gem";
};
version = "0.5.6";
version = "0.1.2";
};
json = {
cbor-deterministic = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0sx97bm9by389rbzv8r1f43h06xcz8vwi3h5jv074gvparql7lcx";
sha256 = "1w1mg4mn1dhlxlbijxpzja8m8ggrjs0hzkzvnaazw9zm1ji6dpba";
type = "gem";
};
version = "2.2.0";
version = "0.1.3";
};
cbor-diag = {
dependencies = ["cbor-canonical" "cbor-deterministic" "cbor-packed" "json_pure" "neatjson" "treetop"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0k57gminnhz5fmnclrixdp1f2mg8d6zjnbbf67glaqpxf08a99j6";
type = "gem";
};
version = "0.8.4";
};
cbor-packed = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1dijyj7rivi39h34f32fx7k4xvngldf569i0372n1z6w01nv761l";
type = "gem";
};
version = "0.1.5";
};
json_pure = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0kn736pb52j8b9xxq6l8wqp2chs74aa14vfnp0rijjn086m8b4f3";
type = "gem";
};
version = "2.6.3";
};
neatjson = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0fa2v7b6433j0iqh5iq9r71v7a5xabgjvqwsbl21vcsac7vf3ncw";
sha256 = "0wm1lq8yl6rzysh3wg6fa55w5534k6ppiz0qb7jyvdy582mk5i0s";
type = "gem";
};
version = "0.9";
version = "0.10.5";
};
polyglot = {
groups = ["default"];
@ -46,9 +76,9 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0g31pijhnv7z960sd09lckmw9h8rs3wmc8g4ihmppszxqm99zpv7";
sha256 = "0adc8qblz8ii668r3rksjx83p675iryh52rvdvysimx2hkbasj7d";
type = "gem";
};
version = "1.6.10";
version = "1.6.12";
};
}

View File

@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, cmake
, directx-shader-compiler
, libGLU
@ -17,23 +16,20 @@
stdenv.mkDerivation rec {
pname = "rbdoom-3-bfg";
version = "1.4.0";
version = "1.5.0";
src = fetchFromGitHub {
owner = "RobertBeckebans";
repo = pname;
rev = "v${version}";
hash = "sha256-r/dvTirgFXdBJ+Gjl6zpHoGCTPoo0tRmOCV9oCdnltI=";
hash = "sha256-jO1+Evk17JUjvYl6QOVAn+pWwr/G8gWMae5CwMhgYZI=";
fetchSubmodules = true;
};
patches = [
(fetchpatch {
name = "remove-jpeg_internals-define.patch";
url = "https://github.com/RobertBeckebans/RBDOOM-3-BFG/commit/de6ab9d31ffcd6eba26df69f8c77da38a0ab4722.diff";
hash = "sha256-3XbWmQtY/8a90IqDtN5TNT5EOa+i5mFOH+H9tuZqTmU=";
})
];
postPatch = ''
substituteInPlace neo/extern/nvrhi/tools/shaderCompiler/CMakeLists.txt \
--replace "AppleClang" "Clang"
'';
nativeBuildInputs = [
cmake

View File

@ -8,6 +8,7 @@
, boost
, cmake
, ffmpeg
, fuzzylite
, innoextract
, luajit
, minizip
@ -15,7 +16,9 @@
, pkg-config
, python3
, qtbase
, qttools
, tbb
, unshield
, wrapQtAppsHook
, zlib
, testers
@ -24,21 +27,16 @@
stdenv.mkDerivation rec {
pname = "vcmi";
version = "1.1.1";
version = "1.2.1";
src = fetchFromGitHub {
owner = "vcmi";
repo = "vcmi";
rev = version;
fetchSubmodules = true;
hash = "sha256-/BHpAXOCLi6d0+/uE79g8p6YO1swizItAwVlPVf/nkQ=";
hash = "sha256-F1g3ric23jKetl5aBG5NRpT4LnGXhBKZmGp2hg6Io9s=";
};
postPatch = ''
substituteInPlace Version.cpp.in \
--subst-var-by GIT_SHA1 "0000000";
'';
nativeBuildInputs = [
cmake
ninja
@ -54,21 +52,24 @@ stdenv.mkDerivation rec {
SDL2_ttf
boost
ffmpeg
fuzzylite
luajit
minizip
qtbase
qttools
tbb
zlib
];
cmakeFlags = [
"-DENABLE_TEST:BOOL=NO"
"-DENABLE_PCH:BOOL=NO"
# Make libvcmi.so discoverable in a non-standard location.
"-DCMAKE_INSTALL_RPATH:STRING=${placeholder "out"}/lib/vcmi"
# Upstream assumes relative value while Nixpkgs passes absolute.
# Both should be allowed: https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
# Meanwhile work it around by passing a relative value.
"-DENABLE_LUA:BOOL=ON"
"-DENABLE_ERM:BOOL=ON"
"-DENABLE_GITVERSION:BOOL=OFF"
"-DENABLE_PCH:BOOL=OFF"
"-DENABLE_TEST:BOOL=OFF"
"-DFORCE_BUNDLED_MINIZIP:BOOL=OFF"
"-DFORCE_BUNDLED_FL:BOOL=OFF"
"-DCMAKE_INSTALL_RPATH:STRING=$out/lib/vcmi"
"-DCMAKE_INSTALL_BINDIR:STRING=bin"
"-DCMAKE_INSTALL_LIBDIR:STRING=lib"
"-DCMAKE_INSTALL_DATAROOTDIR:STRING=share"
@ -76,9 +77,11 @@ stdenv.mkDerivation rec {
postFixup = ''
wrapProgram $out/bin/vcmibuilder \
--prefix PATH : "${lib.makeBinPath [ innoextract ]}"
--prefix PATH : "${lib.makeBinPath [ innoextract ffmpeg unshield ]}"
'';
doCheck = true;
passthru.tests.version = testers.testVersion {
package = vcmi;
command = ''
@ -88,12 +91,12 @@ stdenv.mkDerivation rec {
};
meta = with lib; {
description = "Open-source engine for Heroes of Might and Magic III";
description = "An open-source engine for Heroes of Might and Magic III";
homepage = "https://vcmi.eu";
changelog = "https://github.com/vcmi/vcmi/blob/${src.rev}/ChangeLog";
license = with licenses; [ gpl2Only cc-by-sa-40 ];
maintainers = with maintainers; [ azahi ];
platforms = platforms.linux;
mainProgram = "vcmiclient";
mainProgram = "vcmilauncher";
};
}

View File

@ -16,16 +16,16 @@
buildGoModule rec {
pname = "evcc";
version = "0.116.6";
version = "0.116.7";
src = fetchFromGitHub {
owner = "evcc-io";
repo = pname;
rev = version;
hash = "sha256-i/6/kLgpCgrFhIsLhufHAcBa+VRAVXn9ichoNdnDLfY=";
hash = "sha256-+HyCQGX5apv4eXsqFykoRBxTpbEx5v1zXft9UCs7kVU=";
};
vendorHash = "sha256-K6d6C5m+hzKzpWYsYZHwNXBf5vET6SP/dtA+xTfQVgk=";
vendorHash = "sha256-+KygZ2aa6JB8uZLrDjoDhxvLHstMmfaV+loVFtEG3Xo=";
npmDeps = fetchNpmDeps {
inherit src;

View File

@ -1,14 +1,22 @@
{ lib, stdenv, buildGoModule, fetchFromGitHub, systemd, nixosTests }:
{ lib
, buildGoModule
, fetchFromGitHub
, grafana-agent
, nixosTests
, stdenv
, systemd
, testers
}:
buildGoModule rec {
pname = "grafana-agent";
version = "0.33.0";
version = "0.33.1";
src = fetchFromGitHub {
rev = "v${version}";
owner = "grafana";
repo = "agent";
sha256 = "sha256-Goj/IySGDMa8pNwU/4oXIlGqMysghNj0EjnQZtN6v1E=";
sha256 = "sha256-iE7LNm0Nur0eo7AjTDl9sq3oxm6SdIUoSfT8h2C4jOA=";
};
vendorHash = "sha256-NqsUeTxTYQrVMJ4LYA5NC8A/PpVuy6fnKptxK+ieZAU=";
@ -50,7 +58,14 @@ buildGoModule rec {
$out/bin/grafana-agent
'';
passthru.tests.grafana-agent = nixosTests.grafana-agent;
passthru.tests = {
inherit (nixosTests) grafana-agent;
version = testers.testVersion {
inherit version;
command = "${lib.getExe grafana-agent} --version";
package = grafana-agent;
};
};
meta = with lib; {
description = "A lightweight subset of Prometheus and more, optimized for Grafana Cloud";

View File

@ -390,6 +390,55 @@ let
# -----
else { valid = "yes"; });
# The meta attribute is passed in the resulting attribute set,
# but it's not part of the actual derivation, i.e., it's not
# passed to the builder and is not a dependency. But since we
# include it in the result, it *is* available to nix-env for queries.
# Example:
# meta = checkMeta.commonMeta { inherit validity attrs pos references; };
# validity = checkMeta.assertValidity { inherit meta attrs; };
commonMeta = { validity, attrs, pos ? null, references ? [ ] }:
let
outputs = attrs.outputs or [ "out" ];
in
{
# `name` derivation attribute includes cross-compilation cruft,
# is under assert, and is sanitized.
# Let's have a clean always accessible version here.
name = attrs.name or "${attrs.pname}-${attrs.version}";
# If the packager hasn't specified `outputsToInstall`, choose a default,
# which is the name of `p.bin or p.out or p` along with `p.man` when
# present.
#
# If the packager has specified it, it will be overridden below in
# `// meta`.
#
# Note: This default probably shouldn't be globally configurable.
# Services and users should specify outputs explicitly,
# unless they are comfortable with this default.
outputsToInstall =
let
hasOutput = out: builtins.elem out outputs;
in
[ (lib.findFirst hasOutput null ([ "bin" "out" ] ++ outputs)) ]
++ lib.optional (hasOutput "man") "man";
}
// attrs.meta or { }
# Fill `meta.position` to identify the source location of the package.
// lib.optionalAttrs (pos != null) {
position = pos.file + ":" + toString pos.line;
} // {
# Expose the result of the checks for everyone to see.
inherit (validity) unfree broken unsupported insecure;
available = validity.valid != "no"
&& (if config.checkMetaRecursively or false
then lib.all (d: d.meta.available or true) references
else true);
};
assertValidity = { meta, attrs }: let
validity = checkValidity attrs;
in validity // {
@ -401,6 +450,7 @@ let
warn = handleEvalWarning { inherit meta attrs; } { inherit (validity) reason errormsg; };
yes = true;
}.${validity.valid};
};
in assertValidity
in { inherit assertValidity commonMeta; }

View File

@ -501,46 +501,8 @@ else let
lib.mapNullable unsafeDerivationToUntrackedOutpath attrs.allowedRequisites;
};
validity = checkMeta { inherit meta attrs; };
# The meta attribute is passed in the resulting attribute set,
# but it's not part of the actual derivation, i.e., it's not
# passed to the builder and is not a dependency. But since we
# include it in the result, it *is* available to nix-env for queries.
meta = {
# `name` above includes cross-compilation cruft,
# is under assert, and is sanitized.
# Let's have a clean always accessible version here.
name = attrs.name or "${attrs.pname}-${attrs.version}";
# If the packager hasn't specified `outputsToInstall`, choose a default,
# which is the name of `p.bin or p.out or p` along with `p.man` when
# present.
#
# If the packager has specified it, it will be overridden below in
# `// meta`.
#
# Note: This default probably shouldn't be globally configurable.
# Services and users should specify outputs explicitly,
# unless they are comfortable with this default.
outputsToInstall =
let
hasOutput = out: builtins.elem out outputs;
in [( lib.findFirst hasOutput null (["bin" "out"] ++ outputs) )]
++ lib.optional (hasOutput "man") "man";
}
// attrs.meta or {}
# Fill `meta.position` to identify the source location of the package.
// lib.optionalAttrs (pos != null) {
position = pos.file + ":" + toString pos.line;
} // {
# Expose the result of the checks for everyone to see.
inherit (validity) unfree broken unsupported insecure;
available = validity.valid != "no"
&& (if config.checkMetaRecursively or false
then lib.all (d: d.meta.available or true) references
else true);
};
meta = checkMeta.commonMeta { inherit validity attrs pos references; };
validity = checkMeta.assertValidity { inherit meta attrs; };
checkedEnv =
let
@ -591,7 +553,8 @@ lib.extendDerivation
disallowedRequisites = [ ];
});
inherit meta passthru overrideAttrs;
inherit passthru overrideAttrs;
inherit meta;
} //
# Pass through extra attributes that are not inputs, but
# should be made available to Nix expressions using the

View File

@ -1,12 +1,14 @@
{ lib
, python3
, fetchurl
, fetchFromGitHub
, fetchYarnDeps
, zlib
, mkYarnModules
, nixosTests
, pkgs
, postgresqlTestHook
, postgresql
, yarn
, fixup_yarn_lock
, nodejs
, server-mode ? true
}:
@ -14,24 +16,21 @@ let
pname = "pgadmin";
version = "7.0";
src = fetchurl {
url = "https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v${version}/source/pgadmin4-${version}.tar.gz";
hash = "sha256-iYsICW9aTG47eWB0g3MlWo5F1BStQLiM84+qxFq7G70=";
src = fetchFromGitHub {
owner = "pgadmin-org";
repo = "pgadmin4";
rev = "REL-${lib.versions.major version}_${lib.versions.minor version}";
hash = "sha256-m2mO37qNjrznpdKeFHq6yE8cZx4sHBvPB2RHUtS1Uis=";
};
yarnDeps = mkYarnModules {
pname = "${pname}-yarn-deps";
inherit version;
packageJSON = ./package.json;
yarnLock = ./yarn.lock;
yarnNix = ./yarn.nix;
};
# keep the scope, as it is used throughout the derivation and tests
# this also makes potential future overrides easier
pythonPackages = python3.pkgs.overrideScope (final: prev: rec {
});
pythonPackages = python3.pkgs.overrideScope (final: prev: rec { });
offlineCache = fetchYarnDeps {
yarnLock = src + "/web/yarn.lock";
hash = "sha256-cnn7CJcnT+TUeeZoeJVX3bO85vuJmVrO7CPR/CYTCS0=";
};
in
@ -81,14 +80,12 @@ pythonPackages.buildPythonApplication rec {
echo Creating required directories...
mkdir -p pip-build/pgadmin4/docs
# build the documentation
echo Building the documentation
cd docs/en_US
sphinx-build -W -b html -d _build/doctrees . _build/html
# Build the clean tree
cd ../../web
cp -r * ../pip-build/pgadmin4
cd ../docs
cd ..
cp -r * ../pip-build/pgadmin4/docs
for DIR in `ls -d ??_??/`
do
@ -99,7 +96,20 @@ pythonPackages.buildPythonApplication rec {
done
cd ../
cp -r ${yarnDeps}/* pip-build/pgadmin4
# mkYarnModules and mkYarnPackage have problems running the webpacker
echo Building the web frontend...
cd web
export HOME="$TMPDIR"
yarn config --offline set yarn-offline-mirror "${offlineCache}"
fixup_yarn_lock yarn.lock
yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
patchShebangs node_modules/
yarn webpacker
cp -r * ../pip-build/pgadmin4
# save some disk space
rm -rf ../pip-build/pgadmin4/node_modules
cd ..
echo Creating distro config...
echo HELP_PATH = \'../../docs/en_US/_build/html/\' > pip-build/pgadmin4/config_distro.py
@ -115,7 +125,7 @@ pythonPackages.buildPythonApplication rec {
cp -v ../pkg/pip/setup_pip.py setup.py
'';
nativeBuildInputs = with pythonPackages; [ cython pip sphinx ];
nativeBuildInputs = with pythonPackages; [ cython pip sphinx yarn fixup_yarn_lock nodejs ];
buildInputs = [
zlib
pythonPackages.wheel

View File

@ -1,195 +0,0 @@
{
"//": [
"IMPORTANT:",
"If runtime or build time dependencies are changed in this file, the ",
"committer *must* ensure the DEB and RPM package maintainers are informed ",
"as soon as possible."
],
"license": "PostgreSQL",
"devDependencies": {
"@babel/core": "^7.10.2",
"@babel/eslint-parser": "^7.21.3",
"@babel/eslint-plugin": "^7.17.7",
"@babel/plugin-proposal-object-rest-spread": "^7.10.1",
"@babel/plugin-syntax-jsx": "^7.16.0",
"@babel/preset-env": "^7.10.2",
"@babel/preset-typescript": "^7.8.3",
"@emotion/core": "^10.0.14",
"@emotion/memoize": "^0.7.5",
"@emotion/react": "^11.1.5",
"@emotion/styled": "^10.0.14",
"@emotion/utils": "^1.0.0",
"@svgr/webpack": "^6.2.1",
"@typescript-eslint/eslint-plugin": "^5.57.0",
"@typescript-eslint/parser": "^5.57.0",
"@wojtekmaj/enzyme-adapter-react-17": "^0.8.0",
"autoprefixer": "^10.2.4",
"axios-mock-adapter": "^1.17.0",
"babel-loader": "^8.1.0",
"browserify": "^17.0.0",
"buffer": "^6.0.3",
"copy-webpack-plugin": "^7.0.0",
"core-js": "^3.2.1",
"cross-env": "^7.0.3",
"css-loader": "^6.7.2",
"css-minimizer-webpack-plugin": "^3.0.0",
"enzyme": "^3.11.0",
"eslint": "^8.37.0",
"eslint-plugin-react": "^7.20.5",
"eslint-plugin-react-hooks": "^4.3.0",
"exports-loader": "^2.0.0",
"html-react-parser": "^1.2.7",
"image-minimizer-webpack-plugin": "^2.2.0",
"imagemin-mozjpeg": "^10.0.0",
"imagemin-optipng": "^8.0.0",
"imagemin-pngquant": "^9.0.2",
"imports-loader": "^4.0.1",
"is-docker": "^2.1.1",
"istanbul-instrumenter-loader": "^3.0.1",
"jasmine-core": "3.10.1",
"jasmine-enzyme": "^7.1.2",
"karma": "^6.3.15",
"karma-babel-preprocessor": "^8.0.0",
"karma-browserify": "^8.0.0",
"karma-chrome-launcher": "^3.1.0",
"karma-jasmine": "^4.0.1",
"karma-jasmine-html-reporter": "^1.4.0",
"karma-requirejs": "~1.1.0",
"karma-source-map-support": "^1.4.0",
"karma-sourcemap-loader": "^0.4.0",
"karma-webpack": "^5.0.0",
"loader-utils": "^3.2.1",
"mini-css-extract-plugin": "^1.3.5",
"postcss-loader": "^7.1.0",
"process": "^0.11.10",
"prop-types": "^15.7.2",
"resize-observer-polyfill": "^1.5.1",
"sass": "^1.24.4",
"sass-loader": "^11.0.0",
"sass-resources-loader": "^2.2.1",
"shim-loader": "^1.0.1",
"style-loader": "^3.3.2",
"stylis": "^4.0.7",
"svgo": "^2.7.0",
"svgo-loader": "^2.2.0",
"terser-webpack-plugin": "^5.1.1",
"typescript": "^3.2.2",
"url-loader": "^4.1.1",
"webfonts-loader": "^8.0.1",
"webpack": "^5.76.3",
"webpack-bundle-analyzer": "^4.8.0",
"webpack-cli": "^4.5.0",
"yarn-audit-html": "^4.0.0"
},
"dependencies": {
"@babel/plugin-proposal-class-properties": "^7.10.4",
"@babel/preset-react": "^7.12.13",
"@date-io/core": "^1.3.6",
"@date-io/date-fns": "1.x",
"@emotion/sheet": "^1.0.1",
"@material-ui/core": "4.11.0",
"@material-ui/icons": "^4.11.2",
"@material-ui/lab": "4.0.0-alpha.58",
"@material-ui/pickers": "^3.2.10",
"@projectstorm/react-diagrams": "^6.6.1",
"@simonwep/pickr": "^1.5.1",
"@szhsin/react-menu": "^2.2.0",
"@types/classnames": "^2.2.6",
"@types/react": "^16.7.18",
"@types/react-dom": "^17.0.11",
"ajv": "^8.8.2",
"anti-trojan-source": "^1.4.0",
"aspen-decorations": "^1.0.2",
"axios": "^0.21.1",
"babelify": "~10.0.0",
"bignumber.js": "^9.0.1",
"bootstrap": "^4.3.1",
"brace": "^0.11.1",
"browserfs": "^1.4.3",
"chart.js": "^3.0.0",
"chartjs-plugin-zoom": "^1.2.1",
"classnames": "^2.2.6",
"closest": "^0.0.1",
"codemirror": "^5.59.2",
"convert-units": "^2.3.4",
"cssnano": "^5.0.2",
"dagre": "^0.8.4",
"date-fns": "^2.24.0",
"diff-arrays-of-objects": "^1.1.8",
"html2canvas": "^1.0.0-rc.7",
"immutability-helper": "^3.0.0",
"insert-if": "^1.1.0",
"ip-address": "^7.1.0",
"jquery": "^3.6.0",
"jquery-contextmenu": "^2.9.2",
"json-bignumber": "^1.0.1",
"jsoneditor": "^9.5.4",
"karma-coverage": "^2.0.3",
"leaflet": "^1.5.1",
"lodash": "4.*",
"ml-matrix": "^6.5.0",
"moment": "^2.29.4",
"moment-timezone": "^0.5.34",
"mousetrap": "^1.6.3",
"notificar": "^1.0.1",
"notistack": "^1.0.10",
"path-fx": "^2.0.0",
"pathfinding": "^0.4.18",
"paths-js": "^0.4.9",
"popper.js": "^1.16.1",
"postcss": "^8.2.15",
"raf": "^3.4.1",
"rc-dock": "^3.2.9",
"react": "^17.0.1",
"react-aspen": "^1.1.0",
"react-checkbox-tree": "^1.7.2",
"react-data-grid": "https://github.com/pgadmin-org/react-data-grid.git#200d2f5e02de694e3e9ffbe177c279bc40240fb8",
"react-dnd": "^16.0.1",
"react-dnd-html5-backend": "^16.0.1",
"react-dom": "^17.0.1",
"react-draggable": "^4.4.4",
"react-dropzone": "^14.2.1",
"react-leaflet": "^3.2.2",
"react-resize-detector": "^8.0.3",
"react-rnd": "^10.3.5",
"react-router-dom": "^6.2.2",
"react-select": "^5.7.2",
"react-table": "^7.6.3",
"react-timer-hook": "^3.0.5",
"react-virtualized-auto-sizer": "^1.0.6",
"react-window": "^1.8.5",
"snapsvg-cjs": "^0.0.6",
"socket.io-client": "^4.5.0",
"split.js": "^1.5.10",
"styled-components": "^5.2.1",
"tempusdominus-core": "^5.19.3",
"uplot": "^1.6.24",
"uplot-react": "^1.1.4",
"valid-filename": "^2.0.1",
"webcabin-docker": "https://github.com/pgadmin-org/wcdocker#460fc6d90ba170bb177faaa8277f5fbb8279522a",
"wkx": "^0.5.0",
"xterm": "^4.11.0",
"xterm-addon-fit": "^0.5.0",
"xterm-addon-search": "^0.8.0",
"xterm-addon-web-links": "^0.4.0"
},
"scripts": {
"linter": "yarn eslint --no-eslintrc -c .eslintrc.js --ext .js --ext .jsx --ext .ts --ext .tsx .",
"webpacker": "yarn run webpack --config webpack.config.js --progress",
"webpacker:watch": "yarn run webpack --config webpack.config.js --progress --watch",
"bundle:watch": "yarn run linter && yarn run webpacker:watch",
"bundle:dev": "yarn run linter && yarn run webpacker",
"bundle:analyze": "cross-env NODE_ENV=production ANALYZE=true yarn run bundle:dev",
"bundle": "cross-env NODE_ENV=production NODE_OPTIONS=--max-old-space-size=8192 yarn run bundle:dev",
"test:karma-once": "yarn run linter && yarn run karma start --single-run",
"test:karma": "yarn run linter && yarn run karma start",
"test:karma-coverage": "yarn run test:karma-once --reporters coverage,progress",
"test:feature": "yarn run bundle && python regression/runtests.py --pkg feature_tests",
"test": "yarn run test:karma-once && yarn run bundle && python regression/runtests.py",
"pep8": "pycodestyle --config=../.pycodestyle ../docs && pycodestyle --config=../.pycodestyle ../pkg && pycodestyle --config=../.pycodestyle ../tools && pycodestyle --config=../.pycodestyle ../web",
"auditjs-html": "yarn audit --json | yarn run yarn-audit-html --output ../auditjs.html",
"auditjs": "yarn audit --groups dependencies",
"auditpy": "safety check --full-report -i 51668 -i 52495",
"audit": "yarn run auditjs && yarn run auditpy"
}
}

View File

@ -1,27 +0,0 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl wget jq yarn2nix yarn common-updater-scripts
set -eu -o pipefail
scriptDir=$(cd "${BASH_SOURCE[0]%/*}" && pwd)
nixpkgs=$(realpath "$scriptDir"/../../../..)
newest_version="$(curl -s https://www.pgadmin.org/versions.json | jq -r .pgadmin4.version)"
old_version=$(nix-instantiate --eval -E "(import \"$nixpkgs\" { config = {}; overlays = []; }).pgadmin4.version" | tr -d '"')
url="https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v${newest_version}/source/pgadmin4-${newest_version}.tar.gz"
if [[ $newest_version == $old_version ]]; then
echo "Already at latest version $newest_version"
exit 0
fi
echo "New version: $newest_version"
pushd $(mktemp -d --suffix=-pgadmin4-updater)
wget $url
tar -xzf "pgadmin4-$newest_version.tar.gz"
cd "pgadmin4-$newest_version/web"
yarn2nix > yarn.nix
cp yarn.nix yarn.lock package.json "$nixpkgs/pkgs/tools/admin/pgadmin/"
popd
update-source-version pgadmin4 "$newest_version" --print-changes

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -22,13 +22,13 @@
stdenv.mkDerivation rec {
name = "${pname}${lib.optionalString withGnome "-gnome"}-${version}";
pname = "NetworkManager-l2tp";
version = "1.20.4";
version = "1.20.10";
src = fetchFromGitHub {
owner = "nm-l2tp";
repo = "network-manager-l2tp";
rev = version;
sha256 = "VoqPjMQILBYemRE5VD/XwhWi9zL9QxxHZJ2JKtGglFo=";
hash = "sha256-EfWvh4uSzWFadZAHTqsKa3un2FQ6WUbHLoHo9gSS7bE=";
};
patches = [

View File

@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchurl
, fig2dev
, gettext
, ghostscript
, guile
@ -10,7 +11,6 @@
, makeWrapper
, pkg-config
, ploticus
, fig2dev
, enableEmacs ? false, emacs
, enableLout ? true, lout
, enableTex ? true, tex
@ -18,20 +18,22 @@
let
inherit (lib) optional;
in stdenv.mkDerivation rec{
in stdenv.mkDerivation (finalAttrs: {
pname = "skribilo";
version = "0.9.5";
version = "0.10.0";
src = fetchurl {
url = "http://download.savannah.nongnu.org/releases/skribilo/${pname}-${version}.tar.gz";
sha256 = "sha256-AIJqIcRjT7C0EO6J60gGjERdgAglh0ZU49U9XKPwvwk=";
url = "http://download.savannah.nongnu.org/releases/skribilo/skribilo-${finalAttrs.version}.tar.gz";
hash = "sha256-jP9I7hds7f1QMmSaNJpGlSvqUOwGcg+CnBzMopIS9Q4=";
};
nativeBuildInputs = [
pkg-config
makeWrapper
pkg-config
];
buildInputs = [
fig2dev
gettext
ghostscript
guile
@ -39,7 +41,6 @@ in stdenv.mkDerivation rec{
guile-reader
imagemagick
ploticus
fig2dev
]
++ optional enableEmacs emacs
++ optional enableLout lout
@ -55,7 +56,7 @@ in stdenv.mkDerivation rec{
--prefix GUILE_LOAD_COMPILED_PATH : "$out/lib/guile/${guileVersion}/site-ccache:$GUILE_LOAD_COMPILED_PATH"
'';
meta = with lib; {
meta = {
homepage = "https://www.nongnu.org/skribilo/";
description = "The Ultimate Document Programming Framework";
longDescription = ''
@ -70,9 +71,8 @@ in stdenv.mkDerivation rec{
"markup-less" format that borrows from Emacs' outline mode and from other
conventions used in emails, Usenet and text.
'';
license = licenses.gpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.unix;
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ AndersonTorres ];
platforms = lib.platforms.unix;
};
}
# TODO: Better Emacs and TeX integration
})

View File

@ -338,9 +338,7 @@ with pkgs;
breakpad = callPackage ../development/misc/breakpad { };
brev-cli = callPackage ../development/misc/brev-cli {
buildGoModule = buildGo118Module; # build fails with 1.19
};
brev-cli = callPackage ../development/misc/brev-cli { };
buf = callPackage ../development/tools/buf { };
@ -4890,6 +4888,8 @@ with pkgs;
fuzzel = callPackage ../applications/misc/fuzzel { };
fuzzylite = callPackage ../development/libraries/fuzzylite { };
flashfocus = callPackage ../misc/flashfocus { };
qt-video-wlr = libsForQt5.callPackage ../applications/misc/qt-video-wlr { };
@ -6841,7 +6841,7 @@ with pkgs;
};
doggo = callPackage ../tools/networking/doggo {
buildGoModule = buildGo118Module; # build fails with 1.19
buildGoModule = buildGo119Module; # build fails with 1.20
};
dosfstools = callPackage ../tools/filesystems/dosfstools { };
@ -12992,6 +12992,8 @@ with pkgs;
tran = callPackage ../tools/networking/tran { };
trayscale = callPackage ../applications/networking/trayscale { };
tpmmanager = libsForQt5.callPackage ../applications/misc/tpmmanager { };
tpm-quote-tools = callPackage ../tools/security/tpm-quote-tools { };
@ -39796,6 +39798,8 @@ with pkgs;
sequelpro = callPackage ../applications/misc/sequelpro { };
serial-studio = libsForQt5.callPackage ../applications/misc/serial-studio { };
snowsql = callPackage ../applications/misc/snowsql { };
snowmachine = python3Packages.callPackage ../applications/misc/snowmachine { };

View File

@ -10951,6 +10951,8 @@ self: super: with self; {
sip_4 = callPackage ../development/python-modules/sip/4.x.nix { };
sipyco = callPackage ../development/python-modules/sipyco { };
siuba = callPackage ../development/python-modules/siuba { };
six = callPackage ../development/python-modules/six { };