Moving from ThreatScan
PushWarden was called ThreatScan up to version 0.4. The name changed in version 0.5.0 because “ThreatScan” is used by other security products. It is the same program with the same features and the same release signing key.
What was renamed
| Before | Now | |
|---|---|---|
| Command | threatscan |
pushwarden |
| Repository | github.com/FaheemRafiq/threatscan |
github.com/FaheemRafiq/pushwarden |
| Documentation | faheemrafiq.github.io/threatscan |
faheemrafiq.github.io/pushwarden |
| Data directory | ~/.threatscan |
~/.pushwarden (an existing ~/.threatscan keeps being used, see below) |
| Environment variables | THREATSCAN_HOME, THREATSCAN_ROOTS, … |
PUSHWARDEN_HOME, PUSHWARDEN_ROOTS, … |
| Background service | threatscan-guard.service, com.threatscan.guard, “ThreatScan Guard” |
pushwarden-guard.service, com.pushwarden.guard, “PushWarden Guard” |
| Downloads | ThreatScan-Setup.exe, ThreatScan.pkg, threatscan-linux-amd64.deb |
PushWarden-Setup.exe, PushWarden.pkg, pushwarden-linux-amd64.deb |
| Marker for files that hold signatures on purpose | threatscan:allow-signatures |
pushwarden:allow-signatures |
Moving an existing installation
ThreatScan does not turn into PushWarden through its own update, because the download names changed. Do this once on each machine.
-
Remove ThreatScan. Your settings, history and quarantine are not deleted by this.
threatscan uninstall --unblockOn Windows you can also remove it under Settings, Apps.
--unblockremoves the firewall block, which asks for administrator rights; PushWarden sets up its own in the next step. -
Install PushWarden as described in Installation.
-
Check it.
pushwarden status pushwarden historystatusshould show the guard alive, andhistoryshould show what ThreatScan recorded.
Your data is kept
PushWarden looks for its data directory in this order:
- the folder named by
PUSHWARDEN_HOME, if that variable is set; ~/.pushwarden, if it exists;~/.threatscan, if it exists;- otherwise a new
~/.pushwarden.
So a machine that had ThreatScan keeps its settings, protection history, quarantine, allow decisions and github-clean progress without any step from you. New installations get ~/.pushwarden.
To switch an existing machine to the new folder name, do it while the guard is stopped:
pushwarden uninstall
mv ~/.threatscan ~/.pushwarden
pushwarden install
What you need to change yourself
- Environment variables. The old
THREATSCAN_*names are not read. Rename them in CI pipelines, scripts and shell start-up files, for exampleTHREATSCAN_HOMEtoPUSHWARDEN_HOME. The full list is in Configuration. - The install one-liner and workflow references. Use
FaheemRafiq/pushwardenin the install command and in anyuses:line that calls the reusable workflow. See CI and automation. - The allow marker. A file in your own repositories that carries
threatscan:allow-signaturesneedspushwarden:allow-signaturesinstead, or PushWarden flags it. - Commands in scripts and hooks. Replace
threatscanwithpushwarden. A pre-commit hook installed by ThreatScan calls the old command: runpushwarden harden --pre-commit .in that repository to install it again.
Nothing changes for the central event upload: the upload address is a setting and stays as you configured it. Only the example table name in the documentation is now pushwarden_events.