Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Login screen: Rewritten from scratch #20

Open
wants to merge 38 commits into
base: dev
Choose a base branch
from
Open

Conversation

ADeswanta
Copy link

@ADeswanta ADeswanta commented Jun 23, 2022

I've rewritten the login screen with a few files and take a bit of reference from the current one.

Some elements need to be worked/usable (checked for done):

  • Power menu
  • Session mode
  • Brightness controller
  • Battery indicator (no dialog)
  • Keyboard layouts
  • Time and date
  • Password reset feature/information
  • Time format option

and some tests:

  • Login to the session
  • Switch to another session
  • Power menu functionality
  • Keyboard layout
  • Clock, battery, and brightness Indicators
  • Brightness controller*

*Some testers if you have a laptop, please test it for brightness controller (DO NOT USE VM)

NOTE: Please do some tests before merging this PR and use web-greeter (instead of lightdm-webkit2-greeter) to test the login screen

How to test:

  1. Install lightdm and web-greeter package
  2. Copy this theme to /usr/share/web-greeter/themes
  3. Edit the /etc/ligthdm/lightdm.conf:

    This will set the greeter-session (default greeter session) to web-greeter
  4. Edit the /etc/lightdm/lightdm-webkit2-greeter.conf:

    This will set the webkit_theme (default greeter theme) to this theme avdanos and also set the safe_mode to false to prevent blocking API requests (but for now, the API won't be working, so it's optional)
  5. Then, Restart your computer

These items will be fixed/added/checked for the following commits.

ADeswanta added 14 commits June 23, 2022 10:11
Other changes:
* Added menu style
* Added menus to the document
* Updated some styles
* Battery indicator
* Brightness indicator
* Keyboard layout indicator
* Session indicator

Other changes:
* Updated login form
* Minor UI changes
* Added some session symbols/images
Other changes:
* Minor UI changes
* Updated some debug data
Other changes:
* Minor UI changes
* Menus
* Switcher
* Lock screen (clock)
Other changes:
* Updated Debug API
* Minor UI fixes
* Added some comments
@ADeswanta ADeswanta marked this pull request as ready for review June 25, 2022 11:09
* Use 2 spaces for an indent
* Unconfilct files with PR's (maybe)
Other changes:
* Minor UI fixes
* Consistent formating
@ameasere
Copy link
Contributor

Will test this now. Can I ask which distro/system you are testing this on, and which parameters?

@ADeswanta
Copy link
Author

Will test this now. Can I ask which distro/system you are testing this on, and which parameters?

I'm using Ubuntu 22.04 for main system and Arch Linux (latest) as testing machine (same as tester using)

@ameasere
Copy link
Contributor

avdanosLogin.log

Power menu and keyboard layout functions work, everything else doesn't. When trying to log into a session, all fields and buttons get greyed out and the session hangs. Nothing happens. It causes a failure popup, the same as when you try to use the indicators for Brightness, Power and other things as well as switching sessions. I have attached the greeter log.

Other changes:
* Bug/error fixes
* Updated debug API
* Minor UI fixes
* Added indicator availibility state
* lightdm-webkit2-greeter (not web-greeter) compatiblity
* Updated desktop entry file
@ADeswanta
Copy link
Author

avdanosLogin.log

Power menu and keyboard layout functions work, everything else doesn't. When trying to log into a session, all fields and buttons get greyed out and the session hangs. Nothing happens. It causes a failure popup, the same as when you try to use the indicators for Brightness, Power and other things as well as switching sessions. I have attached the greeter log.

I've fixed some errors, you can test it again.

Other changes:
* Updated images
* Updated dbeug API
* key event fixes
Other changes:
* Minor UI fixes
* Key event update
Other changes:
* Minor UI fixes
@ameasere
Copy link
Contributor

image
Just a slight nitpick: why do we have 2 folders for the same thing?

@ameasere ameasere self-assigned this Jun 29, 2022
@ameasere ameasere added the enhancement New feature or request label Jun 29, 2022
This commit make user (probably) unhide
the blank screen when user unidle and
when computer is in sleep or hibernate (on
restart computer)
@ameasere
Copy link
Contributor

avdanosLogin.log
Successful login hangs again... switching sessions menu now works though!
Battery and brightness indicator needs to be disabled on PCs and machines that do not support it, otherwise they also cause errors to show up. I am sure this can be done somehow.

@ameasere
Copy link
Contributor

Suggestion: user-profile.png (the profile picture) should sync with the one you set in the OS itself, and there should be a way to change the background without command line.

ADeswanta added 3 commits July 1, 2022 18:13
Other changes:
* Updated debug api
Other changes:
* Add background settings
* Minor UI fixes
@ADeswanta
Copy link
Author

avdanosLogin.log Successful login hangs again... switching sessions menu now works though! Battery and brightness indicator needs to be disabled on PCs and machines that do not support it, otherwise they also cause errors to show up. I am sure this can be done somehow.

It is fixed, now you can try again. The battery and brightness for unsupported devices were already disabled programmatically and cannot be hidden because menus weren't reallocated properly.

ADeswanta added 3 commits July 2, 2022 11:27
* Fixed timeout reached when authenticate
  on lightdm-webkit2-greeter
* Added/enhanced auth messages to make
  more interactive login system
* Removed autologin timer expired, since
  this login screen needs authentication
  before accessing to the desktop/session

Other changes:
* Minor UI fixes
Using lightdm.default_session is for getting
default session from the vendor or
organizations (i think)
@ameasere ameasere removed their assignment Jul 5, 2022
@AZProductions
Copy link
Member

@AdvendraDeswanta should this be merged?

@ADeswanta
Copy link
Author

ADeswanta commented Jul 7, 2022

@AdvendraDeswanta should this be merged?

May be. Because enigmaPr0ject.tech authentication API does not work, why not use local authentication (standard login)?

@SEGPlayz
Copy link

btw i think u have to use the dev branch not main

@ADeswanta
Copy link
Author

btw i think u have to use the dev branch not main

It already used the dev branch not main.

@lucasod3v
Copy link

it seems like you are trying to merge from your repo:dev to this repo:main

@StoneMcYT
Copy link
Contributor

StoneMcYT commented Jul 18, 2022

For Future Devs:

And the testing needs to be done on Arch our testers usually install KDE first
Copied from DMs

install my custom login screen (#20):

  1. Install lightdm and lightdm-webkit2-greeter package
  2. Copy theme to /usr/share/lightdm-webkit/themes
  3. Edit the /etc/ligthdm/lightdm.conf:
  4. Edit the /etc/lightdm/lightdm-webkit2-greeter.conf:

lightdm.conf, it's to set the lightdm engine (we use lightdm-webkit2-greeter) and on lightdm-webkit2-greeter.conf, it's to set the theme (we use avdanos theme)

don't forget to set secure_mode to false on lightdm-webkit2-greeter.conf

@StoneMcYT
Copy link
Contributor

@AdvendraDeswanta should this be merged?

May be. Because enigmaPr0ject.tech authentication API does not work, why not use local authentication (standard login)?

Yep disable the API login system (not sure why it was used in first place) and replace with normal local authentication

@dorakuflu
Copy link

Do we need the images in /img/sessions? Since this login screen will be used with AvdanOS, I don't think we need to include assets of other desktop environments.

@StoneMcYT
Copy link
Contributor

Do we need the images in /img/sessions? Since this login screen will be used with AvdanOS, I don't think we need to include assets of other desktop environments.

Hmm I assume you mean

avdanos-desktop/lightdm-avdanos-theme/img/sessions/i3-with-shmlog.png

@dorakuflu
Copy link

Do we need the images in /img/sessions? Since this login screen will be used with AvdanOS, I don't think we need to include assets of other desktop environments.

Hmm I assume you mean

avdanos-desktop/lightdm-avdanos-theme/img/sessions/i3-with-shmlog.png

Yes, the images in that directory like the i3 image you have provided the path for.

@StoneMcYT
Copy link
Contributor

Do we need the images in /img/sessions? Since this login screen will be used with AvdanOS, I don't think we need to include assets of other desktop environments.

Hmm I assume you mean
avdanos-desktop/lightdm-avdanos-theme/img/sessions/i3-with-shmlog.png

Yes, the images in that directory like the i3 image you have provided the path for.

hmm true

@Rohith0009
Copy link
Contributor

Brightness Is Not Working On My Laptop

@StoneMcYT
Copy link
Contributor

Brightness Is Not Working On My Laptop

Testing in VM or dualboot etc?
if you're testing in a VM can you please upload a screen recording + logs if possible

@ADeswanta ADeswanta changed the base branch from main to dev July 22, 2022 00:18
Since the API Authentication was inactive or dead,
we will use standard login as normal authentication,
also this login screen includes the slider user
switching, tell me for user switching system changes.
@Golem642
Copy link
Member

I rember about this, I'm going to try it on my laptop this afternoon and send feedback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Aug-Sep 2022
Development

Successfully merging this pull request may close these issues.

9 participants