-
Notifications
You must be signed in to change notification settings - Fork 107
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
Takes a really long time to install #52
Comments
You probably need to restart the daemon after editing |
Ah yep I believe that's it, I didn't know before that it wouldn't automatically pick up changes to the conf file. Btw even smaller thing (don't want to make a new "issue" for it) that I just ran into is that for me I had to turn the sandbox parameter off when installing hub as it was giving: |
Actually, this is impacting my initial setup more than I thought. For me |
I've also run into that sandbox issue on mac - we might want to recommend AFAIK lack of sandboxing has so far only been a problem when trying I'm not sure but I think sandboxing doesn't change any hashes, in which case it wouldn't affect whether caches work. I'll do some experiments. FWIW I've managed to get caches for everything on mac without sandboxing.
It shouldn't take that long even on the first time (expected behaviour is minutes of downloads from cache), but the second time should take only a few seconds. |
If we want to avoid asking users to restart, we could give them the Nix arguments directly like is done in cachix:
|
That seems like it'd solve the problem for nix commands run inside of ob - trivial to update, cross-platform, etc. |
Fwiw for me it actually takes a long time to run
which seems wrong as it needs to manually build all those packages. |
Does
|
I just did a |
@alexfmpe I think mac stuff is not getting fully cached right now. Can you try building |
Is there anything that needs to be done on Linux to deal with this problem? I did a fresh install of nix and obelisk on Ubuntu today, and Also, when I ran |
@JBetz Ah, that's odd! Can you run nix-build --version? I have a suspicion that you might need to change your |
@ryantrinkle I'm on nix v2.0.4, but my Possibly relevant, I see a bunch of warnings in the beginning of the
|
I think the locale errors were a red herring. After running For comparison, here's what
|
Forgive me if a wrong place for this question. After the completion of obelisk command, issueing 'ob init' gave me this error: ✖ Setting up obelisk Any guide and helps are really appreciated. |
Perhaps the README could be updated with a note about this. I don't mind the long duration for installing or |
@e0 Thing is, it's not supposed to take very long. If binary caches are set up right, installation should be a few minutes. |
@ElvishJerricco I see, that makes sense. I want to add that when running the initial I'm running macOS 10.13.6 and Nix 2.0.4. Please let me know if there is anything I can do to help investigate this problem. Obelisk runs beautifully after |
I'm seeing the same |
@conklech That's right. What version of |
|
I thought ob had a hard requirement on Nix >= 2.0? So if it's pinning Nix itself, wouldn't it be pinning 2.0? Also... it's not generally advisable to use non-system-wide Nix tools... |
@ElvishJerricco @conklech I filed an issue to track this. We hoped it would avoid the hard requirement but it might cause more trouble than it's worth. |
For reference, I installed obsidian per the README ( I also tried running
Note that the hashes for, e.g., I don't think there's anything unusual about my setup, but I don't have enough familiarity with |
@conklech I think we have quite similar setups and experiences. I did have the binary substituter setup but there were still some packages that were being built from source.
|
This is prob ghc vs ghcjs pkg dependency. Ob run only makes use of the ghc environment whereas |
@luigy That makes sense. To get a clearer report since I'd had I then re-installed It might be that the |
@conklech I don’t think the unknown-settings issue is the only thing causing problems with cache missses since some building from source is also happening during the installation of Obelisk. |
+1 for confused first time user, I let it sit there building for an hour before checking log and spotting
Looks like in the same place as @conklech: MacOS 10.13.6, Nix 2.0.4. |
This issue is still pending, and does not appear to be caused by configuration issues. It appears that the binary cache at nixcache.reflex-frp.org does not include the majority of derivations necessary for Looking at If there's any way for me to help, I'd be glad to. |
What makes you say this? It's common that the daemon does not get restarted, giving this illusion. |
@ElvishJerricco : Because trying to install (upgrade) obsidian requires building a big slice of the Haskell ecosystem, despite pulling some derivations from the reflex-frp.org cache. See this gist from a run just now. This is all on macOS, by the way; the title of this issue isn't very informative. I just spun up a NixOS virtual machine to test, and when installing obelisk itself it pulls considerably more from the binary cache; the first (only?) uncached build I ran into was BTW, I don't understand your reference to the daemon not being restarted, so maybe I'm not responding to your actual question. |
@ryantrinkle I'm experiencing the same thing on darwin as @conklech. Those derivations simply aren't cached on nixcache.reflex-frp.org. Is Hydra not doing darwin builds? |
@ElvishJerricco Hmm, you know what, reflex-platform is built on darwin, but maybe that's too far from what obelisk needs. We should definitely cache obelisk specifically for darwin, as well. |
I tried making a fork with Travis CI darwin builds enabled. The Travis OSX builder does not have the cache miss problem that @ElvishJerricco and I are seeing. See this log; ignore the cachix stuff, which isn't actually playing a meaningful role.. As expected, it pulls everything but I'm at a loss as to what's different, since Off-topic: Any interest in a pull request to add |
Please disregard the previous comment. The Travis build is not pulling everything from the cache, and is in fact showing the same behavior as I'm seeing locally. I should have waited for the build to finish before jumping to conclusions. |
I've populated a cachix cache at I have a few notes from this exercise that may be useful to others:
It appears that the other relevant derivations are covered by these four, but I haven't exhaustively checked.
For end users, the build-time deps of
|
@conklech Awesome! Thanks for diving into this. I just merged #220, which should provide some additional caching for Darwin, but probably not enough. Everything in
|
Awesome. OSX install time is down to about twenty minutes with the Regarding adding things to What might be nice would be for the initial installation step to install not just From my end, I think this issue is ready to be closed. I'd be glad to submit a pull request for my Thanks very much! |
Great to hear it! We'll keep improving from here, and please keep reporting any issues you find! |
Recent testing seems to indicate that caching for macOS users has improved dramatically. Closing this, but please report any new issues. |
Hi, I'm trying to run calculator-tutorial on macOS 10.15 & Manjaro Linux 20.2 and find it is building a lot of things. But substituters = https://nixcache.reflex-frp.org https://cache.nixos.org
trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= ryantrinkle.com-1:JJiAKaRv9mWgpVAz8dwewnZe0AzzEAzPkagE9SP5NWI=
sandbox = relaxed |
I'm fairly new to nix, so apologies if this is just how it is.
I just finished installing with
nix-env -f https://github.com/obsidiansystems/obelisk/archive/master.tar.gz -iA command
and it probably took around ~8-12 hours. Is this normal? I did make sure to edit my nix.conf as required, and if it makes a difference I'm on OSX 10.13.4 tracking the nixpkgs-unstable channel.From looking at the output as it was going on, it looks like for a lot of stuff it missed the caches and was compiling C / Haskell files.
The text was updated successfully, but these errors were encountered: