migration to NM 0.9 and ask for help

Andrey Borzenkov arvidjaar at gmail.com
Tue Mar 22 22:06:48 CET 2011


2011/3/22 Lamarque Vieira Souza <lamarque at gmail.com>:
> Hi all,
>
> As you all know we need to upgrade Plasma NM to support NetworkManager 0.9.
> I have created the branch nm09 in networkmanagement repository with the
> changes from Gökcen Eraslan and Jirka Klimes. The code in there does *not*
> work with NetworkManager-0.8.
>
> Since the changes in NM-0.9 are very intrusive for Plasma NM I think it is a
> good idea to keep two branches for networkmanagement, one for code meant to
> work with NetworkManager-0.8 only and another for NetworkManager-0.9 only.
> In practice that is what we already have (master for NM-0.8 and nm09 for
> NM-0.9). I would like to also make the following changes:
>
> 1. Create a nm08 branch and change nm09 branch to be the master. I know
> distribution packagers may not like this change.
>
> 2. Change the version number in the nm08 branch to me 0.8 instead of 0.9.
> That would make it easier for distribution packagers /users know which one
> works with each NM version.
>

This could be a problem for packagers too. Currently e.g. we package
version 0.9 ...

> 3. In the future move Solid::Control::Network* namespace from Solid to nm08
> branch and use libnm-qt only for the master branch (today nm09 branch). This
> should be done by the KDE SC 4.7 release date.
>
> That would allows us to concentrate efforts in NM-0.9 and let the code for
> NM-0.8 in maintanance mode (no new features, only bug fixing). System
> connections would be out of nm08 branch, less code /changes less bug fixing.
>

Well ... I have half finished work on top of Gokcen branch that
re-enabled user connections again :) Right now I get them in
activateables list and can use to connect (including providing local
secrets). Editing should follow. Effectively it backs out some of
Gokcen changes and leaves current information exchange between kded
module and applet via on-disk file. This was the minimal change I
could find.

I can't comment on NM 0.9 because distro I am using won't have it in
near future so I am stuck with NM 0.8 anyway. For this reasons I
really would like to bring user+system settings support there ...

> Will (the person, not the verb hehe), how is libnm-qt going? Is there a
> release date? Will it support NM-0.9?
>
> I have not started working in the nm09 branch because I am a bit overwhelmed
> with bugfixing in VPN / MobileBroadband code and some other KDE programs. I
> also do not have NetworkManager-0.9 snapshot installed yet.
>
> Em Monday 21 March 2011, Jirka Klimes escreveu:
>
>> Hello,
>
>>
>
>> I'd like to bring your attention to KNM and to the effort to make it work
>
>> with new NM 0.9.
>
>>
>
>> As you probably know NetworkManager 0.9 will be released shortly.
>
>> It changes its API and KNM has to be adapted to work with that.
>
>> http://projects.gnome.org/NetworkManager/developers/migrating-to-09/
>
>> The migration document describes what has changed and what should be done
>
>> in applications.
>
>>
>
>> The main change is removing user setting service and using just one
>
>> (system) setting service. But KNM doesn't support system connections.
>
>> Luckily Gökçen Eraslan implemented that some time ago in his clone:
>
>>
>> http://quickgit.kde.org/?p=clones%2Fnetworkmanagement%2Fgokcen%2Fnetworkman
>
>> agement.git&a=shortlog&h=refs/heads/systemwide The branch also contains
>
>> other changes/fixes that may be interesting.
>
>>
>
>> I did some tests to try whether KNM could work with new KNM and has been
>
>> successful to some extent (basic functionality work: listing connections,
>
>> activating, deactivating).
>
>> I cherry-picked some commits relating to system-wide connections from the
>
>> Gökçen repo and applied them on KNM master branch and tested them a bit.
>
>> They appear to work.
>
>> And then I started to do some changes related to migration for NM 0.9.
>
>>
>
>> I basically did this:
>
>> * generated proxy for org.freedesktop.NetworkManager interface
>
>> (Activate/DeactivateConnection(), ...)
>
>> - the methods removes "service" argument
>
>> * updated introspection and generated proxy for
>
>> org.freedesktop.NetworkManager.Connection.Active interface
>
>> * accomodate device/connection states
>
>> * fix listing connecions
>
>> * some other fixes
>
>> * I did *not* removeed unnecessary code (yeah, there will be more removals
>
>> then additions)
>
>> * I did *not* implement a secrets agent
>
>>
>
>> Basically, I bypasses Solid::Control where things changed instead of
>
>> adapting it.
>
>> All what I did are just quick changes trying to make things work. And it
>> is
>
>> by no means complete.
>
>> It is also quite hard for me to follow the code due to many abstractions
>
>> layers, backends, unnecessary complexity. And due tomy lack of familiarity
>
>> with KDE/Qt stuff, of course. I feel that I'm not able to do the
>> transition
>
>> to NM 0.9 myself. Also i's not clear how the changes should be managed
>
>> because the KNM design will probably (and hopefully) change. So, it would
>
>> be helpful if some KDE guys could step in and drive the adaption of design
>
>> and transition to NM 0.9.
>
>>
>
>> Luckily, Will Stephenson already started a libnm-qt (similar to
>
>> libnm-glib), that will hopefully remove Solid::Control, backends and other
>
>> redundant layers, and will simplify the design. Also Likas Tinkl expressed
>
>> a will to work on libnm-qt to get it into shape. The library is not public
>
>> yet, though and I haven't seen it.
>
>>
>
>> Cheers,
>
>> Jirka
>
>>
>
>> PS:
>
>> - Please see attached patches with my changes and test (based on master
>
>> branch)
>
>> - Sorry for not pushing that to a branch, but I don't have an account yet.
>
>> (Is it possible to create some scratch branches on anongit or something?)
>
>> _______________________________________________
>
>> kde-networkmanager mailing list
>
>> kde-networkmanager at kde.org
>
>> https://mail.kde.org/mailman/listinfo/kde-networkmanager
>
> --
>
> Lamarque V. Souza
>
> http://www.geographicguide.com/brazil.htm
>
> Linux User #57137 - http://counter.li.org/
>
> http://www.kde-mg.org
>
> _______________________________________________
> kde-networkmanager mailing list
> kde-networkmanager at kde.org
> https://mail.kde.org/mailman/listinfo/kde-networkmanager
>
>


More information about the kde-networkmanager mailing list