-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
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
pkgs/stdenv/linux: add mips64el bootstrap-files #180223
Conversation
This PR adds Hydra-generated bootstrap tarballs for mips64el-linux. I'll be following the script established in #151399, which I previously used in #168199. Files came from [this](https://hydra.nixos.org/build/182757245) Hydra build, which used nixpkgs revision ef3fe25 to instantiate: ``` /nix/store/a2bvv663wjnyhq8m7v84aspsd3sgf9h6-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64.drv ``` and then built: ``` /nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64 ``` I downloaded these files from Hydra with the following commands: ``` STOREPATH=aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64 OPTIONS="--option binary-caches https://cache.nixos.org" nix store add-file \ --name bootstrap-tools.tar.xz \ $(nix-store ${OPTIONS} -r /nix/store/${STOREPATH})/on-server/bootstrap-tools.tar.xz nix store add-path \ --name busybox \ $(nix-store ${OPTIONS} -r /nix/store/${STOREPATH})/on-server/busybox ``` I then prefetched them into `/nix/store` with: ``` $ nix store prefetch-file --executable file:///nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/busybox Downloaded 'file:///nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/busybox' to '/nix/store/ai30ss23914syz6j8m95arkwffbbx44k-busybox' (hash 'sha256-sTE58ofjqAqX3Xtq1g9wDxzIe6Vo//GHbicfqJoivDI='). $ nix store prefetch-file file:///nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/bootstrap-tools.tar.xz Downloaded 'file:///nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/bootstrap-tools.tar.xz' to '/nix/store/nr6zjrbwbxcxs6brf042zsyqllwbwj9v-bootstrap-tools.tar.xz' (hash 'sha256-tTgjeXpd2YgnfP4JvRuO0bXd2j8GqzBcd57JI3wH9x0='). ``` And started the bootstrap with the following command (the `--arg localSystem` is needed because #161159 has not merged): ``` nix build -f . -L hello --arg localSystem '(import ./lib).systems.examples.mips64el-linux-gnuabi64' ``` As @lovesegfault requested in #151399, here are the the `sha256sum`s of all the `on-server` components for extra verification: ``` $ sha256sum /nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/* b53823797a5dd988277cfe09bd1b8ed1b5ddda3f06ab305c779ec9237c07f71d /nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/bootstrap-tools.tar.xz 598e05abb69b2c1a0db46585cd2131212077c0937ce2a665daf3811f059ae767 /nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/busybox ```
I have verified that, on mips64el-linux-gnuabi64, ef3fe25 plus this PR will successfully bootstrap stdenv and build I'm currently doing |
Good to go. A few small fixes are needed for non-cross builds of the latest nix on mips, but they have nothing to do with the bootstrap-files. @lovesegfault, please let us know when you have uploaded these files to |
Specifically: mips64el can build its own
|
Hi Adam, I'll try to get to this today, thanks for being patient :) |
They should be up :) $ aws s3 cp --recursive --acl public-read /nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/ s3://nixpkgs-tarballs/stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/
upload: ../../../../nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/busybox to s3://nixpkgs-tarballs/stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/busybox
upload: ../../../../nix/store/aw3dmsrh22831l83vi3q9apg9qi3x8ms-stdenv-bootstrap-tools-mips64el-unknown-linux-gnuabi64/on-server/bootstrap-tools.tar.xz to s3://nixpkgs-tarballs/stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/bootstrap-tools.tar.xz
$ aws s3 ls --recursive s3://nixpkgs-tarballs/stdenv-linux/mips64el/
2022-07-16 01:57:13 21346844 stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/bootstrap-tools.tar.xz
2022-07-16 01:57:13 256648 stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/busybox
$ aws s3 cp --recursive s3://nixpkgs-tarballs/stdenv-linux/mips64el/ ./
download: s3://nixpkgs-tarballs/stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/busybox to ef3fe254f3c59455386bc92fe84164f9679b92b1/busybox
download: s3://nixpkgs-tarballs/stdenv-linux/mips64el/ef3fe254f3c59455386bc92fe84164f9679b92b1/bootstrap-tools.tar.xz to ef3fe254f3c59455386bc92fe84164f9679b92b1/bootstrap-tools.tar.xz
$ sha256sum ef3fe254f3c59455386bc92fe84164f9679b92b1/*
b53823797a5dd988277cfe09bd1b8ed1b5ddda3f06ab305c779ec9237c07f71d ef3fe254f3c59455386bc92fe84164f9679b92b1/bootstrap-tools.tar.xz
598e05abb69b2c1a0db46585cd2131212077c0937ce2a665daf3811f059ae767 ef3fe254f3c59455386bc92fe84164f9679b92b1/busybox |
Thanks @lovesegfault, I was able to verify with the commands below. This PR is ready to merge. Nixpkgs is now capable of bootstrapping itself on a fifth architecture.
|
Wonderful! Thanks! |
Description of changes
This PR adds Hydra-generated bootstrap tarballs for mips64el-linux. I'll be following the script established in #151399, which I previously used in #168199.
Files came from this Hydra build, which used nixpkgs revision ef3fe25 to instantiate:
and then built:
I downloaded these files from Hydra with the following commands:
I then prefetched them into
/nix/store
with:And started the bootstrap with the following command (the
--arg localSystem
is needed because #161159 has not merged):As @lovesegfault requested in #151399, here are the the
sha256sum
s of all theon-server
components for extra verification:Things done
./result/bin/
)