LINUX.ORG.RU

MyLibrary 4.2.1

 , , домашняя библиотека, ,


4

2

Состоялся выпуск каталогизатора домашней библиотеки MyLibrary 4.2.1. Код программы написан на языке программирования С++ и доступен (GitHub, GitFlic) под лицензией GPLv3. Графический интерфейс пользователя реализован с помощью библиотеки GTK4. Программа адаптирована для работы в операционных системах семейства Linux и Windows. Для пользователей Arch Linux в AUR доступен готовый сценарий сборки пакета. Для пользователей Windows доступен экспериментальный инсталлятор.

MyLibrary каталогизирует файлы книг в формате fb2, epub, pdf, djvu, odt, txt, md, как доступные напрямую, так и упакованные в архивы (zip, 7z, jar, cpio, iso, tar, tar.gz, tar.bz2, tar.xz, rar), и создаёт собственную базу данных, не изменяя исходные файлы и не меняя их положения. Для каталогизации также доступен формат fbd (файл книги упакованный в архив вместе с файлом с расширением fbd, содержащем тэг description формата fb2). В формате fbd могут храниться любые файлы, не только книги. Контроль целостности коллекции и её изменений осуществляется за счёт создания базы данных хэш-сумм файлов и архивов.

Реализован поиск книг по различным критериям (фамилия, имя, отчество автора, название книги, серия, жанр) и их чтение через программу, по умолчанию установленную в системе для открытия соответствующих форматов файлов. При выборе книги отображаются аннотация и обложка книги, если таковые доступны. Поддерживается отображение списка файлов, входящих в коллекцию; списка книг, входящих в конкретный файл; списка авторов коллекции; списка книг, для которых пользователь создал заметки.

Возможны различные операции с коллекцией: обновление (осуществляется проверка всей коллекции и сверка хеш-сумм доступных файлов), быстрое обновление (без пересчёта хеш-сумм), экспорт и импорт базы данных коллекции, добавление книг в коллекцию и удаление книг из коллекции, добавление в коллекцию папок с книгами, добавление в коллекцию архивов с книгами (в том числе с упаковкой книг и/или папок в процессе добавления), копирование книг коллекции в произвольную папку, перемещение книг из коллекции в коллекцию. Доступно ручное редактирование записей о книгах в базе данных. Создан механизм закладок для быстрого доступа к книгам. Есть возможность создавать пользовательские заметки к книгам. Опционально доступен интерфейс для создания и подключения плагинов. Есть возможность открыть документацию по библиотекам MLBookProc и MLPluginIfc (входят в состав проекта), если таковая создана в процессе сборки.

Значимые изменения с момента выхода версии 4.0:

  • Добавлена поддержка форматов odt, txt и md.
  • Для формата fb2 добавлено отображение первой страницы в качестве обложки, если обложка отсутствует.
  • Добавлена возможность включать в коллекцию любые файлы в формате fbd.
  • Осуществлён переход на использование ImageMagick для работы с изображениями (для сборки теперь требуется Magick++).
  • Переработан парсер формата djvu.
  • Для Windows включён сбор метаданных из djvu-файлов (до этого был отключён из-за некорректной работы функции ddjvu_document_create_by_filename_utf8 в сочетании с ddjvu_document_get_anno).
  • Добавлены тесты (рекомендуется запускать после конфигурирования, перед сборкой).
  • Улучшена работа сборки на базе OpenMP.
  • Ускорена работа функции отображения авторов коллекции.
  • Переработан алгоритм поиска, добавлена возможность настраивать процент совпадения поисковых результатов с запросом.
  • Добавлена возможность поиска с точным совпадением результата.
  • Переработаны и ускорены алгоритмы работы с кодировками и их преобразованием.
  • Для списка файлов и списка авторов добавлена возможность выводить книги в отдельном окне без сброса результата поиска файлов или авторов.
  • В инсталлятор для Windows добавлены официально поддерживаемые плагины (требуется подключение через соответствующее меню).
  • Другие небольшие исправления и улучшения.

Дополнительно можно отметить обновление плагина MLInpxPlugin, предназначенного для импорта коллекций из inpx файлов (доступен под лицензией GPLv3 на altlinux.space и GitHub). Для пользователей Arch Linux в AUR доступен сценарий сборки готового пакета.

Также опубликован релиз плагина MLFBDPlugin, предназначенного для создания файлов в формате fbd. Имеется возможность добавления любых файлов, не только книг. Плагин доступен на altlinux.space и GitHub под лицензией GPLv3. Для пользователей Arch Linux в AUR доступен сценарий сборки готового пакета.

>>> Подробности на OpenNET

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от ugoday

В какую директорию файл положите?

Если уж извращаться, можно симлинков наделать вместо тегов. :)

dataman ★★★★★
() автор топика
Последнее исправление: dataman (всего исправлений: 1)
Ответ на: комментарий от dataman

Можно. Получится колхозный каталогизатор на симлинках.

ugoday ★★★★★
()
Ответ на: комментарий от sparkie

База какая?

Во freeLib – SQLite, а в главной героине разбираться лень. :)

dataman ★★★★★
() автор топика
Ответ на: комментарий от Iron_Bug

да нифига, это не является чем-то монструозным. каталогизатор это 2 таблицы граф + элементы, возможно еще 4 таблицы теги + метаданные. на питухоне за вечер накидал чтоб софт каталогизировать, но мне был десктопное решение.

bernd ★★★★★
()
Ответ на: комментарий от UriZzz

это только дерево, там нет метаданных. метаданные хорошо только одна фс умела, которую я пользовал - BFS. под лялих ее в rw так и не завезли. ну точнее завезли, но в крайне экспериментальном виде потому, что линух тупее beos и не мог полноценно с ней работать.

bernd ★★★★★
()
Последнее исправление: bernd (всего исправлений: 1)
Ответ на: комментарий от bernd

но мне был десктопное решение.

в этом и проблема. любой интерфейс к «универсальным решениям» становится дико монстрозным и его неудобно использовать. поэтому такой монстрозный софт в основном не пишут. это бессмысленно.

Iron_Bug ★★★★★
()
Ответ на: комментарий от bernd

это только дерево, там нет метаданных.

Всё у нас есть.

➜  tmp touch file.fb2
➜  tmp setfattr -n user.жанр -v бредятина ./file.fb2
➜  tmp getfattr -n user.жанр --only-values file.fb2
бредятина%
ugoday ★★★★★
()

«Мимопроходил», может кто-нибудь подскажет как называется книга или серия книг.

Главный герой - андройд, в которого «засунули» сознание древнего ученого.

Предыстория - люди проиграли звездную войну другой расе и свалили на тихую планету и решили там сидеть тихо и переждать до лучших времен.

А чтобы люди не слишком в технологии развивались, на орбите повесили спутник, который долбил бы по слишком развитым людям.

Но вот там началась между ними раскол, ученый предвидел, что его убьют, создал андройда и спрятал его надолго от людских глаз.

Ну вообщем прошло несколько веков, общество скатилось к позднему средневековому.

ну и с этого начинается

может кто вспомнит как книга называется?

Nurmukh ★★★
()
Ответ на: комментарий от Nurmukh

Посмотрите «Князя Света» Желязны. Может и не та книга, что вы загадали, но судя по всему вам понравится.

ugoday ★★★★★
()
Ответ на: комментарий от Iron_Bug

Слово «монстрозный», оказывается существует! И употребляется только в отношении кактусов, одним из которых и является вот эта вот программа MyLibrary. Пожалуй, только amule написана хуже.

Irma ★★★
()
Ответ на: комментарий от bernd

каталогизатор чего угодно

То-то KDE-шники первое что делают в новой системе — это выпиливают из нее baloo :)

Zeta_Gundam
()
Ответ на: комментарий от ugoday

Ну примерно назначение становится понятно.

С аргументом про каталоги vs теги я в целом согласен, но с другой стороны, не помню, чтобы приходилось прям как-то «бороться с ограничениями ФС», любой файл находится за минуту-другую. Заполнить руками карточку книги это тоже действие не то чтобы бесплатное, встает вопрос о соотношении затрат и пользы. Хорошо если метаданные есть в самом файле или их можно подтянуть из централизованной базы данных, как делает Zotero с CrossRef; в противном случае применимость весьма ограничена.

Zeta_Gundam
()
Последнее исправление: Zeta_Gundam (всего исправлений: 1)

MyLibrary 4.2.1.

4.2.1.

Не рекомендую к использованию. Давно не видел такого глючного софта!

Аж любопытно, не ужели спустя столько версий, разработчик так и не довёл своё творение до кондиции? 🤔

UriZzz ★★
()
Ответ на: комментарий от UriZzz

А может это я не дошёл до понимания его концепции. :)
Ещё бы кто-нибудь попробовал…

dataman ★★★★★
() автор топика
Ответ на: комментарий от bernd

просто так не сможешь прицепить атрибутом фотку предмета, например

А если кодировать её в base64? Какое ограничение на длину значения атрибута?

dataman ★★★★★
() автор топика
Ответ на: комментарий от Nurmukh

может кто вспомнит как книга называется?

DeepSeek и Duck.ai «вспомнили» чушь. Не удивлён.
Хотя я совсем не старался улучшить описание сюжета. :)

dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

The Linux kernel allows extended attributes to have names of up to 255 bytes and values of up to 64 KiB,[15] as do XFS and ReiserFS, but ext2/3/4 and btrfs impose much smaller limits, requiring all the attributes (names and values) of one file to fit in one «filesystem block» (usually 4 KiB).

Можно и в base64 маленькую иконку засунуть. Но это дичайше кривая хрень. Храните снимки отдельно и положите в метаданные путь к ним.

ugoday ★★★★★
()

Интересно, почему у всех библиотек/каталогизаторов всратый дизайн, в стиле школьника, узнавшего про css в 1998 году.

Romanych
()

Графический интерфейс пользователя реализован с помощью библиотеки GTK4.

Для пользователей Arch Linux в AUR доступен готовый сценарий сборки пакета. Для пользователей Windows доступен экспериментальный инсталлятор.

Вся суть GTK4.

P.S.: А что для flatpack не завезли? Это же хоть какой-то способ запуска GTK4 приложений на не роллинг Linux.

AlexVR ★★★★★
()
Ответ на: комментарий от dataman

64k max атрибут, а для многих фс еще ниже или вообще не поддерживается

bernd ★★★★★
()
Ответ на: комментарий от hobbit

Что то я не догоняю. Установил freelib. Документации вообще никакой. Видит только два формата epub и fb2. У меня техническая литература и вся в pdf или djvu. Стало быть бесполезня для меня прога.

rustamych ★★★★
()
Ответ на: комментарий от troizet

В calibre их слишком много. Легче описать что нужно. Тут все просто. 1) Морда как у calibre (поиск по тэгам или авторам, обложка книги), 2) поддержка всего двух форматов pdf и djvu, 3) запуск просмотра книги в программе, что я укажу, и последнее важное 4)возможность хранить библиотеку в облаке, чтобы можно было использовать локально (с координацией изменений в облаке) с любого компа. С последним у calibre беда. Я обсуждал это на их форуме. Прога не дает возможности использовать хранилище гугла или мега, сам автор об этом говорит. Постоянно теряет книги. При добавлении в хранилище и скачивании себе локально надо каждый раз запускать постройку индекса. Часто новые книги не появляются в списке, хотя локально существуют. На форуме отметили, что можно использовать dropbox. Попробовал, да, работает без потери, но постройку индекса надо все равно делать каждый раз при добавлении новой книги. Да и размер dropbox всего 2 гига бесплатно. А платит не хочу, в mega у меня 100гб бксплатно.

rustamych ★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.