--- a/onionshare/gui_common.py +++ b/onionshare/gui_common.py @@ -410,52 +410,12 @@ class GuiCommon: } def get_tor_paths(self): - if self.common.platform == "Linux": - base_path = self.get_resource_path("tor") - if base_path and os.path.isdir(base_path): - self.common.log( - "GuiCommon", "get_tor_paths", "using paths in resources" - ) - tor_path = os.path.join(base_path, "tor") - tor_geo_ip_file_path = os.path.join(base_path, "geoip") - tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6") - obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy") - snowflake_file_path = os.path.join(base_path, "snowflake-client") - meek_client_file_path = os.path.join(base_path, "meek-client") - else: - # Fallback to looking in the path - self.common.log("GuiCommon", "get_tor_paths", "using paths from PATH") - tor_path = shutil.which("tor") - obfs4proxy_file_path = shutil.which("obfs4proxy") - snowflake_file_path = shutil.which("snowflake-client") - meek_client_file_path = shutil.which("meek-client") - prefix = os.path.dirname(os.path.dirname(tor_path)) - tor_geo_ip_file_path = os.path.join(prefix, "share/tor/geoip") - tor_geo_ipv6_file_path = os.path.join(prefix, "share/tor/geoip6") - - if self.common.platform == "Windows": - base_path = self.get_resource_path("tor") - tor_path = os.path.join(base_path, "Tor", "tor.exe") - obfs4proxy_file_path = os.path.join(base_path, "Tor", "obfs4proxy.exe") - snowflake_file_path = os.path.join(base_path, "Tor", "snowflake-client.exe") - meek_client_file_path = os.path.join(base_path, "Tor", "meek-client.exe") - tor_geo_ip_file_path = os.path.join(base_path, "Data", "Tor", "geoip") - tor_geo_ipv6_file_path = os.path.join(base_path, "Data", "Tor", "geoip6") - elif self.common.platform == "Darwin": - base_path = self.get_resource_path("tor") - tor_path = os.path.join(base_path, "tor") - obfs4proxy_file_path = os.path.join(base_path, "obfs4proxy") - snowflake_file_path = os.path.join(base_path, "snowflake-client") - meek_client_file_path = os.path.join(base_path, "meek-client") - tor_geo_ip_file_path = os.path.join(base_path, "geoip") - tor_geo_ipv6_file_path = os.path.join(base_path, "geoip6") - elif self.common.platform == "BSD": - tor_path = "/usr/local/bin/tor" - tor_geo_ip_file_path = "/usr/local/share/tor/geoip" - tor_geo_ipv6_file_path = "/usr/local/share/tor/geoip6" - obfs4proxy_file_path = "/usr/local/bin/obfs4proxy" - meek_client_file_path = "/usr/local/bin/meek-client" - snowflake_file_path = "/usr/local/bin/snowflake-client" + tor_path = "@tor@/bin/tor" + tor_geo_ip_file_path = "@geoip@/share/tor/geoip" + tor_geo_ipv6_file_path = "@geoip@/share/tor/geoip6" + obfs4proxy_file_path = "@obfs4@/bin/obfs4proxy" + meek_client_file_path = "@meek@/bin/meek-client" + snowflake_file_path = "@snowflake@/bin/snowflake-client" return ( tor_path,