Skip to content

Commit 0f526b9

Browse files
authored
Merge pull request #1156 from Ana06/dependencies
Improve VM-Pip-Install & add libraries-extra.python3.vm
2 parents 5395181 + 40b06a9 commit 0f526b9

File tree

6 files changed

+33
-11
lines changed

6 files changed

+33
-11
lines changed

packages/common.vm/common.vm.nuspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd">
33
<metadata>
44
<id>common.vm</id>
5-
<version>0.0.0.20241002</version>
5+
<version>0.0.0.20241029</version>
66
<description>Common libraries for VM-packages</description>
77
<authors>Mandiant</authors>
88
</metadata>

packages/common.vm/tools/vm.common/vm.common.psm1

+6-4
Original file line numberDiff line numberDiff line change
@@ -1737,16 +1737,18 @@ function VM-Get-MSIInstallerPathByProductName {
17371737
}
17381738
}
17391739

1740-
# Install Python library with Pip
1740+
# Install Python library/ies with Pip
17411741
function VM-Pip-Install {
17421742
param (
1743-
[string]$package
1743+
[string]$libraries # Comma-separated list of libraries to install, example: "flare-capa", "flare-capa,tabulate"
17441744
)
17451745
# Create output file to log python module installation details
17461746
$outputFile = VM-New-Install-Log ${Env:VM_COMMON_DIR}
17471747

1748-
# Ignore warning with `-W ignore` to avoid warnings like deprecation to fail the installation
1749-
Invoke-Expression "py -3.10 -W ignore -m pip install $package --disable-pip-version-check 2>&1 >> $outputFile"
1748+
ForEach ($library in $libraries.Split(",")) {
1749+
# Ignore warning with `-W ignore` to avoid warnings like deprecation to fail the installation
1750+
Invoke-Expression "py -3.10 -W ignore -m pip install $library --disable-pip-version-check 2>&1 >> $outputFile"
1751+
}
17501752
}
17511753

17521754
# Install tool using Pip and create shortcut in the Tools directory

packages/internet_detector.vm/internet_detector.vm.nuspec

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
<package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd">
33
<metadata>
44
<id>internet_detector.vm</id>
5-
<version>1.0.0</version>
5+
<version>1.0.0.20241029</version>
66
<authors>Elliot Chernofsky and Ana Martinez Gomez</authors>
77
<description>Tool that changes the background and a taskbar icon if it detects internet connectivity</description>
88
<dependencies>
9-
<dependency id="common.vm" version="0.0.0.20240821" />
9+
<dependency id="common.vm" version="0.0.0.20241029" />
1010
<dependency id="libraries.python3.vm" version="0.0.0.20240726" />
1111
<dependency id="fakenet-ng.vm" version="3.2.0.20240902" />
1212
</dependencies>

packages/internet_detector.vm/tools/chocolateyinstall.ps1

+2-4
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@ New-Item -Path $toolDir -ItemType Directory -Force -ea 0
1111
VM-Assert-Path $toolDir
1212

1313
# Install pyinstaller (needed to build the Python executable) and tool dependencies ('pywin32')
14-
$dependencies = @('pyinstaller', 'pywin32')
15-
ForEach ($dependency in $dependencies) {
16-
VM-Pip-Install $dependency
17-
}
14+
$dependencies = "pyinstaller,pywin32"
15+
VM-Pip-Install $dependencies
1816

1917
# This wrapper is needed because we can't run PyInstaller as admin, so this forces a usermode context.
2018
Start-Process -FilePath 'cmd.exe' -ArgumentList "/c pyinstaller --onefile -w --distpath $toolDir --workpath $packageToolDir --specpath $packageToolDir $packageToolDir\internet_detector.pyw" -Wait
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd">
3+
<metadata>
4+
<id>libraries-extra.python3.vm</id>
5+
<version>0.0.0.20241029</version>
6+
<description>Install extra Python useful libraries</description>
7+
<authors>Several, check in pypi.org for every of the libraries</authors>
8+
<dependencies>
9+
<dependency id="common.vm" version="0.0.0.20241029"/>
10+
<dependency id="libraries.python3.vm" />
11+
</dependencies>
12+
</metadata>
13+
</package>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
$ErrorActionPreference = 'Stop'
2+
Import-Module vm.common -Force -DisableNameChecking
3+
4+
try {
5+
$dependencies = "asciinet,bs4,flare_capa,langchain,langchain_google_genai,langchain_openai,networkx,python-statemachine,requests,tabulate,tenacity"
6+
VM-Pip-Install $dependencies
7+
} catch {
8+
VM-Write-Log-Exception $_
9+
}

0 commit comments

Comments
 (0)