Replies

This profile is from a federated server and may be incomplete. Browse more on the original instance.

juliank, to random
@juliank@mastodon.social avatar

It's not quite clear to me how to implement the behaviour of apt upgrade entirely backwards compatible.

That is, apt upgrade removes no packages. Anything needing a removal would cause a package to be kept back instead. But um solver3 will happily install a new dependency instead of keeping the upgrade back to avoid a removal.

For apt-get upgrade, new installs are not allowed either. I'm not sure if solver3 does funky stuff there, after all it can only change versions.

juliank,
@juliank@mastodon.social avatar

WRT autoremovals, made some progress but this is a bit of a hard topic. There's some breakage in the ?garbage pattern as the depcache no longer marks and sweeps itself.

Solver3 when it sees the first optional install request, marks all previously installed packages that are not yet decided as must as garbage, which is about right, except we need to solve Recommends before "kept auto package" and only trigger once we see the latter.

juliank,
@juliank@mastodon.social avatar

In any case, the solver3 branch now has a list of tests broken by solver and runs the remaining ones to avoid regressions in them from future solver changes.

I'm working on the list to reduce failing test cases which is going to be a necessary step for the solver3 beta 1 milestone, alongside better error messages.

Some test cases are basically fixed if not for the autoremoval listing/handling. It's a bit sad.

Basically 84 tests are failing, 304 are passing currently.

juliank, (edited ) to random
@juliank@mastodon.social avatar

The Debian dependency problem (DebSAT)

  1. It's main clauses have the form

V -> D1 v D2 v ... v Dn
V -> not C1
V ~> R1 v R2 v ... v Rn

  1. The root clauses have the form

ROOT -> V1 v ... v Vn
ROOT ~> V1 v ... v Vn

A basic solver algorithm is

solve(choice)
unit propagation
l = choose_literal()
return solve(l) or solve(not l)

solve(ROOT)

where:

choose_literal() finds the clause with the smallest number of allowed choices, -> before ~>, returning the first allowed Di

juliank, (edited )
@juliank@mastodon.social avatar

This is the basic algorithm, it implements ordered solving of dependencies in the ordered and it solves Recommends only after Depends, and one-by-one.

We can call this a partial ordered maxsat problem. Let Si..Sn be the soft clauses, then a partial ordered maxsat problem is equivalent to a partial weighted maxsat problem with weights

Wi = 2**(n-i)

It has a (2**n)/2n lower complexity than an unordered partial maxsat problem where n is the number of soft clauses.

juliank,
@juliank@mastodon.social avatar

Worst case complexity of the solver of course still remains at 2**h+2s where h is hard clauses, and s is soft clauses.

juliank, to random
@juliank@mastodon.social avatar

Fresh off the presses: New blog post: The new APT 3.0 solver

https://blog.jak-linux.org/2024/05/14/solver3/

Comments here.

juliank,
@juliank@mastodon.social avatar

@xanScale I may yet hide it behind a --deep flag or something because it can be surprising.

juliank,
@juliank@mastodon.social avatar

@xanScale But generally if you install the same packages on your system as you have manually installed now you'd end up without the flatpak plugin too, so something pulled it in before, but isn't anymore.

juliank,
@juliank@mastodon.social avatar

@xanScale sure it does. There's no problem there.

There's a tip: the old solver still checks afterwards that there's no broken dependencies (but doesn't resolve itself)

juliank,
@juliank@mastodon.social avatar

@xanScale because gnome-software-plugin-deb is the stronger alternative

mdeslaur, to random
@mdeslaur@mastodon.social avatar

I don't know the worst part of having my bag delayed until tomorrow: having no clean socks, or the hotel tv with motion smoothing turned on and not having my universal remote to turn it off.

juliank,
@juliank@mastodon.social avatar

@mdeslaur that's a good cheat with the remote

juliank,
@juliank@mastodon.social avatar

@mdeslaur remote looks normal but settings don't work and colour space and smoothing are all wrong.

juliank,
@juliank@mastodon.social avatar

@mdeslaur well ok at least it's in Dolby vision now

juliank, to random
@juliank@mastodon.social avatar

Enjoy your churros and porras. Chocolate came later 😋

juliank,
@juliank@mastodon.social avatar

@mdione didn't manage to try horchata. Didn't even get breakfast today. There seems to be only 2-3 places focusing on it, and a couple of ice cream shots having modernized varieties, and it's all a bit remote to where I'm running around l

juliank,
@juliank@mastodon.social avatar

@mdione found a 1l pack of the industrial variety but that wasn't particularly enticing

juliank,
@juliank@mastodon.social avatar

@mdione got this

18+ juliank, (edited ) to random
@juliank@mastodon.social avatar

AVPN today, could be more crust, need to check regulations on preparation again because there were some irregularities.

No Italian beverage to complete the theme

18+ juliank, (edited )
@juliank@mastodon.social avatar

Regulations violated

  • the cornice is too low, it should be 1-2cm high
  • the stretching occurred not using the proper Neapolitan method of flapping, but by tossing it in the air once and then extending the dough on the table using both hands pulling outward.

Report filed.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • provamag3
  • kavyap
  • DreamBathrooms
  • InstantRegret
  • magazineikmin
  • thenastyranch
  • ngwrru68w68
  • Youngstown
  • everett
  • slotface
  • rosin
  • ethstaker
  • Durango
  • GTA5RPClips
  • megavids
  • cubers
  • modclub
  • mdbf
  • khanakhh
  • vwfavf
  • osvaldo12
  • cisconetworking
  • tester
  • Leos
  • tacticalgear
  • anitta
  • normalnudes
  • JUstTest
  • All magazines