FIRST
WHY?
- Okay so I had this idea of making my old MacBook 2,1 (2006) as stand-alone Renoise machine, but after endless tweaking and going thru Linux distros I settled on minimal GUI with Renoise.
WHY FEDORA i3 SPIN?
- This was one of the easiest distros to install 64-bit Linux on 64-bit CPU with 32-bit EFI, with almost everything working nicely out of the box while only using about 300mb of RAM.
- i3 can be quite daunting at first, but here is a nice reference card for hotkeys:
i3 - Reference Card - …and I kind of dig that tiling WM aproach for desktop after getting used to it.
NOTES
- This guide is intended only for Fedora i3 in mind, but it could be helpful for users of other distros too. For example:
sudo dnf...
could besudo apt...
for other distro. You might have different text editor to “mousepad”, different file manager from “thunar” and different folder structure to one covered below. - [CMD] is [WIN] key for Windows people and [SUPER] key for Linux people.
INSTALL FEDORA i3
MAKE BOOTABLE USB STICK
- Download Fedora i3 spin
Fedora i3 Spin | The Fedora Project - Make bootable usb stick with BalenaEtcher
https://etcher.balena.io/ - Insert USB stick in laptop.
- Boot holding [ALT].
- (^ [ALT] for MacBook, might be something else for you).
- Select USB stick.
- Select
Start Fedora-i3_Live..
.
WHEN IN LIVE ENVIRONMENT
- Accept default values for two questions with [ENTER].
- Hit [CMD]+[Enter] to enter terminal
- Type
liveinst
to start installer - Now that terminal takes up half of the screen, hit [CMD]+[S] for stacked view.
- Installation is pretty straightforward, but I recommend to set Timeshift as well.
[OPTIONAL] - PARTITION FOR TIMESHIFT
- If you want to setup Timeshift for making backups like Time Machine on OSX, here is a good guide how to partition your SSD (HDD) in installation: How to setup Timeshift with BTRFS in Fedora? - GeeksforGeeks
- ^ I highly recommend.
- No need to install whole system from scratch when you break something.
- I did not set encryption as it might affect performance and nothing important on this laptop.
- Also for @ sign you need to type [SHIFT]+[CTRL]+[U]+[40] with keyboard.
WHEN INSTALLER IS DONE
- Type
reboot
in terminal - Remove USB stick
- Fedora i3 should start from the internal SSD (HDD).
UPDATE SYSTEM
ALWAYS UPDATE FIRST
- Connect to the internets with icon on right bottom corner.
- Hit [CMD]+[ENTER] to enter terminal.
- Type
sudo dnf update
- Say yes to everything and wait for the process to finnish.
[OPTIONAL] - INSTALL TIMESHIFT
- Type
sudo dnf install timeshift
in terminal. - Type
sudo timeshift-gtk
- ^ Continue to follow the guide from the link above ^.
^ (I did not setup automatic backups as I’ll do it manually before tinkering with the OS). - [SHIFT]+[CMD]+[Q] to quit Timeshift.
REBOOT!!!
- type
reboot
INSTALL RTCQS
Program with cachy name to analyze system for bottlenecks. To install on Fedora i3:
- Type
sudo dnf install python3-pip
to install pip. - Type
pip install –upgrade rtcqs
to install rtcqs. - Type
rtcqs
in terminal to see everything that is wrong with your system.
FIX RTCQS WARNINGS
GROUP LIMITS & RT PRIORITIES
- Make audio.conf with
sudo mousepad /etc/security/limits.d/audio.conf
- Type these lines in the file:
-
- (@ with [SHIFT]+[CTRL]+[U]+[40])
- Save.
- [SHIFT]+[CMD]+[Q] to quit mousepad.
- Type
sudo usermod -a -G audio <username>
(^ username is the username you chose @ the installation) - Type
reboot
.
CPU FREQUENCY SCALING
- Type
sudo dnf install kernel-tools
- Type
sudo cpupower frequency-set -g performance
…and to set performance mode everytime system will boot: - Type
sudo mousepad .config/i3/config
- Add
exec sudo cpupower frequency-set -g performance
in the beginning.
(^ There is more sophisticated ways to do performance mode on boot, but none of them seemed to work on this distro, so I just did this the crude way on i3 boot config. Seems to add spinning wheel at startup for awhile, but does seem to work otherwise as it should).
PREEMPT RT
- Type
sudo grubby --args="preempt=full" --update-kernel=ALL
SPECTRE / MELTDOWN MITIGATIONS
- Type
sudo grubby --args="mitigations=off" --update-kernel=ALL
(^ Note that this will make your system vulnerable to Spectre / Meltdown attacks.)
SWAPPINESS
- Type
sudo mousepad /etc/sysctl.conf
- Add line
vm.swappiness = 10
- Save.
POWER MANAGEMENT
- Make new file with
sudo mousepad /etc/udev/rules.d/99-cpu-dma-latency.rules
- Type:
DEVPATH=="/devices/virtual/misc/cpu_dma_latency", OWNER="root", GROUP="audio", MODE="0660"
- Save and [SHIFT]+[CMD]+[Q] to quit editor.
- Type
sudo udevadm control --reload-rules
- Type
sudo udevadm trigger
INSTALL RENOISE
ADD UNZIP TO FILE MANAGER
To be able to unarchive Renoise from file manager (Thunar)
- Open terminal with [CMD]+[Enter].
- Type
sudo dnf install xarchiver
- Type
sudo dnf install thunar-archive-plugin
- [SHIFT]+[CMD]+[Q] to quit terminal.
DOWNLOAD RENOISE
- [CMD]+[D].
- Type
firefox
and hit [ENTER] - Go to Renoise backstage and download Renoise.
- Click to show download folder from Firefox.
- Right click ”rns_344_linux_x86_64.tar.gz” and choose
Extract here
- Right click ”rns-344_linux_x86_64” -folder and select
open terminal in this folder
- Type
sudo sh install.sh
in terminal. - [SHIFT]+[CMD]+[Q] to close everything.
- [CMD]+[D].
- Type
renoise
- Hit [ENTER]
- Go to ”Edit” → ”Preferences” → ”Audio” → ”Device type”.
- Set to
Jack
- Renoise.
CHANGE BUFFER SIZE
- There is no setting in Renoise to set buffer size for latency, but you can do it via terminal by typing:
pw-metadata -n settings 0 clock.force-quantum 256
- ^
256
is the lowest I can go with internal MacBook soundcard and play ”Dblue – Tension” demo song without crackles. Tops about 75% cpu usage on patterns 19 → 22. - ^^Usual values are
32
,64
,128
,265
,512
,1024
,2048
,… - ^^^You can also change samplerate with
pw-metadata -n settings 0 clock.force-rate 48000
OPTIONAL OS TWEAKS
i3 TITLE BAR ON TOP
I like my title bar on top of the screen, so here is how:
- Type
sudo mousepad .config/i3/config
- Scroll in the end of the file and find where it says:
-
bar {
colors { - Add
position top
in between so it looks like: -
bar {
position top
colors { - Save
- [SHIFT]+[CMD]+[Q] to quit editor.
- [SHIFT]+[CMD]+[R] to apply.
DISABLE TOUCHPAD NATURAL SCROLLING
I like my touchpad with unnatural scrolling. Two finger down is scrolling the page down and not the other way around. So to do this, here is how:
- Type
sudo mousepad /usr/share/X11/xorg.conf.d/40-libinput.conf
- Find touchpad settings:
-
Section “InputClass”
Identifier “libinput touchpad catchall”
MatchIsTouchpad “on”
MatchDevicePath “/dev/input/event*”
Driver “libinput”
EndSection - Add
option ”NaturalScrolling” ”False"
beforeEndSection
, so it looks like: -
Section “InputClass”
Identifier “libinput touchpad catchall”
MatchIsTouchpad “on”
MatchDevicePath “/dev/input/event*”
Driver “libinput”
option “NaturalScrolling” "False”`
EndSection - Save.
- [SHIFT]+[CMD]+[Q] to quit editor.
TODO
- Spell checking.
- Output is coming from headphones and internal MacBook speaker at the same time.
- Install Surge.
- Renoise more.
LINKS
- https://www.renoise.com
- Fedora i3 Spin | The Fedora Project
- System configuration [Linux-Sound]
- rtcqs/rtcqs: rtcqs is a Python utility to analyze your system and detect possible bottlenecks that could have a negative impact on the performance of your system when working with Linux audio. - Codeberg.org
- GitHub - teejee2008/timeshift: System restore tool for Linux. Creates filesystem snapshots using rsync+hardlinks, or BTRFS snapshots. Supports scheduled snapshots, multiple backup levels, and exclude filters. Snapshots can be restored while system is running or from Live CD/USB.
- How to setup Timeshift with BTRFS in Fedora? - GeeksforGeeks