[voikko] Openoffice.org-voikko ja Debianin bugi #431193

Anssi Hannula anssi at mandriva.org
Fri Jul 13 03:46:20 EEST 2007


Harri Pitkänen wrote:
> Päivittäessäni kesäkuussa Debian unstablea eräällä koneella havaitsin, että 
> openoffice.org-voikon Debian-paketeissa olevat riippuvuuden ja konfliktit 
> eivät riitä varmistamaan, että päivitys onnistuisi turvallisesti:
> 
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=431193
> 
> Ongelma on siis siinä, että päivitysvaiheessa apt voi jättää konfliktin 
> huomioimatta. Päivityksen turvallisuus olisi siis varmistettava jollakin 
> toisella tavalla.
> 
> Kirjoitin aiheesta jo viime syksynä OpenOffice.orgin kehittäjille. Ongelma 
> myönnettiin, ja jonkinlaista korjausta siihen lupailtiin, mutta asialle ei 
> vielä ole mitään tehty. Olen yrittänyt etsiä vaihtoehtoista tapaa saada 
> päivitys onnistumaan nykyistä turvallisemmin, ja yhden konstin olen löytänyt.
> 
> Aina ennen "unopkg remove"-komentoa tulisi tehdä seuraavaa:
> 1) Suoritetaan "unopkg list --shared", ja määritetään tulosteesta tiedoston 
> voikko.so sijainti, joka on siis (esimerkiksi)
> $UNO_SHARED_PACKAGES_CACHE/uno_packages/TuHQgs_/voikko.oxt/voikko.so
> 2) Mikäli tiedoston sijainti saadaan määritettyä, poistetaan tiedosto 
> rm-komennolla.
> 3) Suoritetaan "unopkg remove" tavalliseen tapaan, eikä välitetä 
> virheilmoituksista, joita tuon yhden tiedoston puuttuminen aiheuttaa.
> 
> Tekemieni testien perusteella tämä kieltämättä aika sotkuinen menetelmä 
> lisäosan poistamiseksi näyttää toimivan, mutta en ole vielä kokeillut sitä 
> Debian-paketissa, ainoastaan manuaalisesti. Sen pitäisi nähdäkseni varmistaa 
> päivityksen onnistuminen tuossa bugiraportissa kuvailemassani tilanteessa. 
> Riippuvuudet ja konfliktit on kuitenkin jätettävä nykyiselleen, jotta uuden 
> lisäosan asennusvaiheessa ei tulisi ongelmia.
> 
> Todennäköisesti tämä ongelma koskee muitakin jakeluita kuin Debiania.

Kokeilemani perusteella myös rpm jättää riippuvuuden
Requires(preun):	openoffice.org = %ooo_version
(suomeksi: preun-skripti tarvitsee OOo:sta saman version kuin mille 
paketti on buildattu)
täysin huomioimatta. Conflictien lisääminen ei muuta asiaa miksikään. 
Tämän pystyy tosin näemmä kiertämään lisäämällä "%triggerun -- 
openoffice.org = %ooo_version"-skriptin (suoritetaan OOo:ta 
poistettaessa, myös päivitystä varten), joka näyttää suorittuvan ennen 
vanhan OOo:n tiedostojen poistoa. Siirryn todennäköisesti käyttämään 
tätä Mandriva-paketissa muutamien lisätestailujen jälkeen.

Kokeilin myös muokata voikko.so -tiedostoa siten, ettei lataaminen enää 
onnistu (vaihdoin kirjastojen nimiä, tyyliin "sed -i 
s,libvoikko.so.1,libfdskko.so.2, voikko.so"). Tämä aiheutti unopkg:n 
heittämään virheilmoituksen lataamisen epäonnistumisesta, muttei 
kuitenkaan vaikuttanut uninstallointiin, toisin kuin mainitsemassasi 
Debianin bugreportissa. Voikko-extension oli kokonaan kadonnut 
$UNO_SHARED_PACKAGES_CACHE/uno_packages/ -kansiosta, kuten pitikin.
Tämä siis OOo:n versiolla 2.2.1.

-- 
Anssi Hannula




More information about the voikko mailing list