nabbi / oubliette-overlay Goto Github PK
View Code? Open in Web Editor NEWpersonal Portage overlay for Gentoo Linux
personal Portage overlay for Gentoo Linux
fails to fetch FriendsOfCake/crud.git
Is there any way of making this ebuild less sensitive to this sort of problem?
Otherwise, I thank you for your efforts so far :)
oubliette-overlay/www-misc/zoneminder/zoneminder-1.36.21.ebuild
Lines 165 to 166 in 8f4177b
Installing an active vhost for apache2 automatically SHOULD NOT be done: this file is already copied to the docs directory, IFF you must copy this file into apache's vhost dir it should be all commented or otherwise disabled (eg. copy it as 10_zoneminder.off -this is still bad however).
hi!
this is the message i got:
Verifying ebuild manifests
!!! Digest verification failed:
!!! /var/lib/layman/oubliette/www-misc/zoneminder/files/README.gentoo
!!! Reason: Filesize does not match recorded size
!!! Got: 1347
!!! Expected: 1140
Thanks!
I am upgrading, having previously used mkr-overlay, which I see is less maintained than your overlay.
zoneminder-9999 fails at "newins distros/ubuntu1204/zoneminder.logrotate zoneminder"
The solution is to change the directory to ubuntu2004
Next problem, when I run zmupdate.pl, I get "Can't locate Crypt/Eksblowfish/Bcrypt.pm in @inc" and again for the data entropy module. Therefore, I manually installed the following:
dev-perl/Crypt-Eksblowfish
dev-perl/Data-Entropy
Since the latter is in your overlay, I assume it was an oversight not to include it in dependencies.
Otherwise, it all works great now!
oubliette-overlay/www-misc/zoneminder/zoneminder-1.36.21.ebuild
Lines 36 to 38 in 8f4177b
Zoneminder does not NEED the apache2 sapi, the ebuild should not force it. It should especially not force cgi AND apache2 sapi
The depend on virtual/httpd-php ensures we get one of cgi, apache2 and/or fpm (that is after all what that virtual package is supposed to do)
cmake resets these cache values when it runs (From CMakeLists.txt):
# gcrypt (using find_library and find_path)
find_library(GCRYPT_LIBRARIES gcrypt)
if(GCRYPT_LIBRARIES)
set(HAVE_LIBGCRYPT 1)
These libraries can be still be disabled by cheating: if the searched library variable (GCRYPT_LIBRARIES above) is already set cmake won't reset it. So something akin to
perl_set_version
export TZ=UTC # bug 630470
local myconf
if ! use gcrypt; then
myconf+=" -DGCRYPT_LIBRARIES=0"
fi
if ! use gnutls; then
myconf+=" -DGNUTLS_LIBRARIES=0"
fi
mycmakeargs=(
-DZM_TMPDIR=/var/tmp/zm
##=== trimmed ===
-DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL="$(usex ssl OFF ON)"
${myconf}
)
However this isn't needed for the live build (for one the gcrypt support was dropped):
-DZM_JWT_BACKEND="$(usex gnutls libjwt jwt-cpp)"
-DZM_CRYPTO_BACKEND="$(usex gnutls gnutls openssl)"
It is also worth noting that gnutls can not be used unless you are using libjwt (this has been the case since somepoint in the 1.34.xx release cycle)
dev-libs/libjwt is not packaged in gentoo - I do have an ebuild. but it also requires patching zoneminder's cmake module to find libjwt: It is expecting the library to have been named libjwt-gnutls - other distributions building the library twice once with openssl and once with gnutls (the ebuild I have just builds it once with a USE flag to choose the linking).
EDIT: Now the dev-libs/libjwt ebuild I have builds both gnutls and openssl libraries, so zoneminder no longer needs it's cmake modules to be pached
-DZM_NO_X10="$(usex X10 OFF ON)"
With virtual/mysql
removed from the DEPEND stanzas there is now no package in the depgraph that pulls in a mysql compatible server. This isn't necessarily a bad thing, however a new user can't do anything with the package until they install one or have access to one over the network. I suggest using the optfeature
eclass to let the user know.
There are a few optional perl modules that ZoneMinder uses for some odds and ends, it would be nice if users were told about them.
## used to get verbose responses from onvif cameras
XML::LibXML => dev-perl/XML-LibXML
## used to authenticate for onvif event monitoring
# all three are from same package
SOAP::Lite
SOAP::Server::Parameters
SOAP::Transport::HTTP => dev-perl/SOAP-Lite
## used during event creation to set image dimensions
Image::Info => dev-perl/Image-Info
## The older way to email a notice to a user
MIME::Entity => dev-perl/MIME-tools
# if the ZM_NEW_MAIL_MODULES is set true then
# MIME::Lite && Net::SMTP are used (which are already in depgraph)
## for archiving an event to a sftp server
Net::SFTP::Foreign => dev-perl/Net-SFTP-Foreign
## for copying an event to An Amazon S3 bucket
Net::Amazon::S3 => dev-perl/Net-Amazon-S3
File::Slurp => dev-perl/File-Slurp
add inherit optfeature
to the header of the ebuild
and in the pkg_postinst something akin to the following (though I still think that the onvif stuff should be under a USE flag esp. with the live ebuild as that would cover net-libs/gsoap as well)
I'd personally put this above the legacy config file section
pkg_postinst() {
elog "This package requires access to a Mysql compatible database server"
elog "ZoneMinder can connect to a remote database if desired"
optfeature_header "Mysql compatible database server"
optfeature "Install if you don't already have one" virtual/mysql
elog " "
elog "there are some optional features/enhancements that can be added"
optfeature_header "Onvif Access"
optfeature "Verbose responses from camera" dev-perl/XML-LibXML
optfeature "Event monitoring" dev-perl/SOAP-Lite
optfeature_header "Email"
optfeature "Older email package (if new one isn't working)" dev-perl/MIME-tools
optfeature_header "Event creation enhancements"
optfeature "Retrieves image size" dev-perl/Image-Info
optfeature_header "Storage"
optfeature "Archive to SFTP server" dev-perl/Net-SFTP-Foreign
optfeature "Copy to Amazon S3 bucket" dev-perl/Net-Amazon-S3 dev-perl/File-Slurp
}
Zoneminder ebuild for Gentoo.
Thanks for providing this, I appreciate this very much.
However, would you please update /etc/apache2/conf/vhosts/10_zoneminder.conf, so that changes in this file are found by the etc-update command?
Background: I installed zoneminder years ago, before the API came into existence, so my Apache config was setup and ran Zoneminder. However, the API did not work when I installed the 9999 release.
The reason was the API has a new set of Rewrite rules for apache in /usr/share/doc/zoneminder-9999/10_zoneminder.conf.bz2)
Given the ebuild did not update the /etc/apache/conf/vhosts.d/10_zoneminder.conf automatically, nor display the readme-gentoo file, I was completely unaware of this change and spent a few days trying to figure out why my API was not working.
Maybe displaying the readme-gentoo would help, as new installations on gentoo will fail, without performing the steps indicated in this readme.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.