Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

factorio: experimental 0.17.52 → 0.17.66 #67766

Closed
wants to merge 1 commit into from
Closed

Conversation

@artemist
Copy link
Member

@artemist artemist commented Aug 30, 2019

Motivation for this change

Factorio experimental was out of date

Things done

Update versions and hashes, and add the new libpulseaudio dependency

  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

I thought ofborg would do this automatically, but
cc @Baughn @elitak

@@ -53,11 +53,11 @@ let
x86_64-linux = let bdist = bdistForArch { inUrl = "linux64"; inTar = "x64"; }; in {
alpha = {
stable = bdist { sha256 = "0b4hbpdcrh5hgip9q5dkmw22p66lcdhnr0kmb0w5dw6yi7fnxxh0"; version = "0.16.51"; withAuth = true; };
experimental = bdist { sha256 = "1q66chnxsdlaz1bj3al62iikyxvknj1vkwh5bcc46favy4wpqpzz"; version = "0.17.52"; withAuth = true; };
experimental = bdist { sha256 = "1h9mysxvsxjly9qc00k71asn9rv6qw9p0sxbz7wps4pj2b57jd21"; version = "0.17.66"; withAuth = true; };

This comment has been minimized.

@jonringer

jonringer Aug 30, 2019
Contributor

I got a diff sha:

Suggested change
experimental = bdist { sha256 = "1h9mysxvsxjly9qc00k71asn9rv6qw9p0sxbz7wps4pj2b57jd21"; version = "0.17.66"; withAuth = true; };
experimental = bdist { sha256 = "057mb3ab85k0qxg158xmbhkygaz0xs3pqbs83h542xpv0629hc7y"; version = "0.17.66"; withAuth = true; };

This comment has been minimized.

@artemist

artemist Aug 30, 2019
Author Member

I just downloaded the package again and got the hash I originally put in. I also built using the script after deleting the downloaded file and it worked with my hash. You may have gotten a corrupted downloaded or not added a correct token

This comment has been minimized.

@jonringer

jonringer Aug 30, 2019
Contributor

unlikely:

[nix-shell:/home/jon/.cache/nix-review/pr-67766-1]$ nix build --keep-going -f ./nixpkgs/ factorio factorio-experimental
hash mismatch in fixed-output derivation '/nix/store/2cb10y9zgafyxv4rw3yphdi68cia8pgx-factorio_alpha_x64-0.17.66.tar.xz':
  wanted: sha256:1h9mysxvsxjly9qc00k71asn9rv6qw9p0sxbz7wps4pj2b57jd21
  got:    sha256:1qszpicbp03mc2ma4szpdb04nc1hzz3ldjyvsnqy1c6919ybib2d
cannot build derivation '/nix/store/y04gngfn7r2pfs19fmkzxkin0zqfxmww-factorio-alpha-0.17.66.drv': 1 dependencies couldn't be built
hash mismatch in fixed-output derivation '/nix/store/g77yqq1v108rgkclv2l1d6mj8hq5b0x4-factorio_alpha_x64-0.16.51.tar.xz':
  wanted: sha256:0b4hbpdcrh5hgip9q5dkmw22p66lcdhnr0kmb0w5dw6yi7fnxxh0
  got:    sha256:1z9ggmxk4bk87s0fbb13y3w4dbkh7ijrffvcb21izw5r5n68p9q6
cannot build derivation '/nix/store/albcywhndgzxh0955l7rm07jbn3nd0ir-factorio-alpha-0.16.51.drv': 1 dependencies couldn't be built
[0 built (2 failed)]
error: build of '/nix/store/albcywhndgzxh0955l7rm07jbn3nd0ir-factorio-alpha-0.16.51.drv', '/nix/store/y04gngfn7r2pfs19fmkzxkin0zqfxmww-factorio-alpha-0.17.66.drv' failed

This comment has been minimized.

@jonringer

jonringer Aug 30, 2019
Contributor

if nixpkgs finds a cache hit with the sha, it won't do any more verification on the contents. You most likely have a stale archive.

This comment has been minimized.

@artemist

artemist Aug 30, 2019
Author Member

I garbage collected my system and specifically used nix-store to delete it. Nix redownloaded it from the server. I also tried downloading directly and use nix-store --add to add it an get the hash

@@ -53,11 +53,11 @@ let
x86_64-linux = let bdist = bdistForArch { inUrl = "linux64"; inTar = "x64"; }; in {
alpha = {
stable = bdist { sha256 = "0b4hbpdcrh5hgip9q5dkmw22p66lcdhnr0kmb0w5dw6yi7fnxxh0"; version = "0.16.51"; withAuth = true; };

This comment has been minimized.

@jonringer

jonringer Aug 30, 2019
Contributor

also got a different sha here.

Suggested change
stable = bdist { sha256 = "0b4hbpdcrh5hgip9q5dkmw22p66lcdhnr0kmb0w5dw6yi7fnxxh0"; version = "0.16.51"; withAuth = true; };
stable = bdist { sha256 = "1g5q19r0ggdnp8272l7s2h9gd4hqpdsxxkq7vhjsp1kl96nq8ays"; version = "0.16.51"; withAuth = true; };

This comment has been minimized.

@artemist

artemist Aug 30, 2019
Author Member

I did not change this at all, and I don't believe the hash has changed. This builds for me with no change, but only does because I setup API keys. Note that it does actually download the bundle from the website.

@jonringer
Copy link
Contributor

@jonringer jonringer commented Aug 30, 2019

@GrahamcOfBorg build factorio factorio-experimental

@artemist
Copy link
Member Author

@artemist artemist commented Aug 30, 2019

I don't think that ofborg has the credentials required to download (both require an API key)

@jonringer
Copy link
Contributor

@jonringer jonringer commented Aug 30, 2019

the headless servers don't require a key to download, they're "freely" available here: https://factorio.com/download/experimental

@artemist
Copy link
Member Author

@artemist artemist commented Aug 30, 2019

That would be @GrahamcOfBorg build factorio-headless-experimental
I'm not sure if that works for me yet

@jonringer
Copy link
Contributor

@jonringer jonringer commented Aug 30, 2019

ofborg will only build packages with free licenses, factorio is under copyright

@elitak
Copy link
Contributor

@elitak elitak commented Aug 30, 2019

@jonringer IIRC, because of the way the builder tries to fetch packages, it will fetch the body of the 401 unauthorized response and hash that, rather than give you the explanatory error message we've put into pkgs/games/factorio/default.nix. Maybe someone with expertise can help us get that shown in cases where the user hasn't provided the credentials cached in ~/.factorio/player-data.json. Use instead something like this to test the alpha build: nix-build -E '(import <nixpkgs> { config = { allowUnfree = true; }; }).factor io-headless.override { username = "<username>"; token = "<service-token>"; }'

@artemist I fetched, built, and test ran the game, so these changes look good to me.

@jonringer
Copy link
Contributor

@jonringer jonringer commented Aug 30, 2019

ah, interesting, i guess i was just getting catch hits for the others. If it works fo you all then the diff LGTM

@artemist artemist closed this Jan 7, 2020
@artemist artemist deleted the artemist:factorio branch Jan 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.