1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
diff --git a/pkgs/prospect-mail/default.nix b/pkgs/prospect-mail/default.nix
deleted file mode 100644
index cf8675e14c544e09b4152184955a7315742bff9f..0000000000000000000000000000000000000000
--- a/pkgs/prospect-mail/default.nix
+++ /dev/null
@@ -1,105 +0,0 @@
-{
- lib,
- stdenv,
- fetchFromGitHub,
- makeWrapper,
- makeDesktopItem,
- copyDesktopItems,
- nodejs_16,
- fetchYarnDeps,
- fixup_yarn_lock,
- electron,
- libpulseaudio,
- pipewire,
- alsa-utils,
- which,
-}:
-stdenv.mkDerivation rec {
- pname = "prospect-mail";
- version = "0.4.0";
-
- src = fetchFromGitHub {
- owner = "julian-alarcon";
- repo = pname;
- rev = "v${version}";
- sha256 = "sha256-MIQgJFTqXuhShEU+iAV1VS2TAq1d/fQXU1Rct1XIEsM=";
- };
-
- offlineCache = fetchYarnDeps {
- yarnLock = "${src}/yarn.lock";
- sha256 = "sha256-rN15aGTROnfUgws7f+U8DXcj5dL6MC8DqUE+uxfH1Zo=";
- };
-
- nativeBuildInputs = [nodejs_16.pkgs.yarn fixup_yarn_lock nodejs_16 copyDesktopItems makeWrapper];
-
- configurePhase = ''
- runHook preConfigure
-
- export HOME=$(mktemp -d)
- yarn config --offline set yarn-offline-mirror $offlineCache
- fixup_yarn_lock yarn.lock
- yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
- patchShebangs node_modules/
-
- runHook postConfigure
- '';
-
- buildPhase = ''
- runHook preBuild
-
- yarn --offline electron-builder \
- --dir ${
- if stdenv.isDarwin
- then "--macos"
- else "--linux"
- } ${
- if stdenv.hostPlatform.isAarch64
- then "--arm64"
- else "--x64"
- } \
- -c.electronDist=${electron}/lib/electron \
- -c.electronVersion=${electron.version}
-
- runHook postBuild
- '';
-
- installPhase = ''
- runHook preInstall
-
- mkdir -p $out/share/{applications,prospect-mail}
- cp dist/${
- if stdenv.isDarwin
- then "darwin-"
- else "linux-"
- }${lib.optionalString stdenv.hostPlatform.isAarch64 "arm64-"}unpacked/resources/app.asar $out/share/prospect-mail/
-
- pushd build/icons
- for image in *png; do
- mkdir -p $out/share/icons/hicolor/''${image%.png}/apps
- cp -r $image $out/share/icons/hicolor/''${image%.png}/apps/prospect-mail.png
- done
- popd
-
- # Linux needs 'aplay' for notification sounds, 'libpulse' for meeting sound, and 'libpipewire' for screen sharing
- makeWrapper '${electron}/bin/electron' "$out/bin/prospect-mail" \
- ${lib.optionalString stdenv.isLinux ''
- --prefix PATH : ${lib.makeBinPath [alsa-utils which]} \
- --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [libpulseaudio pipewire]} \
- ''} \
- --add-flags "$out/share/prospect-mail/app.asar" \
- --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}"
-
- runHook postInstall
- '';
-
- desktopItems = [
- (makeDesktopItem {
- name = pname;
- exec = pname;
- icon = pname;
- desktopName = "Outlook for Linux";
- comment = "Outlook wrapper client for Linux";
- categories = ["Network" "Email"];
- })
- ];
-}
|