00:09:29 "Although from one point of view,..." <- Any change to cryptography falls into this category. But for some reason bulletproofs+ are not protected by experimental flag. Inconsistency is everywhere 00:12:18 "let's improve it" <- The best time is before or after hardfork ? 00:20:53 Ooo, being angry doesn't get us anywhere. 00:20:54 You know the answer to that question is "as soon as someone improves it" 00:22:41 "on a related note, improving..." <- `dedicated_maintainer = random.choice(monerokon.members)` would it work ? 00:24:53 Propose a solution or a direction towards one 00:25:26 The opposite doesnt help. Its like telling a fish that it is wet. 00:37:39 "https://github.com/monero-project/monero/pull/7760#issuecomment-1144626397", "Just that it turned out to be a dead end, only speaks for him, that he can think self-critically, and not that I'm not helping." incompetent developer justify blind approve by saying that PR author can think self-critically; facepalm 01:24:08 .merges 01:24:08 -xmr-pr- 8296 01:52:31 is there a Monero node service?? 02:24:37 i need to get UTXOs 02:29:45 MeowingCat: there are remote nodes volunteered by community members (and possibly malicious actors) 02:30:09 or you could be your own node... 02:31:19 i will setup a node but i need one to test rn 02:31:34 im working on building and signing transactions 02:31:59 Some good resources here MeowingCat https://community.rino.io/ 02:33:51 looooooking thank youuuuuu 02:33:53 .merge+ 8358 8357 8356 02:33:53 Added 02:34:17 ohhh damnn 02:34:24 this is a node 02:34:54 i hope there is an RPC server like BTC 04:20:45 isn't there a Monero RPC server i can use??? 04:24:20 MeowingCat: you have to be more precise with what you are looking for 04:25:20 there is an RPC service in Monero client 04:25:34 buttt is there an online service that i can use rn 04:25:51 i didn't setup my own Monero node yet 04:26:09 i need to get Monero UTXOs (on testnet) 04:44:42 https://monerodocs.org/interacting/monero-wallet-rpc-reference/#daemon-node 04:55:27 HenryHollingwort, is there an online service for tesnet??? 04:56:55 run the wallet rpc server locally and connect to testnet daemon right? 04:57:15 use testnet faucet if you want txmr 04:57:15 but i need to download all blockchain 04:57:26 no 04:57:30 ohh 04:57:38 how?? 04:58:10 There's a big list of nodes here, including stagenet and testnet: https://monero.fail/ 04:58:12 wallet rpc server ---internet---> [daemon { blockchain} ] ---> peers 04:58:48 ummm 05:00:07 you run wallet rpc locally and point it at a public (or local) daemon 05:01:35 ohh got it 05:01:37 okiiiii 05:25:01 Hi MeowingCat , 05:25:01 We have #monero channel for this :) 10:47:43 Hi everyone! How would you go about integrating a front end application with Monero? Monero doesn’t have an API, right? 10:54:02 It does have an API: https://www.getmonero.org/resources/developer-guides/wallet-rpc.html 10:56:40 There's also a number of higher level APIs, see the monero-ecosystem github user. Also, "monero integrations" for really high level (as in, plugins for a number of online shop software). 11:12:02 "It does have an API: https://www..." <- Thanks. I guess I missed it. 12:17:14 "Hi everyone! How would you go..." <- if you want to get started quickly you can just fork this repo. I collected some scripts there to play around with the wallet rpc https://github.com/spirobel/monero-playground 12:18:16 you can also take a look at https://moneropay.eu/ people work on making the wallet rpc more stable and accessible. 12:19:39 but probably still good to play with the wallet rpc so you get a feel for it. https://github.com/monero-ecosystem/monero-javascript is also very good. 12:22:50 and also maybe read cryptogrampy s hotshop source code if you are into typescript. https://github.com/CryptoGrampy/HotShop 15:44:03 weird. CI is failing to compile my last push to #7774 but it compiles fine on my ubuntu laptop 15:49:39 "Hi everyone! How would you go..." <- spirobel: already linked to my HotShop project, but it's essentially an in-browser view-only web-wallet that talks directly to public (web-compatible) Monero nodes. 15:51:24 can anyone tel me Monero's transaction struct 15:51:35 struct monero_tx { 15:51:35 char* m_address; 15:51:35 uint64_t m_amount; 15:51:35 monero_dest* m_destinations; 15:51:35 char* m_payment_id; 15:51:36 priority m_priority; 15:51:38 uint32_t m_ring_size; 15:51:40 uint64_t m_fee; 15:51:42 uint32_t m_account_index; 15:51:44 uint32_t m_subaddress_indices[]; 15:51:46 uint64_t m_unlock_height; 15:51:48 bool m_can_split; 15:51:50 bool m_relay; 15:51:52 char* m_note; 15:51:55 char* m_recipient_name; 15:51:58 uint64_t m_below_amount; 15:52:00 bool m_sweep_each_subaddress; 15:52:02 char* m_key_image; 15:52:04 } 15:52:06 (sorry for multiline) is this correct?? 15:52:31 this is what i understand from Monero source 15:54:32 that's what pastebins are for. if it's in the source, then it is correct. 15:54:54 i have to be sure :( 15:55:15 because im still dealing to build a correct transaction 15:55:30 wrap your code in ``` ``` or use pastebin 15:55:42 this thing loooks like something different 15:55:55 something like a command for another interface 15:56:12 chesterfield[m], okiiiiii 15:56:50 no, never do multiline pastes, quoted or not. just use pastebin. 15:56:59 For some reason `-DCMAKE_EXPORT_COMPILE_COMMANDS=ON` isn't exporting anything for the tests folder... anyone have any clues what I should do? Apparently it used to work, but who knows what I did... 15:57:02 i just need memory representation of a transaction 15:57:13 like C types or byte lengths and damn endiannes 15:57:43 MeowingCat: for serialization? 15:58:02 in this context serialization means encoding the transaction as hex 15:58:04 i think 15:58:22 i will serialize it and send to RPC server 15:58:29 after signing 15:58:41 im making a C# library for our thing also 15:59:04 just transaction building/signing is left 15:59:13 has anyone tried to call libwallet API from Rust using CXX ? 15:59:34 please anyone tell me Monero's transaction struct :((((((((((((((((((((((((((((((((((((((((((((((((((( 15:59:58 MeowingCat: you probably want to check cryptonote_basic/cryptonote_basic.h class transaction; 16:00:21 UkoeHB, looooooking thank youuuu <3 16:01:50 i really don't understand why this source is like this 16:01:59 everything could be more understandable 16:02:04 with just C 16:02:12 just a struct and serializing it is very simple 16:02:16 using C++ was definitely a poor choice 16:02:22 :(((((( 16:02:29 but it's what we inherited from cryptonote 16:02:54 no one has the time to rewrite it all in plain C 16:03:28 i understand Monero software has tons of stuff and using tons of libraries for them and all of things is very complicated and toooooo mcuh work to implement 16:03:40 but C++ and ridicilious design patters makes everything worse 16:04:03 yep. totally agreed. 16:04:18 im really happy to see an intelligent person 16:04:32 ok found my problem, generating the build tree with `cmake -B build -S . -D_....` was the wrong choice, I just need to rely on `make`... 16:08:30 UkoeHB, there is no any transaction struct here :((((( 16:09:37 is `transaction` class the thing that is being serialized???? 16:10:02 and holds things about the transaction?* 16:11:21 yep pretty much 16:12:02 has to all be crunched by a bunch of libboost serialization code 16:12:11 PITA to pot to other languages 16:12:16 port* 16:14:39 UkoeHB, this is making me cry 16:14:58 just 5-10 lines 16:15:12 that tells the memory representation of a transaction 16:15:16 MeowingCat: dealing with monero code requires time and patience, no way around it 16:16:39 We really need a proper protocol spec, written in BNF 16:17:18 might be worth putting up a bounty for that 16:17:56 If you do, it should include a requirement for tests that pass every tx in the chain. 16:18:29 makes sense 16:18:56 Well, not every one since it'll have to be done manually I guess. But a sample of known txes that exercise various stuff. 16:18:57 moneromooo: easy enough `bool validate_tx_test(const cryptonote::transaction &tx) { return true; }` :p 16:20:08 however, it would be good to get a parallel tx validator that can be manually validated 16:20:34 i derived things 16:20:45 isn't that python project already doing that? 16:20:52 pub/sec spend/view keys, pub address 16:21:03 MeowingCat: you can look at the json representation to get started, although idk about the wire format 16:21:29 does RPC service accept JSON? 16:21:39 i will just UTXOs 16:21:43 get* UTXOs* 16:21:58 build and sign transaction and broadcast 16:22:23 sounds like you're reimplementing libwallet 16:22:41 yess im making a C# library 16:22:51 i will use that in the app im making 16:23:44 im using C# because Godot has Mono and it is cross-platform with Godot 16:27:36 https://developer.bitcoin.org/reference/transactions.html, 16:27:45 i need an explaination like thissssss 16:28:03 hyc: yeah the python library is https://www.moneroinflation.com/, although there is no spec to match against 16:28:27 MeowingCat: sounds like something you could work on 16:28:46 :(((((((((((((( 16:29:23 please someone stopp C+++++++ and design patterns shits 16:33:27 CI macos build fails due to not finding OpenSSL 16:33:47 CI windows build fails due to no def of std::numeric_limits ? 16:34:29 https://github.com/LMDB/bitmonero/runs/6727281816?check_suite_focus=true#step:5:1163 16:35:32 not giving me warm fuzzies here 16:37:34 MeowingCat: for the next gen protocol, I'm trying to do things a little more cleanly (not that it helps you :p) https://github.com/UkoeHB/monero/blob/9e185b1328e52e10dc74d9b4899bce2b98d2f234/src/seraphis/txtype_squashed_v1.h#L70 16:39:26 loooooking 16:41:19 UkoeHB, is this a transaction structure? 16:41:31 yes 16:43:27 m_input_images, m_outputs, m_balance_proof, m_image_proofs, m_membership_proofs, m_supplement, m_fee, m_tx_semantic_rules_version 16:43:52 i need to build the transaction with these??? 16:44:27 what does "input_images" mean? 16:44:31 For seraphis you would, it's experimental and WIP. The current protocol has similar components. 16:44:45 is "m_outputs" UTXO inputs???? 16:46:04 Input images are masked versions of the real inputs you are spending (including the key image). Outputs are the literal outputs - the new enotes (aka UTXOs) created by the tx. 16:47:14 monero has a lot of cryptography, so there is a lot more in a monero tx than a bitcoin tx 16:49:18 you're probably better off using a foreign function interface and calling monero libwallet from your app 16:50:08 would be a waste of time to implement all of the crypto mechanisms from scratch in C# 16:50:12 yeah, there's a good reason no one has every written a full third-party monero wallet 16:50:16 ever* 16:51:21 even if it was easy to do it wouldn't be a good idea. would make fingerprinting possible. 16:52:38 most of that can be avoided with strict semantic rules 16:52:52 although decoy selection is a weakness 16:53:11 decoy selection, fees, and tx extra 17:07:27 "even if it was easy to do it..." <- I disagree. Any activity which exposes weaknesses is a great idea. Such endevors would hasten the development of a more secure specification. 17:08:50 That... is a fair point. 17:09:15 Where it gets dicey is for monerod. 17:09:24 Shoutout to dangerousfreedom here :D 17:09:39 I think that's a good sweet spot. 17:16:53 yeah I suppose if we actually had detailed protocol specs it would be viable 17:17:31 so that is clearly the next step before one can safely create a new implementation 17:17:34 This week I almost had a heart attack. I had scanned 200k borromean signatures and suddenly one failed. I tried to rewind the blockchain to print exactly what was happening but it was faster to start from 0, when I reached my desired tx, I printed every point multiplication and realized it was an error in my code. The scalar reading was not reading the same value as it was in the blockchain. I still don't know why because it has 17:17:34 worked for hundred of thousands of txs... I will take a look another time :p 17:17:56 lol 17:18:58 and with some languages (e.g. javascript) having completely braindead data types and arithmetic behaviors, even a precise spec may not be enough 17:19:15 or you have to define the spec down to the behavior of basic arithmetic ops 17:41:16 MeowingCat: on deeper thought, fully reimplementing monero txs in C# is a huge job. You'd need to implement both CLSAG and bulletproofs(+), in addition to output scanning, tx building logic (there are non-trivial details e.g. decoy selection, fee calculations, when and how to make special change outputs...), etc. Wrapping monero libwallet seems like your best bet. 17:41:41 :(((((((((((((((((( 17:41:58 i will get UTXOs with sending private view key to our node 17:42:13 You didn't want to read Zero to Monero, but it is a long book because there are a lot of complicated things to think about. 17:42:22 does that need something that i can't get from RPC service??? 17:43:09 i think the important question is thissss 17:43:24 does building a transaction need something that i can't get from RPC server? 17:43:26 like monero-lws? https://github.com/vtnerd/monero-lws 17:43:35 You can do pretty much everything from RPC. It depends how low level you want to go. See the functional tests for what can be done. This is all done via RPC. 17:43:55 But "biulding a transaction" here is "please send N to address A". 17:44:03 the only thing i can send to RPC server is private view key 17:44:26 The RPC server would have your secret keys in the first place. 17:45:04 But I concur with "Wrapping monero libwallet seems like your best bet". 17:46:12 MeowingCat: https://moneroecosystem.org/ 17:46:28 you mean i can't build a transaction with things from Monero's RPC server with just sending private view key??? 17:47:35 Correct. If you could build a valid tx without the private spend key, I think it might lead to pessimal action on chain... 17:48:17 nooooooooo 17:48:25 i don't mean that :(((((((((((((( 17:48:44 i just need to build a transaction without sending private spend key anywhere 17:48:55 i can send private view key to RPC server 17:48:59 and get UTXOs 17:49:10 and whatever i need 17:49:18 then build and sign a transaction 17:49:24 Wait. I might have assumed too much: 17:49:36 just like MetaMask 17:49:55 MeowingCat: did you hear me? To build a transaction, you need to implement all the monero cryptography. This is months of work. 17:50:10 In the case I envision you in, you'd have two pieces of software: 17:50:13 - monero-wallet-rpc 17:50:21 - your own software 17:50:32 monero-wallet-rpc would (1) have the spend key and (2) build transactions 17:50:48 The side which builds the tx obviously needs the spend secret key. 17:50:58 UkoeHB, whyyyyy it is just a simple thing what do i need else than UTXOs??? 17:51:07 cryptography 17:51:22 Now, what was suggested above (wrapping wallet2) means those who pieces of software would merge into one. 17:51:40 all this stuff: https://github.com/monero-project/monero/tree/master/src/ringct 17:51:57 Then you would not need to send the spend secret key anywhere, since you'd make the tx. I'm sorry if I'm getting the wrong idea, it's not qiute clear to me which case you're in. 17:52:38 But when I said "Correct. If you could build a valid tx without the private spend key, I think it might lead to pessimal action on chain...", I meant "if another piece of software is gonna build the tx, it's gonna need the spend key". 17:53:02 I was assuming you'd talk to monero-wallet-rpc here, which needs the spend key (and already has it). 17:53:27 yesss 17:53:29 It's the same for bitcoin fwiw. I assume. You need the spend key to create a tx. 17:53:48 Well, the key. They have just one for view and spend AIUI. 17:53:52 i mean the client appp im making has private spend key and needs to build and sign a transaction 17:54:06 So you have two main solutions: 17:54:21 how much different a Monero transaction than Bitcoin transaction?? 17:54:24 1: run monero-wallet-rpc on the side, which has the spend and view secret keys, and you direct it to create txes 17:54:49 MeowingCat: the difference is enormous 17:54:51 2: add FFI to wallet2 and call those directly from your process, keeping spend and view secret keys in that process 17:54:57 doesn't monero-wallet-rpc thing need to send private spend key to RPC server? 17:55:18 MeowingCat: in monero, the RPC server is just a wallet interface 17:55:33 monero-wallet-rpc IS the RPC server. 17:55:45 yesssss it is just an interface to use Monero appppp 17:55:58 Well, there areo two RPC servers. The wallet's and the node's. The node will never need your keys. 17:56:11 That might be the cause of a misunderstanding :) 17:56:21 and in this context the thing that builds and signs transactions is Monero software 17:56:40 "Monero software" is not precise enough here. 17:56:57 i mean private spend key can't get out from user's wallet 17:57:16 It does not need to leave monero-wallet-rpc's process. 17:57:27 really??????? 17:57:57 The process that creates the tx needs it. No other one does. 17:59:26 im confuseddd 17:59:28 :(((((((((((((( 17:59:34 i need to drink cola 18:00:26 I think the confusion might have been from me assuming you had some software which had the spend secret key, *plus* moneor-wallet-rpc, which will also need to know it. 18:00:54 But your software does not have to know it, unless you want it to know it for other reasons (eg, creating it in the firts place). 18:01:42 the wallet im making has all keys 18:01:59 and should not send private keys except private view key 18:02:34 you mean monero-wallet-rpc thing doesn't need to send private spend key and can send transactions????????????????????????? 18:02:37 Then the process creating that wallet will know the keys. If it's monero-wallet-rpc, you're good. 18:02:47 No, I am sauing the opposite :S 18:03:03 im confusedddddddddd 18:03:05 the process is 18:03:29 you mean processsssss??????? 18:03:53 Mayyyybeeeeeee 18:03:58 im deriving keys in C# 18:04:00 lmao 18:04:06 i can just pass them to monero-wallet-rpc thing 18:04:22 and do you mean that can send transaction without sending private spend key anywhere?????? 18:04:22 You will have to, unless you reimplement most of wallet2. BUT: 18:04:36 Can you get away with letting monero-wallet-rpc create hte keys for you ? 18:04:46 ohhhh 18:04:48 If you can, then only one process will ever know the keys: monero-wallet-rpc. 18:04:51 why does it matter?????? 18:04:58 private keys are in the processssssss 18:05:02 i meannn 18:05:05 Which processssss ? 18:05:16 :((((((((((((((((((((( 18:05:18 client process 18:05:19 !!!!!!!!!1 18:05:32 user's wallet appppp 18:05:41 That's your C# code ? 18:05:45 yesssssss 18:05:58 just like MetaMask 18:05:58 (Your keyboard's fucked btw) 18:05:59 it is same 18:06:07 (or, if not your keyboard, some wetware) 18:06:13 Anyway, to recap: 18:06:19 wdymm?? 18:06:22 1: whatever creates the txes must have the spend secret key 18:06:55 2: if you want just one proicess to have the spend secret key, it'll have to be hte same process that creates the txes 18:07:27 3: so either FFI wallet2 to merge C# and wallet2, or have your C# process ask monero-wallet-rpc to create the keys itself 18:07:31 Is that clear ? 18:07:32 i mean does wallet-rpc thing create transactions and sign with private spend key or send transaction information and private spend key for the RPC server to build and sign? 18:08:32 monero-wallet-rpc creates transactions and signs them with the private spend key. monero-wallet-rpc is a RPC server and so doesn't need to send itself the keys, it already has them. 18:08:48 If by "the RPC server" you mean monerod, the monerod does not need the secret keys. Ever. 18:09:01 ohhh 18:09:03 i thought 18:09:04 you mean 18:09:11 https://github.com/monero-ecosystem/csharp-monero-rpc-client 18:09:16 this thing with monero-wallet-rpc 18:10:08 this thing doesn't do that right? 18:10:23 I do not understand that question, it is too vague. 18:10:44 (rephrase with more specificity) 18:10:49 okiii 18:11:02 does this lib: https://github.com/monero-ecosystem/csharp-monero-rpc-client 18:11:19 build and sign a transaction without sending private spend key?? 18:12:26 I do not know that lib, but from the name it's probably something that sends RPC. As such, it would not have access to the secret keys. 18:12:36 That is my ASSUMPTION from the name only. 18:13:23 i think it is sending private spend key :(((((((( 18:13:39 If my above assumption is correct (it might not), then it would not build and sign a tx, it would ask a running monero-wallet-rpc client to do so. 18:14:10 If my assumption is correct, it would not send the secret spend key. monero-wallet-rpc would have it already in the first place. 18:14:30 (and the process using https://github.com/monero-ecosystem/csharp-monero-rpc-client would NOT have it) 18:14:47 Again, this is all based on my ASSUMPTION based on the name of that project. 18:14:59 If someone actually knows that project, they can speak with authority. 18:15:38 :((((( 18:15:41 thank you alllll 18:15:52 Also, as said above, you can bypass all this by calling wallet2 directly (that's what I'm doing with Townforge, the wallet that uses the urho3d game engine). 18:16:15 It's simpler, only one process has the keys. 18:17:07 But if you don't, you can still ensure only one process (monero-wallet-rpc) has the keys. You just need to ask monero-wallet-rpc to create the keys for you, instead of creating them with your C# code. 18:17:34 In all cases, monerod never sees those keys. 18:34:42 I know that lib, https://github.com/monero-ecosystem/csharp-monero-rpc-client. It's just monero-wallet-rpc calls turned into C# calls. A mere wrapper. 18:35:03 I use that extensively for my web wallet 18:36:18 Like we have other such wrappers e.g. for Python 18:37:03 Or Java. Or JavaScript. 18:46:45 "using C++ was definitely a..." <- not using rust was a poor choice :( 18:47:24 if the rewrite-in-c crowd gains more traction that the rewrite-in-rust crowd, i'm suggesting rewrite-in-elixir just so no one's happy with what language we're working with 18:47:35 :P 18:49:09 All jokes aside, I do believe C++ was the right choice for a piece of code like this. I believe C++ can be much easier to wield as Monero needs than C, even if C is simpler in a lot of regards. I'm also scared to think of the amount of memory we'd be dealing with in C. While I understand memory can be, and is, used properly, I legitimately believe a C implementation would have less developers participating. 18:49:15 I dunno, GW-BASIC has the advantage of being pretty old, so lots of time for review. It's probably the safest. 18:49:24 Let's rewrite it in GW-BASIC. 18:49:26 concept ack 18:49:37 can you have a prototype by monday? 18:49:57 Fuck no. 18:50:04 preferably with seraphis so we don't add delays there, and also with quantum security because might as well if we're rewriting 18:50:08 boooo 18:50:31 GW-BASIC is such an old, safe language, it needs careful implementation. 2062 earliest. 18:50:32 But direct and honest :p Thanks for always being yourself, mooo :) 18:50:39 I'll need a salary till then ofc. 18:51:01 and we can't expect results before then, so obviously it should be with tenure to ensure the 2035 community doesn't try to revoke it 18:51:38 I'll go beyond poke and hope, and enter to the poke and peek and hope epoch... 18:52:08 * moneromooo loves obscure references... 19:55:24 Is it possible to add more settings for localnode in advanced mode like in/out_peers , blocklist, db sync mode ? Same way like blockchain location is there 19:56:36 New users don’t find it easy to specify startup flags 19:57:30 All of these already exist as command line parameters. If you mean adding console commands, in/out peers exist, not the others. 19:57:54 IIRC blocklist was a bit annoying (I looked). db sync mode seems doable fairly easily. 19:58:06 Blockchain location, not without a restart. 20:13:04 is the inventor of this thing an alien? 20:14:30 yes 20:14:54 goooooooooooooooooooood 20:17:40 https://pastebin.com/wGT4i7x7 20:18:02 why everything about Monero (except itself) can't compile on anywhere???? 20:18:24 Monero's itself is interesting tooooo 20:18:32 im getting 1982319823918 warnings 20:19:03 and totally not portable or usable with anything :((( 20:19:21 Impressive. It'd take more than a terabyte even with one byte per warning. 20:20:04 :((( 20:20:08 "All of these already exist as..." <- Yep, but normal users can’t use cli that well 20:20:08 Sorry for posting here, was supposed to post in the gui channel 20:20:43 Ah, right. Dunno about the GUI then, sorry. 20:20:59 /mnt/c/proje/mymonero-core-cpp/contrib/monero-core-custom/epee/src/wipeable_string.cpp:147:67: error: ‘::max’ has not been declared; did you mean ‘std::max’? 20:21:10 that numeric_limits error sounds like what hyc was talking about 20:21:19 if this code is wrong how does it work in somewhere 20:21:27 that code is put of date at least 20:21:47 i will make a kilobytecoin 20:21:55 #include IIRC for numeric_limits. 20:22:12 my private version is up to date but i'm a hairs width away from being able to publish it 20:22:16 should be (which is in that file) https://en.cppreference.com/w/cpp/types/numeric_limits 20:22:28 MeowingCat: are you compiling master or a release version? 20:22:38 master of mymonero-core-cpp 20:22:50 let me try a release 20:23:16 Then why are you complaining about the monero project if you're compiling anothre related project ? :D 20:23:35 "I use that extensively for my..." <- Link to this wallet? 20:24:31 :((((( 20:24:42 because Monero is making me cry 20:24:48 no doc 20:25:03 and devs who are saying me implementing a tx building and signing is impossible 20:25:07 Well, it's Esperanto for "In your face"... 20:25:07 MeowingCat: perhaps i'll give you access to my version of monero core cop and core custom 20:25:17 cpp 20:25:19 it is written by an alien and impossible to implement in another platform 20:25:25 i solved the problem if embedding 20:25:27 and something like that :( 20:25:31 i wrote the code repo youre using lol 20:25:37 Wow. Those devs are ignorant then. It's possible. Proof by example: wallet2. 20:25:40 idk why you're missing a std 20:25:56 mooo he's talking about without including the entire world 20:26:02 and without libunbound lolz 20:26:03 why wallet"2"???? 20:26:07 what does that mean??? 20:26:11 MeowingCat: watch my talk lol 20:26:19 endogenic: I'm only being sarcastic here :) 20:26:20 endogenic, sorry 20:26:28 im crying 20:26:36 haha he doesnt know that mooo 20:26:42 it's ok meowingcat 20:26:45 endo's here 20:26:58 there are interesting issues 20:26:59 I half realize that. 20:27:22 i really wonder about 20:27:34 can i build it for Android, Linux and iOS 20:27:49 MeowingCat: https://m.youtube.com/watch?v=DY0iE0cBXbc 20:27:56 yes you really can 20:28:01 if you use my codebase 20:28:15 tho well for linux you will possibly want to put multithreading back in idk 20:28:15 what is epee library??? 20:28:19 that's really just commented 20:28:26 MeowingCat: epee is a type of sword 20:28:28 im really curious about these things 20:28:31 you might call it a tool 20:28:32 or a util 20:28:34 el oh el 20:28:36 endogenic: that's the idea :D 20:28:37 trolling now 20:29:18 man i wish i could release my work wtf 20:29:25 i mean.. i guess i can now 20:29:27 > what is epee library??? 20:29:27 In the author's own words: "epee - is a small library of helpers, wrappers, tools and and so on, used to make my life easier." 20:29:30 well, almost 20:29:33 one last thing 20:29:38 legal related 20:29:45 give it 1-3 days 20:29:46 Someone who knows about git grep ^ 20:31:15 Learning about git grep was a life changing expereince 20:31:32 "to make my life easier" 20:31:53 but not necessarily simpler 20:32:01 git bisect was mine. Thank, whoever you are... 20:32:40 (but git bisect would be mostly pointless without ccache (which has works for years fwiw), so thank you whoever too) 20:36:11 endogenic, can i cross-compile it on Linux? 20:36:23 sure 20:36:38 damnit 20:36:41 dammit* 20:36:47 i really want to give you my updated docs 20:36:55 it details exactly what i changed 20:37:02 https://pastebin.com/06RZXnD2 20:37:04 error :( 20:38:08 youre getting tons of weird errors 20:38:21 chances are this is upstream of "my" code 20:38:22 that is 20:38:34 in your cmake lists or in your source code's global includes 20:38:39 it is 1.1.2 branch 20:38:50 nothing changed :( 20:38:54 on Linux 20:38:54 ok just fyi that code is way old and my access to it was revoked 20:39:03 ummmmm 20:39:16 my open source PR feedback comments on it were literally censored 20:39:35 i tried to use libwalet.a thing before 20:39:37 i cant vouch for it, idk what changed but 20:39:42 but Monero source is really interesting 20:39:47 include paths are not relative 20:39:50 and more things 20:39:51 yeah you could call it interesting lol 20:40:00 check out mymonero core cpp cmakelists.txt 20:40:07 how i include headers and sources 20:40:18 i dont use all of the monero embedded cmakelisfs 20:40:25 though i would like to 20:40:51 i'm gonna bounce to another location now. feel free to leave questions 20:41:27 okiii 20:41:38 "man i wish i could release my..." <- Plz sir 20:42:26 rbrunners webwallet is, i believe: https://monerotech.info/Wallet 20:42:35 Y hold back code you’ll eventually release? 👀 20:43:32 plowsof[m]: Why aren’t there any wallets that use wallet rpc? 20:43:46 what is making building transactions complicated this much? 20:44:10 anyone can't implement the same thing in another language 20:44:18 an alien wrote it and we have to use it somehow 20:46:12 endogenic, you have a private repo?? 20:47:15 chesterfield[m]: Looking for a technical answer here… seems like a selfhosted wallet rpc would be a very low bandwidth solution for a wallet on a phone 20:51:16 if i was making an exchange it would be way easier 20:51:25 because damn build target would be just Linux 20:54:19 chesterfield[m]: do you mean connect to a private server running wallet rpc, and the phone wallet is just an interface for that? 20:58:31 UkoeHB: Exactly 21:00:34 probably doesn't exist because it isn't commercially viable 21:09:22 i will rewrite Monero in future 21:09:23 in C 21:09:30 zero issues on building 21:09:33 zero warnings 21:09:53 maybe after that i can make a Kilobytecoin 21:10:47 MeowingCat: yes, a few of them, some very useful stuff 21:11:08 them, -> them. 21:11:21 https://github.com/rohanrhu can you give me access??? 21:11:45 MeowingCat: rewriting C is the idea of one of my team mates as well 21:11:47 in C 21:11:51 libmonero 21:12:06 C++ is dumb 21:12:08 starting as an alternate implementation would be fine 21:12:09 C++ is not dumb 21:12:56 it is dumbbbbb just making everything problematic 21:12:57 chesterfield[m]: is that not better solved by the light wallet scanning server? 21:13:19 either way if you want to use the RPC interface then I wrote a server that pretends to be wallet rpc server and is backed by a light scanning server 21:14:09 actually i can even use CLI with just Monero executable 21:14:15 or run RPC server and communicate 21:14:20 butttt iOS doesn't allow that 21:14:29 what do you actually want to do MeowingCat 21:14:37 wallet 21:14:42 he just wants to compile monero core crypto 21:15:02 BTC, ETH and Monero 21:15:12 MeowingCat: if you share your repo with me then i can at least look and see why you are struggling to compile mymonero-core-cpp 21:15:24 but Monero is not like BTC and ETH :( 21:15:35 i willl 21:15:39 endogenic: the light wallet server that doesn’t support sub addresses and has more identifiable transactions? 21:15:42 it will be open source 21:15:46 it does support subaddrs 21:15:52 i've had that support built for quite a while now >:) 21:15:58 it's also very very cool 21:16:04 jberman and i shared info on a spec for it 21:16:08 it's pretty simple 21:16:09 i incluuded damn stdexcept in cryptonote_config.h and it is building now 21:16:15 i hope it won't stop somewhere 21:16:17 as for privacy tradeoffs, well, you just run your own server 21:16:26 and the txs afaik are not more identifiable beyond that 21:16:36 it's supposed to be "native" monero 21:16:45 MeowingCat: woooo 21:16:49 idk how Monero UTXOs work 21:16:52 yeah i noticed another missing include myself 21:16:56 well, team member did 21:17:00 in wipeable_string.h 21:17:02 gotta do a PR 21:17:06 and other things buttttt everyone is saying building Monero txs is extremely complicated 21:17:12 not sure how it happened for him and not me though to be honest 21:17:23 MeowingCat: it's not complicated if you know how 21:17:28 why there are codde errors in release??? :((((((((((( 21:17:44 because only a couple people actually try to embed monero code 21:17:47 well, couple libraries 21:17:55 ohh another error 21:18:03 feel free to DM me fwiw 21:18:12 maybe i should make a new IRC room tho 21:18:19 if this is annoying 21:18:32 i don't think so because here is silent 21:19:41 this room is more-so for dev on monero code itself 21:19:50 rather than solving build errors in a third party's lib 21:19:53 in/on/using 21:20:05 endogenic: When pr to lws ? 21:20:11 not gonna pr to lws 21:20:14 but gonna pr to meta 21:20:16 to lws spec 21:20:20 i have a few of them 21:20:28 soon(tm) trying to do a couple other things for the moment 21:21:39 nothing wrong with C++, it's a tool that can be misused like any other tool (plenty of trash C out there) 21:21:53 losing a team member (family emergency) so i have to try to do a couple things asap 21:22:26 included limits 21:22:29 now another error 21:22:43 im feeling like shit how this is a release :((((((((((((((((( 21:23:03 share your (c)makefile plox 21:23:15 :) 21:23:32 https://github.com/mymonero/mymonero-core-cpp/blob/master/CMakeLists.txt 21:23:52 that makefile builds test targets 21:23:55 not your application target 21:23:59 are you trying to use it? 21:24:10 it's good feedback, if you are 21:24:14 means i gotta document that better 21:24:17 just doing cmake and cmake --build 21:24:23 oh, in that repo? 21:24:27 yessss 21:24:34 oh ok good to know, 1sec 21:24:34 in build direcotry 21:24:54 this is a build script fwiw 21:24:55 https://github.com/mymonero/mymonero-core-cpp/blob/master/bin/buildAndRun_tests 21:25:05 yessss 21:25:27 yeah idk why that's erroring for you. i havent tried that repo recently. i also am probably on a different dev env than you 21:25:51 i mean, i can tell you 21:25:57 actually nevermind 21:26:11 i was mistaken about what i was just thinking lol 21:26:47 maybe something else needs to be included in find_package(…) under your dev system 21:27:50 "but gonna pr to meta" <- Does this mean there will be code available for people to run an lws-like thing on their own or not? I can’t tell if you’re going to release code or a custodial solution 21:28:33 chesterfield[m]: there already exists a monero-lws impl but i think justin hasn't released his code for implementing subaddrs on it yet since he was waiting on people to OK his/our meta spec PR proposing the shape of subaddrs on the LWS API 21:28:54 as for me we've built internally a new LWS implementation from scratch and it already does subaddrs 21:29:04 and new client code that fully supports it, which will be open source 21:29:28 github.com/vtnerd/monero-lws 21:32:57 Cool so you’re doing a closed source custodial implementation with an open source client api? 21:33:08 it's not custodial of the spend key 21:33:44 it's just for user convenience. i am highly prioritizing client side scanning after that 21:34:03 Closed source non-custodial. Got it 👌 21:34:08 for the server yeah 21:34:18 it's all just to support something else i'm building lol 21:35:21 endogenic: Why so much secrecy on what you are building 😅 21:35:26 oh yeah sorry 21:35:32 i forgot to reply to that 21:36:10 Monero could really use a good open source light wallet server. Hope you reconsider releasing the code for it. 21:37:41 endogenic: So the specs will be presented and a open source implementation will be done on lws? There is a do not merge pr for subadress, is that waiting this specs ? 21:37:46 there are the typical reasons why companies like Apple would keep something secret before they release it, and then there are other reasons right now specific to my situation related to precautions I've been taking to protect myself, the code itself, and protect the emergence of a project that's being built on the code that I want the community to be able to have. finally for the scanning server i investigated foreign incorp. 21:38:06 so that if we held viewkeys for any new users that the jurisdiction would provide optimal insulation against e.g. dragnet surveillance 21:38:16 i spent a lot of money out of pocket researching that already tbh :P 21:38:37 it's going to have to wait, though, partially due to being slightly resource cautious presently 21:38:42 even though i found the answer 21:38:53 chesterfield[m]: i said one already exists 21:38:56 vtnerd is an excellent engineer 21:39:20 i dont know how i could improve vtnerd as an engineer lol .. put it to you like that. 21:39:28 he's like 9 or 10/10 21:39:51 nikg83[m]: the spec has existed for many years 21:39:55 it's part of monero meta 21:39:59 Lessen his focus on speeding up stuff that doesn't show up in the profile ^_^ 21:40:01 and many servers implement it now 21:40:31 moneromooo: lol 21:40:32 (but generally, I agree he's pretty good) 21:44:09 does libwallet.a have things to build and sign transactions??? 21:48:57 "there are the typical reasons..." <- Centralized light wallet servers are bad for Monero (until we get seraphis limited view keys) 21:49:45 sure if you dont trust the operator and if the setup is insecure 21:49:55 No, they’re bad period. 21:49:59 proof? 21:50:42 Proof that an entity with a desirable product that has thousands of view keys is bad for privacy of the system as a whole? 21:51:17 yeah i mean what does that have to do with centralized scanners. sounds like a monero flaw to me 21:51:24 whatever happened to pragmatism 21:51:28 you guys remember that? 21:51:35 whatever that was 21:52:01 anyway, guess who funded vtnerd/monero-lws initially? 21:52:02 libwallet.a does have stuff to build and sign transactions. 21:52:47 I don’t have a problem with lws, but I do have a problem with trusted entities holding thousands of view keys 21:52:59 you have a problem with untrusted entities 21:53:28 people will choose to use a centralized server like choosing venmo or paypal 21:53:35 If you’re not allowing people to selfhost your lws solution, you’re undermining system privacy 21:54:00 if it compromises others' privacy then you need to realize you're saying people shouldnt hack your vulnerable system 21:54:12 monero has many such attack surfaces 21:54:16 endogenic: hence the need for decentralised lws, you might feel users need another mymonero but it won’t be that well accepted 21:54:16 related to ring sigs 21:54:46 RINO has entered the chat 21:54:49 nikg83[m]: there already exists decentralized scanners , what is not getting through to you about that 21:54:59 my infra is for private customers 21:55:14 and yes it can do multisig 21:55:21 guys, drifting off-topic for this channel 21:55:24 indeed 21:55:35 thanks