Rpm building
This commit is contained in:
13
package/rpm/veilid-cli/earthly_make_veilid_cli_rpm.sh
Executable file
13
package/rpm/veilid-cli/earthly_make_veilid_cli_rpm.sh
Executable file
@@ -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
|
28
package/rpm/veilid-cli/veilid-cli.spec
Normal file
28
package/rpm/veilid-cli/veilid-cli.spec
Normal file
@@ -0,0 +1,28 @@
|
||||
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
|
||||
|
||||
%changelog
|
||||
* Sun Jul 2 2023 TC <tc@veilid.org>
|
||||
- experimental RPM building
|
13
package/rpm/veilid-server/earthly_make_veilid_server_rpm.sh
Executable file
13
package/rpm/veilid-server/earthly_make_veilid_server_rpm.sh
Executable file
@@ -0,0 +1,13 @@
|
||||
#!/bin/bash
|
||||
ARCH=$1
|
||||
CARGO_ARCH=$2
|
||||
CARGO_VERSION="$(/veilid/package/cargo_version.sh /veilid/veilid-server/Cargo.toml)"
|
||||
|
||||
# veilid-server spec file
|
||||
cp -rf /veilid/package/rpm/veilid-server/veilid-server.spec /root/rpmbuild/SPECS/
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec CARGO_VERSION $CARGO_VERSION
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec ARCH $ARCH
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec CARGO_ARCH $CARGO_ARCH
|
||||
|
||||
# build the rpm
|
||||
rpmbuild --target "x86_64" -bb /root/rpmbuild/SPECS/veilid-server.spec
|
52
package/rpm/veilid-server/veilid-server.spec
Normal file
52
package/rpm/veilid-server/veilid-server.spec
Normal file
@@ -0,0 +1,52 @@
|
||||
Summary: Install a server grade, headless Veilid node
|
||||
Name: veilid-server
|
||||
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-server
|
||||
BuildArch: $ARCH
|
||||
|
||||
%description
|
||||
A server grade, headless Veilid node
|
||||
|
||||
%install
|
||||
mkdir -p %{buildroot}/usr/bin/
|
||||
cp /veilid/target/$CARGO_ARCH/release/veilid-server %{buildroot}/usr/bin/veilid-server
|
||||
|
||||
mkdir -p %{buildroot}/etc/systemd/system
|
||||
cp /veilid/package/systemd/veilid-server.service %{buildroot}/etc/systemd/system/veilid-server.service
|
||||
|
||||
mkdir -p %{buildroot}/etc/veilid-server
|
||||
cp /veilid/package/linux/veilid-server.conf %{buildroot}/etc/veilid-server/veilid-server.conf
|
||||
|
||||
%files
|
||||
/usr/bin/veilid-server
|
||||
/etc/systemd/system/veilid-server.service
|
||||
/etc/veilid-server/veilid-server.conf
|
||||
|
||||
%post
|
||||
adduser --system -U veilid &>/dev/null || true
|
||||
mkdir -p /var/db/veilid-server/protected_store
|
||||
mkdir -p /var/db/veilid-server/table_store
|
||||
mkdir -p /var/db/veilid-server/block_store
|
||||
chown -R veilid:veilid /var/db/veilid-server
|
||||
chmod 0750 /var/db/veilid-server/protected_store
|
||||
chmod 0750 /var/db/veilid-server/table_store
|
||||
chmod 0750 /var/db/veilid-server/block_store
|
||||
chmod 0750 /var/db/veilid-server
|
||||
chmod 755 /usr/bin/veilid-server
|
||||
|
||||
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 daemon-reload
|
||||
|
||||
%changelog
|
||||
* Sun Jul 2 2023 TC <tc@veilid.org>
|
||||
- experimental RPM building
|
Reference in New Issue
Block a user