Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scripts targeting Arch leave user systems in an unsupported state #2

Open
dvzrv opened this issue Nov 9, 2021 · 1 comment
Open

Comments

@dvzrv
Copy link

dvzrv commented Nov 9, 2021

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

@rolodoom
Copy link

About rtprio in audio is something that has been used when configuring jack server for audio https://jackaudio.org/faq/linux_rt_config.html

Also it's like recommended when using yabridge to use windows VST plugins on Linux https://github.com/robbert-vdh/yabridge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants