Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37433674
en ru br
Репозитории ALT
S:1.54c-alt1_1jpp11
www.altlinux.org/Changes

Группа :: Engineering
Пакет: imagej

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: imagej-1.53r-unix-script.patch
Скачать


diff -Naur old/imagej.sh new/imagej.sh
--- old/imagej.sh	2022-05-31 09:41:01.115425825 -0400
+++ new/imagej.sh	2022-05-31 11:03:48.189864410 -0400
@@ -9,6 +9,9 @@
 # Last modified date: $Date: 2008-09-17 10:31:27 +0100 (Wed, 17 Sep 2008) $
 # $Revision: 51 $
 #
+# This version of the script was further modified by Fabien Georget for Fedora,
+# 2010-10-30, and then by Benjamin Beasley for Fedora, 2022-05-30.
+#
 # INSTALLATION INSTRUCTIONS
 #
 ### WARNING ###########################################################
@@ -29,27 +32,21 @@
 ############ SITE SPECIFIC VARIABLES #########################
 # Trailing / is not required for path variables
 # IMAGEJ PATH - production installation
-ij_path='/local/ImageJ'
+ij_path='@JAVADIR@'
 # Path to ImageJ development installation
-ij_path_dev='/home/jjackson/ImageJ'
+# ij_path_dev='/home/jjackson/ImageJ'
+# Path to installed data files
+ij_data_path='@PKGDATADIR@'
+# User directory
+ij_user_path="${HOME}/.imagej"
 # JAVA PATH
-# assumes executable is ${java_home}/bin/java
-# set java_home variables ='' to use JAVA_HOME environment variable
-if [[ -d /usr/java/jdk1.5 ]] ; then
-	java_home='/usr/java/jdk1.5'
-else
-	# Optionally specify java path for all available OS / architecture combinations
-	java_home_Linux="${ij_path}/jre"
-	java_home_Linux_x86_64="${ij_path}/jre64"
-	java_home_SunOS="${ij_path}/jre64"
-	# 
-fi
-ijadmin=''
+JAVA_HOME=$(dirname $(dirname $(readlink /etc/alternatives/java)))
+ijadmin='https://bugzilla.redhat.com/enter_bug.cgi?format=guided&product=Fedora'
 # DOCUMENTATION URL
 doc_url='http://rsb.info.nih.gov/ij/'
 
 # TEMP FOLDER
-ij_tmp='/tmp/imagej'
+ij_tmp="${HOME}/.imagej/tmp"
 # LOG FILE
 #ij_log="${ij_tmp}/log.txt"
 # default behaviour when an ImageJ window is already open
@@ -84,44 +81,57 @@
 declare -i max_mem
 declare -i free_mem
 
-java_home="${java_home:-$JAVA_HOME}"
-
-if [[ "$OS" == 'SunOS' ]] ; then
-    java_arch='-d64'
-	JAVA_HOME="${java_home_SunOS:-$java_home}"	
-	max_mem=`vmstat | awk 'BEGIN{maxMem='$max_64bit'} NR == 3 {fmem=int($5 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
-	free_mem="max_mem"
-	mem=${free_mem}/2
+if [[ "$processor" == 'x86_64' ]] ; then
+java_arch='-d64'
+max_mem=`free | awk -v maxMem=$max_64bit 'NR == 2 {fmem=int($2 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
+	free_mem=`free | awk -v maxMem=$max_64bit 'NR == 3 {fmem=int($4 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
+	mem=${free_mem}/3*2
 	if (( $mem > $default_mem || $mem < $min_mem )) ; then mem=$default_mem ; fi
-elif [[ "$OS" == 'Linux' ]] ; then
-	if [[ "$processor" == 'x86_64' ]] ; then
-    	java_arch='-d64'
-        JAVA_HOME="${java_home_Linux_x86_64:-$java_home}"
-    	max_mem=`free | awk -v maxMem=$max_64bit 'NR == 2 {fmem=int($2 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
-		free_mem=`free | awk -v maxMem=$max_64bit 'NR == 3 {fmem=int($4 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
-		mem=${free_mem}/3*2
-		if (( $mem > $default_mem || $mem < $min_mem )) ; then mem=$default_mem ; fi
-	else
-		java_arch='-d32'
-    	JAVA_HOME="${java_home_Linux:-$java_home}"
-    	max_mem=`free | awk -v maxMem=$max_32bit 'NR == 2 {fmem=int($2 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
-		free_mem=`free | awk -v maxMem=$max_32bit 'NR == 3 {fmem=int($4 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
-		mem=${free_mem}/3*2
-		if (( $mem > $default_mem || $mem < $min_mem )) ; then mem=$default_mem ; fi	
-	fi
+else
+	java_arch='-d32'
+max_mem=`free | awk -v maxMem=$max_32bit 'NR == 2 {fmem=int($2 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
+	free_mem=`free | awk -v maxMem=$max_32bit 'NR == 3 {fmem=int($4 / 1024); if (fmem < maxMem) {print fmem} else {print maxMem}}'`
+	mem=${free_mem}/3*2
+	if (( $mem > $default_mem || $mem < $min_mem )) ; then mem=$default_mem ; fi	
 fi
 
 
-# if tools.jar is not in ${ij_path}/jre/lib/ext/ edit the 'tools=' line 
-# to point to tools.jar. The -compile switch will load tools.jar into the 
-# classpath and enable plugins to be compiled in imagej
+# Create plugins, macros, luts dirs
+mkdir -p $ij_user_path/plugins
+mkdir -p $ij_user_path/macros
+mkdir -p $ij_user_path/luts
 
-if [[ -f "${ij_path}/tools.jar" ]] ; then
-    tools="${ij_path}/tools.jar"
-else
-    tools=''
+if [[ ! -d "$ij_tmp" ]] ; then
+	mkdir -p "$ij_tmp"
 fi
 
+# Make symbolic links from shared plugins, macros and luts 
+for x in plugins macros luts
+do
+	# Add new symlinks
+	find "${ij_data_path}/${x}" -mindepth 1 -maxdepth 1 |
+		while read -r p
+		do
+			if [[ ! -e "${ij_user_path}/${x}/$(basename "${p}")" ]]
+			then
+				ln -vs "${p}" "${ij_user_path}/${x}/"
+			fi
+		done
+	# Clean up broken symlinks into the shared directory
+	find "${ij_user_path}/${x}" -mindepth 1 -maxdepth 1 -type l -printf '%p %l\n' |
+		while read -r p l
+		do
+			if [[ ! -e "${p}" ]] && \
+				[[ "$(dirname "${l}")" = "${ij_data_path}/${x}" ]]
+			then
+				rm -vf "${p}"
+			fi
+		done
+done
+
+# enable plugins to be compiled with imageJ
+tools="${JAVA_HOME}/../lib/tools.jar"
+
 # End Site specific variables ---------------------------------------------------------
 
 # other variables 
@@ -320,7 +330,7 @@
 
 # Resolving ij.jar path.  If ij.jar is a symbolic link to ij_<version>.jar
 # this allows updating ij.jar without crashing running sessions
-ij_jar_path=$(derefln ${ij_path}/ij.jar)    
+ij_jar_path="$(derefln "${ij_path}/imagej.jar")"
                                          
 for mod_jar in ${ij_path}/lib/*jar  ; do
     modules="${modules:-}${modules+:}$mod_jar"
@@ -470,9 +480,9 @@
 fi
 
 if (( $verbosity > 0 )) ; then
-    echo ${JAVA_HOME}/bin/java ${java_arch} -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_path} -port${count} ${images} ${macrocmd} ${macroargs}
+    echo ${JAVA_HOME}/bin/java -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_user_path} -port${count} ${images} ${macrocmd} ${macroargs}
 fi
 
 cd "$dir"
-eval "${JAVA_HOME}/bin/java ${java_arch} -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_path} -port${count} ${images} ${macrocmd} ${macroargs} "
+eval "${JAVA_HOME}/bin/java -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_user_path} -port${count} ${images} ${macrocmd} ${macroargs} "
 exit 0
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin