EmmetHikory

Revision 47 as of 2008-06-25 08:16:39

Clear message

Overview

Launchpad: [https://launchpad.net/people/persia persia]

Current Activities

I'm a member of the Debian Games, Ubuntu Studio Developers, Ubuntu Japanese Team, Ubuntu Mobile and Embedded Developers, and Ubuntu Universe Sponsors teams. I tend to be active in package maintenance, bugfixing, reviewing QA tools, and process discussion. I'm a member of MOTU Council, with interests in process scalability and developer identity. I'm also a member of the Asia&Oceania Regional Membership Board, and try to encourage cooperation between different efforts.

Goals

I'd like to get better and more comprehensive automated developer-focused QA tools, both to improve the state of the packages, and to help in sharing improvements with Debian to reduce duplication of effort. I'm interested in improving integration of community provided patches, workarounds, and solutions to leverage the ever-growing body of expertise to improve the distribution. My development goals for intrepid include full integration of Ubuntu Mobile with the rest of the distribution, a wider pallette of sound sythesis programs, reduction of development effort to support the Japanese localised installation media, and better integration of Java and Java libraries.

Areas of Interest

My primary development interests include audio (especially audio generation and manipulation tools) and input systems. I dislike things crashing, and am happy to help debug nearly any crash or code-traceable unexpected behavour. I'd also like to be able to find everything in the menus, which keeps the stdout spew in ~/.xsession-errors, where it belongs. In an ideal world, I'd be able to use Ubuntu as part of an Augmented-Reality system, with magnetic manipulation of my optical nerves for display, and alpha-wave analysis for input.

Background

I first encountered C and UNIX on an HP/UX system in 1984, and switched to UNIX as a primary home computing environment with SunOS 4.1.3_U1 in 1991. I started using Linux with Yggdrasil in 1993, first started using Debian with Potato pre-release, and first started using Ubuntu shortly after the Warty release.

Opinions

.desktop files

It is important for all packages that are intended for GUI launch to contain .desktop files. These currently serve two purposes, firstly they are required for the target applications to be displayed in the menus, and secondly, both adept-installer and gnome-app-install depend on the presence of .desktop files to determine whether an application is a target for installation. Please visit ["PackagingGuide/SupplementaryFiles"] and make some .desktop files.

config.{sub,guess}

The ideal way to refresh config.{sub,guess} for each build is to build-depend on autotools-dev and either use CDBS, or the following debian/rules fragment:

configure:
        cp -f /usr/share/misc/config.sub config.sub
        cp -f /usr/share/misc/config.guess config.guess

clean:
        rm -rf config.guess config.sub

There are, of course, several cogent arguments against doing this, but if you choose not to update for each build, please do not attempt to automate the update process by altering debian/rules or build-depending on autotools-dev

Native package versioning

In Debian, native packages are versioned as package-version (rather than package-version-revision used for non-native packages), and NMUs are versioned as package-version-0.N (where N is the number of NMUs since the Maintainer last uploaded). I believe that Ubuntu ought to version Ubuntu changes to Debian native packages as package-version-0ubuntuX (where X is the Ubuntu revision number). This allows for seamless merge with Debian NMUs. If this is not done, when native-1.2 is updated by ubuntu, it becomes native-1.2ubuntu1, which is larger than native-1.2-0.1, so that the package may not be synchronised if the Ubuntu changes were adopted, and Ubuntu must create native-1.2ubuntu2 to process the changes (as native-1.2-0.1ubuntu1 is also a lower version than native-1.2ubuntu1).

Maintenance isn't limited to packaging

Software has bugs. This is unavoidable. When there is a bug, it should be fixed. As maintainers for universe, this means we should patch the bug. If it is an upstream bug (where upstream may include Debian), passing the solution upstream is best, as that increases the chances that we don't have to maintain the patch, but leaving the users affected is not preferable, if it can be avoided.

Previous Ubuntu Contributions

Hardy Cycle

Acted as REVU Coordinator working with new packages, associated processes, and documentation. Involved in coordination of QA tools and participant in the Universe Sponsors team. Uploads for bugfixes, QA targets, and Debian sync. Joined Ubuntu Studio Developers and Ubuntu Japanese Team. and participated in goal definition for both releases. Joined MOTU Council, and prepared most of the documentation and process associated with Ubuntu Contributing Developers.

Gutsy Cycle

More merge work, and some library transitions. Started some oldlibs removal efforts. continued with process improvement and documentation. Reviewed the entire contents of the wiki towards assisting with planning for the MOTU wiki reorganisation. Joined MOTU, and began to assist with sponsoring and REVU. Joined Debian Games team and began feeding more patches back. Near the end of the cycle I spent a lot of time on RC bug triage and cleanup, and universe release coordination.

Feisty Cycle

I assisted with merges and sync planning, preparing patches for bugs, and providing support and guidance to participants in #ubuntu-bugs and #ubuntu-motu. I also began process documentation and participation in the MOTU decision process.

Edgy Cycle

I spent some time guiding others towards the creation of more .desktop files, and triaged more bugs, but was largely inactive in development.

Dapper Cycle

I continued to triage bugs, and participate in #ubuntu-bugs. I also began to work on the .desktop files in earnest, drafting many and preparing icons for packages that lacked them. As the release approached, I assisted with some of the topic targets from #ubuntu-motu, including merges, libjack0.80->libjack0.100 transtion, dh_iconcache addition, libopenal0->libopenal0a transition, and preparing new upstreams to target high-profile bugs.

Breezy Cycle

I prepared patches to address issues with my unusual hardware, began to prepare .desktop files for inclusion in packages, and wrote some scripts to automate .desktop generation from the Debian menu system. I spent a fair amount of time triaging bugs, and participated in several Bug Days, including acting as primary coordinator for the 17th September Bug Day. I further prepared a MainInclusionReport for libsdl1.2debian-alsa as the ALSA migration had left all SDL applications with sound problems.

Hoary Cycle

I spent a fair amount of time in #ubuntu, both receiving support for issues in my environment, and assisting others with issues in theirs.


CategoryHomepage