[med-svn] r2517 - trunk/packages/imagej/trunk/debian
paolinux-guest at alioth.debian.org
paolinux-guest at alioth.debian.org
Mon Sep 22 13:18:08 UTC 2008
Author: paolinux-guest
Date: 2008-09-22 13:18:04 +0000 (Mon, 22 Sep 2008)
New Revision: 2517
Modified:
trunk/packages/imagej/trunk/debian/changelog
trunk/packages/imagej/trunk/debian/get-orig-source
trunk/packages/imagej/trunk/debian/imagej
trunk/packages/imagej/trunk/debian/imagej.desktop
trunk/packages/imagej/trunk/debian/rules
Log:
Modified: trunk/packages/imagej/trunk/debian/changelog
===================================================================
--- trunk/packages/imagej/trunk/debian/changelog 2008-09-21 15:05:24 UTC (rev 2516)
+++ trunk/packages/imagej/trunk/debian/changelog 2008-09-22 13:18:04 UTC (rev 2517)
@@ -1,4 +1,4 @@
-imagej (1.41c-1) UNRELEASED; urgency=low
+imagej (1.41l-1) UNRELEASED; urgency=low
[ Andreas Tille ]
* New upstream release
@@ -22,8 +22,12 @@
[ Charles Plessy ]
* Added a FreeDesktopt menu entry.
- -- Charles Plessy <plessy at debian.org> Sat, 17 May 2008 14:35:36 +0900
+ [ Paolo Ariano ]
+ * A lot of correction to the run script, thanks to Jonathan (closes: #496798).
+ * The socket-lock directory is now /tmp/imagej
+ -- Paolo Ariano <paolo.ariano at unito.it> Fri, 19 Sep 2008 13:04:23 +0100
+
imagej (1.40a-1) unstable; urgency=high
* New Upstream Release.
Modified: trunk/packages/imagej/trunk/debian/get-orig-source
===================================================================
--- trunk/packages/imagej/trunk/debian/get-orig-source 2008-09-21 15:05:24 UTC (rev 2516)
+++ trunk/packages/imagej/trunk/debian/get-orig-source 2008-09-22 13:18:04 UTC (rev 2517)
@@ -3,8 +3,8 @@
# thus it seems reasonable to remove some binary cruft
NAME=imagej
-DVERSION=1.41c
-UPSTREAMZIP=ij141c-src.zip
+DVERSION=1.41l
+UPSTREAMZIP=ij141l-src.zip
UPSTREAMDIR=source
mkdir -p ../tarballs
Modified: trunk/packages/imagej/trunk/debian/imagej
===================================================================
--- trunk/packages/imagej/trunk/debian/imagej 2008-09-21 15:05:24 UTC (rev 2516)
+++ trunk/packages/imagej/trunk/debian/imagej 2008-09-22 13:18:04 UTC (rev 2517)
@@ -4,7 +4,7 @@
# Copyright © 2008 Paolo Ariano
# Authors: Paolo Ariano (paolo dot ariano at unito dot it)
-# Last modified date: 04 March 2008
+# Last modified date: 19 Sept 2008
# This is a not so simple wrapper script used to run ImageJ in Unix but
# optimized for Debian GNU/Linux, this is a merge between my original script
@@ -23,13 +23,13 @@
set +u # don't give error for unset variables (matters for environment variables)
shopt -s extglob # allow extended pattern matching
-##################### DEFINE JAVA_HOME #####################
+##################### DEFINE JAVA_HOME .DEB #####################
if [ -z "$JAVA_HOME" ] ; then
JAVA_HOME=$(/usr/sbin/update-java-alternatives -l | head -1 | cut -d' ' -f 3)
fi
-##################### CREATE THE RIGHT ENVIRONMENT #####################
+##################### CREATE THE RIGHT ENVIRONMENT .DEB #####################
# ImageJ path
ij_path=/usr/share/java
@@ -37,14 +37,11 @@
#ImageJ user path
ij_user_path=$HOME/.imagej
-# report errors to this user
-ijadmin='paolo.ariano at unito.it'
-
# Documentation URL
doc_url='http://rsb.info.nih.gov/ij/'
# temp folder
-ij_tmp=$HOME/.imagej/tmp
+ij_tmp='/tmp/imagej'
# default behaviour when an ImageJ window is already open
newwindow='true'
@@ -56,12 +53,35 @@
# use macro functions: args=getArgument(); argArray=split(args, ':');
# to recover macro arguments
-declare -i mem
-declare -i default_mem=500
-declare -i min_mem=16
-declare -i max_mem
-declare -i free_mem
+# create plugins,macro,tmp dirs
+mkdir -p $ij_user_path/plugins
+mkdir -p $ij_user_path/macros
+mkdir -p $ij_user_path/luts
+# makes symbolik links from shared plugins, macros and luts
+
+ls /usr/share/imagej/plugins | while read p ; do
+ if [ ! -e "$ij_user_path/plugins/$p" ] ; then
+ ln -s /usr/share/imagej/plugins/$p $ij_user_path/plugins/$p
+ fi
+done
+
+ls /usr/share/imagej/macros | while read p; do
+ if [ ! -e "$ij_user_path/macros/$p" ] ; then
+ ln -s "/usr/share/imagej/macros/$p" "$ij_user_path/macros/$p"
+ fi
+done
+
+ls /usr/share/imagej/luts | while read p ; do
+ if [ ! -e "$ij_user_path/luts/$p" ] ; then
+ ln -s /usr/share/imagej/luts/$p $ij_user_path/luts/$p
+ fi
+done
+
+
+# report errors to this user
+# ijadmin='paolo.ariano at unito.it'
+
# other variables
dir=`pwd`
user=`whoami`
@@ -83,76 +103,59 @@
macrocmd=''
macroargs=''
-# max memory allocation is 1800MB on 32bit java and 4000 on 64bit java
-if [[ `uname` == 'SunOS' ]] ; then
- arch='-d64'
- java_path="${ij_path}/jre64/bin/java"
- max_mem=`vmstat | awk 'NR == 3 {fmem=int($5 / 1024); if (fmem < 4000) {print fmem} else {print 4000}}'`
+############ DEFAULT MEMORY SETTINGS #########################
+
+declare -i default_mem=768
+declare -i min_mem=32
+declare -i max_32bit=1800 # empirical
+declare -i max_64bit=17000000000 # conservative
+
+############ MEMORY ALLOCATION #########################
+
+OS=$(uname)
+processor=$(uname -m) # -p doesn't work on debian/ubuntu
+declare -i mem
+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*3
+ mem=${free_mem}/2
if (( $mem > $default_mem || $mem < $min_mem )) ; then mem=$default_mem ; fi
-elif [[ `uname` == 'Linux' ]] ; then
- if [[ `uname -m` == 'x86_64' ]] ; then
- arch='-d64'
- java_path="${ij_path}/jre64/bin/java"
- max_mem=`free | awk 'NR == 2 {fmem=int($2 / 1024); if (fmem < 4000) {print fmem} else {print 4000}}'`
- free_mem=`free | awk 'NR == 3 {fmem=int($4 / 1024); if (fmem < 4000) {print fmem} else {print 4000}}'`
+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
- arch='-d32'
- java_path="${ij_path}/jre/bin/java"
- free_mem=`free | awk 'NR == 2 {fmem=int($2 / 1024); if (fmem < 1800) {print fmem} else {print 1800}}'`
- free_mem=`free | awk 'NR == 3 {fmem=int($4 / 1024); if (fmem < 1800) {print fmem} else {print 1800}}'`
+ 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
fi
-# create plugins,macro,tmp dirs
-mkdir -p $ij_user_path/plugins
-mkdir -p $ij_user_path/macros
-mkdir -p $ij_user_path/luts
-
-# create imagej socket-lock directory if non existant
-if [[ ! -d "$ij_tmp" ]] ; then
- mkdir -p "$ij_tmp"
- #chmod 777 "$ij_user_path/tmp"
-fi
-
# Warning on syntax change
-# for var in "$@" ; do
- #if [[ "$var" == @(-batch|-eval|-macro|-mem|-new|-port|-run|-verbose) ]] ; then
-# if [ $var == @(-batch|-eval|-macro|-mem|-new|-port|-run|-verbose) ] ; then
-# echo "ImageJ command line options have changed!" 1>&2
-# echo "$var is no longer a valid option, type 'imagej -h'" 1>&2
-# echo "for full usage" 1>&2
-# exit 1
-# fi
-# done
-
-# makes symbolik links from shared plugins, macros and luts
-
-ls /usr/share/imagej/plugins | while read p ; do
- if [ ! -e "$ij_user_path/plugins/$p" ] ; then
- ln -s /usr/share/imagej/plugins/$p $ij_user_path/plugins/$p
- fi
+for var in "$@" ; do
+ if [[ "$var" == @(-batch|-eval|-macro|-mem|-new|-port|-run|-verbose) ]] ; then
+ echo "ImageJ command line options have changed!" 1>&2
+ echo "$var is no longer a valid option." 1>&2
+ echo "Type 'imagej -h' for full usage" 1>&2
+ exit 1
+ fi
done
-ls /usr/share/imagej/macros | while read p; do
- if [ ! -e "$ij_user_path/macros/$p" ] ; then
- ln -s "/usr/share/imagej/macros/$p" "$ij_user_path/macros/$p"
- fi
-done
-ls /usr/share/imagej/luts | while read p ; do
- if [ ! -e "$ij_user_path/luts/$p" ] ; then
- ln -s /usr/share/imagej/luts/$p $ij_user_path/luts/$p
- fi
-done
-
-
-
##################### USAGE DESCRIPTION #####################
function usage {
@@ -210,11 +213,66 @@
exit 1
}
+function getFullPath {
+ # Return full path to file
+ # treats multiple arguments as a single file with spaces
+ if (( $# == 0 )) ; then
+ echo "error getting full path for '${*}'" 1>&2
+ fi
+ pwd_getFullPath="$PWD"
+ \cd $(dirname "${*}") > /dev/null
+ dir_getFullPath="$PWD"
+ \cd "$pwd_getFullPath" > /dev/null
+ echo "$dir_getFullPath"/$(basename "${*}")
+}
+function derefln {
+ # Returns the full path of file to which link points
+ # following multiple levels of symbolic links.
+ # NOTE: if you use this function in a script, don't use any
+ # of the variable names used here
+ if (( $# == 0 )) ; then
+ return
+ fi
+ local the_link="$1"
+ local link_dir
+ local current_dir="$PWD"
+ while file "$the_link" | grep symbolic > /dev/null ; do # resolve links until target is regular file
+ if [[ "$the_link" == */* ]] ; then # path contains /
+ \cd $(dirname "${the_link}") > /dev/null
+ the_link=$(basename "$the_link")
+ fi
+ link_dir="$PWD"
+ # some versions of 'file' surround the path in `' quotes, hence the tr to remove them
+ the_link=$(file "${the_link}" | awk '/symbolic link/ {print $NF}' | tr -d "\140\047" )
+ if [[ "$the_link" != /* ]] ; then # path is not absolute path - make it one
+ the_link="$link_dir/$the_link"
+ fi
+ \cd "$current_dir" > /dev/null
+ done
+ echo $the_link
+}
+
+
# The best way to install .jar libraries required by plugins is to copy them
-# to the imagej ij_path=/usr/share/java alternatively or add the .jar
+# to the imagej plugins/jars directory
+# Alternatively, either copy them to ${ij_path}/jre/lib/ext/ or add the .jar
# filepath to the modules line below. Paths are separated by a colon
-# modules="-cp ${ij_path}/ij.jar:${ij_path}/plugins/jars/dcmie.jar"
-modules="-cp ${ij_path}/ij.jar"
+# Classpath must follow command line arguments, as ij_path is dependent on the -d option
+
+# 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)
+
+for mod_jar in ${ij_path}/lib/*jar ; do
+ modules="${modules:-}${modules+:}$mod_jar"
+done
+modules="-cp ${ij_jar_path}:${modules+:}${modules:-}"
+#${ij_path}/plugins/jars/dcmie.jar
+
+export LD_LIBRARY_PATH="${ij_path}/lib/${OS}_$processor"
+if (( $verbosity > 0 )) ; then
+ echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
+fi
# enable plugins to be compiled in imagej
tools="$JAVA_HOME/lib/tools.jar"
@@ -222,14 +280,16 @@
##################### ARGUMENTS PARSING #####################
-while getopts b:ce:hi:m:op:r:vx: options
+while getopts b:cde:hi:m:nop:r:vx: options
do
case $options in
b) if [[ -n "$macrocmd" ]] ; then macroCmdError ; fi
macrocmd="-batch ${OPTARG}"
;;
- c) modules="${modules}:${tools}"
+ c) modules="${modules:-}${modules+:}${tools}"
;;
+ d) ij_path="$ij_path_dev"
+ ;;
e) if [[ -n "$macrocmd" ]] ; then macroCmdError ; fi
macrocmd='-eval'
macroargs="'${OPTARG}'"
@@ -242,6 +302,8 @@
m) if [[ -n "$macrocmd" ]] ; then macroCmdError ; fi
macrocmd="-macro ${OPTARG}"
;;
+ n) newwindow='true'
+ ;;
o) newwindow='false'
;;
p) newwindow='false'
@@ -260,6 +322,7 @@
if (( $verbosity == 3 )) ; then set -v ; fi
;;
x) mem="${OPTARG}"
+ newwindow='true'
if (( $mem < $min_mem || $mem > $max_mem )) ; then
echo "${OPTARG} is not a permissible value for memory (-x)" 1>&2
echo "min=${min_mem}, max=${max_mem}" 1>&2
@@ -272,6 +335,7 @@
esac
done
+
declare -i i=1
while (( i < $OPTIND )) ; do
shift
@@ -297,26 +361,46 @@
macroargs="'$macroargs'"
fi
-# protect possible spaces in image filenames
+# PROTECT POSSIBLE SPACES IN IMAGE FILENAMES
if (( "$#" > 0 )) ; then
while (( "$#" > 0 )) ; do
- images="${images}'${1}' "
+ filearg="${1}"
+ # full file path required when sending images to running ImageJ panel
+ if [[ "${newwindow}" == 'false' && -f "${filearg}" ]] && ! expr "${filearg}" : '/.*' > /dev/null; then
+ filearg="$(getFullPath ${filearg})"
+ fi
+ images="${images}'$filearg' "
shift
done
-fi
+fi
##################### USING PORT #####################
-# Creates a temp file indicating a port is in use by imagej
-pushd "$ij_tmp" > /dev/null
+# CREATE IMAGEJ SOCKET-LOCK DIRECTORY IF NON EXISTANT
+if [[ ! -d "$ij_tmp" ]] ; then
+ mkdir "$ij_tmp"
+ chmod 777 "$ij_tmp"
+fi
+
+# CREATE IMAGEJ LOG FILE IF NON EXISTANT
+if [[ -n "$ij_log" && ! -f "$ij_log" ]] ; then
+ touch "$ij_log"
+ chmod 666 "$ij_log"
+fi
+
+# CREATES A TEMP FILE INDICATING A PORT IS IN USE BY IMAGEJ
+cd "$ij_tmp"
declare -i count=1
portopen='false'
lockFileCreated='false'
declare -a locklist=(`ls | grep '[0-9][0-9]-.*'`)
+[[ -n "$ij_log" ]] && echo -e "$$\t$(date)\tNew Window = $newwindow" >> "$ij_log" 2> /dev/null
+[[ -n "$ij_log" ]] && echo -e "$$\t$(date)\tPort = $port" >> "$ij_log" 2> /dev/null
+[[ -n "$ij_log" ]] && echo -e "$$\t$(date)\tlocklist: \n ${locklist[*]}" >> "$ij_log" 2> /dev/null
if (( $verbosity > 0 )) ; then echo -e "locklist: \n ${locklist[*]}" ; fi
-# port specified by user
+# PORT SPECIFIED BY USER
if (( $port > 0 )) ; then
# look for a lock on the port specified
for lockname in ${locklist[*]} ; do
@@ -327,7 +411,7 @@
if (( $verbosity > 0 )) ; then echo "Using socket lock: $lockname" ; fi
count=$port
break
- elif ("$lockname" =~ ${prefix}-* ) ; then
+ elif [[ "$lockname" == ${prefix}-* ]] ; then
echo "Port $port is in use by some other user or a different host" 1>&2
if (( $verbosity > 0 )) ; then echo "Port lock: $lockname" ; fi
exit 1
@@ -336,7 +420,7 @@
# specified port not in use
count=$port
-# If existing window is requested, look for listening port
+# IF EXISTING WINDOW IS REQUESTED, LOOK FOR LISTENING PORT
elif [[ "$newwindow" == 'false' && ${#locklist} != 0 ]] ; then
# look for a lock on the current display for this user
for lockname in ${locklist[*]} ; do
@@ -351,7 +435,7 @@
done
fi
-# if a new port is to be used
+# IF A NEW PORT IS TO BE USED
if [[ "$portopen" == 'false' ]] ; then
# new window requested or no matching port found
# if port is not specified, look for first free port
@@ -376,12 +460,14 @@
done
fi
fi
- # creating a new port lock
+ # CREATING A NEW PORT LOCK
prefix=`printf '%02u' $count`
lockname=${prefix}-${user}-${host}-${display}
+
+ [[ -n "$ij_log" ]] && echo -e "$$\t$(date)\tCreating lock\t$lockname" >> "$ij_log" 2> /dev/null
if (( $verbosity > 0 )) ; then echo -n "creating lock $lockname ... " ; fi
touch $lockname
- trap '\rm -f ${ij_tmp}/$lockname >/dev/null ; exit 1' EXIT TERM
+ trap '\rm -f ${ij_tmp}/$lockname >/dev/null ; echo -e "$$\t$(date)\tReleasing lock\t$lockname" >> "$ij_log" 2> /dev/null' EXIT TERM KILL
# Quitting ImageJ sends EXIT, as does a kill/kill -9
# CTRL+C in terminal sends INT + EXIT
# System shutdown sends TERM (+EXIT??)
@@ -389,29 +475,25 @@
if (( $verbosity > 0 )) ; then echo 'done' ; fi
lockFileCreated='true'
- echo 'Open other images in this ImageJ panel as follows:'
- echo " imagej -p $count <image1> [<image2> ... <imageN>]"
+ if [[ -z "$macrocmd" ]] ; then
+ echo 'Open other images in this ImageJ panel as follows:'
+ echo " imagej -p $count <image1> [<image2> ... <imageN>]"
+ fi
+ [[ -n "$ij_log" ]] && echo -e "$$\t$(date)\tSocket lock:\t$lockname" >> "$ij_log" 2> /dev/null
if (( $verbosity > 0 )) ; then echo "Socket lock: $lockname" ; fi
echo
fi
-# Report number of port locks - more than 50 may indicate error in this script
-if [[ $count -gt 50 && $port == 0 && "$ijadmin" != '' ]] ; then
-mail -s "ImageJ ports on $host" $ijadmin << EOF
-Port locks on $host reached $count
-EOF
-fi
-
##################### FINALLY RUN IMAGEJ #####################
-popd > /dev/null
+#popd > /dev/null
if [ "$JAVA_HOME" ] ; then
if (( $verbosity > 0 )) ; then
echo ${modules}
- echo $JAVA_HOME/bin/java ${arch} -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_user_path} -port${count} ${images} ${macrocmd} ${macroargs}
+ echo $JAVA_HOME/bin/java ${java_arch} -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_user_path} -port${count} ${images} ${macrocmd} ${macroargs}
else
- eval $JAVA_HOME/bin/java ${arch} -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_user_path} -port${count} ${images} ${macrocmd} ${macroargs}
+ eval $JAVA_HOME/bin/java ${java_arch} -mx${mem}m ${modules} ij.ImageJ -ijpath ${ij_user_path} -port${count} ${images} ${macrocmd} ${macroargs}
fi
else
echo "No JVM found to run ImageJ"
Modified: trunk/packages/imagej/trunk/debian/imagej.desktop
===================================================================
--- trunk/packages/imagej/trunk/debian/imagej.desktop 2008-09-21 15:05:24 UTC (rev 2516)
+++ trunk/packages/imagej/trunk/debian/imagej.desktop 2008-09-22 13:18:04 UTC (rev 2517)
@@ -15,7 +15,7 @@
GenericName[fi]=Kuvaeditori
GenericName[fr]=Éditeur d'images
GenericName[hu]=Képszerkesztő
-GenericName[it]=Editor immagine
+GenericName[it]=Editor di immagini
GenericName[ja]=画像エディタ
GenericName[ko]=색상표 편집기
GenericName[mk]=Уредник за слики
@@ -36,6 +36,7 @@
Comment=Image processing and analysis
Comment[en_GB]=Image processing and analysis
Comment[fr]=Traitement et analyse de l'image
+Comment[it]=Trattamento ed analisi delle immagini
Exec=imagej %f
Icon=microscope
Categories=Graphics;Science;Biology;
Modified: trunk/packages/imagej/trunk/debian/rules
===================================================================
--- trunk/packages/imagej/trunk/debian/rules 2008-09-21 15:05:24 UTC (rev 2516)
+++ trunk/packages/imagej/trunk/debian/rules 2008-09-22 13:18:04 UTC (rev 2517)
@@ -8,10 +8,13 @@
include /usr/share/cdbs/1/class/ant.mk
include /usr/share/cdbs/1/rules/simple-patchsys.mk
-# JAVA_HOME := $(shell /usr/sbin/update-java-alternatives -l | head -1 | cut -d' ' -f 3)
+# when open_jdk will be jpeg compliant i will use /usr/lib/jvm/java-6-openjdk/
+ JAVA_HOME := $(shell /usr/sbin/update-java-alternatives -l | head -1 | cut -d' ' -f 3)
# JAVA_HOME := $(shell /usr/sbin/update-java-alternatives -l | grep -vw sun | head -1 | cut -d' ' -f 3)
# Use gcj as java home or search for other installed JVM
-JAVA_HOME = $(or $(shell [ -x /usr/lib/jvm/java-gcj ] && echo "/usr/lib/jvm/java-gcj"), $(shell ls -L /usr/lib/jvm/ | grep -v -e "[0-9]$" -e "-gcj$" | head -1 ))
+#JAVA_HOME = $(or $(shell [ -x /usr/lib/jvm/java-gcj ] && echo "/usr/lib/jvm/java-gcj"), $(shell ls -L /usr/lib/jvm/ | grep -v -e "[0-9]$" -e "-gcj$" | head -1 ))
+
+
ANT = JAVA_HOME=$(JAVA_HOME) TEX4HTENV=/etc/tex4ht/tex4ht.env ant
JAVACMD := $(JAVA_HOME)/bin/java
More information about the debian-med-commit
mailing list