LightDM-KDE 0.3.0 Released

LightDM-KDE 0.3 released

I have just released version 0.3 of LightDM-KDE, the new alternate KDE login manager. LightDM-KDE is set to be the new default login manager in the next release of Kubuntu.

This release brings many bug fixes including:

  • No flickering between the greeter and KDE splash screens
  • Better keyboard navigation
  • Last user to log in is remembered and automatically selected
  • Background images can be scaled either keeping the aspect ratio, or stretched
  • Translations have been included
  • Many more fixes...

A special thank you goes to Nuno Bento, Ralf Jung and Michael Zanetti for their contributions this release cycle.

Downloads are available at here or in Kubuntu repositories shortly.

KDE Telepathy 0.5 To Be Released Next Week

Over the last two months we have been preparing to release version 0.5 of KDE Telepathy.

This release brings over 50 bug fixes and 500 commits since 0.4.

About our release cycles

Every alternate release in KDE Telepathy does not bring many new features, but instead puts the focus on bug fixes, minor improvements, and putting on the extra polish throughout our current feature set.

This release schedule allows us to do more than simply patch releases as we are able to fix any strings or add code where it is needed. This also encourages us developers to spend the time on improving our code rather than chasing new (more fun?) ideas as the master branch is still closed for large features.

How can I get involved?

There's still plenty of room for more testers, and there are plenty of things that can still be improved upon. For further details please see our wiki page, or join us in #kde-telepathy on freenode.

LightDM-KDE 0.2.0 Released

After far too long, I'm happy to announce LightDM-KDE 0.2.0!

Fixes since 0.1.1

  • Suspend when closing lid (Bug #295693)
  • Config should be saved only once (Bug #294964)
  • Port to Plasma Components (Bug #294965)
  • User pictures are not shown (Bug #296303)
  • Selecting "Previously Used Session" with Guest causes login to fail (Bug #298658)
  • Nothing is translated (Bug #299381)
  • Shutdown button in the login screen does nothing (Bug #299881)
  • One can select to auto login as guest, even if guest is not enabled (Bug #300329)
  • Change default lightdm greeter (Bug #303014)
  • Misc visual improvements

Where can I download LightDM-KDE 0.2

Requires lightdm v1.3.2 or higher available from https://launchpad.net/lightdm

Is it usable

Yes definitely, this second beta release adds even more stability and functionality.

Getting involved

Want to help? If you can draw artwork or want to help fix some of the bugs get involved! Email me directly (email address is at the top of any source file), alternatively join the very quiet IRC channel #kde-lightdm on freenode.

Experimenting With Telepathy Tubes

During Akademy Daniele Domenichelli and I held a workshop on Telepathy Tubes and how they can be integrated in your application.

What is a Telepathy Tube

In Telepathy, a tube is a method of sending arbitrary data between two contacts over the XMPP stream. This is abstracted to the developer in the form of a local TCP socket or a separate Dbus session between the two computers. This allows you to set up a network connection without having to worry about all the difficulties of IP addresses, firewalls, routing and NATs.

In simple terms, it allows you to exchange more stuff with a contact than the normal text, files or video traditionally associated with instant messaging.

Fun and Games

After the workshop Daniele and I decided to try and add Telepathy tubes to an existing KDE application, in this case KBattleship.

We added a button to the main menu such that instead of starting a game by having to manually type in hostnames and port numbers we simply select a contact from the menu. Considerably easier!

From here we simply select the contact, and all the network setup is handled in the background.

I then lose dramatically.

Having a Go

I don't expect this to be merged into KDE Games anytime soon, we need to get our internal libraries complete and stable. This was just a fun hacking project rather than anything serious.

We need the latest kdegames libs

svn co -N svn://anonsvn.kde.org/home/kde/trunk/KDE/kdegames
cd kdegames && svn up cmake libkdegames libkmahjongg
cmakekde

and my patched version of kbattleship.

git clone git://anongit.kde.org/scratch/davidedmundson/kbattleship.git

If you have it installed, let us know.. maybe we can have a game 😀

Moving Forward

This was primarily just a demo to see how quickly we can hack Telepathy into an existing application that has network support. It took us less than 3 hours to have something working.

There are far more practical, exciting uses and it would be really good to see more people make use of this. If anyone is inspired and wants to hack on something cool, come talk to us on #kde-telepathy on freenode.

Improving the KDE Usability Review Process

During the workspace sprint I had several discussions with the Usability expert Björn Balazs (of open usability fame) about how to bridge the gaps between usability teams and developers, how to improve the communication and trust between the two and how to increase involvement.

One of the actions we undertook was a trial run of offering the chance of usability input during the code review process. To do this we have added a usability group on reviewboard which can be assigned to add a UI check to any code checking.

Developers, from now on if you create a patch that has a significant UI change, such as the introduction of a new dialog simply add the group "usability" to the list of groups that should review your code in addition to the normal maintainer group. The usability team will be notified that you want them to review and make any comments we deem needed or hopefully just told the team approve. If you do this, you should make sure your patch on reviewboard is accompanied by screenshot(s). Ideally in the form of "before", "after" where applicable.

Structured Testing For KDE 4.9

This release cycle we're trying to improve the KDE quality process and add in some structured testing. This is a new program so we're trialing a lot of new ideas.

Application testing checklists

I've taken responsibility for testing all the newly rewritten QML plasmoids with a thorough checklist to make sure everything new is up to scratch ready for a great Plasma future.

This also exists for some other KDE apps (see wiki pages for details), and hopefully more in future.

Bug hunting days

On the weekend of the 9th and 10th of June we will be running some bug hunting days. This will involve IRC training in good bugzilla usage, we will then spend the weekend in an intense testing and bug triaging session, with developers spending some of this time fixing these bugs.

Change testing

Also we're trying to identify all the new areas of medium-large changes and identify these as "areas that should get some more thorough testing". Developers, we need you to update this list with any new features that have been added or areas that have had big rewrites. Users, when you're testing go through this list, and give a bit of extra focus to these sections.

Developers and users, get involved!

Google Two-Step Authentication On Your Desktop

What is it?

Google offer a two step authentication system for their websites where, in order to log in, a user must enter both their password and a special number displayed on the user's phone using a special app that displays a changing unlock code. This code is only valid for a 2 minute window, and so a hacker needs access to the device as well as your password in order to log in.

An implementation behind this is also available in the form of a PAM module so you can install the same security on your PC. Despite being written by Google engineers, everything is run locally and it does not use your Google account.

As well as installing the PAM module you will want to download "Google-Authenticator" from the Android marketplace or iPhone store. Both of these are open source.

Installation & Usage

Install through your package manager

sudo apt-get install libpam-google-authenticator

or download the source

Once installed, run

google-authenticator

. You will be prompted with a series of questions, and then a secret key will be provided. Alternately scan the barcode into the phone to set everything up automatically.

Konsole output How it appears on an Android phone

Integration in LightDM-KDE

I added support for this method in an experimental branch of lightdm-kde available at: git://anongit.kde.org/scratch/davidedmundson/lightdm-kde.git in the branch google-auth.

In order to use the two-step authentication we need to add the following line

auth required pam_google_authenticator.so

to one of the files in /etc/pam.d. Each file represents an authentication usage, and adding this line tells it we require google_authenticator to log in.

Add this line to /etc/pam.d/lightdm to force LightDM to prompt for the two-step verification code. It can be added to other files to prompt on console login or sudo for example, but note that it will not work in KDM.

The Future

PAM support in graphical prompts still needs a lot of work, this mostly stems from the fact that PAM was not really designed with graphical interfaces in mind.

Moving forward we need graphical interfaces to configure PAM, and GUI support for a range of modules, not just in LightDM-KDE but also in PolKit prompts, lock screens etc. I intend to kickstart this on the LightDM side, to support more PAM methods in a more elegant way and hopefully improve the existing kgreet library.

The plan for LightDM-0.2

Having got the first release of LightDM out the way we're looking forward to what our future releases should entail.

0.1 was released purely so we could start testing and get feedback as to what features need to be added for subsequent releases. In some areas we are already ahead of KDM, and even the LightDM frontend used by Unity but in some areas 0.1 is really lagging behind and there's a lot to be done before it's "complete" and ready for distributions to ship.

What's coming in 0.2

Multi-screen support

I have a branch which hopefully makes some progress on this. However with only one screen this is somewhat hard to test! Ideally I need to work with upstream to come up with a QML plugin that we can use in KSplash-QML too.

Live previews in the config tool

One of the special features of LightDM-KDE is that it's really easy your settings, such as change your wallpaper or add a company logo. I'm adding a way to show a live preview of this whilst you change the settings.

Seamless logins

KSplash has a QML backend, we're powered by QML...by copying the same code from our greeter theme to a KSplash theme it will look identical. This means we can load the same background you chose for your login screen, and we won't have the issues with differing aspect ratios that we see in KDM.

General improvements

0.1 shipped with several bugs, broken translations, poor keyboard shortcuts, and loads of UI bugs. We're slowly fixing these, including getting a lot of these changes merged upstream back into Plasma Components. Massive thanks to Aurélien Gateau for his help on this.

Powermanagent

This has already been implemented thanks to Alex Fiestas.

How to try out in Kubuntu 12.04

Even though LightDM isn't the default display manager in Kubuntu it made it's way into the repositories, installation and testing is one command away. You will then be prompted as to wether you want KDM or LightDM to be your default display manager. You don't need to change the default just to try it.

sudo apt-get install lightdm-kde-greeter

Can I see a screenshot that isn't related to anything you just said?

Sure! Blogs without screenshots are dull, and it's hard to screenshot power management....

How to get involved

Report bugs to https://bugs.kde.org/ selecting the product lightdm. If you want to get involved coding or designing;,drop me an email (which can be found at the top of any header file of the source)! Or join #kde-lightdm on Freenode.

KDE Telepathy 0.3.1 Released

Today we released a patch on our 0.3 stable version of the KDE Telepathy IM suite.

Downloads are available from KDE's download site or from your distribution very shortly.

This release contains several minor bug fixes from our last release, and adds further stability.

When is 0.4 coming?

0.4 just entered a soft feature freeze, meaning no new features that aren't already nearly complete can be merged. This will move to a hard freeze on features shortly. From then on we will be in a purely bug fixing stage and 0.4 will be released when all bugs that are marked as blocking the release are fixed.

The more people that can help with testing and coding the quicker this will happen, so please get involved.