* Package scripts that are shipped by upstream in their binary download * Includes setup scripts (setup-seafile.sh to use SQLite, setup-seafile-mysql.{sh,py} to use MySQL) and control scripts (seafile.sh, seahub.sh) * Does not include seafile-admin, which is not shipped in upstream's binary download. Combined with the fact that it hasn't been updated to Python 3 suggests the script has been abandoned. * Replace previous init scripts with a simplified script * Previous init scripts (seafile.init, seahub.init) were modified from older versions of seafile.sh and seahub.sh, but they haven't kept up with changes to upstream's scripts * New init script (seafile-server.init) start/stops both Seafile and Seahub (there is no need to control them separately) by calling upstream's control scripts * Replace previous package config file with new config file * Options in previous config file (seafile.conf) were mainly for using Seahub in FastCGI mode. FastCGI was deprecated in Django 1.7 and removed in 1.9; upstream's control script will only start Seahub using Gunicorn. (Options for Gunicorn including port number can be changed by editing /etc/seafile/conf/gunicorn.conf.py.) * New config file (seafile-server.config) has one option that controls where the Seafile/Seahub data directories are stored * Patch scripts/binaries to use standard, system-wide directory locations * Script files (wrappers for binaries) in /usr/bin * Binaries (not meant to be run directly by the user) in /usr/libexec * Config files in /etc/seafile * Pid/socket files in /var/run/seafile * Logs in /var/log/seafile * Include a new script to create the first admin account * With upstream's original scripts, the user is required to interactively create the first admin account when Seahub is started for the first time * The user will now use the new script (create-seafile-admin.sh) to create the first admin account after setup (using setup-seafile.sh or setup-seafile-mysql.sh) and before starting Seafile/Seahub * seahub.sh is patched to only check if there is at least one admin account and exit with an error if there is no admin account * Remove build config options and add seafile-server-fuse package * The console option controls whether the console window is shown when Seafile server is run on Windows. It has no use on Linux. * The fuse option controls whether seaf-fuse is built. (seaf-fuse is a FUSE implementation that allows the Seafile database/file system to be mounted to a local directory.) seaf-fuse is now always built and is available in a separate package (seafile-server-fuse). * Add myself as a maintainer Signed-off-by: Jeffery To <jeffery.to@gmail.com>
42 lines
1.9 KiB
Diff
42 lines
1.9 KiB
Diff
--- a/scripts/reset-admin.sh
|
|
+++ b/scripts/reset-admin.sh
|
|
@@ -51,5 +51,5 @@ export SEAFILE_CONF_DIR=${default_seafil
|
|
export SEAFILE_CENTRAL_CONF_DIR=${central_config_dir}
|
|
export PYTHONPATH=${INSTALLPATH}/seafile/lib/python3.6/site-packages:${INSTALLPATH}/seafile/lib64/python3.6/site-packages:${INSTALLPATH}/seahub/thirdpart:$PYTHONPATH
|
|
|
|
-manage_py=${INSTALLPATH}/seahub/manage.py
|
|
+manage_py=${INSTALLPATH}/seahub/manage.pyc
|
|
exec "$PYTHON" "$manage_py" createsuperuser
|
|
--- a/scripts/seahub.sh
|
|
+++ b/scripts/seahub.sh
|
|
@@ -22,7 +22,7 @@ default_seafile_data_dir=${SEAFILE_UCI_D
|
|
central_config_dir=${SEAFILE_UCI_CONF_DIR-$TOPDIR}/conf
|
|
seafile_rpc_pipe_path=${SEAFILE_UCI_SOCKET_DIR-$INSTALLPATH/runtime}
|
|
|
|
-manage_py=${INSTALLPATH}/seahub/manage.py
|
|
+manage_py=${INSTALLPATH}/seahub/manage.pyc
|
|
gunicorn_conf=${SEAFILE_UCI_CONF_DIR-$TOPDIR}/conf/gunicorn.conf.py
|
|
pidfile=${SEAFILE_UCI_PID_DIR-$TOPDIR/pids}/seahub.pid
|
|
errorlog=${SEAFILE_UCI_LOG_DIR-$TOPDIR/logs}/gunicorn_error.log
|
|
--- a/scripts/setup-seafile-mysql.py
|
|
+++ b/scripts/setup-seafile-mysql.py
|
|
@@ -1083,7 +1083,7 @@ class SeahubConfigurator(AbstractConfigu
|
|
fp.write('# -*- coding: utf-8 -*-')
|
|
|
|
def write_secret_key(self, fp):
|
|
- script = os.path.join(env_mgr.install_path, 'seahub/tools/secret_key_generator.py')
|
|
+ script = os.path.join(env_mgr.install_path, 'seahub/tools/secret_key_generator.pyc')
|
|
cmd = [
|
|
Utils.get_python_executable(),
|
|
script,
|
|
--- a/scripts/setup-seafile.sh
|
|
+++ b/scripts/setup-seafile.sh
|
|
@@ -519,7 +519,7 @@ gen_seafdav_conf;
|
|
# generate seahub/settings.py
|
|
# -------------------------------------------
|
|
dest_settings_py=${SEAFILE_UCI_CONF_DIR-$TOPDIR}/conf/seahub_settings.py
|
|
-seahub_secret_keygen=${INSTALLPATH}/seahub/tools/secret_key_generator.py
|
|
+seahub_secret_keygen=${INSTALLPATH}/seahub/tools/secret_key_generator.pyc
|
|
|
|
if [[ ! -f ${dest_settings_py} ]]; then
|
|
key=$($PYTHON "${seahub_secret_keygen}")
|