Closed chreekat closed 4 years ago
I'm using the user-local socket-activation. When lorri gets activated, it pins a CPU and just sits there saying "Started..."
Usually that means it’s building in the background with nix-instantiate
or nix-build
. If you open up (h)top
you should se it in the process list (as subprocess to lorri daemon
).
You should try running the daemon in a terminal with lorri -vvv daemon
.
I'll try running the daemon with extra verbosity when I get the chance. But should lorri be building so furiously when nix-shell
completes immediately?
But should lorri be building so furiously when
nix-shell
completes immediately?
It should indeed not, but we can only know for sure when we see the verbose output.
I'm also experiencing this issue quite frequently. Even if I let the daemon and all its nix-instantiate
processes running for hours it seems to never finish. Is there anything we can do to help to debug this?
My current workaround is to systemctl --user restart lorri.service
(I'm on NixOS) when I spot such activity.
@turboMaCk , can you try stopping the service and then running the daemon directly in another terminal with lorri -vvv daemon
? Then we might get some clues.
I plan on doing that myself as soon as I get the chance.
I will try it but it seems to be fixed after service restarts so I think running it as a new process won't guarantee to replicate the issue. BTW I have 2 machines (desktop and laptop) and I've observed this issue on both of them.
I'll get back to this once I have some more data.
I wonder if this may be a duplicate of https://github.com/target/lorri/issues/176
@chreekat does your project import <nixpkgs>
or use niv
?
@curiousleo It's importing <nixpkgs>
.
@Profpatsch , I had a chance to run lorri -vvvv daemon
, and it looks like lorri is watching my entire filesystem.
[2019-12-02T12:48:51Z DEBUG lorri::nix] "nix-build" "--out-link" "/tmp/.tmpDi0suK/result" "--" "/tmp/.tmpnHIEZW/result"
[2019-12-02T12:49:33Z DEBUG lorri::build_loop] original paths: 2069
[2019-12-02T12:49:33Z DEBUG lorri::build_loop] -> reduced to: 2
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/nix/var/nix/profiles/per-user/root"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching parent path "/nix/var/nix/profiles/per-user"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/nix/var/nix/profiles/per-user/root/channels-52-link"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/nix/var/nix/profiles/per-user/root/channels"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching parent path "/home"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.gnupg"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.gnupg/private-keys-v1.d"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.gnupg/openpgp-revocs.d"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.gnupg/crls.d"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.nix-profile"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.nix-defexpr"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.nix-defexpr/channels_root"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.nix-defexpr/channels"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.dbus"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.dbus/session-bus"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.local"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.local/share"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.local/share/gegl-0.4"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.local/share/gegl-0.4/plug-ins"
[2019-12-02T12:49:33Z DEBUG lorri::watch] Watching path "/home/b/.local/share/keybase"
<continues forever>
@chreekat does the project use some third-party mechanism for excluding source files, e.g. gitignore.nix? (See https://github.com/target/lorri/issues/211#issuecomment-555026353)
@curiousleo yes! This issue is a duplicate of #211. Thanks for the tip. Closing.
Sorry it's a proprietary project, so no code sample. :( I also don't know how to create a minimal repro.
This is on the rolling release:
And
nix-shell
works ok:The shell being built comes from haskellPackages.shellFor.
I'm using the user-local socket-activation. When lorri gets activated, it pins a CPU and just sits there saying "Started..."
If I then get cheeky and start a nix shell on the console while lorri is running, lorri crashes with: