Кажется, базовый функционал AppDealer готов. Можно устанавливать и удалять приложения, а также выводить список установленных на данный момент. При удалении приложения помещаются в аналог "корзины", которую можно почистить командой purge.
Перед тем, как начинать плавно причесывать код, хотелось бы сделать еще несколько функциональных нововведений: возможность посмотреть, что сейчас в корзине, (возможно) восстановление файлов из корзины, а также установка приложения с переопределенными аттрибутами (имя файла, название команды, название приложения), и изменение аттрибутов уже установленных.
Впрочем, приложение можно начинать использовать и без этого. Для этого достаточно скомпилировать main.scm с помощью chicken-scheme, предварительно установив egg sqlite3.
После допиливания базового функционала хотелось бы сконцентрироваться на рефакторинге. И я даже не про приведение к более функциональному стилю: не знаю, получится ли вообще такое, особенно если учесть, что по сути каждое действие имеет "сторонние эффекты", и чистых функций почти нет. Я говорю хотя бы про переход от include к import (ибо, кажется, в chicken-scheme нет защиты от двойного включения), более адекватная обработка ошибок (а то сейчас валятся стэктрейсы), и, возможно, какая-нибудь система сборки (хотя бы скрипт, проверяющий наличие зависимостей).
И все же, несмотря на то, что работа еще далека от полного завершения, определенные выводы можно сделать уже сейчас. Дало ли мне это какие-нибудь новые знания? Да, но не совсем ожидаемые: до этого мне не приходилось работать с SQLite. Было ли написание кода на Scheme чем-нибудь особенным? Скорее нет. Возможно, причина в том, что у меня не получилось достигнуть "дзена" ФП, и вся кодовая база -- натягивание совы на глобус. Было ли мне интересно и весело? Да, конечно, иначе бы оно так далеко не зашло. Буду ли я использовать этот софт? Вероятно. Я довольно часто пользуюсь AppImage, ибо предпочитаю его, а не flatpak, при отсутствии пакета в репозиториях. Будет ли его использовать кто-то другой? Зависит от кого-то другого...
Напоминаю, что на проект можно посмотреть вот здесь:
https://git.disroot.org/lambda-yam/appdealer
С удовольствием посмотрю ваши идеи, ПРы, жалобы и угрозы.