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: