commit 227e92e0553b7b61a783cd761b5cb84ad9d3d583 Author: cybrneko Date: Sat Jul 4 11:56:23 2026 -0500 initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4b5cfa8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +# Build artifacts +build-dir/ +repo/ +*.flatpak +.flatpak-builder/ + +# Proprietary Renoise installer +rns_*.tar.gz + +# Temporary/editor files +*.swp +*.swo +*~ diff --git a/build.sh b/build.sh new file mode 100755 index 0000000..19c586e --- /dev/null +++ b/build.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +set -euo pipefail + +APP_ID="com.renoise.Renoise" +MANIFEST="com.renoise.Renoise.yml" +BUNDLE="Renoise.flatpak" +RUNTIME_REPO="https://dl.flathub.org/repo/flathub.flatpakrepo" + +rm -rf build-dir repo "$BUNDLE" + +flatpak-builder \ + --repo=repo \ + --force-clean \ + build-dir \ + "$MANIFEST" + +flatpak build-bundle \ + --runtime-repo="$RUNTIME_REPO" \ + repo \ + "$BUNDLE" \ + "$APP_ID" + +echo +echo "Built: $BUNDLE" +echo +echo "Install/update with:" +echo " flatpak install --user --reinstall ./$BUNDLE" +echo +echo "Run with:" +echo " flatpak run $APP_ID" diff --git a/com.renoise.Renoise.yml b/com.renoise.Renoise.yml new file mode 100644 index 0000000..fed0de9 --- /dev/null +++ b/com.renoise.Renoise.yml @@ -0,0 +1,51 @@ +app-id: com.renoise.Renoise +command: renoise-wrapper +runtime-version: "24.08" +runtime: org.freedesktop.Platform +sdk: org.freedesktop.Sdk +finish-args: + - --device=all + - --share=ipc + - --filesystem=xdg-run/pipewire-0 + - --socket=pulseaudio + - --socket=x11 + - --share=network + - --filesystem=home +modules: + - name: app + buildsystem: simple + build-commands: + - install -d $FLATPAK_DEST/bin + - cp -r rns_*/* "$FLATPAK_DEST/bin" + - rm -rf rns_* + - install -Dm644 ${FLATPAK_DEST}/bin/Installer/renoise.desktop ${FLATPAK_DEST}/share/applications/$FLATPAK_ID.desktop; sed -i 's/Icon=renoise/Icon=com.renoise.Renoise/g' $FLATPAK_DEST/share/applications/$FLATPAK_ID.desktop + - for size in 48 64 128; do install -Dm644 $FLATPAK_DEST/bin/Installer/renoise-${size}.png $FLATPAK_DEST/share/icons/hicolor/${size}x${size}/apps/$FLATPAK_ID.png; done + - install -Dm644 $FLATPAK_DEST/bin/Installer/renoise.xml $FLATPAK_DEST/share/mime/$FLATPAK_ID.xml + - install -Dm644 $FLATPAK_DEST/bin/Installer/renoise.1.gz $FLATPAK_DEST/share/man/man1/renoise.1.gz + - install -Dm644 $FLATPAK_DEST/bin/Installer/renoise-pattern-effects.5.gz $FLATPAK_DEST/share/man/man5/renoise-pattern-effects.5.gz + - | + cat > $FLATPAK_DEST/bin/renoise-wrapper <<'EOF' + #!/bin/sh + + mkdir -p \ + "$HOME/.local/share/audio/vst" \ + "$HOME/.local/share/audio/vst3" \ + "$HOME/.local/share/audio/ladspa" \ + "$HOME/.local/share/audio/dssi" + + export LADSPA_PATH="$HOME/.local/share/audio/ladspa" + export DSSI_PATH="$HOME/.local/share/audio/dssi" + export VST_PATH="$HOME/.local/share/audio/vst" + export VST3_PATH="$HOME/.local/share/audio/vst3" + + exec /app/bin/renoise "$@" + EOF + + - chmod 755 $FLATPAK_DEST/bin/renoise-wrapper + cleanup: + - "/bin/Installer" + - "*.sh" + sources: + - type: archive + path: rns_354_linux_x86_64.tar.gz + strip-components: 0 diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..4471b57 --- /dev/null +++ b/readme.md @@ -0,0 +1,14 @@ +# renoise-flatpak +This project aims to convert a .tar.gz file, as it comes from Renoise Backstage, and package it as a flatpak for flatpak use. + +- Uses a runtime wrapper to expand $HOME for plugin paths. +- Uses ~/.local/share/audio/{vst,vst3,ladspa,dssi} as canonical plugin locations. +- Automatically creates those directories on first launch. +- Requires the proprietary Renoise Linux installer (rns_*.tar.gz) to build. +- Produces a standalone .flatpak suitable for personal installation. + +## BUILDING +Building requires flatpak-builder + +Drop a copy of Renoise as it comes from Renoise Backstage (rns_*.tar.gz) into the directory +run build.sh to get a new .flatpak