Bug #15233

Tails Installer cannot select an ISO in non-English locales

Added by anonym 2018-01-23 11:29:29 . Updated 2018-03-14 11:08:55 .

Status:
Resolved
Priority:
Elevated
Assignee:
Category:
Installation
Target version:
Start date:
2018-01-23
Due date:
% Done:

100%

Feature Branch:
installer:bugfix/15233-locale-fixes
Type of work:
Code
Blueprint:

Starter:
Affected tool:
Installer
Deliverable for:

Description

Since Tails Installer 5.0.1 (introduced in Tails 3.2), when using a valid non-English locale (e.g. fr_FR.utf-8) the “select ISO” button remains inactive (greyed out) even when the “use a downloaded Tails ISO” radio button is selected.

You can run Tails Installer OK if you do:

`LANG=en_us tails-installer`

The problem:

def on_radio_button_source_iso_toggled(self, radio_button):
[...]
    if active_radio.get_label() == "Clone the current Tails":
[...]
    elif active_radio.get_label() == "Use a downloaded Tails ISO image":
[...]

The fix: translate those strings with _().


Subtasks


Related issues

Related to Tails - Bug #15254: Tails Installer breaks due to unicode status messages Resolved 2018-01-27
Related to Tails - Feature #15416: Document how to manually upgrade to 3.6 and 3.6.1 for non-English users Resolved 2018-03-16
Blocks Tails - Feature #13245: Core work 2018Q1: Foundations Team Resolved 2017-06-29

History

#1 Updated by anonym 2018-01-23 11:29:55

  • Affected tool set to Installer

#2 Updated by intrigeri 2018-01-23 11:31:39

#3 Updated by intrigeri 2018-01-23 11:32:30

kurono: I’ll handle this but I think that you’ll learn something useful by taking a quick look at this bug report :)

#4 Updated by anonym 2018-01-27 06:52:04

goupille said on tails-dev:
> it seems that the tails installer issue with non english locales also prevent the user to select an USB stick

#5 Updated by anonym 2018-01-27 07:43:31

anonym wrote:
> goupille said on tails-dev:
> > it seems that the tails installer issue with non english locales also prevent the user to select an USB stick

Confirmed; the device selection drop-down is inactive (greyed out). I can see this error:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/tails_installer/gui.py", line 439, in on_radio_button_source_iso_toggled
    self.populate_devices()
  File "/usr/lib/python2.7/dist-packages/tails_installer/gui.py", line 613, in populate_devices
    self.live.detect_supported_drives(callback=add_devices)
  File "/usr/lib/python2.7/dist-packages/tails_installer/creator.py", line 737, in detect_supported_drives
    callback()
  File "/usr/lib/python2.7/dist-packages/tails_installer/gui.py", line 591, in add_devices
    self.status(message)
  File "/usr/lib/python2.7/dist-packages/tails_installer/gui.py", line 647, in status
    text = str(text)
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 4: ordinal not in range(128)

The expected fix worked for me:

--- a/tails_installer/gui.py
+++ b/tails_installer/gui.py
@@ -644,7 +644,7 @@ class TailsInstallerWindow(Gtk.ApplicationWindow):
            and type(text.args).__name__ == 'list':
             text = text.args[0]
         else:
-            text = str(text)
+            text = text
         self.append_to_log(text)

     def enable_widgets(self, enabled=True):

#6 Updated by anonym 2018-01-27 08:30:22

anonym wrote:
> text = text

lol, I just saw what I did here… getting more coffee

#7 Updated by anonym 2018-01-27 11:14:17

  • Status changed from Confirmed to In Progress
  • % Done changed from 0 to 50
  • QA Check set to Ready for QA
  • Feature Branch set to installer:bugfix/15233-locale-fixes

I started working on Bug #15254, and since it’s related I took this one over. Sorry?!

I skipped building a package (=> no Tails branch) since bertagaz will build one for Tails 3.6 (at least for translations) but this can easily be tested in a Live session by copying the tails-installer source’s tails_installer/{__init__,gui}.py into the running Tails’ /usr/lib/python2.7/dist-packages/tails_installer/ directory and then start Tails Installer.

#8 Updated by anonym 2018-01-27 11:16:10

  • related to Bug #15254: Tails Installer breaks due to unicode status messages added

#9 Updated by goupille 2018-01-27 20:00:52

According to several users, the ‘install’ button is also greyed out and prevent cloning the device.

#10 Updated by anonym 2018-01-29 10:57:33

goupille wrote:
> According to several users, the ‘install’ button is also greyed out and prevent cloning the device.

Yup, that should be Bug #15254 — I’ll respond there.

#11 Updated by intrigeri 2018-01-30 08:05:22

  • Assignee changed from intrigeri to bertagaz

(bertagaz is the RM for 3.6; if there’s a good reason why I should handle this review myself, please clarify.)

> I skipped building a package (=> no Tails branch) since bertagaz will build one for Tails 3.6

This is a severe regression and I’d rather see us be ready to include the fix in an emergency release, if we have to make one before 3.6.

#12 Updated by emmapeel 2018-01-31 08:14:39

  • Description updated

One user commented on the chat that you can run Tails Installer OK if you do:

`LANG=en_us tails-installer`

#13 Updated by bertagaz 2018-02-21 17:59:56

  • Assignee changed from bertagaz to anonym
  • QA Check changed from Ready for QA to Dev Needed

Quite of a mess to follow the discussion between here and Bug #15254.

I’ll try to resume:

  1. Users cannot select a USB stick
  2. The “install” button remains grey and inactive when cloning to a valid USB stick

I’ve uploaded a package for this branch in a dedicated suite in our APT repo, and pushed the corresponding bugfix branch in the Tails repo. It’s running in Jenkins.

I’ve tested it by hand and all this bugs are fixed in an ISO containing this package. See Bug #15254 for more.

[Moved to Bug #15254#note-8, fixing ticket metadata]

#14 Updated by bertagaz 2018-02-21 18:07:39

  • Assignee changed from anonym to bertagaz
  • % Done changed from 50 to 80
  • QA Check changed from Dev Needed to Ready for QA

#15 Updated by bertagaz 2018-03-05 09:47:50

  • Status changed from In Progress to Fix committed
  • Assignee deleted (bertagaz)
  • % Done changed from 80 to 100
  • QA Check changed from Ready for QA to Pass

bertagaz wrote:
> I’ve uploaded a package for this branch in a dedicated suite in our APT repo, and pushed the corresponding bugfix branch in the Tails repo. It’s running in Jenkins.

Since then I’ve released upstream a new version of the installer containing this fixes, so this ticket is closed.

#16 Updated by intrigeri 2018-03-06 14:53:52

I’ve deleted bugfix/15233-locale-fixes in tails.git: it’s still building on Jenkins because it has commits (adding the APT overlay) that were not merged into any of our release branches. Building it is useless as far as I can tell now that the code changes it was about were included in tails-installer 5.0.5, which we have on testing and devel. For the record the branch I’ve deleted was at commit:a19c1b7b284009d1784a3cc01470b77c6dafb288 (in case I was wrong and we need to retrieve something from it).

#17 Updated by bertagaz 2018-03-14 11:08:55

  • Status changed from Fix committed to Resolved

#18 Updated by intrigeri 2018-03-16 19:10:15

  • related to Feature #15416: Document how to manually upgrade to 3.6 and 3.6.1 for non-English users added