Orchard now works on Mono

Topics: Customizing Orchard, General
Feb 24, 2011 at 12:51 AM

Hello guys,

  My name is Marek Habersack and I work at Novell in the Mono project team. My primary responsibility is the .NET "server side" and I mainly deal with all things ASP.NET and the related technologies. I've been recently working on Mono support for Orchard and, as of a couple days ago, the CMS installs and works with our 2.10 branch (https://github.com/mono/mono/tree/mono-2-10, soon to be released as an update for the 2.10 series) as well as the master branch (https://github.com/mono/mono/). I've uploaded a short screencast to YouTube which shows Orchard running under OpenSuSE 11.3 with Mono/master.

In order to get Orchard working you need one of the Mono versions mentioned above and a couple of patches applied to the Orchard sources. I have created two Orchard forks:

  • Generic Mono changes - introduces support for Mono debugging information files (.mdb) as well as changes the top-level Web.config to make it compatible with Mono.
  • PostgreSQL support - introduces support for PostgreSQL and is not specific to Mono. Even though I didn't test it on .NET, it should work there just fine. This patch includes some workarounds for NHibernate bugs.

I submitted both of the above commits to the upstream project via pull requests - we'll see if they get accepted :). After applying the patches you need to update few assemblies in the Orchard sources. In order to do so, please download this archive which contains updates for the following assemblies:

  • NHibernate.dll - version 2.1.2 compiled from sources as the version shipped with Orchard contains references to .NET-specific internal namespaces which don't exist in Mono
  • Microsoft.Web.Infrastructure.dll - an MVC3 shim which must not be shared between Mono and .NET
  • Npgsql.dll - an ADO.NET PostgreSQL driver v2.0.11.0

After downloading the tarball, unpack it in the top directory of your Orchard source tree, start MonoDevelop (VisualStudio works too, of course) and compile the project as usual. After succesful compilation you should change your working directory (from within a terminal on your Linux machine) to src/Orchard.Web/ and execute the following command:

MONO_IOMAP=all xsp4

After a short moment you will see XSP banner and you will be able to browse the application at http://localhost:8080/. The MONO_IOMAP=all part of the command line tells Mono to switch on its special Windows-compatibility mode which makes all filesystem access case-insensitive and ignores drive specifications within file paths. This is necessary as Orchard uses mixed case throughout the code and you would encounter problems with, for instance, styles.

Hope the instructions above will be sufficient to let you test Orchard on Mono/Linux :) If you encounter any problems, please either file a bug report (for the System.Web component), reply to this thread or contact me directly via mail at grendel at twistedcode.net, thanks!

Feb 24, 2011 at 4:04 PM

This is great.   I have been wanting to try developing on Orchard with MonoDevelop.  Curious can you use the SQL CE Database with Mono?  

Feb 24, 2011 at 4:49 PM

No, you can't use SQL CE, but SQLite should work just fine with NHibernate (haven't tested but there's an SQLite dialect in NH). You'd just have to modify the following files in Orchard sources:

  • src/Orchard.Web/Modules/Orchard.Setup/Views/Setup/Index.cshtml (only if you want to add an example of the ADO.NET connection string)
  • src/Orchard.Web/Modules/Orchard.Setup/Controllers/SetupDatabaseType.cs (to add a new enum member for SQLite)
  • src/Orchard.Web/Modules/Orchard.Setup/Controllers/SetupController.cs (to extend the IndexPOST method to support the new enum member)

After that you should be able to use SQLite just fine.

Feb 25, 2011 at 9:25 PM

Is it time to update the Mono feature request at: http://orchard.uservoice.com/forums/50435-general/suggestions/1225057-mono-compatibility ?

As an aside, this feature request has not been marked as accepted, in fact there are no feature requests that have been accepted. It would be helpful if requests could be marked as accepted when they are being worked on by the core team.

Feb 28, 2011 at 7:42 PM

Hi, sorry for asking, but I'm a total newbie in mono, I've made my linux virtual machine with mono 2.10.1  installed and tried to run, it returns to me many errors related to  "Error CS1980: Dynamic keyword requires `System.Runtime.CompilerServices.DynamicAttribute' to be defined. Are you missing System.Core.dll assembly reference? (CS1980) (Orchard.Core)"

 

Any clues? Tried many things and didn't make it work till now :) any advice, whould be greatly appreciated.

Coordinator
Feb 28, 2011 at 9:04 PM

Check your email, Marek :)

Feb 28, 2011 at 9:34 PM
firetarster wrote:

Hi, sorry for asking, but I'm a total newbie in mono, I've made my linux virtual machine with mono 2.10.1  installed and tried to run, it returns to me many errors related to  "Error CS1980: Dynamic keyword requires `System.Runtime.CompilerServices.DynamicAttribute' to be defined. Are you missing System.Core.dll assembly reference? (CS1980) (Orchard.Core)"

 

Any clues? Tried many things and didn't make it work till now :) any advice, whould be greatly appreciated.

It seems you're not running with .NET 4 Mono profile. Make sure you start xsp with the following command:

MONO_IOMAP=all xsp4

Also make sure that you have all of the Mono packages installed in your VM. You can also check if the 4.0 version of System.Core is present using the following command:

gacutil -l System.Core

The output should be similar to:

The following assemblies are installed into the GAC:
System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Number of items = 2

Additionally, the 'dmcs' command must be found in your path (typing 'which dmcs' must display the path) and 'dmcs --version' must report version 2.10

Feb 28, 2011 at 10:05 PM
suhacan wrote:

Check your email, Marek :)

Replied :)

Mar 1, 2011 at 1:16 PM

Grandello, thanks for all the advice, it seems that the result of the instructions that you passed me are all normal, I've managed to solve the System.Core problem by just adding the reference in the orchard project where it was missing. Compiled but when I run on the web server, it returns me the following:

Compilation Error

Description: Error compiling a resource required to service this request. Review your source file and modify it to fix this error.

Compiler Error Message: CS0234: The type or namespace name `Caching' does not exist in the namespace `System.Web'. Are you missing an assembly reference?

Source Error:

Line 19:     using System.Text.RegularExpressions;
Line 20:     using System.Web;
Line 21:     using System.Web.Caching;
Line 22:     using System.Web.SessionState;
Line 23:     using System.Web.Security;

Can't figure out why this is happening :) any advice whould be helpful.

Thanks.

Mar 1, 2011 at 5:50 PM
firetarster wrote:

Grandello, thanks for all the advice, it seems that the result of the instructions that you passed me are all normal, I've managed to solve the System.Core problem by just adding the reference in the orchard project where it was missing. Compiled but when I run on the web server, it returns me the following:

Compilation Error


Description: Error compiling a resource required to service this request. Review your source file and modify it to fix this error.

Compiler Error Message: CS0234: The type or namespace name `Caching' does not exist in the namespace `System.Web'. Are you missing an assembly reference?

Source Error:

Line 19:     using System.Text.RegularExpressions;
Line 20:     using System.Web;
Line 21:     using System.Web.Caching;
Line 22:     using System.Web.SessionState;
Line 23:     using System.Web.Security;

Can't figure out why this is happening :) any advice whould be helpful.

Thanks.

I guess you used MonoDevelop older than 2.6.1 (or master) which doesn't add implicit reference to System.Core. As for System.Web.Caching... The only thing I can think about is that, for some reason, your compilation doesn't reference System.Web.dll - no idea how can it happen (unless you don't have System.Web.dll in the GAC)

Mar 2, 2011 at 1:10 AM
Edited Mar 2, 2011 at 1:59 AM

I'm also getting the same problem using mono 2.10 on apache. I can confirm that it is running the .NET 4 Mono profile. I am compiling the Orchard solution using VS 2010 if that makes a difference? I'm going to try an upgrade to mono 2.10.1 and see if that helps.

 

EDIT:

After upgrading to mono 2.10.1 it still makes no difference.

Mar 2, 2011 at 6:03 PM
rupurt wrote:

I'm also getting the same problem using mono 2.10 on apache. I can confirm that it is running the .NET 4 Mono profile. I am compiling the Orchard solution using VS 2010 if that makes a difference? I'm going to try an upgrade to mono 2.10.1 and see if that helps.

 

EDIT:

After upgrading to mono 2.10.1 it still makes no difference.

Compiling with VS does not make any difference. When you get the exception in your browser, find the compiler command line and post it here, please.

Mar 3, 2011 at 12:50 PM
rupurt wrote:

I'm also getting the same problem using mono 2.10 on apache. I can confirm that it is running the .NET 4 Mono profile. I am compiling the Orchard solution using VS 2010 if that makes a difference? I'm going to try an upgrade to mono 2.10.1 and see if that helps.

EDIT:

After upgrading to mono 2.10.1 it still makes no difference.

Make sure you don't have <remove> for System.Web in <assemblies> in Web.config.

Mar 4, 2011 at 12:48 PM

Hello, i'm just trying to run Orchard on Ubuntu 10.10 with mono 2.10.1 and version 8.4.7 of postgres.

I've the following problems:

The first is (was?) that i was unable to compile the original PostgresDataServicesProvider.cs. I got the following error message:

   forks_grendello_monopostgresqlsupport_05693a652c12\src\Orchard\Data\Providers\PostgresDataServicesProvider.cs(34,17): error CS1540: Cannot access protected member 'FluentNHibernate.Cfg.Db.PostgreSQLConfiguration.PostgreSQLConfiguration()' via a qualifier of type 'FluentNHibernate.Cfg.Db.PostgreSQLConfiguration'; the qualifier must be of type 'Orchard.Data.Providers.FixedPostgreSQLConfiguration' (or derived from it)

I changed

return new PostgreSQLConfiguration ().Dialect <FixedPostgreSQL82Dialect> ();

to

return PostgreSQLConfiguration.PostgreSQL82; 
and now it compiles. But i'm not sure if that's the right solution.

The second problem (maybe caused by the first): After entering the username, password and database connection string i get the error message:

Dialect does not support identity key generation.

Does anyone have any idea what could be the cause of this?

Thanks

Mar 9, 2011 at 4:00 PM

I installed mono 2.10.1 from Git, followed the instructions, everything compiled fine, and it runs BUT,

after about 5-10 page loads (resource loads), i get (below)

It is very reproducable, always happens, i usually get at least a few page views in before it happens.

The only other issue i have experienced so far is images (like the online.gif) come up broken, but I am sure this isn't to serious.

It would seem the issue below is a connection pool running out, as if every connection doesn't return to pool after use,

any ideas?

Also i can't get themes to load, it says permission error on directory is likely cause, yet i have check an permission is fine.

thanks,

-tl

 

System.Exception

Timeout while getting a connection from pool.

Description: HTTP 500.Error processing request.

Details: Non-web exception. Exception origin (name of application or object): Npgsql.

Exception stack trace:
at Npgsql.NpgsqlConnectorPool.RequestPooledConnector (Npgsql.NpgsqlConnection Connection) [0x00000] in <filename unknown>:0 at Npgsql.NpgsqlConnectorPool.RequestConnector (Npgsql.NpgsqlConnection Connection) [0x00000] in <filename unknown>:0 at Npgsql.NpgsqlConnection.Open () [0x00000] in <filename unknown>:0 at NHibernate.Connection.DriverConnectionProvider.GetConnection () [0x00000] in <filename unknown>:0
Mar 11, 2011 at 9:18 PM

Folks, a collective response to all the reports above - I have just published an article at http://mono-project.com/Orchard which details the steps to build and run Orchard with Mono. Also published a VM and a Live CD for your testing pleasure, it's described in the article as well. Please follow the instructions given there and let me know how things work for you.

Mar 29, 2011 at 9:46 AM

Hy grandello

I tried to install Orchard on Mono 2.8.2+openSUSE 11.4. When I should patch the source, I type "patch -p1 01.\ orchard-1.0-mono-support.patch", seems to me, that nothing happens. Even task manager says that patch process is sleeping. Could you help me with this issue?

thanks

Apr 19, 2011 at 9:24 AM

Any news about running orchard on mono?

Are the patches now included into Orchard 1.1?

It seems quite tight lipped in the last couple of weeks about this topic.

Grendel are you currently working on this topic?

Is there any progress in nhibernate for pgsql? As long as the pgsql-driver produces errors it is not really a good choice.

Is it possible to use MS SQL-Server on another server only running asp.net mvc-code on the linux machine?

 

Best regards,

Tom

Apr 19, 2011 at 9:31 AM

No news as of yet. I haven't had time to work on it any further. Should get to it in the next weeks - it all depends on my work schedule and tasks. As for MS SQL Server on another machine - it should be possible, I haven't tested it yet.

Jun 5, 2011 at 11:25 AM
Edited Jun 6, 2011 at 4:00 AM

OK. This has been hell, getting this working on OSX, which has its own issues with mod_mono hosting. Got far w/ Apache etc, but not far enough. Here's my roadblock, currently on 1.1 from source:


Server Error in '/' Application Argument cannot be null. Parameter name: path1 Description: HTTP 500. Error processing request. Stack Trace: System.ArgumentNullException: Argument cannot be null. Parameter name: path1 at System.IO.Path.Combine (System.String path1, System.String path2) [0x000c6] 
in /private/tmp/monobuild/build/BUILD/mono-2.10.2/mcs/class/corlib/System.IO/Path.cs:126 
  at Orchard.FileSystems.AppData.AppDataFolder.CombineToPhysicalPath (System.String[] paths) [0x00000] 
in /Users/jon/Downloads/Orchard.Source.1.1.30/src/Orchard/FileSystems/AppData/AppDataFolder.cs:91 
  at Orchard.FileSystems.AppData.AppDataFolder.CreateDirectory (System.String path) [0x00000] 
in /Users/jon/Downloads/Orchard.Source.1.1.30/src/Orchard/FileSystems/AppData/AppDataFolder.cs:187 
  at Orchard.FileSystems.Dependencies.DefaultDependenciesFolder.m__1AB 
(Orchard.Caching.AcquireContext`1 ctx) [0x00000] 
...
in /Users/jon/Downloads/Orchard.Source.1.1.30/src/Orchard.Startup/Starter.cs:50 
Version information: Mono Runtime Version: 2.10.2 (tarball Mon Apr 18 09:14:01 MDT 2011); ASP.NET Version: 4.0.30319.1

Mind you, this is not trunk. This is v1.1 release source. Mebbe I should retry with trunk ... *sigh*

 

EDIT: Trunk does not compile with MonoDevelop at all. Eight compile errors instead of one or two. Going to abandon this and wait for news of updated Mono support.

Jun 10, 2012 at 10:46 PM

It's been a year since the last entry on this thread... has proper support been added yet?

Coordinator
Jun 11, 2012 at 12:02 AM

Proper support will not appear out of thin air ;) It will only get done if somebody does it.

Jun 11, 2012 at 9:22 PM

I'm working on trying to apply those patches to 1.4 right now, but I'm really new to this Push/pull type thing.  If I get it working, I'll need some help to push/pull into the release.

 

If I do get it working, what needs to be done to get it accepted into the main release?  as in, why didn't it become part of the main solution in 1.1?

Coordinator
Jun 11, 2012 at 10:07 PM

I depends on the changes. If they are harmless, they can be merged, but yet they need their own branch for ongoing work.

Jun 16, 2012 at 10:23 PM

I'm afraid I'm going to need to give up on this.  I've spent too much time and I think it's going to need way too many changes to make it work.

Just a summary of what I know:

1. There is some kind of issue with Mono and HostingEnvironment.MapPath(), it's returning null occassionally.  I think it's to do with a possible bug in mono, maybe soemthing to do with it being used in the HttpModule??  I had to hack at the code to hardcode some stuff just to get past that point.

2.  There is an issue with AutoFac that I can't overcome, getting an error about the binding.  not sure if it's do with the execution order or something.

None of the constructors found with 'Public binding flags' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters: Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func`1, IEnumerable`1, IRoutePublisher, IEnumerable`1, IModelBinderPublisher, ISweepGenerator)'.

Description: HTTP 500. Error processing request.

Stack Trace:

Autofac.Core.DependencyResolutionException: None of the constructors found with 'Public binding flags' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters:
Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func`1, IEnumerable`1, IRoutePublisher, IEnumerable`1, IModelBinderPublisher, ISweepGenerator)'.
  at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance (IComponentContext context, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Activate (IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.<Execute>b__6 () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare (Guid id, System.Func`1 creator) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Execute () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance (ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.ResolveComponent (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Registration.ExternalRegistrySource+<>c__DisplayClass8.<RegistrationsFor>b__3 (IComponentContext c, IEnumerable`1 p) [0x00000] in <filename unknown>:0 
  at Autofac.Builder.RegistrationBuilder+<>c__DisplayClass1`1[System.Object].<ForDelegate>b__0 (IComponentContext c, IEnumerable`1 p) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance (IComponentContext context, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Activate (IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Execute () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance (ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.ResolveComponent (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.Execute (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 

It's a shame... really did want to support the project, but I feel it's beyond me now. Sorry...
Jun 16, 2012 at 10:31 PM
On 06/16/2012 06:23 PM, MartinThwaites wrote:

From: MartinThwaites

I'm afraid I'm going to need to give up on this. I've spent too much time and I think it's going to need way too many changes to make it work.

Just a summary of what I know:

1. There is some kind of issue with Mono and HostingEnvironment.MapPath(), it's returning null occassionally. I think it's to do with a possible bug in mono, maybe soemthing to do with it being used in the HttpModule?? I had to hack at the code to hardcode some stuff just to get past that point.

2. There is an issue with AutoFac that I can't overcome, getting an error about the binding. not sure if it's do with the execution order or something.

None of the constructors found with 'Public binding flags' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters: Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func`1, IEnumerable`1, IRoutePublisher, IEnumerable`1, IModelBinderPublisher, ISweepGenerator)'.

Description: HTTP 500. Error processing request.

Stack Trace:

Autofac.Core.DependencyResolutionException: None of the constructors found with 'Public binding flags' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters:
Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func`1, IEnumerable`1, IRoutePublisher, IEnumerable`1, IModelBinderPublisher, ISweepGenerator)'.
  at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance (IComponentContext context, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Activate (IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.<Execute>b__6 () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare (Guid id, System.Func`1 creator) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Execute () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance (ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.ResolveComponent (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Registration.ExternalRegistrySource+<>c__DisplayClass8.<RegistrationsFor>b__3 (IComponentContext c, IEnumerable`1 p) [0x00000] in <filename unknown>:0 
  at Autofac.Builder.RegistrationBuilder+<>c__DisplayClass1`1[System.Object].<ForDelegate>b__0 (IComponentContext c, IEnumerable`1 p) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance (IComponentContext context, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Activate (IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Execute () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance (ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.ResolveComponent (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.Execute (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 

It's a shame... really did want to support the project, but I feel it's beyond me now.  Sorry...

I was hoping to use orchard/mono in a few months (finally).
I got it to work (year+ ago), but experienced the
"After a few requests you might get npgsql (PostgreSQL ADO.NET provider) connection errors. Only restarting the application will cure it." issue.

What issue are you experiencing and working on resolving (above) ? Is the AutoFac issue really the primary block at this time?

-tl
Jun 16, 2012 at 10:39 PM

Yeah it's the AutoFac error I can't resolve.  This is something that getting outside of my current knowledge, and I don't have enough time to learn how the code is laid out and how AutoFac works.

I'm not sure if there were significant changes since you got it working.  What version did you use?

Jun 16, 2012 at 10:42 PM
i will have to check and get back to you. But then are you implying you haven't got it to work at all? I was assuming you tracked the autofac to an issue that
causes orchard to die after N number of request, but maybe you are implying it doesn't work at all for you?

-tl

On 06/16/2012 06:39 PM, MartinThwaites wrote:

From: MartinThwaites

Yeah it's the AutoFac error I can't resolve. This is something that getting outside of my current knowledge, and I don't have enough time to learn how the code is laid out and how AutoFac works.

I'm not sure if there were significant changes since you got it working. What version did you use?


Jun 16, 2012 at 10:47 PM

sorry, yes I can't even get a start page.

 

Jun 17, 2012 at 12:16 AM

Wow, no I had it working great for maybe 5-10 page views, then I had to restart it, and continue. I will try to post my configuration, as you may have been spinning wheels for nothing.
-tl

On Jun 16, 2012 6:47 PM, "MartinThwaites" <notifications@codeplex.com> wrote:

From: MartinThwaites

sorry, yes I can't even get a start page.

Read the full discussion online.

To add a post to this discussion, reply to this email (orchard@discussions.codeplex.com)

To start a new discussion for this project, email orchard@discussions.codeplex.com

You are receiving this email because you subscribed to this discussion on CodePlex. You can unsubscribe on CodePlex.com.

Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com

Apr 4, 2013 at 4:40 PM
Hello,

I am currently running Ubuntu 12.10 server x32. I tried to install Orchard along with mono. When i try to run the command :
MONO_IOMAP=all xsp4
I get these errors:
Handling exception type ConfigurationErrorsException
Message is No factory for host (/home/shto/sites/test/Orchard/Web.config line 13)
IsTerminating is set to True
System.Configuration.ConfigurationErrorsException: No factory for host (/home/shto/sites/test/Orchard/Web.config line 13)

Server stack trace: 
  at System.Configuration.ConfigInfo.ThrowException (System.String text, System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.SectionGroupInfo.ReadRemoveSection (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.SectionGroupInfo.ReadConfig (System.Configuration.Configuration cfg, System.String streamName, System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.SectionGroupInfo.ReadConfig (System.Configuration.Configuration cfg, System.String streamName, System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration.ReadConfigFile (System.Xml.XmlReader reader, System.String fileName) [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration.Load () [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration.Init (IConfigSystem system, System.String configPath, System.Configuration.Configuration parent) [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration..ctor (System.Configuration.InternalConfigurationSystem system, System.String locationSubPath) [0x00000] in <filename unknown>:0 
  at System.Configuration.InternalConfigurationFactory.Create (System.Type typeConfigHost, System.Object[] hostInitConfigurationParams) [0x00000] in <filename unknown>:0 
  at System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration (System.String path, System.String site, System.String locationSubPath, System.String server, System.String userName, System.String password, Boolean fweb) [0x00000] in <filename unknown>:0 

Exception rethrown at [0]: 

  at (wrapper xdomain-invoke) System.AppDomain:DoCallBack (System.CrossAppDomainDelegate)
  at (wrapper remoting-invoke-with-check) System.AppDomain:DoCallBack (System.CrossAppDomainDelegate)
  at System.Web.Hosting.ApplicationHost.CreateApplicationHost (System.Type hostType, System.String virtualDir, System.String physicalDir) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.VPathToHost.CreateHost (Mono.WebServer.ApplicationServer server, Mono.WebServer.WebSource webSource) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.XSP.Server.RealMain (System.String[] args, Boolean root, IApplicationHost ext_apphost, Boolean quiet) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.XSP.Server.Main (System.String[] args) [0x00000] in <filename unknown>:0 
Apr 4, 2013 at 9:24 PM
What version of Orchard are you trying to install? are you using the directions and links in this discussion thread?
I got it working as far as anyone could at the time (using Marek Habersack work), but as he and I reported,
it works, but only for a dozen or so page views.
This was also with the previous version of Orchard.
I am just about to embark on getting the latest Orchard 1.6 working on Linux, but in the time I can commit to it, it was going to be
perhaps even over the next 3+ months. This assumes I don't hit a major Mono particular issue.
If you are using some updated "get Orchard 1.6 to work on Linux patches (and procedure)" that I don't know about, do tell,
but if you are just going on info in this thread, I can't see you being successfully. It may be possible in newer version of mono,
the db connection errors may have been solved (if it was even a mono related thing), but it is likely in the code changes/enhancements/etc
in Orchard 1.6 that a small amount of work would have to be done at a minimum for it to work. Again, if you have any more info
that isn't from this thread regarding getting Orchard 1.6 to work (or even older, that doesn't have the db connect issue after a dozen
page views) do tell.
If you do not have any new info, then I may have an update in 6 weeks or so as to how I am making out, but I am using Orchard 1.6 now
on a Amazon XS Windows server instance and because it sometimes gets starved of resources down to 200mhz, it runs great 90% of the time, and its
basically useless the other 10%. The cost of a amazon linux vs windows instance is that windows is about 2.5x more expensive (for same resources)
and the cost jump to a "small" instance on azure or amazon is large, as you are going from a scrounging vm, to a dedicated, all be it small
resource vm. The cost of a S amazon instance running linux is IIRC 12$/mon? so in addition to some Orchard work I am doing (code wise, not
related to windows/linux ports), I was going to invest some time to get 1.6 running on Linux, knowing the VM savings for me over the next years,
running 1-2+ vms for CMS, would amount to 1k$+ saving over 2-3+ years, and thus multiple good reasons for me to get it working on Linux!
If some cloud provider had a ded. resource 600mhz and 700mb ram vm for ~12$/mon, running windows server, there wouldn't be the pressing
need, but in the research I did, you are looking at about 40$/mon min. for windows dedicated resource VMs, but with that you get 1.7GB ram,
and more resources then you need for a small orchard site. So I am sure I will not be the only one that would save coin by serving Orch up on
Linux.

-tl

shto1337 wrote:
Hello,

I am currently running Ubuntu 12.10 server x32. I tried to install Orchard along with mono. When i try to run the command :
MONO_IOMAP=all xsp4
I get these errors:
Handling exception type ConfigurationErrorsException
Message is No factory for host (/home/shto/sites/test/Orchard/Web.config line 13)
IsTerminating is set to True
System.Configuration.ConfigurationErrorsException: No factory for host (/home/shto/sites/test/Orchard/Web.config line 13)

Server stack trace: 
  at System.Configuration.ConfigInfo.ThrowException (System.String text, System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.SectionGroupInfo.ReadRemoveSection (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.SectionGroupInfo.ReadConfig (System.Configuration.Configuration cfg, System.String streamName, System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.SectionGroupInfo.ReadConfig (System.Configuration.Configuration cfg, System.String streamName, System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration.ReadConfigFile (System.Xml.XmlReader reader, System.String fileName) [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration.Load () [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration.Init (IConfigSystem system, System.String configPath, System.Configuration.Configuration parent) [0x00000] in <filename unknown>:0 
  at System.Configuration.Configuration..ctor (System.Configuration.InternalConfigurationSystem system, System.String locationSubPath) [0x00000] in <filename unknown>:0 
  at System.Configuration.InternalConfigurationFactory.Create (System.Type typeConfigHost, System.Object[] hostInitConfigurationParams) [0x00000] in <filename unknown>:0 
  at System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration (System.String path, System.String site, System.String locationSubPath, System.String server, System.String userName, System.String password, Boolean fweb) [0x00000] in <filename unknown>:0 

Exception rethrown at [0]: 

  at (wrapper xdomain-invoke) System.AppDomain:DoCallBack (System.CrossAppDomainDelegate)
  at (wrapper remoting-invoke-with-check) System.AppDomain:DoCallBack (System.CrossAppDomainDelegate)
  at System.Web.Hosting.ApplicationHost.CreateApplicationHost (System.Type hostType, System.String virtualDir, System.String physicalDir) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.VPathToHost.CreateHost (Mono.WebServer.ApplicationServer server, Mono.WebServer.WebSource webSource) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.XSP.Server.RealMain (System.String[] args, Boolean root, IApplicationHost ext_apphost, Boolean quiet) [0x00000] in <filename unknown>:0 
  at Mono.WebServer.XSP.Server.Main (System.String[] args) [0x00000] in <filename unknown>:0 
Apr 4, 2013 at 9:47 PM
Edited Apr 4, 2013 at 9:50 PM
Hello,

Wow, i didn't expected such a long reply so let me take it step by step.
What version of Orchard are you trying to install?
Are you using the directions and links in this discussion thread?
Partially. This thread is 1 year old. So is the tutorial and the youtube link. I found some other tutorials and when i have time i will follow them.

http://blog.erikd.org/2013/03/17/run-asp-dot-net-mvc4-on-ubuntu-12-dot-10/
http://www.youtube.com/watch?v=5Ag7qTRXSQA
I got it working as far as anyone could
Yeah well, making it work on windows with IIS/Webmatrix is easy. I need it on Linux and that's a big hassle if you check the above links
if you are just going on info in this thread, I can't see you being successfully
  • I just wanna make it work, that's why i came here :)
It may be possible in newer version of mono, the db connection errors may have been solved (if it was even a mono related thing)
-Hold on, you are telling me that the above errors may be caused by db connection( postgresql ) and not by mono/orchard?
then I may have an update in 6 weeks or so as to how I am making out, but I am using Orchard 1.6 now on a Amazon XS Windows server instance and because it sometimes gets starved of resources down to 200mhz, it runs great 90% of the time, and its basically useless the other 10%. And other price related stuff
  • I understand the problem, Are you paying for the hosting? If yes, why don't you just buy a domain name and configure a DNS server/apache/mysql, etc... and keep it at home? That's how i work and pay only the electricity bill + internet
I don't need it 100% uptime. My brother needs a testing/playground machine because he works with Orchard CMS daily on a Microsoft Server(2008 i think). So about 10 hours per day.
Apr 4, 2013 at 10:50 PM
Yes 2 years ago the problem may have been in db specific c#/.net code (mono or db providers). That's not to say that if it then got past the
db connect error after a dozen page views, that there may have been other issues.
Your link/docs are all mono/mvc4 setup environment. You should (if you haven't already) be sure your environment works in general
for mvc4, before attempting Orchard 1.6 specific deployment.

OT: my hosting, host at home? many reasons not to 1) security, 2) away from home and reboot needed, 3) cloud convenient snap shots, etc,
4) at home outgoing bandwidth is usually small i.e. 1-5 mbit/s., 4b) if I am doning something else on bw it would kill the reachability of the site
5) [in my case] electricity is very expensive.
xs and even some small vm's almost seem to be lost leaders at amazon and azure, so I find they are of decent value even when comparing against
serving from home.
any ways, if I run into your same error or get past it, i will post update here.
-tl
Apr 5, 2013 at 3:22 AM
Ok i got it to "Start" running orchard app. It now fails in establishing AppData dir. But there is a patch that may help in that,
but I didn't want to apply all patches at this point, as its Orchard 1.6 now, so I want to examine pristine, and add fixes as needed.

To get farther, apply diff

13,14c13,14
< <!-- mono <remove name="host" /> -->

< <!-- mono <remove name="pages" /> -->

  <remove name="host" />
  <remove name="pages" />
69c65

< <!-- <remove assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> mono needs -->

    <remove assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />


Error I get now is:

at System.IO.Path.Combine (System.String path1, System.String path2) [0x00000] in <filename unknown>:0
at Orchard.FileSystems.AppData.AppDataFolder.CombineToPhysicalPath (System.String[] paths) [0x00000] in <filename unknown>:0
at Orchard.FileSystems.AppData.AppDataFolder.CreateDirectory (System.String path) [0x00000] in <filename unknown>:0
at Orchard.FileSystems.Dependencies.DefaultDependenciesFolder.<LoadDescriptors>b__3 (Orchard.Caching.AcquireContext1 ctx) [0x00000] in <filename unknown>:0
at Orchard.Caching.Cache
2[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]].CreateEntry (System.String k, System.Func2 acquire) [0x00000] in <filename unknown>:0
at Orchard.Caching.Cache2[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]].AddEntry (System.String k, System.Func2 acquire) [0x00000] in <filename unknown>:0
at Orchard.Caching.Cache
2+<>c__DisplayClass2[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]].<Get>b__0 (System.String k) [0x00000] in <filename unknown>:0
at System.Collections.Concurrent.ConcurrentDictionary
2+<AddOrUpdate>c__AnonStorey38[System.String,Orchard.Caching.Cache2+CacheEntry[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]]].<>m__37 () [0x00000] in <filename unknown>:0
at (wrapper delegate-invoke) System.Func1<System.Collections.Generic.KeyValuePair2<string, Orchard.Caching.Cache2/CacheEntry<string, System.Collections.Generic.IList1<Orchard.FileSystems.Dependencies.DependencyDescriptor>>>>:invoke_TResult__this__ ()
at System.Collections.Concurrent.SplitOrderedList2[System.String,System.Collections.Generic.KeyValuePair2[System.String,Orchard.Caching.Cache2+CacheEntry[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]]]].ListInsert (System.Collections.Concurrent.Node newNode, System.Collections.Concurrent.Node startPoint, System.Collections.Concurrent.Node& current, System.Func1 dataCreator) [0x00000] in <filename unknown>:0
at System.Collections.Concurrent.SplitOrderedList
2[System.String,System.Collections.Generic.KeyValuePair2[System.String,Orchard.Caching.Cache2+CacheEntry[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]]]].InsertInternal (UInt32 key, System.String subKey, KeyValuePair2 data, System.Func1 dataCreator, System.Collections.Concurrent.Node& current) [0x00000] in <filename unknown>:0
at System.Collections.Concurrent.SplitOrderedList
2[System.String,System.Collections.Generic.KeyValuePair2[System.String,Orchard.Caching.Cache2+CacheEntry[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]]]].InsertOrUpdate (UInt32 key, System.String subKey, System.Func1 addGetter, System.Func2 updateGetter) [0x00000] in <filename unknown>:0
at System.Collections.Concurrent.ConcurrentDictionary
2[System.String,Orchard.Caching.Cache2+CacheEntry[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]]].AddOrUpdate (System.String key, System.Func2 addValueFactory, System.Func3 updateValueFactory) [0x00000] in <filename unknown>:0
at Orchard.Caching.Cache2[System.String,System.Collections.Generic.IList1[Orchard.FileSystems.Dependencies.DependencyDescriptor]].Get (System.String key, System.Func2 acquire) [0x00000] in <filename unknown>:0
at Orchard.Caching.DefaultCacheManager.Get[String,IList
1] (System.String key, System.Func2 acquire) [0x00000] in <filename unknown>:0
at Orchard.FileSystems.Dependencies.DefaultDependenciesFolder.LoadDescriptors () [0x00000] in <filename unknown>:0
at Orchard.Environment.Extensions.ExtensionLoaderCoordinator.CreateLoadingContext () [0x00000] in <filename unknown>:0
at Orchard.Environment.Extensions.ExtensionLoaderCoordinator.SetupExtensions () [0x00000] in <filename unknown>:0
at Orchard.Environment.DefaultOrchardHost.SetupExtensions () [0x00000] in <filename unknown>:0
at Orchard.Environment.DefaultOrchardHost.BuildCurrent () [0x00000] in <filename unknown>:0
at Orchard.Environment.DefaultOrchardHost.Orchard.Environment.IOrchardHost.Initialize () [0x00000] in <filename unknown>:0
at Orchard.Web.MvcApplication.HostInitialization (System.Web.HttpApplication application) [0x00000] in <filename unknown>:0
at Orchard.WarmupStarter.Starter
1+<>c__DisplayClass3[Orchard.Environment.IOrchardHost].<LaunchStartupThread>b__2 (System.Object state) [0x00000] in <filename unknown>:0



shto1337 wrote:
Hello,

Wow, i didn't expected such a long reply so let me take it step by step.
What version of Orchard are you trying to install?
Are you using the directions and links in this discussion thread?
Partially. This thread is 1 year old. So is the tutorial and the youtube link. I found some other tutorials and when i have time i will follow them.

http://blog.erikd.org/2013/03/17/run-asp-dot-net-mvc4-on-ubuntu-12-dot-10/
http://www.youtube.com/watch?v=5Ag7qTRXSQA
I got it working as far as anyone could
Yeah well, making it work on windows with IIS/Webmatrix is easy. I need it on Linux and that's a big hassle if you check the above links
if you are just going on info in this thread, I can't see you being successfully
  • I just wanna make it work, that's why i came here :)
It may be possible in newer version of mono, the db connection errors may have been solved (if it was even a mono related thing)
-Hold on, you are telling me that the above errors may be caused by db connection( postgresql ) and not by mono/orchard?
then I may have an update in 6 weeks or so as to how I am making out, but I am using Orchard 1.6 now on a Amazon XS Windows server instance and because it sometimes gets starved of resources down to 200mhz, it runs great 90% of the time, and its basically useless the other 10%. And other price related stuff
  • I understand the problem, Are you paying for the hosting? If yes, why don't you just buy a domain name and configure a DNS server/apache/mysql, etc... and keep it at home? That's how i work and pay only the electricity bill + internet
I don't need it 100% uptime. My brother needs a testing/playground machine because he works with Orchard CMS daily on a Microsoft Server(2008 i think). So about 10 hours per day.
Developer
Apr 5, 2013 at 9:49 PM
This is great you got it kicked up. Once you resolve the bugs will you submit a pull request?
Apr 5, 2013 at 10:03 PM
Jetski5822 wrote:
This is great you got it kicked up. Once you resolve the bugs will you submit a pull request?
A fork for sure. The fixes could be kludges in orchard and really need to be in Mono or other areas, so
a pull really depends on the fix.
-tl
May 10, 2013 at 5:24 PM
I have reached the same step with tleslie
May 10, 2013 at 6:28 PM
kerryjiang wrote:
I have reached the same step with tleslie
I am still at it, moved beyond the posted issues and encountered new stuff. I hope within the month I will have it up and running.
I have hooked a Cecil AOP arrangement up to the orchard modules (almost every method call), and am profiling the runs of Windows and Linux against each other,
this investment will prove useful to flush out future issues if they arise.
-tl
Coordinator
May 28, 2013 at 1:58 AM
Sounds like great progress. Please keep us posted.
Jun 3, 2013 at 11:50 AM
You can fix this error by hacky way.

Sometimes ... dont know why .. HttpContext.Current is null and HostingEnvironment.MapPath("~App_Data") returnrs null

Try this one
    public class AppDataFolderRoot : IAppDataFolderRoot {
        public string RootPath {
            get { return "~/App_Data"; }
        }

        public string RootFolder {
            get { return HostingEnvironment.ApplicationPhysicalPath + "App_Data"; } // <--- this is hacky way
        }
    }
It leads me currenty to such error
Autofac.Core.DependencyResolutionException
None of the constructors found with 'Public binding flags' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters:
Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func`1, IEnumerable`1, IEnumerable`1, IRoutePublisher, IEnumerable`1, IModelBinderPublisher, ISweepGenerator)'.

Description: HTTP 500.Error processing request.
Details: Non-web exception. Exception origin (name of application or object): Autofac.
Exception stack trace:
  at Autofac.Core.Activators.Reflection.ReflectionActivator.ActivateInstance (IComponentContext context, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Activate (IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.<Execute>b__0 () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Lifetime.LifetimeScope.GetOrCreateAndShare (Guid id, System.Func`1 creator) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Execute () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance (ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.ResolveComponent (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Registration.ExternalRegistrySource+<>c__DisplayClass8.<RegistrationsFor>b__3 (IComponentContext c, IEnumerable`1 p) [0x00000] in <filename unknown>:0 
  at Autofac.Builder.RegistrationBuilder+<>c__DisplayClass1`1[System.Object].<ForDelegate>b__0 (IComponentContext c, IEnumerable`1 p) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Activators.Delegate.DelegateActivator.ActivateInstance (IComponentContext context, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Activate (IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.InstanceLookup.Execute () [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance (ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.ResolveComponent (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
  at Autofac.Core.Resolving.ResolveOperation.Execute (IComponentRegistration registration, IEnumerable`1 parameters) [0x00000] in <filename unknown>:0 
Jul 3, 2013 at 7:16 PM
I added postgresql support in newest orchard :-) (Of course if you wish)
https://orchard.codeplex.com/SourceControl/network/forks/beny/postgresql/contribution/5009
Coordinator
Jul 3, 2013 at 7:30 PM
Neat!
Developer
Jul 3, 2013 at 9:06 PM
Very cool, so does this now mean Orchard can run on Mono?
Jul 3, 2013 at 10:56 PM
Postgres didn't have anything to do with why I couldn't get the latest to work. I will have to get back to it soon.
If for some reason the "postgres" work also had "other work" to get Orch working (or farther along), do tell.
Where I left it last was it couldn't find the "start up" module (autofac dynamic load issue I believe) which was part of or immediately after the issue posted above by rodpl on Jun 3. (as I remember getting that too, and either digging deeper, or getting a bit farther). Maybe I will hit at this stuff again this weekend, at least try to get over the next hurdle. Also, with postges in the previous orchard ver. the one grendello the topics creator got working in postgres, don't forget, it worked, for a dozen queries in postges then barfed.

-tl
Jul 28, 2013 at 9:35 PM
I devoted a day this weekend to try and get Orchard running on mono/linux .... closer!
I have found what I believe is a bug in a mono System.Web.Hosting assembly.
I will put a bug report and suggested fix in this week and see how that goes. In the mean time, I just rebuild my mono libs.

The main issue was that in
In AvailableExtensionsInFolder, in ExtensionHarvester.cs
the
var subfolderPaths = _webSiteFolder.ListDirectories(path);
was never getting populated due to the mono bug.
Now it is getting populated, and the App_Data is getting built, deps. added, and files
dependencies.compiled.xml
dependencies.xml
being built (and look to be correct, save for below removal).

Now they were being built with the Microsoft.Web.Infrastructure.dll dep. in many.
So I had to remove the Microsoft.Web.Infrastructure.dll from the different Modules, etc using it.
Ran again, and it was happy.
Then on first run, I now get a:

System.NullReferenceException
Object reference not set to an instance of an object

Description: HTTP 500.Error processing request.

Details: Non-web exception. Exception origin (name of application or object): System.Web.
Exception stack trace:
at System.Web.Profile.ProfileModule.OnEnter (System.Object o, System.EventArgs eventArgs) [0x00010] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web.Profile/ProfileModule.cs:96 at System.Web.HttpApplication+<RunHooks>c__Iterator2.MoveNext () [0x001ba] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web/HttpApplication.cs:1050 at System.Web.HttpApplication+<Pipeline>c__Iterator3.MoveNext () [0x00a46] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web/HttpApplication.cs:1311 at System.Web.HttpApplication.Tick () [0x00000] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web/HttpApplication.cs:932

But if I reload the page, I get better news:

System.InvalidOperationException
The view 'Index' or its master was not found or no view engine supports the searched locations. The following locations were searched: ~/Themes/SafeMode/Views/Orchard.Setup/Setup/Index.ascx ~/Themes/SafeMode/Views/Orchard.Setup/Setup/Index.aspx ~/Themes/SafeMode/Views/Index.ascx ~/Themes/SafeMode/Views/Index.aspx ~/Themes/SafeMode/Views/Orchard.Setup/Setup/Index.cshtml ~/Themes/SafeMode/Views/Index.cshtml ~/Core/Orchard.Setup/Views/Setup/Index.ascx ~/Core/Orchard.Setup/Views/Setup/Index.aspx ~/Modules/Orchard.Setup/Views/Setup/Index.ascx ~/Modules/Orchard.Setup/Views/Setup/Index.aspx ~/Themes/Orchard.Setup/Views/Setup/Index.ascx ~/Themes/Orchard.Setup/Views/Setup/Index.aspx ~/Modules/Orchard.Setup/Views/Index.ascx ~/Modules/Orchard.Setup/Views/Index.aspx ~/Core/Shapes/Views/Index.ascx ~/Core/Shapes/Views/Index.aspx ~/Modules/Orchard.jQuery/Views/Index.ascx ~/Modules/Orchard.jQuery/Views/Index.aspx ~/Core/Orchard.Setup/Views/Setup/Index.cshtml ~/Modules/Orchard.Setup/Views/Setup/Index.cshtml ~/Themes/Orchard.Setup/Views/Setup/Index.cshtml ~/Modules/Orchard.Setup/Views/Index.cshtml ~/Core/Shapes/Views/Index.cshtml ~/Modules/Orchard.jQuery/Views/Index.cshtml

Description: HTTP 500.Error processing request.

Details: Non-web exception. Exception origin (name of application or object): System.Web.Mvc.
Exception stack trace:
at System.Web.Mvc.ViewResult.FindView (System.Web.Mvc.ControllerContext context) [0x00000] in <filename unknown>:0 at System.Web.Mvc.ViewResultBase.ExecuteResult (System.Web.Mvc.ControllerContext context) [0x00000] in <filename unknown>:0 at System.Web.Mvc.ControllerActionInvoker.InvokeActionResult (System.Web.Mvc.ControllerContext controllerContext, System.Web.Mvc.ActionResult actionResult) [0x00000] in <filename unknown>:0 at System.Web.Mvc.ControllerActionInvoker+<>c__DisplayClass1a.<InvokeActionResultWithFilters>b__17 () [0x00000] in <filename unknown>:0 at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter (IResultFilter filter, System.Web.Mvc.ResultExecutingContext preContext, System.Func`1 continuation) [0x00000] in <filename unknown>:0

The google for this last issue - seems popular issue, hopefully not going to be hard to figure out.

One concern is, is the :
Details: Non-web exception. Exception origin (name of application or object): System.Web.
Exception stack trace:
at System.Web.Profile.ProfileModule.OnEnter (System.Object o, System.EventArgs eventArgs) [0x00010] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web.Profile/ProfileModule.cs:96 at System.Web.HttpApplication+<RunHooks>c__Iterator2.MoveNext () [0x001ba] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web/HttpApplication.cs:1050 at System.Web.HttpApplication+<Pipeline>c__Iterator3.MoveNext () [0x00a46] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web/HttpApplication.cs:1311 at System.Web.HttpApplication.Tick () [0x00000] in /usr2/monobuild/mono/mcs/class/System.Web/System.Web/HttpApplication.cs:932

even though it goes away on a refresh of page, significant to the next issue?

Significant progress .... be at it again next weekend, maybe get it to work to some degree then.

-tl
Developer
Jul 28, 2013 at 10:12 PM
Great stuff. Keep it up!
Jul 28, 2013 at 11:15 PM
@tliesly
Could you share with patch for mono.

I'm trying to run Orchard for mono. Here are my efforts in Orchard code -> https://orchard.codeplex.com/SourceControl/network/forks/rodpl/orchardmono?branch=default-mono-dev
Jul 31, 2013 at 5:40 AM
S
ure. If you are working on it this weekend, we need to coordinate, no use working on the same stuff.
-tl


Jul 31, 2013 at 8:05 AM
It would be Great but this weekend I'm still on vacations but I will be available since monday. What is your time zone? my is GMt + 1

On Skype: danieldabrowskihogart
Nov 3, 2013 at 8:44 PM
Any further progress been made on this? I've worked a little with Orcahrd 1.7 and have reached about the same point.
Nov 4, 2013 at 3:55 AM
Thanks for reminding me. I have been none stop busy for ages. I get my best results in my 16 hr straight blinders on programming sessions, and have not had a chance to do any of those. Going to set a calendar event now, and try to do one of those marathon sessions in next 3-4 weeks. Thanks for the ping, as I really felt I was close. Worst case scenario, I finally have a lot of down time when Santa is in town.
-tl
Nov 4, 2013 at 9:15 PM
I understand how that is :-). What version of mono are you working with? I'm going to probably work with 3.2 in the hopes of the newest version having the best chance of success.



Nov 4, 2013 at 9:32 PM
3.0.7
I got intrigued last night, and worked on it a bit. It just appears now, with other stated changes, that it doesn't have a razor view engine kicking it. The errors i get are exactly like some other peoples in other products run
on mono asp.net/mvc/razor, but Orchard has its own view engine set up, and that appears to be where the issue is.
I am guessing there may be another pathing issue, and the view engine simply isn't present (not discovered in set-up).
I may actually get back to it this week or next.
-tl


Nov 4, 2013 at 10:33 PM
I ran into an issue (maybe same one) and this answer on stackoverflow helped http://stackoverflow.com/questions/4239645/does-the-razor-view-engine-work-for-mono . Specifically, I had to take the steps outlined in the "Note for mono 3.0+" section at the bottom of the first answer. Hopefully that will help you as well.


Nov 6, 2013 at 1:24 AM
Well I'm pretty well stuck at this error at the moment:
System.Web.Compilation.CompilationException

CS8026: Invalid sdk version name

   Description: Error compiling a resource required to service this request. Review your source file and modify it to fix
   this error.

   Details: CS8026: Invalid sdk version name

   Error origin: Compiler

   Error source file: ~/Global.asax
   Exception stack trace:
   at System.Web.Compilation.AssemblyBuilder.BuildAssembly (System.Web.VirtualPath virtualPath,
   System.CodeDom.Compiler.CompilerParameters options) [0x00000] in <filename unknown>:0 at
   System.Web.Compilation.AssemblyBuilder.BuildAssembly (System.Web.VirtualPath virtualPath) [0x00000] in <filename
   unknown>:0 at System.Web.Compilation.BuildManager.GenerateAssembly (System.Web.Compilation.AssemblyBuilder abuilder,
   System.Web.Compilation.BuildProviderGroup group, System.Web.VirtualPath vp, Boolean debug) [0x00000] in <filename
   unknown>:0 at System.Web.Compilation.BuildManager.BuildInner (System.Web.VirtualPath vp, Boolean debug) [0x00000] in
   <filename unknown>:0
   Version Information: 3.2.3 (tarball Tue Nov 5 03:40:33 MSK 2013); ASP.NET Version: 4.0.30319.17020
   Powered by Mono
Nov 17, 2013 at 9:27 AM
I got a orchard razor themed page to show (in mono/linux) !!!! So I think I am very close now.
The next big step will be setting up the DB and hope the issue that stopped Marek Habersack attempts years ago from working does not appear, i.e. the

at Npgsql.NpgsqlConnectorPool.RequestPooledConnector (Npgsql.NpgsqlConnection Connection) [0x00000] in <filename unknown>:0 at Npgsql.NpgsqlConnectorPool.RequestConnector (Npgsql.NpgsqlConnection Connection) [0x00000] in <filename unknown>:0 at Npgsql.NpgsqlConnection.Open () [0x00000] in <filename unknown>:0 at NHibernate.Connection.DriverConnectionProvider.GetConnection () [0x00000] in <filename unknown>:0
Version Information: <tt>2.11 (master/d0bae87 Tue Mar 8 13:17:38 EST 2011)</tt>; ASP.NET Version:

issue.

Since I will attempt to use Mysql i would hope something similar will not occur.

My just be a week away now! Keep your fingers crossed. I hope the hard fixes are behind me.

-tl
Coordinator
Nov 17, 2013 at 11:49 PM
Great news!
Nov 28, 2013 at 6:12 AM
Just got Orchard working on MONO/LINUX!!!!!!!!!!!!!!!!!!!!!!!!
Ok, not 100% but, i got setup to setup the mysql, I setup a blog, changed my password, etc,etc.
Definitely some issues remain, as it doesn't go to the front page by default, and some other hopefully small issues.
For the Orchard Gods ... one thing i had to do to get it to work to bypass a NHibernate "Feature not supported" error, was to
        public override object[] GetCustomAttributes(Type attributeType, bool inherit) {

if LINUX

            var x =  new object[0];
            return x;

else

            return _dynamicMethod.GetCustomAttributes(attributeType, inherit);

endif

        }
did this in AbstractDataServicesProvider.cs

Taking CustomAttributes out the picture, how much on Orchard is going to suffer?
I guess in a bit I will debug on Windows to see how much it's used, but I am hoping its not a major thing, or if it is, I can somehow do a work around.

I have made a dozen or so changes, but this one above, its just a outright removal of functionality, that I expect will cause issue.
Another is, I had to comment out
the
// _hostEnvironment.RestartAppDomain();
but I notice in basic use, this doesn't cause issue in running Orchard on MS environment, and as of yet, doesn't seem to have caused issue on Mono,
but, not sure why the Restart? and with out it, what will be the issues?

Probably put up a version to run on Mono/Linux/Mysql early next week, even if i don't iron out every little detail that I see now, as I am sure others want to
play with something that "mostly" works. Of course there could be all kinds of places, in modules, buried in admin, that may cause exceptions, but hopefully the hard part is over, unless the CustomAttributes is going to haunt heavily.

-tl
Nov 28, 2013 at 7:08 AM
Wow.. Good job!!
Nov 28, 2013 at 7:14 AM
To be sure this time around we don't have the same situation Mark had 2.5 years ago, that it worked but DB calls failed after 5-20 page loads,
I have put a loop on a curl script to pull pages non-stop 500,000 and counting, but I realized when monitoring mysql, it wasn't generating a mysql call (cache in play),
so I have altered script to grab from dynamic page that does call db, and have made 100,000+ calls and still fine, so thankfully what plagued Mark (he was using Postgres), isn't coming back to haunt (now on Mysql). Couldn't load a theme or module ... yet :( but things are looking more positive then negative as I climb all over it.
-tl
Nov 28, 2013 at 7:54 AM
Could you share somehow what you did already ? Git fork would be the best :)
Nov 28, 2013 at 8:05 AM
rodpl wrote:
Could you share somehow what you did already ? Git fork would be the best :)
Only really use Plastic SCM. Can I git fork into the Orchard codeplex?
I will look to (in few days) put up a diff set (for code so future 1.7.+ can be patched, hopefully), script for converting config's to mono/linux flavour,
and a version of orchard 1.7.x (compiled) with ability to run on unpatched mono (i hope), as now i run it on a patched mono.
and put it up to the codeplex (fork) once i read about Mercurial SCM (unless easier way).

Should all be done by next Tuesday or so. After 2.5 years .... it just another few days :)

-tl
Nov 28, 2013 at 8:40 AM
tleslie wrote:
rodpl wrote:
Could you share somehow what you did already ? Git fork would be the best :)
Only really use Plastic SCM. Can I git fork into the Orchard codeplex?
I will look to (in few days) put up a diff set (for code so future 1.7.+ can be patched, hopefully), script for converting config's to mono/linux flavour,
and a version of orchard 1.7.x (compiled) with ability to run on unpatched mono (i hope), as now i run it on a patched mono.
and put it up to the codeplex (fork) once i read about Mercurial SCM (unless easier way).

Should all be done by next Tuesday or so. After 2.5 years .... it just another few days :)

-tl
What did you patch exactly at mono? And was it specially done for Orchard or ..?
Nov 28, 2013 at 5:49 PM
The only change I made to mono was in / mcs / class / System.Web / System.Web.Hosting / HostingEnvironment.cs
It is just a hack to get Orchard to work, but because it only kicks in if null return, and, I guess, Mono is not working as expected in this regard, as
MS does return a path (when Mono returns null), that this change, and more are necessary to match MS functionality. For now my addition does the
trick for Orchard, but I didn't take it any farther, in that if the virtualPath was something more complicated .... I am just overriding in the specific case that
the mono imp. resolved to null and the vP started with "~/". In my mirroring debug of the Mono vs. MS use, this is all that was required for Orchard to be happy.
Now having said this, I made another change more recently with respect to HttpContext.Current use in Orchard, that perhaps makes this change unnecessary, I will
have to check on that, it to was an issue where HttpContext.Current was expect to have a value and it didn't. This was a change I made early on, and I should now
revisit it use.
            public static string MapPath (string virtualPath)
            {
                    if (virtualPath == null || virtualPath == "")
                            throw new ArgumentNullException ("virtualPath");


                    HttpContext context = HttpContext.Current;
                    HttpRequest req = context == null ? null : context.Request;

                    if (req == null) // ADDED for Orchard
                      {
                         var pp =  HostingEnvironment.ApplicationPhysicalPath;
                         String vp=virtualPath;
                         if (vp.IndexOf("~/") == 0) {
                            vp = pp + virtualPath.Substring(2);
                          }
                       // TODO: if not "~/" ???? then what?
                        return vp;
                     } // END added for Orchard

                    else
                      return req.MapPath (virtualPath);

            }
Dec 9, 2013 at 10:51 PM
What you have all been waiting for! It works, its LIVE!

http://orchard-linux.cloudapp.net/ (running on a 1ghz, 700Mb Ram, shared Azure Linux Ubuntu 12.04LTS vm instance)
I may have site down from time to time.

will put out patches and howto as soon as I can.

-ted leslie
Coordinator
Dec 10, 2013 at 1:04 AM
Congratulations and thanks for the hard work you put into this!
Dec 11, 2013 at 4:27 PM
I have set up https://github.com/zamphion/orchard-mono
for the mono specific files (not there yet but soon) for Orchard on Mono/Linux. The link I gave above is temporary, and that site will go off line in the weeks to come.
Orchard is running well now on the Azure Linux VM instance. On first deploy (and run via xsp4), the memory on the instance was being eaten up quick, so this was very worrying. I moved to apache2 and all is fine, after 1 day of hammering on it, the memory is very well behaved. A odd issue however remains, I can login with Chrome/FF but not IE. Can browse the site fine with all browser, just can't login with IE. It looks to login, then bounces back to front page. Cleared cookies, used IE on a different PC, no dice. So over the next 1-2 days i will be putting up the patches to build on mono/linux and mono patch, as well put the orchard patches (i have on the site i posted above) on to the github. I am looking to create a download zip that one will just unzip and run a command, and walk away, and 10-20 min. later, will be a fully built orchard environment (coming from compiled source, mono and orchard, on the server). Because a Nuget/Mono incompat., to install other modules into Orchard, this will have to be the way it works, until I can figure out Nuget issues (if that's even doable in the near term). For Themes, because there is a relative finite/small amount of them (90 or so), and for those that work well on 1.7+, and are not "rusty", the remaining useful themes could be pushed to the github, and the themes can be "installed" by pushing them into the .../Themes directory, build (and apply pre/post build patches that are common to all Orchard csproj files), then restart Orchard. I have already tried out some themes, and installed some modules, so I know it works. I prefer to look at a patch solution to building a mono/linux Orchard, then just a Fork on codeplex, because then the patches and scripts can even (hopefully, or with little mod) build upcoming Orchard releases as well.
At some point up the road, once we see how Mono works with the patches/issue to the Mono project code, and to look at pushing my Orchard "linux patching" code into the master, and then have a pre/post build script to take the MS Orchard environment install and have it work on Mono/Linux. However it also may be the case that if a Orchard release isn't tested on Linux (before release as a procedure), then this wouldn't work, and Monoize of Orchard would always have to stay as a side process to the MS-OS release, as it will be now. Until (if) mono/linux users of Orchard are numerous enough, it may not make sense to the releases be Mono compliant at release.

https://github.com/zamphion/orchard-mono

Until the mono-orchard experience is a solid Beta, I will keep the details/bugs/comments etc on the https://github.com/zamphion/orchard-mono and after others have put up sites (and its positive feedback) then mono-orchard transitions from beta to release status, then at that time the Orchard Project management can decide how tight the integration can be in the future.

-tl
Dec 14, 2013 at 2:07 PM
On the issue of not being able to login with IE... are you using IE10 or above???

If so, it could the User Agent sniffing issue that plagues the ASP.NET runtime on windows... basically, the runtime thinks that you're using IE1 therefore says that you obviously don't support cookies, and ignores them...

You can test if this is the issue by switching to compatibility mode in the browser as it reverts to the old IE7 user-agent.
Dec 14, 2013 at 2:38 PM
MartinThwaites wrote:
On the issue of not being able to login with IE... are you using IE10 or above???

If so, it could the User Agent sniffing issue that plagues the ASP.NET runtime on windows... basically, the runtime thinks that you're using IE1 therefore says that you obviously don't support cookies, and ignores them...

You can test if this is the issue by switching to compatibility mode in the browser as it reverts to the old IE7 user-agent.
I was getting excited! tried it, tried it in all compat. modes in dev. tools select of IE10, , ie7, 8, 9, 5 even, nothing :(
If i put in the wrong password, it lets me know, if its the right one, it just flips me to front page, and I am not logged in.
Thanks for the suggestion. I don't think it will be hard to figure out, I just have not spent any time on it yet, I am building an new install
and documenting the process and also monitoring memory and other mono run-time issues (errors I see in the logs).

-tl
Dec 19, 2013 at 3:39 AM
tleslie wrote:
MartinThwaites wrote:
On the issue of not being able to login with IE... are you using IE10 or above???

If so, it could the User Agent sniffing issue that plagues the ASP.NET runtime on windows... basically, the runtime thinks that you're using IE1 therefore says that you obviously don't support cookies, and ignores them...

You can test if this is the issue by switching to compatibility mode in the browser as it reverts to the old IE7 user-agent.
I was getting excited! tried it, tried it in all compat. modes in dev. tools select of IE10, , ie7, 8, 9, 5 even, nothing :(
If i put in the wrong password, it lets me know, if its the right one, it just flips me to front page, and I am not logged in.
Thanks for the suggestion. I don't think it will be hard to figure out, I just have not spent any time on it yet, I am building an new install
and documenting the process and also monitoring memory and other mono run-time issues (errors I see in the logs).

-tl
solved by having
domain="orchard-linux.cloudapp.net"
in the web.config forms i.e.:
   <forms name="orchardlinux" domain="orchard-linux.cloudapp.net"  loginUrl="~/Users/Account/AccessDenied" timeout="2880" />
http://stackoverflow.com/questions/4185981/forms-authentication-fails-for-ie-only-in-iis-7-5-classic-mode
Dec 24, 2013 at 4:43 AM
This is great Tleslie, how you do that? I wan't it to run on my LAMP server as my frontend web. There something i wan't to do with orchard. :)
Dec 24, 2013 at 4:50 AM
ikoardian wrote:
This is great Tleslie, how you do that? I wan't it to run on my LAMP server as my frontend web. There something i wan't to do with orchard. :)
Stay tune here and on
https://github.com/zamphion/orchard-mono
over the next 7-8 days. I should have all the details up by then.

-tl
Dec 24, 2013 at 5:31 AM
tleslie wrote:
ikoardian wrote:
This is great Tleslie, how you do that? I wan't it to run on my LAMP server as my frontend web. There something i wan't to do with orchard. :)
Stay tune here and on
https://github.com/zamphion/orchard-mono
over the next 7-8 days. I should have all the details up by then.

-tl
Cool Tleslie. Nice work !
Jan 4 at 4:46 AM
Edited Jan 4 at 4:46 AM
Hi Tleslie,

I still can't set up orchard on my server, can you help me? Can I conntact you with email?
Jan 4 at 5:04 AM
ikoardian wrote:
Hi Tleslie,

I still can't set up orchard on my server, can you help me? Can I conntact you with email?
https://github.com/zamphion/orchard-mono

just put your issue to the site above, bugs, etc.
MS killed my azure account, it didn't transition from trial to pay, but they restored now, so I will be back to it.
I believe all my code changes are up on the site, http://orchard-linux.cloudapp.net/
but i think there are just a few custom edits to Web.config files that i still have to put up, and that might be what your issue is.
As well I haven't put up my apache2 setup.
You can email me direct via the codeplex contact link : https://www.codeplex.com/site/users/view/tleslie
or contact me in github, but ultimately its better to communicate on the bug forum on the
https://github.com/zamphion/orchard-mono
site so other can learn as well.
-tl
Jan 5 at 1:40 AM
Edited Jan 5 at 1:41 AM
Ted, this is how to I set up mono-orchard Deb/Ubuntu LAMP 12.04 x32. And i think the prob on apache configuration.

Install Mono
sudo apt-get install mono-runtime
sudo apt-get install mono-gmcs 
Install mod_mono
sudo apt-get install libapache2-mod-mono
sudo apt-get install mono-apache-server2 
Enable mod_mono autoconfig
sudo a2enmod mod_mono_auto 
Generate with MONO configuration Web

http://go-mono.com/config-mod-mono/


Apache Orchard-Mono Configuration
<VirtualHost *:80>
        ServerName mydomain.org
        ServerAlias www.mydomain.org mydomain.org
        ServerAlias mydomain.org
        ServerAdmin support@mydomain.org
        DocumentRoot /var/orchard/src/Orchard.Web

    HostnameLookups Off
    UseCanonicalName Off

  Alias /orchard "/var/orchard/src"
  MonoServerPath orchard "/usr/bin/mod-mono-server4"
  MonoDebug orchard true
  MonoSetEnv orchard MONO_IOMAP=all

  MonoApplications orchard "/orchard:/var/orchard/src"
  <Location "/orchard">
    Allow from all
    Order allow,deny
    MonoSetServerAlias orchard
    SetHandler mono
  </Location>

</VirtualHost>
END APACHE ORCHARD - MONO CONFIG
Jan 5 at 3:48 AM
Edited Jan 5 at 3:49 AM
I put my entire /etc/apache2 dir up on github, it will give you everything you need.
It took some time to figure this out, so you may find key pieces in a number of files, you should
diff my files against a virgin apache2 setup (well this was on ubuntu server).
You should use all my new config lines, then later if you feel some are not needed, then take out.
Also, of course, you have to put in your pathing, and FQDN in there.
-tl
Jan 5 at 3:58 AM
Also note i have all files in my /var/orchard owned by www-data. I have not concerned myself with full security setup of orchard yet,
but having ownership by www-data is generally "good".
Jan 7 at 5:56 PM
Ok Ted,

I've reorganized the Apache configuration and edit mod_mono.conf, and I think this is a step that is right before do the patch on the application, because I get a runtime error in web config.

Let's see..
$ sudo chown www-data:www-data /var/orchard

On ( /var/orchard/src ) I make and extract file patch on ( MonoizeOrchard/Orchard.Mono.Patches/ ) directory.
When i do first patch command: patch -p0 < MonoizeOrchard/Orchard.Mono.Patches/ContentItemAlteration.cs.patch
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- Orchard/ContentManagement/Records/ContentItemAlteration.cs.orig    2013-11-12 19:47:48.000000000 +0000
|+++ Orchard/ContentManagement/Records/ContentItemAlteration.cs 2013-12-09 19:35:48.618858500 +0000
--------------------------
File to patch:
What should i fill in File to patch? Do: Orchard/ContentManagement/Records/ContentItemAlteration.cs ?
Do I need to run scripts on your github or just prior to patch it?
Jan 7 at 6:25 PM
If all the patches give you that error (try a few), you are running it from the wrong path/dir.
I noted the path you need to run it from in one of the sites, my mono/orchard site or github.
Also one of my patches assumes (for now) the install has to be in /var/orchard/... but it seems you are ok in that regard.
I think i see the issue, my path to Orchard.Web is

/var/orchard/src/Orchard.Web


and to the patch files is

/var/orchard/src/MonoizeOrchard/Orchard.Mono.Patches

i think your issue is you don't have the MonoizeOrchard under /src/ ?, which isn't wrong, if you configured differently, just that my stuff all assumes this exact path setup.

or run this

[azureuser@orchard-linux:/var/orchard/src$] ls Orchard/ContentManagement/Records/ContentItemAlteration.cs
<result in shell is:> Orchard/ContentManagement/Records/ContentItemAlteration.cs


below i did a 2nd level find, yours need to match ( i grep-v out stuff that is not key), there is a few of my junk files below, but the structure below - you have to match in the directory layout in all the files that matter , basically you should run the command and get 99% the same results with the only difference being my scratch files.

the error you get just seems to imply you don't have the pieces in the right paths.


azureuser@orchard-linux:/var/orchard/src$ find -maxdepth 2 -print |grep -v "\.cs"|grep -v "Orchard.Tests"| grep -v "GIT"|grep -v "Azure"|grep -v "test"
.
./MonoizeOrchard
./MonoizeOrchard/README.AfterBuild
./MonoizeOrchard/runMonoPatches.sh
./MonoizeOrchard/README.patches
./MonoizeOrchard/monoize_scripts
./MonoizeOrchard/runOrchardPatches.sh
./MonoizeOrchard/README.downloadfiles
./MonoizeOrchard/Orchard.Mono.Patches.Maybe
./MonoizeOrchard/Orchard.Mono.Patches
./Orchard.4.5.resharper
./Orchard.Web.Tests
./Orchard.Web.Tests/Properties
./Orchard.Web.Tests/Stubs
./Orchard.Web.Tests/Routes
./Orchard.Profile
./Orchard.Profile/Properties
./Orchard.Profile/Scripts
./Orchard.Profile/_environment.cmd
./Orchard.Profile/report.xsl
./Orchard.Profile/Initialize.cmd
./Orchard.Profile/Readme.txt
./Orchard.Profile/Go.cmd
./Orchard.Profile/Tests
./Orchard.Profile/obj
./Orchard.Profile/bin
./Orchard.Profile/profiling-setup-commands.txt
./Orchard.Profile/settings.txt
./Orchard.sln.orig
./Shapes.txt
./Orchard.sln.metaproj.tmp
./Orchard.Core.Tests
./Orchard.Core.Tests/Properties
./Orchard.Core.Tests/Body
./Orchard.Core.Tests/Scheduling
./Orchard.Core.Tests/Feeds
./Orchard.Core.Tests/Common
./Orchard.Core.Tests/obj
./Orchard.Core.Tests/bin
./Orchard.Core.Tests/Settings
./Orchard.WarmupStarter
./Orchard.WarmupStarter/Properties
./Orchard.WarmupStarter/obj
./Orchard.WarmupStarter/bin
./Tools
./Tools/Orchard
./Tools/MSBuild.Orchard.Tasks
./Orchard
./Orchard/Messaging
./Orchard/Properties
./Orchard/UI
./Orchard/Data
./Orchard/WebApi
./Orchard/Collections
./Orchard/Commands
./Orchard/Security
./Orchard/Localization
./Orchard/Validation
./Orchard/Wcf
./Orchard/app.config
./Orchard/Recipes
./Orchard/ContentManagement
./Orchard/Environment
./Orchard/Services
./Orchard/FileSystems
./Orchard/Indexing
./Orchard/Mvc
./Orchard/Time
./Orchard/Exceptions
./Orchard/obj
./Orchard/Logging
./Orchard/Events
./Orchard/Tasks
./Orchard/Caching
./Orchard/bin
./Orchard/DisplayManagement
./Orchard/Settings
./Orchard/Themes
./Orchard/Reports
./Orchard/Utility
./Orchard.sln
./Orchard.Specs
./Orchard.Specs/Properties
./Orchard.Specs/Content
./Orchard.Specs/Modules.feature
./Orchard.Specs/UsingSpecFlow.feature
./Orchard.Specs/WebHosting.feature
./Orchard.Specs/Bindings
./Orchard.Specs/Autoroute.feature
./Orchard.Specs/ContentTypes.feature
./Orchard.Specs/MultiTenancy.feature
./Orchard.Specs/App.Config
./Orchard.Specs/DateTime.feature
./Orchard.Specs/MediaPicker.feature
./Orchard.Specs/Media.feature
./Orchard.Specs/ContentRights.feature
./Orchard.Specs/Pages.feature
./Orchard.Specs/Setup.feature
./Orchard.Specs/Input.feature
./Orchard.Specs/Tags.feature
./Orchard.Specs/Boolean.feature
./Orchard.Specs/obj
./Orchard.Specs/Admin.feature
./Orchard.Specs/bin
./Orchard.Specs/SiteCompilation.feature
./Orchard.Specs/Link.feature
./Orchard.Specs/Users.feature
./Orchard.Specs/Widgets.feature
./Orchard.Specs/Comments.feature
./Orchard.Specs/Hosting
./Orchard.Specs/PermissionModel.feature
./Orchard.Specs/Lists.feature
./Orchard.Specs/Util
./Orchard.Specs/Enumeration.feature
./Orchard.Specs/Blogs.feature
./Orchard.Specs/Numeric.feature
./OrchardBasicCorrectness.ruleset
./Orchard.5.0.ReSharper
./OrchardSecurity.ruleset
./Orchard.Web
./Orchard.Web/Properties
./Orchard.Web/Web.Release.config
./Orchard.Web/App_Data
./Orchard.Web/Web.Debug.config
./Orchard.Web/Web.config.orig
./Orchard.Web/Core
./Orchard.Web/Web.config
./Orchard.Web/Modules
./Orchard.Web/obj
./Orchard.Web/bin
./Orchard.Web/Media
./Orchard.Web/Themes
./Orchard.Web/xbuild.out
./Orchard.Web/Refresh.html
./Orchard.Web/Global.asax
./Orchard.Web/nohup.out
./Orchard.Web/Config
./Orchard.sln.metaproj
./README.run
./Zones.txt

-tl



Jan 8 at 6:58 AM
Edited Feb 14 at 7:18 AM
Hi Ted,

Ohhhh.... I think I get it... I must run as root... LoL.. Let's see.. im test it again Ted, I'll report again the results of the tests.
Jan 8 at 7:04 AM
Shouldn't have to run as root, I am pretty sure I didn't.
If you want to set up a non-priv account, and set up pass, I can ssh in and probably determine in 10 seconds.

-tl


Jan 8 at 7:15 AM
I think i see issue, maybe i applied patches then changed owner on files,
as i have the files owned by www-data, but its UGO at rw r r , so other is just "r" permission,
so it can change the file, so maybe it will complain of that, but whats odd is i just did it and it
gave me a file perm error , not the one you got,
so what you can do is
chown -R <your normal shell work account> . // on the /var/orchard/src path
do the work, and then to be safe
chown -R www-data . // after your done everything.

but i bet you file Orchard/ContentMan.../Record/COntentItem......cs is read only by other and owned by www-data.
the other thing you can do is when you run the patch
sudo the command
sudo patch -p0 < MonoizeOrchard/...../.........patch

the error you getting about line 3 is weird as it related to the text it is trying to match in the file. Maybe line count is off, as it says, it can't find the file, maybe you have even read perm. off for Other on the file?
-tl





Jan 8 at 7:51 AM
Edited Feb 14 at 7:18 AM
Now as root i get
root@aello:/var/orchard/src# patch -p0 <   MonoizeOrchard/Orchard.Mono.Patches/ContentItemAlteration.cs.patch
patching file Orchard/ContentManagement/Records/ContentItemAlteration.cs
Reversed (or previously applied) patch detected!  Assume -R? [n]
Yes you right ted, I tried to change the chmod to 755.
Jan 8 at 5:54 PM
ikoardian wrote:
Now as root i get
root@aello:/var/orchard/src# patch -p0 <   MonoizeOrchard/Orchard.Mono.Patches/ContentItemAlteration.cs.patch
patching file Orchard/ContentManagement/Records/ContentItemAlteration.cs
Reversed (or previously applied) patch detected!  Assume -R? [n]
Yes you right ted, I tried to change the chmod to 755.
Heres the capture
https://www.dropbox.com/s/cs8ef7oxdlp0cg0/orchard-mono%202.JPG
This means, the -R comment of patch, that the patch had already been applied successfully. So you just have to run all the others now.
[sorry don't know if you were stating this issue as still and issue, or showing it to show it worked, because you ran the command again, and of
course this is the result, its already patched]
-tl
Jan 22 at 10:04 PM
Hi All,

Any new progress/updates on getting Orchard running on Mono?

The reason I am asking is that our company is currently looking to do a major site upgrade, and shift to a CMS. We have settled on Orchard as our CMS of choice as there has been Mono compatibility in the past.
Our servers are currently running Mono 2.10.8.1 on Ubuntu 12.04 LTS with mod_mono/apache2 webservers. We are using Postgres databases.
We have managed to get 1.0.20 to build and work (the version here), however due to the design and requirements of our existing site, we need to be running 1.5 or greater to have access to the forms module.
We have tried Orchard 1.5.1 on Mono 2.10.9/2.10.81 and Orchard 1.7.2 on Mono 3.2.5 (dev machines), however we have been getting the following error:
None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters: Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func'1, IEnumerable'1, IEnumerable'1, IRoutePublisher, IEnumerable'1, IModelBinderPublisher, ISweepGenerator)'.
Can anyone shed some light on this error? Google search turns up a fair few hits for this error, however fixes are all over the place, and all other cases seem to be running Windows Azure websites.

Thanks.
Jan 23 at 3:12 AM
my site : http://orchard-linux.cloudapp.net/
is new orchard on linux/mono.
Having said that, on this site and my github orchard site there should be everything to get it "working" i still have not had the time to make it a easy
task to install. I am working on a server that ikoardian has provided, so i can do a clean install and document it, as well as it will be working for him, but I am still a week away , as really busy.

The error you got is one of the many I had to work through.

The new orchard on mono/linux uses mysql, originally it used postges, but that had issues, it should be possible to get it working on the new, but I doubt its something I would tackle soon, as mysql is fine by me.

Please see all the history above for back story.

Now Orchard on mono/linux is "working" and that's in quotes for a reason :)
Aside from basic setup and doing some skins, and doing picture post, and stuff,it's far from thoroughly tested, and far from a broad test of orchards offerings.
The operation on Mono/Linux at this time can't really be for a production site that you rely on. I think a dozen or so people have to install it, use it in a non-production way, and report finding before its ready for anyone to use in production. Personally, if you are using the very typical features of Orchard, you are probably going to be fine, but that's a guess. And any module you may want and rely on? that could be subject to issues.

What ever you do , don't waste time trying to get Orchard running on Linux/Mono, I did that part, I will try to get my work out in a more automatic install nature very soon. If you are into the dirt of it, if you check the http://orchard-linux.cloudapp.net/ and my https://github.com/zamphion/orchard-mono you
will get all the patches you need, etc, but i think there is still a few (simple) Web.config changes I have to add. As well, you have to run a patched Mono,
and you can get that patch from the sites as well.

You may want to deploy on MS with mysql, knowing in X months you can go with Mono/Linux.

-tl

setakat wrote:
Hi All,

Any new progress/updates on getting Orchard running on Mono?

The reason I am asking is that our company is currently looking to do a major site upgrade, and shift to a CMS. We have settled on Orchard as our CMS of choice as there has been Mono compatibility in the past.
Our servers are currently running Mono 2.10.8.1 on Ubuntu 12.04 LTS with mod_mono/apache2 webservers. We are using Postgres databases.
We have managed to get 1.0.20 to build and work (the version here), however due to the design and requirements of our existing site, we need to be running 1.5 or greater to have access to the forms module.
We have tried Orchard 1.5.1 on Mono 2.10.9/2.10.81 and Orchard 1.7.2 on Mono 3.2.5 (dev machines), however we have been getting the following error:
None of the constructors found with 'Autofac.Core.Activators.Reflection.DefaultConstructorFinder' on type 'Orchard.Environment.DefaultOrchardShell' can be invoked with the available services and parameters: Cannot resolve parameter 'Orchard.Mvc.Routes.IRoutePublisher routePublisher' of constructor 'Void .ctor(Func'1, IEnumerable'1, IEnumerable'1, IRoutePublisher, IEnumerable'1, IModelBinderPublisher, ISweepGenerator)'.
Can anyone shed some light on this error? Google search turns up a fair few hits for this error, however fixes are all over the place, and all other cases seem to be running Windows Azure websites.

Thanks.
Jan 24 at 3:27 AM
Edited Jan 24 at 3:29 AM
tleslie wrote:
my site : http://orchard-linux.cloudapp.net/
is new orchard on linux/mono.
Having said that, on this site and my github orchard site there should be everything to get it "working" i still have not had the time to make it a easy
task to install. I am working on a server that ikoardian has provided, so i can do a clean install and document it, as well as it will be working for him, but I am still a week away , as really busy.

The error you got is one of the many I had to work through.

The new orchard on mono/linux uses mysql, originally it used postges, but that had issues, it should be possible to get it working on the new, but I doubt its something I would tackle soon, as mysql is fine by me.

Please see all the history above for back story.

Now Orchard on mono/linux is "working" and that's in quotes for a reason :)
Aside from basic setup and doing some skins, and doing picture post, and stuff,it's far from thoroughly tested, and far from a broad test of orchards offerings.
The operation on Mono/Linux at this time can't really be for a production site that you rely on. I think a dozen or so people have to install it, use it in a non-production way, and report finding before its ready for anyone to use in production. Personally, if you are using the very typical features of Orchard, you are probably going to be fine, but that's a guess. And any module you may want and rely on? that could be subject to issues.

What ever you do , don't waste time trying to get Orchard running on Linux/Mono, I did that part, I will try to get my work out in a more automatic install nature very soon. If you are into the dirt of it, if you check the http://orchard-linux.cloudapp.net/ and my https://github.com/zamphion/orchard-mono you
will get all the patches you need, etc, but i think there is still a few (simple) Web.config changes I have to add. As well, you have to run a patched Mono,
and you can get that patch from the sites as well.

You may want to deploy on MS with mysql, knowing in X months you can go with Mono/Linux.

-tl
Hi tleslie,

Thanks for that. I had actually been using the patches from your site and the github for all of the different builds I have attempted.

We are actually looking to use Orchard in a production environment, and we need to be running Linux/Mono/Postgres, otherwise we'll loose 1, maybe 2 of our biggest contracts (unless we can convince them to approve an architecture change). We can switch to Linux/Mono/MySql for dev work, and possibly for some of our smaller clients.
We are looking to get a Mono compatible version of Orchard working, so we are committed to working on this, and will be placing the solution under Git control and forking the project once we get a build running.
Feature wise, just standard Library modules so far, and we are looking to implement a custom UI toolkit, so that will require new modules at some point.
As for not wasting time... * guilty look*

I started a new build from the 1.7.2 source today, Mono 3.2.5, and have applied your patches & fixes. My current dev machine is a Mac OSX (only 1 free when I started work at my current company), and I am running Orchard under mod_mono. I normally run from Xamarin studio, but it doesn't seem to have a case insensitive option, and hence cannot map index.cshtml to Index.cshtml.

Built fine after I created a few new patches to alter a few files (including a web.config) and manually applied the add-system-data.sh fix .I couldn't figure out what it was meant to do, or how it was supposed to work. I have altered the other patches to work dynamically from the Orchard install location (and to run on OSX)
Now, Errors.

1st
System.ExecutionEngineException
Failed to create shadow copy (CopyFile).

at (wrapper managed-to-native) System.Reflection.Assembly:LoadFrom (string,bool) at System.Reflection.Assembly.LoadFrom (System.String assemblyFile) [0x00000] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/corlib/System.Reflection/Assembly.cs:478 at System.Web.Compilation.BuildManager.LoadAssembly (System.String path, System.Collections.Generic.List'1 al) [0x00000] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:1289 at System.Web.Compilation.BuildManager.GetReferencedAssemblies () [0x00200] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:1141 at System.Web.Compilation.BuildManager.CallPreStartMethods () [0x00013] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:555

Reload the page
2nd
System.ExecutionEngineException
Failed to create shadow copy (CopyFile).

at (wrapper managed-to-native) System.Reflection.Assembly:LoadFrom (string,bool) at System.Reflection.Assembly.LoadFrom (System.String assemblyFile) [0x00000] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/corlib/System.Reflection/Assembly.cs:478 at System.Web.Compilation.BuildManager.LoadAssembly (System.String path, System.Collections.Generic.List'1 al) [0x00000] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:1289 at System.Web.Compilation.BuildManager.GetReferencedAssemblies () [0x00200] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:1141 at System.Web.Compilation.BuildManager.BuildInner (System.Web.VirtualPath vp, Boolean debug) [0x0010b] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:467 at System.Web.Compilation.BuildManager.Build (System.Web.VirtualPath vp) [0x00056] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:414 at System.Web.Compilation.BuildManager.GetCompiledType (System.Web.VirtualPath virtualPath) [0x00040] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:1027 at System.Web.Compilation.BuildManager.GetCompiledType (System.String virtualPath) [0x00000] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web.Compilation/BuildManager.cs:1010 at System.Web.HttpApplicationFactory.InitType (System.Web.HttpContext context) [0x0016b] in /private/tmp/source/bockbuild-xamarin/profiles/mono-mac-xamarin/build-root/mono-3.2.5/mcs/class/System.Web/System.Web/HttpApplicationFactory.cs:460

Reload again
3rd
System.ExecutionEngineException
Failed to create shadow copy (CopyFile).

at Orchard.Environment.OrchardStarter.CreateHost (System.Action'1 registrations) [0x00000] in /Users/alexbunn/Orchard_Projects/Orchard.Source.1.7.2/src/Orchard/Environment/OrchardStarter.cs:175 at Orchard.Web.MvcApplication.HostInitialization (System.Web.HttpApplication application) [0x00001] in /Users/alexbunn/Orchard_Projects/Orchard.Source.1.7.2/src/Orchard.Web/Global.asax.cs:46 at Orchard.WarmupStarter.Starter'1+<LaunchStartupThread>c__AnonStorey0[Orchard.Environment.IOrchardHost].<>m__0 (System.Object state) [0x00000] in /Users/alexbunn/Orchard_Projects/Orchard.Source.1.7.2/src/Orchard.WarmupStarter/Starter.cs:89

Reload again
4th
Same error as 3

Reload again
5th
System.TypeLoadException
Could not load type 'Orchard.WebApi.DefaultOrchardWebApiHttpControllerSelector' from assembly 'Orchard.Framework, Version=1.7.2.0, Culture=neutral, PublicKeyToken=null'.

at Orchard.Environment.OrchardStarter.CreateHost (System.Action'1 registrations) [0x00000] in /Users/alexbunn/Orchard_Projects/Orchard.Source.1.7.2/src/Orchard/Environment/OrchardStarter.cs:175 at Orchard.Web.MvcApplication.HostInitialization (System.Web.HttpApplication application) [0x00001] in /Users/alexbunn/Orchard_Projects/Orchard.Source.1.7.2/src/Orchard.Web/Global.asax.cs:46 at Orchard.WarmupStarter.Starter'1+<LaunchStartupThread>c__AnonStorey0[Orchard.Environment.IOrchardHost].<>m__0 (System.Object state) [0x00000] in /Users/alexbunn/Orchard_Projects/Orchard.Source.1.7.2/src/Orchard.WarmupStarter/Starter.cs:89

Something different this time. And about 20 reloads later, still have this error. Less Google hits for this one though, which isn't a good sign.
Feb 7 at 9:29 PM
There may be a Mac OS specific issue here, as this doesn't look like one of the issues I had.
I have been tied up landing a new job, which is now complete, so I will be back to Orchard next week.
I will look to bundling a complete drop in solution and fix the hard code path issue.
Once done, if it were still still not run on Mac, then I would have to install it on my Mac system and look at it further.

-tl
Feb 14 at 6:54 AM
Edited Feb 14 at 7:26 AM
For Developer ,

Can I place a mirror of the source code on GitHub from my fork code, in order to facilitate the work of Orchard-Mono?

https://www.dropbox.com/s/veb5iu4uascb9s7/clone%20orchard.JPG
Feb 16 at 4:46 AM
Not sure what you are asking, but all my work is on same license as the orchard project, so you are
free to do with it the same as orchard code in general.
-tl


Apr 17 at 7:53 PM
With Orchard 1.8 out, and Ubuntu 14.04 out today with Mono 3.2.8 in the official repo, how easy would it be to run Orchard on Ubuntu?
Apr 17 at 9:14 PM
Ventajou wrote:
With Orchard 1.8 out, and Ubuntu 14.04 out today with Mono 3.2.8 in the official repo, how easy would it be to run Orchard on Ubuntu?
I would guess that 1.8 didn't introduce anything that my patch set up (or the type of issues the patches address) would not address.
Having said that, I certainly have Orchard on Linux/Mono working : http://orchard-linux.cloudapp.net/
but actually when i checked it just now it was frozen, worked unattended for months, so it may have been azure issue. Simple service restart fixed it.
(i run it on a 512MB azure tiny linux instance, so the fact it runs as well as it does on such a small instance has been great)

I don't know if anyone has taken my fixes and gotten their own env. working, I have not had time to make the setup any easier (more automatic).

I doubt the Mono 3.2.8 would have the patch in it that I wrote (hack) to overcome what is probably a Mono issue. My patch makes Orchard work, but
not sure if it would adversely effect Mono running other asp.net type things, it is probably ok, I am just not sure why the Mono doesn't map the MS
functionality in this regard.

Also, even though I have got it running, and been able to apply themes (manually), and apply modules (manually), and do some decent setup of CMS pages,
there may be code in certain modules or features of the base of Orchard that I have not run yet, and it may have exception, but having said that, there probably
isn't much if any that would have exception that isn't fairly easy to fix in the same vain as my patches. (linux path issues, dll miss match, etc)

I started a new job, and have been swamped learning how to write Windows Network Kernel Device Drivers, if you can imagine, but it is settling down and I hope to get back to it. Having said that, if you want Orchard for production (on linux/mono), it is not really there, except if like me, its used for simple basic set up, which for that it seems to work well. Of course if anyone wants to give it a spin, that is always a good thing.

-tl
Jun 30 at 9:35 AM
PostgreSQL for real?!?! Wow! Need to take a closer look into this. I've been struggling to decide between Orchard and Umbraco, but if PostGreSQL works I'm done! Sold!
Thank you