From ad52775822605266f1dd8d28b59ee42eb1e1d8e9 Mon Sep 17 00:00:00 2001 From: Ken Sedgwick Date: Mon, 25 Nov 2024 14:48:14 -0800 Subject: [PATCH] Generate RPM package --- .github/workflows/rust.yml | 28 ++++++++++++++++++++++++++++ Cargo.toml | 7 +++++++ 2 files changed, 35 insertions(+) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 1182bd5..cfbd9d1 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -103,3 +103,31 @@ jobs: # run: wget -qO- https://github.com/thedodd/trunk/releases/latest/download/trunk-x86_64-unknown-linux-gnu.tar.gz | tar -xzf- # - name: Build # run: ./trunk build + + rpm: + name: Build RPM + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Install RPM Build Tools + run: | + sudo apt-get update + sudo apt-get install -y rpm binutils + cargo install cargo-generate-rpm + + - name: Build Rust Project + run: cargo build --release + + - name: Strip Debug Symbols + run: strip target/release/notedeck + + - name: Build RPM + run: cargo generate-rpm + + - name: Upload RPM Artifact + uses: actions/upload-artifact@v3 + with: + name: notedeck-rpm + path: target/generate-rpm/*.rpm diff --git a/Cargo.toml b/Cargo.toml index 350bf89..4dacb28 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,6 +5,8 @@ authors = ["William Casarin "] edition = "2021" default-run = "notedeck" #rust-version = "1.60" +license = "GPLv3" +description = "A multiplatform nostr client" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html @@ -114,6 +116,11 @@ name = "android.permission.INTERNET" [package.metadata.android.application] label = "Damus" +[package.metadata.generate-rpm] +assets = [ + { source = "target/release/notedeck", dest = "/usr/bin/notedeck", mode = "755" }, +] + [[bin]] name = "notedeck" path = "src/bin/notedeck.rs"