nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 blueprint-compiler,
5 meson,
6 ninja,
7 gettext,
8 fetchurl,
9 pkg-config,
10 gtk4,
11 glib,
12 icu,
13 wrapGAppsHook4,
14 gnome,
15 libportal-gtk4,
16 libxml2,
17 itstool,
18 webkitgtk_6_0,
19 libsoup_3,
20 glib-networking,
21 libsecret,
22 gnome-desktop,
23 libarchive,
24 p11-kit,
25 sqlite,
26 gcr_4,
27 isocodes,
28 desktop-file-utils,
29 docutils,
30 nettle,
31 gdk-pixbuf,
32 gst_all_1,
33 json-glib,
34 libadwaita,
35 buildPackages,
36 withPantheon ? false,
37 pantheon,
38}:
39
40stdenv.mkDerivation (finalAttrs: {
41 pname = "epiphany";
42 version = "49.2";
43
44 src = fetchurl {
45 url = "mirror://gnome/sources/epiphany/${lib.versions.major finalAttrs.version}/epiphany-${finalAttrs.version}.tar.xz";
46 hash = "sha256-s7o9aCE+h/gfFzPoVQDDe4K1k4+QCeT+iZlJY9X7K44=";
47 };
48
49 nativeBuildInputs = [
50 blueprint-compiler
51 desktop-file-utils
52 docutils # for rst2man
53 gettext
54 itstool
55 meson
56 ninja
57 pkg-config
58 wrapGAppsHook4
59 buildPackages.glib
60 buildPackages.gtk4
61 ];
62
63 buildInputs = [
64 gcr_4
65 gdk-pixbuf
66 glib
67 glib-networking
68 gnome-desktop
69 gst_all_1.gst-libav
70 gst_all_1.gst-plugins-bad
71 gst_all_1.gst-plugins-base
72 gst_all_1.gst-plugins-good
73 gst_all_1.gst-plugins-ugly
74 gst_all_1.gstreamer
75 gtk4
76 icu
77 isocodes
78 json-glib
79 libadwaita
80 libportal-gtk4
81 libarchive
82 libsecret
83 libsoup_3
84 libxml2
85 nettle
86 p11-kit
87 sqlite
88 webkitgtk_6_0
89 ]
90 ++ lib.optionals withPantheon [
91 pantheon.granite7
92 ];
93
94 # Tests need an X display
95 mesonFlags = [
96 "-Dunit_tests=disabled"
97 ]
98 ++ lib.optionals withPantheon [
99 "-Dgranite=enabled"
100 ];
101
102 passthru = {
103 updateScript = gnome.updateScript {
104 packageName = "epiphany";
105 };
106 };
107
108 meta = {
109 homepage = "https://apps.gnome.org/Epiphany/";
110 description = "WebKit based web browser for GNOME";
111 mainProgram = "epiphany";
112 teams = [
113 lib.teams.gnome
114 lib.teams.pantheon
115 ];
116 license = lib.licenses.gpl3Plus;
117 platforms = lib.platforms.linux;
118 };
119})