Skip to main content

Android KitKat 4.4.1 on Nexus S (CM11)

My Nexus S was on CM 10.2 (Android 4.2) for a while and held off upgrading to 10.3 (Android 4.3) because there was little difference in the upgrade. Kitkat (Android 4.4), on the other hand, promised good performance on devices with as little as 512MB, so I jumped at the chance when the first Nexus S (crespo) KitKat nightlies started appearing on Cyanogenmod.

I encountered just one hitch in the upgrade and it was related to the clockwork recovery I had. Here are the steps to upgrade from CM 10.2 to CM 11 Nightly.

Backup your phone data
  • Backup your SMS messages. I used the SMS Backup and Restore app.
  • Backup your photos. Just copy the \DCIM\Camera folder to your drive.
  • Backup your phone ROM. Just boot to recovery (Power off, Hold Power and Vol Up button until the recover menu comes up) and do a backup.
Download the following files on your PC
Install Clockwork Recovery
  • Follow instructions on download.cyanogenmod.org/?device=crespo to install the Clockwork Recovery to your phone. (See Installing recovery using fastboot)
  • Note that I didn't wipe the data anymore. I just wiped the cache. All my apps and setting remained intact.
Install CM11
  • Follow instructions on download.cyanogenmod.org/?device=crespo to install the Clockwork Recovery to your phone. (See Installing CyanogenMod from recovery).
Enjoy your Kitkat!

Comments

Popular posts from this blog

Get uptime alerts in Telegram

You will be configuring 3 services. The assumption is that you have accounts already for these services. UptimeRobot — source of the uptime/downtime notifications. It currently supports email, Twitter, Slack, Pushover, Pushbullet and others but not Telegram. We will use the webhook notification as the way to send messages to Telegram. IFTTT — bridges UptimeRobot and Telegram by providing the webhook for UptimeRobot and triggering a message to Telegram. In IFTTT terminology: IF {event trigger from UptimeRobot}, then {send message to Telegram group} Telegram — destination of the notification. You will need to create a group for this. Telegram Configuration In Telegram, create a new group, if needed. You may opt to use an existing group. Go to @IFTTT and follow the instruction so link your Telegram account to your IFTTT account. Send /connect_group to @IFTTT and connect the group where you want to send the notifications. IFTTT Configuration Sign in to IFTTT and add a ne...

iReport Default Date Parameter

If you want to set a default date for a jasperreports parameter, you can enter the following in the default value expression of the parameter. new Date() However, if you wanted the default to be relative from today, for example, 3 days ago, you will need to do go outside of the standard java date libraries (Date, Calendar) because JR parameter does not allow you to have multiple statements. You can write your own utility package or you can use Joda , a replacement library for the JDK date and time library. To use Joda in iReports, you need to extract the jar file and add it to Options -> Classpath. You may also drop the jar file in iReports' lib directory. You will also need to add this library to your application or report server. For setting a default date 5 days prior from today, use this: new org.joda.time.DateTime().minusDays(5).toDate() or this if you want the time part set to the beginning of the day: new org.joda.time.LocalDate().toDateTimeAtStartOfDay().minusDays(5).to...

CI/CD for .NET Core

If you have a .NET API that you want to containerize, here are the steps to prepare it. Create docker image Push to repository Setup ECS The TLS 1.0 option is needed if your SQL Server database does not support TLS 1.2. The recommended option is to update your database to the secure protocol. You may also change sdk and aspnet version to 5.0 if you haven't updated to 6.0 yet. This Dockerfile uses a multi-stage build to get an optimal image size. Dockerfile FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env WORKDIR /app # Copy csproj and restore as distinct layers COPY *.csproj ./ RUN dotnet restore # Copy everything else and build COPY . ./ RUN dotnet publish -c Release -o out # Build runtime image FROM mcr.microsoft.com/dotnet/aspnet:6.0 WORKDIR /app # Enable TLS 1.0 RUN sed -i 's/DEFAULT@SECLEVEL=2/DEFAULT@SECLEVEL=1/g' /etc/ssl/openssl.cnf RUN sed -i 's/MinProtocol = TLSv1.2/MinProtocol = TLSv1/g' /etc/ssl/openssl.cnf RUN sed -i 's/DEFAULT@SECLEVEL=2/DEFAULT@...