Re: update63.html completeness
On 2018-04-13 17:09, Theo Buehler wrote: ...snip... Looks like you'd be interested in the sysutils/sysclean package: Comment: list obsolete files between OpenBSD upgrades Description: sysclean is a script designed to help remove obsolete files between OpenBSD upgrades. sysclean compares a reference root directory against the currently installed files, taking files from both the base system and packages into account. sysclean does not remove any files on the system. It only reports obsolete filenames or packages using out-of-date libraries. Maintainer: Sebastien Marie WWW: https://github.com/semarie/sysclean/ Well, not quite, but close. Here are some selected lines from 160 reported: # sysclean -a /bsd61.rd /bsd62.rd /export /usr/lib/libc.so.88.0 /usr/lib/libc.so.88.0.a /usr/lib/libcrypto.so.38.0 /usr/include/struct.h ... /etc/signify/openbsd-58-base.pub /etc/signify/openbsd-58-fw.pub /etc/signify/openbsd-58-pkg.pub /etc/signify/openbsd-59-base.pub /etc/signify/openbsd-59-fw.pub /etc/signify/openbsd-59-pkg.pub ... /var/nsd/etc/nsd_control.key ... /var/unbound/unbound.log ... Which is a mix of "only obsolete filenames", plus novel directories and some base files and package files and other stuff. (This machine has been continuously upgraded since about 5.5). Thanks for the reference though. This helps clean my disks and avoid having misleading .h files l(a)ying about. John
Re: update63.html completeness
Hi John, Unless changes to the filesystem are required, there's no need for a fresh install: pkg_add sysclean :^) R On Fri, Apr 13, 2018 at 11:13:12PM BST, j...@bitminer.ca wrote: > On 2018-04-13 14:08, Stuart Henderson wrote: > > On 2018/04/13 20:29, Theo Buehler wrote: > > > On Thu, Apr 12, 2018 at 05:04:32PM -0600, j...@bitminer.ca wrote: > > > > Hi, > > > > > > > > I noticed a couple of inconsistencies between upgrade63.html and > > > > INSTALL.. They don't both state to remove man pages and > > > > include files. > > > > > > Thanks. Now that I see this mail, I remember that you sent a similar > > > mail a while back which remained unanswered. Sorry about that. > > > > > > What exactly should be listed by default on upgradeXX.html tends to > > > lead > > > to long discussions. > > Seems to be true. > > > > The fewer things the better. I list manuals because > > > users are more likely to be confused by a stale manual than by a stale > > > header. > > > > > > If there are headers that are important to remove because they might > > > interfere with ports building, they will (hopefully) be listed on > > > upgradeXX.html. > > > > To be honest, at least from the ports side, it's pretty unlikely that > > these are going to be noticed in order to get listed. > > > > Most people in a situation where failure to remove these is going to be > > a real problem (i.e. bulk builders) either remove /usr/include/* (and > > maybe others; /usr/libdata/* is another candidate) prior to upgrade, > > or they use proot which will only populate the chroot with current > > headers. > > My full list was going to be: /usr/include /usr/X11R6/include /usr/share/man > and as you say /usr/libdata. > > What has caught me in the past: sqlite3 removed from 6.0 base and a .h file > which I can't remember at the moment. > > The differences between 6.0 (say) and 6.2 are about 133 .h files and 2530 > files > altogether [0]. For a serial upgrader like me, this amounts to sufficient > number of > noise files that I want to remove them. > > (I didn't actually know this number until just now. It seems installation > is > much more of a benefit to upgrading than I thought. Not for disk space but > for > consistency. Looks like I should reconsider my policy of upgrading all the > time.) > > And as a result of this perhaps the advice should be to upgrade rarely but > mostly to install. And to somehow preserve /etc/* that is needed > post-install. > > > John > > > > [0] calculated with > > $ for a in `find 6.2/amd64 -name '*.tgz'` ; do > > tar tzf $a >> /tmp/62all.txt > > done > $ for a in `find 6.0/amd64 -name '*.tgz'` ; do > > tar tzf $a >> /tmp/60all.txt > > done > $ sort /tmp/60all.txt > /tmp/60alls.txt > $ sort /tmp/62all.txt > /tmp/62alls.txt > $ comm -2 -3 /tmp/60alls.txt /tmp/62alls.txt | wc > 25302530 144244 > > > > > > > > > > Here is a patch to fix upgrade63 but I'm not sure how to > > > > go about fixing all INSTALL. an easy way. > > > > > > They are built from /usr/src/distrib/notes/. You probably only have to > > > edit m4.common. > > > >
Re: update63.html completeness
On 2018-04-13 14:08, Stuart Henderson wrote: On 2018/04/13 20:29, Theo Buehler wrote: On Thu, Apr 12, 2018 at 05:04:32PM -0600, j...@bitminer.ca wrote: > Hi, > > I noticed a couple of inconsistencies between upgrade63.html and > INSTALL.. They don't both state to remove man pages and > include files. Thanks. Now that I see this mail, I remember that you sent a similar mail a while back which remained unanswered. Sorry about that. What exactly should be listed by default on upgradeXX.html tends to lead to long discussions. Seems to be true. The fewer things the better. I list manuals because users are more likely to be confused by a stale manual than by a stale header. If there are headers that are important to remove because they might interfere with ports building, they will (hopefully) be listed on upgradeXX.html. To be honest, at least from the ports side, it's pretty unlikely that these are going to be noticed in order to get listed. Most people in a situation where failure to remove these is going to be a real problem (i.e. bulk builders) either remove /usr/include/* (and maybe others; /usr/libdata/* is another candidate) prior to upgrade, or they use proot which will only populate the chroot with current headers. My full list was going to be: /usr/include /usr/X11R6/include /usr/share/man and as you say /usr/libdata. What has caught me in the past: sqlite3 removed from 6.0 base and a .h file which I can't remember at the moment. The differences between 6.0 (say) and 6.2 are about 133 .h files and 2530 files altogether [0]. For a serial upgrader like me, this amounts to sufficient number of noise files that I want to remove them. (I didn't actually know this number until just now. It seems installation is much more of a benefit to upgrading than I thought. Not for disk space but for consistency. Looks like I should reconsider my policy of upgrading all the time.) And as a result of this perhaps the advice should be to upgrade rarely but mostly to install. And to somehow preserve /etc/* that is needed post-install. John [0] calculated with $ for a in `find 6.2/amd64 -name '*.tgz'` ; do tar tzf $a >> /tmp/62all.txt done $ for a in `find 6.0/amd64 -name '*.tgz'` ; do tar tzf $a >> /tmp/60all.txt done $ sort /tmp/60all.txt > /tmp/60alls.txt $ sort /tmp/62all.txt > /tmp/62alls.txt $ comm -2 -3 /tmp/60alls.txt /tmp/62alls.txt | wc 25302530 144244 > Here is a patch to fix upgrade63 but I'm not sure how to > go about fixing all INSTALL. an easy way. They are built from /usr/src/distrib/notes/. You probably only have to edit m4.common.
Re: update63.html completeness
On 2018/04/13 20:29, Theo Buehler wrote: > On Thu, Apr 12, 2018 at 05:04:32PM -0600, j...@bitminer.ca wrote: > > Hi, > > > > I noticed a couple of inconsistencies between upgrade63.html and > > INSTALL.. They don't both state to remove man pages and > > include files. > > Thanks. Now that I see this mail, I remember that you sent a similar > mail a while back which remained unanswered. Sorry about that. > > What exactly should be listed by default on upgradeXX.html tends to lead > to long discussions. The fewer things the better. I list manuals because > users are more likely to be confused by a stale manual than by a stale > header. > > If there are headers that are important to remove because they might > interfere with ports building, they will (hopefully) be listed on > upgradeXX.html. To be honest, at least from the ports side, it's pretty unlikely that these are going to be noticed in order to get listed. Most people in a situation where failure to remove these is going to be a real problem (i.e. bulk builders) either remove /usr/include/* (and maybe others; /usr/libdata/* is another candidate) prior to upgrade, or they use proot which will only populate the chroot with current headers. > > Here is a patch to fix upgrade63 but I'm not sure how to > > go about fixing all INSTALL. an easy way. > > They are built from /usr/src/distrib/notes/. You probably only have to > edit m4.common. >
Re: update63.html completeness
On Thu, Apr 12, 2018 at 05:04:32PM -0600, j...@bitminer.ca wrote: > Hi, > > I noticed a couple of inconsistencies between upgrade63.html and > INSTALL.. They don't both state to remove man pages and > include files. Thanks. Now that I see this mail, I remember that you sent a similar mail a while back which remained unanswered. Sorry about that. What exactly should be listed by default on upgradeXX.html tends to lead to long discussions. The fewer things the better. I list manuals because users are more likely to be confused by a stale manual than by a stale header. If there are headers that are important to remove because they might interfere with ports building, they will (hopefully) be listed on upgradeXX.html. > Here is a patch to fix upgrade63 but I'm not sure how to > go about fixing all INSTALL. an easy way. They are built from /usr/src/distrib/notes/. You probably only have to edit m4.common.
update63.html completeness
Hi, I noticed a couple of inconsistencies between upgrade63.html and INSTALL.. They don't both state to remove man pages and include files. Here is a patch to fix upgrade63 but I'm not sure how to go about fixing all INSTALL. an easy way. John Index: upgrade63.html === RCS file: /cvs/www/faq/upgrade63.html,v retrieving revision 1.4 diff -u -p -r1.4 upgrade63.html --- upgrade63.html 3 Apr 2018 12:31:59 - 1.4 +++ upgrade63.html 5 Apr 2018 23:21:31 - @@ -104,13 +104,14 @@ to the stable b --> Spring cleaning in /usr/share. - Remove all outdated manuals. + Remove all outdated manuals and .h files. Moreover, the relinking of libraries and kernels at boot time now happens in /usr/share/relink. The old relinking directory is no longer used and can be removed. # rm -r /usr/share/man + # rm -r /usr/include /usr/X11R6/include # rm -r /usr/share/compile @@ -342,6 +343,7 @@ access to the system console. --> Install new userland. +Clean out old man pages and include files. Save a copy of reboot(8), extract and install the release tarballs, reboot. Install base63.tgz last, because the new base system, in particular https://man.openbsd.org/OpenBSD-6.3/tar";>tar(1), @@ -364,6 +366,7 @@ access to the system console. or, if you use ksh(1), you can do +rm -r /usr/share/man /usr/include /usr/X11R6/include cp /sbin/reboot /sbin/oreboot for _f in [!b]*63.tgz base63.tgz; do tar -C / -xzphf "$_f" || break; done /sbin/oreboot