Linux Version / Core DLLs

May 28, 2012 at 7:47 PM

Hey, I love this idea! I've been using Comicrack so far, but I've been waiting for a manga-only library program for a while. Unfortunately I used linux primarily. I'm gonna try it under Wine as soon as I can, but are you thinking of making it for Linux anytime soon?

Coordinator
May 28, 2012 at 10:25 PM

Thanks. I may eventually port the code to Linux as I use it too, but that also means switching back to windows forms. Although the background code of myManga is normal C# so it is possible using BakaBox.dll, CoreMangaClasses.dll, and Manga.dll to write a windows forms application. As far as I know Wine will not run WPF applications, ergo Wine will not run myManga.

Coordinator
May 29, 2012 at 4:18 AM

After your post it got me obsessed with seeing if it is possible to run WPF on Linux, thanks a lot you jerk...just kidding. From what I have come to understand it is not possible to run WPF on Linux, what is possible is running Silverlight using Mono and Moonlight to run an application on the desktop. I will look into this but not until the root myManga has been properly released. If anyone wants to try to create a Mono-Moonlight version of myManga use the three DLLs I stated in the previous post. If those DLLs need to be compiled in Mono, let me know and I'll try to recompile them quickly and post them

May 29, 2012 at 5:28 AM

Haha, don't worry. I've been pulled in too, I can't stop thinking about it. And I know extremely little about programming as it is. I started to look into it and found out about Mono too and will try to do what I can with it.

May 30, 2012 at 8:38 PM

Okay, so I looked over the three .dll files you mentioned using MoMA (http://www.mono-project.com/MoMA) and it seems that it has no problem with CoreMangaClasses.dll and Manga.dll. It has a huge problem with Bakabox.dll. Just a head's up for future reference.

Coordinator
May 30, 2012 at 8:43 PM

That makes sense since BakaBox.dll contains wpf controls. If your interested in working on a mono version I can compile you a non WPF version of BakaBox.

May 30, 2012 at 9:23 PM

That'd be great. No promises to the results, but I look forward to trying.

Coordinator
May 30, 2012 at 9:51 PM
Edited May 30, 2012 at 9:52 PM

Just tested the dlls used, yes the manga dlls are safe, but...every other dll used will not work with mono, BakaBox, HtmlAgilityPack, fastJSON, and IonicZip. From this I do not see any easy way to port myManga to Mono it would currently require a complete rewirte. The only thing I can see happening is writing a myManga for Linux, this would be a project in itself. If you still would like to try this if I were you I would start with creating a program that can read the MIZA and MZA file formats and properly display the information. Only then would I try to tackle the information downloading which would require creating a plugin system for linux and having separate plugins for windows and Linux. Because of this I will probably never write a Linux version of myManga, if you still would like to try this...good luck.

Otherwise the best thing I could recommend if you would like to use myManga on linux or mac would be to use a VM to run windows.

 

P.S. CoreMangaClasses.dll & Manga.dll both use BakaBox.

May 30, 2012 at 10:31 PM

I understand what you mean, but it isn't as bad as it looks. If you look, the fastJSON, HtmlAgiliyPack, and IonicZip files only have Todo markers next to them. According to the MoMA site (http://www.mono-project.com/MoMA_-_Issue_Descriptions) "These can probably be ignored in your initial porting. Your application should still run without crashing, however there may be missing functionality. Missing functionality can be fixed by working around Mono's unfinished method, implementing the method yourself, or waiting until the method is completed in Mono". 

 

IonicZip.dll -> http://dotnetzip.codeplex.com/discussions/269557

Is this thing supported on Mono/Linux?
It's not supported at all. But, it apparently works on Mono/Ubuntu. I don't test it that way. If you'd like to volunteer, let me know. 

HtmlAgilityPack.dll -> http://software.1713.n2.nabble.com/HTML-Parser-in-Mono-td6280848.html

is there any html parser for Mono? Thanks . . .Thanks for all. I've tried html agility pack and works ok in Mono. I'd found it before, but I was afraid that it didn't work with Mono. Thanks

fastJSON.dll -> http://stackoverflow.com/questions/5997288/deserializing-json-data-in-mono

fastJSON suits the bill. Grab the required files (Getters.cs, JSON.cs, JsonParser.cs, JsonSerializer.cs, SafeDictionary.cs) and embed them in your project and use it. It doesn't use any fancy .NET specific class so it should work with MonoDroid or Silverlight.

 

It does seem like a really big hassle. If nothing else, I'll try starting from scratch. myManga is a good template, I'll see what I can do. 

Coordinator
May 31, 2012 at 12:41 AM

That is some interesting information, I especially like Cheeso's response/rant. I'll be posting the MI and MA XML file docs soon which should help you get started.

May 31, 2012 at 5:25 AM

Wow, didn't notice that. The URL should have been http://dotnetzip.codeplex.com/ but that response is still interesting. Thanks, looking forward to it.

May 31, 2012 at 6:33 AM

Hey, do you mind releasing the source for your bakabox.dll? (preferably all the custom DLLs but mainly just bakabox). So I can see how exactly you went about implementing the different operations for myManga?

Coordinator
May 31, 2012 at 7:21 AM

I will be releasing the core DLLs soon, I just want to get a few more things organized and defined within them first, they are the the actual myManga application, the current source only contains an interface for them. I should be releasing them within the upcoming commits.

May 31, 2012 at 7:27 AM

got. And btw, on your About section, it should be "I threw controls in a jar" not "through".

Coordinator
May 31, 2012 at 7:31 AM

Thanks for that, I start getting a little tired around 3:30am...

May 31, 2012 at 7:33 AM

haha, yeah, it's only 12:30 here, easier for me.