=== jontehechdina is now known as JontheEchinda [02:53] * vorian waves [04:57] <_Garbage_> when Tutorial Day is starting ? [04:58] It's in the topic [04:59] <_Garbage_> skreech, can u please tell me time in IST ?? [05:00] <_Garbage_> I have to do +5:30 ? [05:04] _Garbage_: Correct [05:04] <_Garbage_> means Midnight here.. :O [05:04] Time to nap :) [05:10] <_Garbage_> thank you [06:22] Would it be possible to get a transcript of the various tutorials that I missed today? [06:24] they haven't started yet [06:25] stdin, sigh. I need to sleep. I somehow though 1:24am on the 15th meant I missed the tutorials from midday on the 15th. Thanks for the reality check. [06:29] exit === hunger_t is now known as hunger === marseillai_ is now known as marseillai [13:14] if im not mistaken... today is the tutorials day right? [13:22] santiago-ve: yes [13:22] Nightrose, Thanks :D [13:22] :) [13:22] ubottu, time [13:23] santiago-ve: Current time in Etc/UTC: June 15 2008, 12:22:59 - Next meeting: Bugs for Hugs Day in 23 hours 37 minutes [13:23] Information about using and setting your computer's clock on Ubuntu can be found at https://help.ubuntu.com/community/UbuntuTime - See https://help.ubuntu.com/7.10/server/C/NTP.html for information on usage of the Network Time Protocol (NTP) [13:23] ubottu, time Caracas [13:23] santiago-ve: Current time in America/Caracas: June 15 2008, 07:53:09 - Next meeting: Bugs for Hugs Day in 23 hours 36 minutes [13:23] Factoid time caracas not found [13:53] Excellent. [13:55] @now utc [13:55] Hobbsee: Current time in Etc/UTC: June 15 2008, 12:55:39 - Next meeting: Bugs for Hugs Day in 23 hours 4 minutes [13:55] * Hobbsee blinks [13:56] ah. wrong berlin. [13:56] *there* we are. [13:56] I think that is incorrect. I was under the impression there are meetings in here at 19:00 UTC. [13:57] sarah@saturn:~% date --utc 10:56PM [13:57] Sun Jun 15 12:56:51 UTC 2008 [13:57] https://wiki.kubuntu.org/KubuntuTutorialsDay [13:57] * Hobbsee is relatively sure that date is, in fact, correct. [13:58] emma: you are correct in your impression, as the wiki says. [13:58] Yes I am. [13:59] * Hobbsee wonders how that is incorrect. [14:00] nixternal: you around yet? or is it a bit early? [14:00] Well it says that the next meeting is in 23 hours and 4 minutes buut the next meeting is apparently in about 6 hours. [14:00] that's the next meeting in #ubuntu-meeting. === Hobbsee changed the topic of #kubuntu-devel to: Welcome to the Kubuntu developers channel | https://wiki.kubuntu.org/Kubuntu/Todo | Back to merging! | https://wiki.kubuntu.org/Kubuntu/Teams | https://wiki.kubuntu.org/KubuntuTutorialsDay | Starts at 19:00 UTC - See http://tinyurl.com/6c6cpn for local time === Hobbsee changed the topic of #kubuntu-devel to: Welcome to the Kubuntu developers channel | https://wiki.kubuntu.org/Kubuntu/Todo | Back to merging! | https://wiki.kubuntu.org/Kubuntu/Teams | https://wiki.kubuntu.org/KubuntuTutorialsDay - starts at 19:00 UTC - see http://tinyurl.com/6c6cpn for local time [14:02] !time [14:02] Information about using and setting your computer's clock on Ubuntu can be found at https://help.ubuntu.com/community/UbuntuTime - See https://help.ubuntu.com/7.10/server/C/NTP.html for information on usage of the Network Time Protocol (NTP) [14:02] heya nosrednaekim [14:02] ey Hobbsee [14:03] don't think I can do my session BTW.... doesn't seem to be any python bindings [14:03] nosrednaekim: of kde4? or of plasma in particular? [14:03] plasma [14:03] none existant, or none packaged? [14:04] packaged... nixternal was running into build errors. [14:04] where's the package? [14:04] well, where's what nixternal got up to? [14:04] I don't know... You;d have to talk to him about that [14:05] nixternal seems like a good guy. He has a good sense of humor. [14:05] nosrednaekim: hmm. hopefully he and Riddell will be able to fix it when they're not talking. [14:06] nosrednaekim: what is to bepackaged anyway? [14:06] apachelogger: ...the python bindings? or are you looking for a more detailed answer? [14:06] probably [14:07] apachelogger: I _believe_ it was kross [14:07] ok [14:07] I packaged kross :P [14:07] meh [14:07] nosrednaekim: beta1 you need? [14:07] for 4.1? [14:07] yea [14:07] no for 4.0, but I know that stuff [14:07] was hacking on it for about an week [14:07] apachelogger: any chance you could either a) call the vistalover, or b) package it yourself in a few hours? :) [14:08] or both? [14:08] I should have been talking to you a week ago then.... So I could have had time to at least prepare :P [14:08] Hobbsee: I am a vistalover and I will go for packaging :P [14:08] does anyone feel like packaging a library? (rubberband) [14:08] nosrednaekim: i refrained from commenting on that one... [14:08] apachelogger: oh, are you giving out free money too? [14:09] ;) [14:09] well, in an indirect way, I do from time to time [14:09] Hobbsee: heh.... yeah... the last month has been very very hectic [14:10] and thats my only excuse [14:10] ahhh, i see. [14:11] hi my name is alxander kopf, i started with packing but i have a problem with docbook-to-man, i get this error massage: http://paste.ubuntu.com/20348/ , can someone help me? [14:12] Xand3r is my padawn, btw :) [14:13] ooh, padawans. [14:13] -a [14:15] Xand3r: does http://www.mail-archive.com/docbook-apps@lists.oasis-open.org/msg02719.html help? [14:19] Xand3r: looks like google is coming up with other similar stuff. [14:19] hmm [14:20] Xand3r: maybe you should start all over again with the docbook [14:20] Hobbsee: is the docbook/manpage template from dholbach still a good one? [14:20] apachelogger: looks like a well known problem. and i'm not sure. [14:20] * apachelogger writes manpages directly so can't really say anything about docbook [14:21] Xand3r: you probably should wait for master nixternal, he'll know what to do ;-) [14:21] ok, thx [14:22] Xand3r: you can continue with some other issues meanwhile [14:23] other issues? [14:23] Xand3r: is lintian happy with the package, other than the manpage is missing? [14:23] only manpag [14:23] +e [14:23] i think [14:24] Xand3r: lintian DSCFILE && lintian DEBFILE [14:28] (as done in #ubuntu-ops) [14:28] apachelogger: ups, [14:28] W: screenie source: debian-rules-ignores-make-clean-error line 39 [14:28] W: screenie source: out-of-date-standards-version 3.7.2 (current is 3.7.3) [14:29] Xand3r: 2nd one is the one I was talking about yesterday, but I didn't notice officially ;-) [14:29] Xand3r: you know what the standards-version in debian/control is? [14:30] btw, if you're trying to package screenie you should know that there already is a package called screenie in the repo [14:31] JontheEchinda: hrrr, that makes stuff a lot more fun :D [14:31] !info screenie [14:31] screenie (source: screenie): a small and lightweight GNU screen(1) wrapper. In component universe, is extra. Version 1.30.0-4 (hardy), package size 6 kB, installed size 80 kB [14:31] hm [14:31] screenie-screenshots maybe as package name? [14:32] * JontheEchinda tried to package it the other day but the make file qmake generates doesn't have any install rules [14:32] and then I got lazy [14:43] hi Hobbsee [14:43] bascule! [14:43] the one and only me [14:44] right, yes, that you. [14:46] kdebindings building ... @ 5 % [14:48] bascule: if you want to act as emma's earpiece, that's fine. as long as you don't act as her mouthpiece. [14:48] I am a fully autonomous individual [14:49] coulda fooled me, at times, but OK. [14:49] really? Oh well [14:51] * apachelogger again doesn't get anything :( [14:54] * Hobbsee passes apachelogger a cookie [14:55] oh, thanks :) [14:55] bindings @ 47 % [14:56] /bin/sh: KDE4_AUTOMOC_EXECUTABLE-NOTFOUND: not found [14:56] woah [14:57] ouch? [14:58] hm, strange thing is - it's installed [14:58] * apachelogger diggs into cmake [14:59] oh well [14:59] it fails in korundum [14:59] not to be cared about right now [15:06] meh [15:06] again is stuff not packaged [15:06] why is it always me to discover such stuff :S [15:07] automoc should be a package from kdesupport apparently [15:46] rofl [15:46] this is the most awkward dead-end-patching I ever did [15:47] * apachelogger is actually wondering how one is supposed to package kdebindings if kde doesn't release an automoc tarball [15:50] ah [15:50] wells [16:09] hola! [16:10] yo, I will not be able to give the kickoff to Tutorials Day today at 19:00 UTC [16:10] nixternal: wrong answer. try again. [16:10] it is father's day here and all of the fathers in the family have our yearly golf outing [16:11] nixternal: happy fatheres' day (am I greeting on the right date?) [16:12] yup :) [16:12] thanks! [16:12] already, heading out now...ttyl [16:12] waaait! [16:12] bah :( [16:19] * apachelogger delegates the talk to Jucato [16:20] CMake Error at /usr/share/cmake-2.6/Modules/FindKDE4.cmake:35 (MESSAGE): [16:20] ERROR: Could not find KDE4 kde4-config [16:20] not good :S [16:20] um.. tutorials start at 03:00... [16:20] Jucato: so? [16:21] I doubt I can even be there just to watch :) [16:21] -.- [16:23] ANYONE AVAILABLE TO DO THE KICKOFF TALK FOR THE KUBUNTU TUTORIALS DAY? [16:28] is anybody working on merging kcoloredit? [16:29] Can we just copypasta nixternal's last "contributing to kubuntu" talk? [16:29] :P === JontheEchinda is now known as visternal [16:29] oh hai [16:29] visternal: with some updates [16:29] yes === visternal is now known as JontheEchidna [16:30] Unfortunately I'm going to be occuped at 1900 [16:30] -.- [16:30] What with Fathers Day and stuff [16:41] omg, where did nosrednaekim disappear to [16:43] * apachelogger runs in hysteric through the channel and finally against the channel wall [17:14] nixternal: oh! i completely forgot about that [17:14] (we should have probably told Riddell when he organized..) [17:15] Nightrose is going to kick the day off [17:15] ah cool [17:16] yea [17:16] preparing now [17:17] * \sh needs some beer [17:31] kdesdk-dbg-kde4 has a dependency typo for version 4:4.0.80-0ubuntu1~hardy1~ppa2 [17:31] Should I submit a bug for that? [17:36] txwikinger: please [17:38] apachelogger: I just like bugs :D [17:39] txwikinger: you are a karma junkie :P [17:39] jussi01: No I am not [17:39] I just can't stop myself [17:39] you are addicted :-P [17:40] clinx: Yes, you could say that [17:40] but not to karma [17:41] more to trying to get Kubuntu work [17:42] txwikinger: then make daily svn snapshots of kde4 ;-) [17:43] why? [17:44] Is someone needed to do those? [17:44] i am addicted to kde4 snapshots [17:44] but i have no experience with debian packaging [17:44] Well.. I am helping you to get off your addiction by not making them :p [17:45] *lol* [17:45] Anyway.. I doubt you need a lot of packaging experience for it [17:45] you just use the same debian folder and change the version in changelog [17:46] furthermore my laptop hasnt got enough power to compile kde in 6 hours [17:47] Well... a nice compile cluster would be nice [17:49] i need acces to the ibm roadrunner this computer compiles really fast :-P [17:49] hi there [17:51] http://en.wikipedia.org/wiki/IBM_Roadrunner [17:52] everybody should have a computer like the roadrunner :-D [17:52] yeah [17:52] kdebindings would build faster [17:52] * apachelogger is a bit worrid that nosredneakim is hiding [17:53] clinx: I like the blue lights :D [17:54] i like the thousands of opterons [17:55] and the 100 terabytes of ram [17:58] well.. nice dream... but not necessary useful for compiling [17:59] yes the red hat has too much modifications [18:00] <\sh> apachelogger: http://gallery.sourcecode.de/v/Personal/b028319l.JPG.html is that ok for you? :) [18:01] uhhhh [18:01] omg [18:01] the sexiest [18:01] hrrrhrr [18:11] <\sh> apachelogger: 638x (two dual core opterons, + 16 GB + 8 TB Disk storage ) ;) [18:34] \sh: awesome machine :) [18:37] <\sh> freeflying: yes they were :) and they were all under my control :) [18:43] where can I report bugs on packages of ppa.lauchpad.net ? [18:44] sev_: to the person who made the package [18:44] sev_: depends on the PPA, for the kubuntu-members-kde4 one, here, #kubuntu-kde4 or the mailing list kubuntu-members-kde4@lists.launchpad.net [18:45] stdin: thx stdin, it was for kubuntu-members-kde4 one [18:46] just a spelling mistake which break a package ... [18:51] nosrednaekim: Package: libkrosspython0 [18:51] Source: kde4bindings [18:51] Version: 4:4.0.80-0ubuntu2 [18:51] :D [18:52] nosrednaekim: http://aplg.kollide.net/kubuntu/kde4bindings/libkrosspython0_4.0.80-0ubuntu2_i386.deb [18:52] please try [18:53] So what packages and stuff will we need? [18:53] apachelogger: x86_64? [18:53] mehhhh [18:53] apachelogger: its still too late for the tutorial session though :( [18:53] nosrednaekim: Oo [18:53] why? [18:54] cause, I have had nothing to prepare with.. [18:54] cool [18:54] nosrednaekim: you still have quite some hours :P [18:54] my mom is making me do things today.... dang it. [18:54] Shouldn't there only be one hour? [18:54] 01:06 [18:55] mine isn't the first session [18:55] nosrednaekim: yay [18:55] Ah ok [18:55] * apachelogger is a tiny lille bit pissed [18:56] nosrednaekim: You're doing the Plasmoid one? What packages would we need? [18:56] When does the Kubuntu Tutorials Day start? [18:56] kubuntupedia: in an hour [18:56] kubuntupedia: /topic [18:57] HappySmileMan: well, a package that ATM, is not in the repository... which is the issue [18:57] HappySmileMan: I guess you'll want to install build-essential and python-kde4, that should be most of what you'll need for all the sessions [18:57] Ah right, thinbk I have those ones [18:58] oh, python-kde4 is the old package, oh well [18:58] Would it matter that python-kde4 is 4.0.3 and I'm running 4.1B1? [18:58] Hobbsee: around? [18:59] I have updated plasma library and headers [18:59] HappySmileMan: probably, it would [18:59] Damn [19:05] apachelogger: thanks for working on that package BTW... I appreciate it === Igorot is now known as Knightlust [19:29] hi [19:29] hi [19:29] hi [19:29] where is kubuntututorial [19:29] ? [19:29] :) [19:29] I dont'know? [19:29] When it's start? [19:30] I thought I was late;) [19:30] at 19:00 UTC [19:30] here [19:30] it starts here in about half an hour (if im right :) ) [19:30] correct [19:31] If you live in Germany or another country in CEST [19:31] but why i don't see any tutorial's talk :) [19:32] hm... [19:32] http://timeanddate.com/worldclock/fixedtime.html?day=15&month=6&year=2008&hour=19&min=0&sec=0&p1=0 [19:32] its 18:32 UTC [19:32] ok ok... [19:32] i see it now [19:32] 19:00 UTC is 21:00 in my country [19:33] I am from montenegro [19:34] ubottu, time [19:34] santiago-ve: Current time in Etc/UTC: June 15 2008, 18:34:08 - Next meeting: Bugs for Hugs Day in 17 hours 25 minutes [19:34] Information about using and setting your computer's clock on Ubuntu can be found at https://help.ubuntu.com/community/UbuntuTime - See https://help.ubuntu.com/7.10/server/C/NTP.html for information on usage of the Network Time Protocol (NTP) [19:34] ok... see u in 30min === stevie is now known as vorian [19:42] * riddell is almost back [19:45] coming to you live from the road [19:47] Riddell: I can't do my session as I didn't have enough time to prepare (apachelogger only now made the correct package) [19:47] * Nightrose waves @ Riddell and sladen [19:47] Nightrose: you're doing nixternal's talk? [19:47] yes [19:48] great [19:48] seele: you still able to do your talk in a bit over an hour? [19:49] nosrednaekim: where is apachelogger's package? [19:49] http://aplg.kollide.net/kubuntu/kde4bindings/libkrosspython0_4.0.80-0ubuntu2_i386.deb [19:50] Riddell: and thats not even in my architecture.... [19:50] anyone tested to see if it works? [19:52] hmm, this tutorial day, already looks exciting :) [19:52] Riddell: yep [19:53] hi everyone :) [19:53] Riddell: I have that package installed now, so i could see if it works... but... not quite sure how to test it, hence me being here for the tutorial [19:53] My Python is rusty and never really used KDE libs much [19:56] HappySmileMan: just try this... start up a python session and run "import plasma" [19:56] I think.... [19:56] ImportError: No module named plasma [19:56] nosrednaekim: it just has krosspython.so in it [19:57] ubunturos, [19:57] hey, techno_freak [20:00] HELLO EVERYONE :) [20:00] \o/ [20:00] Can I see some hands please? [20:00] Who is here for Kubuntu tutorials day? [20:00] * HappySmileMan . [20:00] everyone ? :) [20:00] * ubunturos raises his hand [20:00] * Myrtti waves meekly [20:00] * m4v uhmm [20:00] * stdin joins in [20:01] Woahh awesome :) [20:01] Let's start right away with a little intro then. [20:01] * eagles0513875 waves to room and stands up on desk [20:01] lol [20:01] * techno_freak raises both his hands [20:01] You probably expected Nixternal the Vista lover here, eh? [20:01] actually, lemme just announce this in a couple channels ;) [20:01] * ubunturos wonders, where's nixternal. Finds, he's still away ;) [20:01] Tell you what: You won't get him today :( [20:01] But no need to be sad because you will get me and a whole bunch of other Kubuntu folks instead ;-) [20:01] :) [20:01] * eagles0513875 smacks nixternal for using vista and betraying kubuntu [20:01] For those who don't know me: I'm Lydia. [20:01] hi lydia [20:02] I am here to tell you a little about what a cool community Kubuntu has and how you can become a part of the family :) [20:02] hi [20:02] hmm I'd love a live feed of the EC if you got so i can multitask and not miss a goal:-) [20:02] Here is a brief summary of what I am about to cover: [20:02] * A little about myself [20:02] * A little about Kubuntu [20:02] * A breakdown of the various development roles in the Kubuntu community [20:02] * eagles0513875 needs to get back to bug fixing [20:02] And now everyone please sit back and relax :) [20:02] Please note down questions you have so I can answer them at the end. [20:03] === About Me === [20:03] * Free software dudette and advocate [20:03] * Community person [20:03] * Involved in Amarok, KDE and Kubuntu for nearly 2 years now [20:03] * Doing promo, advocacy, community stuff and bug triage most of the time as well as some packaging [20:03] * Go by Nightrose on nearly every communication protocol and website imaginable [20:03] * Email me at lydia@kde.org [20:03] * Check out my blog at http://blog.lydiapintscher.de [20:03] So lets go on to the juicy stuff, shall we? [20:03] si [20:03] OK [20:03] What is this Kubuntu thing everyone in the world should be using? [20:04] === About Kubuntu === [20:04] * Official project of the Ubuntu GNU/Linux distribution [20:04] * We use the same exact base system as Ubuntu, we just use KDE instead [20:04] * It is pronounced koo-BOON-too [20:04] * First released in 2005 with the Hoary Hedgehog (5.04) version [20:04] * http://www.kdedevelopers.org/node/591 - The post that started it all, by some smart guy named Jonathan Riddell [20:04] Riddell: You there to say hello? ;-) [20:04] VIVA JONATHAN Riddell [20:04] * Riddell blushes [20:04] ;-) [20:04] Riddell: ty for the best distro out there [20:04] === Where Kubuntu is today === [20:05] * One of the top KDE based GNU/Linux distributions available [20:05] * Still a small, yet tight-knit community of highly dedicated developers [20:05] * People who are fun to work with [20:05] * Both a KDE 3 and a KDE 4 Remix version available [20:05] * Switch to KDE 4 with the next release [20:05] * In numerous large scaled environments (Canary Islands, French Parliament, and others) [20:05] * A tad bit better than yesterday, only to be made better with YOUR help, so it will be even better tomorrow and the day after towmorrow... [20:05] Ah, you know where this is going, right ;-) [20:05] lol ya [20:05] = Development Roles = [20:05] There are many roles available for you to get involved in, no matter your experience level, we have a job for you! [20:05] I will break down the jobs or roles that I feel are in order starting with the easiest all the way to the hardest. [20:05] Feel free to communicate with developers by utilizing our mailing list - https://lists.ubuntu.com/mailman/listinfo/kubuntu-devel (Subscription based - low traffic). [20:06] Note that this list is NOT for user support, for support please see the list information provided in the upcoming section on user support. [20:06] The roles I will break down briefly cover: Advocacy, Support, Bug Triage, Documentation, Packaging, and Coding [20:06] === Advocacy === [20:06] Advocacy is nothing more than a fancier, and better sounding word for marketing. [20:06] I am willing to bet a couple of you just went, "How in the heck is advocating Kubuntu related to development?" [20:06] Yes, advocacy helps in the development of Kubuntu, and by you advocating, you are therefore helping to develop Kubuntu. [20:06] It is about getting Kubuntu known and used! [20:06] This gets Kubuntu in the hands of other people who will use the system and typically report back any issues or compliments to the developers. [20:06] How can you advocate? [20:07] * Get with one of your LoCo teams [20:07] * Get with one of your local Linux Users Groups (LUG) [20:07] * Talk about it face-to-face with friends, family, colleagues, and strangers in the dark (Careful using Kubuntu as a pickup line! Some girls (and boys) might never leave you again ;-)) [20:07] * Give talks at events [20:07] * Work at the Kubuntu booth at an event [20:07] let's get on to user support then :) [20:07] === User Support === [20:07] How can user support be considered a development role? [20:07] * You develop a sense of pride when helping others [20:07] * You develop respect not only for the OS, but also for the users, the developers, and yourself [20:07] * You develop a repoir within the Kubuntu community [20:08] * You help users, see things that could be made better by developers, and report that to the developers [20:08] * eagles0513875 raises hands [20:08] yes? [20:08] when u say develop a sense of pride when helping others are you talking about when in the kubuntu irc channel [20:09] yes [20:09] eagles0513875, anything, forums irc [20:09] right [20:09] face-to-face [20:09] not _only_ irc [20:09] i just wanted to throw that out there for those who are new to the distro [20:09] eagles0513875: I will get to that ;-) [20:09] sry to jump the gun [20:09] ok let's move on [20:09] Having someone like YOU helping out the Kubuntu users helps out the development community tremendously. [20:10] You free up the main developers _a lot_ of time and you also are provided the ability to take what you learn from common issues and communicate that effectively, allowing developers to make a better Kubuntu. [20:10] Places you can provide user support: [20:10] * IRC - #kubuntu on Freenode (see https://help.ubuntu.com/community/InternetRelayChat) [20:10] * Ubuntu Forums - http://ubuntuforums.org [20:10] * Kubuntu Forums - http://www.kubuntuforums.net/ [20:10] eagles0513875: ^ ;-) [20:10] * Mailing List - https://lists.ubuntu.com/mailman/listinfo/kubuntu-users (Subscription based - medium traffic) [20:10] * At your local LUG or LoCo events [20:10] Everyone needs support and community love, and these are 2 very important areas in development because it helps people use and understand Kubuntu. [20:10] You don't know every fricking detail of Kubuntu yet and fear you therefore can't provide support to other users? [20:10] Fear not. Most of the stuff you will be dealing with will come up several times and you will learn quickly. And after all noone needs to know everything. This is why we need a lot of different people to give support. [20:10] Nightrose, here as well - https://answers.launchpad.net/ [20:11] oh right... [20:11] good point [20:11] thanks [20:11] :) [20:11] ok support is a cool thing [20:11] but what also needs to be done is: [20:11] === Bug Triage === [20:12] Bug triage is a huge part of the development process and comes in easy and difficult tasks. [20:12] * eagles0513875 raises hand again in regards to bugs and fixing and what not [20:12] For the easy, simply going through bug reports and testing to see if you can reproduce the issue and then confirming the bug is a big part on ensuring it gets fixed. [20:12] When bugs sit in the New or Incomplete status, their chances of getting looked at in depth are minimal compared to a report that has been Confirmed. [20:12] eagles0513875: yes? [20:12] whats the best way for someone who has very minimal programming knowledge to help with fixing these bugs besides confirming them if they can be reproduced [20:13] they can help by asking the people who know more about the product if they know a fix [20:13] eagles0513875, finding whether duplicates exist or browsing through old bugs to see anything similar is found [20:13] like the people who actually developed the programm [20:13] dublicate search is also a good thing [20:13] and assigning them to the right source package [20:14] yea for example [20:14] (eg: away from kde/kubuntu-meta) [20:14] or filing the bug upstream [20:14] if it needs to be fixed there [20:14] when you say upstream you mean debian [20:14] to bugs.kde.org? [20:14] to bugs.kde.org mostly [20:14] ok [20:15] question answered? :) [20:15] yep sry im taking this off topic [20:15] ;-) no prob [20:15] * eagles0513875 opens up launchpad.net [20:15] let's go on then [20:15] For the difficult part, simply fix the bug by patching the software in question. [20:15] More about bug triage in txwinger's talk "How to squish the besties" at 23:00 UTC [20:15] Ohhhhhhhh and now the Vista lover's favourite thing :P [20:15] I can tell you he _really_ loves this stuff! [20:16] Who knows what it is? [20:16] documentation ;) [20:16] aero? ;) [20:16] haha right [20:16] === Documentation === \o/ \o/ [20:16] Ohh I can hear him screaming YAAAAAAAAAAY \o/ [20:16] Told you! He really loves it. [20:16] Documentation is a very large task in the free software world and it is no different here in Kubuntu. [20:16] As it stands, there are about 3 or 4 of us who work on the Kubuntu documentation, with nixternal and Jonathan Jesse typically available most of the time. [20:16] With our future with KDE 4, ALL of our documentation needs to be rewritten in order to suite it. Currently all of our documentation is KDE 3 based. [20:16] We house our documentation in Bazaar which a revision control system. [20:16] Nightrose: sry for interruption again when you say patching you mean just uploading the changelog to launchpad then some senior dev takes it and repackages it [20:17] eagles0513875: mostly that is how patching works yes [20:17] well [20:17] not only the changelog [20:17] eagles0513875: you upload a diff to the bug and it gets reviewed [20:17] but also the actual fix of course ;-) [20:17] s/upload/attach/ [20:18] got it [20:18] ok :) [20:18] on with documentation then [20:18] For further information on documentation please see either of the following: [20:18] * eagles0513875 buttons mouth shut otherwise once i start talking i can shut up [20:18] * Ubuntu Documentation Project wiki - https://wiki.kubuntu.org/DocumentationTeam [20:18] * Ubuntu Documentation Project mailing list - https://lists.ubuntu.com/mailman/listinfo/ubuntu-doc (Subscription based - low traffic) [20:18] * IRC - #ubuntu-doc on Freenode (see https://help.ubuntu.com/community/InternetRelayChat) [20:18] * Ask nixternal! He likes that :P [20:18] lol [20:18] Question: Will I get the chance to learn the diffrence between a diff and a changelog later? [20:19] Forky: yes - please ask again at the end [20:19] #kde-docs as well :) [20:19] Forky: a changelog is a log of changes, a diff is the difference between 2 (or more) files [20:19] stdin++ ;-) [20:19] * eagles0513875 wonders how many people giving the lecture in here [20:19] eagles0513875: many :P [20:19] Ok you all sat back and relaxed until now, right? [20:19] yep [20:19] well sorta [20:19] aye [20:19] continue the paste flood :) [20:19] Stop it! [20:19] Here comes the hard stuff! [20:19] yeah [20:19] No more relaxing and sipping tea! [20:20] lol just cant keep my mouth shut [20:20] Actually, that was a lie, the last 2 topics are pretty easy to learn, and a total blast.... [20:20] ok now comes coffee *lol* [20:20] === Packaging === [20:20] What exactly is packaging? [20:20] I will tell you what it isn't...It isn't that sharp plastiK stuff you try to cut away to get at your new geeky toy! [20:20] i enjoyed the bug fixing minus me doing stupid stuff like pasting the fix with the backup of the diflog [20:20] changelong [20:20] If you used Adept, Synaptic, apt-get, or aptitude to install a piece of our free software, then what you have done is downloaded a package which was extracted into the proper locations within your system, ensuring at the same time that any of that applications dependencies were also installed. [20:20] What happens is you have a select group of developers who spend their PERSONAL TIME creating, editing, and maintaining Debian based packages so you can download and install them. [20:21] The reason behind PERSONAL TIME being in caps wasn't to yell at you...it was to let everyone know that will read this here and in the log files, to breathe before tearing into community members because your favorite package might be broken...bare with us, and we shall fix it for ya! [20:21] Of course, you could always fix it too, especially seeing as this is the packaging section :) [20:21] Nightrose: can i point something out about the irc channel [20:21] sure [20:21] that channel is made up of volunteers and patience is necessary [20:21] indeed [20:22] very much needed [20:22] as ubottu will testify to :) [20:22] if someone knows how to help fix your problem they shall assist you if not just wait a while and repost ur issue [20:22] and also ubottu is a bot [20:22] ;-) yes [20:22] be patient [20:22] i have seen a number of people talk to him and not realize he is a bot [20:22] people might not be around all the time [20:22] eagles0513875: I know it is, I'm rewriting the bloody thing ;) [20:22] but they will get to your problem eventually [20:22] if they know how to fix it [20:23] sry for the deviation [20:23] stdin: surely you mean "soldery" [20:23] no prob - that was useful ;-) [20:23] :) i dont know how many people who come in there and cannot be patient [20:23] What should you know if you are thinking about packaging? [20:23] Requirements include: [20:23] * Familiarity with the command line [20:24] * Ability to download, extract, configure, build, and install a tarball (file.tar.gz and such) [20:24] * Familiarity with Debian based packaging scripts and utilities (pbuilder, dh_make, dh_install, and more) [20:24] eagles0513875: may because people think we are canonical employees/ [20:24] * ls, cd, mv, mkdir, rm, man, info, dget, wget, tar and a few more....easy stuff! [20:24] leleobhz: thank god for !patience command wiht the bot [20:24] * wget http://foo.com/bar.tar.gz && tar -xf bar.tar.gz [20:24] eagles0513875: ;] [20:24] * dh_make, debdiff, lintian, pbuilder, dh_install, debuild, dput, and more.... [20:25] Still not overly difficult! [20:25] More information on packaging can be located at https://wiki.ubuntu.com/MOTU. [20:25] canEvevrin [20:25] Also don't forget to catch the packaging talk at 21:00 UTC by our favourite Riddell :) [20:25] Nightrose: can i talk to you in private bout motu after this [20:25] yes [20:25] ty [20:26] ok and now the last and hardest of all things I am going to talk about today ;-) [20:26] === Coding === [20:26] ahhhh ya! the fun stuff that will fry your brain ;-) [20:26] yeah my favourite part [20:26] nice! [20:26] Are you an elite coding ninja? [20:26] A code monkey? [20:26] no [20:26] and no [20:26] A CS student just learning how to code? [20:26] lol sounds like me but not cs [20:26] Yay, coding [20:26] cs? [20:26] computer science [20:26] COmputer science [20:26] anything else that has to do with coding? :P [20:26] counter strike? :p [20:27] bsc computing information systems major [20:27] (don't take code monkey in the negative way! We love monkeys ;-)) [20:27] stdin: uhhh hrrrhrrr :D [20:27] !ot | stdin [20:27] stdin: #ubuntu is the Ubuntu support channel, #ubuntu+1 supports the development version of Ubuntu and #ubuntu-offtopic is for random chatter. Welcome! [20:27] :p [20:27] coding as a hobby? [20:27] haha [20:27] stdin: :p [20:27] Quite some stuff needs to be coded or ported to KDE 4. So help is welcome and needed. To find out what you can do talk to Riddell. [20:27] sry get carried away with the bot sometimes [20:27] There are coding projects available for various types of coders. [20:27] C++ and Python are our 2 main languages here at Kubuntu and if you have any experience we should have something for you. [20:27] Nightrose: in regards to coding what is the best way to get experience [20:27] it's worth mentioning that quite a lot of Ubuntu and Kubuntu programming is done in Python these days, and Python is quite easy to learn. so *Anyone* can give it a go! :) [20:28] coding ;-) [20:28] really [20:28] wow.. python ;) [20:28] you need to do it [20:28] not understanding what u mean [20:28] you can see many of the coding jobs to be done at https://wiki.kubuntu.org/Kubuntu/Todo [20:28] thx Riddell :) [20:28] * apachelogger notes that he codes in ruby :P [20:28] eagles0513875: you need to actually code so you get practice [20:28] start with something easy [20:29] and then take on harder stuff [20:29] * eagles0513875 notes that he's not getting enough visual c++ studies done to truly get into this stuff [20:29] what is something easy? [20:29] i tried that with bug fixing and every bug i found i wasnt really able to fix [20:29] Nightrose: talking about development [20:29] yea then check out the todo page and see if something interesting is there [20:29] lucky for us Qt and KDE are lovely tool kits to use :) [20:29] :) [20:29] a qt4 network manager gui should have the highest priority [20:29] leleobhz: ? [20:30] Nightrose: im not a ubuntu devel (want to be) [20:30] eagles0513875: GO get KDiamond4.2 source and implement an undo function, I get annoyed when i can't undo stuff [20:30] but its not in the todo list [20:30] Nightrose: and i have a lot of skill in debian packaging [20:30] leleobhz: sounds great [20:30] leleobhz: then your niches is in the pkgs dept [20:30] Nightrose: have some way to help, except by revu? [20:30] HappySmileMan, its just matter of time... and taking it easy... you cant code well if you are stressed [20:30] leleobhz: become MOTU [20:30] apachelogger: im on the road [20:30] :] [20:30] wohooo [20:31] leleobhz: perfect [20:31] very good [20:31] leleobhz: if you need help .... poke me until I answer :) [20:31] but im starting now with the projects [20:31] i have 2 submits to revu being considered [20:31] santiago-ve: Yeah was kinda joking, though i might take a shot at it myself, I've already done some coding for KDiamond [20:31] * eagles0513875 poke apachelogger [20:32] leleobhz: poke apachelogger for a revu then ;-) [20:32] Nightrose: guessing thats it lol :p [20:32] ok on with the coding? [20:32] leleobhz: if it's KDE (or qt) stuff you can poke this channel for people to review it [20:32] nice [20:32] hi :) almost overslept, phew [20:32] Do you have a project in mind? [20:32] If so, then come to one of our regularly scheduled developer meetings and place your ideas on the agenda for that meeting. [20:32] https://wiki.kubuntu.org/Kubuntu/Meetings -- Keep an eye on this page or http://fridge.ubuntu.com to see when our next meeting will be [20:32] Riddell: im doing some random things.... [20:32] Who knows, maybe you can twist some arms to get your idea developed and included in the next release, and future releases, of Kubuntu. [20:32] but i really love kde ;] [20:33] soooo and now lets get to.... [20:33] KDE BEST DESKTOP ENVIRONMENT [20:33] = Conclusion = [20:33] eagles0513875: WOOOOHOOOO! :] [20:33] YES! I KNOW YOU ALL JUST SAID "THANK GOD IT IS FINALLY OVER!!!!" [20:33] KUBUNTU BEST DISTRO AROUND [20:33] thats the conclusion [20:33] :p [20:33] I would like to thank each and every one of you for attending this talk. [20:33] eagles0513875: and kubuntu-kde4 mod too ;] [20:33] I hope it wasn't to boring for you and that you are now ready to explode with questions, comments, and ideas. [20:33] thanks a lot Nightrose, good work :) [20:34] * ubunturos applauds [20:34] Nightrose: i have a question [20:34] Thanks again and if you have any questions, please do not hesitate to ask, and comments and ideas can be fired my way as well. [20:34] * eagles0513875 claps [20:34] gah... brb... phone [20:34] * leleobhz applauds [20:34] yeah, thanks [20:34] COMMUNITY! [20:34] COMMUNITY! [20:34] COMMUNITY! [20:34] ;-) [20:34] Nightrose, thanks to you [20:34] DEVELOPERS DEVELOPERS DEVELOPERS? :p [20:34] was nice [20:34] :) [20:34] * leleobhz runs ;] [20:34] :p [20:34] * carl says thanks [20:34] * ubunturos points, jono loves that word ;) [20:34] thanks folks [20:34] Thanks Nightrose :) [20:34] ok... [20:34] Nightrose: thanx [20:34] now on to the questions [20:34] Nightrose: what if i want to setup a repository in my area how can i do that and keep it updated with the main canonical servers [20:34] Question: How often can tutorials days be held / conducted over IRC? (By uestion to Core Developers / Main contributors to Kubuntu) [20:34] * GreySim was just gonna say, "It's Jono's evil twin!" [20:35] let's make it easy [20:35] one at a time [20:35] Nightrose: what if i want to setup a repository in my area how can i do that and keep it updated with the main canonical servers [20:35] How about kde 4.0 and 4.1 in kubuntu? [20:35] eagles0513875: not possible with launchpad right now [20:35] if I understand correctly what you are trying to do [20:35] eagles0513875, you mean local mirrors of ubuntu/kubuntu? [20:35] what is the policy about pacages releases? [20:35] ahhhh [20:35] a mirror... [20:36] Nightrose: what techno_freak [20:36] leleobhz: what do you mean exactly? [20:36] yea that is possible [20:36] there should be a howto on the ubuntu wiki [20:36] we can search for it later [20:36] stdin: if kubuntu ill stay in sincronism with kde.org versions [20:36] Nightrose: i do actually have a complaint about the wiki [20:36] eagles0513875, you can mirror the main repos and maintain it for your local region, that is not hard to [20:36] and about kde 4.1 release [20:36] how it ill be [20:36] Intrepid will ship KDE 4.1.2 [20:37] ubunturos: as often as we fell like it - once every 6 month would be cool [20:37] even if it still unstable? [20:37] leleobhz: well we use the PPA to backport releases from the current development version (intrepid) to the current stable version (hardy) [20:37] Nightrose: hmm, :) [20:37] What happened with nixternal ? [20:37] Nightrose: may i pst u [20:37] ubuntulog, once around every release, if am right [20:37] stdin: i know, im using ppa to use 4.0.5 [20:37] BiNaRi0: hes on vista lol [20:37] eagles0513875: yes - will answer later [20:37] 4.1 packages will be available for Hardy when it's out right? [20:37] ubunturos, once around every release, if am right [20:37] stdin: but i want to know how it ill be in official repositories [20:37] BiNaRi0: he is busy with something else [20:37] leleobhz: we try to stay as up-to-date with upstream KDE as possible (mostly with stable releases) [20:38] yes, on PPA HappySmileMan [20:38] stdin: on main or hardy-proposed? [20:38] techno_freak: I guess, that happens with Ubuntu Open Week. Kubuntu specific would help more, I guess. [20:38] HappySmileMan: they are already [20:38] HappySmileMan: beta 1 [20:38] leleobhz: they go into hardy-backports if they get into the official repos [20:38] ubuntulog, both have similar release cycles, if am not wrong [20:38] ubunturos, ^^ [20:38] stdin: nice [20:39] and for intrepid, 4.1 in main? [20:39] Nightrose: has it ever been considered to take the ubuntu server kernel which im gathering is more light weight and implementing it in the desktop versions [20:39] leleobhz: I think ist 4.1.2 [20:39] Nightrose: I'm running Beta 1, but I had to add some repository for it, will the 4.1 ones be default? [20:39] leleobhz: yeah, it's going to be default for intrepid, so we need to get it into main [20:39] Shall nixternal give a tutorial ? [20:39] eagles0513875: no idea, sorry [20:39] Nightrose, what are good books to learn KDE/Qt and Python programming? [20:39] HappySmileMan: for intrepid [20:39] kubuntupedia: google dive into python [20:39] nixternal is away (golfing I think) [20:40] kubuntupedia: its a free open source book available for dl [20:40] Ah ok === Aides is now known as man[afk] [20:40] eagles0513875: why do that when one can just apt-get install it? [20:40] thank you [20:40] lol, golfing is more important than kubuntu tut day? [20:40] there's also a pyqt4 book which should be linked to from riverbankcomputing [20:40] dwidmann: would that involve having to add it to grub [20:40] riverbankcomputing also has several pyqt4 tutorials that it links to from its wiki [20:40] clinx: it's fathers day and he's with all the fathers of the family. so family is more important, yes ;) [20:40] kubuntupedia, dive into python if you are comfortable with top-down programming, otherwise something called "how to think like a computer scientist" which is good for starters [20:41] eagles0513875: no, that would involve cd'ing to /usr/share/doc/diveintopython/ with your webbrowser :P [20:41] kubuntupedia: Tutorial, might help too [20:41] Does have another person to replace nixternal ? [20:41] dwidmann: ? [20:41] BiNaRi0: yes me :P [20:41] BiNaRi0, Nightrose did it [20:41] ok [20:41] !info diveintopython | eagles0513875 [20:41] eagles0513875: diveintopython (source: diveintopython): free Python book for experienced programmers. In component main, is optional. Version 5.4-2ubuntu2 (hardy), package size 340 kB, installed size 4220 kB [20:42] Is the python plasmoid tut still on or were the packaging issues not resolved? [20:42] i have a really stupid question [20:42] leleobhz: yay! [20:42] s/were/are [20:42] actually network manager is kde3 app [20:42] leleobhz: there are no stupid questions ;-) [20:42] dwidmann: guessing my suggestion to put into repos was taken into consideration [20:42] and it runs into kde4 [20:42] just stupid answers [20:42] yes [20:42] eagles0513875: it has been there for a long, long, long time [20:42] if you can ask a question, you aren't stupid ;) [20:42] Nightrose: could you give example of very well written applications (qt4, KDE), with possibly commented source code, so it would be easier to learn from a good example ? [20:42] so i have to open 2 wallets when i log on, and some amount of libraries being up [20:42] dwidmann: always go to the sight [20:42] so [20:43] it uses the kde3 libs on the kde4 desktop, just like a gnome app uses the gnome/gtk libs [20:43] carl: hmmm not really sorry - maybe Riddell can - or stdin [20:43] the kubuntu kde3 apps like this may have a qt4/kde4 version? [20:43] To pick up the question out of the description: What's happening in Intrepid and how can we join? [20:43] carl: for pyqt you can apt-get source python-qt4 [20:43] there's a good number of examples in the examples directory [20:43] python-kde4 also has some [20:43] leleobhz: when we port it [20:44] Nightrose: is there a list on the wiki for those who want to become bug fixers on what they need to install [20:44] stdin: may be on intrepid? [20:44] hopefully [20:44] thanks Riddell, and for c++ ? [20:44] Nightrose: on their machines to be able to bug fix [20:44] judith_ie: come here after the tutorial day and ping me ;-) [20:44] I'll admit this is a lazy question, but I'm hoping to get away with it since it's question time; does PyQt have bindings to all the neat Qt 4.4 stuff like WebKit? [20:44] nichtrose: i thought this was the main topic of this section :P [20:45] eagles0513875: you mostly only need the apps you triage for - if you want to fix bugs you need to have a look at the packaging howto [20:45] GreySim: The python-qt4 packages in the kde4 ppa are needed for webkit [20:45] GreySim: yes, I'll cover that in the pyqt tutorial [20:45] Nightrose: ok [20:45] So is the plasmoid tutorial still on? [20:45] HappySmileMan: I see new package in the ppa ;) [20:45] carl: in my experience the best way is to find a smallish programme and find a bug in it that annoys you and fix it [20:45] amazing how fast you learn to read the code when it annoys you [20:45] heh [20:46] * techno_freak starts waiting for seele [20:46] thank you Riddell, the next bug is for me :) [20:46] judith_ie: what exactly do you want to know? switch to KDE 4 is the main thing we need to do for intrepid - if you want to help check the todo and see if there is stuff you are interested in :) [20:46] that's how I fixed some perl script actually, it annoyed me and I "learnt" to fix it [20:46] Unfortunately no, I don't think I'll be able to do the plasmoid tutorial session... maybe a bit later I can do a separate session on it. [20:46] stdin: What's the package name? [20:47] * nosrednaekim apt-gets the new package too :P [20:47] HappySmileMan: should be pulled in by python-kde4 [20:47] question: will you patch the kde4 packages in intrepid? [20:47] Ah, forgot to apt-get update [20:47] clinx: there will always be patches ;-) [20:47] Nightrose: can i make a suggestion [20:47] sure [20:48] python-kde4 isn't pulling anything in [20:48] Nightrose: I am busy with advocacy. I have started http://kubuntupedia.com/ , what should I discuss on this website? Besides a review, KDE, installing packages (e.g. Firefox)? [20:48] it would be kool to setup an audio stream and record the sessions and people who want to listen can just tune into the stream and ask questions in here [20:48] clinx: if we need to (and we probably will) [20:48] also can i point out to those who are new to kubuntu and linux in general im working on a website with simplified how to's [20:49] kubuntupedia: nice :) mind if I have a look at it later and give you some tips? [20:49] kubuntupedia: Easy ways to get Flash, Java, Audio and Video plugins and stuff working... [20:49] I use ARch and there are Vanilla KDE4.1b1 packages and they work much better than the packages by nixternal (sry richard) [20:49] HappySmileMan: install libkrosspython0 and python-kde4 [20:49] I know there's kubuntu-restricted extras but not everyone knows about it [20:49] nightrose: that would be great. Thank you in advance. [20:49] :) [20:49] Nightrose: want my website as well not much on there right now just a forum [20:50] sure [20:50] :) [20:50] Nightrose: mine is geared to the total linux noob with simplified how to's [20:50] Nightrose: http://howtokubuntu.x10hosting.com [20:50] ok :) will have a look later [20:50] ok, nightrose. I am mainly interested in usability and artwork, so i guess i could just wait ten minutes for the next topic :D [20:50] judith_h: exactly ;-) [20:50] Nightrose: u have to register [20:51] kubuntupedia, checkout what zelut does with ubuntu-tutorials too, for some idea :) [20:51] ok [20:51] ah yea [20:51] ok cool [20:51] he is good [20:51] Nightrose: right now im having issues with emailing confirmations so if u sign up im going to have to activate ur registration [20:51] ok [20:51] kubuntu-restricted extras ? sorry but What it includes? [20:51] pc_master: mp3 codecs for example [20:52] so amarok can play mp3s [20:52] judith_h, wow, i have some company for the next session ;) [20:52] and some video codecs if I am not mistaken [20:52] "Installing this package will pull in support for MP3 playback and decoding, Java runtime environment, Flash plugin, DVD playback, and LAME (to create compressed audio files)" [20:52] ah [20:52] thx stdin [20:52] Nightrose: i know this has gotten outa control can you explain what goes in each repository [20:52] pc_master: ^ [20:52] also RAR archive support [20:52] eagles0513875: there is a nice wikipage on that too - i will try to find it for you later [20:53] Nightrose: ok lol [20:53] !repository [20:53] The packages in Ubuntu are divided into several sections. More information at https://help.ubuntu.com/community/Repositories and http://www.ubuntu.com/ubuntu/components - See https://wiki.ubuntu.com/RecommendedSources for the recommended way to set up your repositories [20:53] techno_freak: in usability or in artwork ;) [20:53] thanks nosrednaekim [20:53] haha thanks nosrednaekim [20:53] judith_h, usability :) === ubunturos_ is now known as ubunturos [20:53] another point about the irc is that each language has its own channel [20:53] yea [20:53] main channels are english [20:54] kubuntu and ubuntu is strictly english any other channel just use the bot short cuts like this [20:54] and then there are localizedo ones [20:54] !es [20:54] En la mayoría de canales Ubuntu se comunica en inglés. Para ayuda en Español, por favor entre en los canales #ubuntu-es o #kubuntu-es. [20:54] apachelogger: I think you broke python :( [20:54] like #kubuntu-de [20:54] thats for spanish and the other languages follow accordingly [20:54] techno_freak: very good. I've already put an eye on a project but I jdon't really know where to start ;) [20:54] judith_h, same here [20:54] ok folks.... [20:54] * apachelogger smacks stdin and gets super angry [20:54] Nightrose: will you be on tomorrow or for a while [20:55] judith_h, waiting to catch hold of seele to get some idea to start [20:55] apachelogger: ok, not broke, just cracked [20:55] I think it is time fo seele!!!! [20:55] ;-) [20:55] * eagles0513875 smacks apachelogger [20:55] eagles0513875: yes [20:55] apachelogger: sup bro [20:55] Nightrose: ill be back cuz i need to grab dinner [20:55] ok [20:55] techno_freak: so that means we are both in company to leave the newbie level asap :P [20:55] Nightrose: i get 5 more minutes :) [20:55] thank you everyone for coming and asking interesting questions :) [20:55] judith_h, righto :P [20:55] haha ok seele [20:56] Nightrose: doubt you will be able to start the next session cuz nobodys goign to stop asking them questions [20:56] ;-) [20:56] Nightrose: This was a quality time [20:57] Nightrose: another random question if i find some bugs would you be willing to mentor me on em [20:57] :) thanks MrLimeni - I enjoyed it as well [20:57] i enjoyed as well [20:57] eagles0513875: depends on how much I know about them but yes [20:57] Nightrose: :) [20:58] * eagles0513875 after dinner or tomorrow going to setup my machine to go back to bug fixing [20:58] Sorry if this was mentioned earlier, but what channel would I go to for KDE 4 Kubuntu support? Just #kubuntu? Or is there a KDE 4 specific channel? [20:58] GreySim: #kubuntu-kde4 [20:58] Ah, thanks. [20:58] :) [20:58] Nightrose: whats the link to the page that tells me everything i need to bug fix [20:58] i know i need a key [20:58] chroot environment [20:58] !packaging guide [20:58] The packaging guide is at http://wiki.ubuntu.com/PackagingGuide - See https://wiki.ubuntu.com/UbuntuDevelopment/NewPackages for information on getting a package integrated into Ubuntu - Other developer resources are at https://wiki.ubuntu.com/UbuntuDevelopment - See also !backports === Kopfgeldjaeger2 is now known as Kopfgeldjaeger [20:59] nothing compares to kubuntu i have open suse 10.3 and that thing is a beastly resource hog [21:00] Nightrose: none of those links are it [21:00] Nightrose: talk to you when i get back [21:00] * eagles0513875 grubbage time [21:00] hmm yea [21:00] thanks very much Nightrose [21:01] :) you're welcome [21:01] * apachelogger applauds [21:01] * techno_freak applauds [21:01] * Nightrose bows [21:01] our next speaker is one of KDE's top talents [21:01] :P [21:01] Thank yo very much Nightrose, interesting talk! [21:01] * ubunturos thanks Nightrose, for keeping it simple :) [21:01] * BiNaRi0 recently to read the Nightrose Tutorial [21:01] Thanks Nightrose [21:02] celeste is very handy for asking usability questions to when we develop apps [21:02] * clinx added Network Manager to Todo List [21:02] yep [21:02] so.. usability time [21:02] who here is for the usability talk? [21:02] \o/ [21:02] * dwidmann lurks [21:02] * techno_freak raises his hand [21:02] :) [21:02] * katastrophe is [21:02] hi [21:02] take it away seele [21:02] o/ [21:02] is too [21:02] * kekekek is too [21:02] I'm here for all of them, but this was the one I was looking forward to the most. [21:02] * ubunturos is, but has not much clue about what it is going to be like. [21:02] * Sanne also [21:02] * BiNaRi0 also [21:03] apachelogger: the module PyKDE4 has nothing in it, but you can still import PyKDE4.kdecore et all [21:03] * Pau1us is too [21:03] * carl is too [21:03] ok.. so just a little about myself first [21:03] * HappySmileMan is here for all of them, mainly plasmoid one [21:03] me too! [21:03] seele == Celeste Lyn Paul (celeste@kde.org) [21:03] i'm on the kubuntu council and have been working with kubuntu for about 2 years [21:03] * stdin waits for the Usability session with seele [21:04] i manage the KDE usability project and have been working with kde for about 4 year [21:04] i am a usability/design mentor for the OpenUsability Season of Usability project [21:04] and also work as a designer in my Day Job doing pretty much the same thing i do here [21:04] http://behindkde.org/people/celeste/ [21:05] what is it that i do? well, i try to make floss software (particularly the KDE flavor) easier to use [21:05] i do research, design, and testing, but also work very closly with developers as they are coding [21:05] so i imagine many of you have heard of this usability thing already.. or else you wouldnt be here [21:05] :D [21:05] (or you think Jonathan's catchy subtitle to my talk was funny) [21:06] seele: which company are you working for? [21:06] Earthwings: User-Centered Design, Inc. is a small human factors engineering and design firm in the Washington, DC area [21:06] [21:06] Is it just about removing options? [21:06] seele: no but even though it's funny ;) [21:06] I am Senior Interaction Architect, i manage projects and designers to get stuff done [21:07] yes, i will get to the part about removing options or whatnot soon :) [21:07] anyway.. in 20 words or less, what do you guys think usability is? (and no cheating on wikipedia) [21:07] Ease of use [21:07] seele: what about cheating with other dictionaries/etc? [21:08] make it as the user wants it to be.. [21:08] dwidmann: no cheating period! [21:08] allowing 'humans' to use an OS based on intuition [21:08] making it so you can find stuff on demand [21:08] focused on the user including research about what kind of users an appl. has. [21:08] s/OS/OS apps [21:08] Making things easier to use for the majority of users [21:08] get stuff done i want to do in shortest amount of time [21:08] make all applications "work like" each other [21:09] not just for majority for all users offcourse [21:09] make the software options and it appearance intuitive :) [21:09] ok.. so it seems like many of you have a partial picture of usability [21:09] the users do not need extra brains to use the app [21:09] research about the way humans percieve things [21:09] Making the interface disappear and letting the user focus solely on the task. [21:09] lol@techno_freak [21:10] * _gunni_ now also listens after reading over the previous lesson [21:10] (Not *literally* disappear. Just seemingly.) [21:10] making all options and functions easy to find and use [21:10] techno_freak:sounds like you had a couple bad experiences [21:10] if we take this from an ISO standard, usability means that a product must be 1) learnable, 2) efficient, 3) memorable, 4) prevent errors, 5) and be satisfactory to users [21:10] 1) learnable [21:11] this is the one no one usually picks when i ask the "what is usability" question [21:11] a product (in our case software) doesn't have to be so easy that you don't have to learn it [21:11] it is all relative [21:11] so if users expect errors its good usability?:-) [21:11] (no you want to prevent errors) [21:12] for a simple task, then you expect it to be simple [21:12] but for a complext task, it is OK to expect learning [21:12] you guys have all heard of a learning curve, correct? [21:12] sure [21:12] Aye. [21:12] the apex of the curve is relative to how complex a system is [21:12] ya [21:12] I certainly hope so [21:12] yes, specifically Windows-to-Linux users ;) [21:12] so for example, printing a document is a pretty simple task [21:13] so you would expect no learning, or very little learning to be able to do that task [21:13] makes sense, yes [21:13] but something more complex like photo or imagine manipulation is degrees more complicated [21:13] if only coding could be as simple... [21:13] and so it is OK if the user can't make a masterpiece at their first time sitting down with krita, gimp, or photoshop [21:14] you wouldnt want someone dumbing down an air traffic control board just because the goals was "anyone" should be able to use it [21:14] air traffic control is a very complex system, and in order to take advantage of the technology, some learning is reasonable [21:14] Forky: start off with an easy language like python and work your way up? [21:14] 2) efficiency [21:15] this probably shouldnt be #2 even though it is listed in the ISO spec this way, because it is related to learnability and memorability [21:15] but it is exactly what the word means.. an appropriate use of time and resources in relation to the complexity of the system [21:16] even if you made a simple printing function an easy to use 10 step wizard.. it isn't very efficient if you need to do that every time you print [21:16] clicking one button will get the same amount of work done than stepping the user through all the options and clicking 10 [21:16] 3) memorability [21:17] this i think should be #2 because it is closely related to learnability [21:17] have you guys ever heard of the term information scent? it is an information science theory === txwikinger2 is now known as txwikinger [21:17] not I [21:17] not me [21:17] i heard [21:17] no [21:17] I have not. [21:17] * seele watches everyone look up "information scent" on wikipedia [21:18] from my profesor of SE [21:18] * judith_h didnt [21:18] Not I either [21:18] :) [21:18] how to find the right information that people want? [21:18] i would need to translate... [21:18] information scent is a search behavior theory [21:18] information is date that have quality [21:19] information scientists believe we search using the "gathering" skills of our "hunter-gatherer" basic instincts [21:19] what it turns in to from a UI perspective is how easy it is to find information (functionality or options) from it's surface presentation [21:19] so.. what options you expect to be under menu X before you open menu X [21:20] so ii'ts like pointer maps and layout then? [21:20] by having good information scent (good labels, structure, etc.), you can use the UI more efficiently because you can stack layers of information [21:20] Forky: sortof, yes [21:20] yeah... its strange that quite every app has a "file" menu even there is nothing related to filehandling :p [21:20] basically you are leaving hints to the user to find the information on their own [21:21] they don't need to Remember where options are, but only follow a logical path [21:21] this saves the user's cognitive resources to go on and solve more complex problems [21:21] ah ok yes the translations do it not justice [21:21] konversation for example has a file menu [21:21] instead of using them on the UI [21:21] it makes sense [21:21] remember that a UI is a tool to solve a problem, the UI shouldn't be the problem [21:21] like in Ubuntu, When i wont to start PIDGIN...i go to "Applications" "Internet" [21:22] and there it is :) [21:22] #4 error prevention [21:22] Is that also like the order of Cancel and Confirm buttons? As a Gnome defector, the reversed order keeps tripping me up. :P [21:22] GreySim, no, that's a separate issue :-) [21:23] have any of you guys heard of jef raskin? [21:23] Information scent is more about organization and categorization and naming of categories [21:23] no, never heard before [21:23] no [21:23] like Windows >start to turn of:-) [21:23] he was a famous designer who worked at apple (i think he was employee #12 or something close) [21:23] * GreySim has heard of him. [21:23] he was a true user advocate in the sense that he believed no matter what the circumstance, the computer should do no harm [21:24] also, many of you are probably familiar with the practice of confirming actions, particularly destructive ones, yes? [21:24] * GreySim is. [21:24] yes [21:24] error prevention is more than just confirming a destructive action [21:24] yep [21:24] it is preventing the user from having to make that decision to start with [21:24] we dont see this too much in the desktop environment because we model a lot of our workflows off of existing software [21:25] but i see this a lot in other expert systems [21:25] "Are you really sure you want to do that? It will cripple the system and you will lose all of your data" [21:25] (Well then, the user should have never been able to choose that option from the top level of a UI) [21:26] even so, there are a lot of confirmations we do in the desktop environment which could be prevented if we shaped the workflow differently [21:26] the user should never have to select Cancel [21:26] the last part of the Usability ISO standard is satisfaction [21:26] #5 satisfaction [21:26] (keeping it consistent ;) [21:27] satistfaction is the quality many people tend to identify with usability [21:27] * _gunni_ uses linux also because of having the choice to do a rm /* -f [21:27] but it is also the last dimension in the spec (and i believe the least important of all we've talk about) [21:27] satisfaction is important. if a user finds a system pretty or cool, they will want to use it more than the other system that is not [21:28] users will sacrifice ALL of the other parts of usability (learnability, efficiency, memorability, error prevention) for satisfaction [21:28] our goal is to help them not make sacrifices [21:28] ive seen users in usability tests take 3, 4, 10 times longer to complete a task in a terrible UI that looked pretty [21:28] and complete the same task in a different not-as-pretty UI much much faster [21:29] and they still like the pretty UI [21:29] this is an advantage and disadvantage: it gives us room to experiment because users will be forgiving if we give them options they want or other cool toys [21:29] but at the same time, we should use eye candy as a crutch to solve problems. we should solve problems and make our solutions beautiful [21:29] one part of satisfaction is that we the community thank you for not getting rid of our config files while also having gui ways of doing things [21:30] so.. any questions so far? [21:30] "we should use eye candy as a crutch to solve problems"? [21:30] er.. *should NOT [21:30] thanks for the correction [21:30] * seele can't wait to hear the comments when people read the logs.. [21:30] Ok, was confused :P [21:30] wow.. halfway through already [21:30] erm, ummm, I hope that's not why KDE4 is so pretty :P [21:30] haha [21:31] so, ease of learning and memorability is more important than pretty UI :) [21:31] yes [21:31] in fact i would love to have examples of improvements made to applications so they respect more these principes [21:31] oh, on the topic of learning [21:31] have you guys ever heard of a one-time learning event? [21:31] Nope. [21:31] <_gunni_> no [21:31] ok [21:31] no [21:31] yes [21:32] carl: take a look at konqueror 3.5, then look at konqueror 4.0 (the menus) ... they make so much more sense [21:32] no [21:32] often when you are reviewing a new ui or workflow, one of the questions you may ask yourself is "will the user figure this out" [21:32] and the first time around, sometime the user doesnt. they can't find the options, they don't know the label, they can't figure it out. [21:33] BUT.. if they have someone show them how to do it, they find the solution on a webpage, or painfully figure it out, it makes sense to them and they remember it for next time [21:33] I think, that it's possible to give users both (preety UI learning memorability) [21:33] we call this type of experience a one time learning event [21:33] they won't figure it out the first time, but if they can do it once, they will remember how to do it [21:33] this is something that is often forgotten in UI design [21:34] the question is: is the user motivated to figure it out [21:34] yes, that is another question [21:34] you can break users out in to different dimensions.. one of them being problem solving skills and related motivation [21:34] some users are not afraid to try something and fail [21:34] other users will not try new things in fear of failing [21:35] the users who do not explore are at risk of never exploring options hidden behind a single-learning event [21:35] failing doesnt break x so often anymore :) [21:35] Some users may have failed something in the past and had it gone so badly they will never try it again. [21:35] that is why doing user research on your product and understanding who your users are, their motivations, environment, and their skill (it's not JUST about their skills) is important [21:35] * GreySim will never again try resizing a partition without backing it up first. [21:36] this leads me in to a discussion about universal usability [21:36] GreySim: about that cancel|confirm order, I think that can be changed (appearance, styles, configure ... may be an option for gtk button order depending on which style you're using.) [21:36] has anyone heard this term before? [21:36] no [21:36] * GreySim hasn't. [21:36] * seele watches the wikiers [21:36] no [21:36] universal usability? sounds like a myth [21:36] haha [21:36] almost [21:37] dwidmann: Thanks. Makes sense, considering QGTKStyle or whatever it's called can do it. [21:37] You can never make everybody happy, and the moment you do, there will be someone who decides they are unhappy just to spite you [21:37] universal usability is the belief that any user, no matter their skill, background, motivation, experience, etc. should be able to pick up and use a product [21:37] GreySim: I saw it for the qtcurve style, if you're interested [21:37] in cases where products must serve the general public (such as evoting machines), this could be a valid argument [21:38] wait a sec let me go get grandma [21:38] but there are very few products that focus on EVERYONE [21:38] the holy grail:-) [21:38] even so, the concept of universal usability would be extremely difficult to achieve [21:38] Ipods:-) [21:38] especially in expert systems or systems which knowledge workers use [21:39] the ipod. why does everyone use that as an example of universal usability.. [21:39] seele: for lack of better example? [21:39] because it's close by? [21:39] the ipod is an excellent example of very sexy tech that people forgive its shortcomings for [21:39] huh [21:39] it doesn't do everything everyone wants, and not everyone can use it or figure it out [21:39] i didn't mean it like that Seele [21:40] but because it is so damn beautiful, most people dont care [21:40] I used an Ipod for the first time just a couple years back.... I couldn't figure it out for the life of me :P [21:40] i like my ipod, but i wasn't born how to use it (and even now make mistakes trying to find options) [21:40] anyway.. [21:40] ipod gives up options for ease [21:40] Nightrose: [21:40] universal usability [21:40] * judith_h thinks that the touch is pretty good to use [21:41] universal usability forces designers to lower the bar of the average user to accomodate more people [21:41] but apple sure puts alot efforts into usability [21:41] this is why it hurts expert systems [21:41] if there is a pocket of experience or information that a certain group of users may not have or be able to attain, it must be removed [21:42] yes, but apple traditionally does not follow a user-centered design approach. they believe that designers know better [21:42] why not just move it out of the way instead of removing it? [21:42] it's only been recently that they've done usability testing.. everything before was market research (which is very different) [21:42] What about systems with configurable complexity? [21:42] * GreySim imagines soon will be a good time to quote Einstein. "Make everything as simple as possible, but not simpler." [21:42] Traveler87, they usually fail at great expense [21:43] mpt: why? [21:43] seele, with 15 mins more, can we get with contributing to usability in kubuntu/kde? :) [21:43] dwidmann: that is a possibility. this will help expert users retain their expert options, but not get in the way of other types of users. [21:43] techno_freak: yes, sorry.. this is taking much longer than i thought [21:43] anyway.. there are three domains of usability i work in: User Research, Design, and User Testing [21:43] together, these are part of the user-centered design process (UCD) [21:44] it is a design philosophy which keeps users in mind while creating a system for them [21:44] User Research is often linked to the Requirements stage of software development [21:45] so when you developers are thinking of new features to integrate in to a software, or a new software to develop from scratch, here are some things you should be thinking of in addition to your functionality spec and other things [21:45] Who are your users? [21:45] katastrophe, because people underestimate (out of fear) or overestimate (out of ego) the level of complexity that suits them; they need Just That One function that is in the next level up; when they switch between levels they have to relearn lots of the interface; and it's harder to provide help and tech support to users who might be in any of several levels of complexity. [21:45] try to come up with some example users who you are building the software for [21:46] even if you are a user, try to keep yourself out of the list, it makes it too easy to do what you want instead of what they need [21:46] What will you users be doing? [21:46] Nightrose: can i make a suggestion [21:46] too many times, not all of the functionality is documented or fully planned [21:46] eagles0513875: after the talk is better :) [21:46] a single function might be discussed and mapped, but the other functions of a system aren't thought of until afterwards [21:47] what happens is you dont have a complete picture of how your users are using the system, and if the functions are integrated properly [21:47] katastrophe, and also because providing the multiple levels *in itself* makes the interface more complex (and more annoying, if it asks at startup which level you want). [21:47] mapping out screen flows before you begin coding will help document your functionality (so you aren't trying to squeeze or force options in later) and give you a reference for when you code [21:47] What problem are you trying to solve? [21:47] the users might be ending wanting to keel you... or as mpt katastrophe~ [21:48] This is the big one, your Vision Statement [21:48] ok thanks mpt [21:48] having an idea of your goals before you start will help development. it is related to the "What are my users doing?" question [21:49] if you don't know what problem you are trying to solve with your software, you can't know what to provide users or what they will expect [21:49] plus, in larger projects, it is a good idea that all the developers are on the same page [21:49] it prevents a lot of roadmap issues later on [21:49] any questions so far? [21:49] yes [21:50] seele, what is the worst example of usability you have ever seen? [21:50] being able to answer those three questions will give you a head start. on kde techbase there are user research templates to help guide you [21:50] and the best of course ;) [21:50] judith_h: hmm.. well there is a classic screenshot of a dialog with about 100 widgets and matching labels squeezed on to a configuration dialog [21:50] but i will give a more realistic example [21:50] ouch [21:51] i think usability involves much thinking then... what are the easiest ways to gain something? i already had a look at the kde interface guidelines, but the arent complete sadly [21:51] seele, i have seen those templates, what if i want to do a contextual interview kinda keeping that am not the developer but want to help the dev by doing UI reviews/tests for him? [21:51] it's like the magic roundabout in england, have you ever seen thisß [21:51] hmm.. too many questions not enough time [21:51] techno_freak: yes, that is a very good way to help them [21:52] ok.. i guess we will get in to open source usability 101 now.. [21:52] first step: contact the project you want to work with and express interest in working with them [21:52] could just continue this in another channel, created for just that purpose [21:52] you dont want to surprise developers by dropping a usability report in their inbox [21:52] it will just make them angry, even if the work was good [21:52] hehehe [21:53] second step: start small. open source is a community based on commitment and trust (after the getting work done thing) [21:53] judith_h, links to examples of horrible designs [21:53] start with a small activity such as interviewing users, conducting a survey, or doing a small UI review. this will help developers get used to your methods, get used to you, and know what to expect from your work [21:53] third step: maintain your relationship with the project [21:54] haha, thanks mpt [21:54] design is an iterative process, just as open source is iterative development [21:54] developers are wary of seagull designers: designers who fly in, poop on their software, then fly away [21:55] developers are in for the long hull, they are committed to their project and want to see it succeed [21:55] hahaha [21:55] * judith_h likes this example http://vanrees.org/thesis/swindon.jpg [21:55] they dont want to work with a designer who will ask them to change a bunch of things, then disappear and not be able to comment on the results === Traveler87 is now known as Forky [21:56] makes sense seele [21:56] obviously i dont want to see any unhealthy marriages, but keep in mind that you will make a bigger difference in one project than doing a bunch of little activities for a bunch of projects [21:56] so i'm sorry we didnt get through everything i made notes on to cover, i guess i need to become a faster typer [21:56] so it's better to start with a dev you know, so he will also trust your outputs :) [21:56] he he [21:56] techno_freak: yes. [21:57] any chance you could finish all the thoughts you wanted to get out at a later date that's convienient to you? [21:57] design is a VERY iterative process.. it is important for both you the designer and the developer you work with to understand this [21:57] i've been working on a KDE GRUB UI for the past few months with Aretemis_Fowl [21:57] i cant tell you how many times i've asked him to go back and forth on little design issues [21:57] oooh,I've wanted one of those for years [21:57] GRUB UI? [21:57] yes, GRUB configuration tool [21:57] Like OpenSuse has? Or maybe Mandriva [21:57] seele, one last question if your are closing up, do we have anything like KDE-HIG for Ubuntu/Kubuntu to which we can contribute to? [21:57] Ah wait, different thing I'm thinking of [21:57] kgrubeditor? [21:57] similar, but I'm hopeing much more useful and usable [21:58] we're having problems with automagic though [21:58] techno_freak: good question [21:58] for Ubuntu designers, you will want to look at the GNOME HIG. It might be a little out of date, but one way to get started with contributing would be updating it! [21:58] for Kubuntu designers, you will want to look at the KDE4 HIG and the KDE3 User Interface Guidelines [21:59] ok :) [21:59] these are under active development, and so if you have any questions it would be best to ask me or Ellen Reitmayr who sometimes lurks in #openusability [21:59] other resources: look at other interfaces that do similar things [21:59] not just in your own environment, but in windows, kde/gnome, macosx [21:59] you'll find similar and very different solutions [21:59] you will want to look closely at the context of the solutions and make sure it is a good fit before you use it as a model [22:00] copying a solution will not solve a problem, the goal of reviewing other software is to get inspiration when you have no other better ideas [22:00] seele: what is that grub configuration tool called, and where can I get it? [22:00] in the example of the GRUB config UI, after we looked at the Mandriva and Suse UIs, we realised we could do A LOT better === StuartMarsden_ is now known as StuartMarsden [22:00] whoops, netsplit [22:00] but what we did do was look at which options they thought were important for users to help us build our funcitonal spec [22:01] arg, netsplit during talks [22:01] seele: is it kgrubeditor? [22:01] bad time for a split [22:01] katastrophe: yes [22:01] Riddell: an audio stream would be something to consider setting up [22:01] nice, ill have a look [22:01] eagles0513875: ack [22:01] dwidmann: there is a work page on the wiki with links to oru progress [22:01] Riddell: using this channel to take questions [22:01] Riddell: whats so bad bout it [22:01] i think it is in Artemis' PPA, but i'm not sure [22:02] so it looks like i'm out of time === excid31 is now known as excid3 [22:02] i'm in #kubuntu-devel and #openusability all the time, so feel free to ping me with questions [22:02] thanks seele [22:02] Thanks seele. [22:02] seele: thanks! [22:02] * seele waves [22:02] thanks a lot seele [22:02] thanks a lot seele, that was very informative :) hope to contribute to usability, which means bugging you ;) [22:02] ping pong [22:02] next talk is about merging packages [22:02] what talk did i miss [22:02] thanks for the talk; very insightful [22:02] thanks seele! [22:03] Riddell: yippee! [22:03] Riddell: is there going to be a link to these talks [22:03] in an hour we have a talk about pyqt [22:03] woohoo [22:03] if you want to take part in the pyqt talk please add the hardy ppa archive "deb http://ppa.launchpad.net/kubuntu-members-kde4/ubuntu hardy main" [22:03] thanks seele :) [22:03] hmm, that one sounds interesting, I'll probably stick around for it [22:03] to sources.list [22:03] and install libqt4-gui and python-qt4 [22:03] but now, who's here for package merging? [22:04] seele: thanks a lot for showering us with your brilliance :D [22:04] Riddell: what about webkit, though that was separate [22:04] Riddell: Hiya! For those of us on other distros, will our regular installs of PyQt4 do? [22:04] Riddell: question for u there was a link to what one needs to bug fix to have installed on the machine but i cant seem to find the page [22:04] thanx seele [22:04] Riddell: Isn't it supposed to be plasma development, not just pyqt? [22:04] eagles0513875, http://irclogs.ubuntu.com/2008/06/15/%23kubuntu-devel.html has a log [22:04] eagles0513875: ask in the bug fix talk leter [22:05] Sundance: if it's up to date enough [22:05] mans gotta talk about about packaging not qt right now [22:05] qt 4.4 [22:05] Sundance: they have to be qt4.4 [22:05] so Merging! [22:05] Riddell: i actually im soon heading to bed its quite late here :( [22:05] as you know, software comes in packages [22:05] someone writes the source, we write some packaging [22:06] the packaging has meta data and the rules for compiling the package [22:06] it gets compiled into binaries which is what runs on your computer [22:06] Riddell, nosrednaekim: Ack, only got Qt4.3 here. (Well, I've got one hour to see to it, right?) [22:07] pew okey this is my last talk. [22:07] in the ubuntu world we take most of our packages from Debian [22:07] at the start of our 6 month cycle [22:07] then we stabalise them [22:07] and release a distro after 6 months [22:07] often we make improvements to the packages [22:07] newer version or adding bugfixes [22:07] Sundance: correct [22:07] are gutsy compat with hardy? or is that just based on testing? [22:07] or changes in policy, removing mp3 support for example which we can't put on our CDs [22:08] we try to keep the difference between our packages and debian's packages as small as possible [22:08] because that's less work for us [22:09] so at the start of the development cycle, if there's a package which has been changed in ubuntu [22:09] we grab the current debian package, add in the ubuntu changes again [22:09] and upload [22:09] that way we keep as close to debian as we can [22:09] and if all is working well we send the change to the debian maintainer [22:09] so they get whatever the improvement is if appropriate [22:09] and we don't have to add it any more [22:10] * judith_h has to go to bed, is it possible to get the logs somewhere? [22:10] is it over? ;) [22:10] we are now at the start of the intrepid cycle [22:10] and there are lots of packages to be merged with newer debian versions [22:10] http://merges.ubuntu.com/universe.html [22:10] a cycle only starts once the previous released? [22:10] lists all the universe ones [22:10] supert0nes: yes [22:10] Riddell: so kinda offtopic but you are the founder of ubuntu [22:10] eagles0513875: no [22:11] main.html has all the main packages that need merging [22:11] Riddell: i didnt get what Nightrose said before when she introduced you [22:11] shall we try merging a package? [22:11] oops [22:11] yes please [22:11] great day for htat [22:11] grump, netsplit [22:11] * eagles0513875 smacks netsplit [22:12] what keeps doing that.. [22:12] this is kubuntu so the packages we're interested in are the kde ones, because we're all kde fans [22:12] heh === seth_ is now known as Schnullerbacke [22:12] I see keurocalc as an easy looking target [22:12] WOOT hit that on the head [22:12] the current ubuntu version is 0.9.6-1ubuntu2 [22:12] that means it's keurocalc version 0.9.6 [22:12] debian version 1 [22:12] we took that debian version and made two uploads of it, so ubuntu version 2 [22:13] the debian version is listed as 0.9.7-1 [22:13] and this is where konversations hide join/part/nick events option comes in handy :) [22:13] so that's a new version from the keurocalc developers [22:13] mkdir keurocalc [22:13] cd keurocalc [22:13] mkdir current [22:13] cd current [22:14] we need to get the current ubuntu version [22:14] which we can find on launchpad https://launchpad.net/ubuntu/+source/keurocalc [22:14] clicking on the intrepid version https://launchpad.net/ubuntu/intrepid/+source/keurocalc/0.9.6-1ubuntu2 [22:15] and under Download are the three files that make up the source packaging [22:15] so download those three files with wget [22:15] then extract them with dpkg-source -x *.dsc [22:15] a source package is made up from the upstream developers .tar.gz [22:15] plus a .diff.gz which adds a debian directory with the packaging information [22:15] and the .dsc is a description file [22:16] cd keurocalc-0.9.6/ [22:16] less debian/changelog [22:16] the changelog file lists what has happened with each packaging upload [22:16] looking at the most recent merge version [22:16] keurocalc (0.9.6-1ubuntu1) edgy [22:17] * Merge from debian unstable. [22:17] Hmm, doesn't look like too much has been modified [22:17] whoever did that merge was naughty and didn't list what the ubuntu change actually was [22:17] * eagles0513875 smack [22:17] so lesson number 1, always state what you've done to the packaging! [22:17] else it can be very hard to find out in the future [22:18] looking further down we can find what it is [22:18] keurocalc (0.9.4-5ubuntu1) dapper; urgency=low [22:18] * debian/rules: [22:18] + Use dh_iconcache . [22:18] this is quite a common change [22:18] gnome in ubuntu has an icon caching feature [22:18] so the icons get added to a database at install time, that's done by dh_iconcache === Pricey is now known as PriceChild [22:19] but I happen to know that is out of date [22:19] since dh_iconcache has been replaced with dh_icons [22:19] so our task now is to take the debian package [22:19] add the dh_icons change [22:19] check it all compiles [22:19] upload [22:20] and suggest the change to the debian maintainer [22:20] upload to where? [22:20] upload to ubuntu! [22:20] ah [22:20] to repository ? [22:20] so it'll appear in the ubuntu repository [22:20] * jtechidna can only upload to the revu service as of now [22:21] only ubuntu motu and core-dev can upload to the repository [22:21] so until you become a motu you need to ask someone who is to upload for you [22:21] Ah, right. [22:21] but don't worry, you still get the karma points in launchpad [22:21] and if you hadn't known about the icocache issue? [22:21] Forky: you'd have asked about it :) [22:21] changelog will list the changes [22:21] Riddell: Where would be a good place to upload the packages for a motu to get 'em? [22:21] if you're unsure what the change is for [22:22] ask here or #ubuntu-motu or you can ask the person who made the change directly [22:22] jtechidna: revu is good, or any web server [22:22] ah i see [22:22] jtechidna: you can also create a bug and attach to that [22:22] Ok, thanks. [22:22] so lets grab the debian package === jtechidna is now known as JontheEchidna [22:23] http://packages.debian.org/ is a handy site for this [22:23] and at http://packages.debian.org/sid/keurocalc is our package [22:23] split [22:23] on the right is "Download Source Package" [22:23] so make a new directory and change to that [22:23] isn't creating a bug unnessesary just for that. [22:23] and download the three source files [22:23] lots of netsplittyness today. [22:23] Forky: you don't have to, it's just if you need somewhere to upload [22:24] wget http://ftp.de.debian.org/debian/pool/main/k/keurocalc/keurocalc_0.9.7-1.dsc http://ftp.de.debian.org/debian/pool/main/k/keurocalc/keurocalc_0.9.7.orig.tar.gz http://ftp.de.debian.org/debian/pool/main/k/keurocalc/keurocalc_0.9.7-1.diff.gz [22:24] dpkg-source -x *dsc [22:24] if you cd keurocalc-0.9.7/ [22:24] and ls [22:24] you see the source files [22:24] cd debian; ls [22:24] you see the packaging files [22:25] the rules file has all the instructions for compiling and building the package [22:26] it might help to compare Debian's rules file to the one currently in ubuntu diff -u rules ../../current/keurocalc-0.9.6/debian/rules [22:26] and I can see where the change is [22:26] + dh_iconcache [22:27] so I edit debian/rules [22:27] in emacs [22:27] but you can use vi [22:27] I also recommend kate [22:27] add in dh_icons at the same place as dh_iconcache was previously [22:27] and that's my change [22:27] next I need to add to the changelog [22:27] we have a nifty command for this [22:28] dch -i [22:28] whats that do [22:28] which will fire up an editor with a new changelog entry ready to be added [22:28] ahhh yes now i remember [22:28] the current Debian version is 0.9.7-1 [22:28] so we want our version to be 0.9.7-1ubuntu1 [22:28] which dch should do for you [22:29] make sure the distro field on the top line is set to "intrepid" [22:29] and set the message to "Merge with Debian: remaining change, add dh_icons to debian/rules" [22:29] make sure your name and e-mail are correct [22:29] save and quit the editor [22:29] next we need to merge in the old changelog entries [22:29] so people can see the history of the package in ubuntu [22:30] emacs -nw debian/changelog ../current/keurocalc-0.9.6/debian/changelog [22:30] <_gunni_> ping [22:30] emacs lets me edit both the new and old changelog files at once [22:30] * _gunni_ thinks theres the wrong one at the netcable :( [22:30] Nightrose: [22:31] I copy all the existing changelog file and use it to replace the entries from 0.9.6-1 in the new one [22:31] save and exit [22:31] and that's out packaging done [22:31] next we need to test build [22:31] debuild is the command for this [22:31] run that and it'll tell you if you have all the packages needed for building installed [22:32] if you don't, apt-get install them [22:32] and it should compile away [22:32] once it's done, it'll create a .deb package in the directory above the source [22:32] install that with dpkg --install *deb and make sure the application runs [22:33] now we just need to build it as a source package [22:33] which is done with debuild -S -sa [22:33] -S for source package, -sa makes it include the .orig.tar.gz in the upload [22:33] bye [22:34] and if you are a motu you can upload with dput [22:34] if not, put the files on a web server somewhere [22:34] or on revu which is a testing area for packages that people can review [22:34] and ask an motu to upload [22:34] anyone remember the final step? [22:35] contact debian maintainer! [22:35] exactly! [22:35] the best way is just to file a bug on bugs.debian.org [22:35] which is done by sending an e-mail [22:35] be polite and say this adds support for gnome's icon cache [22:36] night guys these are cool meetings hope to be around for more tomorrow [22:36] so that is how to merge a package [22:36] often the changes in ubuntu will be more complex than that [22:36] and ofter the changes in ubuntu are no longer needed [22:36] because the same change has made its way into debian [22:37] in that case you file a bug asking for a sync and subscribe ubuntu-archive [22:37] who will sync it directly from debian [22:37] any questions? [22:38] Ok, so we're replacing 0.9.6-1 with all of the old ubuntu changelog? [22:38] <_gunni_> Will there be a log of this session available? I missed a lot because of the netsplits. [22:38] replacing everything below 0.9.6-1 [22:38] _gunni_: yes, from the wiki page [22:38] ah, ok. [22:38] keurocalc is a real example that I just picked out before the talk [22:39] * _gunni_ hopes now the netwplits are over [22:39] so if you've been following along at home send me in your package after the talks [22:39] and I'll review it an upload [22:39] Riddell: Binary compatibility in Linux -- or lack thereof -- is a pet peeve of mine. :) Is there a way to go right at the packaging level that will ensure maximal bin compat with other distros & future and past Linux versions? [22:39] and there's plenty more examples on http://merges.ubuntu.com/universe.html and main.html to be done [22:40] Sundance: about the only way to ensure that is to include all the libraries in the packaging [22:40] libstdc++, qt, kde, usualy lots more [22:40] ... Oy. [22:40] which is what google picasa and earth do [22:40] it's pretty ugly [22:40] * _gunni_ raises his hand for a question, and hopes it wasent ansered in the time of netsplit [22:41] Indeedy. What 'bout LSB though? [22:41] it's a big advantage of having source available is that distros can compile it [22:41] <_gunni_> For wchich architecture should packages be build? i386, i586 i686? [22:42] _gunni_: silly, of course they should be built for x86_64 :) [22:42] Sundance: nice in principle, rarely that useful in practice. distros have different package formats (deb vs rpm) and different versions of the libraries [22:42] _gunni_: when you're testing it you just build it for whatever you use [22:42] _gunni_: but there's no need to pass the .deb on to anyone, you just pass on the source .orig.tar.gz, .diff.gz and .dsc [22:42] it'll get uploaded [22:42] <_gunni_> I mean packages in ubuntu repos. Asking that because mythtv-backend wont run on my K6-2 :( [22:43] and there are a bunch of build servers which sit there waiting for packages to compile [22:43] the build servers will compile it for all architectures and put the result in the repos [22:43] sometimes packages don't compile for an architecture [22:44] it can happen with multimedia packages which often use assembler for optimisation [22:44] in which case it won't get any packages for that architecture [22:45] I should also have said that before merging you should check if there's a new version from the upstream developers [22:46] especially with the kde 4 changover, a number of apps will have kde 4 versions coming out [22:46] and for intrepid, we want the kde 4 version if at all possible [22:46] there's a few here that need packaged ftp://ftp.kde.org/pub/kde/unstable/4.0.80/src/extragear/ [22:47] (ask if you want to work on any of those, some are already in process, we don't want to duplicate work) [22:47] in hardy they were packaged with a -kde4 added to their name, that should be dropped for intrepid [22:48] packaging isn't hard, it only takes a couple of hours to get the hang of it, but it takes a lifetime to learn all the tricks and details [22:48] so, will kde3 be disappearing in intrepid? [22:48] dwidmann: as a desktop it will, if there's no kde 4 version of an app we'll keep the kde 3 one [22:49] I'll comment on that as soon as my 4.1 finishes downloading and I can look at a few things ... [22:50] So if an ubuntu package hasn't had any modifications and a newer debian version is available, we request a sync? [22:50] 4.1 is still in process in intrepid, it has been blocked for a while on all the main inclusion reports which need to be reviewed by people [22:50] some of the apps in 4.0 were rather stripped down ... the 3.x versions seem to be working better for now [22:50] JontheEchidna: if there's no ubuntu modifications it'll sync automatically [22:51] ah, ok. So if it's on the list there are changes to be made [22:51] JontheEchidna: it'll only not sync automatically if there's "ubuntuX" in the version number [22:51] JontheEchidna: yes, but as I say often the ubuntu changes have been made in debian [22:51] in which case, a sync is what's needed [22:52] ok, pyqt talk in 10 minutes [22:53] Riddell: while the topic is packaging, I have a question (but no example to attach it to), what's the best approach for packaging a python app? [22:54] dwidmann: copy an existing package :) [22:54] python apps have various build systems [22:54] sometimes they use ./configure, sometimes cmake, sometimes the native python one [22:54] and sometimes none at all [22:55] you need to edit the debian/rules file to run the appropriate commands [22:55] and install the files into debian/tmp [22:55] then we have a python packaging tool called python-central [22:56] and another similar one called python-support [22:56] python-central seems slightly more popular [22:56] they add the appropriate scripts so that .py files are compiled into .pyc files at install time [22:56] ack, so many ways .... which would be the braindeadeasiest way if say, you decided to hammer something out in a text editor in the middle of the afternoon and felt like packaging it? [22:57] dwidmann: if it's just one file, you can add a line to debian/rules under install to cp mypythonapp debian//usr/bin [22:58] dwidmann: if you're packaging from scratch you can find a similar package and copy the debian files [22:58] python has a way to compile [22:58] or there's an app dh_make which makes template packaging [22:58] you run the python program then import the compiler [22:58] supert0nes: that's what python-central does for you in a package [22:58] ahh [22:59] dwidmann: also check out the python packaging session in ubuntu open week [23:00] we have a mentoring system for people starting doing packaging if you want someone to hold your hand while you get started [23:00] I think I missed that one fliegenderfrosch ... I'll have to google that [23:00] ask here or #ubuntu-motu if you want a mentor [23:00] 22:00 UTC [23:00] thanks all for listening, bonus points to the first person who sends me that keurocalc merge [23:01] I'd be more interested in the programming end of things really ... my ISP is kind of umm, well, horrible, so I don't think packaging would be a very positive experience for me, if you know what I mean. [23:01] programming... well guess what tutorial is up next! [23:01] anyone want to learn a bit of pyqt? [23:01] * HappySmileMan [23:01] * HappySmileMan [23:01] * dwidmann raises his hand [23:02] signals and slots here we come heh [23:02] Riddell: Is this going to be about PyQt, or Plasmoids in Python specifically? [23:02] this was advertised as a plasma with python talk [23:02] * Sundance wanna make a plasmoid out of KEyes already! [23:02] I'm afraid that's not going to happen today [23:02] it seems plasma with python is ready yet [23:02] sorry about that [23:02] they need documentation [23:02] Aw. :| [23:02] the work is going on in http://websvn.kde.org/trunk/playground/base/plasma/scriptengines/kross/ if you want to follow it [23:02] Riddell: missing a not in that last setence, I presume? [23:03] dwidmann: right [23:03] maybe someone will have better luck than us at getting those example to work [23:03] So you can't make plasmoids with Python, or it's just not documented yet? [23:03] HappySmileMan: it doesn't work reliably yet and it's not documented [23:03] Ah right [23:03] however it should be possible soon [23:04] and we'll do a tutorial when that happens [23:04] so I thought we'd make a web browser in pyqt instead [23:04] its not based on the release schedule right its just when its finished? [23:04] supert0nes: yep [23:04] i just got that book by mark summerfield [23:04] a web browser eh? that sounds interesting :) [23:04] this needs Qt 4.4 and the same version of python-qt4 [23:04] havent had time to work though it yet [23:04] add this to /etc/apt/sources.list [23:04] deb http://ppa.launchpad.net/kubuntu-members-kde4/ubuntu hardy main [23:05] apt-get update [23:05] supert0nes: it's really great [23:05] apt-get install libqt4-webkit python-qt4 [23:05] * dwidmann hopes his dist-upgrade finishes in time to not be in the way [23:06] so our first revision goes like this [23:06] #!/usr/bin/env python [23:06] because it's python [23:06] import sys [23:06] from PyQt4.QtCore import * [23:06] from PyQt4.QtGui import * [23:06] from PyQt4.QtWebKit import * [23:06] to load up the libraries [23:07] python's inbuilt sys library and the necessary parts of Qt [23:07] app = QApplication(sys.argv) [23:07] that create the vital application object which does lots of work behind the scenes to create a running application [23:07] web = QWebView() [23:07] web.load(QUrl("http://kubuntu.org")) [23:07] web.show() [23:07] here we create the web browser widget [23:08] Qt 4.4 has WebKit built into it [23:08] so a web browser widget is easy to add [23:08] sys.exit(app.exec_()) [23:08] that's the final line [23:08] BTW.... text here for that :) http://kubuntu.org/~jriddell/tutorials-day/webkit/web1.py [23:08] app.exec_() runs it [23:08] and when that method returns it'll quit the app with the appropriate exit code [23:09] the full thing is at the address above [23:09] has anyone got it working? [23:09] nosrednaekim? [23:09] works for me :) [23:09] got it [23:09] yay! [23:09] hmm, 98% on my dist-upgrade, so I'll know shortly [23:10] it should look like this http://kubuntu.org/~jriddell/tutorials-day/webkit/web1.png [23:10] just a window with the webview widget in it [23:10] any questions? [23:10] had to set up eric so it took a sec [23:10] supert0nes: you could just use kate or kwrite (or any text editor) [23:10] well ya [23:11] Riddell: What HTTP features does QUrl support? Cookies? Cache? [23:11] Riddell: unfortunately I had to update my qt4 packages which is taking forever on the PPA [23:11] Sundance: QUrl just holds the url, QtWebKit library does all the fancy stuff [23:11] Sundance: I believe it does cookies and caching and ssl and all that [23:12] so with pyqt you set it all up all the widgets and then run it [23:12] Sundance: but it's also possible to replace those methods with your own [23:12] Groovy! [23:12] Sundance: thats just a string representation.... like QString I think. [23:12] Sundance: so webkitkde uses the QtWebKit library but replaces cookies and fetching with http with the KDE ways of doing those [23:13] supert0nes: yes in a simple case like this, of course you can set up widgets later if you need to [23:13] but a web browser needs an address bar [23:13] so lets add one [23:13] the widget for that is Qt's QLineEdit which is a pretty common widget [23:13] ah but it also needs a parent widget [23:14] Niftiness. :) Thanks! [23:14] which has a layout two hold the two widgets we care about (lineedit and webview) [23:14] widget = QWidget() [23:14] creates the parent widget [23:14] layout = QVBoxLayout(widget) [23:14] where in the code? [23:14] give it a layout [23:14] at the end [23:14] ? [23:14] web = QWebView(widget) [23:14] web.load(QUrl("http://kubuntu.org")) [23:14] layout.addWidget(web) [23:14] widget.show() [23:14] put our webview widget into the layout [23:14] code is at http://kubuntu.org/~jriddell/tutorials-day/webkit/web2.py [23:15] the result is much the same as before [23:15] but there's a border there which is caused by the layout [23:15] Riddell: is there a problem if I install the packages from the PPA when I've already installed PyQt4.4 using "make install"? [23:16] fliegenderfrosch: if you already have pyqt 4.4 you shouldn't need the packages [23:16] fliegenderfrosch: but it shouldn't be a problem, it might overwrite your own compile if it's installed to /usr [23:17] Riddell: I have pyqt 4.4 but I get an error about not having webkit (libqt4-webkit is installed) [23:17] removing the border is an exercise you can try, it needs the layout to have its margins set [23:17] the qt documentation is very extensive so it should be easy to work out how to do that http://doc.trolltech.com/4.4/qlayout.html === StuartMarsden_ is now known as StuartMarsden [23:17] fliegenderfrosch: try installing the ppa packages then [23:17] Riddell: ok, thanks [23:18] so http://kubuntu.org/~jriddell/tutorials-day/webkit/web2.png is where we're at [23:18] adding the address bar is easy peasy [23:18] addressBar = QLineEdit(widget) [23:18] layout.addWidget(addressBar) [23:18] which gives us something like this http://kubuntu.org/~jriddell/tutorials-day/webkit/web3.png [23:19] full code is at http://kubuntu.org/~jriddell/tutorials-day/webkit/web3.py [23:19] anyone got it working? [23:20] ooh, niftyness [23:20] dwidmann: working for you? [23:20] got it [23:20] well, it's at least showing the web page, that's a start, I'm thinking no on the widget end of it, I'll look at it in a minute [23:21] not so long ago getting an app to show a web page was the tricky part :) [23:21] next we need to connect our address bar to send its text to the webview widget [23:21] o the fun part [23:21] so we can load web pages that we want [23:22] for this we need to create a method we can call [23:22] which will grab the text out of the address bar and tell the webview to load it [23:22] def loadUrl(): print "Loading " + addressBar.text() web.load( QUrl(addressBar.text()) ) [23:22] Hmmm, I downloaded those ppa packages, and when I run the script in Eric I'm getting an import error for QtWebKit. =\ [23:22] ack, dbus and I aren't getting along well at all today, I can't even launch konqueror :( [23:23] hmm, that should be on multiple lines [23:23] def loadUrl(): [23:23] print "Loading " + addressBar.text() [23:23] web.load( QUrl(addressBar.text()) ) [23:23] here we define a method called loadUrl() [23:23] it has a debugging line so we can see what's going on at the command line [23:24] and it calls the webview widget with the text converted into a QUrl [23:24] then we need to add a signal/slot connection to run that method [23:24] signals happen in Qt widgets when something interesting happens [23:24] and you connect them to slots (which in pyqt are just methods, like the one above) [23:25] QObject.connect(addressBar, SIGNAL("returnPressed()"), loadUrl) [23:25] I looked up the lineedit documentation http://doc.trolltech.com/4.4/qlineedit.html [23:25] saw it had just the signal we needed, returnPressed() [23:25] and so we connect it to our method [23:26] full program is at http://kubuntu.org/~jriddell/tutorials-day/webkit/web4.py [23:26] it looks just like the web3 version, but if you type in a url and press return it'll load that website [23:26] http://kubuntu.org/~jriddell/tutorials-day/webkit/web4.png [23:26] mackand: pastebin apt-cache policy python-qt4 [23:28] who's got it working? [23:28] I've got it working, except my address bar is in a seperate window :s [23:28] * stdin :) [23:28] I've got [23:28] it [23:28] Ah. That would explain it. 4.3.3. My bad. [23:29] dwidmann: addressBar = QLineEdit(widget) [23:29] ok got it [23:29] dwidmann: passing "widget" when creating that should make it parent to the "widget" we created [23:29] forgot the http:// [23:30] hmm, I've got a line *exactly* like that in there [23:30] supert0nes: right, QUrl will only accept valid URLs [23:30] as an exercise, it wouldn't be hard to improve loadUrl() to add http if that's missing [23:30] ya [23:30] dwidmann: you also create a layout for widget? [23:31] dwidmann: and add addressBar to that layout? [23:31] hmmm, might've missed that [23:31] its hard to remember to put python functions at the top since it reads top down [23:32] supert0nes: in most cases you don't need to [23:32] in most cases you'll create your own class which can have its methods in any order [23:32] k [23:32] that's a more common programme structure [23:32] i'm all for object orientation [23:33] (a class, if you don't know object orientated programming, is a collection of methods and variables from which you create objects. it can itself be based on another class) [23:33] http://kubuntu.org/~jriddell/tutorials-day/webkit/web5.py that shows the same programme [23:33] but in a different structure [23:34] it defines a class which is (inherits) a the basic QWidget class [23:34] any time for qt designer? [23:34] and adds its own children (the addressBar and web widgets) [23:34] supert0nes: time? [23:35] when creating a class you use self.foo to create variables that belong to the class [23:35] o i was just wondering if we had time to make a pyqt app with it [23:35] * fliegenderfrosch bangs the head against the wall, because he misspelled "WebKit" and just had trouble reinstalling pyqt4.4 [23:35] and you pass self into any methods [23:35] fliegenderfrosch: doh! [23:35] yay, I've finally got it working (properly) .... I hadn't added "web" to the layout [23:35] dwidmann: ah hah [23:35] the self thing in python is something hard for me to get used to [23:36] * supert0nes is just learning [23:36] supert0nes: I'm afraid I didn't have time to create this in qt designer [23:36] supert0nes: yeah... it confused me at first too [23:36] The lack of: (expression) ? foo() : bar() [23:36] but if you are making a user interface which is at all complex, I recomment making it in designer [23:36] Is hard for me to get used to [23:36] HappySmileMan: and what language is that? Php? [23:36] "HappySmileMan: (expression) and foo() or bar()" works fine. [23:37] Hmm, thanks Sundance [23:37] * supert0nes has to go back to learning data structures in java tomorrow and will miss python [23:37] nosrednaekim: looks like C++ ?? [23:37] nosrednaekim: That works in C++ [23:37] HappySmileMan: If you're using Python 2.5, you get the cleaner "foo() if (expression) else bar()". [23:37] Lots of languages support it though, I think PHP is one of them [23:37] nosrednaekim: its from C/C++ [23:38] HappySmileMan: I've never seen the point in that, just seems like something extra to learn that if statements can do just as well [23:38] I think it looks neater in some cases [23:38] looking at the signals given out by QWebView it would be easy to add a loading animation [23:38] http://doc.trolltech.com/4.4/qwebview.html [23:38] Can get simple stuff done in one line, instead of 4 or 5 [23:39] just use loadStarted() and loadFinished() [23:39] inface you could use loadProgress(int) fed into a progressBar [23:39] infact.. [23:39] we use python a lot in Kubuntu and Ubuntu generally [23:39] text = Val and "Worked" or "Failed" seem quicker to write than if Val: text = "Worked" else: text = "Failed" [23:39] i see kde has a lot of support for ruby [23:39] it's popular, well supported by Qt and KDE and other libraries [23:39] easy to learn and easy to write [23:40] supert0nes: yet, Ruby is a good choice too [23:40] s/yet/yes/ [23:40] we happen to use python in the ubuntu world, but ruby is certainly good as well [23:41] opinion question [23:41] since python uses qt c++ modules it shouldnt be too slow to use a dynamic language to write guis right? [23:41] url = "http://" + self.addressBar.text() if (self.addressBar.text().indexOf("http://") != 0) else self.addressBar.text() [23:41] Success :P [23:41] KDE 4.1 will also see the first pyKDE app in KDE! [23:41] (ugly but meh) [23:41] which is the printer-applet from Kubuntu [23:42] also guidance-power-manager is in KDE extragear for 4.1 [23:42] it's very satisfying to be able to contribute to KDE through Kubuntu [23:42] supert0nes: I've been writing PyQt apps for a while and the speed is /excellent/. [23:42] HappySmileMan: https:// and you fail ;) [23:42] HappySmileMan: grenius! [23:42] stdin: Yeah but I'm not exactly going for a perfect bug-free browser here :P [23:43] HappySmileMan: if not text.startsWith('http://') and not text.startsWith('https://'): text = "http://" + text [23:43] last tutorials day I gave a similar tutorial and nosrednaekim hang around and wrote us a compiz installer/config tool for Kubuntu [23:43] yay nosrednaekim! [23:43] HappySmileMan: then pass text to QUrl() :) [23:43] i figured since most of my gui programming is library calls [23:43] Riddell: which I need to work on :P [23:43] Yeah passed it to QUrl just didn't take https into account [23:43] so if you're inspired to help out Kubuntu with pykde hang around on this channel and ask what needs done [23:43] (many things are listed at https://wiki.kubuntu.org/Kubuntu/Todo) [23:44] is pyKDE designed by kubuntu devs? [23:45] no [23:45] http://www.riverbankcomputing.co.uk/news [23:45] well [23:45] yes and no [23:45] it's developed by Jim who puts it on riverbankcomputing [23:45] but then Sime grabs that and puts it in KDE's kdebindings module [23:46] and thats where we will get our plasma bindings? [23:46] we're using the version from kdebindings now since Sime works super hard to keep it up to date with the KDE version [23:46] supert0nes: plasma bindings are separate again [23:46] they use Kross [23:46] kross converts many languages into something usable for programs? [23:46] which is a nifty library originally for KOffice that lets apps gain scriptable ability easily [23:47] ahh [23:47] Riddell: For instance, if we had a mind to help with getting the Plasma bindings done, where should we turn to? I prodded the Seigo Man 'bout that a while ago, but didn't press the matter since he's always so busy running all over the world, spreading love and awesomeness. :) [23:47] so if you want to add a formula to KSpread you can easily do it in python and not have to worry about compiling [23:47] *with the security they desire heh* [23:47] the plasma Kross plugin is being developed in http://websvn.kde.org/trunk/playground/base/plasma/scriptengines/kross/ [23:48] and the developer did assure me it worked, but I'm afraid I couldn't get it to do much [23:48] but do try it out yourself [23:48] you'll probably need an svn compile of kdebase for the latest plasma [23:48] Riddell: Didn't install last time I checked, and I couldn't find the documentation to figure it out. :/ [23:49] which is cleaning up real nicely btw [23:49] Riddell: why do you let Browser inherit QWidget and not QDialog? [23:50] fliegenderfrosch: because it's a simple example ;) === jr_ is now known as Riddelll [23:50] fliegenderfrosch: Dialogs have extra options such as "Ok,cancel" buttons, etc.... widgets are simpler [23:50] hmm, so my server has decided to break [23:51] if you look in http://websvn.kde.org/trunk/playground/base/plasma/scriptengines/kross/examples/ you'll see there's a few different types of plasma plugins [23:52] the runner ones add features to the alt-F2 krunner dialogue [23:52] Riddelll: ahhhh I was lookin for that forever the other day :P [23:52] the dataengine ones provide the data without a UI, such as an interface into the power manager [23:52] and the applet gives the plasmoid UI we all know and love [23:53] if you want more examples of pyqt and pykde apps you can apt-get source python-qt4 which has a bunch of examples [23:53] for something more complex look at printer-applet in kdeutils in KDE's svn [23:54] or guidance-power-manager in extragear/utils in KDE's svn [23:54] * Sundance wonders if it would be considered unwarranted if he also pointed to his own PyQt4 pet project? [23:55] Sundance: what is it? [23:55] gotta head out but thanks very much Riddelll, you have given me the kickstart necessary on PyQt [23:55] oh and if you're looking for a way to contribute back [23:55] techbase.kde.org needs pykde tutorials [23:55] so you could convert this web browser to a pykde app [23:55] and put it on techbase [23:56] Riddelll: What does pykde provide (on top of pyqt)? [23:56] I've got spare time ... I could do that unless someone else is more determined to do that than me [23:56] Riddelll: Just a small MU* client. Nothing spectacular, except that I try to mind the clarity of my code a lot. [23:56] fliegenderfrosch: better integration with KDE [23:56] it'll pick up the right KDE widget style, and you can use KDE icons [23:56] it works with KDE translations too, which are much nicer than Qt's [23:57] here's a basic pyKDE app http://kubuntu.org/~jriddell/tutorials-day/python/hola2-kde.py [23:58] Riddelll: nice, i've got to look at that for my pyqt apps. and with kde4, you don't even lose windows/osx compatibility, right? [23:58] fliegenderfrosch: no.... but for those I would still reccomend bare qt4 [23:58] fliegenderfrosch: shouldn't do, although I'm not sure if pykde is working on windows/mac yet [23:59] Riddelll: that doesn't matter, my programs are not even ready for linux users yet... [23:59] ok, time up, it would be great if someone did turn this into a tutorial on techbase, let me know if you want to do that