mirror of
https://github.com/jwinterm/cryptonoteRPCwalletGUI.git
synced 2026-10-17 05:51:33 +02:00
63 lines
3.0 KiB
Python
63 lines
3.0 KiB
Python
import os
|
|
import time
|
|
import subprocess
|
|
from sys import platform
|
|
|
|
|
|
def simplewalletloader(walletname, walletpw, isname):
|
|
"""Function to create and/or open wallet in simplewallet rpc mode"""
|
|
# Launch simplewallet in rpc mode if wallet file exists
|
|
if isname == True:
|
|
# os.remove(walletname)
|
|
print "***Opening ___" + walletname + "___ wallet file rpc interface***"
|
|
if platform == 'win32':
|
|
subprocess.Popen(
|
|
"start simplewallet.exe --wallet-file {0} --password {1} --rpc-bind-port 19091 --set_log 0\r\nnpause".format(
|
|
walletname, walletpw), shell=True)
|
|
elif platform == 'linux' or platform == 'linux2' or platform == 'darwin':
|
|
subprocess.Popen(
|
|
'xterm -bg black -hold -e "./simplewallet --wallet-file {0} --password {1} --rpc-bind-port 19091"'.format(
|
|
walletname, walletpw))
|
|
|
|
# Generate and then launch if wallet file doesn't exist
|
|
elif isname == False:
|
|
print "Generating wallet file " + walletname
|
|
if platform == 'win32':
|
|
walletgen = subprocess.Popen(
|
|
"simplewallet.exe --generate-new-wallet {0} --password {1} --set_log 0".format(
|
|
walletname, walletpw), shell=True, stdin=subprocess.PIPE,
|
|
stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
|
elif platform == 'linux' or platform == 'linux2' or platform == 'darwin':
|
|
walletgen = subprocess.Popen(
|
|
"./simplewallet --generate-new-wallet {0} --password {1} --set_log 0".format(
|
|
walletname, walletpw), shell=True, stdin=subprocess.PIPE,
|
|
stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
|
|
print "Wallet gen'ed"
|
|
time.sleep(5)
|
|
#print walletgen.stdout.read()
|
|
#print walletgen.communicate('exit')
|
|
walletgen.terminate()
|
|
if platform == 'win32':
|
|
os.system("taskkill /im simplewallet.exe /f")
|
|
elif platform == 'linux' or platform == 'linux2' or platform == 'darwin':
|
|
p = subprocess.Popen("pgrep simplewallet", shell=True, stdout=subprocess.PIPE,
|
|
stderr=subprocess.PIPE)
|
|
output, errors = p.communicate()
|
|
output = output.split('\n')
|
|
for i in output:
|
|
os.system("kill -9 {0}".format(i))
|
|
# Launch simplewallet in rpc mode now that wallet file exists
|
|
print "***Opening ___" + walletname + "___ wallet file rpc interface***"
|
|
if platform == 'win32':
|
|
subprocess.Popen(
|
|
"start simplewallet --wallet-file {0} --password {1} --rpc-bind-port 19091 --set_log 0\r\nnpause".format(
|
|
walletname, walletpw), shell=True)
|
|
elif platform == 'linux' or platform == 'linux2' or platform == 'linux32':
|
|
subprocess.Popen(
|
|
'xterm -bg black -hold -e "./simplewallet --wallet-file {0} --password {1} --rpc-bind-port 19091 --set_log 0"'.format(
|
|
walletname, walletpw), shell=True)
|
|
|
|
|
|
elif isname == None:
|
|
pass
|