Bump to latest upstream git

Hack around focus problem in the Fedora theme

Resolves: #1114192 #1119777 #1123506 #1125129 #1140386 #1112841 #1128463 #1128465 #1149608 #1149628 #1148659 #1148660 #1149610 #1149629
epel9
Martin Briza 10 years ago
parent 905714b86b
commit b1a8e7ee96

1
.gitignore vendored

@ -4,3 +4,4 @@
/7a008602f5f0a4ed8586ce24012983458a687d4e.tar.gz /7a008602f5f0a4ed8586ce24012983458a687d4e.tar.gz
/db1d7381754a01a69b0f4c579c0267d80183c066.tar.gz /db1d7381754a01a69b0f4c579c0267d80183c066.tar.gz
/f49c2c79b76078169f22cb0f85973cebc70333de.tar.gz /f49c2c79b76078169f22cb0f85973cebc70333de.tar.gz
/6a28c29b2914a24f56fe9a7cff82550738672dfb.tar.gz

@ -1,80 +0,0 @@
From 235a2d11dc6982b3a94c45dd57ebafb86ca76734 Mon Sep 17 00:00:00 2001
From: Martin Briza <mbriza@redhat.com>
Date: Fri, 27 Jun 2014 14:11:26 +0200
Subject: [PATCH] Initialize sigactions in signal handlers
---
src/daemon/SignalHandler.cpp | 21 ++++++++++-----------
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/src/daemon/SignalHandler.cpp b/src/daemon/SignalHandler.cpp
index 3cc47c7..5c53660 100644
--- a/src/daemon/SignalHandler.cpp
+++ b/src/daemon/SignalHandler.cpp
@@ -60,31 +60,30 @@ namespace SDDM {
}
void SignalHandler::initialize() {
- struct sigaction sighup;
+ struct sigaction sighup = { };
sighup.sa_handler = SignalHandler::hupSignalHandler;
sigemptyset(&sighup.sa_mask);
- sighup.sa_flags = 0;
- sighup.sa_flags |= SA_RESTART;
+ sighup.sa_flags = SA_RESTART;
if (sigaction(SIGHUP, &sighup, 0) > 0) {
qCritical() << "Failed to setup SIGHUP handler.";
return;
}
- struct sigaction sigint;
+ struct sigaction sigint = { };
sigint.sa_handler = SignalHandler::intSignalHandler;
sigemptyset(&sigint.sa_mask);
- sigint.sa_flags |= SA_RESTART;
+ sigint.sa_flags = SA_RESTART;
if (sigaction(SIGINT, &sigint, 0) > 0) {
qCritical() << "Failed to set up SIGINT handler.";
return;
}
- struct sigaction sigterm;
+ struct sigaction sigterm = { };
sigterm.sa_handler = SignalHandler::termSignalHandler;
sigemptyset(&sigterm.sa_mask);
- sigterm.sa_flags |= SA_RESTART;
+ sigterm.sa_flags = SA_RESTART;
if (sigaction(SIGTERM, &sigterm, 0) > 0) {
qCritical() << "Failed to set up SIGTERM handler.";
@@ -93,10 +92,10 @@ namespace SDDM {
}
void SignalHandler::initializeSigusr1() {
- struct sigaction sigusr1;
+ struct sigaction sigusr1 = { };
sigusr1.sa_handler = SignalHandler::usr1SignalHandler;
sigemptyset(&sigusr1.sa_mask);
- sigusr1.sa_flags |= SA_RESTART;
+ sigusr1.sa_flags = SA_RESTART;
if (sigaction(SIGUSR1, &sigusr1, 0) > 0) {
qCritical() << "Failed to set up SIGUSR1 handler.";
@@ -105,10 +104,10 @@ namespace SDDM {
}
void SignalHandler::ignoreSigusr1() {
- struct sigaction sigusr1;
+ struct sigaction sigusr1 = { };
sigusr1.sa_handler = SIG_IGN;
sigemptyset(&sigusr1.sa_mask);
- sigusr1.sa_flags |= SA_RESTART;
+ sigusr1.sa_flags = SA_RESTART;
if (sigaction(SIGUSR1, &sigusr1, 0) > 0) {
qCritical() << "Failed to set up SIGUSR1 handler.";
--
1.9.3

@ -0,0 +1,99 @@
/*
* SDDM Fedora configuration
*/
#ifndef SDDM_CONFIGURATION_H
#define SDDM_CONFIGURATION_H
#include <QtCore/QString>
#include <QtCore/QList>
#include <QtCore/QTextStream>
#include <QtCore/QStringList>
#include <QtCore/QDir>
#include <pwd.h>
#include "Constants.h"
#include "ConfigReader.h"
namespace SDDM {
// Name File Sections and/or Entries (but anything else too, it's a class) - Entries in a Config are assumed to be in the General section
Config(MainConfig, CONFIG_FILE,
enum NumState { NUM_NONE, NUM_SET_ON, NUM_SET_OFF };
// Name Type Default value Description
Entry(HaltCommand, QString, _S("/usr/bin/systemctl poweroff"), _S("Halt command"));
Entry(RebootCommand, QString, _S("/usr/bin/systemctl reboot"), _S("Reboot command"));
Entry(Numlock, NumState, NUM_NONE, _S("Initial NumLock state\n"
"Valid values: on|off|none\n"
"If property is set to none, numlock won't be changed"));
// Name Entries (but it's a regular class again)
Section(Theme,
Entry(ThemeDir, QString, _S(DATA_INSTALL_DIR "/themes"), _S("Theme directory path"));
Entry(Current, QString, _S("fedora"), _S("Current theme name"));
Entry(FacesDir, QString, _S(DATA_INSTALL_DIR "/faces"), _S("Face icon directory\n"
"The files should be in username.face.icon format"));
Entry(CursorTheme, QString, QString(), _S("Cursor theme"));
);
// TODO: Not absolutely sure if everything belongs here. Xsessions, VT and probably some more seem universal
Section(XDisplay,
Entry(ServerPath, QString, _S("/usr/bin/X"), _S("X server path"));
Entry(XauthPath, QString, _S("/usr/bin/xauth"), _S("Xauth path"));
Entry(SessionDir, QString, _S("/usr/share/xsessions"), _S("Session description directory"));
Entry(SessionCommand, QString, _S("/etc/X11/xinit/Xsession"), _S("Xsession script path\n"
"A script to execute when starting the desktop session"));
Entry(DisplayCommand, QString, _S(DATA_INSTALL_DIR "/scripts/Xsetup"), _S("Xsetup script path\n"
"A script to execute when starting the display server"));
Entry(MinimumVT, int, 1, _S("Minimum VT\n"
"The lowest virtual terminal number that will be used."));
);
Section(Users,
Entry(DefaultPath, QString, _S("/bin:/usr/bin:/usr/local/bin"), _S("Default $PATH"));
Entry(MinimumUid, int, 1000, _S("Minimum user id for displayed users"));
Entry(MaximumUid, int, 65000, _S("Maximum user id for displayed users"));
Entry(HideUsers, QStringList, QStringList(), _S("Hidden users"));
Entry(HideShells, QStringList, QStringList(), _S("Hidden shells\n"
"Users with these shells as their default won't be listed"));
Entry(RememberLastUser, bool, true, _S("Remember the last successfully logged in user"));
Entry(RememberLastSession, bool, true, _S("Remember the session of the last successfully logged in user"));
);
Section(Autologin,
Entry(User, QString, QString(), _S("Autologin user"));
Entry(Session, QString, QString(), _S("Autologin session"));
Entry(Relogin, bool, false, _S("Autologin again on session exit"));
);
);
Config(StateConfig, []()->QString{auto tmp = getpwnam("sddm"); return tmp ? tmp->pw_dir : STATE_DIR;}().append("/state.conf"),
Section(Last,
Entry(Session, QString, QString(), _S("Name of the session file of the last session selected. This session will be preselected when the login screen shows up."));
Entry(User, QString, QString(), _S("Name of the last logged-in user. This username will be preselected/shown when the login screen shows up"));
);
);
extern MainConfig mainConfig;
extern StateConfig stateConfig;
inline QTextStream& operator>>(QTextStream &str, MainConfig::NumState &state) {
QString text = str.readLine().trimmed();
if (text.compare("on", Qt::CaseInsensitive) == 0)
state = MainConfig::NUM_SET_ON;
else if (text.compare("off", Qt::CaseInsensitive) == 0)
state = MainConfig::NUM_SET_OFF;
else
state = MainConfig::NUM_NONE;
return str;
}
inline QTextStream& operator<<(QTextStream &str, const MainConfig::NumState &state) {
if (state == MainConfig::NUM_SET_ON)
str << "on";
else if (state == MainConfig::NUM_SET_OFF)
str << "off";
else
str << "none";
return str;
}
}
#endif // SDDM_CONFIGURATION_H

@ -23,8 +23,8 @@
***************************************************************************/ ***************************************************************************/
import QtQuick 1.1 import QtQuick 2.0
import SddmComponents 1.1 import SddmComponents 2.0
Rectangle { Rectangle {
@ -226,10 +226,25 @@ Rectangle {
} }
} }
// doesn't do anything :/
Component.onCompleted: { Component.onCompleted: {
if (name.text === "") if (name.text === "")
name.focus = true name.forceActiveFocus()
else else
password.focus = true password.forceActiveFocus()
hackTimer.start()
}
// can't tell why it doesn't set the focus when component is completed, this hacks around it
Timer {
id: hackTimer
interval: 100
repeat: false
onTriggered: {
if (name.text === "")
name.forceActiveFocus()
else
password.forceActiveFocus()
}
} }
} }

@ -1,26 +0,0 @@
[General]
DefaultPath=/bin:/usr/bin:/usr/local/bin
CursorTheme=
ServerPath=/usr/bin/X
XauthPath=/usr/bin/xauth
AuthDir=/var/run/sddm
HaltCommand=/usr/bin/systemctl poweroff
RebootCommand=/usr/bin/systemctl reboot
SessionsDir=/usr/share/xsessions/
LastSession=kde-plasma.desktop
RememberLastSession=true
SessionCommand=/etc/X11/xinit/Xsession
FacesDir=/usr/share/sddm/faces/
ThemesDir=/usr/share/sddm/themes/
CurrentTheme=fedora
MinimumUid=1000
MaximumUid=65000
LastUser=
RememberLastUser=false
AutoUser=
HideUsers=
HideShells=
AutoRelogin=false
MinimumVT=1
Numlock=none
XDMCPServer=false

@ -1,9 +1,9 @@
%global _hardened_build 1 %global _hardened_build 1
%global sddm_commit f49c2c79b76078169f22cb0f85973cebc70333de %global sddm_commit 6a28c29b2914a24f56fe9a7cff82550738672dfb
Name: sddm Name: sddm
Version: 0.2.0 Version: 0.9.0
Release: 0.32.20140627git%(echo %{sddm_commit} | cut -c-8)%{?dist} Release: 1.20141007git%(echo %{sddm_commit} | cut -c-8)%{?dist}
# code GPLv2+, fedora theme CC-BY-SA # code GPLv2+, fedora theme CC-BY-SA
License: GPLv2+ and CC-BY-SA License: GPLv2+ and CC-BY-SA
Summary: QML based X11 desktop manager Summary: QML based X11 desktop manager
@ -11,29 +11,29 @@ Summary: QML based X11 desktop manager
Url: https://github.com/sddm/sddm Url: https://github.com/sddm/sddm
Source0: https://github.com/sddm/sddm/archive/%{sddm_commit}.tar.gz Source0: https://github.com/sddm/sddm/archive/%{sddm_commit}.tar.gz
# fedora standard sddm.conf # Default configuration is handled by the binary itself
Source10: sddm.conf Source10: Configuration.h
# Shamelessly stolen from gdm # Shamelessly stolen from gdm
Source11: sddm.pam Source11: sddm.pam
# Shamelessly stolen from gdm # Shamelessly stolen from gdm
Source12: sddm-autologin.pam Source12: sddm-autologin.pam
# systesmd tmpfiles support for /var/run/sddm # systemd tmpfiles support for /var/run/sddm
Source14: tmpfiles-sddm.conf Source13: tmpfiles-sddm.conf
# fedora theme files # fedora theme files
Source21: fedora-Main.qml Source21: fedora-Main.qml
Source22: fedora-metadata.desktop Source22: fedora-metadata.desktop
Source23: fedora-theme.conf Source23: fedora-theme.conf
Patch1: 0001-Initialize-sigactions-in-signal-handlers.patch
Provides: service(graphical-login) = sddm Provides: service(graphical-login) = sddm
BuildRequires: cmake BuildRequires: cmake
BuildRequires: systemd BuildRequires: systemd
BuildRequires: pam-devel BuildRequires: pam-devel
BuildRequires: libxcb-devel BuildRequires: libxcb-devel
BuildRequires: qt4-devel BuildRequires: qt5-qtbase-devel
BuildRequires: qt5-qtdeclarative-devel
BuildRequires: qt5-qttools-devel
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: python-docutils BuildRequires: python-docutils
@ -43,6 +43,8 @@ Obsoletes: kde-settings-sddm < 20-5
Requires: desktop-backgrounds-compat Requires: desktop-backgrounds-compat
# for /usr/share/pixmaps/system-logo-white.png # for /usr/share/pixmaps/system-logo-white.png
Requires: system-logos Requires: system-logos
Requires: qt5-qtbase-gui
Requires: qt5-qtdeclarative
Requires: systemd Requires: systemd
Requires: xorg-x11-xinit Requires: xorg-x11-xinit
Requires: xorg-x11-server-Xorg Requires: xorg-x11-server-Xorg
@ -67,12 +69,13 @@ A collection of sddm themes, including: circles, elarun, maldives, maui.
%prep %prep
%setup -q -n %{name}-%{sddm_commit} %setup -q -n %{name}-%{sddm_commit}
%patch1 -p1 -b .signals cp %{SOURCE10} src/common/
%build %build
mkdir -p %{_target_platform} mkdir -p %{_target_platform}
pushd %{_target_platform} pushd %{_target_platform}
%{cmake} -DBUILD_MAN_PAGES=true -DENABLE_JOURNALD=true .. %{cmake} -DUSE_QT5=true -DBUILD_MAN_PAGES=true -DENABLE_JOURNALD=true ..
popd popd
make %{?_smp_mflags} -C %{_target_platform} make %{?_smp_mflags} -C %{_target_platform}
@ -81,10 +84,9 @@ make %{?_smp_mflags} -C %{_target_platform}
%install %install
make install/fast DESTDIR=%{buildroot} -C %{_target_platform} make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
install -Dpm 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/sddm.conf
install -Dpm 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/pam.d/sddm install -Dpm 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/pam.d/sddm
install -Dpm 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/pam.d/sddm-autologin install -Dpm 644 %{SOURCE12} %{buildroot}%{_sysconfdir}/pam.d/sddm-autologin
install -Dpm 644 %{SOURCE14} %{buildroot}%{_tmpfilesdir}/sddm.conf install -Dpm 644 %{SOURCE13} %{buildroot}%{_tmpfilesdir}/sddm.conf
mkdir -p %{buildroot}%{_localstatedir}/run/sddm mkdir -p %{buildroot}%{_localstatedir}/run/sddm
# install fedora theme # install fedora theme
@ -111,7 +113,6 @@ exit 0
%files %files
%doc COPYING README.md CONTRIBUTORS %doc COPYING README.md CONTRIBUTORS
%config %{_sysconfdir}/sddm.conf
%config(noreplace) %{_sysconfdir}/pam.d/sddm %config(noreplace) %{_sysconfdir}/pam.d/sddm
%config(noreplace) %{_sysconfdir}/pam.d/sddm-autologin %config(noreplace) %{_sysconfdir}/pam.d/sddm-autologin
%config(noreplace) %{_sysconfdir}/pam.d/sddm-greeter %config(noreplace) %{_sysconfdir}/pam.d/sddm-greeter
@ -122,12 +123,11 @@ exit 0
%{_tmpfilesdir}/sddm.conf %{_tmpfilesdir}/sddm.conf
%attr(0711,root,root) %dir %{_localstatedir}/run/sddm %attr(0711,root,root) %dir %{_localstatedir}/run/sddm
%{_unitdir}/sddm.service %{_unitdir}/sddm.service
%{_qt4_importdir}/SddmComponents/ %{_qt5_archdatadir}/qml/SddmComponents/
%dir %{_datadir}/sddm %dir %{_datadir}/sddm
%{_datadir}/sddm/faces/ %{_datadir}/sddm/faces/
%{_datadir}/sddm/flags/ %{_datadir}/sddm/flags/
%{_datadir}/sddm/scripts/ %{_datadir}/sddm/scripts/
%{_datadir}/sddm/sddm.conf.sample
%dir %{_datadir}/sddm/themes/ %dir %{_datadir}/sddm/themes/
# default fedora theme # default fedora theme
%{_datadir}/sddm/themes/fedora/ %{_datadir}/sddm/themes/fedora/
@ -142,6 +142,13 @@ exit 0
%{_datadir}/sddm/themes/maui/ %{_datadir}/sddm/themes/maui/
%changelog %changelog
* Tue Oct 07 2014 Martin Briza <mbriza@redhat.com> - 0.9.0-1.20141007git6a28c29b
- Bump to latest upstream git (and a new release)
- Hack around focus problem in the Fedora theme
- Compile against Qt5
- Removed upstreamed patch and files
- Resolves: #1114192 #1119777 #1123506 #1125129 #1140386 #1112841 #1128463 #1128465 #1149608 #1149628 #1148659 #1148660 #1149610 #1149629
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.0-0.32.20140627gitf49c2c79 * Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.0-0.32.20140627gitf49c2c79
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

@ -1 +1 @@
84a42e1093591fd45c2f6ed6f4f8dfcf f49c2c79b76078169f22cb0f85973cebc70333de.tar.gz 69d70516b37ca577f4df1ae95920f46f 6a28c29b2914a24f56fe9a7cff82550738672dfb.tar.gz

Loading…
Cancel
Save