Arch Linux installation

From Mayan EDMS Wiki
Jump to: navigation, search
  • Work in progress *
  • Unifished *

Install Mayan-edms dependencies[edit]

pacman -S python2 python2-pip python2-magic python2-virtualenv libjpeg-turbo libpng libreoffice-fresh libreoffice-fresh-de libtiff rsync redis base-devel ghostscript gnupg tesseract tesseract tesseract-data-eng tesseract-data-deu poppler poppler-data mariadb

Which will lead into a bunch of dependencies. Just select the default everwhere and install. Note: You always need tesseract-data-eng. Even for non-english systems or configurations.

:: There are 25 members in group base-devel:
:: Repository core
   1) autoconf  2) automake  3) binutils  4) bison  5) fakeroot  6) file  7) findutils  8) flex  9) gawk  10) gcc  11) gettext
   12) grep  13) groff  14) gzip  15) libtool  16) m4  17) make  18) pacman  19) patch  20) pkg-config  21) sed  22) sudo  23) texinfo
   24) util-linux  25) which

Enter a selection (default=all):

resolving dependencies...
looking for conflicting packages...
warning: dependency cycle detected:
warning: harfbuzz will be installed before its freetype2 dependency

Packages (151) atk-2.22+1+gd57f97d-1  avahi-0.6.32-3  boost-libs-1.63.0-1  cairo-1.14.8-1  clucene-  compositeproto-0.4.2-3


               tesseract-data-deu-3.04.00-1  texinfo-6.3-1  util-linux-2.29-2  which-2.21-2

Total Download Size:    229.80 MiB
Total Installed Size:  1248.19 MiB
Net Upgrade Size:      1066.28 MiB

:: Proceed with installation? [Y/n]

Configure MariaDB (MySQL)[edit]

Install mariadb, afterwards run the following command //before starting// the mariadb.service:

mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql
systemctl enable mariadb

Now configure MariaDB. Edit mcedit /etc/mysql/my.cnf and uncomment the line # skip-networking which grants usage on localhost only. Then add the lines to the [mysqld] section:

#Use UTF-8
init_connect                = 'SET collation_connection = utf8_general_ci,NAMES utf8'
collation_server            = utf8_general_ci
character_set_client        = utf8
character_set_server        = utf8
Now start the database with systemctl start mariadb

Create a Database and User, grant permissions[edit]

mysql -u root -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.1.20-MariaDB
MariaDB [(none)]> create database mayan_edms;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> create user mayan@localhost identified by 'YOUR_SQL_DATABASE_PASSWORD';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all privileges on mayan_edms.* to mayan@localhost;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> quit

Install and enable redis server[edit]

Enable and start the redis server

pacman -S redis
systemctl enable redis
systemctl start redis

Install Mayan EDMS[edit]

First at all install the wonderful fish shell. I love it!

pacman -S fish
chsh -s /usr/bin/fish

If you don't like the fish shell or love your zsh or bash it's ok - use your own shell.

Go to /usr/share and initialize the Python virtual environment.

cd /usr/share
virtualenv2 mayan-edms

and activate it (assuming using fish shell)

source mayan-edms/bin/

In case you are using bash as the shell just use source mayan-edms/bin/activate instead. and pip[edit]

Whenever you want to install any pip package in this guide or want to run any command always do this inside the virtualenv2 environment!

Whenever you see (mayan-edms) pip or (mayan-edms) in this guide you need to run

cd /usr/share/mayan-edms
source mayan-edms/bin/

at least once before!

Install Mayan EDMS from PyPi[edit]

Does Mayan EDMS work with Python 3?

Not at the moment. When all the projects and libraries upon which Mayan is dependent support Python 3 then will the project move to fully support Python 3.

(mayan-edms) pip2 install mayan-edms

This will install a bunch of additional dependencies, such as Django, Pillow, PyYAML and a lot of other pip packages.