Refactor build/install process

This commit is contained in:
2025-06-02 13:37:18 -05:00
parent 0403f6a3e2
commit c30c8f8677
5 changed files with 81 additions and 24 deletions

View File

@ -14,12 +14,19 @@ The FreeBSD ntfy client package doesn't have the server or web built-in. It's a
I built ntfy server on FreeBSD manually and have been testing it. I decided if I was going to keep using it that I should formalize an install. 
### **Install FreeBSD prerequisites:**
### **FreeBSD prerequisites:**
I ran out of heap space building on a 2Gb FreeBSD 14.2 VM. It builds great when it was bumped to 4Gb (and more cores).
Install build pre-reqs:
`pkg install python311 py311-pip node20 npm-node20 go gmake`
### Build:
`sudo sh ./build_ntfy_server.sh`
### Install:
`sudo sh ./install_ntfy_server.sh`
### Configure:
@ -32,13 +39,19 @@ Copy index.html to your webserver docs directory (e.g. https://ntfy.mydomain.com
Use `sysrc ntfy_enable="YES"` or add `ntfy_enable="YES"` to your /etc/rc.conf or /etc/rc.conf.d/ntfy manually to enable the service. Use `service ntfy start` to start the service.
**TODO**:
### Uninstall:
This will completely remove the binary, configs/scripts, directories, and user. Save your configs/database before running this if you want to preserve them.
`sudo sh ./uninstall_ntfy_server.sh`
### TODO:
I will likely rewrite all of this and create a proper port before it's all said and done. These are the things on my list in the meantime.
- Create uninstall script (or uninstall option in main script)
- Create dependency checks in install script and make more robust
- Create package (probably a tarball before a real FreeBSD pkg)
- Testing client and config. 
### License
The project is dual licensed under the [Apache License 2.0](LICENSE) and the [GPLv2 License](LICENSE.GPLv2).