Tiny repro attached. Just a single Hello World C# console project.
paket.template looks like this: type project authors konste platform AnyCPU files bin\Release ==> Tools\
The last line is there to copy everything the project produces to the package.
Command paket pack output NuGet produces NuGet package, but HelloWorld.exe is present twice in the same Tools folder - one copy as project primary output and another copy because of bin\Release ==> Tools\ We don't need two copies (I did not even know it is possible to have two identical files in the same folder inside ZIP) so we add extra line to paket.template: !bin\Release\*.exe As the result we get ZERO copies of HelloWorld.exe in the package! There is no way to get one copy of the project primary output - only two or none.
Ideally exclusion clause in the files section should only affect the set of files built by inclusion clauses before it and should not affect primary project output.