Skip to content

bcssov/IronyModManager

Repository files navigation

Documentation

Check the Wiki

Building Irony Mod Manager

All instructions are for Windows.

  1. Install Visual Studio 2022 (required for .NET6)
  2. Clone the repo to your local machine
  3. Open the LocalizationResourceGenerator solution file located in \Tools\LocalizationResourceGenerator\src
    • Build the solution and copy the binaries to the Tools\LocalizationResourceGenerator folder
  4. If you don't already have one, create a folder for local NuGet packages and unzip the CWTools.Irony-Private.0.4.0-alpha8 package to it
    • This is just an up to date version of CWTools, the one on the public NuGet is older
    • Example path: C:\Users\username\code\LocalNuGet
    • If you need to set up a local NuGet repo:
      1. If not already registered, register the LocalNuGet folder with VisualStudio by clicking Tools -> NuGet Package Manager -> Package Manager Settings
      2. Select the Package Sources menu item
      3. Hit the '+' plus sign icon to create a new package source
        1. Name it Local
        2. Point it at the folder you created before
  5. In the IronyModManager directory, create a folder called "keys"
    • Example path: C:\Users\username\code\IronyModManager\keys
  6. Open the Visual Studio Terminal and create the following keys in that folder by using the command "sn -k keyPairName.snk"
    • Irony-Main
    • Irony-Plugin
  7. In the terminal, unpack the public keys from the key pairs by using the command "sn -p keyPairName.snk publicKeyName.snk"
    • Irony-Main-Public
    • Irony-Plugin-Public
  8. Copy the public keys to the \src\IronyModManager.DI folder
  9. Right click the IronyModManager.Parser project file and select Manage NuGet Packages
    • CWTools has a dependency on FSharp.Core v4.7.0 that isn't automatically resolved, so add that to the project
  10. Restore NuGet Packages for the solution
  11. Rebuild All
  12. Set IronyModManager as the Startup project and launch it

Special Thanks

Special thanks to tboby from CWTools for extending CWTools API for my needs. And also thanks to all early adopters and testers.