--- open-xchange-0.8.1.3.ebuild.old2 2005-10-12 14:20:32.000000000 +0200 +++ open-xchange-0.8.1.3.ebuild.old2 2005-10-16 10:08:19.000000000 +0200 @@ -6,11 +6,16 @@ MY_PV=$(replace_version_separator 3 '-') MY_P="${PN}-${MY_PV}" - DESCRIPTION="A Collaboration and Integration Server Environment" HOMEPAGE="http://www.open-xchange.org/" -SRC_URI="http://mirror.open-xchange.org/download/${MY_P}.tar.bz2 - http://www.mikefetherston.ca/OX/Crystal_OX_Theme.tgz" + +SRC_URI="http://www.mikefetherston.ca/OX/Crystal_OX_Theme.tgz" +if [[ $(get_version_component_range 3) -eq 0 ]]; then +SRC_URI="${SRC_URI} http://mirror.open-xchange.org/download/archive/${MY_P}.tar.bz2" +else +SRC_URI="${SRC_URI} http://mirror.open-xchange.org/download/${MY_P}.tar.bz2" +fi + LICENSE="GPL-2" KEYWORDS="~x86" RESTRICT="primaryuri" @@ -52,7 +57,129 @@ use postgres || ! use mysql } -pkg_setup() { +#parameter $1 == 1 for config part or == 0 for preinst +ox_setup(){ + local config=$1 + local WORKINGBASE="${IMAGE}" #is used during pkg_* + if [[ $config -eq 1 ]]; then + #executed from in pkg_config + WORKINGBASE="${ROOT}" + fi + # Simple defaults + # some have to defined global + OX_DBNAME=${OX_DBNAME-"open_xchange"} + OX_DBUSER=${OX_DBUSER-"open_xchange"} + OX_DBPASS=${OX_DBPASS-"secret"} + OX_DOMAIN=${OX_DOMAIN-"example.org"} + # some just needed local + local OX_DBHOST=${OX_DBHOST-"localhost"} + local OX_ORG=${OX_ORG-"My Organization"} + local OX_LDAPSERVER=${OX_LDAPSERVER-"localhost"} + local OX_BASEDN=${OX_BASEDN-"dc=example,dc=org"} + local OX_ROOTDN=${OX_ROOTDN-"cn=Manager,${OX_BASEDN}"} + local OX_ROOTPW=${OX_ROOTPW-"secret"} + + # Guess base on the installed config but only if it exists + if [[ -e "${ROOT}/etc/open-xchange/admintools.conf" ]] ; then + local temp_var + echo "Installation of OX detected" + + temp_var=$(get_oxvar DEFAULT_SQL_HOST) + [[ -n ${temp_var} ]] && OX_DBHOST=${temp_var} + + temp_var=$(get_oxvar DEFAULT_SQL_DB) + [[ -n ${temp_var} ]] && OX_DBNAME=${temp_var} + + temp_var=$(get_oxvar DEFAULT_SQL_USER) + [[ -n ${temp_var} ]] && OX_DBUSER=${temp_var} + + temp_var=$(get_oxvar DEFAULT_SQL_PASS) + [[ -n ${temp_var} ]] && OX_DBPASS=${temp_var} + + temp_var=$(get_oxvar ORGA) + [[ -n ${temp_var} ]] && OX_ORG=${temp_var} + + temp_var=$(get_oxvar BINDDN) + [[ -n ${temp_var} ]] && OX_ROOTDN=${temp_var} + + temp_var=$(get_oxvar BINDPW) + [[ -n ${temp_var} ]] && OX_ROOTPW=${temp_var} + + if [[ -e "${ROOT}/etc/open-xchange/groupware/ldap.conf" ]] ; then + # taken from admintools.conf self + temp_var=`grep -v '^#' ${ROOT}/etc/open-xchange/groupware/ldap.conf | grep -i BASE | head -n 1 | awk {'print $2'}` + [[ -n ${temp_var} ]] && OX_BASEDN=${temp_var} + fi + fi + + if [[ ${config} -eq 1 ]]; then + # Now asking the user + einfo "If values are correct just press enter else enter the new value" + + OX_DBHOST=$(get_user_config "${OX_DBHOST}" "Database Host") + OX_DBNAME=$(get_user_config "${OX_DBNAME}" "Database Name") + OX_DBUSER=$(get_user_config "${OX_DBUSER}" "Database User") + OX_DBPASS=$(get_user_config "${OX_DBPASS}" "Database User's Password") + OX_ORG=$(get_user_config "${OX_ORG}" "Organization") + OX_DOMAIN=$(get_user_config "${OX_DOMAIN}" "Domain") + OX_LDAPSERVER=$(get_user_config "${OX_LDAPSERVER}" "LDAP Server") + OX_BASEDN=$(get_user_config "${OX_BASEDN}" "LDAP Base DN") + OX_ROOTDN=$(get_user_config "${OX_ROOTDN}" "LDAP Root DN") + OX_ROOTPW=$(get_user_config "${OX_ROOTPW}" "LDAP Root Password") + + einfo "Finished - now writing config" + fi + + ## now create configs with the right values + # starting with ldap + sed -i "s|@basedn@|${OX_BASEDN}|g" ${WORKINGBASE}/usr/share/open-xchange/init_ldap.ldif + sed -i "s|@domain@|${OX_DOMAIN}|g" ${WORKINGBASE}/usr/share/open-xchange/init_ldap.ldif + sed -i "s|@organization@|${OX_ORG}|g" ${WORKINGBASE}/usr/share/open-xchange/init_ldap.ldif + + local OX_BASEDC="`echo ${OX_BASEDN} | sed -n 's:dc=\([-A-Za-z_]*\).*:\1:p'|head -n 1`" + sed -i "s|@basedc@|${OX_BASEDC}|g" ${WORKINGBASE}/usr/share/open-xchange/init_ldap.ldif + sed -i "s|ORGA=\".*\"|ORGA=\"${OX_ORG}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + sed -i "s|BINDDN=\".*\"|BINDDN=\"${OX_ROOTDN}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + sed -i "s|BINDPW=\".*\"|BINDPW=\"${OX_ROOTPW}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + sed -i "s|DEFAULT_SQL_HOST=\".*\"|DEFAULT_SQL_HOST=\"${OX_DBHOST}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + sed -i "s|DEFAULT_SQL_DB=\".*\"|DEFAULT_SQL_DB=\"${OX_DBNAME}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + sed -i "s|DEFAULT_SQL_USER=\".*\"|DEFAULT_SQL_USER=\"${OX_DBUSER}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + sed -i "s|DEFAULT_SQL_PASS=\".*\"|DEFAULT_SQL_PASS=\"${OX_DBPASS}\"|g" ${WORKINGBASE}/etc/open-xchange/admintools.conf + + # setup correct ACIs + sed -i "s|@basedn@|${OX_BASEDN}|g" ${ROOT}/etc/openldap/slapd.ox.inc + + # groupware : server.conf + for f in /etc/open-xchange/groupware/server.conf /etc/open-xchange/webmail/server.conf ; do + sed -i "s|NAS_CON_CLASS_NAME: jdbc:\(.*\)://.*|NAS_CON_CLASS_NAME: jdbc:\1://${OX_DBHOST}/${OX_DBNAME}|g" ${WORKINGBASE}/${f} + sed -i "s|NAS_CON_USER:.*|NAS_CON_USER: ${OX_DBUSER}|g" ${WORKINGBASE}/${f} + sed -i "s|NAS_CON_PASS:.*|NAS_CON_PASS: ${OX_DBPASS}|g" ${WORKINGBASE}/${f} + sed -i "s|NAS_CON_PASS:.*|NAS_CON_PASS: ${OX_DBPASS}|g" ${WORKINGBASE}/${f} + done + + # patching umin.war, somehow dirty + [[ -d "${T}/ox_war" ]] && rm -rf ${T}/ox_war + mkdir -p ${T}/ox_war + + echo "${WORKINGBASE}/${SERVLETDIR}" + unzip ${WORKINGBASE}/${SERVLETDIR}/umin.war -d ${T}/ox_war + + sed -i "s|LDAP_SERVER=.*|LDAP_SERVER=${OX_LDAPSERVER}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + sed -i "s|LDAP_BASEDN=.*|LDAP_BASEDN=${OX_BASEDN}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + sed -i "s|SQL_SERVER_GROUPWARE=.*|SQL_SERVER_GROUPWARE=${OX_DBHOST}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + sed -i "s|SQL_SERVER_GROUPWARE_DATABASE_NAME=.*|SQL_SERVER_GROUPWARE_DATABASE_NAME=${OX_DBNAME}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + sed -i "s|SQL_SERVER_GROUPWARE_DATABASE_USERNAME=.*|SQL_SERVER_GROUPWARE_DATABASE_USERNAME=${OX_DBUSER}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + sed -i "s|SQL_SERVER_GROUPWARE_DATABASE_PASSWORD=.*|SQL_SERVER_GROUPWARE_DATABASE_PASSWORD=${OX_DBPASS}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + sed -i "s|CSS_PATH=/cfintranet/css/stylesheet.css|CSS_PATH=/open-xchange/cfintranet/css/stylesheet.css|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties + + cd ${T}/ox_war + zip -r -9 umin.war * + cp umin.war ${WORKINGBASE}/${SERVLETDIR} + cd ${WORKINGBASE} + rm -rf ${T}/ox_war +} + +ox_setup_tomcat(){ TOMCAT_DIR=`java-config -g CATALINA_HOME` if has_version '>=www-servers/tomcat-5.0.28-r4' ; then # it is now installed to the profile-directory choosen from /etc/conf.d/tomcat-5 @@ -62,8 +189,12 @@ else SERVLETDIR="${TOMCAT_DIR}/webapps" fi +} + +pkg_setup() { webapp_pkg_setup + ox_setup_tomcat } src_unpack() { @@ -72,6 +203,7 @@ # http://www.open-xchange.org/cgi-bin/bugzilla/show_bug.cgi?id=734 epatch ${FILESDIR}/${PN}-0.8.1.2-login.patch + epatch ${FILESDIR}/${PN}-0.8.1.2-ssl.patch # http://www.open-xchange.org/cgi-bin/bugzilla/show_bug.cgi?id=656 sed -i "s|\${DESTDIR}|\$(DESTDIR)|g" Makefile.am @@ -133,11 +265,7 @@ myconf="${myconf} --with-servletdir=${SERVLETDIR}" -# if has_version '>=www-servers/tomcat-5.0.28-r4' ; then - myconf="${myconf} --with-jsdkjar=${TOMCAT_DIR}/common/lib/servlet-api.jar" -# else -# myconf="${myconf} --with-jsdkjar=/usr/share/servletapi-2.4/lib/servlet-api.jar" -# fi + myconf="${myconf} --with-jsdkjar=${TOMCAT_DIR}/common/lib/servlet-api.jar" myconf="${myconf} --with-mailjar=/usr/share/sun-javamail-bin/lib/mail.jar" myconf="${myconf} --with-activationjar=/usr/share/sun-jaf-bin/lib/activation.jar" @@ -238,6 +366,8 @@ dosym ../../../etc/openldap/schema/openxchange.schema /usr/share/open-xchange/openxchange.schema dosym ../../openldap/ldap.conf /etc/open-xchange/groupware/ldap.conf dosym ../../openldap/ldap.conf /etc/open-xchange/webmail/ldap.conf + #create symlink to ssl directory for webmail + dosym /etc/open-xchange/groupware/sslcerts /etc/open-xchange/webmail/sslcerts for x in settings/intranet settings/webmail filespool drafts webmailupload dictionary ; do keepdir /var/open-xchange/${x} @@ -261,6 +391,10 @@ } pkg_preinst(){ + #execute ox_setup from preinst(0) + ox_setup_tomcat + ox_setup 0 + # create user mailadmin, needed for mailsupport enewuser mailadmin -1 -1 /dev/null users _UID=`getent passwd mailadmin | awk -F : '{print $3}'` @@ -305,24 +439,22 @@ chgrp -R apache /var/open-xchange/* einfo + einfo " You have successfully installed Open-Xchange" einfo - einfo " ===========================================================" - einfo - einfo " You have successfully installed Open-Xchange" einfo - einfo " ===========================================================" - einfo - einfo " o FILE LOCATIONS" - einfo " 1. Configuration: /etc/open-xchange" - einfo " 2. HTML Files: /usr/share/open-xchange" - einfo - einfo " o STARTING and STOPPING the Open-Xchange" - einfo " /etc/init.d/openexchange start" - einfo " /etc/init.d/openexchange stop" - einfo " /etc/init.d/openexchange restart" + einfo " o STARTING and STOPPING Open-Xchange" + einfo " /etc/init.d/open-xchange start" + einfo " /etc/init.d/open-xchange stop" + einfo " /etc/init.d/open-xchange restart" einfo einfo "Execute the following command" - einfo "ebuild /var/db/pkg/${CATEGORY}/${PF}/${PF}.ebuild config" + + if has_version '<=sys-apps/portage-2.0.51*' ; then + einfo "ebuild /var/db/pkg/${CATEGORY}/${PF}/${PF}.ebuild config" + else + einfo "emerge --config ${CATEGORY}/${PN}" + fi + einfo "to setup the initial open-xchange environment." einfo @@ -355,7 +487,9 @@ } pkg_config() { - pkg_setup + ox_setup_tomcat + #execute ox_setup from pkg_config(1) + ox_setup 1 chown -R tomcat:tomcat ${ROOT}/etc/open-xchange @@ -364,115 +498,11 @@ find ${ROOT}/etc/open-xchange/groupware/sslcerts -name '*.pem' -exec chmod 440 {} \; fi - # Simple defaults - local OX_DBHOST=${OX_DBHOST-"localhost"} - local OX_DBNAME=${OX_DBNAME-"open_xchange"} - local OX_DBUSER=${OX_DBUSER-"open_xchange"} - local OX_DBPASS=${OX_DBPASS-"secret"} - local OX_ORG=${OX_ORG-"My Organization"} - local OX_DOMAIN=${OX_DOMAIN-"example.org"} - local OX_LDAPSERVER=${OX_LDAPSERVER-"localhost"} - local OX_BASEDN=${OX_BASEDN-"dc=example,dc=org"} - local OX_ROOTDN=${OX_ROOTDN-"cn=Manager,${OX_BASEDN}"} - local OX_ROOTPW=${OX_ROOTPW-"secret"} - # Guess base on the installed config - if [[ -e "${ROOT}/etc/open-xchange/admintools.conf" ]] ; then - local temp_var - echo "Installation of OX detected" - temp_var=$(get_oxvar DEFAULT_SQL_HOST) - [[ -n ${temp_var} ]] && OX_DBHOST=${temp_var} - - temp_var=$(get_oxvar DEFAULT_SQL_DB) - [[ -n ${temp_var} ]] && OX_DBNAME=${temp_var} - - temp_var=$(get_oxvar DEFAULT_SQL_USER) - [[ -n ${temp_var} ]] && OX_DBUSER=${temp_var} - - temp_var=$(get_oxvar DEFAULT_SQL_PASS) - [[ -n ${temp_var} ]] && OX_DBPASS=${temp_var} - - temp_var=$(get_oxvar ORGA) - [[ -n ${temp_var} ]] && OX_ORG=${temp_var} - - temp_var=$(get_oxvar BINDDN) - [[ -n ${temp_var} ]] && OX_ROOTDN=${temp_var} - - temp_var=$(get_oxvar BINDPW) - [[ -n ${temp_var} ]] && OX_ROOTPW=${temp_var} - - if [[ -e "${ROOT}/etc/open-xchange/groupware/ldap.conf" ]] ; then - # taken from admintools.conf self - temp_var=`grep -v '^#' ${ROOT}/etc/open-xchange/groupware/ldap.conf | grep -i BASE | head -n 1 | awk {'print $2'}` - [[ -n ${temp_var} ]] && OX_BASEDN=${temp_var} - fi - fi - - # Now asking the user - einfo "If values are correct just press enter else enter the new value" - - OX_DBHOST=$(get_user_config "${OX_DBHOST}" "Database Host") - OX_DBNAME=$(get_user_config "${OX_DBNAME}" "Database Name") - OX_DBUSER=$(get_user_config "${OX_DBUSER}" "Database User") - OX_DBPASS=$(get_user_config "${OX_DBPASS}" "Database User's Password") - OX_ORG=$(get_user_config "${OX_ORG}" "Organization") - OX_DOMAIN=$(get_user_config "${OX_DOMAIN}" "Domain") - OX_LDAPSERVER=$(get_user_config "${OX_LDAPSERVER}" "LDAP Server") - OX_BASEDN=$(get_user_config "${OX_BASEDN}" "LDAP Base DN") - OX_ROOTDN=$(get_user_config "${OX_ROOTDN}" "LDAP Root DN") - OX_ROOTPW=$(get_user_config "${OX_ROOTPW}" "LDAP Root Password") - - einfo "Finished - now writing config" - - # patching umin.war, somehow dirty - [[ -d "${T}/ox_war" ]] && rm -rf ${T}/ox_war - mkdir -p ${T}/ox_war - unzip ${ROOT}/${SERVLETDIR}/umin.war -d ${T}/ox_war - - sed -i "s|LDAP_SERVER=.*|LDAP_SERVER=${OX_LDAPSERVER}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - sed -i "s|LDAP_BASEDN=.*|LDAP_BASEDN=${OX_BASEDN}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - sed -i "s|SQL_SERVER_GROUPWARE=.*|SQL_SERVER_GROUPWARE=${OX_DBHOST}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - sed -i "s|SQL_SERVER_GROUPWARE_DATABASE_NAME=.*|SQL_SERVER_GROUPWARE_DATABASE_NAME=${OX_DBNAME}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - sed -i "s|SQL_SERVER_GROUPWARE_DATABASE_USERNAME=.*|SQL_SERVER_GROUPWARE_DATABASE_USERNAME=${OX_DBUSER}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - sed -i "s|SQL_SERVER_GROUPWARE_DATABASE_PASSWORD=.*|SQL_SERVER_GROUPWARE_DATABASE_PASSWORD=${OX_DBPASS}|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - sed -i "s|CSS_PATH=/cfintranet/css/stylesheet.css|CSS_PATH=/open-xchange/cfintranet/css/stylesheet.css|g" ${T}/ox_war/WEB-INF/classes/oxuserminconfig.properties - - cd ${T}/ox_war - zip -r -9 umin.war * - cp umin.war ${ROOT}/${SERVLETDIR} - cd ${ROOT} - rm -rf ${T}/ox_war - - ## now create configs with the right values - # starting with ldap - sed -i "s|@basedn@|${OX_BASEDN}|g" ${ROOT}/usr/share/open-xchange/init_ldap.ldif - sed -i "s|@domain@|${OX_DOMAIN}|g" ${ROOT}/usr/share/open-xchange/init_ldap.ldif - sed -i "s|@organization@|${OX_ORG}|g" ${ROOT}/usr/share/open-xchange/init_ldap.ldif - - local OX_BASEDC="`echo ${OX_BASEDN} | sed -n 's:dc=\([-A-Za-z_]*\).*:\1:p'|head -n 1`" - sed -i "s|@basedc@|${OX_BASEDC}|g" ${ROOT}/usr/share/open-xchange/init_ldap.ldif - - sed -i "s|ORGA=\".*\"|ORGA=\"${OX_ORG}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - sed -i "s|BINDDN=\".*\"|BINDDN=\"${OX_ROOTDN}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - sed -i "s|BINDPW=\".*\"|BINDPW=\"${OX_ROOTPW}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - sed -i "s|DEFAULT_SQL_HOST=\".*\"|DEFAULT_SQL_HOST=\"${OX_DBHOST}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - sed -i "s|DEFAULT_SQL_DB=\".*\"|DEFAULT_SQL_DB=\"${OX_DBNAME}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - sed -i "s|DEFAULT_SQL_USER=\".*\"|DEFAULT_SQL_USER=\"${OX_DBUSER}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - sed -i "s|DEFAULT_SQL_PASS=\".*\"|DEFAULT_SQL_PASS=\"${OX_DBPASS}\"|g" ${ROOT}/etc/open-xchange/admintools.conf - - # setup correct acis - sed -i "s|@basedn@|${OX_BASEDN}|g" ${ROOT}/etc/openldap/slapd.ox.inc + #set correct user rights for ldap chown ldap:ldap ${ROOT}/etc/openldap/slapd.ox.inc - # groupware : server.conf - for f in /etc/open-xchange/groupware/server.conf /etc/open-xchange/webmail/server.conf ; do - sed -i "s|NAS_CON_CLASS_NAME: jdbc:\(.*\)://.*|NAS_CON_CLASS_NAME: jdbc:\1://${OX_DBHOST}/${OX_DBNAME}|g" ${ROOT}/${f} - sed -i "s|NAS_CON_USER:.*|NAS_CON_USER: ${OX_DBUSER}|g" ${ROOT}/${f} - sed -i "s|NAS_CON_PASS:.*|NAS_CON_PASS: ${OX_DBPASS}|g" ${ROOT}/${f} - sed -i "s|NAS_CON_PASS:.*|NAS_CON_PASS: ${OX_DBPASS}|g" ${ROOT}/${f} - done - correctfilespool echo echo @@ -482,7 +512,7 @@ echo einfo "And set JAVA_OPTS in /etc/conf.d/tomcat5 (or tomcat-5):" - einfo "JAVA_OPTS=\"-Dopenexchange.propfile=${ROOT}/etc/open-xchange/groupware/system.properties\"" + einfo "JAVA_OPTS=\"-Dopenexchange.propfile=${ROOT}etc/open-xchange/groupware/system.properties\"" echo einfo "And setup /etc/conf.d/apache2" @@ -503,7 +533,7 @@ if use_postgres ; then einfo "echo \"CREATE USER ${OX_DBUSER} WITH PASSWORD '${OX_DBPASS}' CREATEDB NOCREATEUSER\" | psql -h localhost -U postgres template1 -f -" einfo "echo \"CREATE DATABASE ${OX_DBNAME} WITH OWNER=${OX_DBUSER} ENCODING='UNICODE'\" | psql -h localhost -U postgres template1 -f -" - einfo "psql -U ${OX_DBUSER} ${OX_DBNAME} < ${ROOT}/usr/share/open-xchange/init_database.sql" + einfo "psql -U ${OX_DBUSER} ${OX_DBNAME} < ${ROOT}usr/share/open-xchange/init_database.sql" einfo "/usr/sbin/dbinit_ox" else # COMMENT: we should tell them how to setup mysql also... @@ -551,7 +581,7 @@ echo einfo "HOWTO: Add a user" einfo "+++++++++++++++++" - einfo "/usr/sbin/adduser_ox --username=MYUSERNAME --password=MYPASSWORD --name=FORENAME --sname=SURENAME --maildomain=${OX_DOMAIN} --ox_timezone=\"Europe/Berlin\"" + einfo "/usr/sbin/adduser_ox --username=MYUSERNAME --passwd=MYPASSWORD --name=FORENAME --sname=SURENAME --maildomain=${OX_DOMAIN} --ox_timezone=\"Europe/Berlin\"" einfo "Now you can add the user to a group." einfo "/usr/sbin/addusertogroup_ox --user=MYUSERNAME --group=NEWGROUPNAME" echo