Canonical Voices

Posts tagged with 'uncategorized'

Mark Baker

If you are interested in either OpenStack or MySQL (or both) then you need to know about 2 meetups running the evening of May 23rd in London.

The London OpenStack meetup.

This is the 3rd meeting to take place and promises to be a good one with 3 talks planned so far:

* Software defined networking and OpenStack – VMWare Nicera’s Andrew Kennedy
* OpenStack Summit Overview – Rackspace’s Kevin Jackson
* An introduction to the Heat API – Red Hat’s Steven Hardy

For a 4th talk we are looking at a customer example – watch this space.

To come along please register at:

http://www.meetup.com/Openstack-London/

The MySQL Meetup.

This group hasn’t met for quite some time but MySQL remains as popular as ever and new developments with MariaDB mean the group has plenty to catch up on. There 2 talks planned so far:

* HP’s database as a service – HP’s Andrew Hutching

* ‘Whatever he wants to talk about’ – MySQL and MariaDB founder Monty Widenius.

 

With David Axmark also in attendance it could be one of the most significant MySQL meetings in London ever. Not one to miss if you are interested in MySQL, MariaDB or related technologies

MySQL meetups are managed in Facebook – please register to attend here:

https://www.facebook.com/groups/88293623926

Of course given the events are running in rooms next to each other you are welcome to register for both and switch between them based on the schedule. We hope to see you there!

Read more
bigjools

Co-Infection

It turns out I have a co-infection of Bartonella which is most likely to be the thing responsible for the pericarditis.  I get to start on Bactrim this week.  Lovely.

In other news, I have a second herx starting. :(


Read more
bigjools

Herx Force One

ImageI appear to be having a major “herx” reaction to my meds. This is apparently “good” because it means the drugs are working.

Basically, it’s a result of the bacteria dying and spilling their guts into my blood stream – their guts are basically endotoxins to which my immune system suddenly goes “WOOOOAAA!” and kicks off a massive street fight in my body. The symptoms of that are basically huge headaches, mental confusion, fatigue and insomnia. I can say without reservation, yes, they are the fucking symptoms.


Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130423 Meeting Agenda


ARM Status

R/master: fixed lp1169956 (“highbank: reboot doesn’t work reliably”), working
o/
on lp1171582(“[highbank] hvc0 getty causes random hangs”) now.


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items for the 13.04 cycle. None
are critical for the 13.04 release and some of the mobile/phablet
related items will roll forward to 13.10.

   apw    foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
   ogasawara    hardware-r-kernel-config-review    1 work item   
      mobile-power-management    1 work item   
   sforshee    foundations-1303-phablet-kernel-maintenance    1 work item   


Status: Raring Development Kernel

We are 2 days from 13.04′s release. All kernel patches submitted must
adhere to our SRU policy. Only critical bug fixes necessary for the
13.04 release will warrant an upload at this time. There are currently
no plans for a 0-day SRU kernel either.

Important upcoming dates:

  • Thurs Apr 25 – Ubuntu 13.04 Final (2 days)


Status: CVE’s

== 2013-04-23 (weekly) ==
Currently we have 81 CVEs on our radar, with 18 CVEs added this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

  • Lucid – In Verification; (14 commits)
  • Precise – In Verification; 2 upstream releases; (170 commits)
  • Quantal – In Verification; 2 upstream releases; (225 commits)
    Precise and Quantal had multiple regressions during verification.
    One regression has been isolated to an i915 patch which has been reverted
    The other is almost completely bisected.
    When complete, Precise and Quantal will be respun.
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock


Open Discussion or Questions? Raise your hand to be recognized

There was a question about what’s going on the arm side.
The question was rather open ended, so further discussion was moved to #ubuntu-kernel.
The following patch was also discussed: http://cgit.freedesktop.org/~mlankhorst/linux/commit/?id=ae7b687c2a57ec50a9d3dde7b0a80a262fdc8c8
It was requested that a bug is opened, and a SRU request can be submitted.

Read more
bigjools

Headaches

I’ve been experiencing bad headaches all week and today’s is awful.  I don’t know if it’s the drugs starting to work and causing a herx or if I just have a headache from the disease. 400mg of Ibuprofen 2.5 hours ago hasn’t helped much :(


Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130416 Meeting Agenda


ARM Status

R/master: found a fix for lp1168039 (“highbank: network corruption”) and
lp1166956 (“[highbank] Oops: PC is at pl330_irq_handler+0x21c/0x3b0 [pl330]“),
still working on the reboot issue on highbank (but i tracked it down to a pl310
errata).
R/nexus4: sent a config diff that made our nexus4 kernel work with the phablet
image.
ppisati, will the highbank fixes make it today ?
rtg: nope, i wanted to send them all together when i’ve fixed the reboot issue too
tomorrow is last upload before release


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items for the 13.04 cycle. None
are critical for the 13.04 release and some of the mobile/phablet
related items will roll forward to 13.10.

   apw    hardware-r-kernel-config-review    1 work item   
      hardware-r-delta-review    2 work items   
      foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
   ogasawara    hardware-r-kernel-config-review    1 work item   
      hardware-r-kernel-version-and-flavors    1 work item   
      mobile-power-management    1 work item   
   sforshee    foundations-1303-phablet-kernel-maintenance    1 work item   


Status: Raring Development Kernel

We are now in Kernel Freeze for 13.04. All patches submitted must
adhere to our SRU policy. We do anticipate one more upload prior to
final freeze (Thurs Apr 18).
Important upcoming dates:

  • Thurs Apr 18 – Final Freeze (~2 days)
  • Thurs Apr 25 – Ubuntu 13.04 Final (~1 week)


Status: CVE’s

== 2013-04-16 (weekly) ==
Currently we have 64 CVEs on our radar, with 5 CVEs retired this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

Status for the main kernels, until today (Apr. 16):

  • Lucid – In Verification; (14 commits)
  • Precise – In Verification; 2 upstream releases; (170 commits)
  • Quantal – In Verification; 2 upstream releases; (225 commits)
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock


Open Discussion or Questions? Raise your hand to be recognized

No open discussion.

Read more
David Henningsson

I ported my game to Ubuntu

If you just want to play the game, here’s where you find it. Or, in a terminal window write:

sudo add-apt-repository ppa:diwic/theblobgame
sudo apt-get update
sudo apt-get install theblobgame

Then just search for “blob” in the Dash.

The rest of this blog post is mostly directed towards game developers.
Screenshot

Background and motivation

Ten years ago I finished a game called “The Blob Game”. It was a 2D platform style game, more cute than violent. My cousin had made the graphics, a level editor, and part of the game engine. I made seven levels, music, and completed the code. Back then, I was still working for a company doing closed source software for Windows, so naturally this game was a Windows game.

A while ago I decided to try to port this game to Ubuntu. My main motivations were:

  • To see how easy (or hard) it was, given my current level of experience. Also because we currently have some undergoing efforts to make Ubuntu a better gaming platform, and what better way to do that, than to become a game developer yourself?
  • People complain that there are not enough games available in Ubuntu – I wanted to make my small contribution to help even that out.
  • Nostalgia purposes – after all, most of the work with the game was to make the levels and the artwork, rather than actual code. All of this can be reused, and it would be nice if this game could entertain a new audience.

Overall, the experience has been good. Sure, there has been some work to do and new things to learn and conquer, but there has been very little of frustration. A fun side project!

One of the strength and weaknesses of the Linux ecosystem is all the choices you can, and have to, make. What components do you choose to build your software on? That can be bewildering, especially if you’re new to Linux and unfamiliar what components are suboptimal for one reason or another. I would therefore like to talk you through the choices I made and why I made them. As usual, these are my own opinions, not my employer’s.

Language: C

To give some background, my cousin and I started programming twenty years ago. Back then, my father introduced me to Turbo Pascal, which was more powerful than the QBasic that came with DOS 5.0. Ten years later, I was using Delphi (the Windows continuation of Pascal) at my work. So the game was written in Delphi, mixed with some hand written assembly code (!).

Was it possible to reuse the code written? I looked at the available compilers:

  • GNU Pascal. This project seems mostly abandoned, so not a stable choice for the future.
  • FreePascal. This was the main alternative, but it has its own code generator (not integrated with GCC or LLVM), so chances are it won’t keep up in the future. Also, if you need to link to a library, chances are you have to translate headers yourself.

So; rewrite the code. In what language? My choice fell on C, for the following reasons:

  • It is a very popular language, maybe even the most popular one. It is likely to be around for a long time, and have support for new processors and architectures as they come to market.
  • It is compatible with everything. In fact, it’s what every other language tries to be compatible with (Java has JNI, Python has C extensions, etc).
  • It is what I use at work, so I know the language very well. (Both Linux and PulseAudio are written in C.)
  • I like the low memory footprint and predictability of C – you want a game to run fluently, the audio to run at a reasonably low latency, and so on. With the exception of calling functions you don’t know about, you can almost see how quick your code executes. I’m not sure how well Java, Python, and the other garbage collecting languages do in this area; so my fear might be unfounded, but at least I know C does well.

Gaming library: libSDL

Fortunately, the cross-platform toolkit libSDL is very well supported under Linux. I have almost only positive experiences of this library: it seems very stable. It handles graphics (window setup, fullscreen etc), input events (keyboard, mouse, gamepads just work), audio, and more. The documentation is extensive and there are plenty of examples out there. And because libSDL is already used by so many games already, most distributions make sure libSDL works on their software and hardware.

What about OpenGL? Well, this is a 2D game, so I don’t need 3D. It is possible I could use some hardware acceleration for the scaling (the frame is rendered in 320×200, then upscaled to the screen’s resolution), but my very simple scaler seems to perform well enough. As such, there was no real need to bring in a dependency on OpenGL.

Music library: FluidSynth

First I’m a more than a bit biased on this dependency, as I’m one of the FluidSynth developers. However, the reason I first got involved with FluidSynth was that I wanted to use it in a game, and needed to fix something in the library…

FluidSynth is a softsynth – it takes MIDI data and a soundfont, and gives you rendered audio as a result. This has the drawback that you need to download a soundfont too, and the only one available in the Ubuntu archive is > 100 MB. The good thing is that FluidSynth is very embeddable into many different kinds of applications, so taking the audio output, mixing it with sound effects, and then send it to the sound card (with libSDL) was easy. It is also easy to manipulate the MIDI in real-time – in this game I’ve used it to pitch down the audio when you die.

GUI toolkit library: glib and GTK3

Let’s first admit it; in the Linux world we don’t have anything as stable as the Win32 API for creating windows. The two main contesters, GTK and QT, are both rewritten every five years or so. So if I, ten years from now, need to run this game again, chances are that I have to rewrite this part. The GUI is just used in the beginning though (to setup the game), so it shouldn’t be too much work.

I chose GTK over QT here because

  • I had previous experience with GTK
  • QT adds complexities to your build system, as you need not only a C++ compiler, but also a special preprocessor to turn some special QT constructs into valid C++ code.

Build system: simple Makefile

In my case, my application takes a few seconds to compile. For really simple applications like this one, I find build systems such as autotools or CMake to be more trouble than what they solve. In both cases, you’ll have to learn an additional language just to specify your build dependencies. (Autotools also has a few nuisances, such as requiring some extra files to be present, and in all upper-case, such as AUTHORS or NEWS.)

For larger projects, they make more sense though as they might help you create libraries for different platforms, give nice error messages when build dependencies can not be found, etc.

Licensing: LGPL-2 + CC-BY-SA

This is always a tricky and controversial subject, and I’d like to reiterate that this a layman’s thoughts on the topic and nothing else.

  • GPL is the strongest license when it comes to free software. But that also makes it a very incompatible license, it is essentially impossible to link GPL code with everything that’s not extremely weak (e g BSD) or explicitly made to fit with GPL (e g LGPL). One example of an incompatible license is MPL 1.1 – this was a quite popular license in the Delphi community, and the incompatibility with GPL was a real pain.
  • It is not obvious where the boundaries between GPL and non-GPL code can be, causing confusion in court from time to time. FSF might offer some advice on how to interpret the license; but they’re not a neutral party. In this case, I find the LGPL, the second strongest license, more clear.
  • So LGPL-2, LGPL-3 or LGPL2+? Well, to me, any “at your option, any later version” clause is out of the question; for me, that’s essentially the same as giving your code away to the FSF as they can relicense your code any way they wish. And LGPL-2 is shorter than LGPL-3 because LGPL-3 includes the full GPL-3 license code, too.
  • LGPL-2 is suitable for code, but not for data. So music, graphics and levels are licensed under CC-BY-SA. I was considering adding “non-commercial”; but the border between commercial and non-commercial can be fluid, and might also be a problem with the DFSG, so I skipped that part.

Update: Seems I didn’t read closely enough – LGPL-2 has a GPL-2+ clause, now making it possible for the FSF to relicense my code by making a new GPL version.

I also downloaded new sound effects (which is the only part not completely made by myself or my cousin), to make sure there was no licensing problems with those.

Getting it into the Ubuntu Software Center

Unfortunately, this does not currently work for free applications. While adapting my packaging to fit the requirements was relatively straight-forward, and also walking through the dialogs for app submission, when all this work was done, I was met by the following message:
Thank you for submitting a gratis Free Software application through MyApps. At this time we are unable to process this request, as we are working on the implementation of a new app upload process.
Bummer.
Disappointing message.

A packaging tip

While we’re on the topic of packaging, let me just share a quick tip. If you’re new to Debian packaging (the system used in Ubuntu), and just want to package your own app, one thing to think about is that the packaging system was designed for having coders and packagers belong to separate organisations. So that means, that if you during packaging find a bug in your code, you’re meant to make a temporary patch, send that the coder, who will then make another release of the non-packaged software, which you will then package. In practice, this is a bit heavy-weight if you’re just one person and don’t keep packaging and code apart, so I used the following shortcut:
tar -cjf theblobgame_0.20130202.orig.tar.bz2 --exclude=debian theblobgame-0.20130202
If you fixed something in the code and want to work on the packaging, the command above will create a new “code release” from the packaging system’s point of view.

…and finally, it’s free software!

This means you’re allowed not only download and run this game, but also look at the code, copy-paste parts into your own game (under the terms of the LGPL-2!) or just use for inspiration. You can fix a bug or a feature and send me patches (or publish the modified code yourself), etc. Enjoy!

Update: Someone asked me how to get the source, so here’s a quick howto:
If you have executed the lines in the top of this blog post, just change into a suitable directory and execute “apt-get source theblobgame”. Before you build, you can use “sudo apt-get build-dep theblobgame” to automatically install all build dependencies. Building can be done with “dpkg-buildpackage -b” (from the source code directory). Then install the resulting .deb package (“sudo dpkg -i theblobgame_version.deb”) to test.

If you’re not running Ubuntu/Debian, you can get the source from going to the PPA page, click “View package details”, click one of the arrows on the left side in the table, and download the file ending with “orig.tar.bz2″.

Disclaimer: This does not mean that the source is written by the book, with lots of helpful comments, etc. The game engine is mostly a quick translation of the code as it looked like ten years ago, with new glue code added for interfacing with the libraries I now depend on.

Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130409 Meeting Agenda


ARM Status

nothing to report this week.


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items for the 13.04 cycle. I
will begin assigning some of the ckt phatblet-kernel-maintenance work
items to specific individuals on the team who are already doing the
work.

   apw    hardware-r-kernel-config-review    1 work item   
      hardware-r-delta-review    2 work items   
      foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
      foundations-1303-phablet-kernel-maintenance    1 work item   
   ckt    foundations-1303-phablet-kernel-maintenance    6 work items   
   ogasawara    hardware-r-kernel-config-review    3 work items   
      hardware-r-kernel-version-and-flavors    1 work item   
      mobile-power-management    3 work items   
   ppisati    hardware-r-kernel-config-review    1 work item   
   rtg    hardware-r-delta-review    1 work item   
   sforshee    foundations-1303-phablet-kernel-maintenance    1 work item   


Status: Raring Development Kernel

Coming off Beta Freeze last week, we have since rebased Raring to the
v3.8.6 upstream stable kernel and uploaded. With Kernel Freeze in
~2days, we will perform one more upload prior to Kernel Freeze. All
patches submitted after Kernel Freeze must adhere to our SRU policy.
Only critical bug fixes for the release will warrant an upload.
Important upcoming dates:

  • Thurs Apr 11 – Kernel Freeze (~2 days)
  • Thurs Apr 18 – Final Freeze (~1 week)
  • Thurs Apr 25 – Ubuntu 13.04 Final (~2 weeks)


Status: CVE’s

== 2013-04-09 (weekly) ==
Currently we have 73 CVEs on our radar, with 5 CVE retired this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

Status for the main kernels, until today (Apr. 9):

  • Lucid – In Prep; (14 commits)
  • Precise – In Prep; 2 upstream releases; (170 commits)
  • Quantal – In Prep; 2 upstream releases; (225 commits)
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock


Open Discussion or Questions? Raise your hand to be recognized

No open discussions.

Read more
racarr

Current Projects!

Have been putting off writing another post! Some nonsense about trying to crystallize thoughts…Found myself with some extra time during the work day and thought I would take some time to write about what I am working on over the last few weeks!

Currently my two largest areas of focus are:

1. Client Side Input

2. Preparation for Unity Next (Inprocess EGL)

Client Side Input

Conceptually this is exactly what it sounds like: Deliver input events (key, touch) to Mir clients! Over the last few months we’ve been working to adapt an isolated version of the Android input stack in to the Mir code base. Now that all the building blocks are coming together under test some exciting things are starting to happen. Last week code landed to hook the input dispatch subsystem (previously only functioning as a server side event filter) to the shell focus model, i.e. Which application gets which key events?

This week I am working on a pending branch for the client side API for receiving input. With this in place you can run a mir server today and receive input all the way to clients. It was pretty exciting to see the first full stack key events pass acceptance test!

I spent some time too working on Qt Mir support to enable input. Prior to the stabilization of the Ubuntu touch code there qmir was created as it’s own QPA plugin and has served us well! However now the QtUbuntu plugin from the Phone and Tablet images has become a lot more mature and come to contain a lot of useful code! So I have made a version of QtUbuntu which works on top of Mir through abstracting the Ubuntu Platform API and providing a libmirclient-based implementation.

I’d still like to write a post describing Input in Mir end to end. I think there are a lot of interesting observations (mostly not made by me ;) ) at every level of the stack from androidinput, to Mir, to Qt, which change the problem from an un-tangleable FUD bubble to something as simple as it conceptually sounds: Read input events from physical devices and route them where needed :) . Hard to find the time for technical writing though.

Preparation for Unity Next

On a separate line I have been working to prepare Mir for the rendering needs of Unity next. Namely, Unity (using mirserver as a library) will wish to create surfaces and EGL contexts for rendering certain shell components (such as the Launcher or the Dash). It would be a shame (and get in the way of certain other requirements) for this to happen over the IPC protocol!

A pipeline has been in the works the last few weeks to enable this: The interface between mesa-egl-platform-mir-server was abstracted through a NativeDisplay interface with both client and server implementations. Now with pending work the same Mesa backend can work for in and out of process clients.

Using the same QtUbuntu backend mentioned before, I played around with an in-server implementation of the platform API to get a quick QML demo going up using in-server rendering!

The End

Quick! hit publish before I get caught in endless revisionism.

 

Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130402 Meeting Agenda


ARM Status

No update this week.


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items owned by individuals on
our team for the rest of the 13.04 cycle.

   apw    hardware-r-kernel-config-review    1 work item   
      hardware-r-delta-review    3 work items   
      foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
      foundations-1303-phablet-kernel-maintenance    1 work item   
   ogasawara    hardware-r-kernel-config-review    3 work items   
      hardware-r-kernel-version-and-flavors    2 work items   
      hardware-r-kernel-misc    1 work item   
      mobile-power-management    3 work items   
   ppisati    hardware-r-kernel-config-review    1 work item   
   rtg    hardware-r-delta-review    1 work item   
   sforshee    foundations-1303-phablet-kernel-maintenance    1 work item   


Status: Raring Development Kernel

Highlights from this past week include rebasing Raring to the latest
v3.8.5 upstream stable kernel, adding Highbank support, and renaming our
omap arm flavor to generic to better reflect is new nature of a
mutiplatform arm kernel. We have also rebased our unstable-3.9
branch to the latest upstream v3.9-rc5.
Please be aware that Beta Release for Raring is fast approaching, ie
this Thurs Apr 4. Kernel Freeze is next week on Apr 11. All patches
submitted after Kernel Freeze must adhere to our SRU policy.
Important upcoming dates:

  • Thurs Apr 04 – 13.04 Final Beta Release (~2 days)
  • Thurs Apr 11 – Kernel Freeze (~1 week)


Status: CVE’s

== 2013-04-02 (weekly) ==
Currently we have 73 CVEs on our radar, with 7 CVE retired this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

Status for the main kernels, until tiday (Feb. 26):

  • Hardy – Nothing this cycle
  • Lucid – In Prep; (2 commits)
  • Oneiric – In Prep; 4 upstream releases; (100 commits)
  • Precise – In Prep; 1 upstream releases; (150 commits)
  • Quantal – In Prep; 1 upstream releases; (164 commits)
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock


Open Discussion or Questions? Raise your hand to be recognized

No discussions or questions.

Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130326 Meeting Agenda


ARM Status

R/master: the -omap flavour was renamed -generic and support for Calxeda SOC was added to it.
The -generic rename, coupled with the deletion of R/omap4 and the removal of the highbank
flavour from master, officialy mark the beginning of arm multiplatform support
in UBUNTU.


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items owned by individuals on
our team for the rest of the 13.04 cycle.

   apw    hardware-r-kernel-config-review    1 work item   
      hardware-r-delta-review    3 work items   
      foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
      foundations-1303-phablet-kernel-maintenance    1 work item   
   ogasawara    hardware-r-kernel-config-review    3 work items   
      hardware-r-kernel-version-and-flavors    2 work items   
      hardware-r-arm-kernel-maintenance    1 work item   
      hardware-r-kernel-misc    1 work item   
   ppisati    hardware-r-kernel-config-review    1 work item   
   rtg    hardware-r-delta-review    1 work item   
   sforshee    foundations-1303-phablet-kernel-maintenance    1 work item   


Status: Raring Development Kernel

We have rebased Raring to the latest v3.8.4 upstream stable kernel and
uploaded. We have also began work to provide support for highbank in
Raring. We have also rebased our unstable-3.9 branch to the latest
upstream v3.9-rc4.
Please be aware that Beta Freeze is fast approaching, ie this Thurs Mar
28. We will perform one more upload either today or tomorrow prior to
Beta Freeze. Beta release is then next week on Apr 4 and Kernel Freeze
is the following week on Apr 11. All patches submitted after Kernel
Freeze must adhere to our SRU policy.
Important upcoming dates:

  • Thurs Mar 28 – 13.04 Beta Freeze (~2 days)
  • Thurs Apr 04 – 13.04 Final Beta Release (~1 week)
  • Thurs Apr 11 – Kernel Freeze (~2 weeks)


Status: CVE’s

== 2013-03-26 (weekly) ==
Currently we have 73 CVEs on our radar, with 8 CVEs added and 25 CVE retired this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

Status for the main kernels, until tiday (Feb. 26):

  • Hardy – Nothing this cycle
  • Lucid – In Prep; (2 commits)
  • Oneiric – In Prep; 4 upstream releases; (100 commits)
  • Precise – In Prep; 1 upstream releases; (150 commits)
  • Quantal – In Prep; 1 upstream releases; (164 commits)
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock

    We respun the Quantal and Precise kernels yesterday. All derivative
    kernels will need to be respun.


Open Discussion or Questions? Raise your hand to be recognized

No open discussion or questions.

Read more
Daniel Holbach

The Ubuntu Developer Advisory Team has been in place for two or three release cycles already and it’s been a fun journey so far. We’ve got in touch with many many new contributors and old contributors as well. If you don’t know what this team does, here’s what our wiki page has to say:

We

  • Reach out to new contributors, thank them for their work and get feedback.
  • Reach out to people who might be ready to apply for upload rights and help them.
  • Reach out to contributors that went inactive and get feedback from them and offer help.

I personally found this very rewarding as I got to talk to many new contributors and see how they feel about Ubuntu Development.

You can help!

If the above sounds interesting to you and you enjoy engaging socially, if you have made a few experiences in Ubuntu Development and want to help out, please talk to me or comment below. It’d be great to have you on board!

Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130319 Meeting Agenda


ARM Status

R/master: worked on adding support for a new arm soc.
R/omap4: still waiting input if we can drop the omap4 dekstop image.
R/nexus7: debugged an issue about display brightness.


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items owned by individuals on
our team for the rest of the 13.04 cycle.

   apw    hardware-r-kernel-config-review    1 work item   
      hardware-r-delta-review    3 work items   
      foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
   ogasawara    hardware-r-kernel-config-review    3 work items   
      hardware-r-kernel-version-and-flavors    2 work items   
      hardware-r-arm-kernel-maintenance    1 work item   
      hardware-r-kernel-misc    1 work item   
   ppisati    hardware-r-kernel-config-review    1 work item   
   rtg    hardware-r-delta-review    1 work item   


Status: Raring Development Kernel

We have rebased Raring to the latest v3.8.3 upstream stable kernel and
uploaded. We have also started tracking the v3.9 kernel in an
unstable-3.9 branch. We have rebased that branch to v3.9-rc3 but not
yet uploaded.
Important upcoming dates:

  • Raring:

    • Thurs Mar 28 – 13.04 Final Beta Freeze (~1 week)
    • Thurs Apr 04 – 13.04 Final Beta Release (~2 weeks)


Status: CVE’s

== 2013-03-19 (weekly) ==
Currently we have 69 CVEs on our radar, with 21 CVEs added and 6 CVE retired this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

Status for the main kernels, until tiday (Feb. 26):

  • Hardy – Nothing this cycle
  • Lucid – In Prep; (2 commits)
  • Oneiric – In Prep; 4 upstream releases; (100 commits)
  • Precise – In Prep; 1 upstream releases; (150 commits)
  • Quantal – In Prep; 1 upstream releases; (164 commits)
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock

    Note: This is the week the last Hardy and Oneiric kernels may be built.


Open Discussion or Questions? Raise your hand to be recognized

No open discussion or questions.

Read more
racarr

Community

Community has been a big concept for me in 2013. Perhaps it reads as cliche, I’m not cynical! I feel as if I’m struck every day amazing power of community, the ability of individuals to organize, communicate, share and create something better. Continually amazed by the deepness and complexity to the connections between all of us and the spaces (physical or virtual!) we inhabit.

In this line, I’ve been thinking a lot about building more of an online home for myself! Why not start with a blog? A place to share my thoughts, to share what I learn, to share my problems and successes! I’m not sure what I want racarr.me to become, but one step at a time!

I will admit I have put it off for some time, the usual anxiety!

However with the public announcement of Mir, which has been my focus at Canonical for many months, I can’t hold it in any more! Reputedly there is some controversy on the internet over Mir ;) . I have to say though, it’s a piece of software that I am immensely proud to be a part of creating. I think we have solved a lot of hard problems, and generated a lot of interesting thought. I want to share this, so we can all collaborate to find better solutions to the next problems (for Mir or otherwise).

Lately in work I have been working on enabling input for native Mir clients, and am looking forward to writing some posts on the important concepts and features throughout the Mir input stack.

Lately in life I am living in San Francisco and learning to love and share a little more every day.

Who knows what else I will write about? Perhaps the top 100 versions of Scarlet Begonias, perhaps life in San Francisco, perhaps just musings. I’m hoping to find my voice.

Read more
Joseph Salisbury

Meeting Minutes

IRC Log of the meeting.

Meeting minutes.

Agenda

20130312 Meeting Agenda


ARM Status

R/master: nothing new this week.
R/omap4: verified that pvr-omap4 doesn’t work with our multiplatform 3.8 kernel,
i’m waiting input if we can drop the omap4 dekstop image.
R/nexus7: ported overlayfs from P (lp1076317) – awaiting testing from a
brave soul since my nexus7 is borked ATM (lp1126836).


Release Metrics and Incoming Bugs

Release metrics and incoming bug data can be reviewed at the following link:

  • http://people.canonical.com/~kernel/reports/kt-meeting.txt


Milestone Targeted Work Items

The above summarizes the remaining work items owned by individuals on
our team for the rest of the 13.04 cycle.

   apw    hardware-r-kernel-config-review    1 work item   
      hardware-r-delta-review    3 work items   
      foundations-r-secure-boot    1 work item   
      foundations-r-aarch64    1 work item   
      foundations-r-upstart-user-session-enhancements    1 work item   
   ogasawara    hardware-r-kernel-config-review    3 work items   
      hardware-r-kernel-version-and-flavors    2 work items   
      hardware-r-arm-kernel-maintenance    1 work item   
      hardware-r-kernel-misc    1 work item   
   ppisati    hardware-r-kernel-config-review    1 work item   
   rtg    hardware-r-delta-review    1 work item   


Status: Raring Development Kernel

Since our last meeting 2 weeks ago, we have rebased to the latest v3.8.2
upstream stable kernel. We’ve also added Haswell ULT NFC, I2C, SPI, and
SATA RTD3 support, USB3 port power off capability, prime support for
nouveau and radeon, and other misc config updates and bug fixes.
Important upcoming dates:

  • Raring:

    • Thurs Mar 21 – 13.04 Final Beta Freeze (~2 weeks)
    • Thurs Mar 28 – 13.04 Final Beta Release (~3 weeks)


Status: CVE’s

== 2013-03-12 (weekly) ==
Currently we have 46 CVEs on our radar, with 10 CVEs added and 1 CVE retired this week.
See the CVE matrix for the current list:

  • http://people.canonical.com/~kernel/cve/pkg/ALL-linux.html

    Overall the backlog has decreased slightly this week:

  • http://people.canonical.com/~kernel/status/cve-metrics.txt

  • http://people.canonical.com/~kernel/cve/pkg/CVE-linux.txt


Status: Stable, Security, and Bugfix Kernel Updates – Quantal/Precise/Oneiric/Lucid/Hardy

Status for the main kernels, until tiday (Feb. 26):

  • Hardy – Nothing this cycle
  • Lucid – In Prep; (2 commits)
  • Oneiric – In Prep; 4 upstream releases; (68 commits)
  • Precise – In Prep; 2 upstream releases; (197 commits)
  • Quantal – In Prep; 2 upstream releases; (175 commits)
    Due to a regression, the Quantal kernel and it’s derivatives have been
    respun.
    Current opened tracking bugs details:
  • http://people.canonical.com/~kernel/reports/kernel-sru-workflow.html

    For SRUs, SRU report is a good source of information:

  • http://people.canonical.com/~kernel/reports/sru-report.html

    Future stable cadence cycles:

  • https://wiki.ubuntu.com/RaringRingtail/ReleaseInterlock

    (bjf> >)
    (bjf> >) Note: The week of March 21 is the week the last Hardy and Oneiric kernels may be built.
    (bjf> >)


Open Discussion or Questions? Raise your hand to be recognized

Welcome back to the Kernel team, kamal!

Read more
jono

I just want to echo Tony’s appeal to help three year-old Sam who was diagnosed with high risk neuroblastoma, a particularly aggressive cancer. It has spread from the main tumor into his bones and bone marrow. That makes it a class 4 cancer, the most advanced on the scale. The long term survival rate for high risk neuroblastoma is 40%.

As Tony shares:

The good news is that Sam is responding well to chemotherapy. But Sam’s oncologist at Manchester Children’s Hospital has recommended that Sam receives immunotherapy treatment so that his own body can recognise and attack the neuroblastoma if it returns.

The most successful treatment is not available in the UK because some of the drugs are still being trialled. It costs over £250,000 in the US. Which is why Sam desperately needs your help. Carl and Christine are trying to raise the money to send Sam for treatment in the US.

If you would like to donate to help Sam, that would be brilliant. In the UK you can just text SAMS67 and the amount you’d like to donate (£1, £2 £3 £4 £5 or £10) to 70070. Alternatively you can donate on-line at the Sam Shaw Just Giving page. It’s Sam’s fourth birthday this week, so it would be a great birthday present to give him. :-)

Also be sure to join the appeal’s Facebook page.

Your donation to Sam will have an incredible impact on his life as well as his parents, Christine and Carl, who must be having a hell of a time right now dealing with all of this. Let’s all show them that we care by helping them to cover their son’s treatment.

Read more
kevin gunn

Launching Mir & UnityNext

The Moonshot for Mir & Unity Next

Convergence! Unity Next is what we’re referring to with our migration from Nux to Qt for our shell rendering. Migration might not be the right term, in a way the migration has already begun …as this is what you’re looking at when you see the Ubuntu Touch preview.  And the Ubuntu Touch preview wasn’t written as a demo, it’s intended to continue going through software development and become a product. Finishing up our change to Qt does give us an opportunity to revisit some other things we’ve been working on…like Mir. So our goal is to effectively have Mir be the master of surfaces, input & application info in the system with Unity Next running on top for all form factors…desktop computers, tv’s, tablets & phones.

Any time you’re trying to converge existing solutions into one, you have some choices to make in terms of what to use as a seed. In our case the journey is going to begin with phones as the first key milestone. There are a couple of reasons. You may have noticed in our recent Ubuntu Touch preview the first form factor to appear was the phone. And if you are a long time user of Ubuntu, the there is a subtle difference in the ui you’ve seen recently on the phone & tablet compared to the desktop. So it’s efficient for us as an organization to leverage that which has been the focus of our most recent effort in the UI stack evolution.  Also, due to the screen real-estate area, the phone presents itself as a virtual subset of the desktop requirements. So we feel that beginning with a focus on the phone will to get to a productizable code base on the phone is the best way to quickly harden what we have & provide the vehicle to convergence.

Approaching it from the phone angle means we’ll be able to harden a subset what’s needed for full convergence & deliver an actual product to use along the way…rather than trying to do everything in one shot. And that’s beneficial in terms of getting “road milage” on the code and making any tweaks especially for “look and feel” topics. It does mean that along the way we’ll need to keep an eye on building in some flexibility to accommodate our desktop….but the good news there, we’ve been delivering Unity for desktop for a while now, so most interested parties are aware of what the desktop needs to deliver.

Devil’s in the blueprints

As you can imagine, there’s plenty to do for full convergence. We’ve captured much of what we think needs to occur in https://blueprints.launchpad.net/ubuntu/+spec/client-1303-mir-phone-iteration-0 & we’ve begun to flesh out work for Unity Next as well here https://blueprints.launchpad.net/ubuntu/+spec/client-1303-unity-ui-iteration-0. If you take a look at the blueprint https://blueprints.launchpad.net/ubuntu/+spec/client-1303-mir-converged you’ll see a see a diagram dependency in the middle of the page…The thinking goes like so…”what do you need for a converged solution?”…”you need a productizable phone base”…”what do you need for a producatizable phone?”…”you need a first integration”. Unity Next has a similar blueprint & diagram https://blueprints.launchpad.net/ubuntu/+spec/client-1303-unity-ui-converged

And so, our milestones effectively match this line of thought.  Its like a 3 stage rocket for Mir & Unity Next… First target is integration of Unity Next & Mir  (we’ll be discussing this at the upcoming UDS)….second is actually creating our Ubuntu for Phone with Unity Next + Mir sometime in 4Q13. Lastly we should hit full convergence in 2Q 2014. And if you poke around you may notice that there is high priority on phone with low priority on convergence, but there’s no confusion convergence is the ultimate target. This is just an artifact planning reality, the nearest required steps are the highest priority…as we deliver the phone, convergence will take its place.

If you’d like to join us on the journey. Look for the Mir session and the Unity Next session in our upcoming virtual UDS http://uds.ubuntu.com/ & you can always find us on #ubuntu-unity

Read more
ThomasVo5

Some time ago, Canonical started internal discussions about our convergence strategy, clearly spelling out the distant target of shaping and developing a single computing platform and operating system that is able to power the cloud, classic desktop machines, laptops, TV sets, phones and tablets (fridges anyone?). More to this, we stated that we want a single mobile device, a bundle of portable computing power together with the respective operating system, that seamlessly adapts to different form-factors and use-cases. Or to put it a little more catchy:

Your phone is your TV, is your desktop, is your … you name it.

And yes, we were aiming for the moon. We worked hard to draft a system that would allow us to reach the moon, while at the same time catering towards our other central goal of providing a beautiful and lean user experience. It became apparent in conversations and discussions that one of the cornerstones of the future system we were designing will be the graphics stack, including the Unity shell. After much discussions about existing solutions (X & Weston), and how we could leverage them, we took a step back and distilled down our (technical) requirements for a future graphics stack:

  • Tailored towards an EGL/GL(ES) world.
  • Minimal assumptions regarding the underlying driver model.
  • Ability to leverage existing drivers implementing the Android driver model.
  • Ability to leverage existing hardware compositors.
  • Efficient, in terms of memory-, CPU- and GPU-consumption/usage.
  • Tightly integrated with the Unity shell, fulfilling the shell’s requirements while at the same time not dictating any sort of semantics up the stack.
  • An efficient and secure input subsystem supporting demanding mobile use-cases.
  • Fully tested from the ground up.
  • Adaptable to future requirements.

With these priorities in mind, we revisited and carefully evaluated existing solutions again and found that neither of them satisfies our requirements. In particular, X and its driver model is way too complicated and feature-laden, resulting in a less efficient system and a driver model that is unlikely to be widely supported on mobile platforms. In the case of Weston, the lack of a clearly defined driver model as well as the lack of a rigorous development process in terms of testing driven by a set of well-defined requirements gave us doubts whether it would help us to reach the “moon”. We looked further and found Google’s SurfaceFlinger, a standalone compositor that fulfilled some but not all of our requirements. It benefits from its consistent driver model that is widely adopted and supported within the industry and it fulfills a clear set of requirements. It’s rock-solid and stable, but we did not think that it would empower us to fulfill our mission of a tightly integrated user experience that scales across form-factors. However, SurfaceFlinger was chosen as our initial solution for getting started with the overall Ubuntu Touch project, planning to replace SurfaceFlinger with Mir as soon as possible.

In summary, our evaluation of existing solutions led us to the conclusion that neither of them fits our requirements and that adjusting/adapting them would require substantial efforts, too. For this, we decided to go for our own solution, catering directly towards our goals and our vision, effectively saying: Yes, we are going to do our own display server.

The project was born and we decided to name it Mir (as in the space station), as it would be our outpost that finally enables us to reach our goal of arriving at the moon, providing a seamless and beautiful user experience spanning multiple form-factors. The team set off to work on Mir while large parts of Canonical started working on the Ubuntu Touch project (relying on SurfaceFlinger). A lot of knowledge and experience was and is transferred from the Ubuntu Touch project to the Mir team, with the work on the phone and tablet revealing more and more technical requirements and subtleties that heavily influenced the Mir architecture and implementation. Thus, one of the earliest technical decisions that has been taken by the team concerned the protocol that applications rely upon to communicate to Mir. We evaluated Wayland and compared it to the SurfaceFlinger approach, realizing that neither of them fits our needs. Wayland is a very promising and sensible attempt at standardizing the way that applications talk to a display server, however, it exposes privileged sections like the shell integration that we planned to handle differently, both for security reasons and as we wanted to decouple the way the shell works on top of the display server from the application-facing protocol. In the end, we decided to implement Mir’s core in a protocol-agnostic way, considering the communication protocol a very important part of the overall story, but not the driving one. We have chosen Google’s protocol buffers as our data and interface description language (DDL & IDL) and implemented a lean RPC layer that abstract away transport-specific details (relying on an ordinary socket by default). It is well tested and the protobuf IDL and DDL provide us with forward- as well as backward-versioning capabilities. However, the communication component of the overall system is adaptable and can be adjusted to account for future requirements and developments.

A final word on timelines: At the time of this writing, we are preparing to deploy the next version of the Unity shell tightly integrated with Mir in the not-too-distant future on the phone and the tablet. However, regarding the desktop use-case: We have integrated X, leveraging the prior XWayland work, to run on top of Mir (XMir) and started initial porting efforts for toolkits with a focus on Qt5. With our X-integration in place, you can run Mir on your desktop machine if your system runs a GPU that supports the free driver stack. For the closed-source desktop drivers: We are in active conversations with GPU vendors to enable Mir on those drivers/GPUs, too. [Updated] More to this, we are working together with NVIDIA towards a more unified driver model sitting on top of EGL.

As we are moving along with the development of Mir, we will work on integrating existing toolkits with the new display stack to allow application developers a seamless transition between different form-factors and prevent them from the burden of supporting multiple different display servers. As noted before, Qt5 is our first target here, with GTK3 and XUL being in the pipeline. To support legacy X applications that cannot be adjusted to work against Mir, we will provide a translation-layer that leverages the existing XMir implementation and allows legacy X apps to use Mir transparently.

And that’s pretty much it. Thanks for reading. I hope I could give you some insight into the history of Mir, its motivation and its trajectory. If you want to dive even further into the Mir world, head over to wiki.ubuntu.com/MirSpec. A lot of work has already been done, but more of it lies ahead of us. So if you are curious, have questions, want to help us or simply want to get to know the team, join the Mir sessions at the upcoming virtual UDS. You might also want to read Olli’s description of the bigger picture, including our overall convergence strategy for Unity.

To the moon,

Thomas


Read more
niemeyer

12 years ago

These ancient entries were taken from my old Advogato diary, written in my early twenties, a year after I joined the development team of Conectiva Linux. I’m copying them for historic purposes, with the content untouched. It’s curious to look back and have such details of what was going on at the time, things that feel good, and things that feel awkward such as the “Dear Diary, …” style of writing, and the amount of exclamations!!


6 Feb 2002

Wow!! It has been a long time since my last diary entry.

I’ve left Linuxconf development team coordination in favor of the Conectiva Linux port to the S390 platform coordination (ok, I’m mostly coordinating myself now :-) . Most of the work is done. I have developed an acceptable installer (in Python!) and most of the packages are ported. We had some problems with IBM OCO modules (ick!), but we are already workarounding them (we gave up on some of our kernel patches, and I patched insmod to recognize OCO modules). Anyway, more information about this later (if I don’t disappear for another year.. ;-)

In the process of porting Conectiva Linux to S390 and PPC (Harald Welve started the PPC port, and I’m keeping it up to date and working on missing stuff) we are learning some lessons. We are trying to use those lessons to build a defacto package building system using the Python language. Unfortunately, we don’t have enough people here to develop it quickly, so we are trying a more realistic and evolutive approach this time. The first part of it is almost done. While devloping it, I’ve studied a little bit about process groups and extended python with a missing killpg() system call. I’ve also discovered that when python spawns a new thread, it blocks all signals. With this information in mind, I have also extended it with a new execv() syscall, that besides doing the usual work, unblocks every signal before the real call to execv(). I hope this project becomes real someday.

I’ve also been playing with Python optimization lately. There’s a big opportunity for somebody wanting to study and implement some concepts there. I’ve read some documentation about Stack Machine Optimization and made some tries (basically, optimizations around the inner loop and the Big Switch, stack caching, and other flavors of this joy). Today I found a paper from Skip Montanaro documenting some of the tries I’ve made (reading it first would save me a lot of time, but this knowledge will be useful anyway). You should have a look at his paper if you have any interest in the topic. Oh, don’t forget to get yourself a copy of Lemburg’s pybench to have a general idea of what you’re doing (don’t trust too much on it, it’s just a benchmark). I’ve written Skip a mail to discuss a little bit about what could be integrated into the interpreter. Let’s see where we get.

Oh… I must not forget to update the people I’ve certified in the past to reflect what they’ve been doing.

27 Jan 2001

I’ve just tested the patch floppy_cs on kernel 2.2.17 and it works just fine!!! I had no problems applying it. Now my Libretto 50CT has a floppy drive. Maybe Conectiva Linux can ship with this patch. The only drawback is that floppy support must be modular.

In the few last days, I’ve implemented support for Inputgrid into gnome-linuxconf. It allows one to define sensitive areas into a drawing area. Gurus are already working with it.

I’ve also created two new commands for Linuxconf’s gui protocol: Splash and Hidesplash. Linuxconf will send them while it is starting, and the graphic frontend is suposed to show a nice splash screen. Support in gnome-linuxconf has also been implemented with an image designed by Everaldo (thanks!!!).

Btw, yesterday I’ve fixed a bug in Python’s bsddb module. It was handling DB_RECNO databases with string keys. As the documentation says, these databases must use, in key’s “data” field, a pointer to a memory location holding a recno_t type.

My parents have arrived yesterday!! They’ll stay here until monday and then will go to Minas Gerais, visiting Raul and Lulude.

22 Jan 2001

Yesterday I’ve implemented a message signing module for Mailman. Darian (aka dmalloc), from openprojects.net has asked if I could do such module to use on lists.openprojects.net. (I said yes… ;-) . I’m going to ask the people here at Conectiva if they want to use this module in some of our lists.

Pybot has a few new features: CTCP handling/sending, timer module, unhandled messages hook, and something else I probably forgot.

About Linuxconf, I have spent the last days fixing a few simple bugs introduced in 1.24r2 and in the last modules developed by Conectiva. I hope to release a Linuxconf update to Conectiva 6.0 tomorrow.

gnome-linuxconf has won a home with screenshots and everything else at http://distro.conectiva.com/projetos/45. I’ve also published it at freshmeat and put files to download at SourceForge.

Oh, good news I forgot to tell: for those of you that are using wxxt-linuxconf, Jack (Jacques Gelinas) has implemented the Treemenu icons into this frontend as well.

16 Jan 2001

Today I’ve fixed a bug in the Pythonmod module of Linuxconf. Linuxconf has a default handler for the SIGCHLD signal that controls all of its child termination. This method has a few disadvantages. Before calling any external processes without using default Linuxconf methods, you must block this handler, otherwise Linuxconf will get on your way. Because of this, If a Pythonmod module tried to fork external processes, they were failing. Now Pythonmod is setting the SIGCHLD signal to SIG_DFL (POSIX doesn’t allow us to SIG_IGN it) before calling python code, and after returning from a few Linuxconf API functions that set the handler back. When the python code returns, popen_initsignal() is called, putting the Linuxconf handler back in place.

On the gnome-linuxconf side, I’ve implemented the drawing context command Defpen. Now we have colored lines and primitives!! (ok… not that good… ;-)

I’ve also spent a few hours in the last two days backing up and restoring data in my colocated machine. Now my personal emails are back online and the server has an updated kernel. I hope it doesn’t bother me for a long time.

Unfortunately, the server stuff didn’t let me work on Pybot, but I had time to implement dynamically loading, unloading and reloading of modules, before I started on the server. This will help a lot in the development, since I don’t have to reboot the bot everytime something is wrong. Anyway, now that the server is ok (I hope so), I’m planning to spend some of my spare time on the bot (yes, I still have some… ;-) .

11 Jan 2001

Today I’ve added the ability of using icons while in the Treemenu mode of Linuxconf. I have just changed some functions to pass the icon name around until it got into the treemenu module and then sent it to the GUI front-end. A little hack on gnome-linuxconf did the work at the front-end side. Following this line of improvements, I’m planning to add a splash screen or something like that soon. Icons would also be welcome in the web interface.

Besides that, I’m also playing with a Python IRC bot. It’s not meant to be a war or a channel control bot. I’m planning to implement useful modules to help making IRC even more useful as an information media (no it won’t be just another infobot clone). The core and a few modules are ready. I’ll post more information later… for now, I’ll just tell that it is a multi-channel, multi-server bot, and that I’m trying to make its commands with natural language (eg. forward messages from #blah on servername to #bloh on servername).

Happy birthday Diogo!!

16 Aug 2000

Created advogato account.

Read more