Giter VIP home page Giter VIP logo

fmd2's Introduction

Free Manga Downloader 2 (FMD2)

(Forked from https://github.com/riderkick/FMD)

Use the converter if you want to migrate your FMD1 settings and databases. Converter

Download

Latest release

About FMD

This is an active fork of the Free Manga Downloader which is a free open source application written in Object Pascal for managing and downloading manga from various websites. The source code was released under the GPLv2 license.

Some useful arguments that can be used in FMD2:

  • --lua-dofile trigger FMD2 to always load lua modules from file. Only use it when developing a module. It might slowing down FMD2.
  • --no-commit-queue disable commit queue for databases. The same as --max-commit-queue=0 --max-flush-queue=0. It might slowing down FMD2 with large databases due to intense disk write.
  • --max-commit-queue=16 override max number of commit before writing to disk.
  • --max-flush-queue=256 override max number of update before commiting to database engine.
  • --max-big-flush-queue=16384 override max number of update before commiting to database. Internally used when making large update to databases in one go. Be careful when reducing the number it might slowing down FMD2 significantly.
  • --backup-interval=10 override backup databases interval (minutes).

Build instructions

In order to build FMD from the source code, you must install the latest Trunk version of Lazarus and Free Pascal Compiler:
Lazarus

To compile FMD some packages and components are needed. You can download and install most of them by the built-in Online Package Manager (OPM).
The following packages and components are used for building FMD:
Synapse 40.1 (Compile before "InternetTools")
DCPCrypt 2.0.4.1
RichMemo (18.01.2020)
LCL Extensions 0.6.1 (Compile before "Virtual TreeView")
Virtual TreeView 5.5.3.1
MultiLog (18.01.2022)
InternetTools

After everything is installed, open the file md.lpi by using Lazarus IDE.
Make sure to add ssl_openssl to the uses list of Synapse and compile the package again.
To compile and build the source code of FMD select Run -> Build. If everything is ok, the binary file should be in FMD_source_code_folder/bin.

If InternetTools fails to compile because of a missing or incompatible PPU, make sure to compile Synapse first.
By default InternetTools uses FLRE and PUCU for its regex engine. Just copy the FLRE.pas and PUCU.pas to InternetTools\data folder. You can use Sorokin's RegExpr engine that comes with lazarus by adjusting the defines. But it's not recommended since the author of InternetTools prefer FLRE and doesn't always check the Sorokin's RegExpr compatibility when making an update.

If Multilog yield an error about outputchannel doesn't exist, just remove it from package inspector and recompile.

Try to Clean up and build within lazarus if it still fail to compile.

Some other external 3rd party tools and libraries are used as well:
7-Zip
Duktape
WebP (libwebp)
Lua
OpenSSL
SQLite
Brotli

These tools and libraries are not part of the source. You have to either download pre-compiled binaries, compile them yourself or just copy them from the latest FMD releases.

Localization

Translations are stored inside languages folder with .po extension.
In order to translate FMD to your native language you can copy fmd.po and rename it to fmd.xx.po, where xx stand for two-letter language code.
Additionally you can add country code at the end of language code. For reference you can look at http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes and http://en.wikipedia.org/wiki/ISO_3166-1. For example id_ID will be recognized as Bahasa Indonesia (Indonesia).
To translate the content of the file you need to use translation tools like Poedit.
Once you have finished translating all of its content you can launch FMD and it will automatically detect your new languages upon startup.

fmd2's People

Contributors

aaron2550 avatar adustyspectacle avatar ahmadi3d avatar dazedcat19 avatar dobbleg1000 avatar electroshade avatar epigenetic avatar excalibur1010 avatar ghostwritertncs avatar grzesjam avatar havokdan avatar inareous avatar karbonitekream avatar kavin-90 avatar kevin01523 avatar kirayamatosd avatar kmvi avatar lordzidiousback avatar mariolr93 avatar mezen avatar nhkpanda avatar ockeyanto avatar riderkick avatar rs3mk avatar sdxc avatar slasar41 avatar stella-hoshineko avatar tmp341 avatar tokcdk avatar trollam avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.