[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Testing tails-greeter in Wheezy's Debian Live



Introduction
------------
As you might know I'm interested in the final user being able to choose a keyboard from a menu. And that should work in Debian Live by default. ( https://lists.debian.org/debian-live/2014/10/msg00056.html )

I finally made my mind to use tails-greeter as a base for this specific requirement ( https://lists.debian.org/debian-live/2014/11/msg00041.html) and this email explains my findings and doubts about it.

How to test tails-greeter
--------------------------

So, here there are the needed steps for making tails-greeter to work in a Wheezy LXDE's Debian Live CD (Rescatux 0.32b2 specifically). As it's LXDE based you might need to adapt the lightdm stop of another dm.

These instructions are meant for using them once your original Debian Live CD has booted. They are not meant for setting up your Debian Live config and rebuild it.

1. Create:

/etc/apt/sources.list.d/tails.list
with:
deb http://deb.tails.boum.org/ 1.2 main

2. Run:
apt-get update

3. apt-get install tails-greeter
When prompted choose gdm3 instead of the default lightdm

4.

Create a fake live-persist at:
/usr/local/sbin/live-persist
with:
#!/bin/bash
exit 0
and give it execution permissions:
chmod +x /usr/local/sbin/live-persist

5. Edit default user
Edit:
/usr/lib/python2.7/dist-packages/tailsgreeter/config.py
and change
LUSER = 'amnesia'
to:
LUSER = 'user'

6. Apply changes with (probably better at CTRL+ALT+F1):

service lightdm stop
service gdm3 start

7. Be patient.

At the bottom you can change the keyboard then you click on Login button

8. The usual desktop appears and you have keyboard setup !

Questions about tails-greeter
-----------------------------

1) I did a search in tails repository packages (apt-file) and there was no "live-persist" executable. What makes it possible that Tails live cd has such a file?

2) Do you have in mind having a variable inside tails-greeter to disable or hide non-specific Debian Live features like persistence or encription (Yes, I know that Debian Live has persistence but I'm pretty sure it's different from the Debian Live one) ?

That would be useful for not having to fork tails-greeter and have a common base code.

3) Both:

Supported language codes: /usr/share/tails-greeter/language_codes
Default language code: /usr/share/tails-greeter/default_languagecodes

are saved at Tails build time (according to: /usr/lib/python2.7/dist-packages/tailsgreeter/config.py file).

As I see these files are being generated when tails-greeter package is built.

What I am to focus right now is in language_codes (all the possible ones).
According to:
https://git-tails.immerda.ch/greeter/tree/debian/rules?id=tails-greeter_0.8.5#n16
you seem to build your list based on:
/usr/share/i18n/SUPPORTED
.

My questions about language_codes are:

3.1) Are you excluding some keyboards on purpose or not ? If so, why? (Sorry I'm not very good at perl). 3.2) Do the tails-greeter buil-dependencies ensure that all the packages that fullfill the different keyboard layouts at: /usr/share/i18n/SUPPORTED/ are installed previous to the build?

My questions about default langcodes are:

3.3)

https://git-tails.immerda.ch/greeter/tree/default_langcodes?id=tails-greeter_0.8.5

Is there any rationale for choosing these ones over the rest of them?

4) When I install tails-greeter apart from tails-greeter package itself there are some packages that are download from tails repository. These are:

python-dbus-dev
python-dbus

Taking a look at:
https://git-tails.immerda.ch/greeter/tree/debian/control?id=tails-greeter_0.8.5
I guess this is happening because your repo versions are newer than the wheezy ones.

Should I do apt-pinning into these packages so that the I only fetch tails-greeter from your repository?

Or is it made on purpose?

Maybe I should be using another repository?

5) I suppose no one in Tails is planning on rewriting tails-greeter into QT instead of GTK, isn't it?

6) (Kind of offtopic) Any reason why your wheezy dist in your repo has no packages?


Questions for Debian Live people
---------------------------------

1) Is there any place in Debian Live where we can define a default user? The idea would be that if a dm, detects its inside a Debian Live it can just use this default user to autologin instead of just using its default value (as the Tails people are doing with their amnesia user).
  Or what would be the correct approach to this problem?

2) Was I to replace the current algorithm from tails-greeter for showing available keyboard layouts. Is there something that I could reuse from live-config (for showing a list of available keyboard layouts? Or is it live-config only useful for setting the keyboard layout once you know its exact name ?

3) When tails-greeter starts it says:
  "Welcome to Tails".

If I'm not mistaken there is not any live-config variable suited so that Tails (or whatever) is replaced by the Debian Live rebrander, vendor or whatever is called. Isn't it?


Possible fork
-------------

I might begin to work in a fork so that I can use tails-greeter in Rescatux, and so that we can have more insights on how to modify tails-greeter to make it suitable for Debian Live.

The first changes will be aimed at no having to workaround files manually in order to make it work and probably also some design details, and some Tails string being replaced by Rescatux.

  I'll keep you informed of such fork.

More information
----------------
The instructions above imply that you have to replace lightdm by gdm3. That's not strictly needed if you know how to replace the default lightdm greeter.


Thank you for having read till this point. I know it was a long message.

adrian15
--
Support free software. Donate to Super Grub Disk. Apoya el software libre. Dona a Super Grub Disk. http://www.supergrubdisk.org/donate/


Reply to: