Compare commits

...

No commits in common. "factory" and "factory" have entirely different histories.

9 changed files with 185 additions and 400 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b49f43c73720e43b53a6e02cdec3315652ae50578523f9198943e074c387f7c3
size 18646203

Binary file not shown.

3
gnuhealth-4.4.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a46ce0461bb451a79f4d40a570a700d5dd28361d3e012d410198a4e159c69481
size 18685767

BIN
gnuhealth-4.4.1.tar.gz.sig Normal file

Binary file not shown.

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Fri Aug 2 11:47:44 UTC 2024 - Axel Braun <axel.braun@gmx.de>
- version 4.4.1
* Issue #15: readfp on setup.py no longer supported since python 3.12
* Issue #33: health orthanc: Errors on imaging request when worklist
template set on imaging test type
-------------------------------------------------------------------
Tue Feb 27 11:01:43 UTC 2024 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@ -17,78 +17,176 @@ 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
qj7qDVqBWCitPxpVWg==
=LfDr
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
wgeqPuoNWoFYKK0/GlVa
=doah
-----END PGP PUBLIC KEY BLOCK-----
GPG keys of Gerald Wiese <gerald_wiese>
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQINBFkOA04BEADnOBk9Aio61+3AlTY+slTusQNT3bkMVxFEY87I2p0cmBG1oBwD
uC/DvnYKafg90juAF+LNIuhlCG351/bpJiu/8XsQSk55B2Jq9TeE4Sj/ilsS4mV2
Kd+xqBER/N4T7c/d3prNv2mTrr1BL0qCfLxWrkZTkT5pheGHoI5LjhlQnZ9yuPOx
uYSmh+Rn0tUBEr82J0co6joa7FHiJsJc5P0lj40BoR9sLxqu08bLu21T0NYuVlab
uAjxeZ+qLS0ofDQSuU8NJPmbsWQ0nXHuagIZiZ1YIHQgT1x75aslwntD7ZeJlTfl
ipH1jrNVgPcNchOnSXPI6/N1+DAgCckx38/pM1PBnsgCV3hjQrhQPUav5ZmcbkvJ
0Hbsg74HbF2C+XmIeeDj5GlkKX0QwccYCajIwNzV6/VsfYWaaXZH08D8eKZ1eg1g
hKU1bQY8+vXhkq9WaFAb0YhLmhp0IzJLTuUfUjN8ARANRSVryisjZLb9MyAiawzL
LH1o5HY8mRsG1VFdQIlWe034x8t5ADkCIjwNq124Byvw+PdDya3RfeaNgwCOIPmz
woK2jXz7yNvzCQp1/6JmdrFOu9TkpHlrQEVFXPP7/3A7oRhPQItU+xpJrP5UaF0l
UD7NVCpTFGzrahqNvx33WEmsuXTFWs6pXC3YWxfLljm/syOxaqw2qJcKEQARAQAB
tC9MdWlzIEZhbGNvbiAoR05VIEhlYWx0aCkgPGZhbGNvbkBnbnVoZWFsdGgub3Jn
PokCTgQTAQgAOBYhBKy/yA/IkWMcaKqNyMAV4a4AmJGZBQJdYGXeAhsDBQsJCAcC
BhUKCQgLAgQWAgMBAh4BAheAAAoJEMAV4a4AmJGZzwIQAJIShJYW3GyVNvXiSbiE
tKBu7HbK0khlCXbt4EP5ASeVPP6A0N4/cLO1M3RKwmQ61/gtE9NRLLCH9j/1Gnw4
j+mtPQg9SON8uNkBi/PEN1qJ7laVueMIVSjoUgLY9/NUSCck8hHj/3rtlhCXZY7M
8EBTaXs+E5pRVmbRDgnXZxdGub2lji/j8GSAEd/dhiOfI6s8FgoKqDgqrsc8TmRL
ivNRyodg7IamjLEG9ASO6mFepWoxoAc+wGtweOg+Zs68E55OoQ089CxGSkdu6xsH
H14HXIOZxjt0yBKq0ruKhfLfBXVZYH7DQsWX6VqaD/mjstuBRcqiI80AOg5K4GvJ
+vWpioJ285PpRmYW2y2ZHNySC/CpCnx9CFw/o+krmmqibuQATd7NFse9u1gF86Xw
bSWHW2VFXwceXtWBwjuGv2kRC7WxxLvFodLK7majYwOayRKOxu8jrVMov0bi+npu
eC63Lb43htj3vGrtwMYHE+HLMfjsFYxn2oTrHv77aNtSd9oCrEmodk9XT99p8UAt
LrP26UaN4rRsPkYwXdW5SjhmQ9BIQ9gZ9Rf3sILuozqBXA7fWrwxGI1tat+wnqmv
LNm7QQ25gV95f84i6xfr1HfA4rIppN+JbUfWzXstYqqbfR+7W596rIKcxg1eS2Jf
ez1t+T3uKWwl4QSQ3sLIxH30tCJMdWlzIEZhbGNvbiAoR05VKSA8ZmFsY29uQGdu
dS5vcmc+iQJOBBMBCAA4FiEErL/ID8iRYxxoqo3IwBXhrgCYkZkFAlkOBuICGwMF
CwkIBwIGFQgJCgsCBBYCAwECHgECF4AACgkQwBXhrgCYkZlBoRAAuO5dTpFY7RvF
DZfa94CTS6iJEBzkF+YyL3tJ+g5Dj1mG2JmBBc5TfsXG+6QjXcgAMiyS13wjgfke
+83jW/xpRrae9D2c+ufp3QcZI5Usl7+ibhCDSIFTdY028sRm5QwlyGE2ow7/2het
PTxkfwx/2geevGorG95XH53Ihn7lhRaD7rtVT+Guo7GywTVgbHyRvw9DgWRfzY6v
pqHfn64CmK4ovRXoaAOLzZT+I5IY1HVu/99dVMnMgVV9HspGTe9qlI+bVIA/TGqV
baq8dLiEFxigtni9N/khgpKKxIYh4LoUGvxgeg5JFQbCIJQd2S7cXrku3QnoXRIr
az9XCFQbvJ/PCUKpwkN+q/eCNF1LieQ1x3BlaNAFG8eHhNgqHwkDi6QqBEOmSulh
cvWmPM5hlKHkYylfGvPzuM1JcGslxoIFEwn6zc/llA8xrPvBM/LYDeKilT/XHQHR
0ie4fHNadxZ/roD4XO5FHYu4makXkU/xRf+jOTdvC4+MB0NHQ3zNmfROe4Jkv2Yq
Gz7gErd2q3wx7WlovMDcVpf+ttlNtGW88IhCGwDkcup5uR6cH8PUTMGDaL9fTvzL
tp6nXd0Ql6RQnsIczp/Y1+gGYxMqOzegK0cQ45Oft49Rfk7BGYy+kRgTpmiqKUCz
MnX/X4KarsKbH8IwquiUAK90vvJSTy+0M0x1aXMgRmFsY29uIChHTlUgSGVhbHRo
KSA8bGZhbGNvbkBnbnVzb2xpZGFyaW8ub3JnPokCTgQTAQgAOBYhBKy/yA/IkWMc
aKqNyMAV4a4AmJGZBQJZDgNOAhsDBQsJCAcCBhUICQoLAgQWAgMBAh4BAheAAAoJ
EMAV4a4AmJGZsywQAJhWTgKWblcntWMkI1cBjYGgoK/t5MFp4lgYysg1wWHb9Z76
9EYWdMOsRm6pn42pDVLeMC/QuNzXxiJ0hRxhucfueOXIOmnujji+gJiAMdCKsw2D
3ab9KM/e4s7eHFdqIZToalGhtNSPaHPLvxlBwk6TAmJBwfSyQCGsEOWN1SvbbMnz
uf48bGOeULQx+ZyEjfr5tnm1BYJuQMiTS7OWt4hBY757HFKjxxkAIPptcLEXTAQB
q2SQODM68VtTTj7fVq2rMXelobXrm0xbaJ5lYd8OAFQMTVgdCg7MLedozugUmy2i
SbC4NfVc3JcHnXT2Fadv6XwWSTEI8zG2XauOG89QRoUM3swegg8GFbdry4n20jYm
AOG3VTWrt54UPCLMJ4VVEZJAO3o88vCKhOldrxneWz40QEB4UsKwxwp3BHaS6K3i
nziCZr2gkNuVitEN4EFKKwkE0YYOeHvE96yxEjks+fE8d7+VgTWPPL2xprRpSpmn
a4kBtHNS9g+9Wjf7L0LTbLUoJ/HQVQdxqaZKwuXO5gXEF9UUMxF9+VNfvNemU4Fx
LYqQ5ELFyRryVvTiINsuyFLFalMeOTuYWWNhiN/AyE0URDFJZNYKNbraIzXIUnyz
QAJHtJI7Z4fjiUw6YVMPzJpTOZjCvEJ3TTzKd7mnirR4bocZuk1Zn5el8s19tDNM
dWlzIEZhbGNvbiAoUHJlY2lzaW9uTWVkKSA8ZmFsY29uQHByZWNpc2lvbm1lZC5l
dT6JAlEEEwEIADsWIQSsv8gPyJFjHGiqjcjAFeGuAJiRmQUCZXNxcgIbAwULCQgH
AgIiAgYVCgkICwIEFgIDAQIeBwIXgAAKCRDAFeGuAJiRmbHcEACkjR/asxdb5qXT
iOJjmkNk+oXurRgIrqM+DlBAEB++PZOeE5PoMB3kA0VvFXoa4cWuHmv4UNKB1Ned
3zPms/Mr0QCCgNNqPScaMDuEOceAUwuZRYRg8QxJQCENcvY2bZA0nQjG+FtRkPMY
Q6StXrB2DAFnV/EYfvn4ZutN4K4vL4XZtkxsuLI2uoeukn6w8/qIKx1hlyjFwLkP
0lTKsGVKQWJi8jvhOAsiw5EAzgnUL9zRTll8Cta5ZT/nwjuCOZuogBNYygEDQLSy
kFhZTnmhhQYS/u70zQYuhFR7nunJZ+XBr0AwulGSj84vSnnsIsit+Ic5TuxcfFjm
Vle/H3I3gSZmDOPZ3E3RWa339HMzy/vqaTBvPMQNhpbjnnJNI4z/cD+aN0wZ52d6
kZUXkDKp5I81sqEwXqxhfzq+luzmLnXQpfeKIDejzrQdOyzj09h4bYH2C5btyNdN
0d+PONEMq2Mn01rnfYYmiOYGUXg70zZc76WHmaGbdjuRu607I1Z2ojp9Sn8Lt2B5
6EZxtrNSYQz3FCgun2rKptvtj4W9F+vA0piRqtuO9iVhw6v6XbwZX98l1t+bL+CU
RqLYpEDYjq0YHZqLFRrvCHXS0NR6xs2tPVn/u9cCzBO5WWEIxuuEzoVkszr/x9AN
apYX7TBjMrPNQyV/GxlkjyIUD/T8OrkCDQRZDgNOARAArPwK5tKzyWzEMg3gLJjB
GMNTjaA8mn9TaFehMr179LbnAPXXcwZ+XvEOY0XqCVsT2TrvcvQIBy2H+PfhimKc
6dUetTpBLgzMoawUX15fL4WhnsbLy5LpRi8FvWj1FMIqx9JNUx3HkQu7nJZHqQJ1
FUBJeT7oZ0VWrG6E94v1siUxTuu8oByADPQmPwfUOFZ4G50fcx+3Ko7k/lxFfGJS
bmQ87z7bcNkcGD5mEYNO1FsDE5lHGYhpsdMFGQ9XlGF+mwdC+GtJ/AwzVXv6o5Oe
Fi/31ooEa8Yi+UQ6b/QU9NhEa2q4bWO26Sj8aioRZck3Unkjz05p2S3o8m0CwuZP
8bBRTjPSLMGOp+eZRTKqyjHs2NmLmF9uJXI/ndAVCS0RdXvf4IEkdBxbKOJGG1YN
j3q1MGe+rWEeKuBtTk7DR7A5YU8y23sZ4FsAGeAYdoATFhKNSZNXZ+t1zE/guP3G
kZQPi3V4VwoqtJTvewKCYJTxLNkT4/cLBo6Byn7Oen5upTbRYCrC4Gd0HiOZi4xw
kIm1U5cESFRTzWKyL5SWH2hrcRaBIQ23MV34HuGZ+L5LBufBYKZsO8zVelY1f13X
rM0qBpOaRZbkN1Vj6FDDPSg2z6pejr1AbSLUu7R/eUg0qyhJHsRHpdBqWDBk42Lc
u4U5jdpzKALwQIKE+bBjZEEAEQEAAYkCNgQYAQgAIBYhBKy/yA/IkWMcaKqNyMAV
4a4AmJGZBQJZDgNOAhsMAAoJEMAV4a4AmJGZuewQAL5IqkJu+hSjgWGuQV10V9Bw
XjyUuPEieemEPOTrJ0/jitJwLYA5cwFNKLU6ooyKztLbvc0t3xH3Jl/ec87+n6dp
/nswVd2MSxuQpcLUvHYgFrRvWFs3V0XHu/27WhYAsjQAQnNXq/NQGuE/Af+U9zyz
bTVBFOBzO/79yT3YO3A4gzNNkn11eFS/3h//2D6b08Rdxl5EMOkiviogK0F13gJU
TU/2Y//UIeBA3wxRyc44K6z+6PmL3JzKvP66VxknMe5hkF6SR8QKfxXaKM5PbV5X
G7gd30+eRNneLVVbz9Y/MarEnFE4GXOaj8jMaAoTCrfi9lJzMSefWWXUH3ifjE2R
ERFzkTbsoPs5w+wC4VwuUE5z3iz9Y0QB964smywsz0fWJAL7cWxErM87ZWLh7wIf
EKFHc/uD3P+HhS0l57LApd9QEgcMMwMOFIeLwi++BynzfeP3Ga38QLdxfluASkuW
oNuMoSwQXobNrtNASlBOPf1KpyuOAI6hOvfHAPGekH92iK/FUe9D2gUodr8pybwB
M8+bmPkuI2yyfO1bYpXeXuLjCwJUB/FAq2JrjoS8iKV8i+jnX2GOtwmLh+OOsErI
WgFL1ZJFVYHGC+VKj/JgT9Ctof10B2Hrlt40PXoliexwo7wvl8cHFjonF2r9WXZ2
wgeqPuoNWoFYKK0/GlVa
=doah
-----END PGP PUBLIC KEY BLOCK-----

View File

@ -35,7 +35,7 @@
Name: gnuhealth
Version: %{majorver}.0
Version: %{majorver}.1
Release: 0
URL: https://health.gnu.org
Summary: A Health and Hospital Information System

View File

@ -1,322 +0,0 @@
#!/bin/bash
# GNU Health installation script for openSUSE
# Version agnostic to GNU Health
##############################################################################
#
# GNU Health Installer for openSUSE
#
# Copyright (C) 2018 Axel Braun <abraun@gnusolidario.org>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
#-----------------------------------------------------------------------------
# Variables declaration
#-----------------------------------------------------------------------------
#GNU Health installer for openSUSE version
VERSION="0.1"
# Colors constants
NONE="$(tput sgr0)"
RED="$(tput setaf 1)"
GREEN="$(tput setaf 2)"
YELLOW="\n$(tput setaf 3)"
WHITE="\n$(tput setaf 7)"
# Params
#ROOT_PW="root"
DB_NAME="GNUHEALTH"
DB_ADMIN_PWD="admin"
DB_USER="tryton"
DB_CONFIG="/var/lib/pgsql/data/pg_hba.conf"
GH_START="y"
#-----------------------------------------------------------------------------
# Functions
#-----------------------------------------------------------------------------
message()
{
local UTC="$(date -u +'%Y-%m-%d %H:%M:%S')"
case $1 in
ERROR ) echo -e "\e[00;31m${UTC} [ERROR] $2\e[00m";;
WARNING ) echo -e "\e[0;33m${UTC} [WARNING] $2\e[m" ;;
INFO ) echo -e "\e[0;36m${UTC} [INFO] $2\e[m" ;;
esac
}
help()
{
cat << EOF
This is GNU Health Setup for openSUSE ${VERSION}
usage: `basename $0` command
Command:
version : Show version
setup : Setup a GNU Health server
help : shows this message
EOF
exit 0
}
show_version () {
case $1 in
version) message "INFO" "This is is GNU Health setup for openSUSE V ${VERSION}"; exit 0;;
esac
}
bailout() {
message "INFO" "Bailing out !"
message "INFO" "Cleaning up temporary file"
rm -rf /tmp/pw
# if [ -e ${BASEDIR}/.installation_ok ];then
# message "WARNING" "Previous successful installation found. NOT removing base dir at ${BASEDIR}"
# else
# message "INFO" "removing base dir at ${BASEDIR}"
# rm -rf ${BASEDIR}
# fi
exit 1
}
#-----------------------------------------------------------------------------
# go-ahead: perform update
#-----------------------------------------------------------------------------
go_ahead() {
# login as root, start postgres
echo "Starting database...."
systemctl start postgresql || bailout
echo "Database started"
# su -postgres || bailout
#then as postgres, and change parameter
echo "Changing postgres trust method"
sudo -u postgres sed -i -e 's/\(\(local\|host\).*all.*all.*\)\(peer\|ident\)/\1trust/g' ${DB_CONFIG} || bailout
echo "Postgres trust method changed"
echo "Create database user"
#create user
sudo -u postgres psql -c "CREATE USER tryton WITH CREATEDB;" || bailout
echo "Database user created"
echo "Creating database ${DB_NAME}"
# create database
sudo -u postgres createdb ${DB_NAME} --encoding='UTF8' --owner=tryton || bailout
echo "Database created"
#exit as postgres
#exit
echo "Restarting database"
systemctl restart postgresql || bailout
# login as user tryton
#su tryton -s /bin/bash
echo "Initializing database - this may take a while"
echo ${DB_ADMIN_PWD} > /tmp/pw || bailout
sudo -u tryton env TRYTONPASSFILE=/tmp/pw trytond-admin -c /etc/tryton/trytond.conf --all -d ${DB_NAME} --password || bailout
rm /tmp/pw || bailout
if [ $GH_START = "y" ]; then
echo "Enabling GNU Health at boot time"
systemctl enable postgresql
systemctl enable gnuhealth
fi
echo "All done"
}
#-----------------------------------------------------------------------------
# Call user parameter
#-----------------------------------------------------------------------------
get_root_pw() {
Y=''
read -p "Please enter root-password [$ROOT_PW] " Y
if [ ! -e $Y ]; then
ROOT_PW=$Y
fi
message "INFO" "root-password is $ROOT_PW"
}
get_db_name() {
Y=''
read -p "Please enter name for new database [$DB_NAME] " Y
if [ ! -e $Y ]; then
DB_NAME=$Y
fi
message "INFO" "DB-Name is $DB_NAME"
}
get_db_admin() {
Y=''
read -p "Please enter admin-password for new database [$DB_ADMIN_PWD] " Y
if [ ! -e $Y ]; then
DB_ADMIN_PWD=$Y
fi
message "INFO" "DB Admin password is $DB_ADMIN_PWD"
}
get_db_user() {
Y=''
read -p "Please enter database user [$DB_USER] " Y
if [ ! -e $Y ]; then
DB_USER=$Y
fi
message "INFO" "DB User is $DB_USER"
}
get_db_file() {
Y=''
read -p "Please enter database config file [$DB_CONFIG] " Y
if [ ! -e $Y ]; then
DB_CONFIG=$Y
fi
message "INFO" "DB config path & file $DB_CONFIG"
}
get_GH_start() {
Y=''
read -p "Shall GNU Health start automatically? [$GH_START] " Y
if [ ! -e $Y ]; then
GH_START=$Y
fi
message "INFO" "GNU Health start at boot $GH_START"
}
#-----------------------------------------------------------------------------
# verify input
#-----------------------------------------------------------------------------
verify_input() {
echo ;
message "INFO" "DB Name is ..............$DB_NAME"
message "INFO" "DB Admin password is ....$DB_ADMIN_PWD"
message "INFO" "DB User is ..............$DB_USER"
message "INFO" "DB config path & file is $DB_CONFIG"
message "INFO" "GNU Health start at boot $GH_START"
read -p "Are these values correct? [y]es/[n]o/[a]bort " VAL
}
#-----------------------------------------------------------------------------
# Install
#-----------------------------------------------------------------------------
setup() {
# check is it runs as root
wai=`whoami`
if [ $wai != "root" ]; then
message "ERROR" " This script must run as user 'root'"
bailout
fi
VAL="n"
message "INFO" "Starting GNU Health setup for openSUSE V ${VERSION} ..."
message "INFO" "If the value displayed is OK, just hit <ENTER> to confirm"
while [ ${VAL} != "y" ]; do
# (1) Get root password
# get_root_pw
# (2) get Database name
get_db_name
# (3) change login
get_db_admin
message "WARNING" "Change the following parameter only if you know what you are doing..."
# (4) DB user
get_db_user
# (5) DB config file and path
get_db_file
# (6) enable GNUHealth at start?
get_GH_start
# (7) check if all are valid
verify_input
# request input until all is OK:
if [ -e ${VAL} ]; then
message "ERROR" "Please enter y, n or a"
verify_input
else
if [ ${VAL} = "y" ]; then
go_ahead
exit 0
fi
if [ ${VAL} = "a" ]; then
exit 1
fi
fi
done
}
#-----------------------------------------------------------------------------
# Parse command line
#-----------------------------------------------------------------------------
parse_command_line()
{
if [ $# -eq 0 ]; then
help
fi
case $1 in
version) show_version $@;;
update-deps) install_python_dependencies $@;;
setup) setup $@;;
help) help;;
*) echo $1: Unrecognized command; exit 1;;
esac
}
parse_command_line "$@"