summaryrefslogtreecommitdiffstats
path: root/pkgs/applications/networking/mailreaders
diff options
context:
space:
mode:
authorkirillrdy <kirillrdy@gmail.com>2024-03-14 09:14:52 +1100
committerGitHub <noreply@github.com>2024-03-14 09:14:52 +1100
commitad62a22d32f7f9f0f7c770edbb011e825fcb689f (patch)
treeaf79f8f9b383d063b132e413f659670298d7a9aa /pkgs/applications/networking/mailreaders
parent9b5ed8cb1ed4d0e4411b20ac0f67f33eaae01e97 (diff)
parent7aa9c29cb6ca7d78ff491879743a7357f72ef548 (diff)
Merge pull request #293165 from emilytrau/mailspring-darwin
mailspring: support aarch64-darwin
Diffstat (limited to 'pkgs/applications/networking/mailreaders')
-rw-r--r--pkgs/applications/networking/mailreaders/mailspring/darwin.nix34
-rw-r--r--pkgs/applications/networking/mailreaders/mailspring/default.nix105
-rw-r--r--pkgs/applications/networking/mailreaders/mailspring/linux.nix92
3 files changed, 139 insertions, 92 deletions
diff --git a/pkgs/applications/networking/mailreaders/mailspring/darwin.nix b/pkgs/applications/networking/mailreaders/mailspring/darwin.nix
new file mode 100644
index 000000000000..cccc46a4f5eb
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mailspring/darwin.nix
@@ -0,0 +1,34 @@
+{ lib
+, stdenv
+, fetchurl
+, pname
+, version
+, meta
+, unzip
+, makeWrapper
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ inherit pname version meta;
+
+ src = fetchurl {
+ url = "https://github.com/Foundry376/Mailspring/releases/download/${finalAttrs.version}/Mailspring-AppleSilicon.zip";
+ hash = "sha256-LYv3643oj58WR+4IE4XmJmCgD9S2AXNbPwW5W0QCuGI=";
+ };
+ dontUnpack = true;
+
+ nativeBuildInputs = [
+ unzip
+ makeWrapper
+ ];
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p $out/Applications $out/bin
+ unzip $src -d $out/Applications
+ makeWrapper $out/Applications/Mailspring.app/Contents/MacOS/Mailspring $out/bin/mailspring
+
+ runHook postInstall
+ '';
+})
diff --git a/pkgs/applications/networking/mailreaders/mailspring/default.nix b/pkgs/applications/networking/mailreaders/mailspring/default.nix
index a211650d3d9a..ba8436717a40 100644
--- a/pkgs/applications/networking/mailreaders/mailspring/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailspring/default.nix
@@ -1,105 +1,26 @@
-{ stdenv
-, lib
-, fetchurl
-, autoPatchelfHook
-, alsa-lib
-, coreutils
-, db
-, dpkg
-, glib
-, gtk3
-, wrapGAppsHook
-, libkrb5
-, libsecret
-, nss
-, openssl
-, udev
-, xorg
-, mesa
-, libdrm
-, libappindicator
+{ lib
+, stdenv
+, callPackage
}:
-
-stdenv.mkDerivation (finalAttrs: {
+let
pname = "mailspring";
version = "1.13.3";
- src = fetchurl {
- url = "https://github.com/Foundry376/Mailspring/releases/download/${finalAttrs.version}/mailspring-${finalAttrs.version}-amd64.deb";
- hash = "sha256-2F5k8zRRI6x1EQ0k8wvIq1Q3Lnrn2ROp/Mq+H7Vqzlc=";
- };
-
- nativeBuildInputs = [
- autoPatchelfHook
- dpkg
- wrapGAppsHook
- ];
-
- buildInputs = [
- alsa-lib
- db
- glib
- gtk3
- libkrb5
- libsecret
- nss
- xorg.libxkbfile
- xorg.libXdamage
- xorg.libXScrnSaver
- xorg.libXtst
- xorg.libxshmfence
- mesa
- libdrm
- ];
-
- runtimeDependencies = [
- coreutils
- openssl
- (lib.getLib udev)
- libappindicator
- libsecret
- ];
-
- unpackPhase = ''
- runHook preUnpack
-
- dpkg -x $src .
-
- runHook postUnpack
- '';
-
- installPhase = ''
- runHook preInstall
-
- mkdir -p $out/{bin,lib}
- cp -ar ./usr/share $out
-
- substituteInPlace $out/share/mailspring/resources/app.asar.unpacked/mailsync \
- --replace dirname ${coreutils}/bin/dirname
-
- ln -s $out/share/mailspring/mailspring $out/bin/mailspring
- ln -s ${lib.getLib openssl}/lib/libcrypto.so $out/lib/libcrypto.so.1.0.0
-
- runHook postInstall
- '';
-
- postFixup = /* sh */ ''
- substituteInPlace $out/share/applications/Mailspring.desktop \
- --replace Exec=mailspring Exec=$out/bin/mailspring
- '';
-
- meta = {
+ meta = with lib; {
description = "A beautiful, fast and maintained fork of Nylas Mail by one of the original authors";
downloadPage = "https://github.com/Foundry376/Mailspring";
homepage = "https://getmailspring.com";
- license = lib.licenses.gpl3Plus;
+ license = licenses.gpl3Plus;
longDescription = ''
Mailspring is an open-source mail client forked from Nylas Mail and built with Electron.
Mailspring's sync engine runs locally, but its source is not open.
'';
mainProgram = "mailspring";
- maintainers = with lib.maintainers; [ toschmidt ];
- platforms = [ "x86_64-linux" ];
- sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
+ maintainers = with maintainers; [ toschmidt ];
+ platforms = [ "x86_64-linux" "aarch64-darwin" ];
+ sourceProvenance = with sourceTypes; [ binaryNativeCode ];
};
-})
+
+ linux = callPackage ./linux.nix { inherit pname version meta; };
+ darwin = callPackage ./darwin.nix { inherit pname version meta; };
+in if stdenv.hostPlatform.isDarwin then darwin else linux
diff --git a/pkgs/applications/networking/mailreaders/mailspring/linux.nix b/pkgs/applications/networking/mailreaders/mailspring/linux.nix
new file mode 100644
index 000000000000..dff8796f6ce2
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mailspring/linux.nix
@@ -0,0 +1,92 @@
+{ stdenv
+, lib
+, pname
+, version
+, meta
+, fetchurl
+, autoPatchelfHook
+, alsa-lib
+, coreutils
+, db
+, dpkg
+, glib
+, gtk3
+, wrapGAppsHook
+, libkrb5
+, libsecret
+, nss
+, openssl
+, udev
+, xorg
+, mesa
+, libdrm
+, libappindicator
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+ inherit pname version meta;
+
+ src = fetchurl {
+ url = "https://github.com/Foundry376/Mailspring/releases/download/${finalAttrs.version}/mailspring-${finalAttrs.version}-amd64.deb";
+ hash = "sha256-2F5k8zRRI6x1EQ0k8wvIq1Q3Lnrn2ROp/Mq+H7Vqzlc=";
+ };
+
+ nativeBuildInputs = [
+ autoPatchelfHook
+ dpkg
+ wrapGAppsHook
+ ];
+
+ buildInputs = [
+ alsa-lib
+ db
+ glib
+ gtk3
+ libkrb5
+ libsecret
+ nss
+ xorg.libxkbfile
+ xorg.libXdamage
+ xorg.libXScrnSaver
+ xorg.libXtst
+ xorg.libxshmfence
+ mesa
+ libdrm
+ ];
+
+ runtimeDependencies = [
+ coreutils
+ openssl
+ (lib.getLib udev)
+ libappindicator
+ libsecret
+ ];
+
+ unpackPhase = ''
+ runHook preUnpack
+
+ dpkg -x $src .
+
+ runHook postUnpack
+ '';
+
+ installPhase = ''
+ runHook preInstall
+
+ mkdir -p $out/{bin,lib}
+ cp -ar ./usr/share $out
+
+ substituteInPlace $out/share/mailspring/resources/app.asar.unpacked/mailsync \
+ --replace-fail dirname ${coreutils}/bin/dirname
+
+ ln -s $out/share/mailspring/mailspring $out/bin/mailspring
+ ln -s ${lib.getLib openssl}/lib/libcrypto.so $out/lib/libcrypto.so.1.0.0
+
+ runHook postInstall
+ '';
+
+ postFixup = /* sh */ ''
+ substituteInPlace $out/share/applications/Mailspring.desktop \
+ --replace-fail Exec=mailspring Exec=$out/bin/mailspring
+ '';
+})