GithubHelp home page GithubHelp logo

can't build exa about nix-on-droid HOT 7 CLOSED

nix-community avatar nix-community commented on August 26, 2024
can't build exa

from nix-on-droid.

Comments (7)

t184256 avatar t184256 commented on August 26, 2024 1

I've dutifully re-verified the presence of this bug after big changes, and after today's updates I'm happy to note that nix run nixpkgs.exa on a clean install just downloads and installs a perfectly working precompiled exa.

I'm not sure if it correctly builds on device though, but it's a turn for the better anyway.

from nix-on-droid.

t184256 avatar t184256 commented on August 26, 2024

Yeah, seems like a simpler reproducer to #8, many thanks for reporting. Seems to be related to --link-to-symlink. Possible fix found, stay tuned...

from nix-on-droid.

t184256 avatar t184256 commented on August 26, 2024

OK, sorry, I give up for now.

I've fixed an issue with hardlink emulation in d76c378 and reuploaded the bootstrap archive to nix-on-droid.unboiled.info, but there seems more to it.

For some twisted reason, aarch64 builds of Rust applications end up with no binaries in the output, on both 19.03 and trunk. This seems to be the case for all Rust apps, and I'm not sure that works on real aarch64 boxes, as aarch64 builds of Rust apps have been disabled on Hydra, so I have a strong suspicion that Rust support on aarch64 is just broken in general.

The weird thing is that it worked for me, but just once. I even started writing a reply that everything is cool now, but decided to re-test it in a clean installation, and I cannot replicate the success ever since.

from nix-on-droid.

bbigras avatar bbigras commented on August 26, 2024

I have a strong suspicion that Rust support on aarch64 is just broken in general.

Termux seems able to build Rust apps on aarch64:

image

from nix-on-droid.

t184256 avatar t184256 commented on August 26, 2024

Sure. I meant that Nix in general could have problems with that.

Nix-on-Droid particularly builds exa just fine, and then, for the reason I cannot adequately debug into, just does not put the resulting binary into the output. The same problem is exhibited with some other Rust packages.

Another question that I don't have a satisfactory answer to, is why does it attempt building it on its own in the first place. The absence of a suitable build in the Hydra cache prompted me to ask whether there is a problem with building Rust packages for aarch64 in general. I've tried to solve that by asking for access to a 'proper' aarch64 nix box (community builder), but this process has been stalled due to 'and who are you, huh'? I'm aiming to get it unstuck during the following NixCon by contacting the right people directly.

The other possibility is that the build system does some twisted magic at the end of the build that confuses proot and it's a bug in proot.

So, I did not forget about the issue, but I haven't progressed much too.

from nix-on-droid.

bbigras avatar bbigras commented on August 26, 2024

Nice. I just tested and I'm able to use Rust apps.

from nix-on-droid.

bbigras avatar bbigras commented on August 26, 2024

Maybe we can close this and reopen if it still causes me problem in the future.

from nix-on-droid.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.