This document describes the process for forwarding gNewSense bugs upstream.
Italics will be used for files and paths, bold for commands, and 'code blocks' for file contents.
Have all our freedom related bugs *related to Debian* forwarded to Debian. Note that if it's not related to Debian (a.k.a., not a DFSG violation) it shouldn't be forwarded. Install the 'debian-policy' package and see /usr/share/doc/debian-policy/policy.txt.gz for the Debian policy, Section 2.1 for the DFSG.
I'm assuming a release of gNewSense, but any Debian derivative (eg Trisquel) would do. Add the following lines to your /etc/apt/sources.list
# Source debian repositories for freedom verification deb-src http://http.us.debian.org/debian stable main deb-src http://security.debian.org/ squeeze/updates main
Run apt-get update to pull down the latest package lists, and you should be able to run apt-get source.
To ease source downloading, install the 'devscripts' package, which will provide you with dget (useful for downloading single packages without modifying sources.list), and install apt-file to help locate files moving between packages.
Find a bug report in Savannah. Before forwarding we need to confirm the freedom bug really exists.
Before that though, we'll create a temporary area to work in. This can be anyware you choose.
mkdir ~/pfv cd ~/pfv
Now lets start by downloading the source of the suspect package from Debian.
apt-get source <packagename>
[stuff will appear on the screen as apt downloads and unpacks the source]
Change into the packages working directory.
Look at the relevant/suspect files for headers excluding distribution, modification, use, or anything that means it doesn't match the DFSG. Note when forwarding bugs to Debian, that's what matters, not the FSF definition.
Use the following format for messages:
To: Debian Bug Tracking System <firstname.lastname@example.org> Subject: May contain non-free data (customise as appropriate) In the body of the email, include the following: Package: <package name> Version: <version, blank for all/any> Severity: serious Justification: fails dfsg <cite relevant part for bonus points> User: email@example.com Usertags: gnewsense libreplanet <rest of the email containing detailed information>
Usertags to set
gnewsense for any bugs filed by our project
libreplanet for anything that's generic to all free distributions
All freedom bugs filed by us should should be in both these tags.
If you find you missed a tag, typod or something else you can use the 'bts' command from the 'devscripts' package.
bts user firstname.lastname@example.org , usertags 600340 + libreplanet
The example above usertags bug 600340 with the libreplanet tag. You need a working MTA on your system for this to work.
Tagging archived bugs
Found a bug which we submitted but which has been archived? You'll need to unarchive it first. Hopefully the following template will help. Note that BUGNUMBER is the number of the bug you want to usertag. You can tag multiple bugs in one email, but they must be on separate lines.
To: Debian BTS control <email@example.com> Subject: Usertagging archived bug (Sorry for the noise) unarchive BUGNUMBER user firstname.lastname@example.org usertag BUGNUMBER + gnewsense usertag BUGNUMBER + libreplanet archive BUGNUMBER
Changing the user who the tag is for
This is done by removing the tags from the first user, then adding them to the second user.
bts user gNewSenseemail@example.com , usertags 600339 - libreplanet bts user firstname.lastname@example.org , usertags 600339 + libreplanet
Forwarded bugs should appear on this page, though not all our earlier bugs are captured here.
Bug report status
If a package is only partially non-free (e.g. it contains a non-free data file) then it's usually in one of the following states.
Blacklisted and not yet forwarded: set bug report status to In Progress, assign it and forward as soon as possible.
Blacklisted and forwarded: set bug report status to Postponed. Assign to None if you want to wait for a fix from Debian or leave freeing the package to someone else.
Unblacklisted and freed in gNewSense and forwarded: set bug report status to Upstream, because we want to have it fixed in Debian too.