Unverified Commit 83edf5a6 authored by seth's avatar seth
Browse files

kiwitalk: use cargo-tauri.hook

parent 4f589591
Loading
Loading
Loading
Loading
+8 −24
Original line number Diff line number Diff line
{ lib
, fetchFromGitHub
, copyDesktopItems
, stdenv
, rustc
, rustPlatform
, cargo
, cargo-tauri
, desktop-file-utils
, openssl
, libayatana-appindicator
, webkitgtk
, pkg-config
, makeDesktopItem
, pnpm
, nodejs
}:
@@ -49,10 +48,10 @@ stdenv.mkDerivation (finalAttrs: {
    rustPlatform.cargoSetupHook
    cargo
    rustc
    cargo-tauri
    cargo-tauri.hook
    desktop-file-utils
    nodejs
    pnpm.configHook
    copyDesktopItems
    pkg-config
  ];

@@ -62,28 +61,13 @@ stdenv.mkDerivation (finalAttrs: {
    webkitgtk
  ];

  preBuild = ''
    cargo tauri build -b deb
  postInstall = lib.optionalString stdenv.isLinux ''
    desktop-file-edit \
      --set-comment "An UNOFFICIAL cross-platform KakaoTalk client" \
      --set-key="Categories" --set-value="Network;InstantMessaging;" \
      $out/share/applications/kiwi-talk.desktop
  '';

  preInstall = ''
    mv target/release/bundle/deb/*/data/usr/ $out
    # delete the generated desktop entry
    rm -r $out/share/applications
  '';

  desktopItems = [
    (makeDesktopItem {
      name = "KiwiTalk";
      exec = "kiwi-talk";
      icon = "kiwi-talk";
      desktopName = "KiwiTalk";
      comment = "An UNOFFICIAL cross-platform KakaoTalk client";
      categories = [ "Network" "InstantMessaging" ];
      terminal = false;
    })
  ];

  meta = with lib; {
    description = "UNOFFICIAL cross-platform KakaoTalk client written in TypeScript & Rust (SolidJS, tauri)";
    homepage = "https://github.com/KiwiTalk/KiwiTalk";