From 3bac9ac09f66b8d2d2ea8f4eb35ba4d0626526de Mon Sep 17 00:00:00 2001 From: arcan1s Date: Tue, 19 May 2015 09:41:15 +0300 Subject: [PATCH] * fix hddtemp definition (create workaround) * create git pkgbuild * fix plugin build * replace hddtemp to smartctl by default --- arch/PKGBUILD-git | 54 +++++++++++++++++++ sources/.kdev4/awesomewidgets.kdev4 | 2 +- sources/.kdev4/sources.kdev4 | 2 +- .../package/contents/ui/main.qml | 7 ++- .../awesome-widget-kf5/plugin/CMakeLists.txt | 2 +- .../awesome-widget-kf5/plugin/awactions.cpp | 2 +- sources/extsysmon/extsysmon.cpp | 13 ++--- .../plasma-dataengine-extsysmon.conf | 2 +- 8 files changed, 71 insertions(+), 13 deletions(-) create mode 100644 arch/PKGBUILD-git diff --git a/arch/PKGBUILD-git b/arch/PKGBUILD-git new file mode 100644 index 0000000..ebfe9e1 --- /dev/null +++ b/arch/PKGBUILD-git @@ -0,0 +1,54 @@ +# Maintainer: Evgeniy Alekseev + +pkgname=plasma5-applet-awesome-widgets +_pkgname=awesome-widgets +pkgver=2.2.1.r12.gb82d78b +pkgrel=1 +pkgdesc="Collection of minimalistic Plasmoids which look like Awesome WM widgets (ex-PyTextMonitor). Git version" +arch=('i686' 'x86_64') +url="http://arcanis.name/projects/awesome-widgets" +license=('GPL3') +depends=('plasma-framework') +optdepends=("amarok: for music player monitor" + "clementine: for music player monitor" + "catalyst: for GPU monitor" + "hddtemp: for HDD temperature monitor" + "smartmontools: for HDD temperature monitor" + "mpd: for music player monitor" + "nvidia-utils: for GPU monitor" + "qmmp: for music player monitor") +makedepends=('cmake' 'extra-cmake-modules') +source=(${_pkgname}::git+https://github.com/arcan1s/awesome-widgets/) +install=${pkgname}.install +md5sums=('SKIP') +backup=('etc/xdg/plasma-dataengine-extsysmon.conf') + +pkgver() { + cd "${srcdir}/${_pkgname}" + git describe --tags --long | sed 's/V\.//' | sed 's/\([^-]*-g\)/r\1/;s/-/./g' +} + +prepare() { + rm -rf "${srcdir}/${_pkgname}/build" + mkdir "${srcdir}/${_pkgname}/build" + + # update submobules + cd "${srcdir}/${_pkgname}" + git submodule init + git submodule update --recursive + echo "$pkgver" +} + +build () { + cd "${srcdir}/${_pkgname}/build" + cmake -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + "../sources" + make +} + +package() { + cd "${srcdir}/build" + make DESTDIR="${pkgdir}" install +} diff --git a/sources/.kdev4/awesomewidgets.kdev4 b/sources/.kdev4/awesomewidgets.kdev4 index b97529b..ea73c1d 100644 --- a/sources/.kdev4/awesomewidgets.kdev4 +++ b/sources/.kdev4/awesomewidgets.kdev4 @@ -8,7 +8,7 @@ ProjectRootRelative=./ [CMake][CMake Build Directory 0] Build Directory Path=file:///home/arcanis/Documents/github/awesome-widgets/build -Build Type=Debug +Build Type=Release CMake Binary=file:///usr/bin/cmake Environment Profile= Extra Arguments= diff --git a/sources/.kdev4/sources.kdev4 b/sources/.kdev4/sources.kdev4 index b97529b..ea73c1d 100644 --- a/sources/.kdev4/sources.kdev4 +++ b/sources/.kdev4/sources.kdev4 @@ -8,7 +8,7 @@ ProjectRootRelative=./ [CMake][CMake Build Directory 0] Build Directory Path=file:///home/arcanis/Documents/github/awesome-widgets/build -Build Type=Debug +Build Type=Release CMake Binary=file:///usr/bin/cmake Environment Profile= Extra Arguments= diff --git a/sources/awesome-widget-kf5/package/contents/ui/main.qml b/sources/awesome-widget-kf5/package/contents/ui/main.qml index 10a2c08..cf34151 100644 --- a/sources/awesome-widget-kf5/package/contents/ui/main.qml +++ b/sources/awesome-widget-kf5/package/contents/ui/main.qml @@ -82,6 +82,8 @@ Item { onNewData: { if (debug) console.log("[main::onNewData] : Update source " + sourceName) + // FIXME: ugly workaround to make some sources working + systemmonitorDE.interval = plasmoid.configuration.interval if (AWKeys.setDataBySource(sourceName, data, settings)) disconnectSource(sourceName) } @@ -96,12 +98,13 @@ Item { PlasmaCore.DataSource { id: extsysmonDE engine: "extsysmon" - connectedSources: ["battery", "custom", "desktop", "netdev", "gpu", "gputemp", - "hddtemp", "quotes", "pkg", "player", "ps", "update"] + connectedSources: extsysmonDE.sources interval: plasmoid.configuration.interval onNewData: { if (debug) console.log("[main::onNewData] : Update source " + sourceName) + // FIXME: ugly workaround to make some sources working + extsysmonDE.interval = plasmoid.configuration.interval if (AWKeys.setDataBySource(sourceName, data, settings)) needUpdate() } diff --git a/sources/awesome-widget-kf5/plugin/CMakeLists.txt b/sources/awesome-widget-kf5/plugin/CMakeLists.txt index 6d9180d..2d5d361 100644 --- a/sources/awesome-widget-kf5/plugin/CMakeLists.txt +++ b/sources/awesome-widget-kf5/plugin/CMakeLists.txt @@ -35,7 +35,7 @@ file (GLOB SUBPROJECT_NOTIFY *.notifyrc) set (SUBPROJECT_DESKTOP ${CMAKE_CURRENT_SOURCE_DIR}/desktops) qt5_wrap_ui (SUBPROJECT_UI_HEADER ${SUBPROJECT_UI}) -add_library (${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE}) +add_library (${PLUGIN_NAME} SHARED ${SUBPROJECT_SOURCE} ${SUBPROJECT_UI_HEADER}) target_link_libraries (${PLUGIN_NAME} ${Qt_LIBRARIES} ${Kf5_LIBRARIES}) install (TARGETS ${PLUGIN_NAME} DESTINATION ${QML_INSTALL_DIR}/org/kde/plasma/awesomewidget) diff --git a/sources/awesome-widget-kf5/plugin/awactions.cpp b/sources/awesome-widget-kf5/plugin/awactions.cpp index 84a0ad7..fb5a05f 100644 --- a/sources/awesome-widget-kf5/plugin/awactions.cpp +++ b/sources/awesome-widget-kf5/plugin/awactions.cpp @@ -161,7 +161,7 @@ QMap AWActions::readDataEngineConfiguration() configuration[QString("ACPIPATH")] = settings.value(QString("ACPIPATH"), QString("/sys/class/power_supply/")); configuration[QString("GPUDEV")] = settings.value(QString("GPUDEV"), QString("auto")); configuration[QString("HDDDEV")] = settings.value(QString("HDDDEV"), QString("all")); - configuration[QString("HDDTEMPCMD")] = settings.value(QString("HDDTEMPCMD"), QString("sudo hddtemp")); + configuration[QString("HDDTEMPCMD")] = settings.value(QString("HDDTEMPCMD"), QString("sudo smartctl -a")); configuration[QString("MPDADDRESS")] = settings.value(QString("MPDADDRESS"), QString("localhost")); configuration[QString("MPDPORT")] = settings.value(QString("MPDPORT"), QString("6600")); configuration[QString("MPRIS")] = settings.value(QString("MPRIS"), QString("auto")); diff --git a/sources/extsysmon/extsysmon.cpp b/sources/extsysmon/extsysmon.cpp index 262e0c9..0eedca6 100644 --- a/sources/extsysmon/extsysmon.cpp +++ b/sources/extsysmon/extsysmon.cpp @@ -290,7 +290,7 @@ void ExtendedSysMon::readConfiguration() rawConfig[QString("ACPIPATH")] = settings.value(QString("ACPIPATH"), QString("/sys/class/power_supply/")).toString(); rawConfig[QString("GPUDEV")] = settings.value(QString("GPUDEV"), QString("auto")).toString(); rawConfig[QString("HDDDEV")] = settings.value(QString("HDDDEV"), QString("all")).toString(); - rawConfig[QString("HDDTEMPCMD")] = settings.value(QString("HDDTEMPCMD"), QString("sudo hddtemp")).toString(); + rawConfig[QString("HDDTEMPCMD")] = settings.value(QString("HDDTEMPCMD"), QString("sudo smartctl -a")).toString(); rawConfig[QString("MPDADDRESS")] = settings.value(QString("MPDADDRESS"), QString("localhost")).toString(); rawConfig[QString("MPDPORT")] = settings.value(QString("MPDPORT"), QString("6600")).toString(); rawConfig[QString("MPRIS")] = settings.value(QString("MPRIS"), QString("auto")).toString(); @@ -504,10 +504,10 @@ float ExtendedSysMon::getHddTemp(const QString cmd, const QString device) QString qoutput = QTextCodec::codecForMib(106)->toUnicode(process.output).trimmed(); if (smartctl) { - for (int i=0; i