/srv/irclogs.ubuntu.com/2010/06/18/#ayatana.txt

wershello everyone :)08:07
jdifoolhi there*09:31
jdifoolI'm trying to build up slackware packages for the whole indicator group09:32
jdifoolI'm facing two different problems09:34
jdifoolthe main one being the compilation of Nunit which is needed for indicator-application09:37
jdifoolif someone can point me towards a way to get Nunit to compile on Linux...09:37
jdifoolthanks in advance09:37
=== MacSlow is now known as MacSlow|lunch
=== MacSlow|lunch is now known as MacSlow
seb128qense, hi15:06
qensehello seb12815:09
hyperairtedg: ping.15:54
tedgHowdy hyperair16:01
hyperairtedg: howdy.16:01
hyperairtedg: so anyway i've been poking aroudn appindicator-sharp, and the issue seems to be that you've incremented the AssemblyVersion to 0.116:01
hyperairhowever, you didn't break ABI, and you didn't change the package name, so this is equivalent to a no-ABI-break SONAME bump, but without changing the package name.16:02
hyperairi.e. now libraries looking for 0.0 can't find it in the GAC, because it got replaced by 0.116:03
hyperairer sorry i meant applications16:03
tedghyperair, Oh, I think the issue is that we've got too many c files in the gapi-parser: https://code.edge.launchpad.net/~ted/indicator-application/mono-bindings-startup16:03
hyperairtedg: no, i don't think that's the issue.16:03
tedghyperair, I think the versions were the same, right?  I thought we just moved files and names packages correctly there.16:04
hyperairtedg: i've run mono-api-check16:04
hyperairthe versions are different.16:04
tedgHmm, I've rebuilt with that and I get Tomboy working :)16:04
hyperairindeed, you should16:04
tedgIs it because I rebuilt Tomboy?16:04
hyperairyes.16:04
hyperairand because you're using upstream sources, i should think16:04
hyperairthe one in maverick is screwed16:04
hyperairbecause you moved everything back to 0.016:05
hyperairbut didn't move the pkg-config file16:05
hyperairi mean the pkg-config file still spits out -r/usr/lib/cli/appindicator-sharp-0.1/...16:05
tedgHmm, shouldn't everything be going to 0.1 ?16:05
hyperairtedg: your packaging shoved everything back into 0.016:06
hyperairwhich is what's wrong.16:06
hyperairtedg: another thing is, since ABI wasn't broken, you should add a policy.appindicator-sharp.config or something16:06
hyperairthat maps 0.0-0.1 => 0.116:06
hyperairer policy.2.0.appindicator-sharp.config16:07
hyperairit should also be compiled into a dll using al2 -keyfile:somethignorother.snk policyblahblah.config16:08
hyperairand gacutil -i'd16:08
tedgHmm, you're loosing me a little bit there.16:08
tedgI'm not sure how to map the policy there.16:09
hyperairokay, let me go through this, looking only at the upstream situation first.16:09
hyperairappindicator-sharp in trunk now has AssemblyVersion=0.116:09
hyperairhowever, there is no ABI break between appindicator-sharp 0.0.0.0 and appindicator-sharp 0.1.0.016:10
hyperairhence, applications which linked against apindicator-sharp 0.0.0.0 should be able to use appindicator-sharp 0.1.0.0 no problem, without recompiling16:10
tedgOkay, so how do I tell Mono that?16:10
hyperairthere is a way to tell mono that when things look for appindicator-sharp 0.0.0.0, use the appindicator-sharp 0.1.0.0 dll, because it'll be fine.16:11
hyperairthat's using the policy file16:11
hyperairi've written one16:11
hyperairgive me a moment ot pastebin it16:11
hyperairhttp://paste.debian.net/77917/16:12
tedgOkay.  Why is it 0.0-@ASSEMBLY_VERSION@ ?16:13
tedgShouldn't it be 0.0.0.0 ?16:13
tedgAnd how do I generate "publicKeyToken" ?16:14
hyperairtedg: i got that from your snk file16:16
hyperairhttp://paste.debian.net/77919/16:17
hyperairsee16:17
tedghyperair, Oh.  I thought that was the example.16:17
tedgShould that be generated in the build?16:17
hyperairwell, you can16:18
hyperairit's up to you really, how much to generate16:18
hyperairwhat it *should* end up with currently is... ASSEMBLY_NAME=appindicator-sharp, and ASSEMBLY_VERSION=0.116:18
hyperairafter that, you compile it with al216:18
hyperairor $(AL) really16:18
hyperairal works too16:19
hyperairseems it's symlinked16:19
hyperair$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY_NAME).dll -keyfile:$(top_srcdir)/mono-addins.snk;16:20
hyperairthat's how it was done in mono-addins16:21
tedghyperair, Where $$i is appindicator-sharp?16:21
hyperairin appindicator-sharp's case, it can be done with $(AL) -link:policy.2.0.appindicator-sharp.config -out:policy.appindicator-sharp.dll -keyfile appindicator-sharp.snk16:21
hyperairtedg: ^16:22
hyperair$$i = 2.0,  i.e. the .NET version, afaik16:23
tedghyperair, Okay.  And where do I put policy.appindicator-sharp.dll ?16:23
hyperairtedg: in the same directory as appindicator-sharp.dll16:26
hyperairtedg: and gacutil the dll 16:26
hyperairtedg: once that's all done, there are the downstream changes: libappindicator0.0-cil must be renamed to 0.116:28
tedghyperair, Okay.  Let me see if I can get this working first :)16:29
htorquehello, how can i change the font size in the une panel? after an update it changed to super-small16:31
kenvandinetedg, sorry... afk for a few... bbiab16:34
tedgkenvandine, np16:37
tedghtorque, It should be the same as the application font... but I've not played with UNE much.16:37
hyperairtedg: sure. if you've got any further troubles please ask16:37
tedgnjpatel would be the guy to ask -- but he's not here right now.16:37
htorquetedg, thanks! after a unity crash it's back to normal - very strange16:38
=== MacSlow is now known as MacSlow|capoeira
tedghyperair, Could you look at this branch and see if it matches what you were thinking?  https://code.launchpad.net/~ted/indicator-application/mono-version-agreement17:06
* hyperair checks17:09
hyperairthat would be... lp:~ted/indicator-application/mono-version-agreement, right?17:10
tedghyperair, Yup17:15
* hyperair branches17:15
hyperairtedg: i think you need to use sed instead of just "cp" re: generation of the policy.2.0.appindicator-sharp.config from the .config.in17:49
hyperairthe @ASSEMBLY_*@ things need replacement17:49
tedghyperair, Ah, okay.17:49
tedghyperair, I wasn't sure if the al tool did that.17:49
hyperairhmm what's this gtk-doc that autogen  complains about?17:50
tedghyperair, It's used to generate the API documentation.17:53
tedghyperair, Should ASSEMBLY_VERSION be "0.1"?17:53
hyperairtedg: yes.17:54
hyperairtedg: it should follow whatever's inside AssemblyInfo.cs17:55
hyperairtedg: if you ever break ABI, then the "0.0" bit needs to be changed.17:55
tedghyperair, How about we just don't break ABI ;)17:55
hyperairtedg: that's ideal, of course ;-)17:56
tedgOkay, pushed the sed stuff.17:56
* hyperair fetches17:57
schmichaelHi all, I'm a python web dev looking to make a fairly simple app that displays notifications popups and allows a user to take an action...18:06
schmichael...I was assuming the correct route to go is via appindicator and the existing messaging appindicator, but I'm having trouble figuring out how to hook everything up.18:07
schmichaelI'm looing at gwibber's source, but that's a bit daunting18:07
schmichaelhm, reading this now: https://wiki.ubuntu.com/MessagingMenu#API18:08
tedgschmichael, Well, it would depend on what you're representing.  Would it qualify as a "human-to-human" message?18:10
tedgschmichael, That's all that should be in the messaging menu18:11
schmichaelhm, I suppose not necessarily18:11
schmichaelmore like e-mail18:11
schmichaelwhere it's human-or-app to human recipient18:11
tedgWell, as long as it's more like Twitter feeds, I think you're probably good.18:12
tedgWhere they can be both.18:12
hyperairtedg: DLLPOLICY = policy.2.0.$(ASSEMBLY)18:13
hyperairtedg: and add gacutil calls for the policy dll into (un)install-data-hook18:13
hyperairthen i think it should be good to go18:14
tedgschmichael, http://bazaar.launchpad.net/~indicator-applet-developers/libindicate/trunk/annotate/head:/examples/im-client.py18:14
schmichaeltedg: interesting. thanks18:15
schmichaelJust got my app to add menu items based on methods called via dbus, very excited :)18:55
schmichaelSo I'm using appindicator currently for my tray icon. Is pynotify the preferred way to raise notifications from python?18:58
tedgschmichael, Ah, cool.  You can use the appindicator python library if you want, that might make it easier.  It hides the dbus parts.19:01
tedgschmichael, Yes, pynotify works.19:01
tedghyperair, I can't figure out how to get it to uninstall :(19:01
tedghyperair, Let me push what I have.19:01
hyperairtedg: just copy paste whatever you had?19:06
tedghyperair, Sadly doesn't seem to work.19:06
tedghyperair, It doesn't seem to find the policy files.19:06
hyperairhmm weird.19:06
hyperairdid it even install?19:06
hyperairwell let me pull and see19:06
tedgYeah, it installs.19:06
schmichaeltedg: hm, indicator.notify('foo') just gives me an error19:07
schmichaelWarning: IA__g_object_notify: object class `AppIndicator' has no property named `message'19:07
schmichaelwhere 'message' is what I pass to notify19:07
tedgschmichael, The AppIndicator library isn't for notifications -- it's for putting icons in the panel.19:07
tedgschmichael, And attaching menus for them.19:07
schmichaelah, sorry19:07
schmichaelthought you had said I could use it for notifications too19:08
schmichaelk19:08
schmichaelwill use pynotify then19:08
tedgschmichael, You'll still want pynotify for the notifications.19:08
schmichaelthanks!19:08
tedgnp19:08
hyperairtedg: er sorry, looks like it was supposed to be policy.$(ASSEMBLY_VERSION).appindicator-sharp.{config,dll}20:07
tedghyperair, Okay, cool.  Let me try that.20:08
hyperairstill doesn't get uninstalled.20:11
hyperairhmmmm20:11
hyperairtedg: aha. during the uninstall call, you need to give the assembly name, not the dll name.20:15
hyperairtedg: DLLPOLICY has .dll stuck on20:15
tedghyperair, Ah, okay.20:15
tedghyperair, Okay, it distchecks now.  Can you pull and make sure it looks right?20:20
hyperairokay20:20
hyperairtedg: i think the policy.*.config file should also be installed to /usr/lib/cli/appindicator-sharp-0.1/20:36
hyperairtedg: Failure adding assembly policy.0.1.appindicator-sharp.dll to the cache: The system cannot find resource policy.0.1.appindicator-sharp.config <-- this will happen when using the debian packaging without the .config file included, because the libraries are added into the GAC during a postinst script.20:39
hyperairto get that message, i just deleted the .config file and tried adding the .dll20:39
tedghyperair, Okay, I added that to the TARGET20:40
* hyperair tests20:41
hyperairokay, it's good =20:43
hyperair=)20:43
tedghyperair, Cool.  Thanks!20:45
tedghyperair, No what do I need to do to the packaging?20:45
tedgNow20:45
hyperairrename the libappindicator0.0-cil package to libappindicator0.1-cil20:46
hyperairalso, change the .install file to not install to a separate location20:46
hyperaircurrently it takes things installed in /usr/lib/cli/blahblah-0.1 and installs it itno /usr/lib/cli/blahblah-0.020:46
tedgAh, okay.  Yes.20:47
=== MacSlow|capoeira is now known as MacSlow
hyperairand then add the policy.whatever.dll to the .installcligac file20:47
tedghyperair, Hmm, I didn't do something right -- Tomboy still can't find it :(21:14
tedgThe packaging branch I'm using is here: lp:~indicator-applet-developers/indicator-application/ubuntu/21:15
tedgThe policy file got into the package and looks correct.21:15
tedgI'm not sure what else to check.21:15
hyperairdid it get into the gac?21:16
hyperairgacutil -l | grep appindicator21:16
tedgappindicator-sharp, Version=0.1.0.0, Culture=neutral, PublicKeyToken=bcae265d1c7ab4c221:17
tedgpolicy.0.1.appindicator-sharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=bcae265d1c7ab4c221:17
tedgSeems like it should be in the gac as "appindictor-sharp", eh21:17
tedg?21:17
hyperairtedg: is it not appindicator-sharp already?21:25
hyperairtedg: can you give me tomboy's backtrace?21:25
tedghyperair, Well there's two lines.  One for appindicator-sharp and one for policy*.  It seems they should be appindicator-sharp.21:25
hyperairno, it's correct that way.21:25
hyperairappindicator-sharp is already appindicator-sharp21:26
hyperairthe policy one is registered and treated differently -- it provides the mapping from 0.0-0.1 => 0.121:26
tedghttp://pastebin.ubuntu.com/451763/21:26
hyperairurgh, how weird.21:29
hyperairhmm i just got an idea.21:31
hyperaircan you try changing these things: oldVersion="0.0.0.0-0.1.0.0" and newVersion="0.1.0.0"21:32
hyperairseems that it might need the full version in the policy file after all.21:32
hyperairtedg: ^21:40
tedghyperair, k, just a second21:45
hyperairsure21:46
tedghyperair, Hmm, nope, that didn't help.21:51
hyperair=\21:51
hyperairdid you regenerate the dll?21:51
tedgYeah, I rebuild the package.21:53
tedgrebuilt21:53
hyperairtedg: aha. the weird version that's stuck onto the policy.${VERSION}.appindicator-sharp.{config,dll} should be for the version of the assembly it's applying to (i.e. in order to map 0.0 => 0.1, it needs to ${VERSION} in this case needs to be 0.0)22:39
tedghyperair, Ah, okay.22:40
hyperairsorry for leading you on a wild goose chase =(22:41
tedgLet me try it.22:41
hyperairit works this time with bce at least.22:46
hyperairi mean banshe22:46
hyperairReplaces: libappindicator0-cil (<= 0.0.19-0ubuntu4~)22:50
hyperairer whoops22:51
hyperairwait a sec.22:51
hyperairtedg: i think the ~ is unnecessary.22:51
hyperairit's generally used for >= relations to include backports of the version, or << to exclude backports of that particular version, but in the case of <=, it'll miss out on 0.0.19-0ubuntu4.22:52
hyperairalso i think the previous package name was libappindicator0.0-cil22:53
tedghyperair, Hmm, the change to 0.0 didn't seem to help :(22:54
tedgI'll fix the version.22:54
hyperairhttp://paste.debian.net/77952/22:54
hyperairtedg: i did that ^^, and renamed the policy.0.1.blah.in22:55
tedghyperair, Hmm, I did the same...22:57
hyperairweird.22:57
hyperairtry purging and trying again?22:57
hyperairlibappindicator0.1-cil should also Provides: libappindicator0.0-cil23:05
hyperairi think.23:05
tedgAh, I was just about to ask that :)23:05
tedgI think that might be the issue as I have a libappindicator0.0-cil installed on my system.23:06
tedgAnyway, I need to run.  I try that later.  Thanks for your help hyperair!23:06

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!