/srv/irclogs.ubuntu.com/2009/07/23/#ubuntu-classroom.txt

=== nhandler_ is now known as nhandler
* gwolf looks around00:47
gwolfOh! an +o!00:47
jawnsyvery nice00:48
jawnsyoh, me too00:48
nhandler_gwolf: Just preparing for the session. You guys still have ~10 minutes00:48
gwolfok00:48
gwolfyou do the signalling.00:48
=== jawnsy changed the topic of #ubuntu-classroom to: Ubuntu Classroom || https://wiki.ubuntu.com/Classroom || https://wiki.ubuntu.com/Packaging/Training || Now: Packaging Perl Modules || Upcoming: July 30 @ 06:00 UTC: Mozilla packaging techniques (extensions, patchsystems, bzr) || Run 'date -u' in a terminal to find out the UTC time
=== nhandler_ is now known as nhandler
jawnsyHi everyone00:59
jawnsyIt looks like it's about time for the Packaging Perl Modules session00:59
jawnsyHopefully some of you are here for the talk, or gwolf and I will be talking to ourselves :-)01:00
gwolfYup - 2:00AM according to me, so we are ready to start!01:00
jawnsyIf you've got a question, feel free to ask whenever. I only ask that you try to keep questions relevant to the thing currently being discussed, just so the logs don't get too confusing01:00
gwolfnhandler: So, you are the guy who invited us. Should we expect anything from you?01:00
gwolfor should we just address The Audience?01:00
maddeth1am by me :p but dont know how long I will be here01:00
nhandlergwolf: You guys are in charge now ;) I'm just here for the show now01:01
gwolfgood :)01:01
jawnsyOkay, so a quick introduction01:01
gwolfok, so lets al just welcome and listen to jawnsy01:01
ajmitchmost people will probably remain quiet :)01:01
gwolfI have this (annoying?) tendency of having a hard time to sit and listen at an audience, I always end up interrupting01:01
jawnsygwolf and myself are members of the Debian pkg-perl team, gwolf is a Debian Developer, and I am not01:01
gwolfso I'd rather interrupt jawnsy rather than myself ;-)01:01
jawnsyWe're going to do this talk under the assumption of no previous knowledge making any packages, either for Ubuntu or for Debian01:02
jawnsyLuckily, packaging Perl modules is pretty gentle. A few tools you will need frequently are: dh-make-perl, lintian01:02
gwolfThat's basically thanks to that the Perl modules all share a basic infrastructure01:03
jawnsyI'm going to go through packaging a small module from CPAN, we'll discuss what commands you can use to do it01:03
jawnsyfirst of all, in order to follow along you'll need to apt-get install the aforementioned tools01:03
gwolf...And that's also the main reason we (a group of ~15 people at most) can keep up with ~1300 packages in a reliable way!01:03
maddethaptitude installing now :)01:04
jawnsyAnother useful package is devscripts, which contains "debuild" -- a command we'll be looking at later01:04
jawnsyWhile everyone's installing that stuff, is there a particular module anyone would be interested in using as an example?01:05
gwolfjawnsy: oh, catalyst could be a good example01:05
jawnsyOtherwise I'll just pick one at random01:05
gwolf(of something you want to avoid ;-) )01:05
gwolflets start simple, with something not dependency-rich01:06
Ryan52Locale-Msgfmt01:06
Ryan52no dependencies other than Perl core, and it should "just work".01:06
jawnsyokay01:07
jawnsySo, make a directory and change into it (the build process might clutter your directory with some files, so it's best to put it somewhere). I usually make a bunch of directories like 'tmp'01:07
jawnsythe first command you want to run is: dh-make-perl --cpan Locale::Msgfmt01:08
gwolfjawnsy: Let me fill in a minute please :)01:08
jawnsyHopefully you have CPAN configured, otherwise it might ask you to configure it. Usually just hitting enter all the way down will be OK01:08
gwolfI think we have a bit different approaches - I think it's a bit better to first introduce what is _about to_ happen ;-)01:09
gwolfBut anyway - Yes, dh-make-perl is a magic script01:09
gwolf... In preparing Debian packages, you will see lots and lots of dh_* calls - To the debhelper scripts01:09
gwolfdh-make-perl is _NOT_ part of debhelper, but extensively uses i01:10
gwolfit01:10
gwolf...Anyway... Ok, I agree with jawnsy's reasoning (which was sent to me out of band)...01:10
gwolf...so I'll let him continue with the demonstration01:10
gwolfwe can later talk about pedagogy ;-)01:10
jawnsydebhelper, as you may or may not know, is a collection of scripts that Debian uses to build and install packages01:11
jawnsyprior to debhelper, we were using huge makefiles.. which, as you can imagine, gets pretty hard to maintain and debug01:11
jawnsyOnce you do dh-make-perl --cpan Locale::Msgfmt, you should see a bunch of text scroll by your screen, how it's unpacking a tarball01:12
jawnsyMost importantly, at the end, you should get a line that says "--- Done" which meant everything went OK01:12
jawnsyFor those following along with this, please confirm that you can build using dh-make-perl. If not, mention any problems you are having in #ubuntu-classroom-chat01:12
jawnsyOkay. So, it did a bunch of magic. Let's look at what it created.01:13
jawnsycd into Locale-Msgfmt-0.14, and list the directory's contents01:14
jawnsyEverything in that directory is from the tarball we just downloaded from CPAN01:14
jawnsywhat is important to note for us is the files in debian/, which basically tell our installer (debhelper) how to do its magic. It also contains metadata files that tell Aptitude how to resolve dependencies, for example01:15
jawnsyI'll go through these files (in debian/) file-by-file so we can look at what they are for.01:15
jawnsyWhile dh-make-perl is great at its magic, it's also not perfect. So we have to manually check that everything is OK and makes sense.01:16
gwolfJust as a sidemark - often, dh-make-perl's generated files are good enough for straight _local_ use01:16
gwolfthat means, if you just install them, you can basically trust they will not eat your hard disk, and will even behave01:17
jawnsyOh, yes. If you are building Perl modules for your own consumption, they are often good enough to install right away. You can use: dh-make-perl --install --cpan Locale::Msgfmt for that purpose01:17
gwolfof course, if you are interested in contributing Debian or Ubuntu, a human should check it!01:17
=== they is now known as vorian
jawnsyOften doing this is better than using the CPAN shell to do installs, because this way you can remove packages easily01:18
jawnsythe debian/compat file just contains the version of debhelper that the module is built for, in this case it should just contain "7" on its own line, which means it's designed for the debhelper 7 series01:18
gwolfAnd IIRC, dh-make-perl will not by default work on modules that are marked as unstable by their authors, just on the highest official release (which can be otherwise using the CPAN shell)01:19
maddethcat compat01:19
maddethlol01:19
jawnsyyep, it's small :-)01:19
maddethoops ;)01:19
gwolfmaddeth: Yup - debhelper uses lots of small files. You will find several such files with minor indications01:19
jawnsyNow, look inside the 'control' file01:19
jawnsyI'll briefly discuss some important points, but to get the full idea of what's going on, reading the Debian Policy Manual is the best way01:20
gwolfright - we got reminded that you might be looking at some possibly different things01:21
gwolfi.e. if you are running the latest stable versions, or even more if you are using the LTS releases, you will -of course- face older results. Specially LTS will generate a _very_ different set of results (although should be equally usable)01:21
gwolfbut anyway, please ignore such small inconsistencies01:22
jawnsyMhm. Basically, this d/control file is what tells aptitude/synaptic various things which you might see as familiar. This is where a package description is defined, among other things01:23
gwolfdebian/control basically lays out all the metainformation - What packages does this one depend on? What is it about? Who created it? ± when? (while it does not contain the dates, as we will go over that soon, it has a rough indication on when it was last updated: its standards-version)01:24
gwolf..and several other, less interesting details01:24
gwolfNote that even if you are working with Ubuntu... at the package source level, keep in mind it will always be debian/*01:25
jawnsyoh, when I say d/control, I should note that it's a short form (in discussion) for saying debian/control01:25
jawnsywe get used to that slang a lot in pkg-perl01:26
gwolfFor this module (or package, depending on which side of reality you are standing), the information in debian/control is quite minimal - but were you to build a more involved package, it can... grow quite a bit01:26
=== Pici` is now known as Pici
gwolfheh, in Debian in general, and I guess it also happens in Ubuntu :)01:26
jawnsyYes, right now, it only contains two sections (things separated by a newline)01:26
jawnsythe top part refers to the "source package", the second part refers to binaries generated from the source package. None of that matters right now, so don't worry about it01:27
jawnsyOkay, onto the next file. You should see a file called: liblocale-msgfmt-perl.docs01:27
jawnsyand a similar one with the extension .examples01:27
jawnsycat these and take a look at them. You'll notice it's just a line-separated list of filenames and paths01:27
gwolfsome of this files might not exist under some circumstances - they depend on what is included on each of the modules you work on01:28
jawnsyThese are magical files, and they trigger debuild to "install" them. Note that anything listed in these files will be installed on Ubuntu and Debian systems which install your package.01:28
jawnsyBasically, .docs is a way of listing some files which are useful for users to read, so they'll be installed on your system.01:28
gwolfAnd, of course, they are autogenerated - so it is possible you will find some examples or files missing. Feel free to just create them with the filenames (relative to the source package's root) for whatever files you want treated as such.01:29
jawnsyIt should list a single file, README, for this package01:29
jawnsytake a look at the contents of README. you'll notice that it doesn't really say anything interesting.01:29
jawnsyjust the usual stuff like how to install the package manually. this sort of thing isn't tremendously useful to our users, so you can remove the README entry from the .docs file01:30
jawnsynow, it's no use keeping an empty .docs file around, so since there's nothing we need to install, you may simply rm the .docs file01:30
gwolfIn fact, it could be (and was, several releases ago) simpler: debhelper is quite flexible. here, the filenames are prepended by the package name (liblocale-msgfmt-perl.docs i.e.) - If you were to add other binary packages generated by the same source, they would not be included. you could just name them "docs" and "examples", and the results would end up in all generated files.01:30
gwolfsorry, all generated binary packages01:30
jawnsyIs everyone following with us here?01:31
maddethcould you just remove the *.docs file altogether? or is it a requirment?01:31
jawnsyYou can remove the .docs file if it's empty01:31
gwolfYou can of course remove it if there are no docs to install01:31
jawnsyAnd you should.01:31
jawnsyOkay, the next file to look at is 'rules'01:32
jawnsySome of you in the audience might notice that it looks an awful lot like a makefile.01:32
jawnsyWell, it is :-)01:32
jawnsy(and is in fact processed by GNU make)01:32
gwolfDocumentation is usually installed to /usr/share/doc/<pkgname>, and examples /usr/share/doc/<pkgname>/examples.01:32
gwolfjawnsy: In fact, there was a discussion some months (years?) ago in Debian, as to whether debian/rules needed to be a Makefile or could be something else01:33
gwolfin theory it would work just if it had the proper shebang to anything other than make01:33
gwolfin the end it was left as a GNU make file fo... consistency01:33
jawnsysyntactically, makefiles are pretty easy to work with. there's not too much you need to know to work with a makefile.01:34
gwolfheh, at first sight don't try to make _much_ sense out of debian/rules01:34
jawnsydepending on the version of dh-make-perl you have installed, you might get files of various length.01:34
gwolfIt basically means: "For every target, call the suitable dh helpers"01:34
gwolfoh, right!01:34
gwolfWell, for the latest versions, using the short DH7 variant, it basically says:01:34
jawnsyJust remember that the rules file you have is what tells debhelper how to build and install your package, and how to clean up after itself01:34
gwolf#!/usr/bin/make -f01:34
gwolf%:01:34
gwolfdh $@01:34
gwolfBut we used to generate a ~50 line debian/rules until recently.01:35
jawnsythat's a new shorthand debhelper has, which makes working with and maintaining packages that much easier, especially Perl ones01:35
jawnsythe last file we haven't looked at yet is watch01:35
jawnsyyou don't need to care that much about that one. It's just a way for Ubuntu and Debian to automatically look for new upstream versions01:36
jawnsybecause everything is on the CPAN, dh-make-perl sets that up for us :-)01:36
gwolfit basically consists of an URL and a pattern to look for in its webpage01:36
jawnsythis way, some commands that use it, such as uscan (in package devscripts, which you should've installed by now)01:36
jawnsycan make use of the information therein. It doesn't really matter for now :-)01:37
jawnsyokay, so, now that we know what all these control files are doing, change back to Locale-Msgfmt-0.14 (the root of your package)01:37
gwolfbut you can try, just for the sake of it: Run "uscan --verbose"01:37
jawnsyah, good point gwolf :-)01:38
gwolf:)01:38
jawnsyokay, now, to actually build this package into the binary .deb files we are used to seeing01:38
gwolfanyway, jawnsy... you were picking up your magic wand01:38
gwolfplease perform the trick01:38
gwolfnote that I have my hands firmly tied behind my back and cannot move.01:38
jawnsyMake sure you have the 'dpkg-dev' package installed01:39
jawnsythis is a collection of programs you'll need to build .deb binaries01:40
jawnsythere are two commands we can use to start the build, either debuild or dpkg-buildpackage01:40
jawnsyit will display a lot of output. if you've ever installed a CPAN module in the past, you'll note that the output looks mostly the same01:41
jawnsythis is because the debhelper process is actually running the Perl build system -- that is, running Makefile.PL or Build.PL01:41
jawnsyIs anyone having problems with the build?01:42
jawnsyif you do a ls of your current working directory, you'll note that there are some intermediate build files. this is because debhelper built the module and hasn't cleaned up after itself01:42
jawnsyin order to restore everything back to the "clean" state, run the command: debian/rules clean01:43
jawnsyor 'debclean'01:43
maddethsorry jawnsy where do we run dpkj-buildpackage? the debian directory?01:43
gwolfyou can run it from the base package directory01:43
jawnsyyou want to run it in the root directory of the module, so in this case, Locale-Msgfmt-0.1401:43
maddeththankyou01:43
gwolf(you will notice my hands have been untied and you have some shiny new packages ready!)01:44
jawnsythe reason for that is that dpkg-buildpackage looks for files in debian/* under the base directory01:44
jawnsyonce you have done the build, change to the directory *above* the base directory (this is why I told you to make a temporary directory at the beginning)01:44
jawnsyyou should notice a bunch of files there. Most importantly to this process is the .deb file, which was magically built for you by dpkg-buildpackage01:45
gwolfIn fact, we could have got to this precise place even in a more automated way to begin with :-) If we had specified the command «dh-make-perl --build --cpan Locale-Msgfmt», the package would have been built and left in our currently working directory. Many times I have done that.01:45
jawnsyif you so desire, you can install it on your system using: sudo dpkg --install liblocale-msgfmt-perl_0.14-1_all.deb01:45
jawnsybut, how do we know what it's going to install? how can I be sure it won't overwrite some really important files?01:46
gwolfWell, to begin with... The dpkg package management system would refuse!01:46
damgwolf: but you would miss the cleanup of .docs01:46
jawnsyquite conveniently, dpkg provides a "--contents" command01:46
gwolfdam: Of course. But for local builds, that's often enough :)01:46
jawnsyso that we can basically list the files inside our binary, and more importantly see *where* files will be installed01:46
gwolf(you'd even miss the warm feeling from having a human look at it)01:47
jawnsyok, so now, please find the .deb file which was built01:47
jawnsyand execute the command: dpkg --contents *deb01:47
jawnsyyou should get a listing of files which looks a lot like some 'ls' output01:47
jawnsythis way, you can see exactly where things will install, without actually installing the binary. note that this works with any Debian (or Ubuntu) package :-)01:48
gwolf...or, conveniently, just debc *deb01:48
jawnsythe Debian Perl philosophy is very much like the Perl philosophy -- there's more than one way to do it!01:48
jawnsySo at this time we'd like to ask the floor for any questions they might have01:49
jawnsyby now you've packaged your first Perl module, and I bet you're thinking, wow, that was easy :-)01:49
gwolfagree :)01:49
jawnsyin the Debian pkg-perl team we have more scripts which help us with this sort of thing, but right now you've got enough know-how to build Perl modules on your local machine01:50
gwolf..and soon afterwards, we will stat talking about how to do this in a better organized way, how to contribute to your distribution, and how to be rich and famous! (or at least, how to get to travel quite a bit)01:50
nhandlerHow would I go about getting this module uploaded to Debian and maintained by pkg-perl ?01:50
nhandler;)01:50
jawnsyThat, is quite a good question.01:50
jawnsyOKay let me dispel some myths first of all01:51
jawnsyMany people seem to think that in order to contribute to Debian or Ubuntu, you've got to be a Debian Developer, or a Ubuntu Developer01:51
jawnsythe pkg-perl team is a great way to get involved in both Debian and Ubuntu01:51
gwolfgood!01:51
jawnsyand best of all, you don't need to be a full-fleged Developer01:52
gwolfIn fact, it is a great way to check how your packaging is, and have other people do the heavy lifting01:52
gwolf...Our team, as I said earlier, has around 15 active members (from a much larger list).01:52
jawnsyBasically, under the pkg-perl team, we maintain all our packages as a group01:52
jawnsyIt's nice because if you ever get stuck, you have a great support network of people to ask for help01:53
gwolfOf course, to be able to become active in it, you should at least know the basics of Perl and Debian packaging, and be interested and willing to work on any potential bugs01:53
jawnsyAnd, more importantly, it's never hard finding a sponsor -- many Ubuntu and Debian developers are part of the group :-)01:53
gwolf(hold a second for me, we are being moved to a different laboratory)01:53
jawnsymaddeth: how did your build go?01:53
maddethflawlessly thankyou01:53
maddethjust running a few things through my head :)01:54
jawnsyPlease folks, if you have questions, feel free to ask. And if you're packaging something for your own use later and you come across something else, feel free to join our group channel and ask us01:54
jawnsythe pkg-perl group sits on IRC at irc.debian.org (OFTC) #debian-perl01:54
gwolfready01:55
jawnsyIf you're looking for a way to really make your mark on Debian or Ubuntu, please join the group. You don't need any prior experience to join the group01:55
gwolfok... So in order to work on this group, there is a couple of things to add to your skillset01:55
gwolfFirst of all, as I said, we collectively maintain ~1300 packages01:55
gwolfThe best (only?) way we can do this is to coordinate it via a version control system01:56
gwolfthat ensures we all share each other's package modifications - And we use SVN (Subversion) for it01:56
gwolfBefore anybody asks - there has been talk regarding how to move our workflow towards the much more agile and flexible Git01:57
gwolf..We will get to it, sooner or later.01:57
jawnsyhaving things in subversion or any VCS really.. is indispensible01:57
jawnsyfor example I could ask gwolf to take a look at something for me and help me figure out why it's not building01:57
gwolfAnd taht also allows us to do transversal, large-scale updates01:57
gwolfi.e. if we were to decide to, say, change some part of our build process, we could run it from one single place, for all of our packages01:58
gwolfof course, we would have to do each change separately (i.e. via a script), but it would be grouped into one logical entity - into a single commit.01:59
gwolfAnyway - where to look for this information?01:59
jawnsySeriously, if you've got some free time and a passion to learn something new, I would really recommend joining the group01:59
gwolfWell, the main pointer holder is at the group's (very basic!) page: http://pkg-perl.alioth.debian.org/02:00
gwolfThis page just holds pointers to our inside bits02:00
gwolfI would read them (and refer to them) in +- the following order:02:00
jawnsyThe great thing about Open Source is that if you want something, you can just dive in and do it yourself02:00
jawnsyI myself have 91 packages in Debian's main repository, and like I said, I'm not a Debian Developer :-)02:01
gwolf- How does this group use Subversion? http://pkg-perl.alioth.debian.org/subversion.html   (includes a short guide on a great tool we have, which is indispensable for our work: svn-buildpackage)02:01
jawnsyit's a great way to get some experience working on Debian and Ubuntu. It's a great way to enhance your system02:01
jawnsyactually being part of the group, I come across a lot of really neat modules while packaging them02:01
jawnsyso it's useful in that sense too02:01
gwolf- The Perl packaging policy: http://pkg-perl.alioth.debian.org/policy.html02:02
gwolfjawnsy: That's really true. And you never know who will be the next person to show you something new02:02
jawnsyplus, I've met some really nice people in the pkg-perl group that I am honoured to call my friends02:02
gwolf- General tips and tricks: http://pkg-perl.alioth.debian.org/tips.html02:03
jawnsyjoining the group is a huge plus if you're looking to get some experience coding02:03
jawnsywe do a lot of things in the group which are transferable skills02:03
jawnsyfor example managing the bug system, dealing with other people, discussing new ideas02:03
maddeththankyou for the tutorial, I need my sleep now :)02:03
gwolfhttp://pkg-perl.alioth.debian.org/cgi-bin/pet.cgi - possibly the best reference point we have towards the current status of all of our packages02:04
gwolf(looking for quilt's...)02:04
gwolfhttp://pkg-perl.alioth.debian.org/howto/quilt.html02:04
gwolfThis last one: Not very often, we will have to patch (modify) the author's code in order to route around a problem02:05
gwolfThe best way to do so, keeping everything most traceable, is using the Quilt patch management system.02:05
gwolfjawnsy: dam (in #debian-perl) is most right! We forgot one of the most important files to check: debian/copyright02:06
jawnsyI thought that'd be a bit too much for a gentle introduction02:06
gwolfdebian, and Ubuntu (although to a smaller degree) really base their work on respect to Free Software02:06
gwolfin order for a package to be built (and yes, this time it _is_ a requirement), it has to list its copyright information02:07
gwolfdebian/copyright is a human-readable (and increasingly, machine-readable - but that's not necessarily yet a given) file explaining which licensing scheme does this particular package follow02:07
gwolfMost usually, Perl modules are licensed "under the same terms of Perl itself"02:08
gwolfthat means, under the GNU GPL 1 or any posterior version or under the Artistic license, at your choice02:08
gwolfso, yes, this has to be listed in debian/copyright02:08
gwolfjawnsy: so... where should we go from here? At 03:10, my brain is drying, and I think I'd appreciate some Q&A02:09
jawnsyincreasingly a lot of companes are working with Debian and Ubuntu02:09
jawnsyso joining the group and learning the ins and outs of maintaining packages could very well help you land a sysadmin-type job02:09
gwolfof course - it is highly visible, permanent professional information you can talk about02:10
jawnsya lot of companies use locally build packages for distributing and updating even internal packages for distribution to their production servers02:10
jawnsybut yes, I'd like to open the floor to any questions02:11
gwolfso, people... is there any of you awake+online? :-}02:11
gwolfAre there any questions?02:11
gwolfThere is a lot of where to go on... but I think we have mostly covered the basics02:11
nhandlerSo if I am not a Debian Developer, how could I get my package uploaded? Would I need to go through mentors.debian.net ?02:12
jawnsyIf you are reading the log of this talk later on, and you have questions, feel free to come on irc.debian.org #debian-perl and ask :-)02:12
jawnsyThat is a very good question :-)02:12
gwolfnhandler: no, not necessarily02:12
jawnsyjust by joining the pkg-perl team, you can skip the mentors process if you desire02:12
gwolfnhandler: If the package is a Perl one, going through mentors would certainly be among the slowest ways possible02:12
gwolfThe first thing to do is to get an Alioth account02:12
jawnsypersonally, like I say I'm not a DD, I've never uploaded a package through a mentor02:13
jawnsythe purpose of a mentor is to review your package and help you with building it, fixing up the necessary control files, and uploading it02:13
gwolfAlioth (http://alioth.debian.org) is Debian's online collaboration subsystem, it is a GForge-derived site02:13
jawnsythankfully, the DD sponsors in our group serve the same purpose02:13
gwolfAlioth is open to DDs and non-DDs, with the sole difference that you will have '-guest' appended to your login in case you are not a DD (yet?)02:14
jawnsythey also teach newcomers how to build Debian Perl packages (similar to what we've discussed here today, but also covering some rarer cases)02:14
gwolfBut yes, it is common to find a newbie in the #debian-perl group asking how to join and what to do02:14
jawnsywe are a rather informal group.. more of a collection of friendly people02:14
gwolfnhandler: So, to round your question: You request an Alioth account and svn-inject your package02:15
gwolfnhandler: ...We will notice it and build it, usually soon02:15
jawnsyworking with our SVN workflow is a totally different lecture for a different day, but it's not hard. we have tools, like svn-inject as gwolf mentioned, that help us do it02:16
gwolfoh, of course, you have to request to join the pkg-perl group once you have your Alioth account02:16
jawnsyanyway, barring any other questions, it looks like we can draw this talk to a close02:16
nhandlerYou mentioned that you maintain ~1300 packages. How do you keep track of which ones need to be updated, and which have bugs?02:17
jawnsyWe have a tool (yay, another tool) called the Package Entropy Tracker02:17
gwolf http://pkg-perl.alioth.debian.org/cgi-bin/pet.cgi02:17
jawnsyah I was finding the link, beat me to it gwolf :-)02:17
gwolf:)02:17
jawnsyas you can see from the page, it lets us know what we need to fix -- packages with really important bugs, packages with new upstream versions (that's what the watch file was about)02:18
jawnsyand it allows us to collaborate as a group -- so for example I don't do something to a package gwolf is working on02:18
jawnsy(otherwise one of us would be doing double work)02:18
gwolfThe IRC channel is a great place to hang out (and I very seldom join any IRC channels - But this one is actually productive!)02:19
nhandlerSo does that mean that I can work on any package maintained by pkg-perl? Even if someone else packaged it?02:19
jawnsygenerally, yes it does. If you want to dive in, feel free to do so!02:19
gwolfOf course. Every now and then people appear. And some others disappear02:19
gwolfAnd even if no one does - If I find a package that needs love, and have love to give, I will work on it02:19
jawnsyit's a really great way to get experience working with Perl modules, but in a less aggressive way than writing ones for CPAN02:20
gwolfUsually, whenever you update a package, you will add yourself as an uploader to it (which means, claim responsablity for its maintenance)02:20
jawnsyfor example we do a lot of Quality Assurance stuff, like fix outstanding bugs02:20
jawnsyone great thing about our package system, and as gwolf mentioned earlier, quilt... is that we can ensure good QA02:20
jawnsyby fixing modules ourselves if necessary.02:20
gwolf...and more easily push the changes up to the authors02:21
jawnsyso let's say there's a serious security issue with a package. well, in Debian we can just patch it ourselves, and push out a new release, while simultaneously working with the upstream author to resolve the issue02:21
jawnsyin that way, Debian and Ubuntu users are safe, even if the Upstream maintainer doesn't know about or doesn't fix a package02:21
jawnsyactually a lot of upstream CPAN authors sort of just abandon their stuff, so the pkg-perl team takes care of its long-term maintenance02:22
* gwolf yawns02:22
gwolfpeople, any questions?02:22
jawnsyit's something I think is tremendously useful experience02:22
jawnsyjust how to debug things, how to work with bug systems02:22
gwolfIf you don't fire...I'll go to sleep!02:22
jawnsythese are things you often won't learn in school, but that can make all the difference in your career02:22
jawnsywhether you hit the ground running or whether you'll have to start crawling ;-)02:22
gwolfI completely agree with jawnsy02:22
gwolfAnyway... jawnsy: I think we should call this as done02:23
jawnsyyep. thanks everyone for listening, I hope it's been a good experience for everyone02:23
gwolfjawnsy: nhandler says the logs will be available02:23
=== jawnsy changed the topic of #ubuntu-classroom to: Ubuntu Classroom || https://wiki.ubuntu.com/Classroom || https://wiki.ubuntu.com/Packaging/Training || Upcoming: July 30 @ 06:00 UTC: Mozilla packaging techniques (extensions, patchsystems, bzr) || Run 'date -u' in a terminal to find out the UTC time
gwolfI hope you found this interesting, and hope to have you on board on the team!02:24
nhandlerLogs will be at https://wiki.ubuntu.com/Packaging/Training/Logs/2009-07-2302:24
nhandlerThank you jawnsy and gwolf for leading this session02:24
porthosejawnsy gwolf, thx  great session02:24
gwolfthank you for inviting!02:24
nhandlerRemember, if you have and questions, the pkg-perl team is in #debian-perl on irc.debian.org02:24
jawnsyand if you're at DebConf you can have a beer with gwolf :-)02:24
jawnsythanks to the Ubuntu community for having us, and for working so closely with Debian to the benefit of both communities02:25
gwolfjawnsy: And with dam, and with gregoa, and with diocles!02:25
gwolfThank you all, even if you removed our Op modes ;-)02:25
jawnsyI really hope you all take the opportunity to be a bit social.. feel free to drop by just to say hi, even :-)02:26
jawnsythe Ubuntu and Debian projects are both highly social, so I hope you all take the chance to participate everywhere you can, when you can02:26
gwolfjawnsy: And by all means, specifically you, try to join a DebConf in the future!02:26
gwolfAnyway, I'm heading off02:26
gwolfnice being here, hope to see you in our little channel!02:26
=== MobileMyles6o7 is now known as TwoToneSpirit
=== santiago-pgsql is now known as santiago-ve
=== rgreening_ is now known as rgreening
=== jarlen_ is now known as jarlen
=== ejat is now known as e-jat
=== Quintasan_ is now known as Quintasan
=== noodles775 is now known as noodles775-afk
duanebI missed the chat about Packing Peel Modules last night is there a bot keeping a chat history?13:55
pleia2duaneb: the logs are here: https://wiki.ubuntu.com/Packaging/Training/Logs/2009-07-2313:55
duanebthank you, very cool13:56
pleia2welcome :)13:57
=== vorian is now known as rofl
=== noodles775-afk is now known as noodles775
=== rofl is now known as vorian
=== noodles775 is now known as noodles775-afk
wizztjhdate -u20:44
=== ian_brasil is now known as ian_brasil_afk

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