Hi all, my employer wants to use this package, so we are wanting to write an ebuild and make it available in Gentoo. I do not know how to write an ebuild for a web-app, so I need your assistance with this. Thanks much for your time. William
Created attachment 526500 [details] librenms-1.37.ebuild This is what I have so far.
Another note I would like to add is, librenms can be both a full webapp and a php cli application. Again, any help is greatly appreciated. Thanks, William
Created attachment 526580 [details] ebuild with some of many dependencies Parsing composer.lock from upstream tells us of the following PHP dependencies: https://github.com/pear/Console_Color2.git https://github.com/pear/Console_Table.git (dev-php/PEAR-Console_Table) https://github.com/palanik/CorsSlim.git https://github.com/symfony/event-dispatcher.git https://github.com/easybook/geshi.git https://github.com/guzzle/guzzle.git https://github.com/ezyang/htmlpurifier.git https://github.com/php-fig/http-message.git https://github.com/influxdata/influxdb-php.git https://github.com/HuasoFoundries/jpgraph.git (dev-php/jpgraph) https://github.com/xjtuwangke/passwordhash.git https://github.com/php-amqplib/php-amqplib.git (possibly dev-php/pecl-amqp) https://github.com/PHPMailer/PHPMailer.git (dev-php/PHPMailer) https://github.com/guzzle/promises.git https://github.com/guzzle/psr7.git https://github.com/dapphp/radius.git (possibly dev-php/pecl-radius) https://github.com/rmccue/Requests.git (possibly dev-php/PEAR_HTTP_Request2) https://github.com/slimphp/Slim.git https://github.com/tecnickcom/TCPDF.git (dev-php/tcpdf) https://github.com/symfony/yaml.git (dev-php/YAML) While composer.json mandates the following PHP extensions: ext-curl (curl USE flag on dev-lang/php) ext-gd (gd USE flag on dev-lang/php) ext-mysqli (mysqli USE flag on dev-lang/php) ext-pcre ext-session (session USE flag on dev-lang/php) ext-xml (probably just the xml USE flag on dev-lang/php, possibly xmlreader, xmlrpc, xmlwriter as well) Finally, the installation instructions for Nginx/Ubuntu suggest installing another handful of packages (obvious redundancies omitted): fping git (probably not needed, this is their distribution method) graphviz imagemagick mariadb-client mariadb-server mtr-tiny nginx-full nmap php7.0-cli (cli USE flag on dev-lang/php) php7.0-fpm (fpm USE flag on dev-lang/php) php7.0-mcrypt (maybe mhash USE flag on dev-lang/php?) php7.0-mysql (mysqli? USE flag on dev-lang/php) php7.0-zip (zip USE flag on dev-lang/php) python-memcache python-mysqldb rrdtool (net-analyzer/rrdtool) snmp (net-analyzer/net-snmp?) snmpd (net-analyzer/net-snmp?) whois (net-misc/whois)
Pinging php-bugs.
Composer packages are awful, and all of those dependencies are composer packages. (In reply to sluidfoe from comment #4) > Pinging php-bugs. I think only three of those dependencies are in the tree: PHPMailer, Console_Table, and Console_Color. Recursively de-composerizing all of the rest will be a long boring task.
(In reply to sluidfoe from comment #3) > php7.0-mcrypt (maybe mhash USE flag on dev-lang/php?) MCrypt is old and removed in recent PHP versions. (the crypt USE flag on dev-lang/php) If it is absolutely required, then please don't add anything that needs it simply because it would have to be last-rited by mid-2019.
Created attachment 579774 [details] librenms-1.52.ebuild # TODO * systemd/openrc init * Tests more tests
Created attachment 580144 [details] librenms-1.52.ebuild * Add support for redis * Add deps for virtual/mysql * Require fping with ipv6 * Change mysql-python for mysqlclient
Created attachment 671026 [details] librenms-1.69.ebuild.tar.gz - Update to new version - Update deps - Update to new user/group system - Include experimental librenms-agent
Created attachment 686988 [details] Librenms 21.2.0 Update deps use new user model librenms-agent experimental