Page MenuHomePhabricator

Whonix Greeter
Open, WishlistPublic

Description

A Whonix Greeter could ask the user, upon first use of workstation, what language, local time, keyboard layout, etc they want to use.

Details

Impact
High

Event Timeline

JasonJAyalaP raised the priority of this task from to Needs Triage.
JasonJAyalaP updated the task description. (Show Details)
JasonJAyalaP added a subscriber: JasonJAyalaP.

Thoughts:

Instead of a one-off "Select language and we run a shell command to download the apks and change a kde config", this could be decoupled from the OS and, instead, tied into the "Whonix Desktop Control Panel" idea. Essentially, the whonix greeter is the Whonix Workstation Control run for the first time, set to ask essential questions. The ws control panel would then handle the logic of downloading and configuring.

JasonJAyalaP triaged this task as Normal priority.Jan 14 2015, 12:51 AM
Patrick added a comment.EditedJan 14 2015, 2:14 AM

By chance, we're exactly at that point at the moment, @JasonJAyalaP.

@troubadour and I are discussing usability and implementation of this here:
https://forums.whonix.org/t/graphical-gui-whonix-setup-wizard-anon-connection-wizard-technical-discussion/650/122

In T149#2535, @Patrick wrote:

Next step would be T138. Not sure yet how to integrate it. Same window, an extra line Select language with a drop-down list? A separate GUI? Or perhaps from the desktop environment installed language?

That is somewhat T72, which you partially already implemented in "whonix-setup-wizard locale_settings". When we start that (using xinit) (perhaps in Whonix 11?), then system language gets set. tb-updater could use the same language. The question is, how could tb-updater figure out what was set in KDE (or..)?

To answer my own question... It is stored here...

~/.kde/share/config/kdeglobals
[Locale]
Country=de
Language=de

So from the [Locale] section, the Language=de value could be read.

Patrick lowered the priority of this task from Normal to Wishlist.Sep 25 2015, 9:09 PM
Patrick set Impact to Needs Triage.
Patrick removed troubadour as the assignee of this task.Sep 25 2015, 9:13 PM
Patrick changed Impact from Needs Triage to High.Jan 5 2018, 1:36 PM
Patrick added a subscriber: iry.
iry added a comment.Jan 6 2018, 10:32 PM

The first step for us is to localize Whonix?

In other words:

  1. install foreign fonts
  2. install input methods for different languages

Does Qubes have any thoughts on internationalization? How to get it localized into several native languages? There is dom0 window manager, Debian template, Fedora template. @marmarek

Whonix is only a small piece in the bigger picture of Qubes internationalization, which would then follow how it is implemented for Debian templates.

What are the privacy implications of this? @HulaHoop

In T72#15370, @iry wrote:

The first step for us is to localize Whonix?
In other words:

  1. install foreign fonts
  2. install input methods for different languages

Also configure the system applications to have a different language.

https://www.whonix.org/wiki/Language


There are various options.

a) native language localized downloadable images for various languages

  • disadvantage: not realistic for Non-Qubes-Whonix as I would have to build all of them
  • advantage: no greeter required
  • advantage: no package installation required

b) install packages and configure, all done by Whonix Greeter

  • advantage: smaller image size
  • disadvantage: hard, since then "half" of the system during installation would still be English during installation
  • disadvantage: download (therefore initial time to set up Whonix would take a long time, even longer since we recommend upgrading after installation)

c) install packages by default, and only configure language using Whonix Greeter

  • advantage: no further download required
  • disadvantage: bigger image sizes might be a deal breaker for Qubes?
    • Are the kde-i18n-... packages even relevant for Qubes-Whonix or only for Non-Qubes-Whonix?
  • challenge: have the greeter only show up once in Qubes and not multiple times per VM
  • Ideally Whonix templates would be just informed by the locale setting on dom0?
    • Good from internationalization point of view but might be unwanted from privacy point of view without prior permission?

Best would be a solution that solves this for whole Qubes or at least Qubes Debian templates first. Otherwise we might venture into an implementation path that is later incompatible with Qubes.

Please see:
https://forums.whonix.org/t/graphical-gui-whonix-setup-wizard-anon-connection-wizard-technical-discussion/650/122

To avoid reinvention the wheel and to avoid mistakes... How do other distributions similar to Qubes / Whonix implement this? Let's say Debian, Ubuntu, Fedora, Mint, Elementary OS, Tails?

iry added a comment.Jan 8 2018, 6:08 AM

Another disadvantage for a) and b):

Tor Browser can reveal what fonts have been installed in the system when JavaScript is enabled, which can be used as an effective fingerprint against users.

To avoid reinvention the wheel and to avoid mistakes... How do other distributions similar to Qubes / Whonix implement this? Let's say Debian, Ubuntu, Fedora, Mint, Elementary OS, Tails?

I agree with you. Part of the settings from Tails:

http://forums.kkkkkkkkkk63ava6.onion/t/chinese-fonts-and-input-method/2698/3

iry (iry):

iry added a comment.

Another disadvantage for a)  and b):
Tor Browser can reveal what fonts have been installed in the system when JavaScript is enabled, which can be used as an effective fingerprint against users.

Tor Browser has a feature effectively limit that, no? Or do you mean
localized Tor Browser's for non-English have different fonts? That seems
plausible, but is it a fact?

iry added a comment.Jan 12 2018, 5:50 PM

Tor Browser has a feature effectively limit that, no? Or do you mean
localized Tor Browser's for non-English have different fonts? That seems
plausible, but is it a fact?

Please educate me if I am wrong. The reason I draw this conclusion is because when doing the fingerprint test on ip-check.info , there is a section called "Do you see strange symbols here? If yes, your fonts are readable!"

When setting the TB security slide to low(default) or medium, we can see strange symbols, while we can not see the strange symbols when setting security slide to high. Does that mean:

Tor Browser can reveal what fonts have been installed in the system

In T72#15382, @iry wrote:

Tor Browser has a feature effectively limit that, no? Or do you mean
localized Tor Browser's for non-English have different fonts? That seems
plausible, but is it a fact?

Please educate me if I am wrong. The reason I draw this conclusion is because when doing the fingerprint test on ip-check.info , there is a section called "Do you see strange symbols here? If yes, your fonts are readable!"

Browser tests are problematic generally.

https://www.whonix.org/wiki/Browser_Tests

JonDo:

https://www.whonix.org/wiki/Browser_Tests#ip-check.info

JonDo and ip-check.info in my opinion at the moment doesn't get much maintenance. In my opinion it's best to look at it with great doubt.

When setting the TB security slide to low(default) or medium, we can see strange symbols, while we can not see the strange symbols when setting security slide to high. Does that mean:

Tor Browser can reveal what fonts have been installed in the system

Might be true. Could you check/ask with Tor Project what the status of this is?

iry added a comment.Jan 12 2018, 10:53 PM

Browser tests are problematic generally.

Thank you for pointing this out, Patrick!

Tor Browser can reveal what fonts have been installed in the system

Might be true. Could you check/ask with Tor Project what the status of this is?

I did some searching before asking and it turns out one of the Tor Browser Design goals is:

Font-based fingerprinting MUST be rendered ineffective

More detailed information and defensive approach has been descried in the 6. Fonts section in Tor Browser Design document:
https://www.torproject.org/projects/torbrowser/design/

iry added a comment.Jan 12 2018, 10:57 PM

It is still unclear to me if there is any other known and unknown ways to detect the fonts installed in Whonix by other applications.

Therefore, we may go conservative: pre-install all the fonts in the same Whonix image and may encourage users not to install other fonts themselves?

In T72#15372, @Patrick wrote:

Does Qubes have any thoughts on internationalization? How to get it localized into several native languages? There is dom0 window manager, Debian template, Fedora template. @marmarek
Whonix is only a small piece in the bigger picture of Qubes internationalization, which would then follow how it is implemented for Debian templates.

Currently we don't have any way to configure locales system-wide. One can configure it in dom0, but is isn't sent to any VM (besides keyboard layout). Then one can configure it manually in each/selected TemplateBasedVM separately, or TemplateVMs.

I see two parts of the problem here:

  • how/when to install appropriate language support (should be done in TemplateVMs)
  • how/when to choose appropriate language (can be done either in TemplateVMs, or individual TemplateBasedVMs)

The latter probably can be some qvm-prefs setting + QubesDB key + startup service to apply it. As for the former, maybe salt? If that would be planned as one time configuration (or just something rarely changed - especially not for each VM startup), Salt could be used for the second point too (adjust some config in TemplateVM/TemplateBasedVM).

iry (iry):

iry added a comment.

It is still unclear to me if there is any other known and unknown ways to detect the fonts installed in Whonix by other applications.

Certainly. Custom installed browsers for example. But the package
selection is Whonix specific either way. No way to blend in with anything.

Therefore, we may go conservative: pre-install all the fonts in the same Whonix image and may encourage users not to install other fonts themselves?

Are some fonts incompatible with each other? All input methods at once
may be incompatible?

Pre-installation of all fonts may bust image size limits. Qubes is (or
was?) already DVD oversize.

How much more MB / GB would we be talking about?