openSUSE:Fixing bugs
tagline: From openSUSE
Everybody can improve the openSUSE distribution with fixing bugs in packages. Packages might have quite some bugs and many of them are easy to fix. This page describes the steps you need to take to fix a bug in a package!
Note: The following might not be detailed enough for new packagers and needs some more explanation. See also openSUSE:Build_Service_Tutorial - openSUSE:Package maintenance
See the links above for more information about handling bugs. For documentation about packaging read the Packaging documentation!
Workflow: how to fix a bug in a package
package = name of the package you want to work on
- Create your own branch you will work on
osc branch openSUSE:Factory package - Checkout the sources
osc co home:login:branches:project/package - Get to the right directory ;-)
cd home:login:branches:project/package - If you need to patch anything, quilt may be useful
- Unpack source
quilt setup package.spec - Get to the right directory again ;-)
cd unpacked_package_directory - Apply all existing patches
quilt push -a - Create new patch
quilt new package-version-brief-description.patch - Add files to be modified
quilt add file - Modify files (this and the previous task could be done together with quilt edit file)
- Create final patch
quilt refresh -p0 package-version-brief-description.patch
- Unpack source
- Don't forget to mark all new patches and add entry to the .changes file using osc vc
- After fixing everything and reporting things upstream, all that is left is to submit the changes to the build service:
- run first - only if you added or removed files
osc addremove - then commit the changes
osc commit - and send a submit request to the maintainer
osc sr -m 'Fixed bug #1234'
- run first - only if you added or removed files
- And of course report to the bugzilla that bug is fixed in request
- Something like "Fix sent as sr#456, reported upstream http://bugzilla.foo.bar/?id=1234"
- After acceptance, maintainer reassign bug report to the community member who actually fixed the bug
