Getting started with the Fake dotnetcore version is easy. Just install the corresponding package for your system:
Install chocolatey (a windows package manager) if you have not installed it yet (see https://chocolatey.org). Basically open an admin
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
Install fake via chocolatey
In an admin
choco install fake
There are other ways to get started if chocolatey / an administrator-cmd or global installation is not an option.
Dotnet sdk global tool
Install the .NET sdk (at least
dotnet tool install fake-cli -g
the .deb file can be downloaded from the releases-page
now you can use
This is basically it. You can now execute fake commands. Follow the minimal example below for a quick start.
Use the FAKE
dotnet new template. See FAKE template for more information.
Install the template:
dotnet new -i "fake-template::*"
Run the template:
dotnet new fake
This section is to clarify when an how the intellisense updates when you add new modules (short form: Delete the
<script>.fsx.lock file and re-run fake to update all files)
Assume you have a script
myscript.fsxwith the following contents:
1: 2: 3:
#r "paket: nuget Fake.Core.Target prerelease" #load "./.fake/myscript.fsx/intellisense.fsx"
Where you can add all the fake modules you need (work through the example below if you see this the first time).
run the script to restore your dependencies and setup the intellisense support:
fake run myscript.fsx. This might take some seconds depending on your internet connection
FS0988: Main module of program is empty: nothing will happen when it is runindicates that you have not written any code into the script yet.
now open the script in VS Code with ionide-fsharp extension or Visual Studio.
If you change your dependencies you need to delete
myscript.fsx.lockand run the script again for intellisense to update. Intellisense is shown for the full framework while the script is run as
netcoreapp20therefore intellisense might show APIs which are not actually usable.
See the FAKE 5 modules section.
We distrubute a dotnetcore version of FAKE without the dotnetcore runtime. This version assumes an existing dotnet sdk installation while the non-portable installation doesn't.
Just use the
-portable version of the downloads, extract it and execute.
The advantage of this method is that it is portable (ie. distribute the same binaries) and requires less bandwidth. The disadvantage is that you need to have a dotnet sdk installed.
- See https://github.com/fsharp/FAKE/blob/master/build.fsx Note that with the "new" API you should call the modules directly instead of opening them. Therefore this example is actually pretty bad because it just opened everything (for minimal diff to the "normal" build.fsx)
Create a file named
build.fsx with the following contents:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
Run this file by executing
fake run build.fsx
Get the latest packages from GitHub: https://github.com/fsharp/FAKE/releases
Get the latest binaries from chocolatey: https://chocolatey.org/packages/fake
Get the latest dotnet-fake cli tool by adding
<DotNetCliToolReference Include="dotnet-fake" Version="5.*" /> to your dependencies (https://www.nuget.org/packages/dotnet-fake)