quick brain dump on how to do upstream work on kde networkmanager applet. === finding your way around === knetworkmanager pieces are split into parts in kdebase/workspace/solid and the plasma-widget playground tree. see "building and running" below how to get those trees. === building and running === 1. Get the following branches: * svn://anonsvn.kde.org/home/kde/trunk/playground/base/plasma/applets/networkmanager * svn://anonsvn.kde.org/home/kde/branches/KDE/4.3/kdebase 1. create build/ directory in both: {{{ mkdir networkmanager/build; kdebase/build }}} 1. install build-depends of plasma-widget-network-manager (or knetworkmanager or whatever) {{{ sudo apt-get build-dep plasma-widget-network-manager }}} * also ensure that you have kdebase-workspace-bin installed (which is installed if you run kubuntu, but maybe not if you are on gnome) 1. in the build directories run cmake like: {{{ cmake -DCMAKE_INSTALL_PREFIX=/path/to/your/prefix .. }}} you can use /usr as prefix, but that will clutter your install; asac used /home/asac/local_knetnm; remember to add whatever dir you use to KDEDIRS environment 1. to build networkmanager main pieces go to networkmanager/ dir and run: {{{ make install }}} 1. the networkmanager pieces in kdebase are in {{{ kdebase/workspace/solid/networkmanager-0.7 }}} and {{{ kdebase/workspace/libs/solid/ }}}; so if you changed something in there, cd into the matching build/ dir and run {{{ make install }}} too. 1. remember to update the service cache with your KDEDIRS properly set to ensure that you are really using your bits installed outside of /usr {{{ kbuildsycoca4 --noincremental }}}; asac's KDEDIRS were set like this: {{{ echo $KDEDIRS /home/asac/local_knetnm/:/usr/ }}} 1. start knetworkmanager like: {{{ ./monolithic/knetworkmanager --nofork }}} More useful links on this topic (more or less out-of/up-to-date: * http://userbase.kde.org/NetworkManagement * http://techbase.kde.org/Projects/Network_Management