mirror of
https://github.com/onionshare/onionshare.git
synced 2024-12-29 01:06:16 -05:00
try local import if global fails
This commit is contained in:
parent
373f24e64b
commit
0bcdad7db2
@ -18,5 +18,24 @@ GNU General Public License for more details.
|
|||||||
You should have received a copy of the GNU General Public License
|
You should have received a copy of the GNU General Public License
|
||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
"""
|
"""
|
||||||
|
try:
|
||||||
|
# try to use module installed on system first
|
||||||
import onionshare
|
import onionshare
|
||||||
|
except ImportError:
|
||||||
|
# use module provided by source repository
|
||||||
|
import os, sys, inspect
|
||||||
|
# path used to call the executable
|
||||||
|
relative_exec_path = inspect.getfile(inspect.currentframe())
|
||||||
|
# split off path to executable
|
||||||
|
path_to_executable = os.path.split(relative_exec_path)[0]
|
||||||
|
# make sure no symlinks fool the procedure
|
||||||
|
real_path = os.path.realpath(os.path.abspath(path_to_executable))
|
||||||
|
# strip out the install/scripts part
|
||||||
|
module_folder = path_to_executable.replace('/install/scripts', '')
|
||||||
|
# insert module into path
|
||||||
|
if module_folder not in sys.path:
|
||||||
|
sys.path.insert(0, module_folder)
|
||||||
|
# try importing again
|
||||||
|
import onionshare
|
||||||
|
|
||||||
onionshare.main()
|
onionshare.main()
|
||||||
|
Loading…
Reference in New Issue
Block a user