The release of the MyLibrary 4.2.1 home library cataloger has taken place. The program code is written in C++ and is available (GitHub, GitFlic) under the GPLv3 license. The user interface is implemented using the GTK4 library. The program is adapted for use in Linux and Windows operating systems. A ready-to-use package build script is available in AUR for Arch Linux users. An experimental installer is available for Windows users.
MyLibrary catalogs book files in fb2, epub, pdf, djvu, odt, txt, md formats, both directly and packed in archives (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), and creates its own database without modifying the original files or changing their locations. The fbd format (a book file packed in an archive along with a file with the fbd extension containing a description tag in fb2 format) is also available for cataloging. Any files, not just books, can be stored in fbd format. Collection integrity and changes are controlled by creating a database of file and archive hash sums.
The program implements book searching based on various criteria (author's last name, first name, patronymic, book title, series, genre) and reading through the program set as default in the system for opening the corresponding file formats. When selecting a book, a synopsis and cover are displayed if available. Support is provided for displaying the list of files in the collection; the list of books in a specific file; the list of authors in the collection; and the list of books for which the user has created notes.
Various operations with the collection are possible: updating (checks the entire collection and verifies the hash sums of available files), quick update (without recalculating hash sums), exporting and importing the collection database, adding books to the collection and removing books from the collection, adding folders with books to the collection, adding archives with books to the collection (including packaging books and/or folders during the addition process), copying books from the collection to an arbitrary folder, moving books from one collection to another. Manual editing of book records in the database is available. A bookmarking mechanism for quick access to books has been created. There is an option to create user notes for books. An interface for creating and connecting plugins is optionally available. Documentation for the MLBookProc and MLPluginIfc libraries (which are part of the project) can be opened if created during the build process.
Significant changes since the release of version 4.0
- Support for odt, txt, and md formats has been added.
- For the fb2 format, the first page will be displayed as the cover if no cover is present.

- The ability to include any files in fbd format in the collection has been added.
- Transitioned to using ImageMagick for image processing (Magick++ is now required for the build).
- The djvu format parser has been redesigned.
- For Windows, metadata collection from djvu files is now enabled (previously disabled due to the incorrect operation of the ddjvu_document_create_by_filename_utf8 function in conjunction with ddjvu_document_get_anno).
- Tests have been added (recommended to run them after configuration and before building).
- The build performance based on OpenMP has been improved.
- The function for displaying collection authors has been accelerated.
- The search algorithm has been redesigned, allowing the configuration of the matching percentage of search results with the query.

- The ability for exact match searches has been added.
- Algorithms for handling encodings and their conversion have been reworked and accelerated.
- For the file list and author list, the ability to display books in a separate window without resetting the search results of files or authors has been added.

- The installer for Windows now includes officially supported plugins (connection required through the appropriate menu).
- Other minor fixes and improvements.
Additionally, the update of the MLInpxPlugin, designed for importing collections from inpx files (available under GPLv3 on altlinux.space and GitHub), can be noted. A build script for the ready package is available in AUR for Arch Linux users.
The release of the MLFBDPlugin, designed for creating files in fbd format, has also been published. It is possible to add any files, not just books. The plugin is available on altlinux.space and GitHub under GPLv3. A build script for the ready package is available in AUR for Arch Linux users.

Source: opennet.ru



