(which is not) throughout the ports Makefiles.
* Replace find|xargs with find -exec {} +
* Replace -exec {} \; with -exec {} + if applicable.
* Use the -delete operator to remove files and empty directories.
* Combine and tweak some find(1) invocations while here.
ok kn@ rsadowski@ espie@
- rework the README a bit, install notes may still need some fixes
- note: run daily.sh as _librenms after installing the new version to
update schemas, you will see errors when you try to login if you don't
do this.
- note: some things moved from symbolic links to real files which
pkg_add -u doesn't cope with (this is the same case as "exotest" in
regress/usr.sbin/pkg_add). pkg_delete then pkg_add when updating.
@ask-update is used in the plist to try to warn you and ask you to
cancel during the update in this case.
- Affects users of webservers not using .htaccess:
Moved php files outside of public html directory (Apache was protected
by .htaccess)
Some files could be accessed directly, leaking some information, like
the version in about.inc.php but not statistics because it doesn't have
DB access.
- Affects all users:
Some files did not check for authentication and could disclose some info.
Better checks before including files from user input
Fix unescaped variables in ajax_search.php
to new (if you see messages with keywords like "Severity: %severity" you
need to do this) - at present there's a built-in converter but this won't
stay around forever.
- fix the local change to uses crontab's new -n feature instead of cronic
in the sample additions for /etc/crontab. it had extra whitespace between
the username and the command which is not permitted syntax.
repeated below.
(upstream's normal setup these days is to provide only their own code
and rely on composer to fetch the dependencies. this isn't suitable for
OS packaging so I'm pregenerating a separate distfile with dependencies
instead. unfortunately the hook to copy across existing config to the
.env file is done from composer, so that doesn't work for us, so you
have to copy it yourself.)
Updating from 1.39 or earlier
=============================
As of 1.40, LibreNMS now uses the Laravel framework which requires some
additional setup. Upstream has code to copy this across from an existing
configuration initially, but it's not functional in this packaged
environment.
Generate an APP_KEY:
# cd /var/www/librenms
# doas -u _librenms /usr/local/bin/php-7.0 artisan key:generate
Copy this to the clipboard, then edit /var/www/librenms/.env and fill in the
relevant details.
It may also be necessary to raise max_connections in /etc/my.cnf;
https://community.librenms.org/t/new-requirements-for-1-40/4057
suggests doubling this value.
of scripts to fetch via composer - the port switches to a locally produced
tar with pre-fetched dependencies, a port cannot go to the net and fetch
files at build time.
- replace more hardcoded php binary names with ${MODPHP_BIN}, unbreaks some
scripts as we include the PHP release branch in the string (php-5.6 etc).
- drop php-mysql dependency, no longer required.