git clone https://github.com/mimblewimble/grin
Look in /target/release to get the binary file (grin), copy it to a convenient place such as your home folder, this is the node binary, run via command line ./grin
3) Now install the grin-wallet
git clone https://github.com/mimblewimble/grin-wallet
cargo build --release
Look in /target/release or in case of errors in /target/debug to get the binary file (gin-wallet), copy it to a convenience place, this is the wallet binary,
-run in listening mode for incoming transactions with: ./grin-wallet listen
-Or if you do not have a wallet yet: ./grin-wallet init
-Or if you need to recover from seed: ./grin-wallet init -r
A reason for TUI freeze is starting the server at main thread, I experienced same problem at my app, it can take up to 1 minute at debug release to start the server with finished sync state, problematic call is: chain::setup_head.
At my app I just moved server creation to separate thread to avoid this, discussed this problem with @vegycslol also, I guess we can solve it by launching server at another thread or optimize setup_head function somehow.
P.S. At my build I used 5.1.2 too as last available version from crates.io