[OpenIndiana-discuss] Testing updates from /dev to /hipster-2015 and /hipster
Nikola M
minikola at gmail.com
Tue Jun 7 20:48:34 UTC 2016
On 06/ 7/16 09:20 PM, Tim Mooney wrote:
> First: Nikola, shouldn't the wiki article be more obvious in giving
> credit
> to Ben for his post?
Article written on Wiki is inspired by obviously useful stop-by-step
procedure but is part of Openindiana. In the bottom of the post you will
find "Article added as per testing manual shared by bentahyr
<http://openindiana.org/pipermail/openindiana-discuss/2016-May/018902.html>
on 20160509" with ML link, wich suffice more then enough.
Those links are not needed actually but i think they are good to have.
> alp and others have definitely provided valuable
> guidance, but it was Ben that filled in the gaps and provided a
> step-by-step process that people that are less-familiar with IPS could
> still easily follow.
We already had information of where /hipster-2015 is and how to change
publishers and the same goes for move to new /hipster.
bentahyr's post showed there is a need for people to have more detailed
explained way of testing things, and it is valuable to kave it in mind
in the future too.
I personally were testing update in less steps (but a bit more reboots)
so didn't feel the need for it, but step-by step sounded like a good
idea to have and I am happy you found it out.
Personally, I would call BE's by their names, like hipster-2015 but it
is also good to have it on Wiki similar like described.
> I did the process on a Dell Precision T3600, with 32 GB of RAM. I have a
> fast Internet connection at work and this workstation hardware is
> quite good,
> so it didn't take me nearly as long as it took Ben.
I were doing it on 1GB machine with disabled gdm and then on 2GB when
jumping to /hipster. It lasted several hours (vanilla install) but it
worked (and works).
>
> Before step 1, I personally added steps 0a & 0b.
>
> step 0a was to disable any network services that may be changing
> things on
> the box during this process. I'm specifically thinking about sendmail,
> but other services might also apply. The reason why is that if you do
> need to go back to an older boot environment, that older BE may be
> missing mail or other file changes that were made to one of the later
> BEs.
It is recommended to have old environment untouched in it's BE and to
start changes in a new BE so what you described sounds more like 1a/1b.
It is true that if /var is shared with a new dataset, you might at least
have snapshots.
Btw in hipster /var is now moved to a new separate dataset by default
and that sounds like a good practice (I keep also my /opt in separate
rataset under rpool/SHARED/opt etc.)
>
> step 0a:
>
> sudo svcs -a > services-before-hipster
> sudo svcadm disable svc:/network/sendmail:default
Again i wouldn't do this befor making new BE and rebooting into new BE
for testing update,
because that way you can always go back to old working BE.
I would call this as a good idea but suitable for 1a/1b step , regarding
what services you have etc.
> It wasn't really necessary, but to keep them in sync I also did:
>
> sudo svcadm disable svc:/network/sendmail-client:default
>
> I also did a step 0b, where I gathered a little bit more information
> about
> what the starting step looked like, for both publishers and packages:
>
> step 0b:
>
> pkg list > pkg_list.txt
> pkg list | egrep sfe > pkg_list_sfe.txt
> pkg publisher > pkg_publisher.txt
I like these steps It can very well document the environment.
>
> Continuing with Ben's procedure...
>
> I didn't make any changes to step 1:
>
>> Here is the process I followed for reference and for the doc project :
>> 1 - Create a BE to start and boot to it :
>> # beadm create -a Openindiana-HipUpdate-S1
>> # reboot
>
> For step 2, there is one minor change I would recommend:
>
>> 2 - remove all packages from external repositories (like
>> SFE/SFE-encumbered but SFWpackages as well) :
>> # pkginfo | grep SFW
>> # pkgrm SFW[whatevername]
>> # pkg uninstall --be-name Openindiana-HipUpdate-S2 `pkg list -v |
>> egrep sfe | cut -d" " -f1`
>
> There is actually a package named '/driver/network/sfe' which
> accidentally
> matches the regex used in the last command (looking for packages from the
> sfe or sfe-encumbered repositories). To avoid uninstalling that driver,
> I changed the 'egrep sfe' in the last command in step 2 to 'egrep //sfe'.
> Even safer would be
>
> egrep '^pkg://sfe'
This is good change.
>
> which (assuming you used 'sfe' and 'sfe-encumbered' for your repository
> names for the spec files extra and spec files extra (encumbered)
> repositories) should match both add-on repositories.
>
>> 3 - Reboot to new env Openindiana-HipUpdate-S2
>
> One question I have about step 4:
>
>> 4 - Remove external IPS publishers :
>> # pkg unset-publisher sfe
>> # pkg unset-publisher sfe-encumbered
>
> There's no place in Ben's guide that even mentions the other publisher
> that people that started on /dev might have, opensolaris.org
>
> Based on comments I've seen from alp, wouldn't step 4 be the logical
> place to *also* do
>
> pkg unset-publisher opensolaris.org
This is also good change.
>
> ? I haven't actually done that yet, so I still have opensolaris.org
> showing up as a publisher, but I'm thinking it should be removed.
>
>> 5 - Change publisher to Hipster 2015
>> # pkg set-publisher -g http://pkg.openindiana.org/hipster-2015 -G
>> http://pkg.openindiana.org/dev openindiana.org
>> # pkg refresh --full
>> # pkg update --be-name Openindiana-HipUpdate-S3
>
> I executed step 5 exactly as shown. I thought it might be useful for
> others to have some timings for this step, so for comparison
>
> - 'pkg refresh --full' took just under 2 minutes to complete.
> - the actual 'pkg update --be-name Openindiana-HipUpdate-S3' took
> - 14 minutes just for the planning stage, and at points during
> the planning stage the spinner was stalled. Doing a truss on
> the python process showed that is was repeatedly changing memory
> allocation using brk().
> - after the plan phase finished, there were 99174 files totaling
> 1292 MB to download. With my network connection and I/O, that
> took another 10-15 minutes or so.
> - the post-download phases took another 5-10 minutes.
Process in hipster-2015 is long because there were many changes during
the time (one of the reasons for jumping from /hipster to /hipster-2015
was to speed up IPS).
I think it is sane idea to publish , say latest ISO hipster snapshot
state of 20160121 to , say /dev-test, so that people can update to it
from /dev and see how things are going. (Some people might choose to
stay with snapshots for production).
That goes into idea of having /dev updated with changed 20160121, adding
packagemanager and updatemenager GUIs again and 151a branded zone and to
have an update appear to all current /dev users.
>
> At the very end of the process, I did receive a message about a few files
> and directories that were "salvaged":
>
> -----
>
> The following unexpected or editable files and directories were
> salvaged while executing the requested package operation; they
> have been moved to the displayed location in the image:
>
> var/sadm/system/logs ->
> /tmp/tmpJxJO6L/var/pkg/lost+found/var/sadm/system/logs-20160606T171556Z
> var/sadm/system ->
> /tmp/tmpJxJO6L/var/pkg/lost+found/var/sadm/system-20160606T171556Z
> usr/lib/python2.4/site-packages ->
> /tmp/tmpJxJO6L/var/pkg/lost+found/usr/lib/python2.4/site-packages-20160606T171557Z
>
> usr/lib/firefox/plugins ->
> /tmp/tmpJxJO6L/var/pkg/lost+found/usr/lib/firefox/plugins-20160606T171557Z
>
> etc/rad -> /tmp/tmpJxJO6L/var/pkg/lost+found/etc/rad-20160606T171557Z
>
> ----
>
> None of them were of concern for me, so I continued with the next steps:
>
>
>> 6 - Reboot to Hipster 2015
>>
>> 7 - Verify any leftovers
>> # pkg list |grep '0\.151\.1\.'
>> * must be empty *
>
> Ben's instructions had two steps that were numbered step 7. The first
> step 7 (above) didn't reveal any left-over packages, so I continued
> with the second step 7:
>
>> 7 - Install incorporations
>> # pkg install --no-backup-be userland-incorporation entire
>
> No problems from that, but it did output
>
> "No updates necessary for this image"
>
> Since my goal was to get to current hipster, I continued with the
> next steps:
>
>> 8 - Change publisher to Hipster
>> # pkg set-publisher -g http://pkg.openindiana.org/hipster -G
>> http://pkg.openindiana.org/hipster-2015 openindiana.org
>
> It wasn't listed in step 8, but I chose to also do a
>
> pkg refresh --full
>
> like had been done in step 5.
>
>> 9 - Update to latest Hipster
>> # pkg update --be-name OpenIndiana-Latest
>> # reboot
>
> Again for timing comparisons, the pkg update after switching from
> /hipster-2015 to /hipster took:
> - only about 2 minutes for the "plan" stage
> - involved 694 packages, totaling 13548 files in 494 MB.
> - the entire update, from start to finish, took a total of 9 minutes.
>
>
>> Now test extensively, reinstall missing applications, enable SFW for
>> Hipster,....
>
> I can't say I've tested extensively, but nearly everything I've tried has
> worked. Of note, my VirtualBox 4.3.30 install survived the transition
> from /dev to /hipster-2015 to /hipster and works just fine, including
> audio.
>
> A couple things I've noticed that aren't working:
>
> - the flash plugin isn't working with firefox 45.0.2. Not as big of a
> deal as it once would have been, because most of the YouTube stuff I've
> checked has played very well without flash. Since audio from my
> Windows
> 7 VirtualBox VM works, I can always use the VM for anything (like
> accessing our VMWare infrastructure) that truly requires flash.
> - since the graphical update manager is gone, root's existing cron
> job to run /usr/lib/update-manager/update-refresh.sh now just
> generates periodic error email. I just commented out the cron job.
>
> I also see that firefox 45.0.2 isn't happy with the Java plug-in:
>
> LoadPlugin: failed to initialize shared library
> /usr/jdk/instances/jdk1.7.0_80/jre/lib/i386/libnpjp2.so [ld.so.1:
> firefox: fatal: relocation error: file
> /usr/jdk/instances/jdk1.7.0_80/jre/lib/i386/libnpjp2.so: symbol
> __1cDstdMbasic_string4Ccn0ALchar_traits4Cc__n0AJallocator4Cc___J__nullref_:
> referenced symbol not found]
>
>
> Java web start continues to work, though, which is the only java/firefox
> bit I care about, since we have an important application that uses web
> start.
>
> After that amount of testing and things looking good enough for continued
> use, I decided I was staying with hipster rather than rolling back to
> the original boot environment. I therefore did the following:
>
> - re-enable sendmail and/or other services that were disabled at the
> start.
>
> sudo svcadm enable svc:/network/sendmail:default
> sudo svcadm enable svc:/network/sendmail-client:default
>
> - add the /hipster-encumbered publisher:
>
> sudo pkg set-publisher --non-sticky \
> -g http://pkg.openindiana.org/hipster-encumbered
> hipster-encumbered
i just need to say that I don't have anything set as non-sticky, since
new installs probably won't have that and i like to be in "the boots" of
every user and that helps testing packages and installing them.
>
> I found the reference to that repo in a message alp had posted.
>
> - after adding /hipster-encumbered, I installed vlc, which pulled in more
> than a dozen additional dependencies. I'll have more to add yet, as
> the
> list I previously had from sfe & sfe-encumbered totaled about 60
> packages.
I tend to install everything from hipster-encumbered, to make surte I
don't miss something multimedia-wise.
>
> - add the opencsw spec files extra repo. I used the following (not
> certain this was the best way...):
>
> sudo pkg set-publisher --non-sticky \
> -g http://sfe.opencsw.org/localhostoih/ \
> --search-after=openindiana.org localhostoi
Alos not sure if non-sticky is needed here. If it misbihaves with some
package installing it's a bug and it needs to be reported and
-non-sticky might put them under the carpet or so.
> Finally, since my OI /dev install had never had a working office suite,
> I finished up by installing openoffice from hipster:
>
> sudo pkg install -n pkg://openindiana.org/desktop/office/openoffice
There is also working LibreOffice form SFE
(http://sfe.opencsw.org/localhostoih/ localhostoih)
If you can, you can help with un-stucking Openoffice bug that prevent
saving ODT files, too.
>
> I had to use the full FMRI because I still have opensolaris.org as a
> publisher (see above) and it has an ancient version of openoffice.
Ia also keep OO.org 3 but I am keeping it in /opt, since version
unpacked from archive were newer anyway.
> I actually would have preferred libreoffice4 from sfe, but the
> --search-after and --non-sticky options I used when setting up
> sfe/localhostoi mean that some of the dependencies can't replace versions
> from hipster. I may have to re-do my publisher for sfe/localhostoi
Currently there are few more steps regarding C++ libraries collisions
between SFE and OI hipster, but there are steps explained on SFE page to
avoid them.
As I know it is not resolved yet as I know (correct me if anything is
new on this).
>
> Hope that all helps someone else to make the transition. Again, big
> thanks to Ben for posting the instructions.
Thank you to for relaying your experiences and recommendations, too :)
I hope you will keep hipster-2015 BE around, and your old /dev, too, so
you can possibly do more testing with updating. /hipster is and will be
moving target and we need something not moving as sure update target.
More information about the openindiana-discuss
mailing list