about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/typesetting/carbon-now-cli/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/tools/typesetting/carbon-now-cli/default.nix')
-rw-r--r--nixpkgs/pkgs/tools/typesetting/carbon-now-cli/default.nix37
1 files changed, 37 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/tools/typesetting/carbon-now-cli/default.nix b/nixpkgs/pkgs/tools/typesetting/carbon-now-cli/default.nix
new file mode 100644
index 000000000000..7d35283ab74c
--- /dev/null
+++ b/nixpkgs/pkgs/tools/typesetting/carbon-now-cli/default.nix
@@ -0,0 +1,37 @@
+{ lib
+, buildNpmPackage
+, fetchFromGitHub
+}:
+
+buildNpmPackage rec {
+  pname = "carbon-now-cli";
+  version = "2.0.0";
+
+  src = fetchFromGitHub {
+    owner = "mixn";
+    repo = "carbon-now-cli";
+    rev = "v${version}";
+    hash = "sha256-2fqZdPkVM3qBZKacBv9dX99Q9WnM5m7OpChG2n1TnXg=";
+  };
+
+  npmDepsHash = "sha256-UgrgnaA+GXRQT3dtAoMq6tsZZ2gV1CQNoYG58IuSZUM=";
+
+  postPatch = ''
+    substituteInPlace package.json \
+      --replace "bundle/cli.js" "dist/cli.js" \
+      --replace "trash " "rm -rf " \
+      --replace "npx playwright install --with-deps" "true"
+  '';
+
+  env = {
+    PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD = 1;
+  };
+
+  meta = {
+    description = "Beautiful images of your code — from right inside your terminal";
+    homepage = "https://github.com/mixn/carbon-now-cli";
+    license = lib.licenses.mit;
+    mainProgram = "carbon-now";
+    maintainers = with lib.maintainers; [ rmcgibbo ];
+  };
+}