Unverified Commit 0955a073 authored by Nikolay Korotkiy's avatar Nikolay Korotkiy Committed by GitHub
Browse files

keeweb: move to by-name, fix crash, and other cleanup (#338469)

parents 876f98a2 70aea8ce
Loading
Loading
Loading
Loading
+139 −0
Original line number Diff line number Diff line
{ lib
, stdenv
, fetchurl
, undmg
, dpkg
, autoPatchelfHook
, wrapGAppsHook3
, makeWrapper
, alsa-lib
, at-spi2-atk
, gdk-pixbuf
, glibc
, nss
, udev
, xorg
, gnome-keyring
, mesa
, gtk3
, libusb1
, libsecret
, libappindicator
, xdotool
{
  lib,
  libGL,
  stdenv,
  fetchurl,
  undmg,
  dpkg,
  autoPatchelfHook,
  wrapGAppsHook3,
  alsa-lib,
  at-spi2-atk,
  gdk-pixbuf,
  nss,
  udev,
  gnome-keyring,
  mesa,
  gtk3,
  libusb1,
  libsecret,
  libappindicator,
  xdotool,
  libX11,
  libXcomposite,
  libXext,
  libXrandr,
  libXScrnSaver,
  libXtst,
  libxshmfence,
}:
let
  pname = "keeweb";
@@ -39,21 +45,23 @@ let
      hash = "sha256-bkhwsWYLkec16vMOfXUce7jfrmI9W2xHiZvU1asebK4=";
    };
  };
  src = srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
  src =
    srcs.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");

  libraries = [
    alsa-lib
    at-spi2-atk
    gdk-pixbuf
    libGL
    nss
    udev
    xorg.libX11
    xorg.libXcomposite
    xorg.libXext
    xorg.libXrandr
    xorg.libXScrnSaver
    xorg.libXtst
    xorg.libxshmfence
    libX11
    libXcomposite
    libXext
    libXrandr
    libXScrnSaver
    libXtst
    libxshmfence
    gnome-keyring
    mesa
    gtk3
@@ -63,20 +71,25 @@ let
    xdotool
  ];

  meta = with lib; {
  meta = {
    description = "Free cross-platform password manager compatible with KeePass";
    mainProgram = "keeweb";
    homepage = "https://keeweb.info/";
    changelog = "https://github.com/keeweb/keeweb/blob/v${version}/release-notes.md";
    sourceProvenance = with sourceTypes; [ binaryNativeCode ];
    license = licenses.mit;
    maintainers = with maintainers; [ sikmir ];
    sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
    license = lib.licenses.mit;
    maintainers = with lib.maintainers; [ sikmir ];
    platforms = builtins.attrNames srcs;
  };
in
if stdenv.isDarwin
then stdenv.mkDerivation {
  inherit pname version src meta;
if stdenv.isDarwin then
  stdenv.mkDerivation {
    inherit
      pname
      version
      src
      meta
      ;

    nativeBuildInputs = [ undmg ];

@@ -87,13 +100,18 @@ then stdenv.mkDerivation {
      cp -r *.app $out/Applications
    '';
  }
else stdenv.mkDerivation {
  inherit pname version src meta;
else
  stdenv.mkDerivation {
    inherit
      pname
      version
      src
      meta
      ;

    nativeBuildInputs = [
      autoPatchelfHook
      wrapGAppsHook3
    makeWrapper
    ];

    buildInputs = libraries;
@@ -108,11 +126,14 @@ else stdenv.mkDerivation {
      mkdir -p $out/bin
      cp -r usr/share $out/share

      runHook postInstall
    '';

    postFixup = ''
      makeWrapper $out/share/keeweb-desktop/keeweb $out/bin/keeweb \
        --argv0 "keeweb" \
        --add-flags "$out/share/keeweb-desktop/resources/app.asar" \
      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libraries}"

    runHook postInstall
        --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath libraries}" \
        ''${gappsWrapperArgs[@]}
    '';
  }
+0 −2
Original line number Diff line number Diff line
@@ -29729,8 +29729,6 @@ with pkgs;
  keepass-diff = callPackage ../applications/misc/keepass-diff { };
  keeweb = callPackage ../applications/misc/keeweb { };
  evolution-data-server-gtk4 = evolution-data-server.override { withGtk3 = false; withGtk4 = true; };
  evolution-ews = callPackage ../applications/networking/mailreaders/evolution/evolution-ews { };
  evolution = callPackage ../applications/networking/mailreaders/evolution/evolution { };