diff --git a/README.md b/README.md index 9b44dcb9..d2d87aa3 100755 --- a/README.md +++ b/README.md @@ -39,8 +39,10 @@ Installation Easy Setup --------------------- +- We recommend using the newer [Beta Installer](#beta-installer) if your system supports it. - This is an opinionated setup with logging and SE Linux. So, it is best to setup on a blank server. - Supported for CentOS 6, CentOS 7, Debian 7 and Ubuntu 12.04 to 15.x +- **Does not** work on Ubuntu 16.04, use the [Beta Installer](#beta-installer) instead - This script will install the pre-requisites, install bench and setup an ERPNext site - Passwords for Frappe, Frappe Administrator and MariaDB (root) will be generated - You can then login as **Administrator** with the Administrator password printed @@ -61,7 +63,7 @@ sudo bash setup_frappe.sh --setup-production ``` ####For Development: -> We recommend using the [Beta Development Setup](#beta-development-setup) if it supports your OS + ``` Mac OSX: @@ -85,21 +87,33 @@ You have to explicitly start services by running `bench start`. ``` -Beta Development Setup +Beta Installer ------------------------ -Tested on Ubuntu 14.04 to 15.x, Debian 7+, CentOS 7+, and MacOS X. If you find any problems, post them on our forum: [https://discuss.erpnext.com](https://discuss.erpnext.com) +Tested on Ubuntu 14.04 to 16.04, CentOS 7+, and MacOS X. If you find any problems, post them on our forum: [https://discuss.erpnext.com](https://discuss.erpnext.com) ``` Linux: wget https://raw.githubusercontent.com/frappe/bench/develop/playbooks/install.py Mac OSX: -curl "https://raw.githubusercontent.com/frappe/bench/master/playbooks/install.py" -o install.py +curl "https://raw.githubusercontent.com/frappe/bench/develop/playbooks/install.py" -o install.py + +# for development +sudo python install.py --develop + +# for production +sudo python install.py --production + +# If you're logged in as root, use --user flag to create a user and install using that user +sudo python install.py --develop --user frappe -python install.py --develop ``` -You have to explicitly start services by running `bench start`. This script requires Python2.7+ installed on your machine. You need to run this with a user that is **not** `root`, but can `sudo`. If you don't have such a user, you can search the web for *How to add a new user in { your OS }* and *How to add an existing user to sudoers in { your OS }*. +For development, you have to explicitly start services by running `bench start`. This script requires Python2.7+ installed on your machine. You will have to manually create a new site (`bench new-site`) and get apps that you need (`bench get-app`, `bench install-app`). + +For production, you will have a preinstalled site with ERPNext installed in it. + +You need to run this with a user that is **not** `root`, but can `sudo`. If you don't have such a user, you can search the web for *How to add a new user in { your OS }* and *How to add an existing user to sudoers in { your OS }*. On Mac OS X, you will have to create a group with the same name as *{ your User }*. On creating this group, you have to assign *{ your User }* to it. You can do this by going to "System preferences" -> "Users & Groups" -> "+" (as if you were adding new account) -> Under "New account" select "Group" -> Type in group name -> "Create group" @@ -115,8 +129,17 @@ This script will: - WKHTMLtoPDF with patched QT - Initializes a new Bench at `~/frappe/frappe-bench` with `frappe` framework already installed under `apps`. -You will have to manually create a new site (`bench new-site`) and get apps that you need (`bench get-app`, `bench install-app`). - +####Script Options: +``` + --help + --verbose + --develop + --production + --site + --user + --bench-branch + --repo-url +``` Updating ======== diff --git a/bench/__init__.py b/bench/__init__.py index ad92bc1d..6353e93b 100644 --- a/bench/__init__.py +++ b/bench/__init__.py @@ -1,6 +1,6 @@ from jinja2 import Environment, PackageLoader -__version__ = "4.0.0-beta" +__version__ = "4.0.0" env = Environment(loader=PackageLoader('bench.config')) diff --git a/bench/app.py b/bench/app.py index e5dd5495..43398f9e 100755 --- a/bench/app.py +++ b/bench/app.py @@ -103,7 +103,6 @@ def install_app(app, bench_path='.', verbose=False): find_links=find_links)) add_to_appstxt(app, bench_path=bench_path) - def remove_app(app, bench_path='.'): if not app in get_apps(bench_path): print "No app named {0}".format(app) diff --git a/install_scripts/setup_frappe.sh b/install_scripts/setup_frappe.sh index 56eb7078..e6c7ac7c 100755 --- a/install_scripts/setup_frappe.sh +++ b/install_scripts/setup_frappe.sh @@ -134,11 +134,13 @@ add_debian_mariadb_repo() { echo Unsupported Debian Version exit 1 fi - run_cmd sudo apt-get update run_cmd sudo apt-get install -y software-properties-common python-software-properties run_cmd sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db - run_cmd sudo add-apt-repository "deb http://ams2.mirrors.digitalocean.com/mariadb/repo/10.0/debian $CODENAME main" + $repo_test=$(apt-cache search --names-only 'mariadb-server') + if [ -z "$repo_test" ]; then + run_cmd sudo add-apt-repository "deb http://ams2.mirrors.digitalocean.com/mariadb/repo/10.0/debian $CODENAME main" + fi } add_ius_repo() {