rev 18576 - in trunk/packages/kdebase-workspace/debian: . patches
Sune Vuorela
pusling-guest at alioth.debian.org
Sat Jul 24 16:29:28 UTC 2010
Author: pusling-guest
Date: 2010-07-24 16:29:28 +0000 (Sat, 24 Jul 2010)
New Revision: 18576
Added:
trunk/packages/kdebase-workspace/debian/patches/99_solid_network_use_ntrack.diff
Modified:
trunk/packages/kdebase-workspace/debian/changelog
trunk/packages/kdebase-workspace/debian/control
Log:
Add a patch to also query libntrack for networkstatus. Also add
libntrack-qt4-dev to build-deps to actually use the new feature.
Modified: trunk/packages/kdebase-workspace/debian/changelog
===================================================================
--- trunk/packages/kdebase-workspace/debian/changelog 2010-07-24 16:20:32 UTC (rev 18575)
+++ trunk/packages/kdebase-workspace/debian/changelog 2010-07-24 16:29:28 UTC (rev 18576)
@@ -1,3 +1,10 @@
+kdebase-workspace (4:4.4.5-2) UNRELEASED; urgency=low
+
+ * Add a patch to also query libntrack for networkstatus. Also add
+ libntrack-qt4-dev to build-deps to actually use the new feature.
+
+ -- Sune Vuorela <sune at debian.org> Sat, 24 Jul 2010 18:28:09 +0200
+
kdebase-workspace (4:4.4.5-1) unstable; urgency=low
* New upstream release.
Modified: trunk/packages/kdebase-workspace/debian/control
===================================================================
--- trunk/packages/kdebase-workspace/debian/control 2010-07-24 16:20:32 UTC (rev 18575)
+++ trunk/packages/kdebase-workspace/debian/control 2010-07-24 16:29:28 UTC (rev 18576)
@@ -22,7 +22,8 @@
libsmbclient-dev, libxcb1-dev, libxine-dev, libfontconfig-dev, libglu1-mesa-dev,
libsm-dev, libxcursor-dev, libxft-dev, libxtst-dev, libqt4-opengl-dev, libxinerama-dev,
libxss-dev, libqedje-dev (>= 0.4.0), libggadget-1.0-dev (>= 0.11.2), libggadget-qt-1.0-dev (>= 0.11.2),
- libgps-dev (>= 2.90)
+ libgps-dev (>= 2.90),
+ libntrack-qt4-dev
Standards-Version: 3.8.4
Homepage: http://www.kde.org/
Vcs-Browser: http://svn.debian.org/wsvn/pkg-kde/trunk/packages/kdebase-workspace/#_trunk_packages_kdebase-workspace_
Added: trunk/packages/kdebase-workspace/debian/patches/99_solid_network_use_ntrack.diff
===================================================================
--- trunk/packages/kdebase-workspace/debian/patches/99_solid_network_use_ntrack.diff (rev 0)
+++ trunk/packages/kdebase-workspace/debian/patches/99_solid_network_use_ntrack.diff 2010-07-24 16:29:28 UTC (rev 18576)
@@ -0,0 +1,277 @@
+Patch by Sune Vuorela <sune at debian.org>
+
+By default, solidnetworkstatus trusts networkmanager too much. NetworkManager reports offline, if
+all devices managed by NM is offline. But there might be devices that aren't managed by NM.
+
+This patch adds the ntrack library to give a additional set of data points for wether or not
+the status is online.
+
+If one datapoint reports offline and another datapoint reports online, then solidnetworkstatus
+reports online as status.
+
+Patch forwarded, hopefully it will soon be applied
+--- /dev/null
++++ kdebase-workspace-4.4.4/solid/networking/kded/ntracknetworkstate.cpp
+@@ -0,0 +1,74 @@
++/*
++ Copyright (c) 2010 Sune Vuorela <sune at debian.org>
++
++ Permission is hereby granted, free of charge, to any person
++ obtaining a copy of this software and associated documentation
++ files (the "Software"), to deal in the Software without
++ restriction, including without limitation the rights to use,
++ copy, modify, merge, publish, distribute, sublicense, and/or sell
++ copies of the Software, and to permit persons to whom the
++ Software is furnished to do so, subject to the following
++ conditions:
++
++ The above copyright notice and this permission notice shall be
++ included in all copies or substantial portions of the Software.
++
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ OTHER DEALINGS IN THE SOFTWARE.
++
++*/
++
++#include "ntracknetworkstate.h"
++
++#include "networkstatus.h"
++
++#include <Solid/Networking>
++
++#include <KDebug>
++
++Solid::Networking::Status ntrackstate2solidstatus(QNTrackState state)
++{
++ kDebug( 1222 ) << "ntrackstate2solidstatus changed status: " << state;
++ switch(state) {
++ case NTRACK_STATE_UNKNOWN:
++ case NTRACK_STATE_UNSET: {
++ return Solid::Networking::Unknown;
++ }
++ case NTRACK_STATE_ONLINE: {
++ return Solid::Networking::Connected;
++ }
++ case NTRACK_STATE_BLOCKED:
++ case NTRACK_STATE_OFFLINE: {
++ return Solid::Networking::Unconnected;
++ }
++ }
++ //FAILSAFE
++ return Solid::Networking::Unknown;
++}
++
++NtrackNetworkState::NtrackNetworkState( NetworkStatusModule* statusmodule ) : QObject(statusmodule),m_statusmodule(statusmodule)
++{
++ m_statusmodule->registerNetwork("ntrack", ntrackstate2solidstatus(QNtrack::instance()->networkState()),"ntrack backend");
++ connect(QNtrack::instance(),SIGNAL(stateChanged(QNTrackState,QNTrackState)),this,SLOT(ntrackStateChangedSlot(QNTrackState,QNTrackState)));
++}
++
++NtrackNetworkState::~NtrackNetworkState()
++{
++ m_statusmodule->setNetworkStatus("ntrack",Solid::Networking::Unknown);
++}
++
++
++
++void NtrackNetworkState::ntrackStateChangedSlot(QNTrackState /*oldstate*/ , QNTrackState newstate )
++{
++ kDebug( 1222 ) << "ntrack changed status: " << newstate;
++ m_statusmodule->setNetworkStatus("ntrack",ntrackstate2solidstatus(newstate));
++}
++
++
+--- kdebase-workspace-4.4.4.orig/solid/networking/kded/CMakeLists.txt
++++ kdebase-workspace-4.4.4/solid/networking/kded/CMakeLists.txt
+@@ -6,6 +6,20 @@ set(kded_networkstatus_PART_SRCS network
+ # MESSAGE(STATUS "Adding in-process NetworkManager service-wart to kded module")
+ #endif(NETWORKMANAGER_FOUND)
+
++find_package(QNtrack)
++
++if(QNTRACK_FOUND)
++ MESSAGE(STATUS "Found QNtrack, will use it as a additional data point for KDED network status module")
++ set(kded_networkstatus_PART_SRCS ${kded_networkstatus_PART_SRCS} ntracknetworkstate.cpp)
++ add_definitions(-DHAVE_QNTRACK)
++else(QNTRACK_FOUND)
++ MESSAGE(STATUS "QNtrack not found. Consider installing it for more data points to network status module. See https://launchpad.net/ntrack")
++endif(QNTRACK_FOUND)
++
++macro_log_feature(QNTRACK_FOUND "QNtrack" "Network status tracking library" "http://launchpad.net/ntrack" FALSE "" "Needed to provide more data points for KDED Networkstatus module")
++
++include_directories(${QNTRACK_INCLUDE_DIR})
++
+ qt4_add_dbus_adaptor(kded_networkstatus_PART_SRCS ../org.kde.Solid.Networking.Service.xml
+ networkstatus.h NetworkStatusModule)
+
+@@ -17,7 +31,7 @@ qt4_add_dbus_adaptor(kded_networkstatus_
+
+ kde4_add_plugin(kded_networkstatus ${kded_networkstatus_PART_SRCS})
+
+-target_link_libraries(kded_networkstatus ${KDE4_KIO_LIBS} solidcontrol)
++target_link_libraries(kded_networkstatus ${KDE4_KIO_LIBS} solidcontrol ${QNTRACK_LIBRARIES})
+
+ install(TARGETS kded_networkstatus DESTINATION ${PLUGIN_INSTALL_DIR})
+
+--- /dev/null
++++ kdebase-workspace-4.4.4/solid/networking/kded/ntracknetworkstate.h
+@@ -0,0 +1,51 @@
++/*
++ Copyright (c) 2010 Sune Vuorela <sune at debian.org>
++
++ Permission is hereby granted, free of charge, to any person
++ obtaining a copy of this software and associated documentation
++ files (the "Software"), to deal in the Software without
++ restriction, including without limitation the rights to use,
++ copy, modify, merge, publish, distribute, sublicense, and/or sell
++ copies of the Software, and to permit persons to whom the
++ Software is furnished to do so, subject to the following
++ conditions:
++
++ The above copyright notice and this permission notice shall be
++ included in all copies or substantial portions of the Software.
++
++ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ OTHER DEALINGS IN THE SOFTWARE.
++
++*/
++
++#ifndef NTRACKNETWORKSTATE_H
++#define NTRACKNETWORKSTATE_H
++#ifdef HAVE_QNTRACK
++
++#include <QObject>
++#include <QNtrack.h>
++
++class NetworkStatusModule;
++
++class NtrackNetworkState : public QObject {
++ Q_OBJECT
++ public:
++ NtrackNetworkState(NetworkStatusModule* statusmodule /*also parent in object hierachy*/);
++ virtual ~NtrackNetworkState();
++private Q_SLOTS:
++ /**
++ * A slot to register the new state as reported by the ntrack part of things
++ */
++ void ntrackStateChangedSlot(QNTrackState, QNTrackState newstate);
++ private:
++ NetworkStatusModule* m_statusmodule;
++};
++
++#endif // HAVE_QNTRACK
++#endif // NTRACKNETWORKSTATE_H
+--- kdebase-workspace-4.4.4.orig/solid/networking/kded/networkstatus.cpp
++++ kdebase-workspace-4.4.4/solid/networking/kded/networkstatus.cpp
+@@ -32,6 +32,7 @@
+ #include "serviceadaptor.h"
+
+ #include <kpluginfactory.h>
++#include "ntracknetworkstate.h"
+
+ K_PLUGIN_FACTORY(NetworkStatusFactory,
+ registerPlugin<NetworkStatusModule>();
+@@ -66,6 +67,10 @@ NetworkStatusModule::NetworkStatusModule
+ new ClientAdaptor( this );
+ new ServiceAdaptor( this );
+
++#ifdef HAVE_QNTRACK
++ new NtrackNetworkState( this );
++#endif
++
+ QDBusConnection dbus = QDBusConnection::sessionBus();
+ QDBusConnectionInterface * sessionBus = dbus.interface();
+
+@@ -189,5 +194,6 @@ void NetworkStatusModule::solidNetworkin
+ setNetworkStatus( QLatin1String("SolidNetwork"), status );
+ }
+
++
+ #include "networkstatus.moc"
+ // vim: set noet sw=4 ts=4:
+--- /dev/null
++++ kdebase-workspace-4.4.4/cmake/modules/FindQNtrack.cmake
+@@ -0,0 +1,70 @@
++# - Try to find the QNtrack library
++# Once done this will define
++#
++# QNTRACK_FOUND - system has the CK Connector
++# QNTRACK_INCLUDE_DIR - the CK Connector include directory
++# QNTRACK_LIBRARIES - the libraries needed to use CK Connector
++
++# Copyright (C) 2010 Sune Vuorela <sune at debian.org>
++# modeled after FindCkConnector.cmake:
++# Copyright (c) 2008, Kevin Kofler, <kevin.kofler at chello.at>
++# modeled after FindLibArt.cmake:
++# Copyright (c) 2006, Alexander Neundorf, <neundorf at kde.org>
++#
++# Redistribution and use is allowed according to the terms of the BSD license.
++# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
++
++
++if(QNTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
++
++ # in cache already
++ SET(QNTRACK_FOUND TRUE)
++
++else (QNTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
++
++ IF (NOT WIN32)
++ FIND_PACKAGE(PkgConfig)
++ IF (PKG_CONFIG_FOUND)
++ # use pkg-config to get the directories and then use these values
++ # in the FIND_PATH() and FIND_LIBRARY() calls
++ pkg_check_modules(_QNTRACK_PC QUIET libntrack-qt4 )
++ ENDIF (PKG_CONFIG_FOUND)
++ ENDIF (NOT WIN32)
++
++ FIND_PATH(QNTRACK_QT_INCLUDE_DIR QNtrack.h
++ ${_QNTRACK_PC_INCLUDE_DIRS}
++ )
++ #Hide from cmake user interfaces
++ SET(QNTRACK_QT_INCLUDE_DIR ${QNTRACK_QT_INCLUDE_DIR} CACHE INTERNAL "" FORCE)
++
++ FIND_PATH(NTRACK_INCLUDE_DIR ntrackmonitor.h
++ ${_QNTRACK_PC_INCLUDE_DIRS}
++ )
++ #Hide from cmake user interfaces
++ SET(NTRACK_INCLUDE_DIR ${NTRACK_INCLUDE_DIR} CACHE INTERNAL "" FORCE)
++
++ FIND_LIBRARY(QNTRACK_LIBRARIES NAMES ntrack-qt4
++ PATHS
++ ${_QNTRACK_PC_LIBDIR}
++ )
++
++
++ if (QNTRACK_QT_INCLUDE_DIR AND NTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
++ set(QNTRACK_FOUND TRUE)
++ set(QNTRACK_INCLUDE_DIR ${QNTRACK_QT_INCLUDE_DIR} ${NTRACK_INCLUDE_DIR})
++ endif (QNTRACK_QT_INCLUDE_DIR AND NTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
++
++
++ if (QNTRACK_FOUND)
++ if (NOT QNtrack_FIND_QUIETLY)
++ message(STATUS "Found QNtrack: ${QNTRACK_LIBRARIES}")
++ endif (NOT QNtrack_FIND_QUIETLY)
++ else (QNTRACK_FOUND)
++ if (QNtrack_FIND_REQUIRED)
++ message(FATAL_ERROR "Could NOT find QNtrack")
++ endif (QNtrack_FIND_REQUIRED)
++ endif (QNTRACK_FOUND)
++
++ MARK_AS_ADVANCED(QNTRACK_INCLUDE_DIR QNTRACK_LIBRARIES)
++
++endif (QNTRACK_INCLUDE_DIR AND QNTRACK_LIBRARIES)
+
More information about the pkg-kde-commits
mailing list