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
|
{ lib
, stdenv
, meson
, ninja
, gettext
, fetchurl
, fetchpatch
, pkg-config
, gtk3
, glib
, icu
, wrapGAppsHook
, gnome
, pantheon
, libportal
, libxml2
, libxslt
, itstool
, webkitgtk
, libsoup
, glib-networking
, libsecret
, gnome-desktop
, libnotify
, libarchive
, p11-kit
, sqlite
, gcr
, isocodes
, desktop-file-utils
, python3
, nettle
, gdk-pixbuf
, gst_all_1
, json-glib
, libdazzle
, libhandy
, buildPackages
, withPantheon ? false
}:
stdenv.mkDerivation rec {
pname = "epiphany";
version = "41.2";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
sha256 = "Ud5KGB+nxKEs3DDMsWQ2ElwaFt+av44/pTP8gb8Q60w=";
};
patches = lib.optionals withPantheon [
# Pantheon specific patches for epiphany
# https://github.com/elementary/browser
#
# Make this respect dark mode settings from Pantheon
# https://github.com/elementary/browser/pull/21
# https://github.com/elementary/browser/pull/41
(fetchpatch {
url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/dark-style.patch";
sha256 = "sha256-RzMUc9P51UN3tRFefzRtMniXR9duOOmLj5eu5gL2TEQ=";
})
# Patch to unlink nav buttons
# https://github.com/elementary/browser/pull/18
(fetchpatch {
url = "https://raw.githubusercontent.com/elementary/browser/cc17559a7ac6effe593712b4f3d0bbefde6e3b62/navigation-buttons.patch";
sha256 = "sha256-G1/JUjn/8DyO9sgL/5Kq205KbTOs4EMi4Vf3cJ8FHXU=";
})
];
nativeBuildInputs = [
desktop-file-utils
gettext
itstool
libxslt
meson
ninja
pkg-config
python3
wrapGAppsHook
buildPackages.glib
buildPackages.gtk3
];
buildInputs = [
gcr
gdk-pixbuf
glib
glib-networking
gnome-desktop
gnome.adwaita-icon-theme
gst_all_1.gst-libav
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-ugly
gst_all_1.gstreamer
gtk3
icu
isocodes
json-glib
libdazzle
libhandy
libportal
libnotify
libarchive
libsecret
libsoup
libxml2
nettle
p11-kit
sqlite
webkitgtk
] ++ lib.optionals withPantheon [
pantheon.granite
];
# Tests need an X display
mesonFlags = [
"-Dunit_tests=disabled"
];
postPatch = ''
chmod +x post_install.py # patchShebangs requires executable file
patchShebangs post_install.py
'';
passthru = {
updateScript = gnome.updateScript {
packageName = pname;
};
};
meta = with lib; {
homepage = "https://wiki.gnome.org/Apps/Epiphany";
description = "WebKit based web browser for GNOME";
maintainers = teams.gnome.members ++ teams.pantheon.members;
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}
|