Gentoo Archives: gentoo-dev

From: Kevin <lists@×××××××××.com>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] Wishlist: an automated package upgrade system with fine-tunable sysadmin control
Date: Wed, 26 Apr 2006 16:34:17
Message-Id: 444F9FD0.6030909@gnosysllc.com
1 Pasted from bugzilla. Please pardon the ugly newline formatting.
2
3
4 I'm a longtime (>10 yrs) Linux admin and I've been using Gentoo for
5 perhaps 2
6 years and I'm super impressed with Gentoo, having gotten very annoyed
7 with the
8 rpm-based nightmare upgrade situation presented by most of the other
9 distros,
10 but one thing I'd really like to see in Gentoo is a way of safely keeping my
11 Gentoo boxes up to date in an automated way. I know that may sound
12 paradoxical
13 and mutually contradictory. I realize that production systems should not be
14 upgraded before trying out the upgrade on a testbed system, but I've
15 found that
16 routine cron jobs of emerge world are unsafe because some packages need a
17 human's attention for upgrading (like apache or postfix when config files
18 should be left untouched or updated or merged with new config files or some
19 other issue that needs a human's attention) whereas doing nothing for a long
20 time (while the portage tree evolves) makes for a box that has been
21 veritably
22 left behind, sometimes making it difficult or impossible to upgrade.
23
24 I'd like to have the capability of being able to list some packages that
25 should
26 never be upgraded automatically (I realize I can do this to some degree
27 already
28 with portage), some others that are very unlikely to break from an automated
29 upgrade and thus should always be upgraded automatically, and some packages
30 (which may fit in either or both of these categories) that must be
31 upgraded in
32 a certain order in order to avoid breaking something and thus, should
33 probably
34 be upgraded automatically or (if flagged for preventing automatic
35 upgrades by
36 the admin) should be brought to the attention of the admin (say with an
37 email
38 to root or something) as needing attention to avoid breakage.
39
40 I am asking for this feature after having spent an entire weekend upgrading
41 various packages by hand, one or a few at a time, after carefully
42 considering
43 whether or not it would be safe to upgrade this or that package, and after
44 having (lazily) not upgraded anything on this production box in a long
45 time.
46 The experience has left me rather exhausted (with a sore ass from
47 sitting down
48 for so long) and wishing for something better. One noteworthy experience in
49 particular is that I found that many packages suffered sandbox violations on
50 attempted upgrades, and I troubleshot this problem for a long time before it
51 occurred to me that I might want to upgrade the sandbox package and then try
52 upgrading these packages. That solved the sandbox violation problem.
53 It seems
54 to me that this was a case where an automated system could have insisted on
55 upgrading the sandbox package first, before the others. Perhaps there
56 should
57 have been a dependency, so that when I tried to upgrade the ncurses
58 library, it
59 automatically pulled in the newer sandbox package as a prerequisite (for
60 that
61 is what it turned out to be).
62
63 After writing this much, it occurs to me that perhaps the capabilities
64 that I
65 describe here may already be in Gentoo/portage in some way that I've yet to
66 fully discover and/or utilize, but despite having installed many Gentoo
67 systems
68 and read the Handbook (and many other Gentoo docs) many times, I've yet
69 to see
70 a good write-up on how to do what I describe here. And perhaps the fact
71 that
72 the sandbox package was not a dependency for the ncurses package (and
73 several
74 others that also broke during emerge with sandbox violations) was the real
75 "bug" so to speak, rather than the idea that Gentoo is missing this major
76 feature that I'm asking for. I'm really not sure which might be true, but I
77 just thought I'd ask.
78
79 One thing that I'm pretty sure is currently not possible with portage,
80 however, and that I'd definitely like to see as a part of this idea is a
81 way of setting thresholds on version numbers of packages in portage such
82 that the automated upgrade system will only upgrade a package
83 automatically if the difference in version numbers between the installed
84 package and the newest available package in portage is greater than some
85 admin-tunable amount. For example, I might not want to upgrade emacs or
86 xemacs just because a new -r number becomes available. Maybe I don't
87 want to have such a big package upgraded automatically unless there is a
88 new major or minor version number.
89
90 Thanks again to all the developers who have made Gentoo. It's a really
91 terrific distro.
92
93
94 ------- Comment #1 From Radek Podgorny 2006-04-24 08:25 PST [reply] -------
95
96 Maybe, the packages themselves could be assigned something like a
97 safe-upgrade-flag...
98
99
100 ------- Comment #2 From Jakub Moc 2006-04-26 08:46 PST [reply] -------
101
102 Please, take such ideas to portage/devel mailing lists... Bugzilla is
103 not the
104 best place to discuss abstract ideas. Thanks.
105
106 --
107 gentoo-dev@g.o mailing list

Replies