When it comes to third-party Android firmware, the first thing CyanogenMod comes to mind is for its own reasons. CM is what started it all, well, or better to say that this is the only amateur firmware that has grown into something REALLY serious.
When Steve Kondik (Cyanogen) started working on a project to improve Android “for himself” and shared his ideas with the community, he definitely didn’t expect it to become so popular. Today, without a doubt, this is the world's largest project to refine and improve Android, with the support of hundreds (!) Of devices, both in the form of official assemblies and assemblies from third-party developers.
')
Welcome under the cat, take a look at CyanogenMod 10.1 and all the improvements that it can offer to justify the title of one of the best third-party Android firmware.
Appearance and sensations
One of the key features of the CyanogenMod philosophy is
a greater emphasis on functionality than on design. And it was a great decision after the release of Android Ice Cream Sandwich, which has a beautiful Holo theme.
This is the reason why, at first glance, CM looks just like a “pure” Android. And, fortunately, CM is based on it. This means that you will not find here any HTC Sense, Samsung TouchWiz, MOTOBLUR or any other, damaged by the manufacturer, Android shell. This can be demonstrated visually by screenshots of the desktop and the main menu CM 10.1

“Under the hood” there are a lot of changes that distinguish CM from Android vanilla. The launcher itself looks like a standard Android launcher. However, this is a separate version developed by CyanogenMod, called Trebuchet. If you drag the icon to somewhere, you Immediately see the additional options that it offers. And this is just the beginning.

As you can see above, not only deleting a shortcut is available, but also editing it. In addition to this, CyanogenMod has a set of its own wallpaper, in addition to the standard Android.

CyanogenMod applications
You may have noticed several additional applications in the main menu, in the screenshot above. They were not installed from Google Play (a screenshot was taken immediately after the firmware of the device), these applications are included in the CM.
These include: media player, file manager and terminal emulator. The first two are the exclusive CyanogedMod applications, and the terminal emulator is an application that can be found in the Play Store, called Android Terminal Emulator.
The “Messages” application, at first glance, is very similar to the stock one, but in fact it is heavily modified to give much more flexible customization options and to make use more pleasant.
Lastly, you can mark the application "Recorder" in the list of all applications. This is, in fact, a standard Android application, but in the stock firmware it is hidden and accessible only from other applications if they need to record sound. CyanogenMod gives you free access to this application.
Having a media player and file manager is justified if you do not want to use the Google ecosystem, or simply want to use the device without connecting to the Internet. You will have all the standard applications you might need.
There is also an application called “DSP Manager” and an application “cLock”, which is not visible in the main menu. It is a desktop and lock screen widget. We will talk about these applications later in the “Settings” section.
Settings CyanogenMod 10.1
An abundance of advanced settings that allow you to have more control over Android - this is what makes CyanogenMod a really powerful thing. All additional tweaks are available in the standard application “Settings”. Let's take a closer look at what has been added to CyanogenMod.
Wireless network
The item “Wireless networks” remained close to the standard settings, but additional options, nevertheless, can be found in the sub-item “More ...”. You can configure the network broadcast messages, which allows you to enable / disable certain categories of these messages. These include AMBER messages (missing children reports), tsunami reports and network advertising messages.

The next set of settings is in the “Interface” section and it contains many options for customizing the firmware interface, adding or changing elements for quick access and improving the experience of using the firmware.
Launcher
As mentioned earlier, CyanogenMod contains Trebuchet, a launcher that looks identical to the stock Android launcher, but is much more flexible to set up. This item is the place where you can customize it to your taste.

The basic settings are very simple, so let's start with them. Many Android users complain about the lack of landscape mode for the desktop. Trebuchet solves this problem, giving the opportunity to enable auto-rotate. Also, if you have finally set up your desktop and do not want to randomly swap items, there is an option that will fix all the shortcuts and widgets. You can also hide the status bar to increase the size of the desktop, but we advise you not to rush it. In CM there is something related to the full screen mode that makes you forget about this option in the launcher.

In the "Main Screen" you can configure many options that are responsible for displaying items on your desktop. Each option has a description, so you won’t get confused.

Like the previous section, the “Main Menu” section allows you to customize how applications and widgets will appear in the list. You can customize the page turning effect, combine sections of applications and widgets together and even hide applications.

Finally - you can customize the bottom panel by changing the number of applications that fit there, adding additional pages that can be accessed by swipes, etc.
Lock screen
The lock screen in CyanogenMod contains a bunch of additional options and the first one that you notice is additional shortcuts to launch applications.

What else? These shortcuts are fully customizable! Just go to the “Lock Screen Shortcuts” in the “Lock Screen” item and you can easily assign any applications to these slots and select icons for them.

Additionally, you can customize the lock screen security by selecting 4x4, 5x5, and even 6x6 patterns, in addition to the standard 3x3. You can also turn on / off the visibility of pattern lines, errors and points. You can configure the auto-lock delay time to automatically and manually turn off the screen.

Topics
If you read up to this point and decided that the stock appearance is too boring, you will be glad to know that CyanogenMod includes a powerful engine for topics that allow you to change the entire appearance of the firmware. Some of the themes can simply change the application icons on the desktop and in the main menu, some also change the look of the UI elements, some change the whole look of the firmware. We like the look and feel of Android stock, but we are big fans of interface transparency. The gorgeous HOLO GLASS theme allows us to make the stock UI transparent, as in the screenshots below.

However, by default, CM does not contain any additional topics, you will need to choose the one that is suitable on Google Play or on the XDA-Developers forum. Both free and paid options are available, just google it.
Before proceeding to the next section, take a look at some screenshots, which show how the HOLO GLASS theme changes the look and feel of the Phone and SMS applications. The background image is our wallpaper, not just the background in these applications.

System
This is probably the richest settings section in the entire firmware. Here you can configure the main components of the UI, such as the status bar, quick settings panel, notification panel, navigation bar, shutdown menu and navigation panel (yes = yes, CyanogenMod 10.1 contains the well-known PIE navigation from Paranoid Android), set up the event indicator.

Status bar
Here you can show / hide the clock, select the AM / PM display, choose the style of the battery icons and the network signal. You can even make it so that to adjust the brightness of the screen, you will need to slide your finger over the status bar, like a slider.

Quick settings panel
Starting with Jelly Bean, Android includes an extension of the notification line, which serves as a quick settings panel. In short - CyanogenMod makes it even more convenient, allowing you to customize everything to your taste.

You can add, delete and swap switches, adjust their behavior by pressing. A huge number of functions are available to add, they cover almost all the needs that can arise. As you can see in the screenshot below, we configured our quick settings panel by adding the options that are used most often.

For faster access, you can customize the notification panel so that the quick switches will appear if you pull out the notification panel from a certain angle (left or right).
Buttons in the notification bar
If you are not happy with these switches and prefer a small setting bar in the notification panel - this is what you need.

You can choose which buttons to display, adjust their order, their behavior by pressing.
Extended screen
Want to use the entire screen of your device? Why not get rid of the status bar and the navigation bar? Simply select the mode of displaying / hiding the status bar and switch to full-screen mode from the “Device Settings” menu, which appears when you long press the screen lock button.

Here's what the screen looks like when you turn on the advanced mode. As you can see, I turned off the status bar in the first screenshot and turned it on in the second one. The navigation bar is hidden on both screenshots.

Navigation Bar (PIE Navigation)
If you have wondered about navigation in full screen mode - do not worry. PIE navigation takes over. This option is at the very end of the “System” section, but we will tell about it now, as it directly relates to the full screen mode.

When enabled, PIE navigation will show the navigation buttons and the status bar immediately after the swipe from the edge of the screen. You can adjust the size of the buttons, select the edge of the screen, after which the buttons will be shown after the swipe. To use them, simply stretch your finger to the desired button and release.
Let's continue in order and take a look at the settings after the “extended screen”.
Menu "Device Settings"
When you hold down the lock screen button - you will see more options than in stock Android. Added options to create a screenshot and enable the expanded screen. What's great about these settings is that you can choose which ones to show.

In the second screenshot, we have reduced the options menu to two options, for clarity.
Clock widget
CyanogenMod has its own clock widget called cLock. It is available for both the desktop and the lock screen. This is the widget that you saw on the screenshots of the main screen. In addition to the date and time, it can show the weather (the source is the weather from Yahoo!) and calendar events. Everything is customizable.

Clock. You can choose between digital and analog clocks, turn on the alarm display, adjust colors and font.

Weather. Weather display can be turned on / off, select the source, adjust the location (by default, the forecast is shown for your location), and adjust some visual aspects of the display.
As for events from the calendar - you can specify from which calendars to show events, for how many days ahead to show them, which information to show for each event.
Settings will be applied to both widgets, for the desktop and for the lock screen.
Event indicator
This section allows you to specify the desired behavior of LED alerts. You can set the default indicator color, color for missed calls and voice mail. In addition, you can add any of your applications and customize the indicator color for their alerts. Thus, you can understand from which application the alerts came just by looking at the phone, even if its screen is turned off.
Buttons and their location (navigation bar)
If you are using a device without “iron” navigation buttons, with onscreen ones instead, you can configure these buttons in this section. You can add additional buttons from the list of available ones, change click actions (for all but the home button), or swap them. You can see an example of the setting in the second screenshot.

Quick Launch Shortcuts
Just as on the ring on the lock screen, CyanogenMod allows you to customize the Google Now ring that appears when you swipe from bottom to top.

All you have to do is hold your finger up from the bottom of the screen. Immediately after this, you will see additional circles, except for the standard Google Now. Swipe up to any of them and you can set the action from a long list of available. Offhand - flashlight, vibration mode, take a screenshot, close the current application. The screenshot above shows an example setup.
This is all that concerns the “System” section in the CM settings, but if you decide that the settings end here - think again! There are a lot of them, so let's continue.
Sound
“How deep can the sound settings on an Android device be?” You ask. Just take a look at the “Sound” section in the CM settings - the list of settings takes up three screens, with the exception of subsections! As you can see below, there are options for everything, ranging from volume, vibration and volume dialogue style settings, continuing with musical effects, “quiet hours”, ringtone selection, system sound switches, headset-related settings and more!


Look at the screenshots above and try to come up with an option that would not be presented here. All settings are extremely understandable, as you can see in the screenshot of the volume dialog.

The same section contains two great features called “Quiet Clock” and “Music Effects” (DSP Manager). Let's look at them in more detail.
Quiet hours
The “Quiet Clock” feature is very cool; with its help, you can specify the hours during which you do not want to be disturbed, configure the types of alerts that you want to turn off for this time. This includes tuning sound, vibration, response to pressing, LED-alerts.

Music Effects (DSP Manager)
Remember the DSP Manager application icon, which we talked about when talking about CyanogenMod applications? This is a killer app that can customize the sound so that you can’t believe your ears!

You can use the functions of bass enhancement, dynamic range compression (compression), graphic equalizer. Moreover, they can be set up separately for the speaker, separately for wired headphones and separately - for a bluetooth headset! There are several presets for the equalizer and the “power” settings for each of the effects.
Screen
You will not see a bunch of settings here, as it was in the “Sound” section, but this is because a bunch of various UI settings have already been mentioned in other sections. CM still offers several additional options for customizing screens, which include auto-rotate screen settings.

In addition to the standard switch, you get the opportunity to adjust the angles of the device, at which the auto-rotate should work, and even turn on the volume + / volume buttons, which can be very convenient for some devices (depending on the position of the volume buttons).
Profiles
CyanogenMod 10.1 also includes a powerful profile system that allows you to customize the behavior of your device under different circumstances. You can switch between profiles in the “device settings” menu (by holding down the screen lock button) in the “Profiles” item. The name of your current profile is shown there by default.

These profiles affect more than just the volume or brightness setting. You can also select the data transfer status via mobile network, bluetooth, GPS, Wi-Fi, synchronization, hotspot-mode, individual volume settings for the alarm clock, multimedia, ringtone, notifications, choose a convenient call mode and lock screen mode for each of these profiles.

In addition, you can easily customize the behavior of applications for each profile using the “application groups” tab.

You can create as many profiles as you like, or customize existing ones as you like. You can add / remove applications from already existing groups, or create your own groups, specify settings for applications in each of the profiles.

For example, you can create one profile in which everything except incoming calls will work in the “silent” mode, all alerts from applications will also be silent. Next, create another profile called VoIP, in which only applications like Viber, Tango, Skype, etc. will show signs of life. Or a profile that ignores alerts from social apps. In general, almost any of your requirements can be implemented.
Security
CyanogenMod provides improved security settings for the lock screen, some of which we described earlier, under “Lock Screen”. In the “Screen Lock” sub-item of the “Security” section, you will find more flexible options, especially with regard to the lock pattern. In addition to the standard 3x3, you can set patterns up to 6x6, for additional security.

You may also notice a new option at the very end of the “Security” section, an item called “SMS Limit”. It allows you to set the number of messages that the application can automatically send during the time interval. After exceeding the limit, the behavior of the application will begin to be perceived as suspicious and the OS will require you to confirm to send each new message with this application.

In the rest - this section offers all the same settings as in the stock Android.
Language and input
Most of them are all the same settings, except for two new ones: an alert for selecting the input method and controlling the cursor using the volume buttons.

In case you have several input methods installed (various keyboards, voice input), turning on the alert to select the input method will show a non-removable alert in the status bar when there is an active input field on the screen. The second option, in turn, allows you to control the keyboard cursor using the volume buttons.
For developers
Being based on Android 4.2, CyanogenMod 10.1 by default hides the “for developers” item, so you will need to make it visible (note the translator: settings - on the phone, several times tap on the “assembly number”). You will find here several options in addition to the standard ones. You can enable the extended reboot menu, which, in addition to the normal reboot, will allow you to reboot into the bootloader or recovery.

The Dev Tools section provides quick access to some tools, such as Accounts Tester, Bad Behavior, Cache Abuser, Configuration, Connectivity, GTalk Service Monitor, Holographic Spirals, Instrumentation, Media Provider, Package Browser, Pointer Location, Running processes, Sync Tester and Water (Live Wallpaper).

Let's return to the main section “For Developers”. You can configure providing root access only for applications, only for ADB, for applications And for ADB, or disable it altogether. Enable USB debugging notification and select the hostname to identify the device in ADB mode.

Finally, at the very bottom of the section, you can find the option to close the application by long pressing the back button.
Superuser
Most custom firmware already have root access and CyanogenMod is no exception. However, instead of the usual Superuser applications from ChainsDD and SuperSU from Chainfire, CyanogenMod 10.1 includes Koush's Superuser application (developer ClockworkMod Recovery and senior CM developer) embedded in the firmware settings. It works absolutely as expected, asking for your permission to grant root access to the application, showing a list of applications that are allowed / not allowed to use root access.

In the list, you can tap the application to see your choice regarding the application and have Superuser “forget” this choice, in case you want to change your mind the next time you start the application. In addition, you can see the full log of allowed / denied requests for root access, indicating the time and date.

In the Superuser settings, you can configure control over other applications, over ADB, or both. Also, you can configure the application in such a way that the access request will be shown only for those applications that have declared in their manifest that they need root access, while other applications will immediately be refused. You can also add Superuser protection using a PIN, so that no one but you can provide root access to applications. You can select the request time interval, enable / disable logging and set up alerts (in the notification panel or pop-ups).
Performance
If you have ever overclocked your Android device, you are probably familiar with the SetCPU application. Many firmware require similar applications for such settings, and CyanogenMod immediately contains everything you need.
In this section, you will see all the options for setting up your processor, I / O scheduler and memory management. Also, you can enable 16-bit transparency and choose a dithering method for colors to improve graphics output.

As for the processor, you can select the CPU scheduler, set the minimum and maximum processor frequency. The options presented here depend on the installed kernel. For our Galaxy Nexus, the standard CM core contains many CPU schedulers and available frequencies.

You can also choose an I / O scheduler and zRam size. There are several additional options, for example, clearing bitmaps to free up RAM, saving CPU and I / O settings of schedulers after a reboot.
CyanogenMod Updates
This item can be found in the “About phone” section. It contains something similar to OTA (over-the-air) updates for stock firmware. Each time a new version of CM comes out, you will receive an alert and you can download it from here. You can also configure the frequency of checking for updates.

You can specify the type of firmware for which you want to update (stable or night / RC). The update will be downloaded and installed via recovery.
Here our detailed excursion on CyanogenMod 10.1 also came to the end. We have done everything possible not to miss a single function that this firmware provides. Tell us if you use CyanogenMod as your permanent firmware or prefer something else? What reasons led you to use (or not use)? What features of CyanogenMod do you like the most?
From the translator: if you see errors, I will be grateful for the notification in private messages, so that I promptly correct these errors.