(* hardcoded config for now *) let amount s = Amount.of_string s |> Result.get_ok let zero_eur = amount "EUR:0.00" let dummy_duration = Ptime.Span.of_int_s 99999999 module Exchange = struct let currency = "EUR" let currency_round_unit = amount "EUR:0.01" let db = "postgres" let attribute_encryption_key = "uhuhg" (* high-entropy nonce. *) let port = 3696 let master_public_key = "8MQF2XPWCKCW4199JFPE08X7Y9XAX21SF2HD8NZKXM3PY3CMCJ90====" |> B32.decode |> Result.get_ok |> Mirage_crypto_ec.Ed25519.pub_of_octets |> Result.get_ok let stefan_abs = zero_eur let stefan_log = zero_eur let stefan_lin = 0.0 let signkey_legal_duration = dummy_duration let max_keys_caching = 9999999 let max_requests = 99999999 let terms_dir = Fpath.(v "terms") let terms_etag = "0" |> Headers_lib.Etag.of_crockford32 |> Result.get_ok let privacy_dir = Fpath.(v "privacy") let privacy_etag = "0" |> Headers_lib.Etag.of_crockford32 |> Result.get_ok let enable_kyc = `NO end let currency_eur = Types.Config_types.Currency. { enabled= `NO; code= "EUR"; name= "euro"; fractional_input_digits= 2; fractional_normal_digits= 2; fractional_trailing_zero_digits= 2; alt_unit_names= [ (0, "E"); (3, "kE") ]; } module Secmod_rsa = struct let lookahead_sign = dummy_duration let overlap_duration = dummy_duration let sm_priv_key = Fpath.(v "rsa_key.priv") let key_dir = Fpath.(v "rsa") end module Secmod_eddsa = struct let lookahead_sign = dummy_duration let overlap_duration = dummy_duration let sm_priv_key = Fpath.(v "eddsa_key.priv") let key_dir = Fpath.(v "eddsa") end let coin_kudo_1 = Types.Config_types.Coin. { section_name= "kudo_1"; value= amount "EUR:0.01"; duration_withdraw= dummy_duration; duration_spend= dummy_duration; duration_legal= dummy_duration; fee_withdraw= zero_eur; fee_deposit= zero_eur; fee_refresh= zero_eur; fee_refund= zero_eur; cipher= `RSA; rsa_keysize= 2048; age_restricted= `NO; } let coin_kudo_2 = { coin_kudo_1 with section_name= "kudo_2"; value= amount "EUR:0.02" } let coins = [ coin_kudo_1; coin_kudo_2 ]