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

This whole part of qubes-whonix/qubes-whonixsetup at master · Whonix/qubes-whonix · GitHub

# Gateway
elif [ -e /usr/share/anon-gw-base-files/gateway ]; then

    # Display alert that 'whonix-tor-disable' service flag is set and it will need to
    # to manually unset if user wants to be able to boot with Tor enabled.
    if [ -e /var/run/qubes-service/whonix-tor-disable ]; then
        /usr/lib/qubes-whonix/alert tor-disabled /usr/lib/qubes-whonix/messages.yaml
        exit 0
    fi

    ## Check if Tor is disabled.
    if grep "^#DisableNetwork 0$" /etc/tor/torrc; then
        ## Tor is disabled, therefore start whonix-setup-wizard in quick mode.
        kdesudo whonix-setup-wizard quick

        ## Check if Tor is still disabled.
        if grep "^#DisableNetwork 0$" /etc/tor/torrc ; then
           true "Tor is still disabled, therefore take no action."
        else
           ## Tor is enabled now, most likely the user enabled it using whonix-setup-wizard.

           ## When whonixcheck is automatically started at boot, while Tor is disabled
           ## in /etc/tor/torrc, whonixcheck exits silently.
           ## (whonixcheck does this because it is assumed, that in these cases Whonix
           ## Setup starts.) (Most likely happens at first boot.)
           ## If Tor has been enabled, restart whonixcheck daemon so whonixcheck will
           ## check Tor's bootstrap status among other things.

           ## Check if whonixcheck daemon is even running before attempting to
           ## restart it. This aids systems where whonixcheck is not installed
           ## or disabled by the user.
           if sudo --non-interactive systemctl --no-pager status whonixcheck ; then
               sudo --non-interactive systemctl --no-pager restart whonixcheck || true
           fi
        fi
    fi

fi

… is no longer up to date. grep "^#DisableNetwork 0$" /etc/tor/torrc won’t work anymore in the age of torrc.d. I would like to get rid of the whole part.

For Qubes-Whonix should be all done like Non-Qubes-Whonix in https://github.com/Whonix/whonix-setup-wizard/blob/master/usr/lib/whonix-setup-wizard/whonixsetup_check_for_start. Do you think you could integrate /usr/lib/qubes-whonix/qubes-whonixsetup into /usr/lib/whonix-setup-wizard/whonixsetup_check_for_start?

The status file in /var/cache/whonix-setup-wizard/status-files/whonixsetup.skip qubes-whonix package is currently preventing autostart of whonix-setup-wizard in Qubes-Whonix. Therefore,

  • /var/cache/whonix-setup-wizard/status-files/whonixsetup.skip should be removed from qubes-whonix package
  • therefore whonix-legacy package should create /var/cache/whonix-setup-wizard/status-files/whonixsetup.done so whonix-setup-wizard will not autostart for Qubes-Whonix 13 → Qubes-Whonix 14 upgraded systems

Do you think you could work on that?

1 Like