diff --git a/nixos/modules/services/networking/soju.nix b/nixos/modules/services/networking/soju.nix index cb0acf4765ff..ee1a311ccdb7 100644 --- a/nixos/modules/services/networking/soju.nix +++ b/nixos/modules/services/networking/soju.nix @@ -49,12 +49,14 @@ in tlsCertificate = mkOption { type = types.nullOr types.path; + default = null; example = "/var/host.cert"; description = "Path to server TLS certificate."; }; tlsCertificateKey = mkOption { type = types.nullOr types.path; + default = null; example = "/var/host.key"; description = "Path to server TLS certificate key."; }; @@ -97,6 +99,16 @@ in ###### implementation config = mkIf cfg.enable { + assertions = [ + { + assertion = (cfg.tlsCertificate != null) == (cfg.tlsCertificateKey != null); + message = '' + services.soju.tlsCertificate and services.soju.tlsCertificateKey + must both be specified to enable TLS. + ''; + } + ]; + systemd.services.soju = { description = "soju IRC bouncer"; wantedBy = [ "multi-user.target" ]; diff --git a/pkgs/applications/emulators/stella/default.nix b/pkgs/applications/emulators/stella/default.nix index 212c06690468..593845cca61c 100644 --- a/pkgs/applications/emulators/stella/default.nix +++ b/pkgs/applications/emulators/stella/default.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "stella"; - version = "6.6"; + version = "6.7"; src = fetchFromGitHub { owner = "stella-emu"; repo = pname; rev = version; - hash = "sha256-+ZvSCnnoKGyToSFqUQOArolFdgUcBBFNjFw8aoVDkYI="; + hash = "sha256-E8vbBbsVMOSY3iSSE+UCwBwmfHU7Efmre1cYlexVZ+E="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix index 0b4416aca51b..32ea7122d172 100644 --- a/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -45,13 +45,13 @@ in stdenv.mkDerivation rec { pname = "imagemagick"; - version = "7.1.0-43"; + version = "7.1.0-44"; src = fetchFromGitHub { owner = "ImageMagick"; repo = "ImageMagick"; rev = builtins.replaceStrings [ "-" ] [ "." ] version; - hash = "sha256-SOy7Ci1rzLB12ofSQBWmX86dfbr/ywsRPunHRswlAt4="; + hash = "sha256-vJGZ47l8nSRnINWHsw562zsQ14fSR5SObr/SO+/40yw="; }; outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big diff --git a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix index fe3f90346f1c..c5e5b063c4e2 100644 --- a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix +++ b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix @@ -43,13 +43,13 @@ assert enablePsiMedia -> enablePlugins; mkDerivation rec { pname = "psi-plus"; - version = "1.5.1618"; + version = "1.5.1633"; src = fetchFromGitHub { owner = "psi-plus"; repo = "psi-plus-snapshots"; rev = version; - sha256 = "sha256-ueZYFOZFCPQrg9etZCrY5ZTn7PZMkcuwbXVPPbW9S/A="; + sha256 = "sha256-kXdDxpIOcwcFy+OmsqlE8a19sGPfMNI08fMy5OFuP9w="; }; cmakeFlags = [ diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix index f09f9fb45ab3..6fdc0e0d0051 100644 --- a/pkgs/applications/networking/syncthing/default.nix +++ b/pkgs/applications/networking/syncthing/default.nix @@ -4,13 +4,13 @@ let common = { stname, target, postInstall ? "" }: buildGoModule rec { pname = stname; - version = "1.20.3"; + version = "1.20.4"; src = fetchFromGitHub { owner = "syncthing"; repo = "syncthing"; rev = "v${version}"; - hash = "sha256-8sxCTPFdf5VDysANUYqic6zq5gipTL6wmPXstJc+6bA="; + hash = "sha256-umnlYvCtT+76Yer17T7ZvWJ5sUdXu+7kiRikrmWrIM8="; }; vendorSha256 = "sha256-CJFKY69Iz8GrVpvUdDveMQQFj6RXApfgYjP7B1wfgfo="; @@ -34,9 +34,8 @@ let inherit postInstall; - passthru.tests = with nixosTests; { - init = syncthing-init; - relay = syncthing-relay; + passthru.tests = { + inherit (nixosTests) syncthing syncthing-init syncthing-relay; }; meta = with lib; { diff --git a/pkgs/applications/terminal-emulators/sakura/default.nix b/pkgs/applications/terminal-emulators/sakura/default.nix index 52b35ad38ae7..18e913619435 100644 --- a/pkgs/applications/terminal-emulators/sakura/default.nix +++ b/pkgs/applications/terminal-emulators/sakura/default.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation rec { pname = "sakura"; - version = "3.8.4"; + version = "3.8.5"; src = fetchFromGitHub { owner = "dabisu"; repo = pname; rev = "SAKURA_${lib.replaceStrings [ "." ] [ "_" ] version}"; - hash = "sha256-Sqo1gyCvCMlEv1rYqw6P3Dmu10osi/KqB7/WlgTTNAc="; + hash = "sha256-eMGhPkfhpPHMg69J+XgK/ssJjwRSFgd/a64lAYi7hd0="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/version-management/git-and-tools/hut/default.nix b/pkgs/applications/version-management/git-and-tools/hut/default.nix index 49e5fa675a94..f2623d326d0a 100644 --- a/pkgs/applications/version-management/git-and-tools/hut/default.nix +++ b/pkgs/applications/version-management/git-and-tools/hut/default.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "hut"; - version = "0.1.0"; + version = "0.2.0"; src = fetchFromSourcehut { owner = "~emersion"; repo = "hut"; rev = "v${version}"; - sha256 = "sha256-2YUrDPulpLQQGw31nEasHoQ/AppECg7acwwqu6JDT5U="; + sha256 = "sha256-g9KbOtZaBAgy/iBBh/Tv5ULJNnNzwzZpA6DOynl+dnk="; }; - vendorSha256 = "sha256-EmokL3JlyM6C5/NOarCAJuqNsDO2tgHwqQdv0rAk+Xk="; + vendorSha256 = "sha256-vuAx8B34Za+GEtekFOUaY07hBk3O2OaJ1JmulbIhwbs="; nativeBuildInputs = [ scdoc diff --git a/pkgs/applications/video/freetube/default.nix b/pkgs/applications/video/freetube/default.nix index c93be6b63834..3ceda283d3d8 100644 --- a/pkgs/applications/video/freetube/default.nix +++ b/pkgs/applications/video/freetube/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "freetube"; - version = "0.16.0"; + version = "0.17.0"; src = fetchurl { url = "https://github.com/FreeTubeApp/FreeTube/releases/download/v${version}-beta/freetube_${version}_amd64.AppImage"; - sha256 = "sha256-G4lZ1lbNN8X9ocWhcuuNZGTZm9AUzuWKVm23YgsJwig="; + sha256 = "sha256-OlWNln62VouUJzzk0CtED+OdSM+aBc4NOu1TSaKVWnk="; }; appimageContents = appimageTools.extractType2 { diff --git a/pkgs/build-support/rust/build-rust-crate/build-crate.nix b/pkgs/build-support/rust/build-rust-crate/build-crate.nix index b5db1ffa7fb5..b24398665a10 100644 --- a/pkgs/build-support/rust/build-rust-crate/build-crate.nix +++ b/pkgs/build-support/rust/build-rust-crate/build-crate.nix @@ -1,4 +1,8 @@ -{ lib, stdenv, mkRustcDepArgs, mkRustcFeatureArgs, rust }: +{ lib, stdenv +, mkRustcDepArgs, mkRustcFeatureArgs, needUnstableCLI +, rust +}: + { crateName, dependencies, crateFeatures, crateRenames, libName, release, libPath, @@ -18,6 +22,8 @@ (mkRustcFeatureArgs crateFeatures) ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "--target" (rust.toRustTargetSpec stdenv.hostPlatform) + ] ++ lib.optionals (needUnstableCLI dependencies) [ + "-Z" "unstable-options" ] ++ extraRustcOpts # since rustc 1.42 the "proc_macro" crate is part of the default crate prelude # https://github.com/rust-lang/cargo/commit/4d64eb99a4#diff-7f98585dbf9d30aa100c8318e2c77e79R1021-R1022 diff --git a/pkgs/build-support/rust/build-rust-crate/default.nix b/pkgs/build-support/rust/build-rust-crate/default.nix index e122871f8f5a..98030225bcbb 100644 --- a/pkgs/build-support/rust/build-rust-crate/default.nix +++ b/pkgs/build-support/rust/build-rust-crate/default.nix @@ -46,17 +46,28 @@ let ) else extern; + opts = lib.optionalString (dep.stdlib or false) "noprelude:"; + filename = + if lib.any (x: x == "lib" || x == "rlib") dep.crateType + then "${dep.metadata}.rlib" + else "${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}"; in - (if lib.any (x: x == "lib" || x == "rlib") dep.crateType then - " --extern ${name}=${dep.lib}/lib/lib${extern}-${dep.metadata}.rlib" - else - " --extern ${name}=${dep.lib}/lib/lib${extern}-${dep.metadata}${stdenv.hostPlatform.extensions.sharedLibrary}") + " --extern ${opts}${name}=${dep.lib}/lib/lib${extern}-${filename}" ) dependencies; # Create feature arguments for rustc. mkRustcFeatureArgs = lib.concatMapStringsSep " " (f: ''--cfg feature=\"${f}\"''); + # Whether we need to use unstable command line flags + # + # Currently just needed for standard library dependencies, which have a + # special "noprelude:" modifier. If in later versions of Rust this is + # stabilized we can account for that here, too, so we don't opt into + # instability unnecessarily. + needUnstableCLI = dependencies: + lib.any (dep: dep.stdlib or false) dependencies; + inherit (import ./log.nix { inherit lib; }) noisily echo_colored; configureCrate = import ./configure-crate.nix { @@ -64,7 +75,7 @@ let }; buildCrate = import ./build-crate.nix { - inherit lib stdenv mkRustcDepArgs mkRustcFeatureArgs rust; + inherit lib stdenv mkRustcDepArgs mkRustcFeatureArgs needUnstableCLI rust; }; installCrate = import ./install-crate.nix { inherit stdenv; }; diff --git a/pkgs/development/compilers/xa/xa.nix b/pkgs/development/compilers/xa/xa.nix index 08f31148d4c5..0fb9d7d058b4 100644 --- a/pkgs/development/compilers/xa/xa.nix +++ b/pkgs/development/compilers/xa/xa.nix @@ -6,14 +6,14 @@ stdenv.mkDerivation rec { pname = "xa"; - version = "2.3.12"; + version = "2.3.13"; src = fetchurl { urls = [ "https://www.floodgap.com/retrotech/xa/dists/${pname}-${version}.tar.gz" "https://www.floodgap.com/retrotech/xa/dists/unsupported/${pname}-${version}.tar.gz" ]; - hash = "sha256-+P0VNgEtZ2/Gy/zdapF5PlZMibbvdH+NuPRnwXj7BwQ="; + hash = "sha256-qUd68VC2yKkc09QeHPjJ31UtODMmSVV2gwJxykRnvYY="; }; checkInputs = [ perl ]; diff --git a/pkgs/development/interpreters/erlang/R25.nix b/pkgs/development/interpreters/erlang/R25.nix index f11633d3d1cc..381ea8d5c227 100644 --- a/pkgs/development/interpreters/erlang/R25.nix +++ b/pkgs/development/interpreters/erlang/R25.nix @@ -3,6 +3,6 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "25.0"; - sha256 = "1nf72yiirdpxcs8m10xc04ryghxxc73x954x38m5a6fhv2hfhp2n"; + version = "25.0.3"; + sha256 = "0zchcm7gv52j30fq5p658h9c593ziirq09kkah6mpsvjfdsmvmgl"; } diff --git a/pkgs/development/interpreters/yabasic/default.nix b/pkgs/development/interpreters/yabasic/default.nix index 02d3dbeb9fd1..9266ec012251 100644 --- a/pkgs/development/interpreters/yabasic/default.nix +++ b/pkgs/development/interpreters/yabasic/default.nix @@ -10,11 +10,11 @@ stdenv.mkDerivation rec { pname = "yabasic"; - version = "2.90.1"; + version = "2.90.2"; src = fetchurl { url = "http://www.yabasic.de/download/${pname}-${version}.tar.gz"; - hash = "sha256-9LqiwS3Udql3YZoufo3spVpE46me3McI8L08TpNJpJo="; + hash = "sha256-ff5j0cJ1i2HWIsYjwzx5FFtZfchWsGRF2AZtbDXrNJw="; }; buildInputs = [ diff --git a/pkgs/development/libraries/zchunk/default.nix b/pkgs/development/libraries/zchunk/default.nix index c639eb7b30e9..ecbef5caf026 100644 --- a/pkgs/development/libraries/zchunk/default.nix +++ b/pkgs/development/libraries/zchunk/default.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "zchunk"; - version = "1.2.0"; + version = "1.2.2"; src = fetchFromGitHub { owner = "zchunk"; repo = pname; rev = version; - hash = "sha256-7H1WF5VkpA65xCdEa0Sw4r4jj+kGhDVCMr5AeE+3Ii4="; + hash = "sha256-/gtkw020pybUDUeYydXgJ4PLvdOqZ0RbrLOfNMDaCmA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/libraries/zxing-cpp/default.nix b/pkgs/development/libraries/zxing-cpp/default.nix index 514ebe9975ad..126ef2bc69d6 100644 --- a/pkgs/development/libraries/zxing-cpp/default.nix +++ b/pkgs/development/libraries/zxing-cpp/default.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "zxing-cpp"; - version = "1.2.0"; + version = "1.4.0"; src = fetchFromGitHub { owner = "nu-book"; repo = pname; rev = "v${version}"; - hash = "sha256-M565VNKhSmYFmCMEI9UFuHWNZWeHrf9qzZkMAw9LUr4="; + hash = "sha256-MTu8tvJXpo6+Z0aSIZ27nmerNtNBOwnL/jDkGedIiM8="; }; nativeBuildInputs = [ diff --git a/pkgs/games/lgames/lbreakouthd/default.nix b/pkgs/games/lgames/lbreakouthd/default.nix index 59447f2d0029..bfe8eecc95b8 100644 --- a/pkgs/games/lgames/lbreakouthd/default.nix +++ b/pkgs/games/lgames/lbreakouthd/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "lbreakouthd"; - version = "1.0.9"; + version = "1.0.10"; src = fetchurl { url = "mirror://sourceforge/lgames/${pname}-${version}.tar.gz"; - hash = "sha256-MHwK4jeDfZSS4jh///jW0/q4ntM4IuB0fQ8Bsaq0d0s="; + hash = "sha256-hlGhPa91u6pOaZoFJSDcXYQdizTFjuuTLnx9fcrXUhA="; }; buildInputs = [ diff --git a/pkgs/games/lgames/lpairs2/default.nix b/pkgs/games/lgames/lpairs2/default.nix index 7fcc03d8cce6..394b690b63dd 100644 --- a/pkgs/games/lgames/lpairs2/default.nix +++ b/pkgs/games/lgames/lpairs2/default.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "lpairs2"; - version = "2.1"; + version = "2.2"; src = fetchurl { url = "mirror://sourceforge/lgames/${pname}-${version}.tar.gz"; - hash = "sha256-35KYDnPWOjNPu9wz9AWvSBAo1tdVDo7I2TNxtxE5RRg="; + hash = "sha256-swe/cB9RqxHSNSShiryJ8XfwZk2X6qIDxFURbwNOd58="; }; buildInputs = [ diff --git a/pkgs/games/lgames/ltris/default.nix b/pkgs/games/lgames/ltris/default.nix index acf0f64d8c2b..618e86561f03 100644 --- a/pkgs/games/lgames/ltris/default.nix +++ b/pkgs/games/lgames/ltris/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "ltris"; - version = "1.2.4"; + version = "1.2.5"; src = fetchurl { url = "mirror://sourceforge/lgames/${pname}-${version}.tar.gz"; - hash = "sha256-1ut7MBAjJ4YE2SkqkvL9L1ED7kEqdaEm0lUOLsI2j4M="; + hash = "sha256-Ksb5TdQMTEzaJfjHVhgq27dSFvZxUnNUQ6OpAU+xwzM="; }; buildInputs = [ diff --git a/pkgs/os-specific/linux/apfs/default.nix b/pkgs/os-specific/linux/apfs/default.nix index 44cfefe68088..6b911142f588 100644 --- a/pkgs/os-specific/linux/apfs/default.nix +++ b/pkgs/os-specific/linux/apfs/default.nix @@ -39,7 +39,7 @@ stdenv.mkDerivation { homepage = "https://github.com/linux-apfs/linux-apfs-rw"; license = licenses.gpl2Only; platforms = platforms.linux; - broken = kernel.kernelOlder "4.9"; + broken = kernel.kernelOlder "4.9" || kernel.kernelAtLeast "5.19"; maintainers = with maintainers; [ Luflosi ]; }; } diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index 0754ff335bae..0ed4c48047ad 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -3,7 +3,7 @@ with lib; buildLinux (args // rec { - version = "5.15-rc6"; + version = "5.19-rc5"; extraMeta.branch = lib.versions.majorMinor version; # modDirVersion needs to be x.y.z, will always add .0 @@ -11,7 +11,7 @@ buildLinux (args // rec { src = fetchurl { url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; - sha256 = "1lp3jqwsbd97k3bx4crs8rc2wssyaf0v8x4kl4zv7g7ww2kkg2ii"; + sha256 = "sha256-eqBbQBZaqexgx6m3jAoU/0HWAdHbAuT3slZWMZhrht0="; }; # Should the testing kernels ever be built on Hydra? diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix index aeb8d8d0902a..a2683c373ed5 100644 --- a/pkgs/os-specific/linux/kernel/manual-config.nix +++ b/pkgs/os-specific/linux/kernel/manual-config.nix @@ -112,7 +112,8 @@ let patches = map (p: p.patch) kernelPatches # Required for deterministic builds along with some postPatch magic. - ++ optional (lib.versionAtLeast version "4.13") ./randstruct-provide-seed.patch + ++ optional (lib.versionAtLeast version "4.13" && lib.versionOlder version "5.19") ./randstruct-provide-seed.patch + ++ optional (lib.versionAtLeast version "5.19") ./randstruct-provide-seed-5.19.patch # Fixes determinism by normalizing metadata for the archive of kheaders ++ optional (lib.versionAtLeast version "5.2" && lib.versionOlder version "5.4") ./gen-kheaders-metadata.patch; diff --git a/pkgs/os-specific/linux/kernel/randstruct-provide-seed-5.19.patch b/pkgs/os-specific/linux/kernel/randstruct-provide-seed-5.19.patch new file mode 100644 index 000000000000..5ca897a76bf6 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/randstruct-provide-seed-5.19.patch @@ -0,0 +1,13 @@ +diff --git a/scripts/gen-randstruct-seed.sh b/scripts/gen-randstruct-seed.sh +index 61017b36c464..7bb494dd2e18 100755 +--- a/scripts/gen-randstruct-seed.sh ++++ b/scripts/gen-randstruct-seed.sh +@@ -1,7 +1,7 @@ + #!/bin/sh + # SPDX-License-Identifier: GPL-2.0 + +-SEED=$(od -A n -t x8 -N 32 /dev/urandom | tr -d ' \n') ++SEED="NIXOS_RANDSTRUCT_SEED" + echo "$SEED" > "$1" + HASH=$(echo -n "$SEED" | sha256sum | cut -d" " -f1) + echo "#define RANDSTRUCT_HASHED_SEED \"$HASH\"" > "$2" diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix index 366720b01bb7..8f5240b42eb1 100644 --- a/pkgs/servers/matrix-synapse/default.nix +++ b/pkgs/servers/matrix-synapse/default.nix @@ -11,11 +11,11 @@ in with python3.pkgs; buildPythonApplication rec { pname = "matrix-synapse"; - version = "1.63.1"; + version = "1.64.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-AjxvZye3bRjGT355eAnwuP2lvTU/RSnOPxxKqaUxN9g="; + sha256 = "sha256-hybl63hbhuUYnMi03z0Yp7L4n0x01z5uR8r5ZwHzgfI="; }; buildInputs = [ openssl ];