config | ||
service | ||
stacker | ||
tooter | ||
.gitignore | ||
config.example.yaml | ||
docker-compose.yml | ||
Dockerfile | ||
LICENSE.md | ||
Makefile | ||
README.md |
Kiki - RSS -> MastodonAPI crossposter
Данная программа представляет собой кросспостер из лент RSS в Mastodon-совместимые сервера. Увы, программа пока тестировалась только на Pleroma
⚠ ПРОВЕРКИ НА КОЛИЧЕСТВО ПОДДЕРЖИВАЕМЫХ СЕРВЕРОМ СИМВОЛОВ НЕТ, НЕИЗВЕСТНО КАК ПРОГРАММА СЕБЯ ПОВЕДЕТ ЕСЛИ В НОВОСТИ 500+ СИМВОЛОВ
Руководство по сборке и использованию
Для начала проверьте зависимости:
- golang 1.24.2+
- redis
Далее надо пройтись по всем папкам и сделать go mod tidy
:
cd config
go mod tidy
cd ../stacker
go mod tidy
cd ../tooter
go mod tidy
cd ../service
go mod tidy
cd ../
После уже собрать саму программу:
go build -C service -o ../kiki
В папке с проектом появится исполняемый файл kiki. Перед запуском необходимо заполнить конфигурационный файл config.yaml (пример заполнения представлен в файле config.example.yaml)
instance: https://pleroma.catgirls.asia #Инстанс, на котором находится аккаунт, в который будет происходить постинг
rss_url: https://4pda.to/feed #Новостная лента
sensitive: true #Ставить ли плашку NSFW
redis:
address: localhost:6379 #Адрес Redis
После чего необходимо провести инициализацию для получения секретов аккаунта. СЕКРЕТЫ ХРАНЯТСЯ В ОТКРЫТОМ ВИДЕ, ТАК ЧТО БУДЬТЕ ОСТОРОЖНЫ!
./kiki init
Программа в коммандной строке выдаст ссылку на получение прав. Необходимо по ней перейти, дать разрешения, скопировать OAuth код, вставить в коммандную строку и нажать Enter. После этого должен создаться файл secret.conf.
После этого программу можно запустить командой ./kiki run
. Перед запуском убедитесь что Redis запущен.
Запуск в Docker
Для запуска программы в Docker необходимо создать два файла: secret.conf и config.yaml:
touch secret.conf
touch config.yaml
Далее необходимо собрать Docker образ с утилитой:
docker compose build
После этого необходимо провести инициализацию:
docker compose run --rm kiki /app/kiki/kiki init
Программа в коммандной строке выдаст ссылку на получение прав. Необходимо по ней перейти, дать разрешения, скопировать OAuth код, вставить в коммандную строку и нажать Enter. В файле secret.conf должны появиться данные для использования аккаунта. Проверьте их наличие с помощью команды cat secret.conf
После чего можно запустить контейнер с программой:
docker compose up -d
TODO:
- Первая реализация
- Добавление картинок в пост
- Добавление поддержки Redis
- Упаковка в Docker образ
- Создание Makefile для более удобной сборки
- Поддержка обновления данных из конфига "на лету"
- Добавление поддержки нескольких лент
Отказ от ответственности
Программное обеспечение поставляется "как есть" и автор не несет ответственности на нарушение работы ЭВМ