[graphical gui] Whonix Setup Wizard / Anon Connection Wizard - Technical Discussion

Merged.

Instead of calling a shell and mkdir, wouldn’t it be better/cleaner to use python’s native mkdir?
https://docs.python.org/2/library/os.html#os.mkdir

With the current state of implementation, I think /etc/xdg/autostart/whonixsetup.desktop should be moved from whonixsetup to whonix-setup-wizard /etc/xdg/autostart/whonixsetup.desktop. What do you think?

Instead of calling a shell and mkdir, wouldn't it be better/cleaner to use python's native mkdir?
Yes, done in [url=https://github.com/troubadoour/whonix-setup-wizard/commit/353850bcdcaed42869def3ecf021c92c75c2a052]353850b[/url].

Also, added the cannot_connect page (the text was only “cannot_connect”). 006060e. And youf changes (output https://github.com/Whonix/whonix-setup-wizard/commit/8bd5686422df8fd23ba5aa2861991aa04051a2a8) are there, eventually. :slight_smile: (don’t ask me how, though).

With the current state of implementation, I think /etc/xdg/autostart/whonixsetup.desktop should be moved from whonixsetup to whonix-setup-wizard /etc/xdg/autostart/whonixsetup.desktop. What do you think?
Yes, it should be in whonix-setup-wizard. I think it's better if you do the move.

In cannot_connect page. · troubadoour/whonix-setup-wizard@006060e · GitHub same issue as before. Back to old state. You did undo what has been changed beforehand (removed “sudo nano” text). Did you check the diff beforehand?

Can you undo that please? Perhaps then this strange issue will be fixed.

Merged and moved that file.

Put back the terminal (sudo nano) in the repo page (I guess that’s what was removed), as well as System in “Start Menu -> Applications -> System -> Torrc”.

What was changed is visible here:
https://github.com/Whonix/whonix-setup-wizard/commit/8bd5686422df8fd23ba5aa2861991aa04051a2a8

I think the whole “sudo nano” method can be dropped in the graphical environment. Can you remove it please?

“Start Menu → Applications → Torrc” is correct (see start menu).

Removed the “sudo nano” in the tooltips and wizard pages, except for “no_torrc” where /etc/torrc has to be created. I hope that settles the matter.

The next logical step would be to try implementing https://github.com/Whonix/Whonix/issues/15, adding some pages at the beginning of the wizard. I have to dig a little further, but it looks feasible.

Sounds good. Merged.

I think even when creating /etc/tor/torrc manually, command line / nano is unnecessary?

Current.

        no_torrc:
            <p>The file "/etc/tor/torrc" does not exist.</p>
            <p>You can try to manually create /etc/tor/torrc&#58;
            <blockquote>sudo nano /etc/tor/torrc</blockquote>
            and re-run Whonix Setup.</p>

Proposed.

        no_torrc:
            <p>The file "/etc/tor/torrc" does not exist.</p>
            <p>You can try to manually create /etc/tor/torrc. Open it&#58;
            <blockquote>Start Menu -> Applications -> Torrc</blockquote>
            And add.
            <blockquote>#DisableNetwork 0</blockquote>
            Save. Then re-run Whonix Setup.</p>

What about this?

Could you please add something like a stop sign, red cross or to something_wrong and the other error pages? (Similar to whonixcheck warning sign.)

And a “okay” sign (green check mark or so) to the success page?

“python built-ins” (those come by default or are default) would suffice and even be simpler than custom ones.

Proposed.
        no_torrc:
            <p>The file "/etc/tor/torrc" does not exist.</p>
            <p>You can try to manually create /etc/tor/torrc. Open it&#58;
            <blockquote>Start Menu -> Applications -> Torrc</blockquote>
            And add.
            <blockquote>#DisableNetwork 0</blockquote>
            Save. Then re-run Whonix Setup.</p>

What about this?


Done in 035ea7b

Could you please add something like a stop sign, red cross or to something_wrong and the other error pages? (Similar to whonixcheck warning sign.)

And a “okay” sign (green check mark or so) to the success page?


Yes, good idea.

"python built-ins" (those come by default or are default) would suffice and even be simpler than custom ones.
Not sure what you mean by "python built-ins", for this purpose.

“python built-ins” as in if there are by chance any standard signs that came together with the gui package. If not, nevermind.

Merged.

Pushed icons in tor_status and finish pages.. It does what it says.

Nice. Thanks for using images from Debian. Not using own ones from the web. I don’t think I mentioned that. That’s better for security and easier for licensing reasons.

Looks very nice! Tested and merged.

[hr]

Pushed some packaging related changes to all packages by the way.

Small git hint: To ignore my local changes and only look at your changes on remote, I used this command.

git diff HEAD^^ troubadoour/master

[hr]

What would happen if these files were non-existing? Totally break the wizard or just not show the images? The former wouldn’t be that bad. We just need to add a dependency for the package that contains those images.

[hr]

Arguably, if Tor is already disabled, showing more like an “okay” sign rather than “warning” sign would be better? But I am unsure here. More a usability question.

[hr]

We’ve made progress on the tor-launcher thing (Whonix Forum). It’s not possible to say yet if this will happen for Whonix 10, later or even never. Anyhow.

Can you please keep in mind how to possibly integrate tor-launcher in future with whonix-setup-wizard in future? I guess we wouldn’t need the Tor enable/disable/bridges/proxy questions in whonix-setup-wizard anymore then?

A good approach could be to ask the user - if it’s available - if it’s preferred to use tor-launcher or whonix-setup-wizard for enabling/disabling Tor? tor-launcher could be the preferred default. whonix-setup-wizard would launch it then. And whonixcheck afterwards. But in any case. I think it’s good to have the whonix-setup-wizard Tor enabling/disabling code as a fallback. Who knows how long the tor-launcher method will work. It’s an experiment for now.

Thanks for the git hint :).

What would happen if these files were non-existing? Totally break the wizard or just not show the images? The former wouldn't be that bad. We just need to add a dependency for the package that contains those images.
Just not show the image. And by the way. from the beginning (msgdispatcher_dispatch_x), I use standard oxygen icons, so it's only for KDE (not Gnome if the option is ever offered).
Arguably, if Tor is already disabled, showing more like an "okay" sign rather than "warning" sign would be better? But I am unsure here. More a usability question.
The argument is valid, but yes, the system in not usable. So... I don't know either.
We've made progress on the tor-launcher thing (https://www.whonix.org/forum/index.php/topic,720.0.html). It's not possible to say yet if this will happen for Whonix 10, later or even never. Anyhow.
Good. Now, at some stage, I will have to add the internationalization support in the wizard (https://github.com/Whonix/Whonix/issues/15). Wondering if I should start with it right away or try to board the tor-launcher train. It's already running.
Can you please keep in mind how to possibly integrate tor-launcher in future with whonix-setup-wizard in future?
Anyhow, that is the first thing I'll have to figure out.
Good. Now, at some stage, I will have to add the internationalization support in the wizard (https://github.com/Whonix/Whonix/issues/15). Wondering if I should start with it right away or try to board the tor-launcher train. It's already running.

At the moment to progress on tor-launcher it’s very hard without javascript knowledge. I guess internationalization support would be best to work on now. When we stall at tor-launcher, I’ll scream. :slight_smile:

Started with internationalization. A new step leading to a new idea, it becomes suddenly logical to integrate gateway_first_run_notice in the wizard. Done in greeter page, whithout the language installation option yet.

Can you please review and comment. Looks like a sensible move?

Tested and merged.

Integrating the whonix-gw-first-run-notice into whonix-setup-wizard might indeed be a good way.

Mixing the language selection screen into the same page as whonix-gw-first-run-notice however looks too much.

Newly introduced bug in latest version: disclaimer windows are now partly outside the screen (vertical) (too big). Disclaimer should always be first. As a related question, could you make it so that the disclaimer does not need to be scrolled? I.e. wider windows or when all cords break, splitting the disclaimer from 2 pages into 3?

Note for later: system language does often, but not necessarily always match the keyboard layout. Also, if we are lucky, and we probably are, we can use Debian’s desktop environment agnostic ways to set system language and keyboard layout. How that can be done has yet to be researched. If you like to work on this as well? I can also help with that.

The newly introduced bug is fixed (a sort of development overlap, started the next step before committing).

The rationale for showing whonix-gw-first-run-notice in the fist page with the language option was to be able to get the whole wizard, including the disclaimer pages (locale plus German) in the local language, when the Whonix translations are done.

Also, if we are lucky, and we probably are, we can use Debian's desktop environment agnostic ways to set system language and keyboard layout.
I am not sure what the agnostic way to set system language and keyboard layout is. The path I'm following at the moment is to propose all the kde-l10-lang options in a wizard page (after "Other language" is chosen), install the language, edit /etc/default/locale accordingly and let the user make the other changes (numbers, money...) in Start Menu -> System settings -> Locale.

So the wizard steps could be:

1- Disclaimer pages
2- Language options
3- Tor
4- whonixrepository
5- whonixcheck

As far as I understand, if the translation is available in the yaml files, the wizard will be run in the local language from step 3.

The rationale for showing whonix-gw-first-run-notice in the fist page with the language option was to be able to get the whole wizard, including the disclaimer pages (locale plus German) in the local language, when the Whonix translations are done.
Certainly a valid point.
I am not sure what the agnostic way to set system language and keyboard layout is.
Keyboard layout:

Please see:

System language:
Dunno. We could ask on unix.stackexchange.com or so.

So the wizard steps could be:

1- Disclaimer pages
2- Language options
3- Tor
4- whonixrepository
5- whonixcheck


Sounds good.

As far as I understand, if the translation is available in the yaml files, the wizard will be run in the local language from step 3.
True. Unless we're able to create a usable and obvious language drop down menu.

[hr]

I was thinking… We shouldn’t invent too much mixes here. I mean, what first. Language or keyboard layout etc. Language with flags or drop down menu. Where to place buttons. How to name them. And so forth. Our programmers intuitions are unfortunately often far away from usability studies. So my suggestion is the following… Could you please look how other wizards, erhm, I mean installers, solve this kind of stuff? Like the Ubuntu installer? And the Tails Greeter? That could give some inspiration on where to place buttons and how and labels for best usability.