From 899249e2a74e897e936d6c25b4fd3ea6594dc275 Mon Sep 17 00:00:00 2001 From: TC Date: Sun, 2 Jul 2023 21:02:48 -0500 Subject: [PATCH] hacking on rpm building --- Earthfile | 6 ++-- .../veilid-cli/earthly_make_veilid_cli_rpm.sh | 13 ++++++++ package/rpm/veilid-cli/veilid-cli.spec | 31 +++++++++++++++++++ package/rpm/veilid-server/veilid-server.spec | 6 ++++ 4 files changed, 53 insertions(+), 3 deletions(-) create mode 100644 package/rpm/veilid-cli/earthly_make_veilid_cli_rpm.sh create mode 100644 package/rpm/veilid-cli/veilid-cli.spec diff --git a/Earthfile b/Earthfile index 38ffb469..a4504a65 100644 --- a/Earthfile +++ b/Earthfile @@ -145,11 +145,11 @@ package-linux-amd64-rpm: RUN mkdir -p /rpm-work-dir/veilid-server # veilid-server RUN veilid/package/rpm/veilid-server/earthly_make_veilid_server_rpm.sh x86_64 x86_64-unknown-linux-gnu - SAVE ARTIFACT --keep-ts /root/rpmbuild/RPMS/x86_64/*.rpm AS LOCAL ./target/packages/ + #SAVE ARTIFACT --keep-ts /root/rpmbuild/RPMS/x86_64/*.rpm AS LOCAL ./target/packages/ # veilid-cli - #RUN /veilid/package/debian/earthly_make_veilid_cli_deb.sh x86_64 x86_64-unknown-linux-gnu + RUN veilid/package/rpm/veilid-server/earthly_make_veilid_cli_rpm.sh x86_64 x86_64-unknown-linux-gnu # save artifacts - #SAVE ARTIFACT --keep-ts /dpkg/out/*.deb AS LOCAL ./target/packages/ + SAVE ARTIFACT --keep-ts /root/rpmbuild/RPMS/x86_64/*.rpm AS LOCAL ./target/packages/ package-linux-arm64-deb: FROM +build-linux-arm64 diff --git a/package/rpm/veilid-cli/earthly_make_veilid_cli_rpm.sh b/package/rpm/veilid-cli/earthly_make_veilid_cli_rpm.sh new file mode 100644 index 00000000..0d5aa627 --- /dev/null +++ b/package/rpm/veilid-cli/earthly_make_veilid_cli_rpm.sh @@ -0,0 +1,13 @@ +#!/bin/bash +ARCH=$1 +CARGO_ARCH=$2 +CARGO_VERSION="$(/veilid/package/cargo_version.sh /veilid/veilid-cli/Cargo.toml)" + +# veilid-cli spec file +cp -rf /veilid/package/rpm/veilid-cli/veilid-cli.spec /root/rpmbuild/SPECS/ +/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec CARGO_VERSION $CARGO_VERSION +/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec ARCH $ARCH +/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec CARGO_ARCH $CARGO_ARCH + +# build the rpm +rpmbuild --target "x86_64" -bb /root/rpmbuild/SPECS/veilid-cli.spec \ No newline at end of file diff --git a/package/rpm/veilid-cli/veilid-cli.spec b/package/rpm/veilid-cli/veilid-cli.spec new file mode 100644 index 00000000..645daf6b --- /dev/null +++ b/package/rpm/veilid-cli/veilid-cli.spec @@ -0,0 +1,31 @@ +Summary: Veilid Server Command Line Interface +Name: veilid-cli +Version: $CARGO_VERSION +Release: 1 +URL: https://veilid.com +Group: System +License: MPL 2.0 +Packager: Veilid Foundation, Inc. +Requires: glibc-common >= 2.23 +BuildRoot: /rpm-work-dir/veilid-cli +BuildArch: $ARCH + +%description +Veilid Server Command Line Interface + +%install +mkdir -p %{buildroot}/usr/bin/ +cp /veilid/target/$CARGO_ARCH/release/veilid-cli %{buildroot}/usr/bin/veilid-cli + +%files +/usr/bin/veilid-cli + +%post +chmod 755 /usr/bin/veilid-cli + +%postun +rm /usr/bin/veilid-cli + +%changelog +* Sun Jul 2 2023 TC +- experimental RPM building diff --git a/package/rpm/veilid-server/veilid-server.spec b/package/rpm/veilid-server/veilid-server.spec index e5ff6c9b..78fea582 100644 --- a/package/rpm/veilid-server/veilid-server.spec +++ b/package/rpm/veilid-server/veilid-server.spec @@ -44,6 +44,12 @@ systemctl daemon-reload echo "Congratulations! To start your Veilid node and set it to start at boot, run the command systemctl enable --now veilid-server" +%postun +systemctl stop veilid-server.service +rm /usr/bin/veilid-server +rm /etc/systemd/system/veilid-server.service +systemctl daemon-reload + %changelog * Sun Jul 2 2023 TC - experimental RPM building