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
sys-apps/smcipmitool: New package #7305
Conversation
Pull Request assignment Areas affected: ebuilds, other files, profiles sys-apps/smcipmitool: @gentoo/proxy-maint (new package) Bugs linked: 601392 In order to force reassignment and/or bug reference scan, please append |
ef65e2c
to
f038d81
Compare
64664ec
to
e7d662f
Compare
sys-apps/smcipmitool/metadata.xml
Outdated
<name>Proxy Maintainers</name> | ||
</maintainer> | ||
<use> | ||
<flag name="bundled-jre">Use bundled Java JRE instead of system JRE.</flag> |
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.
Is there a very good reason to use either of that? If not, please unbundle unconditionally.
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.
From point of "working" not. I only thought, that in case, if there would something go wrong with a newer java version, you can use the shipped one. It's working for me fine with the current java version in portage. So remove it and used always system java?
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.
Please do. Bundled libraries are a major PITA for security, so better not to add it if unnecessary.
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.
Allright, I've pushed a new version, which uses only system JRE and system stunnel, as it works for me.
|
||
S="${WORKDIR}" | ||
|
||
QA_PREBUILT="opt/smcipmitool/libiKVM*.so opt/smcipmitool/libjcurses*.so /opt/smcipmitool/libSharedLibrary*.so opt/smcipmitool/BMCSecurity/linux/stunnel32 opt/smcipmitool/BMCSecurity/linux/stunnel64 /opt/smcipmitool/jre/*" |
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.
Could you list them one per line? Just like 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.
Will be fixed.
|
||
# Install libs | ||
exeinto /opt/smcipmitool | ||
doexe ${my_arch}/DrvRedirNative.dll |
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.
Do we actually need the DLLs on Linux?
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.
To be honest, I don't know. It's works without DLLs here, but I can't test every IPMI function on my supermicro board. So I choosed to include the for "just in case". Remove 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.
Your choice. I don't have a strong opinion.
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 check via file
if they're Windows or just weird-named Linux files.
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.
Good hint, thanks. Acording to file, these are all windows dll files.
So I am dropping them all, as it works for me without them.
DrvRedirNative.dll: PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
iKVM32.dll: PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
iKVM64.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows
libjcurses64.dll: PE32+ executable (DLL) (console) x86-64, for MS Windows
libjcurses.dll: PE32 executable (DLL) (console) Intel 80386 (stripped to external PDB), for MS Windows
SharedLibrary32.dll: PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
SharedLibrary64.dll: PE32+ executable (DLL) (GUI) x86-64, for MS Windows
|
||
DESCRIPTION="An out-of-band utility for interfacing with SuperBlade and IPMI devices via CLI" | ||
HOMEPAGE="https://www.supermicro.com/" | ||
SRC_URI="amd64? ( ftp://ftp.supermicro.com/utility/${MY_PN}/${MY_PN}_${MY_PV}_build.${MY_DATE}_bundleJRE_Linux_x64.tar.gz ) |
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.
Wrong URL ;-). The directory has lowercase 'tool' apparently.
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.
Whoops :P Fixed and added also /Linux/, as this seems new.
fafe664
to
1e3515a
Compare
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.
Thanks again for putting together this ebuild!
|
||
EAPI=6 | ||
|
||
inherit eapi7-ver java-vm-2 |
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.
Does this package need Java at all to actually work? I see no JDK/JRE specified in DEPEND/RDEPEND which makes me wonder why this eclass is inherited.
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.
Yes, it needs Java. I've added the missing dependency.
I am using the class for "${JAVA_VM_SYSTEM}" to create the symlink.
Pull request CI report Report generated at: 2018-03-27 21:09 UTC Issues already there before the PR (double-check them): |
KEYWORDS="-* ~amd64 ~x86" | ||
|
||
RDEPEND="sys-libs/ncurses:5 | ||
virtual/jre" |
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'm pretty sure repoman will complain here.
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.
Not on my gentoo?
╰─➤ repoman full
RepoMan scours the neighborhood...
Note: use --include-dev (-d) to check dependencies for 'dev' profiles
RepoMan sez: "If everyone were like you, I'd be out of business!"
╰─➤ repoman -dx full
RepoMan scours the neighborhood...
RepoMan sez: "If everyone were like you, I'd be out of business!"
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.
You're right, maybe because the other slot of jre is masked. Disregard this for now.
doins ${my_arch}/*.jar ${my_arch}/*.lax ${my_arch}/*.properties | ||
|
||
# Use system java | ||
dosym ${JAVA_VM_SYSTEM}/jre /opt/smcipmitool/jre |
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.
Please do not use absolute symlinks. In other words, append enough ..
s to make it work for absolute paths.
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.
Yep, seems, I've forgotten it here.
doins ${my_arch}/BMCSecurity/linux/stunnel.conf | ||
|
||
# Use system stunnel | ||
if use amd64; then |
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.
Nit. Simpler:
dosym ../../../../usr/bin/stunnel /opt/smcipmitool/BMCSecurity/linux/stunnel$(usex amd64 64 32)
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.
Okay, will do.
if use amd64; then | ||
doexe ${my_arch}/*64.so | ||
else | ||
doexe ${my_arch}/libjcurses.* ${my_arch}/*32.so |
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'm a bit confused why jcurses is only needed on x86.
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.
It's needed on both. But the names are libjcurses.so and libjcurses64.so.
Unlike the other files, the "32" is here missing, so it's not get by *32.so :(
Thanks! |
sys-apps/smcipmitool: New package
Closes: https://bugs.gentoo.org/601392