Can devs make a deb file. like other systems

Short Answer:

I’m sure they probably could. But they won’t. And probably shouldn’t spend time trying.

Long Answer:

Typically, I’m one of the first people on the forums who loves to chat about ERPNext Installation process, and why I dislike it. I’m not shy about it. :slight_smile:

However, in this case…I feel obligated to defend the maintainers. Because creating a Debian package, for something as complex as ERPNext? Way, way harder than it sounds.

I actually started learning and creating .deb packages this year (different project). It’s not easy. The concepts and designs were developed by some “old school” Linux devs. Very smart people. But developed in a different era. Yes, there’s documentation. Hundreds of pages of it. Yet after reading it a few times, it still doesn’t make much sense.

If ERPNext was just your everyday “app”? Then sure. Creating packages like Debian would be a sensible thing to do.

But ERPNext is not just a few libraries and binary executables. It’s a very complex dance between dozens of separate components. Naming them just from memory, without cheating:

  • At least 4 Python applications (as of v14), each maintained on GitHub, with interdependencies. (and I think I’m forgetting a few smaller, helper apps, that do things with PDF or translations)
  • Some of these same Python packages also have Node.js components.
    • So your machine/VM requires Node installed.
  • 1 MySQL/MariaDB database server.
  • 3 Redis database servers.
  • Nginx must be installed for a reverse proxy.
    • You also need to run scripts that help -build- configuration files for Nginx.
  • You need the Supervisor init system on your machine.
  • You need a little background task scheduler app.
  • You need a program for converting HTML to PDF.
  • And more stuff for creating TLS certificates for your website (Certbot)
  • And some socket IO “stuff” that I still haven’t gotten around to learning about, after 5+ years.

:thinking:

Assuming the maintainers figure out how to bundle into a '.deb' successfully (huge effort). We have a shiny-new Debian 11 package. The very next day, they would get the following requests from various users:

We love your new Debian 11 package, but now could you please build….”

  • a Debian 10 package.
  • an Ubuntu 20.04 package.
  • an Ubuntu 22.04 package.
  • an RPM.
  • something for Arch.
  • a package for MacOS.
  • a package that works with Rocky Linux, or openSUSE, or Gentoo, or Slackware…

:face_with_head_bandage:

  1. Okay, let’s say they do all that! The day after those are released:
  • 'User A': “Dear Frappe, why does your .deb package have MariaDB 10.6, instead of 10.7? So outdated!”
  • 'User B': “Dear Frappe, why does your package use Node 16? My company says I have to use Node 14!”
  • 'User C': “Wow, I cannot believe you guys ship with yarn, instead of npm. How rude!”
  • 'User D': “What, no Raspberry Pi distro? Unbelievable…”

And after thousands of hours spent (for free), the ERP maintainers are exhausted and burned out. And the community still isn’t much better off. :smile:

7 Likes

Odoo does

Any simple solution so can be installed and works perfectly without errors. i m trying a lot to make it run. even easy install script also cant help at all. and always stuck at us keymap is not installed. even it installed. a little effort to make it install simple from dev. makes erpnext the number one choice for everyone. as i thinks…

Or any simple and clear instructions to install it without errors and bugs. i tried with official instructions and still cant install properly. when i reached development ready it problem at production. when i clear production. it cant automatic run after reboot. :joy:

Maybe not directly related, but:

  • perhaps the so called name “easy install” should be changed to “install script” to manage expectation;
  • my suggestion to the failed first-timer (either in ERPNext and Linux), after the failing install, wipe your computer and reinstall the linux (of course if it is a clean server) to get virgin environment. Trying again and again without the same situation to start with might lost you why the error happens.
  • be consistent with a guide. if you face an issue, yes google it, try the step (only that step), and get back to the first guide. If the guide fails again and again, use other guide from the beginning. Take note…
  • after you have a sucessful steps (after trying it several times :slight_smile: ) make your own guide.
2 Likes

almost 35 times i tried everything. now on production mode but bench cant start after reboot. :rofl:

For example, now I only want to install using CentOS or AlmaLinux. Because these linux give me successful installations (with my own guide). I never had such luck with Ubuntu.

Check your production config (if you use CentOS flavor, the extension is .ini)
In production it is not needed to do bench start.

ubuntu server 22.04

That is out of my experience …sorry… :slight_smile:

1 Like

@rahy Any specific guides to CentOS 7.9?

There’s a simple installation method already, embrace Docker :grimacing:

Linux packaging is a giant pile of poo. Deb, snaps, AppImage, RPM, flatpack… list goes on (somebody probably created a new one while I was writing this post)

5 Likes

In agreement. Docker is the easiest consistent way to roll out ERPNext. Kubernetes for scale.

Just make it done frappe 14 / erpnext 14. wait for process i will share :partying_face:

Last I heard, “easy install” isn’t supported anymore. No one is maintaining it. :man_shrugging:

As @ankush mentioned, the only “officially” recommended method of installation is Docker. Many people believe this is the way forward. Others of us disagree. While it’s true that everyone is entitled to their opinions. ERPNext is not a democracy. The maintainers will do what they want to. The days of the Foundation are long gone.

@Usman_Ali Version 14 was released about 3 days ago. And there was no advanced notice. So the community is just now beginning to experiment with official v14 release. Please be patient. If you wait a few more weeks, I’m confident community members will begin updating their unofficial installation guides, for manual installs.

Otherwise, if you want to create a .deb build system for ERPNext, or can convince Odoo to build one for us? That would be amazing. Many people would benefit. :+1:

Not so long ago, I too decided I could build a better mousetrap ERPNext Installation tool. That side project isn’t dead yet. But it’s near the bottom of a very, very long list of other projects. Clients come first, and only 24 hours in every day. Many of us don’t have employees or apprentices to help out: each line of code is written by our own, two hands.

As a wise, little blue fish once said: “Just keep swimming.”

1 Like

short will no need of easy install script. because i will share very easy method to install. just making sure some things… stay tune…

1 Like

Perhaps better update to AlmaLinux or RockyLinux 8 or 9.