Add this to your home-manager

    let
      f = pkgs.factorio.override {
        username = "<Your Username>";
        token = "<Token>";
        versionsJson = ./factorio.json;
      };
    in
    {
      home-manager.users."<Your Username>".home.packages = [ f ];
    };

In factorio.json

{
  "x86_64-linux": {
    "alpha": {
      "stable": {
        "name": "factorio-space-age_linux_2.0.7.tar.xz",
        "needsAuth": true,
        "sha256": "1zvk1skkm37kyikq4l1q285l8zhxc6lqvs1x2y2ccxwd4cdm6r96",
        "tarDirectory": "x64",
        "url": "https://factorio.com/get-download/2.0.7/expansion/linux64",
        "version": "2.0.7"
      }
    }
  }
}

To get your Factorio working.

  • @Doolbs
    link
    English
    81 month ago

    Why?

    I’m thinking of installing it. Is there a problem with it not running?

    • @[email protected]OP
      link
      fedilink
      English
      23
      edit-2
      1 month ago

      You need to package all dynamically linked executables because NixOS disables them by design. It’s to prevent two programs not working because they depend on different versions of a single library. But it’s not helpful when you have a program you need to run, and you need it real soon.

      In terms of whether Factorio runs or not, it does run. You have to add that configuration though.

      Still, if you are familiar with Linux and don’t usually get that “I need a program running ASAP” situations, it is a great OS to learn. I can recommend them.