-
Notifications
You must be signed in to change notification settings - Fork 190
add package openlitespeed #316
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
Can you explain a bit more what do you mean? What are you trying to achieve and how is openlitespeed related? |
|
|
||
| LICENSE="MIT" | ||
| SLOT="0" | ||
| KEYWORDS="~amd64 ~arm64" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know if it's the case. Just a reminder that only the arch that have been tested should be added to KEYWORDS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since openlitespeed supports ARM, I don't think there's any problem. I confirmed that I can build it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a common confusion. Even if upstream supports it,if it has not been personally tested it should not be added. In this case it's okay since you tested it.
Openlitespeed requires a special php that supports litespeed. Openlitespeed cannot be run with just the ebuild you add. |
a2ed505 to
8289339
Compare
It looks like PHP has support for litespeed, but it needs to be enabled at compile-time. The best solution would be to submit a separate pull request to ::gentoo, adding a Unfortunately I don't think the alternative solutions to provide PHP are good fits for GURU, since they would mean either creating an entirely separate PHP ebuild in ::guru solely to support litespeed, bundling a custom build of PHP with openlitespeed, or expecting the user to provide their own PHP installation. Theoretically you could add openlitespeed without providing any PHP support, but I'd probably try to get a USE flag added in ::gentoo first, since otherwise it leaves potential users in an awkward situation here. |
|
As a workaround until litespeed support is added, would it be better to install the official lsphp8.1 package for ubuntu? |
Ultimately this is just a webserver, so I don’t think we should block adding it because there’s no easy way to build support for it with PHP in ::gentoo. I don’t think we can add or include our own PHP server in ::guru, either as part of this package or as its own package, since it would conflict with the duplicates policy. And I don’t want to hold this up myself, so if we can add it without any PHP support (unless the user installs a custom build), I think that’s fine for now. Did you (or are you planning to) open a PR in ::gentoo to add the USE flag? Either way, @stkw0 has provided a lot more feedback already, so if he doesn’t have any objections to adding as-is then don’t worry about me :) |
|
I think it's worthy to send a PR to ::gentoo adding the litespeed support, as it may be useful for other cases and would simplify things. Mixing a source ebuild and a pre-built binary from Ubuntu is a bit of a mess. btw the current PR still has a number of issues (will add some more comments). There is no sign-off tag and there are two Metadata files for acct-user and acct-group ebuilds that should not be there. |
| -OPTION(MOD_PAGESPEED "Whether pagespeed should be built" ${LINUX_X64}) | ||
| -OPTION(MOD_SECURITY "Whether mod_security should be built" ${NOT_MACOS}) | ||
| -OPTION(MOD_LUA "Whether Lua should be built" ${LINUX_X64}) | ||
| +OPTION(MOD_PAGESPEED "Whether pagespeed should be built" OFF) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should be passed to mycmakeargs instead of being patched here
| @@ -0,0 +1,84 @@ | |||
| I plan to eventually change the patch to install openlitespeed in the appropriate location instead of installing it in /usr/local/lsws/. | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah. This should be fixed before merging this. Nothing should be installed in /usr/local directory.
Usually web pages read-only data is stored in /usr/share
A bit of reference in case it's useful:
| fi | ||
| OPENLSWS_EXAMPLEPORT=8088 | ||
|
|
||
| sed -e "s/%ADMIN_PORT%/$OPENLSWS_ADMINPORT/" "${S}/dist/admin/conf/admin_config.conf.in" > "${S}/dist/admin/conf/admin_config.conf" || die |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it might be better to move all this configuration part to pkg_config and print an informational message about it. Something similar to what postgresql ebuild does
There's no need. It works only with Version 1.8.3.1.
I don't have the code knowledge to open a PR to add the litespeed flag to "eselect-php" or "php", and I don't have the time to do the work for that. |
Then please, remove the other one.
I just opened a PR to add litespeed USE to php: gentoo/gentoo#42003 |
8289339 to
93d4153
Compare
93d4153 to
8245d30
Compare
| dev-libs/ls-hpack:=[static-libs=] | ||
| " | ||
|
|
||
| RDEPEND=" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Several libraries are missing from RDEPEND here.
| KEYWORDS="~amd64 ~arm64" | ||
|
|
||
| IUSE="static-libs ruby systemd" | ||
| RESTRICT="" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
| IUSE="static-libs ruby systemd" | ||
| RESTRICT="" | ||
|
|
||
| DEPEND=" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unsorted contents. Also, conditionals inside should go last.
| sed "s:%LSWS_CTRL%:$SERVERROOT/bin/lswsctrl:" "${S}/dist/admin/misc/lsws.rc.gentoo.in" > "${S}/dist/admin/misc/lsws.rc.gentoo" || die | ||
| sed "s:%LSWS_CTRL%:$SERVERROOT/bin/lswsctrl:" "${S}/dist/admin/misc/lshttpd.service.in" > "${S}/dist/admin/misc/lshttpd.service" || die | ||
|
|
||
| local mycmakeargs=( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why?
| } | ||
|
|
||
| src_install() { | ||
| default |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should surely be cmake_src_install.
|
|
||
| src_install() { | ||
| default | ||
| systemd_dounit "${D}"/admin/misc/lshttpd.service || die |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ED, not D, but no need for die here (it dies for us).
| app-arch/brotli | ||
| dev-libs/yajl | ||
| virtual/libcrypt | ||
| ruby? ( dev-lang/ruby ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is unlikely to be right by itself and should use an eclass.
What to do if you don't have php and eselect-php support?