From 0b4c7d42a87b8fe3028de9ef7790e0564c316a08 Mon Sep 17 00:00:00 2001 From: Damien Cassou Date: Thu, 14 Jan 2016 11:33:59 +0100 Subject: pharo-vm: Refactor to introduce new VMs (close #12388) The Pharo community now has a Spur VM: this VM is the only one to open Pharo50 images. --- pkgs/development/pharo/vm/build-vm.nix | 102 ++++++++++++++++++++++++++++ pkgs/development/pharo/vm/default.nix | 120 ++++++--------------------------- 2 files changed, 122 insertions(+), 100 deletions(-) create mode 100644 pkgs/development/pharo/vm/build-vm.nix (limited to 'pkgs/development/pharo/vm') diff --git a/pkgs/development/pharo/vm/build-vm.nix b/pkgs/development/pharo/vm/build-vm.nix new file mode 100644 index 00000000000..b5fa7a97e13 --- /dev/null +++ b/pkgs/development/pharo/vm/build-vm.nix @@ -0,0 +1,102 @@ +{ stdenv, fetchurl, cmake, bash, unzip, glibc, openssl, gcc, mesa, freetype, xorg, alsaLib, cairo }: + +{ name, src, binary-basename, ... }: + +stdenv.mkDerivation rec { + + inherit name src binary-basename; + + sources10Zip = fetchurl { + url = http://files.pharo.org/sources/PharoV10.sources.zip; + sha256 = "0aijhr3w5w3jzmnpl61g6xkwyi2l1mxy0qbvr9k3whz8zlrsijh2"; + }; + + sources20Zip = fetchurl { + url = http://files.pharo.org/sources/PharoV20.sources.zip; + sha256 = "1xsc0p361pp8iha5zckppw29sbapd706wbvzvgjnkv2n6n1q5gj7"; + }; + + sources30Zip = fetchurl { + url = http://files.pharo.org/sources/PharoV30.sources.zip; + sha256 = "08d9a7gggwpwgrfbp7iv5896jgqz3vgjfrq19y3jw8k10pva98ak"; + }; + + sources40Zip = fetchurl { + url = http://files.pharo.org/sources/PharoV40.sources.zip; + sha256 = "1xq1721ql19hpgr8ir372h92q7g8zwd6k921b21dap4wf8djqnpd"; + }; + + # Building + preConfigure = '' + cd build/ + ''; + resources = ./resources; + installPhase = '' + echo Current directory $(pwd) + echo Creating prefix "$prefix" + mkdir -p "$prefix/lib/pharo-vm" + + cd ../../results + + mv vm-display-null vm-display-null.so + mv vm-display-X11 vm-display-X11.so + mv vm-sound-null vm-sound-null.so + mv vm-sound-ALSA vm-sound-ALSA.so + mv pharo pharo-vm + + cp * "$prefix/lib/pharo-vm" + + cp -R "$resources/"* "$prefix/" + + mkdir $prefix/bin + + chmod u+w $prefix/bin + cat > $prefix/bin/${binary-basename}-x < $prefix/bin/${binary-basename}-nox < $prefix/bin/pharo-vm-x < $prefix/bin/pharo-vm-nox <