Author

Topic: Armory - Discussion Thread - page 212. (Read 521829 times)

hero member
Activity: 742
Merit: 500
March 15, 2012, 04:30:02 PM
It will probably never be able to reach the speed of the compiled C++ daemon.
I'm also uncomfortable seeing Red Emerald compare Armory with bitcoind: "[...] Armory will be far better than bitcoind." That is like comparing apples to oranges. It does not compute.

If you would like to continue this discussion, please create a new topic, or send me a PM. I feel at least I've littered this thread enough. Sorry!
Once armory can handle the block chain without bitcoind and has a JSON-RPC, it won't be apples to oranges any more...
hero member
Activity: 560
Merit: 501
March 15, 2012, 04:27:17 PM
How's about you go back 5 posts and read the authoritative answer on
the topic.
I see the post on the JSON-RPC interface, and apologize for not noticing it earlier. See below on how my point regarding a merchant-specific API still stands.
Perhaps I was not clear on this earlier.

Also: there's a whole host of features in Armory that would be essential
on a merchant site : offline txs and multi-wallets to name a few.
Offline wallets are useful to merchants, but would obviously never be connected to the website directly. I never said Armory wouldn't be useful to merchants, I said I believed it would never (never is a strong word, let's say "in the near future") have an API for merchant-specific interaction.

So, next time, get brain in gear before dumbly applying pressure
to caps lock key.
Ad hominem attacks? Classy!



I feel we are digressing from the topic on hand, but I'd like to sum up by saying that, and this is with etotheipi's own words, that Armory is a "client". It is not a daemon. It is not a server. It is a client. While it may be or become useful to merchants, it is, in its current incarnation, a client.

It will probably never be able to reach the speed of the compiled C++ daemon.
I'm also uncomfortable seeing Red Emerald compare Armory with bitcoind: "[...] Armory will be far better than bitcoind." That is like comparing apples to oranges. It does not compute.

If you would like to continue this discussion, please create a new topic, or send me a PM. I feel at least I've littered this thread enough. Sorry!
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 15, 2012, 04:24:32 PM
99% agreed, with the caveat that point 1 will be 100% true the
moment etotheipi plonks an mmap('blk0001.dat') somewhere in
there: right now, anything that gobbles up 1.5G or RAM to send
one BTC isn't usable in the real world.

It's not quite that simple, but it's close.  I already got this working in the mmap branch in Linux and started testing on a Ubuntu 10.04 VM with 1GB of RAM.  But I got a bit more testing there, and get it ported to Windows, too (requires a preprocessor branch).   Hopefully I'll have all that done and implemented in the next month!
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 15, 2012, 04:17:23 PM
As mentioned, there is a hard plan to make Armory accessible:  both through the python library, and as a daemon accessed via JSON interface.  I just haven't gotten there yet:  I'm a one-man show with way too many things currently labeled "high priority."  It was one of my top goals to encourage business adoption, so giving merchants the opportunity to hook into Armory and leverage the split wallets is a high on my list.  But reducing the RAM is even higher...

It's coming, it's just not there yet.  Until then, it will be "just a client."

Has anyone tested the new wallet migration tool?  I need some feedback before I go ahead an lock it in.  If you are willing to help test, just import the addresses into a new wallet and then remove/delete the wallet when you are done testing.  And, I know there are users out there who have been waiting for this feature!  Use it!

hero member
Activity: 742
Merit: 500
March 15, 2012, 04:11:58 PM
It will.
It doesn't as of now.
Case in point: no API, can't be used on a merchant site
It's a CLIENT. I dare say Armory will never have an API for merchant interaction.

As smart as ever tibbsy.


How's about you go back 5 posts and read the authoritative answer on
the topic.

Also: there's a whole host of features in Armory that would be essential
on a merchant site : offline txs and multi-wallets to name a few.

So, next time, get brain in gear before dumbly applying pressure
to caps lock key.


As a client, Armory is more feature rich than the Satoshi client (Bitcoin-QT).  Armory definitely does a better job explaining what all the buttons do.

As an automated backend for a merchant site, Armory needs more work.  Once there is a JSON-RPC, Armory will be far better than bitcoind.
hero member
Activity: 560
Merit: 501
March 15, 2012, 03:54:17 PM
It will.
It doesn't as of now.
Case in point: no API, can't be used on a merchant site
It's a CLIENT. I dare say Armory will never have an API for merchant interaction.
hero member
Activity: 742
Merit: 500
March 15, 2012, 03:35:56 PM
Armory is getting dangerously close to being useful Smiley
And the insult of the year award goes to... znort987!

Not meant as an insult in any way.

Great potential, great and fast progress, but as
of today, featurewise, not yet a match for the
satoshi client.


What?  I'd say it smashes the satoshi client featurewise. 
+1

hero member
Activity: 798
Merit: 1000
March 15, 2012, 03:31:41 PM
Armory is getting dangerously close to being useful Smiley
And the insult of the year award goes to... znort987!

Not meant as an insult in any way.

Great potential, great and fast progress, but as
of today, featurewise, not yet a match for the
satoshi client.


What?  I'd say it smashes the satoshi client featurewise. 
hero member
Activity: 560
Merit: 501
March 15, 2012, 02:26:50 PM
Armory is getting dangerously close to being useful Smiley
And the insult of the year award goes to... znort987!
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 15, 2012, 01:53:48 PM
Armory version 0.60-alpha-RC1  (Release Copy)! 

Please help test 0.60 so I can make it an official release!

Changelog:

Due to popular demand, and I created a "Wallet Migration" tool to migrate all of your regular [Satoshi] Bitcoin client wallet files to an Armory wallet.  I have donated 5 BTC to Joric  for providing his pywallet code as public domain!!!   Using pywallet, I was able to figure out how to read and extract private keys from any wallet.dat, even encrypted wallets.  I got a full, catch-most-kinds-of-errors interface integrated into Armory.  I have been testing this all morning and it's been working beautifully!  You can access it through the "Import Wallet" dialog, or through the new "Wallets" menu on the main screen.



NOTE:  PLEASE BACKUP ALL WALLETS BEFORE USING THIS NEW FEATURE!!!  (both, wallet.dat and Armory wallets)

You can import all the private keys into an existing wallet, or it will create a new wallet for you.  It will check for duplicate addresses (in case another Armory wallet already has some of those addresses), and it will prompt you for encryption passwords for wallet.dat and/or your target Armory wallet, if necessary. 

Additionally, added a few other minor updates, such as the "Wallets" menu on the main screen, and displaying address comments/labels on the main ledger if there is no transaction transaction comments.

legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 15, 2012, 12:24:16 PM

So ... another quick & silly question about Armory

Is there an API ?

Other way to put it: can I get a running version of Armory to execute transcation
by sending it commands from the shell ?

Thx


Negative. For now it's just a straight client without any ability to communicate with it outside the UI.   However, it is a medium-term goal to implement a JSON-RPC interface to it, just for that reason.  I want developers to be able to leverage Armory (especially watching-only) wallets without having to integrate armoryengine code.

On the other hand, the armoryengine code is not too difficult to integrate into python scripts:  i.e. loading the blockchain, creating wallets, searching for transactions, getting balances, sending transactions, getting zero-conf transactions.  It's not exactly what you're looking for, but it's not terrible, either.  If you (or anyone else) is interested in using it, let me know and I'll create some code samples tailored to your use-case.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 13, 2012, 11:34:36 PM
Was working on MacOS fine. (although a mesmerizing pain to compile).

After a git pull.. not anymore.

Updating b044181..554f8d6
Fast-forward
 ArmoryQt.py     |    2 +-
 armoryengine.py |   15 +++++++++------
 2 files changed, 10 insertions(+), 7 deletions(-)


Traceback (most recent call last):
  File "ArmoryQt.py", line 39, in
    from armoryengine import *
  File "/Users/m3ta/BitcoinArmory/armoryengine.py", line 123, in
    BTC_HOME_DIR    = os.path.join(USER_HOME_DIR, 'Bitcoin', SUBDIR)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/posixpath.py", line 68, in join
    elif path == '' or path.endswith('/'):
AttributeError: 'NoneType' object has no attribute 'endswith'

This is a most-intriguing error.  That code wasn't touched at all, nothing even tangential was touched. 

What's more interesting is that if you are using the master-branch armoryengine.py, then line 123 actually corresponds to the "if OS_WINDOWS:" code block.  For some reason, your OSX machine is being detected as Windows...?  For fun, can you go into the python interpretter and type the following:

Code:
>>> import platform
>>> platform.system()

What does it say?  Mine says "Linux" because I'm in Ubuntu.  I don't even know what Mac is supposed to say, it was a Mac user that told me to look for "darwin" or "osx" to identify Mac...

sr. member
Activity: 435
Merit: 250
March 13, 2012, 11:26:03 PM
Was working on MacOS fine. (although a mesmerizing pain to compile).

After a git pull.. not anymore.

Updating b044181..554f8d6
Fast-forward
 ArmoryQt.py     |    2 +-
 armoryengine.py |   15 +++++++++------
 2 files changed, 10 insertions(+), 7 deletions(-)


Traceback (most recent call last):
  File "ArmoryQt.py", line 39, in
    from armoryengine import *
  File "/Users/m3ta/BitcoinArmory/armoryengine.py", line 123, in
    BTC_HOME_DIR    = os.path.join(USER_HOME_DIR, 'Bitcoin', SUBDIR)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/posixpath.py", line 68, in join
    elif path == '' or path.endswith('/'):
AttributeError: 'NoneType' object has no attribute 'endswith'


legendary
Activity: 1133
Merit: 1050
March 13, 2012, 11:00:16 AM
We've set up a Project Page for your exciting project! Hopefully it'll help you get even more traffic before the 18th.
https://litebit.co/project-item/armory/
legendary
Activity: 980
Merit: 1008
March 12, 2012, 11:57:55 PM
^ Cool. The computer hasn't gone offline yet. So it should be easy to clone from master.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 12, 2012, 11:47:58 PM
^ Is there a stable Linux version to put on an offline machine somewhere? I can only see instructions on building from git with Linux. Is this as good as the official releases?

Yes, the master branch is always the latest, stable, release.  By running those six commands while internet connected, Armory will be fully ready to run.  If your computer started as an offline computer, then you might have to move some packages over -- I know there's a way to provide a list of packages on the CLI and it will download all of them plus dependencies, to be taken to an offline computer, but I don't remember what it is. 

Alternatively, you could compile it on any system of the same architecture, and then transferred (really, the only thing that needs to be compiled and transferred is the _CppBlockUtils.so and CppBlockUtils.py).   I was overly concerned about binaries being a hassle to produce and then ultimately not working on all Linux systems.  But now I see that creates a problem for those that would use Armory on an already-offline Linux system...

I'll see what I can do about packaging up the linux stuff, one for 64-bit and one for 32-bit, and others can try it and report whether it works.
legendary
Activity: 980
Merit: 1008
March 12, 2012, 11:38:14 PM
^ Is there a stable Linux version to put on an offline machine somewhere? I can only see instructions on building from git with Linux. Is this as good as the official releases?
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
March 12, 2012, 11:06:53 PM
Hi etothepi,

I just tried my first offline broadcast (0.55 online PC, 0.50 offline PC) and happy to say it worked perfectly Smiley    I did get a message that the txn had not been broadcast to the network, but I instantly saw the txn reported by the wallet I sent it to so I know it worked.

Well done, very impressed Smiley

Fantastic!  Update your online Armory to 0.56 (just released yesterday) and the send-tx error will go away. 

I'm so happy to see more people trying it out -- and especially having it work!
hero member
Activity: 798
Merit: 1000
March 12, 2012, 10:48:55 PM
Hi etothepi,

I just tried my first offline broadcast (0.55 online PC, 0.50 offline PC) and happy to say it worked perfectly Smiley    I did get a message that the txn had not been broadcast to the network, but I instantly saw the txn reported by the wallet I sent it to so I know it worked.

Well done, very impressed Smiley
newbie
Activity: 39
Merit: 0
March 12, 2012, 12:56:32 PM
Thank you so much for the quick solution, used "-noblockchain" instead of "--noblockchain", now its working fine so far.

Find "support fee" on your address  Wink
Jump to: