====== Rezolvarea conflictelor de fișiere între pachete Mesa (dpkg) ======
Acest articol descrie cum se rezolvă eroarea de conflict de fișiere apărută la actualizarea driverelor Mesa prin PPA-ul **kisak-mesa** pe Ubuntu/Linux Mint.
----
===== Descrierea problemei =====
La rularea ''sudo apt install -f'' sau ''sudo apt upgrade'', dpkg poate refuza instalarea cu o eroare de forma:
dpkg: eroare la procesarea arhivei /var/cache/apt/archives/mesa-libgallium_26.0.0~kisak2~n_i386.deb (--unpack):
se încearcă suprascrierea lui „/usr/lib/i386-linux-gnu/dri/nouveau_drv_video.so",
care este și în pachetul mesa-va-drivers:i386 25.3.5~kisak1~n
E: Sub-process /usr/bin/dpkg returned an error code (1)
===== Cauza =====
La trecerea de la Mesa 25.x la 26.x, fișierele au fost **reorganizate între pachete**. Concret, fișierul ''nouveau_drv_video.so'' a fost mutat din pachetul ''mesa-va-drivers'' în ''mesa-libgallium''. DPKG nu permite suprascrierea unui fișier care aparține unui pachet instalat, fără ca acel pachet să fie eliminat în prealabil.
===== Soluție =====
==== Pasul 1: Încearcă repararea automată ====
sudo apt install -f
Dacă APT poate rezolva singur conflictul (de exemplu dacă programează eliminarea ''mesa-va-drivers:i386'' înainte de instalare), problema se rezolvă aici. Dacă eroarea persistă, continuă cu pașii următori.
==== Pasul 2: Elimină forțat pachetele conflictuale ====
Pachetul ''va-driver-all:i386'' depinde de ''mesa-va-drivers:i386'', deci ambele trebuie eliminate împreună:
sudo dpkg --remove --force-all mesa-va-drivers:i386 va-driver-all:i386
> **Atenție:** Opțiunea ''%%--force-all%%'' ignoră dependențele. Este sigură în acest context deoarece APT va reinstala pachetele necesare în pasul următor.
==== Pasul 3: Lasă APT să reinstaleze corect ====
sudo apt install -f
APT va instala acum Mesa 26.x fără conflicte, iar ''va-driver-all'' va fi reinstalat automat dacă este necesar.
==== Pasul 4: Curăță pachetele orfane ====
sudo apt autoremove
===== Întrebare frecventă =====
==== De ce nu funcționează --force-remove-reinstreq singur? ====
sudo dpkg --remove --force-remove-reinstreq mesa-va-drivers:i386
# Eroare: va-driver-all:i386 depinde de mesa-va-drivers.
Opțiunea ''%%--force-remove-reinstreq%%'' ignoră doar **starea internă de reinstalare necesară** (flag-ul ''reinst-required'' din baza de date dpkg), dar **nu ignoră dependențele altor pachete instalate**. De aceea este nevoie fie de ''%%--force-all%%'', fie de eliminarea prealabilă a pachetului dependent.
===== Verificare finală =====
sudo apt update && sudo apt upgrade
Nu ar trebui să mai existe pachete incomplete (''9 instalat(e) sau eliminat(e) incomplet'') sau erori de conflict.
----
===== Vezi și =====
* [[:chei_gpg_lipsa|Cheie GPG lipsă pentru repo-uri externe]]
* [[https://launchpad.net/~kisak/+archive/ubuntu/kisak-mesa|PPA kisak-mesa pe Launchpad]]
* [[https://manpages.ubuntu.com/manpages/resolute/en/man1/dpkg.1.html|Pagina de manual dpkg]]
{{tag>mesa apt dpkg linux-mint ubuntu}}