at 18.03-beta 58 lines 1.9 kB view raw
1{ stdenv, file, makeDesktopItem, cog32, spur32, spur64 ? "none" }: 2 3stdenv.mkDerivation rec { 4 name = "pharo"; 5 src = ./.; 6 inherit cog32 spur32 spur64 file; 7 magic = ./magic; 8 desktopItem = makeDesktopItem { 9 inherit name; 10 desktopName = "Pharo VM"; 11 genericName = "Pharo Virtual Machine"; 12 exec = "pharo %F"; 13 icon = "pharo"; 14 terminal = "false"; 15 type="Application"; 16 startupNotify = "false"; 17 categories = "Development;"; 18 mimeType = "application/x-pharo-image"; 19 }; 20 buildPhase = '' 21 substituteAllInPlace ./pharo-vm.sh 22 ''; 23 installPhase = '' 24 mkdir -p $out/bin 25 cp pharo-vm.sh $out/bin/pharo 26 chmod +x $out/bin/pharo 27 ''; 28 meta = { 29 description = "Pharo virtual machine (multiple variants)"; 30 31 longDescription = '' 32 Pharo's goal is to deliver a clean, innovative, free open-source 33 Smalltalk-inspired environment. By providing a stable and small core 34 system, excellent dev tools, and maintained releases, Pharo is an 35 attractive platform to build and deploy mission critical applications. 36 37 This package provides a front-end for starting the virtual 38 machine. The command 'pharo-vm' automatically detects the type 39 of image and executes a suitable virtual machine: CogV3, Spur, 40 or Spur64. This makes it easy to open Pharo images because you 41 do not have to worry about which virtual machine variant is 42 required. 43 44 More about the Cog family of virtual machines: 45 http://www.mirandabanda.org/cogblog/about-cog/ 46 ''; 47 48 homepage = http://pharo.org; 49 license = stdenv.lib.licenses.mit; 50 maintainers = [ stdenv.lib.maintainers.lukego ]; 51 # Pharo VM sources are packaged separately for darwin (OS X) 52 platforms = with stdenv.lib; 53 intersectLists 54 platforms.mesaPlatforms 55 (subtractLists platforms.darwin platforms.unix); 56 }; 57} 58