mirror of https://gitee.com/anolis/sysom.git
65 lines
1.4 KiB
Bash
Executable File
65 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
version=2.2
|
|
|
|
echo "Not support offline rpm, please use online rpm or docker image"
|
|
exit 1
|
|
|
|
check_cmd() {
|
|
local cmd="$1"
|
|
if ! command -v "${cmd}" >/dev/null 2>&1; then
|
|
echo >&2 "I require ${cmd} but it's not installed. Aborting."
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
green() {
|
|
printf '\33[1;32m%b\n\33[0m' "$1"
|
|
}
|
|
|
|
if [ "$UID" -ne 0 ]; then
|
|
echo "Please run as root"
|
|
exit 1
|
|
fi
|
|
|
|
|
|
|
|
basedir=`dirname $0`
|
|
pushd ${basedir}
|
|
|
|
###nodejs version should >= 16###
|
|
check_cmd yarn
|
|
check_cmd tar
|
|
check_cmd wget
|
|
check_cmd rpmbuild
|
|
check_cmd /usr/bin/python3
|
|
|
|
###rpmbuild will call brp-python-bytecompile, need /usr/bin/python
|
|
###/usr/lib/rpm/brp-python-bytecompile /usr/bin/python
|
|
###sysom run by python3, we should set /usr/bin/python link to /usr/bin/python3
|
|
mv /usr/bin/python /usr/bin/python.bak
|
|
ln -s /usr/bin/python3 /usr/bin/python
|
|
|
|
rm -rf /root/rpmbuild
|
|
mkdir -p /root/rpmbuild/BUILD
|
|
mkdir -p /root/rpmbuild/SOURCES
|
|
mkdir -p /root/rpmbuild/BUILDROOT
|
|
mkdir -p /root/rpmbuild/SPECS
|
|
mkdir -p /root/rpmbuild/RPMS
|
|
mkdir -p /root/rpmbuild/SRPMS
|
|
|
|
cp tools/deploy/sysom-offline.spec /root/rpmbuild/SPECS
|
|
pushd ..
|
|
rm -rf sysom-${version}
|
|
rm -f sysom-${version}.tar.gz
|
|
cp -a sysom sysom-${version}
|
|
tar -zcf sysom-${version}.tar.gz sysom-${version}
|
|
cp sysom-${version}.tar.gz /root/rpmbuild/SOURCES/
|
|
pushd /root/rpmbuild/SPECS
|
|
rpmbuild -ba sysom-offline.spec
|
|
|
|
rm -f /usr/bin/python
|
|
mv /usr/bin/python.bak /usr/bin/python
|
|
popd
|
|
popd
|
|
popd
|