| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- function Get-LatestDirectory {
- param (
- $Path
- )
- Get-ChildItem -Path $Path | Where-Object {$_.PSIsContainer} | Sort-Object LastWriteTime -Descending | Select-Object -First 1
- }
- $build_commands = @(
- [PSCustomObject]@{
- Name = "Official Dev \ Unleashed";
- FbtSwitch = "od";
- FirmwarePath = "flipperzero-firmware_official_dev";
- ArtifactName = "totp_official-dev_unleashed_fw.fap"
- }
- [PSCustomObject]@{
- Name = "Official Stable";
- FbtSwitch = "os";
- FirmwarePath = "flipperzero-firmware_official_stable";
- ArtifactName = "totp_official-stable_fw.fap"
- }
- )
- Push-Location $PSScriptRoot
- if (!(Test-Path -PathType Container "build")) {
- New-Item -ItemType Directory -Path "build"
- } else {
- Remove-Item "build\*" -Recurse -Force
- }
- foreach ($build_command in $build_commands) {
- Write-Host "Building $($build_command.Name)"
- $build_path = Join-Path -Path $build_command.FirmwarePath -ChildPath "build"
- if (Test-Path -PathType Container $build_path) {
- Remove-Item "$build_path\*" -Recurse -Force
- }
- ./fbt $build_command.FbtSwitch COMPACT=1 DEBUG=0 VERBOSE=0 fap_totp
- $latest_dir = Get-LatestDirectory -Path $build_path
- $build_output_artifact = "build\$($build_command.ArtifactName)"
- Copy-Item "$build_path\$latest_dir\.extapps\totp.fap" -Destination $build_output_artifact
- Write-Host "Artifacts for $($build_command.Name) stored at $build_output_artifact"
- }
- Pop-Location
|