SDDM Login Themes awesome linux sddm theme

Source (link to git-repo or to original if based on someone elses unmodified work): https://www.opencode.net/marianarlt/sddm-sugar-candy

5
Score 82.5%
Description:

You asked for more, you shall get it. Sugar Candy is the latest release in the Sugar series of SDDM themes. It's so extremely sweet your pancreas will have difficulties digesting its awesomeness.

Sweeten the login experience for your users, your family and yourself. Sugar Candy works on almost all major distributions—see below—and focuses on a straight forward user experience and superb functionality while still offering vast customization possibilities.

Sugar Candy is based on the Sugar series which was written completely from scratch making it clean and simple not only by looks but by design too.
All controls use the latest Qt Quick Controls 2 for increased performance on low end or even embedded systems and beautiful color transitions.

To learn how to control sugar levels read the section below about customization. There are 40 customizable variables in total! This candy will be yours and only yours.



Installation

From within KDE Plasma

If you are on KDE Plasma—by default Manjaro, OpenSuse, Neon, Kubuntu, KaOS or Chakra for example—you are lucky and can simply go to your system settings and under "Startup and Shutdown" followed by "Login Screen (SDDM)" click "Get New Theme". From there search for "Sugar Candy" and install.

If for some reason you cannot find the category named "Login Screen (SDDM)" in your system settings then you are missing the module sddm-kcm. Install this little helper with your package manager first. You will be grateful you did.

From other desktop environments

Download the tar archive from the files tab of this web page and extract the contents to the theme directory of SDDM (change the path for the downloaded file if necessary):

$ sudo tar -xzvf ~/sugar‑candy.tar.gz -C /usr/share/sddm/themes

This will extract all the files to a folder called "sugar‑candy" inside of the themes directory of SDDM.

After that you will have to point SDDM to the new theme by editing its config file, preferrably at /etc/sddm.conf (create if necessary). You can take the default config file of SDDM as a reference which might be found at: /usr/lib/sddm/sddm.conf.d/sddm.conf.

In the [Theme] section simply add the themes name to this line: Current=sugar‑candy. If you don't care for SDDM options and you had to create the file from blank just add these two lines and save it. Also see the Arch wiki on SDDM.

Dependencies

SDDM >= 0.18 & Qt5 >= 5.11
including: Qt Quick Controls 2, Qt Graphical Effects, Qt SVG, Qt Quick Layouts each >= 5.11see below for distro specific package names

Make sure these are installed with their required version or higher! SDDM might need an enabled system service/daemon to work. This is often done automatically during installation. Take note that a lot of standard release distros like Debian, Mint, MX, Elementary, Deepin or Ubuntu LTS are still on earlier versions. If in doubt ask in your distros forums.

Debian based distros using the APT package manager:
(Ubuntu/Kubuntu/Kali/Neon/antiX etc.)

sudo apt install --no-install-recommends sddm qml‑module‑qtquick‑layouts qml‑module‑qtgraphicaleffects qml‑module‑qtquick‑controls2 libqt5svg5

Arch based distros using the pacman package manger:
(Obarun/Artix/Manjaro/KaOS/Chakra etc.)

sudo pacman -S --needed sddm qt5‑graphicaleffects qt5‑quickcontrols2 qt5‑svg

openSUSE using the zypper package manager:

sudo zypper install sddm libqt5‑qtgraphicaleffects libqt5‑qtquickcontrols2 libQt5Svg5 libQt5Svg5

Red Hat based distros using the dnf package manager:
(Fedora/Mageia/RHEL/CentOS)

sudo dnf install sddm qt5‑qtgraphicaleffects qt5‑qtquickcontrols2 qt5‑qtsvg



Configuration

The sugar series is extremely customizable by editing its included theme.conf file. You can change the colors and images used, the time and date formats, the appearance of the whole interface and even how it works.

Pro tip: It's super annoying to log out and back in every time you want to see a change made to the theme.conf file. To preview your changes from withing your running desktop environment session simply issue:

sddm-greeter --test-mode --theme /usr/share/sddm/themes/sugar-candy

And as if that wouldn't still be enough you can translate every single button and label because SDDM still needs your help to make localization as complete as possible!

Background="Backgrounds/Mountain.jpg"
Path relative to the theme root directory. Most standard image file formats are allowed including support for transparency. (e.g. background.jpeg/illustration.GIF/Foto.png/undraw.svgz)

DimBackgroundImage="0.0"
Double between 0 and 1 used for the alpha channel of a darkening overlay. Use to darken your background image on the fly.

ScaleImageCropped="true"
Whether the image should be cropped when scaled proportionally. Setting this to false will fit the whole image instead, possibly leaving white space. This can be exploited beautifully with illustrations (try it with "undraw.svg" included in the theme).

ScreenWidth="1440"
ScreenHeight="900"
Adjust to your resolution to help SDDM speed up on calculations.

FullBlur="false"
PartialBlur="false"
Enable or disable the blur effect; if HaveFormBackground is set to true then PartialBlur will trigger the BackgroundColor of the form element to be partially transparent and blend with the blur.

BlurRadius="100"
Set the strength of the blur effect. Anything above 100 is pretty strong and might slow down the rendering time. 0 is like setting false for any blur.

HaveFormBackground="false"
Have a full opacity background color behind the form that takes slightly more than 1/3 of screen estate; if PartialBlur is set to true then HaveFormBackground will trigger the BackgroundColor of the form element to be partially transparent and blend with the blur.

FormPosition="center"
Position of the form which takes roughly 1/3 of screen estate. Can be left, center or right.

BackgroundImageHAlignment="center"
Horizontal position of the background picture relative to its visible area. Applies when ScaleImageCropped is set to false or when HaveFormBackground is set to true and FormPosition is either left or right. Can be left, center or right; defaults to center if none is passed.

BackgroundImageVAlignment="center"
As before but for the vertical position of the background picture relative to its visible area.

MainColor="white"
Used for all elements when not focused/hovered etc. Usually the best effect is achieved by having this be either white or a very dark grey like #444 (not black for smoother antialias). Colors can be HEX or Qt names (e.g. red/salmon/blanchedalmond). See https://doc.qt.io/qt-5/qml-color.html

AccentColor="#fb884f"
Used for elements in focus/hover/pressed. Should be contrasting to the background and the MainColor to achieve the best effect.

BackgroundColor="#444"
Used for the user and session selection background as well as for ScreenPadding and FormBackground when either is true. If PartialBlur and FormBackground are both enabled this color will blend with the blur effect.

OverrideLoginButtonTextColor=""
The text of the login button may become difficult to read depending on your color choices. Use this option to set it independently for legibility.

InterfaceShadowSize="6"
Integer used as multiplier. Size of the shadow behind the user and session selection background. Decrease or increase if it looks bad on your background. Initial render can be slow for values above 5-7.

InterfaceShadowOpacity="0.6"
Double between 0 and 1. Alpha channel of the shadow behind the user and session selection background. Decrease or increase if it looks bad on your background.

RoundCorners="20"
Integer in pixels. Radius of the input fields and the login button. Empty for square. Can cause bad antialiasing of the fields.

ScreenPadding="0"
Integer in pixels. Increase or delete this to have a padding of color BackgroundColor all around your screen. This makes your login greeter appear as if it was a canvas. Cool!

Font="Noto Sans"
If you want to choose a custom font it will have to be available to the X root user. See https://wiki.archlinux.org/index.php/fonts#Manual_installation

FontSize=""
Only set a fixed value if fonts are way too small for your resolution. Preferrably kept empty.

ForceRightToLeft="false"
Revert the layout either because you would like the login to be on the right hand side or SDDM won't respect your language locale for some reason. This will reverse the current position of FormPosition if it is either left or right and in addition position some smaller elements on the right hand side of the form itself (also when FormPosition is set to center).

ForceLastUser="true"
Have the last successfully logged in user appear automatically in the username field.

ForcePasswordFocus="true"
Give automatic focus to the password field. Together with ForceLastUser this makes for the fastest login experience.

ForceHideCompletePassword="false"
If you don't like to see any character at all not even while being entered set this to true.

ForceHideVirtualKeyboardButton="false"
Do not show the button for the virtual keyboard at all. This will completely disable functionality for the virtual keyboard even if it is installed and activated in sddm.conf

ForceHideSystemButtons="false"
Completely disable and hide any power buttons on the greeter.

Locale=""
The time and date locale should usually be set in your system settings. Only hard set this if something is not working by default or you want a seperate locale setting in your login screen.

HourFormat="HH:mm"
Defaults to Locale.ShortFormat - Accepts "long" or a custom string like "hh:mm A". See http://doc.qt.io/qt-5/qml-qtqml-date.html

DateFormat="dddd, d of MMMM"
Defaults to Locale.LongFormat - Accepts "short" or a custom string like "dddd, d 'of' MMMM". See http://doc.qt.io/qt-5/qml-qtqml-date.html

HeaderText="Welcome!"
Header can be empty to not display any greeting at all. Keep it short.

SDDM may lack proper translation for every element. Sugar defaults to SDDM translations. Please help translate SDDM as much as possible for your language: https://github.com/sddm/sddm/wiki/Localization. These are in order as they appear on screen.

TranslatePlaceholderUsername=""
TranslatePlaceholderPassword=""
TranslateShowPassword=""
TranslateLogin=""
TranslateLoginFailedWarning=""
TranslateCapslockWarning=""
TranslateSession=""
TranslateSuspend=""
TranslateHibernate=""
TranslateReboot=""
TranslateShutdown=""
TranslateVirtualKeyboardButton=""
These don't necessarily need to translate anything. You can enter whatever you want here.



Legal Notice

Copyright (C) 2018 Marian Arlt.

Sugar Candy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Sugar Candy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with Sugar Candy. If not, see https://www.gnu.org/licenses/.



Other awesome projects



Motivate a developer

In the past years I have spent quite some hours on open source projects. If you are the type of person who digs attention to detail, know how much work is involved in it and/or simply likes to support makers with a coffee or a beer I would greatly appreciate your donation on my PayPayl account.
Alternatively downloading my themes directly from opendesktop or with the kde sddm system settings module will at least help me a little to be able to attend your issues and requests.
Please consider helping developers you think are worth a penny or two, literally.



Last changelog:

v1.2 1 month ago

- Added option to fully hide and disable power buttons

arun94

19 days ago

9 9 excellent

Report

lokawn

23 days ago

10 10 the best

Report

lokawn

23 days ago

This theme is amazing, thank you.
The password dots don't appear centrally aligned in vertical direction and the name field shows username instead of real name.

Report

C

marianarlt

20 days ago

Thank you lokawn for your rating and feedback. Would you care to elaborate on "vertical direction"? I'm not sure I understand you well. Are you using a rotated monitor? There's an issue tracker directly accessible from the tabs above as well. I would appreciate more details on your setup!

Report

NickLion

1 month ago

10 Only one wish for this — some easy for packaging (when package update wouldn't erase all changes) theme support and switching between different variants.

Report

C

marianarlt

1 month ago

Thank you NickLion (*’▽’)ノ^—==━☆゜.*
I'm not sure if I understand you well. I think you got two desires: Have your custom changes to theme.conf stick when I push an update. This is easily accomplished by cloning the theme.conf to a copy called theme.conf.user and change things there. I will mention this in the README.
The second one I assume is you would like to be able to quickly switch your made layouts. This is not possible by design of how SDDM works and is integrated into distros. I would love such an option too but it's not my responsibility as a theme creator. It would call a complete program. I can only adhere to what is available by design.
That said you could create various copies of theme.conf and name them accordingly. Like centered-fullblur.conf or right-to-left.conf and then when you feel like changing back up the original theme.conf and rename one of those.
If I understand you right I think these are valid arguments, but it needs to be done by the end user (you). I will also mention the second argument in the README.
Thanks for the feedback!

Report

NickLion

30 days ago

Yeah, you've understood me well :)
It'd be nice to have something like /etc/sddm-sugar-candy.conf with theme name (or keep it under [Sugar-Candy] section in /etc/sddm.conf) which would point to another config file.
So, as this isn't possible right now in straightforward way (I'd guess due to SDDM security reasons), I'll try some package magic + update-alternatives.

Report

arielaxionl

1 month ago

10 10 the best! For Arch Linux user, the qt5-virtualkeyboard package should be an optional depends.

Report

C

marianarlt

1 month ago

Also please don't hesitate to report any bugs or issues you find with the virtual keyboard if you use it! Thanks for your feedback.

Report

C

marianarlt

1 month ago

Thank you arielaxionl c⌒っ╹v╹ )っ
The virtual keyboard is in itself an optional dependency for SDDM. The theme now provides support for it but I won't mention it specifically as it is a very rare use case. Most of us only know of its existence because some distros install it without us even knowing. Hope you enjoy!

Report

unc926

1 month ago

10 10 en iyisi

Report

C

marianarlt

1 month ago

Thanks unc926 ♡✧( ु•⌄• )

Report

S

vinceliuice

1 month ago

10 10 the best, That's really amazing!

Report

C

marianarlt

1 month ago

Thank you vinceliuice ( *⌒∇⌒)/

Report

l4k1

1 month ago

10 10 the best

Report

C

marianarlt

1 month ago

~ヾ(^∇^) Thank you

Report

S

mrcuve0

1 month ago

PS: I wanted to pling your product and I took the chance to become a supporter of the OpenDesktop site.
Now that I'm a supporter, when I push the Pling button it's asking me to become a supporter (again?).

I'll retry later though, maybe the systems has to "crunch some numbers" on it.

Report

C

marianarlt

1 month ago

Might be worth "yet another" thread in forums? :s

Report

S

mrcuve0

1 month ago

Not this time ahahaha. Check it (just to be sure) but I should have "plinged" you right now

Report

C

marianarlt

1 month ago

That worked indeed :) Thank you very much! :)

Report

S

mrcuve0

1 month ago

10 10 the best

I should give you 10 only for your accurate and clear product description.
It's clear you are putting an amazing effort (I loved your attention on the performance!) and you are concentrating on very important aspects.

Also, the final product is very pleasant and complete.

I think I'm in a good position to know all the effort and time you spent in these products (although for my products is probably 1/10th of yours), from the building phase to the issue/support phase.

Keep up the good work!

Report

S

mrcuve0

1 month ago

I forgot to write:

Can I ask you where did you find the wallpapers in the slieshow? I love the desert one

Report

C

marianarlt

1 month ago

Thank you for the love mrcuve0 I appreciate it. The backgrounds are either from pexels.com which is completely free stock or from wallhaven.cc which is a bit shadier to me but tons of great images on both. Should mention that in the credits actually.

Report

v1.2 1 month ago

- Added option to fully hide and disable power buttons

v1.1 1 month ago

- Added full support for the Qt Virtual Keyboard
- Minor fixes and adjustments

12345678910
17
product-maker arun94 Jul 30 2019 9 excellent
9 excellent
product-maker lokawn Jul 26 2019 10 the best
10 the best
product-maker NickLion Jul 12 2019 10 the best
Only one wish for this — some easy for packaging (when package update wouldn't erase all changes) theme support and switching between different variants.
product-maker arielaxionl Jul 11 2019 10 the best
10 the best! For Arch Linux user, the qt5-virtualkeyboard package should be an optional depends.
product-maker unc926 Jul 07 2019 10 the best
10 en iyisi
product-maker vinceliuice Jul 07 2019 10 the best
10 the best, That's really amazing!
product-maker l4k1 Jul 06 2019 10 the best
10 the best
product-maker mrcuve0 Jul 06 2019 10 the best
10 the best I should give you 10 only for your accurate and clear product description. It's clear you are putting an amazing effort (I loved your attention on the performance!) and you are concentrating on very important aspects. Also, the final product is very pleasant and complete. I think I'm in a good position to know all the effort and time you spent in these products (although for my products is probably 1/10th of yours), from the building phase to the issue/support phase. Keep up the good work!
product-maker Count: 4 Rating: 5.0
File (click to download) Version Description Downloads Date Filesize DL OCS-Install
2 Plings
*Needs ocs-url or ocs-store to install things
Details
license
GPLv3
version
1.2
updated Jul 15 2019
added Jul 03 2019
downloads 24h
216
page views 24h 93
System Tags linux unix gplv3