FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Ubuntu > Kubuntu Development

 
 
LinkBack Thread Tools
 
Old 06-13-2010, 01:20 PM
Harald Sitter
 
Default Ubuntu One KDE UI sort-of alpha1

I am currently working on my Google Summer of Code project where I am to bring
better Ubuntu One experience to KDE users. This project is divided into two
parts, one being user interface integration and the other is data integration
(a.k.a. Akoandi support).

In ppa:apachelogger/ubuntuone-kde you can now get a pretty much working Alpha
1 of the user interface integration, only that it is not really Alpha 1.

BEFORE installing please read everything below and be warned that this is all
work in progress and I will most likely not provide seamless upgrade
experience, so it would be best if you know how to resolve file conflicts in
DPKG and the like.

So first let me state why it is not the real alpha...
Unfortunately the Ubuntu One SyncDaemon (the component that is responbile for
interacting with the Ubuntu One cloud) does in its current stable iteration
only support the GNOME keyring as secret storage unit. But for sensible
integration into KDE the authentication and therefore the secret storage must
be handled by KDE components, most importantly KWallet. So in order to make
everything work properly you need to patch the SyncDaemon. [1] provides a one-
line command to do this, which basically just applies a patch [2] to your
SyncDaemon exchanging the gnome-keyring support for KWallet support.

Once you have that done you should install ubuntuone-kde and relogin, after
that you can savely try using the KDE integration. It should be noted that
using the KCM first will not work, and I am not sure about Dolphin integration
(testing please?).

You can use the Dolphin integration only if you place a .ubuntuone file in the
directory you want to use it with (also with 4.5 beta2 you will need to turn
on the plugin via the Dolphin settings, it will show up there as a version
control plugin).

The statusnotifier item (fancy systemtray icon) can be started via ubuntuone-
statusnotifier, or via the utilities section of your menu.

A configuration module is to be found in your systemsettings, currently it
will just display information queried on-the-fly from the Ubuntu One servers.

Authentication is handled by ubuntone-auth.

What I ask you to do is give it a good test run and start crying really bad
should you encounter:
a) a crash
b) nothing
c) clearly wrong behaviour
d) stuff that you think I did not think of, but seems worth mentioning

Tech Talk:
StatusNotifier and Dolphin integration use libubuntuone-kde which basically
provides an interface to the Ubuntu One SyncDaemon, upon status changes this
beastie should emit the appropraite information so that the StatusNotifier can
react properly. Another implementation of using the SyncDaemon is available in
the source [3] as a proof of concept plasmoid.
The KCM uses libubuntuone-qt-api which is a Qt interface to the Ubuntu One
server side REST API (hence this thing is mosty asynchronious). Please note
that the KCM will not work unless you used the statusnotifer before, because
it will be missing authentication information and at this time does not
trigger the auth process itself. If you wish you can also try creating own
apps to test the API implementation, currently the KCM does not use the API to
its full extent, though it probably will do once I am finished.
Ubuntuone-auth registers to DBus and provides the same interfaces as the GNOME
version provides, so technically one could also use it with the GNOME UI
(that is if someone really wants to hook it up with gnome-keyring). One
technical point of interest is that it will launch an own tiny HTTP server for
the authentication process, this will then lead to a fist-start workflow like:
1) you start an U1 app 2) webbrowser opens asking you if you want to auth the
machine you are on to use U1 3) you either agree or decline 4) U1 server calls
back to local HTTP server and transmits some tokens through the URL 5)
ubuntone-auth requests access tokens and tells the app(s) about arrived
credentials.

[1] http://people.ubuntu.com/~apachelogger/ubuntuone/HOWTO
[2] http://people.ubuntu.com/~apachelogger/ubuntuone/syncd-kwallet.patch
[3] https://code.launchpad.net/~apachelogger/ubuntuone-client/gsoc

----------------------
While I am at it, let me also give a quick heads up on the Akonadi stuff.

At [4] and [5] you can find components started by Till Adam some time ago
laying out very good basics for addressbook integration with Akonadi. If you
are very, and I mean VERY, brave, then you might try it out. Although
currently it will only (almost completely) map Ubuntu One contacts into
KAddressbook processable ones. Everything else will result in undefined
behaviour. Also please note that authentication to desktopcouch is not
implemented, so you will need to turn off authentication in your desktopcouch
config.

[4] https://code.launchpad.net/~apachelogger/+junk/couchdb-qt
[5] https://code.launchpad.net/~apachelogger/+junk/akonadi-desktopcouch

--
Harald Sitter
Kubuntu Core Developer
http://www.kubuntu.org
--
kubuntu-devel mailing list
kubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel
 
Old 07-11-2010, 12:40 PM
Harald Sitter
 
Default Ubuntu One KDE UI sort-of alpha1

Just a quick heads up. As of recently the PPA provides its own sync daemon
package that is able to handle both kwallet and gnome-keyring. Therefore
patching is no longer necessary.

If you have time please give this a good amount of testing (also using the
gnome client). The changes I applied ontop of syncdaemon are now trying to be
non-intrusive to the gnome-keyring side of things and I am planning on pushing
it into the official packages soonish.


Technical rambling---
http://bazaar.launchpad.net/~apachelogger/ubuntuone-client/stable-1-2-
lucid+kwallet/annotate/head:/debian/patches/01syncd-kwallet.patch

kcheckrunning is used to check whether we are running in a KDE session. We
cannot use KDE_FULL_SESSION because dbus service invoked apps do not have a
proper environment (syncd being started by dbus is affected by this).
kcheckrunning however should be more reliable (at least it is used in startkde
).

If KDE is running we will try to get the tokens from kwallet, if that fails we
try to use gnomekeyring (covering the case where KDE is running but not
ubuntuone-kde is used). If no KDE is running everything behaves as previously.

There is a particular concern that sometimes for me syncd got stuck, upon
killing it spit out a backtrace to the assignment of "wallet". By painful
trial and error I concluded that the problem is that the QCoreApplication is
not destroyed once the function gets left, making kwallet fall over at a
subsequent call to that function since it requires a QApp to use its
QEventLoop but now got 2 QApps :/. That is supposedly fixed by first trying to
get an existing instance (via the static interface
QCoreApplication::instance()) and if that yields None we create an instance.
Yet I am not entirely convinced that solved it properly. Also this is sort of
ugly. So I was thinking about a helper cpp app that would try to get the
token, which would get called by syncd. From looking at the code you will
notice that it really is a major uglyness as it is.

--
Harald Sitter
Kubuntu Core Developer
http://www.kubuntu.org
--
kubuntu-devel mailing list
kubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel
 
Old 08-06-2010, 01:20 AM
Mackenzie Morgan
 
Default Ubuntu One KDE UI sort-of alpha1

On Sunday, July 11, 2010 08:40:39 am Harald Sitter wrote:
> Just a quick heads up. As of recently the PPA provides its own sync daemon
> package that is able to handle both kwallet and gnome-keyring. Therefore
> patching is no longer necessary.
>
> If you have time please give this a good amount of testing (also using the
> gnome client). The changes I applied ontop of syncdaemon are now trying to
> be non-intrusive to the gnome-keyring side of things and I am planning on
> pushing it into the official packages soonish.

OK I'm trying it. Is "install the gnome one, then run it, then add your
computer, then get rid of the gnome one, then use the kde one" still the
workflow? Because I'm not being prompted to add my computer when I click
"manage account" in the KCM thing (it opens a browser window to the U1
website, but no prompt to add computer), and the "connect" option in the
ubuntuone-statsnotifier doesn't seem to do anything at all. I also haven't
done the install-gnome-stuff-first thing, so I just want to check before I go
and install that stuff uselessly.

Your previous email said to touch .ubuntuone in folders we wanted to sync that
aren't ~/Ubuntu One I think? I did that on my other machine (which has used
the gnome version and is registered with the U1 system then), but it doesn't
seem to be doing anything. I imagine the graphical way to do this will go
into the "sharing" tab in right-click -> properties in Dolphin eventually?

--
Mackenzie Morgan
http://ubuntulinuxtipstricks.blogspot.com
apt-get moo

--
kubuntu-devel mailing list
kubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel
 
Old 08-06-2010, 01:22 AM
Mackenzie Morgan
 
Default Ubuntu One KDE UI sort-of alpha1

On Sunday, July 11, 2010 08:40:39 am Harald Sitter wrote:
> Just a quick heads up. As of recently the PPA provides its own sync daemon
> package that is able to handle both kwallet and gnome-keyring. Therefore
> patching is no longer necessary.
>
> If you have time please give this a good amount of testing (also using the
> gnome client). The changes I applied ontop of syncdaemon are now trying to
> be non-intrusive to the gnome-keyring side of things and I am planning on
> pushing it into the official packages soonish.

My previous email is wrong. The "connect" option in ubuntone-statusnotifier
*does* do something. It launches Konqueror which is happy to add my machine
(er, after I tell it to ignore the SSL issue with the U1 website so that the
rest of Konq can actually load...). I find this counterintuitive since I
*don't* have Konq set as my default browser in System Settings.

--
Mackenzie Morgan
http://ubuntulinuxtipstricks.blogspot.com
apt-get moo

--
kubuntu-devel mailing list
kubuntu-devel@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel
 

Thread Tools




All times are GMT. The time now is 09:17 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org