Skip to content

Fix README.md

Fix README.md #44

Workflow file for this run

# This is a basic workflow to help you get started with Actions
name: 'Build'
# Controls when the action will run.
on:
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches:
- main
pull_request:
branches:
- main
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt update
sudo apt install -y build-essential cmake pkg-config debhelper python3-all libssl-dev libzmq3-dev libunbound-dev libsodium-dev libunwind8-dev liblzma-dev libreadline6-dev libexpat1-dev libpgm-dev qttools5-dev-tools libhidapi-dev libusb-1.0-0-dev libprotobuf-dev protobuf-compiler libudev-dev libboost-chrono-dev libboost-date-time-dev libboost-filesystem-dev libboost-locale-dev libboost-program-options-dev libboost-regex-dev libboost-serialization-dev libboost-system-dev libboost-thread-dev python3 ccache doxygen graphviz nettle-dev libevent-dev python3-pip python3-pybind11 python3-pytest
pip3 install pybind11-stubgen pytest --break-system-packages
- name: Install expat
run: |
wget https://github.com/libexpat/libexpat/releases/download/R_2_4_8/expat-2.4.8.tar.bz2
tar -xf expat-2.4.8.tar.bz2
sudo rm expat-2.4.8.tar.bz2
cd expat-2.4.8
./configure --enable-static --disable-shared
make
sudo make install
cd ../
- name: Install unbound
run: |
wget https://www.nlnetlabs.nl/downloads/unbound/unbound-1.22.0.tar.gz
tar xzf unbound-1.22.0.tar.gz
sudo apt install -y build-essential
sudo apt install -y libssl-dev
sudo apt install -y libexpat1-dev
sudo apt-get install -y bison
sudo apt-get install -y flex
cd unbound-1.22.0
./configure --with-libexpat=/usr --with-ssl=/usr --enable-static-exe
make
sudo make install
cd ../
- name: Update submodules
run: |
git submodule update --init --recursive
- name: Build monero-cpp shared library
run: |
mkdir build
cd external/monero-cpp
./bin/build_libmonero_cpp.sh
cp build/libmonero* ../../build
cd ../../
- name: Build boost headers
run: |
cd external/boost
./bootstrap.sh
./b2 headers
cd ../../
- name: Build monero-python
run: |
pip3 install . --target build/python3-monero_1.0.0-1noble1_amd64/usr/lib/python3/dist-packages
- name: Build DEB package
run: |
cp typings/monero.pyi build/python3-monero_1.0.0-1noble1_amd64/usr/lib/python3/dist-packages/
rm -rf build/python3-monero_1.0.0-1noble1_amd64/usr/lib/python3/dist-packages/pybind11*
rm -rf build/python3-monero_1.0.0-1noble1_amd64/usr/lib/python3/dist-packages/bin
cp -R debian build/python3-monero_1.0.0-1noble1_amd64/DEBIAN
cp external/monero-cpp/build/libmonero-cpp.so build/python3-monero_1.0.0-1noble1_amd64/usr/lib/
dpkg-deb --build build/python3-monero_1.0.0-1noble1_amd64
- name: Upload DEB
uses: actions/upload-artifact@v4
with:
name: python3-monero_1.0.0-1noble1_amd64-deb
path: build/python3-monero_1.0.0-1noble1_amd64.deb