From bc7ec19ede4dbec261f532bcaa2c8650e4964dd6 Mon Sep 17 00:00:00 2001 From: Rick Mark Date: Tue, 21 Apr 2026 22:05:12 -0700 Subject: [PATCH 1/4] Factor our and enable bladeRF --- Dockerfile | 35 +++++++- build.sh | 232 +++++++++++++++++++++++++++++------------------------ clone.sh | 50 ++++++++++++ install.sh | 19 +---- package.sh | 2 + 5 files changed, 216 insertions(+), 122 deletions(-) create mode 100644 clone.sh diff --git a/Dockerfile b/Dockerfile index 3739c41..e49a2dc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,9 +2,40 @@ FROM ubuntu:jammy ENV DEBIAN_FRONTEND=noninteractive ENV ENV="/etc/profile" +ENV ANDROID_INSTALLER=commandlinetools-linux-8512546_latest.zip +ENV ANDROID_API_LEVEL=28 +ENV ANDROID_NDK_VERSION=25.1.8937393 +ENV ANDROID_CMAKE_VERSION=3.18.1 +ENV GRADLE_VERSION=7.3.3 +ENV SDR_KIT_BUILD=/root/sdr-kit-build +ENV SDR_KIT_ROOT=/sdr-kit +ENV ANDROID_HOME=/root/Android +ENV ANDROID_SDK_ROOT=/root/Android COPY install.sh /root + +RUN chmod +x /root/install.sh && /root/install.sh /root + +COPY clone.sh /root +RUN chmod +x /root/clone.sh && /root/clone.sh $SDR_KIT_BUILD + COPY build.sh /root -COPY package.sh /root +RUN chmod +x /root/build.sh +RUN /root/build.sh clone +RUN /root/build.sh libstd +RUN /root/build.sh libfftw +RUN /root/build.sh codec2 +RUN /root/build.sh libusb +RUN /root/build.sh libbladerf +RUN /root/build.sh libxml2 +RUN /root/build.sh libiio +RUN /root/build.sh libhydrasdr +RUN /root/build.sh libad9361 +RUN /root/build.sh librtlsdr +RUN /root/build.sh libhackrf +RUN /root/build.sh libairspy +RUN /root/build.sh libairspyhf +RUN /root/build.sh libvolk -RUN chmod +x /root/install.sh && cd /root && ./install.sh \ No newline at end of file +COPY package.sh /root +RUN chmod +x /root/package.sh && /root/package.sh $SDR_KIT_ROOT \ No newline at end of file diff --git a/build.sh b/build.sh index a215104..89b40a1 100644 --- a/build.sh +++ b/build.sh @@ -1,5 +1,10 @@ set -e +. /etc/profile + +export MAKEOPTS=-j$(nproc) +export APP_ABI="armeabi-v7a arm64-v8a x86 x86_64" + # Helper functions load_android_toolchain() { # [arch] [compiler_abi] export LD="$ANDROID_NDK_TOOLCHAIN/$1-linux-android$2$ANDROID_API_LEVEL-clang" @@ -40,51 +45,10 @@ gen_cmake_libiio_args() { # [android_abi] echo -DLIBIIO_LIBRARIES=$SDR_KIT_ROOT/$1/lib/libiio.so -DLIBIIO_INCLUDEDIR=$SDR_KIT_ROOT/$1/include } -# Download libaries -wget https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-1.5.2.tar.gz -tar -zxvf zstd-1.5.2.tar.gz -mv zstd-1.5.2 zstd - -wget http://www.fftw.org/fftw-3.3.10.tar.gz -tar -zxvf fftw-3.3.10.tar.gz -mv fftw-3.3.10 fftw - -wget https://github.com/drowe67/codec2-dev/archive/refs/tags/v1.0.5.zip -7z x v1.0.5.zip -mv codec2-dev-1.0.5 codec2 - -wget https://github.com/libusb/libusb/releases/download/v1.0.25/libusb-1.0.25.tar.bz2 -tar -xvf libusb-1.0.25.tar.bz2 -mv libusb-1.0.25 libusb - -git clone --recurse-submodules https://github.com/gnuradio/volk - -git clone https://github.com/airspy/airspyhf - -git clone https://github.com/airspy/airspyone_host - -git clone https://github.com/AlexandreRouma/hackrf - -git clone https://github.com/AlexandreRouma/rtl-sdr - -wget https://www.sdrpp.org/libxml2-2.9.14.tar.xz -tar -xvf libxml2-2.9.14.tar.xz -mv libxml2-2.9.14 libxml2 - -wget https://github.com/analogdevicesinc/libiio/archive/refs/tags/v0.24.tar.gz -tar -zxvf v0.24.tar.gz -mv libiio-0.24 libiio - -wget https://github.com/analogdevicesinc/libad9361-iio/archive/refs/tags/v0.2.tar.gz -tar -zxvf v0.2.tar.gz -mv libad9361-iio-0.2 libad9361 - -git clone https://github.com/hydrasdr/rfone_host - # Build ZSTD build_zstd() { # [arch] [android_abi] [compiler_abi] echo "===================== ZSTD ($2) =====================" - cd zstd + cd $SDR_KIT_BUILD/zstd load_android_toolchain $1 $3 make clean make $MAKEOPTS @@ -92,30 +56,23 @@ build_zstd() { # [arch] [android_abi] [compiler_abi] patchelf --set-soname libzstd.so $SDR_KIT_ROOT/$2/lib/libzstd.so cd .. } -build_zstd i686 x86 -build_zstd x86_64 x86_64 -build_zstd armv7a armeabi-v7a eabi -build_zstd aarch64 arm64-v8a # Build FFTW3 build_fftw() { # [android_abi] echo "===================== FFTW3 ($1) =====================" - cd fftw + cd $SDR_KIT_BUILD/fftw mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) -DENABLE_FLOAT=ON .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_fftw x86 -build_fftw x86_64 -build_fftw armeabi-v7a -build_fftw arm64-v8a + # Build codec2 build_codec2() { # [android_abi] echo "===================== Codec2 ($1) =====================" - cd codec2 + cd $SDR_KIT_BUILD/codec2 mkdir -p build_$1 && cd build_$1 load_native_toolchain cmake $(gen_cmake_args $1) -DUNITTEST=FALSE -DGENERATE_CODEBOOK=$SDR_KIT_BUILD/codec2/build_linux/src/generate_codebook .. @@ -123,15 +80,12 @@ build_codec2() { # [android_abi] make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_codec2 x86 -build_codec2 x86_64 -build_codec2 armeabi-v7a -build_codec2 arm64-v8a + # Build libusb build_libusb() { echo "===================== libusb =====================" - cd libusb/android/jni + cd $SDR_KIT_BUILD/libusb/android/jni $ANDROID_SDK_ROOT/ndk/$ANDROID_NDK_VERSION/ndk-build cd .. mkdir -p $SDR_KIT_ROOT/x86/lib @@ -157,117 +111,111 @@ build_libusb() { cp libusb/libusbi.h $SDR_KIT_ROOT/arm64-v8a/include cd .. } -build_libusb + # Build volk build_volk() { # [android_abi] echo "===================== Volk ($1) =====================" - cd volk + cd $SDR_KIT_BUILD/volk mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_volk x86 -build_volk x86_64 -build_volk armeabi-v7a -build_volk arm64-v8a + # Build libairspyhf build_libairspyhf() { # [android_abi] echo "===================== libairspyhf ($1) =====================" - cd airspyhf + cd $SDR_KIT_BUILD/airspyhf mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_libairspyhf x86 -build_libairspyhf x86_64 -build_libairspyhf armeabi-v7a -build_libairspyhf arm64-v8a + # Build libairspy build_libairspy() { # [android_abi] echo "===================== libairspy ($1) =====================" - cd airspyone_host + cd $SDR_KIT_BUILD/airspyone_host mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_libairspy x86 -build_libairspy x86_64 -build_libairspy armeabi-v7a -build_libairspy arm64-v8a + # Build libhackrf build_libhackrf() { # [android_abi] echo "===================== libhackrf ($1) =====================" - cd hackrf/host + cd $SDR_KIT_BUILD/hackrf/host mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) $(gen_cmake_fftw_args $1) -DDISABLE_USB_ENUMERATION=ON .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../../ } -build_libhackrf x86 -build_libhackrf x86_64 -build_libhackrf armeabi-v7a -build_libhackrf arm64-v8a + # Build librtlsdr build_librtlsdr() { # [android_abi] echo "===================== librtlsdr ($1) =====================" - cd rtl-sdr + cd $SDR_KIT_BUILD/rtl-sdr mkdir -p build_$1 && cd build_$1 - cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) -DBUILD_UTILITIES=OFF .. + BLADERF_CMAKE="cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) $(gen_cmake_libusb_args $1) -DBUILD_UTILITIES=OFF .." + echo "bladeRF: $BLADERF_CMAKE" + $BLADERF_CMAKE make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_librtlsdr x86 -build_librtlsdr x86_64 -build_librtlsdr armeabi-v7a -build_librtlsdr arm64-v8a + + +# Build libbladerf +build_libbladerf() { # [android_abi] + echo "===================== libbladerf ($1) =====================" + cd $SDR_KIT_BUILD/bladeRF + mkdir -p build_$1 && cd build_$1 + export BLADERF_CMAKE="cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) -DENABLE_BACKEND_LIBUSB=True -DENABLE_USB_DEV_RESET_ON_OPEN=True -DBUILD_BLADERF_UTILITIES=OFF -DTEST_LIBBLADERF=OFF .." + echo "bladeRF CMAKE: $BLADERF_CMAKE" + $BLADERF_CMAKE + make $MAKEOPTS libbladerf_shared + make DESTDIR=$SDR_KIT_ROOT/$1 install + cd ../../ +} + # Build libxml2 build_libxml2() { # [android_abi] echo "===================== LibXML2 ($1) =====================" - cd libxml2 + cd $SDR_KIT_BUILD/libxml2 mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) -DLIBXML2_WITH_LZMA=OFF -DLIBXML2_WITH_PYTHON=OFF .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_libxml2 x86 -build_libxml2 x86_64 -build_libxml2 armeabi-v7a -build_libxml2 arm64-v8a + # Build libiio build_libiio() { # [android_abi] echo "===================== LibIIO ($1) =====================" - cd libiio + cd $SDR_KIT_BUILD/libiio mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) $(gen_cmake_libxml2_args $1) -DWITH_TESTS=OFF -DWITH_USB_BACKEND=OFF -DHAVE_DNS_SD=OFF .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_libiio x86 -build_libiio x86_64 -build_libiio armeabi-v7a -build_libiio arm64-v8a # Build libad9361 build_libad9361() { # [android_abi] echo "===================== LibAD9361 ($1) =====================" - cd libad9361 + cd $SDR_KIT_BUILD/libad9361 mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) $(gen_cmake_libiio_args $1) -DDESTINATION=$SDR_KIT_ROOT/$1 .. make $MAKEOPTS @@ -276,22 +224,98 @@ build_libad9361() { # [android_abi] cp libad9361.so $SDR_KIT_ROOT/$1/lib/ cd ../../ } -build_libad9361 x86 -build_libad9361 x86_64 -build_libad9361 armeabi-v7a -build_libad9361 arm64-v8a # Build libhydrasdr build_libhydrasdr() { # [android_abi] echo "===================== libhydrasdr ($1) =====================" - cd rfone_host + cd $SDR_KIT_BUILD/rfone_host mkdir -p build_$1 && cd build_$1 cmake $(gen_cmake_args $1) $(gen_cmake_libusb_args $1) .. make $MAKEOPTS make DESTDIR=$SDR_KIT_ROOT/$1 install cd ../../ } -build_libhydrasdr x86 -build_libhydrasdr x86_64 -build_libhydrasdr armeabi-v7a -build_libhydrasdr arm64-v8a \ No newline at end of file + +case "$1" in + libhydrasdr ) + build_libhydrasdr x86 + build_libhydrasdr x86_64 + build_libhydrasdr armeabi-v7a + build_libhydrasdr arm64-v8a + ;; + libad9361 ) + build_libad9361 x86 + build_libad9361 x86_64 + build_libad9361 armeabi-v7a + build_libad9361 arm64-v8a + ;; + libiio ) + build_libiio x86 + build_libiio x86_64 + build_libiio armeabi-v7a + build_libiio arm64-v8a + ;; + libxml2 ) + build_libxml2 x86 + build_libxml2 x86_64 + build_libxml2 armeabi-v7a + build_libxml2 arm64-v8a + ;; + libbladerf ) + build_libbladerf x86 + build_libbladerf x86_64 + build_libbladerf armeabi-v7a + build_libbladerf arm64-v8a + ;; + librtlsdr ) + build_librtlsdr x86 + build_librtlsdr x86_64 + build_librtlsdr armeabi-v7a + build_librtlsdr arm64-v8a + ;; + libhackrf ) + build_libhackrf x86 + build_libhackrf x86_64 + build_libhackrf armeabi-v7a + build_libhackrf arm64-v8a + ;; + libairspy ) + build_libairspy x86 + build_libairspy x86_64 + build_libairspy armeabi-v7a + build_libairspy arm64-v8a + ;; + libairspyhf ) + build_libairspyhf x86 + build_libairspyhf x86_64 + build_libairspyhf armeabi-v7a + build_libairspyhf arm64-v8a + ;; + libvolk ) + build_volk x86 + build_volk x86_64 + build_volk armeabi-v7a + build_volk arm64-v8a + ;; + libusb ) + build_libusb + ;; + libstd ) + build_zstd i686 x86 + build_zstd x86_64 x86_64 + build_zstd armv7a armeabi-v7a eabi + build_zstd aarch64 arm64-v8a + ;; + libfftw ) + build_fftw x86 + build_fftw x86_64 + build_fftw armeabi-v7a + build_fftw arm64-v8a + ;; + codec2 ) + build_codec2 x86 + build_codec2 x86_64 + build_codec2 armeabi-v7a + build_codec2 arm64-v8a + ;; +esac \ No newline at end of file diff --git a/clone.sh b/clone.sh new file mode 100644 index 0000000..ca15eda --- /dev/null +++ b/clone.sh @@ -0,0 +1,50 @@ + +cd $1 + +perform_clone() { + cd $SDR_KIT_BUILD + # Download libaries + wget https://github.com/facebook/zstd/releases/download/v1.5.2/zstd-1.5.2.tar.gz + tar -zxvf zstd-1.5.2.tar.gz + mv zstd-1.5.2 zstd + + wget http://www.fftw.org/fftw-3.3.10.tar.gz + tar -zxvf fftw-3.3.10.tar.gz + mv fftw-3.3.10 fftw + + wget https://github.com/drowe67/codec2-dev/archive/refs/tags/v1.0.5.zip + 7z x v1.0.5.zip + mv codec2-dev-1.0.5 codec2 + + wget https://github.com/libusb/libusb/releases/download/v1.0.25/libusb-1.0.25.tar.bz2 + tar -xvf libusb-1.0.25.tar.bz2 + mv libusb-1.0.25 libusb + + git clone --recurse-submodules https://github.com/gnuradio/volk + + git clone https://github.com/airspy/airspyhf + + git clone https://github.com/airspy/airspyone_host + + git clone https://github.com/AlexandreRouma/hackrf + + git clone https://github.com/AlexandreRouma/rtl-sdr + + git clone https://github.com/rickmark/bladeRF.git + + wget https://www.sdrpp.org/libxml2-2.9.14.tar.xz + tar -xvf libxml2-2.9.14.tar.xz + mv libxml2-2.9.14 libxml2 + + wget https://github.com/analogdevicesinc/libiio/archive/refs/tags/v0.24.tar.gz + tar -zxvf v0.24.tar.gz + mv libiio-0.24 libiio + + wget https://github.com/analogdevicesinc/libad9361-iio/archive/refs/tags/v0.2.tar.gz + tar -zxvf v0.2.tar.gz + mv libad9361-iio-0.2 libad9361 + + git clone https://github.com/hydrasdr/rfone_host +} + +perform_clone \ No newline at end of file diff --git a/install.sh b/install.sh index cd9a35f..3c6f05a 100644 --- a/install.sh +++ b/install.sh @@ -1,14 +1,6 @@ set -e -# Settings -export ANDROID_INSTALLER=commandlinetools-linux-8512546_latest.zip -export ANDROID_API_LEVEL=28 -export ANDROID_NDK_VERSION=25.1.8937393 -export ANDROID_CMAKE_VERSION=3.18.1 -export GRADLE_VERSION=7.3.3 -export SDR_KIT_BUILD=/root/sdr-kit-build -export SDR_KIT_ROOT=/sdr-kit -export MAKEOPTS=-j$(nproc) +cd $1 # Install dependencies apt update -y @@ -19,13 +11,11 @@ mkdir Android wget https://dl.google.com/android/repository/$ANDROID_INSTALLER 7z x $ANDROID_INSTALLER mv cmdline-tools/ Android/ -export ANDROID_HOME=/root/Android -export ANDROID_SDK_ROOT=/root/Android # Install the SDK and NDK yes | $ANDROID_HOME/cmdline-tools/bin/sdkmanager --sdk_root=$ANDROID_HOME --install "platforms;android-$ANDROID_API_LEVEL" "ndk;$ANDROID_NDK_VERSION" "cmake;$ANDROID_CMAKE_VERSION" -export ANDROID_NDK_TOOLCHAIN=$ANDROID_HOME/ndk/$ANDROID_NDK_VERSION/toolchains/llvm/prebuilt/linux-x86_64/bin -export ANDROID_NDK_CMAKE=$ANDROID_HOME/ndk/$ANDROID_NDK_VERSION/build/cmake/android.toolchain.cmake +echo "export ANDROID_NDK_TOOLCHAIN=$ANDROID_HOME/ndk/$ANDROID_NDK_VERSION/toolchains/llvm/prebuilt/linux-x86_64/bin" >> /etc/profile +echo "export ANDROID_NDK_CMAKE=$ANDROID_HOME/ndk/$ANDROID_NDK_VERSION/build/cmake/android.toolchain.cmake" >> /etc/profile # Install gradle mkdir -p /opt/gradle/ @@ -42,9 +32,6 @@ echo "export SDR_KIT_ROOT=$SDR_KIT_ROOT" >> /etc/profile # Do build cd $SDR_KIT_BUILD -chmod +x /root/build.sh -chmod +x /root/package.sh -/root/build.sh # Setup environment variables at launch echo "export ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT" >> /etc/profile \ No newline at end of file diff --git a/package.sh b/package.sh index 09b278f..472c00a 100644 --- a/package.sh +++ b/package.sh @@ -1,2 +1,4 @@ # Tar up the entire root folder +cd $1 + tar -zcvf android-sdr-kit.tar.gz $SDR_KIT_ROOT \ No newline at end of file From 39dc18246cf33131df9e3e988af6c17b81a2d089 Mon Sep 17 00:00:00 2001 From: Rick Mark Date: Wed, 22 Apr 2026 22:04:39 -0700 Subject: [PATCH 2/4] Enable manual trigger --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a6e561a..97e599c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,6 +1,6 @@ name: Build Binaries -on: [push, pull_request] +on: [push, pull_request, workflow_dispatch] jobs: build_debian_buster: From 83a58cd1e7a3085a324680dc0c664ea10ae31e92 Mon Sep 17 00:00:00 2001 From: Rick Mark Date: Wed, 22 Apr 2026 22:04:39 -0700 Subject: [PATCH 3/4] Enable manual trigger --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 97e599c..5132b0d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -20,7 +20,7 @@ jobs: run: docker cp build:/root/android-sdr-kit.tar.gz ./ - name: Save Deb Archive - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v4 with: name: android-sdr-kit path: ${{runner.workspace}}/android-sdr-kit.tar.gz From 4f64a32f71352fc2f6ebcc99f8e6f8897cdf432e Mon Sep 17 00:00:00 2001 From: Rick Mark Date: Wed, 22 Apr 2026 22:04:39 -0700 Subject: [PATCH 4/4] Enable manual trigger --- .github/workflows/publish.yml | 41 +++++++++++++++++++++++++++++++++++ Dockerfile | 2 +- package.sh | 4 +--- 3 files changed, 43 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..64c5c71 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,41 @@ +name: Build and Push to GHCR + +on: + push: + branches: ['main'] # Trigger on push to main branch + +env: + REGISTRY: ghcr.io + IMAGE_NAME: ${{ github.repository }} + +jobs: + build-and-push: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Log in to the Container registry + uses: docker/login-action@v3 + with: + registry: ${{ env.REGISTRY }} + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@v5 + with: + images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }} + + - name: Build and push Docker image + uses: docker/build-push-action@v5 + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} diff --git a/Dockerfile b/Dockerfile index e49a2dc..ea6a022 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ ENV DEBIAN_FRONTEND=noninteractive ENV ENV="/etc/profile" ENV ANDROID_INSTALLER=commandlinetools-linux-8512546_latest.zip ENV ANDROID_API_LEVEL=28 -ENV ANDROID_NDK_VERSION=25.1.8937393 +ENV ANDROID_NDK_VERSION=27.3.13750724 ENV ANDROID_CMAKE_VERSION=3.18.1 ENV GRADLE_VERSION=7.3.3 ENV SDR_KIT_BUILD=/root/sdr-kit-build diff --git a/package.sh b/package.sh index 472c00a..b90ce7f 100644 --- a/package.sh +++ b/package.sh @@ -1,4 +1,2 @@ # Tar up the entire root folder -cd $1 - -tar -zcvf android-sdr-kit.tar.gz $SDR_KIT_ROOT \ No newline at end of file +tar -zcvf /root/android-sdr-kit.tar.gz $SDR_KIT_ROOT \ No newline at end of file