robonomics/
main.rs

1///////////////////////////////////////////////////////////////////////////////
2//
3//  Copyright 2018-2026 Robonomics Network <research@robonomics.network>
4//
5//  Licensed under the Apache License, Version 2.0 (the "License");
6//  you may not use this file except in compliance with the License.
7//  You may obtain a copy of the License at
8//
9//      http://www.apache.org/licenses/LICENSE-2.0
10//
11//  Unless required by applicable law or agreed to in writing, software
12//  distributed under the License is distributed on an "AS IS" BASIS,
13//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14//  See the License for the specific language governing permissions and
15//  limitations under the License.
16//
17///////////////////////////////////////////////////////////////////////////////
18//! Robonomics Node binary
19
20#![warn(missing_docs)]
21#![warn(unused_extern_crates)]
22
23// Force the linker to keep the polkadot_jemalloc_shim crate (and its #[global_allocator]).
24#[cfg(target_os = "linux")]
25extern crate polkadot_jemalloc_shim;
26
27/// OMNI Node based CLI
28mod cli;
29
30fn main() -> color_eyre::eyre::Result<()> {
31    color_eyre::install()?;
32
33    // Install the ring CryptoProvider for rustls before any TLS connections are made.
34    // Ignore the error if a provider was already installed.
35    let _ = rustls::crypto::ring::default_provider().install_default();
36
37    cli::run()
38}