diff options
Diffstat (limited to 'pcr/parabola-proaudio-settings')
7 files changed, 75 insertions, 0 deletions
diff --git a/pcr/parabola-proaudio-settings/99-sysctl.conf b/pcr/parabola-proaudio-settings/99-sysctl.conf new file mode 100644 index 000000000..25bde20b7 --- /dev/null +++ b/pcr/parabola-proaudio-settings/99-sysctl.conf @@ -0,0 +1,5 @@ +# By default, swap frequency defined by "swappiness" is set to 60. By reducing this number to 10, the system will wait much longer before trying to write to disk +vm.swappiness = 0 + +# inotify watches for changes to files and reports them to applications requesting this information. When working with lots of audio data, a lot of watches will need to be kept track of, so they will need to be increased. +fs.inotify.max_user_watches = 524288 diff --git a/pcr/parabola-proaudio-settings/PKGBUILD b/pcr/parabola-proaudio-settings/PKGBUILD new file mode 100644 index 000000000..fd25dc9cd --- /dev/null +++ b/pcr/parabola-proaudio-settings/PKGBUILD @@ -0,0 +1,50 @@ +# Maintainer: André Silva <emulatorman@parabola.nu> +# Maintainer: Totalchaos <biserangeloff@gmail.com> + +pkgname=parabola-proaudio-settings +pkgver=0.1 +pkgrel=1 +pkgdesc='Settings and configurations needed for a real-time audio workstation on Parabola GNU/Linux-libre' +arch=('any') +license=('GPL') +url='https://www.parabola.nu' +depends=('linux-libre-tools-cpupower' 'qjackctl' 'alsa-tools' 'alsa-utils' 'alsa-plugins') +optdepends=('linux-libre-rt: required for achieving the best results for a low-latency profesional audio system' + 'patchage: required for audio and MIDI systems based on Jack and Alsa' + 'a2jmidid: required for exposing legacy ALSA sequencer applications in JACK MIDI system' + 'rtirq: required for firewire soundcards') +backup=('etc/sysctl.d/99-sysctl.conf' 'etc/modules-load.d/alsamidi.conf' 'etc/jackdrc' + 'etc/parabola-proaudio-settings.sh' 'etc/modprobe.d/snd-seq-dummy_16.conf') +source=('99-sysctl.conf' 'alsamidi.conf' 'jackdrc' 'parabola-proaudio-settings.sh' + 'parabola-proaudio-settings.service' 'snd-seq-dummy_16.conf') +package() { + # add jackdrc file that contains a good recommended initial settings for jack + mkdir -p $pkgdir/etc + install -m644 $srcdir/jackdrc $pkgdir/etc + + # add our script to increase the highest requested RTC interrupt frequency (default is 64 Hz) + install -m744 $srcdir/parabola-proaudio-settings.sh $pkgdir/etc + + # add file with extra virtual midi ports + mkdir -p $pkgdir/etc/modprobe.d + install -m644 $srcdir/snd-seq-dummy_16.conf $pkgdir/etc/modprobe.d/ + + # add our custom kernel parameters to sysctl.d folder + mkdir -p $pkgdir/etc/sysctl.d + install -m644 $srcdir/99-sysctl.conf $pkgdir/etc/sysctl.d + + # add service file that calls parabola-proaudio-settings at boot + mkdir -p $pkgdir/etc/systemd/system + install -m644 $srcdir/parabola-proaudio-settings.service $pkgdir/etc/systemd/system + + # add alsamidi file to ensure the ALSA MIDI driver is loaded + mkdir -p $pkgdir/etc/modules-load.d + install -m644 $srcdir/alsamidi.conf $pkgdir/etc/modules-load.d +} + +sha512sums=('c7263cbf582a74b273ee27a781cd6015e4d996c5ae6750de48b265b29dab29a5892f77d6fde99600a73e355d77fcbb6283771d9b201adb1543816b021a51679b' + '1ddeb186031d905a14255a6841bba8f9c86fb52a5f4fede7e71593f5d584abf11534349da835d01a7dabec9e04d12ba7b2c15b1be4c8bb4e63a2a1ddacbf1ee7' + '44229cc60c956a11767c08d877cd633c93b7a9bc864b7e69f54efd950ee05897e429ef8252dcba0dc5f50568c1961026962716b40a7014c8195a6dae1bc0eeb1' + '245dc0170ed1e2e2fa19c0ea4716489cc6fd86ecda9c1c8f2d3617fef7f91743bbac5770aa1858ec80c62e19b5ed72dce6c313c51994bb7a4c6588d276afe16d' + '404b37d70753ad17a15b994323bdf738e3c30b63d927c13ea10d2785649fd3c967a024763b18722cda49bfa1ea06b92237d18fe79081521b60abe609114c9c4f' + '759c3354a827cd4b7c383d54d7fd4c15cc44522749d59f234550e6b31849d91cb5619236132956779f86988188a2d236f4631b3e2f4db645aacdc6711ffbfcfd') diff --git a/pcr/parabola-proaudio-settings/alsamidi.conf b/pcr/parabola-proaudio-settings/alsamidi.conf new file mode 100644 index 000000000..be984d36a --- /dev/null +++ b/pcr/parabola-proaudio-settings/alsamidi.conf @@ -0,0 +1,2 @@ +# If you want to use any MIDI hardware you need to ensure the ALSA MIDI driver is loaded +snd_seq_midi diff --git a/pcr/parabola-proaudio-settings/jackdrc b/pcr/parabola-proaudio-settings/jackdrc new file mode 100644 index 000000000..8c1c8cb38 --- /dev/null +++ b/pcr/parabola-proaudio-settings/jackdrc @@ -0,0 +1 @@ +/usr/bin/jackd -P89 -t2000 -dalsa -dhw:0 -r44100 -p256 -n2 -Xseq diff --git a/pcr/parabola-proaudio-settings/parabola-proaudio-settings.service b/pcr/parabola-proaudio-settings/parabola-proaudio-settings.service new file mode 100644 index 000000000..b953302a2 --- /dev/null +++ b/pcr/parabola-proaudio-settings/parabola-proaudio-settings.service @@ -0,0 +1,9 @@ +[Unit] +Description=Parabola Proaudio Settings + +[Service] +Type=oneshot +ExecStart=/etc/parabola-proaudio-settings.sh + +[Install] +WantedBy=multi-user.target diff --git a/pcr/parabola-proaudio-settings/parabola-proaudio-settings.sh b/pcr/parabola-proaudio-settings/parabola-proaudio-settings.sh new file mode 100755 index 000000000..54f945e91 --- /dev/null +++ b/pcr/parabola-proaudio-settings/parabola-proaudio-settings.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +echo 2048 > /sys/class/rtc/rtc0/max_user_freq +echo 2048 > /proc/sys/dev/hpet/max-user-freq +cpupower frequency-set -g performance +echo noop > /sys/block/sda/queue/scheduler diff --git a/pcr/parabola-proaudio-settings/snd-seq-dummy_16.conf b/pcr/parabola-proaudio-settings/snd-seq-dummy_16.conf new file mode 100644 index 000000000..16e6d7dd4 --- /dev/null +++ b/pcr/parabola-proaudio-settings/snd-seq-dummy_16.conf @@ -0,0 +1,2 @@ +#Creates extra virtual midi ports +options snd-seq-dummy ports=8 |