!XrtRvzcHOrHtSKARne:nixos.org

NixOS Audio

134 Members
34 Servers

Load older messages


SenderMessageTime
15 Oct 2022
@heartman:matrix.orgThomas Heartman (he/him)Hey! 🙋 I'm just getting back into audio production (first time on NixOS). I've found a number of free synths packaged into nixpkgs, but I haven't been able to find u-he's Zebralette or Tyrell N6. Do you know if they're available somewhere? If not, would any of you have a derivation for them or be able to help me write one? 🙏17:10:15
@ckie:ckie.devckie (they/them) Thomas Heartman (he/him): https://cs.github.com/?scopeName=All+repos&scope=&q=Zebralette+u-he+language%3Anix 17:37:14
@ckie:ckie.devckie (they/them) (in case its still auth-gated, single result; this) 17:37:43
@heartman:matrix.orgThomas Heartman (he/him)Oh, sick! Thank you so much 😄17:41:41
@heartman:matrix.orgThomas Heartman (he/him)image.png
Download image.png
17:49:58
@heartman:matrix.orgThomas Heartman (he/him)

I had to do some minor changes (update to the latest version), but it seems to have worked. For reference, here's what I ended up with:

{ stdenv, libuuid, libxcb, expat, gtk3, glib }:

stdenv.mkDerivation {
  pname = "Zebralette-mini-Zebra";
  version = "2.9.3";
  src = builtins.fetchurl {
    url = "https://dl.u-he.com/releases/Zebra2_293_12092_Linux.tar.xz";
    sha256 = "sha256:1imn0a1pjgqihcms86m7wblc9fifmc2l9xczykl8c0bkzw883xpx";
  };
  dontBuild = true;
  sourceRoot = "Zebra2-12092";

  installPhase = ''
    mkdir -p $out/lib/vst
    cp -r Zebra2/* $out/lib
    ln -f $out/lib/Zebra2.64.so $out/lib/vst/Zebra2.64.so
  '';

  postFixup = ''
    patchelf \
      --set-rpath ${expat}/lib:${libxcb}/lib:${libuuid.out}/lib \
      $out/lib/vst/Zebra2.64.so
    patchelf \
      --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
      --set-rpath ${gtk3}/lib:${glib.out}/lib \
      $out/lib/dialog.64
  '';
}

However, when trying to run the plugins (in Bitwig), I'm getting these messages:

17:49:58
@heartman:matrix.orgThomas Heartman (he/him) *

I had to do some minor changes (update to the latest version), but it seems to have worked. For reference, here's what I ended up with:

{ stdenv, libuuid, libxcb, expat, gtk3, glib }:

stdenv.mkDerivation {
  pname = "Zebralette-mini-Zebra";
  version = "2.9.3";
  src = builtins.fetchurl {
    url = "https://dl.u-he.com/releases/Zebra2_293_12092_Linux.tar.xz";
    sha256 = "sha256:1imn0a1pjgqihcms86m7wblc9fifmc2l9xczykl8c0bkzw883xpx";
  };
  dontBuild = true;
  sourceRoot = "Zebra2-12092";

  installPhase = ''
    mkdir -p $out/lib/vst
    cp -r Zebra2/* $out/lib
    ln -f $out/lib/Zebra2.64.so $out/lib/vst/Zebra2.64.so
  '';

  postFixup = ''
    patchelf \
      --set-rpath ${expat}/lib:${libxcb}/lib:${libuuid.out}/lib \
      $out/lib/vst/Zebra2.64.so
    patchelf \
      --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
      --set-rpath ${gtk3}/lib:${glib.out}/lib \
      $out/lib/dialog.64
  '';
}

However, when trying to run the plugins (in Bitwig), I'm getting the above error (Installation issue: no GUI resources. Please run the installer again). Does that sound familiar?

17:50:22
@ckie:ckie.devckie (they/them)nope, never touched the Actual Thing just did my usual search :P17:51:18
@ckie:ckie.devckie (they/them) maybe LD_DEBUG=libs and/or strace | grep dlopen 17:51:36
@ckie:ckie.devckie (they/them) * maybe LD_DEBUG=libs 17:51:48
@heartman:matrix.orgThomas Heartman (he/him) Cool; I'll try that! ... How do I do that? Is that in the derivation? Also interesting thing to note: the synth seems to be working, there's just no GUI. That said, not being able to change presets or twist any knobs does make it kinda useless for now. 17:56:57
@ckie:ckie.devckie (they/them)oh no, just an env var when you run it!17:57:18
@heartman:matrix.orgThomas Heartman (he/him)Right! When I run the DAW, that is?17:57:31
@ckie:ckie.devckie (they/them)oh, that's going to be a lot more noisy then17:57:40
@heartman:matrix.orgThomas Heartman (he/him) Yeah, probably. I don't know if I can run it standalone? 17:58:04
@ckie:ckie.devckie (they/them) i guess you can do that and pipe the output 2>&1 | tee log so you can munch through the possibly-multi-GB log in a more competent environment 17:58:32
@heartman:matrix.orgThomas Heartman (he/him)

Hmm, it seems to only give me these messages when trying to load the plugin:

470133:	/nix/store/gj42xbmlpd7zwvidm691n9pphz6lnvzp-bitwig-studio-4.3.8/libexec/lib/bitwig-studio/libgraphics-core.so: error: symbol lookup error: undefined symbol: Java_com_bitwig_x11_1windowing_1system_X11TitledWindowHandle_activate (fatal)
    470133:	/nix/store/gj42xbmlpd7zwvidm691n9pphz6lnvzp-bitwig-studio-4.3.8/libexec/lib/bitwig-studio/libsqlitejdbc.so: error: symbol lookup error: undefined symbol: Java_com_bitwig_x11_1windowing_1system_X11TitledWindowHandle_activate (fatal)
    470133:	/nix/store/gj42xbmlpd7zwvidm691n9pphz6lnvzp-bitwig-studio-4.3.8/libexec/lib/bitwig-studio/libcairo-graphics.so: error: symbol lookup error: undefined symbol: Java_com_bitwig_x11_1windowing_1system_X11TitledWindowHandle_activate (fatal)
[2022-10-15 20:00:33.224 notifications info] Loading plugins...:

I've grepped around the output, but don't find anything related to zebra, and nothing that seems to indicate issues relating to u-he either. Got any suggestions?

18:06:44
@heartman:matrix.orgThomas Heartman (he/him)The above output may indicate that there's some drawing issues, but I'm not sure how to handle that. I draw windows without title bars if that could be a thing? Haven't had any issues with any other plugins, though.18:07:34
@ckie:ckie.devckie (they/them)more like its missing some wonky x11 library it seems18:07:59
@heartman:matrix.orgThomas Heartman (he/him)Hmm. could that be a missing runtime dependency in the derivation?18:08:31
@ckie:ckie.devckie (they/them)probably yeah but I have no idea where you'd find that dynlib18:08:51
@heartman:matrix.orgThomas Heartman (he/him)Just for clarification: I meant the Zebralette derivation, not for Bitwig. If you still think that's an option, then ... hmm 🤔 I feel like I've searched for libraries when creating derivations previously, but can't quite remember hew18:10:14
@heartman:matrix.orgThomas Heartman (he/him) * Just for clarification: I meant the Zebralette derivation, not for Bitwig. If you still think that's an option, then ... hmm 🤔 I feel like I've searched for libraries when creating derivations previously, but can't quite remember how18:10:17
@ckie:ckie.devckie (they/them)nix-locate perhaps, but that won't help you here18:17:31
@ckie:ckie.devckie (they/them)hands full with a very frustrating bug atm though so can't really think further18:18:08
@ckie:ckie.devckie (they/them)systemd is infuriating18:18:28
@ckie:ckie.devckie (they/them)(when you try to use all of its features that is)18:20:46
@heartman:matrix.orgThomas Heartman (he/him)Yeah, nix-locate might ring a bell. But thanks for letting me know it's not gonna help here: saves me spending an hour trying to make it work 😅 And that's totally fine; I really appreciate all the help you've given me so far! I'd love to be able to help in return, but I don't really have much experience with systemd, I'm afraid18:22:17
@ckie:ckie.devckie (they/them)oh yeah, np! just swapping around my element rooms between builds18:23:17
@ckie:ckie.devckie (they/them)i've scheduled myself a nice drink and stuff once i get this working18:23:30

Show newer messages


Back to Room ListRoom Version: 9