summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorRobert Schütz <nix@dotlambda.de>2023-09-26 10:08:35 -0700
committerRobert Schütz <nix@dotlambda.de>2023-09-26 10:08:41 -0700
commit4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6 (patch)
tree6c21a693c0ba22fbb61197b4b2226033e4a08ee7 /pkgs
parentcef748b8bc0dc728fec91bf546c1b2152e1d85e7 (diff)
downloadnixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.tar
nixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.tar.gz
nixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.tar.bz2
nixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.tar.lz
nixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.tar.xz
nixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.tar.zst
nixpkgs-4aedc8ceb195ec4d8eb77225f887ce8d4f6bdca6.zip
pxder: use fetchYarnDeps
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/by-name/px/pxder/package.nix66
-rw-r--r--pkgs/development/node-packages/aliases.nix1
-rw-r--r--pkgs/development/node-packages/node-packages.json1
-rw-r--r--pkgs/development/node-packages/node-packages.nix135
4 files changed, 67 insertions, 136 deletions
diff --git a/pkgs/by-name/px/pxder/package.nix b/pkgs/by-name/px/pxder/package.nix
new file mode 100644
index 00000000000..96760f7f669
--- /dev/null
+++ b/pkgs/by-name/px/pxder/package.nix
@@ -0,0 +1,66 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchYarnDeps
+, makeWrapper
+, prefetch-yarn-deps
+, yarn
+, nodejs
+}:
+
+stdenv.mkDerivation rec {
+  pname = "pxder";
+  version = "2.12.8";
+
+  src = fetchFromGitHub {
+    owner = "Tsuk1ko";
+    repo = "pxder";
+    rev = "v${version}";
+    hash = "sha256-+WZbs10+id+nohTZzLjEofb6k8PMGd73YhY3FUTXx5Q=";
+  };
+
+  offlineCache = fetchYarnDeps {
+    yarnLock = "${src}/yarn.lock";
+    hash = "sha256-++MqWIUntXQwOYpgAJ3nhAtZ5nxmEreioVHQokYkw7w=";
+  };
+
+  nativeBuildInputs  = [
+    makeWrapper
+    prefetch-yarn-deps
+    yarn
+  ];
+
+  configurePhase = ''
+    runHook preConfigure
+
+    export HOME=$(mktemp -d)
+    yarn config --offline set yarn-offline-mirror "$offlineCache"
+    fixup-yarn-lock yarn.lock
+    yarn --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive install
+
+    runHook postConfigure
+  '';
+
+  installPhase = ''
+    runHook preInstall
+
+    yarn --offline --production install
+
+    mkdir -p "$out/lib/node_modules/pxder"
+    cp -r . "$out/lib/node_modules/pxder"
+
+    makeWrapper "${nodejs}/bin/node" "$out/bin/pxder" \
+      --add-flags "$out/lib/node_modules/pxder/bin/pxder"
+
+    runHook postInstall
+  '';
+
+  meta = {
+    description = "Download illusts from pixiv.net";
+    homepage = "https://github.com/Tsuk1ko/pxder";
+    license = lib.licenses.gpl3Plus;
+    mainProgram = "pxder";
+    maintainers = with lib.maintainers; [ vanilla ];
+    platforms = lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/node-packages/aliases.nix b/pkgs/development/node-packages/aliases.nix
index 2b20c95f344..0cafac2c2d5 100644
--- a/pkgs/development/node-packages/aliases.nix
+++ b/pkgs/development/node-packages/aliases.nix
@@ -102,6 +102,7 @@ mapAliases {
   ocaml-language-server = throw "ocaml-language-server was removed because it was abandoned upstream"; # added 2023-09-04
   parcel-bundler = parcel; # added 2023-09-04
   prettier_d_slim = pkgs.prettier-d-slim; # added 2023-09-14
+  inherit (pkgs) pxder; # added 2023-09-26
   inherit (pkgs) quicktype; # added 2023-09-09
   react-native-cli = throw "react-native-cli was removed because it was deprecated"; # added 2023-09-25
   inherit (pkgs) react-static; # added 2023-08-21
diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json
index f7cc6e3e455..9ae05ca5ae0 100644
--- a/pkgs/development/node-packages/node-packages.json
+++ b/pkgs/development/node-packages/node-packages.json
@@ -209,7 +209,6 @@
 , "purescript-psa"
 , "purs-tidy"
 , "purty"
-, "pxder"
 , "pyright"
 , "react-tools"
 , "remod-cli"
diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix
index 0c571a1cca6..63cead11ca7 100644
--- a/pkgs/development/node-packages/node-packages.nix
+++ b/pkgs/development/node-packages/node-packages.nix
@@ -93716,141 +93716,6 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
-  pxder = nodeEnv.buildNodePackage {
-    name = "pxder";
-    packageName = "pxder";
-    version = "2.12.8";
-    src = fetchurl {
-      url = "https://registry.npmjs.org/pxder/-/pxder-2.12.8.tgz";
-      sha512 = "y1WhrgmrlfxF6wgTVnGIXO177BJj4WrjIfrxGAyZ9pDSDRPHcMySEfjXw1dTkqMD8wnIT0GR3dt1F72FxKRRhQ==";
-    };
-    dependencies = [
-      sources."@sindresorhus/is-0.14.0"
-      sources."@szmarczak/http-timer-1.1.2"
-      sources."@tootallnate/quickjs-emscripten-0.23.0"
-      sources."agent-base-7.1.0"
-      sources."appdata-path-1.0.0"
-      sources."ast-types-0.13.4"
-      sources."axios-0.24.0"
-      sources."basic-ftp-5.0.3"
-      sources."blueimp-md5-2.19.0"
-      (sources."cacheable-request-6.1.0" // {
-        dependencies = [
-          sources."get-stream-5.2.0"
-          sources."lowercase-keys-2.0.0"
-        ];
-      })
-      sources."call-bind-1.0.2"
-      sources."clone-response-1.0.3"
-      sources."colors-1.4.0"
-      sources."commander-5.1.0"
-      sources."compare-versions-4.1.4"
-      sources."data-uri-to-buffer-5.0.1"
-      sources."debug-4.3.4"
-      sources."decompress-response-3.3.0"
-      sources."deep-extend-0.6.0"
-      sources."defer-to-connect-1.1.3"
-      sources."define-lazy-prop-2.0.0"
-      sources."degenerator-5.0.1"
-      sources."duplexer3-0.1.5"
-      sources."end-of-stream-1.4.4"
-      sources."escodegen-2.1.0"
-      sources."esprima-4.0.1"
-      sources."estraverse-5.3.0"
-      sources."esutils-2.0.3"
-      sources."follow-redirects-1.15.3"
-      sources."fs-extra-11.1.1"
-      sources."function-bind-1.1.1"
-      sources."get-intrinsic-1.2.1"
-      sources."get-stream-4.1.0"
-      (sources."get-uri-6.0.1" // {
-        dependencies = [
-          sources."fs-extra-8.1.0"
-          sources."jsonfile-4.0.0"
-          sources."universalify-0.1.2"
-        ];
-      })
-      sources."got-9.6.0"
-      sources."graceful-fs-4.2.11"
-      sources."has-1.0.3"
-      sources."has-proto-1.0.1"
-      sources."has-symbols-1.0.3"
-      sources."http-cache-semantics-4.1.1"
-      sources."http-proxy-agent-7.0.0"
-      sources."https-proxy-agent-7.0.2"
-      sources."ini-1.3.8"
-      sources."ip-1.1.8"
-      sources."is-docker-2.2.1"
-      sources."is-wsl-2.2.0"
-      sources."js-base64-3.7.5"
-      sources."json-buffer-3.0.0"
-      sources."jsonfile-6.1.0"
-      sources."keyv-3.1.0"
-      sources."kleur-3.0.3"
-      sources."latest-version-5.1.0"
-      sources."lodash.flatmap-4.5.0"
-      sources."lowercase-keys-1.0.1"
-      sources."lru-cache-7.18.3"
-      sources."mimic-response-1.0.1"
-      sources."minimist-1.2.8"
-      sources."moment-2.29.4"
-      sources."ms-2.1.2"
-      sources."netmask-2.0.2"
-      sources."node-abort-controller-3.1.1"
-      sources."normalize-url-4.5.1"
-      sources."object-inspect-1.12.3"
-      sources."once-1.4.0"
-      sources."open-8.4.2"
-      sources."p-cancelable-1.1.0"
-      sources."pac-proxy-agent-7.0.1"
-      sources."pac-resolver-7.0.0"
-      sources."package-json-6.5.0"
-      (sources."pixiv-api-client-0.25.0" // {
-        dependencies = [
-          sources."axios-0.21.4"
-        ];
-      })
-      sources."prepend-http-2.0.0"
-      sources."prompts-2.4.2"
-      sources."proxy-agent-6.3.1"
-      sources."proxy-from-env-1.1.0"
-      sources."pump-3.0.0"
-      sources."qs-6.11.2"
-      sources."rc-1.2.8"
-      sources."readline-sync-1.4.10"
-      sources."register-protocol-win32-1.1.0"
-      sources."registry-auth-token-4.2.2"
-      sources."registry-url-5.1.0"
-      sources."responselike-1.0.2"
-      sources."semver-6.3.1"
-      sources."side-channel-1.0.4"
-      sources."sisteransi-1.0.5"
-      sources."smart-buffer-4.2.0"
-      (sources."socks-2.7.1" // {
-        dependencies = [
-          sources."ip-2.0.0"
-        ];
-      })
-      sources."socks-proxy-agent-8.0.2"
-      sources."source-map-0.6.1"
-      sources."strip-json-comments-2.0.1"
-      sources."to-readable-stream-1.0.0"
-      sources."tslib-2.6.2"
-      sources."universalify-2.0.0"
-      sources."url-parse-lax-3.0.0"
-      sources."winreg-1.2.4"
-      sources."wrappy-1.0.2"
-    ];
-    buildInputs = globalBuildInputs;
-    meta = {
-      description = "Download illusts from pixiv.net P站插画批量下载器";
-      homepage = "https://github.com/Tsuk1ko/pxder#readme";
-      license = "GPL-3.0-or-later";
-    };
-    production = true;
-    bypassCache = true;
-    reconstructLock = true;
-  };
   pyright = nodeEnv.buildNodePackage {
     name = "pyright";
     packageName = "pyright";