.Deb File to optimize Linux Mint to use in ProAudio

Hi everyone,

Just a quick note to let you guys know that a Friend of mine and I have been working on a .deb file that we kindly named it as “musicdaw” that makes all adjustments recommended by the LinuxMusicians/WikiLinux.org system configuration advises us to do in order to run audio apps on a Linux Debian (in my case Linux Mint)

I use to do all the steps manually. But my friend João Almeida (Professor of the Computer Sciences School at Federal Institute of Pernambuco-Belo Jardim Campus-BR) wrapped all the scripts in this single *.deb file .
What it Does?

It installs the low latency kernel
Changes the swapiness level from 60 to 10
install jack and its dependencies
Installs the CPU performance Governor
install the Realtimequickconfigscan among many other things
Adds the user to the AUDIO GROUP
Installs the KXStudio Repos (you cam remove them later)

Let me know if you want to try it out ok?

If someone gets interested on it João Will make a place to download and I’ll put instructional video installation for those (like me some years ago) who are not very familiar with using bash commands

Great Hug from Brazil
Alexandre Magno
Trombone Professor at Federal University of Paraiba-BR

4 Likes

I never thought about changing swapiness level. I wonder if this is already done on UbuntuStudio? I’ll have to check. Thank you, and keep up the good work!

I’ve been thinking over the last few months that this would be a good idea. I’m very happy with my AV Linux system, but it’s not always safe to do security updates on AV Linux, because it is such a mixture of different package versions. A simple set of scripts to configure a default Debian installation for pro audio is a great approach.

Please do make it available for download!

1 Like

One of the reasons we are doing this is for the sake of contiuous support. Because both of us work for federal education institutions in Brasil, we will be able to provide long time support for that

And about making it available for download, will be done later today for sure!!

1 Like

It’s something one should do when using SSDs to reduce wear of the disk.

As for Ardour or music production it may however be backwards. Ardour (and also jack) use mlock to prevent memory from being paged out. Using swap for for other background apps can be beneficial since the freed RAM can be used as disk-cache.

1 Like

Hmmm,

Security updates should not be a problem on any versions of AV Linux newer than 2016, it is true that the older 6.X versions were much more customized and stretched Debian Stable over a very long period but the newer versions of AV Linux should be 100% compatible with the Debian Buster (or whatever current Debian Stable) security updates. If this is not the case or you have a specific security update issue please let me know what it is so I can look into it, I don’t really want the impression out there that AVL doesn’t support security updates and will certainly fix it ASAP if that is the case.

Thanks Glen - I guess I was thinking of earlier versions of AV Linux that were not based on current Debian stable of the time. My apologies for giving a false impression about AV Linux. I haven’t tried any updates since installing but will do so with your assurance. I’ll let you know if there’s a problem but I’m sure it will be fine!

I’ll be trying this script on a laptop that’s not used for anything important. AVL is staying on my studio system for sure!

My experience has been that even though the DSP part of the code has mlock, if there is anything in the chain that gets swapped out (including GUI)… the take is lost. Swap is only good for not loosing the application before saving due to an OOM event from what I have seen on my systems. Better to add more RAM… or kill firefox (or whatever) before recording.

I’ll post all the implementations that have been done in the script
I am translating them (the comments in the scripts and in the document as well) from Brazilian Portuguese to American English
I’ll post a link here with the .deb as well as instructions
We are trying to put it on Git Hub

1 Like

If using SSDs (only), I’d rather disable swapping altogether… with enough physical RAM as in most machines nowadays, there’s really no need for it.

System logging is another thing to think about. In a desktop or laptop machine dedicated to audio, there’s usually no real need to keep logs on disk. On modern systemd-based systems (such as latest Ubuntu/Mint) you can easily instruct the system not to write anything on disk (while still having access to the “journal” as long as the machine is not powered off or rebooted).

That way you’ll avoid more unnecessary writes to disk, further reducing SSD wear, as well as possibly gaining some little more performance, too (no background writing to disk = less interrupts and unnecessary system load).

That’s not everyone’s reality mostly here in Brazil, where music schools in general don’t even contain a music lab.
That’s why we are not discarding any of those. Indeed, for boot speed’s sake, in some old machines I do create an “ext2” partition. Mostly on old 5400 HD which are quite present in my school.

I’m just waiting for João to Finish writing the script to be usable on both Debian and Mint Distros.

And here is what we have been doing to exact:

I’m just waiting for João to conclude de Debian portion of the Script so Debian and Mint Scripts will be able to run it (at least for trials) I already used in on more than 10 differente machines (not VMs)

                                                  **The music-daw package version 1.0**

Written and maintained by:

João Almeida (joao4linux@gmail.com) e Alexandre Ferreira (amfe223@g.uky.edu)

The purpose of this package is to facilitate the process of configuring Ubuntu or Mint operating systems to use low latency and real time kernel, thus transforming your computer into a digital audio workstation (DAW).

Obs.: The installation of the package must be performed with the “sudo” command as listed bellow:

$ sudo dpkg -i music-daw.1.0.deb

This package contains four scripts:

a- /usr/bin/music-daw - Executed only once, this script installs packages, including the low latency kernel. These changes are based on the recommendations written by the authors of the linux.org web page (link bellow), in the section which discusses how to optimize your computer for professional audio usage (i.e., DAW usage):

https://wiki.linuxaudio.org/wiki/system_configuration.

b- /usr/local/modify-rtc-max-use r – This script performs the following tasks:

set permissions to the audio group to /dev/hpet e /dev/rtc;

adjusts CPU frequency to function as “performance” mode;

checks if the RT variables have been activated. If not, adjustments will take place.

c- /etc/systemd/system/set-max-user-freq.service – This is a standard systemd scritpt that is intended to run the modify-rtc-max-user script during boot.

d- /etc/cron.hourly/test-kernel.sh - This script checks for any updates in the low latency kernel and, indeed, verifies if the RT variables have been modified.

The “music-daw” Script

It must me executed right after running the “$ sudo dpkg -i music-daw.1.0.deb” command as a regular user in the same terminal ex:. $ music-daw

1- The The first part of the script includes the user in the audio group ,in a way that the user has access to the permissions of this group

2- The script reduces /etc/sysctl.conf the parameter vm.swappiness value, which determines the moment when the system starts using its swap partition. This ensures that audio processes will preferably use RAM .

3- Another alteration takes place on the max_user_watches , which defines the maximum amount of files that the system can monitor with the inotify (which is part of the kernel), altering the command listed bellow:

sed -i ‘$afs.inotify.max_user_watches = 524288’ /etc/sysctl.conf

4- The script checks if there is a low latency kernel installed. If it does, it alters the /boot/config-uname -r in order to ad the RT mode. This is achieved by modifying the following parameters:

CONFIG_HZ_1000=y

CONFIG_HZ=1000

CONFIG_PREEMPT_RT_FULL=y

CONFIG_PREEMPT=y

If no low latency kernel has not been located, the script proceeds with its installation.

5-Then the script includes the KX Studio’s repositories in your system. This procedure will allow the user to install both software and plugins available at the repository. This portion of the installation does not alter any function of the OS. If at any moment, errors occur due to any modification in the KX Studio’s repository, the script will inform the user but continues the remaining portion of the installation normally.

6- In turn, the cpufrequtils indicator-cpufreq package is installed. This will allow the user to make use of the CPU at its maximum performance.

7- One of the last tasks performed is the download and installation of the realtimeconfigquickscan Pearl script that allows the user to check if all the parameters are ready to work in RT mode.

sudo git clone git://github.com/raboof/realtimeconfigquickscan.git

8- The installation of the jackd qjacktl packages are the last steps of the whole process. During this time, it is given the user the choice to warrant priority access and access to memory for the audio group.

Which apps use those? It should not be needed anymore, nor should any app use those for audio timing on a modern system (kernel newer than 2.6.39).

This is backwards, prefer a tickless kernel for reliable low latency and low jittter MIDI.

I wrote most of the content on this page in 2006/7 and sadly most of it is out of date and has since been frankensteined by various wiki editors. Take it with a huge grain of salt.

3 Likes

It would be nice if you would be willing to update it, as to date those obsolete information are misleading a lot of people… :blush:

I don’t have the time to update it. Ardour development keeps me busy pretty much 24/7. I also stepped down as linuxaudio.org admin in 2015. It’s time for a new generation to take over that part.

From the time I used Ubuntu Studio and Regular Linux Mint, Ardour would not open at all after been added, it opens.

As you’ve mentioned, this must be outdated, but truth is: It was there and we did all things in the script based on those info.
And indeed, we’ll create an account and check. Many things to discuss, but one thing is for sure: After doing all those modifications, I’ve been recording and mixing a lot with both ardour and MixBus

And here is the GIT HUB link for the .deb

Please take a look and feed back will be wellcome. We’ll probably review everything on Linux.org