Compare commits

..

No commits in common. "43bd1eff3e4e269a2e70f77751076471cde5b951" and "b965130cd982851c548eb1af6aeef9891a5430f7" have entirely different histories.

6 changed files with 79 additions and 181 deletions

46
.gitlab-ci.yml Normal file
View File

@ -0,0 +1,46 @@
# This file is a template, and might need editing before it works on your project.
# This is a sample GitLab CI/CD configuration file that should run without any modifications.
# It demonstrates a basic 3 stage CI/CD pipeline. Instead of real tests or scripts,
# it uses echo commands to simulate the pipeline execution.
#
# A pipeline is composed of independent jobs that run scripts, grouped into stages.
# Stages run in sequential order, but jobs within stages run in parallel.
#
# For more information, see: https://docs.gitlab.com/ee/ci/yaml/index.html#stages
#
# You can copy and paste this template into a new `.gitlab-ci.yml` file.
# You should not add this template to an existing `.gitlab-ci.yml` file by using the `include:` keyword.
#
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Getting-Started.gitlab-ci.yml
# see also https://docs.gitlab.com/ee/ci/runners/saas/macos_saas_runner.html
.macos_saas_runners:
tags:
- shared-macos-amd64
image: macos-11-xcode-12
stages:
- build
- test
before_script:
- echo "started by ${GITLAB_USER_NAME}"
build:
extends:
- .macos_saas_runners
stage: build
script:
- echo "running scripts in the build job"
test:
extends:
- .macos_saas_runners
stage: test
script:
- echo "running scripts in the test job"

View File

@ -19,7 +19,7 @@ Quick start:
1. Load a bunch of samples into the brain
2. Click (re)generate brain
3. Load a loop sample into the target
4. Click (re)generate blocks
4. Click (re)generate target
5. Press play
6. Tweak brain
@ -38,24 +38,17 @@ behind it.
# Binaries
* **Windows**: (new fix for ridiculous CPU usage) [samplebrain_0.18.1_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.1_win.zip)
* **Mac (new fix for silence/should work on m1)**: [samplebrain_0.18.1_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18.1_macintel.app.zip)
* **Windows**: [samplebrain_0.18_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_win.zip)
* **Mac (intel)**: [samplebrain_0.18_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_macintel.zip)
* **Mac (m1 VERSION 2!)**: [samplebrain_0.18_m1_v2.dmg](https://static.thentrythis.org/samplebrain/samplebrain_0.18_m1_v2.dmg)
Thank you to [Nik Gaffney](http://fo.am) for help with the Apple builds
Thank you to [Nik Gaffney](http://fo.am) for help with the Apple builds.
Mac note: As this software is not on the apple store, to run the
binary you need to tell your mac it's ok: Go to System Preferences >
Security & Privacy > General. At the bottom of the window, select
"Allow apps to be downloaded from Anywhere".
Windows note: Some people are reporting problems with windows 11.
# Old/broken/spurious binaries
* **Windows* *: [samplebrain_0.18_win.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_win.zip)
* **Mac (intel)**: [samplebrain_0.18_macintel.zip](https://static.thentrythis.org/samplebrain/samplebrain_0.18_macintel.zip)
* **Mac (m1)**: [samplebrain_0.18_m1_v2.dmg](https://static.thentrythis.org/samplebrain/samplebrain_0.18_m1_v2.dmg)
**Linux install (Ubuntu)**
$ sudo add-apt-repository ppa:thentrythis/samplebrain
@ -67,7 +60,7 @@ If you'd like the right font, optionally:
$ sudo apt install ttf-mscorefonts-installer
# Building from source
## Linux (Ubuntu)
Install libraries for the sample engine (use brew on mac, MinGW on win):
$ sudo apt install libsndfile1-dev portaudio19-dev liblo-dev libfftw3-dev
@ -78,28 +71,8 @@ Install dependancies for the interface:
Build & run it:
$ mkdir build
$ cd build
$ qmake ..
$ make
$ sudo make install
$ samplebrain
## Mac
Install libraries for sample engine:
$ brew install fftw portaudio liblo
Install dependancies for the interface:
$ brew install qt
$ brew link qt
Build & run it:
$ mkdir build
$ cd build
$ qmake ..
$ cd app
$ qmake
$ make
$ sudo make install
$ samplebrain
@ -108,21 +81,9 @@ Build & run it:
To make a mac app bundle:
Run `macdeployqt` to copy all dependencies inside the app.
Create Mac app bundle:
$ cd build
$ macdeployqt
Copy desktop/samplebrain.icns (the icon) to the Resources directory in the bundle.
$ cp ../desktop/samplebrain.icns samplebrain.app/Contents/Resources
Edit Info.plist to add samplebrain.icns to CFBundleIconFile. Key `CFBundleIconFile` should match:
<key>CFBundleIconFile</key>
<string>samplebrain.icns</string>
* Run `macdeployqt` to copy all dependancies inside the app.
* Copy desktop/samplebrain.icns (the icon) to the Resources directory in the bundle.
* Edit Info.plist to add samplebrain.icns to CFBundleIconFile.
## What's here

View File

@ -1,31 +0,0 @@
# Flatpak Build Instructions
## Prerequisites
To build the Flatpak, install the `flatpak` and `flatpak-builder` packages
from your repositories. Then, [add Flathub](https://flatpak.org/setup/).
Now, install the KDE SDK:
```sh
flatpak install flathub org.kde.Sdk//5.15-22.08
```
## Building and installing
To build and install the app locally:
```sh
flatpak-builder --force-clean --install --user builddir build-aux/flatpak/org.thentrythis.Samplebrain.yaml
```
## Building and exporting
To build and export a Flatpak bundle:
```sh
flatpak-builder --force-clean --repo=repo builddir build-aux/flatpak/org.thentrythis.Samplebrain.yaml
flatpak build-bundle repo org.thentrythis.Samplebrain.flatpak org.thentrythis.Samplebrain
```
To install the bundle:
```sh
flatpak install org.thentrythis.Samplebrain.flatpak
```

View File

@ -1,73 +0,0 @@
id: org.thentrythis.Samplebrain
runtime: org.kde.Platform
runtime-version: "5.15-22.08"
sdk: org.kde.Sdk
rename-desktop-file: samplebrain.desktop
rename-icon: samplebrain
command: samplebrain
finish-args:
- "--share=ipc"
- "--socket=wayland"
- "--socket=fallback-x11"
- "--socket=pulseaudio"
- "--device=dri"
- "--share=network"
cleanup:
- "/include"
- "/lib/cmake"
- "/lib/pkgconfig"
- "/share/doc"
modules:
- name: libsndfile
buildsystem: cmake-ninja
config-opts:
- "-DCMAKE_BUILD_TYPE=Release"
- "-DBUILD_SHARED_LIBS=ON"
- "-DENABLE_EXTERNAL_LIBS=NO"
- "-DENABLE_CPACK=NO"
- "-DBUILD_PROGRAMS=OFF"
- "-DBUILD_EXAMPLES=OFF"
sources:
- type: archive
url: https://github.com/libsndfile/libsndfile/releases/download/1.1.0/libsndfile-1.1.0.tar.xz
sha256: 0f98e101c0f7c850a71225fb5feaf33b106227b3d331333ddc9bacee190bcf41
- name: portaudio
buildsystem: autotools
config-opts:
- "--with-alsa"
- "--without-jack"
- "--without-oss"
- "--without-asihpi"
sources:
- type: archive
url: http://files.portaudio.com/archives/pa_stable_v190700_20210406.tgz
sha256: 47efbf42c77c19a05d22e627d42873e991ec0c1357219c0d74ce6a2948cb2def
- name: liblo
buildsystem: autotools
config-opts:
- "--disable-tests"
- "--disable-network-tests"
- "--disable-tools"
- "--disable-examples"
sources:
- type: archive
url: https://versaweb.dl.sourceforge.net/project/liblo/liblo/0.31/liblo-0.31.tar.gz
sha256: 2b4f446e1220dcd624ecd8405248b08b7601e9a0d87a0b94730c2907dbccc750
- name: samplebrain
buildsystem: qmake
build-options:
env:
PREFIX: /app
config-opts:
- "LIBS+=-L/app/lib"
sources:
- type: dir
path: ../../

View File

@ -3,8 +3,8 @@ Encoding=UTF-8
Type=Application
Name=Samplebrain
Comment=A sample masher designed by Aphex Twin
Exec=samplebrain
Icon=samplebrain
Exec=/usr/bin/samplebrain
Icon=/usr/share/icons/hicolor/scalable/apps/samplebrain.svg
Terminal=false
Categories=GNOME;Application;
StartupNotify=true

View File

@ -51,15 +51,10 @@ QMAKE_CXXFLAGS += -O3 -Wall -Wno-unused -std=c++11
# assets
RESOURCES = app/samplebrain.qrc
PREFIX = $$(PREFIX)
isEmpty(PREFIX) {
PREFIX = /usr
}
unix:desktopfile.path = $$PREFIX/share/applications/
unix:desktopfile.path = /usr/share/applications/
unix:desktopfile.files = desktop/samplebrain.desktop
unix:iconfile.path = $$PREFIX/share/icons/hicolor/scalable/apps
unix:iconfile.path = /usr/share/icons/hicolor/scalable/apps
unix:iconfile.files = desktop/samplebrain.svg
target.path = $$PREFIX/bin
target.path = /usr/bin
INSTALLS += target desktopfile iconfile