about summary refs log tree commit diff
path: root/pkgs/development/tools/nwjs
diff options
context:
space:
mode:
authorMikael Fangel <34864484+MikaelFangel@users.noreply.github.com>2023-11-06 14:03:02 +0100
committerMikael Fangel <34864484+MikaelFangel@users.noreply.github.com>2023-11-06 14:03:02 +0100
commit3fdf3742bacab4cdd69e583606a92f7f7a8986d9 (patch)
treef8c1a7f21cef378a66aa681689108b0f0945df7c /pkgs/development/tools/nwjs
parentc70a7f9fe95bd6eed4933113e7e9a20c9a1bcf8a (diff)
nwjs: format file
Diffstat (limited to 'pkgs/development/tools/nwjs')
-rw-r--r--pkgs/development/tools/nwjs/default.nix117
1 files changed, 85 insertions, 32 deletions
diff --git a/pkgs/development/tools/nwjs/default.nix b/pkgs/development/tools/nwjs/default.nix
index 9a87110497f09..56cce99d72229 100644
--- a/pkgs/development/tools/nwjs/default.nix
+++ b/pkgs/development/tools/nwjs/default.nix
@@ -1,60 +1,113 @@
-{ stdenv, lib, fetchurl, buildEnv, makeWrapper, autoPatchelfHook
-
-, xorg, alsa-lib, at-spi2-core, dbus, glib, gtk3, atk, pango, freetype
-, fontconfig , gdk-pixbuf, cairo, mesa, nss, nspr, expat, systemd
-, libcap, libdrm, libxkbcommon
+{ alsa-lib
+, at-spi2-core
+, atk
+, autoPatchelfHook
+, buildEnv
+, cairo
+, cups
+, dbus
+, expat
+, fetchurl
+, ffmpeg
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gtk3
+, lib
+, libcap
+, libdrm
 , libnotify
-, ffmpeg, libxcb, cups
-, sqlite, udev
 , libuuid
+, libxcb
+, libxkbcommon
+, makeWrapper
+, mesa
+, nspr
+, nss
+, pango
 , sdk ? false
+, sqlite
+, stdenv
+, systemd
+, udev
+, xorg
 }:
+
 let
-  bits = if stdenv.hostPlatform.system == "x86_64-linux" then "x64"
-         else "ia32";
+  bits = if stdenv.hostPlatform.system == "x86_64-linux" then "x64" else "ia32";
 
   nwEnv = buildEnv {
     name = "nwjs-env";
     paths = [
-      xorg.libX11 xorg.libXrender glib gtk3 atk at-spi2-core pango cairo gdk-pixbuf
-      freetype fontconfig xorg.libXcomposite alsa-lib xorg.libXdamage
-      xorg.libXext xorg.libXfixes mesa nss nspr expat dbus
-      xorg.libXtst xorg.libXi xorg.libXcursor xorg.libXrandr
-      xorg.libXScrnSaver xorg.libxshmfence cups
-      libcap libdrm libnotify
+      alsa-lib
+      at-spi2-core
+      atk
+      cairo
+      cups
+      dbus
+      expat
+      fontconfig
+      freetype
+      gdk-pixbuf
+      glib
+      gtk3
+      libcap
+      libdrm
+      libnotify
       libxkbcommon
+      mesa
+      nspr
+      nss
+      pango
+      xorg.libX11
+      xorg.libXScrnSaver
+      xorg.libXcomposite
+      xorg.libXcursor
+      xorg.libXdamage
+      xorg.libXext
+      xorg.libXfixes
+      xorg.libXi
+      xorg.libXrandr
+      xorg.libXrender
+      xorg.libXtst
+      xorg.libxshmfence
       # libnw-specific (not chromium dependencies)
-      ffmpeg libxcb
+      ffmpeg
+      libxcb
       # chromium runtime deps (dlopen’d)
-      sqlite udev
       libuuid
+      sqlite
+      udev
     ];
 
     extraOutputsToInstall = [ "lib" "out" ];
   };
 
-in stdenv.mkDerivation rec {
+in
+stdenv.mkDerivation rec {
   pname = "nwjs";
   version = "0.82.0";
 
-  src = if sdk then fetchurl {
-    url = "https://dl.nwjs.io/v${version}/nwjs-sdk-v${version}-linux-${bits}.tar.gz";
-    hash = if bits == "x64" then
-      "sha256-rKbnNAq9AVjSUjTipYze2VHiVi0RnZZsdQj1725DPd0=" else
-      "sha256-aIRnZDslOhoD5F0coX43VNFWGEImPU5oq9Roc4jYfsY=";
-  } else fetchurl {
-    url = "https://dl.nwjs.io/v${version}/nwjs-v${version}-linux-${bits}.tar.gz";
-    hash = if bits == "x64" then
-      "sha256-aIRnZDslOhoD5F0coX43VNFWGEImPU5oq9Roc4jYfsY=" else
-      "sha256-pA53+A+EtS7m6026jPlC3vFxb2iheS4peDJFNkQAf/s=";
-  };
+  src =
+    let flavor = if sdk then "sdk-" else "";
+    in fetchurl {
+      url = "https://dl.nwjs.io/v${version}/nwjs-${flavor}v${version}-linux-${bits}.tar.gz";
+      hash = {
+        "sdk-ia32" = "sha256-aIRnZDslOhoD5F0coX43VNFWGEImPU5oq9Roc4jYfsY=";
+        "sdk-x64" = "sha256-rKbnNAq9AVjSUjTipYze2VHiVi0RnZZsdQj1725DPd0=";
+        "ia32" = "sha256-pA53+A+EtS7m6026jPlC3vFxb2iheS4peDJFNkQAf/s=";
+        "x64" = "sha256-hRih8o8hBbYBEes3Z62PSMIC720SLRa3t2rL/5LaJAE=";
+      }."${flavor + bits}";
+    };
 
   nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
   runtimeDependencies = [ sqlite libuuid udev ];
 
   installPhase =
     let ccPath = lib.makeLibraryPath [ stdenv.cc.cc ];
-    in ''
+    in
+    ''
       mkdir -p $out/share/nwjs
       cp -R * $out/share/nwjs
       find $out/share/nwjs
@@ -84,12 +137,12 @@ in stdenv.mkDerivation rec {
 
       mkdir $out/lib
       ln -s $out/share/nwjs/lib/libnw.so $out/lib/libnw.so
-  '';
+    '';
 
   meta = with lib; {
     description = "An app runtime based on Chromium and node.js";
     homepage = "https://nwjs.io/";
-    platforms = ["i686-linux" "x86_64-linux"];
+    platforms = [ "i686-linux" "x86_64-linux" ];
     maintainers = [ maintainers.offline ];
     license = licenses.bsd3;
   };