diff --git a/Dockerfile b/Dockerfile index cb2b4ba..4b34617 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,8 +7,8 @@ RUN apt-get -y update && \ apt-get -y install --no-install-recommends \ git vim parted \ quilt coreutils qemu-user-static debootstrap zerofree zip dosfstools \ - bsdtar libcap2-bin rsync grep udev xz-utils curl xxd file kmod bc\ - binfmt-support ca-certificates qemu-utils kpartx \ + libarchive-tools libcap2-bin rsync grep udev xz-utils curl xxd file kmod bc\ + binfmt-support ca-certificates qemu-utils kpartx util-linux fdisk \ && rm -rf /var/lib/apt/lists/* COPY . /pi-gen/ diff --git a/LICENSE b/LICENSE index 665af33..e66b2c0 100644 --- a/LICENSE +++ b/LICENSE @@ -19,3 +19,17 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Copyright (c) 2015 Raspberry Pi (Trading) Ltd. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.md b/README.md index b948ab1..bea0e51 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,15 @@ List of pre-installed software: - [gpredict](https://github.com/csete/gpredict) - [EliasOenal/multimon-ng](https://github.com/EliasOenal/multimon-ng) - [pabr/leansdr](https://github.com/pabr/leansdr) +- [QtDAB](https://github.com/JvanKatwijk/qt-dab) +- [IIO Oscilloscope](https://github.com/analogdevicesinc/iio-oscilloscope) +- [RTL-AIS](https://github.com/dgiardini/rtl-ais) +- [Inspectrum](https://github.com/miek/inspectrum) +- [WSJT-X](https://physics.princeton.edu/pulsar/k1jt/wsjtx.html) +- [nrsc5](https://github.com/theori-io/nrsc5) +- [xwxapt](https://www.qsl.net/5b4az/pkg/apt/xwxapt/xwxapt.html) +- [GLRPT](https://github.com/dvdesolve/glrpt) +- [SDR++](https://github.com/AlexandreRouma/SDRPlusPlus) ### Radios We currently support the following SDR: @@ -50,6 +59,7 @@ We currently support the following SDR: - [Airspy HF+](https://airspy.com/airspy-hf-plus/) - [HackRF One](https://greatscottgadgets.com/hackrf/one/) - [USRP](https://www.ettus.com/products/) +- [SDRplay](https://www.sdrplay.com/) ## Getting started diff --git a/build-docker.sh b/build-docker.sh index c46c9b6..7c93873 100755 --- a/build-docker.sh +++ b/build-docker.sh @@ -48,6 +48,7 @@ fi CONTAINER_NAME=${CONTAINER_NAME:-pigen_work} CONTINUE=${CONTINUE:-0} PRESERVE_CONTAINER=${PRESERVE_CONTAINER:-0} +PIGEN_DOCKER_OPTS=${PIGEN_DOCKER_OPTS:-""} if [ -z "${IMG_NAME}" ]; then echo "IMG_NAME not set in 'config'" 1>&2 @@ -74,22 +75,7 @@ fi # Modify original build-options to allow config file to be mounted in the docker container BUILD_OPTS="$(echo "${BUILD_OPTS:-}" | sed -E 's@\-c\s?([^ ]+)@-c /config@')" -# Check the arch of the machine we're running on. If it's 64-bit, use a 32-bit base image instead -case "$(uname -m)" in - x86_64|aarch64) - case "$(uname -m)" in - aarch64) - BASE_IMAGE=arm32v7/debian:buster - ;; - *) - BASE_IMAGE=i386/debian:buster - ;; - esac - ;; - *) - BASE_IMAGE=debian:buster - ;; -esac +BASE_IMAGE=debian:buster ${DOCKER} build --build-arg BASE_IMAGE=${BASE_IMAGE} -t pi-gen "${DIR}" if [ "${CONTAINER_EXISTS}" != "" ]; then @@ -98,6 +84,7 @@ if [ "${CONTAINER_EXISTS}" != "" ]; then --cap-add=ALL \ -v /dev:/dev \ -v /lib/modules:/lib/modules \ + ${PIGEN_DOCKER_OPTS} \ --volume "${CONFIG_FILE}":/config:ro \ -e "GIT_HASH=${GIT_HASH}" \ --volumes-from="${CONTAINER_NAME}" --name "${CONTAINER_NAME}_cont" \ @@ -112,6 +99,7 @@ else --cap-add=ALL \ -v /dev:/dev \ -v /lib/modules:/lib/modules \ + ${PIGEN_DOCKER_OPTS} \ --volume "${CONFIG_FILE}":/config:ro \ -e "GIT_HASH=${GIT_HASH}" \ pi-gen \ diff --git a/build.sh b/build.sh index 9ebbdbf..d56583e 100755 --- a/build.sh +++ b/build.sh @@ -111,7 +111,7 @@ run_stage(){ STAGE_WORK_DIR="${WORK_DIR}/${STAGE}" ROOTFS_DIR="${STAGE_WORK_DIR}"/rootfs - if [ "${USE_QCOW2}" = "1" ]; then + if [ "${USE_QCOW2}" = "1" ]; then if [ ! -f SKIP ]; then load_qimage fi @@ -121,7 +121,7 @@ run_stage(){ unmount "${WORK_DIR}/${STAGE}" fi fi - + if [ ! -f SKIP_IMAGES ]; then if [ -f "${STAGE_DIR}/EXPORT_IMAGE" ]; then EXPORT_DIRS="${EXPORT_DIRS} ${STAGE_DIR}" @@ -219,7 +219,7 @@ export TARGET_HOSTNAME=${TARGET_HOSTNAME:-raspberrypi} export FIRST_USER_NAME=${FIRST_USER_NAME:-pi} export FIRST_USER_PASS=${FIRST_USER_PASS:-raspberry} -export RELEASE=${RELEASE:-buster} +export RELEASE=${RELEASE:-bullseye} export WPA_ESSID export WPA_PASSWORD export WPA_COUNTRY @@ -265,7 +265,7 @@ source "${SCRIPT_DIR}/common" source "${SCRIPT_DIR}/dependencies_check" export NO_PRERUN_QCOW2="${NO_PRERUN_QCOW2:-1}" -export USE_QCOW2="${USE_QCOW2:-1}" +export USE_QCOW2="${USE_QCOW2:-0}" export BASE_QCOW2_SIZE=${BASE_QCOW2_SIZE:-12G} source "${SCRIPT_DIR}/qcow2_handling" if [ "${USE_QCOW2}" = "1" ]; then diff --git a/depends b/depends index a86bc82..eeb2490 100644 --- a/depends +++ b/depends @@ -7,7 +7,7 @@ zerofree zip mkdosfs:dosfstools capsh:libcap2-bin -bsdtar +bsdtar:libarchive-tools grep rsync xz:xz-utils @@ -17,3 +17,5 @@ file git lsmod:kmod bc +qemu-nbd:qemu-utils +kpartx diff --git a/export-image/04-finalise/01-run.sh b/export-image/04-finalise/01-run.sh index 7af3226..b8f57e4 100755 --- a/export-image/04-finalise/01-run.sh +++ b/export-image/04-finalise/01-run.sh @@ -98,7 +98,7 @@ fi if [ "${DEPLOY_ZIP}" == "1" ]; then pushd "${STAGE_WORK_DIR}" > /dev/null - xz -c "$(basename "${IMG_FILE}")" > "${DEPLOY_DIR}/${ZIP_FILENAME}${IMG_SUFFIX}.img.xz" + xz -T16 -c "$(basename "${IMG_FILE}")" > "${DEPLOY_DIR}/${ZIP_FILENAME}${IMG_SUFFIX}.img.xz" popd > /dev/null rm -f "${DEPLOY_DIR}/${IMG_FILENAME}${IMG_SUFFIX}.img" else diff --git a/inspectrum.desktop b/inspectrum.desktop new file mode 100644 index 0000000..46348fd --- /dev/null +++ b/inspectrum.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Inspectrum +Comment=Inspectrum +Icon= +Exec=inspectrum +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/scripts/common b/scripts/common index e2048d9..5b0df12 100644 --- a/scripts/common +++ b/scripts/common @@ -16,13 +16,16 @@ bootstrap(){ BOOTSTRAP_ARGS+=(--arch armhf) BOOTSTRAP_ARGS+=(--components "main,contrib,non-free") BOOTSTRAP_ARGS+=(--keyring "${STAGE_DIR}/files/raspberrypi.gpg") + BOOTSTRAP_ARGS+=(--exclude=info) BOOTSTRAP_ARGS+=("$@") printf -v BOOTSTRAP_STR '%q ' "${BOOTSTRAP_ARGS[@]}" setarch linux32 capsh --drop=cap_setfcap -- -c "'${BOOTSTRAP_CMD}' $BOOTSTRAP_STR" || true - if [ -d "$2/debootstrap" ]; then - rmdir "$2/debootstrap" + if [ -d "$2/debootstrap" ] && ! rmdir "$2/debootstrap"; then + cp "$2/debootstrap/debootstrap.log" "${STAGE_WORK_DIR}" + log "bootstrap failed: please check ${STAGE_WORK_DIR}/debootstrap.log" + return 1 fi } export -f bootstrap diff --git a/scripts/dependencies_check b/scripts/dependencies_check index 375512b..32c42ef 100644 --- a/scripts/dependencies_check +++ b/scripts/dependencies_check @@ -28,11 +28,26 @@ dependencies_check() false fi + # If we're building on a native arm platform, we don't need to check for + # binfmt_misc or require it to be loaded. - if ! grep -q "/proc/sys/fs/binfmt_misc" /proc/mounts; then - echo "Module binfmt_misc not loaded in host" - echo "Please run:" - echo " sudo modprobe binfmt_misc" - exit 1 + binfmt_misc_required=1 + + case $(uname -m) in + aarch64) + binfmt_misc_required=0 + ;; + arm*) + binfmt_misc_required=0 + ;; + esac + + if [[ "${binfmt_misc_required}" == "1" ]]; then + if ! grep -q "/proc/sys/fs/binfmt_misc" /proc/mounts; then + echo "Module binfmt_misc not loaded in host" + echo "Please run:" + echo " sudo modprobe binfmt_misc" + exit 1 + fi fi } diff --git a/scripts/qcow2_handling b/scripts/qcow2_handling index f722937..6b2a56b 100644 --- a/scripts/qcow2_handling +++ b/scripts/qcow2_handling @@ -36,7 +36,7 @@ connect_blkdev() { init_nbd qemu-nbd --discard=unmap -c $NBD_DEV "$1" sync - kpartx -a $NBD_DEV + kpartx -as $NBD_DEV sync CURRENT_IMAGE="$1" } @@ -108,7 +108,7 @@ load_qimage() { 254MiB,,83; EOF sync - kpartx -a $NBD_DEV + kpartx -as $NBD_DEV mkdosfs -n boot -F 32 -v $MAP_BOOT_DEV mkfs.ext4 -L rootfs -O "^huge_file,^metadata_csum,^64bit" $MAP_ROOT_DEV sync @@ -123,7 +123,7 @@ EOF sync qemu-nbd --discard=unmap -c $NBD_DEV image-${STAGE}.qcow2 sync - kpartx -a $NBD_DEV + kpartx -as $NBD_DEV fi mount -v -t ext4 $MAP_ROOT_DEV "${ROOTFS_DIR}" diff --git a/stage0/02-firmware/01-packages b/stage0/02-firmware/01-packages index b166aa8..127bf36 100644 --- a/stage0/02-firmware/01-packages +++ b/stage0/02-firmware/01-packages @@ -1,2 +1,3 @@ raspberrypi-bootloader raspberrypi-kernel +raspi-config diff --git a/stage1/00-boot-files/files/cmdline.txt b/stage1/00-boot-files/files/cmdline.txt index b815bd8..03cde68 100644 --- a/stage1/00-boot-files/files/cmdline.txt +++ b/stage1/00-boot-files/files/cmdline.txt @@ -1 +1 @@ -console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait +console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 fsck.repair=yes rootwait diff --git a/stage1/00-boot-files/files/config.txt b/stage1/00-boot-files/files/config.txt index 1494cdc..a976ef2 100644 --- a/stage1/00-boot-files/files/config.txt +++ b/stage1/00-boot-files/files/config.txt @@ -5,10 +5,6 @@ # uncomment if you get no picture on HDMI for a default "safe" mode #hdmi_safe=1 -# uncomment this if your display has a black border of unused pixels visible -# and your display can output without overscan -#disable_overscan=1 - # uncomment the following to adjust overscan. Use positive numbers if console # goes off screen, and negative if there is too much border #overscan_left=16 @@ -56,10 +52,29 @@ # Enable audio (loads snd_bcm2835) dtparam=audio=on -[pi4] -# Enable DRM VC4 V3D driver on top of the dispmanx display stack -dtoverlay=vc4-fkms-v3d +# Automatically load overlays for detected cameras +camera_auto_detect=1 + +# Automatically load overlays for detected DSI displays +display_auto_detect=1 + +# Enable DRM VC4 V3D driver +dtoverlay=vc4-kms-v3d max_framebuffers=2 +# Disable compensation for displays with overscan +disable_overscan=1 + +[cm4] +# Enable host mode on the 2711 built-in XHCI USB controller. +# This line should be removed if the legacy DWC2 controller is required +# (e.g. for USB device mode) or if USB support is not required. +otg_mode=1 + +[all] + +[pi4] +# Run as fast as firmware / board allows +arm_boost=1 + [all] -#dtoverlay=vc4-fkms-v3d diff --git a/stage1/02-net-tweaks/00-run.sh b/stage1/02-net-tweaks/00-run.sh index 4943cab..95dfbdc 100755 --- a/stage1/02-net-tweaks/00-run.sh +++ b/stage1/02-net-tweaks/00-run.sh @@ -3,4 +3,6 @@ echo "${TARGET_HOSTNAME}" > "${ROOTFS_DIR}/etc/hostname" echo "127.0.1.1 ${TARGET_HOSTNAME}" >> "${ROOTFS_DIR}/etc/hosts" -ln -sf /dev/null "${ROOTFS_DIR}/etc/systemd/network/99-default.link" +on_chroot << EOF + SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_net_names 1 +EOF diff --git a/stage1/03-install-packages/00-packages b/stage1/03-install-packages/00-packages index e8c148c..73edcc9 100644 --- a/stage1/03-install-packages/00-packages +++ b/stage1/03-install-packages/00-packages @@ -1 +1 @@ -libraspberrypi-bin libraspberrypi0 raspi-config +libraspberrypi-bin libraspberrypi0 diff --git a/stage2/01-sys-tweaks/00-packages b/stage2/01-sys-tweaks/00-packages index a1f4b59..55f8451 100644 --- a/stage2/01-sys-tweaks/00-packages +++ b/stage2/01-sys-tweaks/00-packages @@ -1,8 +1,8 @@ ssh less fbset sudo psmisc strace ed ncdu crda console-setup keyboard-configuration debconf-utils parted unzip -build-essential manpages-dev python bash-completion gdb pkg-config -python-rpi.gpio v4l-utils -python-gpiozero +build-essential manpages-dev bash-completion gdb pkg-config +python-is-python3 +python3-rpi.gpio v4l-utils python3-gpiozero avahi-daemon lua5.1 @@ -26,7 +26,6 @@ policykit-1 ssh-import-id rng-tools ethtool -vl805fw ntfs-3g pciutils rpi-eeprom diff --git a/stage2/01-sys-tweaks/00-patches/07-resize-init.diff b/stage2/01-sys-tweaks/00-patches/07-resize-init.diff index 8c41357..cb160ae 100644 --- a/stage2/01-sys-tweaks/00-patches/07-resize-init.diff +++ b/stage2/01-sys-tweaks/00-patches/07-resize-init.diff @@ -1,5 +1,5 @@ --- stage2.orig/rootfs/boot/cmdline.txt +++ stage2/rootfs/boot/cmdline.txt @@ -1 +1 @@ --console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait -+console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh +-console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 fsck.repair=yes rootwait ++console=serial0,115200 console=tty1 root=ROOTDEV rootfstype=ext4 fsck.repair=yes rootwait quiet init=/usr/lib/raspi-config/init_resize.sh diff --git a/stage2/02-net-tweaks/01-run.sh b/stage2/02-net-tweaks/01-run.sh index d82381b..837e861 100755 --- a/stage2/02-net-tweaks/01-run.sh +++ b/stage2/02-net-tweaks/01-run.sh @@ -1,11 +1,12 @@ #!/bin/bash -e -install -v -d "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.service.d" -install -v -m 644 files/wait.conf "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.service.d/" - install -v -d "${ROOTFS_DIR}/etc/wpa_supplicant" install -v -m 600 files/wpa_supplicant.conf "${ROOTFS_DIR}/etc/wpa_supplicant/" +on_chroot << EOF + SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_boot_wait 0 +EOF + if [ -v WPA_COUNTRY ]; then echo "country=${WPA_COUNTRY}" >> "${ROOTFS_DIR}/etc/wpa_supplicant/wpa_supplicant.conf" fi diff --git a/stage2/02-net-tweaks/files/wait.conf b/stage2/02-net-tweaks/files/wait.conf deleted file mode 100644 index 595cc2d..0000000 --- a/stage2/02-net-tweaks/files/wait.conf +++ /dev/null @@ -1,3 +0,0 @@ -[Service] -ExecStart= -ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w diff --git a/stage3/00-install-packages/00-packages b/stage3/00-install-packages/00-packages index eac74ea..02cf93d 100644 --- a/stage3/00-install-packages/00-packages +++ b/stage3/00-install-packages/00-packages @@ -2,8 +2,6 @@ gstreamer1.0-x gstreamer1.0-omx gstreamer1.0-plugins-base gstreamer1.0-plugins-g qpdfview gtk2-engines alsa-utils desktop-base git -omxplayer -raspberrypi-artwork policykit-1 gvfs rfkill @@ -13,3 +11,5 @@ fonts-droid-fallback fonts-liberation2 obconf arandr +libcamera-tools +libcamera-apps \ No newline at end of file diff --git a/stage3/00-install-packages/00-packages-nr b/stage3/00-install-packages/00-packages-nr index ffc324b..eb85329 100644 --- a/stage3/00-install-packages/00-packages-nr +++ b/stage3/00-install-packages/00-packages-nr @@ -3,4 +3,4 @@ mousepad lxde lxtask menu-xdg zenity xdg-utils gvfs-backends gvfs-fuse -lightdm gnome-themes-standard-data gnome-icon-theme +lightdm gnome-themes-standard-data gnome-icon-theme \ No newline at end of file diff --git a/stage3/01-tweaks/00-run.sh b/stage3/01-tweaks/00-run.sh index 5da7c1a..79b749e 100755 --- a/stage3/01-tweaks/00-run.sh +++ b/stage3/01-tweaks/00-run.sh @@ -1,3 +1,5 @@ #!/bin/bash -e -rm -f "${ROOTFS_DIR}/etc/systemd/system/dhcpcd.service.d/wait.conf" +on_chroot << EOF + SUDO_USER="${FIRST_USER_NAME}" raspi-config nonint do_boot_wait 1 +EOF diff --git a/stage4/00-install-packages/00-packages b/stage4/00-install-packages/00-packages index 85a9f80..e76d411 100644 --- a/stage4/00-install-packages/00-packages +++ b/stage4/00-install-packages/00-packages @@ -1,11 +1,11 @@ -python python3-pygame python-pygame python-tk -python3 python3-tk thonny +python3-pygame +python3-tk thonny python3-pgzero -python-serial python3-serial -python-picamera python3-picamera +python3-serial +python3-picamera debian-reference-en dillo raspberrypi-net-mods raspberrypi-ui-mods -python-pip python3-pip +python3-pip python3-numpy pypy alacarte rc-gui sense-hat @@ -13,11 +13,11 @@ tree libgl1-mesa-dri libgles1 libgles2-mesa xcompmgr geany piclone -wiringpi pigpio python-pigpio python3-pigpio raspi-gpio python3-rpi.gpio -python-spidev python3-spidev -python-twython python3-twython -python-smbus python3-smbus -python-flask python3-flask +pigpio python3-pigpio raspi-gpio python3-rpi.gpio +python3-spidev +python3-twython +python3-smbus +python3-flask pprompt piwiz rp-prefapps diff --git a/stage4/00-install-packages/01-packages b/stage4/00-install-packages/01-packages index fdf5e73..5441d9d 100644 --- a/stage4/00-install-packages/01-packages +++ b/stage4/00-install-packages/01-packages @@ -1,22 +1,22 @@ -python-automationhat python3-automationhat -python-blinkt python3-blinkt -python-cap1xxx python3-cap1xxx -python-drumhat python3-drumhat -python-envirophat python3-envirophat -python-explorerhat python3-explorerhat -python-fourletterphat python3-fourletterphat -python-microdotphat python3-microdotphat -python-mote python3-mote -python-motephat python3-motephat -python-phatbeat python3-phatbeat -python-pianohat python3-pianohat -python-piglow python3-piglow -python-rainbowhat python3-rainbowhat -python-scrollphat python3-scrollphat -python-scrollphathd python3-scrollphathd -python-sn3218 python3-sn3218 -python-skywriter python3-skywriter -python-touchphat python3-touchphat -python-buttonshim python3-buttonshim -python-unicornhathd python3-unicornhathd -python-pantilthat python3-pantilthat +python3-automationhat +python3-blinkt +python3-cap1xxx +python3-drumhat +python3-envirophat +python3-explorerhat +python3-fourletterphat +python3-microdotphat +python3-mote +python3-motephat +python3-phatbeat +python3-pianohat +python3-piglow +python3-rainbowhat +python3-scrollphat +python3-scrollphathd +python3-sn3218 +python3-skywriter +python3-touchphat +python3-buttonshim +python3-unicornhathd +python3-pantilthat diff --git a/stage4/04-enable-xcompmgr/00-run.sh b/stage4/04-enable-xcompmgr/00-run.sh deleted file mode 100755 index ad6298d..0000000 --- a/stage4/04-enable-xcompmgr/00-run.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -e - -on_chroot << EOF - raspi-config nonint do_xcompmgr 0 -EOF diff --git a/stage4/04-pisdr-system/00-packages b/stage4/04-pisdr-system/00-packages index 136be47..5020efa 100644 --- a/stage4/04-pisdr-system/00-packages +++ b/stage4/04-pisdr-system/00-packages @@ -1,8 +1,15 @@ vim tmux cmake +ninja-build build-essential git pkg-config re2c -libssl-dev \ No newline at end of file +libssl-dev +xterm + +libboost-dev +python3-pytest +pybind11-dev +python3-pybind11 \ No newline at end of file diff --git a/stage4/04-pisdr-system/01-run.sh b/stage4/04-pisdr-system/01-run.sh index 583d3e5..828d1ed 100755 --- a/stage4/04-pisdr-system/01-run.sh +++ b/stage4/04-pisdr-system/01-run.sh @@ -1,15 +1,23 @@ install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" install -v -o 1000 -g 1000 -m 755 shortcut/gnuradio.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" install -v -o 1000 -g 1000 -m 755 shortcut/gqrx.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" -install -v -o 1000 -g 1000 -m 755 shortcut/sdrangel.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" install -v -o 1000 -g 1000 -m 755 shortcut/gpredict.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/glrpt.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/osc.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/qtdab.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/sdrpp.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/wsjtx.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/inspectrum.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/limesuite.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/urh.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" +install -v -o 1000 -g 1000 -m 755 shortcut/quisk.desktop "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/Desktop/" install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/usr/share/rpd-wallpaper/" -install -v -o 1000 -g 1000 -m 755 wallpaper/donald-giannatti-vla.jpg "${ROOTFS_DIR}/usr/share/rpd-wallpaper/" +install -v -o 1000 -g 1000 -m 755 wallpaper/kevin-quezada-lmt.jpg "${ROOTFS_DIR}/usr/share/rpd-wallpaper/" install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config/" install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config/menus/" install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config/pcmanfm/" install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config/pcmanfm/LXDE-pi/" -install -v -o 1000 -g 1000 -m 644 wallpaper/desktop-items-0.conf "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config/pcmanfm/LXDE-pi/" \ No newline at end of file +install -v -o 1000 -g 1000 -m 644 wallpaper/desktop-items-0.conf "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/.config/pcmanfm/LXDE-pi/" diff --git a/stage4/04-pisdr-system/03-run.sh b/stage4/04-pisdr-system/03-run.sh index 946d0ed..f2d479c 100755 --- a/stage4/04-pisdr-system/03-run.sh +++ b/stage4/04-pisdr-system/03-run.sh @@ -1,6 +1,8 @@ #!/bin/bash -e +install -m 755 patch/export.txt "${ROOTFS_DIR}/etc/" + on_chroot << EOF -python3 -m pip install cmake -python3 -m pip install ninja +cat /etc/export.txt >> /home/${FIRST_USER_NAME}/.bashrc +source /home/${FIRST_USER_NAME}/.bashrc EOF diff --git a/stage4/04-pisdr-system/04-run.sh b/stage4/04-pisdr-system/04-run.sh deleted file mode 100755 index f2d479c..0000000 --- a/stage4/04-pisdr-system/04-run.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash -e - -install -m 755 patch/export.txt "${ROOTFS_DIR}/etc/" - -on_chroot << EOF -cat /etc/export.txt >> /home/${FIRST_USER_NAME}/.bashrc -source /home/${FIRST_USER_NAME}/.bashrc -EOF diff --git a/stage4/04-pisdr-system/shortcut/glrpt.desktop b/stage4/04-pisdr-system/shortcut/glrpt.desktop new file mode 100644 index 0000000..ce3d246 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/glrpt.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=GLRPT +Comment=GLRPT +Icon=/home/pi/PiSDR/Software/glrpt/share/launcher/glrpt.svg +Exec=glrpt +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/inspectrum.desktop b/stage4/04-pisdr-system/shortcut/inspectrum.desktop new file mode 100644 index 0000000..46348fd --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/inspectrum.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Inspectrum +Comment=Inspectrum +Icon= +Exec=inspectrum +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/limesuite.desktop b/stage4/04-pisdr-system/shortcut/limesuite.desktop new file mode 100644 index 0000000..434b430 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/limesuite.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=LimeSuite +Comment=LimeSuite +Icon=/home/pi/PiSDR/Radios/LimeSuite/Desktop/lime-suite-128.png +Exec=LimeSuiteGUI +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/osc.desktop b/stage4/04-pisdr-system/shortcut/osc.desktop new file mode 100644 index 0000000..8c6e099 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/osc.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=IIO Oscilloscope +Comment=IIO Oscilloscope +Icon=/home/pi/PiSDR/Software/iio-oscilloscope/icons/osc.svg +Exec=osc +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/qtdab.desktop b/stage4/04-pisdr-system/shortcut/qtdab.desktop new file mode 100644 index 0000000..d7d4973 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/qtdab.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=QtDAB +Comment=QtDAB +Icon=/home/pi/PiSDR/Software/qt-dab/dab-maxi/qt-dab.png +Exec=qt-dab-4.11 +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/quisk.desktop b/stage4/04-pisdr-system/shortcut/quisk.desktop new file mode 100644 index 0000000..0cd7348 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/quisk.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Quisk +Comment=Quisk +Icon= +Exec=quisk +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/sdrangel.desktop b/stage4/04-pisdr-system/shortcut/sdrangel.desktop deleted file mode 100644 index 2f76758..0000000 --- a/stage4/04-pisdr-system/shortcut/sdrangel.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Name=SDR Angel -Comment=SDR Angel -Icon=/home/pi/PiSDR/Software/sdrangel/cmake/cpack/sdrangel_icon.svg -Exec=sdrangel -Type=Application -Encoding=UTF-8 -Terminal=true -Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/sdrpp.desktop b/stage4/04-pisdr-system/shortcut/sdrpp.desktop new file mode 100644 index 0000000..5fb9a59 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/sdrpp.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=SDR++ +Comment=SDR++ +Icon=/home/pi/PiSDR/Software/SDRPlusPlus/root/res/icons/sdrpp.png +Exec=sdrpp +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/urh.desktop b/stage4/04-pisdr-system/shortcut/urh.desktop new file mode 100644 index 0000000..1df7599 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/urh.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=Universal Radio Hacker +Comment=Universal Radio Hacker +Icon=/home/pi/PiSDR/Software/urh/data/icons/appicon.svg +Exec=urh +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/shortcut/wsjtx.desktop b/stage4/04-pisdr-system/shortcut/wsjtx.desktop new file mode 100644 index 0000000..a527303 --- /dev/null +++ b/stage4/04-pisdr-system/shortcut/wsjtx.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=WSJTX +Comment=WSJTX +Icon= +Exec=wsjtx +Type=Application +Encoding=UTF-8 +Terminal=true +Categories=None; \ No newline at end of file diff --git a/stage4/04-pisdr-system/wallpaper/desktop-items-0.conf b/stage4/04-pisdr-system/wallpaper/desktop-items-0.conf index 5c29f8f..3ecd629 100644 --- a/stage4/04-pisdr-system/wallpaper/desktop-items-0.conf +++ b/stage4/04-pisdr-system/wallpaper/desktop-items-0.conf @@ -1,4 +1,4 @@ [*] wallpaper_mode=crop wallpaper_common=1 -wallpaper=/usr/share/rpd-wallpaper/donald-giannatti-vla.jpg \ No newline at end of file +wallpaper=/usr/share/rpd-wallpaper/kevin-quezada-lmt.jpg diff --git a/stage4/04-pisdr-system/wallpaper/donald-giannatti-vla.jpg b/stage4/04-pisdr-system/wallpaper/donald-giannatti-vla.jpg deleted file mode 100644 index 102fb59..0000000 Binary files a/stage4/04-pisdr-system/wallpaper/donald-giannatti-vla.jpg and /dev/null differ diff --git a/stage4/04-pisdr-system/wallpaper/kevin-quezada-lmt.jpg b/stage4/04-pisdr-system/wallpaper/kevin-quezada-lmt.jpg new file mode 100644 index 0000000..2563063 Binary files /dev/null and b/stage4/04-pisdr-system/wallpaper/kevin-quezada-lmt.jpg differ diff --git a/stage4/05-pisdr-uhd/00-run.sh b/stage4/05-pisdr-uhd/00-run.sh index 21f6e62..4c92c61 100755 --- a/stage4/05-pisdr-uhd/00-run.sh +++ b/stage4/05-pisdr-uhd/00-run.sh @@ -11,14 +11,14 @@ fi cd uhd/host mkdir -p build cd build -cmake -DCMAKE_CXX_FLAGS:STRING="-march=armv7-a -mfloat-abi=hard -mfpu=neon -mtune=cortex-a15 -Wno-psabi" \ - -DCMAKE_C_FLAGS:STRING="-march=armv7-a -mfloat-abi=hard -mfpu=neon -mtune=cortex-a15 -Wno-psabi" \ - -DCMAKE_ASM_FLAGS:STRING="-march=armv7-a -mfloat-abi=hard -mfpu=neon -mtune=cortex-a15" \ - -GNinja -DCMAKE_BUILD_TYPE=Release ../ +cmake -DCMAKE_CXX_FLAGS:STRING="-march=armv6z -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -Wno-psabi" \ + -DCMAKE_C_FLAGS:STRING="-march=armv6z -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -Wno-psabi" \ + -DCMAKE_ASM_FLAGS:STRING="-march=armv6z -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard " \ + -GNinja -DNEON_SIMD_ENABLE=OFF -DCMAKE_BUILD_TYPE=Release ../ ninja install cp /usr/local/lib/uhd/utils/uhd-usrp.rules /etc/udev/rules.d/ ldconfig uhd_images_downloader cd .. rm -fr build -EOF \ No newline at end of file +EOF diff --git a/stage4/07-pisdr-soapysdr/00-packages-nr b/stage4/06-pisdr-soapysdr/00-packages-nr similarity index 71% rename from stage4/07-pisdr-soapysdr/00-packages-nr rename to stage4/06-pisdr-soapysdr/00-packages-nr index d39cd18..445a2fc 100644 --- a/stage4/07-pisdr-soapysdr/00-packages-nr +++ b/stage4/06-pisdr-soapysdr/00-packages-nr @@ -3,4 +3,4 @@ avahi-daemon libavahi-client-dev libusb-1.0-0-dev -python-dev python3-dev \ No newline at end of file +python3-dev \ No newline at end of file diff --git a/stage4/07-pisdr-soapysdr/01-run.sh b/stage4/06-pisdr-soapysdr/01-run.sh similarity index 100% rename from stage4/07-pisdr-soapysdr/01-run.sh rename to stage4/06-pisdr-soapysdr/01-run.sh diff --git a/stage4/07-pisdr-soapysdr/02-run.sh b/stage4/06-pisdr-soapysdr/02-run.sh similarity index 100% rename from stage4/07-pisdr-soapysdr/02-run.sh rename to stage4/06-pisdr-soapysdr/02-run.sh diff --git a/stage4/07-pisdr-sdrplay/00-run.sh b/stage4/07-pisdr-sdrplay/00-run.sh new file mode 100755 index 0000000..396ab57 --- /dev/null +++ b/stage4/07-pisdr-sdrplay/00-run.sh @@ -0,0 +1,21 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Radios" +cd "/home/${FIRST_USER_NAME}/PiSDR/Radios" + +if [ ! -d "sdrplay" ]; then + mkdir -p sdrplay +fi + +cd sdrplay +wget https://www.sdrplay.com/software/SDRplay_RSP_API-ARM32-3.07.2.run +chmod +x ./SDRplay_RSP_API-ARM32-3.07.2.run +./SDRplay_RSP_API-ARM32-3.07.2.run --check +./SDRplay_RSP_API-ARM32-3.07.2.run --noexec --target . +sed -i 's/more sdrplay_license.txt//g' install_lib.sh +sed -i 's/ARCH=\`uname -m\`/ARCH=armv7l/g' install_lib.sh +printf "\ny\ny\ny\n" | ./install_lib.sh +systemctl enable sdrplay +ldconfig +EOF \ No newline at end of file diff --git a/stage4/11-pisdr-plutosdr/02-run.sh b/stage4/07-pisdr-sdrplay/01-run.sh similarity index 52% rename from stage4/11-pisdr-plutosdr/02-run.sh rename to stage4/07-pisdr-sdrplay/01-run.sh index 5507565..90651f5 100755 --- a/stage4/11-pisdr-plutosdr/02-run.sh +++ b/stage4/07-pisdr-sdrplay/01-run.sh @@ -4,14 +4,14 @@ on_chroot << EOF mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Radios" cd "/home/${FIRST_USER_NAME}/PiSDR/Radios" -if [ ! -d "gr-iio" ]; then - git clone --single-branch --branch upgrade-3.8 --depth 1 https://github.com/analogdevicesinc/gr-iio +if [ ! -d "SoapySDRPlay3" ]; then + git clone --depth 1 https://github.com/pothosware/SoapySDRPlay3.git fi -cd gr-iio +cd SoapySDRPlay3 mkdir -p build cd build -cmake -GNinja -DINSTALL_UDEV_RULE=ON .. +cmake -GNinja -DCMAKE_CXX_FLAGS=-latomic .. ninja install ldconfig cd .. diff --git a/stage4/07-pisdr-soapysdr/03-run.sh b/stage4/07-pisdr-soapysdr/03-run.sh deleted file mode 100755 index cabe0f3..0000000 --- a/stage4/07-pisdr-soapysdr/03-run.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash - -on_chroot << EOF -mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" -cd "/home/${FIRST_USER_NAME}/PiSDR/Software" - -if [ ! -d "gr-soapy" ]; then - git clone --depth 1 https://gitlab.com/librespacefoundation/gr-soapy.git -fi - -cd gr-soapy -mkdir -p build -cd build -cmake -GNinja .. -ninja install -ldconfig -cd .. -rm -fr build -EOF diff --git a/stage4/09-pisdr-airspy/00-run.sh b/stage4/08-pisdr-airspy/00-run.sh similarity index 100% rename from stage4/09-pisdr-airspy/00-run.sh rename to stage4/08-pisdr-airspy/00-run.sh diff --git a/stage4/09-pisdr-airspy/01-run.sh b/stage4/08-pisdr-airspy/01-run.sh similarity index 100% rename from stage4/09-pisdr-airspy/01-run.sh rename to stage4/08-pisdr-airspy/01-run.sh diff --git a/stage4/09-pisdr-airspy/02-run.sh b/stage4/08-pisdr-airspy/02-run.sh similarity index 100% rename from stage4/09-pisdr-airspy/02-run.sh rename to stage4/08-pisdr-airspy/02-run.sh diff --git a/stage4/09-pisdr-airspy/03-run.sh b/stage4/08-pisdr-airspy/03-run.sh similarity index 100% rename from stage4/09-pisdr-airspy/03-run.sh rename to stage4/08-pisdr-airspy/03-run.sh diff --git a/stage4/08-pisdr-limesdr/01-run.sh b/stage4/08-pisdr-limesdr/01-run.sh deleted file mode 100755 index 70c3645..0000000 --- a/stage4/08-pisdr-limesdr/01-run.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -e - -on_chroot << EOF -mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Radios" -cd "/home/${FIRST_USER_NAME}/PiSDR/Radios" - -if [ ! -d "gr-limesdr" ]; then - git clone --single-branch --branch gr-3.8 --depth 1 https://github.com/myriadrf/gr-limesdr.git -fi - -cd gr-limesdr -mkdir -p build -cd build -cmake -GNinja -DCMAKE_CXX_FLAGS=-latomic .. -ninja install -ldconfig -cd .. -rm -fr build -EOF diff --git a/stage4/08-pisdr-limesdr/00-packages-nr b/stage4/09-pisdr-limesdr/00-packages-nr similarity index 58% rename from stage4/08-pisdr-limesdr/00-packages-nr rename to stage4/09-pisdr-limesdr/00-packages-nr index 1420797..e8fa6ae 100644 --- a/stage4/08-pisdr-limesdr/00-packages-nr +++ b/stage4/09-pisdr-limesdr/00-packages-nr @@ -2,5 +2,5 @@ swig libsqlite3-dev libi2c-dev libusb-1.0-0-dev -libwxgtk3.0-dev +libwxgtk3.0-gtk3-dev freeglut3-dev \ No newline at end of file diff --git a/stage4/08-pisdr-limesdr/00-run.sh b/stage4/09-pisdr-limesdr/00-run.sh similarity index 100% rename from stage4/08-pisdr-limesdr/00-run.sh rename to stage4/09-pisdr-limesdr/00-run.sh diff --git a/stage4/11-pisdr-plutosdr/00-packages-nr b/stage4/10-pisdr-plutosdr/00-packages-nr similarity index 100% rename from stage4/11-pisdr-plutosdr/00-packages-nr rename to stage4/10-pisdr-plutosdr/00-packages-nr diff --git a/stage4/11-pisdr-plutosdr/00-run.sh b/stage4/10-pisdr-plutosdr/00-run.sh similarity index 100% rename from stage4/11-pisdr-plutosdr/00-run.sh rename to stage4/10-pisdr-plutosdr/00-run.sh diff --git a/stage4/11-pisdr-plutosdr/01-run.sh b/stage4/10-pisdr-plutosdr/01-run.sh similarity index 100% rename from stage4/11-pisdr-plutosdr/01-run.sh rename to stage4/10-pisdr-plutosdr/01-run.sh diff --git a/stage4/11-pisdr-plutosdr/03-run.sh b/stage4/10-pisdr-plutosdr/03-run.sh similarity index 100% rename from stage4/11-pisdr-plutosdr/03-run.sh rename to stage4/10-pisdr-plutosdr/03-run.sh diff --git a/stage4/28-pisdr-osmo-fl2k/00-packages-nr b/stage4/11-pisdr-rtlsdr/00-packages-nr similarity index 100% rename from stage4/28-pisdr-osmo-fl2k/00-packages-nr rename to stage4/11-pisdr-rtlsdr/00-packages-nr diff --git a/stage4/10-pisdr-rtlsdr/00-run.sh b/stage4/11-pisdr-rtlsdr/00-run.sh similarity index 100% rename from stage4/10-pisdr-rtlsdr/00-run.sh rename to stage4/11-pisdr-rtlsdr/00-run.sh diff --git a/stage4/10-pisdr-rtlsdr/01-run.sh b/stage4/11-pisdr-rtlsdr/01-run.sh similarity index 100% rename from stage4/10-pisdr-rtlsdr/01-run.sh rename to stage4/11-pisdr-rtlsdr/01-run.sh diff --git a/stage4/12-pisdr-hackrf/00-packages b/stage4/12-pisdr-hackrf/00-packages new file mode 100644 index 0000000..833b3da --- /dev/null +++ b/stage4/12-pisdr-hackrf/00-packages @@ -0,0 +1 @@ +libfftw3-dev \ No newline at end of file diff --git a/stage4/06-pisdr-gnuradio/00-packages-nr b/stage4/13-pisdr-gnuradio/00-packages-nr similarity index 79% rename from stage4/06-pisdr-gnuradio/00-packages-nr rename to stage4/13-pisdr-gnuradio/00-packages-nr index b854773..942501c 100644 --- a/stage4/06-pisdr-gnuradio/00-packages-nr +++ b/stage4/13-pisdr-gnuradio/00-packages-nr @@ -1,12 +1,9 @@ libboost-all-dev -swig libzmq3-dev libfftw3-dev libgsl-dev libcppunit-dev libcomedi-dev -libqt4-opengl-dev -libqwt-dev libsdl1.2-dev libusb-1.0-0-dev libasound2-dev @@ -15,10 +12,14 @@ libportaudio2 pulseaudio libjack-dev libgmp-dev -libsdl1.2-dev liblog4cpp5-dev libqwt-qt5-dev libqt5opengl5-dev +libcodec2-dev +libsndfile1-dev +pybind11-dev +gir1.2-gtk-3.0 +swig python3-numpy python3-mako @@ -32,3 +33,6 @@ python3-zmq python3-scipy python3-pip python3-gi-cairo +python3-matplotlib +python3-pygccxml +python3-pyqtgraph \ No newline at end of file diff --git a/stage4/13-pisdr-gnuradio/00-run.sh b/stage4/13-pisdr-gnuradio/00-run.sh new file mode 100755 index 0000000..b54a0ff --- /dev/null +++ b/stage4/13-pisdr-gnuradio/00-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "volk" ]; then + git clone --single-branch --branch v2.5.0 --depth 1 --recurse-submodules --shallow-submodules https://github.com/gnuradio/volk.git +fi + +cd volk +mkdir -p build +cd build +cmake -GNinja -DCMAKE_BUILD_TYPE=Release .. +ninja install +ldconfig +cd .. +rm -fr build +EOF diff --git a/stage4/06-pisdr-gnuradio/00-run.sh b/stage4/13-pisdr-gnuradio/01-run.sh similarity index 85% rename from stage4/06-pisdr-gnuradio/00-run.sh rename to stage4/13-pisdr-gnuradio/01-run.sh index c615d12..7396b8f 100755 --- a/stage4/06-pisdr-gnuradio/00-run.sh +++ b/stage4/13-pisdr-gnuradio/01-run.sh @@ -5,7 +5,7 @@ mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" cd "/home/${FIRST_USER_NAME}/PiSDR/Software" if [ ! -d "gnuradio" ]; then - git clone --single-branch --branch maint-3.8 --depth 1 --recurse-submodules --shallow-submodules https://github.com/gnuradio/gnuradio.git + git clone --single-branch --branch maint-3.9 --depth 1 --recurse-submodules --shallow-submodules https://github.com/gnuradio/gnuradio.git fi cd gnuradio @@ -17,4 +17,4 @@ ninja install ldconfig cd .. rm -fr build -EOF \ No newline at end of file +EOF diff --git a/stage4/14-pisdr-gnuradio-mod/01-run.sh b/stage4/14-pisdr-gnuradio-mod/01-run.sh new file mode 100755 index 0000000..0e4a775 --- /dev/null +++ b/stage4/14-pisdr-gnuradio-mod/01-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "gr-limesdr" ]; then + git clone --single-branch --branch gr39 --depth 1 https://github.com/daniestevez/gr-limesdr.git +fi + +cd gr-limesdr +mkdir -p build +cd build +cmake -GNinja -DCMAKE_CXX_FLAGS=-latomic .. +ninja install +ldconfig +cd .. +rm -fr build +EOF diff --git a/stage4/13-pisdr-osmocom/00-run.sh b/stage4/14-pisdr-gnuradio-mod/02-run.sh similarity index 75% rename from stage4/13-pisdr-osmocom/00-run.sh rename to stage4/14-pisdr-gnuradio-mod/02-run.sh index 9f505b9..1fff15f 100755 --- a/stage4/13-pisdr-osmocom/00-run.sh +++ b/stage4/14-pisdr-gnuradio-mod/02-run.sh @@ -5,7 +5,7 @@ mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" cd "/home/${FIRST_USER_NAME}/PiSDR/Software" if [ ! -d "gr-osmosdr" ]; then - git clone --single-branch --branch gr3.8 --depth 1 git://git.osmocom.org/gr-osmosdr + git clone --single-branch --branch master --depth 1 git://git.osmocom.org/gr-osmosdr fi cd gr-osmosdr diff --git a/stage4/14-pisdr-gnuradio-mod/03-run.sh b/stage4/14-pisdr-gnuradio-mod/03-run.sh new file mode 100755 index 0000000..73401a1 --- /dev/null +++ b/stage4/14-pisdr-gnuradio-mod/03-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "gr-sdrplay3" ]; then + git clone --single-branch --branch master --depth 1 https://github.com/fventuri/gr-sdrplay3.git +fi + +cd gr-sdrplay3 +mkdir -p build +cd build +cmake -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF diff --git a/stage4/14-pisdr-gqrx/00-packages-nr b/stage4/15-pisdr-gqrx/00-packages-nr similarity index 91% rename from stage4/14-pisdr-gqrx/00-packages-nr rename to stage4/15-pisdr-gqrx/00-packages-nr index ea48125..a80ec40 100644 --- a/stage4/14-pisdr-gqrx/00-packages-nr +++ b/stage4/15-pisdr-gqrx/00-packages-nr @@ -4,7 +4,6 @@ libtool libfftw3-dev libusb-1.0-0-dev libusb-dev -qt5-default qtbase5-dev qtchooser libqt5multimedia5-plugins diff --git a/stage4/14-pisdr-gqrx/00-run.sh b/stage4/15-pisdr-gqrx/00-run.sh similarity index 100% rename from stage4/14-pisdr-gqrx/00-run.sh rename to stage4/15-pisdr-gqrx/00-run.sh diff --git a/stage4/15-pisdr-cygnusrf/00-run.sh b/stage4/16-pisdr-cygnusrf/00-run.sh similarity index 100% rename from stage4/15-pisdr-cygnusrf/00-run.sh rename to stage4/16-pisdr-cygnusrf/00-run.sh diff --git a/stage4/16-pisdr-rtl443/00-run.sh b/stage4/17-pisdr-rtl443/00-run.sh similarity index 100% rename from stage4/16-pisdr-rtl443/00-run.sh rename to stage4/17-pisdr-rtl443/00-run.sh diff --git a/stage4/17-pisdr-sdrangel/00-packages-nr b/stage4/18-pisdr-sdrangel/00-packages-nr similarity index 98% rename from stage4/17-pisdr-sdrangel/00-packages-nr rename to stage4/18-pisdr-sdrangel/00-packages-nr index 2d0bf05..8990ffa 100644 --- a/stage4/17-pisdr-sdrangel/00-packages-nr +++ b/stage4/18-pisdr-sdrangel/00-packages-nr @@ -8,7 +8,6 @@ libtool libfftw3-dev libusb-1.0-0-dev libusb-dev -qt5-default qtbase5-dev qtchooser libqt5multimedia5-plugins diff --git a/stage4/17-pisdr-sdrangel/00-run.sh b/stage4/18-pisdr-sdrangel/00-run.sh similarity index 100% rename from stage4/17-pisdr-sdrangel/00-run.sh rename to stage4/18-pisdr-sdrangel/00-run.sh diff --git a/stage4/17-pisdr-sdrangel/01-run.sh b/stage4/18-pisdr-sdrangel/01-run.sh similarity index 100% rename from stage4/17-pisdr-sdrangel/01-run.sh rename to stage4/18-pisdr-sdrangel/01-run.sh diff --git a/stage4/17-pisdr-sdrangel/02-run.sh b/stage4/18-pisdr-sdrangel/02-run.sh similarity index 100% rename from stage4/17-pisdr-sdrangel/02-run.sh rename to stage4/18-pisdr-sdrangel/02-run.sh diff --git a/stage4/17-pisdr-sdrangel/03-run.sh b/stage4/18-pisdr-sdrangel/03-run.sh similarity index 100% rename from stage4/17-pisdr-sdrangel/03-run.sh rename to stage4/18-pisdr-sdrangel/03-run.sh diff --git a/stage4/17-pisdr-sdrangel/04-run.sh b/stage4/18-pisdr-sdrangel/04-run.sh similarity index 100% rename from stage4/17-pisdr-sdrangel/04-run.sh rename to stage4/18-pisdr-sdrangel/04-run.sh diff --git a/stage4/17-pisdr-sdrangel/05-run.sh b/stage4/18-pisdr-sdrangel/05-run.sh similarity index 100% rename from stage4/17-pisdr-sdrangel/05-run.sh rename to stage4/18-pisdr-sdrangel/05-run.sh diff --git a/stage4/18-pisdr-libacars/00-packages-nr b/stage4/19-pisdr-libacars/00-packages-nr similarity index 100% rename from stage4/18-pisdr-libacars/00-packages-nr rename to stage4/19-pisdr-libacars/00-packages-nr diff --git a/stage4/18-pisdr-libacars/00-run.sh b/stage4/19-pisdr-libacars/00-run.sh similarity index 100% rename from stage4/18-pisdr-libacars/00-run.sh rename to stage4/19-pisdr-libacars/00-run.sh diff --git a/stage4/19-pisdr-acarsdec/00-run.sh b/stage4/20-pisdr-acarsdec/00-run.sh similarity index 100% rename from stage4/19-pisdr-acarsdec/00-run.sh rename to stage4/20-pisdr-acarsdec/00-run.sh diff --git a/stage4/20-pisdr-multimonng/00-run.sh b/stage4/21-pisdr-multimonng/00-run.sh similarity index 100% rename from stage4/20-pisdr-multimonng/00-run.sh rename to stage4/21-pisdr-multimonng/00-run.sh diff --git a/stage4/22-pisdr-hamlib/00-packages-nr b/stage4/22-pisdr-hamlib/00-packages-nr new file mode 100644 index 0000000..03f2829 --- /dev/null +++ b/stage4/22-pisdr-hamlib/00-packages-nr @@ -0,0 +1,4 @@ +swig +python3-dev +libtool +autoconf \ No newline at end of file diff --git a/stage4/21-pisdr-hamlib/00-run.sh b/stage4/22-pisdr-hamlib/00-run.sh similarity index 95% rename from stage4/21-pisdr-hamlib/00-run.sh rename to stage4/22-pisdr-hamlib/00-run.sh index 37f2164..ed34c84 100755 --- a/stage4/21-pisdr-hamlib/00-run.sh +++ b/stage4/22-pisdr-hamlib/00-run.sh @@ -12,5 +12,6 @@ cd Hamlib ./bootstrap ./configure --with-python-binding make -j$(nproc) +make install ldconfig EOF \ No newline at end of file diff --git a/stage4/22-pisdr-gpredict/00-packages-nr b/stage4/23-pisdr-gpredict/00-packages-nr similarity index 100% rename from stage4/22-pisdr-gpredict/00-packages-nr rename to stage4/23-pisdr-gpredict/00-packages-nr diff --git a/stage4/22-pisdr-gpredict/00-run.sh b/stage4/23-pisdr-gpredict/00-run.sh similarity index 89% rename from stage4/22-pisdr-gpredict/00-run.sh rename to stage4/23-pisdr-gpredict/00-run.sh index 805f6a0..4ab1aed 100755 --- a/stage4/22-pisdr-gpredict/00-run.sh +++ b/stage4/23-pisdr-gpredict/00-run.sh @@ -10,6 +10,7 @@ fi cd gpredict bash autogen.sh -make -j$(nproc) install +make -j$(nproc) +make install ldconfig EOF \ No newline at end of file diff --git a/stage4/23-pisdr-rpitx/00-packages-nr b/stage4/24-pisdr-rpitx/00-packages-nr similarity index 92% rename from stage4/23-pisdr-rpitx/00-packages-nr rename to stage4/24-pisdr-rpitx/00-packages-nr index e45a81c..5e3f258 100644 --- a/stage4/23-pisdr-rpitx/00-packages-nr +++ b/stage4/24-pisdr-rpitx/00-packages-nr @@ -11,6 +11,6 @@ libmagickcore-6.q16-6 libmagickcore-6.q16-6-extra libmagickwand-6.q16-6 libnetpbm10 -libpng12-0 +libpng-dev libwmf0.2-7 netpbm \ No newline at end of file diff --git a/stage4/23-pisdr-rpitx/00-run.sh b/stage4/24-pisdr-rpitx/00-run.sh similarity index 100% rename from stage4/23-pisdr-rpitx/00-run.sh rename to stage4/24-pisdr-rpitx/00-run.sh diff --git a/stage4/24-pisdr-virgo/00-run.sh b/stage4/25-pisdr-virgo/00-run.sh similarity index 100% rename from stage4/24-pisdr-virgo/00-run.sh rename to stage4/25-pisdr-virgo/00-run.sh diff --git a/stage4/25-pisdr-quisk/00-packages-nr b/stage4/26-pisdr-quisk/00-packages-nr similarity index 58% rename from stage4/25-pisdr-quisk/00-packages-nr rename to stage4/26-pisdr-quisk/00-packages-nr index cf089ab..e005dc1 100644 --- a/stage4/25-pisdr-quisk/00-packages-nr +++ b/stage4/26-pisdr-quisk/00-packages-nr @@ -1,14 +1,9 @@ -python-wxgtk3.0 python3-wxgtk4.0 libfftw3-dev libasound2-dev portaudio19-dev libpulse-dev -libpython2.7-dev libpython3-dev -python-usb python3-usb -python-setuptools python3-setuptools -python-pip python3-pip \ No newline at end of file diff --git a/stage4/25-pisdr-quisk/00-run.sh b/stage4/26-pisdr-quisk/00-run.sh similarity index 63% rename from stage4/25-pisdr-quisk/00-run.sh rename to stage4/26-pisdr-quisk/00-run.sh index dd0a480..6c2485e 100755 --- a/stage4/25-pisdr-quisk/00-run.sh +++ b/stage4/26-pisdr-quisk/00-run.sh @@ -1,6 +1,5 @@ #!/bin/bash -e on_chroot << EOF -python2 -m pip install --upgrade quisk python3 -m pip install --upgrade quisk EOF \ No newline at end of file diff --git a/stage4/26-pisdr-limesdr-toolbox/00-run.sh b/stage4/27-pisdr-limesdr-toolbox/00-run.sh similarity index 100% rename from stage4/26-pisdr-limesdr-toolbox/00-run.sh rename to stage4/27-pisdr-limesdr-toolbox/00-run.sh diff --git a/stage4/27-pisdr-airband/00-packages-nr b/stage4/28-pisdr-airband/00-packages-nr similarity index 71% rename from stage4/27-pisdr-airband/00-packages-nr rename to stage4/28-pisdr-airband/00-packages-nr index 3faf9d6..9d51520 100644 --- a/stage4/27-pisdr-airband/00-packages-nr +++ b/stage4/28-pisdr-airband/00-packages-nr @@ -2,3 +2,5 @@ libmp3lame-dev libshout3-dev libconfig++-dev libraspberrypi-dev +libpulse-dev +libfftw3-dev \ No newline at end of file diff --git a/stage4/27-pisdr-airband/00-run.sh b/stage4/28-pisdr-airband/00-run.sh similarity index 81% rename from stage4/27-pisdr-airband/00-run.sh rename to stage4/28-pisdr-airband/00-run.sh index 6232adb..dab5fae 100755 --- a/stage4/27-pisdr-airband/00-run.sh +++ b/stage4/28-pisdr-airband/00-run.sh @@ -11,6 +11,11 @@ fi cd RTLSDR-Airband export PLATFORM=armv7-generic export WITH_SOAPYSDR=1 -make install +mkdir -p build +cd build +cmake -GNinja .. +ninja install ldconfig +cd .. +rm -fr build EOF \ No newline at end of file diff --git a/stage4/29-pisdr-osmo-fl2k/00-packages-nr b/stage4/29-pisdr-osmo-fl2k/00-packages-nr new file mode 100644 index 0000000..10c35a2 --- /dev/null +++ b/stage4/29-pisdr-osmo-fl2k/00-packages-nr @@ -0,0 +1 @@ +libusb-1.0-0-dev \ No newline at end of file diff --git a/stage4/28-pisdr-osmo-fl2k/00-run.sh b/stage4/29-pisdr-osmo-fl2k/00-run.sh similarity index 100% rename from stage4/28-pisdr-osmo-fl2k/00-run.sh rename to stage4/29-pisdr-osmo-fl2k/00-run.sh diff --git a/stage4/29-pisdr-leandvb/00-run.sh b/stage4/30-pisdr-leandvb/00-run.sh similarity index 100% rename from stage4/29-pisdr-leandvb/00-run.sh rename to stage4/30-pisdr-leandvb/00-run.sh diff --git a/stage4/30-pisdr-vaportrail/00-run.sh b/stage4/31-pisdr-vaportrail/00-run.sh similarity index 100% rename from stage4/30-pisdr-vaportrail/00-run.sh rename to stage4/31-pisdr-vaportrail/00-run.sh diff --git a/stage4/32-pisdr-dump1090/00-run.sh b/stage4/32-pisdr-dump1090/00-run.sh deleted file mode 100755 index 3e3533c..0000000 --- a/stage4/32-pisdr-dump1090/00-run.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/bash -e - -install -v -o 1000 -g 1000 -d "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/PiSDR/Software/dump1090/" -install -v -o 1000 -g 1000 -m 755 targets/enable.sh "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/PiSDR/Software/dump1090/" -install -v -o 1000 -g 1000 -m 755 targets/disable.sh "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/PiSDR/Software/dump1090/" -install -v -o 1000 -g 1000 -m 755 targets/configure_rbfeeder.sh "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/PiSDR/Software/dump1090/" -install -v -o 1000 -g 1000 -m 755 targets/configure_fr24feed.sh "${ROOTFS_DIR}/home/${FIRST_USER_NAME}/PiSDR/Software/dump1090/" - -install -v -o 1000 -g 1000 -m 755 targets/readsb-set-location "${ROOTFS_DIR}/usr/local/bin/" -install -v -o 1000 -g 1000 -m 755 targets/readsb-gain "${ROOTFS_DIR}/usr/local/bin/" - -on_chroot << EOF -cd "/home/${FIRST_USER_NAME}/PiSDR/Software/dump1090" - -mkdir -p /usr/local/share/adsb-wiki/readsb-install - -apt-get update -apt-get install --no-install-recommends --no-install-suggests -y git build-essential debhelper libusb-1.0-0-dev \ - pkg-config dh-systemd libncurses5-dev lighttpd zlib1g-dev zlib1g unzip - -rm -rf /usr/local/share/adsb-wiki/readsb-install/git -if ! git clone --branch stale --depth 1 https://github.com/wiedehopf/readsb.git "/usr/local/share/adsb-wiki/readsb-install/git" -then - echo "Unable to git clone the repository" - exit 1 -fi - -rm -rf /usr/local/share/adsb-wiki/readsb-install/readsb*.deb - -cd /usr/local/share/adsb-wiki/readsb-install/git - -sed -i 's/librtlsdr0, librtlsdr-dev, //g' debian/control - -export DEB_BUILD_OPTIONS=noddebs -if ! dpkg-buildpackage --ignore-builtin-builddeps -b -Prtlsdr -ui -uc -us -then - echo "Something went wrong building the debian package, exiting!" - exit 1 -fi - -echo "Installing the Package" -if ! dpkg --force-all -i ../readsb_*.deb -then - echo "Something went wrong installing the debian package, exiting!" - exit 1 -fi -echo "Package installed!" - -cp -n debian/lighttpd/* /etc/lighttpd/conf-available - -echo "[PiSDR] Disabling services. To enable them, run 'bash enable.sh'." - -systemctl disable --now readsb || true -systemctl disable --now tar1090 || true -systemctl disable --now lighttpd || true - -EOF diff --git a/stage4/32-pisdr-dump1090/targets/configure_fr24feed.sh b/stage4/32-pisdr-dump1090/targets/configure_fr24feed.sh deleted file mode 100755 index 4f6db73..0000000 --- a/stage4/32-pisdr-dump1090/targets/configure_fr24feed.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash - -# configure fr24feed to use readsb - -systemctl stop fr24feed &>/dev/null - -rm -f /etc/lighttpd/conf-enabled/89-dump1090.conf - -apt-get remove -y dump1090-mutability &>/dev/null -apt-get remove -y dump1090 &>/dev/null -apt-get remove -y dump1090-fa &>/dev/null - -if [ -f /etc/fr24feed.ini ] -then - chmod a+rw /etc/fr24feed.ini - cp -n /etc/fr24feed.ini /usr/local/share/adsb-wiki - if ! grep host /etc/fr24feed.ini &>/dev/null; then sed -i -e '/fr24key/a host=' /etc/fr24feed.ini; fi - sed -i -e 's/receiver=.*/receiver="beast-tcp"\r/' -e 's/host=.*/host="127.0.0.1:30005"\r/' -e 's/bs=.*/bs="no"\r/' -e 's/raw=.*/raw="no"\r/' /etc/fr24feed.ini - systemctl restart fr24feed &>/dev/null -fi - -if (( $(cat /etc/lighttpd/conf-enabled/* | grep -c -E -e '^server.stat-cache-engine *\= *"disable"') > 1 )); then - rm -f /etc/lighttpd/conf-enabled/88-readsb-statcache.conf -fi - -systemctl enable readsb -systemctl restart readsb diff --git a/stage4/32-pisdr-dump1090/targets/configure_rbfeeder.sh b/stage4/32-pisdr-dump1090/targets/configure_rbfeeder.sh deleted file mode 100755 index 88f130b..0000000 --- a/stage4/32-pisdr-dump1090/targets/configure_rbfeeder.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -# configure rbfeeder to use readsb - -systemctl stop rb-feeder &>/dev/null - -rm -f /etc/lighttpd/conf-enabled/89-dump1090.conf - -apt-get remove -y dump1090-mutability &>/dev/null -apt-get remove -y dump1090 &>/dev/null -apt-get remove -y dump1090-fa &>/dev/null - -if [[ -f /etc/rbfeeder.ini ]]; then - if grep -qs -e 'network_mode=false' /etc/rbfeeder.ini &>/dev/null && - grep -qs -e 'mode=beast' /etc/rbfeeder.ini && - grep -qs -e 'external_port=30005' /etc/rbfeeder.ini && - grep -qs -e 'external_host=127.0.0.1' /etc/rbfeeder.ini - then - sed -i -e 's/network_mode=false/network_mode=true/' /etc/rbfeeder.ini - fi - systemctl restart rbfeeder &>/dev/null -fi diff --git a/stage4/32-pisdr-dump1090/targets/disable.sh b/stage4/32-pisdr-dump1090/targets/disable.sh deleted file mode 100755 index 2992e63..0000000 --- a/stage4/32-pisdr-dump1090/targets/disable.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -systemctl disable --now readsb -systemctl disable --now tar1090 -systemctl disable --now lighttpd diff --git a/stage4/32-pisdr-dump1090/targets/enable.sh b/stage4/32-pisdr-dump1090/targets/enable.sh deleted file mode 100755 index 365f99d..0000000 --- a/stage4/32-pisdr-dump1090/targets/enable.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -systemctl enable --now readsb -systemctl enable --now tar1090 -systemctl enable --now lighttpd diff --git a/stage4/32-pisdr-dump1090/targets/install_tar1090.sh b/stage4/32-pisdr-dump1090/targets/install_tar1090.sh deleted file mode 100755 index 64e68a0..0000000 --- a/stage4/32-pisdr-dump1090/targets/install_tar1090.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -cd /usr/local/share/adsb-wiki/readsb-install - -wget -O tar1090-install.sh https://raw.githubusercontent.com/wiedehopf/tar1090/master/install.sh -bash tar1090-install.sh /run/readsb - -if ! systemctl show readsb | grep 'ExecMainStatus=0' -qs; then - echo -------------- - echo -------------- - journalctl -u readsb | tail -n30 - echo -------------- - echo -------------- - echo "ERROR: readsb service didn't start, if inquiring about the issue please post the above 30 lines of log!" - echo " common issues: SDR not plugged in." - echo " the webinterface will show an error until readsb is running!" - echo -------------- -fi - -rm -fr /usr/local/share/tar1090/git-db -rm -fr /usr/local/share/tar1090/git \ No newline at end of file diff --git a/stage4/32-pisdr-dump1090/targets/readsb-gain b/stage4/32-pisdr-dump1090/targets/readsb-gain deleted file mode 100755 index e8d6343..0000000 --- a/stage4/32-pisdr-dump1090/targets/readsb-gain +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash -gain=$(echo $1 | tr -cd '[:digit:].-') -if [[ $gain == "" ]]; then echo "Error, invalid gain!"; exit 1; fi -if ! grep gain /etc/default/readsb &>/dev/null; then sed -i -e 's/RECEIVER_OPTIONS="/RECEIVER_OPTIONS="--gain 49.6 /' /etc/default/readsb; fi -sudo sed -i -E -e "s/--gain .?[0-9]*.?[0-9]* /--gain $gain /" /etc/default/readsb -sudo systemctl restart readsb \ No newline at end of file diff --git a/stage4/32-pisdr-dump1090/targets/readsb-set-location b/stage4/32-pisdr-dump1090/targets/readsb-set-location deleted file mode 100755 index 3244601..0000000 --- a/stage4/32-pisdr-dump1090/targets/readsb-set-location +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash - -lat=$(echo $1 | tr -cd '[:digit:].-') -lon=$(echo $2 | tr -cd '[:digit:].-') - -if ! awk "BEGIN{ exit ($lat > 90) }" || ! awk "BEGIN{ exit ($lat < -90) }"; then - echo - echo "Invalid latitude: $lat" - echo "Latitude must be between -90 and 90" - echo - echo "Example format for latitude: 51.528308" - echo - echo "Usage:" - echo "readsb-set-location 51.52830 -0.38178" - echo - exit 1 -fi -if ! awk "BEGIN{ exit ($lon > 180) }" || ! awk "BEGIN{ exit ($lon < -180) }"; then - echo - echo "Invalid longitude: $lon" - echo "Longitude must be between -180 and 180" - echo - echo "Example format for latitude: -0.38178" - echo - echo "Usage:" - echo "readsb-set-location 51.52830 -0.38178" - echo - exit 1 -fi - -echo -echo "setting Latitude: $lat" -echo "setting Longitude: $lon" -echo -if ! grep -e '--lon' /etc/default/readsb &>/dev/null; then sed -i -e 's/DECODER_OPTIONS="/DECODER_OPTIONS="--lon -0.38178 /' /etc/default/readsb; fi -if ! grep -e '--lat' /etc/default/readsb &>/dev/null; then sed -i -e 's/DECODER_OPTIONS="/DECODER_OPTIONS="--lat 51.52830 /' /etc/default/readsb; fi -sed -i -E -e "s/--lat .?[0-9]*.?[0-9]* /--lat $lat /" /etc/default/readsb -sed -i -E -e "s/--lon .?[0-9]*.?[0-9]* /--lon $lon /" /etc/default/readsb -systemctl restart readsb \ No newline at end of file diff --git a/stage4/32-pisdr-foxtelem/00-run.sh b/stage4/32-pisdr-foxtelem/00-run.sh index c3aff6a..d6d090b 100755 --- a/stage4/32-pisdr-foxtelem/00-run.sh +++ b/stage4/32-pisdr-foxtelem/00-run.sh @@ -5,8 +5,9 @@ mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" cd "/home/${FIRST_USER_NAME}/PiSDR/Software" if [ ! -d "FoxTelem" ]; then - wget http://amsat.us/FoxTelem/linux/FoxTelem_1.08z5_linux.tar.gz - tar -xvzf FoxTelem_1.08z5_linux.tar.gz - mv FoxTelem_1.08z5_linux FoxTelem + wget http://amsat.us/FoxTelem/linux/FoxTelem_1.11g2_linux.tar.gz + tar -xvzf FoxTelem_1.11g2_linux.tar.gz + mv FoxTelem_1.11g2_linux FoxTelem + rm FoxTelem_1.11g2_linux.tar.gz fi -EOF \ No newline at end of file +EOF diff --git a/stage4/33-pisdr-sdrplusplus/00-packages-nr b/stage4/33-pisdr-sdrplusplus/00-packages-nr new file mode 100644 index 0000000..56991f4 --- /dev/null +++ b/stage4/33-pisdr-sdrplusplus/00-packages-nr @@ -0,0 +1,4 @@ +libfftw3-dev +libglfw3-dev +libglew-dev +librtaudio-dev \ No newline at end of file diff --git a/stage4/33-pisdr-sdrplusplus/00-run.sh b/stage4/33-pisdr-sdrplusplus/00-run.sh new file mode 100755 index 0000000..6394fe5 --- /dev/null +++ b/stage4/33-pisdr-sdrplusplus/00-run.sh @@ -0,0 +1,41 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "SDRPlusPlus" ]; then + git clone --single-branch --branch 1.0.4 --depth 1 https://github.com/AlexandreRouma/SDRPlusPlus.git +fi + +cd SDRPlusPlus +bash ./create_root.sh +mkdir -p build +cd build +cmake -DOPT_BUILD_AIRSPY_SOURCE=ON \ + -DOPT_BUILD_AIRSPYHF_SOURCE=ON \ + -DOPT_BUILD_FILE_SOURCE=ON \ + -DOPT_BUILD_HACKRF_SOURCE=ON \ + -DOPT_BUILD_LIMESDR_SOURCE=ON \ + -DOPT_BUILD_RTL_SDR_SOURCE=ON \ + -DOPT_BUILD_RTL_TCP_SOURCE=ON \ + -DOPT_BUILD_SDRPLAY_SOURCE=ON \ + -DOPT_BUILD_SOAPY_SOURCE=ON \ + -DOPT_BUILD_SPYSERVER_SOURCE=ON \ + -DOPT_BUILD_PLUTOSDR_SOURCE=ON \ + -DOPT_BUILD_AUDIO_SINK=ON \ + -DOPT_BUILD_NETWORK_SINK=ON \ + -DOPT_BUILD_NEW_PORTAUDIO_SINK=ON \ + -DOPT_BUILD_M17_DECODER=ON \ + -DOPT_BUILD_METEOR_DEMODULATOR=ON \ + -DOPT_BUILD_RADIO=ON \ + -DOPT_BUILD_DISCORD_PRESENCE=ON \ + -DOPT_BUILD_FREQUENCY_MANAGER=ON \ + -DOPT_BUILD_RECORDER=ON \ + -DOPT_BUILD_RIGCTL_SERVER=ON \ + -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF \ No newline at end of file diff --git a/stage4/34-pisdr-glrpt/00-packages-nr b/stage4/34-pisdr-glrpt/00-packages-nr new file mode 100644 index 0000000..ba026bb --- /dev/null +++ b/stage4/34-pisdr-glrpt/00-packages-nr @@ -0,0 +1 @@ +libturbojpeg0-dev \ No newline at end of file diff --git a/stage4/34-pisdr-glrpt/00-run.sh b/stage4/34-pisdr-glrpt/00-run.sh new file mode 100755 index 0000000..94353c9 --- /dev/null +++ b/stage4/34-pisdr-glrpt/00-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "glrpt" ]; then + git clone --depth 1 https://github.com/dvdesolve/glrpt.git +fi + +cd glrpt +mkdir -p build +cd build +cmake -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF \ No newline at end of file diff --git a/stage4/31-pisdr-urh/00-run.sh b/stage4/35-pisdr-urh/00-run.sh similarity index 100% rename from stage4/31-pisdr-urh/00-run.sh rename to stage4/35-pisdr-urh/00-run.sh diff --git a/stage4/36-pisdr-xwxapt/00-run.sh b/stage4/36-pisdr-xwxapt/00-run.sh new file mode 100755 index 0000000..d06871c --- /dev/null +++ b/stage4/36-pisdr-xwxapt/00-run.sh @@ -0,0 +1,20 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "xwxapt" ]; then + mkdir -p xwxapt +fi + +cd xwxapt +wget http://www.qsl.net/5b4az/pkg/apt/xwxapt/xwxapt-3.4.3.tar.bz2 +tar jxvf xwxapt-3.4.3.tar.bz2 +cd xwxapt-3.4.3 +./autogen.sh +./configure +make -j$(nproc) +make install +ldconfig +EOF \ No newline at end of file diff --git a/stage4/37-pisdr-nrsc5/00-packages-nr b/stage4/37-pisdr-nrsc5/00-packages-nr new file mode 100644 index 0000000..572f460 --- /dev/null +++ b/stage4/37-pisdr-nrsc5/00-packages-nr @@ -0,0 +1,5 @@ +autoconf +libtool +libao-dev +libfftw3-dev +libfaad-dev \ No newline at end of file diff --git a/stage4/37-pisdr-nrsc5/00-run.sh b/stage4/37-pisdr-nrsc5/00-run.sh new file mode 100755 index 0000000..6cf62ae --- /dev/null +++ b/stage4/37-pisdr-nrsc5/00-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "nrsc5" ]; then + git clone --depth 1 https://github.com/theori-io/nrsc5.git +fi + +cd nrsc5 +mkdir -p build +cd build +cmake -DUSE_NEON=OFF -DUSE_FAAD2=OFF -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF \ No newline at end of file diff --git a/stage4/38-pisdr-wsjtx/00-packages-nr b/stage4/38-pisdr-wsjtx/00-packages-nr new file mode 100644 index 0000000..c4a5429 --- /dev/null +++ b/stage4/38-pisdr-wsjtx/00-packages-nr @@ -0,0 +1 @@ +wsjtx \ No newline at end of file diff --git a/stage4/39-pisdr-inspectrum/00-packages-nr b/stage4/39-pisdr-inspectrum/00-packages-nr new file mode 100644 index 0000000..8594f21 --- /dev/null +++ b/stage4/39-pisdr-inspectrum/00-packages-nr @@ -0,0 +1 @@ +libliquid-dev \ No newline at end of file diff --git a/stage4/39-pisdr-inspectrum/00-run.sh b/stage4/39-pisdr-inspectrum/00-run.sh new file mode 100755 index 0000000..c75b015 --- /dev/null +++ b/stage4/39-pisdr-inspectrum/00-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "inspectrum" ]; then + git clone --depth 1 https://github.com/miek/inspectrum.git +fi + +cd inspectrum +mkdir -p build +cd build +cmake -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF \ No newline at end of file diff --git a/stage4/40-pisdr-rtlais/00-run.sh b/stage4/40-pisdr-rtlais/00-run.sh new file mode 100755 index 0000000..fb44773 --- /dev/null +++ b/stage4/40-pisdr-rtlais/00-run.sh @@ -0,0 +1,15 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "rtl-ais" ]; then + git clone --depth 1 https://github.com/dgiardini/rtl-ais.git +fi + +cd rtl-ais +make -j$(nproc) +make install +ldconfig +EOF \ No newline at end of file diff --git a/stage4/41-pisdr-iiooscilloscope/00-packages-nr b/stage4/41-pisdr-iiooscilloscope/00-packages-nr new file mode 100644 index 0000000..c45143d --- /dev/null +++ b/stage4/41-pisdr-iiooscilloscope/00-packages-nr @@ -0,0 +1,16 @@ +libglib2.0-dev +libgtk2.0-dev +libgtkdatabox-dev +libmatio-dev +libfftw3-dev +libxml2 +libxml2-dev +bison +flex +libavahi-common-dev +libavahi-client-dev +libcurl4-openssl-dev +libjansson-dev +cmake +libaio-dev +libserialport-dev \ No newline at end of file diff --git a/stage4/41-pisdr-iiooscilloscope/00-run.sh b/stage4/41-pisdr-iiooscilloscope/00-run.sh new file mode 100755 index 0000000..5067473 --- /dev/null +++ b/stage4/41-pisdr-iiooscilloscope/00-run.sh @@ -0,0 +1,19 @@ +#!/bin/bash -e + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "iio-oscilloscope" ]; then + git clone --depth 1 https://github.com/analogdevicesinc/iio-oscilloscope.git +fi + +cd iio-oscilloscope +mkdir -p build +cd build +cmake -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF \ No newline at end of file diff --git a/stage4/42-pisdr-qtdab/00-packages-nr b/stage4/42-pisdr-qtdab/00-packages-nr new file mode 100644 index 0000000..04e85e5 --- /dev/null +++ b/stage4/42-pisdr-qtdab/00-packages-nr @@ -0,0 +1,11 @@ +libsndfile1-dev +libfftw3-dev +portaudio19-dev +libusb-1.0-0-dev +mesa-common-dev +libgl1-mesa-dev +libqt5opengl5-dev +libsamplerate0-dev +libqwt-qt5-dev +qtbase5-dev +libfaad-dev \ No newline at end of file diff --git a/stage4/42-pisdr-qtdab/00-run.sh b/stage4/42-pisdr-qtdab/00-run.sh new file mode 100755 index 0000000..4532774 --- /dev/null +++ b/stage4/42-pisdr-qtdab/00-run.sh @@ -0,0 +1,25 @@ +#!/bin/bash -e + + + +# Dont forget to update the desktop shortcut. + + + +on_chroot << EOF +mkdir -p "/home/${FIRST_USER_NAME}/PiSDR/Software" +cd "/home/${FIRST_USER_NAME}/PiSDR/Software" + +if [ ! -d "qt-dab" ]; then + git clone --single-branch --branch qt-dab-4.11 --depth 1 https://github.com/JvanKatwijk/qt-dab.git +fi + +cd qt-dab/dab-maxi +mkdir -p build +cd build +cmake -GNinja .. +ninja install +ldconfig +cd .. +rm -fr build +EOF \ No newline at end of file diff --git a/stage4/35-pisdr-cleanup/00-run.sh b/stage4/43-pisdr-cleanup/00-run.sh similarity index 100% rename from stage4/35-pisdr-cleanup/00-run.sh rename to stage4/43-pisdr-cleanup/00-run.sh diff --git a/stage4/35-pisdr-cleanup/01-run.sh b/stage4/43-pisdr-cleanup/01-run.sh similarity index 89% rename from stage4/35-pisdr-cleanup/01-run.sh rename to stage4/43-pisdr-cleanup/01-run.sh index ec6fc03..73677ab 100755 --- a/stage4/35-pisdr-cleanup/01-run.sh +++ b/stage4/43-pisdr-cleanup/01-run.sh @@ -8,6 +8,7 @@ chown pi:pi /lib/udev/rules.d/90-libiio.rules chown pi:pi /etc/udev/rules.d/53-hackrf.rules chown pi:pi /etc/udev/rules.d/uhd-usrp.rules chown pi:pi /etc/udev/rules.d/64-limesuite.rules +chown pi:pi /etc/udev/rules.d/66-mirics.rules udevadm control --reload-rules udevadm trigger EOF \ No newline at end of file