I’m checking some simple aspects by impersonating the average user of Whonix by following documentation.
In the following link https[:]//www[.]whonix[.]org/wiki/Anon_Connection_Wizard#Run_Anon_Connection_Wizard
is reported the following statement “If you are using a terminal Whonix-Gateway ™, type: lxsudo anon-connection-wizard”
Of course it will return an error:
qt.qpa.screen: QXcbConnection: Could not connect to display
Could not connect to any X display.
It should occur because X is not installed.
I tested by installing X by “sudo apt-get install xorg openbox” on Whonix Gateway CLI and then, by performing “lxsudo anon-connection-wizard”, I receive the same error.
Is it a known issue?
If there is already a workaround/solution to use correctly X on Whonix CLI, could we update that wiki page by inserting that the specified command requires specific pkg to be installed?
Whonix ™ with CLI is a version suited for advanced users – those who want Whonix ™ without a GUI. Everyone else should install the user-friendly Whonix ™ VirtualBox with XFCE.
It is assumed that advanced users know that GUI applications cannot be started from CLI.
(To be more exact: It is assumed that advanced users know that GUI applications cannot be started from terminal. Real terminal. Without X window system.
I am not sure it’s worth pointing out on the https://www.whonix.org/wiki/Anon_Connection_Wizard page to say “doesn’t work with Whonix-Gateway CLI. Requires a graphical desktop environment.” Guess that would add more confusion to laymen than clarification.
Then, when finished, the user can come back to the previous terminal env by typing “exit” on X terminal.
The chosen configurations are applied correctly to the main CLI environment.
I’m just worried because an user that reads the wiki, thinks that out-of-the-box he can run the wizard. For this reason I would prefer to insert in the doc the detail to install xinit and run startx for executing the wizard, to not confuse the users.
I know that is a tactical workaround, maybe in my honest opinion could be useful in the future to write the anon-connection-wizard (/usr/lib/python3/dist-packages/anon_connection_wizard/anon_connection_wizard.py) by using “dialog” for the CLI version as already done for the “whonixsetup - Connection Wizard” (/usr/bin/whonixsetup) despite the former is written in python, the latter in bash.
That would be better from a Whonix GUI perspective. I am always wondering if there are any “lost at hello” moments in Whonix documentation even for users which do read documentation. There probably are but it would be good to fix these as much as possible.
Whonix CLI does’t have “first class support” (for lack of better term). It was a contribution and the contributor became inactive later. It’s hence “dragged along”. It’s still working fine. Highly unlikely of having exclusive unique (meaning CLI version only, not in GUI version) security issues due to modular design of Whonix. But it’s not project focus at this time. Therefore I won’t be inventing ACW CLI support.
@Patrick at this point, for the Gateway CLI version, I think that, currently, the anon-connection-wizard command is irrelevant since it uses Qt library. So we could also delete its related folders/files (like /usr/lib/python3/dist-packages/anon_connection_wizard/anon_connection_wizard.py file) because it will never be used (if not running X), right?