Mailinglist Archive: opensuse-bugs (11332 mails)

< Previous Next >
[Bug 450528] yast2 updater: installs pullin-flash-player update together with you stack updates
  • From: bugzilla_noreply@xxxxxxxxxx
  • Date: Fri, 5 Dec 2008 02:25:01 -0700 (MST)
  • Message-id: <20081205092501.49361245391@xxxxxxxxxxxxxxxxxxxxxx>
https://bugzilla.novell.com/show_bug.cgi?id=450528

User lslezak@xxxxxxxxxx added comment
https://bugzilla.novell.com/show_bug.cgi?id=450528#c19


Ladislav Slezak <lslezak@xxxxxxxxxx> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEEDINFO |NEW
Info Provider|dmueller@xxxxxxxxxx |




--- Comment #19 from Ladislav Slezak <lslezak@xxxxxxxxxx> 2008-12-05 02:25:00
MST ---
The problem is that there is an extra (full!) solver run in the UI, so the
patch doesn't help. The solver flags must be set permanently.

I just have added two Pkg functions:

map<string,any> Pkg::GetSolverFlags() - get the current solver flags
boolean Pkg::SetSolverFlags(map<string,any>) - set solver flags

(Pkg::Solve() has been removed, it was equal to: backup =
Pkg::GetSolverFlags(),
Pkg::SetSolverFlags(requested), Pkg::PkgSolve() and
Pkg::SetSolverFlags(backup).)

Sumbitted in yast2-pkg-bindings-2.17.31.

Jiri, the yast workflow should be:

1. Pkg::PkgApplReset() - ensure that there are no transactions set accidentally
by previous solver run
2. backup = Pkg::GetSolverFlags() - remember the current solver flags
3. Pkg::SetSolverFlags($["ignoreAlreadyRecommended":true, "onlyRequires":true])
- disable recommends
4. Pkg::PkgSolve() - compute needed patches
5. Pkg::ResolvableCountPatches(`pkg_mgr) - get number of patches for the
package management

if (patches_count > 0)

A1. select `pkg_mgr patches
A2. start the packager UI
A3. commit the pending transactions (install the selected patches)
A4. restart Yast (and goto 1.)

else

B1. Pkg::SetSolverFlags(backup) - restore the original solver settings -
enable recommends
B2. Pkg::PkgSolve() - compute needed patches (incl. recommends)
B3. Pkg::ResolvableCountPatches(`all) - get number of applicable patches
B4. continue the installation workflow if there is no applicable patch
B5. select the patches
B6. start the packager UI
B7. commit the pending transactions (install the selected patches)
B8. continue the installation workflow

(I hope I didn't forget something...)


--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

< Previous Next >
References