Page: Previous  1, 2

ffmpeg problem upgrading antiX-M7.2-M7.5
anticapitalista
Status: Contributor
Joined: 13 Jun 2008
Posts: 202
Location: Greece
Reply Quote
There is an antiX upgrade problem. If you dist-upgrade antiX-M7.2
to antiX-M7.5, it fails because of libavutilcvs49.

The solution is to
#apt-get remove --purge libavutilcvs49
before doing the dist-upgrade.

and then re-install ffmpeg from debian Testing.

Any chance of including that in smxi?

Upgrading antiX-M7.5-test1 is ok.

TIA
Back to top
techAdmin
Status: Site Admin
Joined: 26 Sep 2003
Posts: 4128
Location: East Coast, West Coast? I know it's one of them.
Reply Quote
I actually have a fix in place for that, that only the antix conversion itself triggers.

I had the fix in but it was only for the antix sid conversion, now I moved it into standard pre du fixes file, and it will run for all antix users.

Give it a try and see if it works, it worked on antix sid, try it on default standard antix. I use a a different method, somewhat brutal, but also a lot easier to do than hacking sources etc. Anyway, give it a try now on a test vm install and see if it goes through.

It's very hard commenting out and then uncommenting sources in general, that's stuff I try to avoid doing as rule, you have to put in a lot of trap error handling to make sure changes always get undone on user exit, and it's basically not worth it. But the method I tried did work, see if it does now, it's a funny one, heh.

Is there a way to force install from a specific repo? I dont' know it if there is.
Back to top
anticapitalista
Status: Contributor
Joined: 13 Jun 2008
Posts: 202
Location: Greece
Reply Quote
smxi doesn't finish the upgrade, it complains about libavformat52 and libswscale0.
apt-get -f install doesn't fix it.

What does work is
apt-get remove --purge libavutilcvs49

as it also removes libavformat52 libswscale0 (and ffmpeg)

apt-get clean
apt-get update
apt-get install ffmpeg
Back to top
techAdmin
Status: Site Admin
Joined: 26 Sep 2003
Posts: 4128
Location: East Coast, West Coast? I know it's one of them.
Reply Quote
ok, I added that method.

Try it again in a fresh install. Hopefully you know about virtualbox snapshots, that make repeat tests of fixes and other stuff a breeze, after each test, restore snapshot of pre test condition, and the system is ready to go for a new test in about 5 seconds, restored to its previous state.
Back to top
anticapitalista
Status: Contributor
Joined: 13 Jun 2008
Posts: 202
Location: Greece
Reply Quote
Now works perfectly.
Back to top
techAdmin
Status: Site Admin
Joined: 26 Sep 2003
Posts: 4128
Location: East Coast, West Coast? I know it's one of them.
Reply Quote
By the way, this is the right way to handle antix only fixes, show the working code, and I'll just integrate it into the existing structure, which is relatively trivial for me to do usually because everything is abstracted and modularized so it's just a matter of creating a little function that runs the fix once if the conditions are present to run it.

So what's always needed is the conditions, ie the presence of that cvs lib, the file names, to test for, and the fix code, to implement.

For example, in /usr/local/bin/sm-lib-2008-fixes, here's the relevant fix, along with commented out earlier version ,which worked on a sid antix conversion:

:: Code ::
libavutil_fix_1()
{
        local prefId='libavutil-fix-1'
        local smPref=$( sm_pref_tester $prefId )
        local isInstalled=$( package_tester 'libavutilcvs49'  )
        local isInstalled2=$( package_tester 'libavcodeccvs51'  )

        if [ "$smPref" -eq 0 -a "$DISTRO" == 'antix' ] && [ -n "$isInstalled" -o -n "$isInstalled2" ]
        then
                echo $LINE
                echo "${S}Running ffmpeg fix...${N}"
                #package_installer 'libavutil49 libavcodec51' 'install-always' '-d'
                #echo "${S}Forcing overwrite of broken packages...${N}"
                package_remover 'libavutilcvs49' 'purge'
                $APT_TYPE clean
                package_installer 'ffmpeg' 'install-always'

                #dpkg -i --force-overwrite /var/cache/apt/archives/libavutil49*.deb
                #dpkg -i --force-overwrite /var/cache/apt/archives/libavcodec51*.deb
                set_sticky_prefs $prefId
        fi
}


As you can see, it's pretty much all little tools that test, install, remove, and so on, and the fixes are run from a version based test, so they only run if older than some version number.
Back to top
Display posts from previous:   
Page: Previous  1, 2
All times are GMT - 8 Hours