From 6626d8cc4de80f063da7ab871ecdc66f40f28e0b Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Fri, 16 Jun 2023 00:19:33 +0200 Subject: [PATCH 01/69] lib.path.removePrefix: init --- lib/path/default.nix | 53 +++++++++++++++++++++++++++++++++++++++++ lib/path/tests/unit.nix | 19 ++++++++++++++- 2 files changed, 71 insertions(+), 1 deletion(-) diff --git a/lib/path/default.nix b/lib/path/default.nix index 936e9b030253..3a871bc05283 100644 --- a/lib/path/default.nix +++ b/lib/path/default.nix @@ -20,6 +20,7 @@ let concatMap foldl' take + drop ; inherit (lib.strings) @@ -217,6 +218,58 @@ in /* No rec! Add dependencies on this file at the top. */ { second argument: "${toString path2}" with root "${toString path2Deconstructed.root}"''; take (length path1Deconstructed.components) path2Deconstructed.components == path1Deconstructed.components; + /* + Remove the first path as a component-wise prefix from the second path. + The result is a normalised subpath string, see `lib.path.subpath.normalise`. + + Laws: + + - Inverts `append` for normalised subpaths: + + removePrefix p (append p s) == subpath.normalise s + + Type: + removePrefix :: Path -> Path -> String + + Example: + removePrefix /foo /foo/bar/baz + => "./bar/baz" + removePrefix /foo /foo + => "./." + removePrefix /foo/bar /foo + => + removePrefix /. /foo + => "./foo" + */ + removePrefix = + path1: + assert assertMsg + (isPath path1) + "lib.path.removePrefix: First argument is of type ${typeOf path1}, but a path was expected."; + let + path1Deconstructed = deconstructPath path1; + path1Length = length path1Deconstructed.components; + in + path2: + assert assertMsg + (isPath path2) + "lib.path.removePrefix: Second argument is of type ${typeOf path2}, but a path was expected."; + let + path2Deconstructed = deconstructPath path2; + success = take path1Length path2Deconstructed.components == path1Deconstructed.components; + components = + if success then + drop path1Length path2Deconstructed.components + else + throw '' + lib.path.removePrefix: The first path argument "${toString path1}" is not a component-wise prefix of the second path argument "${toString path2}".''; + in + assert assertMsg + (path1Deconstructed.root == path2Deconstructed.root) '' + lib.path.removePrefix: Filesystem roots must be the same for both paths, but paths with different roots were given: + first argument: "${toString path1}" with root "${toString path1Deconstructed.root}" + second argument: "${toString path2}" with root "${toString path2Deconstructed.root}"''; + joinRelPath components; /* Whether a value is a valid subpath string. diff --git a/lib/path/tests/unit.nix b/lib/path/tests/unit.nix index 9c5b752cf64a..3e4b216f099f 100644 --- a/lib/path/tests/unit.nix +++ b/lib/path/tests/unit.nix @@ -3,7 +3,7 @@ { libpath }: let lib = import libpath; - inherit (lib.path) hasPrefix append subpath; + inherit (lib.path) hasPrefix removePrefix append subpath; cases = lib.runTests { # Test examples from the lib.path.append documentation @@ -57,6 +57,23 @@ let expected = true; }; + testRemovePrefixExample1 = { + expr = removePrefix /foo /foo/bar/baz; + expected = "./bar/baz"; + }; + testRemovePrefixExample2 = { + expr = removePrefix /foo /foo; + expected = "./."; + }; + testRemovePrefixExample3 = { + expr = (builtins.tryEval (removePrefix /foo/bar /foo)).success; + expected = false; + }; + testRemovePrefixExample4 = { + expr = removePrefix /. /foo; + expected = "./foo"; + }; + # Test examples from the lib.path.subpath.isValid documentation testSubpathIsValidExample1 = { expr = subpath.isValid null; From fe3b9fd75f71627df578561c29486c1cbba1c70a Mon Sep 17 00:00:00 2001 From: Oscar Molnar Date: Fri, 14 Jul 2023 21:37:15 +0100 Subject: [PATCH 02/69] maintainer: added myself (tymscar) as a maintainer to some Jetbrain IDEs --- maintainers/maintainer-list.nix | 6 ++++++ pkgs/applications/editors/jetbrains/default.nix | 14 +++++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 41da5bc9ae48..fc5fe5069f29 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -16967,6 +16967,12 @@ matrix = "@ty:tjll.net"; name = "Tyler Langlois"; }; + tymscar = { + email = "oscar@tymscar.com"; + github = "tymscar"; + githubId = 3742502; + name = "Oscar Molnar"; + }; typetetris = { email = "ericwolf42@mail.com"; github = "typetetris"; diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index b78da5da3f1d..c3ab04c85011 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -46,7 +46,7 @@ let Enhancing productivity for every C and C++ developer on Linux, macOS and Windows. ''; - maintainers = with maintainers; [ edwtjo mic92 ]; + maintainers = with maintainers; [ edwtjo mic92 tymscar ]; }; }).overrideAttrs (attrs: { nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ lib.optionals (stdenv.isLinux) [ @@ -141,7 +141,7 @@ let The new IDE extends the IntelliJ platform with the coding assistance and tool integrations specific for the Go language ''; - maintainers = [ ]; + maintainers = with maintainers; [ tymscar ]; }; }).overrideAttrs (attrs: { postFixup = (attrs.postFixup or "") + lib.optionalString stdenv.isLinux '' @@ -172,7 +172,7 @@ let with JUnit, TestNG, popular SCMs, Ant & Maven. Also known as IntelliJ. ''; - maintainers = with maintainers; [ edwtjo gytis-ivaskevicius steinybot AnatolyPopov ]; + maintainers = with maintainers; [ edwtjo gytis-ivaskevicius steinybot AnatolyPopov tymscar ]; platforms = ideaPlatforms; }; }); @@ -207,7 +207,7 @@ let with on-the-fly code analysis, error prevention and automated refactorings for PHP and JavaScript code. ''; - maintainers = with maintainers; [ dritter ]; + maintainers = with maintainers; [ dritter tymscar ]; }; }); @@ -232,7 +232,7 @@ let providing you almost everything you need for your comfortable and productive development! ''; - maintainers = with maintainers; [ genericnerdyusername ]; + maintainers = with maintainers; [ genericnerdyusername tymscar ]; }; }).overrideAttrs (finalAttrs: previousAttrs: lib.optionalAttrs cythonSpeedup { buildInputs = with python3.pkgs; [ python3 setuptools ]; @@ -286,7 +286,7 @@ let homepage = "https://www.jetbrains.com/ruby/"; inherit description license platforms; longDescription = description; - maintainers = with maintainers; [ edwtjo ]; + maintainers = with maintainers; [ edwtjo tymscar ]; }; }); @@ -302,7 +302,7 @@ let and CSS with on-the-fly code analysis, error prevention and automated refactorings for JavaScript code. ''; - maintainers = with maintainers; [ abaldeau ]; + maintainers = with maintainers; [ abaldeau tymscar ]; }; }); From 4d0d2601a6e6d404a7c7932c21b5972036e4ec4d Mon Sep 17 00:00:00 2001 From: Oscar Molnar Date: Fri, 14 Jul 2023 21:10:59 +0100 Subject: [PATCH 03/69] jetbrains: fix remote dev server for IDEs Adds the necessary patch to fix the remote dev server in the Jetbrains IDEs ( see #153335 ). --- .../editors/jetbrains/JetbrainsRemoteDev.patch | 17 +++++++++++++++++ pkgs/applications/editors/jetbrains/linux.nix | 11 +++++++++-- 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 pkgs/applications/editors/jetbrains/JetbrainsRemoteDev.patch diff --git a/pkgs/applications/editors/jetbrains/JetbrainsRemoteDev.patch b/pkgs/applications/editors/jetbrains/JetbrainsRemoteDev.patch new file mode 100644 index 000000000000..e525512fe495 --- /dev/null +++ b/pkgs/applications/editors/jetbrains/JetbrainsRemoteDev.patch @@ -0,0 +1,17 @@ +--- a/plugins/remote-dev-server/bin/launcher.sh ++++ b/plugins/remote-dev-server/bin/launcher.sh +@@ -327,6 +327,8 @@ + REMOTE_DEV_SERVER_USE_SELF_CONTAINED_LIBS=1 + fi + ++REMOTE_DEV_SERVER_USE_SELF_CONTAINED_LIBS=0 ++ + if [ $REMOTE_DEV_SERVER_USE_SELF_CONTAINED_LIBS -eq 1 ]; then + SELFCONTAINED_LIBS="$REMOTE_DEV_SERVER_DIR/selfcontained/lib" + if [ ! -d "$SELFCONTAINED_LIBS" ]; then +@@ -568,3 +570,5 @@ + "$LAUNCHER" "$STARTER_COMMAND" "$PROJECT_PATH" "$@" + ;; + esac ++ ++unset REMOTE_DEV_SERVER_USE_SELF_CONTAINED_LIBS diff --git a/pkgs/applications/editors/jetbrains/linux.nix b/pkgs/applications/editors/jetbrains/linux.nix index 1c00e408aeac..efc939d0324f 100644 --- a/pkgs/applications/editors/jetbrains/linux.nix +++ b/pkgs/applications/editors/jetbrains/linux.nix @@ -84,6 +84,10 @@ with stdenv; lib.makeOverridable mkDerivation (rec { patchelf --set-interpreter "$interpreter" bin/fsnotifier munge_size_hack bin/fsnotifier $target_size fi + + if [ -d "plugins/remote-dev-server" ]; then + patch -p1 < ${./JetbrainsRemoteDev.patch} + fi ''; installPhase = '' @@ -99,7 +103,7 @@ with stdenv; lib.makeOverridable mkDerivation (rec { jdk=${jdk.home} item=${desktopItem} - makeWrapper "$out/$pname/bin/${loName}.sh" "$out/bin/${pname}" \ + wrapProgram "$out/$pname/bin/${loName}.sh" \ --prefix PATH : "$out/libexec/${pname}:${lib.makeBinPath [ jdk coreutils gnugrep which git python3 ]}" \ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath ([ # Some internals want libstdc++.so.6 @@ -114,11 +118,14 @@ with stdenv; lib.makeOverridable mkDerivation (rec { --set ${hiName}_JDK "$jdk" \ --set ${hiName}_VM_OPTIONS ${vmoptsFile} + ln -s "$out/$pname/bin/${loName}.sh" $out/bin/$pname + echo -e '#!/usr/bin/env bash\n'"$out/$pname/bin/remote-dev-server.sh"' "$@"' > $out/$pname/bin/remote-dev-server-wrapped.sh + chmod +x $out/$pname/bin/remote-dev-server-wrapped.sh + ln -s "$out/$pname/bin/remote-dev-server-wrapped.sh" $out/bin/$pname-remote-dev-server ln -s "$item/share/applications" $out/share runHook postInstall ''; - } // lib.optionalAttrs (!(meta.license.free or true)) { preferLocalBuild = true; }) From f847a087871f445c69e2cc7b04b5b91a186388d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Mon, 17 Jul 2023 19:52:54 +0200 Subject: [PATCH 04/69] goawk: 1.23.3 -> 1.24.0 Diff: https://github.com/benhoyt/goawk/compare/v1.23.3...v1.24.0 --- pkgs/tools/text/goawk/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/goawk/default.nix b/pkgs/tools/text/goawk/default.nix index c3b6288ecea3..8db2143f1b79 100644 --- a/pkgs/tools/text/goawk/default.nix +++ b/pkgs/tools/text/goawk/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "goawk"; - version = "1.23.3"; + version = "1.24.0"; src = fetchFromGitHub { owner = "benhoyt"; repo = "goawk"; rev = "v${version}"; - hash = "sha256-E7oxi0rwVCzA/pBJ9SS6t+zR+J+dF7SW+oP+vXXN2FQ="; + hash = "sha256-pce7g0MI23244t5ZK4UDOfQNt1m3tRpCahne0s+NRRE="; }; vendorHash = null; From dd2a8921445a52c60da1c48a479ea599c6f0ccd9 Mon Sep 17 00:00:00 2001 From: Linus Heckemann Date: Mon, 17 Jul 2023 22:13:49 +0200 Subject: [PATCH 05/69] nixos/boot/stage-1: chase symlinks when copying binaries The split of util-linux into further outputs (#236463) resulted in ${util-linux.bin}/bin/mount becoming a symlink. This broke zfs in some cases. --- nixos/modules/system/boot/stage-1.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix index eec3461de7e7..1e52bd9e02f7 100644 --- a/nixos/modules/system/boot/stage-1.nix +++ b/nixos/modules/system/boot/stage-1.nix @@ -102,7 +102,7 @@ let copy_bin_and_libs () { [ -f "$out/bin/$(basename $1)" ] && rm "$out/bin/$(basename $1)" - cp -pdv $1 $out/bin + cp -pdvH $1 $out/bin } # Copy BusyBox. From 1ea6bd071f9f4e108f5b8f3504d18bf7ece79e76 Mon Sep 17 00:00:00 2001 From: David Arnold Date: Sun, 9 Jul 2023 21:21:28 -0500 Subject: [PATCH 06/69] python3Packages.python-youtube: init at 0.9.0 --- .../python-modules/python-youtube/default.nix | 76 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 78 insertions(+) create mode 100644 pkgs/development/python-modules/python-youtube/default.nix diff --git a/pkgs/development/python-modules/python-youtube/default.nix b/pkgs/development/python-modules/python-youtube/default.nix new file mode 100644 index 000000000000..bab4d1456298 --- /dev/null +++ b/pkgs/development/python-modules/python-youtube/default.nix @@ -0,0 +1,76 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, poetry-core +, dataclasses-json +, isodate +, requests +, requests-oauthlib +, pytestCheckHook +, responses +}: +buildPythonPackage rec { + pname = "python-youtube"; + version = "0.9.0"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "sns-sdks"; + repo = "python-youtube"; + rev = "v${version}"; + hash = "sha256-uimipYgf8nfYd1J/K6CStbzIkQiRSosu7/yOfgXYCks="; + }; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace "poetry.masonry.api" "poetry.core.masonry.api" + substituteInPlace pytest.ini \ + --replace "--cov=pyyoutube" "" \ + --replace "--cov-report xml" "" + ''; + + nativeBuildInputs = [ + poetry-core + ]; + + propagatedBuildInputs = [ + dataclasses-json + isodate + requests + requests-oauthlib + ]; + + pythonImportsCheck = [ "pyyoutube" ]; + + nativeCheckInputs = [ + pytestCheckHook + responses + ]; + + disabledTests = [ + # On both tests, upstream compares a string to an integer + + /* + python3.10-python-youtube> > self.assertEqual(m.viewCount, "160361638") + python3.10-python-youtube> E AssertionError: 160361638 != '160361638' + python3.10-python-youtube> tests/models/test_channel.py:62: AssertionError + */ + "testChannelStatistics" + + /* + python3.10-python-youtube> > self.assertEqual(m.viewCount, "8087") + python3.10-python-youtube> E AssertionError: 8087 != '8087' + python3.10-python-youtube> tests/models/test_videos.py:76: AssertionError + */ + "testVideoStatistics" + ]; + + meta = with lib; { + description = "A simple Python wrapper around for YouTube Data API"; + homepage = "https://github.com/sns-sdks/python-youtube"; + changelog = "https://github.com/sns-sdks/python-youtube/blob/${src.rev}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ blaggacao ]; + }; +} + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 98fc8165e010..231fd2d0f54d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7080,6 +7080,8 @@ self: super: with self; { python-nvd3 = callPackage ../development/python-modules/python-nvd3 { }; + python-youtube = callPackage ../development/python-modules/python-youtube { }; + py-deprecate = callPackage ../development/python-modules/py-deprecate { }; py-ecc = callPackage ../development/python-modules/py-ecc { }; From dd3fec45d4cc8803d3a1491d0d20b0b5ed6bf4ec Mon Sep 17 00:00:00 2001 From: Ilan Joselevich Date: Tue, 18 Jul 2023 16:02:44 +0300 Subject: [PATCH 07/69] age-plugin-tpm: add disclaimer about experimentalness --- pkgs/tools/security/age-plugin-tpm/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/security/age-plugin-tpm/default.nix b/pkgs/tools/security/age-plugin-tpm/default.nix index 200a3e67f22d..89291096db9b 100644 --- a/pkgs/tools/security/age-plugin-tpm/default.nix +++ b/pkgs/tools/security/age-plugin-tpm/default.nix @@ -32,7 +32,7 @@ buildGoModule rec { ]; meta = with lib; { - description = "TPM 2.0 plugin for age"; + description = "TPM 2.0 plugin for age (This software is experimental, use it at your own risk)"; homepage = "https://github.com/Foxboron/age-plugin-tpm"; license = licenses.mit; platforms = platforms.linux; From c2abd1103150e3c0921feb5b130b0475576b6fc3 Mon Sep 17 00:00:00 2001 From: SamLukeYes Date: Tue, 18 Jul 2023 22:21:34 +0800 Subject: [PATCH 08/69] pacman: disable fortify3 --- pkgs/tools/package-management/pacman/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/tools/package-management/pacman/default.nix b/pkgs/tools/package-management/pacman/default.nix index 517abf26f908..f9a7fcdcde59 100644 --- a/pkgs/tools/package-management/pacman/default.nix +++ b/pkgs/tools/package-management/pacman/default.nix @@ -106,6 +106,8 @@ stdenv.mkDerivation rec { "--localstatedir=/var" ]; + hardeningDisable = [ "fortify3" ]; + postInstall = '' installShellCompletion --bash scripts/pacman --zsh scripts/_pacman wrapProgram $out/bin/makepkg \ From 6bc52c386fe9b6aebb8b18533e6009021e955500 Mon Sep 17 00:00:00 2001 From: Soham S Gumaste Date: Sat, 8 Jul 2023 12:54:16 -0500 Subject: [PATCH 09/69] oddjob: init at 0.34.7 --- pkgs/os-specific/linux/oddjob/default.nix | 60 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 62 insertions(+) create mode 100644 pkgs/os-specific/linux/oddjob/default.nix diff --git a/pkgs/os-specific/linux/oddjob/default.nix b/pkgs/os-specific/linux/oddjob/default.nix new file mode 100644 index 000000000000..bcbea9086488 --- /dev/null +++ b/pkgs/os-specific/linux/oddjob/default.nix @@ -0,0 +1,60 @@ +{ lib +, fetchurl +, stdenv +, autoreconfHook +, dbus +, libxml2 +, pam +, pkg-config +, systemd +}: + +stdenv.mkDerivation rec { + pname = "oddjob"; + version = "0.34.7"; + + src = fetchurl { + url = "https://pagure.io/oddjob/archive/${pname}-${version}/oddjob-${pname}-${version}.tar.gz"; + hash = "sha256-SUOsMH55HtEsk5rX0CXK0apDObTj738FGOaL5xZRnIM="; + }; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + + buildInputs =[ + libxml2 + dbus + pam + systemd + ]; + + postPatch = '' + substituteInPlace configure.ac \ + --replace 'SYSTEMDSYSTEMUNITDIR=`pkg-config --variable=systemdsystemunitdir systemd 2> /dev/null`' "SYSTEMDSYSTEMUNITDIR=${placeholder "out"}" \ + --replace 'SYSTEMDSYSTEMUNITDIR=`pkg-config --variable=systemdsystemunitdir systemd`' "SYSTEMDSYSTEMUNITDIR=${placeholder "out"}" + ''; + + configureFlags = [ + "--prefix=${placeholder "out"}" + "--sysconfdir=${placeholder "out"}/etc" + "--with-selinux-acls=no" + "--with-selinux-labels=no" + "--disable-systemd" + ]; + + postConfigure = '' + substituteInPlace src/oddjobd.c \ + --replace "globals.selinux_enabled" "FALSE" + ''; + + meta = with lib; { + description = "Odd Job Daemon"; + homepage = "https://pagure.io/oddjob"; + changelog = "https://pagure.io/oddjob/blob/oddjob-${version}/f/ChangeLog"; + license = licenses.bsd0; + platforms = platforms.linux; + maintainers = with maintainers; [ SohamG ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9646ec6e0311..03e816cbd1e5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9878,6 +9878,8 @@ with pkgs; notesnook = callPackage ../applications/misc/notesnook { }; + oddjob = callPackage ../os-specific/linux/oddjob { }; + openipmi = callPackage ../tools/system/openipmi { }; ox = callPackage ../applications/editors/ox { }; From 03431f1244a92659cf26a1b6e40de5db00c5e310 Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Mon, 17 Jul 2023 22:17:56 +0200 Subject: [PATCH 10/69] lib: Add README Co-authored-by: Alexander Groleau Co-authored-by: Valentin Gagarin Co-authored-by: Robert Hensing --- lib/README.md | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 lib/README.md diff --git a/lib/README.md b/lib/README.md new file mode 100644 index 000000000000..ac7cbd4330ad --- /dev/null +++ b/lib/README.md @@ -0,0 +1,73 @@ +# Nixpkgs lib + +This directory contains the implementation, documentation and tests for the Nixpkgs `lib` library. + +## Overview + +The evaluation entry point for `lib` is [`default.nix`](default.nix). +This file evaluates to an attribute set containing two separate kinds of attributes: +- Sub-libraries: + Attribute sets grouping together similar functionality. + Each sub-library is defined in a separate file usually matching its attribute name. + + Example: `lib.lists` is a sub-library containing list-related functionality such as `lib.lists.take` and `lib.lists.imap0`. + These are defined in the file [`lists.nix`](lists.nix). + +- Aliases: + Attributes that point to an attribute of the same name in some sub-library. + + Example: `lib.take` is an alias for `lib.lists.take`. + +Most files in this directory are definitions of sub-libraries, but there are a few others: +- [`minver.nix`](minver.nix): A string of the minimum version of Nix that is required to evaluate Nixpkgs. +- [`tests`](tests): Tests, see [Running tests](#running-tests) + - [`release.nix`](tests/release.nix): A derivation aggregating all tests + - [`misc.nix`](tests/misc.nix): Evaluation unit tests for most sub-libraries + - `*.sh`: Bash scripts that run tests for specific sub-libraries + - All other files in this directory exist to support the tests +- [`systems`](systems): The `lib.systems` sub-library, structured into a directory instead of a file due to its complexity +- [`path`](path): The `lib.path` sub-library, which includes tests as well as a document describing the design goals of `lib.path` +- All other files in this directory are sub-libraries + +### Module system + +The [module system](https://nixos.org/manual/nixpkgs/#module-system) spans multiple sub-libraries: +- [`modules.nix`](modules.nix): `lib.modules` for the core functions and anything not relating to option definitions +- [`options.nix`](options.nix): `lib.options` for anything relating to option definitions +- [`types.nix`](types.nix): `lib.types` for module system types + +## Reference documentation + +Reference documentation for library functions is written above each function as a multi-line comment. +These comments are processed using [nixdoc](https://github.com/nix-community/nixdoc) and [rendered in the Nixpkgs manual](https://nixos.org/manual/nixpkgs/stable/#chap-functions). +The nixdoc README describes the [comment format](https://github.com/nix-community/nixdoc#comment-format). + +See the [chapter on contributing to the Nixpkgs manual](https://nixos.org/manual/nixpkgs/#chap-contributing) for how to build the manual. + +## Running tests + +All library tests can be run by building the derivation in [`tests/release.nix`](tests/release.nix): + +```bash +nix-build tests/release.nix +``` + +Some commands for quicker iteration over parts of the test suite are also available: + +```bash +# Run all evaluation unit tests in tests/misc.nix +# if the resulting list is empty, all tests passed +nix-instantiate --eval --strict tests/misc.nix + +# Run the module system tests +tests/modules.sh + +# Run the lib.sources tests +tests/sources.sh + +# Run the lib.filesystem tests +tests/filesystem.sh + +# Run the lib.path property tests +path/tests/prop.sh +``` From 581d7c88bea4216fb47c2a98f38af59f2d14485d Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Tue, 18 Jul 2023 17:20:28 +0200 Subject: [PATCH 11/69] lib/tests: Unify documentation of individual testable files --- lib/path/tests/prop.sh | 7 +++++-- lib/tests/misc.nix | 18 +++++++++++++++--- lib/tests/modules.sh | 8 +++++++- lib/tests/sources.sh | 7 +++++++ 4 files changed, 34 insertions(+), 6 deletions(-) diff --git a/lib/path/tests/prop.sh b/lib/path/tests/prop.sh index e48c6667fa08..d6021cfcd5fe 100755 --- a/lib/path/tests/prop.sh +++ b/lib/path/tests/prop.sh @@ -1,9 +1,12 @@ #!/usr/bin/env bash -# Property tests for the `lib.path` library -# +# Property tests for lib/path/default.nix # It generates random path-like strings and runs the functions on # them, checking that the expected laws of the functions hold +# Run: +# [nixpkgs]$ lib/path/tests/prop.sh +# or: +# [nixpkgs]$ nix-build lib/tests/release.nix set -euo pipefail shopt -s inherit_errexit diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix index 231f19c513eb..6dc0d391fb4b 100644 --- a/lib/tests/misc.nix +++ b/lib/tests/misc.nix @@ -1,6 +1,18 @@ -# to run these tests: -# nix-instantiate --eval --strict nixpkgs/lib/tests/misc.nix -# if the resulting list is empty, all tests passed +/* +Nix evaluation tests for various lib functions. + +Since these tests are implemented with Nix evaluation, error checking is limited to what `builtins.tryEval` can detect, which is `throw`'s and `abort`'s, without error messages. +If you need to test error messages or more complex evaluations, see ./modules.sh, ./sources.sh or ./filesystem.sh as examples. + +To run these tests: + + [nixpkgs]$ nix-instantiate --eval --strict lib/tests/misc.nix + +If the resulting list is empty, all tests passed. +Alternatively, to run all `lib` tests: + + [nixpkgs]$ nix-build lib/tests/release.nix +*/ with import ../default.nix; let diff --git a/lib/tests/modules.sh b/lib/tests/modules.sh index 7aebba6b589e..5c596b5a6687 100755 --- a/lib/tests/modules.sh +++ b/lib/tests/modules.sh @@ -1,7 +1,13 @@ #!/usr/bin/env bash -# + # This script is used to test that the module system is working as expected. +# Executing it runs tests for `lib.modules`, `lib.options` and `lib.types`. # By default it test the version of nixpkgs which is defined in the NIX_PATH. +# +# Run: +# [nixpkgs]$ lib/tests/modules.sh +# or: +# [nixpkgs]$ nix-build lib/tests/release.nix set -o errexit -o noclobber -o nounset -o pipefail shopt -s failglob inherit_errexit diff --git a/lib/tests/sources.sh b/lib/tests/sources.sh index cda77aa96b28..079c7eea5657 100755 --- a/lib/tests/sources.sh +++ b/lib/tests/sources.sh @@ -1,4 +1,11 @@ #!/usr/bin/env bash + +# Tests lib/sources.nix +# Run: +# [nixpkgs]$ lib/tests/sources.sh +# or: +# [nixpkgs]$ nix-build lib/tests/release.nix + set -euo pipefail shopt -s inherit_errexit From 162893f92a42113dd46947861595f5ef0719403b Mon Sep 17 00:00:00 2001 From: Soham S Gumaste Date: Sat, 8 Jul 2023 12:54:25 -0500 Subject: [PATCH 12/69] nixos/oddjob: init at 0.34.7 --- nixos/modules/module-list.nix | 1 + nixos/modules/programs/oddjobd.nix | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 nixos/modules/programs/oddjobd.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 5510944b2152..90c2d09fc979 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -222,6 +222,7 @@ ./programs/noisetorch.nix ./programs/npm.nix ./programs/oblogout.nix + ./programs/oddjobd.nix ./programs/openvpn3.nix ./programs/pantheon-tweaks.nix ./programs/partition-manager.nix diff --git a/nixos/modules/programs/oddjobd.nix b/nixos/modules/programs/oddjobd.nix new file mode 100644 index 000000000000..a37df0482c9a --- /dev/null +++ b/nixos/modules/programs/oddjobd.nix @@ -0,0 +1,28 @@ +{ config, pkgs, lib, ... }: + +let + cfg = config.programs.oddjobd; +in +{ + options.programs.oddjobd = { + enable = lib.mkEnableOption "oddjob"; + package = lib.mkPackageOption pkgs "oddjob" {}; + }; + + config = lib.mkIf cfg.enable { + systemd.packages = [ cfg.package ]; + + systemd.services.oddjobd = { + wantedBy = [ "multi-user.target"]; + after = [ "network.target"]; + description = "DBUS Odd-job Daemon"; + enable = true; + documentation = [ "man:oddjobd(8)" "man:oddjobd.conf(5)" ]; + serviceConfig = { + Type = "dbus"; + BusName = "org.freedesktop.oddjob"; + ExecStart = "${lib.getExe cfg.package}/bin/oddjobd"; + }; + }; + }; +} From 5e35de6ff1a7c04042f94148e51401564a074ff6 Mon Sep 17 00:00:00 2001 From: Indexyz Date: Wed, 19 Jul 2023 02:25:19 +0800 Subject: [PATCH 13/69] qq: support wayland ozone --- .../networking/instant-messengers/qq/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/qq/default.nix b/pkgs/applications/networking/instant-messengers/qq/default.nix index 63077827369d..5a72c1bd1e83 100644 --- a/pkgs/applications/networking/instant-messengers/qq/default.nix +++ b/pkgs/applications/networking/instant-messengers/qq/default.nix @@ -19,6 +19,7 @@ , at-spi2-core , autoPatchelfHook , wrapGAppsHook +, makeWrapper }: let @@ -42,7 +43,8 @@ stdenv.mkDerivation { nativeBuildInputs = [ autoPatchelfHook - wrapGAppsHook + # makeBinaryWrapper not support shell wrapper specifically for `NIXOS_OZONE_WL`. + (wrapGAppsHook.override { inherit makeWrapper; }) dpkg ]; @@ -87,7 +89,10 @@ stdenv.mkDerivation { ''; preFixup = '' - gappsWrapperArgs+=(--prefix PATH : "${lib.makeBinPath [ gjs ]}") + gappsWrapperArgs+=( + --prefix PATH : "${lib.makeBinPath [ gjs ]}" + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" + ) ''; meta = with lib; { From 27cb23a0cd232aa9eca36c72c4951a0345ba48ff Mon Sep 17 00:00:00 2001 From: Volodymyr Antonov Date: Tue, 18 Jul 2023 22:11:29 +0300 Subject: [PATCH 14/69] maintainers: add azazak123 --- maintainers/maintainer-list.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 845b467c61fd..271ec8966d50 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1697,6 +1697,13 @@ fingerprint = "2688 0377 C31D 9E81 9BDF 83A8 C8C6 BDDB 3847 F72B"; }]; }; + azazak123 = { + email = "azazaka2002@gmail.com"; + matrix = "@ne_dvoeshnik:matrix.org"; + name = "Volodymyr Antonov"; + github = "azazak123"; + githubId = 50211158; + }; azd325 = { email = "tim.kleinschmidt@gmail.com"; github = "Azd325"; From 03269a6bbcfe1a0a0027b6f8aed8011c3ddcb15a Mon Sep 17 00:00:00 2001 From: Volodymyr Antonov Date: Tue, 18 Jul 2023 22:12:32 +0300 Subject: [PATCH 15/69] hyprland-per-window-layout: init at 2.3 --- .../hyprland-per-window-layout/default.nix | 23 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/tools/wayland/hyprland-per-window-layout/default.nix diff --git a/pkgs/tools/wayland/hyprland-per-window-layout/default.nix b/pkgs/tools/wayland/hyprland-per-window-layout/default.nix new file mode 100644 index 000000000000..32dcddea6fc4 --- /dev/null +++ b/pkgs/tools/wayland/hyprland-per-window-layout/default.nix @@ -0,0 +1,23 @@ +{ lib, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + pname = "hyprland-per-window-layout"; + version = "2.3"; + + src = fetchFromGitHub { + owner = "coffebar"; + repo = pname; + rev = version; + hash = "sha256-eqhGX9rjvOHh6RuWj5dqWPKlFdTnZpAcDUuJbT3Z/E8="; + }; + + cargoHash = "sha256-AUkBTHShtY3ZJ8pxCuW9baVuxb2QxzXxJQMgbuVTlPY="; + + meta = with lib; { + description = "Per window keyboard layout (language) for Hyprland wayland compositor"; + homepage = "https://github.com/coffebar/hyprland-per-window-layout"; + license = licenses.mit; + maintainers = [ maintainers.azazak123 ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 39f4d3a3aa04..3b1cf3486e38 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5420,6 +5420,8 @@ with pkgs; udis86 = pkgs.callPackage ../applications/window-managers/hyprwm/hyprland/udis86.nix { }; }; + hyprland-per-window-layout = callPackage ../tools/wayland/hyprland-per-window-layout { }; + hyprland-protocols = callPackage ../applications/window-managers/hyprwm/hyprland-protocols { }; hyprland-share-picker = libsForQt5.callPackage ../applications/window-managers/hyprwm/xdg-desktop-portal-hyprland/hyprland-share-picker.nix { }; From 1f9d30c9af258c0d46e701a56eb7a1c21b59cfde Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 18 Jul 2023 19:30:56 +0000 Subject: [PATCH 16/69] syft: 0.84.1 -> 0.85.0 --- pkgs/tools/admin/syft/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/admin/syft/default.nix b/pkgs/tools/admin/syft/default.nix index 0d9d93cf3502..0f2fa51e3742 100644 --- a/pkgs/tools/admin/syft/default.nix +++ b/pkgs/tools/admin/syft/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "syft"; - version = "0.84.1"; + version = "0.85.0"; src = fetchFromGitHub { owner = "anchore"; repo = pname; rev = "v${version}"; - hash = "sha256-3BQuFEQhzX4TnPiNdbIatuvuXZVDBGQUyJ7+2d5rIRU="; + hash = "sha256-TNo5WNSy0ogv0hn+O7VL7DCMaDtwhs1UNbTt5K7/40U="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -22,7 +22,7 @@ buildGoModule rec { }; # hash mismatch with darwin proxyVendor = true; - vendorHash = "sha256-/95AL+BlvtQkwlnbHBGx1rTU3VYHIdw1bqGxwBsLMcA="; + vendorHash = "sha256-OVCM7WAyKVpd7VNV4wmfAoMJWurEhTBPQsln34oS5U8="; nativeBuildInputs = [ installShellFiles ]; From e51903bb1afd247acfd3b123de9197971fa769d5 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jul 2023 21:51:38 +0200 Subject: [PATCH 17/69] python311Packages.pynina: 0.3.0 -> 0.3.1 --- pkgs/development/python-modules/pynina/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pynina/default.nix b/pkgs/development/python-modules/pynina/default.nix index 1a981fa1852b..9384cefc6072 100644 --- a/pkgs/development/python-modules/pynina/default.nix +++ b/pkgs/development/python-modules/pynina/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "pynina"; - version = "0.3.0"; + version = "0.3.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -15,7 +15,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "PyNINA"; inherit version; - hash = "sha256-5+Mg3dPjMxEL2pgEeuR1TwiicIMHN6RO6G0SgbZm/eM="; + hash = "sha256-HyOk3W95dEl+p8YGh3xP29HcvbncqxsUaWSQUiKgTWM="; }; propagatedBuildInputs = [ From c03a4eef7f4dc21057c28795e7136f711f0d0637 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 18 Jul 2023 21:55:42 +0200 Subject: [PATCH 18/69] python311Packages.pynina: add changelog --- pkgs/development/python-modules/pynina/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/pynina/default.nix b/pkgs/development/python-modules/pynina/default.nix index 9384cefc6072..a167f8cf1d65 100644 --- a/pkgs/development/python-modules/pynina/default.nix +++ b/pkgs/development/python-modules/pynina/default.nix @@ -32,6 +32,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python API wrapper to retrieve warnings from the german NINA app"; homepage = "https://gitlab.com/DeerMaximum/pynina"; + changelog = "https://gitlab.com/DeerMaximum/pynina/-/releases/${version}"; license = licenses.mit; maintainers = with maintainers; [ fab ]; }; From 2ef880952feec17e889f7dd40edc7c314adf5fa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 18 Jul 2023 13:01:38 -0700 Subject: [PATCH 19/69] python310Packages.bandcamp-api: 0.1.15 -> 0.2.2 --- pkgs/development/python-modules/bandcamp-api/default.nix | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/bandcamp-api/default.nix b/pkgs/development/python-modules/bandcamp-api/default.nix index 714f4aa6b4d7..4546843dbc88 100644 --- a/pkgs/development/python-modules/bandcamp-api/default.nix +++ b/pkgs/development/python-modules/bandcamp-api/default.nix @@ -10,21 +10,16 @@ buildPythonPackage rec { pname = "bandcamp-api"; - version = "0.1.15"; + version = "0.2.2"; format = "setuptools"; src = fetchPypi { pname = "bandcamp_api"; inherit version; - hash = "sha256-4pnUiAsOLX1BBQjOhUkjSyHnGyQ3rx3JAFFYgEMLpG4="; + hash = "sha256-v/iACVcBFC/3x4v7Q/1p+aHGhfw3AQ43eU3sKz5BskI="; }; - postPatch = '' - substituteInPlace setup.py \ - --replace bs4 beautifulsoup4 - ''; - propagatedBuildInputs = [ beautifulsoup4 demjson3 From 94d894f3efdc07f3943bcc0639773e76c9570162 Mon Sep 17 00:00:00 2001 From: Philip Munksgaard Date: Tue, 18 Jul 2023 22:41:09 +0200 Subject: [PATCH 20/69] livebook: 0.9.2 -> 0.10.0 --- pkgs/servers/web-apps/livebook/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/web-apps/livebook/default.nix b/pkgs/servers/web-apps/livebook/default.nix index 44257acd56c9..35ee0bf8505a 100644 --- a/pkgs/servers/web-apps/livebook/default.nix +++ b/pkgs/servers/web-apps/livebook/default.nix @@ -1,7 +1,7 @@ { lib, beamPackages, makeWrapper, rebar3, elixir, erlang, fetchFromGitHub }: beamPackages.mixRelease rec { pname = "livebook"; - version = "0.9.2"; + version = "0.10.0"; inherit elixir; @@ -13,13 +13,13 @@ beamPackages.mixRelease rec { owner = "livebook-dev"; repo = "livebook"; rev = "v${version}"; - hash = "sha256-khC3gtRvywgAY6qHslZgAV3kmziJgKhdCB8CDg/HkIU="; + hash = "sha256-Bp1CEvVv5DPDDikRPubsG6p4LLiHXTEXE+ZIip3LsGA="; }; mixFodDeps = beamPackages.fetchMixDeps { pname = "mix-deps-${pname}"; inherit src version; - hash = "sha256-rwWGs4fGeuyV6BBFgCyyDwKf/YLgs1wY0xnHYy8iioE="; + hash = "sha256-qFLCWr7LzI9WNgj0AJO3Tw7rrA1JhBOEpX79RMjv2nk="; }; installPhase = '' From 92c3002d68868c5217d881150152ec8492f26fed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Fern=C3=A1ndez=20L=C3=B3pez?= Date: Wed, 19 Jul 2023 00:01:18 +0200 Subject: [PATCH 21/69] viceroy: 0.5.1 -> 0.6.0 --- pkgs/development/tools/viceroy/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/tools/viceroy/default.nix b/pkgs/development/tools/viceroy/default.nix index e0b5c93ee81b..f51e63d757e2 100644 --- a/pkgs/development/tools/viceroy/default.nix +++ b/pkgs/development/tools/viceroy/default.nix @@ -2,18 +2,18 @@ rustPlatform.buildRustPackage rec { pname = "viceroy"; - version = "0.5.1"; + version = "0.6.0"; src = fetchFromGitHub { owner = "fastly"; repo = pname; rev = "v${version}"; - hash = "sha256-OWvWi3mIgcWTnRMsnKgYqB9qzICBOmCcWenTfqhaz+k="; + hash = "sha256-lFDhiBgJFCXE7/BzCuNFPmP8PYHCqu6jYqRNa+M4J8Q="; }; buildInputs = lib.optional stdenv.isDarwin Security; - cargoHash = "sha256-WwhoKHWZSOcocpqPqmSFYzNKxxXtpKpRreaPHqc+/40="; + cargoHash = "sha256-HJXCNjWjO1GWIP46kqvq8mZVlYVvlG9ahxScpG3rfTA="; cargoTestFlags = [ "--package viceroy-lib" From 0c1da334ad9e0ff3c0dae51d24fec1c2dff36b4e Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 18 Jul 2023 22:38:20 +0000 Subject: [PATCH 22/69] python310Packages.mkdocstrings-python: 0.10.1 -> 1.2.0 --- .../python-modules/mkdocstrings-python/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/mkdocstrings-python/default.nix b/pkgs/development/python-modules/mkdocstrings-python/default.nix index 656bde232a4c..9f9aea77122c 100644 --- a/pkgs/development/python-modules/mkdocstrings-python/default.nix +++ b/pkgs/development/python-modules/mkdocstrings-python/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "mkdocstrings-python"; - version = "0.10.1"; + version = "1.2.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -19,8 +19,8 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "mkdocstrings"; repo = "python"; - rev = version; - hash = "sha256-VGPlOHQNtXrfmcne93xDIxN20KDGlTQrjeAKhX/L6K0="; + rev = "refs/tags/${version}"; + hash = "sha256-Q+KsVfImmJekDI5TIFREXlB/G5NGtoenHz6sZOVaP5c="; }; nativeBuildInputs = [ From 55d2974b0f83e2e56a0cb07318eab4843fff6b95 Mon Sep 17 00:00:00 2001 From: figsoda Date: Tue, 18 Jul 2023 18:26:17 -0400 Subject: [PATCH 23/69] python310Packages.universal-pathlib: 0.0.23 -> 0.0.24 Diff: https://github.com/fsspec/universal_pathlib/compare/v0.0.23...v0.0.24 Changelog: https://github.com/fsspec/universal_pathlib/releases/tag/v0.0.24 --- .../universal-pathlib/default.nix | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/universal-pathlib/default.nix b/pkgs/development/python-modules/universal-pathlib/default.nix index 2a23c01dd8e8..2b0b0dc66285 100644 --- a/pkgs/development/python-modules/universal-pathlib/default.nix +++ b/pkgs/development/python-modules/universal-pathlib/default.nix @@ -1,24 +1,25 @@ { lib , buildPythonPackage -, fetchFromGitHub -, flit-core +, fetchPypi +, setuptools +, setuptools-scm , fsspec }: buildPythonPackage rec { pname = "universal-pathlib"; - version = "0.0.23"; + version = "0.0.24"; format = "pyproject"; - src = fetchFromGitHub { - owner = "fsspec"; - repo = "universal_pathlib"; - rev = "v${version}"; - hash = "sha256-UT4S7sqRn0/YFzFL1KzByK44u8G7pwWHERzJEm7xmiw="; + src = fetchPypi { + pname = "universal_pathlib"; + inherit version; + hash = "sha256-/L/7leS8afcEr13eT5piSyJp8lGjjIGri+wZ3+qtgw8="; }; nativeBuildInputs = [ - flit-core + setuptools + setuptools-scm ]; propagatedBuildInputs = [ @@ -30,7 +31,7 @@ buildPythonPackage rec { meta = with lib; { description = "Pathlib api extended to use fsspec backends"; homepage = "https://github.com/fsspec/universal_pathlib"; - changelog = "https://github.com/fsspec/universal_pathlib/releases/tag/${src.rev}"; + changelog = "https://github.com/fsspec/universal_pathlib/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ figsoda ]; }; From e9809f31a5c3f690de4969cba04c93cd1667e3e9 Mon Sep 17 00:00:00 2001 From: Sebastian Jordan Date: Fri, 7 Jul 2023 18:02:39 +0200 Subject: [PATCH 24/69] python3Packages.nix-prefetch-github: 6.0.1 -> 7.0.0 --- .../python-modules/nix-prefetch-github/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/nix-prefetch-github/default.nix b/pkgs/development/python-modules/nix-prefetch-github/default.nix index 7746444fd30e..ec967493d080 100644 --- a/pkgs/development/python-modules/nix-prefetch-github/default.nix +++ b/pkgs/development/python-modules/nix-prefetch-github/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "nix-prefetch-github"; - version = "6.0.1"; + version = "7.0.0"; disabled = pythonOlder "3.8"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "seppeljordan"; repo = "nix-prefetch-github"; rev = "v${version}"; - sha256 = "tvoDSqg4g517c1w0VcsVm3r4mBFG3RHaOTAJAv1ooc4="; + hash = "sha256-oIR2iEiOBQ1VKouJTLqEiWWNzrMSJcnxK+m/j9Ia/m8="; }; nativeCheckInputs = [ unittestCheckHook git which ]; From 9d55df7a374310d124b95f0d17f36140aa7cc819 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:01:32 -0700 Subject: [PATCH 25/69] docs/contributing: fix "ha256" -> "sha256" typo --- doc/contributing/coding-conventions.chapter.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/contributing/coding-conventions.chapter.md b/doc/contributing/coding-conventions.chapter.md index 03cd3dd458c8..eb9932d48b68 100644 --- a/doc/contributing/coding-conventions.chapter.md +++ b/doc/contributing/coding-conventions.chapter.md @@ -456,7 +456,7 @@ In the file `pkgs/top-level/all-packages.nix` you can find fetch helpers, these owner = "NixOS"; repo = "nix"; rev = "1f795f9f44607cc5bec70d1300150bfefcef2aae"; - hash = "ha256-7D4m+saJjbSFP5hOwpQq2FGR2rr+psQMTcyb1ZvtXsQ="; + hash = "sha256-7D4m+saJjbSFP5hOwpQq2FGR2rr+psQMTcyb1ZvtXsQ="; } ``` From e2e1dd7d0a3a28a470ae3d5df0d905d9bacd7e66 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:01:50 -0700 Subject: [PATCH 26/69] psst: adapt update script to new nix-prefetch-github --- pkgs/applications/audio/psst/update.sh | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/audio/psst/update.sh b/pkgs/applications/audio/psst/update.sh index 9671ccab0262..470068755df0 100755 --- a/pkgs/applications/audio/psst/update.sh +++ b/pkgs/applications/audio/psst/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -i bash -p nix wget nix-prefetch-github jq coreutils +#!nix-shell -i bash -p wget nix-prefetch-github jq coreutils # shellcheck shell=bash @@ -27,15 +27,12 @@ fi version="unstable-$(date +%F)" # Sources -src_hash=$(nix-prefetch-github jpochyla psst --rev "$rev" | jq -r .sha256) +src_hash=$(nix-prefetch-github jpochyla psst --rev "$rev" | jq -r .hash) # Cargo.lock src="https://raw.githubusercontent.com/jpochyla/psst/$rev" wget "${TOKEN_ARGS[@]}" "$src/Cargo.lock" -O Cargo.lock -# Use friendlier hashes -src_hash=$(nix hash to-sri --type sha256 "$src_hash") - sed -i -E -e "s#version = \".*\"#version = \"$version\"#" default.nix sed -i -E -e "s#rev = \".*\"#rev = \"$rev\"#" default.nix sed -i -E -e "s#hash = \".*\"#hash = \"$src_hash\"#" default.nix From c249486edb141837f28af2afd5b3c1331899d626 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:01:56 -0700 Subject: [PATCH 27/69] squeezelite: adapt update script to new nix-prefetch-github --- pkgs/applications/audio/squeezelite/update.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/applications/audio/squeezelite/update.sh b/pkgs/applications/audio/squeezelite/update.sh index d12213f83482..0a53ef988155 100755 --- a/pkgs/applications/audio/squeezelite/update.sh +++ b/pkgs/applications/audio/squeezelite/update.sh @@ -12,8 +12,7 @@ if [[ "$currentVersion" == "$latestVersion" ]]; then exit 0 fi -srcHash=$(nix-prefetch-github ralph-irving squeezelite --rev "$latestRev" | jq -r .sha256) -srcHash=$(nix hash to-sri --type sha256 "$srcHash") +srcHash=$(nix-prefetch-github ralph-irving squeezelite --rev "$latestRev" | jq -r .hash) update-source-version squeezelite "$latestVersion" "$srcHash" --rev="${latestRev}" From c06efc2173dfa38e30dfd4843f00b12a464285c9 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:01 -0700 Subject: [PATCH 28/69] solana-validator: adapt update script to new nix-prefetch-github The update script is also already broken and needs: 1. Add missing packages to the shebang. 2. Retrieve cargo hash from the proper package. We also take the opportunity to switch ot using the newer "hash" and "cargoHash" properties. --- .../blockchains/solana-validator/default.nix | 8 ++++---- .../blockchains/solana-validator/pin.json | 4 ++-- .../blockchains/solana-validator/update.sh | 18 +++++++++--------- 3 files changed, 15 insertions(+), 15 deletions(-) mode change 100644 => 100755 pkgs/applications/blockchains/solana-validator/update.sh diff --git a/pkgs/applications/blockchains/solana-validator/default.nix b/pkgs/applications/blockchains/solana-validator/default.nix index 897968e25063..d91da1db8fe2 100644 --- a/pkgs/applications/blockchains/solana-validator/default.nix +++ b/pkgs/applications/blockchains/solana-validator/default.nix @@ -42,8 +42,8 @@ let pinData = lib.importJSON ./pin.json; version = pinData.version; - sha256 = pinData.sha256; - cargoSha256 = pinData.cargoSha256; + hash = pinData.hash; + cargoHash = pinData.cargoHash; in rustPlatform.buildRustPackage rec { pname = "solana-validator"; @@ -53,11 +53,11 @@ rustPlatform.buildRustPackage rec { owner = "solana-labs"; repo = "solana"; rev = "v${version}"; - inherit sha256; + inherit hash; }; # partly inspired by https://github.com/obsidiansystems/solana-bridges/blob/develop/default.nix#L29 - inherit cargoSha256; + inherit cargoHash; cargoBuildFlags = builtins.map (n: "--bin=${n}") solanaPkgs; diff --git a/pkgs/applications/blockchains/solana-validator/pin.json b/pkgs/applications/blockchains/solana-validator/pin.json index 175cd79ad1bc..4747c3e93434 100644 --- a/pkgs/applications/blockchains/solana-validator/pin.json +++ b/pkgs/applications/blockchains/solana-validator/pin.json @@ -1,5 +1,5 @@ { "version": "1.10.35", - "sha256": "sha256-y7+ogMJ5E9E/+ZaTCHWOQWG7iR+BGuVqvlNUDT++Ghc=", - "cargoSha256": "sha256-idlu9qkh2mrF6MxstRcvemKrtTGNY/InBnIDqRvDQPs" + "hash": "sha256-y7+ogMJ5E9E/+ZaTCHWOQWG7iR+BGuVqvlNUDT++Ghc=", + "cargoHash": "sha256-idlu9qkh2mrF6MxstRcvemKrtTGNY/InBnIDqRvDQPs" } diff --git a/pkgs/applications/blockchains/solana-validator/update.sh b/pkgs/applications/blockchains/solana-validator/update.sh old mode 100644 new mode 100755 index ffd8b0010cc2..cb8aa43ac61e --- a/pkgs/applications/blockchains/solana-validator/update.sh +++ b/pkgs/applications/blockchains/solana-validator/update.sh @@ -1,9 +1,9 @@ #!/usr/bin/env nix-shell -#! nix-shell -i oil -p jq sd nix-prefetch-github ripgrep +#! nix-shell -i oil -p jq moreutils nix-prefetch-github gnused # TODO set to `verbose` or `extdebug` once implemented in oil shopt --set xtrace -# we need failures inside of command subs to get the correct cargoSha256 +# we need failures inside of command subs to get the correct cargoHash shopt --unset inherit_errexit const directory = $(dirname $0 | xargs realpath) @@ -11,23 +11,23 @@ const owner = "solana-labs" const repo = "solana" const latest_rev = $(curl -q https://api.github.com/repos/${owner}/${repo}/releases/latest | \ jq -r '.tag_name') -const latest_version = $(echo $latest_rev | sd 'v' '') +const latest_version = $(echo ${latest_rev#v}) const current_version = $(jq -r '.version' $directory/pin.json) if ("$latest_version" === "$current_version") { echo "solana is already up-to-date" return 0 } else { const tarball_meta = $(nix-prefetch-github $owner $repo --rev "$latest_rev") - const tarball_hash = "sha256-$(echo $tarball_meta | jq -r '.sha256')" + const tarball_hash = $(echo $tarball_meta | jq -r '.hash') jq ".version = \"$latest_version\" | \ - .\"sha256\" = \"$tarball_hash\" | \ - .\"cargoSha256\" = \"\"" $directory/pin.json | sponge $directory/pin.json + .\"hash\" = \"$tarball_hash\" | \ + .\"cargoHash\" = \"\"" $directory/pin.json | sponge $directory/pin.json - const new_cargo_sha256 = $(nix-build -A solana-testnet 2>&1 | \ + const new_cargo_hash = $(nix-build -A solana-validator 2>&1 | \ tail -n 2 | \ head -n 1 | \ - sd '\s+got:\s+' '') + sed 's/\s*got:\s*//') - jq ".cargoSha256 = \"$new_cargo_sha256\"" $directory/pin.json | sponge $directory/pin.json + jq ".cargoHash = \"$new_cargo_hash\"" $directory/pin.json | sponge $directory/pin.json } From 43850a77db127484f8bfa0e40893687ce88ad471 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:05 -0700 Subject: [PATCH 29/69] emacsPackages.tsc: adapt update script to new nix-prefetch-github The update script seems to have been broken already. More work needs to be done to fix it. In the meantime, this PR also takes the opportunity to switch to using newer "hash" and "cargoHash" attributes. --- .../elisp-packages/manual-packages/tsc/default.nix | 2 +- .../elisp-packages/manual-packages/tsc/src.json | 4 ++-- .../elisp-packages/manual-packages/tsc/update.py | 12 ++++++------ 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/default.nix b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/default.nix index 9825ed0834a2..3fa9f1b4f974 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/default.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/default.nix @@ -55,7 +55,7 @@ let rm -r $out/lib ''; - inherit (srcMeta) cargoSha256; + inherit (srcMeta) cargoHash; }; in symlinkJoin { diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/src.json b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/src.json index 6aa6fee1830a..b3ac6a030644 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/src.json +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/src.json @@ -3,8 +3,8 @@ "owner": "emacs-tree-sitter", "repo": "elisp-tree-sitter", "rev": "909717c685ff5a2327fa2ca8fb8a25216129361c", - "sha256": "LrakDpP3ZhRQqz47dPcyoQnu5lROdaNlxGaQfQT6u+k=" + "hash": "sha256-LrakDpP3ZhRQqz47dPcyoQnu5lROdaNlxGaQfQT6u+k=" }, "version": "0.18.0", - "cargoSha256": "sha256-IRCZqszBkGF8anF/kpcPOzHdOP4lAtJBAp6FS5tAOx8=" + "cargoHash": "sha256-IRCZqszBkGF8anF/kpcPOzHdOP4lAtJBAp6FS5tAOx8=" } diff --git a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/update.py b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/update.py index 082602fcc4fd..a144cb77be92 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/update.py +++ b/pkgs/applications/editors/emacs/elisp-packages/manual-packages/tsc/update.py @@ -51,12 +51,12 @@ def get_src(tag_name: str) -> Dict[str, str]: ) src = json.loads(p.stdout) - fields = ["owner", "repo", "rev", "sha256"] + fields = ["owner", "repo", "rev", "hash"] return {f: src[f] for f in fields} -def get_cargo_sha256(drv_path: str): +def get_cargo_hash(drv_path: str): # Note: No check=True since we expect this command to fail p = subprocess.run(["nix-store", "-r", drv_path], stderr=subprocess.PIPE) @@ -74,7 +74,7 @@ def get_cargo_sha256(drv_path: str): if m: return m.group(1) - raise ValueError("Could not extract actual sha256 hash: ", stderr) + raise ValueError("Could not extract actual hash: ", stderr) if __name__ == "__main__": @@ -102,20 +102,20 @@ if __name__ == "__main__": nativeBuildInputs = [ clang ]; src = fetchFromGitHub (lib.importJSON %s); sourceRoot = "source/core"; - cargoSha256 = lib.fakeSha256; + cargoHash = lib.fakeHash; } """ % (tag_name, f.name), ) - cargo_sha256 = get_cargo_sha256(drv_path) + cargo_hash = get_cargo_hash(drv_path) with open(join(cwd, "src.json"), mode="w") as f: json.dump( { "src": src, "version": tag_name, - "cargoSha256": cargo_sha256, + "cargoHash": cargo_hash, }, f, indent=2, From c15073ac0df81bbe718ad37b05088589661a9276 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:10 -0700 Subject: [PATCH 30/69] vscode-extensions.vadimcn.vscode-lldb: adapt update script to new nix-prefetch-github --- .../vscode/extensions/vadimcn.vscode-lldb/update.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/update.sh b/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/update.sh index 03a71b557dad..c6cce01e6d3a 100755 --- a/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/update.sh +++ b/pkgs/applications/editors/vscode/extensions/vadimcn.vscode-lldb/update.sh @@ -24,7 +24,7 @@ if [[ $# -ne 1 ]]; then ) fi old_version=$(sed -nE 's/.*\bversion = "(.*)".*/\1/p' ./default.nix) -if grep -q 'cargoSha256 = ""' ./default.nix; then +if grep -q 'cargoHash = ""' ./default.nix; then old_version='broken' fi if [[ "$version" == "$old_version" ]]; then @@ -34,10 +34,10 @@ echo "$old_version -> $version" # update hashes sed -E 's/\bversion = ".*?"/version = "'$version'"/' --in-place "$nixFile" -srcHash=$(nix-prefetch-github vadimcn vscode-lldb --rev "v$version" | jq --raw-output .sha256) -sed -E 's#\bsha256 = ".*?"#sha256 = "'$srcHash'"#' --in-place "$nixFile" +srcHash=$(nix-prefetch-github vadimcn vscode-lldb --rev "v$version" | jq --raw-output .hash) +sed -E 's#\bhash = ".*?"#hash = "'$srcHash'"#' --in-place "$nixFile" cargoHash=$(nix-prefetch "{ sha256 }: (import $nixpkgs {}).vscode-extensions.vadimcn.vscode-lldb.adapter.cargoDeps.overrideAttrs (_: { outputHash = sha256; })") -sed -E 's#\bcargoSha256 = ".*?"#cargoSha256 = "'$cargoHash'"#' --in-place "$nixFile" +sed -E 's#\bcargoHash = ".*?"#cargoHash = "'$cargoHash'"#' --in-place "$nixFile" pushd $TMPDIR curl -LO https://raw.githubusercontent.com/$owner/$repo/v${version}/package-lock.json From fab2d4d0b466aaab87a7a71a83b8185f36d403c7 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:14 -0700 Subject: [PATCH 31/69] retroarch: format hashes using new nix-prefetch-github output --- .../emulators/retroarch/hashes.json | 170 +++++++++--------- 1 file changed, 85 insertions(+), 85 deletions(-) diff --git a/pkgs/applications/emulators/retroarch/hashes.json b/pkgs/applications/emulators/retroarch/hashes.json index 903708aabd69..1b52cda5c1e3 100644 --- a/pkgs/applications/emulators/retroarch/hashes.json +++ b/pkgs/applications/emulators/retroarch/hashes.json @@ -3,516 +3,516 @@ "owner": "libretro", "repo": "libretro-2048", "rev": "331c1de588ed8f8c370dcbc488e5434a3c09f0f2", - "sha256": "gPrAmoBnfuTnW6t699pqS43vE6t0ca3jZcqTNRaJipA=" + "hash": "sha256-gPrAmoBnfuTnW6t699pqS43vE6t0ca3jZcqTNRaJipA=" }, "atari800": { "owner": "libretro", "repo": "libretro-atari800", "rev": "94033288b026fe699bc50703609807aa8075f4dd", - "sha256": "fTKFELELt1g7t3uPgnXIgeMkkSbl9GHr0/k2FHcpDFI=" + "hash": "sha256-fTKFELELt1g7t3uPgnXIgeMkkSbl9GHr0/k2FHcpDFI=" }, "beetle-gba": { "owner": "libretro", "repo": "beetle-gba-libretro", "rev": "38182572571a48cb58057cde64b915237c4e2d58", - "sha256": "4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=" + "hash": "sha256-4xnXWswozlcXBNI1lbGSNW/gAdIeLLO9Bf1SxOFLhSo=" }, "beetle-lynx": { "owner": "libretro", "repo": "beetle-lynx-libretro", "rev": "3ca44fda26f27418c92ada1b0f38b948af2151ae", - "sha256": "f0A8gA3UT40UDaAkWQcPoDd6vAcM37tNtZ2hCOIyBJA=" + "hash": "sha256-f0A8gA3UT40UDaAkWQcPoDd6vAcM37tNtZ2hCOIyBJA=" }, "beetle-ngp": { "owner": "libretro", "repo": "beetle-ngp-libretro", "rev": "65460e3a9ad529f6901caf669abbda11f437ab55", - "sha256": "+xfD1ZMKtbv5Lp12+5RM7Vl3eEF38kykKW8wj/2EN5w=" + "hash": "sha256-+xfD1ZMKtbv5Lp12+5RM7Vl3eEF38kykKW8wj/2EN5w=" }, "beetle-pce-fast": { "owner": "libretro", "repo": "beetle-pce-fast-libretro", "rev": "e480f6388375f59fd3e7aeef8ef8531c20e5c73e", - "sha256": "uURt6rB0IngWzEpl0DjbckdaTIjNwVCm3auvy7AwUdA=" + "hash": "sha256-uURt6rB0IngWzEpl0DjbckdaTIjNwVCm3auvy7AwUdA=" }, "beetle-pcfx": { "owner": "libretro", "repo": "beetle-pcfx-libretro", "rev": "724bd21b4524f8cf376dbc29c3e5a12cb674c758", - "sha256": "xeIVZ8FWGbETWYRIBNs3Yum7FDit5fb77hhH+RU45BY=" + "hash": "sha256-xeIVZ8FWGbETWYRIBNs3Yum7FDit5fb77hhH+RU45BY=" }, "beetle-psx": { "owner": "libretro", "repo": "beetle-psx-libretro", "rev": "fd812d4cf8f65644faef1ea8597f826ddc37c0a0", - "sha256": "yvMgnY2dGUk8TvvfDklN3f6b1ol7vDu6AJcYzdwy9pI=" + "hash": "sha256-yvMgnY2dGUk8TvvfDklN3f6b1ol7vDu6AJcYzdwy9pI=" }, "beetle-saturn": { "owner": "libretro", "repo": "beetle-saturn-libretro", "rev": "9bd31a4a42d06ca0f6d30ee38a569e57c150c414", - "sha256": "RHvH9Jp6c4cgEMTo+p+dU7qgJqjPbRqJLURadjAysrM=" + "hash": "sha256-RHvH9Jp6c4cgEMTo+p+dU7qgJqjPbRqJLURadjAysrM=" }, "beetle-snes": { "owner": "libretro", "repo": "beetle-bsnes-libretro", "rev": "d770563fc3c4bd9abb522952cefb4aa923ba0b91", - "sha256": "zHPtfgp9hc8Q4gXJ5VgfJLWLeYjCsQhkfU1T5RM7AL0=" + "hash": "sha256-zHPtfgp9hc8Q4gXJ5VgfJLWLeYjCsQhkfU1T5RM7AL0=" }, "beetle-supafaust": { "owner": "libretro", "repo": "supafaust", "rev": "75c658cce454e58ae04ea252f53a31c60d61548e", - "sha256": "2fXarVfb5/SYXF8t25/fGNFvODpGas5Bi0hLIbXgB+0=" + "hash": "sha256-2fXarVfb5/SYXF8t25/fGNFvODpGas5Bi0hLIbXgB+0=" }, "beetle-supergrafx": { "owner": "libretro", "repo": "beetle-supergrafx-libretro", "rev": "1ff2daa9377114d5394142f75f1c388b706567ed", - "sha256": "0FCm9kURtUQpyPb8cSmRAxttnUJnhE3EWV8DPvlj8HE=" + "hash": "sha256-0FCm9kURtUQpyPb8cSmRAxttnUJnhE3EWV8DPvlj8HE=" }, "beetle-vb": { "owner": "libretro", "repo": "beetle-vb-libretro", "rev": "dd6393f76ff781df0f4e8c953f5b053b1e61b313", - "sha256": "C8OtTNdC7GNFsY2EH56in35IX8d6ou/1R04kMvM9674=" + "hash": "sha256-C8OtTNdC7GNFsY2EH56in35IX8d6ou/1R04kMvM9674=" }, "beetle-wswan": { "owner": "libretro", "repo": "beetle-wswan-libretro", "rev": "81e8b2afd31b7f0f939a3df6d70c8723bcc8a701", - "sha256": "xmDtMC5pId5X4vf9kHO55HmRpp/4ZruOM8QJSl//9R8=" + "hash": "sha256-xmDtMC5pId5X4vf9kHO55HmRpp/4ZruOM8QJSl//9R8=" }, "blastem": { "owner": "libretro", "repo": "blastem", "rev": "277e4a62668597d4f59cadda1cbafb844f981d45", - "sha256": "EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs=" + "hash": "sha256-EHvKElPw8V5Z6LnMaQXBCdM4niLIlF3aBm8dRbeYXHs=" }, "bluemsx": { "owner": "libretro", "repo": "bluemsx-libretro", "rev": "acf358be18644a9df0ed9602d63c2f73d4fe605a", - "sha256": "K4mH+brakYZcVEeYMFUkFThqdZGt2+aP5DfpOgWSJxg=" + "hash": "sha256-K4mH+brakYZcVEeYMFUkFThqdZGt2+aP5DfpOgWSJxg=" }, "bsnes": { "owner": "libretro", "repo": "bsnes-libretro", "rev": "4da970a334ba4644cef72e560985ea3f31fa40f7", - "sha256": "Bu5j1wrMNVMmxQULZwTdXyWi2i6F5C6m8wFDxvtjYdI=" + "hash": "sha256-Bu5j1wrMNVMmxQULZwTdXyWi2i6F5C6m8wFDxvtjYdI=" }, "bsnes-hd": { "owner": "DerKoun", "repo": "bsnes-hd", "rev": "04821703aefdc909a4fd66d168433fcac06c2ba7", - "sha256": "QmNthbWb92vel5PFwJRXeEEVZHIxfvZ0ls+csodpGbU=" + "hash": "sha256-QmNthbWb92vel5PFwJRXeEEVZHIxfvZ0ls+csodpGbU=" }, "bsnes-mercury": { "owner": "libretro", "repo": "bsnes-mercury", "rev": "fb9a41fe9bc230a07c4506cad3cbf21d3fa635b4", - "sha256": "gBOxKSv3j229IVdtffqFV/zSSacEs8UsBERnQgdFw4Y=" + "hash": "sha256-gBOxKSv3j229IVdtffqFV/zSSacEs8UsBERnQgdFw4Y=" }, "citra": { "owner": "libretro", "repo": "citra", "rev": "d7e1612c17b1acb5d5eb68bb046820db49aeea5e", - "sha256": "u2XwAudFgI7j/k6Bq5fk874aI6KpZawlBoIs2+M+eZY=", + "hash": "sha256-u2XwAudFgI7j/k6Bq5fk874aI6KpZawlBoIs2+M+eZY=", "fetchSubmodules": true }, "desmume": { "owner": "libretro", "repo": "desmume", "rev": "fbd368c8109f95650e1f81bca1facd6d4d8687d7", - "sha256": "7MFa5zd1jdOCqSI+VPl5nAHE7Kfm/lA0lbSPFskzqaQ=" + "hash": "sha256-7MFa5zd1jdOCqSI+VPl5nAHE7Kfm/lA0lbSPFskzqaQ=" }, "desmume2015": { "owner": "libretro", "repo": "desmume2015", "rev": "af397ff3d1f208c27f3922cc8f2b8e08884ba893", - "sha256": "kEb+og4g7rJvCinBZKcb42geZO6W8ynGsTG9yqYgI+U=" + "hash": "sha256-kEb+og4g7rJvCinBZKcb42geZO6W8ynGsTG9yqYgI+U=" }, "dolphin": { "owner": "libretro", "repo": "dolphin", "rev": "2f4b0f7902257d40a054f60b2c670d6e314f2a04", - "sha256": "9WYWbLehExYbPmGJpguhVFXqFJ9aR6VxzFVChd4QOEg=" + "hash": "sha256-9WYWbLehExYbPmGJpguhVFXqFJ9aR6VxzFVChd4QOEg=" }, "dosbox": { "owner": "libretro", "repo": "dosbox-libretro", "rev": "b7b24262c282c0caef2368c87323ff8c381b3102", - "sha256": "PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I=" + "hash": "sha256-PG2eElenlEpu0U/NIh53p0uLqewnEdaq6Aoak5E1P3I=" }, "eightyone": { "owner": "libretro", "repo": "81-libretro", "rev": "340a51b250fb8fbf1a9e5d3ad3924044250064e0", - "sha256": "Cz3gPwbME8lDMKju3dn8hM8O2u9h9+8EUg7Nf6a7epA=" + "hash": "sha256-Cz3gPwbME8lDMKju3dn8hM8O2u9h9+8EUg7Nf6a7epA=" }, "fbalpha2012": { "owner": "libretro", "repo": "fbalpha2012", "rev": "7f8860543a81ba79c0e1ce1aa219af44568c628a", - "sha256": "r1lH+CR+nVRCPkVo0XwLi35/ven/FEkNhWUTA6cUVxc=" + "hash": "sha256-r1lH+CR+nVRCPkVo0XwLi35/ven/FEkNhWUTA6cUVxc=" }, "fbneo": { "owner": "libretro", "repo": "fbneo", "rev": "ffcd114b8ea3f3387b66997263ea5df358675aa5", - "sha256": "a4hXRluHQY5hC5jFU2mlqUAI5GmQk6Rbl1HNRA929CI=" + "hash": "sha256-a4hXRluHQY5hC5jFU2mlqUAI5GmQk6Rbl1HNRA929CI=" }, "fceumm": { "owner": "libretro", "repo": "libretro-fceumm", "rev": "1fa798b220a6df8417dcf7da0ab117533385d9c2", - "sha256": "B1iHZ7BVaM/GBgdD2jNZIEmXcRqKC6YaO9z1ByocMtE=" + "hash": "sha256-B1iHZ7BVaM/GBgdD2jNZIEmXcRqKC6YaO9z1ByocMtE=" }, "flycast": { "owner": "libretro", "repo": "flycast", "rev": "4c293f306bc16a265c2d768af5d0cea138426054", - "sha256": "9IxpRBY1zifhOebLJSDMA/wiOfcZj+KOiPrgmjiFxvo=" + "hash": "sha256-9IxpRBY1zifhOebLJSDMA/wiOfcZj+KOiPrgmjiFxvo=" }, "fmsx": { "owner": "libretro", "repo": "fmsx-libretro", "rev": "1360c9ff32b390383567774d01fbe5d6dfcadaa3", - "sha256": "LLGD29HKpV34IOJ2ygjHZZT7XQqHHXccnpGNfWCuabg=" + "hash": "sha256-LLGD29HKpV34IOJ2ygjHZZT7XQqHHXccnpGNfWCuabg=" }, "freeintv": { "owner": "libretro", "repo": "freeintv", "rev": "9a65ec6e31d48ad0dae1f381c1ec61c897f970cb", - "sha256": "ZeWw/K6i04XRympqZ6sQG/yjN8cJglVcIkxpyRHx424=" + "hash": "sha256-ZeWw/K6i04XRympqZ6sQG/yjN8cJglVcIkxpyRHx424=" }, "fuse": { "owner": "libretro", "repo": "fuse-libretro", "rev": "847dbbd6f787823ac9a5dfacdd68ab181063374e", - "sha256": "jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM=" + "hash": "sha256-jzS7SFALV/YjI77ST+IWHwUsuhT+Zr5w4t6C7O8yzFM=" }, "gambatte": { "owner": "libretro", "repo": "gambatte-libretro", "rev": "ea563fac40e281b29d37f6b56657abef8f1aaf0d", - "sha256": "2jVbEsGkvdH1lA2//mb2Rm3xeh4EyFUcOUXdydSisvk=" + "hash": "sha256-2jVbEsGkvdH1lA2//mb2Rm3xeh4EyFUcOUXdydSisvk=" }, "genesis-plus-gx": { "owner": "libretro", "repo": "Genesis-Plus-GX", "rev": "f6a9bd72a56a11c2068be2d15fa52dda3e1e8027", - "sha256": "4siJGPRMpXHfP6mBPoDJArNaISTNjPKT69cvtGldadI=" + "hash": "sha256-4siJGPRMpXHfP6mBPoDJArNaISTNjPKT69cvtGldadI=" }, "gpsp": { "owner": "libretro", "repo": "gpsp", "rev": "541adc9e1c6c9328c07058659594d6300ae0fa19", - "sha256": "2iv/gMOgTZReDgVzEc3WyOdAlYgfANK08CtpZIyPxgA=" + "hash": "sha256-2iv/gMOgTZReDgVzEc3WyOdAlYgfANK08CtpZIyPxgA=" }, "gw": { "owner": "libretro", "repo": "gw-libretro", "rev": "19a1cb3105ca4a82139fb4994e7995fd956f6f8d", - "sha256": "luhKXzxrXVNAHw8ArF1I78Zch7XEPwI3aqe0f6WRgD0=" + "hash": "sha256-luhKXzxrXVNAHw8ArF1I78Zch7XEPwI3aqe0f6WRgD0=" }, "handy": { "owner": "libretro", "repo": "libretro-handy", "rev": "63db085af671bad2929078c55434623b7d4632a1", - "sha256": "N6M3KSU4NPJCqoG/UMrna9/6H5PsBBMUQLrvqiIdxpE=" + "hash": "sha256-N6M3KSU4NPJCqoG/UMrna9/6H5PsBBMUQLrvqiIdxpE=" }, "hatari": { "owner": "libretro", "repo": "hatari", "rev": "1ebf0a0488580ef95c0b28f02223b31813c867c5", - "sha256": "i6dr+fFWPatRCIY+ajIZ1p3ERPV5ktv0nxHKxbGE5ao=" + "hash": "sha256-i6dr+fFWPatRCIY+ajIZ1p3ERPV5ktv0nxHKxbGE5ao=" }, "mame": { "owner": "libretro", "repo": "mame", "rev": "f7761a9902d59030882c58d4482446196e748c50", - "sha256": "g37WAMt9iBbAYq4DfeTlHWmdW5/Vl7g90v6vCLmMQ3g=" + "hash": "sha256-g37WAMt9iBbAYq4DfeTlHWmdW5/Vl7g90v6vCLmMQ3g=" }, "mame2000": { "owner": "libretro", "repo": "mame2000-libretro", "rev": "0208517404e841fce0c094f1a2776a0e1c6c101d", - "sha256": "WEJd7wSzY32sqMpMrjCD0hrOyAQq1WMBaGiY/2QQ4BQ=" + "hash": "sha256-WEJd7wSzY32sqMpMrjCD0hrOyAQq1WMBaGiY/2QQ4BQ=" }, "mame2003": { "owner": "libretro", "repo": "mame2003-libretro", "rev": "b1cc49cf1d8bbef88b890e1c2a315a39d009171b", - "sha256": "bc4uER92gHf20JjR/Qcetvlu89ZmldJ1DiQphJZt/EA=" + "hash": "sha256-bc4uER92gHf20JjR/Qcetvlu89ZmldJ1DiQphJZt/EA=" }, "mame2003-plus": { "owner": "libretro", "repo": "mame2003-plus-libretro", "rev": "0b9309d9d86aea2457df74709e997bea37899475", - "sha256": "US0nkEH4EeKRejuN8UoDeLt5dhafuo7PEVx0FnpeUG0=" + "hash": "sha256-US0nkEH4EeKRejuN8UoDeLt5dhafuo7PEVx0FnpeUG0=" }, "mame2010": { "owner": "libretro", "repo": "mame2010-libretro", "rev": "5f524dd5fca63ec1dcf5cca63885286109937587", - "sha256": "OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M=" + "hash": "sha256-OmJgDdlan/niGQfajv0KNG8NJfEKn7Nfe6GRQD+TZ8M=" }, "mame2015": { "owner": "libretro", "repo": "mame2015-libretro", "rev": "2599c8aeaf84f62fe16ea00daa460a19298c121c", - "sha256": "TURTX0XrvqwqKG3O3aCttDAdicBdge5F1thVvYgEHaw=" + "hash": "sha256-TURTX0XrvqwqKG3O3aCttDAdicBdge5F1thVvYgEHaw=" }, "mame2016": { "owner": "libretro", "repo": "mame2016-libretro", "rev": "01058613a0109424c4e7211e49ed83ac950d3993", - "sha256": "IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak=" + "hash": "sha256-IsM7f/zlzvomVOYlinJVqZllUhDfy4NNTeTPtNmdVak=" }, "melonds": { "owner": "libretro", "repo": "melonds", "rev": "0e1f06da626cbe67215c3f06f6bdf510dd4e4649", - "sha256": "ax9Vu8+1pNAHWPXrx5QA0n5EsmaJ2T7KJ5Otz8DSZwM=" + "hash": "sha256-ax9Vu8+1pNAHWPXrx5QA0n5EsmaJ2T7KJ5Otz8DSZwM=" }, "mesen": { "owner": "libretro", "repo": "mesen", "rev": "caa4e6f14373c40bd2805c600d1b476e7616444a", - "sha256": "cnPNBWXbnCpjgW/wJIboiRBzv3zrHWxpNM1kg09ShLU=" + "hash": "sha256-cnPNBWXbnCpjgW/wJIboiRBzv3zrHWxpNM1kg09ShLU=" }, "mesen-s": { "owner": "libretro", "repo": "mesen-s", "rev": "32a7adfb4edb029324253cb3632dfc6599ad1aa8", - "sha256": "/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo=" + "hash": "sha256-/OOMH7kt9Pmkdmy5m+I8FMvog5mqZHyrZvfjHccz8oo=" }, "meteor": { "owner": "libretro", "repo": "meteor-libretro", "rev": "e533d300d0561564451bde55a2b73119c768453c", - "sha256": "zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=" + "hash": "sha256-zMkgzUz2rk0SD5ojY4AqaDlNM4k4QxuUxVBRBcn6TqQ=" }, "mgba": { "owner": "libretro", "repo": "mgba", "rev": "a69c3434afe8b26cb8f9463077794edfa7d5efad", - "sha256": "rmitsZzRWJ0VYzcNz/UtIK8OscQ4lkyuAwgfXOvSTzg=" + "hash": "sha256-rmitsZzRWJ0VYzcNz/UtIK8OscQ4lkyuAwgfXOvSTzg=" }, "mupen64plus": { "owner": "libretro", "repo": "mupen64plus-libretro-nx", "rev": "5a63aadedc29655254d8fc7b4da3a325472e198b", - "sha256": "QNa8WGJFShO4vc4idUntCUaLik4xQXBA+X7z5sjZ2NE=" + "hash": "sha256-QNa8WGJFShO4vc4idUntCUaLik4xQXBA+X7z5sjZ2NE=" }, "neocd": { "owner": "libretro", "repo": "neocd_libretro", "rev": "2070f5258c9d3feee15962f9db8c8ef20072ece8", - "sha256": "X+lS1zW5oTzp7wwurM5xjVqIBwEOCIdj/NX/+33K2qg=" + "hash": "sha256-X+lS1zW5oTzp7wwurM5xjVqIBwEOCIdj/NX/+33K2qg=" }, "nestopia": { "owner": "libretro", "repo": "nestopia", "rev": "16b14865caf1effca030630e2fc73d2d4271fc53", - "sha256": "dU9X8sK/qDA/Qj0x1GicmSAzQyRqVmLiTcfCPe8+BjM=" + "hash": "sha256-dU9X8sK/qDA/Qj0x1GicmSAzQyRqVmLiTcfCPe8+BjM=" }, "np2kai": { "owner": "AZO234", "repo": "NP2kai", "rev": "6089943a80a45b6c18d765765f7f31d7a5c0d9c6", - "sha256": "tdF0Qb+smWAVoPmI0dd5s51cnYxMmqM36rQNMiEjU9A=", + "hash": "sha256-tdF0Qb+smWAVoPmI0dd5s51cnYxMmqM36rQNMiEjU9A=", "fetchSubmodules": true }, "nxengine": { "owner": "libretro", "repo": "nxengine-libretro", "rev": "1f371e51c7a19049e00f4364cbe9c68ca08b303a", - "sha256": "4XBNTzgN8pLyrK9KsVxTRR1I8CQaZCnVR4gMryYpWW0=" + "hash": "sha256-4XBNTzgN8pLyrK9KsVxTRR1I8CQaZCnVR4gMryYpWW0=" }, "o2em": { "owner": "libretro", "repo": "libretro-o2em", "rev": "a2a12472fde910b6089ac3ca6de805bd58a9c999", - "sha256": "0cZYw3rrnaR+PfwReRXadLV8RVLblYqlZxJue6OZncg=" + "hash": "sha256-0cZYw3rrnaR+PfwReRXadLV8RVLblYqlZxJue6OZncg=" }, "opera": { "owner": "libretro", "repo": "opera-libretro", "rev": "8a49bb8877611037438aeb857cb182f41ee0e3a1", - "sha256": "oH+sQi4D+xkqiJbq7fgGdHjgvyLt8UjlgXIo7K3wXZM=" + "hash": "sha256-oH+sQi4D+xkqiJbq7fgGdHjgvyLt8UjlgXIo7K3wXZM=" }, "parallel-n64": { "owner": "libretro", "repo": "parallel-n64", "rev": "a03fdcba6b2e9993f050b50112f597ce2f44fa2c", - "sha256": "aJG+s+1OkHQHPvVzlJWU/VziQWj1itKkRwqcEBK+lgA=" + "hash": "sha256-aJG+s+1OkHQHPvVzlJWU/VziQWj1itKkRwqcEBK+lgA=" }, "pcsx2": { "owner": "libretro", "repo": "pcsx2", "rev": "f3c8743d6a42fe429f703b476fecfdb5655a98a9", - "sha256": "0piCNWX7QbZ58KyTlWp4h1qLxXpi1z6ML8sBHMTvCY4=" + "hash": "sha256-0piCNWX7QbZ58KyTlWp4h1qLxXpi1z6ML8sBHMTvCY4=" }, "pcsx_rearmed": { "owner": "libretro", "repo": "pcsx_rearmed", "rev": "4373e29de72c917dbcd04ec2a5fb685e69d9def3", - "sha256": "727//NqBNEo6RHNQr1RY5cxMrEvfuJczCo+cUJZVv7U=" + "hash": "sha256-727//NqBNEo6RHNQr1RY5cxMrEvfuJczCo+cUJZVv7U=" }, "picodrive": { "owner": "libretro", "repo": "picodrive", "rev": "7ab066aab84f15388a53433ea273420bcf917e00", - "sha256": "NK9ASiiIkGZmi2YfCqEzZallVfS7nprLRrBk4dlGyAI=", + "hash": "sha256-NK9ASiiIkGZmi2YfCqEzZallVfS7nprLRrBk4dlGyAI=", "fetchSubmodules": true }, "play": { "owner": "jpd002", "repo": "Play-", "rev": "b33834af08a4954f06be215eee80a72e7a378e91", - "sha256": "IxZk+kSdrkDAabbzdFM8QUrjaJUc1DHjSfAtDuwDJkw=", + "hash": "sha256-IxZk+kSdrkDAabbzdFM8QUrjaJUc1DHjSfAtDuwDJkw=", "fetchSubmodules": true }, "ppsspp": { "owner": "hrydgard", "repo": "ppsspp", "rev": "7df51c3d060a780b7383c5c1380e346ad9304bb4", - "sha256": "GK3W0/yWaID3s0W0v6TcgJ0ZU984YspWMS6+XLyThjM=", + "hash": "sha256-GK3W0/yWaID3s0W0v6TcgJ0ZU984YspWMS6+XLyThjM=", "fetchSubmodules": true }, "prboom": { "owner": "libretro", "repo": "libretro-prboom", "rev": "d9c3975669b4aab5a1397e0174838bcbbc3c1582", - "sha256": "klSJ7QIpNjlfyjhfeEQZ3j8Gnp4agd0qKVp0vr+KHVA=" + "hash": "sha256-klSJ7QIpNjlfyjhfeEQZ3j8Gnp4agd0qKVp0vr+KHVA=" }, "prosystem": { "owner": "libretro", "repo": "prosystem-libretro", "rev": "763ad22c7de51c8f06d6be0d49c554ce6a94a29b", - "sha256": "rE/hxP8hl9lLTNx/WympFDByjZs46ekyxLKRV4V8D9E=" + "hash": "sha256-rE/hxP8hl9lLTNx/WympFDByjZs46ekyxLKRV4V8D9E=" }, "puae": { "owner": "libretro", "repo": "libretro-uae", "rev": "ae58c0f226b654d643b9f2dce58f64657f57cb76", - "sha256": "6oMTwCYGdVhh+R853gOQRzZfa7slDwe6aGVCvdm6NDU=" + "hash": "sha256-6oMTwCYGdVhh+R853gOQRzZfa7slDwe6aGVCvdm6NDU=" }, "quicknes": { "owner": "libretro", "repo": "QuickNES_Core", "rev": "75d501a87ec2074e8d2f7256fb0359513c263c29", - "sha256": "yAHVTgOt8SGyPXihp4YNKKAvxl9VBBAvHyzLW86zSCw=" + "hash": "sha256-yAHVTgOt8SGyPXihp4YNKKAvxl9VBBAvHyzLW86zSCw=" }, "sameboy": { "owner": "libretro", "repo": "sameboy", "rev": "09138330990da32362246c7034cf4de2ea0a2a2b", - "sha256": "hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4=" + "hash": "sha256-hQWIuNwCykkJR+6naNarR50kUvIFNny+bbZHR6/GA/4=" }, "scummvm": { "owner": "libretro", "repo": "scummvm", "rev": "ab2e5d59cd25dfa5943d45c2567e8330d67fad8b", - "sha256": "9IaQR0prbCT70iWA99NMgGAKPobifdWBX17p4zL0fEM=" + "hash": "sha256-9IaQR0prbCT70iWA99NMgGAKPobifdWBX17p4zL0fEM=" }, "smsplus-gx": { "owner": "libretro", "repo": "smsplus-gx", "rev": "60af17ddb2231ba98f4ed1203e2a2f58d08ea088", - "sha256": "2SZR9BOTYLmtjEF4Bdl49H2pFNEIaU68VqlA7ll5TqU=" + "hash": "sha256-2SZR9BOTYLmtjEF4Bdl49H2pFNEIaU68VqlA7ll5TqU=" }, "snes9x": { "owner": "snes9xgit", "repo": "snes9x", "rev": "cc0a87711a7a208cabefc9fd1dbb90e31fe51684", - "sha256": "1m6QvYl5Z0WM1XeXCYLvQaXH8A15P3x8ZzwdFeVPeWo=" + "hash": "sha256-1m6QvYl5Z0WM1XeXCYLvQaXH8A15P3x8ZzwdFeVPeWo=" }, "snes9x2002": { "owner": "libretro", "repo": "snes9x2002", "rev": "540baad622d9833bba7e0696193cb06f5f02f564", - "sha256": "WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs=" + "hash": "sha256-WJh8Qf1/uFaL9f9d28qXsbpeAZfYGPgjoty3G6XAKSs=" }, "snes9x2005": { "owner": "libretro", "repo": "snes9x2005", "rev": "fd45b0e055bce6cff3acde77414558784e93e7d0", - "sha256": "zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI=" + "hash": "sha256-zjA/G62V38/hj+WjJDGAs48AcTUIiMWL8feCqLsCRnI=" }, "snes9x2010": { "owner": "libretro", "repo": "snes9x2010", "rev": "d8b10c4cd7606ed58f9c562864c986bc960faaaf", - "sha256": "7FmteYrAYr+pGNXGg9CBC4NFlijGRf7GdtJfiNjmonU=" + "hash": "sha256-7FmteYrAYr+pGNXGg9CBC4NFlijGRf7GdtJfiNjmonU=" }, "stella": { "owner": "stella-emu", "repo": "stella", "rev": "93ea39d6155f08c21707a85a0b04b33008a7ab15", - "sha256": "9dCBaLxb1CBbngBd3tJ0x5lT+dnzzhK2DO4Gk/S6WW4=" + "hash": "sha256-9dCBaLxb1CBbngBd3tJ0x5lT+dnzzhK2DO4Gk/S6WW4=" }, "stella2014": { "owner": "libretro", "repo": "stella2014-libretro", "rev": "8ab051edd4816f33a5631d230d54059eeed52c5f", - "sha256": "wqssB8WXXF2Lu9heII8nWLLOvI38cIfHSMA7OOd6jx0=" + "hash": "sha256-wqssB8WXXF2Lu9heII8nWLLOvI38cIfHSMA7OOd6jx0=" }, "swanstation": { "owner": "libretro", "repo": "swanstation", "rev": "e24f21196cdcd50321475c4366b51af245a6bbe6", - "sha256": "DjAB0Z0yY9IGESeNNkkbdoAO5ItJ/8cZ5ycRofHG978=" + "hash": "sha256-DjAB0Z0yY9IGESeNNkkbdoAO5ItJ/8cZ5ycRofHG978=" }, "tgbdual": { "owner": "libretro", "repo": "tgbdual-libretro", "rev": "a6f3018e6a23030afc1873845ee54d4b2d8ec9d3", - "sha256": "MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs=" + "hash": "sha256-MBUgYXX/Pc+TkwoS7OwbXSPssKUf6lwWx/bKhvwDkHs=" }, "thepowdertoy": { "owner": "libretro", "repo": "ThePowderToy", "rev": "f644498193c4c8be689d8a1d2a70e37e4eff4243", - "sha256": "aPUqrrrH2Ia56A3Kx6ClMcZO9nbHGJIcEQ6nFyIMamo=" + "hash": "sha256-aPUqrrrH2Ia56A3Kx6ClMcZO9nbHGJIcEQ6nFyIMamo=" }, "tic80": { "owner": "libretro", "repo": "tic-80", "rev": "bd6ce86174fc7c9d7d3a86263acf3a7de1b62c11", - "sha256": "RFp8sTSRwD+cgW3EYk3nBeY+zVKgZVQI5mjtfe2a64Q=", + "hash": "sha256-RFp8sTSRwD+cgW3EYk3nBeY+zVKgZVQI5mjtfe2a64Q=", "fetchSubmodules": true }, "vba-m": { "owner": "libretro", "repo": "vbam-libretro", "rev": "640ce45325694d1dc574e90c95c55bc464368d7e", - "sha256": "aiIeleZHt95Y/kigLEbRaCb3KM0ezMB7yzO16FbuBNM=" + "hash": "sha256-aiIeleZHt95Y/kigLEbRaCb3KM0ezMB7yzO16FbuBNM=" }, "vba-next": { "owner": "libretro", "repo": "vba-next", "rev": "0c310082a6345790124e9348861b300bcccbeced", - "sha256": "RQx/WR83EtPcQkx0ft4Y0/5LaKIOST3L/fh4qoPxz78=" + "hash": "sha256-RQx/WR83EtPcQkx0ft4Y0/5LaKIOST3L/fh4qoPxz78=" }, "vecx": { "owner": "libretro", "repo": "libretro-vecx", "rev": "8e932c1d585ae9e467186dea9e73ce38fe1490f7", - "sha256": "2Vo30yiP6SfUt3XHCfQTKTKEtCywdRIoUe6d0Or21WM=" + "hash": "sha256-2Vo30yiP6SfUt3XHCfQTKTKEtCywdRIoUe6d0Or21WM=" }, "virtualjaguar": { "owner": "libretro", "repo": "virtualjaguar-libretro", "rev": "2cc06899b839639397b8b30384a191424b6f529d", - "sha256": "7FiU5/n1hVePttkz7aVfXXx88+zX06/5SJk3EaRYvhQ=" + "hash": "sha256-7FiU5/n1hVePttkz7aVfXXx88+zX06/5SJk3EaRYvhQ=" }, "yabause": { "owner": "libretro", "repo": "yabause", "rev": "4c96b96f7fbe07223627c469ff33376b2a634748", - "sha256": "7hEpGh2EcrlUoRiUNntaMZEQtStglYAY1MeCub5p8f8=" + "hash": "sha256-7hEpGh2EcrlUoRiUNntaMZEQtStglYAY1MeCub5p8f8=" } } From aab2097d2d6c3440debb3fa06ae6b7e6643c782f Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:18 -0700 Subject: [PATCH 32/69] tandoor-recipes, tandoor-recipes.frontend: adapt update script to new nix-prefetch-github We also take the opportunity also to migrate from "sha256" and "yarnSha256" attributes to "hash" and "yarnHash" attributes. --- pkgs/applications/misc/tandoor-recipes/common.nix | 4 ++-- pkgs/applications/misc/tandoor-recipes/frontend.nix | 2 +- pkgs/applications/misc/tandoor-recipes/update.sh | 7 +++---- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/misc/tandoor-recipes/common.nix b/pkgs/applications/misc/tandoor-recipes/common.nix index 6ae3ede11b1a..7a280285ac5d 100644 --- a/pkgs/applications/misc/tandoor-recipes/common.nix +++ b/pkgs/applications/misc/tandoor-recipes/common.nix @@ -6,10 +6,10 @@ rec { owner = "TandoorRecipes"; repo = "recipes"; rev = version; - sha256 = "sha256-cVrgmRDzuLzl2+4UcrLRdrP6ZFWMkavu9OEogNas2fA="; + hash = "sha256-cVrgmRDzuLzl2+4UcrLRdrP6ZFWMkavu9OEogNas2fA="; }; - yarnSha256 = "sha256-0u9P/OsoThP8gonrzcnO5zhIboWMI1mTsXHlbt7l9oE="; + yarnHash = "sha256-0u9P/OsoThP8gonrzcnO5zhIboWMI1mTsXHlbt7l9oE="; meta = with lib; { homepage = "https://tandoor.dev/"; diff --git a/pkgs/applications/misc/tandoor-recipes/frontend.nix b/pkgs/applications/misc/tandoor-recipes/frontend.nix index 98da59a1d299..dd6380449d95 100644 --- a/pkgs/applications/misc/tandoor-recipes/frontend.nix +++ b/pkgs/applications/misc/tandoor-recipes/frontend.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation { yarnOfflineCache = fetchYarnDeps { yarnLock = "${common.src}/vue/yarn.lock"; - sha256 = common.yarnSha256; + hash = common.yarnHash; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/tandoor-recipes/update.sh b/pkgs/applications/misc/tandoor-recipes/update.sh index 49b6d5f98ae9..63021d76f6b7 100755 --- a/pkgs/applications/misc/tandoor-recipes/update.sh +++ b/pkgs/applications/misc/tandoor-recipes/update.sh @@ -23,7 +23,7 @@ fi package_src="https://raw.githubusercontent.com/TandoorRecipes/recipes/$version" -src_hash=$(nix-prefetch-github TandoorRecipes recipes --rev "${version}" | jq -r .sha256) +src_hash=$(nix-prefetch-github TandoorRecipes recipes --rev "${version}" | jq -r .hash) tmpdir=$(mktemp -d) trap 'rm -rf "$tmpdir"' EXIT @@ -34,9 +34,8 @@ yarn_hash=$(prefetch-yarn-deps yarn.lock) popd # Use friendlier hashes -src_hash=$(nix hash to-sri --type sha256 "$src_hash") yarn_hash=$(nix hash to-sri --type sha256 "$yarn_hash") sed -i -E -e "s#version = \".*\"#version = \"$version\"#" common.nix -sed -i -E -e "s#sha256 = \".*\"#sha256 = \"$src_hash\"#" common.nix -sed -i -E -e "s#yarnSha256 = \".*\"#yarnSha256 = \"$yarn_hash\"#" common.nix +sed -i -E -e "s#hash = \".*\"#hash = \"$src_hash\"#" common.nix +sed -i -E -e "s#yarnHash = \".*\"#yarnHash = \"$yarn_hash\"#" common.nix From ece93eb8af620092b7a5d4997528a3c1eedf9f72 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:22 -0700 Subject: [PATCH 33/69] element-desktop, element-web: adapt update script to new nix-prefetch-github --- .../instant-messengers/element/element-desktop.nix | 2 +- .../networking/instant-messengers/element/element-web.nix | 2 +- .../instant-messengers/element/keytar/default.nix | 2 +- .../networking/instant-messengers/element/keytar/pin.json | 2 +- .../networking/instant-messengers/element/keytar/update.sh | 4 ++-- .../networking/instant-messengers/element/pin.nix | 4 ++-- .../instant-messengers/element/seshat/default.nix | 6 ++---- .../networking/instant-messengers/element/seshat/pin.json | 2 +- .../networking/instant-messengers/element/seshat/update.sh | 4 ++-- .../networking/instant-messengers/element/update.sh | 4 ++-- 10 files changed, 15 insertions(+), 17 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix index 67e21bcd1821..3f2d5a99fe67 100644 --- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix +++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation (finalAttrs: builtins.removeAttrs pinData [ "hashes" ] // { owner = "vector-im"; repo = "element-desktop"; rev = "v${finalAttrs.version}"; - sha256 = desktopSrcHash; + hash = desktopSrcHash; }; offlineCache = fetchYarnDeps { diff --git a/pkgs/applications/networking/instant-messengers/element/element-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix index e6b73d2983a6..4e80744a4c0f 100644 --- a/pkgs/applications/networking/instant-messengers/element/element-web.nix +++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix @@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: builtins.removeAttrs pinData [ "hashes" ] // { owner = "vector-im"; repo = finalAttrs.pname; rev = "v${finalAttrs.version}"; - sha256 = webSrcHash; + hash = webSrcHash; }; offlineCache = fetchYarnDeps { diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix index 6e462ef24dbe..84196371be3a 100644 --- a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix +++ b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix @@ -12,7 +12,7 @@ in stdenv.mkDerivation rec { owner = "atom"; repo = "node-keytar"; rev = "v${version}"; - sha256 = pinData.srcHash; + hash = pinData.srcHash; }; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/pin.json b/pkgs/applications/networking/instant-messengers/element/keytar/pin.json index dc7420ab4543..626f5a62ea1d 100644 --- a/pkgs/applications/networking/instant-messengers/element/keytar/pin.json +++ b/pkgs/applications/networking/instant-messengers/element/keytar/pin.json @@ -1,5 +1,5 @@ { "version": "7.9.0", - "srcHash": "Mnl0Im2hZJXJEtyXb5rgMntekkUAnOG2MN1bwfgh0eg=", + "srcHash": "sha256-Mnl0Im2hZJXJEtyXb5rgMntekkUAnOG2MN1bwfgh0eg=", "npmHash": "sha256-ldfRWV+HXBdBYO2ZiGbVFSHV4/bMG43U7w+sJ4kpVUY=" } diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/update.sh b/pkgs/applications/networking/instant-messengers/element/keytar/update.sh index 0ddfa0247263..9b8d014f03c9 100755 --- a/pkgs/applications/networking/instant-messengers/element/keytar/update.sh +++ b/pkgs/applications/networking/instant-messengers/element/keytar/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-npm-deps +#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-npm-deps nix-prefetch-github if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then echo "Regenerates packaging data for the keytar package." @@ -25,7 +25,7 @@ wget "$SRC/package.json" npm_hash=$(prefetch-npm-deps package-lock.json) rm -rf node_modules package.json package-lock.json -src_hash=$(nix-prefetch-github atom node-keytar --rev v${version} | jq -r .sha256) +src_hash=$(nix-prefetch-github atom node-keytar --rev v${version} | jq -r .hash) cat > pin.json << EOF { diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix index 6f3cfa832567..d32b72557181 100644 --- a/pkgs/applications/networking/instant-messengers/element/pin.nix +++ b/pkgs/applications/networking/instant-messengers/element/pin.nix @@ -1,9 +1,9 @@ { "version" = "1.11.36"; "hashes" = { - "desktopSrcHash" = "MMTuyyUXur5Fy24aXPWtZbQLAaXR2R7coEi8ZOJo1YI="; + "desktopSrcHash" = "sha256-MMTuyyUXur5Fy24aXPWtZbQLAaXR2R7coEi8ZOJo1YI="; "desktopYarnHash" = "03wmdqnxzjrvdypwrb5z564liiqamwn6qmw2fww1mja8dkdkx5ng"; - "webSrcHash" = "u+Y/iLRlTd5RkczF6qIaer9HKFnm8LUGP8ZnB/WfiGI="; + "webSrcHash" = "sha256-u+Y/iLRlTd5RkczF6qIaer9HKFnm8LUGP8ZnB/WfiGI="; "webYarnHash" = "0s9ly1hr9jvb2asgjf6g5n5n5w6qh51wkwyl7ps891c0hv9m28zm"; }; } diff --git a/pkgs/applications/networking/instant-messengers/element/seshat/default.nix b/pkgs/applications/networking/instant-messengers/element/seshat/default.nix index 915e3faa3e40..5d7535c5289b 100644 --- a/pkgs/applications/networking/instant-messengers/element/seshat/default.nix +++ b/pkgs/applications/networking/instant-messengers/element/seshat/default.nix @@ -5,13 +5,13 @@ let in rustPlatform.buildRustPackage rec { pname = "seshat-node"; - inherit (pinData) version; + inherit (pinData) version cargoHash; src = fetchFromGitHub { owner = "matrix-org"; repo = "seshat"; rev = version; - sha256 = pinData.srcHash; + hash = pinData.srcHash; }; sourceRoot = "source/seshat-node/native"; @@ -53,6 +53,4 @@ in rustPlatform.buildRustPackage rec { ''; disallowedReferences = [ stdenv.cc.cc ]; - - cargoSha256 = pinData.cargoHash; } diff --git a/pkgs/applications/networking/instant-messengers/element/seshat/pin.json b/pkgs/applications/networking/instant-messengers/element/seshat/pin.json index 78d5156f54a4..f0648d11f2e0 100644 --- a/pkgs/applications/networking/instant-messengers/element/seshat/pin.json +++ b/pkgs/applications/networking/instant-messengers/element/seshat/pin.json @@ -1,6 +1,6 @@ { "version": "2.3.3", - "srcHash": "HmKHWFoO8TQ9S/RcJnJ3h85/2uSkqGrgLnX82hkux4Q=", + "srcHash": "sha256-HmKHWFoO8TQ9S/RcJnJ3h85/2uSkqGrgLnX82hkux4Q=", "yarnHash": "1cbkv8ap7f8vxl5brzqb86d2dyxg555sz67cldrp0vgnk8sq6ibp", "cargoHash": "sha256-WsgTbQ91aZZV5sIuFVjsccdiXivjtAUC1Zs/4uNk1zU=" } diff --git a/pkgs/applications/networking/instant-messengers/element/seshat/update.sh b/pkgs/applications/networking/instant-messengers/element/seshat/update.sh index 1315715ac049..6e7e75e66bce 100755 --- a/pkgs/applications/networking/instant-messengers/element/seshat/update.sh +++ b/pkgs/applications/networking/instant-messengers/element/seshat/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-yarn-deps yarn nix-prefetch +#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-yarn-deps yarn nix-prefetch nix-prefetch-github if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then echo "Regenerates packaging data for the seshat package." @@ -25,7 +25,7 @@ wget "$SRC/seshat-node/yarn.lock" yarn_hash=$(prefetch-yarn-deps yarn.lock) popd -src_hash=$(nix-prefetch-github matrix-org seshat --rev ${version} | jq -r .sha256) +src_hash=$(nix-prefetch-github matrix-org seshat --rev ${version} | jq -r .hash) cat > pin.json << EOF { diff --git a/pkgs/applications/networking/instant-messengers/element/update.sh b/pkgs/applications/networking/instant-messengers/element/update.sh index ca9f39c306db..c68a347e68ae 100755 --- a/pkgs/applications/networking/instant-messengers/element/update.sh +++ b/pkgs/applications/networking/instant-messengers/element/update.sh @@ -20,7 +20,7 @@ version="${version#v}" # Element Web web_src="https://raw.githubusercontent.com/vector-im/element-web/v$version" -web_src_hash=$(nix-prefetch-github vector-im element-web --rev v${version} | jq -r .sha256) +web_src_hash=$(nix-prefetch-github vector-im element-web --rev v${version} | jq -r .hash) web_tmpdir=$(mktemp -d) trap 'rm -rf "$web_tmpdir"' EXIT @@ -32,7 +32,7 @@ popd # Element Desktop desktop_src="https://raw.githubusercontent.com/vector-im/element-desktop/v$version" -desktop_src_hash=$(nix-prefetch-github vector-im element-desktop --rev v${version} | jq -r .sha256) +desktop_src_hash=$(nix-prefetch-github vector-im element-desktop --rev v${version} | jq -r .hash) desktop_tmpdir=$(mktemp -d) trap 'rm -rf "$desktop_tmpdir"' EXIT From 636c6051242e7c3e2c69d692fa0c02589a4d97a5 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:26 -0700 Subject: [PATCH 34/69] zammad: use new nix-prefetch-github output --- pkgs/applications/networking/misc/zammad/source.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/networking/misc/zammad/source.json b/pkgs/applications/networking/misc/zammad/source.json index fe202a7753df..f7b7280b468d 100644 --- a/pkgs/applications/networking/misc/zammad/source.json +++ b/pkgs/applications/networking/misc/zammad/source.json @@ -2,7 +2,7 @@ "owner": "zammad", "repo": "zammad", "rev": "643aba6ba4ba66c6127038c8cc2cc7a20b912678", - "sha256": "vLLn989M5ZN+jTh60BopEKbuaxOBfDsk6PiM+gHFClo=", + "hash": "sha256-vLLn989M5ZN+jTh60BopEKbuaxOBfDsk6PiM+gHFClo=", "fetchSubmodules": true } From 47cc11849cfcb78abdf67b778dd609ac121548c1 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:30 -0700 Subject: [PATCH 35/69] woodpecker-server, woodpecker-server.woodpecker-frontend: adapt update script to new nix-prefetch-github At the same time, we opportunistically switch to using the newer "hash" attribute. --- .../tools/continuous-integration/woodpecker/common.nix | 8 ++++---- .../tools/continuous-integration/woodpecker/frontend.nix | 2 +- .../tools/continuous-integration/woodpecker/update.sh | 7 +++---- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/pkgs/development/tools/continuous-integration/woodpecker/common.nix b/pkgs/development/tools/continuous-integration/woodpecker/common.nix index 7e1f63b790c6..715575bec9eb 100644 --- a/pkgs/development/tools/continuous-integration/woodpecker/common.nix +++ b/pkgs/development/tools/continuous-integration/woodpecker/common.nix @@ -1,17 +1,17 @@ { lib, fetchFromGitHub }: let version = "0.15.8"; - srcSha256 = "sha256-7CTRx7I47VEKfPvkWhmpyHV3hkeLyHymFMrkyYQ1wl8="; - yarnSha256 = "sha256-PY0BIBbjyi2DG+n5x/IPc0AwrFSwII4huMDU+FeZ/Sc="; + srcHash = "sha256-7CTRx7I47VEKfPvkWhmpyHV3hkeLyHymFMrkyYQ1wl8="; + yarnHash = "sha256-PY0BIBbjyi2DG+n5x/IPc0AwrFSwII4huMDU+FeZ/Sc="; in { - inherit version yarnSha256; + inherit version yarnHash; src = fetchFromGitHub { owner = "woodpecker-ci"; repo = "woodpecker"; rev = "v${version}"; - sha256 = srcSha256; + hash = srcHash; }; postBuild = '' diff --git a/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix b/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix index 267fdc13985a..ccd9a36b8c86 100644 --- a/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix +++ b/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix @@ -11,7 +11,7 @@ mkYarnPackage { packageJSON = ./woodpecker-package.json; offlineCache = fetchYarnDeps { yarnLock = "${common.src}/web/yarn.lock"; - sha256 = common.yarnSha256; + hash = common.yarnHash; }; buildPhase = '' diff --git a/pkgs/development/tools/continuous-integration/woodpecker/update.sh b/pkgs/development/tools/continuous-integration/woodpecker/update.sh index 3530ea6c46c6..b53e5b423936 100755 --- a/pkgs/development/tools/continuous-integration/woodpecker/update.sh +++ b/pkgs/development/tools/continuous-integration/woodpecker/update.sh @@ -28,7 +28,7 @@ fi version="${version#v}" # Woodpecker repository -src_hash=$(nix-prefetch-github woodpecker-ci woodpecker --rev "v${version}" | jq -r .sha256) +src_hash=$(nix-prefetch-github woodpecker-ci woodpecker --rev "v${version}" | jq -r .hash) # Front-end dependencies woodpecker_src="https://raw.githubusercontent.com/woodpecker-ci/woodpecker/v$version" @@ -42,9 +42,8 @@ yarn_hash=$(prefetch-yarn-deps yarn.lock) popd # Use friendlier hashes -src_hash=$(nix hash to-sri --type sha256 "$src_hash") yarn_hash=$(nix hash to-sri --type sha256 "$yarn_hash") sed -i -E -e "s#version = \".*\"#version = \"$version\"#" common.nix -sed -i -E -e "s#srcSha256 = \".*\"#srcSha256 = \"$src_hash\"#" common.nix -sed -i -E -e "s#yarnSha256 = \".*\"#yarnSha256 = \"$yarn_hash\"#" common.nix +sed -i -E -e "s#srcHash = \".*\"#srcHash = \"$src_hash\"#" common.nix +sed -i -E -e "s#yarnHash = \".*\"#yarnHash = \"$yarn_hash\"#" common.nix From 72c7fe7c62e6762acc05cce1b496bc82c6724b06 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:36 -0700 Subject: [PATCH 36/69] netlify-cli: adapt update script to new nix-prefetch-github --- pkgs/development/web/netlify-cli/default.nix | 2 +- pkgs/development/web/netlify-cli/generate.sh | 2 +- pkgs/development/web/netlify-cli/netlify-cli.json | 5 +---- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/development/web/netlify-cli/default.nix b/pkgs/development/web/netlify-cli/default.nix index 5f702b4b080a..f6f403a66d6e 100644 --- a/pkgs/development/web/netlify-cli/default.nix +++ b/pkgs/development/web/netlify-cli/default.nix @@ -8,7 +8,7 @@ in export ESBUILD_BINARY_PATH="${pkgs.esbuild_netlify}/bin/esbuild" ''; src = fetchFromGitHub { - inherit (sourceInfo) owner repo rev sha256; + inherit (sourceInfo) owner repo rev hash; }; bypassCache = true; reconstructLock = true; diff --git a/pkgs/development/web/netlify-cli/generate.sh b/pkgs/development/web/netlify-cli/generate.sh index 6377d204a3e3..3eaed13a85b7 100755 --- a/pkgs/development/web/netlify-cli/generate.sh +++ b/pkgs/development/web/netlify-cli/generate.sh @@ -2,7 +2,7 @@ set -eu -o pipefail cd "$( dirname "${BASH_SOURCE[0]}" )" rm -f ./node-env.nix -src="$(nix-build --expr 'let pkgs = import ../../../.. {}; meta = (pkgs.lib.importJSON ./netlify-cli.json); in pkgs.fetchFromGitHub { inherit (meta) owner repo rev sha256; }')" +src="$(nix-build --expr 'let pkgs = import ../../../.. {}; meta = (pkgs.lib.importJSON ./netlify-cli.json); in pkgs.fetchFromGitHub { inherit (meta) owner repo rev hash; }')" echo $src node2nix \ --input $src/package.json \ diff --git a/pkgs/development/web/netlify-cli/netlify-cli.json b/pkgs/development/web/netlify-cli/netlify-cli.json index bffa1f03d033..1fe187bcbccc 100644 --- a/pkgs/development/web/netlify-cli/netlify-cli.json +++ b/pkgs/development/web/netlify-cli/netlify-cli.json @@ -2,8 +2,5 @@ "owner": "netlify", "repo": "cli", "rev": "6c7e8c9a4db4e2e408f65e6098a194497944e306", - "sha256": "YMnQrurZDJtfeHBCIzy6vToGHnqtdRGvWFPX5RcWyPg=", - "fetchSubmodules": false, - "leaveDotGit": false, - "deepClone": false + "hash": "sha256-YMnQrurZDJtfeHBCIzy6vToGHnqtdRGvWFPX5RcWyPg=" } From e0eef2e7c0ad182bb9728f943df079dca597ad30 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:40 -0700 Subject: [PATCH 37/69] pnpm-lock-export: adapt update script to new nix-prefetch-github --- pkgs/development/web/pnpm-lock-export/update.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/development/web/pnpm-lock-export/update.sh b/pkgs/development/web/pnpm-lock-export/update.sh index 12c11c60b1e5..c1c336c74a07 100755 --- a/pkgs/development/web/pnpm-lock-export/update.sh +++ b/pkgs/development/web/pnpm-lock-export/update.sh @@ -28,7 +28,7 @@ fi version="${version#v}" # pnpm-lock-export repository -src_hash=$(nix-prefetch-github cvent pnpm-lock-export --rev "v${version}" | jq -r .sha256) +src_hash=$(nix-prefetch-github cvent pnpm-lock-export --rev "v${version}" | jq -r .hash) # Front-end dependencies upstream_src="https://raw.githubusercontent.com/cvent/pnpm-lock-export/v$version" @@ -39,7 +39,6 @@ npm install --package-lock-only deps_hash=$(prefetch-npm-deps package-lock.json) # Use friendlier hashes -src_hash=$(nix hash to-sri --type sha256 "$src_hash") deps_hash=$(nix hash to-sri --type sha256 "$deps_hash") sed -i -E -e "s#version = \".*\"#version = \"$version\"#" default.nix From f1836b946fea5968fcb6cb6105e7901b8c498556 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:44 -0700 Subject: [PATCH 38/69] jellyseerr: adapt update script to new nix-prefetch-github --- pkgs/servers/jellyseerr/default.nix | 2 +- pkgs/servers/jellyseerr/pin.json | 2 +- pkgs/servers/jellyseerr/update.sh | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/jellyseerr/default.nix b/pkgs/servers/jellyseerr/default.nix index 80dffed68e34..3f35cdebabec 100644 --- a/pkgs/servers/jellyseerr/default.nix +++ b/pkgs/servers/jellyseerr/default.nix @@ -23,7 +23,7 @@ mkYarnPackage rec { owner = "Fallenbagel"; repo = "jellyseerr"; rev = "v${version}"; - sha256 = pin.srcSha256; + hash = pin.srcHash; }; packageJSON = ./package.json; diff --git a/pkgs/servers/jellyseerr/pin.json b/pkgs/servers/jellyseerr/pin.json index 3681e3df6853..0c658a506c45 100644 --- a/pkgs/servers/jellyseerr/pin.json +++ b/pkgs/servers/jellyseerr/pin.json @@ -1,5 +1,5 @@ { "version": "1.4.1", - "srcSha256": "LDqlQfy1bm2xMNn1oulImfanQmJX57P48VaZn0Jxwpk=", + "srcHash": "sha256-LDqlQfy1bm2xMNn1oulImfanQmJX57P48VaZn0Jxwpk=", "yarnSha256": "162aip7r5vcpfj1sn42qwwdlwnaii32bd2k0gp9py1z0zmw0lwlf" } diff --git a/pkgs/servers/jellyseerr/update.sh b/pkgs/servers/jellyseerr/update.sh index b1561bae217d..ec1dd0879edd 100755 --- a/pkgs/servers/jellyseerr/update.sh +++ b/pkgs/servers/jellyseerr/update.sh @@ -19,7 +19,7 @@ if [ -z "$tag" ]; then fi src="https://raw.githubusercontent.com/Fallenbagel/jellyseerr/$tag" -src_sha256=$(nix-prefetch-github Fallenbagel jellyseerr --rev ${tag} | jq -r .sha256) +src_hash=$(nix-prefetch-github Fallenbagel jellyseerr --rev ${tag} | jq -r .hash) tmpdir=$(mktemp -d) trap 'rm -rf "$tmpdir"' EXIT @@ -33,7 +33,7 @@ curl -O "$src/package.json" cat > pin.json << EOF { "version": "$(echo $tag | grep -P '(\d|\.)+' -o)", - "srcSha256": "$src_sha256", + "srcHash": "$src_hash", "yarnSha256": "$yarn_sha256" } EOF From e8808ced29ab2715e94a6fdc7943a910414fa688 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:48 -0700 Subject: [PATCH 39/69] mastodon: adapt update script to new nix-prefetch-github --- pkgs/servers/mastodon/source.nix | 2 +- pkgs/servers/mastodon/update.sh | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/mastodon/source.nix b/pkgs/servers/mastodon/source.nix index 5184af217056..966e7c9ea462 100644 --- a/pkgs/servers/mastodon/source.nix +++ b/pkgs/servers/mastodon/source.nix @@ -4,7 +4,7 @@ owner = "mastodon"; repo = "mastodon"; rev = "v4.1.4"; - sha256 = "8ULBO8IdwBzC5dgX3netTHbbRrODX4CropWZWtqWHZw="; + hash = "sha256-8ULBO8IdwBzC5dgX3netTHbbRrODX4CropWZWtqWHZw="; }; in applyPatches { inherit src; diff --git a/pkgs/servers/mastodon/update.sh b/pkgs/servers/mastodon/update.sh index 7b4d97fd1397..74a1ce129ab4 100755 --- a/pkgs/servers/mastodon/update.sh +++ b/pkgs/servers/mastodon/update.sh @@ -76,7 +76,7 @@ trap cleanup EXIT echo "Fetching source code $REVISION" JSON=$(nix-prefetch-github "$OWNER" "$REPO" --rev "$REVISION" 2> $WORK_DIR/nix-prefetch-git.out) -SHA=$(echo "$JSON" | jq -r .sha256) +HASH=$(echo "$JSON" | jq -r .hash) echo "Creating version.nix" echo "\"$VERSION\"" | sed 's/^"v/"/' > version.nix @@ -88,7 +88,7 @@ cat > source.nix << EOF owner = "mastodon"; repo = "mastodon"; rev = "$REVISION"; - sha256 = "$SHA"; + hash = "$HASH"; }; in applyPatches { inherit src; From f38f3e439b16e71e6298b969ea362e9c0f652955 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:51 -0700 Subject: [PATCH 40/69] matrix-appservice-discord: adapt update script to new nix-prefetch-github --- pkgs/servers/matrix-appservice-discord/default.nix | 2 +- pkgs/servers/matrix-appservice-discord/pin.json | 2 +- pkgs/servers/matrix-appservice-discord/update.sh | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/matrix-appservice-discord/default.nix b/pkgs/servers/matrix-appservice-discord/default.nix index f8563ab57dae..b1d14319638d 100644 --- a/pkgs/servers/matrix-appservice-discord/default.nix +++ b/pkgs/servers/matrix-appservice-discord/default.nix @@ -22,7 +22,7 @@ in mkYarnPackage rec { owner = "matrix-org"; repo = "matrix-appservice-discord"; rev = "v${version}"; - sha256 = pin.srcSha256; + hash = pin.srcHash; }; packageJSON = ./package.json; diff --git a/pkgs/servers/matrix-appservice-discord/pin.json b/pkgs/servers/matrix-appservice-discord/pin.json index 57b7ffd28a2c..901864ef4474 100644 --- a/pkgs/servers/matrix-appservice-discord/pin.json +++ b/pkgs/servers/matrix-appservice-discord/pin.json @@ -1,5 +1,5 @@ { "version": "3.1.1", - "srcSha256": "g681w7RD96/xKP+WnIyY4bcVHVQhysgDPZo4TgCRiuY=", + "srcHash": "sha256-g681w7RD96/xKP+WnIyY4bcVHVQhysgDPZo4TgCRiuY=", "yarnSha256": "0cm9yprj0ajmrdpap3p2lx3xrrkar6gghlxnj9127ks6p5c1ji3r" } diff --git a/pkgs/servers/matrix-appservice-discord/update.sh b/pkgs/servers/matrix-appservice-discord/update.sh index 4ffdc4b34db3..ec089d7a2189 100755 --- a/pkgs/servers/matrix-appservice-discord/update.sh +++ b/pkgs/servers/matrix-appservice-discord/update.sh @@ -22,7 +22,7 @@ if [ -z "$tag" ]; then fi src="https://raw.githubusercontent.com/$ORG/$PROJ/$tag" -src_sha256=$(nix-prefetch-github $ORG $PROJ --rev ${tag} | jq -r .sha256) +src_hash=$(nix-prefetch-github $ORG $PROJ --rev ${tag} | jq -r .hash) tmpdir=$(mktemp -d) trap 'rm -rf "$tmpdir"' EXIT @@ -36,7 +36,7 @@ curl -O "$src/package.json" cat > pin.json << EOF { "version": "$(echo $tag | grep -P '(\d|\.)+' -o)", - "srcSha256": "$src_sha256", + "srcSha256": "$src_hash", "yarnSha256": "$yarn_sha256" } EOF From 095ad56963431f45ea9dcfb467889b12645fd739 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:54 -0700 Subject: [PATCH 41/69] matrix-appservice-slack: adapt update script to new nix-prefetch-github --- pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix | 2 +- pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json | 2 +- pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix b/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix index 21e49c9b1e04..1fc99bb20336 100644 --- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix +++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/default.nix @@ -19,7 +19,7 @@ mkYarnPackage rec { owner = "matrix-org"; repo = "matrix-appservice-slack"; rev = data.version; - sha256 = data.srcHash; + hash = data.srcHash; }; offlineCache = fetchYarnDeps { diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json b/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json index 7a9f4b44e263..f5b5f49390ab 100644 --- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json +++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/pin.json @@ -1,5 +1,5 @@ { "version": "2.1.1", - "srcHash": "+NO/V3EyqdxavnSTBU7weJnueL6+aCH3UWkqclpsId0=", + "srcHash": "sha256-+NO/V3EyqdxavnSTBU7weJnueL6+aCH3UWkqclpsId0=", "yarnHash": "1pqv7g3xbfs4zhmyxy5p216kq2jwjfjzxw2dv2a7hl0qwk6igyki" } diff --git a/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh b/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh index 92494a3c8beb..dc3bab3311f2 100755 --- a/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh +++ b/pkgs/servers/matrix-synapse/matrix-appservice-slack/update.sh @@ -16,7 +16,7 @@ if [ -z "$version" ]; then fi src="https://raw.githubusercontent.com/matrix-org/matrix-appservice-slack/$version" -src_hash=$(nix-prefetch-github matrix-org matrix-appservice-slack --rev ${version} | jq -r .sha256) +src_hash=$(nix-prefetch-github matrix-org matrix-appservice-slack --rev ${version} | jq -r .hash) tmpdir=$(mktemp -d) trap 'rm -rf "$tmpdir"' EXIT From 68d6f72e5977ef9c379af35d45bae4034ab8f8a8 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:02:58 -0700 Subject: [PATCH 42/69] matrix-hookshot: adapt update script to new nix-prefetch-github --- pkgs/servers/matrix-synapse/matrix-hookshot/default.nix | 4 ++-- pkgs/servers/matrix-synapse/matrix-hookshot/pin.json | 4 ++-- pkgs/servers/matrix-synapse/matrix-hookshot/update.sh | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/servers/matrix-synapse/matrix-hookshot/default.nix b/pkgs/servers/matrix-synapse/matrix-hookshot/default.nix index d6d42472ba6b..99b28a4defa4 100644 --- a/pkgs/servers/matrix-synapse/matrix-hookshot/default.nix +++ b/pkgs/servers/matrix-synapse/matrix-hookshot/default.nix @@ -26,7 +26,7 @@ mkYarnPackage rec { owner = "matrix-org"; repo = "matrix-hookshot"; rev = data.version; - sha256 = data.srcHash; + hash = data.srcHash; }; packageJSON = ./package.json; @@ -39,7 +39,7 @@ mkYarnPackage rec { cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - sha256 = data.cargoHash; + hash = data.cargoHash; }; packageResolutions = { diff --git a/pkgs/servers/matrix-synapse/matrix-hookshot/pin.json b/pkgs/servers/matrix-synapse/matrix-hookshot/pin.json index 008bbe5ab50e..a5429d85d460 100644 --- a/pkgs/servers/matrix-synapse/matrix-hookshot/pin.json +++ b/pkgs/servers/matrix-synapse/matrix-hookshot/pin.json @@ -1,6 +1,6 @@ { "version": "4.4.0", - "srcHash": "mPLDdAVIMb5d2LPGtIfm/ofRs42081S3+QTsvqkfp3s=", + "srcHash": "sha256-mPLDdAVIMb5d2LPGtIfm/ofRs42081S3+QTsvqkfp3s=", "yarnHash": "0qd3h870mk3a2lzm0r7kyh07ykw86h9xwai9h205gnv1w0d59z6i", - "cargoHash": "NGcnRKasYE4dleQLq+E4cM6C04Rfu4AsenDznGyC2Nk=" + "cargoHash": "sha256-NGcnRKasYE4dleQLq+E4cM6C04Rfu4AsenDznGyC2Nk=" } diff --git a/pkgs/servers/matrix-synapse/matrix-hookshot/update.sh b/pkgs/servers/matrix-synapse/matrix-hookshot/update.sh index 1ffde25917d2..4092abf9bc14 100755 --- a/pkgs/servers/matrix-synapse/matrix-hookshot/update.sh +++ b/pkgs/servers/matrix-synapse/matrix-hookshot/update.sh @@ -15,7 +15,7 @@ if [ -z "$version" ]; then fi src="https://raw.githubusercontent.com/matrix-org/matrix-hookshot/$version" -src_hash=$(nix-prefetch-github matrix-org matrix-hookshot --rev ${version} | jq -r .sha256) +src_hash=$(nix-prefetch-github matrix-org matrix-hookshot --rev ${version} | jq -r .hash) tmpdir=$(mktemp -d) trap 'rm -rf "$tmpdir"' EXIT @@ -32,6 +32,6 @@ cat > pin.json << EOF "version": "$version", "srcHash": "$src_hash", "yarnHash": "$yarn_hash", - "cargoHash": "0000000000000000000000000000000000000000000000000000" + "cargoHash": "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" } EOF From 412b28f7b2b45370d393c55ec27ce8e7bc780083 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:03:01 -0700 Subject: [PATCH 43/69] memos: adapt update script to new nix-prefetch-github --- pkgs/servers/memos/default.nix | 4 ++-- pkgs/servers/memos/update.sh | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/servers/memos/default.nix b/pkgs/servers/memos/default.nix index dd7366e8a64a..191db9358329 100644 --- a/pkgs/servers/memos/default.nix +++ b/pkgs/servers/memos/default.nix @@ -6,7 +6,7 @@ let owner = "usememos"; repo = "memos"; rev = "v${version}"; - sha256 = "lcOZg5mlFPp04ZCm5GDhQfSwE2ahSmGhmdAw+pygK0A="; + hash = "sha256-lcOZg5mlFPp04ZCm5GDhQfSwE2ahSmGhmdAw+pygK0A="; }; frontend = buildNpmPackage { @@ -32,7 +32,7 @@ buildGoModule rec { # check will unable to access network in sandbox doCheck = false; - vendorSha256 = "sha256-UM/xeRvfvlq+jGzWpc3EU5GJ6Dt7RmTbSt9h3da6f8w="; + vendorHash = "sha256-UM/xeRvfvlq+jGzWpc3EU5GJ6Dt7RmTbSt9h3da6f8w="; # Inject frontend assets into go embed prePatch = '' diff --git a/pkgs/servers/memos/update.sh b/pkgs/servers/memos/update.sh index f925f75bcd70..cc600e2f0281 100755 --- a/pkgs/servers/memos/update.sh +++ b/pkgs/servers/memos/update.sh @@ -34,12 +34,12 @@ sed -e "s/version =.*;/version = \"$TARGET_VERSION\";/g" \ # update hash SRC_HASH="$(nix-instantiate --eval -A memos.src.outputHash | tr -d '"')" -NEW_HASH="$(nix-prefetch-github usememos memos --rev v$TARGET_VERSION | jq -r .sha256)" +NEW_HASH="$(nix-prefetch-github usememos memos --rev v$TARGET_VERSION | jq -r .hash)" replaceHash "$SRC_HASH" "$NEW_HASH" -GO_HASH="$(nix-instantiate --eval -A memos.vendorSha256 | tr -d '"')" -EMPTY_HASH="$(nix-instantiate --eval -A lib.fakeSha256 | tr -d '"')" +GO_HASH="$(nix-instantiate --eval -A memos.vendorHash | tr -d '"')" +EMPTY_HASH="$(nix-instantiate --eval -A lib.fakeHash | tr -d '"')" replaceHash "$GO_HASH" "$EMPTY_HASH" replaceHash "$EMPTY_HASH" "$(extractVendorHash "$GO_HASH")" From 4fb8ca742045a67208da743fe13a88f5e6adac73 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:03:04 -0700 Subject: [PATCH 44/69] lemmy-server, lemmy-ui: adapt update script to new nix-prefetch-github --- pkgs/servers/web-apps/lemmy/pin.json | 8 ++++---- pkgs/servers/web-apps/lemmy/server.nix | 4 ++-- pkgs/servers/web-apps/lemmy/ui.nix | 4 ++-- pkgs/servers/web-apps/lemmy/update.py | 22 +++++++++------------- 4 files changed, 17 insertions(+), 21 deletions(-) diff --git a/pkgs/servers/web-apps/lemmy/pin.json b/pkgs/servers/web-apps/lemmy/pin.json index 489b5ecff477..0fbf8af7ce49 100644 --- a/pkgs/servers/web-apps/lemmy/pin.json +++ b/pkgs/servers/web-apps/lemmy/pin.json @@ -1,8 +1,8 @@ { "serverVersion": "0.18.2", "uiVersion": "0.18.2", - "serverSha256": "sha256-T08CjsRREgGJb1vXJrYihYaCin8NNHtsG+2PUHoI4Ho=", - "serverCargoSha256": "sha256-nTZcLOpsbdeGzpz3PzgXZEGZHMbvSDA5rB2A3S9tMF8=", - "uiSha256": "sha256-qFFnmdCONjfPyfp8v0VonPQP8G5b2DVpxEUAQT731Z0=", - "uiYarnDepsSha256": "sha256-fRJpA9WstNNNOePoqotJKYmlikkcjc34iM0WO8+a/3Q=" + "serverHash": "sha256-T08CjsRREgGJb1vXJrYihYaCin8NNHtsG+2PUHoI4Ho=", + "serverCargoHash": "sha256-nTZcLOpsbdeGzpz3PzgXZEGZHMbvSDA5rB2A3S9tMF8=", + "uiHash": "sha256-qFFnmdCONjfPyfp8v0VonPQP8G5b2DVpxEUAQT731Z0=", + "uiYarnDepsHash": "sha256-fRJpA9WstNNNOePoqotJKYmlikkcjc34iM0WO8+a/3Q=" } diff --git a/pkgs/servers/web-apps/lemmy/server.nix b/pkgs/servers/web-apps/lemmy/server.nix index 652dfbe7b18a..c8229c02cd4d 100644 --- a/pkgs/servers/web-apps/lemmy/server.nix +++ b/pkgs/servers/web-apps/lemmy/server.nix @@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec { owner = "LemmyNet"; repo = "lemmy"; rev = version; - sha256 = pinData.serverSha256; + hash = pinData.serverHash; fetchSubmodules = true; }; @@ -30,7 +30,7 @@ rustPlatform.buildRustPackage rec { echo 'pub const VERSION: &str = "${version}";' > crates/utils/src/version.rs ''; - cargoSha256 = pinData.serverCargoSha256; + cargoHash = pinData.serverCargoHash; buildInputs = [ postgresql ] ++ lib.optionals stdenv.isDarwin [ libiconv Security ]; diff --git a/pkgs/servers/web-apps/lemmy/ui.nix b/pkgs/servers/web-apps/lemmy/ui.nix index 06cceef3aa4d..cd7b11102731 100644 --- a/pkgs/servers/web-apps/lemmy/ui.nix +++ b/pkgs/servers/web-apps/lemmy/ui.nix @@ -40,7 +40,7 @@ let repo = name; rev = version; fetchSubmodules = true; - sha256 = pinData.uiSha256; + hash = pinData.uiHash; }; in mkYarnPackage { @@ -52,7 +52,7 @@ mkYarnPackage { packageJSON = ./package.json; offlineCache = fetchYarnDeps { yarnLock = src + "/yarn.lock"; - sha256 = pinData.uiYarnDepsSha256; + hash = pinData.uiYarnDepsHash; }; yarnPreBuild = '' diff --git a/pkgs/servers/web-apps/lemmy/update.py b/pkgs/servers/web-apps/lemmy/update.py index 95bd59dec3fe..10ef764d5ff0 100755 --- a/pkgs/servers/web-apps/lemmy/update.py +++ b/pkgs/servers/web-apps/lemmy/update.py @@ -29,10 +29,10 @@ SERVER_REPO = "lemmy" class Pin: serverVersion: str uiVersion: str - serverSha256: str = "" - serverCargoSha256: str = "" - uiSha256: str = "" - uiYarnDepsSha256: str = "" + serverHash: str = "" + serverCargoHash: str = "" + uiHash: str = "" + uiYarnDepsHash: str = "" filename: Optional[str] = None @@ -83,11 +83,7 @@ def prefetch_github(owner: str, repo: str, rev: str) -> str: stdout=subprocess.PIPE, ) - sha256 = json.loads(proc.stdout)["sha256"] - if not sha256.startswith("sha256-"): # Work around bug in nix-prefetch-github - return "sha256-" + sha256 - - return sha256 + return json.loads(proc.stdout)["hash"] def get_latest_tag(owner: str, repo: str, prerelease: bool = False) -> str: @@ -144,9 +140,9 @@ def get_fod_hash(attr: str) -> str: def make_server_pin(pin: Pin, attr: str) -> None: - pin.serverSha256 = prefetch_github(OWNER, SERVER_REPO, pin.serverVersion) + pin.serverHash = prefetch_github(OWNER, SERVER_REPO, pin.serverVersion) pin.write() - pin.serverCargoSha256 = get_fod_hash(attr) + pin.serverCargoHash = get_fod_hash(attr) pin.write() @@ -159,9 +155,9 @@ def make_ui_pin(pin: Pin, package_json: str, attr: str) -> None: with open(os.path.join(SCRIPT_DIR, package_json), "wb") as fd: fd.write(resp.read()) - pin.uiSha256 = prefetch_github(OWNER, UI_REPO, pin.uiVersion) + pin.uiHash = prefetch_github(OWNER, UI_REPO, pin.uiVersion) pin.write() - pin.uiYarnDepsSha256 = get_fod_hash(attr) + pin.uiYarnDepsHash = get_fod_hash(attr) pin.write() From 205803c1eed2ee6cf6480fae98a623162291775f Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Wed, 12 Jul 2023 00:50:12 -0700 Subject: [PATCH 45/69] lemmy-server, lemmy-ui: small update script cleanup --- pkgs/servers/web-apps/lemmy/update.py | 20 +++++--------------- 1 file changed, 5 insertions(+), 15 deletions(-) diff --git a/pkgs/servers/web-apps/lemmy/update.py b/pkgs/servers/web-apps/lemmy/update.py index 10ef764d5ff0..4e867553b790 100755 --- a/pkgs/servers/web-apps/lemmy/update.py +++ b/pkgs/servers/web-apps/lemmy/update.py @@ -3,10 +3,8 @@ from urllib.request import Request, urlopen import dataclasses import subprocess -import hashlib import os.path import semver -import base64 from typing import ( Optional, Dict, @@ -48,9 +46,9 @@ class Pin: def github_get(path: str) -> Dict: - """Send a GET request to Gituhb, optionally adding GITHUB_TOKEN auth header""" + """Send a GET request to GitHub, optionally adding GITHUB_TOKEN auth header""" url = f"https://api.github.com/{path.lstrip('/')}" - print(f"Retreiving {url}") + print(f"Retrieving {url}") req = Request(url) @@ -65,16 +63,8 @@ def get_latest_release(owner: str, repo: str) -> str: return github_get(f"/repos/{owner}/{repo}/releases/latest")["tag_name"] -def sha256_url(url: str) -> str: - sha256 = hashlib.sha256() - with urlopen(url) as resp: - while data := resp.read(1024): - sha256.update(data) - return "sha256-" + base64.urlsafe_b64encode(sha256.digest()).decode() - - def prefetch_github(owner: str, repo: str, rev: str) -> str: - """Prefetch github rev and return sha256 hash""" + """Prefetch GitHub rev and return SRI hash""" print(f"Prefetching {owner}/{repo}({rev})") proc = subprocess.run( @@ -87,10 +77,10 @@ def prefetch_github(owner: str, repo: str, rev: str) -> str: def get_latest_tag(owner: str, repo: str, prerelease: bool = False) -> str: - """Get the latest tag from a Github Repo""" + """Get the latest tag from a GitHub Repo""" tags: List[str] = [] - # As the Github API doesn't have any notion of "latest" for tags we need to + # As the GitHub API doesn't have any notion of "latest" for tags we need to # collect all of them and sort so we can figure out the latest one. i = 0 while i <= 100: # Prevent infinite looping From 551db1309ce4a9e4da588966d0f1623a948fed74 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:03:08 -0700 Subject: [PATCH 46/69] plausible: adapt update script to new nix-prefetch-github Take the opportunity to switch to SRI hashes. --- pkgs/servers/web-apps/plausible/default.nix | 2 +- pkgs/servers/web-apps/plausible/update.sh | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/servers/web-apps/plausible/default.nix b/pkgs/servers/web-apps/plausible/default.nix index d890e571d97b..cc0cad874ced 100644 --- a/pkgs/servers/web-apps/plausible/default.nix +++ b/pkgs/servers/web-apps/plausible/default.nix @@ -18,7 +18,7 @@ let owner = "plausible"; repo = "analytics"; rev = "v${version}"; - sha256 = "1ckw5cd4z96jkjhmzjq7k3kzjj7bvj38i5xq9r43cz0sn7w3470k"; + hash = "sha256-Exwy+LEafDZITriXiIbc60j555gHy1+hnNKkTxorfLI="; }; # TODO consider using `mix2nix` as soon as it supports git dependencies. diff --git a/pkgs/servers/web-apps/plausible/update.sh b/pkgs/servers/web-apps/plausible/update.sh index 74387212d261..8ed285cfcb88 100755 --- a/pkgs/servers/web-apps/plausible/update.sh +++ b/pkgs/servers/web-apps/plausible/update.sh @@ -33,18 +33,18 @@ echo "$package_json" \ > $dir/package.json tarball_meta="$(nix-prefetch-github plausible analytics --rev "$latest")" -tarball_hash="$(nix to-base32 sha256-$(jq -r '.sha256' <<< "$tarball_meta"))" +tarball_hash="$(jq -r '.hash' <<< "$tarball_meta")" tarball_path="$(nix-build -E 'with import ./. {}; { p }: fetchFromGitHub (builtins.fromJSON p)' --argstr p "$tarball_meta")" -fake_hash="$(nix-instantiate --eval -A lib.fakeSha256 | xargs echo)" +fake_hash="$(nix-instantiate --eval -A lib.fakeHash | xargs echo)" sed -i "$dir/default.nix" \ -e 's,version = ".*",version = "'"$nix_version"'",' \ - -e '/^ src = fetchFromGitHub/,+4{;s/sha256 = "\(.*\)"/sha256 = "'"$tarball_hash"'"/}' \ - -e '/^ mixFodDeps =/,+3{;s/sha256 = "\(.*\)"/sha256 = "'"$fake_hash"'"/}' + -e '/^ src = fetchFromGitHub/,+4{;s#hash = "\(.*\)"#hash = "'"$tarball_hash"'"#}' \ + -e '/^ mixFodDeps =/,+3{;s#hash = "\(.*\)"#hash = "'"$fake_hash"'"#}' -mix_hash="$(nix to-base32 $(nix-build -A plausible.mixFodDeps 2>&1 | tail -n3 | grep 'got:' | cut -d: -f2- | xargs echo || true))" +mix_hash="$(nix-build -A plausible.mixFodDeps 2>&1 | tail -n3 | grep 'got:' | cut -d: -f2- | xargs echo || true)" -sed -i "$dir/default.nix" -e '/^ mixFodDeps =/,+3{;s/sha256 = "\(.*\)"/sha256 = "'"$mix_hash"'"/}' +sed -i "$dir/default.nix" -e '/^ mixFodDeps =/,+3{;s#hash = "\(.*\)"#hash = "'"$mix_hash"'"#}' tmp_setup_dir="$(mktemp -d)" trap "rm -rf $tmp_setup_dir" EXIT From ac6902075050a3656e29e192059a322aa0c16249 Mon Sep 17 00:00:00 2001 From: Theodore Ni <3806110+tjni@users.noreply.github.com> Date: Fri, 7 Jul 2023 23:03:12 -0700 Subject: [PATCH 47/69] treewide: remove unused nix-prefetch-github from shebangs --- maintainers/scripts/haskell/update-hackage.sh | 2 +- maintainers/scripts/haskell/update-stackage.sh | 2 +- pkgs/servers/web-apps/hedgedoc/update.sh | 2 +- pkgs/tools/inputmethods/fcitx5/update.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/maintainers/scripts/haskell/update-hackage.sh b/maintainers/scripts/haskell/update-hackage.sh index a7cfecbbb0fe..5aa644a3d0fa 100755 --- a/maintainers/scripts/haskell/update-hackage.sh +++ b/maintainers/scripts/haskell/update-hackage.sh @@ -1,5 +1,5 @@ #! /usr/bin/env nix-shell -#! nix-shell -i bash -p nix curl jq nix-prefetch-github git gnused -I nixpkgs=. +#! nix-shell -i bash -p nix curl jq git gnused -I nixpkgs=. # See regenerate-hackage-packages.sh for details on the purpose of this script. diff --git a/maintainers/scripts/haskell/update-stackage.sh b/maintainers/scripts/haskell/update-stackage.sh index 4fee4330843f..ba64b42ba9b7 100755 --- a/maintainers/scripts/haskell/update-stackage.sh +++ b/maintainers/scripts/haskell/update-stackage.sh @@ -1,5 +1,5 @@ #! /usr/bin/env nix-shell -#! nix-shell -i bash -p nix curl jq nix-prefetch-github git gnused gnugrep -I nixpkgs=. +#! nix-shell -i bash -p nix curl jq git gnused gnugrep -I nixpkgs=. # shellcheck shell=bash set -eu -o pipefail diff --git a/pkgs/servers/web-apps/hedgedoc/update.sh b/pkgs/servers/web-apps/hedgedoc/update.sh index fc6c30e9e559..5fe1c39d0d69 100755 --- a/pkgs/servers/web-apps/hedgedoc/update.sh +++ b/pkgs/servers/web-apps/hedgedoc/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=../../../../ -i bash -p nix wget prefetch-yarn-deps nix-prefetch-github jq +#!nix-shell -I nixpkgs=../../../../ -i bash -p nix wget prefetch-yarn-deps jq set -euo pipefail cd "$(dirname "$0")" diff --git a/pkgs/tools/inputmethods/fcitx5/update.py b/pkgs/tools/inputmethods/fcitx5/update.py index fba390211c82..6c745ef7dbec 100755 --- a/pkgs/tools/inputmethods/fcitx5/update.py +++ b/pkgs/tools/inputmethods/fcitx5/update.py @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#!nix-shell -i python3 -p nix-update nix-prefetch-github python3Packages.requests +#!nix-shell -i python3 -p nix-update python3Packages.requests from nix_prefetch_github import * import requests From 9e011fc60cb5b006dd253dcdce3e366e015d91e1 Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Tue, 18 Jul 2023 19:15:56 -0700 Subject: [PATCH 48/69] tenacity: 1.3-beta2 -> 1.3.1 --- pkgs/applications/audio/tenacity/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/audio/tenacity/default.nix b/pkgs/applications/audio/tenacity/default.nix index 8e6ab17fbdae..04dd28e0b5c9 100644 --- a/pkgs/applications/audio/tenacity/default.nix +++ b/pkgs/applications/audio/tenacity/default.nix @@ -49,14 +49,14 @@ stdenv.mkDerivation rec { pname = "tenacity"; - version = "1.3-beta2"; + version = "1.3.1"; src = fetchFromGitea { domain = "codeberg.org"; owner = "tenacityteam"; repo = pname; rev = "v${version}"; - sha256 = "sha256-9gWoqFa87neIvRnezWI3RyCAOU4wKEHPn/Hgj3/fol0="; + sha256 = "sha256-wesnay+UQiPSDaRuSo86MgHdElN4s0rPIvokZhKM7GI="; }; postPatch = '' @@ -69,7 +69,7 @@ stdenv.mkDerivation rec { ''; postFixup = '' - rm $out/audacity + rm $out/tenacity wrapProgram "$out/bin/tenacity" \ --suffix AUDACITY_PATH : "$out/share/tenacity" \ --suffix AUDACITY_MODULES_PATH : "$out/lib/tenacity/modules" \ From 83352e935ed628bc1d9599921fe73a877af8b0d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Tue, 28 Mar 2023 17:13:18 +0200 Subject: [PATCH 49/69] py-expression-eval: init with version 0.3.14 --- .../py-expression-eval/default.nix | 24 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/development/python-modules/py-expression-eval/default.nix diff --git a/pkgs/development/python-modules/py-expression-eval/default.nix b/pkgs/development/python-modules/py-expression-eval/default.nix new file mode 100644 index 000000000000..6aee63effb34 --- /dev/null +++ b/pkgs/development/python-modules/py-expression-eval/default.nix @@ -0,0 +1,24 @@ +{ lib, + buildPythonPackage, + fetchFromGitHub, +}: + +buildPythonPackage rec { + pname = "py-expression-eval"; + version = "0.3.14"; + + src = fetchFromGitHub { + owner = "axiacore"; + repo = "py-expression-eval"; + rev = "v${version}"; + sha256 = "YxhZd8V6ofphcNdcbBbrT5mc37O9c6W1mfhsvFVC+KM="; + }; + + meta = with lib; { + homepage = "https://github.com/AxiaCore/py-expression-eval/"; + description = "Python Mathematical Expression Evaluator"; + platforms = platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ cynerd ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e12b14ef588d..817152fbb793 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7144,6 +7144,8 @@ self: super: with self; { py-eth-sig-utils = callPackage ../development/python-modules/py-eth-sig-utils { }; + py-expression-eval = callPackage ../development/python-modules/py-expression-eval { }; + nwdiag = callPackage ../development/python-modules/nwdiag { }; oasatelematics = callPackage ../development/python-modules/oasatelematics { }; From b225ae4a611bbab4b0a6c047f3aa895d52ee9cc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Tue, 28 Mar 2023 17:28:17 +0200 Subject: [PATCH 50/69] bch: init at 1.2.1 --- .../python-modules/bch/default.nix | 42 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/bch/default.nix diff --git a/pkgs/development/python-modules/bch/default.nix b/pkgs/development/python-modules/bch/default.nix new file mode 100644 index 000000000000..8b9308cf0217 --- /dev/null +++ b/pkgs/development/python-modules/bch/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, click +, click-log +, paho-mqtt +, pyaml +}: + +buildPythonPackage rec { + pname = "bch"; + version = "1.2.1"; + + src = fetchFromGitHub { + owner = "hardwario"; + repo = "bch-control-tool"; + rev = "v${version}"; + sha256 = "/C+NbJ0RrWZ/scv/FiRBTh4h7u0xS4mHVDWQ0WwmlEY="; + }; + + propagatedBuildInputs = [ + click + click-log + paho-mqtt + pyaml + ]; + + postPatch = '' + sed -ri 's/@@VERSION@@/${version}/g' \ + bch/cli.py setup.py + ''; + + pythonImportsCheck = [ "bch" ]; + + meta = with lib; { + homepage = "https://github.com/hardwario/bch-control-tool"; + description = "HARDWARIO Hub Control Tool"; + platforms = platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ cynerd ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 817152fbb793..bfb39e4046f0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1269,6 +1269,8 @@ self: super: with self; { bcdoc = callPackage ../development/python-modules/bcdoc { }; + bch = callPackage ../development/python-modules/bch { }; + bcrypt = if stdenv.hostPlatform.system == "i686-linux" then callPackage ../development/python-modules/bcrypt/3.nix { } else From b2ed94276b282aa7788aaf9ba41c93e74297c2d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Tue, 28 Mar 2023 17:47:16 +0200 Subject: [PATCH 51/69] bcg: init at 1.17.0 --- .../python-modules/bcg/default.nix | 49 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 51 insertions(+) create mode 100644 pkgs/development/python-modules/bcg/default.nix diff --git a/pkgs/development/python-modules/bcg/default.nix b/pkgs/development/python-modules/bcg/default.nix new file mode 100644 index 000000000000..ce32e61ff809 --- /dev/null +++ b/pkgs/development/python-modules/bcg/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, appdirs +, click +, click-log +, paho-mqtt +, pyaml +, pyserial +, schema +, simplejson +}: +buildPythonPackage rec { + pname = "bcg"; + version = "1.17.0"; + + src = fetchFromGitHub { + owner = "hardwario"; + repo = "bch-gateway"; + rev = "v${version}"; + sha256 = "2Yh5MeIv+BIxjoO9GOPqq7xTAFhyBvnxPy7DeO2FrkI="; + }; + + postPatch = '' + sed -ri 's/@@VERSION@@/${version}/g' \ + bcg/__init__.py setup.py + ''; + + propagatedBuildInputs = [ + appdirs + click + click-log + paho-mqtt + pyaml + pyserial + schema + simplejson + ]; + + pythonImportsCheck = [ "bcg" ]; + + meta = with lib; { + homepage = "https://github.com/hardwario/bch-gateway"; + description = "HARDWARIO Gateway (Python Application «bcg»)"; + platforms = platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ cynerd ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bfb39e4046f0..cb1107c58605 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1269,6 +1269,8 @@ self: super: with self; { bcdoc = callPackage ../development/python-modules/bcdoc { }; + bcg = callPackage ../development/python-modules/bcg { }; + bch = callPackage ../development/python-modules/bch { }; bcrypt = if stdenv.hostPlatform.system == "i686-linux" then From c92947c26676732e77b9cab9a5d6120239240636 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Tue, 28 Mar 2023 17:51:36 +0200 Subject: [PATCH 52/69] bcf: init at 1.9.0 --- .../python-modules/bcf/default.nix | 54 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/python-modules/bcf/default.nix diff --git a/pkgs/development/python-modules/bcf/default.nix b/pkgs/development/python-modules/bcf/default.nix new file mode 100644 index 000000000000..03b53ca2e6e9 --- /dev/null +++ b/pkgs/development/python-modules/bcf/default.nix @@ -0,0 +1,54 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, appdirs +, click +, colorama +, intelhex +, packaging +, pyaml +, pyftdi +, pyserial +, requests +, schema +}: +buildPythonPackage rec { + pname = "bcf"; + version = "1.9.0"; + + src = fetchFromGitHub { + owner = "hardwario"; + repo = "bch-firmware-tool"; + rev = "v${version}"; + sha256 = "i28VewTB2XEZSfk0UeCuwB7Z2wz4qPBhzvxJIYkKwJ4="; + }; + + postPatch = '' + sed -ri 's/@@VERSION@@/${version}/g' \ + bcf/__init__.py setup.py + ''; + + propagatedBuildInputs = [ + appdirs + click + colorama + intelhex + packaging + pyaml + pyftdi + pyserial + requests + schema + ]; + + pythonImportsCheck = [ "bcf" ]; + doCheck = false; # Project provides no tests + + meta = with lib; { + homepage = "https://github.com/hardwario/bch-firmware-tool"; + description = "HARDWARIO Firmware Tool"; + platforms = platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ cynerd ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cb1107c58605..26eb9cb7616b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1269,6 +1269,8 @@ self: super: with self; { bcdoc = callPackage ../development/python-modules/bcdoc { }; + bcf = callPackage ../development/python-modules/bcf { }; + bcg = callPackage ../development/python-modules/bcg { }; bch = callPackage ../development/python-modules/bch { }; From 61a503c2fa941f3077ff0d6cd5ad264c592aab3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Tue, 28 Mar 2023 19:30:59 +0200 Subject: [PATCH 53/69] mqtt2influxdb: init at 1.5.2 --- .../python-modules/mqtt2influxdb/default.nix | 42 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 44 insertions(+) create mode 100644 pkgs/development/python-modules/mqtt2influxdb/default.nix diff --git a/pkgs/development/python-modules/mqtt2influxdb/default.nix b/pkgs/development/python-modules/mqtt2influxdb/default.nix new file mode 100644 index 000000000000..a2d7fa25fe0d --- /dev/null +++ b/pkgs/development/python-modules/mqtt2influxdb/default.nix @@ -0,0 +1,42 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, influxdb +, jsonpath-ng +, paho-mqtt +, py-expression-eval +, pyaml +, pycron +, schema +}: +buildPythonPackage rec { + pname = "mqtt2influxdb"; + version = "1.5.2"; + + src = fetchFromGitHub { + owner = "hardwario"; + repo = "bch-mqtt2influxdb"; + rev = "v${version}"; + sha256 = "YDgMoxnH4vCCa7b857U6iVBhYLxk8ZjytGziryn24bg="; + }; + + propagatedBuildInputs = [ + influxdb + jsonpath-ng + paho-mqtt + py-expression-eval + pyaml + pycron + schema + ]; + + pythonImportsCheck = [ "mqtt2influxdb" ]; + + meta = with lib; { + homepage = "https://github.com/hardwario/bch-mqtt2influxdb"; + description = "Flexible MQTT to InfluxDB Bridge"; + platforms = platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ cynerd ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 26eb9cb7616b..96cad68ba5f3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7760,6 +7760,8 @@ self: super: with self; { micloud = callPackage ../development/python-modules/micloud { }; + mqtt2influxdb = callPackage ../development/python-modules/mqtt2influxdb { }; + msgraph-core = callPackage ../development/python-modules/msgraph-core { }; multipart = callPackage ../development/python-modules/multipart { }; From dd4eec64aba5101114d0d36ec138d864afd046e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Tue, 25 Apr 2023 16:57:15 +0200 Subject: [PATCH 54/69] nixos/bcg: init module This is gateway that transforms BigClown wireless to MQTT. --- nixos/modules/module-list.nix | 1 + nixos/modules/services/misc/bcg.nix | 175 ++++++++++++++++++++++++++++ 2 files changed, 176 insertions(+) create mode 100644 nixos/modules/services/misc/bcg.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 5510944b2152..f1a272a9faf3 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -608,6 +608,7 @@ ./services/misc/autorandr.nix ./services/misc/autosuspend.nix ./services/misc/bazarr.nix + ./services/misc/bcg.nix ./services/misc/beanstalkd.nix ./services/misc/bees.nix ./services/misc/bepasty.nix diff --git a/nixos/modules/services/misc/bcg.nix b/nixos/modules/services/misc/bcg.nix new file mode 100644 index 000000000000..214c89dbfe72 --- /dev/null +++ b/nixos/modules/services/misc/bcg.nix @@ -0,0 +1,175 @@ +{ + config, + lib, + pkgs, + ... +}: + +with lib; + +let + cfg = config.services.bcg; + configFile = (pkgs.formats.yaml {}).generate "bcg.conf.yaml" ( + filterAttrsRecursive (n: v: v != null) { + inherit (cfg) device name mqtt; + retain_node_messages = cfg.retainNodeMessages; + qos_node_messages = cfg.qosNodeMessages; + base_topic_prefix = cfg.baseTopicPrefix; + automatic_remove_kit_from_names = cfg.automaticRemoveKitFromNames; + automatic_rename_kit_nodes = cfg.automaticRenameKitNodes; + automatic_rename_generic_nodes = cfg.automaticRenameGenericNodes; + automatic_rename_nodes = cfg.automaticRenameNodes; + } + ); +in +{ + options = { + services.bcg = { + enable = mkEnableOption (mdDoc "BigClown gateway"); + package = mkOption { + default = pkgs.python3Packages.bcg; + defaultText = literalExpression "pkgs.python3Packages.bcg"; + description = mdDoc "Which bcg derivation to use."; + type = types.package; + }; + environmentFiles = mkOption { + type = types.listOf types.path; + default = []; + example = [ "/run/keys/bcg.env" ]; + description = mdDoc '' + File to load as environment file. Environment variables from this file + will be interpolated into the config file using envsubst with this + syntax: `$ENVIRONMENT` or `''${VARIABLE}`. + This is useful to avoid putting secrets into the nix store. + ''; + }; + verbose = mkOption { + type = types.enum ["CRITICAL" "ERROR" "WARNING" "INFO" "DEBUG"]; + default = "WARNING"; + description = mdDoc "Verbosity level."; + }; + device = mkOption { + type = types.str; + description = mdDoc "Device name to configure gateway to use."; + }; + name = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc '' + Name for the device. + + Supported variables: + * `{ip}` IP address + * `{id}` The ID of the connected usb-dongle or core-module + + `null` can be used for automatic detection from gateway firmware. + ''; + }; + mqtt = { + host = mkOption { + type = types.str; + default = "127.0.0.1"; + description = mdDoc "Host where MQTT server is running."; + }; + port = mkOption { + type = types.port; + default = 1883; + description = mdDoc "Port of MQTT server."; + }; + username = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "MQTT server access username."; + }; + password = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "MQTT server access password."; + }; + cafile = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "Certificate Authority file for MQTT server access."; + }; + certfile = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "Certificate file for MQTT server access."; + }; + keyfile = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "Key file for MQTT server access."; + }; + }; + retainNodeMessages = mkOption { + type = types.bool; + default = false; + description = mdDoc "Specify that node messages should be retaied in MQTT broker."; + }; + qosNodeMessages = mkOption { + type = types.int; + default = 1; + description = mdDoc "Set the guarantee of MQTT message delivery."; + }; + baseTopicPrefix = mkOption { + type = types.str; + default = ""; + description = mdDoc "Topic prefix added to all MQTT messages."; + }; + automaticRemoveKitFromNames = mkOption { + type = types.bool; + default = true; + description = mdDoc "Automatically remove kits."; + }; + automaticRenameKitNodes = mkOption { + type = types.bool; + default = true; + description = mdDoc "Automatically rename kit's nodes."; + }; + automaticRenameGenericNodes = mkOption { + type = types.bool; + default = true; + description = mdDoc "Automatically rename generic nodes."; + }; + automaticRenameNodes = mkOption { + type = types.bool; + default = true; + description = mdDoc "Automatically rename all nodes."; + }; + rename = mkOption { + type = with types; attrsOf str; + default = {}; + description = mdDoc "Rename nodes to different name."; + }; + }; + }; + + config = mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + python3Packages.bcg + python3Packages.bch + ]; + + systemd.services.bcg = let + envConfig = cfg.environmentFiles != []; + finalConfig = if envConfig + then "$RUNTIME_DIRECTORY/bcg.config.yaml" + else configFile; + in { + description = "BigClown Gateway"; + wantedBy = [ "multi-user.target" ]; + wants = mkIf config.services.mosquitto.enable [ "mosquitto.service" ]; + after = [ "network-online.target" ]; + preStart = '' + umask 077 + ${pkgs.envsubst}/bin/envsubst -i "${configFile}" -o "${finalConfig}" + ''; + serviceConfig = { + EnvironmentFile = cfg.environmentFiles; + ExecStart="${cfg.package}/bin/bcg -c ${finalConfig} -v ${cfg.verbose}"; + RuntimeDirectory = "bcg"; + }; + }; + }; +} From fd3f5471b0c215c8e724d6670272baa166e6eee4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Wed, 26 Apr 2023 09:19:19 +0200 Subject: [PATCH 55/69] nixos/mqtt2influxdb: init module --- nixos/modules/module-list.nix | 1 + nixos/modules/services/misc/mqtt2influxdb.nix | 253 ++++++++++++++++++ 2 files changed, 254 insertions(+) create mode 100644 nixos/modules/services/misc/mqtt2influxdb.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index f1a272a9faf3..0f7084230c12 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -666,6 +666,7 @@ ./services/misc/mediatomb.nix ./services/misc/metabase.nix ./services/misc/moonraker.nix + ./services/misc/mqtt2influxdb.nix ./services/misc/n8n.nix ./services/misc/nitter.nix ./services/misc/nix-gc.nix diff --git a/nixos/modules/services/misc/mqtt2influxdb.nix b/nixos/modules/services/misc/mqtt2influxdb.nix new file mode 100644 index 000000000000..621f51a4e7fd --- /dev/null +++ b/nixos/modules/services/misc/mqtt2influxdb.nix @@ -0,0 +1,253 @@ +{ + config, + lib, + pkgs, + ... +}: + +with lib; + +let + cfg = config.services.mqtt2influxdb; + filterNull = filterAttrsRecursive (n: v: v != null); + configFile = (pkgs.formats.yaml {}).generate "mqtt2influxdb.config.yaml" ( + filterNull { + inherit (cfg) mqtt influxdb; + points = map filterNull cfg.points; + } + ); + + pointType = types.submodule { + options = { + measurement = mkOption { + type = types.str; + description = mdDoc "Name of the measurement"; + }; + topic = mkOption { + type = types.str; + description = mdDoc "MQTT topic to subscribe to."; + }; + fields = mkOption { + type = types.submodule { + options = { + value = mkOption { + type = types.str; + default = "$.payload"; + description = mdDoc "Value to be picked up"; + }; + type = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "Type to be picked up"; + }; + }; + }; + description = mdDoc "Field selector."; + }; + tags = mkOption { + type = with types; attrsOf str; + default = {}; + description = mdDoc "Tags applied"; + }; + }; + }; + + defaultPoints = [ + { + measurement = "temperature"; + topic = "node/+/thermometer/+/temperature"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + channel = "$.topic[3]"; + }; + } + { + measurement = "relative-humidity"; + topic = "node/+/hygrometer/+/relative-humidity"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + channel = "$.topic[3]"; + }; + } + { + measurement = "illuminance"; + topic = "node/+/lux-meter/0:0/illuminance"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + }; + } + { + measurement = "pressure"; + topic = "node/+/barometer/0:0/pressure"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + }; + } + { + measurement = "co2"; + topic = "node/+/co2-meter/-/concentration"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + }; + } + { + measurement = "voltage"; + topic = "node/+/battery/+/voltage"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + }; + } + { + measurement = "button"; + topic = "node/+/push-button/+/event-count"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + channel = "$.topic[3]"; + }; + } + { + measurement = "tvoc"; + topic = "node/+/voc-lp-sensor/0:0/tvoc"; + fields.value = "$.payload"; + tags = { + id = "$.topic[1]"; + }; + } + ]; +in { + options = { + services.mqtt2influxdb = { + enable = mkEnableOption (mdDoc "BigClown MQTT to InfluxDB bridge."); + environmentFiles = mkOption { + type = types.listOf types.path; + default = []; + example = [ "/run/keys/mqtt2influxdb.env" ]; + description = mdDoc '' + File to load as environment file. Environment variables from this file + will be interpolated into the config file using envsubst with this + syntax: `$ENVIRONMENT` or `''${VARIABLE}`. + This is useful to avoid putting secrets into the nix store. + ''; + }; + mqtt = { + host = mkOption { + type = types.str; + default = "127.0.0.1"; + description = mdDoc "Host where MQTT server is running."; + }; + port = mkOption { + type = types.port; + default = 1883; + description = mdDoc "MQTT server port."; + }; + username = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "Username used to connect to the MQTT server."; + }; + password = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc '' + MQTT password. + + It is highly suggested to use here replacement through + environmentFiles as otherwise the password is put world readable to + the store. + ''; + }; + cafile = mkOption { + type = with types; nullOr path; + default = null; + description = mdDoc "Certification Authority file for MQTT"; + }; + certfile = mkOption { + type = with types; nullOr path; + default = null; + description = mdDoc "Certificate file for MQTT"; + }; + keyfile = mkOption { + type = with types; nullOr path; + default = null; + description = mdDoc "Key file for MQTT"; + }; + }; + influxdb = { + host = mkOption { + type = types.str; + default = "127.0.0.1"; + description = mdDoc "Host where InfluxDB server is running."; + }; + port = mkOption { + type = types.port; + default = 8086; + description = mdDoc "InfluxDB server port"; + }; + database = mkOption { + type = types.str; + description = mdDoc "Name of the InfluxDB database."; + }; + username = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc "Username for InfluxDB login."; + }; + password = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc '' + Password for InfluxDB login. + + It is highly suggested to use here replacement through + environmentFiles as otherwise the password is put world readable to + the store. + ''; + }; + ssl = mkOption { + type = types.bool; + default = false; + description = mdDoc "Use SSL to connect to the InfluxDB server."; + }; + verify_ssl = mkOption { + type = types.bool; + default = true; + description = mdDoc "Verify SSL certificate when connecting to the InfluxDB server."; + }; + }; + points = mkOption { + type = types.listOf pointType; + default = defaultPoints; + description = mdDoc "Points to bridge from MQTT to InfluxDB."; + }; + }; + }; + + config = mkIf cfg.enable { + systemd.services.bigclown-mqtt2influxdb = let + envConfig = cfg.environmentFiles != []; + finalConfig = if envConfig + then "$RUNTIME_DIRECTORY/mqtt2influxdb.config.yaml" + else configFile; + in { + description = "BigClown MQTT to InfluxDB bridge"; + wantedBy = ["multi-user.target"]; + wants = mkIf config.services.mosquitto.enable ["mosquitto.service"]; + preStart = '' + umask 077 + ${pkgs.envsubst}/bin/envsubst -i "${configFile}" -o "${finalConfig}" + ''; + serviceConfig = { + EnvironmentFile = cfg.environmentFiles; + ExecStart = "${cfg.package}/bin/mqtt2influxdb -dc ${finalConfig}"; + RuntimeDirectory = "mqtt2influxdb"; + }; + }; + }; +} From df21f9e39c902de6ba0cb9bd1f90869072582023 Mon Sep 17 00:00:00 2001 From: sunder Date: Wed, 19 Jul 2023 11:56:50 +0300 Subject: [PATCH 56/69] collision: init at 3.5.0 --- .../misc/collision/collision-shards.nix | 42 ++++++++++++++++ pkgs/applications/misc/collision/default.nix | 50 +++++++++++++++++++ pkgs/applications/misc/collision/make.patch | 20 ++++++++ pkgs/top-level/all-packages.nix | 2 + 4 files changed, 114 insertions(+) create mode 100644 pkgs/applications/misc/collision/collision-shards.nix create mode 100644 pkgs/applications/misc/collision/default.nix create mode 100644 pkgs/applications/misc/collision/make.patch diff --git a/pkgs/applications/misc/collision/collision-shards.nix b/pkgs/applications/misc/collision/collision-shards.nix new file mode 100644 index 000000000000..0c2725504154 --- /dev/null +++ b/pkgs/applications/misc/collision/collision-shards.nix @@ -0,0 +1,42 @@ +{ + gettext = { + url = "https://github.com/geopjr/gettext.cr.git"; + rev = "v1.0.0"; + sha256 = "1y27m4170rr4532j56grzhwbz8hj6z7j3zfkd0jnfwnsxclks1kc"; + }; + non-blocking-spawn = { + url = "https://github.com/geopjr/non-blocking-spawn.git"; + rev = "v1.0.5"; + sha256 = "139gr87zlw0k9kf6pf9k2d88aa9x3kcnfg34qpbqrwsrck7708za"; + }; + version_from_shard = { + url = "https://github.com/hugopl/version_from_shard.git"; + rev = "v1.2.5"; + sha256 = "0xizj0q4rd541rwjbx04cjifc2gfx4l5v6q2y7gmd0ndjmkgb8ik"; + }; + gio = { + url = "https://github.com/hugopl/gio.cr.git"; + rev = "v0.1.0"; + sha256 = "0vj35bi64d4hni18nrl8fmms306a0gl4zlxpf3aq08lh0sbwzhd8"; + }; + gtk4 = { + url = "https://github.com/hugopl/gtk4.cr.git"; + rev = "v0.13.0"; + sha256 = "0xsrcsh5qvwm9l7cywxpw49rfv94mkkqcliws4zkhxgr9isnirbm"; + }; + harfbuzz = { + url = "https://github.com/hugopl/harfbuzz.cr.git"; + rev = "v0.1.0"; + sha256 = "1lcb778b4k34sqxg979fpl425bbzf2gikjf2m5aj6x1fzxn46jg0"; + }; + pango = { + url = "https://github.com/hugopl/pango.cr.git"; + rev = "v0.2.0"; + sha256 = "0dl3qrhi2ybylmvzx1x5gsznp2pcdkc50waxrljxwnf5avn8ixsf"; + }; + libadwaita = { + url = "https://github.com/geopjr/libadwaita.cr.git"; + rev = "203737fc96bb48e1a710cb68e896d2c5b9c1a6e5"; + sha256 = "11c2knxncjnwg4cgppfllxwgli1hf6sjyyx4ii8rgmnbird6xcmh"; + }; +} diff --git a/pkgs/applications/misc/collision/default.nix b/pkgs/applications/misc/collision/default.nix new file mode 100644 index 000000000000..a77d0b34a75e --- /dev/null +++ b/pkgs/applications/misc/collision/default.nix @@ -0,0 +1,50 @@ +{ stdenv +, lib +, fetchFromGitHub +, crystal +, wrapGAppsHook4 +, desktopToDarwinBundle +, gi-crystal +, gobject-introspection +, libadwaita +, openssl +, libxml2 +, pkg-config +}: +crystal.buildCrystalPackage rec { + pname = "Collision"; + version = "3.5.0"; + + src = fetchFromGitHub { + owner = "GeopJr"; + repo = "Collision"; + rev = "v${version}"; + hash = "sha256-YNMtiMSzDqBlJJTUntRtL6oXg+IuyAobQ4FYcwOdOas="; + }; + patches = [ ./make.patch ]; + shardsFile = ./collision-shards.nix; + + # Crystal compiler has a strange issue with OpenSSL. The project will not compile due to + # main_module:(.text+0x6f0): undefined reference to `SSL_library_init' + # There is an explanation for this https://danilafe.com/blog/crystal_nix_revisited/ + # Shortly, adding pkg-config to buildInputs along with openssl fixes the issue. + + nativeBuildInputs = [ wrapGAppsHook4 pkg-config gobject-introspection gi-crystal ] + ++ lib.optionals stdenv.isDarwin [ desktopToDarwinBundle ]; + buildInputs = [ libadwaita openssl libxml2 ]; + + buildTargets = ["bindings" "build"]; + + doCheck = false; + doInstallCheck = false; + + installTargets = ["desktop" "install"]; + + meta = with lib; { + description = "Check hashes for your files"; + homepage = "https://github.com/GeopJr/Collision"; + license = licenses.bsd2; + mainProgram = "collision"; + maintainers = with maintainers; [ sund3RRR ]; + }; +} diff --git a/pkgs/applications/misc/collision/make.patch b/pkgs/applications/misc/collision/make.patch new file mode 100644 index 000000000000..73872a789278 --- /dev/null +++ b/pkgs/applications/misc/collision/make.patch @@ -0,0 +1,20 @@ +--- a/Makefile 2023-07-09 10:49:31.064190374 +0300 ++++ b/Makefile 2023-07-19 11:19:37.415480179 +0300 +@@ -6,7 +6,7 @@ + all: desktop bindings build + + bindings: +- ./bin/gi-crystal || $(CRYSTAL_LOCATION)shards install && ./bin/gi-crystal ++ gi-crystal + + build: + COLLISION_LOCALE_LOCATION="$(PREFIX)$(LOCALE_LOCATION)" $(CRYSTAL_LOCATION)shards build -Dpreview_mt --release --no-debug +@@ -43,7 +43,7 @@ + install -D -m 0644 data/dev.geopjr.Collision.desktop $(PREFIX)/share/applications/dev.geopjr.Collision.desktop + install -D -m 0644 data/icons/dev.geopjr.Collision.svg $(PREFIX)/share/icons/hicolor/scalable/apps/dev.geopjr.Collision.svg + install -D -m 0644 data/icons/dev.geopjr.Collision-symbolic.svg $(PREFIX)/share/icons/hicolor/symbolic/apps/dev.geopjr.Collision-symbolic.svg +- gtk-update-icon-cache $(PREFIX)/share/icons/hicolor ++ gtk4-update-icon-cache --ignore-theme-index $(PREFIX)/share/icons/hicolor + glib-compile-schemas $(PREFIX)/share/glib-2.0/schemas/ + + uninstall: \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 523be31c5a0b..ba26bdb63416 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -481,6 +481,8 @@ with pkgs; colemak-dh = callPackage ../data/misc/colemak-dh { }; + collision = callPackage ../applications/misc/collision { }; + colmena = callPackage ../tools/admin/colmena { }; colorz = callPackage ../tools/misc/colorz { }; From 7f323a04505efe09080fdadeea0e454fc73d435b Mon Sep 17 00:00:00 2001 From: Dominik Ritter Date: Tue, 18 Jul 2023 20:25:06 +0200 Subject: [PATCH 57/69] jetbrains: 2023.1.3 -> 2023.1.5 jetbrains.clion: 2023.1.4 -> 2023.1.5 jetbrains.phpstorm: 2023.1.3 -> 2023.1.4 jetbrains.webstorm: 2023.1.3 -> 2023.1.4 --- .../editors/jetbrains/versions.json | 72 +++++++++---------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/pkgs/applications/editors/jetbrains/versions.json b/pkgs/applications/editors/jetbrains/versions.json index 425e8309d8a0..e0ddf477be82 100644 --- a/pkgs/applications/editors/jetbrains/versions.json +++ b/pkgs/applications/editors/jetbrains/versions.json @@ -3,10 +3,10 @@ "clion": { "update-channel": "CLion RELEASE", "url-template": "https://download.jetbrains.com/cpp/CLion-{version}.tar.gz", - "version": "2023.1.4", - "sha256": "03830bd8c32eca51d2cb54aafbb74ce46003eaab9601465876c84107c0a19a23", - "url": "https://download.jetbrains.com/cpp/CLion-2023.1.4.tar.gz", - "build_number": "231.9161.40" + "version": "2023.1.5", + "sha256": "69a274098fe35ca53edbed460f1044691cedf595d080e291644a013905591bf3", + "url": "https://download.jetbrains.com/cpp/CLion-2023.1.5.tar.gz", + "build_number": "231.9225.21" }, "datagrip": { "update-channel": "DataGrip RELEASE", @@ -67,10 +67,10 @@ "phpstorm": { "update-channel": "PhpStorm RELEASE", "url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}.tar.gz", - "version": "2023.1.3", - "sha256": "c12c99b39615bd2d37eec93ed29faee2387294624eaed7fabd5c7cc8de9faf9f", - "url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.3.tar.gz", - "build_number": "231.9161.47", + "version": "2023.1.4", + "sha256": "7b44d704641c6015ce49e12e82c8866e9fdd8e8d421590235e536b3b1312b180", + "url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.4.tar.gz", + "build_number": "231.9225.18", "version-major-minor": "2022.3" }, "pycharm-community": { @@ -108,20 +108,20 @@ "webstorm": { "update-channel": "WebStorm RELEASE", "url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}.tar.gz", - "version": "2023.1.3", - "sha256": "1cef18a6d80e063b520dd8e9a0cf5b27a9cb05bbfa5b680e97c54a7cb435c9c6", - "url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.3.tar.gz", - "build_number": "231.9161.29" + "version": "2023.1.4", + "sha256": "d522583e234aaf66d3da760908d2fa1254990a2497bb7c6eb84ee9d0bb3c5ffe", + "url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.4.tar.gz", + "build_number": "231.9225.18" } }, "x86_64-darwin": { "clion": { "update-channel": "CLion RELEASE", "url-template": "https://download.jetbrains.com/cpp/CLion-{version}.dmg", - "version": "2023.1.4", - "sha256": "fdb801c7c42e87fa0db94b68192e09319583118461385e4133ce9cd01125cb41", - "url": "https://download.jetbrains.com/cpp/CLion-2023.1.4.dmg", - "build_number": "231.9161.40" + "version": "2023.1.5", + "sha256": "d372abe2e1598e9ae3ca121a85d7d89211e65d99b4ca2183ef05dd3172212c44", + "url": "https://download.jetbrains.com/cpp/CLion-2023.1.5.dmg", + "build_number": "231.9225.21" }, "datagrip": { "update-channel": "DataGrip RELEASE", @@ -182,10 +182,10 @@ "phpstorm": { "update-channel": "PhpStorm RELEASE", "url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}.dmg", - "version": "2023.1.3", - "sha256": "d181a8c9ff92f183f1ce68c1867de61b17e5a82f5b16ec472baa99f5a5f9ce83", - "url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.3.dmg", - "build_number": "231.9161.47", + "version": "2023.1.4", + "sha256": "4d3d9005772d2136e44f7774377fae053b690501800ea5e650d0f35882690fdd", + "url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.4.dmg", + "build_number": "231.9225.18", "version-major-minor": "2022.3" }, "pycharm-community": { @@ -223,20 +223,20 @@ "webstorm": { "update-channel": "WebStorm RELEASE", "url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}.dmg", - "version": "2023.1.3", - "sha256": "ac8a4edbc2d846e2ac205ebf62ad0d883df5eac812b226b1b99c4f19764df005", - "url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.3.dmg", - "build_number": "231.9161.29" + "version": "2023.1.4", + "sha256": "9e80e3047396b99f82d541813a1177e058f3acb0fc81d27a625e3f62cc1ddadb", + "url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.4.dmg", + "build_number": "231.9225.18" } }, "aarch64-darwin": { "clion": { "update-channel": "CLion RELEASE", "url-template": "https://download.jetbrains.com/cpp/CLion-{version}-aarch64.dmg", - "version": "2023.1.4", - "sha256": "f3aa638dbf08df9763d557c02c5408be864442af25c7e4b0dce7889a800f3a49", - "url": "https://download.jetbrains.com/cpp/CLion-2023.1.4-aarch64.dmg", - "build_number": "231.9161.40" + "version": "2023.1.5", + "sha256": "432955fc7926a5387c1fa9b30433b0e68f49ab88ea40d0bddef711692b28e8b1", + "url": "https://download.jetbrains.com/cpp/CLion-2023.1.5-aarch64.dmg", + "build_number": "231.9225.21" }, "datagrip": { "update-channel": "DataGrip RELEASE", @@ -297,10 +297,10 @@ "phpstorm": { "update-channel": "PhpStorm RELEASE", "url-template": "https://download.jetbrains.com/webide/PhpStorm-{version}-aarch64.dmg", - "version": "2023.1.3", - "sha256": "49ca043ee6119ae31c5f3fd12aa085f22dc0117c95bf70fca8afe29960c1a546", - "url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.3-aarch64.dmg", - "build_number": "231.9161.47", + "version": "2023.1.4", + "sha256": "3285135fc4c529640ecfc5b451fa9b51d9df2a323915509cc6cbb3f25717c9e2", + "url": "https://download.jetbrains.com/webide/PhpStorm-2023.1.4-aarch64.dmg", + "build_number": "231.9225.18", "version-major-minor": "2022.3" }, "pycharm-community": { @@ -338,10 +338,10 @@ "webstorm": { "update-channel": "WebStorm RELEASE", "url-template": "https://download.jetbrains.com/webstorm/WebStorm-{version}-aarch64.dmg", - "version": "2023.1.3", - "sha256": "c5cc29db9a12515892beed79e1970e628a816f78c629045795ea16c6e5629a2b", - "url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.3-aarch64.dmg", - "build_number": "231.9161.29" + "version": "2023.1.4", + "sha256": "15d1a6a65c6cb073479f82394d2691fd84c54bc7eb2c5f55a6db77bdb6e500bd", + "url": "https://download.jetbrains.com/webstorm/WebStorm-2023.1.4-aarch64.dmg", + "build_number": "231.9225.18" } } } From 3702b1734c7bef43eeb3160fb710f9f8b148c640 Mon Sep 17 00:00:00 2001 From: Dominik Ritter Date: Wed, 19 Jul 2023 12:52:40 +0200 Subject: [PATCH 58/69] jetbrains.plugins: update --- .../editors/jetbrains/plugins/plugins.json | 82 ++++++++----------- 1 file changed, 35 insertions(+), 47 deletions(-) diff --git a/pkgs/applications/editors/jetbrains/plugins/plugins.json b/pkgs/applications/editors/jetbrains/plugins/plugins.json index c480edde4162..3e4da5b02e4b 100644 --- a/pkgs/applications/editors/jetbrains/plugins/plugins.json +++ b/pkgs/applications/editors/jetbrains/plugins/plugins.json @@ -18,12 +18,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/164/275091/IdeaVim-2.1.0.zip", "231.9011.35": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", "231.9225.12": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", "231.9225.15": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", "231.9225.16": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip", "231.9225.23": "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip" }, "name": "ideavim" @@ -65,12 +64,11 @@ "builds": { "223.8836.1185": null, "231.9011.35": null, - "231.9161.29": "https://plugins.jetbrains.com/files/6981/351503/ini-231.9161.47.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/6981/351503/ini-231.9161.47.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/6981/351503/ini-231.9161.47.zip", "231.9225.12": "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip", "231.9225.15": "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip", "231.9225.16": "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip", "231.9225.23": "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip" }, "name": "ini" @@ -81,8 +79,8 @@ "phpstorm" ], "builds": { - "231.9161.47": "https://plugins.jetbrains.com/files/7219/355564/Symfony_Plugin-2022.1.253.zip", - "231.9225.16": "https://plugins.jetbrains.com/files/7219/355564/Symfony_Plugin-2022.1.253.zip" + "231.9225.16": "https://plugins.jetbrains.com/files/7219/355564/Symfony_Plugin-2022.1.253.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/7219/355564/Symfony_Plugin-2022.1.253.zip" }, "name": "symfony-support" }, @@ -92,8 +90,8 @@ "phpstorm" ], "builds": { - "231.9161.47": "https://plugins.jetbrains.com/files/7320/346181/PHP_Annotations-9.4.0.zip", - "231.9225.16": "https://plugins.jetbrains.com/files/7320/346181/PHP_Annotations-9.4.0.zip" + "231.9225.16": "https://plugins.jetbrains.com/files/7320/346181/PHP_Annotations-9.4.0.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/7320/346181/PHP_Annotations-9.4.0.zip" }, "name": "php-annotations" }, @@ -129,12 +127,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/8182/329558/intellij-rust-0.4.194.5382-223.zip", "231.9011.35": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", "231.9225.12": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", "231.9225.15": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", "231.9225.16": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip", "231.9225.23": "https://plugins.jetbrains.com/files/8182/359429/intellij-rust-0.4.198.5409-231.zip" }, "name": "rust" @@ -157,12 +154,11 @@ "builds": { "223.8836.1185": null, "231.9011.35": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", "231.9225.12": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", "231.9225.15": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", "231.9225.16": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip", "231.9225.23": "https://plugins.jetbrains.com/files/8182/363621/intellij-rust-0.4.199.5413-231-beta.zip" }, "name": "rust-beta" @@ -178,10 +174,10 @@ "webstorm" ], "builds": { - "231.9161.29": "https://plugins.jetbrains.com/files/8554/326468/featuresTrainer-231.8770.66.zip", "231.9225.12": "https://plugins.jetbrains.com/files/8554/326468/featuresTrainer-231.8770.66.zip", "231.9225.15": "https://plugins.jetbrains.com/files/8554/326468/featuresTrainer-231.8770.66.zip", - "231.9225.16": "https://plugins.jetbrains.com/files/8554/326468/featuresTrainer-231.8770.66.zip" + "231.9225.16": "https://plugins.jetbrains.com/files/8554/326468/featuresTrainer-231.8770.66.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/8554/326468/featuresTrainer-231.8770.66.zip" }, "name": "ide-features-trainer" }, @@ -203,12 +199,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", "231.9011.35": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", "231.9225.12": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", "231.9225.15": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", "231.9225.16": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip", "231.9225.23": "https://plugins.jetbrains.com/files/8607/318851/NixIDEA-0.4.0.9.zip" }, "name": "nixidea" @@ -240,12 +235,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/10037/358812/CSVEditor-3.2.1-223.zip", "231.9011.35": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", "231.9225.12": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", "231.9225.15": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", "231.9225.16": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip", "231.9225.23": "https://plugins.jetbrains.com/files/10037/358810/CSVEditor-3.2.1-231.zip" }, "name": "csv-editor" @@ -268,12 +262,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/12559/257029/keymap-eclipse-223.7571.125.zip", "231.9011.35": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", "231.9225.12": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", "231.9225.15": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", "231.9225.16": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip", "231.9225.23": "https://plugins.jetbrains.com/files/12559/307825/keymap-eclipse-231.8109.91.zip" }, "name": "eclipse-keymap" @@ -296,12 +289,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/13017/257030/keymap-visualStudio-223.7571.125.zip", "231.9011.35": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", "231.9225.12": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", "231.9225.15": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", "231.9225.16": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip", "231.9225.23": "https://plugins.jetbrains.com/files/13017/307831/keymap-visualStudio-231.8109.91.zip" }, "name": "visual-studio-keymap" @@ -324,12 +316,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", "231.9011.35": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", - "231.9161.29": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", - "231.9161.40": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", - "231.9161.47": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", "231.9225.12": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", "231.9225.15": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", "231.9225.16": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", + "231.9225.18": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", + "231.9225.21": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar", "231.9225.23": "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar" }, "name": "darcula-pitch-black" @@ -350,15 +341,14 @@ "webstorm" ], "builds": { - "223.8836.1185": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9011.35": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9225.12": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9225.15": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9225.16": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip", - "231.9225.23": "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip" + "223.8836.1185": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9011.35": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9225.12": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9225.15": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9225.16": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip", + "231.9225.23": "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip" }, "name": "github-copilot" }, @@ -380,12 +370,11 @@ "builds": { "223.8836.1185": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", "231.9011.35": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", - "231.9161.29": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", - "231.9161.40": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", - "231.9161.47": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", "231.9225.12": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", "231.9225.15": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", "231.9225.16": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", + "231.9225.18": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", + "231.9225.21": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip", "231.9225.23": "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip" }, "name": "netbeans-6-5-keymap" @@ -401,11 +390,10 @@ "https://plugins.jetbrains.com/files/14059/82616/darcula-pitch-black.jar": "sha256-eXInfAqY3yEZRXCAuv3KGldM1pNKEioNwPB0rIGgJFw=", "https://plugins.jetbrains.com/files/164/275091/IdeaVim-2.1.0.zip": "sha256-2dM/r79XT+1MHDeRAUnZw6WO3dmw7MZfx9alHmBqMk0=", "https://plugins.jetbrains.com/files/164/364022/IdeaVim-2.4.0-signed.zip": "sha256-aetarXrmK7EdYqLqAY0QNmi/djxDJnEyNTV1E0pay7Q=", - "https://plugins.jetbrains.com/files/17718/360520/github-copilot-intellij-1.2.13.2776.zip": "sha256-9KTWE7rudLZwxCEv5QNu/9rxA0o0GdQK4+oqkzeOtyA=", + "https://plugins.jetbrains.com/files/17718/364783/github-copilot-intellij-1.2.15.2816.zip": "sha256-ONmt+9mZN+/SyesZw6JV8S2U2SH5rggvojCXT0whI/E=", "https://plugins.jetbrains.com/files/18444/165585/NetBeans6.5Keymap.zip": "sha256-KrzZTKZMQqoEMw+vDUv2jjs0EX0leaPBkU8H/ecq/oI=", "https://plugins.jetbrains.com/files/631/360005/python-231.9225.16.zip": "sha256-vin0+O9f4rY3FYqztzdIlyal5bvrvrt8Q8neDrXRmsU=", "https://plugins.jetbrains.com/files/6954/357005/kotlin-plugin-231-1.9.0-release-358-IJ8770.65.zip": "sha256-v2EB05au8mkC5VnoEILLJ3tesEeCWCYSNJ9RzfJZA1o=", - "https://plugins.jetbrains.com/files/6981/351503/ini-231.9161.47.zip": "sha256-oAgTPyTnfqEKjaGcK50k9O16hDY+A4lfL2l9IpGKyCY=", "https://plugins.jetbrains.com/files/6981/363869/ini-231.9225.21.zip": "sha256-/HljUhlum/bmgw0sfhK+33AgxCJsT32uU/UjQIzIbKs=", "https://plugins.jetbrains.com/files/7219/355564/Symfony_Plugin-2022.1.253.zip": "sha256-vE+fobPbtWlaSHGTLlbDcC6NkaJiA4Qp50h8flXHaJc=", "https://plugins.jetbrains.com/files/7320/346181/PHP_Annotations-9.4.0.zip": "sha256-hT5K4w4lhvNwDzDMDSvsIDGj9lyaRqglfOhlbNdqpWs=", From 60869e358d6b1480e82d7e10c2e28a2a2aad0ff9 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 19 Jul 2023 10:56:33 +0000 Subject: [PATCH 59/69] python310Packages.pytomorrowio: 0.3.5 -> 0.3.6 --- pkgs/development/python-modules/pytomorrowio/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/pytomorrowio/default.nix b/pkgs/development/python-modules/pytomorrowio/default.nix index 7a6ab301279d..1b5bd96110e8 100644 --- a/pkgs/development/python-modules/pytomorrowio/default.nix +++ b/pkgs/development/python-modules/pytomorrowio/default.nix @@ -10,13 +10,13 @@ buildPythonPackage rec { pname = "pytomorrowio"; - version = "0.3.5"; + version = "0.3.6"; disabled = pythonOlder "3.9"; src = fetchPypi { inherit pname version; - hash = "sha256-LFIQJJPqKlqLzEoX9ShfoASigPC5R+OWiW81VmjONe8="; + hash = "sha256-ZCA+GYuZuRgc4Pi9Bcg4zthOnkmQ+/IddFMkR0WYfKk="; }; propagatedBuildInputs = [ From c317c0da89b0dfc4b1adb5021669e9d86a534639 Mon Sep 17 00:00:00 2001 From: Thomas Gerbet Date: Wed, 19 Jul 2023 12:58:42 +0200 Subject: [PATCH 60/69] docker-buildx: 0.11.1 -> 0.11.2 https://github.com/docker/buildx/releases/tag/v0.11.2 --- pkgs/applications/virtualization/docker/buildx.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/virtualization/docker/buildx.nix b/pkgs/applications/virtualization/docker/buildx.nix index ff5fb35d42bb..033d6a55d48c 100644 --- a/pkgs/applications/virtualization/docker/buildx.nix +++ b/pkgs/applications/virtualization/docker/buildx.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "docker-buildx"; - version = "0.11.1"; + version = "0.11.2"; src = fetchFromGitHub { owner = "docker"; repo = "buildx"; rev = "v${version}"; - sha256 = "sha256-a33jGbafkmv55cKBCr8xlGTsD3bU/1CNyOfaXQIGMg0="; + hash = "sha256-FPqXfIxuqwsnvsuWN5baIIn6o7ucP/Zgn+OsHfI61zU="; }; doCheck = false; From fe6304df54d94a12b12ab9bdee04fdf325bf7851 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 19 Jul 2023 13:13:28 +0200 Subject: [PATCH 61/69] nixos/nexus: use mkPackageOption, cleanup This fixes: trace: warning: literalExample is deprecated, use literalExpression instead, or use literalMD for a non-Nix description. --- nixos/modules/services/web-apps/nexus.nix | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/nixos/modules/services/web-apps/nexus.nix b/nixos/modules/services/web-apps/nexus.nix index 58c110c9512a..c67562d38992 100644 --- a/nixos/modules/services/web-apps/nexus.nix +++ b/nixos/modules/services/web-apps/nexus.nix @@ -12,22 +12,9 @@ in services.nexus = { enable = mkEnableOption (lib.mdDoc "Sonatype Nexus3 OSS service"); - package = mkOption { - type = types.package; - default = pkgs.nexus; - defaultText = literalExpression "pkgs.nexus"; - description = lib.mdDoc "Package which runs Nexus3"; - }; + package = lib.mkPackageOption pkgs "nexus" { }; - jdkPackage = mkOption { - type = types.package; - default = pkgs.openjdk8; - defaultText = literalExample "pkgs.openjdk8"; - example = literalExample "pkgs.openjdk8"; - description = '' - The JDK package to use. - ''; - }; + jdkPackage = lib.mkPackageOption pkgs "openjdk8" { }; user = mkOption { type = types.str; @@ -114,8 +101,7 @@ in config = mkIf cfg.enable { users.users.${cfg.user} = { isSystemUser = true; - group = cfg.group; - home = cfg.home; + inherit (cfg) group home; createHome = true; }; @@ -132,7 +118,7 @@ in NEXUS_USER = cfg.user; NEXUS_HOME = cfg.home; - INSTALL4J_JAVA_HOME = "${cfg.jdkPackage}"; + INSTALL4J_JAVA_HOME = cfg.jdkPackage; VM_OPTS_FILE = pkgs.writeText "nexus.vmoptions" cfg.jvmOpts; }; From 9130b3ce85477065f5dbdf14717ccf893f2e645a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 19 Jul 2023 11:19:54 +0000 Subject: [PATCH 62/69] python310Packages.griffe: 0.32.1 -> 0.32.3 --- pkgs/development/python-modules/griffe/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/griffe/default.nix b/pkgs/development/python-modules/griffe/default.nix index 86971a8bd00a..bff3045e5c6d 100644 --- a/pkgs/development/python-modules/griffe/default.nix +++ b/pkgs/development/python-modules/griffe/default.nix @@ -13,7 +13,7 @@ buildPythonPackage rec { pname = "griffe"; - version = "0.32.1"; + version = "0.32.3"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "mkdocstrings"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-CNUv2R1Jkq3LSGtEBAi8F04TpARZxOkYN7fUMcXh5P8="; + hash = "sha256-rPh4FtcigZzscm3y/BJ/0Q0wURlumowlHY15MiQw2B8="; }; postPatch = '' From 801cc447659ee28e15b521f08e84df9c3d5f1bb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 19 Jul 2023 13:11:14 +0200 Subject: [PATCH 63/69] retroarch: add support for declarative settings Add a new optional 'settings' attrset to the wrapper derivation, which gets serialized to a file and passed to RetroArch as --appendconfig= at runtime. This allows overriding settings from ~/.config/retroarch/retroarch.cfg (which initially gets created as a dump of all internal retroarch settings -- stateful and messy). --- .../emulators/retroarch/wrapper.nix | 18 +++++++++++++++--- pkgs/top-level/all-packages.nix | 4 ++-- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/emulators/retroarch/wrapper.nix b/pkgs/applications/emulators/retroarch/wrapper.nix index afef0bef8a48..4698bbe5bbed 100644 --- a/pkgs/applications/emulators/retroarch/wrapper.nix +++ b/pkgs/applications/emulators/retroarch/wrapper.nix @@ -3,16 +3,28 @@ , makeWrapper , retroarch , symlinkJoin +, runCommand , cores ? [ ] +, settings ? { } }: let + settingsPath = runCommand "declarative-retroarch.cfg" + { + value = lib.concatStringsSep "\n" (lib.mapAttrsToList (n: v: "${n} = \"${v}\"") settings); + passAsFile = [ "value" ]; + } + '' + cp "$valuePath" "$out" + ''; + # All cores should be located in the same path after symlinkJoin, # but let's be safe here coresPath = lib.lists.unique (map (c: c.libretroCore) cores); - wrapperArgs = lib.strings.escapeShellArgs - (lib.lists.flatten - (map (p: [ "--add-flags" "-L ${placeholder "out" + p}" ]) coresPath)); + wrapperArgs = lib.strings.escapeShellArgs ( + (lib.lists.flatten (map (p: [ "--add-flags" "-L ${placeholder "out" + p}" ]) coresPath)) + ++ [ "--add-flags" "--appendconfig=${settingsPath}" ] + ); in symlinkJoin { name = "retroarch-with-cores-${lib.getVersion retroarch}"; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cf4fcc344741..786c227cd7de 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2642,9 +2642,9 @@ with pkgs; (builtins.attrValues libretro); }; - wrapRetroArch = { retroarch }: + wrapRetroArch = { retroarch, settings ? {} }: callPackage ../applications/emulators/retroarch/wrapper.nix - { inherit retroarch; }; + { inherit retroarch settings; }; retroarch = wrapRetroArch { retroarch = retroarchBare.override { From 35c3c81655802b4d039754e0b2ba0248583e11b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 19 Jul 2023 13:29:45 +0200 Subject: [PATCH 64/69] retroarch-joypad-autoconfig: init at 1.15.0 https://github.com/libretro/retroarch-joypad-autoconfig (In preparation for making joypads work out-of-the-box in RetroArch.) --- .../retroarch/retroarch-joypad-autoconfig.nix | 28 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/applications/emulators/retroarch/retroarch-joypad-autoconfig.nix diff --git a/pkgs/applications/emulators/retroarch/retroarch-joypad-autoconfig.nix b/pkgs/applications/emulators/retroarch/retroarch-joypad-autoconfig.nix new file mode 100644 index 000000000000..92ba7f20c8b3 --- /dev/null +++ b/pkgs/applications/emulators/retroarch/retroarch-joypad-autoconfig.nix @@ -0,0 +1,28 @@ +{ lib +, stdenvNoCC +, fetchFromGitHub +}: + +stdenvNoCC.mkDerivation rec { + pname = "retroarch-joypad-autoconfig"; + version = "1.15.0"; + + src = fetchFromGitHub { + owner = "libretro"; + repo = "retroarch-joypad-autoconfig"; + rev = "v${version}"; + hash = "sha256-/F2Y08uDA/pIIeLiLfOQfGVjX2pkuOqPourlx2RbZ28="; + }; + + makeFlags = [ + "PREFIX=$(out)" + ]; + + meta = with lib; { + description = "Joypad autoconfig files"; + homepage = "https://www.libretro.com/"; + license = licenses.mit; + maintainers = with maintainers; teams.libretro.members ++ [ ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 786c227cd7de..70beb3e102f3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2655,6 +2655,8 @@ with pkgs; retroarch-assets = callPackage ../applications/emulators/retroarch/retroarch-assets.nix { }; + retroarch-joypad-autoconfig = callPackage ../applications/emulators/retroarch/retroarch-joypad-autoconfig.nix { }; + libretranslate = with python3.pkgs; toPythonApplication libretranslate; libretro = recurseIntoAttrs From 310c1a143d6b5a083e0be5b899c7c4d6b00e3b88 Mon Sep 17 00:00:00 2001 From: Jonas Heinrich Date: Wed, 19 Jul 2023 14:14:40 +0200 Subject: [PATCH 65/69] python3Packages.mkdocstrings-python: Remove upstreamed postPatch --- .../python-modules/mkdocstrings-python/default.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/development/python-modules/mkdocstrings-python/default.nix b/pkgs/development/python-modules/mkdocstrings-python/default.nix index 9f9aea77122c..03a5e5ca81b8 100644 --- a/pkgs/development/python-modules/mkdocstrings-python/default.nix +++ b/pkgs/development/python-modules/mkdocstrings-python/default.nix @@ -37,11 +37,6 @@ buildPythonPackage rec { pytestCheckHook ]; - postPatch = '' - substituteInPlace pyproject.toml \ - --replace 'license = "ISC"' 'license = {text = "ISC"}' \ - ''; - pythonImportsCheck = [ "mkdocstrings_handlers" ]; From 9d793505b9e2b5d58f50e60ebfa74d7bd0665cc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Wed, 19 Jul 2023 14:01:25 +0200 Subject: [PATCH 66/69] retroarch: auto-detect joypads Set the 'joypad_autoconfig_dir' setting to where autoconfig files are, instead of using the built-in default of ~/.config/retroarch/autoconfig, which is empty. Tested with my PS5 DualSense controller, which now works. --- pkgs/top-level/all-packages.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 70beb3e102f3..74188daa63d8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2651,6 +2651,9 @@ with pkgs; withAssets = true; withCoreInfo = true; }; + settings = { + joypad_autoconfig_dir = "${retroarch-joypad-autoconfig}/share/libretro/autoconfig"; + }; }; retroarch-assets = callPackage ../applications/emulators/retroarch/retroarch-assets.nix { }; From 23c2d86124bb55a8d1024b25e9859347f7398a13 Mon Sep 17 00:00:00 2001 From: emilylange Date: Wed, 19 Jul 2023 15:41:08 +0200 Subject: [PATCH 67/69] grafana-agent: 0.34.3 -> 0.35.0 https://github.com/grafana/agent/releases/tag/v0.35.0 https://github.com/grafana/agent/blob/v0.35.0/CHANGELOG.md diff: https://github.com/grafana/agent/compare/v0.34.3...v0.35.0 --- pkgs/servers/monitoring/grafana-agent/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/servers/monitoring/grafana-agent/default.nix b/pkgs/servers/monitoring/grafana-agent/default.nix index 03758872ede1..82e75f022177 100644 --- a/pkgs/servers/monitoring/grafana-agent/default.nix +++ b/pkgs/servers/monitoring/grafana-agent/default.nix @@ -10,16 +10,16 @@ buildGoModule rec { pname = "grafana-agent"; - version = "0.34.3"; + version = "0.35.0"; src = fetchFromGitHub { owner = "grafana"; repo = "agent"; rev = "v${version}"; - hash = "sha256-llHMTuNWGipL732L+uCupILvomhwZMFT8tJaFkBs+AQ="; + hash = "sha256-mSU4in+9itJuCdyF10K11f7nhbxztliJq8pX3K0bL2Y="; }; - vendorHash = "sha256-x9c6xRk1Ska+kqoFhAJ9ei35Lg8wsgDpZpfxJ3UExfg="; + vendorHash = "sha256-MqUkGKOzx8Qo9xbD9GdUryVwKjpVUOXFo2x0/2uz8Uk="; proxyVendor = true; # darwin/linux hash mismatch ldflags = let From 984a19f393afe3bf52c9d06083d00a1253210b1e Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Wed, 19 Jul 2023 14:31:12 +0200 Subject: [PATCH 68/69] ocamlformat: 0.25.1 -> 0.26.0 As always, the previous version is retained. The "preferred" version is bumped. --- pkgs/development/ocaml-modules/ocamlformat/generic.nix | 1 + pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix | 2 +- pkgs/top-level/all-packages.nix | 3 ++- pkgs/top-level/ocaml-packages.nix | 1 + 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/development/ocaml-modules/ocamlformat/generic.nix b/pkgs/development/ocaml-modules/ocamlformat/generic.nix index 0e998af86ff7..215c0268562b 100644 --- a/pkgs/development/ocaml-modules/ocamlformat/generic.nix +++ b/pkgs/development/ocaml-modules/ocamlformat/generic.nix @@ -22,6 +22,7 @@ rec { "0.24.0" = "sha256-Zil0wceeXmq2xy0OVLxa/Ujl4Dtsmc4COyv6Jo7rVaM="; "0.24.1" = "sha256-AjQl6YGPgOpQU3sjcaSnZsFJqZV9BYB+iKAE0tX0Qc4="; "0.25.1" = "sha256-3I8qMwyjkws2yssmI7s2Dti99uSorNKT29niJBpv0z0="; + "0.26.0" = "sha256-AxSUq3cM7xCo9qocvrVmDkbDqmwM1FexEP7IWadeh30="; }."${version}"; }; diff --git a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix index 275c20dea865..9b5b59ffae05 100644 --- a/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix +++ b/pkgs/development/ocaml-modules/ocamlformat/ocamlformat.nix @@ -1,5 +1,5 @@ { lib, callPackage, buildDunePackage, re, ocamlformat-lib, menhir -, version ? "0.25.1" }: +, version ? "0.26.0" }: let inherit (callPackage ./generic.nix { inherit version; }) src library_deps; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6c1ccdd07ce2..53dff109e81e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16467,7 +16467,8 @@ with pkgs; inherit (ocamlPackages) ocamlformat # latest version ocamlformat_0_19_0 ocamlformat_0_20_0 ocamlformat_0_20_1 ocamlformat_0_21_0 - ocamlformat_0_22_4 ocamlformat_0_23_0 ocamlformat_0_24_1 ocamlformat_0_25_1; + ocamlformat_0_22_4 ocamlformat_0_23_0 ocamlformat_0_24_1 ocamlformat_0_25_1 + ocamlformat_0_26_0; orc = callPackage ../development/compilers/orc { }; diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 9b6d183f5180..85c79981cc00 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -1181,6 +1181,7 @@ let ocamlformat_0_23_0 = ocamlformat.override { version = "0.23.0"; }; ocamlformat_0_24_1 = ocamlformat.override { version = "0.24.1"; }; ocamlformat_0_25_1 = ocamlformat.override { version = "0.25.1"; }; + ocamlformat_0_26_0 = ocamlformat.override { version = "0.26.0"; }; ocamlformat = callPackage ../development/ocaml-modules/ocamlformat/ocamlformat.nix {}; From c941659cd3f286ce113cd83bfbd98119dcacf76c Mon Sep 17 00:00:00 2001 From: Thomas Gerbet Date: Mon, 17 Jul 2023 15:31:56 +0200 Subject: [PATCH 69/69] gitolite: 3.6.12 -> 3.6.13 Changelog: https://github.com/sitaramc/gitolite/blob/v3.6.13/CHANGELOG --- pkgs/applications/version-management/gitolite/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/gitolite/default.nix b/pkgs/applications/version-management/gitolite/default.nix index 4912dae3233a..6e7a627f9cba 100644 --- a/pkgs/applications/version-management/gitolite/default.nix +++ b/pkgs/applications/version-management/gitolite/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "gitolite"; - version = "3.6.12"; + version = "3.6.13"; src = fetchFromGitHub { owner = "sitaramc"; repo = "gitolite"; rev = "v${version}"; - sha256 = "05xw1pmagvkrbzga5pgl3xk9qyc6b5x73f842454f3w9ijspa8zy"; + hash = "sha256-/VBu+aepIrxWc2padPa/WoXbIdKfIwqmA/M8d1GE5FI="; }; buildInputs = [ nettools perl ];