metasploit: ruby30 and some fixes

This commit is contained in:
Rick Farina (Zero_Chaos) 2023-03-14 16:23:15 -04:00
parent ec871de001
commit a385fed29a
No known key found for this signature in database
GPG key ID: A29433C0AA431DDC

View file

@ -1,11 +1,11 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
#never ever ever have more than one ruby in here
#TODO: use ruby-single instead?
USE_RUBY="ruby27"
USE_RUBY="ruby30"
inherit eutils ruby-ng multiprocessing
if [[ ${PV} == "9999" ]] ; then
@ -30,7 +30,7 @@ IUSE="development +java nexpose oracle +pcap test"
#multiple known bugs with tests reported upstream and ignored
#http://dev.metasploit.com/redmine/issues/8418 - worked around (fix user creation when possible)
RESTRICT="test"
RESTRICT="strip test"
RUBY_COMMON_DEPEND="
dev-ruby/bundler:2
@ -43,6 +43,7 @@ COMMON_DEPEND="
dev-db/postgresql:*[server]
dev-db/sqlite
|| ( app-crypt/johntheripper-jumbo >=app-crypt/johntheripper-1.7.9-r1[-minimal(-)] )
dev-libs/libffi
dev-libs/libxml2
dev-libs/libxslt
dev-libs/openssl
@ -53,7 +54,6 @@ RDEPEND+=" ${COMMON_DEPEND}
>=app-eselect/eselect-metasploit-0.16"
DEPEND+=" ${COMMON_DEPEND}"
RESTRICT="strip"
QA_PREBUILT="
usr/lib*/${PN}${SLOT}/data/templates/template_x86_linux.bin
@ -174,7 +174,9 @@ fix_gemspec() {
}
pkg_setup() {
ruby-ng_pkg_setup
if use test; then
pushd "${S}/../temp" > /dev/null || die
su postgres -c "dropdb msf_test_database" #this is intentionally allowed to fail
su postgres -c "createuser msf_test_user -d -S -R"
if [ $? -ne 0 ]; then
@ -182,8 +184,8 @@ pkg_setup() {
su postgres -c "createuser msf_test_user -d -S -R" || die
fi
su postgres -c "createdb --owner=msf_test_user msf_test_database" || die
popd > /dev/null || die
fi
ruby-ng_pkg_setup
}
src_unpack() {
@ -195,10 +197,8 @@ src_unpack() {
fix_gemspec
pushd "${S}/all" > /dev/null || die
${USE_RUBY} -S bundle-audit --update || true
#GEM_HOME="${T}" MSF_ROOT="." ${USE_RUBY} -S bundle outdated --local || true
#GEM_HOME="${T}" MSF_ROOT="." ${USE_RUBY} -S bundle update || true
#GEM_HOME="${T}" MSF_ROOT="." ${USE_RUBY} -S bundle install ${makeopts_jobs} --deployment || die
GEM_HOME="${T}" MSF_ROOT="." ${USE_RUBY} -S bundle install ${makeopts_jobs} --path vendor || die
GEM_HOME="${T}" MSF_ROOT="." ${USE_RUBY} -S bundle config set --local path 'vendor'
GEM_HOME="${T}" MSF_ROOT="." ${USE_RUBY} -S bundle install ${makeopts_jobs} || die
popd > /dev/null || die
}