1{
2 lib,
3 stdenv,
4 fetchurl,
5 desktop-file-utils,
6 gettext,
7 glibcLocales,
8 itstool,
9 libxml2,
10 meson,
11 ninja,
12 pkg-config,
13 python3,
14 wrapGAppsHook4,
15 cpio,
16 glib,
17 gnome,
18 gtk4,
19 libadwaita,
20 json-glib,
21 libarchive,
22 nautilus,
23}:
24
25stdenv.mkDerivation (finalAttrs: {
26 pname = "file-roller";
27 version = "44.5";
28
29 src = fetchurl {
30 url = "mirror://gnome/sources/file-roller/${lib.versions.major finalAttrs.version}/file-roller-${finalAttrs.version}.tar.xz";
31 hash = "sha256-369LuYnAuJhr6L2un//quNDzBmmuOmJ+jD35TyOIgzk=";
32 };
33
34 nativeBuildInputs = [
35 desktop-file-utils
36 gettext
37 glibcLocales
38 itstool
39 libxml2
40 meson
41 ninja
42 pkg-config
43 python3
44 wrapGAppsHook4
45 ];
46
47 buildInputs = [
48 cpio
49 glib
50 gtk4
51 libadwaita
52 json-glib
53 libarchive
54 nautilus
55 ];
56
57 postPatch = ''
58 patchShebangs data/set-mime-type-entry.py
59 '';
60
61 passthru = {
62 updateScript = gnome.updateScript {
63 packageName = "file-roller";
64 };
65 };
66
67 meta = with lib; {
68 homepage = "https://gitlab.gnome.org/GNOME/file-roller";
69 changelog = "https://gitlab.gnome.org/GNOME/file-roller/-/blob/${finalAttrs.version}/NEWS?ref_type=tags";
70 description = "Archive manager for the GNOME desktop environment";
71 license = licenses.gpl2Plus;
72 platforms = platforms.linux;
73 teams = [
74 teams.gnome
75 teams.pantheon
76 ];
77 mainProgram = "file-roller";
78 };
79})