abeloin 27 Posted December 25, 2013 Share Posted December 25, 2013 (edited) Wait, really? How far do you get? Where can I find the service stack fixes? I've been running mb3 in Linux for a couple of days. Almost everything I've tried work(streaming, chapter image extraction,...). It fix Mono's Attribute.GetHashCode generating a stackoverflow exception when using ServiceStack v4. See https://github.com/mono/mono/commit/850dd016781e523b5c80b9eb69db5a63a03b585f See post #47 for more info. Here's a snippet from the server log: http://pastebin.com/e9h5L7Sn Edited December 25, 2013 by abeloin 1 Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 25, 2013 Share Posted December 25, 2013 I've been running mb3 in Linux for a couple of days. Almost everything I've tried work(streaming, chapter image extraction,...). It fix Mono's Attribute.GetHashCode generating a stackoverflow exception when using ServiceStack v4. See https://github.com/mono/mono/commit/850dd016781e523b5c80b9eb69db5a63a03b585f See post #47 for more info. Here's a snippet from the server log: http://pastebin.com/e9h5L7Sn Well that is fantastic. I thought we would be stuck waiting for Demis to resolve the issues. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 25, 2013 Share Posted December 25, 2013 For those interested, current Mono and MonoDevelop for all major Linux Distributions: http://www.pokorra.de/2013/12/easy-installation-of-current-mono-and-monodevelop-for-all-major-linux-distributions/ Though MB3 still won't run in Linux because of an issue between SSv4 and mono(still not fixed in 3.2.6) which can be fixed by patching mono with this: https://github.com/mono/mono/commit/850dd016781e523b5c80b9eb69db5a63a03b585f Here's some changes to MB3 source code to make it compile and run on Linux(and Windows) http://pastebin.com/3THvwvXk can you put these into a pull request? Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 26, 2013 Share Posted December 26, 2013 Done. Pull request #652 https://github.com/MediaBrowser/MediaBrowser/pull/652 Here a more complete guide to compile MediaBrowser in Linux 1. git clone https://github.com/MediaBrowser/MediaBrowser.git 2. Nuget (Cert, update and restore), open cli to cloned git repo: 2.1 cd .nuget 2.2 mozroots --import --sync 2.3 mono NuGet.exe update -self 2.4 cd .. 2.5 mono .nuget/NuGet.exe restore MediaBrowser.Mono.sln 3. Download sqlite3.dll from http://www.sqlite.org/2013/sqlite-dll-win32-x86-3080200.zip 4. Copy sqlite3.dll from the archive into MediaBrowser.Server.Mono folder 5. Open MediaBrowser.Mono.sln in Monodevelop 6. Choose "Release Mono" 7. Run -> Start Without Debugging (Ctrl+F5) or Build -> Build All (F8) why is the sqlite3 download needed? We already include that for the mono solution Link to comment Share on other sites More sharing options...
abeloin 27 Posted December 26, 2013 Share Posted December 26, 2013 why is the sqlite3 download needed? We already include that for the mono solution But it's not in MediaBrowser.Server.Mono folder in git: https://github.com/MediaBrowser/MediaBrowser/tree/master/MediaBrowser.Server.Mono So Mono complain that it cannot copy sqlite3.dll as the source file doesn't exist. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 26, 2013 Share Posted December 26, 2013 ok, thanks. i'll want to get that fixed in source so that it doesn't have to be a manual step Link to comment Share on other sites More sharing options...
abeloin 27 Posted December 26, 2013 Share Posted December 26, 2013 (edited) can you put these into a pull request? Done. Pull request #652 https://github.com/MediaBrowser/MediaBrowser/pull/652 Here a more complete guide to compile MediaBrowser in Linux 1. git clone https://github.com/MediaBrowser/MediaBrowser.git 2. Nuget (Cert, update and restore), open cli to cloned git repo: 2.1 cd .nuget 2.2 mozroots --import --sync 2.3 mono NuGet.exe update -self 2.4 cd .. 2.5 mono .nuget/NuGet.exe restore MediaBrowser.Mono.sln 3. Open MediaBrowser.Mono.sln in Monodevelop 4. Choose "Release Mono" 5. Run -> Start Without Debugging (Ctrl+F5) or Build -> Build All (F8) Edit: Removed sqlite3.dll part Edited December 26, 2013 by abeloin 1 Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 27, 2013 Share Posted December 27, 2013 Since we've gotten a little further, to anyone who wants to test - I can provide a build for the linux server, but you will have to be capable of not only installing mono, but building it as well. @@abeloin can you verify these updated instructions, assuming I provide a build for testers: Rebuild Pokorra's Mono src rpms with patch for servicestack v4 issue Instal Mono, libgdi+ Link to comment Share on other sites More sharing options...
Beardyname 194 Posted December 27, 2013 Share Posted December 27, 2013 (edited) @@Luke should i Contact you through a pm or something to get my hand on this bild ? I built mono with the servicestack fix yesterday, but have not intalled mono-dev yet. Edited December 27, 2013 by plumblum Link to comment Share on other sites More sharing options...
Abobader 2942 Posted December 27, 2013 Share Posted December 27, 2013 Good day Luke, What linux distro you using? I can test it tomorrow and give feed back. My best Link to comment Share on other sites More sharing options...
Abobader 2942 Posted December 27, 2013 Share Posted December 27, 2013 I'll get a build up today. Abo - any distro but you have to be able to build mono Many thanks Luke, I will see today what distro are best for mono. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 28, 2013 Share Posted December 28, 2013 I'll get a build up today. Abo - any distro but you have to be able to build mono Link to comment Share on other sites More sharing options...
Debug Mode 2 Posted December 28, 2013 Share Posted December 28, 2013 (edited) . Edited December 28, 2013 by Debug Mode Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 28, 2013 Share Posted December 28, 2013 Here you go guys, here's a build: https://www.dropbox.com/s/fki81zomq7mtryx/Release%20Mono.zip Remember that you have to follow the instructions to build mono outlined by @@abeloin http://mediabrowser.tv/community/index.php?/topic/947-linux-server/?p=52817 Hopefully in a few weeks as the official mono releases get updated that won't be necessary anymore. Link to comment Share on other sites More sharing options...
Pirlo1966 22 Posted December 28, 2013 Share Posted December 28, 2013 Wow, hard to believe MBS for my Synology NAS is coming. Can't wait to use it. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 28, 2013 Share Posted December 28, 2013 Yea except that it will require the latest and greatest mono versions, whereas synology generally runs pretty far behind with it's mono installation. So for a while it might be limited to people who know how to update their mono installations before installing the server. Link to comment Share on other sites More sharing options...
Debug Mode 2 Posted December 28, 2013 Share Posted December 28, 2013 What Mono version are we supposed to run on? The source of 3.2.5 is bugged to the point that it's uncompilable and anything below doesn't seem to work. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 28, 2013 Share Posted December 28, 2013 see the link i posted. you're going to have to build mono. Link to comment Share on other sites More sharing options...
Debug Mode 2 Posted December 29, 2013 Share Posted December 29, 2013 (edited) appHost.Init UnhandledException One or more errors occured System.AggregateException at System.Threading.Tasks.Task.WaitAll (System.Threading.Tasks.Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken) [0x00000] in <filename unknown>:0 at System.Threading.Tasks.Task.WaitAll (System.Threading.Tasks.Task[] tasks) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Mono.MainClass.RunApplication (MediaBrowser.Server.Implementations.ServerApplicationPaths appPaths, ILogManager logManager) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Mono.MainClass.Main (System.String[] args) [0x00000] in <filename unknown>:0 InnerException: System.NullReferenceException Object reference not set to an instance of an object at MediaBrowser.Controller.Entities.User.GetConfigurationDirectoryPath (System.String username) [0x00000] in <filename unknown>:0 at MediaBrowser.Controller.Entities.User.get_ConfigurationDirectoryPath () [0x00000] in <filename unknown>:0 at MediaBrowser.Controller.Entities.User.get_Path () [0x00000] in <filename unknown>:0 at (wrapper dynamic-method) object:lambda_method (System.Runtime.CompilerServices.Closure,MediaBrowser.Controller.Entities.User) at ServiceStack.Text.Common.WriteType`2[MediaBrowser.Controller.Entities.User,ServiceStack.Text.Json.JsonTypeSerializer].WriteProperties (System.IO.TextWriter writer, System.Object value) [0x00000] in <filename unknown>:0 at ServiceStack.Text.JsonSerializer.SerializeToStream (System.Object value, System.Type type, System.IO.Stream stream) [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.Serialization.JsonSerializer.SerializeToStream (System.Object obj, System.IO.Stream stream) [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.Serialization.JsonSerializer.SerializeToBytes (System.Object obj) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Implementations.Persistence.SqliteUserRepository+<SaveUser>c__async8C.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Implementations.Library.UserManager+<LoadUsers>c__async27.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[system.Collections.Generic.IEnumerable`1[MediaBrowser.Controller.Entities.User]].GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Implementations.Library.UserManager+<Initialize>c__async25.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.ServerApplication.ApplicationHost+<RegisterResources>c__async1.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.BaseApplicationHost`1+<Init>c__async0[MediaBrowser.Server.Implementations.ServerApplicationPaths].MoveNext () [0x00000] in <filename unknown>:0 Edited December 29, 2013 by Debug Mode Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 29, 2013 Share Posted December 29, 2013 ok, thanks. i'll get a new one up shortly. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 29, 2013 Share Posted December 29, 2013 new one is up, using the same link. if you could delete the program data directory it generated and start fresh with this that would be helpful. thanks. Link to comment Share on other sites More sharing options...
Debug Mode 2 Posted December 29, 2013 Share Posted December 29, 2013 2013-12-29 16:04:12.3451, Info, Main, Media Browser Server started 2013-12-29 16:04:12.3535, Info, Main, Command line: /home/yoru/release/MediaBrowser.Server.Mono.exe 2013-12-29 16:04:12.3535, Info, Main, Server: mightygaben 2013-12-29 16:04:12.3542, Info, Main, Operating system: Unix 3.10.17.0 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Api, Version=3.0.5111.16149, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.WebDashboard, Version=3.0.5111.16148, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Model, Version=3.0.5111.16145, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Common, Version=3.0.5111.16145, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Controller, Version=3.0.5111.16146, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Common.Implementations, Version=3.0.5111.16146, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Server.Implementations, Version=3.0.5111.16147, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5143, Info, App, Loading MediaBrowser.Server.Mono, Version=3.0.5111.16150, Culture=neutral, PublicKeyToken=null 2013-12-29 16:04:12.5215, Info, App, Version 3.0.5111.16150 initializing 2013-12-29 16:04:12.5426, Info, SqliteUserRepository, Opening /home/yoru/release/ProgramData-Server/data/users.db 2013-12-29 16:04:12.7143, Info, SqliteItemRepository, Opening /home/yoru/release/ProgramData-Server/data/chapters.db 2013-12-29 16:04:12.7879, Info, SqliteItemRepository, Opening /home/yoru/release/ProgramData-Server/data/mediainfo.db 2013-12-29 16:04:12.8634, Info, SqliteItemRepository, Opening /home/yoru/release/ProgramData-Server/data/providerinfo.db 2013-12-29 16:04:13.0101, Info, App, HttpClientManager.GetTempFileResponse url: http://ffmpeg.gusari.org/static/32bit/ffmpeg.static.32bit.2013-12-21.tar.gz 2013-12-29 16:04:13.0168, Info, App, HttpClientManager.GetTempFileResponse url: https://www.dropbox.com/s/pj847twf7riq0j7/ARIALUNI.7z?dl=1 2013-12-29 16:05:30.8196, Info, SqliteDisplayPreferencesRepository, Opening /home/yoru/release/ProgramData-Server/data/displaypreferences.db 2013-12-29 16:05:30.8207, Info, SqliteItemRepository, Opening /home/yoru/release/ProgramData-Server/data/library.db 2013-12-29 16:05:30.8226, Info, SqliteNotificationsRepository, Opening /home/yoru/release/ProgramData-Server/data/notifications.db 2013-12-29 16:05:30.8237, Info, SqliteUserDataRepository, Opening /home/yoru/release/ProgramData-Server/data/userdata_v2.db 2013-12-29 16:05:31.9122, Error, Main, UnhandledException One or more errors occured System.AggregateException at System.Threading.Tasks.Task.WaitAll (System.Threading.Tasks.Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken) [0x00000] in <filename unknown>:0 at System.Threading.Tasks.Task.WaitAll (System.Threading.Tasks.Task[] tasks) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Mono.MainClass.RunApplication (MediaBrowser.Server.Implementations.ServerApplicationPaths appPaths, ILogManager logManager) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Mono.MainClass.Main (System.String[] args) [0x00000] in <filename unknown>:0 InnerException: System.NullReferenceException Object reference not set to an instance of an object at MediaBrowser.Controller.Entities.User.GetConfigurationDirectoryPath (System.String username) [0x00000] in <filename unknown>:0 at MediaBrowser.Controller.Entities.User.get_ConfigurationDirectoryPath () [0x00000] in <filename unknown>:0 at MediaBrowser.Controller.Entities.User.get_ConfigurationFilePath () [0x00000] in <filename unknown>:0 at (wrapper dynamic-method) object:lambda_method (System.Runtime.CompilerServices.Closure,MediaBrowser.Controller.Entities.User) at ServiceStack.Text.Common.WriteType`2[MediaBrowser.Controller.Entities.User,ServiceStack.Text.Json.JsonTypeSerializer].WriteProperties (System.IO.TextWriter writer, System.Object value) [0x00000] in <filename unknown>:0 at ServiceStack.Text.JsonSerializer.SerializeToStream (System.Object value, System.Type type, System.IO.Stream stream) [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.Serialization.JsonSerializer.SerializeToStream (System.Object obj, System.IO.Stream stream) [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.Serialization.JsonSerializer.SerializeToBytes (System.Object obj) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Implementations.Persistence.SqliteUserRepository+<SaveUser>c__async8D.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Implementations.Library.UserManager+<LoadUsers>c__async27.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[system.Collections.Generic.IEnumerable`1[MediaBrowser.Controller.Entities.User]].GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Implementations.Library.UserManager+<Initialize>c__async25.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.ServerApplication.ApplicationHost+<RegisterResources>c__async1.MoveNext () [0x00000] in <filename unknown>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x00000] in <filename unknown>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.BaseApplicationHost`1+<Init>c__async0[MediaBrowser.Server.Implementations.ServerApplicationPaths].MoveNext () [0x00000] in <filename unknown>:0 Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 29, 2013 Share Posted December 29, 2013 Ok, thanks for your patience. I'll dig a little deeper and make a few more changes. This is one of those oddballs that is behaving a little differently when running under mono as compared to the .net framework. Link to comment Share on other sites More sharing options...
Luke 37062 Posted December 29, 2013 Share Posted December 29, 2013 another new one up. Link to comment Share on other sites More sharing options...
Debug Mode 2 Posted December 29, 2013 Share Posted December 29, 2013 2013-12-29 16:38:14.7107, Info, Main, Media Browser Server started 2013-12-29 16:38:14.7198, Info, Main, Command line: /home/yoru/release/MediaBrowser.Server.Mono.exe 2013-12-29 16:38:14.7198, Info, Main, Server: mightygaben 2013-12-29 16:38:14.7198, Info, Main, Operating system: Unix 3.10.17.0 2013-12-29 16:38:14.9168, Error, Main, UnhandledException One or more errors occured System.AggregateException at System.Threading.Tasks.Task.WaitAll (System.Threading.Tasks.Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken) [0x00000] in <filename unknown>:0 at System.Threading.Tasks.Task.WaitAll (System.Threading.Tasks.Task[] tasks) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Mono.MainClass.RunApplication (MediaBrowser.Server.Implementations.ServerApplicationPaths appPaths, ILogManager logManager) [0x00000] in <filename unknown>:0 at MediaBrowser.Server.Mono.MainClass.Main (System.String[] args) [0x00000] in <filename unknown>:0 InnerException: System.IO.DirectoryNotFoundException Directory '/home/yoru/release/ProgramData-Server/plugins' not found. at System.IO.Directory.ValidateDirectoryListing (System.String path, System.String searchPattern, System.Boolean& stop) [0x00000] in <filename unknown>:0 at System.IO.Directory+<EnumerateKind>c__Iterator11.MoveNext () [0x00000] in <filename unknown>:0 at System.Linq.Enumerable+<CreateSelectIterator>c__Iterator25`2[system.String,System.Reflection.Assembly].MoveNext () [0x00000] in <filename unknown>:0 at System.Linq.Enumerable+<CreateWhereIterator>c__Iterator33`1[system.Reflection.Assembly].MoveNext () [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[system.Reflection.Assembly].AddEnumerable (IEnumerable`1 enumerable) [0x00000] in <filename unknown>:0 at System.Collections.Generic.List`1[system.Reflection.Assembly]..ctor (IEnumerable`1 collection) [0x00000] in <filename unknown>:0 at System.Linq.Enumerable.ToList[Assembly] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at MediaBrowser.ServerApplication.ApplicationHost.GetComposablePartAssemblies () [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.BaseApplicationHost`1[MediaBrowser.Server.Implementations.ServerApplicationPaths].DiscoverTypes () [0x00000] in <filename unknown>:0 at MediaBrowser.Common.Implementations.BaseApplicationHost`1+<Init>c__async0[MediaBrowser.Server.Implementations.ServerApplicationPaths].MoveNext () [0x00000] in <filename unknown>:0 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now