nepilsonis: (uteshenie)
Amazon отключил от своих серверов мои киндлы с кнопками. Теперь на них залить книги можно только в формате mobi по проводу, и больше никак.

Так что я сделал jailbreak, и поставил koreader.

Теперь книжки можно вливать прямо на книгу по ssh, понимаются форматы fb2.zip и mobi.
А ещё могно прямо книгой скачивать их с моего домашнего webdav хранилища, и даже синхронизировать через это же хранилище, или через специальный сервис.

В минусах — больше не работает всемирный 3G, для любых операций с внешним миром нужен WiFi.
И батарея жрётся уже почти по-смартфонному. А учитывая, что моим устройствам уже почти 15 лет — их батареи и с родным софтом работали порядка недели. Так что зарядка, похоже, понадобится раз в 2-3 дня. Наверное. Не успело всё это ещё устаканиться, не успели выработаться процедуры и привычки.

Для этой читалки есть море плагинов
https://omer-faruq.github.io/appstore.koplugin/

AnnotationSync (dani84bs) vs Syncery (d0nizam) — сравнение


Источники: README обоих репозиториев + структура файлов (на 2026-06-29).
- AnnotationSync: https://github.com/dani84bs/AnnotationSync.koplugin (120★, ~10 файлов)
- Syncery: https://github.com/d0nizam/syncery.koplugin (10★, модульная, 123 теста, AGPL-3.0)


1. Позиционирование



  • AnnotationSync — «синхронизатор аннотаций + прогресса + настроек приложения KOReader» через штатное облако KOReader. Зрелее по аудитории, компактный, merge по timestamp.

  • Syncery — «синхронизатор читательских данных (прогресс, аннотации, метаданные книги, render-настройки) + триггер БД статистики/словаря» с упором на self-hosted Syncthing (p2p) и облако. Моложе по аудитории, но крупнее и архитектурно строже (модули-движки, чистая логика отдельно от I/O, юнит-тесты, i18n).


2. Транспорт (как ездят данные) — КЛЮЧЕВОЕ РАЗЛИЧИЕ


AnnotationSync Syncery
Способ Только штатный Cloud Storage KOReader (Dropbox/WebDAV/FTP) Syncthing (p2p, без третьей стороны) + Cloud (через Cloud storage+)
Согласованность по облаку Syncthing — eventual; Cloud — immediate
Своя инфра без аккаунтов нет (нужно облако) да (Syncthing/KOSyncthing+)

Syncery шире: даёт настоящий device-to-device без облака. AnnotationSync завязан на облачного провайдера.


3. Что синхронизируется (охват) — ВЗАИМОДОПОЛНЯЮЩИЕ ОСИ


Категория AnnotationSync Syncery
Highlights/notes/bookmarks ✅ ✅ (+ под-тоглы по типам, фильтр по расширению)
Reading progress ✅ (требует dev-сборку KOReader!) ✅
Настройки приложения (жесты, хоткеи, page-overlap…) ✅ уникально (выборочно, с failsafe-исключениями паролей) ❌
Метаданные книги (статус, рейтинг, коллекции, summary, кастомный title/author, рукотворный TOC) ❌ (по README) ✅ уникально
Render-настройки (шрифт/поля per-book) ❌ ✅ (off by default)
Статистика и словарь (триггер штатных плагинов) ❌ ✅ (по таймеру 1–1440 мин)

Грубо: AnnotationSync умеет то, чего нет у Syncery (синк настроек KOReader), а Syncery — то, чего нет у AnnotationSync (метаданные книги, render, статистика/словарь).


4. Разрешение конфликтов — Syncery строже



  • AnnotationSync: «smart merge» по сравнению timestamp’ов (фактически last-write-wins по времени правки) + failsafe против затирания при первой настройке устройства.

  • Syncery: настоящий 3-way merge (local / remote / per-device ancestor) с tombstone’ами, отдельной решёткой статусов (complete ⟂ abandoned не сливаются молча, а выносятся на разрешение), 2-way резолвер для Syncthing .sync-conflict-*, журнал событий NDJSON. Архитектурно ближе к git-merge.


5. Прогресс: тонкость выравнивания



  • AnnotationSync: «Sync by last word of page» — для reflowable EPUB позиция привязывается к последнему слову страницы, чтобы держать место при разных экранах/шрифтах/полях. Удобная фишка.

  • Syncery: запись (percent, page, total_pages, xpath, revision, timestamp, device_id), LWW по (revision,timestamp), окно свежести прогресса. Тоже устойчиво к reflow (xpath), но без явной «last-word»-привязки.


6. UI и обзор



  • Оба: имя устройства, «прыжок к прогрессу другого устройства», корзина с восстановлением.

  • Syncery богаче: Progress Browser (кто и куда дочитал по всем книгам) + Annotation Browser (все хайлайты по всей библиотеке), мастер первого запуска (consent-first), smart-заголовок статуса, диагностика, миграция хранилища.


7. Требования / зрелость



  • AnnotationSync: для Progress Sync и интеграции с облаком требуется dev/nightly KOReader (на стабильной — функции серые). Интеграционные тесты через kodev.

  • Syncery: «достаточно свежий KOReader»; для облака — Cloud storage+, для p2p — Syncthing/KOSyncthing+. Чистая логика юнит-тестируется (123 теста), AGPL-3.0, есть локализация (bg).


8. Важное для парка K3 (non-touch)



  • Syncery v1.1.0 — нетач-навигация мастера проверена на живых K3 (FocusManager), работает.

  • AnnotationSync — нетач-пригодность в README не заявлена; статус неизвестен (единственный пункт, ради которого стоит заглянуть в main.lua/menus.lua — проверить key_events/FocusManager, если гонять его на K3).


Итог



  • Это не «кто лучше», а две частично пересекающиеся ниши. Пересечение — highlights/notes/bookmarks + progress.

  • Бери AnnotationSync, если главное — синк настроек самого KOReader между устройствами (жесты/хоткеи/оформление) и/или ты на dev-сборке и хочешь «last-word» выравнивание; плюс она популярнее и проще.

  • Бери Syncery, если нужны метаданные книги (статус/рейтинг/коллекции/summary/TOC), render per-book, триггер статистики/словаря, self-hosted p2p без облака и более надёжный 3-way merge; и важна подтверждённая нетач-работа на K3.

  • Конфликт сосуществования: обе пишут аннотации в одни и те же KOReader-структуры — держать их одновременно активными на одном устройстве рискованно (двойной merge/перетягивание). Для позиции уже есть kosync (korrosync) — её ниша третья (только прогресс через kosync-протокол), с обоими плагинами она по данным аннотаций не конфликтует.


Открытые «белые пятна» (README не закрывает)



  1. Нетач-пригодность AnnotationSync (key_events/FocusManager) — нужен взгляд в код/на устройстве.

  2. Точная модель merge AnnotationSync (timestamp-LWW vs что-то тоньше) — нужен взгляд в annotations.lua/manager.lua.




Сгенерировано из annotationsync-vs-syncery.md, 2026-06-29.

nepilsonis: (Default)
Инфлюэнсеры и прочие властители дум

Если вам кажется, что что-то рассказывать на публику и при этом что-то есть — нормально, то вы ошибаетесь.
nepilsonis: (Default)
Раньше попаданцы любили спеть аборигенам Высоцкого.
Теперь же в моде песни «король и шут».
nepilsonis: (che)
С исчезновением слотов для microSD карточек в смартфонах и смертью массовых цифровых фотоаппаратов оказалось. что обычному человеку в домашнем хозяйстве microSD карточки, собственно, и не нужны.
Их просто некуда девать.

А ведь их максимальная ёмкость превысила терабайт.
nepilsonis: (Default)
На шестом десятке лет жизни полюбил томатный сок.
Солёный, магазинный, из пакетов.
nepilsonis: (Default)
Стандарт на публикацию информации, нужной для подключения к WiFi сети в форме QR кода, существует уже больше 15 лет.

Тем не менее, я продолжаю время от времени видеть в общественных местах бумажки, где буквами написаны имя сети и пароль к ней.
А вот qr коды для подключения в подобных местах я за всю свою жизнь видел не более пары раз.
nepilsonis: (Default)
Большинство неудобств, которые, как я наблюдаю, люди испытывают при работе со сложным программным обеспечением, как правило, связаны с тем, что они пытаются работать каким-то определенным образом с одной конкретной программой, а не пытаются найти способ решить проблему / задачу.
nepilsonis: (Default)
Бекап домашних компов в облако:
Backblaze или Wasabi?
nepilsonis: (Default)
https://rus.delfi.lv/51164891/latvija/56300192/brishkens-ne-tak-legko-privlech-inostrannyh-specialistov-iz-za-trebovaniy-znaniya-gosyazyka


Министр сообщения Каспарс Бришкенс ("Прогрессивные"), объясняя в интервью Spried ar Delfi причины хаоса с новыми электропоездами, упомянул, в том числе, и то, что госпредприятия не могут привлечь на работу иностранных специалистов, поскольку выдвигается требование владения государственным языком.


Так и хочется спросить, как сейчас модно в интернетах, «а что случилось?». Ведь нормально же играли?
nepilsonis: (Default)
С новым годом!
nepilsonis: (Default)
После работы зашёл в лидо «дзирнавас» скушать на свежем воздухе пироженку с кофе.
Кофе кончилось на первой трети пироженки, но пока ходил за стаканом кофе — мои 2/3 недоеденных пироженки убрали, а столик заняли.

Пил кофе с без ничегом за соседним столиком и страдал.
nepilsonis: (Default)
Авторы гуглохрома сломали совместимость с windows 7, отчего она сломалась у пресловутого «электрона» (надеюсь, в следующем десятке перерождений у его авторов будет печень трески), после чего пошла ожидаемая волна неработающих на windows 7 программ, сделанных на «электроне».

Отдельно занимательно, что большинство из них имеют функции проверки наличия обновлений и/или их автоматической или полуавтоматической установки, но вот функция «новая версия не поставится на вашей системе, так что не надо ничего делать» оказалась слишком сложной концепцией для 2023 года.
nepilsonis: (Default)
Чего-то вдруг решил заплатить за доступ к порталу rus.delfi.lv.
Полез платить, и внезапно увидел, что для этого нужно будет читать дельфи, залогинившись!

И раздумал.
nepilsonis: (che)
Клиент программы «Nextcloud» сегодня предложил обновиться, но «не смог».
Попытка запуска установщика руками показала, что разработчики говорят

mgallien commented 3 days ago

We only support Windows 10 version 1709 and later versions since the 3.2.0 release of desktop client.
It is not possible to use newer features and still support old Windows versions.
We still support Windows 8.1 with the 3.1 minor release (current version is 3.1.3).

(https://github.com/nextcloud/desktop/issues/3245#issuecomment-830143993)

Вот козлы.
Я ещё могу понять, когда так делают “гиганты индустрии”.
А эти-то куда полезли?

Жаль.
Пока остановлюсь на работающей версии, а если её сломают — сменю и облако.
Менять самую удобную ОС (последнюю, где ещё где-то работают шрифты с хинтингом без субпиксельного размытия) из-за больных фантазий нескольких разработчиков я не буду. Лучше выкину их самих.
nepilsonis: (Default)
Стандартная программа работы с SMS Samsung для отправленных мной с подтверждением доставки SMS может показать, когда сообщение было отправлено, а когда — доставлено адресату. Однако для принятых SMS показывает только время приёма, но не время отправки.

Программа «сообщения» от Гугл — наоборот. Она показывает время отправки и время приёма моим телефоном чужих сообщений, но не показывает, когда было доставлено адресату моё сообщение с уведомлением о доставке. И, возможно, вообще не показывает, было оно доставлено, или всё ещё где-то бродит.

Совершенство существует: программа EvolveSMS показывает и то, и другое, и ещё умеет отправлять сообщения с небольшой задержкой, на случай, если вдруг заметил ошибку или передумал, а так же отправлять сообщения в назначенный момент времени.

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

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

Upd:
не так давно обновление системного софта принесло во встроенную самсунговскую программу SMS поддержку новых смсок, которые через IP.
nepilsonis: (Default)
Наше / Bokura no

Это как «волшебница Мадока», только вместо сеттинга про девочек-волшебниц тут детишки, пилотирующие Огромных Боевых Человекоподобных Роботов.

Уже с серии третьей вы погружаетесь в пучину безысходности.
Зато героями тут настоящие люди, с настоящими проблемами.
nepilsonis: (Default)
Латвия готовится пробить очередное дно. Латвия — не для нищих и отсталых, так что отапливаться дровами нельзя. Нужно что-то более дорогое и зависящее от инфраструктуры.

https://rus.delfi.lv/domsad/kvartira-dom/nikakih-drov-varam-gotovitsya-obyavit-vojnu-pechnomu-otopleniyu.d?id=51743031
В следующем году Рижская дума должна будет создать регистр отопительного оборудования, чтобы понять, сколько жителей используют печное отопление. В рамках борьбы с загрязнением воздуха Министерство защиты среды и регионального развития (VARAM) предлагает жителям Латвии отказаться от дров и подключиться к системе центрального отопления или же использовать более современные и дружественные для окружающей среды виды отопления.

В июне на заседании госсекретарей был озвучен План по борьбе с загрязнением воздуха на 2019-2030 год, в котором в качестве одной из мер по улучшению качества воздуха был назван отказ от дровяных печей. По данным VARAM, домашние хозяйства вместе с сектором услуг образуют 60% от общего загрязнения воздуха, в то время как производство "дает" всего 25%.
nepilsonis: (Default)
Дочитал «Звёздный огонь» Владимира Серебрякова.
Отличная современная старая добрая космическая киберпанковая фантастика.
Полагаю, понравится тем, кому понравился «The Expanse».

Expand Cut Tags

No cut tags

Profile

nepilsonis: (Default)
nepilsonis

June 2026

M T W T F S S
1234567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Syndicate

RSS Atom

Style Credit

Page generated Oct. 7th, 2026 04:34
Powered by Dreamwidth Studios