Reporting bugs the Debian way

Reporting bugs the Debian way


Following on from my recommendation for apt-buglist--where you can see the reported bugs on a package before installing it--I thought it might be useful to look at the other side of the coin, reporting bugs in Debian. The best way to do this is with the dedicated tool: reportbug.

Bugs happen

Bugs are a fact of software life. Even the most established and mature project will inevitably have bugs--what distinguishes good software management is also how bugs are reported and handled. Debian has a long history of trying to do things "right" (although granted that is a very subjective term) and in "reportbug" I think it has a very simple and effective way of--er--reporting bugs.

One of the issues with bug reporting is getting the relevant information into the hands of the developers. The problem is that users are not always best placed to provide that relevant information. It's not just what happened that is important but background information like how your system is set-up, what other packages are installed that might create a conflict etc.. Of course trace and system logs can assist with some of this but reportbug is designed to make it easier--even transparent--for the newbie users to provide this information.

Before you start with reportbug--and if you are new to bug reporting--you should probably do a little background reading on what the Debian maintainers expect from bug reports and bug reporting in general. I suggest starting with a couple of articles here at FSM from Woulter Verhelst and Andrew Min and then have a look at the official Debian bug reporting guide.

Installation and set-up

Installation is simply getting the right package, so following on from the apt article, apt-get install reportbug (not forgetting sudo if you are not root) will do the trick. The default package is text-based but there's also a menu/urwid driven interface as well. If you want to use that you need to install the python-urwid package as well. If you really don't like the shell then you should look at the gnome-reportbug package (which does what it says on the tin) or the reportbug-ng package which provides a QT-based front end.

Once the packages are installed you need to set-up reportbug. Running reportbug as root is very ill-advised for security reasons, so make sure you do it as a normal user, e.g. reportbug --configure.

Actually this will happen the first time you run reportbug anyway but it saves time to do it before-hand. If you ever want to change your set-up this is the command to run. You will be taken through a few steps:

  • Operating mode : think of this as user level, if you have not used reportbug before start with novice. Personally I use standard.
  • Interface: here you can choose the text-based or urwid menu interface.
  • Internet access: reportbug needs this so generally the answer will be yes.
  • Real name & e-mail address: The e-mail address you give will listed on publicly accessible web pages and is thus susceptible to crawler-bots. The address you give will also be sent updates and feedback to your bug report so don't make it a non-existent or black-hole address either.
  • MTA: reportbug will send e-mail so if you're not running an mail transport agent on the host PC, give it your ISP's SMTP server address and any associated username details.

Once that is done you are ready to use reportbug so put it away in a cupboard or something until you find a bug.

Reporting a bug

Once you have found a bug--and you are sure it is one--you can fire up reportbug in a shell. If you know the name of the package you can supply it as an argument ( reportbug <packagename> ). This does bring up the only real hurdle in reportbug--you need to know the package name not the application name--but you can easily find this using apt, aptitude or synaptic etc.. If you start reportbug without a parameter, you will be asked for a package name as the first step. Whether you supply it as an argument or not the next step is reportbug retrieving current bug reports for that package. You can then peruse these and view these to see if your bug has already been reported. If it hasn't you can then move onto reporting it. Note that if you specified that the host machine was not connected to the Internet then it won't try to retrieve the current bugs.

After briefly describing the problem--which will become the title of the bug--you then pick the severity of the issue ranging from critical (data loss, system breaking etc.) to wishlist. You then get to specify if this bug is related to localisation (l10n) or if you are providing a patch for it.

Next you are given the bug report itself to edit. This is where the background information I was mentioning earlier is handled for you. Things like package version, system information, kernel, architecture and dependencies are all filled in for you. There is a very obvious space for you to enter your more detailed report. Once you have done editing you exit the editor. The final step is to confirm that you want to send the report: saying yes will normally do the trick.

What happens next

What happens next will probably depend on the type of report you sent in and the package maintainer. You'll get a copy of the report automatically and you might well get a response from the maintainer requesting more info.

Reporting bugs is a very simple way to get involved with the free software community. Using a tool like reportbug makes it even easier for inexperienced users to get involved too. If you ask me it's an all-round better system than the standard bug-tracking tools where you have to register etc.

Category: 

Comments

Ryan Cartwright's picture

Just a quick update. Recently I had cause to use reportbug on a machine which was not permitted to send direct SMTP. Normally such machines would have reportbug configured to use the local relay but this one was a laptop and it was only on one particular network that SMTP was blocked.

If you come up against the same problem you have two choices:

  • Cancel reportbug and do it again when you have SMTP
  • Save the report and send it later or via GMail or similar

I chose the latter. Reportbug will produce an error when trying to send the bug report and give you the option to save it. The prompt is not so clear and will say:

SMTP send failure: [Errno 111] Connection refused. 
    Do you want to retry (or else save the report and exit)? [Y|n|q|?]?

To which you should respond with "n". This saves the entire report (including mail headers to a tmp file. All you do then is compose a message to the recipient listed in the bugreport and get the subject from there too and then paste everything below the "Date..." line as the body of the message.

hope this helps
Ryan
--
Equitas IT Solutions - fairness, quality, freedom
http://www.equitasit.co.uk

Author information

Ryan Cartwright's picture

Biography

Ryan Cartwright heads up Equitas IT Solutions who offer fair, quality and free software based solutions to the voluntary and community (non-profit) and SME sectors in the UK. He is a long-term free software user, developer and advocate. You can find him on Twitter and Identi.ca.

Most forwarded

Interview with Dave Mohyla, of DTIDATA

Dave Mohyla is the president and founder of dtidata.com, a hard drive recovery facility based in Tampa, Florida.

TM: Where are you based? What does your company do?
DTI Data recovery is based in South Pasadena, Florida which is a suburb of Tampa. We have been here for over 10 years. We operate a bio-metrically secured class 100 clean room where we perform hard drive recovery on all types of hard disks, from laptop hard drives to multi drive RAID systems.

Anybody up to writing good directory software?

Since the very beginning, directories (of any kind) have had a very central role in the internet. (I have recently grown fond of Free Web Directory. Even Slashdot can be considered a directory: a collection of great news and invaluable user-generated comments. As far as software is concerned, doing a quick search on Google about software directories will return the free (as in freedom) software directories like Savannah, SourceForge, Freshmeat and so on, followed by shareware and freeware sites such as FileBuzz, PCWin Download Center and All Freeware (great if you're looking for shareware and freeware, but definitely less comprehensive than their free-as-in-freedom counterparts).

Interview with Mark Shuttleworth

Mark Shuttleworth is the founder of Thawte, the first Certification Authority to sell public SSL certificates. After selling Thawte to Verisign, Mark moved on to training as an astronaut in Russia and visiting space. Once he got back he founded Ubuntu, the leading GNU/Linux distribution. He agreed on releasing a quick interview to Free Software Magazine.

Is better education the key to finding better software?

I read David Jonathon's article Anybody Up To Writing Good Directory Software? the other day, which got me thinking about software directories in general. As David mentioned, many of the software directories one finds when doing a quick google search are free as in beer, not as in freedom. But what interests me is the software directories that already exist, providing a combination of both free as in beer software, and open source software. Sites such as Freeware Downloads and Shareware Download don't advertise themselves as providing free as in liberty software, but each of them have a good selection of open source software available... if you know where to look.

Most emailed

Free Open Document label templates

If you’ve ever spent hours at work doing mailings, cursed your printer for printing outside the lines on your labels, or moaned “There has got to be a better way to do this,” here’s the solution you’ve been looking for. Working smarter, not harder! Worldlabel.com, a manufacture of labels offers Open Office / Libre Office labels templates for downloading in ODF format which will save you time, effort, and (if you want) make really cool-looking labels

Creating a user-centric site in Drupal

A little while ago, while talking in the #drupal mailing list, I showed my latest creation to one of the core developers there. His reaction was "Wow, I am always surprised what people use Drupal for". His surprise is somehow justified: I did create a site for a bunch of entertainers in Perth, a company set to use Drupal to take over the world with Entertainers.Biz.

Update: since writing this article, I have updated the system so that the whole booking process happens online. I will update the article accordingly!

So, why, why do people and companies develop free software?

More and more people are discovering free software. Many people only do so after weeks, or even months, of using it. I wonder, for example, how many Firefox users actually know how free Firefox really is—many of them realise that you can get it for free, but find it hard to believe that anybody can modify it and even redistribute it legally.

When the discovery is made, the first instinct is to ask: why do they do it? Programming is hard work. Even though most (if not all) programmers are driven by their higher-than-normal IQs and their amazing passion for solving problems, it’s still hard to understand why so many of them would donate so much of their time to creating something that they can’t really show off to anybody but their colleagues or geek friends.

Sure, anybody can buy laptops, and just program. No need to get a full-on lab or spend thousands of dollars in equipment. But... is that the full story?

Fun articles

Santa Claus - the most successful open source project

It dawned on me the other day, as I was shopping for the dozens of gifts it seems I have to buy every December, that Santa Claus is the most successful open source project in history. (Bridget @ Illiterarty would agree with that). Santa Claus is essentially a marketing development that is embodied by everyone who stuffs a sock, gives a gift, hosts a dinner or wishes Merry Christmas over the holiday season.

Most emailed

Editorial

When I first started thinking about Free Software Magazine, I was feeling enthusiastic about the dream. I had Dave, Gianluca, and Alan willing to help me, I had established members of the free software community willing to help me out, I had writers volunteering their time and energy for free, and I had a generous offer from OpenHosting for servers, all before I'd proved myself. There was a sense of excitement in the air, and I thought maybe, just maybe, I could make this work.

Free Software Magazine uses Apollo project management software and CRM for its everyday activities!