diff --git a/README.md b/README.md index 0e6e560..a6b9313 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,10 @@ # BlsEx -**TODO: Add description** +This package is Elixir utility to work with BLS signature scheme supporting aggregation of signatures and public keys along with signature and verification. ## Installation -If [available in Hex](https://hex.pm/docs/publish), the package can be installed -by adding `bls_ex` to your list of dependencies in `mix.exs`: +Adds `bls_ex` to your list of dependencies in `mix.exs`: ```elixir def deps do @@ -15,7 +14,6 @@ def deps do end ``` -Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc) -and published on [HexDocs](https://hexdocs.pm). Once published, the docs can -be found at . +## Documentation +Documentation is [available on Hexdocs](https://hexdocs.pm/bls_ex) diff --git a/mix.exs b/mix.exs index 83ae5de..36431ae 100644 --- a/mix.exs +++ b/mix.exs @@ -7,7 +7,24 @@ defmodule BlsEx.MixProject do version: "0.1.0", elixir: "~> 1.14", start_permanent: Mix.env() == :prod, - deps: deps() + description: "BLS signature utility for Elixir", + deps: deps(), + package: package() + ] + end + + defp package do + [ + files: [ + "lib", + "native/bls/.cargo", + "native/bls/src", + "native/bls/Cargo*", + "checksum-*.exs", + "mix.exs" + ], + licenses: ["AGPL-3.0-or-later"], + links: %{"GitHub" => "https://github.com/archethic-foundation/bls_ex"} ] end diff --git a/release.yml b/release.yml deleted file mode 100644 index 3e78335..0000000 --- a/release.yml +++ /dev/null @@ -1,68 +0,0 @@ -name: Build precompiled NIFs - -on: - push: - branches: - - main - tags: - - '*' - -jobs: - build_release: - name: NIF ${{ matrix.nif }} - ${{ matrix.job.target }} (${{ matrix.job.os }}) - runs-on: ${{ matrix.job.os }} - strategy: - fail-fast: false - matrix: - nif: ["2.16", "2.15"] - job: - - { target: arm-unknown-linux-gnueabihf , os: ubuntu-20.04 , use-cross: true } - - { target: aarch64-unknown-linux-gnu , os: ubuntu-20.04 , use-cross: true } - - { target: aarch64-unknown-linux-musl , os: ubuntu-20.04 , use-cross: true } - - { target: aarch64-apple-darwin , os: macos-11 } - - { target: riscv64gc-unknown-linux-gnu , os: ubuntu-20.04 , use-cross: true } - - { target: x86_64-apple-darwin , os: macos-11 } - - { target: x86_64-unknown-linux-gnu , os: ubuntu-20.04 } - - { target: x86_64-unknown-linux-musl , os: ubuntu-20.04 , use-cross: true } - - { target: x86_64-pc-windows-gnu , os: windows-2019 } - - { target: x86_64-pc-windows-msvc , os: windows-2019 } - - steps: - - name: Checkout source code - uses: actions/checkout@v3 - - - name: Extract project version - shell: bash - run: | - # Get the project version from mix.exs - echo "PROJECT_VERSION=$(sed -n 's/^ @version "\(.*\)"/\1/p' mix.exs | head -n1)" >> $GITHUB_ENV - - - name: Install Rust toolchain - uses: dtolnay/rust-toolchain@stable - with: - toolchain: stable - target: ${{ matrix.job.target }} - - - name: Build the project - id: build-crate - uses: philss/rustler-precompiled-action@v1.0.1 - with: - project-name: example - project-version: ${{ env.PROJECT_VERSION }} - target: ${{ matrix.job.target }} - nif-version: ${{ matrix.nif }} - use-cross: ${{ matrix.job.use-cross }} - project-dir: "native/example" - - - name: Artifact upload - uses: actions/upload-artifact@v3 - with: - name: ${{ steps.build-crate.outputs.file-name }} - path: ${{ steps.build-crate.outputs.file-path }} - - - name: Publish archives and packages - uses: softprops/action-gh-release@v1 - with: - files: | - ${{ steps.build-crate.outputs.file-path }} - if: startsWith(github.ref, 'refs/tags/')