Skip to content

meldsun0/samba

Repository files navigation

Samba

GitHub License Discord

Samba is an Ethereum portal client written in Java language based on Teku and Besu. The name is inspired by the shortened name of of rescue dog named Sambayon that is the Spanish translation of an Italian dessert.

Note: Samba is still under heavy development and is not yet ready for production use.

Build Instructions

Install Prerequisites

  • Java 21+

Building on a more recent version of Java is supported, but the resulting build will not work on earlier versions of Java.

Build and Dist

To create a ready to run distribution:

git clone https://github.com/meldsun0/samba
cd samba && ./gradlew

This produces:

  • Fully packaged distribution in build/distributions

Build and Test

To build, clone this repo and run with gradle:

git clone https://github.com/meldsun0/samba
cd samba && ./gradlew

After a successful build, distribution packages are available in build/distributions.

Other Useful Gradle Targets

Target Builds
distTar Full distribution in build/distributions (as .tar.gz)
distZip Full distribution in build/distributions (as .zip)
distDocker The meldsun_labs/samba docker image
runContainer A docker container running

Code Style

We use Google's Java coding conventions for the project. To reformat code, run:

./gradlew spotlessApply

Code style is checked automatically during a build.

Testing

All the unit tests are run as part of the build, but can be explicitly triggered with:

./gradlew test

Docker

Running Hive locally

To run Hive locally against Samab you should follow these instractions:

Clone Hive:

git clone https://github.com/ethereum/hive

Build a local Docker image from Samba:

./gradlew build         
./gradlew distDocker  
  • Copy hive/samba folder to hive/clients
  • Change /hive/samba/Dockerfile by adding the recent created image.

Run Hive tests:

./hive -sim portal -client samba,trin -sim.limit history 

View logs output and results:

./hiveview --serve --logdir ./workspace/logs

Hardware Requirements

Minimum:

TO-DO

Recommended:

TO-DO

Useful links:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published