iFolder 3.8 on Opensuse 12.1 (or 11.4), Part 2

First things first.  I want to thank all the folks that have poured a ton into making iFolder work for me.  To all the unknown and un-named, thank you.  Now, of course there are a few of you for which I have names, and I most definitely thank you too (in no particular order): Daniel and the NoFolder crew, Ravi Kumar, Stan, Mike, Peter, Shanti, and Chris… and everyone else who commented on the previous iFolder posts.

Now to bring you up-to-speed — Thanks to Chris’ latest posts in the comment section of “iFolder 3.8 on Opensuse 12.1 (or 11.4), Part 1“, I’ve been able to repair my running iFolder server built to the specs and steps as I wrote in the post (you can read all the comments there to find out why it didn’t work right).  My iFolder system was already fully running in support of the local client on the PCs for the last year or more, but now I have working webaccess too!  Woo-hoo!  And I wanted to take Chris’ comments and turn it into a step-by-step repair guide, so nobody has to destroy a running system (if you already have one).

So to repeat/summarize/clarify, this is to take a previously-built iFolder system (again, as built in Part 1), on a 64-bit Opensuse server, and update it to get a working file upload/download functionality.  Basically, we need to do surgery to get the new/current mono out, and replace it with the old mono, without killing the patient.  😉  As always, no promises;  as your result may be different.  And for pete’s sake get a backup or snapshot before doing these steps!  Now, on to the nitty-gritty…

Stop apache:

rcapache2 stop

To find out what mono items I had installed:

zypper se -i mono-*

I think zypper can be dangerous to do the removal, unless you are extremely careful; as it is inclined to remove other stuff too, if you’re not watching closely.  In fact, just to prove it, here’s what it wants to do if you start to remove a few of the RPMs (note the unnecessary removals of the iFolder RPMs):

The following packages are going to be REMOVED:
apache2-mod_mono ifolder3-enterprise log4net mono-core mono-data mono-data-sqlite mono-extras mono-mvc mono-wcf mono-web mono-winforms
novell-ifolder-enterprise-plugins xsp

So, I prefer to use the good ol’ rpm for this removal, and tell it that it needs to ignore the dependencies on a few things:

rpm -e --nodeps apache2-mod_mono mono-core mono-data mono-data-sqlite mono-extras mono-mvc mono-wcf mono-web mono-winforms xsp

Now on to installing the lower-version mono files.  These few can be installed in this order, separately:

rpm -Uvh http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-core-2.6.7-4.1.x86_64.rpm
rpm -Uvh http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-data-2.6.7-4.1.x86_64.rpm
rpm -Uvh http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-data-sqlite-2.6.7-4.1.x86_64.rpm

These should be installed together to cover all the dependencies (note that they are all on one command):

rpm -Uvh http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-wcf-2.6.7-4.1.x86_64.rpm http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-winforms-2.6.7-4.1.x86_64.rpm http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-extras-2.6.7-4.1.x86_64.rpm http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/mono-web-2.6.7-4.1.x86_64.rpm

Then back to separate installs (just for clarity in the blog format, really; they could all be done at once):

rpm -Uvh http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/noarch/xsp-2.6.5-38.1.noarch.rpm
rpm -Uvh http://download.opensuse.org/repositories/home:/shantikulkarni:/ifolder/openSUSE_12.1/x86_64/apache2-mod_mono-2.6.3-4.1.x86_64.rpm

(NOTE:  I’ve saved all these RPMs myself for future reference, in case these disappear someday too…  If it happens, let me know…)

The re-start apache:

rcapache2 start

And that should be it! If all went well, all your data and users and such are exactly as you left them.  At least it was for me.  Obviously, you’d have to get different RPMs for 32-bit, and I haven’t yet tested this on Opensuse 12.2, but there’s always another day…

Next I’ll create a fresh new guide to replace the “Part 1” post, but I don’t want to take that down due to historical significance.  So expect a “Part 3” coming soon…  And thanks again…






  1. daniellench

    thanks Jeremy!!

    lookie here, 3.9 is there also

    nofolder repos:

    Add the NoFolder repo for mono 2.6.7 and its dependencies.
    # zypper ar -t YUM http://assets.nofolder.com/SUSE/ NoFolder-SUSE
    set priority to 1

    # zypper mr -p 1 NoFolder-SUSE
    refresh the reposand trust always the new NoFolder repository

    # zypper ref

  2. daniel

    jeremy, can you contact me please

  3. Chris

    It looks like iFolder on oS 12.3 is kind of a no-go at this point.

    In order to get it to work, I had to first install the packages for iF 2.8.4 (which takes mono 2.6.7) and the *-sharp2-*-13.* versions from oS 12.2 mentioned below, and then do the one-click install for the 3.9.1.svn client (which takes mono 3.0.4 and simias 1.9.1.svn) on software.opensuse.org (which doesn’t try to upgrade the *sharp2* packages.)

    (Just downgrading to the old versions after you installed the 3.9.1 client didn’t seem to work for some reason.)

    The reason is there appears to be an issue with the *-15* version of the gnome-sharp2 libraries that come with oS 12.3:

    If you try to use these versions, the client won’t start, and if you run it from the command line to see what’s going on, you’ll end up with this error:

    Missing method System.Type::op_Equality(Type,Type) in assembly /usr/lib/mono/2.0/mscorlib.dll, referenced in assembly /usr/lib/mono/gac/gnome-sharp/

    However, if you install the *-13* versions from oS 12.2:

    then things work (including the 3.9.1 client and mono 3.0.4.)

    However, as soon as you install the old versions, oS notifies you of an update (opensuse-2013-339,) which installs the new versions again, which breaks the client, which sends you spiraling down in a loop of frustration and annoyance.

    At least that’s what I’ve been dealing with yesterday and today :/

    Unfortunately, it looks like you can’t just stick with the 2.8.4 client on 12.3, because you are greeted with any number of different errors depending on which version of Simias you try (I tried 1.8.5. 10252, 10349, and 10363)

  4. Chris

    Just found out too – if you install the log4net patch version 1.2.10-69, it’ll break the 3.9.1.svn client; back-revving to the 1.2.10-67.1.2 fixes it.

Leave a Comment

Your email address will not be published. Required fields are marked *