Building from source
The project contains no hidden build farm. The same publish command produces the exe that the release ships, and the entire pipeline runs on plain Windows with the .NET SDK.
01Requirements
- Windows 10/11, x64
- .NET 8/9/10 SDK (the app targets .NET 6, which any recent SDK can build)
- git (to check out the repo)
- Internet once, to restore the NuGet packages and the self-contained runtime
02Layout
lurelock/
├─ src/ the application (WPF, C#)
│ ├─ Bloxstrap/ the app project (internal ns kept for compat)
│ │ ├─ .csproj → Lurelock.exe
│ │ ├─ Lurelock.ico the app icon
│ │ └─ Resources/Strings.*.resx
│ ├─ wpfui/ vendored WPF-Fluent UI library (MIT)
│ └─ LICENSE, README upstream MIT notices
├─ site/ this website + the dev docs
├─ dist/ build output (gitignored)
└─ LICENSE, NOTICE.md repo-wide license + attributions
03Building
The desktop shell is a WPF application (the same engine Bloxstrap is built on), with the iOS-style Fluent UI from the vendored wpfui library. This publish produces one self-contained executable that runs without any runtime install:
# from the repo root
dotnet publish src\Bloxstrap\Bloxstrap.csproj -c Release -r win-x64 `
--self-contained true `
-p:PublishSingleFile=true `
-p:IncludeNativeLibrariesForSelfExtract=true `
-p:IncludeAllContentForSelfExtract=true `
-o dist\Lurelock
Output lands in dist/Lurelock/Lurelock.exe as a single self-contained file (~160 MB — the .NET runtime is bundled so the exe runs on any Windows 10/11 machine).
04Verifying
To confirm your build matches the published one:
certutil -hashfile dist\Lurelock\Lurelock.exe SHA256
Compare to the release notes. A discrepancy usually means the published exe was built from a different commit — check the release's build hash line.
05Platform notes
- Windows x64 is the only shipped target.
- The app’s internals retain the upstream
Bloxstrapnamespace and resource names for compatibility; none of that is visible to users. See /dev/legal for the licensing story. - The exe is unsigned. See the FAQ on SmartScreen.