2

After installing the good-bye-gdm-flick GNOME extension on 18.04.4, I am no longer able to log in. After logging in, only a purple screen is shown (mouse cursor active).

My next course of action would be to uninstall (delete) or disable the extension, but as far as I understand this cannot be done globally, but only in the user's home directory

~/.local/share/gnome-shell/extensions

But the user home directory is encrypted, so if I open a root shell in recovery mode I can't delete the extension.

I managed to mount the decrypted user data to /tmp with ecryptfs-recover-private, so my question is this:

If I edit the recovered data in the /tmp directory, does this have an effect on the encrypted data? i.e. is it possible to delete the extension in this way, or is the recovered data only a copy of the original data?

If so, is it in any way possible to delete/modify files in an encrypted home directory?

Or is there a possibility to somehow disable gnome extensions globally so the faulty code is not executed after login?

EDIT:

The answer of @ashvatthama of logging in via TTY worked!

Minor note for future readers: Don't know if this was only a glitch but I had to change to lightdm before I could open a TTY on the login screen. (I did this via dpkg-reconfigure lightdm from the root shell in recovery mode).

  • Welcome to Ask Ubuntu. Can you provide the exact commands you used to mount the decrypted home folder? Please be precise and indicate what errors you get, rather than "but here I am stuck." How are you stuck? Can you not navigate to the file? Which commands you used and what errors did they give? – user68186 Jun 17 at 20:48
  • Thank you and sorry, more precisely I executed 'ecryptfs-recover-private' and thus managed to decrypt the encrypted user data, (it gets mounted to tmp/) and read it. My question is this: is it of any use if I edit this data in its decrypted form, I guess not, and the recovery data is only a copy? I don't know how ecryptfs works, but I imagine I had to re-encrypt it and copy it back, or is his done automatically? – nilo Jun 17 at 20:53
  • @nilo.. I am sorry for the inconvenience caused due to the extension.. Actually while downloading the extension.. you are choosing the gnome-shell version which is only for Ubuntu 20.04 – UnKNOWn Jun 18 at 2:03
  • @db429 is the perfect s0luti0n.. just log on via tty.. disable the user-extensions and you will be able to logon.. or even you can stright away remove the extension via same tty session.. – UnKNOWn Jun 18 at 2:07
  • @PRATAP No worries, it was obviously my mistake for not noticing the version incompatibility! – nilo Jun 18 at 11:10
2

I'd suggest that once you mount the encrypted home directory, just rm the extension files. The worst that can happen is that the file won't be actually removed, so it's worth a try.

Also: are you able to login via TTY (Ctrl-Alt-F2...)? if you can login to your user (as opposed to root) from there, then it should be even easier to remove it, without using ecryptfs.

| improve this answer | |
  • Thank you, I didn't know about TTY, I will try that and report back! Regarding ecryptfs it is exactly my confusion if ecryptfs-recover-private allows the editing of the encrypted data, or if it only creates a decrypted copy for backup purposes. – nilo Jun 17 at 21:00
  • Thank you so much, this worked! At first I could not open a TTY from the login screen, but after changing to ligthdm (from the root shell in recovery mode) I managed to open one, delete the extension and now it works! Thanks again, this nightmare is over... – nilo Jun 17 at 21:23
4

if you regulary boot up to the login screen and then switch to the console Alt+Ctrl+F3 then login (be aware there is no graphical output on the password prompt). You than can follow the answer given here How do I enable and disable GNOME extensions from the command line? by typing:

gsettings set org.gnome.shell disable-user-extensions true

This will disable all user-extensions.

Switch back to the login screen via Alt+Ctrl+F1 and login.

Now you should be able to log in again, start Extensions reenable user-extensions and disable the extension in question.

| improve this answer | |
  • I was able to fix it via TTY according to ashvatthama's answer and deleting the extension, but thank you for this information! (Unfortunately I don't have enough rep to upvote). – nilo Jun 17 at 21:25
  • @nilo all is okay ;) – db429 Jun 17 at 23:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.