Serum 2 #1

Open
opened 2026-07-04 19:41:48 +02:00 by jad · 3 comments
Owner

The technical side of curating software compatibility hacks could be prototyped using Serum 2.

It's a good example because a lot of people including me depend on it for music workflows, and it needs specific wine quirks which have just been solved recently.

So the goal is to follow this guide to get a working instance on my computer, and from there think how to package this neatly using container images and custom wine runners to do the job.

Among the technical issues:

  • A hack often involves forks, I think it's important to be able to track our dependencies explicitly especially if it involves forks, in order to know when things eventually get merged upstream (if ever), which would simplify the setup.
The technical side of curating software compatibility hacks could be prototyped using Serum 2. It's a good example because a lot of people including me depend on it for music workflows, and it needs specific `wine` quirks which have just been solved recently. So the goal is to follow [this guide](https://meow.garden/serum-2-linux/) to get a working instance on my computer, and from there think how to package this neatly using `container` images and custom `wine` runners to do the job. Among the technical issues: - A hack often involves forks, I think it's important to be able to track our dependencies explicitly especially if it involves forks, in order to know when things eventually get merged upstream (if ever), which would simplify the setup.
jad changed title from DaVinci Resolve to Serum 2 2026-07-04 19:42:51 +02:00
jad added spent time 2026-07-04 19:43:35 +02:00
4 hours
Author
Owner

I followed this guide closely, which got me until Serum 2 showed up.

It complained about not finding the directory for base presets, and since I didn't quite know where that was, I set it to an empty Serum folder in host's ~/Documents.

On subsequent launches, Serum 2 just started crashing. Looking at Bitwig's logs:

19:39:20 [Serum2-8CJKRUby]
19:39:20 [Serum2-8CJKRUby] config from:   '<defaults>'
19:39:20 [Serum2-8CJKRUby] hosting mode:  'individually, 64-bit'
19:39:20 [Serum2-8CJKRUby] other options: '<none>'
19:39:20 [Serum2-8CJKRUby]
19:39:20 [Serum2-8CJKRUby] Enabled features:
19:39:20 [Serum2-8CJKRUby] - bitbridge support
19:39:20 [Serum2-8CJKRUby] - CLAP support
19:39:20 [Serum2-8CJKRUby] - VST3 support
19:39:20 [Serum2-8CJKRUby]
19:39:20 [Serum2-8CJKRUby] [Wine STDERR] 01fc:err:waylanddrv:wayland_process_init Wayland compositor doesn't support optional zwlr_data_control_manager_v1 (clipboard functionality will be limited)
19:39:20 [Serum2-8CJKRUby] [Wine STDERR] Initializing yabridge host version 5.1.1-54-g48ea9749
19:39:20 [Serum2-8CJKRUby] [Wine STDERR] Preparing to load VST3 plugin at '/var/home/jad/.var/app/com.usebottles.bottles/data/bottles/bottles/Serum-2/drive_c/Program Files/Common Files/VST3/Serum2.vst3/Contents/x86_64-win/Serum2.vst3'
19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:dxgi:DXGID3D10CreateDevice Ignoring flags 0x28.
19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:dcomp:dcomp_device_create Rendering device is ID2D1Device 0000000001490970 — using D2D1 bitmap path.
19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:dcomp:dcomp_device_create Created dcomp device 00000000014E08F0 (rendering_device 0000000001490970, d2d1_device 0000000001490970).
19:39:21 [Serum2-8CJKRUby] [Wine STDERR] Finished initializing '/var/home/jad/.var/app/com.usebottles.bottles/data/bottles/bottles/Serum-2/drive_c/Program Files/Common Files/VST3/Serum2.vst3/Contents/x86_64-win/Serum2.vst3'
19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 0220:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 00000000126DFF50
19:39:22 [Serum2-8CJKRUby] [Wine STDERR] 01fc:err:virtual:virtual_setup_exception stack overflow 4800 bytes addr 0x6fffffc45746 stack 0xfd40 (0x10000-0x11000-0x110000)
I followed [this guide](https://meow.garden/serum-2-linux/) closely, which got me until Serum 2 showed up. It complained about not finding the directory for base presets, and since I didn't quite know where that was, I set it to an empty `Serum` folder in host's `~/Documents`. On subsequent launches, Serum 2 just started crashing. Looking at Bitwig's logs: ``` 19:39:20 [Serum2-8CJKRUby] 19:39:20 [Serum2-8CJKRUby] config from: '<defaults>' 19:39:20 [Serum2-8CJKRUby] hosting mode: 'individually, 64-bit' 19:39:20 [Serum2-8CJKRUby] other options: '<none>' 19:39:20 [Serum2-8CJKRUby] 19:39:20 [Serum2-8CJKRUby] Enabled features: 19:39:20 [Serum2-8CJKRUby] - bitbridge support 19:39:20 [Serum2-8CJKRUby] - CLAP support 19:39:20 [Serum2-8CJKRUby] - VST3 support 19:39:20 [Serum2-8CJKRUby] 19:39:20 [Serum2-8CJKRUby] [Wine STDERR] 01fc:err:waylanddrv:wayland_process_init Wayland compositor doesn't support optional zwlr_data_control_manager_v1 (clipboard functionality will be limited) 19:39:20 [Serum2-8CJKRUby] [Wine STDERR] Initializing yabridge host version 5.1.1-54-g48ea9749 19:39:20 [Serum2-8CJKRUby] [Wine STDERR] Preparing to load VST3 plugin at '/var/home/jad/.var/app/com.usebottles.bottles/data/bottles/bottles/Serum-2/drive_c/Program Files/Common Files/VST3/Serum2.vst3/Contents/x86_64-win/Serum2.vst3' 19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION 19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:dxgi:DXGID3D10CreateDevice Ignoring flags 0x28. 19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:dcomp:dcomp_device_create Rendering device is ID2D1Device 0000000001490970 — using D2D1 bitmap path. 19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 01fc:fixme:dcomp:dcomp_device_create Created dcomp device 00000000014E08F0 (rendering_device 0000000001490970, d2d1_device 0000000001490970). 19:39:21 [Serum2-8CJKRUby] [Wine STDERR] Finished initializing '/var/home/jad/.var/app/com.usebottles.bottles/data/bottles/bottles/Serum-2/drive_c/Program Files/Common Files/VST3/Serum2.vst3/Contents/x86_64-win/Serum2.vst3' 19:39:21 [Serum2-8CJKRUby] [Wine STDERR] 0220:fixme:kernelbase:AppPolicyGetThreadInitializationType FFFFFFFFFFFFFFFA, 00000000126DFF50 19:39:22 [Serum2-8CJKRUby] [Wine STDERR] 01fc:err:virtual:virtual_setup_exception stack overflow 4800 bytes addr 0x6fffffc45746 stack 0xfd40 (0x10000-0x11000-0x110000) ```
jad self-assigned this 2026-07-04 20:05:25 +02:00
jad removed their assignment 2026-07-04 20:05:36 +02:00
jad self-assigned this 2026-07-04 20:05:52 +02:00
jad removed their assignment 2026-07-04 20:05:57 +02:00
jad self-assigned this 2026-07-04 20:06:05 +02:00
jad canceled time tracking 2026-07-07 20:53:09 +02:00
jad added spent time 2026-07-07 20:53:18 +02:00
30 minutes
Author
Owner

I hadn't setup wineloader.conf correctly. After logging out and back in, Serum 2 now opens to a black screen. Digging....

I hadn't setup `wineloader.conf` correctly. After logging out and back in, Serum 2 now opens to a black screen. Digging....
jad added spent time 2026-07-08 13:15:32 +02:00
30 minutes
Author
Owner

I just needed to disable DXVK and other such extensions, and just keep the runner!
Next, I'll put some thinking into how to automate this into a one-step setup experience.

I just needed to disable DXVK and other such extensions, and just keep the runner! Next, I'll put some thinking into how to automate this into a one-step setup experience.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Total time spent: 5 hours
jad
5 hours
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jad/daedalus#1
No description provided.