I was in the middle of installing Rodeo (this is a Python clone of RStudio) and its dependencies when free disk space reached 0 bytes. This crashed the installation. After this, suddenly Cinnamon began to crash all the time. Clicking restart did nothing but crash it again. I’ve had Cinnamon crash before but never to stuck in a perpetual crash. Weird.
It gets worse. The fallback mode is some kind of archaic Windows-95 looking platform. Folders could be opened, but the contents would not show up (black space). There is a start menu, but it’s now located at the top, so I missed it at first. It cannot be opened with the usual Windows-key shortcut. Since I could not use folders to navigate, I needed the terminal. Well, the terminal also could not be opened with CTRL+ALT+T. Online, people suggested using the background terminals using e.g. CTRL+ALT+F1. However, this just opens the background terminals on the host system, not the guest system! Furthermore the terminal apparently cannot be found in the start menu, so one is stuck on the desktop it seems. Until suddenly my desktop icons showed up (not sure what caused this, I wasn’t inside the Virtualbox at the moment). This also meant that the system started reacting to right clicking and one can open a terminal using the right click menu. Finally a terminal! Using this, I was able to find some redundant files to delete. Here it is useful to know the command:
ls -l --block-size=M
This shows the files by their size in megabytes instead of bytes and it shows them as a vertical list. I googled the command to empty the trashbin which I could not find anywhere on the screen.
rm -rf ~/.local/share/Trash/*
This freed up some space. Then I restarted the system. This had no effect. Weird. Before this point my working theory was that Cinnamon needed a bit of disk space to work, presumably for temporary files or some such. So, I tried some other things that also had no effect such as:
sudo apt update sudo apt upgrade
Finally, I looked at the cryptic error messages it gave me. These said that 2 packages were missing. Trying to install these gave an error. However, apt mentioned something about trying:
sudo apt install -f
This did something: installed the missing dependencies. After this I restarted the system and Cinnamon no longer crashes repeatedly! Hooray! So, I think the problem was this:
- Due to a lack of disk space, the update of some crucial dependencies shared by Cinnamon and Rodeo was interrupted.
- This left these packages in a kind of limbo state where they were not installed and could not be installed.
- The solution was to finish the interrupted installation process using the above command.
- Then restart the system. Cinnamon can now find the dependencies it needs and stops crashing.
Hopefully, this note will be useful to someone in the future (perhaps future me!).