diff options
Diffstat (limited to 'pkgs/applications/graphics/drawio/default.nix')
-rw-r--r-- | pkgs/applications/graphics/drawio/default.nix | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix index 09b003be677..fdf571b026a 100644 --- a/pkgs/applications/graphics/drawio/default.nix +++ b/pkgs/applications/graphics/drawio/default.nix @@ -4,7 +4,6 @@ , fetchYarnDeps , makeDesktopItem , copyDesktopItems -, desktopToDarwinBundle , fixup_yarn_lock , makeWrapper , nodejs @@ -14,28 +13,29 @@ stdenv.mkDerivation rec { pname = "drawio"; - version = "21.7.5"; + version = "22.0.3"; src = fetchFromGitHub { owner = "jgraph"; repo = "drawio-desktop"; rev = "v${version}"; fetchSubmodules = true; - hash = "sha256-hf1sektdnW4c3dySun8sQ9vBrAqTocrLFAIYkemNC3I="; + hash = "sha256-Im0T+1jm1IZT3UILsOJ4Rp5P5IiBUKcJJ+cqv3WsqXw="; }; offlineCache = fetchYarnDeps { yarnLock = src + "/yarn.lock"; - hash = "sha256-FVZq/voCjnRSBLtQtJkJbErGvprEHq+U/VZ9rEwbJsI="; + hash = "sha256-Abyu/WoNOPAIfRIThG7vKFECW9NQMgcBAkLgEPwdJDQ="; }; nativeBuildInputs = [ - copyDesktopItems fixup_yarn_lock makeWrapper nodejs yarn - ] ++ lib.optional stdenv.isDarwin desktopToDarwinBundle; + ] ++ lib.optionals (!stdenv.isDarwin) [ + copyDesktopItems + ]; ELECTRON_SKIP_BINARY_DOWNLOAD = true; @@ -54,9 +54,15 @@ stdenv.mkDerivation rec { buildPhase = '' runHook preBuild + '' + lib.optionalString stdenv.isDarwin '' + cp -R ${electron}/Applications/Electron.app Electron.app + chmod -R u+w Electron.app + export CSC_IDENTITY_AUTO_DISCOVERY=false + sed -i "/afterSign/d" electron-builder-linux-mac.json + '' + '' yarn --offline run electron-builder --dir \ --config electron-builder-linux-mac.json \ - -c.electronDist=${electron}/libexec/electron \ + -c.electronDist=${if stdenv.isDarwin then "." else "${electron}/libexec/electron"} \ -c.electronVersion=${electron.version} runHook postBuild @@ -65,6 +71,13 @@ stdenv.mkDerivation rec { installPhase = '' runHook preInstall + '' + lib.optionalString stdenv.isDarwin '' + mkdir -p $out/{Applications,bin} + mv dist/mac*/draw.io.app $out/Applications + + # Symlinking `draw.io` doesn't work; seems to look for files in the wrong place. + makeWrapper $out/Applications/draw.io.app/Contents/MacOS/draw.io $out/bin/drawio + '' + lib.optionalString (!stdenv.isDarwin) '' mkdir -p "$out/share/lib/drawio" cp -r dist/*-unpacked/{locales,resources{,.pak}} "$out/share/lib/drawio" @@ -74,6 +87,7 @@ stdenv.mkDerivation rec { --add-flags "$out/share/lib/drawio/resources/app.asar" \ --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ --inherit-argv0 + '' + '' runHook postInstall ''; @@ -87,7 +101,7 @@ stdenv.mkDerivation rec { comment = "draw.io desktop"; mimeTypes = [ "application/vnd.jgraph.mxfile" "application/vnd.visio" ]; categories = [ "Graphics" ]; - startupWMClass = "drawio"; + startupWMClass = "draw.io"; }) ]; @@ -98,6 +112,5 @@ stdenv.mkDerivation rec { changelog = "https://github.com/jgraph/drawio-desktop/releases/tag/v${version}"; maintainers = with maintainers; [ qyliss darkonion0 ]; platforms = platforms.darwin ++ platforms.linux; - broken = stdenv.isDarwin; }; } |