Feature #17084

Make it easier to debug the Greeter

Added by segfault 7 months ago. Updated 4 months ago.

Target version:
Start date:
Due date:
% Done:


Feature Branch:
Type of work:
Affected tool:


While working on #16912 and #15635, I found that the instructions in greeter.git/HACKING for testing the Greeter in a running Tails don't work, because restarting gdm.service doesn't restart the Greeter.

I found another way to test changes to the Greeter without rebuilding Tails:

  1. Boot Tails (in a VM) with break=bottom and rootpw=<password> kernel command-line options.
  2. In the initramfs, edit /root/usr/share/applications/tails-greeter.desktop, replace the Exec= line with Exec=gnome-terminal -- /bin/bash.
  3. In the gnome-terminal, log in as root with the root password set above:
    Debian-gdm@amnesia:~$ su
  4. If you want to copy code via the clipboard from the host system, open the file you want to modify via gedit:
    # Changing the DCONF_PROFILE is required to be able to save the file via gedit    
    gedit /usr/lib/python3/dist-packages/tailsgreeter/
  5. Remove all self.__greeter and self.__user_verifier lines from the __init__ function from /home/user/projects/tails/config/chroot_local-includes/usr/lib/python3/dist-packages/tailsgreeter/ These commands fail if run from outside a GDM session, i.e. from the gnome-terminal shell.
  6. Exit the root shell and execute the greeter:
    root@amnesia:/var/lib/gdm3# exit
    Debian-gdm@amnesia:~$ /usr/local/lib/tails-greeter

This starts a functional greeter, except that it won't start Tails, because of the lines deleted in step 5.

I wanted to document this somewhere, so that I can find it when I have to debug the greeter again.

Also, we could make step 5 easier if we check whether an environment variable like "TAILS_TEST_GREETER" is set, and don't execute the failing commands in in that case - similar to the GDM_TEST_GREETER variable supported in gnome-shell, see

Associated revisions

Revision fb5f2bcc (diff)
Added by segfault 7 months ago

Hide duplicate and obscure keyboard layouts in the Greeter (refs: #17084)

Revision d97a5c0d (diff)
Added by segfault 7 months ago

Hide duplicate and obscure keyboard layouts in the Greeter (refs: #17084)


#1 Updated by segfault 7 months ago

  • Status changed from Confirmed to In Progress

#2 Updated by segfault 6 months ago

  • Affected tool set to Greeter

#3 Updated by segfault 6 months ago

  • Status changed from In Progress to Confirmed

#4 Updated by segfault 4 months ago

  • Description updated (diff)

Also available in: Atom PDF