From f9839bc92757f0b96ad3dcf5232ee145eac4e88e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:34:36 -0400 Subject: [PATCH 1/7] keeweb: migrate to by-name --- .../misc/keeweb/default.nix => by-name/ke/keeweb/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 2 deletions(-) rename pkgs/{applications/misc/keeweb/default.nix => by-name/ke/keeweb/package.nix} (100%) diff --git a/pkgs/applications/misc/keeweb/default.nix b/pkgs/by-name/ke/keeweb/package.nix similarity index 100% rename from pkgs/applications/misc/keeweb/default.nix rename to pkgs/by-name/ke/keeweb/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9e0b945222e9..efc12fdfaba7 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -29738,8 +29738,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 { }; From be56643cbb56e9ba9a9a62e993a8f829822a72e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:36:29 -0400 Subject: [PATCH 2/7] keeweb: nixfmt --- pkgs/by-name/ke/keeweb/package.nix | 123 ++++++++++++++++------------- 1 file changed, 68 insertions(+), 55 deletions(-) diff --git a/pkgs/by-name/ke/keeweb/package.nix b/pkgs/by-name/ke/keeweb/package.nix index 33ebb9e329f2..b4242b080800 100644 --- a/pkgs/by-name/ke/keeweb/package.nix +++ b/pkgs/by-name/ke/keeweb/package.nix @@ -1,25 +1,26 @@ -{ 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, + 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, }: let pname = "keeweb"; @@ -39,7 +40,8 @@ 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 @@ -74,45 +76,56 @@ let 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 ]; + nativeBuildInputs = [ undmg ]; - sourceRoot = "."; + sourceRoot = "."; - installPhase = '' - mkdir -p $out/Applications - cp -r *.app $out/Applications - ''; -} -else stdenv.mkDerivation { - inherit pname version src meta; + installPhase = '' + mkdir -p $out/Applications + cp -r *.app $out/Applications + ''; + } +else + stdenv.mkDerivation { + inherit + pname + version + src + meta + ; - nativeBuildInputs = [ - autoPatchelfHook - wrapGAppsHook3 - makeWrapper - ]; + nativeBuildInputs = [ + autoPatchelfHook + wrapGAppsHook3 + makeWrapper + ]; - buildInputs = libraries; + buildInputs = libraries; - unpackPhase = '' - ${dpkg}/bin/dpkg-deb --fsys-tarfile $src | tar --extract - ''; + unpackPhase = '' + ${dpkg}/bin/dpkg-deb --fsys-tarfile $src | tar --extract + ''; - installPhase = '' - runHook preInstall + installPhase = '' + runHook preInstall - mkdir -p $out/bin - cp -r usr/share $out/share + mkdir -p $out/bin + cp -r usr/share $out/share - 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}" + 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 - ''; -} + runHook postInstall + ''; + } From 9c81cde9e5646b9e96f756794c7bacc5e1f17019 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:38:17 -0400 Subject: [PATCH 3/7] keeweb: fix gtk wrapping --- pkgs/by-name/ke/keeweb/package.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/ke/keeweb/package.nix b/pkgs/by-name/ke/keeweb/package.nix index b4242b080800..c24f859a3c17 100644 --- a/pkgs/by-name/ke/keeweb/package.nix +++ b/pkgs/by-name/ke/keeweb/package.nix @@ -121,11 +121,14 @@ else 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[@]} ''; } From b4b5c236dc8eefb49cfafca8aaf2c25078dbaa35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:39:19 -0400 Subject: [PATCH 4/7] keeweb: fix runtime crash --- pkgs/by-name/ke/keeweb/package.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/by-name/ke/keeweb/package.nix b/pkgs/by-name/ke/keeweb/package.nix index c24f859a3c17..3e3171032ba4 100644 --- a/pkgs/by-name/ke/keeweb/package.nix +++ b/pkgs/by-name/ke/keeweb/package.nix @@ -1,5 +1,6 @@ { lib, + libGL, stdenv, fetchurl, undmg, @@ -47,6 +48,7 @@ let alsa-lib at-spi2-atk gdk-pixbuf + libGL nss udev xorg.libX11 From 6dc3fd448fa03efc78086b5eeeb1947f55fc09b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:40:08 -0400 Subject: [PATCH 5/7] keeweb: make overriding easier --- pkgs/by-name/ke/keeweb/package.nix | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/pkgs/by-name/ke/keeweb/package.nix b/pkgs/by-name/ke/keeweb/package.nix index 3e3171032ba4..cc1e24a3843d 100644 --- a/pkgs/by-name/ke/keeweb/package.nix +++ b/pkgs/by-name/ke/keeweb/package.nix @@ -14,7 +14,6 @@ glibc, nss, udev, - xorg, gnome-keyring, mesa, gtk3, @@ -22,6 +21,13 @@ libsecret, libappindicator, xdotool, + libX11, + libXcomposite, + libXext, + libXrandr, + libXScrnSaver, + libXtst, + libxshmfence, }: let pname = "keeweb"; @@ -51,13 +57,13 @@ let 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 From e600974d6c613312107614fff161d1073912b135 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:41:01 -0400 Subject: [PATCH 6/7] keeweb: remove meta = with lib; --- pkgs/by-name/ke/keeweb/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ke/keeweb/package.nix b/pkgs/by-name/ke/keeweb/package.nix index cc1e24a3843d..d7d0fee52b86 100644 --- a/pkgs/by-name/ke/keeweb/package.nix +++ b/pkgs/by-name/ke/keeweb/package.nix @@ -73,14 +73,14 @@ 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 From 70aea8ceb38e49f23e633a3c03e10d03093968fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=A9clairevoyant?= <848000+eclairevoyant@users.noreply.github.com> Date: Fri, 30 Aug 2024 16:43:59 -0400 Subject: [PATCH 7/7] keeweb: remove dead code --- pkgs/by-name/ke/keeweb/package.nix | 3 --- 1 file changed, 3 deletions(-) diff --git a/pkgs/by-name/ke/keeweb/package.nix b/pkgs/by-name/ke/keeweb/package.nix index d7d0fee52b86..063d59880d61 100644 --- a/pkgs/by-name/ke/keeweb/package.nix +++ b/pkgs/by-name/ke/keeweb/package.nix @@ -7,11 +7,9 @@ dpkg, autoPatchelfHook, wrapGAppsHook3, - makeWrapper, alsa-lib, at-spi2-atk, gdk-pixbuf, - glibc, nss, udev, gnome-keyring, @@ -114,7 +112,6 @@ else nativeBuildInputs = [ autoPatchelfHook wrapGAppsHook3 - makeWrapper ]; buildInputs = libraries;