Set policy CMP0043 only if it exists

Guard the command to avoid errors with CMake versions older than 3.0.
Don't wait for the greeter before running the display setup script

Currently, the display setup script is ran at two different places:
- With auto login, it is ran after X is ready
- Without auto login, it is ran after the greeter is ready

The script is now always ran after X is ready, this seem to work
around Qt bug #39552
Fix greeter socket error with Qt 5 due to the socket needing root access

The socket is created from the daemon which is ran as root, and it is
given UserAccessOption which means only the root user can access it.

Considering the greeter is ran under the sddm user, this prevents it
from connecting to the daemon in some cases.
Merge pull request #213 from plfiorini/cmake3

Set policy CMP0043 only if it exists
Merge branch 'AnAkIn1-displaysetupscriptfix'
Change socket owner and group

Keep the socket open with user access but change owner and group to
sddm to avoid permission denied errors from the greeter.

This is not done in test mode as everything runs with one user.
Merge pull request #214 from plfiorini/socket-permission

Change socket owner and group
Remove custom session

The "Custom" session runs ~/.xsession, if the script is not available
sddm restarts the greeter and display server because execution failed.

We should force users to write proper desktop entries instead of executing
unknown commands.

Closes #220
Remove unsupported X sessions

In cfdcdfb we removed the "Custom" session from the greeter but the
"custom" bit was left here. Remove it because it has no use anymore.

Also remove the "default" session that runs startkde as it makes no
sense.
Actually tell daemon the authentication has failed

Send a message back to the daemon when the authentication fails, this
way the greeter will display an error instead of being restarted as
soon as sddm-helper finished.

Closes #221
Update mail map
Update CONTRIBUTORS
systemd can be opted out

Add NO_SYSTEMD argument to cmake so users can buid without even
checking for systemd.
Fix passwd authentication backend build

Closes #205
Merge pull request #223 from plfiorini/gcc49fix

Build fix
Add debugging messages to the authentication code

Helps tracking errors. Also explicitely evaluate exit code.
sddm-helper: exit with code 0 otherwise it looks like an internal error

When sddm-helper exits with a code other than 0, SDDM::Auth emits the
finished(false) signal which is interpreted as an internal error condition
by the daemon.

However with authentication errors we don't need to exit with an
error code, we just send an error through the socket. It will be
interpreted correctly by the daemon which will display an error in the
greeter.

Issue: #221
Don't restart greeter and display server if sddm-helper exited successfully

sddm-helper now finishes with exit code 0 even when an authentication failure
happend because it's a managed situation.

When an authentication error is raised we should really do something when
the error() signal is emitted.

Invoke stop() only when an internal error happens to avoid restarting the
greeter and display server for authentication errors, which is annoying
to say the least.

Issue: #221
Handle authentication errors from PAM conversation

We receive the error signal with an ERROR_AUTHENTICATION when the
conversation failes before the sddm-helper even exited.

Emit loginFailed() for authentication errors in order to show the
message from the greeter.

Issue: #221
Merge pull request #224 from plfiorini/fixautherr

Don't restart greeter when authentication fails