Unverified Commit 30b9214e authored by Thiago Kenji Okada's avatar Thiago Kenji Okada Committed by GitHub
Browse files

Merge pull request #179808 from PedroHLC/openasar-add-unzip

openasar: add unzip; remove autoupdater; unstable-2022-06-10 -> unstable-2022-06-27
parents c0d1de14 78abe603
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
{ pname, version, src, openasar, meta, stdenv, binaryName, desktopName, lib, undmg }:
{ pname, version, src, openasar, meta, stdenv, binaryName, desktopName, lib, undmg, withOpenASAR }:

stdenv.mkDerivation {
  inherit pname version src meta;
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
    runHook postInstall
  '';

  postInstall = lib.strings.optionalString (openasar != null) ''
  postInstall = lib.strings.optionalString withOpenASAR ''
    cp -f ${openasar} $out/Applications/${desktopName}.app/Contents/Resources/app.asar
  '';
}
+7 −2
Original line number Diff line number Diff line
@@ -62,10 +62,15 @@ let
  };
  package = if stdenv.isLinux then ./linux.nix else ./darwin.nix;

  openasar = if withOpenASAR then callPackage ./openasar.nix { } else null;
  openasar = callPackage ./openasar.nix { };

  packages = (builtins.mapAttrs
    (_: value: callPackage package (value // { inherit src version openasar; meta = meta // { mainProgram = value.binaryName; }; }))
    (_: value: callPackage package
      (value // {
        inherit src version openasar withOpenASAR;
        meta = meta // { mainProgram = value.binaryName; };
      })
    )
    {
      stable = rec {
        pname = "discord";
+2 −2
Original line number Diff line number Diff line
@@ -5,7 +5,7 @@
, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext, libXfixes
, libXi, libXrandr, libXrender, libXtst, libxcb, libxshmfence, mesa, nspr, nss
, pango, systemd, libappindicator-gtk3, libdbusmenu, writeScript
, common-updater-scripts }:
, common-updater-scripts, withOpenASAR }:

stdenv.mkDerivation rec {
  inherit pname version src meta;
@@ -101,7 +101,7 @@ stdenv.mkDerivation rec {
    runHook postInstall
  '';

  postInstall = lib.strings.optionalString (openasar != null) ''
  postInstall = lib.strings.optionalString withOpenASAR ''
    cp -f ${openasar} $out/opt/${binaryName}/resources/app.asar
  '';

+23 −5
Original line number Diff line number Diff line
{ lib, stdenv, fetchFromGitHub, nodejs, bash, nodePackages }:

{ lib, stdenv, fetchFromGitHub, nodejs, bash, nodePackages, unzip }:

let
  # OpenAsar fails with default unzip, throwing  "lchmod (file attributes) error: Operation not supported"
  unzipFix =
    if stdenv.isLinux then
      unzip.overrideAttrs (oldAttrs: {
        buildFlags = oldAttrs.buildFlags ++ [ "LOCAL_UNZIP=-DNO_LCHMOD" ];
      })
    else
      unzip;
in
stdenv.mkDerivation rec {
  version = "unstable-2022-06-10";
  pname = "openasar";
  version = "unstable-2022-06-27";

  src = fetchFromGitHub {
    owner = "GooseMod";
    repo = "OpenAsar";
    rev = "c6f2f5eb7827fea14cb4c54345af8ff6858c633a";
    sha256 = "m6e/WKGgkR8vjKcHSNdWE25MmDQM1Z3kgB24OJgbw/w=";
    rev = "6f7505fb91a07035d3661a3a7bf68b3018ddfd82";
    sha256 = "2tb6OgYOnpryiyk7UH39sgzwtGJf9hNOpy74YqLI+Uk=";
  };

  postPatch = ''
    # Hardcode unzip path
    substituteInPlace ./src/updater/moduleUpdater.js \
      --replace \'unzip\' \'${unzipFix}/bin/unzip\'
    # Remove auto-update feature
    echo "module.exports = async () => log('AsarUpdate', 'Removed');" > ./src/asarUpdate.js
  '';

  buildPhase = ''
    runHook preBuild