In preparation for the 2010 Squeeze release Bug Squashing Party (BSP), Debian-NYC is having a workshop to review the important background. This workshop will be very similar to the past two workshops: introduction on how to get a source package, alter (fixing bugs!), rebuild, and submit your changes as a patch. It will happen on the evening of Jan 21st, roughly a week before the BSP.
The purpose of this workshop is so that all kinds of beginners feel welcome at our bug squashing party, and feel that they can make useful contributions. There will be a repeat of this workshop on the Friday of the Bug Squashing Party (Jan 29th) for anyone unable to make it on the 21st, but you'll be able to dive into the BSP more easily if you've had a week to play with these ideas and tools beforehand.
Attendees of previous workshops do not need to attend this workshop - better would be to practice the things from past workshops some! However, everyone is welcome, and past attendees can help mentor new attendees. This workshop will be focused on helping the bug squashing party in January 2010 to run smoothly.
The Debian-NYC series of workshops as a whole is designed to introduce Debian, Debian tools and techniques, and the Debian community as well as provide skills to attendees and helping Debian. This workshop is targeted towards technically-skilled people who would like knowledge of basics of Debian and how to contribute back to Debian.
Please bring: A Debian (or other Debian-based distribution such as Ubuntu) computer with your preferred development tools on it. Extra computers may be available for you to use if you can't bring one; but please contact us ahead of time if you'd like assistance with machinery, so the folks who can bring extra know how much to bring.
Date/Time/Location: January 21, 2010. 18:30 (tutorial section starts 19:00, subject to change). Location: Control Group, located in the Woolworth building (233 Broadway, Manhattan, right next to city hall park). Tell the front desk that you are going to a meeting at Control Group, on the 21st floor. You need some sort of identification to get a visitor pass.
Registration: Free, space is limited, RSVP to (rkd at zgib.net).
Contact: IRC via #debian-nyc on irc.debian.org ; firstname.lastname@example.org ; Richard Darst (rkd at zgib.net)
We would like to thank Control Group, Inc. for providing the space for this workshop. Control Group is a privately held IT consultancy that provides application development, infrastructure, support and training services to clients in the media, entertainment, design, and financial industries. For more information about Control Group and its services, go to http://www.controlgroup.com.
(to be expanded)
- Setting up a development environment
- Getting package sources
- Rebuilding packages
- Looking at package changes and producing a patch to submit
- Debian bug tracking system and bug squashing parties
List of key commands used
This list of commands hasn't exactly been tested as is written here, but should do as a guide to what all we did.
edit /etc/apt/sources.list, make sure there is a deb-src line in there.
tree --si -- fails, does not have this functionality
check bugs.debian.org for package tree
apt-get source tree (ensure that a deb-src is in /etc/apt/sources.list
You see a .dsc, .diff.gz, and .orig.tar.gz present in your directory (for a 1.0 version package)
aptitude install build-essential -- install minimal set of packages we need for building things
apt-get build-dep tree -- install any specific build dependencies we need for the tree package
aptitude install devscripts -- install some useful things for development/bug squashing
debuild -us -uc -- build the original version
wget 'http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=19;filename=tree-1.5.3-fix-units.1.patch;att=1;bug=562971' -O tree.si.patch
dch -l YOURINITIALS -- add entry to the changelog saying what we're doing
- Edit the changelog, make it look good.
patch -p1 --dry-run < ../tree.si.patch -- apply patch, dry run to make sure it works
patch -p1 < ../tree.si.patch -- apply patch
debuild -us -uc -- rebuild, with our own changes and our own version number
- EXAMINE OUR WORK:
interdiff to compare the .diff.gz's, debdiff to compare the .deb's