anchor.diff:      popd
   
       pushd app/gui/qt
  -      cp -f ruby_help.tmpl ruby_help.h
  -      ../../server/ruby/bin/qt-doc.rb -o ruby_help.h
  +      cp -f utils/ruby_help.tmpl utils/ruby_help.h
  +      ../../server/ruby/bin/qt-doc.rb -o utils/ruby_help.h
   
  -      substituteInPlace SonicPi.pro \
  -        --replace "LIBS += -lrt -lqt5scintilla2" \
  -                  "LIBS += -lrt -lqscintilla2 -lqwt"
  +      lrelease lang/*.ts
   
  -      lrelease SonicPi.pro
  -      qmake SonicPi.pro
  -
  -      make
  +      mkdir build
  +      pushd build
  +        cmake -G "Unix Makefiles" ..
  +        make
  +      popd
       popd
     '';
   
     installPhase = ''
       runHook preInstall
  -    cp -r . $out
  +
  +    mkdir $out
  +    cp -r {bin,etc} $out/
  +
  +    # Copy server whole.
  +    mkdir -p $out/app
  +    cp -r app/server $out/app/
  +
  +    # Copy only necessary files for the gui app.
  +    mkdir -p $out/app/gui/qt/build
  +    cp -r app/gui/qt/{book,fonts,help,html,images,image_source,info,lang,theme} $out/app/gui/qt/
  +    cp app/gui/qt/build/sonic-pi $out/app/gui/qt/build/sonic-pi
  +
       runHook postInstall
     '';
   
  
positive.code: , bash
  , jack2Full
  , supercollider
  , qscintilla
  , qwt
  , osmid
  }:
  
negative.code:     homepage = "https://sonic-pi.net/";
      description = "Free live coding synth for everyone originally designed to support computing and music lessons within schools";
      license = lib.licenses.mit;
      maintainers = with lib.maintainers; [ Phlogistique kamilchm c0deaddict ];
      platforms = lib.platforms.linux;
    };
  }
  