Skip to content

Commit d738793

Browse files
committed
add install script
1 parent 273af17 commit d738793

1 file changed

Lines changed: 106 additions & 0 deletions

File tree

install.sh

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
#!/bin/bash
2+
3+
# Target OMERO server lib directory (modify as needed)
4+
OMERO_LIBS=${OMERO_LIBS:-/opt/omero/server/OMERO.server/lib/server}
5+
6+
# Versions
7+
zarrJavaVersion=0.1.1
8+
awsSdkVersion=2.34.6
9+
jacksonVersion=2.20.0
10+
reactiveStreamsVersion=1.0.4
11+
nettyVersion=4.1.108.Final
12+
13+
echo "Installing omero-zarr-pixel-buffer dependencies to: $OMERO_LIBS"
14+
15+
if [ ! -d "$OMERO_LIBS" ]; then
16+
echo "ERROR: Directory $OMERO_LIBS does not exist"
17+
exit 1
18+
fi
19+
20+
install_deps() {
21+
local DEST=$1
22+
23+
# Remove older installation
24+
echo "Removing potential older installation from $DEST..."
25+
rm -f $1/omero-zarr-pixel-buffer*.jar $1/caffeine*.jar $1/jzarr*.jar $1/s3fs*.jar $1/aws-java-*.jar $1/okhttp*.jar $1/okio*.jar
26+
27+
echo "Downloading dependencies to $DEST..."
28+
29+
# Core zarr dependencies
30+
wget -q -P "$DEST" https://repo.maven.apache.org/maven2/com/github/ben-manes/caffeine/caffeine/3.1.8/caffeine-3.1.8.jar
31+
wget -q -P "$DEST" https://repo.maven.apache.org/maven2/dev/zarr/zarr-java/${zarrJavaVersion}/zarr-java-${zarrJavaVersion}.jar
32+
wget -q -P "$DEST" https://repo1.maven.org/maven2/com/scalableminds/blosc-java/0.1-1.21.4/blosc-java-0.1-1.21.4.jar
33+
34+
# Jackson datatype
35+
wget -q -P "$DEST" https://repo1.maven.org/maven2/com/fasterxml/jackson/datatype/jackson-datatype-jdk8/${jacksonVersion}/jackson-datatype-jdk8-${jacksonVersion}.jar
36+
37+
# OkHttp and OkIO (updated versions)
38+
wget -q -P "$DEST" https://repo1.maven.org/maven2/com/squareup/okhttp3/okhttp/4.12.0/okhttp-4.12.0.jar
39+
wget -q -P "$DEST" https://repo1.maven.org/maven2/com/squareup/okio/okio-jvm/3.6.0/okio-jvm-3.6.0.jar
40+
41+
# Kotlin stdlib (required by okhttp)
42+
wget -q -P "$DEST" https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-stdlib/1.9.10/kotlin-stdlib-1.9.10.jar
43+
wget -q -P "$DEST" https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-common/1.9.10/kotlin-stdlib-common-1.9.10.jar
44+
wget -q -P "$DEST" https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk7/1.9.10/kotlin-stdlib-jdk7-1.9.10.jar
45+
wget -q -P "$DEST" https://repo1.maven.org/maven2/org/jetbrains/kotlin/kotlin-stdlib-jdk8/1.9.10/kotlin-stdlib-jdk8-1.9.10.jar
46+
47+
# AWS SDK v2 S3 and core modules
48+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/s3/${awsSdkVersion}/s3-${awsSdkVersion}.jar
49+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/auth/${awsSdkVersion}/auth-${awsSdkVersion}.jar
50+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/aws-core/${awsSdkVersion}/aws-core-${awsSdkVersion}.jar
51+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/sdk-core/${awsSdkVersion}/sdk-core-${awsSdkVersion}.jar
52+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/annotations/${awsSdkVersion}/annotations-${awsSdkVersion}.jar
53+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/regions/${awsSdkVersion}/regions-${awsSdkVersion}.jar
54+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/identity-spi/${awsSdkVersion}/identity-spi-${awsSdkVersion}.jar
55+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/utils/${awsSdkVersion}/utils-${awsSdkVersion}.jar
56+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/http-client-spi/${awsSdkVersion}/http-client-spi-${awsSdkVersion}.jar
57+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/retries/${awsSdkVersion}/retries-${awsSdkVersion}.jar
58+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/url-connection-client/${awsSdkVersion}/url-connection-client-${awsSdkVersion}.jar
59+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/apache-client/${awsSdkVersion}/apache-client-${awsSdkVersion}.jar
60+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/arns/${awsSdkVersion}/arns-${awsSdkVersion}.jar
61+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/aws-query-protocol/${awsSdkVersion}/aws-query-protocol-${awsSdkVersion}.jar
62+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/aws-xml-protocol/${awsSdkVersion}/aws-xml-protocol-${awsSdkVersion}.jar
63+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/checksums/${awsSdkVersion}/checksums-${awsSdkVersion}.jar
64+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/checksums-spi/${awsSdkVersion}/checksums-spi-${awsSdkVersion}.jar
65+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/crt-core/${awsSdkVersion}/crt-core-${awsSdkVersion}.jar
66+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/endpoints-spi/${awsSdkVersion}/endpoints-spi-${awsSdkVersion}.jar
67+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/http-auth/${awsSdkVersion}/http-auth-${awsSdkVersion}.jar
68+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/http-auth-aws/${awsSdkVersion}/http-auth-aws-${awsSdkVersion}.jar
69+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/http-auth-aws-eventstream/${awsSdkVersion}/http-auth-aws-eventstream-${awsSdkVersion}.jar
70+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/http-auth-spi/${awsSdkVersion}/http-auth-spi-${awsSdkVersion}.jar
71+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/json-utils/${awsSdkVersion}/json-utils-${awsSdkVersion}.jar
72+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/metrics-spi/${awsSdkVersion}/metrics-spi-${awsSdkVersion}.jar
73+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/netty-nio-client/${awsSdkVersion}/netty-nio-client-${awsSdkVersion}.jar
74+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/profiles/${awsSdkVersion}/profiles-${awsSdkVersion}.jar
75+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/protocol-core/${awsSdkVersion}/protocol-core-${awsSdkVersion}.jar
76+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/retries-spi/${awsSdkVersion}/retries-spi-${awsSdkVersion}.jar
77+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/third-party-jackson-core/${awsSdkVersion}/third-party-jackson-core-${awsSdkVersion}.jar
78+
wget -q -P "$DEST" https://repo1.maven.org/maven2/software/amazon/awssdk/utils-lite/${awsSdkVersion}/utils-lite-${awsSdkVersion}.jar
79+
80+
# Transitive AWS SDK dependencies
81+
wget -q -P "$DEST" https://repo1.maven.org/maven2/org/reactivestreams/reactive-streams/${reactiveStreamsVersion}/reactive-streams-${reactiveStreamsVersion}.jar
82+
83+
# Netty dependencies (required by netty-nio-client)
84+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-buffer/${nettyVersion}/netty-buffer-${nettyVersion}.jar
85+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-codec/${nettyVersion}/netty-codec-${nettyVersion}.jar
86+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-codec-http/${nettyVersion}/netty-codec-http-${nettyVersion}.jar
87+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-codec-http2/${nettyVersion}/netty-codec-http2-${nettyVersion}.jar
88+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-common/${nettyVersion}/netty-common-${nettyVersion}.jar
89+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-handler/${nettyVersion}/netty-handler-${nettyVersion}.jar
90+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-resolver/${nettyVersion}/netty-resolver-${nettyVersion}.jar
91+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-transport/${nettyVersion}/netty-transport-${nettyVersion}.jar
92+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-transport-classes-epoll/${nettyVersion}/netty-transport-classes-epoll-${nettyVersion}.jar
93+
wget -q -P "$DEST" https://repo1.maven.org/maven2/io/netty/netty-transport-native-unix-common/${nettyVersion}/netty-transport-native-unix-common-${nettyVersion}.jar
94+
95+
echo "Dependencies downloaded successfully."
96+
}
97+
98+
# Download dependencies
99+
install_deps "$OMERO_LIBS"
100+
101+
echo ""
102+
echo "Dependencies installed to: $OMERO_LIBS"
103+
echo ""
104+
echo "NOTE: You must manually copy the omero-zarr-pixel-buffer JAR to $OMERO_LIBS"
105+
echo ""
106+
echo "Then restart OMERO server."

0 commit comments

Comments
 (0)