diff options
author | Jonathan Ringer <jonringer117@gmail.com> | 2021-11-21 14:40:40 -0800 |
---|---|---|
committer | Jonathan Ringer <jonringer117@gmail.com> | 2021-11-21 14:40:40 -0800 |
commit | 09e494f4c296b29755fb8639e3f751f6aa706a45 (patch) | |
tree | 1f1ff77e46b78c8d91808fef8405361366867dd4 | |
parent | 6b8044795e4b7ff99b96259a4a6b09eb9380703d (diff) | |
parent | b2181bc967053310657128d687e44ec683e7604b (diff) |
Merge remote-tracking branch 'origin/master' into staging-next
Conflicts:
pkgs/applications/window-managers/sway/default.nix
47 files changed, 459 insertions, 196 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index cbed76919bdb..efcb9eb7509f 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -10587,6 +10587,12 @@ githubId = 251028; name = "Shell Turner"; }; + shikanime = { + name = "William Phetsinorath"; + email = "deva.shikanime@protonmail.com"; + github = "shikanime"; + githubId = 22115108; + }; shlevy = { email = "shea@shealevy.com"; github = "shlevy"; @@ -13244,4 +13250,10 @@ github = "sei40kr"; githubId = 11665236; }; + vdot0x23 = { + name = "Victor Büttner"; + email = "nix.victor@0x23.dk"; + github = "vdot0x23"; + githubId = 40716069; + }; } diff --git a/nixos/modules/programs/sway.nix b/nixos/modules/programs/sway.nix index caf329c2536a..c64e01a20cb3 100644 --- a/nixos/modules/programs/sway.nix +++ b/nixos/modules/programs/sway.nix @@ -123,6 +123,8 @@ in { ]; environment = { systemPackages = [ swayPackage ] ++ cfg.extraPackages; + # Needed for the default wallpaper: + pathsToLink = [ "/share/backgrounds/sway" ]; etc = { "sway/config".source = mkOptionDefault "${swayPackage}/etc/sway/config"; "sway/config.d/nixos.conf".source = pkgs.writeText "nixos.conf" '' diff --git a/nixos/modules/services/databases/clickhouse.nix b/nixos/modules/services/databases/clickhouse.nix index f2f4e9d25542..3a161d56107e 100644 --- a/nixos/modules/services/databases/clickhouse.nix +++ b/nixos/modules/services/databases/clickhouse.nix @@ -13,6 +13,15 @@ with lib; enable = mkEnableOption "ClickHouse database server"; + package = mkOption { + type = types.package; + default = pkgs.clickhouse; + defaultText = "pkgs.clickhouse"; + description = '' + ClickHouse package to use. + ''; + }; + }; }; @@ -45,21 +54,21 @@ with lib; AmbientCapabilities = "CAP_SYS_NICE"; StateDirectory = "clickhouse"; LogsDirectory = "clickhouse"; - ExecStart = "${pkgs.clickhouse}/bin/clickhouse-server --config-file=${pkgs.clickhouse}/etc/clickhouse-server/config.xml"; + ExecStart = "${cfg.package}/bin/clickhouse-server --config-file=${cfg.package}/etc/clickhouse-server/config.xml"; }; }; environment.etc = { "clickhouse-server/config.xml" = { - source = "${pkgs.clickhouse}/etc/clickhouse-server/config.xml"; + source = "${cfg.package}/etc/clickhouse-server/config.xml"; }; "clickhouse-server/users.xml" = { - source = "${pkgs.clickhouse}/etc/clickhouse-server/users.xml"; + source = "${cfg.package}/etc/clickhouse-server/users.xml"; }; }; - environment.systemPackages = [ pkgs.clickhouse ]; + environment.systemPackages = [ cfg.package ]; # startup requires a `/etc/localtime` which only if exists if `time.timeZone != null` time.timeZone = mkDefault "UTC"; diff --git a/nixos/modules/services/mail/dovecot.nix b/nixos/modules/services/mail/dovecot.nix index 223f3bef77db..c39827c5b867 100644 --- a/nixos/modules/services/mail/dovecot.nix +++ b/nixos/modules/services/mail/dovecot.nix @@ -103,11 +103,12 @@ let plugin { quota_rule = *:storage=${cfg.quotaGlobalPerUser} - quota = maildir:User quota # per virtual mail user quota # BUG/FIXME broken, we couldn't get this working + quota = count:User quota # per virtual mail user quota quota_status_success = DUNNO quota_status_nouser = DUNNO quota_status_overquota = "552 5.2.2 Mailbox is full" quota_grace = 10%% + quota_vsizes = yes } '' ) diff --git a/nixos/modules/services/networking/nomad.nix b/nixos/modules/services/networking/nomad.nix index 3bd15bd5c808..43333af5e2fe 100644 --- a/nixos/modules/services/networking/nomad.nix +++ b/nixos/modules/services/networking/nomad.nix @@ -51,7 +51,7 @@ in extraSettingsPaths = mkOption { type = types.listOf types.path; - default = []; + default = [ ]; description = '' Additional settings paths used to configure nomad. These can be files or directories. ''; @@ -60,9 +60,21 @@ in ''; }; + extraSettingsPlugins = mkOption { + type = types.listOf (types.either types.package types.path); + default = [ ]; + description = '' + Additional plugins dir used to configure nomad. + ''; + example = literalExpression '' + [ "<pluginDir>" "pkgs.<plugins-name>"] + ''; + }; + + settings = mkOption { type = format.type; - default = {}; + default = { }; description = '' Configuration for Nomad. See the <link xlink:href="https://www.nomadproject.io/docs/configuration">documentation</link> for supported values. @@ -128,7 +140,8 @@ in DynamicUser = cfg.dropPrivileges; ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; ExecStart = "${cfg.package}/bin/nomad agent -config=/etc/nomad.json" + - concatMapStrings (path: " -config=${path}") cfg.extraSettingsPaths; + concatMapStrings (path: " -config=${path}") cfg.extraSettingsPaths + + concatMapStrings (path: " -plugin-dir=${path}/bin") cfg.extraSettingsPlugins; KillMode = "process"; KillSignal = "SIGINT"; LimitNOFILE = 65536; diff --git a/nixos/modules/services/networking/sabnzbd.nix b/nixos/modules/services/networking/sabnzbd.nix index 43566dfd25c5..54eeba1a9ec1 100644 --- a/nixos/modules/services/networking/sabnzbd.nix +++ b/nixos/modules/services/networking/sabnzbd.nix @@ -17,6 +17,13 @@ in services.sabnzbd = { enable = mkEnableOption "the sabnzbd server"; + package = mkOption { + type = types.package; + default = pkgs.sabnzbd; + defaultText = "pkgs.sabnzbd"; + description = "The sabnzbd executable package run by the service."; + }; + configFile = mkOption { type = types.path; default = "/var/lib/sabnzbd/sabnzbd.ini"; @@ -63,7 +70,7 @@ in GuessMainPID = "no"; User = "${cfg.user}"; Group = "${cfg.group}"; - ExecStart = "${sabnzbd}/bin/sabnzbd -d -f ${cfg.configFile}"; + ExecStart = "${lib.getBin cfg.package}/bin/sabnzbd -d -f ${cfg.configFile}"; }; }; }; diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 1ff3dc76f4b6..0748a74ee176 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -76,8 +76,8 @@ let def assemble_qemu_flags(): flags = "-cpu max" ${if (system == "x86_64-linux" || system == "i686-linux") - then ''flags += " -m 1024"'' - else ''flags += " -m 768 -enable-kvm -machine virt,gic-version=host"'' + then ''flags += " -m 1500"'' + else ''flags += " -m 1000 -enable-kvm -machine virt,gic-version=host"'' } return flags @@ -288,7 +288,7 @@ let # builds stuff in the VM, needs more juice virtualisation.diskSize = 8 * 1024; virtualisation.cores = 8; - virtualisation.memorySize = 2048; + virtualisation.memorySize = 3096; # Use a small /dev/vdb as the root disk for the # installer. This ensures the target disk (/dev/vda) is diff --git a/pkgs/applications/blockchains/bitcoin-knots/default.nix b/pkgs/applications/blockchains/bitcoin-knots/default.nix index eea836ac62d3..803e27969e7a 100644 --- a/pkgs/applications/blockchains/bitcoin-knots/default.nix +++ b/pkgs/applications/blockchains/bitcoin-knots/default.nix @@ -1,41 +1,83 @@ -{ lib, stdenv -, fetchFromGitHub -, pkg-config +{ lib +, stdenv +, fetchurl , autoreconfHook -, db5 -, openssl +, pkg-config +, util-linux +, hexdump +, autoSignDarwinBinariesHook +, wrapQtAppsHook ? null , boost -, zlib -, miniupnpc , libevent -, protobuf -, util-linux +, miniupnpc +, zeromq +, zlib +, db48 +, sqlite +, qrencode +, qtbase ? null +, qttools ? null +, python3 +, nixosTests +, withGui +, withWallet ? true }: +with lib; stdenv.mkDerivation rec { - pname = "bitcoind-knots"; - version = "0.20.0"; - versionDate = "20200614"; - - src = fetchFromGitHub { - owner = "bitcoinknots"; - repo = "bitcoin"; - rev = "v${version}.knots${versionDate}"; - sha256 = "0c8k1154kcwz6q2803wx0zigvqaij1fi5akgfqlj3yl57jjw48jj"; + pname = if withGui then "bitcoin-knots" else "bitcoind-knots"; + version = "22.0.knots20211108"; + + src = fetchurl { + url = "https://bitcoinknots.org/files/22.x/${version}/guix/bitcoin-${version}.tar.gz"; + sha256 = "04sqbx4sp3bzwbl8z53nz96n3s0590h327ih0mbgyvfvl3b8pj4i"; }; - nativeBuildInputs = [ pkg-config autoreconfHook ]; - buildInputs = [ openssl db5 openssl util-linux - protobuf boost zlib miniupnpc libevent ]; + nativeBuildInputs = + [ autoreconfHook pkg-config ] + ++ optionals stdenv.isLinux [ util-linux ] + ++ optionals stdenv.isDarwin [ hexdump ] + ++ optionals (stdenv.isDarwin && stdenv.isAarch64) [ autoSignDarwinBinariesHook ] + ++ optionals withGui [ wrapQtAppsHook ]; + + buildInputs = [ boost libevent miniupnpc zeromq zlib ] + ++ optionals withWallet [ db48 sqlite ] + ++ optionals withGui [ qrencode qtbase qttools ]; + + configureFlags = [ + "--with-boost-libdir=${boost.out}/lib" + "--disable-bench" + ] ++ optionals (!doCheck) [ + "--disable-tests" + "--disable-gui-tests" + ] ++ optionals (!withWallet) [ + "--disable-wallet" + ] ++ optionals withGui [ + "--with-gui=qt5" + "--with-qt-bindir=${qtbase.dev}/bin:${qttools.dev}/bin" + ]; + + checkInputs = [ python3 ]; - configureFlags = [ "--with-incompatible-bdb" - "--with-boost-libdir=${boost.out}/lib" ]; + doCheck = true; + + checkFlags = + [ "LC_ALL=en_US.UTF-8" ] + # QT_PLUGIN_PATH needs to be set when executing QT, which is needed when testing Bitcoin's GUI. + # See also https://github.com/NixOS/nixpkgs/issues/24256 + ++ optional withGui "QT_PLUGIN_PATH=${qtbase}/${qtbase.qtPluginPrefix}"; + + enableParallelBuilding = true; + + passthru.tests = { + smoke-test = nixosTests.bitcoind-knots; + }; - meta = with lib; { - description = "An enhanced Bitcoin node software"; + meta = { + description = "A derivative of Bitcoin Core with a collection of improvements"; homepage = "https://bitcoinknots.org/"; + maintainers = with maintainers; [ prusnak mmahut ]; license = licenses.mit; - maintainers = [ maintainers.mmahut ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/applications/blockchains/bitcoin/default.nix b/pkgs/applications/blockchains/bitcoin/default.nix index 7253d3dff377..e1a0dd207a0a 100644 --- a/pkgs/applications/blockchains/bitcoin/default.nix +++ b/pkgs/applications/blockchains/bitcoin/default.nix @@ -79,7 +79,7 @@ stdenv.mkDerivation rec { doCheck = true; checkFlags = - [ "LC_ALL=C.UTF-8" ] + [ "LC_ALL=en_US.UTF-8" ] # QT_PLUGIN_PATH needs to be set when executing QT, which is needed when testing Bitcoin's GUI. # See also https://github.com/NixOS/nixpkgs/issues/24256 ++ optional withGui "QT_PLUGIN_PATH=${qtbase}/${qtbase.qtPluginPrefix}"; diff --git a/pkgs/applications/graphics/hdr-plus/default.nix b/pkgs/applications/graphics/hdr-plus/default.nix index 15042e6877ff..0d2f19660062 100644 --- a/pkgs/applications/graphics/hdr-plus/default.nix +++ b/pkgs/applications/graphics/hdr-plus/default.nix @@ -22,6 +22,10 @@ stdenv.mkDerivation rec { }) ]; + postPatch = '' + sed -i '2a #include <array>' src/InputSource.h + ''; + nativeBuildInputs = [ cmake ]; buildInputs = [ halide libpng libjpeg libtiff libraw ]; diff --git a/pkgs/applications/misc/prusa-slicer/super-slicer.nix b/pkgs/applications/misc/prusa-slicer/super-slicer.nix index e7edafb5c05b..976292716611 100644 --- a/pkgs/applications/misc/prusa-slicer/super-slicer.nix +++ b/pkgs/applications/misc/prusa-slicer/super-slicer.nix @@ -6,7 +6,7 @@ let versions = { stable = { version = "2.3.56.9"; sha256 = "sha256-vv01wGQkrasKKjpGSDeDqZbd1X5/iTfGXYN5Jwz+FKE="; }; - staging = { version = "2.3.57.6"; sha256 = "sha256-ZCOtVmvNXDWLo9UMzxARCp+iyRTcy/ogd5sV0k86JG8="; }; + latest = { version = "2.3.57.6"; sha256 = "sha256-ZCOtVmvNXDWLo9UMzxARCp+iyRTcy/ogd5sV0k86JG8="; }; }; override = { version, sha256 }: super: { diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix index 0e1f67800a20..c36d37ccfdf7 100644 --- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix +++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix @@ -23,7 +23,7 @@ , pango , audioSupport ? mediaSupport -, pulseaudioSupport ? false +, pulseaudioSupport ? mediaSupport , libpulseaudio , apulse diff --git a/pkgs/applications/networking/droopy/default.nix b/pkgs/applications/networking/droopy/default.nix index 63afa5ce76f1..e6dca02dace7 100644 --- a/pkgs/applications/networking/droopy/default.nix +++ b/pkgs/applications/networking/droopy/default.nix @@ -18,6 +18,10 @@ stdenv.mkDerivation { url = "https://patch-diff.githubusercontent.com/raw/stackp/Droopy/pull/30.patch"; sha256 = "Y6jBraKvVQAiScbvLwezSKeWY3vaAbhaNXEGNaItigQ="; }) + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/stackp/Droopy/pull/31.patch"; + sha256 = "1ig054rxn5r0ph4w4fhmrxlh158c97iqqc7dbnc819adn9nw96l5"; + }) ]; nativeBuildInputs = [ wrapPython ]; diff --git a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches index 2e106289a962..5b9579f8f94e 100644 --- a/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches +++ b/pkgs/applications/networking/instant-messengers/jami/config/pjsip_patches @@ -1,20 +1 @@ -0001-rfc6544.patch -0002-rfc2466.patch -0003-add-tcp-keep-alive.patch -0004-multiple_listeners.patch -0005-fix_ebusy_turn.patch -0006-ignore_ipv6_on_transport_check.patch -0007-upnp-srflx-nat-assisted-cand.patch -0008-fix_ioqueue_ipv6_sendto.patch 0009-add-config-site.patch -0010-fix-tcp-death-detection.patch -0011-fix-turn-shutdown-crash.patch -0012-ignore-down-interfaces.patch -0013-ignore-addresses-for-RFC7335.patch -0014-fix-socket-leak.patch -0015-fix-socktype-and-duplicate-checking.patch -0016-use-larger-Ta-interval.patch -0017-auto-register-thread.patch -0018-fix-ioqueue-lock-acquire.patch -0019-resort-check-list-after-adding-prflx.patch -0020-avoid-immediate-nominating-triggered-check.patch diff --git a/pkgs/applications/networking/instant-messengers/jami/daemon.nix b/pkgs/applications/networking/instant-messengers/jami/daemon.nix index 2fe6d7191e74..a324d061aa73 100644 --- a/pkgs/applications/networking/instant-messengers/jami/daemon.nix +++ b/pkgs/applications/networking/instant-messengers/jami/daemon.nix @@ -3,6 +3,7 @@ , jami-meta , stdenv , lib +, fetchFromGitHub , autoreconfHook , pkg-config , perl # for pod2man @@ -57,9 +58,15 @@ let pjsip-jami = pjsip.overrideAttrs (old: let + src-args = import ./pjproject-src.nix; + version = lib.concatStrings (lib.lists.take 7 (lib.stringToCharacters src-args.rev)); patch-src = src + "/daemon/contrib/src/pjproject/"; in { + inherit version; + + src = fetchFromGitHub src-args; + patches = old.patches ++ (map (x: patch-src + x) (readLinesToList ./config/pjsip_patches)); }); @@ -68,7 +75,8 @@ let enablePushNotifications = true; }; -in stdenv.mkDerivation { +in +stdenv.mkDerivation { pname = "jami-daemon"; inherit src version; sourceRoot = "source/daemon"; diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix index ee9762a8f032..e3bf7054949d 100644 --- a/pkgs/applications/networking/instant-messengers/jami/default.nix +++ b/pkgs/applications/networking/instant-messengers/jami/default.nix @@ -8,11 +8,11 @@ }: rec { - version = "20211005.2.251ac7d"; + version = "20211104.2.e80361d"; src = fetchzip { url = "https://dl.jami.net/release/tarballs/jami_${version}.tar.gz"; - sha256 = "12ppbwhnk5zajb73szd04sz80bp17q577bkb9j8p45apvq201db3"; + sha256 = "1l48svppshh8mg7y1dymnh0rgwswy4qwdyl7qlg25mmh4y1li21f"; stripRoot = false; extraPostFetch = '' diff --git a/pkgs/applications/networking/instant-messengers/jami/pjproject-src.nix b/pkgs/applications/networking/instant-messengers/jami/pjproject-src.nix new file mode 100644 index 000000000000..168176924871 --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/jami/pjproject-src.nix @@ -0,0 +1,6 @@ +{ + owner = "savoirfairelinux"; + repo = "pjproject"; + rev = "e1f389d0b905011e0cb62cbdf7a8b37fc1bcde1a"; + sha256 = "sha256-6t+3b7pvvwi+VD05vxtujabEJmWmJTAeyD/Dapav10Y="; +} diff --git a/pkgs/applications/networking/instant-messengers/jami/update.sh b/pkgs/applications/networking/instant-messengers/jami/update.sh index 22233a81bf8d..10d9bb885c35 |