guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

having trouble modifying guix-daemon


From: Robert Vollmert
Subject: having trouble modifying guix-daemon
Date: Wed, 26 Jun 2019 09:47:35 +0200

Hi,

I’m trying to investigate why guix-daemon appears to spend
a lot of time locking store directories. (It’s possible that
it’s doing useful work and just the debug output is useless.)

To do this, I’ve tried adding some debug statements to the
C++ files in guix/nix/…. I’m having trouble getting those
changes live. My understanding is that committing those
changes to my configured guix channel, then running

$ guix pull

should rebuild the guix client tools from that repository.
That seems to work.

Next,

$ sudo guix system reconfigure

should rebuild the system using that same repository, and
thus pull in the updated guix daemon. That does not seem to
be the case, not even after

$ sudo herd restart guix-daemon

Any hints?

(Relatedly, two areas where it feels the Guix System feels
needlessly confusing:
- root guix vs. user guix (and apparently there’s even a
  system guix in /var/guix/profiles/system/profile/bin/guix:
  does that even get used?
  I’d be tempted to simplify this by going for a rootless
  setup (i.e., you can’t log in to root account, root has no
  home and no profile). Reasons against?
- opaque system status: it’s very hard to figure out what
  configuration and what versions of programs are current. My
  current best attempt is to grep through the output of ps
  and then look at those paths in /gnu/store. This is made
  worse due to the lack of timestamps in /gnu/store, as I
  can’t tell which of the many versions of some package is
  the newest just from looking in /gnu/store. Then, the
  shepherd configuration is very opaque: I have to follow
  through a chain of illegible scheme modules to figure
  out what the current configuration is (and then how do
  I know I’m even looking at the right shepherd config?).)

Robert





reply via email to

[Prev in Thread] Current Thread [Next in Thread]