Skip to content
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

Closed
wants to merge 1 commit into from

Conversation

ConiKost
Copy link
Contributor

@ConiKost ConiKost commented Feb 27, 2018

sys-apps/smcipmitool: New package

Closes: https://bugs.gentoo.org/601392

@gentoo-repo-qa-bot
Copy link
Collaborator

Pull Request assignment

Areas affected: ebuilds, other files, profiles
Packages affected: sys-apps/smcipmitool

sys-apps/smcipmitool: @gentoo/proxy-maint (new package)

Bugs linked: 601392

In order to force reassignment and/or bug reference scan, please append [please reassign] to the pull request title.

@gentoo-repo-qa-bot gentoo-repo-qa-bot added new package The PR is adding a new package. self-maintained The PR changes only packages that are maintained by the submitter (i.e. no need to ask anybody else) assigned PR successfully assigned to the package maintainer(s). bug linked Bug/Closes found in footer, and cross-linked with the PR. labels Feb 27, 2018
@ConiKost ConiKost force-pushed the smcipmitool branch 3 times, most recently from ef65e2c to f038d81 Compare March 4, 2018 00:03
@ConiKost ConiKost changed the title sys-apps/smcipmitool: add new 2.19.0 ebuild sys-apps/smcipmitool: add new ebuild Mar 4, 2018
@ConiKost ConiKost force-pushed the smcipmitool branch 3 times, most recently from 64664ec to e7d662f Compare March 25, 2018 17:33
<name>Proxy Maintainers</name>
</maintainer>
<use>
<flag name="bundled-jre">Use bundled Java JRE instead of system JRE.</flag>
Copy link
Member

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.

Copy link
Contributor Author

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?

Copy link
Member

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.

Copy link
Contributor Author

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/*"
Copy link
Member

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.

Copy link
Contributor Author

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
Copy link
Member

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?

Copy link
Contributor Author

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?

Copy link
Member

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.

Copy link
Member

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.

Copy link
Contributor Author

@ConiKost ConiKost Mar 25, 2018

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

@ConiKost ConiKost changed the title sys-apps/smcipmitool: add new ebuild sys-apps/smcipmitool: New package Mar 25, 2018

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 )
Copy link
Member

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.

Copy link
Contributor Author

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.

@ConiKost ConiKost force-pushed the smcipmitool branch 2 times, most recently from fafe664 to 1e3515a Compare March 27, 2018 19:29
Copy link
Member

@monsieurp monsieurp left a 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
Copy link
Member

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.

Copy link
Contributor Author

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.

@gentoo-repo-qa-bot
Copy link
Collaborator

Pull request CI report

Report generated at: 2018-03-27 21:09 UTC
Newest commit scanned: b7d36c2
Status: ✅ good

Issues already there before the PR (double-check them):
https://qa-reports.gentoo.org/output/gentoo-ci/60e1250f2/output.html#app-office/auto-multiple-choice
https://qa-reports.gentoo.org/output/gentoo-ci/60e1250f2/output.html#net-fs/samba

KEYWORDS="-* ~amd64 ~x86"

RDEPEND="sys-libs/ncurses:5
virtual/jre"
Copy link
Member

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.

Copy link
Contributor Author

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!"

Copy link
Member

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
Copy link
Member

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.

Copy link
Contributor Author

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
Copy link
Member

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)

Copy link
Contributor Author

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
Copy link
Member

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.

Copy link
Contributor Author

@ConiKost ConiKost Mar 29, 2018

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 :(

@mgorny
Copy link
Member

mgorny commented Mar 29, 2018

Thanks!

@ConiKost ConiKost deleted the smcipmitool branch July 11, 2018 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
assigned PR successfully assigned to the package maintainer(s). bug linked Bug/Closes found in footer, and cross-linked with the PR. new package The PR is adding a new package. self-maintained The PR changes only packages that are maintained by the submitter (i.e. no need to ask anybody else)
Projects
None yet
4 participants