Merge pull request #306956 from K900/hotspot-1.5.0
hotspot: 1.4.1 -> 1.5.0
This commit is contained in:
@@ -1,24 +1,32 @@
|
||||
{ lib
|
||||
, mkDerivation
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, cmake
|
||||
, qtbase
|
||||
, qtdeclarative
|
||||
, qtquickcontrols2
|
||||
, qtx11extras
|
||||
, spdlog
|
||||
, fmt
|
||||
, nlohmann_json
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "KDDockWidgets";
|
||||
version = "1.7.0";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KDAB";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-k5Hn9kxq1+tH5kV/ZeD4xzQLDgcY4ACC+guP7YJD4C8=";
|
||||
sha256 = "sha256-V4BMD1kYyaMlqNBo8otpV5yBt/PICzhBTkEMX9N3lbk=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ qtbase qtx11extras ];
|
||||
buildInputs = [ spdlog fmt nlohmann_json ];
|
||||
propagatedBuildInputs = [ qtbase qtdeclarative qtquickcontrols2 qtx11extras ];
|
||||
|
||||
dontWrapQtApps = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "KDAB's Dock Widget Framework for Qt";
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
{ lib
|
||||
, mkDerivation
|
||||
, stdenv
|
||||
, binutils
|
||||
, cmake
|
||||
, elfutils
|
||||
, extra-cmake-modules
|
||||
, patchelfUnstable
|
||||
, wrapQtAppsHook
|
||||
, elfutils
|
||||
, fetchFromGitHub
|
||||
, fetchpatch
|
||||
, kconfigwidgets
|
||||
, kddockwidgets
|
||||
, ki18n
|
||||
, kio
|
||||
, kitemmodels
|
||||
@@ -12,33 +17,48 @@
|
||||
, kparts
|
||||
, kwindowsystem
|
||||
, libelf
|
||||
, linuxPackages
|
||||
, qtbase
|
||||
, threadweaver
|
||||
, qtx11extras
|
||||
, zstd
|
||||
, kddockwidgets
|
||||
, qtsvg
|
||||
, rustc-demangle
|
||||
, syntax-highlighting
|
||||
, threadweaver
|
||||
, zstd
|
||||
}:
|
||||
|
||||
mkDerivation rec {
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "hotspot";
|
||||
version = "1.4.1";
|
||||
version = "1.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KDAB";
|
||||
repo = "hotspot";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-DW4R7+rnonmEMbCkNS7TGodw+3mEyHl6OlFK3kbG5HM=";
|
||||
hash = "sha256-FJkDPWqNwoWg/15tvMnwke7PVtWVuqT0gtJBFQE0qZ4=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Backport stuck UI bug fix
|
||||
# FIXME: remove in next update
|
||||
(fetchpatch {
|
||||
url = "https://github.com/KDAB/hotspot/commit/7639dee8617dba9b88182c7ff4887e8d3714ac98.patch";
|
||||
hash = "sha256-aAo9uEy+MBztMhnC5jB08moZBeRCENU22R39pqSBXOY=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
extra-cmake-modules
|
||||
# stable patchelf corrupts the binary
|
||||
patchelfUnstable
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
(elfutils.override { enableDebuginfod = true; }) # perfparser needs to find debuginfod.h
|
||||
kconfigwidgets
|
||||
kddockwidgets
|
||||
ki18n
|
||||
kio
|
||||
kitemmodels
|
||||
@@ -47,25 +67,24 @@ mkDerivation rec {
|
||||
kwindowsystem
|
||||
libelf
|
||||
qtbase
|
||||
threadweaver
|
||||
qtx11extras
|
||||
zstd
|
||||
kddockwidgets
|
||||
qtsvg
|
||||
rustc-demangle
|
||||
syntax-highlighting
|
||||
threadweaver
|
||||
zstd
|
||||
];
|
||||
|
||||
# hotspot checks for the presence of third party libraries'
|
||||
# git directory to give a nice warning when you forgot to clone
|
||||
# submodules; but Nix clones them and removes .git (for reproducibility).
|
||||
# So we need to fake their existence here.
|
||||
postPatch = ''
|
||||
mkdir -p 3rdparty/{perfparser,PrefixTickLabels}/.git
|
||||
'';
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ rustc-demangle ]}"
|
||||
"--suffix PATH : ${lib.makeBinPath [ linuxPackages.perf binutils ]}"
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
patchelf \
|
||||
--add-rpath ${lib.makeLibraryPath [ rustc-demangle ]} \
|
||||
--add-needed librustc_demangle.so \
|
||||
$out/libexec/hotspot-perfparser
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A GUI for Linux perf";
|
||||
mainProgram = "hotspot";
|
||||
|
||||
Reference in New Issue
Block a user