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.
Let us all bow our heads to raiguard, the single person who is developing Factorio’s Linux-native side, and who also agrees that GNOME’s decision to axe server-side decorations was fucking stupid.
this looks like so much pain. Why do you do this to yourself?
The configuration must grow.
Why?
I’m thinking of installing it. Is there a problem with it not running?
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.
So I’m currently in a full stack bootcamp (I know - it was free for me and I’m learning things even if it’s basically a scam)… why does Factorio have a json file?
I suspect that the JSON file is for the Nix package manager
I tried nix because it seemed cool, but dipped fast due to things like this. Definitely not a desktop distro (at least for me)
Nix makes me want to cry
Tears of joy, no doubt
🤣 beautiful