close
Skip to main content
immae u/immae avatar

immae

u/immae

Feed options
Hot
New
Top
View
Card
Compact

This page does a very good study of how to manage mulitple currencies (actually, currencies, shares, etc.), with pro and cons of each method: https://www.mathstat.dal.ca/~selinger/accounting/tutorial.html

Note that you can adjust the different methods depending on your need, all of them are transposable to ledger (you might be interested in sections 5.11 to 5.20 in the ledger documentation too the method based on costs, if you’re discovering ledger: https://ledger-cli.org/doc/ledger3.html#Posting-cost )

On my side, I handle shares with costs method (so that I can track their prices easily), and "legal currencies" with the last method (trading buckets), since in my country those exchanges are not taxable; and very often I don’t want to care about conversion between legal currencies, I’m only interested in spending them

Note: the last method is very similar to your current situation, which seems perfectly sane


I would actually expect them both to repeat infinitely, but it will actually depend on the implementation of &&. The comments so far are looking at the function "globally", but if I look closer:

  • How could Haskell know that f = (&&) will not answer True some day? Or it could know, because f is pure so he knows that False && False will always be False

  • But then Haskell need to "know" that the list only contains False, and since it’s evaluating it lazily it cannot.

However, the way && is implemented changes all:

False && _ = False
True && a = a

If it was written as

False && False = False
False && True = False
True && False = False
True && True = True

Then it would cycle indefinitely. See why? because in the first situation it doesn’t care about what is in the second argument, so it doesn’t need to evaluate it. Otherwise it will have to evaluate the rest to know how to respond and thus will cycle indefinitely even with a liste of Falsey’s


The addresses are not sufficient to transfer the coins, I need the private key to do a transaction, and that private key is (by design) never exportable from the ledger wallet.

I want to protect against a situation where I lose my key and cannot buy a new one in reasonable time (for any reason: Ledger goes bankrupt; or I’m not in a position to buy a new one: hardware keys are harder to get than just buying bread; whatever you can imagine)

The rationale is the following: My mnemonic words are securely stored, which is good, but those words are not sufficient. I’m still dependent on being able to get a hardware key to use it, and it’s not an easy dependence to achieve. A script that is able to derive the keys is a more reasonable assumption in case of emergency.


It’s not the topic, but: you don’t. The seed I’m using was generated before I acquired the ledger key, and I’m slowly moving my funds to a new one outside of the PC, with the condition that I have a way to get access to my funds in case of failure. So that’s where I’m stuck with cardano and siacoin


I tried the rust-cardano (more precisely cardano-cli which is a cli that uses it). In addition to the fact that it’s a bit convoluted to obtain an address (you need to attach the wallet to a blockchain etc.), it doesn’t generate a correct one.

I tried wallet recover --mnemonics-length 18 --derivation-scheme v1 and v2, in both cases I obtain with wallet address Wallet 0 0 an address of the form Ae2tdPwUPEZBC22RUnBw3aSXRZcTg39tt6813hEVtMXB44yNkwjiGpj26zk while the one that ledger generates is of the form addr1.... Blockchain explorer show an empty amount for the Ae... one when the addr1... one has non-empty balance, so I guess it’s not generated the same way.

I already tried emailing siacoin, I think they’re busy :)


Derive addresses without the ledger key
Image
r/ledgerwallet
Derive addresses without the ledger key

I’m the owner of a Ledger Nano S, and I want to put my cryptocurrencies in it, but I find it important to be able to generate the key *without* the help of the ledger key if necessary (in case of big failure from Ledger for instance). For most of my coins, I was able to use https://iancoleman.io/bip39/ or similar (python) scripts.

However, for ADA (Cardano) and SC (Siacoin) in particular I couldn’t find any way to retrieve the addresses. Do you know of any tools that is able to derive the addresses identically to the ledger key for those two in particular?

(ideally, one script would suit all cases, and a command line script, so that I can store it in plain text. But since it’s only for critical cases I’m fine with any secure offline tool)


(out of subject)

Actually they’re in the same ledger but they’re completely separate: the common account ledger is (standalone) in its own file, and it’s included from the personal one (also standalone) with the prefix:

apply account Common
!include Common.ledger
end apply account

This permits me to run some ledger commands every night to check that things I entered in my personal ledger for common expenses have their counterpart in the other one etc (i.e. some well-chosen balance is at 0)

(back to subject)

My exploration so far (after one more night on it :p ) went there:

  • In my personal ledger, I mark everything I pay as an expense to provision the common account (but this makes it more difficult to track the balance for regular expenses so maybe I’ll send it to a sub-account). That’s all there is in the personal one.

  • The common account will get a huge debt soon, into a new "Assets:House" account

  • The initial investment of each will go from "Revenue:Person A" to "Assets:House"

  • The debt will reduce with each reimbursement.

  • other expenses (taxes, works, etc.) will go into dedicated accounts Expenses:House:Taxes (and similar), either from the checking account or from `Revenue:Person A` depending on who paid for it

The issue with that is that it makes it difficult to write correct reports (even though all information is there it’s hard to extract it) excluding other expenses. Maybe the solution would be to write sub-account revenues (Revenue:Person A:House for instance)

NB: I’m mostly following conventional account branches (in my own language), but due to historical clumsiness (I started in 2009) and the fact that I started all by myself without clear directions I have some differences with the convention (but they should not have consequences here)


Holding account for investments
r/plaintextaccounting
Holding account for investments

I’m preparing for co-buying a house, and I want to do it properly on an accounting level. Here are the information/requisites I have:

- Money will come from both parts + several loans on both heads (not attached to one of us in particular)

- I’m holding a (ledger) journal for both my personal accounting and the common accounting (there is a `Common:` prefix for everything related to the second one)

- We will have separate kind of investments into the house:

* Initial investment of each part (unequal)

* The loans and reimbursement of it (unequal *and* variable in time depending on each revenue)

* Other expenses that may still pop later (future works on the house)

What we need:

- Be able to clearly split visually the actual investment of each person (expenses coming from the common account can either be left out or considered a third distinct person, it’s not a problem)

- Be able to get the total worth of the house. If possible separated by the kind of expanse ("inner value", "work expenses", "taxes", etc.)

I think I didn’t forget anything in the requisites. Any suggestion of how I should handle this?