Saga of yup update (sortof) from YDL 2.0 to 2.1


Subject: Saga of yup update (sortof) from YDL 2.0 to 2.1
From: Bill Fink (billfink@mindspring.com)
Date: Sat Nov 03 2001 - 17:31:43 MST


Hi,

I managed to upgrade my system from YDL 2.0 to 2.1 using yup together
with some manual ftp and rpm steps, so I thought I would document what
I did in case anyone else is interested.

First, it's important to note that the YDL 2.1 distribution on
ftp.yellowdoglinux.com is totally messed up at the moment (the
fuji 2.1 ISO image is severely truncated and there are no YDL 2.1
RPMS available). However, some of the mirrors are fine, and I
chose to use ftp.ibiblio.org. Here are the steps I took to upgrade
from YDL 2.0 to 2.1:

         1. yup update, to make sure my YDL 2.0 was fully up-to-date,
             which it was.

         2. Used ftp to get the latest 2.1 yup-0.7.6-6.noarch.rpm from
             a functioning 2.1 mirror (in my case ftp.ibiblio.org), and
             then used "rpm -U" to upgrade my yup to this new version.

         3. yup config dist, to select the distribution and mirror to
             use. 2.1 was not a recognized distribution so I chose 2.0,
             and in my case chose ftp.ibiblio.org for the mirror.

         4. yup clean yupdb, to start with a fresh yup database for
             YDL 2.1.

         5. Manually edited /etc/yup.conf, and changed all occurrences
             of 2.0 to 2.1.

         6. yup update, to get all the new and updated YDL 2.1 stuff.
             This came back with a small list of stuff to delete, and
             a large list of stuff to upgrade or install. The stuff
             to delete are RPMS which have been obsoleted such as ybin
             which is now part of the newer yaboot package. Wait until
             yup asks whether you want to proceed and then just answer
             "y". After this, yup starts downloading all the RPMS,
             which worked until it got to kernel-source-2.4.10-12a.ppc.rpm,
             which failed with a python error.

         7. The python error was an integer overflow caused by the
             progress checking, where it multiplies the number of bytes
             transferred by 100, and the kernel-source RPM is 23513953
             bytes, which overflows a signed int (max of about 2 GB).
             I got around this by manually ftp'ing the
             kernel-source-2.4.10-12a.ppc.rpm file from the mirror
             site into the /var/cache/yup/packages cache directory.
             Subsequent checking revealed the "-q" ("--quiet") and
             "-qq" ("--really-quiet") yup options, one or the other
             of which would probably have bypassed this problem by
             eliminating the progress checking.

         8. yup update, to download the rest of the RPMS and attempt
             to install them. All the remaining downloads completed
             successfully, but the install failed with another python
             error, the cause of which was not immediately obvious,
             and which I unfortunately don't remember the exact error
             message.

         9. cd /var/cache/yup/packages, and ran the following command:

             rpm -U --test `ls -gl | grep 'Nov 3' | awk '{ print $NF }'`

             The 'Nov 3' above was used to select all the RPMS that
             yup downloaded that day, and should of course be changed
             to reflect the actual date that anyone else uses this
             procedure. If there were no other RPMS in the
             /var/cache/yup/packages directory previously, you could
             simply replace the whole `...` part with just *.

        10. In my case, I had some conflicts with some old sane (scanner)
             packages, so I just removed them with "rpm -e" since there
             were newer sane packages in YDL 2.1. Rerunning the
             "rpm -U --test" command above showed that everything
             would upgrade/install successfully (no errors reported).

        11. Reran the "rpm -U" command from step 9 above without the
             --test option (you can also change the -U option to -Uvh
             to get a nice progress status of the installation). This
             successfully upgraded my system from YDL 2.0 to YDL 2.1.

        12. yup clean yupdb, to start with a fresh yup database for
             YDL 2.1 after the upgrade.

        13. Reran a "yup update", to make sure yup was happy, which
             gave the following:

             Reading RPM database... (100%)
             Performing dependencies sanity check...
             Retrieving distribution information...
             ftp.ibiblio.org ready
             yup.db.stat: 0 KB read (97%) 1.5 KB/sRetrieving initial package list...
             yup.db.init: 1611 KB read (100%) 70.5 KB/s
             Downloading package list updates...
             Integrating updates into local package list...
             Reading package list... (100%)

             Nothing to do...

        14. Fixed up my /boot/vmlinux and /boot/System.map. The upgrade
             to YDL 2.1 had installed the 2.4.10-12a versions of these
             files, and I still wanted to run my 2.4.6 BenH kernel
             (because I want to try out using a FireWire disk and I
             believe 2.4.6 was the last kernel to have a functional
             FireWire disk capability, although the very latest BenH
             kernels may also work). If you're happy with the 2.4.10-12a
             kernel, you can obviously skip this step.

        15. I still need to fix up some minor system customizations
             that got undone by the upgrade process, such as some X
             customizations I had made previously. I am happy to report
             that in my case I didn't have to muck with the
             /etc/X11/XF86Config-4 file after the upgrade, and X
             is working at least as well as before the upgrade
             (including the Xv support).

        16. I have subsequently successfully done a "yup install webmin".
             This points out that it may be necessary to manually
             "yup install" stuff from YDL 2.1 if it didn't even exist
             in YDL 2.0 (webmin is the only major item from the YDL 2.1
             new features list that I can remember that would fall in
             this category but there may be others).

I now have a fully functional YDL 2.1 system. It really wasn't all
that bad to do the upgrade, even with the manual steps required. It
was certainly a lot less effort than doing a full YDL 2.1 install
(I have also recently participated in doing that and may report on
that experience in a separate message).

I hope others find this procedure useful, although I of course can't
guarantee success for all other cases, but it should generally work
fine I believe.

                                                -Bill

P.S. Any chance this could earn me a T-shirt? :-)



This archive was generated by hypermail 2a24 : Sat Nov 03 2001 - 17:43:47 MST