initial commit of file from CVS for smeserver-egroupware on Sat Sep 7 20:22:36 AEST 2024

This commit is contained in:
Trevor Batley 2024-09-07 20:22:36 +10:00
parent c0d389851e
commit 90e2008b1e
32 changed files with 39909 additions and 2 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
*.rpm
*.log
*spec-20*
*.tgz

21
Makefile Normal file
View File

@ -0,0 +1,21 @@
# Makefile for source rpm: smeserver-egroupware
# $Id: Makefile,v 1.1 2021/01/18 10:41:45 brianr Exp $
NAME := smeserver-egroupware
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

View File

@ -1,3 +1,20 @@
# smeserver-egroupware
# <img src="https://www.koozali.org/images/koozali/Logo/Png/Koozali_logo_2016.png" width="25%" vertical="auto" style="vertical-align:bottom"> smeserver-egroupware
SMEServer Koozali developed git repo for smeserver-egroupware smecontribs
SMEServer Koozali developed git repo for smeserver-egroupware smecontribs
## Wiki
<br />https://wiki.koozali.org/Egroupware/fr
<br />https://wiki.koozali.org/Egroupware
<br />https://wiki.koozali.org/Egroupware/de
<br />https://wiki.koozali.org/Server_eGroupWare
<br />https://wiki.koozali.org/Egroupware-repository
<br />https://wiki.koozali.org/Egroupware_repository
## Bugzilla
Show list of outstanding bugs: [here](https://bugs.koozali.org/buglist.cgi?component=smeserver-egroupware&product=SME%20Contribs&query_format=advanced&limit=0&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=CONFIRMED)
## Description
<br />*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.*
*Once it has been checked, then this comment will be deleted*
<br />

1
contriborbase Normal file
View File

@ -0,0 +1 @@
contribs10

8
createlinks Normal file
View File

@ -0,0 +1,8 @@
#!/usr/bin/perl -w
use esmith::Build::CreateLinks qw(:all);
templates2events("/etc/e-smith/sql/init/80egw_mysql.sql", qw(bootstrap-console-save post-install post-upgrade ));
templates2events("/etc/e-smith/sql/init/81egw_domain.sql", qw(bootstrap-console-save post-install post-upgrade ));
templates2events("/etc/e-smith/sql/init/81egw_default", qw(bootstrap-console-save post-install post-upgrade ));

View File

@ -0,0 +1 @@
reserved

View File

@ -0,0 +1 @@
egroupware

View File

@ -0,0 +1 @@
egwuser

View File

@ -0,0 +1 @@
on

View File

@ -0,0 +1 @@
eGroupWare

View File

@ -0,0 +1 @@
global

View File

@ -0,0 +1 @@
url

View File

@ -0,0 +1,35 @@
{
my $rec = $DB->get('egroupware')
|| $DB->new_record('egroupware', {type => 'service'});
my $pw = $rec->prop('DbPassword');
return "" if $pw;
if (not $pw or length($pw) < 25)
{
use MIME::Base64 qw(encode_base64);
$pw = "not set due to error";
if ( open( RANDOM, "/dev/urandom" ) )
{
my $buf;
if ( read( RANDOM, $buf, 25 ) != 25 )
{
warn("Short read from /dev/random: $!");
}
else
{
$pw = encode_base64($buf);
chomp $pw;
}
close RANDOM;
}
else
{
warn "Could not open /dev/urandom: $!";
}
$rec->set_prop('DbPassword', $pw);
}
}

0
root/etc/e-smith/events/.gitignore vendored Normal file
View File

View File

@ -0,0 +1 @@
PERMS=0540

View File

@ -0,0 +1 @@
PERMS=0540

View File

@ -0,0 +1 @@
PERMS=0540

View File

@ -0,0 +1,34 @@
# eGroupWare MySQL init template
#
# This files creates/updates eGroupWare's MySQL database
USE mysql;
CREATE DATABASE IF NOT EXISTS { $egroupware{DbName} };
REPLACE INTO user (
host,
user,
password)
VALUES (
'localhost',
'{ $egroupware{DbUser} }',
PASSWORD ('{ $egroupware{DbPassword} }'));
REPLACE INTO db (
host,
db,
user,
select_priv, insert_priv, update_priv, delete_priv,
create_priv, alter_priv, index_priv, drop_priv, create_tmp_table_priv,
grant_priv, lock_tables_priv, references_priv)
VALUES (
'localhost',
'{ $egroupware{DbName} }',
'{ $egroupware{DbUser} }',
'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', 'Y',
'N', 'Y', 'Y');
FLUSH PRIVILEGES;

View File

@ -0,0 +1,3 @@
#!/bin/sh
/usr/bin/mysql { $egroupware{DbName} } </usr/share/doc/eGroupWare-1.8.005/Sources/egroupware-1.8.005.sql

View File

@ -0,0 +1,17 @@
# eGroupWare MySQL init template
#
# This files updates eGroupWare's domain name
USE mysql;
USE { $egroupware{DbName} };
REPLACE INTO `egw_config` (`config_app`, `config_name`, `config_value`)
VALUES ('phpgwapi', 'hostname', '{$SystemName }.{ $DomainName }');
REPLACE INTO `egw_config` (`config_app`, `config_name`, `config_value`)
VALUES ('phpgwapi', 'mail_suffix', '{ $DomainName }' );
REPLACE INTO `egw_emailadmin` (`ea_profile_id`, `ea_smtp_server`, `ea_smtp_type`, `ea_smtp_port`, `ea_smtp_auth`, `ea_editforwardingaddress`, `ea_smtp_ldap_server`, `ea_smtp_ldap_basedn`, `ea_smtp_ldap_admindn`, `ea_smtp_ldap_adminpw`, `ea_smtp_ldap_use_default`, `ea_imap_server`, `ea_imap_type`, `ea_imap_port`, `ea_imap_login_type`, `ea_imap_tsl_auth`, `ea_imap_tsl_encryption`, `ea_imap_enable_cyrus`, `ea_imap_admin_user`, `ea_imap_admin_pw`, `ea_imap_enable_sieve`, `ea_imap_sieve_server`, `ea_imap_sieve_port`, `ea_description`, `ea_default_domain`, `ea_organisation_name`, `ea_user_defined_accounts`, `ea_order`, `ea_appname`, `ea_group`, `ea_smtp_auth_username`, `ea_smtp_auth_password`)
VALUES (1, 'localhost', 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'localhost', 2, 143, 'standard', NULL, '0', NULL, NULL, NULL, NULL, NULL, NULL, 'default profile (created by setup)', '{ $DomainName }', NULL, NULL, NULL, '', '0', '', '');

View File

@ -0,0 +1,107 @@
#--------------------------------------------------------------
# eGroupWare
#--------------------------------------------------------------
Alias /egroupware /usr/share/egroupware
RedirectMatch ^/.well-known/(caldav|carddav)$ /egroupware/groupdav.php/
# iOS 4.3+ calendar requires that to autodetect accounts
RedirectMatch ^(/principals/users/.*)$ /egroupware/groupdav.php$1
<Directory /usr/share/egroupware/>
{
my $egwsec = $egroupware{'HTTPS'} || "off";
if ($egwsec eq "off")
{
$OUT .= " # SSLRequireSSL on";
} else {
$OUT .= " SSLRequireSSL on";
}
}
AddType application/x-httpd-php .php .php3 .phtml
AddType text/xml .xml
Options FollowSymLinks ExecCGI
AllowOverride None
{
my $egw = $egroupware{'PublicAccess'} || "local";
if ($egw eq "local")
{
$OUT .= " Require ip $localAccess";
} else {
$OUT .= " Require all granted";
}
}
DirectoryIndex index.html index.php
AddHandler cgi-script .cgi
AddDefaultCharset Off
php_flag file_uploads on
php_flag log_errors on
php_flag magic_quotes_gpc off
php_flag magic_quotes_runtime off
php_flag register_globals off
php_flag short_open_tag on
php_flag track_vars on
php_flag display_errors off
# E_ALL & ~E_NOTICE & ~E_STRICT = 8191 - 8 - 2048 = 6135
# php_value error_reporting 6135
php_value error_reporting 'E_ALL & ~E_NOTICE'
php_value max_execution_time 90
php_value mbstring.func_overload 7
php_value memory_limit 128M
php_value session.gc_maxlifetime 14400
php_value session.save_path /usr/share/egroupware_sess
php_value include_path .:/usr/share/pear
php_value open_basedir /usr/share/egroupware:/var/lib/egroupware:/usr/share/pear:/usr/bin/zip:/usr/share/jpgraph:/usr/bin/tnef:/usr/bin/aspell:/usr/share/fonts:/usr/share/egroupware_sess:/usr/share/egroupware_tmp
php_admin_value upload_tmp_dir /usr/share/egroupware_tmp
php_value upload_max_filesize 65M
php_value max_input_vars 3000
<Files ~ "\.inc\.php$">
Require all denied
</Files>
</Directory>
<Directory /usr/share/egroupware/phpsysinfo/>
php_value open_basedir /
</Directory>
<Directory /usr/share/egroupware/gallery/>
php_admin_value upload_tmp_dir /usr/share/egroupware_tmp
php_admin_value open_basedir /usr/share/egroupware:/var/lib/egroupware:/tmp:/usr/share/pear:/usr/bin:/bin:/usr/share/egroupware_tmp
</Directory>
<Location /egroupware/icalsrv.php>
Script PUT /opt/egroupware/html/icalsrv.php
AddHandler ical/ics .ics
Action ical/ics /opt/egroupware/html/icalsrv.php
{
my $egw = $egroupware{'PublicAccess'} || "local";
if ($egw eq "local")
{
$OUT .= " Require ip $localAccess";
} else {
$OUT .= " Require all granted";
}
}
</Location>
<Location /egroupware/rpc.php>
php_value mbstring.func_overload 0
{
my $egw = $egroupware{'PublicAccess'} || "local";
if ($egw eq "local")
{
$OUT .= " Require ip $localAccess";
} else {
$OUT .= " Require all granted";
}
}
</Location>
<Location /egroupware>
php_admin_value mbstring.func_overload 7
php_value display_errors Off
</Location>
#--------------------------------------------------------------

View File

@ -0,0 +1,12 @@
{
if ($port eq "80")
{
my $egwsec = $egroupware{'HTTPS'} || "off";
if ($egwsec eq "off")
{ $OUT = ' #'; }
else
{ $OUT = ' RewriteRule ^/egroupware(/.*|$) https://%{HTTP_HOST}/egroupware$1 [L,R]'; }
}
else
{ $OUT = ' #'; }
}

View File

@ -0,0 +1,342 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
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 2 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, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

View File

@ -0,0 +1,28 @@
#!/bin/sh
# Use this file to finish eGroupware removal ONLY if you don't want to keep it on your system.
clear
echo "WARNING!!!"
echo "This script will delete:"
echo " - eGroupware MySQL database"
echo " - eGroupware MySQL User"
echo " - eGroupware DB entries..."
echo " - All Install files"
echo -n "ARE YOU SURE YOU WANT TO DELETE PERMANENTLY EGROUPWARE? (y/n) [n] "
read del
if [ "$del" = "y" -o "$del" = "Y" ]; then
echo "Deleting MySQL database..."
mysql -u root -e "DROP DATABASE egroupware"
echo "Deleting MySQL User..."
mysql -u root -e "REVOKE ALL PRIVILEGES ON egroupware.* FROM 'egwuser'@'localhost';"
mysql -u root -e "DROP USER egwuser@localhost;"
echo "Removing SME DB entries..."
/sbin/e-smith/config delete egroupware
echo "Removing Install files..."
rm -rf /usr/share/egroupware
rm -rf /usr/share/egroupware_sess
rm -rf /usr/share/egroupware_tmp
rm -rf /var/lib/egroupware
echo "Done!"
rm -f /root/eGW-Full-Uninstall.sh
fi

View File

@ -0,0 +1,194 @@
<?php
/*
* Gallery - a web based photo album viewer and editor
* Copyright (C) 2000-2007 Bharat Mediratta
*
* 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 2 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, write to the Free Software
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
/*
* When display_errors is enabled, PHP errors are printed to the output.
* For production web sites, you're strongly encouraged to turn this feature off,
* and use error logging instead.
* During development, you should set the value to true to ensure that you notice
* PHP warnings and notices that are not covered in unit tests (e.g. template issues).
*/
@ini_set('display_errors', 0);
/*
* Prevent direct access to config.php.
*/
if (!isset($gallery) || !method_exists($gallery, 'setConfig')) {
exit;
}
/*
* As a security precaution, we limit access to Gallery's test suite
* to those people who know the password, below. Example:
*
* $gallery->setConfig('setup.password', 'A PASSWORD');
*
* Choose something random and enter it in plain text. You don't have to
* remember it because you can always refer to this file. You'll only be asked
* for this password when you run Gallery's lib/tools code. We don't provide a
* default password because we want you to choose one of your own (which
* lessens the chance that you'll get hacked).
*/
$gallery->setConfig('setup.password', '');
/*
* In order for Gallery to manage your data, you must provide it with
* a directory that it can write to. Gallery is a webserver application,
* so the directory that you create must be writeable by the
* webserver, not just by you.
*
* Create an empty directory anywhere you please. Gallery will fill this
* directory with its own files (that you shouldn't mess with). This directory
* can be anywhere on your filesystem. For security purposes, it's better
* if the directory is not accessible via your webserver (ie, it should
* not be in your DocumentRoot). If you *do* make it available via your
* web server then you probably won't have any security for your data files.
*
* Don't make this the same as your gallery directory!
*/
$gallery->setConfig('data.gallery.base', '/var/lib/egroupware/default/files/g2data/');
/*
* Gallery can store its data in multiple different back ends. Currently we
* support MySQL, PostgreSQL and Oracle. Enter the hostname where your
* database lives, and the username and password you use to connect to it.
*
* You must specify the name of a database that already exists. Gallery will
* not create the database for you, because it's very difficult to do that in
* a reliable, database-neutral fashion. The user that you use should have
* the following permissions:
*
* SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER
*
* You must specify a table and column prefix. This is a few characters that
* is prepended to any table or column name to avoid conflicting with reserved
* words in the database or other tables you have in the same database. In
* fact, it's fine to let Gallery uses the same database as other applications
* (including other instances of Gallery itself); the prefix is enough
* to distinguish Gallery's tables from other applications.
*
* We provide some reasonable default prefixes below. If you modify these
* after Gallery has created its various tables, it will stop working until
* you modify it back.
*
* The possible database types are:
* mysqlt MySQL (3.23.34a and newer)
* mysqli MySQL (4.1 and newer) with PHP mysqli extension
* mysql Older MySQL (no transactions)
* postgres7 PostgreSQL 7.x and newer
* postgres PostgreSQL 6.x (not tested)
* oci8po Oracle 9i and newer
* db2 IBM DB2 9 and newer
* ado_mssql Microsoft SQL Server (2005 and newer)
*/
$storeConfig['type'] = 'mysqlt';
$storeConfig['hostname'] = 'localhost';
$storeConfig['database'] = 'egroupware';
$storeConfig['username'] = 'egwuser';
$storeConfig['password'] = 'egwpass';
$storeConfig['tablePrefix'] = 'g2_';
$storeConfig['columnPrefix'] = 'g_';
$storeConfig['usePersistentConnections'] = false;
$gallery->setConfig('storage.config', $storeConfig);
/*
* Put Gallery into debug mode. Useful for tracking down problems with the
* application. Not a good idea to leave it this way, though. Possible debug
* choices are: 'buffered', 'logged', 'immediate' or false. Don't forget to
* use the quotes for any value but false!
*
* If you choose 'immediate', you'll see debugging information as soon as
* Gallery generates it. This can be useful at times, but it'll screw up some
* parts of the application flow.
*
* If you choose 'buffered', Gallery will display debug information in a table
* as part of the application. You won't necessarily get *all* the debug
* information but the application should work normally.
*
* If you choose 'logged', you must also specify:
* $gallery->setDebugLogFile('/path/to/writeable/file');
* and all debug output will get printed into that file. You'll get all the
* debug output and the application will work normally.
*
* For best debugging output use this line:
*
* $gallery->setDebug('buffered');
*
*/
$gallery->setDebug(false);
/*
* Profiling mode. You can enable profiling for different parts of G2 to get an
* idea of what's fast and slow. Right now the only options are to enable SQL
* profiling:
*
* $gallery->setProfile(array('sql'));
*
*/
$gallery->setProfile(false);
/*
* Maintenance mode. You can disable access to the site for anyone but
* site administrators by setting this flag. Set value below to:
* true (without quotes) - to use a basic notification page; themed
* view with admin login link when codebase is up to date, but a
* plain unstyled page when codebase has been updated but upgrader
* has not yet been run.
* url (with quotes) - provide a url where requests are redirected in
* either case described above. Example: '/maintenance.html'
* false (without quotes) - maintenance mode off
*/
$gallery->setConfig('mode.maintenance', false);
/*
* Embedded mode. You can disable direct access to main.php (standalone G2)
* by setting this flag. Set value below to:
* true (without quotes) - block direct requests
* url (with quotes) - redirect requests to this url
* false (without quotes) - allow direct requests
*/
$gallery->setConfig('mode.embed.only', false);
/*
* Allow a particular IP address to access the session (it still must know the
* session id) even though it doesn't match the address/user agent that created
* the session. Put the address of validator.w3.org ('133.27.228.132') here to allow
* validation of non-public Gallery pages from the links at the bottom of the page.
*/
$gallery->setConfig('allowSessionAccess', false);
/*
* URL of Gallery codebase; required only for multisite install.
*/
$gallery->setConfig('galleryBaseUrl', '');
/*
* This setting can be used to override Gallery's auto-detection of the domain-name,
* protocol (http/https), URL path, and of the file & query string.
* Most users can leave this empty. If the server is misconfigured or for very special
* setups, this setting can be quite handy.
* Examples (the positions of the slashes ('/') are important):
* override the path: $gallery->setConfig('baseUri', '/another/path/');
* override the host + path: $gallery->setConfig('baseUri', 'example.com/gallery2/');
* override the protocol + host + path + file:
* $gallery->setConfig('baseUri', 'https://example.com:8080/gallery2/index.php');
*/
$gallery->setConfig('baseUri', '');
?>

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,126 @@
<?php
/**
* eGroupWare - configuration file
*
* Use eGroupWare's setup to create or edit this configuration file.
* You do NOT need to copy and edit this file manually!
*
* @link http://www.egroupware.org
* @license http://opensource.org/licenses/gpl-license.php GPL - GNU General Public License
* @author RalfBecker@outdoor-training.de
* (This file was originaly written by Dan Kuykendall)
* @version $Id: header.inc.php.template 33300 2010-12-06 08:39:04Z leithoff $
*/
// allow to migrate from phpgw_info to egw_info
if (!isset($GLOBALS['egw_info']) || in_array($GLOBALS['egw_info']['flags']['currentapp'],array('jinn','mydms','tts')))
{
if (!isset($GLOBALS['egw_info']))
{
$GLOBALS['egw_info'] =& $GLOBALS['phpgw_info'];
}
else
{
$GLOBALS['phpgw_info'] =& $GLOBALS['egw_info'];
}
$GLOBALS['egw_info']['flags']['phpgw_compatibility'] = true;
}
// eGW install dir, need to be changed if you copy the server to an other directory
define('EGW_SERVER_ROOT','/usr/share/egroupware');
// other pathes depending on the one above
define('EGW_INCLUDE_ROOT',EGW_SERVER_ROOT);
define('EGW_API_INC',EGW_INCLUDE_ROOT.'/phpgwapi/inc');
// who is allowed to make changes to THIS config file via eGW's setup
$GLOBALS['egw_info']['server']['header_admin_user'] = 'header-admin';
$GLOBALS['egw_info']['server']['header_admin_password'] = '{crypt}$2a$12$PNSICxoAOCqCg44GesUvM.uY7jT5cZ7jA0I5VWwPZGN6QpADqiROK';
// restrict the access to setup to certain (comma separated) IPs or domains
$GLOBALS['egw_info']['server']['setup_acl'] = '';
/* eGroupWare domain-specific db settings */
$GLOBALS['egw_domain']['default'] = array(
'db_host' => 'localhost',
'db_port' => '3306',
'db_name' => 'egroupware',
'db_user' => 'egwuser',
'db_pass' => 'egwpass',
// Look at the README file
'db_type' => 'mysqli',
// This will limit who is allowed to make configuration modifications
'config_user' => 'config-admin',
'config_passwd' => '{crypt}$2a$12$Ci3HBJfWrvBMEtBpYMCnqelSaBZ1FOTEhwJp0.0xgltVjVrnVH7tS'
);
/*
** If you want to have your domains in a select box, change to True
** If not, users will have to login as user@domain
** Note: This is only for virtual domain support, default domain users (that's everyone
** form the first domain or if you have only one) can login only using just there loginid.
*/
$GLOBALS['egw_info']['server']['show_domain_selectbox'] = false;
$GLOBALS['egw_info']['server']['db_persistent'] = true;
/*
** used session handler: egw_session_files works for all build in php session handlers
** other handlers (like egw_session_memcache) can be enabled here
*/
$GLOBALS['egw_info']['server']['session_handler'] = 'egw_session_files';
/* Select which login template set you want, most people will use idots */
$GLOBALS['egw_info']['login_template_set'] = 'idots';
/* This is used to control mcrypt's use */
$GLOBALS['egw_info']['server']['mcrypt_enabled'] = false;
/*
** This is a random string used as the initialization vector for mcrypt
** feel free to change it when setting up eGrouWare on a clean database,
** but you must not change it after that point!
** It should be around 30 bytes in length.
*/
$GLOBALS['egw_info']['server']['mcrypt_iv'] = 'N1jKhg3q8X9HoXDHZeQJPvG9z4l5w3';
if(!isset($GLOBALS['egw_info']['flags']['nocachecontrol']) || !$GLOBALS['egw_info']['flags']['nocachecontrol'])
{
header('Cache-Control: no-cache, must-revalidate'); // HTTP/1.1
header('Pragma: no-cache'); // HTTP/1.0
}
else
{
// allow caching by browser
session_cache_limiter('private_no_expire');
}
$GLOBALS['egw_info']['flags']['page_start_time'] = microtime(true);
define('DEBUG_API', False);
define('DEBUG_APP', False);
include(EGW_SERVER_ROOT.'/phpgwapi/setup/setup.inc.php');
$GLOBALS['egw_info']['server']['versions']['phpgwapi'] = $setup_info['phpgwapi']['version'];
$GLOBALS['egw_info']['server']['versions']['current_header'] = $setup_info['phpgwapi']['versions']['current_header'];
unset($setup_info);
$GLOBALS['egw_info']['server']['versions']['header'] = '1.29';
if(!isset($GLOBALS['egw_info']['flags']['noapi']) || !$GLOBALS['egw_info']['flags']['noapi'])
{
if (substr($_SERVER['SCRIPT_NAME'],-7) != 'dav.php') // dont do it for webdav/groupdav, as we can not safely switch it off again
{
ob_start(); // to prevent error messages to be send before our headers
}
require_once(EGW_API_INC . '/functions.inc.php');
}
else
{
require_once(EGW_API_INC . '/common_functions.inc.php');
}
/*
Leave off the final php closing tag, some editors will add
a \n or space after which will mess up cookies later on
*/

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

@ -0,0 +1,91 @@
<?php
// phpSysInfo - A PHP System Information Script
// http://phpsysinfo.sourceforge.net/
// 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 2
// 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, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
// $Id: config.php 21209 2006-04-06 13:38:25Z ralfbecker $
// if $webpath set to an value it will be possible to include phpsysinfo with a simple include() statement in other scripts
// but the structure in the phpsysinfo directory can't be changed
// $webpath specifies the absolute path when you browse to the phpsysinfo page
// e.g.: your domain www.yourdomain.com
// you put the phpsysinfo directory at /phpsysinfo in the webroot
// then normally you browse there with www.yourdomain.com/phpsysinfo
// now you want to include the index.php from phpsysinfo in a script, locatet at /
// then you need to set $webpath to /phpsysinfo/
// if you put the phpsysinfo folder at /tools/phpsysinfo $webpath will be /tools/phpsysinfo/
// you don't need to change it, if you don't include it in other pages
// so default will be fine for everyone
$webpath = "";
// define the default lng and template here
$default_lng=$GLOBALS['egw_info']['user']['preferences']['common']['lang'];
$default_template='aq'; // looks best in idots ;-)
// hide language and template picklist
// false = display picklist
// true = do not display picklist
$hide_picklist = false;
// define the motherboard monitoring program here
// we support four programs so far
// 1. lmsensors http://www2.lm-sensors.nu/~lm78/
// 2. healthd http://healthd.thehousleys.net/
// 3. hwsensors http://www.openbsd.org/
// 4. mbmon http://www.nt.phys.kyushu-u.ac.jp/shimizu/download/download.html
// 5. mbm5 http://mbm.livewiredev.com/
// $sensor_program = "lmsensors";
// $sensor_program = "healthd";
// $sensor_program = "hwsensors";
// $sensor_program = "mbmon";
// $sensor_program = "mbm5";
$sensor_program = "";
// show mount point
// true = show mount point
// false = do not show mount point
$show_mount_point = true;
// show bind
// true = display filesystems mounted with the bind options under Linux
// false = hide them
$show_bind = true;
// Hide mount(s). Example:
// $hide_mounts[] = '/home';
// if the hddtemp program is available we can read the temperature, if hdd is smart capable
// !!ATTENTION!! hddtemp might be a security issue
// $hddtemp_avail = "tcp"; // read data from hddtemp deamon (localhost:7634)
// $hddtemp_avail = "suid"; // read data from hddtemp programm (must be set suid)
// show a graph for current cpuload
// true = displayed, but it's a performance hit (because we have to wait to get a value, 1 second)
// false = will not be displayed
$loadbar = true;
// additional paths where to look for installed programs
// e.g. $addpaths = array('/opt/bin', '/opt/sbin');
$addpaths = array();
// display error messages at the top of the page
// $showerrors = true; // show the errors
// $showerrors = false; // don't show the errors
$showerrors = false;
?>

View File

View File

385
smeserver-egroupware.spec Normal file
View File

@ -0,0 +1,385 @@
# $Id: smeserver-egroupware.spec,v 1.2 2022/07/30 04:46:38 jpp Exp $
# Authority: cool34000
# Name: Sylvain Gomez
%define name smeserver-egroupware
%define version 1.8.6
%define release 4
%define rpmver 4.0.4
Summary: eGroupware web application for SME >=8
Name: %{name}
Version: %{version}
Release: %{release}%{?dist}
License: GPL
Group: Web/Application
Source: %{name}-%{version}.tar.xz
URL: http://www.egroupware.org
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot
BuildArchitectures: noarch
BuildRequires: e-smith-devtools
Requires: e-smith-base, e-smith-release >= 10
Requires: eGroupware >= 1.8
Requires: eGroupware-gallery >= 1.8
Requires: e-smith-apache >= 2.6.0-19
Requires: smeserver-php >= 3.0.0-43
%description
This RPM is an unofficial addon for the SME Server 10.x and above.
eGroupWare is a free enterprise ready groupware software for your network.
It enables you to manage contacts, appointments, todos and many more for your whole business.
eGroupWare is a groupware server. It comes with a native web-interface which allowes to access
your data from any platform all over the planet. Moreover you also have the choice to access the
eGroupWare server with your favorite groupware client (Kontact, Evolution, Outlook) and also with
your mobile or PDA via SyncML.
eGroupWare is international. At the time, it supports more than 25 languages including rtl support.
eGroupWare is platform independent. The server runs on Linux, Mac, Windows and many more other
operating systems. On the client side, all you need is a internetbrowser such as Firefox,
Konqueror, Internet Explorer and many more.
https://yourdomain.com/egroupware
%changelog
* Sat Sep 07 2024 cvs2git.sh aka Brian Read <brianr@koozali.org> 1.8.6-4.sme
- Roll up patches and move to git repo [SME: 12338]
* Sat Sep 07 2024 BogusDateBot
- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
by assuming the date is correct and changing the weekday.
Thu Jan 23 2007 --> Thu Jan 18 2007 or Tue Jan 23 2007 or Thu Jan 25 2007 or ....
Thu Jun 17 2007 --> Thu Jun 14 2007 or Sun Jun 17 2007 or Thu Jun 21 2007 or ....
Thu Jun 19 2007 --> Thu Jun 14 2007 or Tue Jun 19 2007 or Thu Jun 21 2007 or ....
* Sat Jul 30 2022 Jean-Philippe Pialasse <tests@pialasse.com> 1.8.6-3.sme
- update to httpd 2.4 syntax [SME: 12044]
- waiting for SME10 version
* Mon Sep 01 2014 stephane de Labrusse <stephdl@de-laabrusse.fr> 1.8.6-2.sme
- Added patch Patch2 forgotten by the script of JP Pialasse
* Mon Jun 16 2014 JP Pialasse <tests@pialasse.com> 1.8.6-1.sme
- initial import to SME9 contribs
* Sun Dec 15 2013 JP Pialasse <tests@pialasse.com> 1.8.005-5.sme
- fix hostname [SME: 5127]
* Fri Dec 13 2013 JP Pialasse <tests@pialasse.com> 1.8.005-4.sme
- fixed deletion script see [SME: 8040] comment 25
* Thu Dec 12 2013 JP Pialasse <tests@pialasse.com> 1.8.005-3.sme
- upgrade to eGroupware 1.8 using opensuse rpm for Centos5
- built for eGroupware-1.8.005.20131007
- see [SME: 8040]
- 2 revert back some configuration in spec
- will need to move to an event
- 3 fix tmp and sess directory
- fix default g2data path
* Tue Jun 04 2013 JP Pialasse <tests@pialasse.com> 1.4.004-2.sme
- fix upload dir not defined [SME 7653]
- updated e-smith-release >8
* Mon May 12 2008 Sylvain Gomez <sylvaingomez@free.fr>
- [1.4.004-1] Update to new version 1.4.004
Update eGroupWare and Gallery to latest available versions
- Apache template modified for FCKeditor (thanks to 'atariblau')
- Default database updated
* Fri Oct 26 2007 Sylvain Gomez <sylvaingomez@free.fr>
- [1.4.002-3] Improving SME integration
MySQL init templates added
- Events added for DomainName changes
- MySQL importation method changed
- Security is now improved on header.inc.php after an update
- Gallery2 added (but not installed by default)
- Type changed from service to url
- Fudforum obsolete lines commented in Apache template
* Sun Oct 21 2007 Sylvain Gomez <sylvaingomez@free.fr>
- [1.4.002-2] Improving upgradability&MySQL DataBase
MySQL DataBase rebuilt in utf-8 (new installations only!)
- Fixed Spanish lang in login page (new installations only!)
- Fixed MySQL rights after when updating from older version
- Fixed files not upgrading from v1.4.001 to v1.4.002
- Security is now reset when updating
- phpSysInfo security improved in Apache template
- Generating shorter passwords (new installations only!)
- Description text updated
- More comments at the install stage
* Sat Oct 20 2007 Sylvain Gomez <sylvaingomez@free.fr>
- [1.4.002-1] Improving upgradability&RPM structure
BETA VERSION
- RPM renamed to smeserver-egroupware-1.4.002
- Fixed RPM structure
- Fixed iCal bug installing old version 1.4.001
- Improved Sitemgr (create link instead of moving the folder - new installations only!)
- MySQL database rebuilt from scratch
- Updating the RPM is now possible
- Security improved on header.inc.php (new installations only!)
- Some useless items are now deleted
- phpSysInfo default configuration review (config.php+SME styled icon)
* Wed Oct 17 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.4-10] Fixing little bugs and better languages support
- Fixed Apache not restarting correctly when uninstalling
- Fixed security on Header.inc.php
* Mon Oct 15 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.4-9] Changing to new version 1.4.002
Fixed HTTPS redirection (Thanks to Sylvain Gomez)
- Improved Apache template for better security
- Improved integration in SME (https option; PublicAccess local/global - global&https is default)
- Cron job added
* Tue Jul 10 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.4-8] Preparing xmlrpc for synctools; integrate php5 as cgi-bin moduls
* Fri Jun 29 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.4-7] Changing to utf-8
* Tue Jun 19 2007 Dietmar Berteld <dietmar@berteld.com>
Thu Jun 19 2007 --> Thu Jun 14 2007 or Tue Jun 19 2007 or Thu Jun 21 2007 or ....
- [1.4-6] Fixing MySQL errors
* Sun Jun 17 2007 Dietmar Berteld <dietmar@berteld.com>
Thu Jun 17 2007 --> Thu Jun 14 2007 or Sun Jun 17 2007 or Thu Jun 21 2007 or ....
- [1.4-5] Fixing max_allowed_packet issue
* Thu Jun 14 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.4-4] New basis eGW 1.4, delete php5-based sync-tool
* Wed May 30 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.2.106-3] Automatic domain configuration and integrate php5-based sync-tool
* Tue May 29 2007 Dietmar Berteld <dietmar@berteld.com>
- [1.2.106-2] Change MySQL-creating method to SME and fixing bugs
* Tue Jan 23 2007 Dietmar Berteld <dietmar@berteld.com>
Thu Jan 23 2007 --> Thu Jan 18 2007 or Tue Jan 23 2007 or Thu Jan 25 2007 or ....
- [1.2.106-1] Initial version
%prep
%setup
%build
# Creating templates2adjust
perl createlinks
%install
rm -rf $RPM_BUILD_ROOT
(cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT)
rm -f %{name}-%{version}-filelist
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \
|grep -v egroupware_tmp |grep -v egroupware_sess \
> %{name}-%{version}-filelist
echo "%dir %attr(0755,www,www) /usr/share/egroupware_tmp">> %{name}-%{version}-filelist
echo "%dir %attr(0755,www,www) /usr/share/egroupware_sess">> %{name}-%{version}-filelist
%clean
rm -rf $RPM_BUILD_ROOT
%pre
# Checking if eGW files are present before updating
# If present, installation files + MySQL DB are saved
UPDATE=$(ls /opt | grep -c egroupware)
case $UPDATE in
0)
echo "Installing eGroupware... Please wait!"
;;
*)
echo "Updating eGroupware... Please wait!"
# echo "Backup folder: /opt/eGW_RPM_BACKUP"
mkdir -p /opt/eGW_RPM_BACKUP
# cd /opt
# echo "Backing up installation files..."
# tar -czf /opt/eGW_RPM_BACKUP/egroupware.tar.gz egroupware
echo "Backing up MySQL database..."
mysqldump egroupware > /opt/eGW_RPM_BACKUP/egroupware$(date +%Y-%m-%d).sql
/sbin/e-smith/db configuration show egroupware > /opt/eGW_RPM_BACKUP/config.txt
;;
esac
%post
# Initializing SME DB
echo "Initializing SME DB"
/etc/e-smith/events/actions/initialize-default-databases 2>/dev/null
echo " "
# Variables
DOMAIN=$(/sbin/e-smith/db configuration get DomainName)
EGPASS=$(/sbin/e-smith/db configuration getprop egroupware DbPassword)
UPDATE=$(ls /usr/share/ | grep -c egroupware)
#echo "Decompressing files..."
#mkdir -p /opt/egroupware/{files/g2data,backup,tmp}
#tar xzf /usr/share/doc/eGroupWare-1.4.004/Sources/eGroupWare-1.4.004.tar.gz -C /opt/egroupware
#tar xzf /usr/share/doc/eGroupWare-1.4.004/Sources/eGroupWare-egw-pear-1.4.004.tar.gz -C /opt/egroupware
#tar xzf /usr/share/doc/eGroupWare-1.4.004/Sources/eGroupWare-gallery-1.4.004.tar.gz -C /opt/egroupware
echo "Preparing phpSysInfo..."
cp -f /usr/share/doc/eGroupWare-1.8.005/Sources/phpSysInfo/config.php /usr/share/egroupware/phpsysinfo/
cp -f /usr/share/doc/eGroupWare-1.8.005/Sources/phpSysInfo/Redhat.png /usr/share/egroupware/phpsysinfo/images/
#echo "Cleaning Install..."
#rm -rf /opt/egroupware/egroupware
#rm -rf /opt/egroupware/html/debian
#rm -f /opt/egroupware/html/.htaccess
#echo "Setting file access rules:"
#cd /opt/egroupware
#echo " - Changing owner recursivly..."
#chown -R root:root /opt/egroupware/html
#echo " - Recursive CHMOD 755 on folders..."
#find html -type d -exec chmod 755 {} \;
#echo " - Recursive CHMOD 644 on files..."
#find html -type f -exec chmod 644 {} \;
#echo " - Customization of CHMOD for a few folders..."
#chmod 770 /opt/egroupware/backup
#chmod 770 /opt/egroupware/files
#chmod 770 /opt/egroupware/files/g2data
#chmod 770 /opt/egroupware/tmp
#chown www:www /opt/egroupware/backup
#chown www:www /opt/egroupware/files
#chown www:www /opt/egroupware/files/g2data
#chown www:www /opt/egroupware/tmp
# fixed this one adding .php, not sure if still necessary
#if [ "$UPDATE" = "0" ] ; then
# echo "Preparing Site-Mgr..."
# cd /usr/share/egroupware
# ln -s sitemgr/sitemgr-link.php
#fi
echo "Preparing header.inc.php..."
# if first install
if [ "$1" = "1" ] ; then
# 0)
sed 's.egwpass.'$EGPASS'.g' /usr/share/doc/eGroupWare-1.8.005/Sources/header.inc.php > /usr/share/egroupware/header.inc.php
echo " done!"
fi
# *) mv -f /opt/egroupware/html/header.inc.php /opt/egroupware/ 2>/dev/null ;;
#esacc
#chown www:www /opt/egroupware/header.inc.php
#chmod 640 /opt/egroupware/header.inc.php
#cd /opt/egroupware/html
#ln -s ../header.inc.php 2>/dev/null
echo " "
# the integration is complete Ithink now.....
echo "Preparing Gallery2..."
if [ -f /usr/share/egroupware/gallery/gallery2/config.php ] ; then
touch /usr/share/egroupware/gallery/gallery2/config.php
else
sed 's.egwpass.'$EGPASS'.g' /usr/share/doc/eGroupWare-1.8.005/Sources/Gallery2/config.php > /usr/share/egroupware/gallery/gallery2/config.php
fi
chmod 640 /usr/share/egroupware/gallery/gallery2/config.php
chown www:www /usr/share/egroupware/gallery/gallery2/config.php
echo " "
### this one will be done by event
echo "MySQL installation:"
#if [ "$UPDATE" = "0" ] ; then
# cp /usr/share/doc/eGroupWare-1.4.004/Sources/81egw_database.sql /etc/e-smith/sql/init/
#fi
/sbin/e-smith/expand-template /etc/e-smith/sql/init/80egw_mysql.sql
/sbin/e-smith/expand-template /etc/e-smith/sql/init/81egw_default
/sbin/e-smith/expand-template /etc/e-smith/sql/init/81egw_domain.sql
/etc/rc.d/init.d/mysql.init start
echo " "
echo "Applying modifications to services..."
/sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf
/etc/rc7.d/S86httpd-e-smith sigusr1
/etc/rc.d/init.d/crond restart
echo " "
echo "-------------------------------------------------------------------------------"
case $UPDATE in
0) echo "eGroupWare Installation completed, you must finish the installation!" ;;
*) echo "eGroupWare update completed, you must finish the update!" ;;
esac
echo "Please go to https://$DOMAIN/egroupware/setup"
echo "-------------------------------------------------------------------------------"
echo "For more details, see http://wiki.contribs.org/Egroupware"
echo " "
case $UPDATE in
0)
echo "Reminder:"
echo " - Website open globally"
echo " - https mode enabled with automatic redirection"
echo " - Header-Admin-Login = header-admin, pw = 'admin'"
echo " - Config-Admin-Login = config-admin, pw = 'admin'"
echo " - SME users can login with their user and password (mail auth. method)"
echo " "
echo "Start https://$DOMAIN/egroupware/setup"
echo "Login with the Config-Admin (user=config-admin, pw=admin)"
echo "ToDo's:"
echo " - Create eGroupWare's admin account with an existing SME account/password"
echo " - Configure Gallery2 if needed"
;;
*)
echo "Reminder:"
echo " - The old install was backed up and can be found in /opt/eGW_RPM_BACKUP"
echo " PLEASE MOVE THIS DIRECTORY TO A SAFE PLACE!!!"
echo " - Start https://$DOMAIN/egroupware/setup"
echo " - Login with your existing 'Config-Admin' creditentials"
echo " - Finish the upgrade if needed"
echo " - Configure Gallery2 if needed"
;;
esac
echo " "
echo " "
echo "Current configuration:"
/sbin/e-smith/config show egroupware
echo " "
echo "Following DB parameters are allowed:"
echo " # config setprop egroupware HTTPS on/off"
echo " # config setprop egroupware PublicAccess local/global"
echo " "
echo "Don't forget to apply modifications with following commands:"
echo " # expand-template /etc/httpd/conf/httpd.conf"
echo " # service httpd-e-smith restart"
echo " "
echo "For more details, see http://wiki.contribs.org/Egroupware"
echo "-------------------------------------------------------------------------------"
%preun
if [ $1 = 0 ] ; then
mv /usr/share/doc/eGroupWare-1.8.005/Sources/DO_NOT_USE_OR_DELETE/eGW-Full-Uninstall.sh /root/
fi
%postun
if [ $1 = 0 ] ; then
echo "Restarting services..."
/sbin/e-smith/expand-template /etc/httpd/conf/httpd.conf
/etc/rc7.d/S86httpd-e-smith sigusr1
/etc/rc.d/init.d/crond restart
echo " "
echo " "
echo "Uninstallation finished!"
echo " "
echo "If you want to completly remove eGroupWare"
echo "(installation files and MySQL user+database)"
echo "please issue the following command at the prompt:"
echo "# sh /root/eGW-Full-Uninstall.sh"
fi
%files -f %{name}-%{version}-filelist
%defattr(-,root,root)