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

We’re missing.

(Because ‘whonix-setup-wizard repository’ uses whonix_repository command line tool.)

The diff issue in masters should be solved.

I have been working in my branch without bothering about master :-[. In github, the default branch was set to tor-launcher-clone, and I cloned from there after installing Qubes…

Switched the branch to master in github, cloned again, fetched Whonix (there was a big diff), merged and pushed.

Could you recheck?

There are still extraneous files from the previous experiment in master branch.

git diff --stat troubadoour/master usr/share/translations/whonixcheck_apt_repository.yaml | 16 ---------------- usr/share/translations/whonixcheck_control_port_filter.yaml | 9 --------- usr/share/translations/whonixcheck_hostname.yaml | 31 ------------------------------- 3 files changed, 56 deletions(-)

Branch tor-launcher-clone still has the problems.

Made a bunch of commits in branch tor-launcher.

I removed the local repository, cloned whonix-setup-wizard from Whonix, merged tor-launcher in master and pushed. The default branch in GitHub - troubadoour/whonix-setup-wizard is now set to master.

git diff --stat origin/master shows the changes I have made, and apparently nothing else.

git diff -C --stat origin/master troubadoour/master

 usr/{share/pyshared => lib/python2.7/dist-packages}/whonix_setup_wizard/__init__.py            |   0
 usr/{share/pyshared => lib/python2.7/dist-packages}/whonix_setup_wizard/whonix_setup_wizard.py | 402 ++++++++++-------------------------------------------------------------------
 usr/share/pyshared/whonix_setup_wizard/tor_status.py                                           |  87 -----------------
 usr/share/translations/whonix_setup.yaml                                                       |   8 +-
 4 files changed, 52 insertions(+), 445 deletions(-)

Does this look as expected?

Yes, From https://www.debian.org/doc/packaging-manuals/python-policy/ch-python.html:

When binary packages ship identical source code for multiple Python versions, for instance /usr/lib/python2.6/dist-packages/foo.py and /usr/lib/python2.5/site-packages/foo.py, these should point to a common file. Version specific directories for identical source code are not required for python3 and must not be used for this. Since python2.7 is the last python2 version and the only supported version in wheezy and later releases, a common location to share arch-independent files across Python versions is no longer needed. Historically the location for this was /usr/share/pyshared. For python2.7, use of /usr/lib/python2.7/dist-packages is sufficient. For python3, a special location is not required, use /usr/lib/python3/dist-packages

This approach makes it a lot simpler. We are ending with .done files only.

  • whonixsetup.done in KVM-VirtualBox only.
  • whonix-connection.done
    created after the wizards have successfully completed. No status files from the package.

Merged.

Please make that sudo anon-connection-wizardkdesudo.

Sudo on graphical application leads to issues. Or perhaps it’s time to reconsider this. Fedora apparently has sorted this out in meanwhile since I’ve read in Fedora instructions to use sudo on gui applications… Perhaps also Debian sorted out this issue also?

Done.

For information, “sudo graphic_app” works in Debian in a Qubes VM. It does not in plain Debian jessie nor in VirtualBox.

And in Qubes, kdesudo pops

kdesudo(13007) KDESu::KDESuPrivate::KCookie::getXCookie: No X authentication info set for display “:0”

Did not investigate that.

It (sudo graphical) works initially, but can lead to confusing issues later one.

Merged.

((( Btw, Qubes does not need locale_settings, because in Qubes that is all up to dom0 and passed to any VM. A great solution. )))

There were some commits before (and after) this one. The proposal for Whonix 13

is fully implemented.

whonix-setup-wizard setup is forbidden in Qubes-Whonix, both from whonixsetup-check-for-start, and in the wizard in case someone tries kdesudo whonix-setup-wizard setup

The .skip files are no longer required.
Only whonixsetup.done is left for Non-Qubes-Whonix workstation.

The finish page is deprecated.

https://github.com/Whonix/whonix-setup-wizard/commit/8df32c994d70a461b3f4d6754af45640c61e8b6e

TPO has changed the default bridges transport to obfs4. ( Whonix ™ and Tor Limitations ) So we should do that also.

https://github.com/Whonix/whonix-setup-wizard/commit/8a20a48799f66fa256033c24313cbd9675d59725

@troubadour is missing in action apparently. Unfortunately! No known reason.

anon-connection-wizard is not ready yet. whonix-setup-wizard is broken Whonix 13 release also.

Since I can fix neither in time, I think the best course of action is to use the working whonix-setup-wizard Whonix 12 release branch as starting point, then see git log Whonix12..master and backport relevant stuff such as stable-proposed-updates and other relevant fixes (tor -> tor@default and what else).

Relevant seems:

commit 8a20a48799f66fa256033c24313cbd9675d59725
Author: Patrick Schleizer <adrelanos@riseup.net>
Date:   Thu Mar 31 01:29:06 2016 +0000

    added stable-proposed-updates repository

    https://phabricator.whonix.org/T200

commit 8df32c994d70a461b3f4d6754af45640c61e8b6e
Author: Patrick Schleizer <adrelanos@riseup.net>
Date:   Thu Jan 28 11:19:16 2016 +0100

    tor -> tor@default

commit 6c2061165455e9b6f7a49f1729b97d14dff1d666
Author: troubadoour <trobador@riseup.net>
Date:   Sat Dec 19 19:51:39 2015 +0000

    sudo -> kdesudo

commit 7cac2aa31efd28c37b1c94c5f2edcc1ebe3a424d
Author: troubadoour <trobador@riseup.net>
Date:   Fri Dec 18 23:51:08 2015 +0000

    deprecate finish page

commit ca9e0f977dd6ca5d8fd5d556cfb159e49db21b10
Author: troubadoour <trobador@riseup.net>
Date:   Thu Nov 26 14:06:11 2015 +0000

    tor 0.2.7.5 -> use tor@default service in tor_status.py
    tor service returns status 0 immediatly, regardless of tor status.

This is done.