2.1 LilyDev

There is a disk image of a ‘remix’ of Debian GNU/Linux available for download which includes all the necessary software and tools to compile both LilyPond and the documentation. Called the “Debian LilyPond Developer Remix”, but known simply as “LilyDev” for short. Although it is not possible to compile LilyPond on Windows and extremely difficult on MacOS, LilyDev can be installed and run inside a ‘virtual machine’ on any of these operating systems without disturbing your main operating system. The LilyDev disk image can also be burnt to a DVD or copied to a USB stick and installed like any other GNU/Linux distribution.

Most virtualization software can be used but we recommend VirtualBox as it is available for all major operating systems and is easy to install & configure.

If you are not familiar with GNU/Linux, it may be beneficial to read a couple of “introduction to Linux” web pages.

For those interested, the LilyDev remix is currently based on a 32bit version of Debian 7 (Wheezy). The image is generated using Debian live-build and the configuration files are hosted on GitHub:

 
https://github.com/fedelibre/LilyDev

Note: Apart from installing and configuring LilyDev in VirtualBox, the rest of the chapter assumes that you are comfortable using the command-line. While this chapter is intended for users who may have never created a patch or compiled software before, experienced developers (who prefer to use their own development environment) may still find it instructive to skim over this section.


Where to get LilyDev

Download the LilyDev image file (approximately 850 MB) from here:

 
http://www.et.byu.edu/~sorensen/lilydev-3.0.iso

Some advanced users might want this file too:

 
http://www.et.byu.edu/~sorensen/lilydev-3.0.iso.md5

(If you don’t recognize what this file is, then you don’t need it.)


Installing LilyDev in VirtualBox

This section discusses how to install and use LilyDev with VirtualBox.

Note: If you already know how to install a virtual machine using a disc image inside VirtualBox (or your own virtualization software) then you can skip this section and go straight to lily-git.

  1. Download Virtualbox from here:
    http://www.virtualbox.org/wiki/Downloads
    

    Note: In virtualization terminology, the operating system where Virtualbox is installed is known as the host. LilyDev will be installed ‘inside’ Virtualbox as a guest.

  2. Start the VirtualBox software and click ‘New’ to create a new “virtual machine”.

    The ‘New Virtual Machine Wizard’ will walk you through setting up your guest virtual machine. Choose an appropriate name for your LilyDev installation and select the ‘Linux’ operating system. When selecting the ‘version’ choose ‘Debian (32 bit)’ (don’t use the ‘64 bit’ option). If you do not have that specific option choose ‘Linux 2.6’ (again do not choose any option that has 64 bit next to it).

  3. Select the amount of RAM you will allow the LilyDev guest to use from your host operating system when it is running. If possible, use at least 700 MB of RAM; the more RAM you can spare from your host the better, although LilyDev will currently use no more than 4 GB (4096 MB) even if you are able to assign more.
  4. For your ‘Virtual Hard Disk’, leave the ‘Create new hard disk’ option checked, use the default ‘VDI’ and “Dynamically allocated” options for the virtual hard drive. A complete compile of everything (code, docs, regression tests) can reach 10 GB so size your virtual disk and its location accordingly.
  5. Verify the summary details and click ‘Create’, when you are satisfied. Your new guest will be displayed in the Virtualbox window.
    Note: The image contains a 686-pae kernel, so you must enable PAE in the virtual machine settings: click on System → Processor and select ‘Extended features: Enable PAE/NX’.
  6. Click the ‘Start’ button and the ‘First Run Wizard’ will prompt you for the installation media. Click the browse icon and locate the LilyDev disk image and click through the wizard to start the installation process.
  7. When the LilyDev disk image boots, you should choose the ‘Install’ or the ‘Graphical install’ menu item to begin the installation of LilyDev on your virtual hard disk. The installer will walk you through the complete installation process.

    Note: If the root password is left blank when prompted, the configured user account will be be given root privileges automatically. This means that only one password needs to be remembered.

  8. At the “Partition disks” stage, do not be afraid to select “Guided - use entire disk”, since this refers to your virtual disk, not your machine’s actual hard disk.
  9. Click through the rest of the wizard, filling in any appropriate details when asked and wait for the install to complete. This will take about 10 minutes in a recent computer.
  10. When the installation is completed, just click on Continue (you don’t have to remove any media since you installed from a file on your host filesystem). The installer will reboot the virtual machine: LilyDev is now installed and running!

Known issues and warnings

Not all hardware is supported in all virtualization tools. In particular, some contributors have reported problems with USB network adapters. If you have problems with network connection (for example Internet connection in the host system is lost when you launch virtual system), try installing and running LilyDev with your computer’s built-in network adapter used to connect to the network. Refer to the help documentation that comes with your virtualization software.


Configuring LilyDev in VirtualBox

VirtualBox has extra ‘guest additions’ which although are not necessary to use LilyDev or compile Lilypond, do provide some additional features to your Virtual Machine to make it easier to work with. Such as being able to dynamically resize the LilyDev window, allow seamless interaction with your mouse pointer on both the host and guest and let you copy/paste between your host and guest if needed.

  1. Select the ‘Devices’ menu from the virtual machine window and choose ‘Install Guest Additions...’. This will automount a CD which will prompt you to autorun it. Click OK and follow the instructions. It is recommended to reboot the guest when the installation is complete.

    Other virtualization software will also have their own ‘guest’ additions, follow the normal procedures for your virtualization software with LilyDev as the client.

  2. Restart LilyDev to complete the installation of the guest additions.

    Advanced note: If you do any kernel upgrades, you may need to reinstall the additional software. Just follow the step above again and reboot when the reinstallation is complete.

Other items that may be helpful:


LilyPond — Contributor’s Guide v2.19.16 (development-branch).