From edd2a3ea3df7c1fd3c6e639128023b975263ddf2 Mon Sep 17 00:00:00 2001 From: arcnmx Date: Sat, 29 Jan 2022 14:47:23 -0800 Subject: [PATCH 1/9] mx-puppet-discord: fix build --- pkgs/servers/mx-puppet-discord/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/mx-puppet-discord/default.nix b/pkgs/servers/mx-puppet-discord/default.nix index d2606148768d..9a552a979002 100644 --- a/pkgs/servers/mx-puppet-discord/default.nix +++ b/pkgs/servers/mx-puppet-discord/default.nix @@ -1,7 +1,8 @@ -{ stdenv, fetchFromGitHub, pkgs, lib, nodejs, nodePackages, pkg-config, libjpeg +{ stdenv, fetchFromGitHub, pkgs, lib, nodejs-12_x, nodePackages, pkg-config, libjpeg , pixman, cairo, pango }: let + nodejs = nodejs-12_x; # No official version ever released src = fetchFromGitHub { owner = "matrix-discord"; From a08c96f943527ca468bde6c2c5362f2e42891961 Mon Sep 17 00:00:00 2001 From: arcnmx Date: Sat, 29 Jan 2022 14:52:29 -0800 Subject: [PATCH 2/9] mx-puppet-discord: 2021-01-21 -> 2021-08-01 --- pkgs/servers/mx-puppet-discord/default.nix | 9 +- pkgs/servers/mx-puppet-discord/generate.sh | 7 +- .../mx-puppet-discord/node-composition.nix | 2 +- .../mx-puppet-discord/node-packages.nix | 473 +++++++++++------- 4 files changed, 294 insertions(+), 197 deletions(-) diff --git a/pkgs/servers/mx-puppet-discord/default.nix b/pkgs/servers/mx-puppet-discord/default.nix index 9a552a979002..92e446487c05 100644 --- a/pkgs/servers/mx-puppet-discord/default.nix +++ b/pkgs/servers/mx-puppet-discord/default.nix @@ -1,14 +1,14 @@ -{ stdenv, fetchFromGitHub, pkgs, lib, nodejs-12_x, nodePackages, pkg-config, libjpeg +{ stdenv, fetchFromGitHub, pkgs, lib, nodejs-14_x, nodePackages, pkg-config, libjpeg , pixman, cairo, pango }: let - nodejs = nodejs-12_x; + nodejs = nodejs-14_x; # No official version ever released src = fetchFromGitHub { owner = "matrix-discord"; repo = "mx-puppet-discord"; - rev = "c17384a6a12a42a528e0b1259f8073e8db89b8f4"; - sha256 = "1yczhfpa4qzvijcpgc2pr10s009qb6jwlfwpcbb17g2wsx6zj0c2"; + rev = "bb6438a504182a7a64048b992179427587ccfded"; + sha256 = "0g2p5xwxxgvlnq0fg0x4q9x4asqyppdv6b5z6bvncm62kc70z6xk"; }; myNodePackages = import ./node-composition.nix { @@ -18,6 +18,7 @@ let in myNodePackages.package.override { pname = "mx-puppet-discord"; + version = "2021-08-01"; inherit src; diff --git a/pkgs/servers/mx-puppet-discord/generate.sh b/pkgs/servers/mx-puppet-discord/generate.sh index 851671a147a8..deac865a33db 100755 --- a/pkgs/servers/mx-puppet-discord/generate.sh +++ b/pkgs/servers/mx-puppet-discord/generate.sh @@ -2,14 +2,15 @@ #! nix-shell -i bash -p nodePackages.node2nix # No official release -rev=c17384a6a12a42a528e0b1259f8073e8db89b8f4 +rev=bb6438a504182a7a64048b992179427587ccfded u=https://raw.githubusercontent.com/matrix-discord/mx-puppet-discord/$rev # Download package.json and package-lock.json curl -O $u/package.json -curl -O $u/package-lock.json +curl $u/package-lock.json | + sed -e 's|git+ssh://git@|git+https://|g' > package-lock.json node2nix \ - --nodejs-12 \ + --nodejs-14 \ --node-env ../../development/node-packages/node-env.nix \ --input package.json \ --lock package-lock.json \ diff --git a/pkgs/servers/mx-puppet-discord/node-composition.nix b/pkgs/servers/mx-puppet-discord/node-composition.nix index 1285e13cfba4..51af28fd44fd 100644 --- a/pkgs/servers/mx-puppet-discord/node-composition.nix +++ b/pkgs/servers/mx-puppet-discord/node-composition.nix @@ -2,7 +2,7 @@ {pkgs ? import ../../.. { inherit system; - }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-12_x"}: + }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-14_x"}: let nodeEnv = import ../../development/node-packages/node-env.nix { diff --git a/pkgs/servers/mx-puppet-discord/node-packages.nix b/pkgs/servers/mx-puppet-discord/node-packages.nix index b3dc83bb343c..696e401347e7 100644 --- a/pkgs/servers/mx-puppet-discord/node-packages.nix +++ b/pkgs/servers/mx-puppet-discord/node-packages.nix @@ -58,13 +58,13 @@ let sha512 = "JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ=="; }; }; - "@sorunome/matrix-bot-sdk-0.5.8" = { + "@sorunome/matrix-bot-sdk-0.5.13" = { name = "_at_sorunome_slash_matrix-bot-sdk"; packageName = "@sorunome/matrix-bot-sdk"; - version = "0.5.8"; + version = "0.5.13"; src = fetchurl { - url = "https://registry.npmjs.org/@sorunome/matrix-bot-sdk/-/matrix-bot-sdk-0.5.8.tgz"; - sha512 = "Uifu8saeD1fPrj6F8ZdYiCeADCluySbdi/nVKJy0NQOi6cA5p68ZaeydlCyl+YuFJoCjsDWBe+Szq9CgFd/SpA=="; + url = "https://registry.npmjs.org/@sorunome/matrix-bot-sdk/-/matrix-bot-sdk-0.5.13.tgz"; + sha512 = "WEeuei8/QS9FO76n71nT17TBZ3tRW2POjOpN7YIvsy5tA0WD0tMUKWZDcTo1A+xKOvzgjRTy9v88rKSLIr4wHA=="; }; }; "@szmarczak/http-timer-4.0.5" = { @@ -76,13 +76,13 @@ let sha512 = "PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ=="; }; }; - "@types/body-parser-1.19.0" = { + "@types/body-parser-1.19.1" = { name = "_at_types_slash_body-parser"; packageName = "@types/body-parser"; - version = "1.19.0"; + version = "1.19.1"; src = fetchurl { - url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz"; - sha512 = "W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ=="; + url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.1.tgz"; + sha512 = "a6bTJ21vFOGIkwM0kzh9Yr89ziVxq4vYH2fQ6N8AeipEzai/cFK6aGMArIkUeIdRIgpwQa+2bXiLuUJCpSf2Cg=="; }; }; "@types/cacheable-request-6.0.1" = { @@ -94,31 +94,31 @@ let sha512 = "ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ=="; }; }; - "@types/connect-3.4.34" = { + "@types/connect-3.4.35" = { name = "_at_types_slash_connect"; packageName = "@types/connect"; - version = "3.4.34"; + version = "3.4.35"; src = fetchurl { - url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.34.tgz"; - sha512 = "ePPA/JuI+X0vb+gSWlPKOY0NdNAie/rPUqX2GUPpbZwiKTkSPhjXWuee47E4MtE54QVzGCQMQkAL6JhV2E1+cQ=="; + url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz"; + sha512 = "cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ=="; }; }; - "@types/express-4.17.11" = { + "@types/express-4.17.13" = { name = "_at_types_slash_express"; packageName = "@types/express"; - version = "4.17.11"; + version = "4.17.13"; src = fetchurl { - url = "https://registry.npmjs.org/@types/express/-/express-4.17.11.tgz"; - sha512 = "no+R6rW60JEc59977wIxreQVsIEOAYwgCqldrA/vkpCnbD7MqTefO97lmoBe4WE0F156bC4uLSP1XHDOySnChg=="; + url = "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz"; + sha512 = "6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA=="; }; }; - "@types/express-serve-static-core-4.17.18" = { + "@types/express-serve-static-core-4.17.24" = { name = "_at_types_slash_express-serve-static-core"; packageName = "@types/express-serve-static-core"; - version = "4.17.18"; + version = "4.17.24"; src = fetchurl { - url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.18.tgz"; - sha512 = "m4JTwx5RUBNZvky/JJ8swEJPKFd8si08pPF2PfizYjGZOKr/svUWPcoUmLow6MmPzhasphB7gSTINY67xn3JNA=="; + url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.24.tgz"; + sha512 = "3UJuW+Qxhzwjq3xhwXm2onQcFHn76frIYVbTu+kn24LFxI+dEhdfISDFovPB8VpEgW8oQCTpRuCe+0zJxB7NEA=="; }; }; "@types/http-cache-semantics-4.0.0" = { @@ -166,22 +166,22 @@ let sha512 = "KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw=="; }; }; - "@types/qs-6.9.5" = { + "@types/qs-6.9.7" = { name = "_at_types_slash_qs"; packageName = "@types/qs"; - version = "6.9.5"; + version = "6.9.7"; src = fetchurl { - url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.5.tgz"; - sha512 = "/JHkVHtx/REVG0VVToGRGH2+23hsYLHdyG+GrvoUGlGAd0ErauXDyvHtRI/7H7mzLm+tBCKA7pfcpkQ1lf58iQ=="; + url = "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz"; + sha512 = "FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw=="; }; }; - "@types/range-parser-1.2.3" = { + "@types/range-parser-1.2.4" = { name = "_at_types_slash_range-parser"; packageName = "@types/range-parser"; - version = "1.2.3"; + version = "1.2.4"; src = fetchurl { - url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz"; - sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA=="; + url = "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz"; + sha512 = "EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw=="; }; }; "@types/react-17.0.0" = { @@ -202,13 +202,13 @@ let sha512 = "85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA=="; }; }; - "@types/serve-static-1.13.9" = { + "@types/serve-static-1.13.10" = { name = "_at_types_slash_serve-static"; packageName = "@types/serve-static"; - version = "1.13.9"; + version = "1.13.10"; src = fetchurl { - url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.9.tgz"; - sha512 = "ZFqF6qa48XsPdjXV5Gsz0Zqmux2PerNd3a/ktL45mHpa19cuMi/cL8tcxdAx497yRh+QtYPuofjT9oWw9P7nkA=="; + url = "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz"; + sha512 = "nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ=="; }; }; "abbrev-1.1.1" = { @@ -383,13 +383,13 @@ let sha256 = "ab87453cc9db05b3bc691f27e92c5a4a6a14a528c98c7d313d6dd42f1741124a"; }; }; - "better-sqlite3-6.0.1" = { + "better-sqlite3-7.4.3" = { name = "better-sqlite3"; packageName = "better-sqlite3"; - version = "6.0.1"; + version = "7.4.3"; src = fetchurl { - url = "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-6.0.1.tgz"; - sha512 = "4aV1zEknM9g1a6B0mVBx1oIlmYioEJ8gSS3J6EpN1b1bKYEE+N5lmpmXHKNKTi0qjHziSd7XrXwHl1kpqvEcHQ=="; + url = "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.4.3.tgz"; + sha512 = "07bKjClZg/f4KMVRkzWtoIvazVPcF1gsvVKVIXlxwleC2DxuIhnra3KCMlUT1rFeRYXXckot2a46UciF2d9KLw=="; }; }; "bindings-1.5.0" = { @@ -410,13 +410,13 @@ let sha1 = "0e655c9b9c2435eaab68bf4027226d2b55a34524"; }; }; - "bl-4.0.3" = { + "bl-4.1.0" = { name = "bl"; packageName = "bl"; - version = "4.0.3"; + version = "4.1.0"; src = fetchurl { - url = "https://registry.npmjs.org/bl/-/bl-4.0.3.tgz"; - sha512 = "fs4G6/Hu4/EE+F75J8DuN/0IpQqNjAdC7aEQv7Qt8MHGUH7Ckv2MwTEEeN9QehD0pfIDkMI1bkHYkKy7xHyKIg=="; + url = "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz"; + sha512 = "1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w=="; }; }; "blurhash-1.1.3" = { @@ -518,13 +518,13 @@ let sha512 = "Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ=="; }; }; - "chalk-4.1.0" = { + "chalk-4.1.1" = { name = "chalk"; packageName = "chalk"; - version = "4.1.0"; + version = "4.1.1"; src = fetchurl { - url = "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz"; - sha512 = "qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A=="; + url = "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz"; + sha512 = "diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg=="; }; }; "chownr-1.1.4" = { @@ -536,6 +536,15 @@ let sha512 = "jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg=="; }; }; + "chownr-2.0.0" = { + name = "chownr"; + packageName = "chownr"; + version = "2.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz"; + sha512 = "bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ=="; + }; + }; "clone-response-1.0.2" = { name = "clone-response"; packageName = "clone-response"; @@ -608,6 +617,15 @@ let sha512 = "57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw=="; }; }; + "colorette-1.2.2" = { + name = "colorette"; + packageName = "colorette"; + version = "1.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz"; + sha512 = "MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w=="; + }; + }; "colors-1.4.0" = { name = "colors"; packageName = "colors"; @@ -788,6 +806,15 @@ let sha512 = "LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA=="; }; }; + "deepmerge-4.2.2" = { + name = "deepmerge"; + packageName = "deepmerge"; + version = "4.2.2"; + src = fetchurl { + url = "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz"; + sha512 = "FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg=="; + }; + }; "defer-to-connect-2.0.0" = { name = "defer-to-connect"; packageName = "defer-to-connect"; @@ -860,32 +887,32 @@ let sha512 = "A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA=="; }; }; - "discord-markdown-git://github.com/Sorunome/discord-markdown.git#0f38420fdd41340d6eadd38cd5b71784ca954085" = { + "discord-markdown-git+https://github.com/Sorunome/discord-markdown.git#0f38420fdd41340d6eadd38cd5b71784ca954085" = { name = "discord-markdown"; packageName = "discord-markdown"; version = "2.3.1"; src = fetchgit { - url = "git://github.com/Sorunome/discord-markdown.git"; + url = "https://github.com/Sorunome/discord-markdown.git"; rev = "0f38420fdd41340d6eadd38cd5b71784ca954085"; sha256 = "61a5ffd248b6d2784665fa710bfe4c39f241c75be07dbe53f5f48575a4df229c"; }; }; - "dom-serializer-1.2.0" = { + "dom-serializer-1.3.2" = { name = "dom-serializer"; packageName = "dom-serializer"; - version = "1.2.0"; + version = "1.3.2"; src = fetchurl { - url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz"; - sha512 = "n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA=="; + url = "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz"; + sha512 = "5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig=="; }; }; - "domelementtype-2.1.0" = { + "domelementtype-2.2.0" = { name = "domelementtype"; packageName = "domelementtype"; - version = "2.1.0"; + version = "2.2.0"; src = fetchurl { - url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz"; - sha512 = "LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w=="; + url = "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz"; + sha512 = "DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A=="; }; }; "domhandler-3.3.0" = { @@ -897,22 +924,22 @@ let sha512 = "J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA=="; }; }; - "domhandler-4.0.0" = { + "domhandler-4.2.0" = { name = "domhandler"; packageName = "domhandler"; - version = "4.0.0"; + version = "4.2.0"; src = fetchurl { - url = "https://registry.npmjs.org/domhandler/-/domhandler-4.0.0.tgz"; - sha512 = "KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA=="; + url = "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz"; + sha512 = "zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA=="; }; }; - "domutils-2.4.4" = { + "domutils-2.7.0" = { name = "domutils"; packageName = "domutils"; - version = "2.4.4"; + version = "2.7.0"; src = fetchurl { - url = "https://registry.npmjs.org/domutils/-/domutils-2.4.4.tgz"; - sha512 = "jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA=="; + url = "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz"; + sha512 = "8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg=="; }; }; "ee-first-1.1.1" = { @@ -960,13 +987,13 @@ let sha512 = "f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w=="; }; }; - "entities-2.1.0" = { + "entities-2.2.0" = { name = "entities"; packageName = "entities"; - version = "2.1.0"; + version = "2.2.0"; src = fetchurl { - url = "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz"; - sha512 = "hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w=="; + url = "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz"; + sha512 = "p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A=="; }; }; "escape-html-1.0.3" = { @@ -987,6 +1014,15 @@ let sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"; }; }; + "escape-string-regexp-4.0.0" = { + name = "escape-string-regexp"; + packageName = "escape-string-regexp"; + version = "4.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz"; + sha512 = "TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="; + }; + }; "esprima-4.0.1" = { name = "esprima"; packageName = "esprima"; @@ -1158,13 +1194,13 @@ let sha512 = "GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw=="; }; }; - "forwarded-0.1.2" = { + "forwarded-0.2.0" = { name = "forwarded"; packageName = "forwarded"; - version = "0.1.2"; + version = "0.2.0"; src = fetchurl { - url = "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz"; - sha1 = "98c23dab1175657b8c0573e8ceccd91b0ff18c84"; + url = "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz"; + sha512 = "buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow=="; }; }; "fresh-0.5.2" = { @@ -1194,6 +1230,15 @@ let sha512 = "GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA=="; }; }; + "fs-minipass-2.1.0" = { + name = "fs-minipass"; + packageName = "fs-minipass"; + version = "2.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz"; + sha512 = "V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg=="; + }; + }; "fs.realpath-1.0.0" = { name = "fs.realpath"; packageName = "fs.realpath"; @@ -1257,13 +1302,13 @@ let sha512 = "ErhWb4IUjQzJ3vGs3+RR12NWlBDDkRciFpAkQ1LPUxi6OnwhGj07gQxjPsyIk69s7qMihwKrKquV6VQq7JNYLA=="; }; }; - "graceful-fs-4.2.4" = { + "graceful-fs-4.2.6" = { name = "graceful-fs"; packageName = "graceful-fs"; - version = "4.2.4"; + version = "4.2.6"; src = fetchurl { - url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz"; - sha512 = "WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="; + url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz"; + sha512 = "nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ=="; }; }; "has-flag-3.0.0" = { @@ -1329,6 +1374,15 @@ let sha512 = "yR5lWvNz7c85OhVAEAeFhVCc/GV4C30Fjzc/rCP0aCWzc1UUOPUk55dK/qdwTZHBvMZo+eZ2jpk62ndX/xMFlg=="; }; }; + "html-to-text-6.0.0" = { + name = "html-to-text"; + packageName = "html-to-text"; + version = "6.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/html-to-text/-/html-to-text-6.0.0.tgz"; + sha512 = "r0KNC5aqCAItsjlgtirW6RW25c92Ee3ybQj8z//4Sl4suE3HIPqM4deGpYCUJULLjtVPEP1+Ma+1ZeX1iMsCiA=="; + }; + }; "htmlencode-0.0.4" = { name = "htmlencode"; packageName = "htmlencode"; @@ -1347,6 +1401,15 @@ let sha512 = "4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q=="; }; }; + "htmlparser2-6.1.0" = { + name = "htmlparser2"; + packageName = "htmlparser2"; + version = "6.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz"; + sha512 = "gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A=="; + }; + }; "http-cache-semantics-4.1.0" = { name = "http-cache-semantics"; packageName = "http-cache-semantics"; @@ -1437,15 +1500,6 @@ let sha512 = "JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="; }; }; - "integer-3.0.1" = { - name = "integer"; - packageName = "integer"; - version = "3.0.1"; - src = fetchurl { - url = "https://registry.npmjs.org/integer/-/integer-3.0.1.tgz"; - sha512 = "OqtER6W2GIJTIcnT5o2B/pWGgvurnVOYs4OZCgay40QEIbMTnNq4R0KSaIw1TZyFtPWjm5aNM+pBBMTfc3exmw=="; - }; - }; "ipaddr.js-1.9.1" = { name = "ipaddr.js"; packageName = "ipaddr.js"; @@ -1482,6 +1536,15 @@ let sha1 = "ef9e31386f031a7f0d643af82fde50c457ef00cb"; }; }; + "is-plain-object-5.0.0" = { + name = "is-plain-object"; + packageName = "is-plain-object"; + version = "5.0.0"; + src = fetchurl { + url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz"; + sha512 = "VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="; + }; + }; "is-promise-2.2.2" = { name = "is-promise"; packageName = "is-promise"; @@ -1545,6 +1608,15 @@ let sha512 = "xz6Jv6oNkbhrFCvCP7HQa8AaII8y8LRpoSm661NOKLr4uHuBwhX4epXrPQgF3+xdJnN4Esm5X0xwY4bOlALOtw=="; }; }; + "klona-2.0.4" = { + name = "klona"; + packageName = "klona"; + version = "2.0.4"; + src = fetchurl { + url = "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz"; + sha512 = "ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA=="; + }; + }; "kuler-2.0.0" = { name = "kuler"; packageName = "kuler"; @@ -1563,13 +1635,13 @@ let sha512 = "GnAl/knGn+i1U/wjBz3akz2stz+HrHLsxMwHQGofCDfPvlf+gDKN58UtfmUquTY4/MXeE2x7k19KQmeoZi94Iw=="; }; }; - "lodash-4.17.20" = { + "lodash-4.17.21" = { name = "lodash"; packageName = "lodash"; - version = "4.17.20"; + version = "4.17.21"; src = fetchurl { - url = "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz"; - sha512 = "PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA=="; + url = "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"; + sha512 = "v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="; }; }; "lodash.camelcase-4.3.0" = { @@ -1797,6 +1869,15 @@ let sha512 = "wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg=="; }; }; + "minipass-3.1.3" = { + name = "minipass"; + packageName = "minipass"; + version = "3.1.3"; + src = fetchurl { + url = "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz"; + sha512 = "Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg=="; + }; + }; "minizlib-1.3.3" = { name = "minizlib"; packageName = "minizlib"; @@ -1806,6 +1887,15 @@ let sha512 = "6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q=="; }; }; + "minizlib-2.1.2" = { + name = "minizlib"; + packageName = "minizlib"; + version = "2.1.2"; + src = fetchurl { + url = "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz"; + sha512 = "bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg=="; + }; + }; "mkdirp-0.5.5" = { name = "mkdirp"; packageName = "mkdirp"; @@ -1878,13 +1968,13 @@ let sha512 = "6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="; }; }; - "mx-puppet-bridge-0.1.4" = { + "mx-puppet-bridge-0.1.6" = { name = "mx-puppet-bridge"; packageName = "mx-puppet-bridge"; - version = "0.1.4"; + version = "0.1.6"; src = fetchurl { - url = "https://registry.npmjs.org/mx-puppet-bridge/-/mx-puppet-bridge-0.1.4.tgz"; - sha512 = "Jg4hszVqQv1n35Mvb5HcfK4VafjB0LaCEay8ylgiu/M2oIPE0fadFNdQpkwssXmShDzSeth/xga3HgP8G6O5Fg=="; + url = "https://registry.npmjs.org/mx-puppet-bridge/-/mx-puppet-bridge-0.1.6.tgz"; + sha512 = "q8XtOcmn25NkdBPM1LWYGAlgZZi+mI7+Dp7F5a1zQD0JM9cMcpW9FIO/JqAer+s3Y8CgTim3JZ2AyrUjfLRKsg=="; }; }; "nan-2.14.2" = { @@ -1896,6 +1986,15 @@ let sha512 = "M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ=="; }; }; + "nanoid-3.1.23" = { + name = "nanoid"; + packageName = "nanoid"; + version = "3.1.23"; + src = fetchurl { + url = "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz"; + sha512 = "FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw=="; + }; + }; "napi-build-utils-1.0.2" = { name = "napi-build-utils"; packageName = "napi-build-utils"; @@ -1923,13 +2022,13 @@ let sha512 = "hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw=="; }; }; - "node-abi-2.19.3" = { + "node-abi-2.30.0" = { name = "node-abi"; packageName = "node-abi"; - version = "2.19.3"; + version = "2.30.0"; src = fetchurl { - url = "https://registry.npmjs.org/node-abi/-/node-abi-2.19.3.tgz"; - sha512 = "9xZrlyfvKhWme2EXFKQhZRp1yNWT/uI1luYPr3sFl+H4keYY4xR+1jO7mvTTijIsHf1M+QDe9uWuKeEpLInIlg=="; + url = "https://registry.npmjs.org/node-abi/-/node-abi-2.30.0.tgz"; + sha512 = "g6bZh3YCKQRdwuO/tSZZYJAw622SjsRfJ2X0Iy4sSOHZ34/sPPdVBn8fev2tj7njzLwuqPw9uMtGsGkO5kIQvg=="; }; }; "node-emoji-1.10.0" = { @@ -1968,15 +2067,6 @@ let sha512 = "TwWAOZb0j7e9eGaf9esRx3ZcLaE5tQ2lvYy1pb5IAaG1a2e2Kv5Lms1Y4hpj+ciXJRofIxxlt5haeQ/2ANeE0Q=="; }; }; - "noop-logger-0.1.1" = { - name = "noop-logger"; - packageName = "noop-logger"; - version = "0.1.1"; - src = fetchurl { - url = "https://registry.npmjs.org/noop-logger/-/noop-logger-0.1.1.tgz"; - sha1 = "94a2b1633c4f1317553007d8966fd0e841b6a4c2"; - }; - }; "nopt-4.0.3" = { name = "nopt"; packageName = "nopt"; @@ -1986,13 +2076,13 @@ let sha512 = "CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg=="; }; }; - "normalize-url-4.5.0" = { + "normalize-url-4.5.1" = { name = "normalize-url"; packageName = "normalize-url"; - version = "4.5.0"; + version = "4.5.1"; src = fetchurl { - url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz"; - sha512 = "2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ=="; + url = "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz"; + sha512 = "9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA=="; }; }; "normalize-version-1.0.5" = { @@ -2292,13 +2382,13 @@ let sha1 = "e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176"; }; }; - "postcss-7.0.35" = { + "postcss-8.3.6" = { name = "postcss"; packageName = "postcss"; - version = "7.0.35"; + version = "8.3.6"; src = fetchurl { - url = "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz"; - sha512 = "3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg=="; + url = "https://registry.npmjs.org/postcss/-/postcss-8.3.6.tgz"; + sha512 = "wG1cc/JhRgdqB6WHEuyLTedf3KIRuD0hG6ldkFEZNCjRxiC+3i6kkWUUbiJQayP28iwG35cEmAbe98585BYV0A=="; }; }; "postgres-array-2.0.0" = { @@ -2337,13 +2427,13 @@ let sha512 = "9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ=="; }; }; - "prebuild-install-5.3.6" = { + "prebuild-install-6.1.3" = { name = "prebuild-install"; packageName = "prebuild-install"; - version = "5.3.6"; + version = "6.1.3"; src = fetchurl { - url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-5.3.6.tgz"; - sha512 = "s8Aai8++QQGi4sSbs/M1Qku62PFK49Jm1CbgXklGz4nmHveDq0wzJkg7Na5QbnO1uNH8K7iqx2EQ/mV0MZEmOg=="; + url = "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.3.tgz"; + sha512 = "iqqSR84tNYQUQHRXalSKdIaM8Ov1QxOVuBNWI7+BzZWv6Ih9k75wOnH1rGQ9WWTaaLkTpxWKIciOF0KyfM74+Q=="; }; }; "prism-media-1.2.3" = { @@ -2382,13 +2472,13 @@ let sha512 = "M7ZNjIO6x+2R/vjSD13yjJPjpoZA8eEwH2Bp2Re0/PvzozD7azikv+SaBtZes4Q1ca/xHjZ4RSCuTag3YZLg1A=="; }; }; - "proxy-addr-2.0.6" = { + "proxy-addr-2.0.7" = { name = "proxy-addr"; packageName = "proxy-addr"; - version = "2.0.6"; + version = "2.0.7"; src = fetchurl { - url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz"; - sha512 = "dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw=="; + url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz"; + sha512 = "llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg=="; }; }; "pump-3.0.0" = { @@ -2526,13 +2616,13 @@ let sha512 = "YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="; }; }; - "sanitize-html-1.27.5" = { + "sanitize-html-2.4.0" = { name = "sanitize-html"; packageName = "sanitize-html"; - version = "1.27.5"; + version = "2.4.0"; src = fetchurl { - url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-1.27.5.tgz"; - sha512 = "M4M5iXDAUEcZKLXkmk90zSYWEtk5NH3JmojQxKxV371fnMh+x9t1rqdmXaGoyEHw3z/X/8vnFhKjGL5xFGOJ3A=="; + url = "https://registry.npmjs.org/sanitize-html/-/sanitize-html-2.4.0.tgz"; + sha512 = "Y1OgkUiTPMqwZNRLPERSEi39iOebn2XJLbeiGOBhaJD/yLqtLGu6GE5w7evx177LeGgSE+4p4e107LMiydOf6A=="; }; }; "sax-1.2.4" = { @@ -2661,13 +2751,13 @@ let sha1 = "a4da6b635ffcccca33f70d17cb92592de95e557a"; }; }; - "source-map-0.6.1" = { - name = "source-map"; - packageName = "source-map"; - version = "0.6.1"; + "source-map-js-0.6.2" = { + name = "source-map-js"; + packageName = "source-map-js"; + version = "0.6.2"; src = fetchurl { - url = "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz"; - sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="; + url = "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz"; + sha512 = "/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug=="; }; }; "spex-3.2.0" = { @@ -2769,15 +2859,6 @@ let sha512 = "QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow=="; }; }; - "supports-color-6.1.0" = { - name = "supports-color"; - packageName = "supports-color"; - version = "6.1.0"; - src = fetchurl { - url = "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz"; - sha512 = "qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ=="; - }; - }; "supports-color-7.2.0" = { name = "supports-color"; packageName = "supports-color"; @@ -2805,6 +2886,15 @@ let sha512 = "g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA=="; }; }; + "tar-6.1.0" = { + name = "tar"; + packageName = "tar"; + version = "6.1.0"; + src = fetchurl { + url = "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz"; + sha512 = "DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA=="; + }; + }; "tar-fs-2.1.1" = { name = "tar-fs"; packageName = "tar-fs"; @@ -3039,15 +3129,6 @@ let sha1 = "2299f02c6ded30d4a5961b0b9f74524a18f634fc"; }; }; - "which-pm-runs-1.0.0" = { - name = "which-pm-runs"; - packageName = "which-pm-runs"; - version = "1.0.0"; - src = fetchurl { - url = "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz"; - sha1 = "670b3afbc552e0b55df6b7780ca74615f23ad1cb"; - }; - }; "wide-align-1.1.3" = { name = "wide-align"; packageName = "wide-align"; @@ -3111,13 +3192,13 @@ let sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"; }; }; - "ws-7.4.1" = { + "ws-7.5.3" = { name = "ws"; packageName = "ws"; - version = "7.4.1"; + version = "7.5.3"; src = fetchurl { - url = "https://registry.npmjs.org/ws/-/ws-7.4.1.tgz"; - sha512 = "pTsP8UAfhy3sk1lSk/O/s4tjD0CRwvMnzvwr4OKGX7ZvqZtUyx4KIJB5JWbkykPoc55tixMGgTNoh3k4FkNGFQ=="; + url = "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz"; + sha512 = "kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg=="; }; }; "xtend-4.0.2" = { @@ -3160,10 +3241,10 @@ let sources."@discordjs/collection-0.1.6" sources."@discordjs/form-data-3.0.1" sources."@sindresorhus/is-3.1.2" - (sources."@sorunome/matrix-bot-sdk-0.5.8" // { + (sources."@sorunome/matrix-bot-sdk-0.5.13" // { dependencies = [ sources."ansi-styles-4.3.0" - sources."chalk-4.1.0" + sources."chalk-4.1.1" sources."color-convert-2.0.1" sources."color-name-1.1.4" sources."has-flag-4.0.0" @@ -3172,20 +3253,20 @@ let ]; }) sources."@szmarczak/http-timer-4.0.5" - sources."@types/body-parser-1.19.0" + sources."@types/body-parser-1.19.1" sources."@types/cacheable-request-6.0.1" - sources."@types/connect-3.4.34" - sources."@types/express-4.17.11" - sources."@types/express-serve-static-core-4.17.18" + sources."@types/connect-3.4.35" + sources."@types/express-4.17.13" + sources."@types/express-serve-static-core-4.17.24" sources."@types/http-cache-semantics-4.0.0" sources."@types/keyv-3.1.1" sources."@types/node-14.6.3" sources."@types/prop-types-15.7.3" - sources."@types/qs-6.9.5" - sources."@types/range-parser-1.2.3" + sources."@types/qs-6.9.7" + sources."@types/range-parser-1.2.4" sources."@types/react-17.0.0" sources."@types/responselike-1.0.0" - (sources."@types/serve-static-1.13.9" // { + (sources."@types/serve-static-1.13.10" // { dependencies = [ sources."@types/mime-1.3.2" ]; @@ -3207,10 +3288,19 @@ let sources."base64-js-1.5.1" sources."basic-auth-2.0.1" sources."better-discord.js-git+https://github.com/Sorunome/better-discord.js.git#5e58e1e7510cf2192f3503ca146dd61a56a75c72" - sources."better-sqlite3-6.0.1" + (sources."better-sqlite3-7.4.3" // { + dependencies = [ + sources."chownr-2.0.0" + sources."fs-minipass-2.1.0" + sources."minipass-3.1.3" + sources."minizlib-2.1.2" + sources."mkdirp-1.0.4" + sources."tar-6.1.0" + ]; + }) sources."bindings-1.5.0" sources."bintrees-1.0.1" - (sources."bl-4.0.3" // { + (sources."bl-4.1.0" // { dependencies = [ sources."inherits-2.0.4" sources."readable-stream-3.6.0" @@ -3234,6 +3324,7 @@ let sources."color-convert-1.9.3" sources."color-name-1.1.3" sources."color-string-1.5.4" + sources."colorette-1.2.2" sources."colors-1.4.0" sources."colorspace-1.1.2" sources."combined-stream-1.0.8" @@ -3261,6 +3352,7 @@ let ]; }) sources."deep-extend-0.6.0" + sources."deepmerge-4.2.2" sources."defer-to-connect-2.0.0" sources."delayed-stream-1.0.0" sources."delegates-1.0.0" @@ -3268,24 +3360,24 @@ let sources."destroy-1.0.4" sources."detect-libc-1.0.3" sources."diff-3.5.0" - sources."discord-markdown-git://github.com/Sorunome/discord-markdown.git#0f38420fdd41340d6eadd38cd5b71784ca954085" - (sources."dom-serializer-1.2.0" // { + sources."discord-markdown-git+https://github.com/Sorunome/discord-markdown.git#0f38420fdd41340d6eadd38cd5b71784ca954085" + (sources."dom-serializer-1.3.2" // { dependencies = [ - sources."domhandler-4.0.0" + sources."domhandler-4.2.0" ]; }) - sources."domelementtype-2.1.0" + sources."domelementtype-2.2.0" sources."domhandler-3.3.0" - (sources."domutils-2.4.4" // { + (sources."domutils-2.7.0" // { dependencies = [ - sources."domhandler-4.0.0" + sources."domhandler-4.2.0" ]; }) sources."ee-first-1.1.1" sources."enabled-2.0.0" sources."encodeurl-1.0.2" sources."end-of-stream-1.4.4" - sources."entities-2.1.0" + sources."entities-2.2.0" sources."escape-html-1.0.3" sources."escape-string-regexp-1.0.5" sources."esprima-4.0.1" @@ -3305,7 +3397,7 @@ let sources."finalhandler-1.1.2" sources."find-replace-3.0.0" sources."fn.name-1.1.0" - sources."forwarded-0.1.2" + sources."forwarded-0.2.0" sources."fresh-0.5.2" sources."fs-constants-1.0.0" sources."fs-minipass-1.2.7" @@ -3316,13 +3408,14 @@ let sources."glob-7.1.4" sources."glob-to-regexp-0.4.1" sources."got-11.6.0" - sources."graceful-fs-4.2.4" + sources."graceful-fs-4.2.6" sources."has-flag-3.0.0" sources."has-unicode-2.0.1" sources."hash.js-1.1.7" sources."hasha-5.2.2" sources."he-1.2.0" sources."highlight.js-10.4.1" + sources."html-to-text-6.0.0" sources."htmlencode-0.0.4" sources."htmlparser2-4.1.0" sources."http-cache-semantics-4.1.0" @@ -3334,11 +3427,11 @@ let sources."inflight-1.0.6" sources."inherits-2.0.3" sources."ini-1.3.8" - sources."integer-3.0.1" sources."ipaddr.js-1.9.1" sources."is-arrayish-0.3.2" sources."is-extendable-0.1.1" sources."is-fullwidth-code-point-1.0.0" + sources."is-plain-object-5.0.0" sources."is-promise-2.2.2" sources."is-stream-2.0.0" sources."isarray-1.0.0" @@ -3346,9 +3439,10 @@ let sources."js-yaml-3.13.1" sources."json-buffer-3.0.1" sources."keyv-4.0.1" + sources."klona-2.0.4" sources."kuler-2.0.0" sources."linkify-it-2.2.0" - sources."lodash-4.17.20" + sources."lodash-4.17.21" sources."lodash.camelcase-4.3.0" sources."lodash.padend-4.6.1" sources."lodash.toarray-4.4.0" @@ -3392,12 +3486,13 @@ let ]; }) sources."ms-2.0.0" - (sources."mx-puppet-bridge-0.1.4" // { + (sources."mx-puppet-bridge-0.1.6" // { dependencies = [ sources."events-3.2.0" ]; }) sources."nan-2.14.2" + sources."nanoid-3.1.23" sources."napi-build-utils-1.0.2" (sources."needle-2.6.0" // { dependencies = [ @@ -3406,14 +3501,13 @@ let ]; }) sources."negotiator-0.6.2" - sources."node-abi-2.19.3" + sources."node-abi-2.30.0" sources."node-emoji-1.10.0" sources."node-fetch-2.6.1" sources."node-html-parser-1.4.9" sources."node-pre-gyp-0.11.0" - sources."noop-logger-0.1.1" sources."nopt-4.0.3" - sources."normalize-url-4.5.0" + sources."normalize-url-4.5.1" sources."normalize-version-1.0.5" sources."npm-bundled-1.1.1" sources."npm-normalize-package-bin-1.0.1" @@ -3447,21 +3541,17 @@ let sources."pg-types-2.2.0" sources."pgpass-1.0.4" sources."pify-3.0.0" - (sources."postcss-7.0.35" // { - dependencies = [ - sources."supports-color-6.1.0" - ]; - }) + sources."postcss-8.3.6" sources."postgres-array-2.0.0" sources."postgres-bytea-1.0.0" sources."postgres-date-1.0.7" sources."postgres-interval-1.2.0" - sources."prebuild-install-5.3.6" + sources."prebuild-install-6.1.3" sources."prism-media-1.2.3" sources."process-0.11.10" sources."process-nextick-args-2.0.1" sources."prom-client-13.0.0" - sources."proxy-addr-2.0.6" + sources."proxy-addr-2.0.7" sources."pump-3.0.0" sources."qs-6.7.0" sources."quick-lru-5.1.1" @@ -3476,7 +3566,13 @@ let sources."rimraf-2.7.1" sources."safe-buffer-5.1.2" sources."safer-buffer-2.1.2" - sources."sanitize-html-1.27.5" + (sources."sanitize-html-2.4.0" // { + dependencies = [ + sources."domhandler-4.2.0" + sources."escape-string-regexp-4.0.0" + sources."htmlparser2-6.1.0" + ]; + }) sources."sax-1.2.4" sources."semver-5.7.0" sources."semver-closest-0.1.2" @@ -3500,7 +3596,7 @@ let }) sources."simple-markdown-0.7.2" sources."simple-swizzle-0.2.2" - sources."source-map-0.6.1" + sources."source-map-js-0.6.2" sources."spex-3.2.0" (sources."split2-3.2.2" // { dependencies = [ @@ -3556,7 +3652,6 @@ let sources."utils-merge-1.0.1" sources."uuid-3.4.0" sources."vary-1.1.2" - sources."which-pm-runs-1.0.0" sources."wide-align-1.1.3" (sources."winston-3.3.3" // { dependencies = [ @@ -3582,7 +3677,7 @@ let ]; }) sources."wrappy-1.0.2" - sources."ws-7.4.1" + sources."ws-7.5.3" sources."xtend-4.0.2" sources."yallist-4.0.0" ]; From ef4f066697d1fabca282ef88526bb41ff291bafb Mon Sep 17 00:00:00 2001 From: David Knaack Date: Sat, 5 Feb 2022 12:39:25 +0100 Subject: [PATCH 3/9] plex: fix plugin/scanner symlink cleanup --- pkgs/servers/plex/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/servers/plex/default.nix b/pkgs/servers/plex/default.nix index fd580d52d8a0..1855ac1af54d 100644 --- a/pkgs/servers/plex/default.nix +++ b/pkgs/servers/plex/default.nix @@ -65,6 +65,7 @@ buildFHSUserEnv { # First, remove all of the symlinks in the plugins directory. while IFS= read -r -d $'\0' f; do echo "Removing plugin symlink: $f" + rm "$f" done < <(find "$pluginDir" -type l -print0) echo "Symlinking plugins" @@ -94,6 +95,7 @@ buildFHSUserEnv { echo "Removing old symlinks" while IFS= read -r -d $'\0' f; do echo "Removing scanner symlink: $f" + rm "$f" done < <(find "$scannerDir" -type l -print0) echo "Symlinking scanners" From ad30735b67f9db1f9b9a7f327fd048844dcb376a Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Sat, 5 Feb 2022 19:04:53 +0000 Subject: [PATCH 4/9] heisenbridge: 1.10.0 -> 1.10.1 --- pkgs/servers/heisenbridge/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/heisenbridge/default.nix b/pkgs/servers/heisenbridge/default.nix index 48aa24b2b842..cfbf1c1fb95c 100644 --- a/pkgs/servers/heisenbridge/default.nix +++ b/pkgs/servers/heisenbridge/default.nix @@ -1,13 +1,13 @@ { lib, fetchFromGitHub, fetchpatch, python3 }: python3.pkgs.buildPythonApplication rec { pname = "heisenbridge"; - version = "1.10.0"; + version = "1.10.1"; src = fetchFromGitHub { owner = "hifi"; repo = pname; rev = "v${version}"; - sha256 = "sha256-rQBmg1CBourj/dDJ7P108gGMRdXWp6nwvHIBiQbJLQ0="; + sha256 = "sha256-c+YP4pEGvLi7wZsDXrkoqR/isuYfXQmTwQp9gN5jHkQ="; }; postPatch = '' From 6c3dd634ef79eea8309f6c894500bd9359e9a5e6 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Thu, 18 Mar 2021 20:02:06 +0300 Subject: [PATCH 5/9] google-guest-agent: init at 20220104.00 --- .../google-guest-agent/default.nix | 53 ++++++++++++++++++ .../disable-etc-mutation.patch | 54 +++++++++++++++++++ .../google-guest-agent/fix-paths.patch | 43 +++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 4 files changed, 152 insertions(+) create mode 100644 pkgs/tools/virtualization/google-guest-agent/default.nix create mode 100644 pkgs/tools/virtualization/google-guest-agent/disable-etc-mutation.patch create mode 100644 pkgs/tools/virtualization/google-guest-agent/fix-paths.patch diff --git a/pkgs/tools/virtualization/google-guest-agent/default.nix b/pkgs/tools/virtualization/google-guest-agent/default.nix new file mode 100644 index 000000000000..a4ebd2db8f54 --- /dev/null +++ b/pkgs/tools/virtualization/google-guest-agent/default.nix @@ -0,0 +1,53 @@ +{ buildGoModule, fetchFromGitHub, fetchpatch, lib, coreutils, makeWrapper +, google-guest-configs, google-guest-oslogin, iproute2, dhcp, procps +}: + +buildGoModule rec { + pname = "guest-agent"; + version = "20220104.00"; + + src = fetchFromGitHub { + owner = "GoogleCloudPlatform"; + repo = pname; + rev = version; + sha256 = "sha256-BC2qpnGJU/D0z8jlmAEwvmFwBk1n0ZvqPBB6Zon9N/U="; + }; + + vendorSha256 = "sha256-YcWKSiN715Z9lmNAQx+sHEgxWnhFhenCNXBS7gdMV4M="; + + patches = [ ./disable-etc-mutation.patch ]; + + nativeBuildInputs = [ makeWrapper ]; + + postPatch = '' + substitute ${./fix-paths.patch} fix-paths.patch \ + --subst-var out \ + --subst-var-by true "${coreutils}/bin/true" + patch -p1 < ./fix-paths.patch + ''; + + # We don't add `shadow` here; it's added to PATH if `mutableUsers` is enabled. + binPath = lib.makeBinPath [ google-guest-configs google-guest-oslogin iproute2 dhcp procps ]; + + # Skip tests which require networking. + preCheck = '' + rm google_guest_agent/wsfc_test.go + ''; + + postInstall = '' + mkdir -p $out/etc/systemd/system + cp *.service $out/etc/systemd/system + install -Dm644 instance_configs.cfg $out/etc/default/instance_configs.cfg + + wrapProgram $out/bin/google_guest_agent \ + --prefix PATH ":" "$binPath" + ''; + + meta = with lib; { + homepage = "https://github.com/GoogleCloudPlatform/guest-agent"; + description = "Guest Agent for Google Compute Engine"; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/tools/virtualization/google-guest-agent/disable-etc-mutation.patch b/pkgs/tools/virtualization/google-guest-agent/disable-etc-mutation.patch new file mode 100644 index 000000000000..fe076baacd20 --- /dev/null +++ b/pkgs/tools/virtualization/google-guest-agent/disable-etc-mutation.patch @@ -0,0 +1,54 @@ +From 2e8060f9ade13ba18ae5930c0781227bfcce11a5 Mon Sep 17 00:00:00 2001 +From: Nikolay Amiantov +Date: Mon, 10 Jan 2022 22:16:38 +0300 +Subject: [PATCH] Disable accounts setup phase and oslogin + +On NixOS we set up necessary groups and sudoers rules declaratively, +and have most of `/etc` directory read-only. This creates (harmless) +error messages when trying to create google-sudoers file. + +"oslogin" daemon sets up configuration necessary for OS Login to +work, including PAM, NSS and sudoers. On NixOS we perform all this +configuration declaratively and have most of /etc mounted read-only. +This creates (harmless) error messages when running the daemon. +--- + google_guest_agent/non_windows_accounts.go | 9 --------- + google_guest_agent/oslogin.go | 2 +- + 2 files changed, 1 insertion(+), 10 deletions(-) + +diff --git a/google_guest_agent/non_windows_accounts.go b/google_guest_agent/non_windows_accounts.go +index 81013e3..05b830f 100644 +--- a/google_guest_agent/non_windows_accounts.go ++++ b/google_guest_agent/non_windows_accounts.go +@@ -104,15 +104,6 @@ func (a *accountsMgr) set() error { + sshKeys = make(map[string][]string) + } + +- logger.Debugf("create sudoers file if needed") +- if err := createSudoersFile(); err != nil { +- logger.Errorf("Error creating google-sudoers file: %v.", err) +- } +- logger.Debugf("create sudoers group if needed") +- if err := createSudoersGroup(); err != nil { +- logger.Errorf("Error creating google-sudoers group: %v.", err) +- } +- + mdkeys := newMetadata.Instance.Attributes.SSHKeys + if !newMetadata.Instance.Attributes.BlockProjectKeys { + mdkeys = append(mdkeys, newMetadata.Project.Attributes.SSHKeys...) +diff --git a/google_guest_agent/oslogin.go b/google_guest_agent/oslogin.go +index d05f733..980e84c 100644 +--- a/google_guest_agent/oslogin.go ++++ b/google_guest_agent/oslogin.go +@@ -76,7 +76,7 @@ func (o *osloginMgr) timeout() bool { + } + + func (o *osloginMgr) disabled(os string) bool { +- return os == "windows" ++ return true + } + + func (o *osloginMgr) set() error { +-- +2.34.1 + diff --git a/pkgs/tools/virtualization/google-guest-agent/fix-paths.patch b/pkgs/tools/virtualization/google-guest-agent/fix-paths.patch new file mode 100644 index 000000000000..07bb112ae289 --- /dev/null +++ b/pkgs/tools/virtualization/google-guest-agent/fix-paths.patch @@ -0,0 +1,43 @@ +diff --git a/google-guest-agent.service b/google-guest-agent.service +index 79b8e39..a39097b 100644 +--- a/google-guest-agent.service ++++ b/google-guest-agent.service +@@ -14,7 +14,7 @@ PartOf=network.service networking.service NetworkManager.service systemd-network + + [Service] + Type=notify +-ExecStart=/usr/bin/google_guest_agent ++ExecStart=@out@/bin/google_guest_agent + OOMScoreAdjust=-999 + Restart=always + +diff --git a/google-shutdown-scripts.service b/google-shutdown-scripts.service +index 16bb9c2..ae02067 100644 +--- a/google-shutdown-scripts.service ++++ b/google-shutdown-scripts.service +@@ -5,10 +5,10 @@ After=network-online.target rsyslog.service + + [Service] + Type=oneshot +-ExecStart=/bin/true ++ExecStart=@true@ + RemainAfterExit=true + # This service does nothing on start, and runs shutdown scripts on stop. +-ExecStop=/usr/bin/google_metadata_script_runner shutdown ++ExecStop=@out@/bin/google_metadata_script_runner shutdown + TimeoutStopSec=0 + KillMode=process + +diff --git a/google-startup-scripts.service b/google-startup-scripts.service +index dfc9838..2465265 100644 +--- a/google-startup-scripts.service ++++ b/google-startup-scripts.service +@@ -6,7 +6,7 @@ Before=apt-daily.service + + [Service] + Type=oneshot +-ExecStart=/usr/bin/google_metadata_script_runner startup ++ExecStart=@out@/bin/google_metadata_script_runner startup + #TimeoutStartSec is ignored for Type=oneshot service units. + KillMode=process + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 266a2c92a542..254978860704 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6109,6 +6109,8 @@ with pkgs; google-java-format = callPackage ../development/tools/google-java-format { }; + google-guest-agent = callPackage ../tools/virtualization/google-guest-agent { }; + gdown = with python3Packages; toPythonApplication gdown; gopro = callPackage ../tools/video/gopro { }; From c3f278bfba45fb496b5cb136f6be0eeb4c0b6696 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Thu, 18 Mar 2021 20:02:06 +0300 Subject: [PATCH 6/9] google-guest-configs: init at 20211116.00 --- .../google-guest-configs/default.nix | 52 ++++++++++++++++ .../google-guest-configs/fix-paths.patch | 61 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 115 insertions(+) create mode 100644 pkgs/tools/virtualization/google-guest-configs/default.nix create mode 100644 pkgs/tools/virtualization/google-guest-configs/fix-paths.patch diff --git a/pkgs/tools/virtualization/google-guest-configs/default.nix b/pkgs/tools/virtualization/google-guest-configs/default.nix new file mode 100644 index 000000000000..dd3c01c6229a --- /dev/null +++ b/pkgs/tools/virtualization/google-guest-configs/default.nix @@ -0,0 +1,52 @@ +{ stdenv, lib, fetchFromGitHub, makeWrapper, substituteAll +, ipcalc, iproute2, util-linux, coreutils, ethtool, gnugrep, gnused, nvme-cli }: + +stdenv.mkDerivation rec { + pname = "google-guest-configs"; + version = "20211116.00"; + + src = fetchFromGitHub { + owner = "GoogleCloudPlatform"; + repo = "guest-configs"; + rev = version; + sha256 = "sha256-0SRu6p/DsHNNI20mkXJitt/Ee5S2ooiy5hNmD+ndecM="; + }; + + binDeps = lib.makeBinPath [ coreutils util-linux gnugrep gnused ethtool ipcalc iproute2 ]; + + nativeBuildInputs = [ makeWrapper ]; + + dontConfigure = true; + dontBuild = true; + + postPatch = '' + substitute ${./fix-paths.patch} fix-paths.patch \ + --subst-var out \ + --subst-var-by nvme "${nvme-cli}/bin/nvme" \ + --subst-var-by sh "${stdenv.shell}" \ + --subst-var-by umount "${util-linux}/bin/umount" \ + --subst-var-by logger "${util-linux}/bin/logger" + patch -p1 < ./fix-paths.patch + ''; + + installPhase = '' + mkdir -p $out/{bin,etc,lib} + cp -r src/etc/{modprobe.d,sysctl.d} $out/etc + cp -r src/lib/udev $out/lib + cp -r src/sbin/* $out/bin + cp -r src/usr/bin/* $out/bin + + for i in $out/bin/* $out/lib/udev/google_nvme_id; do + wrapProgram "$i" \ + --prefix "PATH" ":" "$binDeps" + done + ''; + + meta = with lib; { + homepage = "https://github.com/GoogleCloudPlatform/guest-configs"; + description = "Linux Guest Environment for Google Compute Engine"; + license = licenses.asl20; + platforms = platforms.linux; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/tools/virtualization/google-guest-configs/fix-paths.patch b/pkgs/tools/virtualization/google-guest-configs/fix-paths.patch new file mode 100644 index 000000000000..7c9a86f10601 --- /dev/null +++ b/pkgs/tools/virtualization/google-guest-configs/fix-paths.patch @@ -0,0 +1,61 @@ +diff -ru3 source.old/src/lib/udev/google_nvme_id source.new/src/lib/udev/google_nvme_id +--- source.old/src/lib/udev/google_nvme_id 1970-01-01 03:00:01.000000000 +0300 ++++ source.new/src/lib/udev/google_nvme_id 2022-02-05 13:30:00.986242869 +0300 +@@ -17,7 +17,7 @@ + # the metadata server + + # Locations of the script's dependencies +-readonly nvme_cli_bin=/usr/sbin/nvme ++readonly nvme_cli_bin=@nvme@ + + # Bash regex to parse device paths and controller identification + readonly NAMESPACE_NUMBER_REGEX="/dev/nvme[[:digit:]]+n([[:digit:]]+).*" +diff -ru3 source.old/src/lib/udev/rules.d/64-gce-disk-removal.rules source.new/src/lib/udev/rules.d/64-gce-disk-removal.rules +--- source.old/src/lib/udev/rules.d/64-gce-disk-removal.rules 1970-01-01 03:00:01.000000000 +0300 ++++ source.new/src/lib/udev/rules.d/64-gce-disk-removal.rules 2022-02-05 13:27:42.635300567 +0300 +@@ -14,4 +14,4 @@ + # + # When a disk is removed, unmount any remaining attached volumes. + +-ACTION=="remove", SUBSYSTEM=="block", KERNEL=="sd*|vd*|nvme*", RUN+="/bin/sh -c '/bin/umount -fl /dev/$name && /usr/bin/logger -p daemon.warn -s WARNING: hot-removed /dev/$name that was still mounted, data may have been corrupted'" ++ACTION=="remove", SUBSYSTEM=="block", KERNEL=="sd*|vd*|nvme*", RUN+="@sh@ -c '@umount@ -fl /dev/$name && @logger@ -p daemon.warn -s WARNING: hot-removed /dev/$name that was still mounted, data may have been corrupted'" +diff -ru3 source.old/src/lib/udev/rules.d/65-gce-disk-naming.rules source.new/src/lib/udev/rules.d/65-gce-disk-naming.rules +--- source.old/src/lib/udev/rules.d/65-gce-disk-naming.rules 1970-01-01 03:00:01.000000000 +0300 ++++ source.new/src/lib/udev/rules.d/65-gce-disk-naming.rules 2022-02-05 13:27:05.053107964 +0300 +@@ -21,11 +21,11 @@ + KERNEL=="sd*|vd*", IMPORT{program}="scsi_id --export --whitelisted -d $tempnode" + + # NVME Local SSD naming +-KERNEL=="nvme*n*", ATTRS{model}=="nvme_card", PROGRAM="/bin/sh -c 'nsid=$$(echo %k|sed -re s/nvme[0-9]+n\([0-9]+\).\*/\\1/); echo $$((nsid-1))'", ENV{ID_SERIAL_SHORT}="local-nvme-ssd-%c" ++KERNEL=="nvme*n*", ATTRS{model}=="nvme_card", PROGRAM="@sh@ -c 'nsid=$$(echo %k|sed -re s/nvme[0-9]+n\([0-9]+\).\*/\\1/); echo $$((nsid-1))'", ENV{ID_SERIAL_SHORT}="local-nvme-ssd-%c" + KERNEL=="nvme*", ATTRS{model}=="nvme_card", ENV{ID_SERIAL}="Google_EphemeralDisk_$env{ID_SERIAL_SHORT}" + + # NVME Persistent Disk Naming +-KERNEL=="nvme*n*", ATTRS{model}=="nvme_card-pd", IMPORT{program}="google_nvme_id -d $tempnode" ++KERNEL=="nvme*n*", ATTRS{model}=="nvme_card-pd", IMPORT{program}="@out@/lib/udev/google_nvme_id -d $tempnode" + + # Symlinks + KERNEL=="sd*|vd*|nvme*", ENV{DEVTYPE}=="disk", SYMLINK+="disk/by-id/google-$env{ID_SERIAL_SHORT}" +diff -ru3 source.old/src/sbin/google-dhclient-script source.new/src/sbin/google-dhclient-script +--- source.old/src/sbin/google-dhclient-script 1970-01-01 03:00:01.000000000 +0300 ++++ source.new/src/sbin/google-dhclient-script 2022-02-05 13:29:37.430058984 +0300 +@@ -31,7 +31,6 @@ + # This script is found in EL 7 and used to fix local routing in EL 6. + # ---------- + +-PATH=/bin:/usr/bin:/sbin + # scripts in dhclient.d/ use $SAVEDIR (#833054) + SAVEDIR=/var/lib/dhclient + +@@ -58,9 +57,9 @@ + if need_hostname; then + status=1 + if [ -n "${new_ip_address}" ]; then +- eval $(/bin/ipcalc --silent --hostname ${new_ip_address} ; echo "status=$?") ++ eval $(ipcalc --silent --hostname ${new_ip_address} ; echo "status=$?") + elif [ -n "${new_ip6_address}" ]; then +- eval $(/bin/ipcalc --silent --hostname ${new_ip6_address} ; echo "status=$?") ++ eval $(ipcalc --silent --hostname ${new_ip6_address} ; echo "status=$?") + fi + + if [ ${status} -eq 0 ]; then diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 254978860704..3a8b4dc554de 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6111,6 +6111,8 @@ with pkgs; google-guest-agent = callPackage ../tools/virtualization/google-guest-agent { }; + google-guest-configs = callPackage ../tools/virtualization/google-guest-configs { }; + gdown = with python3Packages; toPythonApplication gdown; gopro = callPackage ../tools/video/gopro { }; From 077d0524ccfec44c00b469833ad7b5d8a984e7f6 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Mon, 10 Jan 2022 16:39:16 +0300 Subject: [PATCH 7/9] google-compute-engine-oslogin: 20210429.00 -> 20211213.00 * Rename to google-guest-oslogin; * Fix systemd service; * Small cleanup. --- .../default.nix | 28 ++++++++++--------- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 16 insertions(+), 14 deletions(-) rename pkgs/tools/virtualization/{google-compute-engine-oslogin => google-guest-oslogin}/default.nix (60%) diff --git a/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix b/pkgs/tools/virtualization/google-guest-oslogin/default.nix similarity index 60% rename from pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix rename to pkgs/tools/virtualization/google-guest-oslogin/default.nix index 0718e437b06b..6dceeecfd6e9 100644 --- a/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix +++ b/pkgs/tools/virtualization/google-guest-oslogin/default.nix @@ -9,38 +9,39 @@ }: stdenv.mkDerivation rec { - pname = "google-compute-engine-oslogin"; - version = "20210429.00"; + pname = "google-guest-oslogin"; + version = "20211213.00"; src = fetchFromGitHub { owner = "GoogleCloudPlatform"; repo = "guest-oslogin"; rev = version; - sha256 = "eHAg9K5oxcygEzqaac81jSFHF+zsW6uB7q2Kfo9hSrA="; + sha256 = "sha256-8RuLYdWfk8zPfoF06r5E/6eHQ7tziZbgGhZlLCUW600="; }; postPatch = '' # change sudoers dir from /var/google-sudoers.d to /run/google-sudoers.d (managed through systemd-tmpfiles) substituteInPlace src/pam/pam_oslogin_admin.cc --replace /var/google-sudoers.d /run/google-sudoers.d # fix "User foo not allowed because shell /bin/bash does not exist" - substituteInPlace src/include/compat.h --replace /bin/bash ${bashInteractive}/bin/bash + substituteInPlace src/include/compat.h --replace /bin/bash /run/current-system/sw/bin/bash ''; - buildInputs = [ curl.dev pam ]; + buildInputs = [ curl.dev pam json_c ]; - NIX_CFLAGS_COMPILE = "-I${json_c.dev}/include/json-c"; - NIX_CFLAGS_LINK = "-L${json_c}/lib"; + NIX_CFLAGS_COMPILE = [ "-I${json_c.dev}/include/json-c" ]; makeFlags = [ "VERSION=${version}" - "DESTDIR=${placeholder "out"}" - "PREFIX=/" - "BINDIR=/bin" - "LIBDIR=/lib" - "PAMDIR=/lib" - "MANDIR=/share/man" + "PREFIX=$(out)" + "MANDIR=$(out)/share/man" + "SYSTEMDDIR=$(out)/etc/systemd/system" + "PRESETDIR=$(out)/etc/systemd/system-preset" ]; + postInstall = '' + sed -i "s,/usr/bin/,$out/bin/,g" $out/etc/systemd/system/google-oslogin-cache.service + ''; + enableParallelBuilding = true; passthru.tests = { @@ -51,6 +52,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/GoogleCloudPlatform/compute-image-packages"; description = "OS Login Guest Environment for Google Compute Engine"; license = licenses.asl20; + platforms = platforms.linux; maintainers = with maintainers; [ flokli ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3a8b4dc554de..4c32b9b76a27 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6103,7 +6103,7 @@ with pkgs; google-compute-engine = with python38.pkgs; toPythonApplication google-compute-engine; - google-compute-engine-oslogin = callPackage ../tools/virtualization/google-compute-engine-oslogin { }; + google-guest-oslogin = callPackage ../tools/virtualization/google-guest-oslogin { }; google-cloud-cpp = callPackage ../development/libraries/google-cloud-cpp { }; From 524aecf61e11663a3e841bee2e2b3a45a64ffdc2 Mon Sep 17 00:00:00 2001 From: Nikolay Amiantov Date: Thu, 18 Mar 2021 20:02:07 +0300 Subject: [PATCH 8/9] google-compute-config: update config --- nixos/modules/security/google_oslogin.nix | 9 +- nixos/modules/security/pam.nix | 12 +- .../fetch-instance-ssh-keys.bash | 36 ----- .../virtualisation/google-compute-config.nix | 137 +++++------------- nixos/tests/google-oslogin/default.nix | 4 +- nixos/tests/google-oslogin/server.nix | 4 +- nixos/tests/google-oslogin/server.py | 0 nixos/tests/ssh-keys.nix | 2 +- 8 files changed, 49 insertions(+), 155 deletions(-) delete mode 100644 nixos/modules/virtualisation/fetch-instance-ssh-keys.bash mode change 100644 => 100755 nixos/tests/google-oslogin/server.py diff --git a/nixos/modules/security/google_oslogin.nix b/nixos/modules/security/google_oslogin.nix index c2889a0f0d1d..cf416035ef60 100644 --- a/nixos/modules/security/google_oslogin.nix +++ b/nixos/modules/security/google_oslogin.nix @@ -5,7 +5,7 @@ with lib; let cfg = config.security.googleOsLogin; - package = pkgs.google-compute-engine-oslogin; + package = pkgs.google-guest-oslogin; in @@ -17,7 +17,7 @@ in type = types.bool; default = false; description = '' - Whether to enable Google OS Login + Whether to enable Google OS Login. The OS Login package enables the following components: AuthorizedKeysCommand to query valid SSH keys from the user's OS Login @@ -36,7 +36,7 @@ in security.pam.services.sshd = { makeHomeDir = true; googleOsLoginAccountVerification = true; - # disabled for now: googleOsLoginAuthentication = true; + googleOsLoginAuthentication = true; }; security.sudo.extraConfig = '' @@ -47,6 +47,9 @@ in "d /var/google-users.d 750 root root -" ]; + systemd.packages = [ package ]; + systemd.timers.google-oslogin-cache.wantedBy = [ "timers.target" ]; + # enable the nss module, so user lookups etc. work system.nssModules = [ package ]; system.nssDatabases.passwd = [ "cache_oslogin" "oslogin" ]; diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix index 964cfe7040c1..9f295db84fd6 100644 --- a/nixos/modules/security/pam.nix +++ b/nixos/modules/security/pam.nix @@ -444,15 +444,15 @@ let account sufficient ${pam_krb5}/lib/security/pam_krb5.so '' + optionalString cfg.googleOsLoginAccountVerification '' - account [success=ok ignore=ignore default=die] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so - account [success=ok default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_admin.so + account [success=ok ignore=ignore default=die] ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so + account [success=ok default=ignore] ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_admin.so '' + '' # Authentication management. '' + optionalString cfg.googleOsLoginAuthentication '' - auth [success=done perm_denied=bad default=ignore] ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so + auth [success=done perm_denied=die default=ignore] ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so '' + optionalString cfg.rootOK '' auth sufficient pam_rootok.so @@ -1091,11 +1091,11 @@ in mr ${pam_ccreds}/lib/security/pam_ccreds.so, '' + optionalString (isEnabled (cfg: cfg.googleOsLoginAccountVerification)) '' - mr ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so, - mr ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_admin.so, + mr ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so, + mr ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_admin.so, '' + optionalString (isEnabled (cfg: cfg.googleOsLoginAuthentication)) '' - mr ${pkgs.google-compute-engine-oslogin}/lib/pam_oslogin_login.so, + mr ${pkgs.google-guest-oslogin}/lib/security/pam_oslogin_login.so, '' + optionalString (config.security.pam.enableSSHAgentAuth && isEnabled (cfg: cfg.sshAgentAuth)) '' diff --git a/nixos/modules/virtualisation/fetch-instance-ssh-keys.bash b/nixos/modules/virtualisation/fetch-instance-ssh-keys.bash deleted file mode 100644 index 4a8601961115..000000000000 --- a/nixos/modules/virtualisation/fetch-instance-ssh-keys.bash +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -WGET() { - wget --retry-connrefused -t 15 --waitretry=10 --header='Metadata-Flavor: Google' "$@" -} - -# When dealing with cryptographic keys, we want to keep things private. -umask 077 -mkdir -p /root/.ssh - -echo "Fetching authorized keys..." -WGET -O /tmp/auth_keys http://metadata.google.internal/computeMetadata/v1/instance/attributes/sshKeys - -# Read keys one by one, split in case Google decided -# to append metadata (it does sometimes) and add to -# authorized_keys if not already present. -touch /root/.ssh/authorized_keys -while IFS='' read -r line || [[ -n "$line" ]]; do - keyLine=$(echo -n "$line" | cut -d ':' -f2) - IFS=' ' read -r -a array <<<"$keyLine" - if [[ ${#array[@]} -ge 3 ]]; then - echo "${array[@]:0:3}" >>/tmp/new_keys - echo "Added ${array[*]:2} to authorized_keys" - fi -done Date: Sat, 5 Feb 2022 23:50:46 -0800 Subject: [PATCH 9/9] phinger-cursors: fix installPhase Running `cp -r ./ $out/share/icons` to copy the icon files to `$out/share/icons` ends up copying the `env-vars` file as well (since sourceRoot = .), which can lead to collisions when building the system path. This uses a wildcard instead, which relies on the assumption that all variants start with `phinger-cursors`. --- pkgs/data/icons/phinger-cursors/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/data/icons/phinger-cursors/default.nix b/pkgs/data/icons/phinger-cursors/default.nix index 4252136cf46b..5afd2fe228f6 100644 --- a/pkgs/data/icons/phinger-cursors/default.nix +++ b/pkgs/data/icons/phinger-cursors/default.nix @@ -14,7 +14,7 @@ stdenvNoCC.mkDerivation rec { installPhase = '' runHook preInstall mkdir -p $out/share/icons - cp -r ./ $out/share/icons + cp -r ./phinger-cursors* $out/share/icons runHook postInstall '';