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…
😎
thanks Jeremy!!
lookie here, 3.9 is there also
nofolder repos:
http://www.assets.nofolder.com/SUSE/
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
jeremy, can you contact me please
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:
art-sharp2-2.24.2-15.4.1.i586
gnome-sharp2-2.24.2-15.4.1.i586
gconf-sharp2-2.24.2-15.4.1.i586
gnome-vfs-sharp2-2.24.2-15.4.1.i586
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/2.24.0.0__35e10195dab3c99f/gnome-sharp.dll
However, if you install the *-13* versions from oS 12.2:
art-sharp2-2.24.2-13.1.2.i586
gnome-sharp2-2.24.2-13.1.2.i586
gconf-sharp2-2.24.2-13.1.2.i586
gnome-vfs-sharp2-2.24.2-13.1.2.i586
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)
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.