SECTION ONE - DEBIAN AND LINUX MINT DEBIAN EDITION
1) -Debian has three releases at any given time:
1.a) - stable will soon be Debian 8.0 codenamed Jessie as its release is expected in the next 2 months. Debian 7.0, the actual stable version, called Wheezy and released in May 2013 will soon become the Old-Stable version of Debian. A new release of Debian occurs roughtly every two years. LMDE 2 Betsy is based on Jessie.
Because of this long release cycle the packages in stable can and will be quickly outdated, but stable is the most solid O.S. you can have installed:
Understand that the job of Debian is, and always has been, to produce Stable. The other releases are means to that end. You may find the other releases perfectly usable for whatever use you have for them. Great. That wouldn't be much of a surprise to any longtime Debian user. Many users, including (of course) Debian Developers use them routinely.
3.1.3 The stable distributions really contains outdated packages. Just look at KDE, Gnome, Xorg or even the kernel. They are very old. Why is it so?
Well, you might be correct. The age of the packages at stable depends on when the last release was made. Since there is typically over 1 year between releases you might find that stable contains old versions of packages. However, they have been tested in and out. One can confidently say that the packages do not have any known severe bugs, security holes etc., in them. The packages in stable integrate seamlessly with other stable packages. These characteristics are very important for production servers which have to work 24 hours a day, 7 days a week.
On the other hand, packages in testing or unstable can have hidden bugs, security holes etc., Moreover, some packages in testing and unstable might not be working as intended. Usually people working on a single desktop prefer having the latest and most modern set of packages. Unstable is the solution for this group of people.
As you can see, stability and novelty are two opposing ends of the spectrum. If stability is required: install stable distribution. If you want to work with the latest packages, then install unstable.
If security or stability are at all important for you: install stable. period. This is the most preferred way.
- - to solve the quick aging of stable you can use backports
Backports are recompiled packages from testing (mostly) and unstable (in a few cases only, e.g. security updates) in a stable environment so that they will run without new libraries (whenever it is possible) on a Debian stable distribution. It is recommended to select single backports which fit your needs, and not to use all available backports.
1.b) - testing is where debian tests and builds the next stable release
The "testing" distribution is an automatically generated distribution. It is generated from the "unstable" distribution by a set of scripts which attempt to move over packages which are reasonably likely to lack release-critical bugs. They do so in a way that ensures that dependencies of other packages in testing are always satisfiable.
- testing is the development branch from where the next stable release will come;
- as so, it's also known by the codename of the next stable release Jessie (what will become Debian 8 ). As soon as Debian 8 is out, testing will be called Stretch.
- testing is not a fully rolling release: it rolls for about one and a half year until the deep freeze,
- this means that at a given time Debian decides to freeze their development branch and for about 6 months concentrate in squashing bugs, so that the new stable release would be as solid as possible;
- when LMDE came out (in September 2010) testing was in deep freeze preparing Debian 6, the same will happen from November/2014 until April (more or less)/2015 when Debian 8 is due
We will freeze at 23:59 UTC on the 5th of November 2014, and we will run one automated migration at that time.
- testing is not about bleeding-edge software (the apps can be fairly updated but hardly will be the latest&greatest)
1.c) - sid aka unstable this is the true Debian rolling release; sid will never be released, it will be always in permanent development, it's from there that (once certain criteria are met) the packages migrate to testing and then build (when the right time is due) the next stable release. Sid is the acronym of Still In Development and is also the name of the young boy always breaking his toys in Toy Story. This is self explanatory, isn't it?
- - due to it's unpredictable nature, there's a few good practices to keep when running a sid-based system:
The most important thing is to keep in mind that you are participating in the development of Debian when you are tracking testing or unstable. This means that you should know your way around Linux, Debian and the Debian packaging system and that you should have an interest in tracking down and fixing bugs. There are a couple of things you can do in order to ease your life as a sid user such as:
Always be careful when you perform updates and check if the actions proposed by the package managing tools are in line with your wishes and expectations. (i.e. make sure that you do not remove a plethora of packages you need by blindly accepting the proposed action)
Install the apt-listbugs and apt-listchanges packages in order to be made aware of grave bugs or important changes when you install new packages or during an upgrade.
Keep a good live CD/USB such as Debian Live around at all times so you can still work on the system even if it is not booting anymore.
Automatically create daily, weekly and monthly backups in order to ensure that corrupted data is not a problem.
- apt-listbugs is a tool that might make your life easier if you are running sid (it's also handy in testing of course) youtube tutorial here
apt-listbugs is a tool which retrieves bug reports from the Debian Bug Tracking System and lists them. Especially, it is intended to be invoked before each upgrade/installation by apt in order to check whether the upgrade/installation is safe.
1.c.1) - experimental is not a standalone release. If you want to use packages from experimental you first have to install 'Sid' and then add the 'Experimental' line to your repo and then upgrade" (but with extra care, if sid can break, experimental will break for sure)
Users shouldn't be using packages from here, because they can be dangerous and harmful even for the most experienced people."
You have been warned
- if you like experimenting, learning and can afford a breakage now and then (with the consequent downtime it brings) sid is a great school
- Linux Mint Debian Edition (LMDE)
2) - Linux Mint Debian Edition (LMDE) was released on the 7th sept 2010.
2.1) - A first life based directly on Debian testing;
- - this was/is for many users the real LMDE; the one that is closer (in direct sync) with testing.
- when debian 6 was released and the new cycle began things became interesting and in order to cope with possible breakages we organized this thread
- if i may a personal opinion, lmde is a great linux school, the only reason i'm still using a gtk-based distro (ZeroZero);
2.2) - The introduction of Update Packs (UP)
- - in july 2011 the Mint Team decided to introduce the notion of UP in LMDE.
By changing your APT sources and replacing Debian Testing with the Linux Mint Debian Latest repository, you basically point to a Debian Testing that is frozen in time and updated once a month. By the time the next batch of updates becomes available to you, the Linux Mint team has had time to adjust packages in the Linux Mint repository and to document the information you need to go through a safe and easy update.
- basically the question was: the way lmde was structured until then (pointing directly at testing) was making life hard for the less experienced users, so the Mint Team decided to mirror the debian testing repos and release point-updates with "stable" and documented packs.
- to help debugging those updates were created incoming and latest: basically these repos are identical, but incoming is updated a few days/a week before latest to test the UP and then it will migrate from incoming to latest:
To facilitate this process, we’re opening another repository called “Incoming”, which is downstream from Debian Testing and upstream from “Latest”. In other words, we first update the “Incoming” repository. We test things out and we gather information from people using the “Incoming” repositories. And when we’re happy with the state of things, we point the “Latest” archive to the “Incoming” one.
- Update-Pack 8 has been released on February the 4th 2014.
2.3) - The switch to Debian Stable was decided in August 2014. LMDE 2 aka Betsy is directly following Jessie since its release in March/April 2015. Advantages and disadvantages of using Betsy over the main edition are explained here.
SECTION TWO - USEFUL TOOLS
3) -Fundamental tools to use with LMDE (specially if tracking testing or sid)
- 3.a) -Clonezilla (almost a must)
A little clumsy to first learn, but actually very easy to use after the very first time.
a nice tutorial here
3.b) - Gparted
3.c ) -SMXI (especially helpful with video drivers)
3.d ) -debian weather
The "weather" of a given Debian-based distribution is an indication of how safe it is on a given day to attempt some package installation/upgrade. A "bad day" is a day in which a sensible percentage of that distribution repository is not installable due to unsatisfiable inter-package dependencies.
The new Debian weather monitors main as well as contrib, non-free and main sources.
SECTION THREE - QUESTIONS & ANSWERS
Q1- Should I use still use apt dist-upgrade to upgrade my system?
Well, this has long been the best advice to LMDE user: Forget that you ever heard of apt upgrade.
As explained by ZeroZero:
1- it's documented in the wounds and scars we got in the early days of lmde
2- it's also documented in the systems that crashed and burned because of it
3- it's finally documented in the fact that not one rolling release has or recommend any form of partial upgrade (and although lmde can't technical be called a rolling release, these UP updates act like it)
A more detailed explanation is given here.
This may not be as true with Betsy (based on Debian stable) as it was with LMDE1 (based on testing) as the base will not really change during the life of Betsy. But still, it will not hurt to use dist-upgrade to install the updates for Betsy. Especially if you install new versions of Cinnamon and MDM, it could be cleaner to use dist-upgrade.
Upgrade between version of LMDE (from 1 to 2 and from 2 to 3...) should always use dist-upgrade. And of course, if you base your system on Debian Testing or sid, you already know that you should use dist-upgrade.
Q2- how is security handled in LMDE?
Betsy being based directly on Debian Stable, security fixes are coming directly from the Debian Team. And good news, security is really important for them.
Security fixes are coming in LMDE using these repo:
Code: Select all
deb http://security.debian.org jessie/updates main contrib non-free
deb-src http://security.debian.org jessie/updates main contrib non-free
Q3- can i use PPA's in LMDE?
- short answer: no, it will break your debian installation;
- long answer: it's your system, you do with it what you want, if you break it, "you keep the pieces, we laugh at you"; but you were warned: PPA's are ubuntu-specific repos and more often than not you will find hidden incompatibilities as happens with others ubuntu libs
- even knowing this you want/need a random PPA? fine! we expect from you to know how to manually add an entry to your sources.list.
Q4- Why are my applications not the latest possible version?
- let's assume (for the sake of this answer) that's there's nothing wrong with your sources.list (check next sections to see if your repos are correct)
- if you are following Betsy and therefore Debian Stable, answer was provided in section 1.a)
- if you are using testing, you might find out that not always you have the latest v. available, it's not surprising if you look at the requirements for the the packages migration from sid to testing:A package is installed into the testing dist from DebianUnstable automatically when a list of requirements is fulfilled:
The package is at least 10 days old.
The package has been built for all the architectures which the present version in testing was built for.
Installing the package into testing will not make the distribution more uninstallable.
The package does not introduce new release critical bugs. here
- the newest packages arrive on sid or experimental and from there down to testing (after the high Debian requirements are fulfilled)
- but if you look at this and this we easily see that it takes more than being a good hacker and have a great app to have the latest&greatest available in debian's ftp's.
- ok, this addressees the "why", now how do i solve this if i have an outdated app?
- 1 - look in the backports
- 2 - compile it (it's usually easier than it sounds)
- 3 - look in the immediately next Debian release (just a reminder: if you are using LMDE with the default repos look first in testing). Xenopeek wrote a nice tutorial. It will help you to install softwares from Testing in LMDE2.
- 4 - look around in the Debian universe (there should be somewhere what you are looking for)
SECTION FOUR - OFFICIAL REPOSITORIES & MINTSOURCES
Official repositories for LMDE latest are stored in
Code: Select all
This file should contain the following repo:
Code: Select all
deb http://packages.linuxmint.com betsy main upstream import
deb http://ftp.us.debian.org/debian jessie main contrib non-free
deb http://ftp.us.debian.org/debian jessie-updates main contrib non-free
deb http://security.debian.org jessie/updates main contrib non-free
deb http://www.deb-multimedia.org jessie main non-free
deb http://extra.linuxmint.com betsy main
Romeo is the testing laboratory of Linux Mint.
What is Romeo?
Romeo is the unstable branch of Linux Mint. It’s where packages are placed before they receive community feedback. In practice, Romeo is to packages what “RC” is to release management.
How do I enable Romeo?
Well, you shouldn’t really… should you?
Edit /etc/apt/sources.list.d/official-packages-repositories.list as root and add “romeo” at the end of the line for the Linux Mint repository.
Code: Select all
deb http://packages.linuxmint.com betsy main upstream import romeo
Romeo can also be enabled using MintSources.
MintSources is a tool developed by the Mint team in order to easily select the fastest mirror and also easily repair broken package lists.
Use it with a terminal or directly from the Menu --> Administration --> Software Sources:
Code: Select all
It will generate a default and clean /etc/apt/sources.list.d/official-packages-repositories.list and you will be able to select the fastest mirror. You can enable Romeo and source repos with MintSources.
SECTION FOUR - THE ROAD TO TESTING AND SID
LMDE based on stable is rocking solid. If it's clearly an advantage for your main system, it can become really boring if you want to learn new things.
If you are interested in learning, breaking things and fixing them, pointing directly to Testing and Sid can be a good option. Be careful if you are using Cinnamon as this DE will most likely break with Testing.
Warning : Expect things to break. As ZeroZero said:
if you need this howto to help you make the jump into testing or sid you should think twice because, probably, you are not prepared
If you want to try, here is the way (explained by ZeroZero. Good luck
If it's ain't broke, fix it until it is.
Disclaimer: this is not an howto AptPinning (it's out of the scope of this faq), i will just try to give here some pointers about the subject and its relation with LMDE.
- 1- LMDE has a preferences file (cat /etc/apt/preferences), unlike Debian and Ubuntu for example, look at it, study it, realize exactly what it means before you decide to add/change any rule there;
- 2- if you are using the default repos and have no intentions in adding others this doesn't concern you, this file is only of use if you decide to mix (in a safe way) stable/testing/sid/experimental (just some of those/all of them/whatever);
- 3- the way it is (default) the preferences file tell Apt that all Mint packages have priority (700) over any the same package from debian (500); this is ok because keeps Mint identity (and once again, if you are using the default just leave it as-is);
- 4- the question is: if you leave stable and move to testing or sid you will find out soon that those preferences are interfering with your system; this is the call to look at AptPinning
- read, read, read, before you start tweaking the preferences file.
The Debian Administrator's Handbook
This book is one of the best book about Debian. Most of your questions have probably been answered there and by reading it you will learn how to get the best of your system.
The book is available in English and French and it is being translated in many other languages currently. It has been written by Raphaël Hertzog and Roland Mas.
You can buy a paper version or a pdf. Additionally you can also download it for free.