nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ stdenv
2, desktop-file-utils
3, fetchurl
4, gettext
5, glib
6, gtk3
7, itstool
8, libdazzle
9, libxml2
10, meson, ninja
11, pango
12, pkgconfig
13, polkit
14, shared-mime-info
15, systemd
16, wrapGAppsHook
17, gnome3
18}:
19
20stdenv.mkDerivation rec {
21 pname = "sysprof";
22 version = "3.34.1";
23
24 outputs = [ "out" "lib" "dev" ];
25
26 src = fetchurl {
27 url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
28 sha256 = "1l4kr1av7933vb4zql9c5lgzivlw64hyky4nr8xin1v5if6vnjw4";
29 };
30
31 nativeBuildInputs = [
32 desktop-file-utils
33 gettext
34 itstool
35 libxml2
36 meson
37 ninja
38 pkgconfig
39 shared-mime-info
40 wrapGAppsHook
41 gnome3.adwaita-icon-theme
42 ];
43 buildInputs = [ glib gtk3 pango polkit systemd.dev systemd.lib libdazzle ];
44
45 mesonFlags = [
46 "-Dsystemdunitdir=lib/systemd/system"
47 ];
48
49 passthru = {
50 updateScript = gnome3.updateScript {
51 packageName = pname;
52 };
53 };
54
55 meta = with stdenv.lib; {
56 description = "System-wide profiler for Linux";
57 homepage = https://wiki.gnome.org/Apps/Sysprof;
58 longDescription = ''
59 Sysprof is a sampling CPU profiler for Linux that uses the perf_event_open
60 system call to profile the entire system, not just a single
61 application. Sysprof handles shared libraries and applications
62 do not need to be recompiled. In fact they don't even have to
63 be restarted.
64 '';
65 license = licenses.gpl2Plus;
66 maintainers = gnome3.maintainers;
67 platforms = platforms.linux;
68 };
69}