Dear Steve.kGeorge <[email protected]> writes:
[...]
> I can't pretend to understand fully - but new user eyes on
> a piece of
> software is always something to pay attention to [...]
Just to clarify what happened with me -before going into
solutions-: I
read the manual regarding cg and didn't understood that roots
must be
liberated or forgotten before in order to be collected (see
https://guix.gnu.org/manual/en/html_node/Invoking-guix-gc.html).
[...]
So, even reading the manual it was not clear (to me at least)
that I
must liberate or forget roots before running gc.
You've put your finger on the issue which is that for a
newcomer there are two
separate concepts here. One is that there's the store which
has everything in
it and one can free up space by using the gc command; the
other is that there
are profiles with generations.
That is exactly what happened in my case. +1
The manual often does a good job at explaining in depth each
component aspect,
even now I constantly refer to it. What I found difficult when
initially
learning guix was the 'how do I do X which is the equivalent
of this thing I
did previously' [...]
My personal belief is we should split the manual into a user
manual and a
developer manual. And, we need some other shorter 'how-to'
documentation. In
my own notes I have an intro section and a 'common workflows'.
It is possible, but maybe we don't want to create a separation
between
different group of users (different tasks where there are
simpler and
more complicated ones, that is another thing).
However, and I do understand that it depends a lot on many
things, we
can also make the tool more informative.
I don't know if this is the desire of many people here, but
being a
command line tool does not imply that it cannot be interactive.
It can tell me something about the state of the system and what
it could
do.
And both modes (interactive and non-interactive) can be called.
For example, if called with a complete specification 'gc' can
try to do
what it was told and then report the results (as today, maybe
with more
info?).
Called interactively (that is, if the person does not say "run
directly"
with some option or doesn't give any option), it can:
1. give info about the system (how many roots are active, how
much space
each it taking, etc.)
2. present options and/or ask for specifications (like how many
generations to leave, how much space should try to free, etc.).
3. upon receiving the options, execute them and at last...
4. report as after a non-interactive run.
Just some ideas too. :)
--
eduardo mercovich
Donde se cruzan tus talentos
con las necesidades del mundo,
ahí está tu vocación.
(Anónimo)