Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Calibre > Library Management

Notices

Reply
 
Thread Tools Search this Thread
Old 08-07-2018, 04:01 PM   #46
kacir
Wizard
kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.kacir ought to be getting tired of karma fortunes by now.
 
kacir's Avatar
 
Posts: 3,450
Karma: 10484861
Join Date: May 2006
Device: PocketBook 360, before it was Sony Reader, cassiopeia A-20
Quote:
Originally Posted by sealbeater View Post
Well, my approach is to have all the metadata needed available in the filename, my regex puts the ISBN in the right place, regardless of any misses. I had bad luck finding dupes with calibre due to the number of records. It's better to import with clean data.
For me, metadata is incomplete without tags, cover and blurb.

Also, the "find duplicates" functionality goes way beyond a typical filesystem dedup utilities. It will identify a book as a duplicate even if it has a slightly different title (like an article 'The' at the end of the title instead of beginning) and different author name (missing middle initial, perhaps) and has different formats, such as epub and mobi. And when you merge books, it has *very* reasonable defaults for merging different metadata. I find it astonishing that it finds duplicates so fast in a huge database. It has to compare every single record to all other records.

Calibre is extremely powerful program and a set of utilities, with elaborate Regular Expressions support throughout, lots of advanced template languages for export, import, processing, converting ... . I am sure that each of us uses a different subset of features. Even my own use of Calibre is evolving and there are cool features that I am aware of but I haven't had an opportunity to use. And I keep discovering cool features even after years of heavy use.
kacir is offline   Reply With Quote
Old 08-07-2018, 06:37 PM   #47
sjfan
Addict
sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.sjfan ought to be getting tired of karma fortunes by now.
 
Posts: 281
Karma: 7724454
Join Date: Sep 2017
Location: Bethesda, MD, USA
Device: Kobo Aura H20, Kobo Clara HD
Quote:
Originally Posted by sealbeater View Post
I think I already answered this.

All of my books have this format:

Anja Jonuleit/Anja Jonuleit - Novemberasche - Kriminalroman (2010)[9783423405638].epub


If it's a series:

Gav Thorpe - [Time of Legends - The Sundering #1] - Malekith (2008) [9788448038373].epub


so I can just go, as stated "cd library ; find . -name "Time of Legends*epub" | parallel cp -rv {} /mnt/bookreader.
...
Of course, small libraries will load calibre quickly but I find command line operations to be faster in general.
+1 on command line being faster, but calibre and the command line do work well together. Your approach has advantages and disadvantages (e.g. your substring/filename approach can fail when a series name is short; you can easily get false matches on a series name like "Foundation"—you can come up with specific naming schemes that allow unambiguous searches, but at some point you're basically reinventing your own YAML or JSON).

I'd typically use something like:
Code:
cd dest; calibredb export --single-dir $(calibre-id series:Foundation)
where calibre-id is a utility script I have that just does:
Code:
calibredb list -s "$*" -f id|grep "[0-9]" | tr '\n' ,|sed -e 's/,$//'
Well, in reality I have another calibre-export script so I can just run
Code:
calibre-export "series:Foundation"
or whatever search I want, but it's largely equivalent to the above behind the scenes (plus my favorite tweaks on preferred formats and the like).

For a while I played around with a shadow directory of symlinks so I could arrange things how I wanted, but I found that once I made a couple of simple scripts to integrate calibre-db with the Unix command-line infrastructure I really didn't need that anymore.

Different strokes for different folks, obviously you've found something that works well for you.
sjfan is offline   Reply With Quote
Advert
Old 08-07-2018, 08:31 PM   #48
davidfor
Grand Sorcerer
davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.davidfor ought to be getting tired of karma fortunes by now.
 
Posts: 24,906
Karma: 47303748
Join Date: Jul 2011
Location: Sydney, Australia
Device: Kobo:Touch,Glo, AuraH2O, GloHD,AuraONE, ClaraHD, Libra H2O; tolinoepos
Quote:
Originally Posted by sealbeater View Post
That's cute but they aren't quite the same thing.


That actually wasn't my response.
That "cute" comment was you response?

Quote:
I guess you are unfortunately stuck in your paradigm.
Which of course makes two of us. And, you probably won't believe this, but I don't think my paradigm is better than yours. But, it is better for me.

And please, don't try and say that you aren't claiming that your paradigm isn't better than everyone else's. Your comments, especially these two, demonstrate that you clearly think it is. Both are clearly intended as an insult as are several of your other comments in this thread.
Quote:
All I have to do is run two commands, depending on what I am doing:

ebook-reader-prep.sh

and

ebook-organize.sh

It's not much work at all, I just like to monitor the output when I am at work.
So, what you are saying is that your scripts are perfect? Every time you add a new book, they get exactly the right metadata and apply them. You don't examine the metadata at all, you don't look at the book at all to see if it actually fits? If so, then I'm amazed and not surprised that you can do it this way. And barely believe it. Based on the metadata sources I've seen, I wouldn't trust them without interaction.

But, I'm not just talking about the original organisation. What I said is also about the much more important question: What I am going to read now. And the only slightly less important: What books do I need to find. For those questions, I need more information than just the title of the book or things I can see in a simple file listing. Unless maybe the file name was a few thousand characters long.
davidfor is offline   Reply With Quote
Old 08-08-2018, 02:14 PM   #49
sealbeater
Banned
sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.
 
Posts: 666
Karma: 1752814
Join Date: Jan 2008
Device: Sony Reader PRS-505 : Onyx Boox Max : Sony PRS-900 : Onyx Kepler Pro
Quote:
Originally Posted by davidfor View Post
That "cute" comment was you response?
it was, I'm not sure where that came from, perhaps an error during editing.

I said cute because you seem to be implying a gui window full of text is analogous to a ssh terminial session. That's....very debatable.

Quote:
Originally Posted by davidfor View Post
Which of course makes two of us. And, you probably won't believe this, but I don't think my paradigm is better than yours. But, it is better for me.
Fair enough. I would never force my way on anyone, I will however talk about my way.

Quote:
Originally Posted by davidfor View Post
And please, don't try and say that you aren't claiming that your paradigm isn't better than everyone else's. Your comments, especially these two, demonstrate that you clearly think it is. Both are clearly intended as an insult as are several of your other comments in this thread.
I do think my paradigm is better than everyone else's. I apologize for being insulting...I was a bit on the defensive. I hope you can forgive me. But yea, my way is better. For me, because I know most of you aren't there but better in an overall sense as well.

It's automated. I don't have to do anything but feed it a directory of books. I can spawn as many threads as my hardware and network can handle. I don't have to hand edit anything. I don't even have to check. If it doesn't find enough information to identify the book positively, it doesn't get moved to my sorted dir.


Quote:
Originally Posted by davidfor View Post
So, what you are saying is that your scripts are perfect? Every time you add a new book, they get exactly the right metadata and apply them. You don't examine the metadata at all, you don't look at the book at all to see if it actually fits? If so, then I'm amazed and not surprised that you can do it this way. And barely believe it. Based on the metadata sources I've seen, I wouldn't trust them without interaction.
I don't have to. That's the whole point. My scripts so far, are perfect. Every time I add a new book, they get exactly the right metadata, I don't need to examine it, why would I?

It amazes me you guys do it any other way.


Quote:
Originally Posted by davidfor View Post
But, I'm not just talking about the original organisation. What I said is also about the much more important question: What I am going to read now. And the only slightly less important: What books do I need to find. For those questions, I need more information than just the title of the book or things I can see in a simple file listing. Unless maybe the file name was a few thousand characters long.

What do you need? You have the series, the title, the author, the year it was published and the ISBN. I could adjust for more but I have no need to. If you had that need, I'm sure a way could be found to include it.


If I want Stephen King, it's not hard to find...if I want The Expanse, it's not hard to find. If I want Odd Thomas or Xanth, same.
sealbeater is offline   Reply With Quote
Old 08-08-2018, 02:18 PM   #50
sealbeater
Banned
sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.
 
Posts: 666
Karma: 1752814
Join Date: Jan 2008
Device: Sony Reader PRS-505 : Onyx Boox Max : Sony PRS-900 : Onyx Kepler Pro
Quote:
Originally Posted by kacir View Post

Also, the "find duplicates" functionality goes way beyond a typical filesystem dedup utilities. It will identify a book as a duplicate even if it has a slightly different title (like an article 'The' at the end of the title instead of beginning) and different author name (missing middle initial, perhaps) and has different formats, such as epub and mobi.
I get what you are saying but for my case, it's not a consideration. I don't have variences in title and authors because it's primary based on ISBN, only if there is none does it search other things but I never have to worry about fuzzy matching because all my books are matched exactly. Any duplicates that are non-binary are marked with (1), (2), etc and that is easy enough to find and remove or move.
sealbeater is offline   Reply With Quote
Advert
Old 08-08-2018, 02:37 PM   #51
Terisa de morgan
Grand Sorcerer
Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.Terisa de morgan ought to be getting tired of karma fortunes by now.
 
Terisa de morgan's Avatar
 
Posts: 6,259
Karma: 11768331
Join Date: Jun 2009
Location: Madrid, Spain
Device: Kobo Clara/Aura One/Forma,XiaoMI 5, iPad, Huawei MediaPad, YotaPhone 2
Quote:
Originally Posted by sealbeater View Post
I do think my paradigm is better than everyone else's. I apologize for being insulting...I was a bit on the defensive. I hope you can forgive me. But yea, my way is better. For me, because I know most of you aren't there but better in an overall sense as well.
Not really. Been there, done that. Nothing is really totally automated. And, if it is, you are leaving something behind. Software is not perfect, data are not perfect, if you check nothing, something is being left behind, and if you are checking, it is not automated. Sorry, I have been too many years in the software business to believe in the infallibility of the software and the quality of the data. Better for you? For sure, our way of doing things is usually the best for us. Better in an overall sense? No, I don't agree.

BTW, ISBN is a good entry point... but not perfect, reuse of ISBN exists.
Terisa de morgan is offline   Reply With Quote
Old 08-08-2018, 05:19 PM   #52
Divingduck
Wizard
Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.Divingduck ought to be getting tired of karma fortunes by now.
 
Posts: 1,161
Karma: 1404241
Join Date: Nov 2010
Location: Germany
Device: Sony PRS-650
Absolutely true and in addition wrong ISBN coding also. Something that everyone in the library world know, equal from what national or international library catalog system or commercial solution we are talking about.
Divingduck is offline   Reply With Quote
Old 08-08-2018, 05:29 PM   #53
Adoby
Handy Elephant
Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.
 
Adoby's Avatar
 
Posts: 1,736
Karma: 26785668
Join Date: Dec 2009
Location: Southern Sweden, far out in the quiet woods
Device: Thinkpad E595, Ubuntu Mate, Huawei Mediapad 5, Bouye Likebook Plus
Quote:
Originally Posted by sealbeater View Post
I don't have to. That's the whole point. My scripts so far, are perfect. Every time I add a new book, they get exactly the right metadata, I don't need to examine it, why would I?
Sounds nice! What do you charge for a copy of your scripts?
Adoby is offline   Reply With Quote
Old 08-08-2018, 05:47 PM   #54
sealbeater
Banned
sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.
 
Posts: 666
Karma: 1752814
Join Date: Jan 2008
Device: Sony Reader PRS-505 : Onyx Boox Max : Sony PRS-900 : Onyx Kepler Pro
Quote:
Originally Posted by Adoby View Post
Sounds nice! What do you charge for a copy of your scripts?
There's no charge.

https://github.com/na--/ebook-tools
sealbeater is offline   Reply With Quote
Old 08-08-2018, 06:08 PM   #55
gbm
Wizard
gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.gbm ought to be getting tired of karma fortunes by now.
 
Posts: 2,087
Karma: 8796704
Join Date: Jun 2010
Device: Kobo Clara HD,Hisence Sero 7 Pro RIP, Nook STR, jetbook lite
Quote:
Originally Posted by sealbeater View Post

I don't have to. That's the whole point. My scripts so far, are perfect. Every time I add a new book, they get exactly the right metadata, I don't need to examine it, why would I?

It amazes me you guys do it any other way.
That is the funnest thing I have read all day, also implausible.

bernie
gbm is offline   Reply With Quote
Old 08-08-2018, 06:12 PM   #56
Adoby
Handy Elephant
Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.Adoby ought to be getting tired of karma fortunes by now.
 
Adoby's Avatar
 
Posts: 1,736
Karma: 26785668
Join Date: Dec 2009
Location: Southern Sweden, far out in the quiet woods
Device: Thinkpad E595, Ubuntu Mate, Huawei Mediapad 5, Bouye Likebook Plus
Quote:
Originally Posted by sealbeater View Post
Thanks! I'll give them a spin.

I've seen the Github page before, but haven't tried them.

(I noticed that some of the scripts seems to use calibre. )

Last edited by Adoby; 08-08-2018 at 06:22 PM.
Adoby is offline   Reply With Quote
Old 08-08-2018, 07:35 PM   #57
ilovejedd
hopeless n00b
ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.ilovejedd ought to be getting tired of karma fortunes by now.
 
ilovejedd's Avatar
 
Posts: 5,111
Karma: 19597086
Join Date: Jan 2009
Location: in the middle of nowhere
Device: PW4, PW3, Libra H2O, iPad 10.5, iPad 11, iPad 12.9
Quote:
Originally Posted by sealbeater View Post
I do think my paradigm is better than everyone else's. I apologize for being insulting...I was a bit on the defensive. I hope you can forgive me. But yea, my way is better. For me, because I know most of you aren't there but better in an overall sense as well.
I do have to wonder if you're trolling. Perhaps by your arbitrary set of criteria, your way is better. Certainly, I'm not arguing that it's better for you.

Based on desktop marketshare though, I'd have to assume most people prefer GUIs and have no interest in learning how to code. If Calibre didn't have a GUI, I expect it'd have much, much, much fewer users.
ilovejedd is offline   Reply With Quote
Old 08-08-2018, 07:44 PM   #58
sealbeater
Banned
sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.
 
Posts: 666
Karma: 1752814
Join Date: Jan 2008
Device: Sony Reader PRS-505 : Onyx Boox Max : Sony PRS-900 : Onyx Kepler Pro
Quote:
Originally Posted by ilovejedd View Post
I do have to wonder if you're trolling. Perhaps by your arbitrary set of criteria, your way is better. Certainly, I'm not arguing that it's better for you.

Based on desktop marketshare though, I'd have to assume most people prefer GUIs and have no interest in learning how to code. If Calibre didn't have a GUI, I expect it'd have much, much, much fewer users.
I'm not a coder.

Nor am I a troll.

GUI actions are inherently harder to script than command line ones.

Also, bandwagon fallacy.
sealbeater is offline   Reply With Quote
Old 08-08-2018, 07:45 PM   #59
sealbeater
Banned
sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.
 
Posts: 666
Karma: 1752814
Join Date: Jan 2008
Device: Sony Reader PRS-505 : Onyx Boox Max : Sony PRS-900 : Onyx Kepler Pro
Quote:
Originally Posted by Adoby View Post

(I noticed that some of the scripts seems to use calibre. )
They do!
sealbeater is offline   Reply With Quote
Old 08-08-2018, 07:47 PM   #60
sealbeater
Banned
sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.sealbeater ought to be getting tired of karma fortunes by now.
 
Posts: 666
Karma: 1752814
Join Date: Jan 2008
Device: Sony Reader PRS-505 : Onyx Boox Max : Sony PRS-900 : Onyx Kepler Pro
Quote:
Originally Posted by gbm View Post
That is the funnest thing I have read all day, also implausible.

bernie
I have no doubt you and I inhabit entirely different realities. Mores the pity for you.

Well, tell you what. Someone else offered some titles in order to see how my scripts handled it, why don't you do the same? The likelyhood is high I would have said book.

I haven't come across a mistake yet.
sealbeater is offline   Reply With Quote
Reply


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
The pros and cons of Sigil slowsmile Sigil 44 02-15-2017 10:30 AM
What Are Your Pros And Cons? MorganM Which one should I buy? 22 09-26-2011 10:38 AM
So you have a Kindle. Pros/Cons emclinux Amazon Kindle 12 09-28-2010 08:20 AM
Accessories Pros and Cons between 2 covers F1Wild Amazon Kindle 5 07-08-2009 06:59 PM


All times are GMT -4. The time now is 03:28 AM.


MobileRead.com is a privately owned, operated and funded community.