DeepSeek частенько откровенно врёт)
Столкнулся с этим в процессе настройки как раз PCP+LMS
Кажется я победил этот Crypt::Rijndael нужный для работы плагина Yandex Music.
С ним две проблемы.
Обычно он компилируется при установке, а в случае переноса с другого устройства, обязательно должны совпадать версии perl и процессоры устройств. То-есть в зависимости от даты обновления системы, даже на одной и той же малине, модуль Crypt::Rijndael может оказаться разным. Поэтому, либо сверяем версии perl:
perl -v
У меня например, ответ такой:
This is perl 5, version 40, subversion 1 (v5.40.1) built for arm-linux-gnueabihf-thread-multi-64int
Либо, для надёжности, компилируем самостоятельно.
И вот с компиляцией первая проблема - в PiCorePlayer нет среды разработчика, поэтому команда:
cpan Crypt::Rijndael
из коробки не работает.
Сначала нужно установить среду разработчика (что то около 100мб):
tce-load -wi compiletc
И вот теперь, можно запускать:
sudo cpan Crypt::Rijndael
(у меня понадобилось обязательно через sudo запускать - иначе завершался с ошибкой “access denied”)
Но и это ещё не всё. Вторая проблема в том, что PiCorePlayer держит корневую файловую систему в RAM, и при перезагрузке, всё что вы добавите в корневую файловую систему удаляется. А до перезагрузки, Squeezelite не видит модуль. Чтобы это исправить, и прописать модуль на постоянку, надо выяснить пути, куда установились два файла модуля Rijndael.so и Rijndael.pm. Их видно в конце процесса компиляции (после выполнения команды cpan Crypt::Rijndael)
У меня это были такие пути:
/usr/local/lib/perl5/5.40/site_perl/auto/Crypt/Rijndael/Rijndael.so
/usr/local/lib/perl5/5.40/site_perl/Crypt/Rijndael.pm
Теперь надо прописать эти пути в файл /opt/.filetool.lst.
Выполняем последовательно:
sudo echo "usr/local/lib/perl5/5.40/site_perl/Crypt/Rijndael.pm" >> /opt/.filetool.lst
sudo echo "usr/local/lib/perl5/5.40/site_perl/auto/Crypt/Rijndael/Rijndael.so" >> /opt/.filetool.lst
(но опять же, обратите внимание на правильность пути в вашей системе, а так же на то, что здесь в начале пути не должно быть слеша)
Теперь сохраняем изменения в системе и перезагружаем малину:
pcp backup
sudo reboot
Чтобы установить ffmpeg:
tce-load -wi ffmpeg
Теперь надо в настройках плагина переключить настройки опций AES Decryption Backend и Demux Backend на Crypt::Rijndael и ffmpeg соответственно.
Стабильность работы уже завтра проверять буду ))
Ну и под вопросом, сохранится ли модуль при обновлении системы?
@Dmitry @Сергей_Пугачев ![]()
Спасибо, буду пробовать.
Друзья, а подскажите такой момент. Вот у меня в LMS добавлены Яндекс и Тидал. Я могу зайти в плейлист, в альбом, или в папку избранных треков сервиса, и по нажатию на трек, выбрать опцию “Играть сейчас”, “Играть следующим”, “Добавить в очередь”. Но нет очевидного… “Играть начиная с этого трека”, чтобы по завершении трека, продолжилось воспроизведение того контента который в текущем разделе находится, так как это работает во всех тех же тидалах, кобузах и тд.
Получается надо по одному треку запускать или запустить весь плейлист/альбом и потом уже орудовать в очереди воспроизведения, если я не хочу весь этот плейлист/альбом слушать.
Это у меня повылазило, или таки нет такой опции?
Может есть плагин какой-то, в котором такое реализуемо?
LMS connect?
Не уверен, но вроде там кучка опций есть по этому типу. Не работает с ЯМ (вроде).
Мне правда всегда хватает встроенных опций воспроизведения.
О!!!
Так я даже не знал, что такое есть. Спасибо, буду посмотреть.
Работает с Тидал и Кобюз, позволяет из оригинальных приложений отправлять плейлист/диск/трек в LMS, на мой вкус это удобно.
А разве кнопка Backup в интерфейсе PCP не для этого сделана? Всегда считал, что для таких случаев как раз.
Так вроде значит бэкапит что надо?
Надо попробовать будет как доберусь.
Вот эта команда:
делает тоже самое, что и кнопка о которой вы говорили.
И да. Это сделать надо, иначе после перезагрузки модуля не станет.
У меня вот такое вылезает, Rijndael.so и Rijndael.pm найти не могу.
Спойлер
tc@pCP:~$ sudo cpan Crypt::Rijndael
Loading internal logger. Log::Log4perl recommended for better logging
CPAN.pm requires configuration, but most of it can be done automatically.
If you answer ‘no’ below, you will enter an interactive dialog for each
configuration option instead.
Would you like to configure as much as possible automatically? [yes] yes
Fetching with HTTP::Tiny:
https://cpan.org/authors/01mailrc.txt.gz
Reading ‘/root/.cpan/sources/authors/01mailrc.txt.gz’
…DONE
Fetching with HTTP::Tiny:
https://cpan.org/modules/02packages.details.txt.gz
Reading ‘/root/.cpan/sources/modules/02packages.details.txt.gz’
Database was generated on Tue, 05 May 2026 17:17:02 GMT
HTTP::Date not available
…
New CPAN.pm version (v2.38) available.
[Currently running version is v2.36]
You might want to try
install CPAN
reload cpan
to both upgrade CPAN.pm and run the new version without leaving
the current session.
…DONE
Fetching with HTTP::Tiny:
https://cpan.org/modules/03modlist.data.gz
Reading ‘/root/.cpan/sources/modules/03modlist.data.gz’
DONE
Writing /root/.cpan/Metadata
Running install for module ‘Crypt::Rijndael’
Fetching with HTTP::Tiny:
https://cpan.org/authors/id/L/LE/LEONT/Crypt-Rijndael-1.16.tar.gz
Fetching with HTTP::Tiny:
https://cpan.org/authors/id/L/LE/LEONT/CHECKSUMS
Checksum for /root/.cpan/sources/authors/id/L/LE/LEONT/Crypt-Rijndael-1.16.tar.gz ok
‘YAML’ not installed, will not store persistent state
Configuring L/LE/LEONT/Crypt-Rijndael-1.16.tar.gz with Makefile.PL
Checking if your kit is complete…
Looks good
Generating a Unix-style Makefile
Writing Makefile for Crypt::Rijndael
Writing MYMETA.yml and MYMETA.json
LEONT/Crypt-Rijndael-1.16.tar.gz
/usr/local/bin/perl Makefile.PL – OK
Running make for L/LE/LEONT/Crypt-Rijndael-1.16.tar.gz
cp Rijndael.pm blib/lib/Crypt/Rijndael.pm
Running Mkbootstrap for Rijndael ()
chmod 644 “Rijndael.bs”
“/usr/local/bin/perl” -MExtUtils::Command::MM -e ‘cp_nonempty’ – Rijndael.bs blib/arch/auto/Crypt/Rijn dael/Rijndael.bs 644
gcc -c -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/ local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -march=armv8-a+crc -mtune= cortex-a72 -Os -pipe -DVERSION=“1.16” -DXS_VERSION=“1.16” -fPIC “-I/usr/local/lib/perl5/5.40/core _perl/CORE” _rijndael.c
“/usr/local/bin/perl” “/usr/local/lib/perl5/core_perl/ExtUtils/xsubpp” -typemap ‘/usr/local/lib/perl5/ core_perl/ExtUtils/typemap’ -typemap ‘/root/.cpan/build/Crypt-Rijndael-1.16-0/typemap’ Rijndael.xs > R ijndael.xsc
mv Rijndael.xsc Rijndael.c
gcc -c -D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/ local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -march=armv8-a+crc -mtune= cortex-a72 -Os -pipe -DVERSION=“1.16” -DXS_VERSION=“1.16” -fPIC “-I/usr/local/lib/perl5/5.40/core _perl/CORE” Rijndael.c
In file included from Rijndael.xs:28:
ppport.h:4471:11: warning: “WIDEST_UTYPE” redefined
4471 | # define WIDEST_UTYPE U64TYPE
| ^~~~~~~~~~~~
In file included from /usr/local/lib/perl5/5.40/core_perl/CORE/perl.h:3329,
from Rijndael.xs:25:
/usr/local/lib/perl5/5.40/core_perl/CORE/handy.h:1422:9: note: this is the location of the previous def inition
1422 | #define WIDEST_UTYPE PERL_UINTMAX_T
| ^~~~~~~~~~~~
ppport.h:6145:11: warning: “MUTABLE_PTR” redefined
6145 | # define MUTABLE_PTR(p) ({ void *p = (p); p; })
| ^~~~~~~~~~~
/usr/local/lib/perl5/5.40/core_perl/CORE/handy.h:99:11: note: this is the location of the previous defi nition
99 | # define MUTABLE_PTR(p) ({ void *p = (p); p; })
| ^~~~~~~~~~~
rm -f blib/arch/auto/Crypt/Rijndael/Rijndael.so
gcc -shared -march=armv8-a+crc -mtune=cortex-a72 -Os -pipe -L/usr/local/lib -fstack-protector-strong _rijndael.o Rijndael.o -o blib/arch/auto/Crypt/Rijndael/Rijndael.so
\
chmod 755 blib/arch/auto/Crypt/Rijndael/Rijndael.so
Manifying 1 pod document
LEONT/Crypt-Rijndael-1.16.tar.gz
/usr/local/bin/make – OK
The current configuration of allow_installing_outdated_dists is ‘ask/no’, but for this option we would need ‘CPAN::DistnameInfo’ installed. Please install ‘CPAN::DistnameInfo’ as soon as possible. As long a s we are not equipped with ‘CPAN::DistnameInfo’ this option does not take effect
Running make test for LEONT/Crypt-Rijndael-1.16.tar.gz
“/usr/local/bin/perl” -MExtUtils::Command::MM -e ‘cp_nonempty’ – Rijndael.bs blib/arch/auto/Crypt/Rijn dael/Rijndael.bs 644
PERL_DL_NONLAZY=1 “/usr/local/bin/perl” “-MExtUtils::Command::MM” “-MTest::Harness” “-e” "undef Test:: Harness::Switches; test_harness(0, ‘blib/lib’, ‘blib/arch’)" t/.t t//.t
t/00_load.t … ok
t/modes.t … ok
t/rt/27632.t .. ok
All tests successful.
Files=3, Tests=132, 2 wallclock secs ( 0.23 usr 0.03 sys + 1.22 cusr 0.13 csys = 1.61 CPU)
Result: PASS
tc@pCP:~$
Гемини говорит -
очень странно. Всё шло хорошо, но потом внезапно оборвалось.
Он предлагает просто повторить команду
sudo cpan Crypt::Rijndael
Пробовали?
В папке /home/tc/.cpan/build/Crypt-Rijndael-1.16-0 есть что то?
У меня именно там исходники сложены. А у вас, судя по логам в папке
/root/.cpan/build/Crypt-Rijndael-1.16-0/
То-есть у вас компиляция от имени root выполняется. Может быть в этом дело?
Попробуйте от имени tc (стандартный юзер picoreplayer-а) но с sudo.
Удивительно, но это помогло
Rijndael.so и Rijndael.pm установились по месту.
Но теперь уже не могу корректно завершить backup, вылезает ошибка:
Спойлер
tc@pCP:~$ pcp backup
[ INFO ] Copying existing backup to /mnt/mmcblk0p2/tce/mydatabk.[tgz|tgz.bfe] .. Done.
Backing up files to /mnt/mmcblk0p2/tce/mydata.tgz
There was an issue, see /tmp/backup_status.
[ ERROR ] Show backup_status…
tar: removing leading ‘/’ from member names
[ ERROR ] Backup failed.
/usr/local/bin/pcp: line 126: pcp_backup_nohtml: not found
Пытаюсь разобраться с Чат ГПТ, но пока не получатся.
UPD
Перегрузился с некорректно завершённым скриптом бэкапа (в интерфейсе кнопкой тоже выдаёт ошибку) - всё запустилось нормально, FLAC в Яндекс Музыке работает, загрузка процессора по htop ~10-15%.
Возможно, это потому что у меня не “чистый” PiCorePlayer, а PiCore AP от @igor63r
Игорь, можете прокомментировать решение выше от @taravasya в свете PiCoreAP?
Вот эти команды, судя по всему, выполнили с ошибкой. Обратите внимание, там в начале пути, не должно быть слеша.
Надо теперь отредактировать файл
/opt/.filetool.lst
и убрать в начале путей слеш.
Спасибо, помогло!![]()
Да, забыл уточнить, Rpi3B+ сборка 64 бит.
в настройках LMS можно настроить политику воспроизведения. Можно заставить играть плейлист целиком, а также прописать что делать когда заканчивается альбом или плейлист. Малина не под рукой, не смогу показать, но всё настраивается
Да вот перерыл всё, не могу найти где именно это сделать. Будьте добры, когда будет возможность, киньте в меня скрином )))
Вот одна настройка, она у меня включена (в extra settings плеера):
Вот ещё одна настройка (в основных настройках плеера):
Но это не том. Там рандомы и миксы активируются. А хотелось бы просто плейлист дальше слушать.




