[06:04]  * AxCray_ Binar
[12:28] <KcRider> Hi
[13:05] <plasticman> ..
[13:05] <gusse02> leave
[14:07] <pipedream> .
[14:07] <pipedream> wasn't there a class today?
[14:10] <pleia2> the only thing on the agenda is for the 17th
[14:11] <imzaphod> motu class today 16:00 - 17:30 utc
[14:16] <dholbach> pleia2: the packaging 101 session will be today
[14:16] <pleia2> dholbach: what is the schedule for that exactl?
[14:17]  * pleia2 really must start keeping track of this :)
[14:17] <pipedream> oh
[14:17] <pipedream> utc
[14:17] <dholbach> http://fridge.ubuntu.com
[14:17] <pipedream> here in cape town that is another 2 hours
[14:17] <dholbach> same here :)
[15:30] <angor> am i right that todays "event" is starting at 6pm utc? ( in germany 7pm?)
[15:30] <durgis> I thought it was 16:00 or 4 pm.
[15:30] <pleia2> durgis is correct
[15:31] <angor> so it starts in half an hour?
[15:31] <dholbach> angor: yeah :)
[15:31] <angor> cool, thanks :)
[15:31] <dholbach> bring it on!
[15:32] <angor> i hope nobody minds if i log this, for later use or as a transscript for ubuntuusers.de (if nobody else logs it)
[15:32] <dholbach> angor: no, that's great
[15:33] <angor> if somebody wants his name deleted, he/she/it should contact me so that i can cut it out
[15:34] <dholbach> angor: this channel is logged publically anyway: http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt
[15:34] <angor> oh, yeah, did not think of it
[15:34] <angor> ^^
[15:35] <angor> then forget about it
[15:35] <angor> brb
[15:42] <angor> re, is the "motuguide" also understandable for packaging beginners?
[15:43] <pipedream> bits of it
[15:44] <pipedream> one has to read quite a bit to understand the full debian package
[15:44] <pipedream> (not there yet)
[15:44] <pipedream> and then there is all this pbuilder stuff on top
[15:44] <edfonseca> vamos ao coffee entao?
[15:44] <pipedream> many ways to skin a deb
[15:45] <angor> well, then i can keep it for later use :) so i´ll just be quiet and listen so that i can understand it later , thanks for the info
[15:50] <RoyS> hi leute
[15:51] <pipedream> angor: not that I'm there yet!
[15:51] <angor> hallo roys, hier ist englisch angesagt ;)
[15:52] <RoyS> ooops
[15:52] <RoyS> sorry
[16:00] <dholbach> Welcome to the Packaging 101 Session!
[16:00] <dholbach> How are you all doing?
[16:00] <Guite> Hi. Fine, thanks
[16:00] <hellboy195> excited ;)
[16:00] <Hit3k> :D
[16:00] <durgis> Good here.
[16:00] <Solty> fine :>
[16:00] <vorian> good :)
[16:00] <LucidFox> What they said. :)
[16:00] <dholbach> Great - who of you wants to become a MOTU? :-)
[16:00]  * hellboy195 :)
[16:00] <LucidFox> I do.
[16:00] <Hit3k> <----
[16:00]  * vorian raises his hand
[16:00]  * warp10 raises a finger
[16:00]  * Guite wants to maintain a particular package...
[16:00] <grayraven> I do
[16:01] <Guite> do not know if this requires being a MOTU ;)
[16:01] <dholbach> ROCK AND ROLL :-)
[16:01]  * dantalizing wants ta
[16:01] <dholbach> great to hear that
[16:01] <dholbach> Guite: I'll answer the question in a bit
[16:01] <doluu> I do
[16:01] <dholbach> So what does it take to become a MOTU? Best point to start is http://wiki.ubuntu.com/MOTU/GettingStarted
[16:02] <dholbach> it links to all the necessary information and takes you by the hand on your way to MOTU membership :)
[16:02] <dholbach> there are three areas on the wiki that are important to become an Ubuntu developer
[16:02] <dholbach> First of all http://wiki.ubuntu.com/UbuntuDevelopment - which links to all information about Development processes
[16:03] <dholbach> so things like how to merge, how to do a sync request, how the archive machinery works and so on
[16:03] <dholbach> http://wiki.ubuntu.com/PackagingGuide has a lot of information about packaging - so all the bits that are necessary to build packages from source code
[16:03] <dholbach> and last but not least http://wiki.ubuntu.com/MOTU - which has information about the MOTU team, its events, its governance, etc
[16:04]  * LucidFox raises his hand
[16:04] <dholbach> LucidFox: fire away
[16:04] <LucidFox> is the packaging guide on th wiki older or newer than the one on help.ubuntu.com?
[16:04] <dholbach> LucidFox: newer - I spent a lot of time to merge other packaging information into it, I split it up, so that the contents can be re-used in other places
[16:05] <dholbach> these three wiki namespace are the definite areas you should hit up, when you run into problems
[16:05] <dholbach> So what's the process for becoming a MOTU?
[16:06] <dholbach> It's pretty straight-forward: you contribute patches and packages and members of the MOTU team will review them, discuss them with you and sign them with their gpg keys once they are OK, then upload to the build daemons
[16:06] <pipedream> build daemons++
[16:06] <Guite> k
[16:07] <dholbach> after you've done that for a while and your sponsors (the people who "sponsored" your uploads) have only good things to say about you, you mail the MOTU Council who will then take a look at your application
[16:07] <dholbach> and that's it
[16:07] <Guite> probationary period ^^
[16:07] <dholbach> coming back to Guite's question: if you prefer to not go through the process, you can get changes to the one package you care about uploaded by sponsors
[16:08] <dholbach> are there any questions?
[16:08] <civija> who are the sponsors and how can we find them?
[16:08] <dholbach> civija: good question :)
[16:08] <xander21c> question: Which the basic kwnolege you need to become MOTU?
[16:08] <dholbach> it's what I wanted to explain next :-)
[16:09] <Guite> The package I am going to maintain does neither exist in Debian nor Ubuntu yet. Hopefully this is no problem?
[16:09] <dholbach> to get a patch uploaded, you file a bug report on the package it's about, attach the patch and subscribe a) ubuntu-main-sponsors (if it's in main/restricted) or b) ubuntu-universe-sponsors (if it's in universe/multiverse)
[16:09] <dholbach> civija: with this process you don't need to know who's going to deal with it, it will always be different people in the team
[16:10] <civija> aha, tnx
[16:10] <dholbach> http://people.ubuntu.com/~dholbach/sponsoring/ is an overview of things that need sponsoring at the moment
[16:10] <dholbach> xander21c: the most important thing if you want to joing the MOTU team is: you're a good team player and you're motivated to find solutions for problems
[16:11] <warp10> dholbach: if a contributor has worked on a number of packages, is there a way to know which sponsors upped his own work?
[16:11] <dholbach> so it's not really important if you're a C hacker since 10 years, it's much more important that you ask if you have a question and people can trust you, but also you're willing to read docs and try to find out on your own
[16:11] <nxvl> xander21c: nice to see you around here!
[16:12] <dholbach> Guite: if the package is not in ubuntu/debian yet, that's not a problem - http://wiki.ubuntu.com/UbuntuDevelopment/NewPackages talks about this case
[16:12] <Guite> thx already found it :)
[16:12] <xander21c> hi nxvl
[16:12] <dholbach> warp10: the people who sponsor your work will most likely comment on your sponsoring bug reports
[16:13] <dholbach> warp10: also the mail that goes to hardy-changes (every upload is announced there) will be CCed to them if I remember correctly
[16:13] <dholbach> if not it will at least be signed with they gpg key
[16:13] <dholbach> any other questions?
[16:13] <nxvl> dholbach: no, it is't CCed
[16:14] <dholbach> nxvl: ok, then at least the signature will tell you who uploaded it
[16:14] <nxvl> dholbach: yes, that's right
[16:14] <zhaozhou> Oh, got here too late! /me scrolls up to get ahead again.
[16:14]  * highvoltage got here too late too
[16:14] <dholbach> alrighty - let's take a look at the current release schedule: https://wiki.ubuntu.com/HardyReleaseSchedule
[16:15] <dholbach> as you can see on Feb 14th FeatureFreeze is coming up
[16:15] <dholbach> this has a number of implications on what we work on
[16:15] <dholbach> from that point on we need special exceptions for new upstream versions of packages, also exceptions for completely NEW packages
[16:16] <dholbach> also given that Hardy will be an LTS release we put a lot of effort into quality assurance right now
[16:16] <dholbach> https://wiki.ubuntu.com/MOTU/TODO lists a lot of bugs we work on
[16:17] <dholbach> some of them are tagged as 'ftbfs' (fails to build from source)
[16:17] <dholbach> others as 'unmetdeps' (these fail to install due to unmet dependencies)
[16:17] <dholbach> other as 'bitesize' (suitable for new contributors)
[16:17] <dholbach> etc etc.
[16:17] <dholbach> there's a lot of work to be done and a lot of things to get started with :-)
[16:18] <dholbach> any more questions?
[16:18] <ucap> dholbach: if I don't have the time to contribute on a regular basis, but still want to work on a few things I care about every now and then, is this okay with you? or are you looking for more dedicated contributors?
[16:18]  * warp10 has one about FF
[16:18] <dholbach> ucap: that's absolutely OK
[16:18] <dholbach> it happens a lot that people change job, move, do something else, then get back again and that's perfectly acceptable
[16:18] <dholbach> warp10: fire away
[16:19] <warp10> dholbach: Feature Freeze means that merges/syncs are completely stopped, except for exceptions?
[16:19] <nxvl> you can also browse the bitesize list of bugs on LP -> https://bugs.edge.launchpad.net/ubuntu/+bugs?field.tag=bitesize
[16:19] <LucidFox> dholbach> I have a question about the /sponsoring page. What do the numbers in parentheses after usernames mean?
[16:19] <dholbach> warp10: merges and syncs are fine, except when they deal with new upstream versions
[16:20] <dholbach> warp10: we just try to focus on fixing instead (if a fix involves a new upstream version that's mostly fine)
[16:20] <dholbach> thanks nxvl
[16:20] <warp10> dholbach: so, merging foo 1.2.3-1 if in ubuntu we are at 1.2.2-1ubuntu1 isn't fine?
[16:20] <dholbach> LucidFox: I subscribe people to sponsoring bugs, and the value in parentheses is the age of the subscription in days
[16:20] <highvoltage> dholbach: maybe this is too big a question, but what if I wanted to create the init scripts for the Pyro event server (178948), where would I start? would I download the source package from the hardy archives and once it's fixed, send it to revu?
[16:20] <dholbach> warp10: after FF it'd require an exception
[16:20] <warp10> dholbach: ok, great. ty :)
[16:21] <dholbach> highvoltage: you'd download the source, work on the init scripts to get them right, then prepare a debdiff (that's one of the tutorials I wanted to show), attach it to a bug report, get it sponsors - done :-)
[16:22] <LucidFox> Regarding bugs: the wiki says that I should set the status to Confirmed when subscribing sponsors. I'm a member of bug control - should I use Confirmed or Triaged?
[16:22] <highvoltage> dholbach: great, I think I'll try that with the tutorial then!
[16:22] <dholbach> ok... any more general questions? please: also if you don't understand items in the questions and answers, please ask
[16:23] <dholbach> LucidFox: the membership of ubuntu-bugcontrol shouldn't matter in that regard - if it says 'confirmed' in the wiki, set it to confirmed
[16:23] <dholbach> LucidFox: it will show up on the overview page in any case
[16:23] <dholbach> anything else?
[16:24] <dholbach> alright... let's get started with out first Tutorial then!
[16:24] <aualin> i didn't miss anything? :O
[16:25] <dholbach> we'll deal with the problem that highvoltage asked about: you have a fix ready and want to generate a patch
[16:25] <dholbach> aualin: check  http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt  later
[16:26] <aualin> ok, thx
[16:26] <dholbach> first of all, we'll set two variables to let the packaging tools know who we are
[16:26] <dholbach> please edit your   ~/.bashrc
[16:26] <dholbach> and add something like this to the bottom:
[16:26] <dholbach> export DEBFULLNAME='Daniel Holbach'
[16:26] <dholbach> export DEBEMAIL='daniel.holbach@ubuntu.com'
[16:26] <aualin> what if i use zsh?
[16:26] <dholbach> aualin: you can use   ~/.zshrc   too (if that is its configuration file)
[16:27] <aualin> it is
[16:27] <dholbach> we just want to make sure the variables are set, when we run our tools
[16:27] <dholbach> so once you've done that, run
[16:27] <aualin> ok
[16:27] <dholbach>   source ~/.bashrc
[16:27] <dholbach> to make sure it's active in the current session
[16:27] <dholbach> all set?
[16:27] <aualin> sure
[16:27] <dholbach> Rock and Roll
[16:28] <dholbach> next we'll install a couple of tools we'll need along the way
[16:28] <dholbach>   sudo apt-get install devscripts build-essential wget fakeroot
[16:28] <dholbach> devscripts and fakeroot are necessary for the packaging build process
[16:28] <h3b> already installed ;)
[16:28] <dholbach> build-essential will pull in things like gcc and make you need to build source
[16:29] <dholbach> wget is used for downloading things from http or ftp
[16:29] <Hit3k> first thing I always install on an ubuntu system
[16:29] <zhaozhou> Hit3k, ++
[16:29] <dholbach> ok... next we'll download the source for a package I broke so we can fix it
[16:29] <dholbach>  dget -x http://people.ubuntu.com/~dholbach/motu/ubuntu-artwork_40.dsc
[16:29] <oldsam> dget??
[16:30] <aualin> wget ?
[16:30] <oldsam> not wget?
[16:30] <dholbach> dget :)
[16:30] <aualin> oh...
[16:30] <aualin> cool
[16:30] <javamaniac> debian get
[16:30] <oldsam> ahh
[16:30] <dholbach> this will download the .dsc file and additionally the .tar.gz
[16:30] <Laney> What's a .dsc file?
[16:30] <dholbach> then check the checksums and extract it for us
[16:30] <doluu> got it
[16:30] <dholbach> Laney: good question
[16:30] <aualin> a specifcation file?
[16:30] <dholbach> run     cat ubuntu-artwork_40.dsc
[16:30] <inkbuntu> debian source code?
[16:31] <dholbach> it contains information about the version of the source package, what the build-depends are, a checksum and so on
[16:31] <Hit3k> so its a description?
[16:31] <aualin> like the control file in debian subdirectory?
[16:32] <dholbach> aualin: it contains part of it
[16:32] <aualin> ok
[16:32] <dholbach> it's not necessary that we go through all attributes of it right now, it's just important to know that a .dsc and a .tar.gz are the minimum to call something a source package
[16:32] <aualin> ok
[16:32] <aualin> itsn't there usually a diff file also?
[16:32] <dholbach> exactly
[16:33] <zhaozhou> What does dsc stand for?
[16:33] <LucidFox> The log so far, for those who joined later: http://lucidfox.org/stuff/packaging101.txt
[16:33] <dholbach> this is a bit of a special case: we are the upstream maintainer of ubuntu-artwork, which means that we, in Ubuntu, control all the pieces that go into it
[16:33] <jaw^vovoid> badvista, awesome nick
[16:33] <oldsam> zhazhou: debian source code
[16:33] <badvista> thanks
[16:33] <zhaozhou> oldsam, okay (: thank you
[16:34] <dholbach> zhaozhou: I'm not sure about "debian source code"... hmmm - I'll find out during the session, let's move on :)
[16:34] <dholbach>  cd ubuntu-artwork-40
[16:34] <dholbach>  cat debian/control
[16:34] <dholbach> if you look at the control file, you'll note that it contains two stanzas
[16:35] <zhaozhou> DeSCribtion perhaps..
[16:35] <dholbach> the first one if about the source package and the second one is about the resulting binary package
[16:35] <jaw^vovoid> badvista, I support the badvista campaign somewhat on my vsxu.com site :)
[16:35] <dholbach> source package (.dsc, .tar.gz), binary package (.deb)
[16:35] <dholbach> Build-Depends: debhelper (>= 5), cdbs       specifies which packages are needed to build the package
[16:36] <dholbach> to install them, we simply run:
[16:36] <badvista> jaw^vovoid: yes ok, i stole it from the fsf :D
[16:36] <aualin> cdbs is a kind of framework?
[16:36] <dholbach>   sudo apt-get build-dep ubuntu-artwork
[16:36] <dholbach> can we try to keep the chatter elsewhere? I don't mind questions, but chatter can go to #ubuntu-offtopic or some other place - thanks :)
[16:36] <jaw^vovoid> badvista: no problem with that IMO ;)
[16:36] <dholbach> aualin: right... CDBS stands for common build system for Debian packages
[16:37] <aualin> ah
[16:37] <dholbach> it's a set of Makefiles that simplify the package build system a lot
[16:37] <Beber80> if a package needs a particular kernel module, would it appear in the dependencies ?
[16:37] <dholbach> I like using CDBS, it has the disadvantage that a lot of things happen behind the scenes and it's not really obvious for somebody who begins packaging
[16:37] <aualin> ok
[16:37] <aualin> sounds good :D
[16:37] <dholbach> but that's not really relevant for our example today :)
[16:38] <dholbach> Beber80: that depends: Dependencies at install time go into Depends:, packages needed to build it go into Build-Depends
[16:38] <highvoltage> dholbach: what's the difference between debhelper and cdbs? or should I ask later?
[16:38] <dholbach> everybody all set with build-depends?
[16:38] <dholbach> highvoltage: CDBS makes use of debhelper
[16:38] <aualin> i run arch at the moment
[16:39] <doluu> yep
[16:39] <dholbach> alright
[16:39] <subterrific> yes, after lots of scrollkeeper parser errors
[16:39] <aualin> so, debhelper is a framework for debhelper?
[16:39] <dholbach> so let's try to build it
[16:39]  * highvoltage had to add source uri's, it's updating so I'm a bit behind, but I'll catch up
[16:39] <dholbach> let's run
[16:39] <dholbach>   debuild -us -uc
[16:39] <LucidFox> aualin> debhelper is a collection of scripts that simplify writing debian/rules files
[16:39] <doluu> dholbach: where?
[16:39] <LucidFox> and CDBS is built atop debhelper
[16:39] <aualin> LucidFox: ok
[16:39] <dholbach> doluu: in the ubuntu-artwork-40 directory
[16:40] <doluu> ok
[16:40] <dholbach> does it work for anybody?
[16:40] <Hit3k> I got an error
[16:40] <h3b> no, error
[16:40] <dholbach> Hit3k: which one is it?
[16:40] <aualin> should we not run fakeroot debuild -us -uc?
[16:40] <Jergar> me tto
[16:40] <dholbach> aualin: debuild uses fakeroot itself
[16:40] <aualin> ah...
[16:40] <dholbach> Jergar: what's the error message?
[16:40] <Laney> Oh no, an error!
[16:40] <Jergar>  Aufruf von stat für „./xxxdistributor-logo.png“ nicht möglich
[16:40] <da1l6> cp: cannot stat `./xxxdistributor-logo.png': No such file or directory :(
[16:40] <durgis> debuild: fatal error at line 1247:
[16:40] <durgis> fakeroot debian/rules binary failed
[16:40] <dholbach> exactly, that's the one
[16:40] <Hit3k> thats mine except in english
[16:41] <doluu> no, error
[16:41] <dholbach> the call that raise the error was:    dh_install -pubuntu-artwork
[16:41] <aualin> we need to change the path, right?
[16:41] <durgis> ah, yes, a bit farther up I see.
[16:41] <dholbach> so when the files were supposed to be installed into the package, it could not find `./xxxdistributor-logo.png'
[16:42] <durgis> ls -lrt
[16:42] <dholbach> if you type     ls
[16:42] <durgis> hehe
[16:42]  * highvoltage got the same error :)
[16:42] <dholbach> you'll see how it's supposed to look like
[16:42] <doluu> distributor-logo.png
[16:42] <dholbach> now if we edit    debian/install    we can change it to distributor-logo.png
[16:43] <dholbach> before we build it again, let's document the change in debian/changelog
[16:43] <dholbach> just run
[16:43] <dholbach>   dch -i
[16:43] <dholbach> a few things worth noting:
[16:44] <dholbach>  - if you do changes in any package, document them as detailed as possible, the next person to look at the package will be VERY happy about that
[16:44] <dholbach>  - be sure that the string next to the version number says  "hardy"
[16:45] <dholbach> (that's the current development branch and the only thing we can upload to)
[16:45] <jwill2> got kicked about 2 mins ago....where's the log again?
[16:45] <h3b> question: dch doesn't use $DEBEMAIL, ist this right?
[16:45] <Hit3k_> Is it possible to make patches for hardy on gutsy?
[16:45] <dholbach> h3b: it should
[16:45] <hellboy195> dholbach: * Fix Path of the Logo in debian/install    <-- something like this?
[16:45] <dholbach> Hit3k_: yes, but it's preferrable if you could test things on the branch you upload it to :)
[16:46] <dholbach> jwill2: check  http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt  later
[16:46] <subterrific> h3b: i had that same problem, looking into it now
[16:46] <dholbach>  - make sure the version number is 41 (this is the special case of a 'native' package)
[16:46] <ucap> what about urgency? how do I decide what to set it to in the changelog?
[16:47] <h3b> subterrific: echo $DEBEMAIL?
[16:47] <dholbach> subterrific, h3b: did you run      source ~.bashrc   ?
[16:47] <h3b> it works...
[16:47] <dholbach> source ~/.bashrc
[16:47] <doluu> dch renamed my current directory :)
[16:47] <dholbach> ucap: we don't use 'urgency' in Ubuntu land
[16:47] <aualin> or, source ~/.zshrc
[16:47] <h3b> forgot the E in DEB'E'MAIL ;)
[16:47] <dholbach> right
[16:47] <dholbach> h3b: ok
[16:47] <highvoltage> h3b: you have to log in again before the .bashrc changes will take effect
[16:47] <dholbach> hellboy195: yes, that's OK - here's what I put into mine:
[16:47] <highvoltage> oh, sorry, I'm catching up
[16:48] <dholbach> ubuntu-artwork (41) hardy; urgency=low
[16:48] <dholbach>   * debian/install: fixed file name.
[16:48] <dholbach>  -- Daniel Holbach <daniel.holbach@ubuntu.com>  Tue, 15 Jan 2008 17:43:45 +0100
[16:48] <Jergar> parsechangelog/debian: error: found start of entry where expected start of change data, at file debian/changelog line 4
[16:48] <Jergar> parsechangelog/debian: error: found start of entry where expected start of change data, at file debian/changelog line 4
[16:48] <Jergar> parsechangelog/debian: error: found start of entry where expected start of change data, at file debian/changelog line 4
[16:48] <Jergar> parsechangelog/debian: error: found start of entry where expected start of change data, at file debian/changelog line 4
[16:48] <Jergar> parsechangelog/debian: error: found start of entry where expected start of change data, at file debian/changelog line 4
[16:48] <Jergar> got parsechangelog/debian: error: found start of entry where expected start of change data
[16:48] <Jergar> sorry
[16:48] <highvoltage> dholbach: how os "  * Renamed xxxdistributorlogo.png to distributerlogo.png in debian/install
[16:48] <highvoltage> " ?
[16:48] <Hit3k_> dholbach, so as we just have to be descriptive?
[16:48] <hellboy195> highvoltage: I suppose too long
[16:48] <highvoltage> ah
[16:48] <dholbach> highvoltage: that's fine too... I usually put the name of the file I changed first, but yours is good too
[16:48] <dholbach> Hit3k_: yeah
[16:49] <dholbach> Jergar: if you could pastebin your entry somewhere, we could examine it later
[16:49] <Jergar> ok
[16:49] <dholbach> alrighty... let's see if with our new change it builds again
[16:49] <dholbach> let's run   debuild -us -uc    again
[16:50] <Hit3k_> :D
[16:50] <dholbach> if you now run          ls ..          it will show you a shiny  *.deb   package
[16:50] <dholbach> we just fixed our first FTBFS :)
[16:50] <dholbach> ok, how would we submit a patch?
[16:51] <hellboy195> dholbach: ignore lintian about the standards version?
[16:51] <dholbach> hellboy195: yeah
[16:51] <doluu> FTBFS?
[16:51] <dholbach> doluu: Fails To Build From Source
[16:51] <doluu> sorry
[16:51] <dholbach> you can find a lot of abbreviations on     http://wiki.ubuntu.com/UbuntuDevelopment/Abbreviations
[16:51] <dholbach> doluu: no problem - just ask :)
[16:52] <dholbach> we'll build a new source package of our new version now
[16:52] <dholbach> we'll run        debuild -S
[16:52] <dholbach> which will not build a binary package (.deb) but a new source package
[16:52] <dholbach> done?
[16:52] <hellboy195> dholbach: may I ask you what the "-sa" option does?
[16:53] <dholbach> hellboy195: the "-sa" option is not necessary in this case, it's just relevant if you want to upload a source package somewhere and specifically want to include the .orig.tar.gz
[16:53] <Hit3k_> I need my gpg key which isn't on this computer
[16:53] <dholbach> (which in our case does not apply anyway)
[16:53] <doluu> isn't debuild use env vars we exported before?
[16:53] <dholbach> Hit3k_: ignore the warning for now
[16:54] <Hit3k_> ok
[16:54] <dholbach> doluu: it should
[16:54] <oldsam> ls
[16:54] <oldsam> sry
[16:54] <dholbach> if you get a warning about a GPG key it's not relevant right now (might be due to exact mail address not being on your gpg key as an id)
[16:55] <doluu> what if I dont have a key?
[16:55] <dholbach> if you now run:
[16:55] <dholbach>   ls ..; debdiff ubuntu-artwork_40.dsc ubuntu-artwork_41.dsc
[16:55] <dholbach> you will get a debdiff that's suitable for attaching to a bug report
[16:55] <dholbach> doluu: you'll need to generate on
[16:55] <durgis> ls -lrt
[16:55] <aualin> doluu: gpg --gen-key
[16:55] <dholbach> one
[16:55] <durgis> gah...
[16:55] <doluu> dholbach: ok
[16:55] <Laney> s/ls/cd ?
[16:55] <dholbach> not for this tutorial, but for general work, you'll have to
[16:55] <dholbach> https://help.ubuntu.com/community/GnuPrivacyGuardHowto for more information on that
[16:56] <geser> doluu: a gpg key is only needed for uploading e.g. REVU or as a MOTU to the archive
[16:56] <dholbach> Laney: yes, sorry
[16:56] <dholbach>   cd ..; debdiff ubuntu-artwork_40.dsc ubuntu-artwork_41.dsc
[16:56] <dholbach> debdiff ubuntu-artwork_40.dsc ubuntu-artwork_41.dsc > debdiff          would give you the patch file you'd attach to a bug report to get it sponsored
[16:57] <dholbach> http://wiki.ubuntu.com/SponsorshipProcess has more information to get that done
[16:57] <highvoltage> ah, my version ended with ubuntu1, not 41
[16:57] <dholbach> highvoltage: yeah, this was a special case
[16:57] <dholbach> ok... end of tutorial 1 - everybody still excited?
[16:57] <h3b> yes
[16:58]  * highvoltage is super-excited
[16:58] <Hit3k_> :D
[16:58] <vorian> w00t
[16:58] <dholbach> NICE - that's what I want to hear :-)
[16:58] <dantalizing> +1 excited
[16:58] <doluu> it's easier than I was expecting
[16:58] <dholbach> let's press on then
[16:58] <highvoltage> yes, me too, I with I attended a motu-class ages ago
[16:58] <M2AU> damn, I missed it >.<
[16:58] <dholbach> next we'll try to update a package to a new upstream version
[16:58] <pak33m|work> woohoo
[16:58] <Hit3k_> yay
[16:59] <dholbach> M2AU:  check  http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt  later
[16:59] <M2AU> thanks!
[16:59] <dholbach> alright... let's get the source for the hello package:
[16:59] <dholbach>  dget -x http://archive.ubuntu.com/ubuntu/pool/main/h/hello/hello_2.2-2.dsc
[16:59] <LucidFox> http://lucidfox.org/stuff/packaging101.txt <-- log updated
[16:59] <dholbach> and now let's get the new upstream version of hello
[17:00] <dholbach>  wget http://ftp.gnu.org/gnu/hello/hello-2.3.tar.gz
[17:00] <dholbach> the GNU hello guys will probably wonder about the sudden interest in the new hello tarball :-)
[17:00] <Hit3k_> haha
[17:00] <highvoltage> heh
[17:00] <aualin> :P
[17:00] <warp10> lol
[17:01] <dholbach> ok, we'll do this the manual way, there are other tools to update packages in a semi-automated way
[17:01] <dholbach> first we unpack the new upstream tarball
[17:01] <dholbach>  tar xfz hello-2.3.tar.gz
[17:01] <highvoltage> (not that the "z" is needed in ubuntu anymore :) )
[17:01] <dholbach> then rename it to the standard name of tarballs in debian/ubuntu source packages
[17:02] <dholbach>  mv hello-2.3.tar.gz hello_2.3.orig.tar.gz
[17:02] <dholbach> if you look at the files we downloaded, you'll notice these three:
[17:02] <dholbach> hello_2.2-2.diff.gz  hello_2.2-2.dsc  hello_2.2.orig.tar.g
[17:02] <dholbach> oops
[17:02] <dholbach> hello_2.2-2.diff.gz  hello_2.2-2.dsc  hello_2.2.orig.tar.gz
[17:02] <highvoltage> should we just rename 2.2, dholbach?
[17:03] <doluu> right, I see
[17:03] <dholbach> hello_2.2.orig.tar.gz was the upstream tarball that was downloaded of the GNU page
[17:03] <dholbach> the .diff.gz file is the changes the maintainer had to make to make it build in debian/ubuntu
[17:03] <dholbach> this usually contains the  debian/  directory
[17:03] <dholbach> highvoltage: hm?
[17:03] <dholbach> highvoltage: mv hello-2.3.tar.gz hello_2.3.orig.tar.gz     is the only thing you need to rename
[17:04] <dholbach> now we'll manually copy over the   debian/   changes from the old version to the new one
[17:04] <dholbach>  cp -r hello-2.2/debian/ hello-2.3/
[17:04] <doluu> done :
[17:04] <dholbach> (applying the old patch would be more elegant)
[17:04] <dholbach> now we'll document our changes to the package
[17:05] <dholbach>  cd hello-2.3
[17:05] <dholbach>  dch -i
[17:05] <dholbach> a notice saying  " * New upstream release"  should be enough for now
[17:05] <dholbach> make sure you have   hardy   as upload target
[17:06] <doluu> version number will be 2.3-0ubuntu1? or 2.3-ubuntu1?
[17:06] <dholbach> and also make sure     2.3-0ubuntu1    is the version number
[17:06] <dholbach> can anybody explain why it's "2.3-0ubuntu1"?
[17:06] <aualin> since we made changes we add 1 on the end
[17:06] <dholbach> the version before that was   2.2-2   - what does that mean?
[17:06] <doluu> 0 is debian version
[17:06] <aualin> and the package is for ubuntu
[17:07] <vorian> it's an ubuntu delta
[17:07] <jwill2> 0 is because it doesn't exist in Ubuntu yet
[17:07] <dholbach> 2.2 means the upstream version number (the 2.2 released tarball from GNU)
[17:07] <aualin> that we made it ubuntu-friendly and updated it to 2.3
[17:07] <dholbach> -2 means the second revision in debian
[17:07] <doluu> ubuntu1 means it's first revision in Ubuntu, right?
[17:07] <dholbach> we updated to 2.3, therefore introduced ubuntu changes and since the package is not in debian yet, we'll call it 0ubuntu1
[17:08] <highvoltage> how can a program that just prints "Hello world" have so much revisions and versions!?
[17:08] <dholbach> doluu: first version that introduced ubuntu changes over the debian version
[17:08] <aualin> it's international
[17:08] <doluu> got it
[17:08] <Hit3k_> highvoltage, they keep spelling hello wrong perhaps?
[17:08] <dholbach> highvoltage: good question -    less Changelog       will probably help :)
[17:08] <dholbach> alrighty
[17:08] <highvoltage> cool, will do that!
[17:08] <aualin> nah, the say hello world in a lot of languages
[17:08] <dholbach> let's try to build it
[17:08] <dholbach>  debuild -us -uc
[17:09] <dholbach> I get this error:    dpkg-source: error: Version number suggests Ubuntu changes, but Maintainer: does not have Ubuntu address
[17:09] <dholbach> who gets it too?
[17:09] <Hit3k_> I do
[17:09] <dholbach> Hit3k_: you used a ubuntu.com mail address?
[17:09] <doluu> building .......
[17:09] <Jergar> finished :-)
[17:09] <Hit3k_> dholbach, don't have one
[17:10] <hellboy195> dholbach: I have 3 lintian warnings but I doesn't aborted :)
[17:10] <durgis> mine appears to finish as well.
[17:10] <dholbach> the error message I got complains about the Maintainer field in debian/control
[17:10] <doluu> finished :)
[17:10] <dholbach> some of you might not have gotten it due to the version of dpkg or depending on which email address you used
[17:10] <Laney> durgis: I get that warning right at the top of the output
[17:11] <dholbach> Hit3k_ and I will fix the problem we have right now :)
[17:11] <durgis> Laney: ah, yes there is a warning there.
[17:11] <dholbach> our friends at Debian decided that we need to change the Maintainer field on Ubuntu uploads but still preserve the original maintainer
[17:11] <highvoltage> hmm, I used my ubuntu address and got the same error
[17:11] <dholbach> http://wiki.ubuntu.com/DebianMaintainerField has more information about that
[17:12] <dholbach> we'll edit   debian/control
[17:12] <greg-g> dholbach: quick question, will the packages you used (the one on your webspace) be available later for those that can't participate now?
[17:12] <dholbach> and change Maintainer: Santiago Vila <sanvila@debian.org> to:
[17:12] <dholbach> XSBC-Original-Maintainer: Santiago Vila <sanvila@debian.org>
[17:12] <dholbach> Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
[17:13] <dholbach> greg-g: yes
[17:13] <greg-g> thanks
[17:13] <dholbach> that way the original maintainer will still be documented
[17:13] <dholbach> but they won't get mails by ubuntu users who want to mail "the maintainer"
[17:14] <dholbach> now we'll document it in debian/changelog
[17:14] <dholbach> just run    dch     now
[17:14] <h3b> should i change the email to: ...@ubuntu.com?
[17:14] <dholbach>   * debian/control: adhere to http://wiki.ubuntu.com/DebianMaintainerField
[17:14] <dholbach> should be good
[17:15] <dholbach> h3b: change Maintainer: Santiago Vila <sanvila@debian.org> to:
[17:15] <dholbach>  XSBC-Original-Maintainer: Santiago Vila <sanvila@debian.org>
[17:15] <dholbach>  Maintainer: Ubuntu Core Developers <ubuntu-devel-discuss@lists.ubuntu.com>
[17:15] <dholbach> now if we build it again:    debuild -us -uc   (this ommits the signing step at the end)
[17:15] <dholbach> it should build fine for you :)
[17:16] <Hit3k_> yep
[17:16] <dholbach> so we should have          hello_2.3-0ubuntu1.diff.gz    hello_2.3-0ubuntu1.dsc      hello_2.3.orig.tar.gz       (source package)                 and               hello_2.3-0ubuntu1_i386.deb     (binary package right now)
[17:17] <dholbach> excellent :-)
[17:17] <dholbach> any questions about it?
[17:17] <dholbach> any more general questions?
[17:17] <aualin> nope
[17:17] <mario> yes
[17:17] <subterrific> dholbach: well i figured out my DEBEMAIL problem
[17:18] <dholbach> mario: fire away
[17:18] <dholbach> subterrific: great
[17:18] <highvoltage> dholbach: I have a question... we just packaged source code, right?
[17:18] <emil_s> I have a hello_2.3-0ubuntu1_i386.build and hello_2.3-0ubuntu1_i386.changes to.
[17:18] <mario> can i make out of any sources (tar.gz) a Binary (deb)?
[17:18] <highvoltage> dholbach: but a source package doesn't necasarily contain just source?
[17:18] <dholbach> highvoltage: we fixed a bug in an existing source package and updated an existing source package to a new version
[17:19] <dholbach> emil_s: .build is a log and .changes is another meta-data file
[17:19] <Jergar> I have a  hello_2.3-0ubuntu1_i386.deb
[17:19] <subterrific> dholbach: for some reason nothing after the line: . /etc/bash_completion is executed, perhaps a hardy bug?
[17:19] <dholbach> highvoltage: no, not at all - there .png files, etc
[17:19] <emil_s> Ok, ten it's fine :)
[17:19] <dholbach> Jergar: great - that means it built :)
[17:20] <Jergar> dholbach: yes great
[17:20] <dholbach> subterrific: oh? I certainly don't have that bug on hardy
[17:20] <Hit3k_> how do we upgrade to the hardy alpha if we aren't already running it?
[17:20] <dholbach> mario: yes, in some cases it will be harder, depending on how the upstream build system works
[17:21] <Jergar> so I can download some ubuntu-packages  and try to fix some
[17:21] <dholbach> mario: some use the  ./configure && make && sudo make install  mechanism, others don't have a build system at all and just ship a bunch of files, some python code might use   ./setup.py   etc
[17:22] <dholbach> Hit3k_: I'm not sure the        gksu "update-manager -c -d"    will work now already
[17:22] <highvoltage> dholbach: aaah, so a source package doesn't always necassarily automagically result in a binary package?
[17:22] <dholbach> you can also look into using a chroot http://wiki.ubuntu.com/DebootstrapChroot
[17:22] <dholbach> or use ubuntu on a spare partition or in a VM
[17:22] <mario> dholbach: thank you
[17:23] <dholbach> highvoltage: it depends on how you organise the debian/rules file (how the debian build process makes use of the upstream build process)
[17:23] <dholbach> in most cases it's quite straight-forward - and if you work on existing packages you mostly won't have to bother about it
[17:23] <highvoltage> dholbach: so it doesn't always?
[17:24] <dholbach> highvoltage: sometimes it requires changes to the build system, but as I said: with the most upstream projects it works fine
[17:24] <highvoltage> ah ok
[17:24] <dholbach> I personally recommend working on existing packages to get a feeling of what you're working with
[17:24] <dholbach> the bitesize bugs are a good start
[17:24] <dholbach> there are also bugs tagged packaging
[17:24] <mario> sorry, but what is a "upstream project"?
[17:24] <dholbach> mario: good question :-)
[17:25] <mario> ;)
[17:25] <subterrific> dholbach: this is a clean install from the latest hardy alpha iso and upgraded as of last night. i'll look into it more and perhaps file a bug
[17:25] <dholbach> GNOME or Mozilla are upstream projects
[17:25] <dholbach> people who write source code and distribute source tarballs
[17:25] <dholbach> we at the Ubuntu end grab those tarballs and integrate them into UBuntu
[17:25] <dholbach> subterrific: excellent
[17:26] <pak33m|work> dholbach: dholbach: highvoltage: we fixed a bug in an existing source package and updated an existing source package to a new version <------- did we really fix a bug or did we just learn how to perform a manual build assuming that we had fixed a bug ? i don't know if i missed where we fixed a bug.
[17:26] <dholbach> pak33m|work: you're right... I broke the package myself for the purpose of this tutorial :)
[17:27] <dholbach> ok... I'd like to invite all of you to Friday's MOTU Q&A session
[17:27] <dholbach> it will be at the same place and at 13:00 UTC
[17:27] <pak33m|work> dholbach: ah, that's right thank you
[17:27] <highvoltage> pak33m|work: well, renaming a debian/install file to make it build is like fixing a bit, we're going more through the dances of how to do it than fixing real-life bugs, that's generally how tutorials go :)
[17:27] <dholbach> http://wiki.ubuntu.com/MOTU has all the relevant dates on the top of the page
[17:27] <Hit3k_> Do you have to be an ubuntu member to become a motu?
[17:28] <hellboy195> dholbach: why always Friday 13.00 UTC? many are working or still at school at that time :(
[17:28] <dholbach> Hit3k_: no... MOTU membership includes Ubuntu membership
[17:28] <dholbach> Hit3k_: so you can go straight for MOTU
[17:28] <dholbach> hellboy195: it fits my schedule quite well - I'm trying to find people in other timezones to repeat it at a different time
[17:28] <dholbach> I'll announce it once I've succeeded finding somebody
[17:28] <Jergar> dholbach: Thanks if my new Dell comes on friday i will come to the Q&A session
[17:28] <doluu> dholbach: thanks
[17:29] <dholbach> I'd like to point you to  http://wiki.ubuntu.com/MOTU/GettingStarted  again
[17:29] <dholbach> the last point it about blogging
[17:29] <doluu> me too, see ya at Q&A session
[17:29] <highvoltage> dholbach: thanks, I learned things in this session, it feels great!
[17:29] <dholbach> if you want to get started as a MOTU, it'd be great if you blog about your experience and let others know how it goes
[17:29] <Mika1860> I missed the main part of the packaing session. however I' curious about it. is there a log or something?
[17:29] <dholbach> also if you have ideas on how to make MOTU more fun let me know
[17:30] <dholbach> http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt
[17:30] <Mika1860> thx
[17:30] <hellboy195> dholbach: ubuntu/gnome t-shirts,mugs for free ^^
[17:30] <pak33m|work> dholbach: thank you for the tutorial
[17:30] <dholbach> hellboy195: drop me an email :)
[17:30] <vorian> pfft gnome
[17:30] <dholbach> thanks everybody for showing up - I had a GREAT time
[17:30] <Hit3k_> thank you for the tutorial
[17:30] <dholbach> and hope to see you as MOTUs soon!
[17:30] <vorian> thanks dholbach
[17:30] <hellboy195> vorian: gnome! WTF
[17:30] <h3b> thanks
[17:30] <mario> thanks
[17:31] <Jergar> thanks
[17:31] <badvista> thanks
[17:31] <highvoltage> thanks
[17:31] <Solty> thanks
[17:31] <dantalizing> very nice
[17:31] <warp10> thank you dholbach :)
[17:31] <highvoltage> whohoo! nice ladder
[17:31] <hellboy195> thanks
[17:32] <hellboy195> cya guys
[17:32]  * Hit3k_ goes to find bugs to fix
[17:32] <mario> cya
[17:33] <h3b> dholbach: just a question: i have tried to build hello-2.3 again and got an error:
[17:34] <h3b> /usr/bin/make -i distclean
[17:34] <h3b> make[1]: *** Keine Regel, um »distclean« zu erstellen.  Schluss.
[17:35] <h3b> why no target to make distclean?
[17:39] <subterrific> h3b: did you edit the Makefile by mistake?
[17:39] <subterrific> h3b: make -i distclean works for me
[17:39] <h3b> no.
[17:40] <da1l6> doesn't work here either
[17:40] <h3b> hmm... i'll try again. need a second
[17:40] <dholbach> can you put the log into pastebin.ubuntu.com?
[17:43] <h3b> dholbach: http://pastebin.ubuntu.com/3583/
[17:44] <LucidFox> gah, too late
[17:44] <h3b> :(
[17:45] <h3b> hmm...
[17:45] <subterrific> h3b: you need to change debian/changelog to have the correct version number
[17:45] <h3b> dch -i
[17:45] <h3b> ?
[17:45] <h3b> right?
[17:46] <subterrific> well if you already ran that, but didn't put the right version number you can just manually edit your last entry
[17:46] <LucidFox> h3b> there are more serious problems than just that
[17:47] <LucidFox> your changes contain binary files
[17:47] <LucidFox> try running debian/rules clean
[17:47] <h3b> subterrific: thanks, forgot to change the version to 2.3 ;-)
[17:48] <subterrific> LucidFox: that was his only problem, it was just causing other problems
[17:48] <h3b> now it works :-)
[17:48] <LucidFox> Ah, yes, I see
[17:48] <LucidFox> he was using the old orig.tar.gz
[17:48] <subterrific> check this out http://pastebin.ubuntu.com/3585/
[17:49] <LucidFox> In the future, when upgrading to a new upstream release, you can use "dch -v new.version-tag" instead of "dch -i"
[17:49] <LucidFox> for example, "dch -v 2.3-0ubuntu1"
[17:49] <h3b> ah, ok.
[17:51] <h3b> thank you all.
[17:51] <h3b> so, i leave. bye.
[17:57] <guataka> exit
[18:34] <nathandbb> Does anyone have a link to the MOTU session that was here an hour ago??
[18:35] <civija> http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt
[18:50] <nathandbb> Thank you -- thinkpad crashed when I undocked it -- lost my log
[19:33] <kdubois> was there a become-a-motu meeting here today?
[19:35] <zhaozhou> kdubois, it was.
[19:45] <ketzal> hi
[21:04] <Surge> Where is it possible to find transcript from the training session earlier today?
[21:05] <ToyKeeper> http://irclogs.ubuntu.com/2008/01/15/%23ubuntu-classroom.txt
[21:08] <Surge> ToyKeeper: thanks a lot
[23:13] <NetoX_> damm, i think i am late for the class xD
[23:25] <NetoX_> さあ