Use sfArk SoundFont instruments on GNU / Linux

SoundFont is a technology for generating sample-based instrument sounds. It’s supported on GNU/Linux by a variety of apps, including Qsynth, which can be used as an external JACK instrument and connected to Digital Audio Workstations like Ardour 3 and Qtractor.

Many SoundFont instruments are freely available, but some of them are compressed and instead of of the .sf2 file extension, are .sfArk files. sfArk is a custom compression system, but fortunately these too can be used on GNU / Linux. Here’s how.

  1. Install the dependencies (this command is for Debian / Ubuntu based systems):
    sudo apt-get install git zlibc
  2. Clone the sfArkLib repository:
    cd ~
    git clone https://github.com/raboof/sfArkLib.github
    cd sfArklib
  3. Compile and install sfArkLib by following the github instructions
  4. Clone the repository of the sfArkXTm command line utility:
    git clone https://github.com/raboof/sfArkXTm
  5. Compile sfArkXTm:
    cd sfArkXTm
    make

    Note: the sfArk command line utility for extracting sfArk files is only installed in directory that you compiled it in. Unless you move the binary to a system directory, or create a synlink to it, you will always have to specify the path to the binary when you use the utility.
  6. Convert your .sfArk file to a standard .sf2 file:
    cd /path/to/your/.sfArk-file
    ~/sfArkXTm/sfArkXTm yourSfarkFilename.sfArk yourSfarkFilename.sf2

That’s it. Good luck!