diff --git a/patch/init.rb b/patch/init.rb new file mode 100644 index 0000000..34ba59c --- /dev/null +++ b/patch/init.rb @@ -0,0 +1,20 @@ +# Coded by Sam Aaron + +load_samples(sample_names :ambi) +sleep 2 + +with_fx :reverb, mix: 0.8 do + live_loop :foo do + # try changing the sp_ vars.. + sp_name = choose sample_names :ambi + # sp_name = choose sample_names :drum + sp_time = [1, 2].choose + #sp_time = 0.5 + sp_rate = 1 + #sp_rate = 4 + + s = sample sp_name, cutoff: rrand(70, 130), rate: sp_rate * choose([0.5, 1]), pan: rrand(-1, 1), pan_slide: sp_time + control s, pan: rrand(-1, 1) + sleep sp_time + end +end \ No newline at end of file diff --git a/patch/native.vcv b/patch/native.vcv deleted file mode 100644 index 68d09d2..0000000 Binary files a/patch/native.vcv and /dev/null differ diff --git a/prepare-image.sh b/prepare-image.sh index 3f3cb01..50c69c4 100755 --- a/prepare-image.sh +++ b/prepare-image.sh @@ -27,29 +27,27 @@ mkdir /tmp/rpi-img/home/pi/.ssh chown 1000:1000 /tmp/rpi-img/home/pi/.ssh chown 1000:1000 /tmp/rpi-img/home/pi/.ssh/authorized_keys -#provision files -cp -v ./src/setup.sh /tmp/rpi-img/root/setup.sh -cp -v ./patch/native.vcv /tmp/rpi-img/root/native.vcv - #enable systemd-time-wait-sync ln -v -s /lib/systemd/system/systemd-time-wait-sync.service /tmp/rpi-img/etc/systemd/system/sysinit.target.wants/systemd-time-wait-sync.service #setup autorun on first boot -cp -v ./src/firstboot.service /tmp/rpi-img/lib/systemd/system/firstboot.service +cp -v ./services/firstboot.service /tmp/rpi-img/lib/systemd/system/firstboot.service ln -v -s /lib/systemd/system/firstboot.service /tmp/rpi-img/etc/systemd/system/multi-user.target.wants # disable built-in audio sed -i 's/^dtparam=audio=on/#&/' /tmp/rpi-img/boot/config.txt -# setup Cardinal -mkdir -v /tmp/rpi-img/opt/Cardinal -wget https://github.com/DISTRHO/Cardinal/releases/download/24.09/Cardinal-linux-aarch64-24.09.tar.gz -O /tmp/rpi-img/opt/Cardinal/Cardinal-linux-aarch64.tar.gz -tar -xzvf /tmp/rpi-img/opt/Cardinal/Cardinal-linux-aarch64.tar.gz -C /tmp/rpi-img/opt/Cardinal/ CardinalNative +# disable hdmi audio +sed -i 's/dtoverlay=vc4-kms-v3d/dtoverlay=vc4-kms-v3d,noaudio/' /tmp/rpi-img/boot/config.txt # setup GUI payload -cp -v ./src/payload.service /tmp/rpi-img/lib/systemd/system/payload.service +cp -v ./services/payload.service /tmp/rpi-img/lib/systemd/system/payload.service ln -v -s /lib/systemd/system/payload.service /tmp/rpi-img/etc/systemd/system/graphical.target.wants +#provision project files +cp -v ./src/setup.sh /tmp/rpi-img/root/setup.sh +cp -v ./patch/init.rb /tmp/rpi-img/root/init.rb + echo "] press enter to write the image" read diff --git a/src/firstboot.service b/services/firstboot.service similarity index 100% rename from src/firstboot.service rename to services/firstboot.service diff --git a/src/payload.service b/services/payload.service similarity index 87% rename from src/payload.service rename to services/payload.service index 547a18a..308f443 100644 --- a/src/payload.service +++ b/services/payload.service @@ -7,7 +7,7 @@ Environment=XAUTHORITY=/home/pi/.Xauthority User=pi Group=pi ExecStartPre=/bin/sleep 60 -ExecStart=/opt/Cardinal/CardinalNative +ExecStart=/opt/sonic-pi/bin/sonic-pi Restart=always RestartSec=10s KillMode=process diff --git a/src/setup.sh b/src/setup.sh index 6ed3fb2..927026c 100755 --- a/src/setup.sh +++ b/src/setup.sh @@ -1,25 +1,29 @@ #!/bin/bash -# deploy native patch -mkdir -vp /home/pi/Documents/templates/ -cp -v /root/native.vcv /home/pi/Documents/templates/native.vcv -chown -R pi:pi /home/pi/Documents/templates/ - # upgrade system -apt-get update -apt-get upgrade -y +apt update +apt dist-upgrade -y --autoremove # setup apps -apt-get install htop +apt install htop wget -y + +# setup sonic-pi +wget https://sonic-pi.net/files/releases/v4.6.0/sonic-pi_4.6.0_1_bookworm.arm64.deb -o sonicpi.deb +dpkg -i sonicpi.deb # setup udev echo "SUBSYSTEM==\"usb\", ENV{DEVTYPE}==\"usb_device\", MODE=\"0666\"" > /etc/udev/rules.d/50-udev-default.rules # setup firewall -apt-get install ufw -y +apt install ufw -y ufw allow ssh ufw enable +# deploy patch +mkdir -vp /home/pi/.sonic-pi/config/ +mv -v /root/init.rb /home/pi/.sonic-pi/config/init.rb +chown -R pi:pi /home/pi/.sonic-pi/config + # cleanup mv /root/setup.sh /root/setup.sh.done chmod -x /root/setup.sh.done