=== popey changed the topic of #ubuntu-classroom to: Ubuntu Open Week info: Information and Logs: https://wiki.ubuntu.com/UbuntuOpenWeek | Ubuntu classroom transcripts: https://wiki.ubuntu.com/ClassroomTranscripts | Please ask questions in #ubuntu-classroom-chat not here | Next session starts at 15:00 UTC on Fri Oct 26th
=== Lumiere is now known as Lumiere|DCUnited
=== sourcode_ is now known as sourcode
annmahello people11:12
annmaanyone already in Boston?11:12
annmajcastro: ping11:13
=== annma is now known as ann_away
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== MrM is now known as mrmonday
=== ann_away is now known as annma
=== zul_ is now known as zul
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== scraisyi is now known as scraisy
=== Mez is now known as Mez|Away
=== Mez|Away is now known as Mez
=== mzungu_ is now known as mzungu
=== harrison1 is now known as harrisony
ubotuCurrent time in Etc/UTC: October 26 2007, 13:58:18 - Next meeting: Kernel Team in 4 days14:58
ErtoritoHola !16:02
ErtoritoHola, hay alguien ahi?16:08
=== uhutu is now known as barcc
dgjonesisn't there due to be a session on now?16:11
mrevelldgjones: There is. I'm trying to track down the person who is due to give it.16:11
dgjonesrite, wondered what was happening16:12
dgjonesmrevell, do you mind a quick pm?16:13
mrevelldgjones: Not at all16:13
bahadunnno classes today?16:13
mrevellbahadunn: There will be as of 16.00 UTC.16:14
bahadunnwhat time is it now in UTC?16:14
mrevellIt's 15.15 in UTC16:15
bahadunnthought so16:15
bahadunnok thanks16:15
bahadunnI guess I could have looked at the schedule16:15
bahadunnoh well16:15
bahadunnsorry for wasting you guys time16:15
mybunchewe are here anyways16:15
FayZee_The schedule on https://wiki.ubuntu.com/UbuntuOpenWeek doesn't say it's canceled. Is it tehn?16:16
bahadunnthe new ubuntu looks nice16:16
bahadunngot it running in qemu16:16
bahadunnfirst one to successfully run in qemu for me16:17
FayZee_bahadunn: what problems did you have with other distros in qemu?16:17
bahadunnFayZee_: some funky error that I cannot recall16:18
FayZee_bahadunn, did you try Mandriva Spring 2007 or even the lately released 2008?16:18
bahadunnFayZee_: no16:19
bahadunnFayZee_: I have strong hate for mandriva16:19
bahadunnFayZee_: debian runs fine on the qemu and also debian/kfreebsd runs fine on the qemu16:20
mrevellHi guys - could you move chat to the -chat channel please?16:20
FayZee_So is Launchpad Personal Package Archives officially  canceled/postponed?16:21
mrevellFayZee_: I'm going to set it as cancelled. Unfortunately, I can't find the person who was due to give it.16:21
=== Martinp24 is now known as Martinp23
jcastroannma: hi16:36
annmajcastro: hi16:37
annmajcastro: my plane was cancelled16:37
annmaI could not even reach Paris16:37
annmabig strike in France16:37
annmaI mailed the travel agency but it looks I won't make it16:37
* Hobbsee waves16:45
* DShepherd waves16:45
=== neuro|irssi is now known as neuro_
HobbseeHey all, it seems like the session got cancelled, but if you have questions about ppa's, some of us around should be able to answer them.16:48
Hobbseewont be a normal session, i know.  but it seems that some people have turned up.16:49
evarlastis it possible to have a team ppa just be an aggregate of its members ppa?16:50
HobbseeI dont think so.16:51
DShepherd is there a limit on the amount of space one is allotted for a ppa?16:51
PriceChildDShepherd, about a Gb or so i "think" but it can be enlarged on request.16:51
HobbseeDShepherd: it appears to be 1gb, but I dont think they've done the quotas yet, as people can't remove things.16:52
* DShepherd goes to check the size of assault cube16:52
kostkondo you think it's OK for a project to be "served" only through a PPA or should better opt to be included in the official repositories nad use the PPA only for testing (and other) purposes?16:55
brobostigonwhen is the mythbuntu session?? its 16:55 pm at the moment.16:55
Hobbsee@now utc16:55
Hobbseebrobostigon: 2 hours16:56
stdinkostkon: well PPA's are still in beta, and aren't 100% reliable yet. but it should be OK for a small project16:56
brobostigonso 19:00 pm16:56
ubotuCurrent time in Etc/UTC: October 26 2007, 15:55:51 - Next meeting: Kernel Team in 4 days16:56
Hobbseekostkon: if you put it into the official repositories, you're going to be able to reach everyone - whereas if you only have it in a ppa, they have to manually edit the lines of their sources list, to include the repository.16:56
Hobbseekostkon: for that reason, you're probably better off putting it into ubuntu.16:56
Hobbseekostkon: but, either works.  As for speeds and such for downloading, I couldn't tell you.16:57
Hobbseeany more questions?16:58
PriceChildCan I have a pony?17:00
mrevellPriceChild: Yes, but only if you wash the dishes17:00
HobbseePriceChild: no.17:01
mrevellOkay, are you ready to rock? Or at least to have a session about Launchpad Translations?17:01
Hobbsee@pony | PriceChild17:01
Hobbseemrevell: sounds good. over to you :)17:01
=== PriceChild changed the topic of #ubuntu-classroom to: Ubuntu Open Week info: Information and Logs: https://wiki.ubuntu.com/UbuntuOpenWeek | Ubuntu classroom transcripts: https://wiki.ubuntu.com/ClassroomTranscripts | Please ask questions in #ubuntu-classroom-chat not here | Current Session: Introduction to Launchpad - Matthew Revell
mrevellHello! My name is Matthew Revell and I work for Canonical as part of the Launchpad team.17:01
mrevellWelcome to this session, which is all about one of Launchpad's applications, Translations.17:02
mrevellI'm going to introduce you to Launchpad Translations and tell you:17:02
mrevell* what it does17:02
mrevell* how it works17:02
mrevell* a little about how Ubuntu uses it.17:02
mrevellI'll also be pleased to take your questions at the end of the session.17:03
mrevellHowever, the developers who work on Launchpad Translations are in a high intensity sprint right now, so I may have to pass on some questions. That's not to say you won't get an answer!17:03
mrevellBut I may ask you to mail me17:04
mrevellMost week days you can find me as mrevell on Freenode. I hang out in #launchpad.17:04
mrevellYou can also email me - matthew.revell@canonical.com.17:04
mrevellYou can get in touch with the Launchpad team by sending an email to feedback@launchpad.net17:04
mrevellOkay, so let's get going!17:05
mrevell 17:05
mrevellA quick overview of Launchpad Translations17:05
mrevell 17:05
mrevellOne of the great advantages that the open source development model gives us is that it's relatively easy for people who use software to translate it into their own language.17:05
mrevellMuch free software uses GNU GetText for localisation.17:06
mrevellDevelopers put markers in their code to show where a GetText should insert strings of interface text.17:06
mrevellSo, if I'm using some software in Spanish, GetText will insert the appropriate Spanish interface text.17:06
mrevellIf, however, I'm using Hindi, GetText will insert the Hindi text.17:07
mrevellGetText has a simple file format where people can specify which text should be presented for each language.17:07
mrevellAll that a translator needs to know is what the original English text means and how to translate it into their own language.17:07
mrevellHowever, this way of working means that translators need to download each GetText file and work alone.17:08
mrevellIt also means that translators have to work like coders - they need to learn how to use GetText's file format, they may need to learn how to use whatever version control system the project uses and, in many cases, get write access to it.17:09
mrevellLaunchpad Translations takes the pain out of translating software into different languages.17:09
mrevellUsing a simple web interface, it makes it easy for people to translate just one line of text (what Launchpad Translations calls a string) or take an entire project and translate it into their language.17:09
mrevellIt can import and export GetText's file formats, making it ideal for translating a huge number of free software projects.17:10
mrevellIt can even make suggested translations.17:10
mrevell 17:10
mrevellPeople power17:11
mrevell 17:11
mrevellRight now, Launchpad Translations has:17:11
mrevell 17:11
mrevell* 25,223 translators17:11
mrevell* working 243 languages17:12
mrevell* with 833,733 strings of translated text.17:12
mrevell 17:12
mrevellIt's probably fair to say that more people are working to translate free software using Launchpad than in any other single way.17:12
mrevellThis brings with it huge advantages, both for Ubuntu and the other projects using Launchpad for translations.17:12
mrevellFor example...17:12
mrevellWhen the Jokosher audio editor started using Launchpad for translations, the Jokosher team didn't actually tell anyone.17:12
mrevellThey simply put their translation templates online in Launchpad and left them.17:12
mrevellWithin a couple of weeks they had translation efforts in 18 different languages!17:12
mrevellThe community of translators using Launchpad is large but, also, Launchpad makes it incredibly easy to translate software.17:13
mrevell 17:13
mrevellSimple web interface17:13
mrevell 17:13
mrevellLet's take a look at Ubuntu's page in Translations:17:13
mrevell 17:13
mrevell 17:13
mrevellStraight away, if you're looking to translate parts of Ubuntu into your language you can see how much work needs to be done for Gutsy.17:14
mrevellLet's pick Esperanto:17:14
mrevell 17:14
mrevell 17:14
mrevellYou can see various different packages in Gutsy and how well translated into Esperanto they are.17:14
mrevell 17:14
mrevellGreen, purple and light blue all represent translated text.17:14
mrevellRed means that there's still work to be done.17:15
mrevellNow, you can find which Gutsy package needs you most and dive in!17:15
mrevellYou see that most of "yelp" has been translated but not quite all.17:15
mrevellLet's dive in and have a look and what needs to be done.17:15
mrevell 17:15
mrevell 17:15
mrevellThese are all the "yelp" strings that remain untranslated in Esperanto.17:15
mrevell 17:15
mrevellAs you can see, Launchpad shows you the English and gives you a text box in which to make the Esperanto translation.17:15
mrevellAt the top is "Page not found".17:16
mrevellIf we knew the Esperanto equivalent for that phrase, we could type it in, scroll to the bottom of the page and click "Save and continue".17:16
mrevell 17:17
mrevell 17:17
mrevellAs you probably realise, the same phrases crop up in software quite often.17:17
mrevellTake a look at the fourth translation down on the page we've just been looking at:17:17
mrevell"File not found"17:17
mrevellThere isn't a translation yet for the "yelp" package but Launchpad has seen "File not found" translated into Esperanto before.17:17
mrevellSo, it makes a suggestion.17:17
mrevellIn fact, it makes several and tells us which package each comes from and who made the translation.17:17
mrevellNe trovis dosieron - Used in kbabel in Ubuntu Dapper package "kdesdk" by Donald Rogers  on 2007-07-3017:18
mrevellNetrovita dosiero - Used in gqview in Ubuntu Gutsy package "gqview" by Antonio Codazzi (la Filozofo)  on 2007-06-1117:18
mrevellERARO: dokumento ne trovita -   Used in koffice in Ubuntu Gutsy package "koffice" by Steffen Pietsch  on 2006-04-2117:18
mrevellDosiero ne trovita: -   Suggested in ooo-basic in Ubuntu Breezy package "openoffice.org2" by Leo  on 2006-03-2017:18
mrevell 17:18
mrevellNow, I can decide which of these I want to use and judge which one might be best according to where it was used and who made the translation.17:18
mrevell 17:18
mrevellTranslation teams17:19
mrevell 17:19
mrevellUbuntu has a number of translations teams.17:19
mrevellThis is controlled using something we call 'Translation Groups'.17:19
mrevellYou can see Ubuntu's translations groups at:17:19
mrevellThis provides a mapping between languages and the teams that translate are responsible  for translating them.17:20
mrevellTranslation teams look after the QA of translations.17:20
mrevellMembers of translation teams should *only* be trusted translators: they will have full power over translations for that language, and you should NOT let anyone in.17:20
mrevellSome upstreams have complained about bad translations, and most of them were due to badly managed teams (i.e. teams allowing anyone in). So, be strict about who you let in :)17:21
mrevellAt the moment, to organise work you need to coordinate outside Launchpad: use mailing lists, IRC, Jabber or whatever.  We will be solving this.17:21
mrevellWhen you make a translation on an Ubuntu package, most of the time you're actually making a suggested translation.17:22
mrevellA member of the appropriate translation team will then approve or decline your text.17:22
edenbeastja, in opleiding maakt dat toch nog geen zak uit want ge doet toch niks17:22
mrevellThis makes sure that anyone can get involved, with minimal effort, but helps maintain the quality and consistency of translations.17:22
mrevellHowever, if you are a member of the translation team you can submit translations directly.17:23
mrevell 17:23
mrevell 17:23
mrevellWe've got big plans for the future, and some of the priorities are the following:17:23
mrevell 17:23
mrevellSearch for translations (yes, infamous bug 44 in LP)17:23
mrevellNative support for other translation formats (Mozilla, OpenOffice.org...)17:23
mrevellImproved mechanisms for upstream cooperation17:23
mrevellMake team management more flexible and powerful17:24
mrevellWe welcome suggestions on what should we focus on!.17:24
mrevell 17:24
mrevellTrivia and tips17:24
mrevell 17:24
mrevellThis section comes from our the Launchpad Translations developers and it's their tips and tricks for using LP Translations.17:25
mrevellWhen uploading, choose 'Published upload' if you don't want to override others' translations that have happened in the meantime.17:25
mrevellYou can download PO files to find a specific string in it (many have done this already)17:25
mrevellFor Ubuntu, start translating from the top of https://translations.beta.launchpad.net/ubuntu/feisty/+lang/sr (for Serbian): they are sorted by priority.17:26
mrevellSorry, that URL should be:17:26
mrevellDon't forget to update Last-Translator field when translating via PO files, and also never remove or change X-Rosetta-Export-Date field from PO header (or you won't be able to re-import it).17:27
mrevellUse Google with "site:translations.launchpad.net" to search for strings as a workaround.  This will commonly give you pointer to someone's translations page, but you can pick a template name from there, visit it, and switch over to your own language.17:27
petrovicivanregards from Serbia17:27
mrevellYou can use [nbsp] to get non-breaking spaces if you've got problems inserting them directly (Firefox is known to be buggy with them).17:27
mrevellNo need to email us back with 'thank you' for automatic exports (though, we indeed appreciate those :).17:28
mrevellWhen you get message that your language is missing plural forms, either email us at feedback@launchpad.net, or file a ticket using https://answers.launchpad.net/rosetta/17:28
mrevell 17:29
mrevellFinding out more about Launchpad17:29
mrevell 17:29
mrevell#launchpad here on Freenode is where you can find Launchpad developers.17:29
mrevellThe launchpad-users list is also a great place to discuss Launchpad, get help from members of the team and make suggestions.17:30
mrevellYou can sign up at:17:30
mrevellThere's documentation at: help.launchpad.net - I'm personally working on that and appreciate any suggestions you may have.17:31
mrevellAnd if you want to get to try out new Launchpad features before anyone else, you can join the Launchpad Beta Testers team. Here's a guide for signing up:17:31
mrevell 17:31
mrevellWell, I seem to have finished somewhat early. So, if you have any questions, please fire away! Although, as I say, the Translations developers aren't available at the moment, so I may have to come back to you with answers.17:32
mrevell<samgee> QUESTION: How do you solve conflicts between translations in LP and those of upstream?17:34
mrevellsamgee: For Ubuntu packages, translations made in Launchpad take priority. We don't send translations upstream automatically, although they can of course export translations from Launchpad. Better coordination with upstreams is an area that we're going to work on over the coming months, I believe.17:35
mrevell<spd106> Question: Is there a list of file formats that can be converted to .po files?17:35
mrevellspd106: I'm told that the best place to start is the Translate Toolkit at http://translate.sourceforge.net/17:38
mrevellAny more questions?17:39
mrevell<spd106> QUESTION: Do translation for each release stop after 18 months? What about LTS?17:41
mrevellspd106: You can continue with translation so long as the Ubuntu release is supported.17:41
mrevellThank you everyone for attending this session. I'll be back at the top of the hour for the BLueprint session. Right now, I need to go get a drink, so I'll see you in 11 minutes!17:49
mybuncheThanks mrevell.17:50
PriceChildmrevell, are you doing "Planning features and sprints in Launchpad" as well?17:53
mrevellPriceChild: I am17:55
PriceChildcool :)17:55
=== PriceChild changed the topic of #ubuntu-classroom to: Ubuntu Open Week info: Information and Logs: https://wiki.ubuntu.com/UbuntuOpenWeek | Ubuntu classroom transcripts: https://wiki.ubuntu.com/ClassroomTranscripts | Please ask questions in #ubuntu-classroom-chat not here | Current Session: Planning features and sprints in Launchpad - Matthew Revell
=== Black_Ch2os is now known as Black_Chaos
mrevellRight, who's ready to rock?18:00
mrevellHello! My name is Matthew Revell and I work for Canonical as part of the Launchpad team.18:01
mrevellWelcome to this session, which is all about one of Launchpad's applications, Blueprint.18:01
mrevellI'm going to introduce you to Blueprint and tell you:18:01
mrevell* what it does18:01
mrevell* how it works18:01
mrevell* a little about how Ubuntu uses it.18:01
mrevellI'll also be pleased to take your questions at the end of the session.18:02
mrevellBefore I continue, I want to let you know how you can get in touch with me and the Launchpad team.18:02
mrevellMost week days you can find me as mrevell on Freenode. I hang out in #launchpad.18:02
mrevellYou can also email me - matthew.revell@canonical.com.18:03
mrevellYou can get in touch with the Launchpad team by sending an email to feedback@launchpad.net18:03
mrevellOkay, so let's get going!18:03
mrevell 18:03
mrevellWhat is a blueprint?18:03
mrevell 18:03
mrevellIn the design of physical objects, a blueprint is a plan of action.18:03
mrevell 18:03
mrevellIt takes the ideas of an individual or group of people and turns them into dimensions, angles, materials and so on.18:04
mrevell 18:04
mrevellA blueprint in Launchpad is similar: it helps individuals and groups of people to tell the world about an idea, a new feature or an entirely new project.18:04
mrevellThe important difference between a traditional blueprint and the blueprints in Launchpad is that Launchpad's blueprints don't end with publication.18:05
mrevellInstead, a blueprint in Launchpad tracks the progress of an idea from conception to implementation.18:05
mrevellSound complicated?18:05
mrevellDon't worry: it's not at all :)18:05
mrevellWe've designed Blueprint - the Launchpad application - to be as simple as possible.18:05
mrevellIf all you want is to write a few sentences describing your idea and then publish it, you can do that with Blueprint.18:06
mrevellIf, however, you want to:18:06
mrevell 18:06
mrevell* track who is responsible for implementation and approval18:06
mrevell* link the blueprint to a branch of code that implements it18:06
mrevell* target your blueprint to a particular software release18:06
mrevell* track the dependencies required for your blueprint's implementation18:06
mrevell* and more....18:06
mrevell 18:06
mrevell...then Launchpad Blueprint can help you with those too.18:06
mrevell 18:06
mrevellBlueprint doesn't force any particular project management methodology on you. Instead, it allows you to use however much or little you want.18:07
mrevell 18:07
mrevellLet's take a closer look18:07
mrevell 18:07
mrevellEach Blueprint belongs to a particular project.18:07
mrevellThat means you can see lists of all the ideas, proposals or suggestions that are "out there" for a given project.18:07
mrevellFor example, Ubuntu has more than 1,000 such blueprints, in various states of completion or discussion:18:08
mrevell 18:08
mrevellEach Blueprint has a priority, a "definition" status, and a "delivery" status.18:08
mrevell 18:08
mrevellAnybody can contribute Blueprints for any project - there is no way to prevent someone from posting their ideas.18:08
mrevell 18:09
mrevellHowever, the project leaders can set the priority - which means the extent to which they endorse the idea, or think it is important to implement soon.18:09
mrevellThe "definition" status tells you whether or not the project has reached consensus on how the idea should be implemented.18:09
mrevell 18:09
mrevellIn some projects there will be a person, or team of people, who will approve the plan.18:10
mrevellIn others, plans are considered unnecessary or harmful, so this value is less important.18:10
mrevellIn Ubuntu, they try to have a senior contributor review and approve any significant piece of work that is planned for any given release.18:10
mrevellOf course, lots happens without these plans, but it does give some certainty that the various plans gel well, and that people have thought about the most important issues before they commit to getting something done in a particular release.18:10
mrevell 18:10
mrevellFinally, the "delivery" status is all about implementation and execution.18:11
mrevellIt tells you whether the work has been done, or whether it is on track to be done.18:11
mrevellEach blueprint also has a:18:11
mrevell 18:11
mrevell* "Drafter" - the person who is responsible for setting out the idea18:11
mrevell* "Assignee" - the person who is going to implement the ideas set out in the blueprint18:11
mrevell* "Reviewer" - the person who'll check the work on the blueprint.18:11
mrevell 18:11
mrevellYou can see these in the top right of the page, alongside the implementation status, priority and a definition.18:12
mrevellWhere to put the details18:12
mrevell 18:12
mrevellLaunchpad itself only contains a summary of the Blueprint - usually just the introductory paragraph - and then a URL to the location of the real document.18:12
mrevell 18:12
mrevellIn some cases, the single paragraph (or sentence) is enough, but it's more typical to keep the full document in a wiki, where members of the community can easily collaborate.18:13
mrevell 18:13
mrevellJust having a list of proposals and ideas in one place is useful, even if, as in the case of Ubuntu, there are clearly many more ideas than developers!18:13
mrevell 18:13
mrevellIt's convenient to be able to point new members of the community at a single place where those ideas are catalogued and to allow people to gravitate towards the pieces they are most interested in.18:13
mrevell 18:13
mrevellPeople can subscribe to Blueprints and get notifications when their status changes and even when the wiki document they are in is updated.18:13
mrevell 18:13
mrevellNewcomers can easily see which ideas are important to the project leaders, and which are not, so they can choose to focus their contributions on those pieces most likely to be accepted into the project.18:14
mrevell 18:14
mrevell 18:14
mrevellLinking blueprints18:14
mrevell 18:14
mrevellLaunchpad allows you to link a blueprint and a bug, or a blueprint and a branch of code.18:14
mrevell 18:14
mrevellThis allows people to see how pieces of work relate to one another.18:15
mrevell 18:15
mrevellIt's very useful, for example, to be able to see the code that implements a blueprint evolving over time.18:15
mrevellIt's also possible to link blueprints to one another, indicating rough dependencies.18:15
mrevellThis lets you map out the order in which pieces of work should be implemented.18:16
mrevell 18:16
mrevellLet's take a look at an example of the dependency chart that Launchpad produces:18:16
mrevellThis is a very simple example. This particular blueprint depends on one other. The current blueprint is shown in red. The other blueprint is in grey, which shows that it has been implemented.18:18
mrevell 18:18
mrevellRelease management18:19
mrevell 18:19
mrevellThe most useful aspect of Launchpad's blueprint tracker, however, is the ability to group  the blueprints that describe chunks of work that the project thinks are important to track for the next major series.18:19
mrevell 18:19
mrevellHere's the list for Gutsy:18:20
mrevell 18:20
mrevellThese are blueprints that have been reviewed by the team18:20
mrevelland that they  agreed should be worked on during the Gutsy cycle.18:21
mrevellIn general, about 80% of the planned feature goals have landed in each Ubuntu release.18:21
mrevellUbuntu choose to ship on time, rather than necessarily waiting till every feature lands. However, different projects can adopt different release management goals.18:21
mrevellThe important thing, of course, is that everyone can see where the project stands on any particular item.18:22
mrevellSometimes you may want to group just the blueprints that are relevant for an interim release. For that, Launchpad has what we call milestones.18:22
mrevell 18:23
mrevell 18:23
mrevellWe've discussed projects and series, which are the major ways in which we keep track of the progress of a free software project in Launchpad.18:23
mrevell 18:23
mrevellMilestones are a very lightweight way to organise a group of bugs or blueprints.18:24
mrevellA milestone is a point in time, or a test release, for which you need to keep track of a few bugs or blueprints.18:24
mrevell 18:24
mrevellIn Launchpad, you can easily create a milestone, and then link bugs or blueprints to that milestone as a way of saying "we think these items are worth keeping track of as we get closer to that date".18:24
mrevell 18:24
mrevellHere's an example milestone. It's the 1.1.11 milestone for the whole Launchpad project and is what we're working on now, due for release in November:18:25
mrevell 18:25
mrevellAs you can see on that page, there are a number of blueprints targeted against the milestone, just as there were earlier when we look at Gutsy's blueprints.18:26
mrevellIn the Launchpad team, we make a new release every four to five weeks. This means that we're making iterative improvements to Launchpad quit frequently. So, each release isn't a major release.18:27
mrevellBug<--->Blueprint links18:28
mrevell 18:28
mrevellEarlier, I menetioned that you can link bugs and blueprints.18:28
mrevellLet's take a look at the Bazaar project for an example.18:28
=== pleia2_ is now known as pleia2
mrevell 18:29
mrevellThis is a list of all the branches of the Bazaar project that Launchpad knows about.18:30
mrevellScroll down and you'll see three types of icon beside the branch names:18:30
mrevell* A small bug.18:30
mrevell* A warning triangle.18:30
mrevell* Some blue papers.18:30
mrevell 18:30
mrevellThat last one is indicates that the branch is linked to a blueprint.18:31
mrevell 18:31
mrevellSprints and meetings18:31
mrevell 18:31
mrevellMany free software projects use real-world meetings to thrash ideas or as development sprints.18:32
mrevellLaunchpad helps you to organise such meetings and use a list of blueprints as the meeting's agenda.18:32
mrevellUbuntu's six-monthly Ubuntu Developer Summits are an ideal example of such a meeting.18:33
mrevellLet's take a look at what's planned for next week's UDS in Cambridge, Massachusetts.18:33
mrevell 18:34
mrevellUsing the two panels in the left-hand sign of the page, you can see when the meeting is, who's organising it and who is attending.18:35
mrevellYou can also sign yourself up as an attendee.18:35
mrevellIn the central part of the page is a "full current agenda" link, which takes us to:18:35
mrevellThese are all the blueprints that are due for discussion at UDS Boston.18:35
mrevellAgain, this is another example of Launchpad Blueprint offering a very simple solution to a common problem in planning a free software project.18:36
mrevell 18:36
mrevellThat's all folks18:36
mrevell 18:36
mrevellI'll be very happy to take your questions now, if you have any.18:37
mrevellPlease paste them in the #ubuntu-classroom-chat channel.18:37
mrevellAlternatively, please mail me - feedback@launchpad.net18:37
mrevellI'd also like to invite you to join us on the launchpad-users list:18:37
mrevellYou can come along to our developer meetings in #launchpad at 14.00 UTC every Thursday.18:38
mrevellAnd if you want to find out more about what we've got planned for Launchpad, join the Launchpad Beta Testers team at:18:38
mrevellNo questions?18:39
mrevellOkay, well, thank you for joining me today. Goodnight!18:39
mzungumrevell, thanks18:40
samgeethanks, matt18:40
habitanteehola comunidad18:57
habitanteetengo problemas al al actulizarme18:57
superm1@date chicago18:58
superm1Hi everyone, my name is Mario Limonciello, and I'm leading the Mythbuntu effort.19:00
superm1I'm assuming that everyone attending here today has at least heard of Mythbuntu.  In case you haven't though, I'd recommend you take a quick look at our homepage at http://www.mythbuntu.org .19:00
habitanteeq dice la comunidad19:00
superm1i'll talk a little bit about our bases and then move over a little to talk about the development cycle19:00
superm1The big thing that makes Mythbuntu stand out from other similar projects is its relationship within the community.  All development is done directly within the Ubuntu archives and follows the standard Ubuntu release cycle.19:01
superm1We are happy to share our code, artwork, and everything we have learned during development with other teams.19:01
lagahabitantee: wrong channel, try #ubuntu19:01
superm1We have actually been in colaboration with the Ubuntu Media Center (UMC) team regarding some common blueprints and goals that we share such as remote control support (LIRC).  Likewise, the UMC team has begun to adapt some of our scripts and smaller applications that we use to create our environment.19:02
superm1there has been a common push between us to make remote control support a more OOTB (out of the box) user friendly experience19:02
superm1items here have ranged from adding support for pre-compiled kernel modules, improving debian install scripts, all the way to writing custom third party applications to help19:03
superm1By using Ubuntu as our base and doing the development within the Ubuntu archives, we have a requirement of interaction with a large variety of other teams.19:03
superm1One of these teams is the MOTU (masters of the universe) team.19:04
superm1you may have attended some meetings in here where they discussed packaging and how all the things in universe get maintained19:04
superm1All of the Mythbuntu specific packages sit in Universe or Multiverse.  Since i'm now a MOTU, I am typically the person sponsoring our packages.  This doesn't mean however that I am the sole sponsor or developer of the packages.19:05
superm1if mythbuntu is to eventually turn into a canonical "supported" project, these packages will eventually need to be moved over to the 'main' component19:06
superm1Several of our team members have aspirations to eventually become MOTUs themselves.  I am working with them and trying to teach them how to properly produce packages that are sufficient for the archive.19:06
superm1PPAs (personal package archives) have been immensely useful here in testing our new packages.  Since our build process doesn't currently use the standard Ubuntu CD image builder, we have been able to add support for using a PPA to build the disks.19:06
superm1If one of us has a package that needs to be verified to work correctly before pushing it out to the archive, it can be pushed to the PPA.  Any of us can then initiate a new local CD build that would use the PPA.  Once the CD build has been verified to work with that package, it can be pushed to the normal Ubuntu archive.19:07
superm1If you are considering becoming a MOTU yourself, we are always looking for more people to help maintain and add additional new packages.  If you'd like to try to work on helping us with some packages to add to your portfolio of sponsored uploads, come and join us and we can try to help mentor you.19:08
lagaregarding the move to main: currently, the MythTV packages cannot be moved to main because of dependencies, eg liblame. liblame is used to encode the audio stream with some types of TV cards.19:08
superm1if ever MythTV can be abstracted to depend on liblame or a third party "for purchase" decoder/encoder, this can become more feasible19:09
lagawe'd have to move away from liblame and friends to put mythtv into main. in order to do that, we'd need to work with upstream. there's also been an (orphaned AFAIK) project on debian's alioth server which tried to do just that.19:09
lagasuperm1: yes, this will require some careful interaction with upstream. upstream seems to like liblampe a lot - that's an adventure for the future :)19:10
superm1well, so if anyone has an interest in doing this, we can chat some more in our development channel about technical requirements and alternatives19:10
superm1I'll jump back onto what i was going to go into next :)19:11
superm1So wrg to packaging, the way that I got involved with Ubuntu originally was by working on the 'mythtv' package19:11
superm1personally i've tried to stick to very related packages such as lirc, ivtv, mythplugins, ffmpeg, mplayer etc19:12
superm1lots of MOTUs like to have diversity in the packages they work with, but i'll say its not necessary to become a MOTU19:12
superm1the more important part is to show the knowledge that you have with packaging, and the conciseness, and concern for intricacies and ramifications for changes19:13
superm1okay moving on:19:14
superm1Another big area that we touch upon is Ubiquity.  We are the first Ubuntu derivative to have a custom frontend for Ubiquity.  Our frontend for it is derived from the GTK frontend.19:14
superm1ubiquity is written in the sense that it can have different "interfaces"19:14
superm1when you install a standard GNOME based Ubuntu install, you use the GTK interface19:14
superm1if you install Kubuntu, you will see that it uses a QT based interface instead19:15
superm1both of these interfaces are considered 'frontends' which call upon common code that is used to actually do the installation19:15
brobostigonis this the mythbuntu session??19:15
superm1brobostigon, Yes19:15
lagabecause kubuntu uses KDE which is based on QT - you get a more consistent interface.19:15
superm1mythbuntu doesn't really have a standard 'interface' per say like gnome and kde do though19:15
superm1we have just chosen to adapt GTK out of a personal preference19:16
superm1so our frontend then derives a lot of its functionality directly from the GTK interface that is used for Ubuntu19:16
superm1By using this custom installer we have the ability to ask questions and perform installations that would typically only be available in an alternate type installer.  We can then have custom post installation steps and do a lot more than the standard installer.19:16
superm1if you have looked at the Ubuntu installer, it is much shorter than ours is.  Ours is actually about twice as long.19:17
superm1by doing this, we are able to ask additional questions to better customize the system, and packages installed before you actually reboot.19:17
lagasome time far, far away we might use the MythTV UI libraries to build an installer (and port mythbuntu-control-centre as well), but that won't happen soon. if you're interested, there's a very interestinjg ├╝project called "mythpython" which aims to porvide python bindings for the UI code of MythTV19:17
lagait's still in its early stages, though. search the mythtv-dev mailing list if you're interested. also, you can come to talk to use in our developer channel :)19:18
superm1it would be very cool to have an installer that was based out of libmythui though too19:18
superm1the problem is that by using ubiquity our entire installer is based off a combination of sh and python19:18
superm1so it would be a very involved conversion to go to C or C++19:18
laganot if we end up using mythpython. but we'll have to see how everything works out :)19:19
superm1as I said our installer disk is kinda like a hybrid between the 'alternate' installer and the normal ubiquity installer19:19
superm1because so much time had to be put into working on the ubiquity based installation, we didn't manage to finalize the items necessary for an 'alternate' disk install19:19
superm1this will be one of the goals for the upcoming cycle however.19:20
superm1something very nice though, the installer team has been very accepting of our code19:20
superm1so we actually have our ubiquity builds built at the same time as the normal ubiquity19:20
superm1this being said though there is a lot of work to be done in the installer yet.19:21
lagasome examples of what we're doing in our installer: we can set up LIRC (eg make your remote control do something useful), configure proprietary drivers including TV-out, enable VNC and a few more.19:21
superm1so if anyone would have an interest in learning more about how it works, implementing their own derivative, or even abstracting the frontend further for other derivatives to take advantage of, these are all items you can come and join us to talk about19:22
superm1As you would expect, like a lot of Ubuntu, we use a lot of custom code to integrate and work with these packages.  A lot of our development has been python lately.  However we are looking people who are interested in helping the project.  This includes artists, translaters and coders to name a few. We're also looking for people who'd like to help out with documentation. If you think you can help our effort, please do get in contact.19:23
superm1a majority of ubiquity itself is python, as well as multiple of our custom applications that were written19:23
superm1if you take a look at the screenshots on mythbuntu.org, you will see some for the mythbuntu-control-centre19:24
lagalike mythbuntu-control-centre and mythbuntu-lirc-generator19:24
superm1yup :)19:24
superm1these are completely custom applications that create an incredible end user experience19:24
DaveMorrisscreenshots- http://www.mythbuntu.org/image/tid/519:24
superm1we're always looking for ideas to improve them still though, and more developers to improve them too19:25
superm1one of the biggest ways we were looking for help still was translations.  As an example, we are pleased to see our control centre application being translated.  Currently that effort is going suprisingly well with 15 languages being worked on.19:26
superm1https://translations.launchpad.net/ubuntu/gutsy/+source/mythbuntu-control-centre/+pots/mythbuntu-control-centre . You can also help us translate the packaging scripts at https://translations.launchpad.net/ubuntu/gutsy/+source/mythtv and https://translations.launchpad.net/ubuntu/gutsy/+source/mythplugins19:26
superm1so as you can see there is a very large variety of areas that we touch upon to make this derivative happen.19:26
superm1there are many teams that are involved with the interaction, even if indirectly19:27
lagawhich means there's a very large variety of areas where we can use your help :)19:27
superm1so even if you don't contribute to us directly, but help out with one of the parent projects that we use: you will help us immensely19:27
superm1recently since we started to use Xfce, I messaged the Xubuntu development team, and we will be working with them19:28
superm1so out of that, both xubuntu and mythbuntu will be improving with all of the increased exposure and bug filing that will result19:28
superm1okay so that's about what i had to say about our development.  So if you would like to get involved, please join us in #ubuntu-mythtv-dev shortly after this meeting.19:29
superm1we can discuss more of our specifications19:30
superm1and goals for hardy19:30
superm1Lastly, I'd like to thank everyone for putting aside some time to come and hear what we're about.  I'll open the floor to any questions.19:30
DavieyPlease ask questions to the mythbuntu dev team in #ubuntu-classroom-chat , and they will be pasted in order.  Thanks19:30
Daviey< DaveMorris> [QUESTION] What does mythbuntu plan to add over the coming  Hardy cycle?19:30
superm1well we've got a very large (and growing) list of specs19:31
superm1some of the bigger ones will be switching over to mythtv 0.21 as it gets released19:31
superm1and adding support for out of the box IR blasters19:31
superm1and consequently multiple LIRC devices19:32
DavieyWe are also at a stage where we really need to thrash out some ideas that we have had.  These will be converted into blueprints for inclusion in Hardy (8.04)19:32
superm1if anyone has any ideas that they would like to see that are not on that list, please feel free to add a spec19:33
superm1you just need to register with launchpad. anyone registered on launchpad can submit one.19:33
superm1any additional questions?19:34
tgm4883_laptop[QUESTION] What is the process of becoming a Mythbuntu developer or in aiding in the development of it.19:34
superm1well there are three big ways that development can be aided19:34
superm11) help out with a project that we use in mythbuntu.19:35
superm1this is probably one of the best ways, because then we benefit as well as a lot of other people19:35
superm12) Testing testing testing19:36
Daviey2a) report bugs, report bugs, report bugs!19:36
superm1if we don't have people testing our products before release, its hard to gauge what's broken19:36
laga2b) triage bugs!19:36
superm1right after our first stable release, there was a large influx of bugs that could have been trivial fixes, but since we had just released, there wasn't much we could do about them at that time19:36
superm1the biggest point here will be regression testing19:37
superm1especially if you have very obscure hardware19:37
superm1there might only be 5 of you out there with that hardware, but if we know that it doesn't work for you, we can fix it and have it work for all 5 of you19:37
superm13) Come and join us in #ubuntu-mythtv-dev19:38
Daviey< tgm4883_laptop> [QUESTION] If i wanted to help, how active would i need to be?19:38
superm1we can talk to you about your strengths and weaknesses19:38
superm1and find where it would be best for you to help out with the project19:39
superm1you can commit as much time as you would like19:39
superm1there are no "requirements" per say19:39
superm1this is after all a community effort19:39
superm1we can try to set realistic deadlines for different specifications that are assigned and such.19:39
DavieySo flexible!  If you can help - do :)19:40
superm1and remember contributing doesn't have to be directly working on code19:40
superm1translations, helping users, and bug fixing are all great things to do19:40
superm1our forums are getting quite busy, so the more help the bettter19:40
superm1s/bettter/better/ :)19:40
DavieyThe initial artwork was done by coders.. and it showed :) .  So anything you think you can bring to the project, we are listening.19:40
Davieytgm4883_laptop> [QUESTION]  If I had an idea for mythbuntu, whats the best way to make sure it gets into Hardy?19:41
superm1file a spec on it19:42
superm1the more information you can add to the spec the better19:42
superm1if you for example have a remote control that works with a 10 step process19:42
superm1put that 10 step process in the spec19:42
superm1if you've got the time and knowledge to do so: even better, join up with us and implement it :)19:42
Daviey< laga> [QUESTION] how does regression testing work on Mythbuntu? .. and how do i go back to a previous version?19:43
superm1if you've got some general ideas where things need to be changed, but dont know the final details, we can help you walk through implementing it19:43
superm1the best way for regression testing is with multiple hard drives19:44
superm1you dont need to have two 500 gig drives to do it19:44
superm1just some basic tests would suffice.19:44
superm1have a working 7.10 install on one drive19:44
superm1and when you would like to do some regression testing, pop in the other drive instead19:44
superm1do a test install, and see what has changed and/or stopped working19:44
lagait's also a good idea to keep backups - both of our database and of your whole Mythbuntu install.19:44
superm1well if you're going to test an upgrade install - yes19:45
superm1if you are just doing hardware regression testing, you can just do a quick test install to that second drive19:45
lagaPlease remember that schema upgrades might be performed when a newer version of MythTv is introduced into an existing install. So: think twice before you connect your testing install to your existing master backend. :)19:46
superm1next q?19:46
DavieyAny questions people?19:47
superm1okay well looks like we're finished up here then.  Anyone that would be interested in joining our development, we're going to have a short meeting in #ubuntu-mythtv-dev in 10 minutes.19:49
superm1thanks again for coming and listening.19:49
DavieyThanks superm119:49
mzungusuperm1, many thanks!19:50
jelmerhi class20:06
lagahi jelmer20:07
jelmerI'll be hosting the next session, which will be about Bazaar, the distributed version control system20:07
jelmerI'm Jelmer Vernooij, a regular contributor to Bazaar20:08
jelmerBazaar is a distributed version control system20:08
jelmerit keeps track of the changes to a source code tree20:09
jelmerand you to share changes you make to that tree with other developers20:09
jelmerit allows you to browse the history of the tree and particular changes made at each point in history20:10
jelmerBazaar is packaged in Ubuntu and most other Linux distributions20:11
jelmerand always works very well on Windows and Mac OS X20:11
jelmerif you have Ubuntu, you can install the "bzr" package20:11
jelmerI'll give a short introduction of how to make a directory versioned20:13
jelmerTo create a new Bazaar branch (a directory structure of which Bazaar keeps history), run "bzr init <directory-name>"20:14
jelmer#ubuntu-classroom-chat betreten20:15
jelmer<hendrixski> QUESTION: if I make a personal branch from let's call it branch A and my friend makes a personal branch from branch A as well... is it possible for me to merge with my friends branch without having to merge back with branch A?20:15
jelmerhendrixski: If you mean integrating his changes without having to run "bzr merge" and then "bzr commit": you can run "bzr pull" if you have no additional changes in your tree that he doesn't have20:16
jelmerhendrixski: otherwise, you will have to run merge and commit your changes explicitly20:17
jelmerok, on with the session20:17
hendrixski:-) jelmer sorry. the question is about if two child branches can merge across each other without having to merge back with the parent?20:18
jelmeronce you have create the new branch, you can add files to it20:18
jelmerhendrixski: Yes, they can20:18
hendrixski:-) thanks: I had some trouble with this, just wanted to make sure it _is_ possible20:19
jelmerso, say you created a branch with the name "foo", you can now add a new file "bar" in that directory20:19
jelmerby running "bzr add bar"20:20
jelmer<Mez> QUESTION: is ther eany plans so that bzr-svn can branch from a local repository (a quick branch) instead of having to pull the full repo down, I want to use br - but with 16000 commits, the net breaks before it branches20:20
MezNOTE: I will be acting as relay for this session20:22
jelmerMez: As of version 0.4, you should already be able to do that without copying the contents of all the revisions. It will still need to fetch the metadata though, but that should be relatively quick.20:22
Mezwhat version is current of it in gutsy ?20:22
jelmerMez: 0.4.1, which is pretty old actually. 0.4.4 will be released in a few weeks20:23
jelmerso, to get on with the session20:23
jelmeronce you have added that new file, you should be able to store the changes by running "bzr commit"20:24
jelmerBazaar will then ask you for a description of the changes you've made20:24
=== vilde__ is now known as MLP
jelmerYou now have the first "revision" of your directory20:26
jelmerrun "bzr log" to have a look at the history20:27
=== Mez changed the topic of #ubuntu-classroom to: Ubuntu Open Week info: Information and Logs: https://wiki.ubuntu.com/UbuntuOpenWeek | Ubuntu classroom transcripts: https://wiki.ubuntu.com/ClassroomTranscripts | Please ask questions in #ubuntu-classroom-chat not here | Current Session: Bazzar-NG Jelmer Vernooij
=== Mez changed the topic of #ubuntu-classroom to: Ubuntu Open Week info: Information and Logs: https://wiki.ubuntu.com/UbuntuOpenWeek | Ubuntu classroom transcripts: https://wiki.ubuntu.com/ClassroomTranscripts | Please ask questions in #ubuntu-classroom-chat not here | Current Session: Bazaar-NG Jelmer Vernooij
Mez<hendrixski>  QUESTION: are bzr branches sensitive to which version of bzr one is using?  For example, would it pose problems if I'm using version .15 and try to merge with someone using the latest version?20:28
jelmerBazaar is backwards compatible, so new versions can read all older branches20:29
jelmerNew versions may support branch formats that are not supported yet by older versions20:29
jelmerbut they will not automatically upgrade branches20:30
Mez<stani> QUESTION: what is the best gui for bzr? Does something exist similar to tortoisesvn?20:30
jelmerbut leave the choice to upgrade to you20:30
jelmernewer formats are usually faster and support more features, but they may not be supported by older versions20:31
jelmerstani: there is a project called tortoisebzr, which aims to provide an equivalent to tortoisesvn on Windows20:31
stanibut for ubuntu?20:32
jelmerit's wiki page is here http://bazaar-vcs.org/TortoiseBzr20:32
Mez<stani> (of course i mean on ubuntu)20:32
jelmerThere is also NautilusBzr, which is Bazaar integration for Nautilus20:32
jelmermore info can be found here http://bazaar-vcs.org/NautilusIntegration20:32
Mezjelmer: nothing in the KDE range yet ?20:32
jelmerIt needs some love though20:32
jelmerMez: There is a Qt Bazaar frontend, but no integration for Konqueror yet20:33
* Mez will poke around later ... do carry on jelmer ;)20:33
jelmerok, now that you've got a simple branch with one file you should be able to make change or two and commit those20:34
Mez<stani> QUESTION: one of the biggest critics on bzr is the speed. Is there any progress on that?20:34
jelmersimply edit the file "bar" and run commit again - this change should also show up in "bzr log"20:34
jelmerstani: yes, performance is the #1 thing we're working on at the moment20:35
jelmerwe've recently merged a new data format called packs that is significantly faster20:35
jelmerEspecially network operations will be several orders faster20:36
jelmerand bring performance very close to git or mercurial20:36
MezQUESTION: we currently use svn at work, containing ~ 160k commits.... how can I best convince them to switch to bzr ?20:37
jelmerMez: 160k commits in a single branch or across several branches?20:38
Mezsingle branch, theres, ~ 400k in total20:38
Mezsvn revision number is 260k20:38
jelmerwow :-)20:39
imbrandonwindows kernel ?20:39
Mezhehe, it's a 9 year codebase ;)20:40
Mez(includnig converted stuff from CVS)20:40
jelmerMez: performance will still be the biggest issue there I think20:40
Mezjelmer, :(20:40
jelmerMez: and it may not be feasible to work with that history until shallow branches land20:40
Mezjelmer, ah well, I'll try when we do the rewrite20:41
Mez<stani> QUESTION: For a project I want to be able to retrieve the version number of a branch with python. So that I can name a tar automatically like eg. package-0.1.bzr123.tar.gz (if 123 is the revision number) Is there a simple API cal for that?20:41
jelmerMez: packs are a really big improvement and may be fast enough, but I haven't tried repositories that large yet20:41
jelmerMeZ: packs work well with the mozilla tree, which is 200k revisions iirc20:42
jelmerfrom bzrlib.branch import Branch20:42
jelmerprint Branch.open("/path/to/branch").revno()20:43
MezQUESTION: whats the ewasiest way to merge in a branch to my local branch as it was at a revisiion (I want to merge in what they had at r60)20:43
jelmerbzr merge -r60 <path-to-their-branch>20:44
Mez<hendrixski> QUESTION: at work we haven't set up a version control set up yet (it's a startup) and we'll be doing some proprietary development as well as using a few small parts that we tear out of an upstream project that uses SVN.  Is it worth it for us to start out using a distributed vcs like bzr, or would you recommend we stick with a centralized system like SVN just because it seems like the corporate standard?.20:45
jelmerhendrixski: Bazaar can be used in a centralized model, very much like Subversion20:45
jelmerhendrixski: If you need integration for an editor that doesn't have Bazaar integration or for the Windows explorer, I'd recommend Subversion20:47
jelmeror perhaps if you need support for svn-like keywords or the ability to version very large (gigabytes) files20:47
MezQUESTION: why is python-paramiko not listed as a dependency in the ubuntu packlage ?20:48
jelmeryou should be able to pull changes out of upstream Subversion using bzr-svn or (if upstream is free software) request a vcs-import for it in launchpad20:48
jelmerMez: paramiko is only required when using Bazaar remotely with sftp:// or bzr+ssh:// urls20:49
jelmerBazaar: which I agree are pretty common, but Bazaar is perfectly usable without them20:50
Mezjelmer, which is needed for LP integration - which is a big push surely ?20:50
jelmerfor example, you can work locally only, use bundles, or ftp20:50
jelmerMez: yes, and it's marked Recommends for that reason. We can argue whether the extra disk space required for those few users that don't need is a fair tradeoff20:52
jelmerfor those that get confused by the fact that sftp or bzr+ssh doesn't work out-of-the-box20:52
jelmerand I can certainly see the point for that, but let's have that discussion on the packaging list20:53
jelmerSo, now that you've got a simple Bazaar branch, you can publish it20:54
jelmerLaunchpad provides hosting for Bazaar branches20:54
jelmerbut you can also push to any host that's running an ssh or ftp server20:55
jelmeryou should be able to upload your branch to Launchpad using the push command20:56
Mez<hendrixski> QESTION: I had trouble publishing to an FTP server, and I understand it's probably because my host doesn't accept certain FTP protocols (or something)... I understand that a future version of BZR will also fix this.  When is that planned to be rel20:56
jelmerfor example: bzr push bzr+ssh://bazaar.launchpad.net/~jelmer/+junk/foo20:57
jelmerI don't see any pending fixes for ftp for 0.9220:58
Mez<Rudd-O> QUESTION: how does brz compare with git?20:59
jelmerhendrixski: Do you remember what exactly it was breaking on?20:59
jelmerI see several open bugs regarding ftp: https://bugs.launchpad.net/bzr/+bugs?field.searchtext=ftp&orderby=-importance&search=Search&field.status%3Alist=NEW&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.assignee=&field.bug_reporter=&field.omit_dupes=on&field.has_patch=&field.has_no_package=21:00
hendrixskijelmer, no but I can pastebin it to you after the session: I'd like to hear about Rudd-O's question while there's still time21:00
jelmerRudd-O: So, each has it's advantages21:00
Rudd-Oso what are they?21:01
jelmerThis answer may be a bit subjective, so you're warned :-)21:01
jelmerBazaar has focussed on correctness and UI21:01
jelmerand has now started working on performance21:01
jelmerfor git, it's the other way around21:01
jelmerThere are also a bunch of other differences21:02
jelmerGit doesn't track directories as far as I know, while Bazaar does21:02
jelmerBazaar handles a bunch of corner cases for merge better21:02
jelmerGit does one working tree per repository21:03
jelmerBazaar does one working tree per branch21:03
jelmerBazaar's command set is more similar to that of Subversion or CVS21:03
jelmerand should be easier to grasp for "normal" users21:04
jelmerBoth will have support for nested branches/submodules in future versions21:04
jelmerThere is actually work going on on supporting git's data format in Bazaar - the bzr-git plugin21:06
jelmerBazaar has very good Windows support21:06
jelmerGit has some, but it's very slow (Bazaar is actually significantly faster than Git on Windows last I checked)21:06
jelmerOk, to wrap up21:07
jelmerso now that you've pushed your branch to launchpad, other people should be able to clone it locally21:07
hendrixskijelmer thank you for answering our questions.. reading manuals only paints so much of a picture, being able to ask questions gives priceless perspective.  Thanks :-)21:08
jelmerby running something like: "bzr branch http://bazaar.launchpad.net/~jelmer/+junk/foo launchpad-foo"21:09
Mezhendrixski, and you can always ask questions in #bzr21:09
jelmerand you can also view the details of that branch by opening it in your browser21:10
jelmerok, that was my first open week session :-)21:11
jelmerthanks for all those attending21:11
jelmermore information on bazaar can be found at http://bazaar-vcs.org/21:11
jelmerquestions are also welcome in our IRC channel, #bzr on this server21:11
imbrandonjelmer, great session , thanks21:11
jelmeror on the mailing list, bazaar@lists.canonical.com21:11
mzungujelmer, thanks - gonna start using bazaar now!21:12
imbrandonOKIES, Hows everyone doing this $timeofday ? Ready to get started with some Package Patching ? ....21:14
* mzungu ready21:14
imbrandonI'm not the best at switching IRC channels to see #ubuntu-classroom-chat so if you do talk to me in there please hilght my name, lets get started21:15
imbrandonI'm Brandon Holtsclaw ( https://launchpad.net/~imbrandon ) , Ubuntu MOTU and "core-dev" I work with Kubuntu mostly but touch alot of diffrent things.21:15
imbrandonI'm going to be giving a primer on Patching Ubuntu packages today. At any time feel free to stop me and ask questions ( no need to Use the #ubuntu-classtroom-chat channell for this session, we'll save that for the next one if needed )21:15
imbrandonOn that Note I had a file system corruption and lost some of the nots I had prepared for this session but I'm sure with what I ahve left and your questions we can just wing it. Soooooo onto the fun stuff.21:15
imbrandonnotes* , man if i could type today it would be good too21:16
imbrandonIn earlier times, people just applied patches inline (i. e. directly in the source code tree). However, this makes it very hard to extract patches later to modify them, send them upstream, etc.21:16
imbrandonAlso this means that new upstream versions are a pain, since they generate a lot of rejections when applying the package diff.gz to them.21:16
imbrandonThe ideal state is an unmodified tarball from upstream, plus clean and separate patches.21:17
imbrandonWhat patch system you use largely depends on the package you are working on, for now lets assume you are working on a existing debian/ubuntu package.21:17
imbrandonWhen working with packages in Ubuntu we try to keep the Diff or "Delta" with Debian small so for that reason its often best to use what ever patch system is already in palce in the package most of the time.21:18
imbrandon( only exception to that being if something is broken and you are working directly with the Debian Maintainer to make the patch system changes)21:19
imbrandonSome of the patch systems you will come accross are dpatch, cdbs simple-patch-sys, diffs in debian/patches with special debian/rules and so on. There are many many many diffrent patch systems and we would not have time to cover them all here21:19
imbrandonSo i'll be touching on some of the more common ones, like cdbs simple-patch-sys21:20
imbrandonone of my personal favorites21:20
imbrandon( unless someone prods me about another one , *hint* )21:20
imbrandon[15:19] <hendrixski> QUESTION: you mentioned the diff or delta... as something other than patches where changes can be made... can you explain that? because I thought the only way to add stuff to upstream was to add a dpatch.21:21
imbrandonno , the diff or delta in this case is changes that ubuntu has made to packages seperate or ontop of what debian has21:22
imbrandonnot nessesiarly upstream21:22
imbrandonso say we are working with x-chat as an example21:22
imbrandonx-chat in debian has a very simple patch to make #debian and irc.debian.org the default server and channel when installed21:23
imbrandonwell in ubuntu that would not be correct, so we make a change to the patch for irc.ubuntu.com and #ubuntu as the channel21:23
imbrandonTHAT is the "delta" i refered to, the change between ubuntu and debians package we try to make as small as possible21:24
Mez<Rudd-O> QUESTION: so is it like the %patch directive in RPM specs?21:24
imbrandonthus we use the patch system that they may have in place for each package21:24
imbrandonRudd-O, well I'm not at all familiar with RPM creation other than it requires a .spec file :) so i'm not qualified to say, but I would imagine21:25
imbrandonthey are very similar21:25
imbrandonusing cdbs simple system as an example might clear this up a tad21:25
imbrandonit is one of the easiest for new packagers to understand21:26
Mez<Rudd-O> in RPM you distribute the patches in a single srpm along with the tarred package source, and the %patch directive applies them in order before compilation21:26
imbrandonRudd-O, yes, sounds very much the same21:26
imbrandonthe way patches are distributed in ubuntu is in the source.deb file , normaly under debian/patches directory, each split out21:27
imbrandoninto small self contained patches21:27
Mezimbrandon source deb file?21:27
imbrandonyes i totaly messed that up, in the source package ( its not a deb untill compiled into a binary ) heh21:28
imbrandonthanks Mez21:28
imbrandonone half second ( mt dew on keyboard )21:28
imbrandonok sorry about that fellas21:29
Mez<Rudd-O> imbrandon: get an ibm model m keyb, they have coffee drains at the bottom.21:29
imbrandonheh , i like my apple keyboard ;)21:29
imbrandonok soo, for a tiny overview of the steps to add a small patch to say amarok from a svn commit upstream21:30
staniwhen I look to the source package of xchat there is a diff.gz file and debian/patches. How do they relate?21:30
imbrandonok we'll use that21:30
Mezstani - #ubuntu-classroom-chat please ;)21:30
imbrandonthe diff.gz is part of the source package stored in the repos, they consist of a21:31
imbrandonpackage.dsc and diff.gz and a orig.tar21:31
imbrandonthe orig.tar.gz is the * hopefully ) pristine upstream tarball21:31
imbrandonwith no packaging information stored inside21:32
imbrandonthe diff.gz is the contents of debian/ ( and anything else ) thats not in the upstream tarball including patches21:32
imbrandonthe dsc is the information dpkg uses to have meta info and recreate the source directory with the debian/ dir intact21:33
imbrandonso when you apt-get source x-chat , what it actualy does is grab those 3 files and21:33
imbrandonun-tars the upstream tarbal then applies the diff.gz , thus creating the x-chat_version directory21:34
imbrandonso now you have what you need to recreate the debian package infront of you21:35
imbrandonlet me grab x-chat and see what patch system it uses and we'll keep using that for an example21:35
imbrandonyou'll see when you apt-get source it , it also tells you that its doing just what i said, untaring it21:36
imbrandonand applying the diff21:36
imbrandondpkg-source: extracting xchat-gnome in xchat-gnome-0.1821:37
imbrandondpkg-source: unpacking xchat-gnome_0.18.orig.tar.gz21:37
imbrandondpkg-source: applying ./xchat-gnome_0.18-0ubuntu3.diff.gz21:37
imbrandonso now you can cd xchat-gnome-0.18, and notice the debian/ dir and specificly the debian/patches dir21:37
=== MrM is now known as mrmonday
imbrandoninside the patches/ dir you'll notice they are numbered .patch files21:38
imbrandonone specificly i used called 04_autojoin_ubuntu_chan.patch21:39
imbrandonthat i just spoke of21:39
imbrandonif you open this file you'll notice its a small diff for src/common/servlist.c21:40
imbrandonto have it autojoin #ubuntu21:40
imbrandonsay i was trying to get it to join #ubuntu-classroom instead , i just need to edit this patch and make my changelog entries in debian/changelog ( dch -i is good for this )21:41
imbrandonthen rebuild the package, the upstream tar is preserved and your changes will appear in the diff.gz21:41
imbrandonso this added benifet will let you forward small changes to upstream bug trackers when needed if it was to fix a bug,21:42
imbrandonor in this case its a ubuntu only patch, we dont want every gentoo x-chat user to join #ubuntu so we keep this in out own package21:42
imbrandonnot included in a "big diff" one would normaly have to sift through if they sent everything upstream21:43
imbrandon[15:41] <Rudd-O> QUESTION: if I make changes in the patched source, how do I pull the changes with a single command, short of diffing manually with a separate copy?  Is there a tool like rpm's patch build (I keep forgetting the name) tool?21:43
imbrandonwell in this case where it uses a simple patch system, not dpatch or cdbs edit patch yes, you make a seperate diff21:44
imbrandonerr diff a seperate copy21:44
imbrandondiff -ruN or similar is what i personaly use21:44
imbrandonthe easy way to do this imho is when you `apt-get source xchat-gnome` first thing you do is mv  the directory it creates to a -new21:45
imbrandonand then `dpkg-source -x *.dsc` , this just tells dpkg to untar the orig again and reapply the diff21:46
imbrandonthen you have a pristine and a -new directory to work with21:46
imbrandonno, i mean mv, but cp -Rav would also work if you havent touched the source dir at all21:47
imbrandonthe first way i stated because sometimes you wont do that untill after changes were made21:47
imbrandonalso ..21:47
imbrandonthere have been a few MOTU school sessions by pitti and others using real world examples of diffrent patch systems ( since there are so many )21:48
imbrandonyou can find those ( and other packaging School subjects ) at https://wiki.ubuntu.com/MOTU/School/21:49
imbrandonand also poke any of us in #ubuntu-motu at any time21:49
stanihow do you "rebuild a package"?21:50
=== superm1_ is now known as superm1
imbrandonok, sorry for the lack of details as I said I lost most of my notes for this session and only recovered a fwe, but feel free to grab me or any MOTU / core-dev anytime21:50
imbrandonstani, normaly after all changes are done you can rebuld the binary with the simple command "debuild"21:51
imbrandonbut sometimes you want to prepare it diffrent ways, such as to upload to a PPA then you would use debuild -S -sa , this creates a source package upload21:51
imbrandonman debuild for all the normal options, but 99% of the time it will be a simple debuld or debuild -S -sa21:52
imbrandonany Questions before we run out of time ( even though I'm running the next session too , heh , how did that happen )21:53
stanibefore you said that a source package consisted of three files, are they unified by debuild -S -sa?21:53
imbrandonstani, no they are recreated based on the working directory when you run -S -sa21:53
imbrandonthey are unified when you simply run debuild into a .deb21:53
staniso a source package is not one file, it is always three?21:54
imbrandonin ubuntu and debian yes, with one exception ( not very often it happens )21:54
imbrandonwhere a source package is only 2, this is called  a "native" package and has no .diff.gz21:55
staniand if you upload to ppa, you upload all three of them?21:55
imbrandonthis is because there is no upstream for the prooject , e.g. ubuntu IS the upstream, like kubuntu-default-settings is a good example21:55
imbrandonso no diff is needed or made21:56
imbrandonyes if you upload to a PPA you use the command `dput <ppa-name> *.changes` this changes file tells dput where to find the other 321:56
imbrandonto upload them21:56
imbrandonautomatic like21:56
geserplease dput only the *_source.changes to ppa21:57
imbrandonerr yea, i'm used to building with -S -sa where only a _source .changes is created21:57
imbrandonbut i should have specified21:57
imbrandonthanks geser21:58
imbrandonOK well if we dont have any more Questions right off I'm gonna wrap this session up ( the next one is run by me also and is a MOTU Q & A so some of the sme questions will fall under that too )21:59
imbrandonI'm gonna take a quick 3 minute break to grab a soda and we'll get started with soem MOTU Q & A21:59
imbrandongeser, feel more than free to stick arround and help field Q's with me if you feel like it :) brb22:00
imbrandonOK , back, how is everyone, we got quite a few people here for the MOTU Q & A ?22:05
imbrandonLets start off with a small blurb about just what MOTU is ....22:06
imbrandonMOTU are the Masters of the Universe ( a HE-MAN refrence for those that dont know ) that help maintain the Universe and Multiverse Repos22:06
imbrandonfor Ubuntu, we are almost 100% made up of volenteers like your self and just do it for the love of Ubuntu22:07
imbrandonyou dont have to be a uber programer or even know how to program for that matter to be an effective MOTU although it does help22:07
imbrandonits a 100% diffrent beast22:08
imbrandonyou can spend as little as 1 hour a week , or like some of us wayyyyyyy to much time at it ( /me looks over at LaserJock )22:08
imbrandonwith that said we'll go a head and start taking some Q's and do our best, LaserJock and geser are both here to help field questions also and I'll let them intro them selfs22:09
imbrandonas for me , I'm Brandon Holtsclaw ( https://launchpad.net/~imbrandon ) , Ubuntu MOTU and "core-dev" I work with Kubuntu mostly but touch alot of diffrent things.22:09
imbrandonany questions to get us started off ?22:10
stan1still a question of previous session: the diff.gz gets generated by the debian/patches when using debuild?22:11
imbrandonwell not JUST debian patches, it is a diff of everything thats not in the orig.tar.gz22:12
imbrandonso basicly debian/*22:12
imbrandonbut yes includes debian/patches22:12
geserno, the other round the diff.gz contains also debian/patches (instead of one big patch without a patch system)22:12
imbrandonumm thats what i said correct ?22:13
geseryes, that no was an answer to stan1's question22:13
gesershould have used a hilight22:14
imbrandonahh :)22:14
stan1what is the role of python-central? Probably to make python packaging more easy, but what does it do in more details?22:15
LaserJockyeah, the .diff.gz is a representation of all changes made to the .orig.tar.gz to get to a Ubuntu source tree22:15
imbrandonyes python-central is there to help not only make python packages easier , but also help you adhear to the debian python packagin policy ........22:17
geserstan1: before python-central (and python-support) python-packages had the supported python versions in the package name which meant for every new python version the packages need to be modified22:17
geserstan1: with python-central/python-support it's now easier as the packages get byte-compiled on the host (and not inside the package anymore)22:18
stan1I noticed that if a 100% python deb package from feisty is not able to run edgy, although edgy has all the dependencies except python-central. Would there be an alternative way which would be backwards compatible to edgy as well?22:20
imbrandonare you talking about the binary packages ? they probably require a rebuild with the dependancys updated is all22:21
imbrandonyou never want to run the binary package built for another sytem on your, always re-build22:22
imbrandonsame goes for any programing language except maybe bash22:22
LaserJockthere are also changes that came along when python-central and python-support were created22:24
LaserJockwhich required versioning the dependencies22:24
LaserJockthat can cause some difficulty when backporting22:24
imbrandonDo we have any aspiring MOTU's attending ? anything about the process that you dont understand quite yet ?22:25
stan1if I am both upstream and packager of a program, would it possible to automate the packaging (eg update changelog from bzr history) or would that be unwise?22:26
imbrandonyou can, although it is advised most of the time to keep the debian packagin seperate from the source22:27
imbrandon'and a seperate CHANGES file22:27
LaserJockI would personally have two branches22:27
imbrandonthis is to allow others to help work on your package too , as MOTU group maintains packages in ubuntu22:27
LaserJockone for the source code that can be exported to the .orig.tar.gz22:28
LaserJockand the other for the packaging, i.e. debian/22:28
LaserJockstan1: you might also be interested in bzr-builddeb22:28
imbrandonor svn-builddeb or cvs-builddeb if your not as fortunate to use bzr22:29
LaserJockthe problem that I would see just doing it straight from bzr history would be that we tend to keep the changelogs to just the big stuff22:29
LaserJockhaving a 2 page history of every commit would be kinda hard to dig through22:30
LaserJockfor each debian/changelog entry22:30
imbrandonunless its the kernel :)22:30
stan1yes, but i give prefixes to my commit messages, so i could do: "deb: message" and filter them out22:30
imbrandonstan1, now that cuold work but also rember not everyone that works on your package in ubuntu will use the main bzr22:31
imbrandonsay you upload it , and 2 months later i decide to "fix somehting small" in the packaging, i would just fix it and re-upload as there is no concept of maintainer in ubuntu22:32
imbrandonnow i'll most likely email you22:32
LaserJockstan1: that sounds reasonable, I'd probably go with a bash script to grep/sed those22:32
imbrandonand let you know of the change BUT you still have to take that into account22:32
imbrandon[16:30] <peppych> [QUESTION]  Hi I have followed the MUTO and packaging sessions this week and I think I got a good image of the overall tools. But I'm not sure to have got the job done right though. You finally make apps ubuntu compatible which is applying patches, new upstreams and resolve dependences or did I miss some thing?22:33
imbrandonpeppych, yes that sounds about correct with the exception of bug tracking in LP22:33
imbrandonother than that you have a grasp of the basics22:34
peppychbut how are bugs handled I mean if they are application related ?22:35
peppychyou send them to the dev team ?22:36
imbrandonpeppych, if they are application related then they are forwarded upstream22:36
peppychoh ok I think I got it right then :D22:36
imbrandonand if you feel confy with doing so and its the correct time in the cycle you can then get fixes from svn and apply them as patches22:37
imbrandonalso of note there are MANY resources at https://wiki.ubuntu.com/MOTU/22:38
imbrandonand anyone is alwasy welcome at #ubuntu-motu to ask questions22:39
imbrandonOK , I think I'm gonna do a "Last Call" for any questions you might have for the MOTU22:42
peppychI have to put my hands in it which will get it clearer to me ;) thanks for the answer and the great work you all do22:42
LaserJockpeppych: yes, actual experience really helps22:42
LaserJockI didn't really understand a lot of packaging until after I was a MOTU22:43
LaserJockgeeze, that's some cloak22:43
imbrandonNo problem, thanks everyone for Comming and hopefully we'll see you arround #ubuntu-motu, thanks LaserJock and geser for helping out, if we dont have any more questions I'm gonna wrap this up a bit early for the night22:44
mzunguimbrandon, thanks22:51
peppychthanks for the session good night all22:53
destructivehi all :)22:54

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