Skip to content

Commit 52b53bf

Browse files
committed
About this was updated
1 parent c0793da commit 52b53bf

File tree

9 files changed

+33
-123
lines changed

9 files changed

+33
-123
lines changed

Diff for: _java/JRubyArt_propane.md

+10-9
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@ Prior to jdk9 there were no specific recommendations, linux user probably used v
99

1010
## Stock OpenJDK on linux
1111

12-
Currently, doesn't work with OpenGL (missing linker?).
12+
May not work with OpenGL (missing linker?). Diagnostic error message:-
1313

14-
## AdoptOpenJDK
14+
```bash
15+
ld.so: dl-lookup.c: 111: check_match: Assertion `version->filename == NULL || ! _dl_name_match_p (version->filename, map)'
16+
17+
```
18+
19+
## AdoptOpenJDK (Recommended version 12+)
1520
1621
The development version of vanilla processing is using this version and I think it is a good choice, however to confuse matters it comes in several flavours. Vanilla processing is using the variant with a `hotspot` jvm, which is a good starting point. The ruby-processing group will be pleased to hear about anyone experimenting with the `OpenJ9` jvm.
1722
@@ -27,12 +32,8 @@ The development version of vanilla processing is using this version and I think
2732
2833
[Windows 64](https://adoptopenjdk.net/installation.html#x64_win-jdk)
2934
30-
### Azul OpenJDK
31-
32-
This is just another possibility but untested with ruby-processing projects.
33-
34-
[Link](https://www.azul.com/get-openjdk-support/)
35-
35+
### OpenJ9 jdk12+
3636
37+
Is an excellent alternative (jdk14 version has been tested on linux)
3738
38-
The illegal reflective access warnings warnings re-jogl can be suppressed, but will disappear with jogl-2.4.0.
39+
Use the latest versions of PiCrate, propane and JRubyArt to avoid reflective access warnings (you may need to define JAVA_HOME to get rid off the JRuby warnings).

Diff for: _java/raspberry.md

+2-51
Original file line numberDiff line numberDiff line change
@@ -15,56 +15,7 @@ sudo apt-get install openjdk-8-jdk
1515

1616
## Raspbian Buster Release
1717

18-
As of writing java does not come pre-installed with Buster, we strongly recommend that you install stock OpenJDK8 distribution.
18+
The latest version of PiCrate works well with stock java install (jdk11) on Raspbian Buster.
1919

20-
```bash
21-
sudo apt-get install openjdk-8-jdk
22-
```
23-
24-
You should avoid installing the default openjdk-11-jdk, since it probably wont perform as well, and lead to complications (lots of warning messages etc). If you still want to use openjdk11, it is recommended that you install the [jruby-launcher][jruby] gem.
25-
26-
## Oracle jdk8 for Arm
27-
28-
Is still available for personal use, but it is a bit of hassle to install:-
29-
30-
1. [download]
31-
2. Untar to say `/opt` folder
32-
33-
```bash
34-
cd /opt
35-
sudo tar xzvf ~/Downloads/*.tar.gz
36-
```
37-
38-
3. Install and configure using `update-alternatives`
39-
40-
```bash
41-
sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_231/jre/bin/jar 100
42-
sudo update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_231/bin/javac 100
43-
sudo update-alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_231/bin/jar 100
44-
```
45-
46-
configure
47-
48-
```bash
49-
sudo update-alternatives --config java
50-
sudo update-alternatives --config javac
51-
sudo update-alternatives --config jar
52-
```
53-
54-
edit `~/.profile`
55-
56-
```bash
57-
export JAVA_HOME=/opt/jdk1.8.0_231
58-
```
59-
60-
install jruby-launcher gem
61-
62-
```bash
63-
sudo jgem install jruby-launcher
64-
```
65-
66-
`Building native extensions. This could take a while... Successfully installed jruby-launcher-1.1.10-java 1 gem installed`
67-
68-
[jruby]:{{ site.github.url }}/jruby/raspberry
6920

70-
[download]: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
21+
You will need to define JAVA_HOME for jdk11+ to avoid reflective access warnings with JRuby.

Diff for: _jruby/JRubyArt.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ permalink: /jruby/JRubyArt/
66

77
# Recommended JRuby Install For JRubyArt
88

9-
The preferred JRubyArt setup requires that you do a system install of JRuby. You should install java before attempting to install JRuby.
9+
The preferred JRubyArt setup requires that you do a system install of JRuby. You should install java before attempting to install JRuby. Install at least version 9.2.11.1.
1010

1111
# Alternative Setup For JRubyArt
1212

Diff for: _jruby/propane.md

+1-33
Original file line numberDiff line numberDiff line change
@@ -4,36 +4,4 @@ title: Installing JRuby for propane
44
permalink: /jruby/propane/
55
---
66

7-
An installed version of JRuby is an absolute pre-requisite for installing propane, but you should [install java][java] first.
8-
9-
### Installing jruby-launcher
10-
11-
It is recommended that you install the jruby-launcher (for optimised performance and suppression of illegal reflective access by jruby warning).
12-
13-
You should set the `JAVA_HOME` environmental variable before installing gem, and use JRuby version you want to use with propane (preferably latest available).
14-
15-
## Debian linux
16-
17-
First set the `JAVA_HOME` environmental variable, you can do this by editing the `~/.profile` file:-
18-
19-
```bash
20-
echo "export JAVA_HOME=/opt/jdk13 >> ~/.profile" # wherever
21-
```
22-
then
23-
```bash
24-
source ~/.profile # to use the edited ~/.profile in current shell
25-
```
26-
27-
## Other linux
28-
29-
First set the `JAVA_HOME` environmental variable, you can do this by editing the `~/.bashrc` file:-
30-
31-
```bash
32-
echo "export JAVA_HOME=/opt/jdk13 >> ~/.bashrc" # wherever
33-
```
34-
then
35-
```bash
36-
source ~/.bashrc # to use the edited ~/.bashrc in current shell
37-
```
38-
39-
[java]:{{ site.github.url }}/java/JRubyArt_propane
7+
An installed version of JRuby is an absolute pre-requisite for installing propane, but you should [install java][java] first. Requirements as JRubyArt, without JRuby-Complete option.

Diff for: _jruby/raspberry.md

+6-18
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@ permalink: /jruby/raspberry
88

99
## Download
1010

11-
Download the latest JRuby release [here][download]. You could use `wget` (substituting latest version for for `9.2.11.0`):-
11+
Download the latest JRuby release [here][download]. You could use `wget` (substituting latest version for for `9.2.11.1`):-
1212

13-
`wget https://repo1.maven.org/maven2/org/jruby/jruby-dist/9.2.11.0/jruby-dist-9.2.11.0-bin.tar.gz`
13+
`wget https://repo1.maven.org/maven2/org/jruby/jruby-dist/9.2.11.1/jruby-dist-9.2.11.1-bin.tar.gz`
1414

1515
## Install
1616

1717
```bash
1818
cd /opt
19-
sudo tar xzvf ~/jruby-dist-9.2.11.0-bin.tar.gz # or ~/Downloads/...
20-
sudo update-alternatives --install /usr/bin/jruby jruby /opt/jruby-9.2.11.0/bin/jruby 100
21-
sudo update-alternatives --install /usr/bin/jgem jgem /opt/jruby-9.2.11.0/bin/jgem 100
22-
sudo update-alternatives --install /usr/bin/jirb jirb /opt/jruby-9.2.11.0/bin/jirb 100
19+
sudo tar xzvf ~/jruby-dist-9.2.11.1-bin.tar.gz # or ~/Downloads/...
20+
sudo update-alternatives --install /usr/bin/jruby jruby /opt/jruby-9.2.11.1/bin/jruby 100
21+
sudo update-alternatives --install /usr/bin/jgem jgem /opt/jruby-9.2.11.1/bin/jgem 100
22+
sudo update-alternatives --install /usr/bin/jirb jirb /opt/jruby-9.2.11.1/bin/jirb 100
2323
```
2424

2525
## Update
@@ -57,16 +57,4 @@ echo "export PATH=\"\${PATH}:\${GEM_PATH}/bin\"" >> ~/.profile
5757

5858
You need to do this to use gem executables.
5959

60-
## Installing/Updating jruby-launcher gem
61-
62-
First set the `JAVA_HOME` environmental variable, you can do this by editing the `~/.profile` file:-
63-
64-
```bash
65-
echo "export JAVA_HOME=/usr/lib/jvm/java-8-openjdk >> ~/.profile"
66-
source ~/.profile # to use the edited ~/.profile in current shell
67-
sudo jgem install jruby-launcher # NB: you do need sudo access here
68-
```
69-
70-
Above assumes you are using `java-8-openjdk` on Buster, adjust for your setup. We do not currently recommend using `java-11-openjdk`, but if you are there is even more reason to install the `jruby-launcher` gem as it suppresses illegal-reflective access warning from `JRuby` (but not from the jogl jars)
71-
7260
[download]: https://www.jruby.org/download

Diff for: _projects/jruby_art.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ keywords: 'propane, JRubyArt'
88

99
### Java
1010

11-
Unlike vanilla processing, we do not distribute a java environment with our projects. It is quite possible that Oracle jdk8 will work best with JRubyArt 1.7.0 and below, and Oracle jdk12 will work best with JRubyArt-2.2.0+ but they have not been tested. It seem that not all OpenJDK distributions are equal, if you are lucky the one installed on your system will work for you (jdk8 for JRubyArt-1.7.0 and jdk11+ for JRubyArt-2.2.0+). If you have linker problems with opengl sketches we strongly recommend you use [AdoptOpenJDK][adopt] binaries.
11+
We strongly recommend you use [AdoptOpenJDK][adopt] binaries.
1212

1313
### JRuby
1414

@@ -88,7 +88,7 @@ end
8888

8989
### class_sketch.rb
9090

91-
An explicitly class wrapped sketch can actually be run directly with `jruby`, but you should prefer [propane][propane] for that. Another reason to favour [propane][propane] is if the `glsl` sketch worked before processing-3.3.7 and hasn't worked since (PGraphicsOpenGL.java and PShapeOpenGL.java were reverted to earlier versions of in propane).
91+
An explicitly class wrapped sketch can actually be run directly with `jruby`, but you should prefer [propane][propane] for that.
9292

9393
```ruby
9494
# frozen_string_literal: false

Diff for: _projects/projects.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@ keywords: 'projects, propane, JRubyArt, toxicgem, atom-k9, language-jruby-art, p
66

77
# JRubyArt
88

9-
The natural successor to ruby-processing, equivalent processing-4.0 and jruby-9.2.11.0, since version 2.0 does not require vanilla processing install. Executable `k9`. Can work without jruby install (using jruby-complete.jar). Features a --watch (-w) mode, where sketch will reload on saved changes. Supports `bare` sketches (like vanilla processing)
9+
The natural successor to ruby-processing, equivalent processing-4.0 and jruby-9.2.11.1, since version 2.0 does not require vanilla processing install. Executable `k9`. Can work without jruby install (using jruby-complete.jar). Features a --watch (-w) mode, where sketch will reload on saved changes. Supports `bare` sketches (like vanilla processing)
1010

1111
# propane
1212

13-
An alternative ruby-processing implementation, for processing-3.3.7+ and jruby-9.2.7.0, does not require vanilla processing install, does require jruby install. Executable `jruby`. Should be be easier to convert into an exportable app, no reliance on vanilla processing install. Only supports class wrapped sketches.
13+
An alternative ruby-processing implementation, for processing-4.0+ and jruby-9.2.11.1+, does not require vanilla processing install, does require jruby install. Executable `jruby`. Should be be easier to convert into an exportable app, no reliance on vanilla processing install. Only supports class wrapped sketches.
1414

1515
# PiCrate
1616

17-
An experimental ruby-processing implementation, for processing-3.3.7 and jruby-9.2.7.0, targeting linux and the raspberrypi. Executable `jruby`. Should be be easier to convert into an exportable app, no reliance on vanilla processing install. Only supports class wrapped sketches.
17+
Similar to propane but tuned for Buster distro on RaspberryPI.
1818

1919
# pbox2d
2020

Diff for: _projects/propane.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ keywords: propane, propane
88

99
### Java ###
1010

11-
Unlike vanilla processing, we do not distribute a java environment with our projects. It is quite possible that Oracle jdk8 will work best with propane 2.9.1 and below, and Oracle jdk12 will work best with propane-3.4.0+ but they have not been tested. It seem that not all OpenJDK distributions are equal, if you are lucky the one installed on your system will work for you (jdk8 for propane-2.9.1 and jdk11+ for propane-3.4.0). If you have linker problems with opengl sketches we recommend you use [AdoptOpenJDK][adopt] binaries.
11+
We recommend you use [AdoptOpenJDK][adopt] binaries.
1212

1313
### JRuby ###
1414

Diff for: about.md

+7-5
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,21 @@ permalink: /about/
88

99
The ruby-processing group exists to collect together projects that support creating and running processing sketches in ruby. It is also designed to hide the inevitably high [bus factor][bus] of what is an essentially **one man band**, but I am trying hard to make it otherwise (including evolving the code). You could play your part...
1010

11-
There are three main projects [JRubyArt][jruby_art], [PiCrate] and [propane], [JRubyArt][jruby_art] is the closest to the original ruby-processing and provides a ruby implementation that approximates to the latest [vanilla processing][processing] (but can be configured to not require a jruby install).
11+
There are three main projects [JRubyArt][jruby_art], [PiCrate][picrate] and [propane][propane]:-
1212

13-
[Propane] is a configuration free, complete version of ruby-processing (_does not require installed vanilla processing_) that depends on an installed jruby (_is slightly more experimental however since a modified PApplet is required with jdk9+ propane may take over in future_). Since propane-3.2.0, propane is compiled with jdk11, and thus jdk11 is a requirement.
13+
[JRubyArt][jruby_art] is the closest to the original [ruby-processing][ruby-processing] and provides a ruby implementation that approximates to the latest [vanilla processing][processing] (but can be configured to not require a jruby install). However unlike [ruby-processing][ruby-processing] it does not require a vanilla processing install.
1414

15-
[PiCrate] is a standalone version targetting the [RaspberryPI][rpi], but it can be developed and run 64 bit linux.
15+
[Propane][propane] is a configuration free, complete version of ruby-processing (_does not require installed vanilla processing_) that depends on an installed jruby (_is slightly more experimental however since a modified PApplet is required with jdk9+ propane may take over in future_). Since propane-3.2.0, propane is compiled with jdk11, and thus jdk11 is a requirement.
16+
17+
[PiCrate][picrate] is a standalone version targetting the [RaspberryPI][rpi], but it can be developed and run 64 bit linux.
1618

1719
Other projects include the pbox2d gem (a gem wrapper around [jbox2d]), toxiclibs gem (a gem wrapper around [toxiclibs]) and geomerative gem (a gem wrapper around [geomerative]).
1820

1921
Not forgetting the atom editor projects [atom-k9] and [language-jruby-art][language]
2022

21-
## Martin Prout
23+
## About Me
2224

23-
First degree was BSc hons Biochemistry from University of Surrey, I went on to specialize in xenobiotic metabolism (at first drugs, then industrial chemicals and pesticides). I later studied for a computer science degree with the Open University (BSc hons 2:1 but completed insufficient specific modules to be a named degree), course included some smalltalk but mainly java. Subsequently I dabbled a bit with C++, perl python, and even lisp, but got hooked on ruby, particulary ruby-processing. OS experience Windows-98 up to Windows-XP and mainly linux since 2004 (tried gentoo, fedora, even pardus) now using exclusively Archlinux and Mint (Debian). Since November 2012 I have been sole developer/maintainer of [ruby-processing] (_did update for processing-2.0_), and I have since developed JRubyArt and propane (_for processing-3.0+_) and ensured that jruby-9.2.0.0+ (with support from jruby group) continues to work with ruby-processing, and its descendants. More recently got RaspberryPI 3B+ and RaspberryPI 4 to let me check my PiCrate gem (processing in ruby on the PI).
25+
My first degree was BSc hons Biochemistry from University of Surrey, I went on to specialize in xenobiotic metabolism (at first drugs, then industrial chemicals and pesticides). I later studied for a computer science degree with the Open University (BSc hons 2:1 but completed insufficient specific modules to be a named degree), course included some smalltalk but mainly java. Subsequently I dabbled a bit with C++, perl python, and even lisp, but got hooked on ruby, particulary ruby-processing. OS experience Windows-98 up to Windows-XP and mainly linux since 2004 (tried gentoo, fedora, even pardus) now using exclusively Archlinux and Mint (Debian). Since November 2012 I have been sole developer/maintainer of [ruby-processing] (_did update for processing-2.0_), and I have since developed JRubyArt and propane (_for processing-3.0+_) and ensured that jruby-9.2.0.0+ (with support from jruby group) continues to work with ruby-processing, and its descendants. More recently got RaspberryPI 3B+ and RaspberryPI 4 to let me check my PiCrate gem (processing in ruby on the PI).
2426

2527
Personally I can't understand why processing group spawned p5*js (javascript is just horrible), but I learned sufficient to develop atom packages [atom-k9] and [language-jruby-art][language] for JRubyArt / propane.
2628

0 commit comments

Comments
 (0)