diff --git a/net-analyzer/metasploit/Manifest b/net-analyzer/metasploit/Manifest index c0479b8cc..4c13c56d5 100644 --- a/net-analyzer/metasploit/Manifest +++ b/net-analyzer/metasploit/Manifest @@ -2,4 +2,4 @@ AUX database.yml 481 SHA256 2db3df7b05f28aa5ba6d6dedc32d8d1a2e24e020d6fd8aea15b2 AUX metasploit.icon 7630 SHA256 d197dd3b939c35d951c2cd5c19b51200ada7f8f92d90775a9eaebdccf18e3949 SHA512 569db261a3782f3874c30ccaf076be512437a9a5a9df835baf29bacec48dd76b2896e009b5ab165ba82aff72ab15d067155f257787e69c3a7cd034dafa5a9066 WHIRLPOOL 3f66eb2a3b51dc787f5da6b2fd93165fdca3e9ae391db0ea69cb0ea5c6c1d9f2d85fffbdb117da4065e0b3e29daa5b7d7e62740cd3210768aa0cfc4a63679376 DIST framework-4.6.0.tar.bz2 49996884 SHA256 ec6dfe58cb5a897e8c8e56d919dec7c00d56fe758efd1350c2a7a3587ef538c2 SHA512 ff73ebd5e08f96d7ffb63ad59cd4fa608705a1a72f00b82ce074fc537e7037349fedf71f768a895ec4e36aabb4ae07fd6b6a0f12ff88807b8ca9202f0d770633 WHIRLPOOL 952407ce34e0d94f7a824c6a3b963c6321da9aee0626295389b1f4f7d4671b9577e5bfab8f581144696f6c4a1bb073f7b7056d8c54853dbf60a6dcb7c320b336 EBUILD metasploit-4.6.0.ebuild 6293 SHA256 6343754b28505ccec773e20c9a2385890803859d5d38c51f601448d50f39048f SHA512 45cc5cd171bae5f559035bede6bebb7bb81ace641886317c6bf540f34c2c4a645c677c00b72e47daeaa06e195d358d8ad1a95f9c9307ae2f4e65df5fddc7b168 WHIRLPOOL 36fc119489d82c116b822b7742b575f8361f3bb041d8041f309cd4e171502054d0153cd07ef75fc26b9e87fb9104adaa0ed9ce59086d47e34a58d491cdef3885 -EBUILD metasploit-9999.ebuild 7240 SHA256 f2f2ae55193c308b8d032fa996ac004dcbc68ece9fdbe12c5bbf0ab7543cbd2e SHA512 ade490d83d4c0fbd559e85e5905563b9beee5bc8c0f0be0914455df502b32b531d0fc277093ec3e32a603cd00670500d63b693dfe6f20d8ad7d9a1c15a27e7b9 WHIRLPOOL fb7fd5e57c0dd4972a171f0dc258c444a72f04be7837d1dfdf27da8de40000f59d5c6540dc1475c50a72a429a2cbb2b0f457f20a227662787b4bf41271dd70c0 +EBUILD metasploit-9999.ebuild 8450 SHA256 9768a1032238dc3235a2b1ed9b8f2dc99c828036d05cb7278b52b1ab245a8ef3 SHA512 05c3dfb4932eddd2667ccf503b18833fff6d58e67b1d358b6940743b36664f005c21e484430ec345c694275178ffbcc469b2145fc9d42bf5df8b68561868b51f WHIRLPOOL 286f54c45d1d71a10ab20e7f8ecfdfb1ba435deccc9422b9f7f6c6603f4386c783b68d88b1ced3777fd5b41ec06ca4a1f1905ebc78d7880ff294bebef5d55d6a diff --git a/net-analyzer/metasploit/metasploit-9999.ebuild b/net-analyzer/metasploit/metasploit-9999.ebuild index bd96130a1..ad558df92 100644 --- a/net-analyzer/metasploit/metasploit-9999.ebuild +++ b/net-analyzer/metasploit/metasploit-9999.ebuild @@ -23,42 +23,43 @@ DESCRIPTION="Advanced open-source framework for developing, testing, and using v HOMEPAGE="http://www.metasploit.org/" SLOT="9999" LICENSE="BSD" -IUSE="development +java lorcon +pcap serialport test" +IUSE="development +java lorcon +pcap test" -DEPEND="dev-db/postgresql-server - dev-lang/ruby[ssl] - >=dev-ruby/activesupport-3.0.0 - >=dev-ruby/activerecord-3.2.11 - dev-ruby/json - >=dev-ruby/metasploit_data_models-0.16.6 - dev-ruby/msgpack - dev-ruby/nokogiri - dev-ruby/builder:3 - >=dev-ruby/pg-0.11 - >=dev-ruby/packetfu-1.1.8 - dev-ruby/robots - dev-ruby/kissfft +COMMON_DEPEND="dev-db/postgresql-server + dev-lang/ruby:1.9[ssl] + >=dev-ruby/activesupport-3.0.0[ruby_targets_ruby19] + >=dev-ruby/activerecord-3.2.11[ruby_targets_ruby19] + dev-ruby/json[ruby_targets_ruby19] + >=dev-ruby/metasploit_data_models-0.16.6[ruby_targets_ruby19] + dev-ruby/msgpack[ruby_targets_ruby19] + dev-ruby/nokogiri[ruby_targets_ruby19] + dev-ruby/builder:3[ruby_targets_ruby19] + >=dev-ruby/pg-0.11[ruby_targets_ruby19] + >=dev-ruby/packetfu-1.1.8[ruby_targets_ruby19] + dev-ruby/robots[ruby_targets_ruby19] + dev-ruby/kissfft[ruby_targets_ruby19] >=app-crypt/johntheripper-1.7.9-r1[-minimal] net-analyzer/nmap - !arm? ( java? ( dev-ruby/rjb ) ) - pcap? ( dev-ruby/pcaprub - dev-ruby/network_interface ) + !arm? ( java? ( dev-ruby/rjb[ruby_targets_ruby19] ) ) + pcap? ( dev-ruby/pcaprub[ruby_targets_ruby19] + dev-ruby/network_interface[ruby_targets_ruby19] ) lorcon? ( net-wireless/lorcon[ruby] ) - dev-ruby/bundler - development? ( dev-ruby/redcarpet - dev-ruby/yard - dev-ruby/rake - >=dev-ruby/factory_girl-4.1.0 ) - test? ( >=dev-ruby/factory_girl-4.1.0 - dev-ruby/rake - dev-ruby/database_cleaner - >=dev-ruby/rspec-2.12 - dev-ruby/shoulda-matchers - dev-ruby/timecop ) + dev-ruby/bundler[ruby_targets_ruby19] + development? ( dev-ruby/redcarpet[ruby_targets_ruby19] + dev-ruby/yard[ruby_targets_ruby19] + dev-ruby/rake[ruby_targets_ruby19] + >=dev-ruby/factory_girl-4.1.0[ruby_targets_ruby19] )" +DEPEND="${COMMON_DEPEND} + test? ( >=dev-ruby/factory_girl-4.1.0[ruby_targets_ruby19] + dev-ruby/rake[ruby_targets_ruby19] + dev-ruby/database_cleaner[ruby_targets_ruby19] + >=dev-ruby/rspec-2.12[ruby_targets_ruby19] + dev-ruby/shoulda-matchers[ruby_targets_ruby19] + dev-ruby/timecop[ruby_targets_ruby19] ) " #=dev-ruby/simplecov-0.5.4 #really old, tough to install -RDEPEND="${DEPEND} +RDEPEND="${COMMON_DEPEND} >=app-admin/eselect-metasploit-0.10" RESTRICT="strip" @@ -114,7 +115,10 @@ src_prepare() { #The Gemfile contains real known deps, we keep it for use in src_test #rm -f "${S}"/Gemfile #now we edit the Gemfile based on use flags - #even if we pass --without=blah bundler still calculates the deps and messes us up + #even if we pass --without=blah bundler still calculates the deps and messes us up + if ! use pcap; then + sed -i -e "/^group :pcap do/,/^end$/d" Gemfile || die + fi if ! use development; then sed -i -e "/^group :development do/,/^end$/d" Gemfile || die fi @@ -124,7 +128,6 @@ src_prepare() { if ! use test && ! use development; then sed -i -e "/^group :development/,/^end$/d" Gemfile || die fi - cat Gemfile bundle install --local || die bundle check || die @@ -146,15 +149,24 @@ src_prepare() { echo "echo \"emerge metasploit:9999 -vat && eselect metasploit set metasploit9999\"" >> "${S}"/msfupdate fi #this is set executable in src_install + + #force all metasploit executables to ruby19, ruby18 is not supported anymore and ruby20 is not supported yet + #https://dev.metasploit.com/redmine/issues/8357 + for file in $(ls -1 "${S}"/msf*) + do + #poorly adapted from python.eclass + sed -e "1s:^#![[:space:]]*\([^[:space:]]*/usr/bin/env[[:space:]]\)\?[[:space:]]*\([^[:space:]]*/\)\?ruby\([[:digit:]]\+\(\.[[:digit:]]\+\)\?\)\?\(\$\|[[:space:]].*\):#!\1\2ruby19:" -i "${file}" || die "Conversion of shebang in '${file}' failed" + done } -src_compile() { - if use serialport; then - cd "${S}"/external/serialport - ruby extconf.rb - emake - fi -} +#serialport does not work with ruby19 at this time +#src_compile() { +# if use serialport; then +# cd "${S}"/external/serialport +# ruby extconf.rb +# emake +# fi +#} src_install() { #if ! use test; then @@ -178,10 +190,11 @@ src_install() { insinto /usr/$(get_libdir)/${PN}${SLOT}/config/ doins "${FILESDIR}"/database.yml - if use serialport; then - cd "${S}"/external/serialport - emake DESTDIR="${ED}" install - fi + #does not work with ruby19 at this time + #if use serialport; then + # cd "${S}"/external/serialport + # emake DESTDIR="${ED}" install + #fi fperms +x /usr/$(get_libdir)/${PN}${SLOT}/msfupdate }