Lightning talks Monday

Network Magic

The idea is to put by default network-manager to provide user friendly network configuration, this will not be as simple as we think it is as there are several issues, one of the main problems is that the network manager uses bind9, there are good reasons to provide that service but bind9 is a bit too much. Needs a KDE front-end. Other things that it depends on, the first set would be for dapper to put it in main eventually changing it to be started by default. eventually change it to change to a real applet. that has to be seen how upstream will consider that. One of the main issues is that it can not work with a static IP address, so it is not suitable for servers. So it will be for desktops only. Do we expect it to be fixed? That would seem to be logical. if it can't dhcp it gets a zeroconf IP address. download video

Embedded Ubuntu

This is a bit more specific than micro-buntu, whoever is interested to see it running can look at the device we brought with us, compatible with the 770 that Jeff will talk about, it has no Nokia IP issues. There are a lot of mobile phones in the world and this is for people who can not afford whole computers. Use case is Jeff on holiday in brazil and learns that a school needs to have computers. download video

Hardware Detection

Current state is quite messy, we have 3 different methods to handle hotplug events, hotplug.d scripts, etc/dev scripts and udev scripts. now that breezy is released that means every scanner that you buy will not be supported, likewise if you attach your USB scanner it won't be recognised. The scripts are unmaintainable. The kernel and udev changed to a much simpler system, so despite that we shouldn't introduce huge changes into dapper we will throw all of this hotplug mess away and code with udev scripts. module loading will be simplified drastically, now the method is real fun, the kernel knows which module to load but it doesn't tell userspace, so we have to go through all the modules to find the right one which takes very long. we still have to discuss the details of this in the next days. but expect much better hardware support in dapper. download video

thin clients, ltsp

one of the targets of dapper is for people to be able to plug in local devices and get it to pop up on the desktop, that's difficult because it has to go via the server. we are going to be looking at getting hal to do the detection and get the appropriate dbus signals. there's lot more work to do, looks like we may have to submit an upstream patch in nautilus to configure the eject command because when you want to eject media it may be a local device or have that sent over the network. thin client sound the general consensus is that all network sound sucks but esd sucks the least so we will continue with that the idea is to integrate it with gstreamer and make it a lot cleaner than it is in ltsp. onto the thin client startup, sitting at the table we managed to shave 25 seconds off the startup by turning off some unneeded services. ogra will do some drafting tonight and I'll pick apart the RC scripts. download video

merge-o-matic, mom

Scott shows a picture of his mum. This is daily script which shows 3 differences between Debian and Ubuntu. the reason they try it all possible ways is to make it work, sometimes Ubuntu makes a small patch and sometimes its the other way, Debian do the one way patch and we rechange the whole installer. Once it's found the source package with the minimum problems it spits it on a website ongoing-merge and puts the merge source package. Another side is NDA, a system that outputs the patches to Debian, which contains the Ubuntu diff only separated out into little pieces ready for Debian to link to on their package tracking system and merge upstream and in Debian. it's reduced a lot of manual workload at the expense of tedious workload since all the interesting stuff is automatic. download video

Righteous hardware, 770

Wouldn't it be cool if there was something with an 800x480 screen with wifi, bluetooth, audio and expandable storage and completely open. Nokia have released the 770, they are using lots of tasty bits of gnome inside it. it has an e-mail client and the user interface learns with you. web browser is based on opera but will be KHTML in future. video is based on mplayer. Lots of applications have been ported because it's an open platform but Doom runs, abiword, gnumeric, SDL games, heaps of stuff. built on gstreamer, gtk, dbus, they've called the platform maemo, open development environment. one of the coolest things is Nokia have released $99 development kits for anyone who can e-mail them with a good reason. that $99 is then donated to gnome foundation. they have consulting companies who employ gnome hackers to work on it.

Tuesday Morning

malone, Brad

As Mark said his name is Brad Bolenbach, developer working on malone the bug tracking part of launchpad. malone feeds on the collaborative aspect, we want everyone to work together and speed up the process of collaborating on bugs and sharing the fixes. shows the malone front page, the portal for everybody who uses launchpad. You can see immediately the stats, how many bugs are being tracked, different places where they have been found and fixed. whoever is using malone, if you are the Ubuntu version or the edubuntu version or the upstream guy there is always a page for the parts you are interested in. you are always looking at malone through one of these lenses. depending on the context you are in it changes in subtle ways to point out the bits that are most interesting to you. shows upstream firefox context. here's a bug that's been filed in mozilla bugzilla and malone. malone is always aware of what is most interesting to you.

Malone has an e-mail interface, anyone who has used e.g. debbugs before this will be your way in. there's a page on the wiki called MaloneEmailInterfaceUserDoc to say how to use it. if you are using threaded e-mail client you will get bugs as threads. You can also edit multiple bugs in an e-mail. is there a way to find out by e-mail if a package exists in malone? not yet but that can be talked about.

You can subscribe to a bug which means you'll get notification from malone if any changes happen in malone or upstream. People that maintain the packages or the upstreams will implicitly get subscribed. Teams can also be subscribed. He's working on being able to subscribe to packages.

You can add attachments too. The other things malone supports is duplicates.

You can do forward looking targeting on milestones like distributions and upstreams. Shows a bug Marked for 1.0 firefox.

Shows different facets in launchpad, overview, bugs (malone) which can be seen from different views, if seen from your person page you see all the bugs assigned to you. Bounties, specifications are other facets.

Maleone is privacy aware, if public any logged in user can edit stuff. If you are subscribed to a bug when it is made private you will get access. privacy is subscription based.

Watches lets you watch bugzilla and debbugs. They are in the process of testing the bugzilla import into malone.

Coming soon to launchpad is the code facet so you can branch is bazaar and publish your changes then link that to malone if you fix a bug. If that branch gets linked to a package which gets uploaded we know it's fixed in that upload. Similar if it gets picked up by upstream.

Tuesday evening

Lightning Debate

A Double Act

do you think a computer CPU is more or less efficient than a heater at generating heat?

define efficiency

efficiency in terms of wattage output

define again

efficiency in terms of wattage output in terms of wattage consumed

heater generates heat when it should so is more efficient

I'm defining efficiency at generating heat, that's cheating

no, it's losing energy

what do you think Riddell?

I agree entirely

what do you think Steve?

I was somewhere else

what do you think Severas?

laws of thermodynamics mean the energy always goes somewhere so it's exactly the same

Daniel?

CPU is less efficient because it uses it for computation as well as heat

so where does the energy go, into a back hole?

so does it matter if it's windows or linux?

no

why

because if the CPU has an idle cycle

time up

revu

when he was to become a motu you have to submit packages and get some motu to review the packages. you have the problem that now we are about 30 motu's it was much less when he started, we need to expand the motu team. with revu people can upload via dput same as otherwise. when I read the package I see several files, several reports and agnostics and comment this.

even people who haven't worked at all with packages can look at the comments and see what to do and what not to do.

he doesn't like this implementation because it isn't manageable, he wants the UI to be more clear and usable.

impi

first release in December 2003, live CD, put together in about a week before release, ran for about a year, nobody really that interested. then lots of patriotic motivation in south Africa and they wanted a south African distribution, so they spent a year making their own distro, no package management, very fast.

when they started they came up with lots of names including Ubuntu, but Desmond Tutu was going around the country selling the idea of Ubuntu so they didn't want to use that. impi means a grouping of zulu warriors, however after release they realised it also means war.

menus, Corey

we initially decided to remove all menus for dapper but that was crack so we went through every menu item and decided if a lot of it should be crack or not. one was to remove the system tools menu which we managed to do. best way to look is the wiki page menusrevisited. removed archive manager from menu items, enough visibility with right click. in breezy evince has been removed. this will be pushed in after the conference and see what the feedback is like. kill bittorrent.

why? because they're crack. they are either exposed through another interface. Jeff suggested removing totem from the menu.

What does the usability expert think of this? he agreed with most of it.

So we will move a bunch of stuff around and make it more usable.

from the preferences menu remove the ability to edit the metacity window.

you can always use gconf anyway.

oh gconf will be hidden by default.

Jeff says when we explain it to our users can we not message it like that? because he'll get most of the poo.

removing dependencies

idea is to remove program also remove unneeded dependencies that it leaves behind. mvo has implemented it into synaptic. the nice part of this will just work for every front-end. it will be optional, won't force removals.

is it going into dapper? he hopes so, the algorithm got a lot of testing in aptitude. aptitude needs porting to this code.

Wednesday Morning

Daniel - Soyuz

The Archive Management Dream Team

There's a lot that goes on under the covers in launchpad which you often don't see, so he thought we would like to see some today.

There are 6 major parts to the archive management system in launchpad. anyone who is a maintainer will know about uploads. anyone familiar with the system will know there is a queue through which things progress. We split it up into two parts, build master and build slave.

Behind the scenes launchpad has all sorts of information but the three major things to think about today are distributions, packages within those distributions and builds within those packages.

There are informational files like README. Then there is the pool of packages, all .debs, .udebs, .orig etc. Split by components (main, universe, multiverse, etc). There is the distributions tree, which tells you what packages are in warty-security on powerpc in universe. Debian installer is slotted in on the side.

Package uploads which go into the system are a collection of files. A .changes file that contains a small description of what's in the upload, changelog entries and these files in the upload. Different things can be uploaded in launchpad, packages, CDs, translations, Debian-installer, anything. An upload must have at least one of these things in it. Ubuntu itself requires that maintainers only make source uploads. Launchpad support this and other policies so derivative distributions can have similar or different policies.

Uploads have to be signed except when they don't. As a maintainer you have to sign the upload, prove to the upload system you have the rights to do so. The build master tries to put stuff in the upload queue and doesn't have a gpg key. The upload system will create people if they are not already in launchpad.

Upload queue has 5 states, new, unapproved, accepted, done and rejected. New means there's something here we haven't seen before, anything which requires the archive manager to have a quick think about where something should go. Ubuntu enters a freeze period during its upload cycle when every upload has to be reviewed by mdz, Colin etc, that would be a team in launchpad.

The publisher is the bit that does all the grunt work. It takes packages from the launchpad librarian, which is where we store any file that we want to keep in launchpad. The second state which the packager takes on is domination, making sure we only have the latest in the archive. Most scary bit is when the publisher takes all the files so that adept can find all of this new stuff in the archive.

The Glorious Gofer (a prolapse of packages). First part of publishing is taking packages from librarian and putting them in the pool.

Currently Ubuntu is published using dak (katie), w have a tool for importing this current data into launchpad called gina, kiko often says he thinks gina is lovely.

Gina now has to import all of warty, hoary and breezy.

Wednesday Evening

Keysigning Talk by Daniel Silverstone

Wanted to talk to us about keysigning since some people here are new to it. Maybe you need a key for packaging, maybe sending things in secret to people. A lot of you are sufficiently new to keysigning that you are not aware of what it means when you sign a key.

When you sign someones' key, you are making an assertion that you believe that name, that e-mail address and that key go together. This is important, if you make identity association that you haven't properly checked people won't trust you. He had a situation a few days ago where someone made a key exchange with him and then seemingly signed the key, but sent it to an e-mail address which was not on the key. It is very important that every assertion you make is checked as carefully as you can. If someone has 5 addresses on their e-mail it is a good idea to verify each one. cabot or caff are programs to do this. they send challenges to make sure the e-mail address is associated with the key. he doesn't know how to set up caff (in signing-party). All you need to do to make associations with a key and e-mail address is to send that key signed to that address.

How can you trust someone is who they say they are? There are varying levels of trust and different people will have different policies on signing that trust. GPG will let you say "i trust a little", "done some checking", "are absolutely certain", most people sign at 2. Anyone who signs at 1 is doing something wrong, useful mostly for local signatures, codemerging bots and internal use too. level 3 is a stronger assertion of checking.

A lot of people will accept government issued identity, commonly passports, drivers licences sometimes. Some people accept funky Norwegian bank cards. Physical interaction, meet them, talk to them, talk for long enough that you are comfortable you can trust them. Watch people's eyes.

He shows us how to use his tools.

Thin Clients, Jim

Thin client with local devices was looked at, the ability to plug in USB keys and have them appear on the desktop. We are primarily concerned with block devices, we can already do printers etc. Still knee deep in specs for this but it'll include dbus and ssh.

Sound is being done with gnome talking to gstreamer which will talk to esd.

Want to get bootup to be <30 seconds. BIOS takes up 10 of those doing self-test.

Memory usage on the thin client is another bof. Critical that they can use machines with 32megs. Were at 96Megs looking at it today, got it down to 48Megs. Working on getting it down to 32Megs.

Browser Defaults

Default start page is a lot of text, talked about creating a startubuntu.com or similar that the user can be redirected to. Discussed adding default bookMarks and removing firefox defaults.

thursday morning

rsi

he was a boby builder and his knees gave out which hurt lots, he had to go for an operation but the pain came back. he researched a system that sas the body performs at it's best when it is posturally aligned. this guy came up with a system of exercises to make it align. he asks us all to stand up, points out how everyone has a slight misalignment. This isn't the computer's fault, there are no deysfunctional computers, only dysfunctional people. He takes pitti and shows him how to align his body. pitti has a sligh tilt to the front, could have been caused by anything.

he takes us through some exercises.

in rocky 4 the evil russian trains like a machine on a strict schedule, rocky does function exercise around a farm and wins the fight. functional movement is important. function comes from our environment, with stairs and escalators and electric toothbrushes we don't have to do a lot of functional movement. depending on how high you are up the chain you can get someone to pick up a box for you (all laugh at Mark). Try every day to change your environment slightly, move your mouse to the other side, move your pens somewhere else.

launchpad support ticket tracker, mark

primary goal is that support stuff doesn't end up in the bug tracker, so moving stuff to support and away from malone. items can be moved to malone if that's the right place. it's integrated with the desktop to the extent that programs have Help->Get Help Online. We will work with the forums guys so that people can put tech support into this. It will become the basis in future that canonical or other companies offer. for example the firefox guys could put tech support in there and have their guys deal with that. Shows a tech support request, it has a state machine so that menu items describe the state transitions you can make, this example is currently answered and the system should have mailed the guy who filed the request saying "we believe we have answered this please confirm" at which point it will go to closed. this is for both community driven support and commercial support, people may be able to say "I'm willing to pay for that". Community people could do payed support too. The karma will show how good people are at offering support.

Daf wrote this cool thing called Dillus, one ides is Dillus on Rails so it can go into IRC channels and point people towards support requests.

smart

before working on smart he worked on apt-rpm, just like everyone who has seen the code in apt he was impressed but thought that more could be achieved with different approach. a package is a container for files and information. package relations are indirect, they say a package relates to another package. A provides libA, B requites libB. You have to use algorithms to figure out the dependencies. the idea with smary is it will keep those relation in memory. after computing the base step he can tell all the relations that may be required. another idea provided by smart is it is a model, it doesn't map exactly to any package manager, it is a generic model that can map to apt or rpm or slack packages. Shows a long list of distributions that smart is being used on. He was bothered that he was working on smart but wasn't in touch with the RPM maintainer. but smart doesn't require the user to change the system. smart is a dependency solver, does the job of dpkg, apt, urpmi. It is a drop in replacement, it understands the user system without changing it. about 20,000 lines of python and 4,500 thousand lines of C to improve C code. He has a mirror of the C code in python about 1,200 lines of Python. He show us the "proper way to comment C code", every line or two has a python line above it. It has multiple user interfaces, shell, command line, graphical. good package format abstraction, rpm, dpkg, slackware. good repository transaction.

mark: proposal is to use this for dapper+1, this is extraordinary since we have the maintainers of apt, smart, dpkg in this room. gustavo has helped no launchpad and will be working on grumpy.

Saturday

Closing, Mark

We've had a great conference, he's looked through the specs and is really impressed at how much we've managed to get done without nearly so much blood on the floor and chaos as in Syndney. We should now go back and make sure we have something really good for dapper. we didn't review the goals for breezy. he wants us to look at our goals and consider changing the priority. it should be clear to the community what we will be doing.

ltsp jim says how glad they are to have joined us for the conference, they have been very productive.

It's been good to have the launchpad people here during the distro week so we can see what they have been up to.

Daniel Silverstone says having had community input to launchpad has been invaluable, would be good to have community guys next week.

Next time we probably won't have the distro side and launchpad side.

Corey thanks Canonical and Mark for bringing everyone here, it helps to get everyone together.

Next developer summit will be post Dapper.

mdz: one of the last bofs was finalising the release process for dapper. landing on april 20th. most of the dates unchanged from beezy with minor tweaks. a month of upstream version freeze, short feature freeze then the beta release (rename of preview release).

So releaseing on april 20th. Jane points out this is jdub's birthday. So second week of May is likely for next conference. Any suggestions for where? jdub: Tailand or Cape Town, silbs: germany. He would like it to be in Europe.

We will also do a distro meeting, less of a schedule. Looking for ideas for places for that.