& {
    . "$PSScriptRoot/../../lib/Restoration.ps1";
    . "$PSScriptRoot/../../lib/SoftwareManagement.ps1";
    . "$PSScriptRoot/../../../lib/Software.ps1";
    . "$PSScriptRoot/../../../lib/System.ps1";
    $path = "C:/tools/RetroArch-Win64";

    Start-SoftwareInstaller @args `
        -Backup {
            param([string] $Name)

            Add-BackupArtifacts -Path "$Name" -Source $path `
                -Include @(
                    "config",
                    "cores",
                    "downloads",
                    "playlists",
                    "recordings",
                    "screenshots",
                    "content_history.lpl",
                    "content_*_history.lpl",
                    "retroarch.cfg"
                );
        } `
        -Installer {
            Install-ChocoPackage retroarch;
        } `
        -Configurator {
            param([string] $Name)
            Add-StartMenuIcon "RetroArch" "C:\tools\RetroArch-Win64\retroarch.exe";
            Expand-BackupArtifacts -Path "$Name" -Target $path;
        };
} @args;