From 194adfbb3c51519286d8ab3f587ac8ecc38b40ee Mon Sep 17 00:00:00 2001 From: SkywalkerSpace Date: Sat, 11 Oct 2025 10:58:57 +0800 Subject: [PATCH] update 13.0 Setup binary --- manual/setup_binary/installation.md | 71 +++++++++++++++-------------- 1 file changed, 36 insertions(+), 35 deletions(-) diff --git a/manual/setup_binary/installation.md b/manual/setup_binary/installation.md index 8711f352..9c4632e8 100644 --- a/manual/setup_binary/installation.md +++ b/manual/setup_binary/installation.md @@ -41,7 +41,7 @@ Seafile uses the `mysql_native_password` plugin for authentication. The versions Debian 12 and Ubuntu 24.04 are now discouraging system-wide installation of python modules with pip. It is preferred now to install modules into a virtual environment which keeps them separate from the files installed by the system package manager, and enables different versions to be installed for different applications. With these python virtual environments (venv for short) to work, you have to activate the venv to make the packages installed in it available to the programs you run. That is done here with `source python-venv/bin/activate`. ``` - sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip libmysqlclient-dev ldap-utils libldap2-dev python3.12-venv default-libmysqlclient-dev build-essential pkg-config libmemcached-dev + sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip python3-ldap python3-rados libmysqlclient-dev libmemcached-dev ldap-utils libldap2-dev python3.12-venv default-libmysqlclient-dev build-essential pkg-config mkdir /opt/seafile cd /opt/seafile @@ -54,16 +54,41 @@ Seafile uses the `mysql_native_password` plugin for authentication. The versions # Notice that this will usually change your prompt so you know the venv is active # install packages into the active venv with pip (sudo isn't needed because this is installing in the venv, not system-wide). - pip3 install --timeout=3600 django==4.2.* future==1.0.* mysqlclient==2.2.* \ - pymysql pillow==10.4.* pylibmc captcha==0.6.* markupsafe==2.0.1 jinja2 sqlalchemy==2.0.* \ - psd-tools django-pylibmc django_simple_captcha==0.6.* djangosaml2==1.9.* pysaml2==7.3.* pycryptodome==3.20.* cffi==1.17.0 lxml python-ldap==3.4.* gevent==24.2.* + pip3 install --timeout=3600 boto3 oss2 twilio configparser \ + sqlalchemy==2.0.* pymysql==1.1.* jinja2 django-pylibmc pylibmc psd-tools lxml \ + django==5.2.* cffi==1.17.1 future==1.0.* mysqlclient==2.2.* captcha==0.7.* django_simple_captcha==0.6.* \ + pyjwt==2.10.* djangosaml2==1.11.* pysaml2==7.5.* pycryptodome==3.23.* python-ldap==3.4.* pillow==11.3.* pillow-heif==1.0.* + + ``` + === "Debian 13" + !!! note + Debian 12 and Ubuntu 24.04 are now discouraging system-wide installation of python modules with pip. It is preferred now to install modules into a virtual environment which keeps them separate from the files installed by the system package manager, and enables different versions to be installed for different applications. With these python virtual environments (venv for short) to work, you have to activate the venv to make the packages installed in it available to the programs you run. That is done here with `source python-venv/bin/activate`. + + ``` + sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip python3-ldap python3-rados libmariadb-dev-compat libmemcached-dev ldap-utils libldap2-dev libsasl2-dev pkg-config python3.13-venv + + mkdir /opt/seafile + cd /opt/seafile + + # create the vitual environment in the python-venv directory + python3 -m venv python-venv + + # activate the venv + source python-venv/bin/activate + # Notice that this will usually change your prompt so you know the venv is active + + # install packages into the active venv with pip (sudo isn't needed because this is installing in the venv, not system-wide). + pip3 install --timeout=3600 boto3 oss2 twilio configparser \ + sqlalchemy==2.0.* pymysql==1.1.* jinja2 django-pylibmc pylibmc psd-tools lxml \ + django==5.2.* cffi==1.17.1 future==1.0.* mysqlclient==2.2.* captcha==0.7.* django_simple_captcha==0.6.* \ + pyjwt==2.10.* djangosaml2==1.11.* pysaml2==7.5.* pycryptodome==3.23.* python-ldap==3.4.* pillow==11.3.* pillow-heif==1.0.* ``` === "Debian 12" !!! note Debian 12 and Ubuntu 24.04 are now discouraging system-wide installation of python modules with pip. It is preferred now to install modules into a virtual environment which keeps them separate from the files installed by the system package manager, and enables different versions to be installed for different applications. With these python virtual environments (venv for short) to work, you have to activate the venv to make the packages installed in it available to the programs you run. That is done here with `source python-venv/bin/activate`. ``` - sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip libmariadb-dev-compat ldap-utils libldap2-dev libsasl2-dev python3.11-venv + sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip python3-ldap python3-rados libmariadb-dev-compat libmemcached-dev ldap-utils libldap2-dev libsasl2-dev pkg-config python3.11-venv mkdir /opt/seafile cd /opt/seafile @@ -76,34 +101,10 @@ Seafile uses the `mysql_native_password` plugin for authentication. The versions # Notice that this will usually change your prompt so you know the venv is active # install packages into the active venv with pip (sudo isn't needed because this is installing in the venv, not system-wide). - pip3 install --timeout=3600 django==4.2.* future==0.18.* mysqlclient==2.1.* pymysql pillow==10.0.* pylibmc captcha==0.4 markupsafe==2.0.1 jinja2 sqlalchemy==2.0.18 psd-tools django-pylibmc django_simple_captcha==0.5.* djangosaml2==1.5.* pysaml2==7.2.* pycryptodome==3.16.* cffi==1.15.1 lxml python-ldap==3.4.3 - ``` - === "Ubuntu 22.04" - - ``` - sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip libmysqlclient-dev ldap-utils libldap2-dev default-libmysqlclient-dev build-essential pkg-config libmemcached-dev - - sudo mkdir /opt/seafile - cd /opt/seafile - - sudo pip3 install --timeout=3600 django==4.2.* future==1.0.* mysqlclient==2.1.* \ - pymysql pillow==10.4.* pylibmc captcha==0.6.* markupsafe==2.0.1 jinja2 sqlalchemy==2.0.* \ - psd-tools django-pylibmc django_simple_captcha==0.6.* djangosaml2==1.9.* pysaml2==7.2.* pycryptodome==3.16.* cffi==1.15.1 python-ldap==3.2.0 lxml gevent==24.2.* - - ``` - - === "Debian 11" - - ``` - sudo apt-get install -y python3 python3-dev python3-setuptools python3-pip libmysqlclient-dev-compat ldap-utils libldap2-dev libsasl2-dev - - sudo mkdir /opt/seafile - cd /opt/seafile - - sudo pip3 install --timeout=3600 django==4.2.* future==1.0.* mysqlclient==2.2.* \ - pymysql pillow==10.4.* pylibmc captcha==0.6.* markupsafe==2.0.1 jinja2 sqlalchemy==2.0.* \ - psd-tools django-pylibmc django_simple_captcha==0.6.* djangosaml2==1.9.* pysaml2==7.2.* pycryptodome==3.16.* cffi==1.15.1 python-ldap==3.2.0 lxml gevent==24.2.* - + pip3 install --timeout=3600 boto3 oss2 twilio configparser \ + sqlalchemy==2.0.* pymysql==1.1.* jinja2 django-pylibmc pylibmc psd-tools lxml \ + django==5.2.* cffi==1.17.1 future==1.0.* mysqlclient==2.2.* captcha==0.7.* django_simple_captcha==0.6.* \ + pyjwt==2.10.* djangosaml2==1.11.* pysaml2==7.5.* pycryptodome==3.23.* python-ldap==3.4.* pillow==11.3.* pillow-heif==1.0.* ``` ### Creating user seafile @@ -112,11 +113,11 @@ Elasticsearch, the indexing server, cannot be run as root. More generally, it is Create a new user and follow the instructions on the screen: -=== "Ubuntu 24.04/22.04" +=== "Ubuntu 24.04" ``` adduser seafile ``` -=== "Debian 12/11" +=== "Debian 13/12" ``` /usr/sbin/adduser seafile ```