mirror of
https://github.com/storytold/soundcraft.git
synced 2026-10-14 14:26:46 -04:00
- .github/workflows/release.yml: every push to `release` builds a draft GitHub Release: macOS universal DMG (Developer ID + notarization), Windows x64/x86/arm64 MSI + zips (Azure Trusted Signing), Linux x86_64/aarch64 AppImage/deb/rpm/tar.gz + Flatpak manifest, FreeBSD, Web/WASM zip; SHA256SUMS; secrets only via the release environment - packaging/ for every platform; .scraft + audio file associations - cargo xtask version [set X.Y.Z] and xtask ico - apps/soundcraft-web (trunk, WebGPU/WebGL2, WebAudio) - placeholder app icon (original nightingale), window icon, Windows resources - ROADMAP.md Co-Authored-By: Claude Opus 5.5 <[email protected]>
76 lines
2.3 KiB
YAML
76 lines
2.3 KiB
YAML
# .deb and .rpm packages (nfpm: https://nfpm.goreleaser.com). Run by package.sh, which stages
|
|
# the file tree, substitutes its path for ${STAGE} (nfpm doesn't expand env vars in `src`) and
|
|
# exports VERSION and NFPM_ARCH.
|
|
#
|
|
# nfpm package -f packaging/linux/nfpm.yaml -p deb -t dist/release/
|
|
name: soundcraft
|
|
arch: ${NFPM_ARCH}
|
|
platform: linux
|
|
version: ${VERSION}
|
|
# semver: 0.2.0-rc.1 becomes 0.2.0~rc.1 in deb/rpm, so pre-releases sort before the release.
|
|
version_schema: semver
|
|
release: 1
|
|
section: sound
|
|
priority: optional
|
|
maintainer: ${SOUNDCRAFT_MAINTAINER}
|
|
vendor: Learning Machines LLC
|
|
homepage: https://getartcraft.com/apps/soundcraft
|
|
license: MIT OR Apache-2.0
|
|
description: |-
|
|
Open-source, native digital audio workstation. Record, edit and mix
|
|
multitrack audio and MIDI in Edit and Mix windows; built-in EQ, dynamics,
|
|
reverb, delay and instruments; imports WAV, AIFF, FLAC, MP3 and MIDI.
|
|
Includes soundcraft-cli, a headless editor, bounce tool and MCP server.
|
|
|
|
# The app links glibc, libgcc_s and ALSA (libasound, for audio I/O through cpal; PulseAudio and
|
|
# PipeWire are reached through their ALSA plugins). Windowing (X11/Wayland, xkbcommon) and the GPU
|
|
# (Vulkan, EGL/GL) are loaded at runtime, so they are dependencies/recommendations here rather
|
|
# than ELF NEEDED entries.
|
|
overrides:
|
|
deb:
|
|
depends:
|
|
- libc6 (>= 2.35)
|
|
- libgcc-s1
|
|
- libasound2 | libasound2t64
|
|
- libxkbcommon0
|
|
- libvulkan1 | libegl1
|
|
recommends:
|
|
- libwayland-client0
|
|
- libx11-6
|
|
- libx11-xcb1
|
|
- libxcursor1
|
|
- libxi6
|
|
- libxrandr2
|
|
- mesa-vulkan-drivers
|
|
- xdg-desktop-portal
|
|
- pipewire-alsa | pulseaudio
|
|
rpm:
|
|
depends:
|
|
- alsa-lib
|
|
- libxkbcommon
|
|
- (vulkan-loader or libglvnd-egl)
|
|
recommends:
|
|
- libwayland-client
|
|
- libX11
|
|
- libXcursor
|
|
- libXi
|
|
- libXrandr
|
|
- mesa-vulkan-drivers
|
|
- xdg-desktop-portal
|
|
- (pipewire-alsa or alsa-plugins-pulseaudio)
|
|
|
|
contents:
|
|
- src: ${STAGE}/usr/bin/soundcraft
|
|
dst: /usr/bin/soundcraft
|
|
file_info: { mode: 0755 }
|
|
- src: ${STAGE}/usr/bin/soundcraft-cli
|
|
dst: /usr/bin/soundcraft-cli
|
|
file_info: { mode: 0755 }
|
|
- src: ${STAGE}/usr/share/
|
|
dst: /usr/share/
|
|
type: tree
|
|
|
|
scripts:
|
|
postinstall: packaging/linux/postinst.sh
|
|
postremove: packaging/linux/postinst.sh
|