Webreaper / CentralisedPackageConverter

Converts a project to use Centralised Package Management
Apache License 2.0
342 stars 34 forks source link

smaller EXE #53

Open tmrony opened 2 weeks ago

tmrony commented 2 weeks ago

This is a real life saver to convert a solution with 100+ projects.

However, the release/artifacts is kind of bloated with all those dlls and extra files. It would be nice to have as a single EXE tool to put in the bin folder and execute like any other utility shell programs out there (lsd, fd, fzf, etc)

Webreaper commented 2 weeks ago

Good idea.

Webreaper commented 2 weeks ago

Had a quick look, but to enable single file execution and trimming, you need to specify a runtime identifier. I don't know if deploying a dotnet tool supports that (because presumably dotnet tool install needs to run everywhere.

It may be possible to build for MacOs, Windows and Linux, and then deploy all 3, but I don't have time to investigate that at the moment.

I'd suggest if you want a single-Exe version for a particular arch, that you fork and build with publishSingleFile=true in the csproj.