16

I'm currently downloading Debian 6 DVD.

I don't want to use Stable, I want to use Testing or Sid, but I don't know wich one is better for me.

Is Sid really unstable ? Is Testing up-to-date like Arch does ? Or it's like a non-rolling release distro ?

Thanks

  • 4
    If you use Testing or Sid, I recommend you strongly to install apt-listbugs. It warns you before you update a package for which grave/serious bugs were reported to the bug tracking system. With it, the probably of getting a broken system or other nasty problems is much lower. – jofel May 17 '13 at 09:14
  • It's perhaps also worth noting, that in the context of Debian, "stable" and "unstable" aren't referring to system stability (although that may seem appropriate too), they refer to software version and API stability. I.e. "stable" rarely if ever changes software version and/or API within the lifetime of a release (so you can generally even rely on specific buggy behaviour to be consistent within a stable release). "testing" is named as such because it's only intended to be a testing ground for the next stable release... – Jeremy Davis Mar 15 '20 at 01:50

4 Answers4

29

There is an interesting part of Debian GNU/Linux FAQ devoted to this question. In particular the choice depends on

  • security/stability considerations
  • expertise of the user
  • need for newer versions of software
  • support for new hardware

I would like to point out the following passage from that page:

  • Stable is rock solid. It does not break.

  • Testing breaks less often than Unstable. But when it breaks, it takes a long time for things to get rectified. Sometimes this could be days and it could be months at times.

  • Unstable changes a lot, and it can break at any point. However, fixes get rectified in many occasions in a couple of days and it always has the latest releases of software packaged for Debian.

hwlzo
  • 3
enzotib
  • 51,661
  • 1
    Perfect answer. – bahamat Sep 13 '11 at 15:49
  • One point that I don't believe is highlighted enough in the original text (and therefore your quote) is that "breakages" within testing include security issues/bugs. Unless you don't care about the security of your computer, testing is always a bad choice. IMO, really the only people running testing should be Debian developers who are literally testing the next release... – Jeremy Davis Mar 15 '20 at 01:45
7

Using unstable implies you "know what you are doing". You have to be able to fix problems if they occur. Unstable tends to break occasionally in a major way. Not everyone has this level of expertise. In general, I advise people to run testing, which practically never has the major problems that unstable has, since problems with packages typically get caught on their way through unstable. I think this is a case of, if you have to ask, you shouldn't do it. :-) Also, using testing is better towards the end of the release cycle, once it is frozen and on route to becoming the next stable.

Having said that, why not run stable? I do. If you want more up to date package, you can backport to stable to a limited extent. There are some packages available at the official backports site, or you can do it yourself.

Faheem Mitha
  • 35,108
  • -1 for recommending testing to newbs due to lack of security updates. Even if a security update build is uploaded the moment that a security fix is released and you run updates every day, it will take at least 5 days for the update to be available for testing. Within a freeze, it may literally be a month or more that a security issue is left unpatched. Unless you don't care about the security of your computer, testing is always a bad choice. IMO, really the only people running testing should be Debian developers who are literally testing the next release... – Jeremy Davis Mar 15 '20 at 01:42
  • 1
    @JeremyDavis I'm puzzled that I recommended people run testing. I'm not sure that is such a great idea. But that was in 2011. Having said that, I'll leave the answer alone. I guess I could post in chat in case people have comments. – Faheem Mitha Mar 15 '20 at 08:29
3

Packages arrive into testing after they have been sufficiently tested on sid, specifically, two weeks without any outstanding bug reports. Testing is an RC version, so to speak. It is typically a few days behind sid in terms of the latest software.

If you're not doing any Debian-specific development on your machine, go with testing. If you're planning to contribute to Debian, you'd be better off with sid, since all new changes have to work on a sid environment.

That said, I have been using sid on my desktop for over a year without any crashes.

Details: http://www.debian.org/doc/FAQ/ch-ftparchives#s-testing

lokesh
  • 39
  • 2
  • "two weeks" - nowadays, the figure is quoted as 2~10 days. I'm not sure the packages I currently want are adhering to that figure, though! But I'll err on the side of caution and stay in testing for now. – underscore_d Apr 24 '16 at 16:12
  • -1 for recommending testing to newbs due to lack of security updates. Even if a security update build is uploaded the moment that a security fix is released and you run updates every day, it will take at least 5 days for the update to be available for testing. Within a freeze, it may literally be a month or more that a security issue is left unpatched. Unless you don't care about the security of your computer, testing is always a bad choice. IMO, really the only people running testing should be Debian developers who are literally testing the next release... – Jeremy Davis Mar 15 '20 at 01:44
  • FWIW as of 2020 the general rule is 5 days in unstable with no bugs noted before a package can move to testing. Less than 5 days (but always at least 2) is only in limited and specific situations (that relate to scenarios where minimal source package changes have occurred). – Jeremy Davis Mar 15 '20 at 01:44
2

To get the most updated packages but still have a usable system, you should use testing. Unstable should be used only by developers and people who like to contribute in Debian by testing the quality and stability of packages, fixing bugs, etc. From a user's and non-Debian developer's perspective you will feel much more comfortable using Debian testing rather than unstable. So I personally recommend Debian Testing, not Sid.

AER
  • 139
sakisk
  • 2,873
  • -1 for recommending testing to newbs due to lack of security updates. Even if a security update build is uploaded the moment that a security fix is released and you run updates every day, it will take at least 5 days for the update to be available for testing. Within a freeze, it may literally be a month or more that a security issue is left unpatched. Unless you don't care about the security of your computer, testing is always a bad choice. IMO, really the only people running testing should be Debian developers who are literally testing the next release... – Jeremy Davis Mar 15 '20 at 01:42
  • 2
    @JeremyDavis Recommending stable would not answer the original question. In fact the op is clear that he doesn't want to use stable. – sakisk Mar 16 '20 at 09:30
  • Agreed. I was only noting why testing was a bad idea and shouldn't be recommended to anyone, unless they are actually testing... – Jeremy Davis Mar 16 '20 at 20:52