[Solved] What changed in install.py today?!? Worked this morning, Fails now. (v13.1.1 & v13.2.x)

Great guide!! :slight_smile:
trying to install frappe without ERPNext.
got all the way to

created a blank app using bench new-app [appname] as described here and installed using bench --site site.local install-app [app-name]
all went well including an addition of

the only problem is: I rebooted and I can’t load the site (“The connection was reset” on port 8000)

my bad…
port 80 works fine.

Welcome to the community @alonbr

Happy to hear that you were able to use this to get a success story in your ERPNext adventure.

Thanks for posting your results.


Following these steps, I could install v13 on ubuntu 20.04lts in Virtualbox, but after step 24 reboot the server, I access the site using the host browser its load without styling and js, console shows the error

GET net::ERR_ABORTED 404 (Not Found)

Couldn’t figure out the solution.

You could try building the CSS and JS assets manually. Make your current, working directory frappe_bench. Then execute this command:

bench build

This command creates all the minified files that the browser is expecting to see.

I used this command and tried clearing the browser cache and also check with different browsers but couldn’t get successful results. :neutral_face:

used this command too
bench update --build

Hmm. When you ran the bench build, did it list the file js/erpnext-web.min.js ?

I ran this a moment ago, and took a screenshot for you:


The other possibility is the file exists, but the permissions are incorrect. This would prevent the web server from accessing the file, and providing it to your browser.

If you can find the file, perhaps check the permissions, and make sure it’s readable?

I got the output as your screenshot. (successful build)
Since this was not successful, I moved to docker installation and currently struggling with it.
let me check the file permission. will update the thread with the result asap.

I used this method on two digitalocean ubuntu 20.04 droplets and everything went ok but I have the same issue on both installations:
I am unable to email new POS Invoice Receipt after I Complete Order in the POS System;
When I click on “Email Receipt” it offers me the option to provide the email address.
After I input the email address and I click Send it shows a notification “Email Sent Successfully.” But the email is not sent. When I look at the error logs two new errors are generated as shown below:
one error says “frappe.core.doctype.communication.email.sendmail”
and the other is show in the screenshot below

my installations are as follows:
erpnext 13.9.2
frappe 13.9.1
erpnext 13.10.0
frappe 13.10.0

I can send other types of emails from within erpnext meaning my Email Domain (gmail) and Email Accounts are working.

For the sake of the community please reply to the following main thread if you got a solution I can try out.

Please help, thank you in advance.

This looks like a problem in the POS module. If email works everywhere else then something changed in the POS section.

While I concur this is a problem, it is NOT the topic of this thread. If you really want help with this you should start a fresh thread dedicated to this new bug in v13.9 and 13.10. Hiding your issue here in this thread will not get the recognition you might need by the community to find a resolution.


I already created a main thread a day ago but no replies yet but there is a alot of traffic here so I might get help; or at least get another person getting same error and thus I might rule out my installation being the issue. So please understand.

Great that you already created a thread dedicated to your error condition (which BTW I believe is a valid bug).

However, if a real solution is found then you are doing the entire community a terrible dis-service if you have that solution buried in this thread as an off-topic concern. Other new people like yourself would likely NEVER find the answer to the problem if it gets posted here!

Please… be a good community citizen and at least update the post above with a link to the dedicated thread so that any actual resolution to your issue is in a place where everyone else that has the same problem could find it.

It is the right thing to do. Hiding it in this thread is a terrible injustice to the rest of the community.


@bkm done … and here is the link too if you have something I can try out

Thank you very much for the pointers so far.

1 Like
1 Like

Thanks for sharing BKM.

Best guide I could found out there since I am quite new to ERPNext.

It’s only missing the PDF generation feature which was fixed by installing the wkhtmltopdf package. Any special reason why this was left out (maybe some security concern)?

I also have a question about the Node JS version. Why using v12 instead of v14? I am not an expert on Node JS but I’ve saw other guides using v14 and after reading a little bit, v14 is the current LTS version. Shouldn’t we be using it on production?

Thanks once again.

1 Like

The version of Node required will vary, depending on what 'node-sass' is specified in the Frappe framework’s package.json file.

Currently for Frappe/ERPNext v13, if you install the application as-is, then you require Node.js v14.

I wrote a bit about this a few months back:


Thanks for the heads up B.

Will try again with Node JS v14 as per your recommendation.

Appreciate it.

Recently I attempted to install, on a Debian 10 and 11, Frappe Bench and ERPNext using manual method and ran aground with the error:

AttributeError: module 'lib' has no attribute 'ERR_load_RAND_strings'

I managed to evade that thanks to this helpful stackoverflow link:

The solution was to run sudo pip uninstall pyopenssl and then sudo pip install pyopenssl followed by the usual bench init command.

Though I don’t fully understand what happened here, it seems that the default pyopenssl version installed using the easy install script (which I ran earlier), was causing this issue.

Sharing here just in case it helps someone else as well.


i used your installation method and got a module import error when i tried to update bench getting the following error while bench update

Traceback (most recent call last):
  File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/home/global/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 104, in <module>
  File "/home/global/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 19, in main
  File "/home/global/frappe-bench/env/lib/python3.8/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/global/frappe-bench/env/lib/python3.8/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/global/frappe-bench/env/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/global/frappe-bench/env/lib/python3.8/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/global/frappe-bench/env/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/global/frappe-bench/env/lib/python3.8/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/global/frappe-bench/apps/frappe/frappe/commands/utils.py", line 44, in build
  File "/home/global/frappe-bench/apps/frappe/frappe/build.py", line 248, in bundle
    frappe.commands.popen(command, cwd=frappe_app_path, env=get_node_env(), raise_err=True)
  File "/home/global/frappe-bench/apps/frappe/frappe/commands/__init__.py", line 93, in popen
    raise subprocess.CalledProcessError(return_, command)
subprocess.CalledProcessError: Command '/usr/bin/yarn run production --app frappe' returned non-zero exit status 137.
Traceback (most recent call last):
  File "/usr/local/bin/bench", line 8, in <module>
  File "/home/global/.local/lib/python3.8/site-packages/bench/cli.py", line 117, in cli
    raise e
  File "/home/global/.local/lib/python3.8/site-packages/bench/cli.py", line 107, in cli
  File "/usr/lib/python3/dist-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3/dist-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/usr/lib/python3/dist-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/lib/python3/dist-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/global/.local/lib/python3.8/site-packages/bench/commands/update.py", line 23, in update
    update(pull=pull, apps=apps, patch=patch, build=build, requirements=requirements, restart_supervisor=restart_supervisor, restart_systemd=restart_systemd, backup=not no_backup, compile=not no_compile, force=force, reset=reset)
  File "/home/global/.local/lib/python3.8/site-packages/bench/utils/bench.py", line 397, in update
  File "/home/global/.local/lib/python3.8/site-packages/bench/utils/render.py", line 95, in wrapper_fn
    return fn(*args, **kwargs)
  File "/home/global/.local/lib/python3.8/site-packages/bench/bench.py", line 337, in requirements
    App(app, bench=self.bench, to_clone=False).install()
  File "/home/global/.local/lib/python3.8/site-packages/bench/utils/render.py", line 110, in wrapper_fn
    return fn(*args, **kwargs)
  File "/home/global/.local/lib/python3.8/site-packages/bench/app.py", line 188, in install
  File "/home/global/.local/lib/python3.8/site-packages/bench/app.py", line 419, in install_app
    build_assets(bench_path=bench_path, app=app)
  File "/home/global/.local/lib/python3.8/site-packages/bench/utils/bench.py", line 294, in build_assets
    exec_cmd(command, cwd=bench_path, env={"BENCH_DEVELOPER": "1"})
  File "/home/global/.local/lib/python3.8/site-packages/bench/utils/__init__.py", line 126, in exec_cmd
    raise CommandFailedError

Any idea how to solve it

I abandoned the Easy Install script method of doing installs many months ago. The OS images available through many VPS providers is now to difficult to keep up with the changes.

Today I updated another (better) install method to correct for an error. It should be working well now.

See this thread:

I currently only try to keep the above Tutorial working.

Hope this helps…