diff options
Diffstat (limited to 'pkgs/development/tools/profiling/sysprof/default.nix')
-rw-r--r-- | pkgs/development/tools/profiling/sysprof/default.nix | 55 |
1 files changed, 43 insertions, 12 deletions
diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix index a2ea3444db60..f28fe187e6cf 100644 --- a/pkgs/development/tools/profiling/sysprof/default.nix +++ b/pkgs/development/tools/profiling/sysprof/default.nix @@ -1,24 +1,53 @@ { stdenv -, fetchurl, pkgconfig -, gtk2, glib, pango, libglade +, desktop-file-utils +, fetchurl +, gettext +, glib +, gtk3 +, itstool +, libxml2 +, meson, ninja +, pango +, pkgconfig +, polkit +, shared-mime-info +, systemd +, wrapGAppsHook +, gnome3 }: +let + version = "3.28.1"; + pname = "sysprof"; +in stdenv.mkDerivation rec { + name = "${pname}-${version}"; -stdenv.mkDerivation rec { - name = "sysprof-1.2.0"; + outputs = [ "out" "lib" "dev" ]; src = fetchurl { - url = "http://www.sysprof.com/sysprof-1.2.0.tar.gz"; - sha256 = "1wb4d844rsy8qjg3z5m6rnfm72da4xwzrrkkb1q5r10sq1pkrw5s"; + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz"; + sha256 = "05534dvwrzrmryb4y2m1sb2q0r8i6nr88pzjg7xs5nr9zq8a87p3"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ gtk2 glib pango libglade ]; + nativeBuildInputs = [ desktop-file-utils gettext itstool libxml2 meson ninja pkgconfig shared-mime-info wrapGAppsHook ]; + buildInputs = [ glib gtk3 pango polkit systemd.dev systemd.lib ]; - meta = { - homepage = http://sysprof.com/; - description = "System-wide profiler for Linux"; - license = stdenv.lib.licenses.gpl2Plus; + mesonFlags = [ + "-Dsystemdunitdir=lib/systemd/system" + ]; + + postInstall = '' + rm $out/share/applications/mimeinfo.cache + ''; + passthru = { + updateScript = gnome3.updateScript { + packageName = pname; + }; + }; + + meta = with stdenv.lib; { + description = "System-wide profiler for Linux"; + homepage = https://wiki.gnome.org/Apps/Sysprof; longDescription = '' Sysprof is a sampling CPU profiler for Linux that uses the perf_event_open system call to profile the entire system, not just a single @@ -26,6 +55,8 @@ stdenv.mkDerivation rec { do not need to be recompiled. In fact they don't even have to be restarted. ''; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ ]; platforms = stdenv.lib.platforms.linux; }; } |