Giter Site home page Giter Site logo

brendaningram / linux-audio-setup-scripts Goto Github PK

View Code? Open in Web Editor NEW
143.0 16.0 22.0 2.37 MB

Scripts to get you running with a professional audio quality Linux system.

Home Page: https://brendaningram.com

Shell 100.00%
audio music linux bitwig reaper vst

linux-audio-setup-scripts's Introduction

Linux Audio Setup Scripts

By Brendan Ingram

This repository contains scripts and guides to get you running with a Linux system capable of professional audio engineering and music production.

How do I use this?

Find your distribution in the list below, click the link, and run the SINGLE command listed at the top of the file - easy!

Supported distributions:

You can find me at:

Personal

Air Audio (audio news and tutorials)

Feathernator (my music)

Notes:

SSH clone this repository

git clone [email protected]:brendaningram/linux-audio-setup-scripts.git

To add yourself as a sudo user with no password

su -c "echo '$USER ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/$USER"

linux-audio-setup-scripts's People

Contributors

brendaningram avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

linux-audio-setup-scripts's Issues

Scripts targeting Arch leave user systems in an unsupported state

Hi!

First off: I appreciate the effort put into attempting to achieve something cross-distribution here. However, this is not trivial and a lot of care has to be put into actually getting this right, as the alternative is having a bunch of annoyed or angry users on your hands for whom "it does not work" and with them not even understanding how they got there (and this is neither great for you, the distribution or the users).

Unfortunately, your scripts targeting Arch leave the user in an unsupported state (partial upgrades), which is rather problematic (and some things actually don't even exist on Arch). Have these scripts been tested on Arch?

If you need to use an AUR helper, make sure to build packages using devtools' extra-86_64-build (to build in a clean chroot) and use paru instead (which does that by default AFAIK).
In general it is very advisable for users to not install things from the AUR blindly, especially if they do not know what that means or entails. It would be good to hide all installations from the AUR behind a (or one for all) user action with a message that advises them to read up on what the AUR is and that all of its PKGBUILDs are unsupported.
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-desktop.sh#L23-L27

Why install non-free binary blobs from the AUR, if the user may not even want them?
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-desktop.sh#L47

Exporting environment variables system-wide will have unforseeable side-effects for applications and for people wanting to default to an X11 based environment.
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-desktop.sh#L66

Why add opinionated gnome configuration, that the user may not even want?
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-desktop.sh#L113-L164

Packages can and should be installed alongside the upgrade process (pacman -Syu <package_1> <package_n>) instead of doing everything separately, which takes much longer. Also, there are package groups, that can be used, such as pro-audio, that contain all pro-audio related packages on Arch.
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L27

update-grub is not an upstream grub command and can not be used on Arch (it's probably something that Debian based distros ship).
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L37

It is problematic to allow the users in the audio group to use elevated rtprio, which is why we have the realtime-privileges package and the realtime group for that.
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L44-L46

The use of /etc/sysctl.conf is discouraged and drop-in files in /etc/sysctl.d/ should be used instead. Also note, that just placing the file there does not activate that kernel parameter now (see sysctl for that).
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L54

Why install reaper through an untrackable method, if you can just create a package using reaper-bin and install that?
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L75-L80

Downgrading packages creates a partial upgrade scenario. This is not supported.
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L97-L98

In theory the user only needs to log out and back in again (that's when the user groups will be applied properly):
https://github.com/brendaningramaudio/install-scripts/blob/7a9ee2ee6ce3bdb34551b95ec8e7a1d3159b654c/arch/install-audio-jack.sh#L142

Update scripts to 2024 distros

Hi, congratulations for these great linux audio configurations scripts! It could be good an update for these scripts because we're now in Ubuntu 23.10, Fedora 39, Zorin OS 17 and Linux Mint 21.3, also KX Studio repositories got updated also pipewire is now in 1.0 official version.

Script not work on Ubuntu 22.04.3 LTS

Script not work on Ubuntu 22.04.3 LTS.
Fresh install Ubuntu 22.04.3 LTS.
When install pipewire if no audio interface on system DBUS error stop install script.

Pop!_OS support

Hi Brendan! I've been trying to reach you on other sites for quite awhile. Many thanks for the Linux audio scripting you do! However, I run Pop!_OS (a fork of Ubuntu) and I've run into a problem running your Ubuntu script. It errors out during Pipewire installation. I suspect (but have not confirmed) that this is because the latest Pop versions already come with Pipewire and Wireplumber.

I'm running Pop!_OS v22.04. Would you please write a modified script for Pop? ๐Ÿ™๐Ÿ™‚ I would be glad to help you test it. It would be very beneficial for me and many others as Pop is getting quite popular! ๐Ÿ˜‰

Ultimately I'd like to be running Bitwig and Reaper on Linux, and use the VST3 (Windows) Satellite Plugins v2.0 for remote collaboration.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.