about summary refs log tree commit diff
path: root/pkgs/development/pharo
diff options
context:
space:
mode:
authorDamien Cassou <damien.cassou@gmail.com>2014-09-02 18:34:53 +0200
committerMateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk>2014-09-30 08:01:13 +0100
commitdaffd3c90cc499af9daffbfff1c36ae38e1ad2c5 (patch)
tree700344a3ceac80a308338d537dca2bc1c31ac024 /pkgs/development/pharo
parent3a95f9cafc8baa1f57837109b34c2f6e1d78f162 (diff)
downloadnixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.tar
nixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.tar.gz
nixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.tar.bz2
nixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.tar.lz
nixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.tar.xz
nixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.tar.zst
nixlib-daffd3c90cc499af9daffbfff1c36ae38e1ad2c5.zip
New package: pharo launcher
http://pharo.org

Closes #4315
Diffstat (limited to 'pkgs/development/pharo')
-rw-r--r--pkgs/development/pharo/launcher/default.nix71
1 files changed, 71 insertions, 0 deletions
diff --git a/pkgs/development/pharo/launcher/default.nix b/pkgs/development/pharo/launcher/default.nix
new file mode 100644
index 000000000000..928a5d33f8f4
--- /dev/null
+++ b/pkgs/development/pharo/launcher/default.nix
@@ -0,0 +1,71 @@
+{ stdenv, fetchurl, bash, pharo-vm, unzip, makeDesktopItem }:
+
+stdenv.mkDerivation rec {
+  version = "0.2.1-2014.09.29";
+  name = "pharo-launcher-${version}";
+  src = fetchurl {
+    url = "http://files.pharo.org/platform/launcher/blessed/PharoLauncher-user-${version}.zip";
+    md5 = "10945989c2b323c7f09a3b4e42ee7f2d";
+  };
+
+  executable-name = "pharo-launcher";
+
+  desktopItem = makeDesktopItem {
+    name = "Pharo";
+    exec = "${executable-name}";
+    icon = "pharo";
+    comment = "Launcher for Pharo distributions";
+    desktopName = "Pharo";
+    genericName = "Pharo";
+    categories = "Development;";
+  };
+
+  # because upstream tarball has no top-level directory.
+  sourceRoot = ".";
+
+  buildInputs = [ bash pharo-vm unzip ];
+
+  installPhase = ''
+    mkdir -p $prefix/share/pharo-launcher
+    mkdir -p $prefix/bin
+
+    mv PharoLauncher.image $prefix/share/pharo-launcher/pharo-launcher.image
+    mv PharoLauncher.changes $prefix/share/pharo-launcher/pharo-launcher.changes
+
+    mkdir -p $prefix/share/applications
+    cp "${desktopItem}/share/applications/"* $out/share/applications
+
+    cat > $prefix/bin/${executable-name} <<EOF
+    #!${bash}/bin/bash
+
+    exec ${pharo-vm}/bin/pharo-vm-x $prefix/share/pharo-launcher/pharo-launcher.image
+    EOF
+    chmod +x $prefix/bin/${executable-name}
+  '';
+
+  meta = {
+    description = "Launcher for Pharo distributions";
+    longDescription = ''
+
+      Pharo's goal is to deliver a clean, innovative, free open-source
+      Smalltalk-inspired environment. By providing a stable and small
+      core system, excellent dev tools, and maintained releases, Pharo
+      is an attractive platform to build and deploy mission critical
+      applications.
+
+      The Pharo Launcher is a cross-platform application that
+        - lets you manage your Pharo images (launch, rename, copy and delete);
+        - lets you download image templates (i.e., zip archives) from many
+          different sources (e.g., Jenkins, files.pharo.org);
+        - lets you create new images from any template.
+
+      The idea behind the Pharo Launcher is that you should be able to
+      access it very rapidly from your OS application launcher. As a
+      result, launching any image is never more than 3 clicks away.
+    '';
+    homepage = http://pharo.org;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ stdenv.lib.maintainers.DamienCassou ];
+    platforms = pharo-vm.meta.platforms;
+  };
+}
\ No newline at end of file