1 |
On Monday, 18 June 2018 03:35:05 BST Ian Zimmerman wrote: |
2 |
> On 2018-06-17 18:12, Mick wrote: |
3 |
> > From the fine manual: |
4 |
> > z Zap (delete) the new config file and continue. |
5 |
> |
6 |
> So what do you do if the merge of this file is too hard and you want to |
7 |
> do it another time? The answer seems to be q (quit) or n (next), but |
8 |
> _nothing_ in the documentation says this is safe. |
9 |
|
10 |
I see what you mean. The responsibility of not breaking your system, |
11 |
especially in gentoo, belongs to you, but we could all do with a bit of help |
12 |
from the devs. Most of these config file update commands do not tell you if |
13 |
you will be breaking your system when you adopt or reject some new config file |
14 |
content or syntax change, although enotices tend to be informative enough in |
15 |
this respect. |
16 |
|
17 |
Regarding the various options in dispatch-conf, this is my understanding of |
18 |
their relative safety: |
19 |
|
20 |
zap - deletes the new config file with its default content. You can't go back |
21 |
to review it to see what the devs are now proposing/mandating. If the changes |
22 |
between your old config and the newly emerged config are significant, you |
23 |
could have application/system breakage and/or missing functionality since you |
24 |
have not configured it. Applications and daemons you have set to start up in |
25 |
some runlevel can now fail at boot time - e.g. sshd - and leave you stranded. |
26 |
You can still re-emerge the package with --noconfmem to pull in afresh the new |
27 |
config file. |
28 |
|
29 |
quit - will just exit dispatch-conf. The new config files will be available |
30 |
for you to update to, next time you run dispatch-conf, or etc-update. The |
31 |
previous points regarding safety also apply to this action. Some changes in |
32 |
the config file can affect your system, or applications. |
33 |
|
34 |
next - will not deal at all with the current config file, just load the next |
35 |
config file in the queue for you to review. If there is no other config file |
36 |
waiting for an update it will exit dispatch-conf. Next time you run dispatch- |
37 |
conf the file you skipped will be there for you to review. The previous |
38 |
points regarding safety also apply to this action. |
39 |
|
40 |
|
41 |
> > For files which have a lot of changes, some of which I wish to reject |
42 |
> > and some to accept, I tend to use m (for merging). Again from the |
43 |
> > fine manual: |
44 |
> > |
45 |
> > m Interactively merge the current and new config files. |
46 |
> |
47 |
> The problem (or multiple problems) here is that it doesn't say what is |
48 |
> being merged into what (no, its not symmetric), and to compound that it |
49 |
> doesn't just leave this file alone and quit or go on to the next file; |
50 |
> it shows some diff again. What does this new diff mean? I can't make |
51 |
> sense of it without answering my other questions. |
52 |
|
53 |
While you're merging the new config content into your existing, a new |
54 |
temporary merge_file is created, a hybrid of the two. Until you accept it, it |
55 |
will not replace your old config. |
56 |
|
57 |
The second diff that comes up (if you press l) shows the changes you have |
58 |
accepted/rejected. It gives you a chance to change your mind and abort this |
59 |
merge, so you can try it again, or to return another time to review the |
60 |
changes. If you abort the merge_file is deleted. |
61 |
|
62 |
|
63 |
> To clarify: I don't think this is simply a usability problem that can be |
64 |
> addressed by using better or more verbose English. I think there is a |
65 |
> "big picture", a concept of what is being done, and this concept has not |
66 |
> found its way into the documentation or the UI itself. |
67 |
> |
68 |
> In particular, I suspect the developers think of it as merging my mods |
69 |
> into the "official" packaged versions, while I want to handle it the |
70 |
> other way: I see my version as the "master" or "trunk", and I want to |
71 |
> merge the package mods into it. |
72 |
> |
73 |
> But I really don't know. I am confused :-P |
74 |
|
75 |
I'm not sure if this is how the devs have been thinking config file updates |
76 |
are meant to be handled, but TBH I can't see much of a difference in the |
77 |
concept. When you use m to merge the files, left is your own/old |
78 |
configuration settings and right is the devs default settings. Until you |
79 |
accept/reject all or some of these your own config file stays as is. |
80 |
|
81 |
I haven't found a major difference between dispatch-conf and etc-update in |
82 |
their usage, the former uses letters, the latter numbers in their menu of |
83 |
actions. |
84 |
-- |
85 |
Regards, |
86 |
Mick |