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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
{ lib
, stdenv
, fetchurl
, autoPatchelfHook
, dpkg
, wrapGAppsHook
, alsa-lib
, browserpass
, bukubrow
, cairo
, cups
, dbus
, dbus-glib
, ffmpeg
, fontconfig
, freetype
, fx_cast_bridge
, glib
, glibc
, gnome-browser-connector
, gtk3
, harfbuzz
, libcanberra
, libdbusmenu
, libdbusmenu-gtk3
, libglvnd
, libjack2
, libkrb5
, libnotify
, libpulseaudio
, libva
, lyx
, mesa
, nspr
, nss
, opensc
, pango
, pciutils
, pipewire
, plasma5Packages
, sndio
, speechd
, tridactyl-native
, udev
, uget-integrator
, vulkan-loader
, xdg-utils
, xorg
}:
stdenv.mkDerivation rec {
pname = "mercury-browser";
version = "115.4.0";
src = fetchurl {
url =
"https://github.com/Alex313031/Mercury/releases/download/v.${version}/mercury-browser_${version}_amd64.deb";
hash = "sha256-78b2QEgf312TDBIy4lXzYUBtTfdNui3VJBbyDfXqOtc=";
};
nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook ];
buildInputs = [
stdenv.cc.cc.lib
alsa-lib
browserpass
bukubrow
cairo
cups
dbus
dbus-glib
ffmpeg
fontconfig
freetype
fx_cast_bridge
glib
glibc
gnome-browser-connector
gtk3
harfbuzz
libcanberra
libdbusmenu
libdbusmenu-gtk3
libglvnd
libjack2
libkrb5
libnotify
libpulseaudio
libva
lyx
mesa
nspr
nss
opensc
pango
pciutils
pipewire
plasma5Packages.plasma-browser-integration
sndio
speechd
tridactyl-native
udev
uget-integrator
vulkan-loader
xdg-utils
xorg.libxcb
xorg.libX11
xorg.libXcursor
xorg.libXcomposite
xorg.libXdamage
xorg.libXext
xorg.libXfixes
xorg.libXi
xorg.libXrandr
xorg.libXrender
xorg.libXtst
xorg.libXxf86vm
];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r usr/* $out
substituteInPlace $out/share/applications/mercury-browser.desktop \
--replace Exec=mercury-browser Exec=$out/bin/mercury-browser \
--replace StartupWMClass=mercury StartupWMClass=mercury-default \
--replace Icon=mercury Icon=$out/share/icons/hicolor/512x512/apps/mercury.png
addAutoPatchelfSearchPath $out/lib/mercury
substituteInPlace $out/bin/mercury-browser \
--replace 'export LD_LIBRARY_PATH' "export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:${
lib.makeLibraryPath buildInputs
}:$out/lib/mercury" \
--replace /usr $out
runHook postInstall
'';
meta = with lib; {
description = "Compiler-optimized private Firefox fork";
homepage = "https://thorium.rocks/mercury";
maintainers = with lib.maintainers; [ redxtech ];
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.mpl20;
platforms = [ "x86_64-linux" ];
mainProgram = "mercury-browser";
};
}
|