Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2021-01-30 06:19:36 +00:00 committed by GitHub
commit 2c6ca9ac8a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 126 additions and 71 deletions

View file

@ -16,5 +16,5 @@ jobs:
-X POST \ -X POST \
-H "Accept: application/vnd.github.v3+json" \ -H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GITHUB_TOKEN" \ -H "Authorization: token $GITHUB_TOKEN" \
-d '{"state": "failure", "target_url": " ", "description": "This failed status will be cleared when ofborg finishes eval.", "context": "Wait for ofborg"}' \ -d '{"state": "pending", "target_url": " ", "description": "This pending status will be cleared when ofborg starts eval.", "context": "Wait for ofborg"}' \
"https://api.github.com/repos/NixOS/nixpkgs/statuses/${{ github.event.pull_request.head.sha }}" "https://api.github.com/repos/NixOS/nixpkgs/statuses/${{ github.event.pull_request.head.sha }}"

View file

@ -3473,6 +3473,12 @@
fingerprint = "7FC7 98AB 390E 1646 ED4D 8F1F 797F 6238 68CD 00C2"; fingerprint = "7FC7 98AB 390E 1646 ED4D 8F1F 797F 6238 68CD 00C2";
}]; }];
}; };
greizgh = {
email = "greizgh@ephax.org";
github = "greizgh";
githubId = 1313624;
name = "greizgh";
};
greydot = { greydot = {
email = "lanablack@amok.cc"; email = "lanablack@amok.cc";
github = "greydot"; github = "greydot";

View file

@ -90,6 +90,7 @@ in {
}; };
startupOptions = mkOption { startupOptions = mkOption {
type = types.listOf types.str;
default = [ default = [
"-Xms${cfg.initialJavaHeapSize}" "-Xms${cfg.initialJavaHeapSize}"
"-Xmx${cfg.maxJavaHeapMemory}" "-Xmx${cfg.maxJavaHeapMemory}"
@ -105,6 +106,7 @@ in {
extraOptions = mkOption { extraOptions = mkOption {
default = [ ]; default = [ ];
type = types.listOf types.str;
example = [ example = [
"-X debug" "-X debug"
"-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5006" "-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5006"

View file

@ -27,6 +27,7 @@ in {
extraGroups = mkOption { extraGroups = mkOption {
default = [ ]; default = [ ];
type = types.listOf types.str;
example = [ "wheel" "docker" ]; example = [ "wheel" "docker" ];
description = '' description = ''
List of extra groups that the "gocd-server" user should be a part of. List of extra groups that the "gocd-server" user should be a part of.
@ -92,6 +93,7 @@ in {
}; };
startupOptions = mkOption { startupOptions = mkOption {
type = types.listOf types.str;
default = [ default = [
"-Xms${cfg.initialJavaHeapSize}" "-Xms${cfg.initialJavaHeapSize}"
"-Xmx${cfg.maxJavaHeapMemory}" "-Xmx${cfg.maxJavaHeapMemory}"
@ -113,6 +115,7 @@ in {
extraOptions = mkOption { extraOptions = mkOption {
default = [ ]; default = [ ];
type = types.listOf types.str;
example = [ example = [
"-X debug" "-X debug"
"-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005" "-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"

View file

@ -6,17 +6,19 @@ let
cfg = config.services.nextcloud; cfg = config.services.nextcloud;
fpm = config.services.phpfpm.pools.nextcloud; fpm = config.services.phpfpm.pools.nextcloud;
phpPackage = phpPackage = pkgs.php74.buildEnv {
let extensions = { enabled, all }:
base = pkgs.php74; (with all;
in enabled
base.buildEnv { ++ [ imagick ] # Always enabled
extensions = { enabled, all }: with all; # Optionally enabled depending on caching settings
enabled ++ [ ++ optional cfg.caching.apcu apcu
apcu redis memcached imagick ++ optional cfg.caching.redis redis
]; ++ optional cfg.caching.memcached memcached
extraConfig = phpOptionsStr; )
}; ++ cfg.phpExtraExtensions all; # Enabled by user
extraConfig = toKeyValue phpOptions;
};
toKeyValue = generators.toKeyValue { toKeyValue = generators.toKeyValue {
mkKeyValue = generators.mkKeyValueDefault {} " = "; mkKeyValue = generators.mkKeyValueDefault {} " = ";
@ -27,7 +29,6 @@ let
post_max_size = cfg.maxUploadSize; post_max_size = cfg.maxUploadSize;
memory_limit = cfg.maxUploadSize; memory_limit = cfg.maxUploadSize;
} // cfg.phpOptions; } // cfg.phpOptions;
phpOptionsStr = toKeyValue phpOptions;
occ = pkgs.writeScriptBin "nextcloud-occ" '' occ = pkgs.writeScriptBin "nextcloud-occ" ''
#! ${pkgs.runtimeShell} #! ${pkgs.runtimeShell}
@ -116,6 +117,21 @@ in {
''; '';
}; };
phpExtraExtensions = mkOption {
type = with types; functionTo (listOf package);
default = all: [];
defaultText = "all: []";
description = ''
Additional PHP extensions to use for nextcloud.
By default, only extensions necessary for a vanilla nextcloud installation are enabled,
but you may choose from the list of available extensions and add further ones.
This is sometimes necessary to be able to install a certain nextcloud app that has additional requirements.
'';
example = literalExample ''
all: [ all.pdlib all.bz2 ]
'';
};
phpOptions = mkOption { phpOptions = mkOption {
type = types.attrsOf types.str; type = types.attrsOf types.str;
default = { default = {
@ -511,7 +527,6 @@ in {
pools.nextcloud = { pools.nextcloud = {
user = "nextcloud"; user = "nextcloud";
group = "nextcloud"; group = "nextcloud";
phpOptions = phpOptionsStr;
phpPackage = phpPackage; phpPackage = phpPackage;
phpEnv = { phpEnv = {
NEXTCLOUD_CONFIG_DIR = "${cfg.home}/config"; NEXTCLOUD_CONFIG_DIR = "${cfg.home}/config";

View file

@ -182,6 +182,17 @@
</para> </para>
</section> </section>
<section xml:id="installing-apps-php-extensions-nextcloud">
<title>Installing Apps and PHP extensions</title>
<para>
Nextcloud apps are installed statefully through the web interface.
Some apps may require extra PHP extensions to be installed.
This can be configured with the <xref linkend="opt-services.nextcloud.phpExtraExtensions" /> setting.
</para>
</section>
<section xml:id="module-services-nextcloud-maintainer-info"> <section xml:id="module-services-nextcloud-maintainer-info">
<title>Maintainer information</title> <title>Maintainer information</title>

View file

@ -42,6 +42,7 @@ in {
enable = true; enable = true;
startAt = "20:00"; startAt = "20:00";
}; };
phpExtraExtensions = all: [ all.bz2 ];
}; };
environment.systemPackages = [ cfg.services.nextcloud.occ ]; environment.systemPackages = [ cfg.services.nextcloud.occ ];

View file

@ -11,12 +11,12 @@
let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; }; let font-droid = nerdfonts.override { fonts = [ "DroidSansMono" ]; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "koreader"; pname = "koreader";
version = "2021.01"; version = "2021.01.1";
src = fetchurl { src = fetchurl {
url = url =
"https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb"; "https://github.com/koreader/koreader/releases/download/v${version}/koreader-${version}-amd64.deb";
sha256 = "0cc7pk27wlvziihggzlrb3wsjmndafa13cy1snqr5x71bb81fv6r"; sha256 = "0kignyia2xrg84bqzsp8rid4c79zg11lhw52z1854jw9v9324pja";
}; };
sourceRoot = "."; sourceRoot = ".";

View file

@ -1,6 +1,6 @@
{ lib, buildGoPackage, fetchFromGitHub, ... }: { lib, buildGoPackage, fetchFromGitHub, ... }:
let version = "0.16.0"; in let version = "0.17.0"; in
buildGoPackage { buildGoPackage {
pname = "kubecfg"; pname = "kubecfg";
@ -10,7 +10,7 @@ buildGoPackage {
owner = "bitnami"; owner = "bitnami";
repo = "kubecfg"; repo = "kubecfg";
rev = "v${version}"; rev = "v${version}";
sha256 = "1ipw7r9fyqbh1bjvk7ifmj3skh799ly90y4ph37r8mqk1wb92rz4"; sha256 = "sha256-/91im204vBS3NjrMOvwTVO6tEBgdpirqJFqCnbIB+iQ=";
}; };
goPackagePath = "github.com/bitnami/kubecfg"; goPackagePath = "github.com/bitnami/kubecfg";

View file

@ -11,9 +11,9 @@
buildGoModule rec { buildGoModule rec {
pname = "minikube"; pname = "minikube";
version = "1.17.0"; version = "1.17.1";
vendorSha256 = "sha256-cA0sgH00XawwaOAGCDbabmBE/+5Y87kThXgPe5zwlro="; vendorSha256 = "1flny2f7n3vqhl9vkwsqxvzl8q3fv8v0h1p0d0qaqp9lgn02q3bh";
doCheck = false; doCheck = false;
@ -21,7 +21,7 @@ buildGoModule rec {
owner = "kubernetes"; owner = "kubernetes";
repo = "minikube"; repo = "minikube";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-IQ/AAr5b8ZOaQKkSrU8JsPxjqAwVmT4Kt3hf3e1dMeA="; sha256 = "1m4kw77j4swwg3vqwmwrys7cq790w4g6y4gvdg33z9n1y9xzqys3";
}; };
nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ]; nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];

View file

@ -342,9 +342,9 @@
"owner": "gitlabhq", "owner": "gitlabhq",
"provider-source-address": "registry.terraform.io/gitlabhq/gitlab", "provider-source-address": "registry.terraform.io/gitlabhq/gitlab",
"repo": "terraform-provider-gitlab", "repo": "terraform-provider-gitlab",
"rev": "v3.1.0", "rev": "v3.4.0",
"sha256": "1an34ckz7lz1k25lkjpbmls55zp9pacr46vjnjjpqx6bx5s95f5g", "sha256": "03k3xjhxw70n00dvwd0fkdshff9hnicrah6rm6zqmksb4mb7wji3",
"version": "3.1.0" "version": "3.4.0"
}, },
"google": { "google": {
"owner": "hashicorp", "owner": "hashicorp",

View file

@ -1,11 +1,10 @@
{ callPackage, fetchurl, dart }: { callPackage, fetchurl, dart }:
let let
mkFlutter = opts: callPackage (import ./flutter.nix opts) { }; mkFlutter = opts: callPackage (import ./flutter.nix opts) { };
getPatches = dir: getPatches = dir:
let files = builtins.attrNames (builtins.readDir dir); let files = builtins.attrNames (builtins.readDir dir);
in map (f: dir + ("/" + f)) files; in map (f: dir + ("/" + f)) files;
version = "1.22.5"; version = "1.22.4";
channel = "stable"; channel = "stable";
filename = "flutter_linux_${version}-${channel}.tar.xz"; filename = "flutter_linux_${version}-${channel}.tar.xz";
in in
@ -14,11 +13,10 @@ in
stable = mkFlutter rec { stable = mkFlutter rec {
inherit dart version; inherit dart version;
pname = "flutter"; pname = "flutter";
patches = getPatches ./patches;
src = fetchurl { src = fetchurl {
url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}"; url = "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}";
sha256 = "1dv5kczcj9npf7xxlanmpc9ijnxa3ap46521cxn14c0i3y9295ja"; sha256 = "0qalgav9drqddcj8lfvl9ddf3325n953pvkmgha47lslg9sa88zw";
}; };
depsSha256 = "0d7vhk6axgqajy2d9ia9lc6awcnz6cc3n04r7hnh7bx4hb0jv0l1"; patches = getPatches ./patches;
}; };
} }

View file

@ -3,7 +3,6 @@
, patches , patches
, dart , dart
, src , src
, depsSha256
}: }:
{ bash { bash
@ -30,18 +29,13 @@
, nspr , nspr
, nss , nss
, systemd , systemd
, callPackage
}: }:
let let
repository = callPackage ./repository.nix {
inherit src pname version dart depsSha256;
};
drvName = "flutter-${version}"; drvName = "flutter-${version}";
flutter = stdenv.mkDerivation { flutter = stdenv.mkDerivation {
name = "${drvName}-unwrapped"; name = "${drvName}-unwrapped";
buildInputs = [ git repository ]; buildInputs = [ git ];
inherit src patches; inherit src patches;
@ -55,12 +49,13 @@ let
export FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools" export FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools"
export SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart" export SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart"
mkdir -p "$out/bin/cache" export SNAPSHOT_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.snapshot"
export SNAPSHOT_PATH="$out/bin/cache/flutter_tools.snapshot" export STAMP_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.stamp"
export STAMP_PATH="$out/bin/cache/flutter_tools.stamp"
export DART_SDK_PATH="${dart}" export DART_SDK_PATH="${dart}"
export PUB_CACHE="${repository}"
HOME=../.. # required for pub upgrade --offline, ~/.pub-cache
# path is relative otherwise it's replaced by /build/flutter
pushd "$FLUTTER_TOOLS_DIR" pushd "$FLUTTER_TOOLS_DIR"
${dart}/bin/pub get --offline ${dart}/bin/pub get --offline
@ -70,6 +65,9 @@ let
${dart}/bin/dart --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH" ${dart}/bin/dart --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH"
echo "$revision" > "$STAMP_PATH" echo "$revision" > "$STAMP_PATH"
echo -n "${version}" > version echo -n "${version}" > version
rm -r bin/cache/{artifacts,dart-sdk,downloads}
rm bin/cache/*.stamp
''; '';
installPhase = '' installPhase = ''

View file

@ -1,24 +0,0 @@
{ lib, stdenv, dart, fetchurl, src, pname, version, depsSha256 }:
stdenv.mkDerivation {
inherit src version;
pname = "${pname}-deps";
buildInputs = [ dart ];
buildPhase = ''
export PUB_CACHE="$out"
export FLUTTER_ROOT="$(pwd)"
export FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools"
pushd "$FLUTTER_TOOLS_DIR"
${dart}/bin/pub get
'';
dontInstall = true;
dontFixup = true;
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = depsSha256;
}

View file

@ -38,5 +38,16 @@ stdenv.mkDerivation rec {
license = licenses.lgpl2Plus; license = licenses.lgpl2Plus;
platforms = platforms.all; platforms = platforms.all;
repositories.git = "git://git.gnupg.org/libgcrypt.git"; repositories.git = "git://git.gnupg.org/libgcrypt.git";
knownVulnerabilities = [
"CVE-2014-3591"
"CVE-2015-0837"
"CVE-2015-7511"
"CVE-2017-0379"
"CVE-2017-7526"
"CVE-2017-9526"
"CVE-2018-0495"
"CVE-2018-6829"
"CVE-2018-12437"
];
}; };
} }

View file

@ -1,13 +1,13 @@
{ lib, stdenv, fetchurl, jre_headless, makeWrapper }: { lib, stdenv, fetchurl, jre_headless, makeWrapper }:
let let
version = "7.3.1"; version = "7.5.2";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "flyway"; pname = "flyway";
inherit version; inherit version;
src = fetchurl { src = fetchurl {
url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz"; url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/${version}/flyway-commandline-${version}.tar.gz";
sha256 = "1qridl42jldwv6wka7l54g354aj9f3vbgzhyz5gdz5vdzs9x93w8"; sha256 = "sha256-oO7k6JOKUm11OYNN+tH/zqF9ucgrsnF4PcphT8+xnS8=";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
dontBuild = true; dontBuild = true;

View file

@ -0,0 +1,29 @@
{ lib, rustPlatform, fetchFromGitHub, pkg-config, openssl }:
rustPlatform.buildRustPackage rec {
pname = "sqlx-cli";
version = "0.4.2";
src = fetchFromGitHub {
owner = "launchbadge";
repo = "sqlx";
rev = "v${version}";
sha256 = "1q6p4qly9qjn333nj72sar6nbyclfdw9i9l6rnimswylj0rr9n27";
};
cargoSha256 = "1393mwx6iccnqrry4ia4prcnnjxhp4zjq1s3gzwzfyzsrqyad54g";
doCheck = false;
cargoBuildFlags = [ "-p sqlx-cli" ];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
meta = with lib; {
description =
"SQLx's associated command-line utility for managing databases, migrations, and enabling offline mode with sqlx::query!() and friends.";
homepage = "https://github.com/launchbadge/sqlx";
license = licenses.asl20;
maintainers = with maintainers; [ greizgh ];
};
}

View file

@ -18,11 +18,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "keycloak"; pname = "keycloak";
version = "11.0.3"; version = "12.0.2";
src = fetchzip { src = fetchzip {
url = "https://downloads.jboss.org/keycloak/${version}/keycloak-${version}.zip"; url = "https://github.com/keycloak/keycloak/releases/download/${version}/keycloak-${version}.zip";
sha256 = "15fw49rhnjky108hh71dkdlafd0ajr1n13vhivqcw6c18zvyan35"; sha256 = "006k6ac00iz61s6hi3wzj6w71mhhv7n00vh82ak4yhwr97jffqbz";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View file

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "shfmt"; pname = "shfmt";
version = "3.2.1"; version = "3.2.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mvdan"; owner = "mvdan";
repo = "sh"; repo = "sh";
rev = "v${version}"; rev = "v${version}";
sha256 = "1kp4ib0a64cc9qylny48ff5q9ciklzx93yhv7fgqhl1v2c7fm1jp"; sha256 = "sha256-ZeyHidw8iHboo/LHTR9E3Sqj8euaRvDaYbPQMdecsrk=";
}; };
vendorSha256 = "1ma7nvyn6ylbi8bd7x900i94pzs877kfy9xh0nf1bbify1vcpd29"; vendorSha256 = "1ma7nvyn6ylbi8bd7x900i94pzs877kfy9xh0nf1bbify1vcpd29";

View file

@ -10839,6 +10839,8 @@ in
jdk = oraclejdk; jdk = oraclejdk;
}; };
sqlx-cli = callPackage ../development/tools/rust/sqlx-cli { };
squeak = callPackage ../development/compilers/squeak { }; squeak = callPackage ../development/compilers/squeak { };
squirrel-sql = callPackage ../development/tools/database/squirrel-sql { squirrel-sql = callPackage ../development/tools/database/squirrel-sql {

View file

@ -150,6 +150,9 @@ in
x86_64-musl = mapTestOnCross lib.systems.examples.musl64 linuxCommon; x86_64-musl = mapTestOnCross lib.systems.examples.musl64 linuxCommon;
ppc64le = mapTestOnCross lib.systems.examples.powernv linuxCommon;
ppc64le-musl = mapTestOnCross lib.systems.examples.musl-power linuxCommon;
android64 = mapTestOnCross lib.systems.examples.aarch64-android-prebuilt linuxCommon; android64 = mapTestOnCross lib.systems.examples.aarch64-android-prebuilt linuxCommon;
android32 = mapTestOnCross lib.systems.examples.armv7a-android-prebuilt linuxCommon; android32 = mapTestOnCross lib.systems.examples.armv7a-android-prebuilt linuxCommon;