metasploit: add passthru.updateScript

This commit is contained in:
makefu 2020-10-25 21:35:33 +01:00
parent 5c79b3dda0
commit f3fa188c02
No known key found for this signature in database
GPG Key ID: 36F7711F3FC0F225
2 changed files with 20 additions and 9 deletions

View File

@ -1,14 +1,5 @@
{ stdenv, fetchFromGitHub, makeWrapper, ruby, bundlerEnv }:
# Maintainer notes for updating:
# 1. increment version number in expression and in Gemfile
# 2. run $ nix-shell --command "bundler install && bundix"
# in metasploit in nixpkgs
# 3. run $ sed -i '/[ ]*dependencies =/d' gemset.nix
# 4. run $ nix-build -A metasploit ../../../../
# 5. update sha256sum in expression
# 6. run step 3 again
let
env = bundlerEnv {
inherit ruby;
@ -45,6 +36,9 @@ in stdenv.mkDerivation rec {
'';
# run with: nix-shell maintainers/scripts/update.nix --argstr path metasploit
passthru.updateScript = ./update.sh;
meta = with stdenv.lib; {
description = "Metasploit Framework - a collection of exploits";
homepage = "https://github.com/rapid7/metasploit-framework/wiki";

View File

@ -0,0 +1,17 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p curl bundix git libiconv libpcap libxml2 libxslt pkg-config postgresql ruby.devEnv sqlite xmlstarlet nix-update
set -eu -o pipefail
cd "$(dirname "$(readlink -f "$0")")"
latest=$(curl https://github.com/rapid7/metasploit-framework/releases.atom | xmlstarlet sel -N atom="http://www.w3.org/2005/Atom" -t -m /atom:feed/atom:entry -v atom:title -n | head -n1)
echo "Updating metasploit to $latest"
sed -i "s#refs/tags/.*#refs/tags/$latest\"#" Gemfile
bundler install
bundix
sed -i '/[ ]*dependencies =/d' gemset.nix
cd "../../../../"
nix-update metasploit --version "$latest"