In the ol’ So, what’s your Linux week been like? thread I was inspired to try out Debian Sid and I posted about an experiment I thought would be cool where I used the Debian edition of Linux Mint and replaced the repositories with the unstable Debian Sid repos. So far it’s been fun to see what kind of breakage would occur. This is what I love about Linux. Trying something out, no matter how ridiculous, and learning as you go.
If you want to follow along on this journey of pain, follow these steps:
I have no idea how stable this is (on a scale from 0 to -10), so don’t try this on any machine you don’t want broken
Step 1:
Change the default software sources. Navigate to
/etc/apt
make copies ofsources.list
andsources.list.d
and keep them somewhere safe in the event that you want to revert any changes. Comment out any lines insources.list
by typing a#
at the beginning of the lines. Use any text editor you’re comfortable with. Add the following lines
deb http://deb.debian.org/debian sid main contrib non-free
deb-src http://deb.debian.org/debian sid main contrib non-free
deb http://packages.linuxmint.com debbie main upstream import backport #id:linuxmint_main
This will pull in packages from the unstable branch of Debian and some packages from the Mint team itself. I thought it was best to keep that one in there so any Mint specific software will be updated.
Inside the/etc/apt/sources.list.d
folder is a file calledofficial-package-repositories.list
I just commented out ALL the lines in this file. Eventually I’ll find out this is bad or something but I’ll keep you posted. So far so good.
Step 2:
Update the system. This took a combination of
sudo apt update
andsudo apt dist-upgrade
andsudo apt install -f
basically run thedist-upgrade
until it stops and complains then runinstall -f
. Rinse and repeat. I found this to work perfectly fine until a reboot when all the new changes kick in.
You may have to redo some of the previous steps after upgrading completely.
Step 3:
Apt will now complain that the OS “code name” is not a valid Linux Mint version. On Mint, the version information is found in a file located at
/etc/lsb-release
and Debian keeps this same information in a file/etc/os-release
The information conflicts and Apt doesn’t like it. So you can modify the/etc/os-release
file by changing the lineVERSION_CODENAME=bullseye
toVERSION_CODENAME=debbie
OR just rename the file altogether, maybe delete it, I don’t know. This is just a test so everything is kind of a guess right now. Anyways, this should get Apt working again.
Step 4:
Software Sources will no longer launch. Either directly from the Mint menu or from the menu in Synaptic Package Manager. Running Synaptic from the terminal showed me that there was a problem with a python file. This problem is due to the newer version of Python that Sid uses. Some Python methods are deprecated and outright removed from this version (3.9). To get this fixed up open the file
/usr/lib/linuxmint/mintSources/CountryInformation.py
. On line 34 there is a method call forgetiterator
. This method has been removed in Python 3.9. Mint has Python 3.8.5 currently so this still works in normal cases. Simply replacegetiterator
withiter
and leave everything else alone! Save the file, you’ll now find the software sources application runs as normal.
It turns out that the Mint team actually made this change themselves just 16 days ahead of me HERE. So I know I’m on the right track with that at least. They’re preparing for the jump to Python 3.9 so I’ll be checking github when I run into more problems.
Happy tinkering! More bugs to come!
BUG - System Reports will notify about language packs and prompt to install them. The install will immediately fail with an “unhandleable error” Currently no solution to this but it’s a python thing I think.