Tachikoma
|
 |
September 20, 2012, 12:34:55 PM |
|
Cool! I will give it a try after work tonight 
|
|
|
|
Joe200
|
 |
September 20, 2012, 04:35:59 PM |
|
Could you please add an option to Electrum to allow the user to refuse to accept certain coins. If he receives certain coins, he sends them back right away. Here is the full proposal: https://bitcointalk.org/index.php?topic=110749.0Thanks.
|
|
|
|
Tachikoma
|
 |
September 20, 2012, 05:41:35 PM |
|
I think there are a bunch of things higher priority at the moment for Electrum. But if you supply a pull request I'm sure it will get merged 
|
|
|
|
Tachikoma
|
 |
September 20, 2012, 06:00:30 PM |
|
I have a working version of Electrum with SOCKS and HTTP proxy support now in my fork. If anyone wants to try it / test it and give feedback I'd welcome that before going for a pull request to merge it in.
I've tested it with SOCKS4 and SOCK5 a fair bit using an ssh tunnel to my server at amazon. This was quite reliable and seemed to have no issues. I tried an HTTP proxy off a free-list and it worked as well but I found it was more inconsistent and once it had an error it usually could not recover except by restarting. This seems to be due to how the polling code is done and it doesn't handle an error condition and recuperate. I tested mostly with TCP mode but a few times with HTTP mode too.
This proxy support uses the Socksipy wrapper available from google code (apparently a fixed version of the old 2006 code). The license on that code is a bit vague. It's not explicitly based off a known entity but seems to say, well, use it but leave the notice intact is all. One drawback of this code is that it doesn't support unicode host urls. I'm not sure if that's very important for proxies as in most cases people probably use localhost anyway.
Does Tor use a SOCKS proxy? Could someone test if this allows Electrum to run over tor then? I don't know anything about that but it would be good if it worked.
To find this for testing goto my fork at bkkcoins/electrum and get the socks-support branch (NOT the master branch which is default).
Ok I ran the codebase and with a clean install it works fine and runs perfect over Socks! There is however a problem. When you are starting from a non-fresh installation on master and you already have a config file the app crashes because the key proxy doesn't exit. Traceback (most recent call last): File "./electrum", line 119, in <module> parser.add_option("-p", "--proxy", dest="proxy", default=simple_config["proxy"], help="set proxy [type:]host[:port], where type is socks4,socks5 or http") AttributeError: SimpleConfig instance has no attribute '__getitem__'
I tried solving this by writing a get_key method for SimpleConfig so that if a key is not found, it just returns nothing. Sadly this did not really solve the problem. Traceback (most recent call last): File "/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 551, in __bootstrap_inner self.run() File "/Users/maran/Projects/bitcoin/bkk-electrum/lib/interface.py", line 434, in run self.start_interface() File "/Users/maran/Projects/bitcoin/bkk-electrum/lib/interface.py", line 425, in start_interface self.interface.init_socket() File "/Users/maran/Projects/bitcoin/bkk-electrum/lib/interface.py", line 263, in init_socket if self.proxy["mode"] == "none": TypeError: 'NoneType' object has no attribute '__getitem__'
I'm now not sure how to solve this. Is this an issue with your code specific? An other option to solve this would be to "upgrade" the default_options on each launch. Check if the default have more then the current, merge the default into the config file but don't overwrite existing options. I think this would be the best solution. What do you think?
|
|
|
|
BkkCoins
|
 |
September 20, 2012, 09:28:36 PM Last edit: September 20, 2012, 09:49:07 PM by BkkCoins |
|
I'm now not sure how to solve this. Is this an issue with your code specific? An other option to solve this would be to "upgrade" the default_options on each launch. Check if the default have more then the current, merge the default into the config file but don't overwrite existing options. I think this would be the best solution. What do you think?
Oh yes, I always had a config.json created by the updated SimpleConfig here. I can fix this and will do it shortly. SimpleConfig just needs to start with the default dict before loading a user one from disk as this will always make sure when it saves that it upgrades users with any new variables. Edit: Done. Tested and pushed to my fork.
|
|
|
|
BkkCoins
|
 |
September 20, 2012, 09:58:14 PM Last edit: September 20, 2012, 10:11:46 PM by BkkCoins |
|
Even if this were figured out and coded I'd be opposed to merging it in. I think it's an extremely bad idea that will only lead to weakening Bitcoin and create more confusion. Users who want this should use their own fork with the feature and it shouldn't be part of the default client. IMO. But I'm new here on Electrum.
|
|
|
|
marcus_of_augustus
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
 |
September 21, 2012, 01:44:28 AM |
|
Bkkcoins : "does Tor run with SOCKS proxy?" ... yes, SOCKS5 is required for compatability with latest releases of Tor.
Also, thanks for fixing that bug with not recreating a wallet when off-line. I saw that once and it unnerved me a lot but I couldn't reproduce it (must have been particular set of circumstances, offline, new wallet, no change addresses or something?) but it has stuck in back of my mind ....
|
|
|
|
BkkCoins
|
 |
September 21, 2012, 02:00:22 AM |
|
I've submitted a pull request for a small change that gives expert users an option to startup in "Pro Mode". My repo: bkkcoins/electrum branch: startup-gui-optionAdds settings dialog combo box for "Default GUI" that can be either Lite or Qt. Saves value as gui in config.json. 
|
|
|
|
Tachikoma
|
 |
September 21, 2012, 07:20:27 AM |
|
I've merged the offline wallet fix, I've commented on the "remember Gui" pull and I will check out the larger commits tonights and over the weekend. They can't be merged automatically so I want to be sure everything goes according to plan. The commits you have done did fix my config file issues 
|
|
|
|
BkkCoins
|
 |
September 21, 2012, 07:57:33 AM |
|
I've merged the offline wallet fix, I've commented on the "remember Gui" pull and I will check out the larger commits tonights and over the weekend. They can't be merged automatically so I want to be sure everything goes according to plan. The commits you have done did fix my config file issues  Thx. I have a branch in my fork called "merged" which has my branches all merged. There is only one conflict and that is when you merge the SimpleConfig defaults. Just a copy/paste to fix that up. I'm running my merged branch here as normal client. I had to go back and add a line to the setup to make sure the socks module got bundled in the dist pkg. Seems to install and work ok so far.
|
|
|
|
Tachikoma
|
 |
September 21, 2012, 03:25:27 PM |
|
Merged everything, just doing some final testing on a couple of my vm's before I merge everything back into master 
|
|
|
|
Tachikoma
|
 |
September 21, 2012, 03:52:02 PM |
|
Tested it on a clean Debian 6 system and on OS X 10.7 and it seems to be working. Before I merge it into master though I would appreciate it if there were some other people who could give it a quick run. It required some manual merging and that's always tricky. I previously made master unstable by merging too quickly and I would like to avoid that this time. The fully merged tree can be found on github. Thanks!
|
|
|
|
flatfly
Legendary
Offline
Activity: 1204
Merit: 1025
090930
|
 |
September 21, 2012, 04:03:21 PM |
|
Tested it on a clean Debian 6 system and on OS X 10.7 and it seems to be working. Before I merge it into master though I would appreciate it if there were some other people who could give it a quick run. It required some manual merging and that's always tricky. I previously made master unstable by merging too quickly and I would like to avoid that this time. The fully merged tree can be found on github. Thanks! Seems to work fine for me as well, on Win XP. I didn't test everything, though. If more people could give it a try as well, it would be cool. Things keep getting better and better!
|
|
|
|
Tachikoma
|
 |
September 21, 2012, 09:44:08 PM |
|
I've just finished an very, very initial implementation of multiple wallet support into the lite-gui.  There are some limitations at this point: - You will not be able to add new wallets via de GUI. Launch Electrum with -w ~/.electrum/wallet_name.dat to add one for now.
- It will only find wallets inside the default electrum folder. ~/.electrum on Linux/OS X
I will not be merging this into master anytime soon since these features add on the actual wallet files themselves. So if you want to help me test it / code review it please do this by checking out the feature/wallet-experiments branch from Github. Please backup your wallets if you do decide to help out  git checkout -b wallets origin/feature/wallet-experiments
Thanks in advance.
|
|
|
|
flatfly
Legendary
Offline
Activity: 1204
Merit: 1025
090930
|
 |
September 22, 2012, 09:09:13 AM |
|
For those interested in using Electrum over Tor: just configure your Electrum proxy settings as follows (and of course, Tor needs to be installed first):  Note: I haven't had a chance to test this myself yet - can anyone try it out?
|
|
|
|
BkkCoins
|
 |
September 22, 2012, 12:14:27 PM |
|
In case anyone wonders the SOCKS5 proxy default setting is that DNS lookups go thru the proxy as well so there shouldn't be local leakage. I coded support for multiple exchanges today. I'm currently testing it but looks ok so far. I re-organized exchange_rate.py as modules in an exchanges directory. The settings dialog lets you choose your preferred exchange a list built from module filenames, eg. Intersango, MtGox. Also can customize which currencies to cycle thru as well. This gives more flexibility for international users. Currently in bkkcoins/electrum multi-exchange branch. 
|
|
|
|
hazek
Legendary
Offline
Activity: 1078
Merit: 1003
|
 |
September 23, 2012, 12:55:02 AM |
|
I just wanted to pop in and say that this client is shaping up into a very nice tool and I hope you keep on going and add more features, polish it up and most of all make it as user friendly as possible. I'll be sending a small donation your way, so keep it up!
|
My personality type: INTJ - please forgive my weaknesses (Not naturally in tune with others feelings; may be insensitive at times, tend to respond to conflict with logic and reason, tend to believe I'm always right)
If however you enjoyed my post: 15j781DjuJeVsZgYbDVt2NZsGrWKRWFHpp
|
|
|
BkkCoins
|
 |
September 23, 2012, 06:29:04 AM Last edit: September 23, 2012, 07:08:38 AM by BkkCoins |
|
I just wanted to pop in and say that this client is shaping up into a very nice tool and I hope you keep on going and add more features, polish it up and most of all make it as user friendly as possible. I'll be sending a small donation your way, so keep it up!
I've got 4-5 small tweaks staged here waiting to submit. See bkkcoins/electrum branch, merged-2 eg. select exchange for balance display choose currency symbols you want to cycle thru lite mode settings menu item red ink debit transactions in history confirmations as tooltip for history scalable, centered QR code I was thinking of a feature that allows you to show a QR containing a signed transaction. Then you could grab your phone with Electrum and snap it and send without ever physically moving anything from offline machine to net-connected machine. Truly an "air-gapped" process. This could maybe also be done for creating a new deseeded wallet with view-only addresses from an offline wallet. Making it easier to use an offline wallet. I don't have a smart phone here so I wouldn't be able to test it, lol. But if this sounds useful I'd be interested in coding it up.
|
|
|
|
marcus_of_augustus
Legendary
Offline
Activity: 3920
Merit: 2349
Eadem mutata resurgo
|
 |
September 23, 2012, 07:21:06 AM |
|
I was thinking of a feature that allows you to show a QR containing a signed transaction. Then you could grab your phone with Electrum and snap it and send without ever physically moving anything from offline machine to net-connected machine. Truly an "air-gapped" process. Intriguing, I like how you're thinking .... Amoury (and any off-line wallets that can sign) might be interested in this feature also.
|
|
|
|
flatfly
Legendary
Offline
Activity: 1204
Merit: 1025
090930
|
 |
September 23, 2012, 09:12:13 AM |
|
I was thinking of a feature that allows you to show a QR containing a signed transaction. Then you could grab your phone with Electrum and snap it and send without ever physically moving anything from offline machine to net-connected machine. Truly an "air-gapped" process. Intriguing, I like how you're thinking .... Amoury (and any off-line wallets that can sign) might be interested in this feature also. All I can say is I'm real glad BkkCoins is taking strong interest in contributing to Electrum and will quickly become an invaluable asset to the "team"... 
|
|
|
|
|