swfss3/rpm/sswfss3.spec
benato.denis96@gmail.com 91ebf47324
Some checks failed
Rust / build (push) Has been cancelled
Chore: add CI
2026-03-12 11:44:21 +01:00

56 lines
No EOL
1.9 KiB
RPMSpec

Name: sswfss3
Version: %{version}
Release: 1%{?dist}
Summary: sswfss3 - a small init that mounts the rootfs and transfer control
License: GPLv2
URL: https://github.com/neroreflex/sswfss3
BuildRequires: cargo, gcc, clang, pkgconfig, make
# Provide explicit runtime Requires to avoid empty macro expansion in some rpmbuild setups
%description
sswfss3 is a software for interacting easily with seaweedfs,
including mounting a bucket as a local filesystem.
%prep
# No source tarball; build directly from the checked-out tree.
# rpmbuild will be invoked with `_sourcedir` pointing at the repo.
%build
export CARGO_HOME="$HOME/.cargo" || true
export PATH="$HOME/.cargo/bin:$PATH"
# Build all binaries in release mode and place artifacts under the checked-out
# repository `target/` directory so `%install` can find `target/release/...`.
cargo build --release --manifest-path "%{_sourcedir}/Cargo.toml" --target-dir "%{_sourcedir}/target"
%install
ls -lah .
rm -rf %{buildroot}
mkdir -p %{buildroot}/usr/bin
install -m 755 "%{_sourcedir}/target/release/sswfss3" %{buildroot}/usr/bin/sswfss3
# Install documentation and license from the repository so %doc/%license work
mkdir -p %{buildroot}/usr/share/doc/sswfss3
if [ -f %{_sourcedir}/README.md ]; then
install -m 644 %{_sourcedir}/README.md %{buildroot}/usr/share/doc/sswfss3/README.md
else
echo "README.md missing in %{_sourcedir}; cannot populate %doc" >&2
exit 1
fi
mkdir -p %{buildroot}/usr/share/licenses/sswfss3
if [ -f %{_sourcedir}/LICENSE.md ]; then
install -m 644 %{_sourcedir}/LICENSE.md %{buildroot}/usr/share/licenses/sswfss3/LICENSE.md
else
echo "LICENSE.md missing in %{_sourcedir}; cannot populate %license" >&2
exit 1
fi
%files
%license LICENSE.md
%doc README.md
/usr/bin/sswfss3
%changelog
* Thu Mar 05 2026 CI Build <ci@example.com> - %{version}-1
- Automated build: added changelog entry for reproducible build systems