New features in Linux Mint 17.2 Cinnamon
Linux Mint 17.2 is a long term support release which will be supported until 2019. It comes with updated software and brings refinements and many new features to make your desktop experience more comfortable to use.
On supported hardware Cinnamon now uses a newer “cogl” API. This change is known to prevent some of the causes of desktop freezes observed in earlier releases.
In case of a freeze or if you need to restart Cinnamon for any reason, you can now do so via a keyboard shortcut. The default key combination is Ctrl+Alt+Escape. Pressing this combination of keys restarts nemo and cinnamon-settings-daemon in case they had crashed, and launches a brand new instance of the Cinnamon desktop. Unlike Ctrl+Alt+Backspace which terminates your session and brings you back to the login screen, Ctrl+Alt+Escape simply restarts Cinnamon itself, which means your session is exactly as it was, you don’t lose any work and all your windows and applications remain open.
You no longer need to recompile Cinnamon to choose between consolekit and logind support. This is done in gsettings and you can decide which relevant Cinnamon components use which session/power-management backend:
- Set org.cinnamon.desktop.session session-manager-uses-logind to true to make Cinnamon rely on logind to restart/shutdown/suspend/hibernate the computer from the shutdown dialog, or to false to restart/shutdown the computer via consolekit and suspend/hibernate via upower.
- Set org.cinnamon.desktop.session settings-daemon-uses-logind in a similar fashion to control suspending/hibernating on idle or via multimedia keys.
- Set org.cinnamon.desktop.session screensaver-uses-logind to true to make the screensaver listen to logind, or to false to make it listen to consolekit.
Linux Mint uses consolekit and upower by default but it is also compatible with logind. With MDM 2.0 and Cinnamon 2.6 you can now switch back and forth between the two and it should work well either way.
Responsiveness, load times and CPU usage
A huge amount of work was done to review the CPU usage in various parts of Cinnamon and many improvements were made. Performance was gained by optimizing how Cinnamon reacts to particular events and reducing the number of tasks or repeated tasks it performs. The menu, for instance, is refreshed about 6 times as less as before… signals resulting from connecting a USB device are grouped together and lead to 1 action, reducing 4 concurrent reactions into a single one. The docinfo part of Cinnamon, which handles “recent files”, was optimized a lot. We found out tiny features such as generating thumbnails for “recent” files in the application menu were very expensive in resources and dropping them led to significant reductions in CPU usage. Un-necessary calculations in the window management part of Cinnamon could also be dropped, leading to reduced idle CPU usage (about 40% reduction in the number of CPU wakes per second).
Loading times were also reviewed (this covered Cinnamon and MDM) and found to be excellent, except for the case where Cinnamon is loaded for the first time after a computer restart or shutdown. Whereas a normal Cinnamon initialization would typically take between 0 and 2 seconds, the very first one could take up to 40 seconds on some of our test systems. The reason was a lack of HDD read-cache, especially when it came to Gio appinfo and icon themes data. To reduce this initial load time, Cinnamon 2.6 introduces a preload mechanism which loads themes and app info asynchronously earlier on during the boot sequence. Distributions using non-standard icon themes can add them to /etc/cinnamon/preload/iconthemes.d/.
Finally, information was added to Looking glass logs to report the Cinnamon startup time as well as to indicate how long each enabled applet took to start.
Multi-monitor and multi-panel support
Support for multiple monitors was improved. Better window list actions and new keybindings allow you to move windows to other monitors (Super+Shift with arrow keys by default). But the most significant improvement is that you can now have multiple panels and place them across multiple monitors.
Applets are better than before at running multiple instances of themselves and some of them got smarter to accommodate multi-monitor/multi-panel setups. For instance a window list applet won’t show you windows from another monitor if that monitor has a panel with its own window list.
Up until version 2.6 “cinnamon-screensaver” was no more than a “screen locker”. It locked the screen but didn’t actually play any animation.
This is changed now as it gained support for XScreenSaver modules and HTML5 screensavers.
Note: Brightness and keyboard backlight are now also modifiable via multimedia keys while the screen is locked.
Panels and applets
Panels can now be added/removed/configured individually and moved to different positions across one or multiple monitors.
They have a new way of hiding/showing themselves called “intelli-hide” :)
The way their left/center/right zones are defined was redesigned and they are now able to center applets in the middle whether left and right zones contain applets or not.
A new “inhibit” applet was introduced which allows you to quickly turn notifications off or to disable power management. This applet is handy when performing presentations, to prevent unwanted notifications to pop up, to prevent the screen from dimming brightness or the screen to get locked. You no longer need to modify your power settings, you can just temporarily disable all that.
The inhibit applet also tells you when another program is disabling power management. This is useful to know whether the programs you’re using are telling Cinnamon you’re actually “doing” something (my favorite media player “mpv” for instance isn’t…) :)
The user and network applets were improved slightly.
The sound applet received better PulseAudio support, it detects output devices more accurately and now features a slightly revamped UI and a new application mixer (so you can change the sound level for individual applications straight from the applet).
The “System Settings” were redesigned and reorganized using a beautiful new look, layout and transitions.
The window effects settings were simplified and cool new effects were introduced.
New configuration options were introduced to make your desktop feel even more at home… the first day of the week, the size/presence of the multimedia keys OSD.
The default settings were reviewed and tuned slightly. Windows now open in the center of the screen.
Power management, brightness and batteries were revamped and merged together. The power applet was also largely redesigned, it detects batteries much better than before and gives a breakdown on secondary devices. It also handles screen brightness and keyboard backlight.
The “Startup Applications” configuration tool was rewritten as a native Cinnamon settings module.
Nemo features a brand new plugin manager.
It’s easier than ever to enable/disable Nemo Actions/Scripts/Extensions thanks to the branch new Plugin Manager.
Its context menus were simplified and now only show the most useful actions. Of course it’s possible to configure Nemo from the preferences to make it show all available actions, as it did before.
File operations are now queued and performed in sequence rather than in parallel.
The policykit policy for “Open as Root” was changed to cache authorization and keep you from having to repeatedly enter a password.
Efforts were made to improve ATK/Orca support in visual Cinnamon components.
Improvements were also made to the magnifier and the mouse zoom modifier is now also configurable.
The on-screen keyboard was partly redesigned. It now shows and hide on-demand thanks to a brand new “On-Screen Keyboard Applet” and it now affects the size and limits of the screen: i.e. when the on-screen keyboard appears, the size of the workspace is reduced accordingly and windows appearing beneath it are re-adjusted (this works in a way similar to the panel auto-hide function).
In the Software Sources configuration tool you can now open PPA archives and browse their packages. You no longer need to switch to another tool to install what you were looking for.
PPAs can now be browsed and you can install packages directly from the Software Sources configuration tool
The tool is now also able to list foreign packages and to downgrade them.
Foreign packages are a new APT concept in Linux Mint. A foreign package is a package which origin and/or version is unknown and which doesn't match what is available in repositories known by your operation system.
Downgrading foreign packages back to their official versions can be especially useful in the following cases:
- If you want to purge packages from a 3rd party repository or from a PPA
- If you temporarily enabled Romeo and you want to downgrade your packages back to stable versions
- If you mistakenly used repositories which aren't compatible with your system (Debian repositories in Linux Mint for instance)
- If you want to remove .deb packages installed manually
In all these cases, the procedure is simple:
- Remove the repository/PPA you no longer want to use
- Refresh your APT cache
- Click on Maintenance -> "Downgrade foreign packages"
This, along with the new "apt recommends" command, makes it easier to solve APT-related issues and to clean your Linux Mint system.
The Update Manager continues to present updates in a more meaningful way:
- Packages can now be aliased and presented under a different name than their package name or source package name. When this is the case the original package names also appear in the interface as secondary information. This is used by Linux Mint to group related packages together or to present them with simpler and more understandable names. For instance, updates for "cjs", or "muffin" which are essential to Cinnamon are now presented as "cinnamon-cjs" or "cinnamon-muffin" and appear just beside other Cinnamon updates.
- Aliased packages are also localized in your language. Localization isn't handled by dpkg. Ubuntu and Debian provide an incomplete layer of translation to APT and this was missing until now for Linux Mint packages.
The user interface was also slightly improved:
- The Update Manager now uses the entire window to show errors when they happen, or to report that your system is up to date.
- A new configuration option allows you to hide the Update Manager system tray icon when no updates are available.
- A new configuration option allows you to hide the Update Manager window automatically after updates are applied.
The user interface of the Language Settings was redesigned again:
The window now loads input methods in the backgrounds and is now much faster to show up.
Proper flags were added for minoritarian languages.
Different Input Methods can now be defined for different languages. Support for Japanese in particular, was improved in Linux Mint 17.2.
The MDM 2.0 display manager features many under-the-hood improvements:
- Avatars are now supported for users with encrypted home directories
- Just like in the Language Settings, flags for minoritarian languages are now also supported.
- Screensavers are faster to unlock when switching users and logging back in
- Scrensaver unlocks via logind are now supported
- Infinality fonts are now supported
- A new session detection mechanism was implemented. The benefits of this new feature are explained here: http://segfault.linuxmint.com/2015/03/better-session-detection-in-mdm-2-0/
Better support for UEFI, NVIDIA and Optimus cards
Grub was updated for Linux Mint 17.2 and brings better UEFI support and better compatibility with modern computers (this is known to fix live boot and graphical issues on many computers).
The NVIDIA drivers were upgraded from version 331.113 to version 346.72 to support recent NVIDIA chipsets.
MDM was given better support for NVIDIA Prime. On NVIDIA Optimus equipped computers, you can now switch between your Intel and your NVIDIA card with a simple log out. You no longer need to reboot.
A system tray icon also indicates which GPU is active and you can click on it to switch to the other one:
A Cinnamon applet is also available, which does the same thing and hides the system tray icon when activated.
Linux Mint 17.2 features the following system changes:
- The bash command completion was improved. The terminal is now able to better auto-complete the commands you type and also their arguments.
- The bash history was improved and no longer accepts duplicates.
- A new APT command was introduced to list missing recommended packages for a particular package. Say you installed wine, you can review the list of packages it recommends which aren't installed on your computer by typing the following command:
- apt recommends wine
- A new command was introduced to see the signals handled by a particular process. The following command, for instance, lists the signals handled by MDM:
- check_signals `pidof mdm`
All the backgrounds from Linux Mint "Maya", "Nadia", "Olivia", "Petra", "Qiana" and "Rebecca" are also present, as well as a nostalgic selection of the best backgrounds from the early days of Linux Mint.
The Mint-X GTK theme is now available in Grey.
The USB Image Writer and the USB Stick Formatter now recognize a wider variety of USB sticks. They also feature improvements in terms of partitions alignment, boot flags. Sticks are better described and the tools also now use less CPU than they did before..
LibreOffice was upgraded to version 4.4.3.
HPLIP was upgraded to version 3.15.2, for more HP printers to be recognized and supported.
HAL was reintroduced to support DRM playback in Adobe Flash (note that this helps with certain video websites, but not all of them, a tutorial was written to workaround other DRM/Flash issues)
In the repositories, Inkscape was upgraded to version 0.91.
Linux Mint 17.2 features Cinnamon 2.6, MDM 2.0, a Linux kernel 3.16 and an Ubuntu 14.04 package base.
Linux Mint 17.2 will receive security updates until 2019.
Until 2016, future versions of Linux Mint will use the same package base as Linux Mint 17.2, making it trivial for people to upgrade.
Until 2016, the development team won't start working on a new base and will be fully focused on this one.