Aether
( lightdm-webkit-theme-aether )
Inspired by a lifelong love with space.
A Sleek, straightforward Archlinux themed login screen written on lightdm and the lightdm-webkit2-greeter.
Try it out here, at the live demo.
Table of Contents
Features
Stylish Default Themes
Advanced Customization
Multi User Support
Built-in Wallpaper Customization
Requirements
Installation
Recommended Automatic Installation
Available on the AUR. ArchLinux users can substitute pacaur with yaourt, packer, etc. as necessary and install with the following:
pacaur -S lightdm-webkit-theme-aether
Manual Installation
This assumes that you already have lightdm and lightdm-webkit2-greeter installed (but not configured).
# If you prefer the last stable release, download from the releases page instead: https://github.com/NoiSek/Aether/releases/latest
git clone git@github.com:NoiSek/Aether.git
sudo cp --recursive Aether /usr/share/lightdm-webkit/themes/Aether
# Set default lightdm-webkit2-greeter theme to Aether
sudo sed -i 's/^webkit_theme\s*=\s*\(.*\)/webkit_theme = lightdm-webkit-theme-aether #\1/g' /etc/lightdm/lightdm-webkit2-greeter.conf
# Set default lightdm greeter to lightdm-webkit2-greeter
sudo sed -i 's/^\(#?greeter\)-session\s*=\s*\(.*\)/greeter-session = lightdm-webkit2-greeter #\1/ #\2g' /etc/lightdm/lightdm.conf
Setting an Avatar Image
Once LightDM, LightDM Webkit Greeter, and Aether are installed you will need to set an avatar image for your users. Size is irrelevant, and avatars will be displayed as a 125x125 circle (Yes, square images too). Users that don't have an avatar set will default to the astronaut.
To accomplish this, you can do either of the following:
- Create an image in your home directory named
.face
. - Append
Icon=/path/to/your/avatar.png
to the bottom of the file at/var/lib/AccountsService/users/<youraccountname>
Using Your Own Wallpapers
Method One:
Add and delete wallpapers within the src/img/wallpapers/
directory as you see fit. By default, you will find this folder at the absolute path: /usr/share/lightdm-webkit/themes/lightdm-webkit-theme-aether/src/img/wallpapers/
.
Method Two:
Edit the background_images
value under branding
within your lightdm-webkit config file located at /etc/lightdm/lightdm-webkit2-greeter.conf
.
Note: This ignores the default value of /usr/share/backgrounds, as this is always set and would prevent the default wallpapers from working. To use wallpapers from within that directory, create a subdirectory at /usr/share/backgrounds/aether (or any other folder name) and change your config value accordingly.
Modifying Date and Time Format
The formatting symbols are not necessarily what you would expect them to be! See the following:
https://github.com/samsonjs/strftime#supported-specifiers
Troubleshooting
My login screen hasn't changed!
Make sure you have lightdm enabled via systemctl with systemctl is-enabled lightdm.service
. If it isn't, follow up with:
sudo systemctl enable lightdm.service
My screen is black!
Verify that your libgl / glx drivers are properly installed. Find any potential issues with your X config by switching to another TTY with Ctrl+Alt+F2 and trying:
sudo cat /var/log/Xorg.0.log | grep -i "glx"
Are you able to run glxinfo
without errors?
My system hangs at the boot screen!
Switch to another TTY with Ctrl+Alt+F2 and check your lightdm logs by running:
sudo tail /var/log/lightdm/seat0-greeter.log
If you see something similar to:
*** (lightdm:709): CRITICAL **: session_get_login1_session_id: assertion 'session != NULL' failed
Then you should try re-installing and / or reconfiguring your graphics drivers, especially if this occurred after a kernel update.
The lock screen isn't using my lightdm theme!
If you are using cinnamon, gnome, or any gnome derivative; Good Luck. The solution involves light-locker (community/light-locker), but conflicts with the existing lock / screensaver applications. There is no known way to resolve this.
If you are not using a gnome derivative, see below.
Solution:
echo "light-locker &" >> ~/.xprofile
Development
Make sure you have Node installed.
npm install
(While in project directory)
Running Tests
npm run test
Building Project
npm run build
Monitoring Changes
npm run watch
Credit
- Bear by Yu luck from the Noun Project
- Power by Nikita Kozin from the Noun Project
- Arrow by Landan Lloyd from the Noun Project
- Implements Draggable by bcherny
- Implements React-Color by bcherny