I still use a Samsung Galaxy S (yes, without any numbers or words after the S), and I installed CyanogenMod on it. I kept upgrading it quite regularly until some time ago, when CyanogenMod decided to call their releases “snapshots” and I instinctively labelled them in my mind as “nigtly builds”, when instead they are the stable releases.
Enlightened by this discovery I decided to upgrade from CM 10.2.1 to CM 11 M9; note that CM11 is the Android KitKat equivalent.
The upgrade has not been flawless, so I am writing some details here for other people and for my future self.
First of all, the download process failed a couple of times. I think that when the phone goes into sleep mode it tends to interrupt the download progress, because when I deliberately kept it from sleeping the download completed.
Then, when I selected the “upgrade” option, the phone rebooted but hang at a boot screen. I kinda panicked for a few seconds before remembering that my Galaxy S has a handy key shortcut to boot in recovery mode, which is done by keeping VolumeUp, Home and Power buttons pressed for some time, and that’s what I did. Then I followed the manual updating procedure, wiping my data and cache partitions.
I previously downloaded the Google Apps package, but this time there are two variants: small and normal. They say that the small version is for devices with /system partition less than 500MB, and since mine is 590MB I chose the normal version, without really knowing what was inside. After installing, I believe the small package contained just the basic search, Play, Gmail, Google+, Youtube and Maps, while the normal version that I installed contains also Play Music, Play Books, and the other Play services.
During installation, the system first let me connect to WiF, then asked me to log into my Google account, but the connection to the Internet did not work. Fortunately the phone connected correctly to my carrier data access point when I disconnected the WiFi, and so the installation could continue.
Warning: if you use Google two-step authentication (like me) and you wipe your data, you will lose Authenticator codes. You will need to regenerate them, by logging in with a trusted computer (one where you don’t need to enter the Authenticator code) and following the “move Authenticator to another phone” procedure, or by using a backup code (you printed those, did you?). This is valid also for other two-step authentication accounts such as WordPress.
When I logged into the Google account, Play started to download all the packages that I had installed. Having deleted the data, I had to re-log into all the accounts. My SMS and call logs were also not restored, but I use the Super Backup app, so I restored from that.
After a couple hours (most of the time spent re-downloading the apps) I have a working phone again. As usual the phone feels more responsive just after I install an upgrade, but in my experience the performance degrades after some weeks.
I am grateful towards the CyanogenMod team because thanks to them I can run the newest versions in my old phone. I am also grateful towards Samsung because they engineered a high-quality long-lasting piece of hardware: the Galaxy S.