там несколько финтов - первое это скопировать оригинальную smartshare куда-нибудь (у меня /media/cryptofs/root/media), потом сделать mount -o bind и перемонтировать "оригинальную" нашей "копией", а потом можно открывать в копии app1.js и искать позже скину конкретные изменения файлика, там надо в паре мест сделать header.hide() но код очень сложный (или я очень тупой в жабаскрипте) и что-то там править глобальное очень сложно...целый день сегодня убил чтобы монтировалось все правильно, запускался нужный мне проигрыватель ott видео и чтобы прятались эти самые огромные headerы. Еще бы конечно хорошо, чтобы флешка открывалась автоматически, но корейский исходный ход сложнее моего понимания. Любая помощь экспертов в жабаскрипте приветствуется.
Что касается скомпилить oscam - проблемы скомпилить бинарник не вижу, но я не уверен что "просто его поставить" хватит. Если кто объяснит как он "помогает" смотреть телевизор (эмулирует какое-то устройство или как) то можем попробовать поковыряться
andlommy писал(а):Что касается скомпилить oscam - проблемы скомпилить бинарник не вижу, но я не уверен что "просто его поставить" хватит. Если кто объяснит как он "помогает" смотреть телевизор (эмулирует какое-то устройство или как) то можем попробовать поковыряться
Плагин расшифровывает платный телеканал со спутниковой тарелки в режиме реального времени, путем получения временных ключей для расшифровки с "пиратских" серверов кардшаринга (в плагине укатываются сервер, порт, ip, пароль). Обычно это платный сервис. Также используется для расшифровки платных каналов со статичными ключами (BISS ключами). Очевидно что надо уметь работать с 'девайсами' (dvb модули) от LG.
(пока суть да дело поправил smartshare и убрал в нем headerы, чтобы весь экран выделялся на файлы)
ну вот например установка oscam на телевизоры самсунг http://forum.ixbt.com/topic.cgi?id=62:20973-140 для самсов есть целый проект под названием samygo https://forum.samygo.tv там есть бесплатный рут для старых моделей и платный рут для моделей посвежее просто для меня возможность запуска эму это главный смысл рута а судя потому что до сих пор никто не сделал эму для web os lg , означает что это очень непросто ( невозможно ) в отличие от самса но все равно очень радует то что и для лж что то сдвинулось с мертвой точки хотя мне вообще пока радоваться нет смысла с моим web os 3,5
Из сборок запускаются бинарники для build_dir_arm_v7 (все модицифкации) (в HPB-Oscam-HPB-720-EMU-383-739-SB-11384-part3.tar) и для Samsung. Просто потому что они для armv7. Но ни на одной не работает dvbapi, то что управляет dvb-модулем и является прослойкой.
tennis писал(а):просто для меня возможность запуска эму это главный смысл рута
Какая у вас конфигурация или как вы планируете использовать этот эмулятор? С ридером, с библиотекой libusb, для эмуляции карты, с работой через "пиратский" сервер?
PS: спросил для общего понимания. У самого нет тарелки, протестировать например готовый бинарник не могу
Последний раз редактировалось teffd 12 авг 2017, 12:32, всего редактировалось 1 раз.
teffd писал(а):Из сборок запускаются бинарники для build_dir_arm_v7 (все модицифкации) (в HPB-Oscam-HPB-720-EMU-383-739-SB-11384-part3.tar) и для Samsung. Просто потому что они для armv7. Но ни на одной не работает dvbapi, то что управляет dvb-модулем и является прослойкой.
tennis писал(а):просто для меня возможность запуска эму это главный смысл рута
Какая у вас конфигурация или вы планируете как использовать этот эмулятор? С ридером, с библиотекой libusb, для эмуляции карты, с работой через "пиратский" сервер?
PS: спросил для общего понимания. У самого нет тарелки, протестировать например готовый бинарник не могу
/dev/sda1 on /tmp/usb/sda/sda1 type tfat (rw,relatime,uid=0,gid=5000,umask=0002,allow_utime=0020,codepage=437,iocharset=utf8,shortname=winnt,min_prealloc_size=64k,max_prealloc_size=32M,readahead=4M,fail_safe,fastmount,hidden=show,errors=continue)
Полностью мой скрипт Developer Mode, исправленный, чтобы не проверялась авторизация Developer'а и режим не слетал. 5-ая строчка закомментирована (luna-send). Раскомментируйте её для автозапуска любого установленного приложения при включении ТВ.
# FIXME: disable this to turn off script echo set -x
# FIXME: disable this to stop script from bailing on error # set -e
# TODO: Check upstart daemon/process tracking (do we need to change /etc/init/devmode.conf? start sshd as daemon?)
# set devmode ssh port here SSH_PORT="9922"
# set arch: ARCH="armv71" grep -qs "qemux86" /etc/hostname && ARCH="i686"
# set directories OPT_DEVMODE="/opt/devmode" OPT_SSH="/opt/openssh" DEVELOPER_HOME="/media/developer" DEVMODE_SERVICE_DIR="/media/cryptofs/apps/usr/palm/services/com.palmdts.devmode.service" CRYPTO_SSH="$DEVMODE_SERVICE_DIR/binaries-${ARCH}/opt/openssh" CRYPTO_OPT="$DEVMODE_SERVICE_DIR/binaries-${ARCH}/opt"
if [ -s ${DEVMODE_SERVICE_DIR}/jail_app.conf ] ; then mv ${DEVMODE_SERVICE_DIR}/jail_app.conf ${DEVELOPER_HOME} mv ${DEVMODE_SERVICE_DIR}/jail_app.conf.sig ${DEVELOPER_HOME} fi
if [ -r ${DEVMODE_SERVICE_DIR}/sessionToken ] ; then mv -f ${DEVMODE_SERVICE_DIR}/sessionToken /var/luna/preferences/devmode_enabled fi
# Make sure the ssh binaries are executable (in service directory) if [ ! -x "${CRYPTO_SSH}/sbin/sshd" ] ; then chmod ugo+x ${CRYPTO_SSH}/sbin/sshd ${CRYPTO_SSH}/bin/ssh* ${CRYPTO_SSH}/bin/scp* || true chmod ugo+x ${CRYPTO_SSH}/bin/sftp ${CRYPTO_SSH}/lib/openssh/* || true chmod ugo+x ${CRYPTO_OPT}/devmode/usr/bin/* || true fi
# TODO: (later) Look for "re-init" flag to re-generate ssh key if requested by app (via devkey service) # com.palm.service.devmode could have "resetKey" method to erase /var/lib/devmode/ssh/webos_rsa # Kind of dangerous though, since new key will need to be fetched on the desktop (after reboot)... # We could just require a hard-reset of the TV which should blow away /var/lib/devmode/ssh/...
# Initialize the developer (client) SSH key pair, if it doesn't already exist if [ ! -e /var/lib/devmode/ssh/webos_rsa ] ; then mkdir -p /var/lib/devmode/ssh chmod 0700 /var/lib/devmode/ssh # get FIRST six (UPPER-CASE, hex) characters of 40-char nduid from nyx-cmd # NOTE: This MUST match passphrase as displayed in devmode app (main.js)! # PASSPHRASE="`/usr/bin/nyx-cmd DeviceInfo query nduid | head -c 6 | tr 'a-z' 'A-Z'`" # PASSPHRASE="`/usr/bin/nyx-cmd DeviceInfo query nduid | tail -n1 | head -c 6 | tr 'a-z' 'A-Z'`" PASSPHRASE="`tail /var/lib/secretagent/nduid -c 40 | head -c 6 | tr 'a-z' 'A-Z'`" ${CRYPTO_SSH}/bin/ssh-keygen -t rsa -C "developer@device" -N "${PASSPHRASE}" -f /var/lib/devmode/ssh/webos_rsa # copy ssh key to /var/luna/preferences so the devmode service's KeyServer can read it and serve to ares-webos-cli tools cp -f /var/lib/devmode/ssh/webos_rsa /var/luna/preferences/webos_rsa chmod 0644 /var/luna/preferences/webos_rsa # if we generated a new ssh key, make sure we re-create the authorized_keys file rm -f ${DEVELOPER_HOME}/.ssh/authorized_keys fi
# Make sure the /media/developer (and log) directories exists (as sam.conf erases it when devmode is off): mkdir -p ${DEVELOPER_HOME}/log chmod 777 ${DEVELOPER_HOME} ${DEVELOPER_HOME}/log
# Install the SSH key into the authorized_keys file (if it doesn't already exist) if [ ! -e ${DEVELOPER_HOME}/.ssh/authorized_keys ] ; then mkdir -p ${DEVELOPER_HOME}/.ssh cp -f /var/lib/devmode/ssh/webos_rsa.pub ${DEVELOPER_HOME}/.ssh/authorized_keys || true # NOTE: authorized_keys MUST be world-readable else sshd can't read it inside the devmode jail # To keep sshd from complaining about that, we launch sshd with -o "StrictModes no" (below). chmod 755 ${DEVELOPER_HOME}/.ssh chmod 644 ${DEVELOPER_HOME}/.ssh/authorized_keys chown -R developer:developer ${DEVELOPER_HOME}/.ssh fi
# FIXME: Can we move this to /var/run/devmode/sshd ? # Create PrivSep dir mkdir -p /var/run/sshd chmod 0755 /var/run/sshd
# Create directory for host keys (rather than /opt/openssh/etc/ssh/) HOST_KEY_DIR="/var/lib/devmode/sshd" if [ ! -d "${HOST_KEY_DIR}" ] ; then mkdir -p ${HOST_KEY_DIR} chmod 0700 ${HOST_KEY_DIR} fi
# Create initial keys if necessary if [ ! -f ${HOST_KEY_DIR}/ssh_host_rsa_key ]; then echo " generating ssh RSA key..." ${CRYPTO_SSH}/bin/ssh-keygen -q -f ${HOST_KEY_DIR}/ssh_host_rsa_key -N '' -t rsa fi if [ ! -f ${HOST_KEY_DIR}/ssh_host_ecdsa_key ]; then echo " generating ssh ECDSA key..." ${CRYPTO_SSH}/bin/ssh-keygen -q -f ${HOST_KEY_DIR}/ssh_host_ecdsa_key -N '' -t ecdsa fi if [ ! -f ${HOST_KEY_DIR}/ssh_host_dsa_key ]; then echo " generating ssh DSA key..." ${CRYPTO_SSH}/bin/ssh-keygen -q -f ${HOST_KEY_DIR}/ssh_host_dsa_key -N '' -t dsa fi
# Check config # NOTE: This should only be enabled for testing #${CRYPTO_SSH}/sbin/sshd -f ${CRYPTO_SSH}/etc/ssh/sshd_config -h ${HOST_KEY_DIR}/ssh_host_rsa_key -t
# Add for debugging, but this will cause sshd to exit after the first ssh login: # -ddd -e \
# Make environment file for openssh DEVMODE_JAIL_CONF="/etc/jail_native_devmode.conf" DEVMODE_OPENSSH_ENV="${DEVELOPER_HOME}/.ssh/environment" if [ -f ${DEVMODE_JAIL_CONF} ]; then echo " generating environment file from jail_native_devmode.conf..." find ${DEVMODE_JAIL_CONF} | xargs awk '/setenv/{printf "%s=%s\n", $2,$3}' > ${DEVMODE_OPENSSH_ENV} ${DEVMODE_JAIL} /usr/bin/env >> ${DEVMODE_OPENSSH_ENV} fi # Set path for devmode if [ -f ${DEVMODE_OPENSSH_ENV} ]; then echo "PATH=${PATH}:${OPT_DEVMODE}/usr/bin" >> ${DEVMODE_OPENSSH_ENV} fi
sleep 5; for interface in $(ls /sys/class/net/ | grep -v -e lo -e sit); do if [ -r /sys/class/net/$interface/carrier ] ; then if [[ $(cat /sys/class/net/$interface/carrier) == 1 ]]; then OnLine=1; fi fi done #if [ $OnLine ]; then # sessionToken=$(cat /var/luna/preferences/devmode_enabled); # checkSession=$(curl --max-time 3 -s https://developer.lge.com/secure/CheckDevModeSession.dev?sessionToken=$sessionToken);
# if [ "$checkSession" != "" ] ; then # result=$(node -pe 'JSON.parse(process.argv[1]).result' "$checkSession"); # if [ "$result" == "success" ] ; then rm -rf /var/luna/preferences/dc*; # # create devSessionTime file to remain session time in devmode app # remainTime=$(node -pe 'JSON.parse(process.argv[1]).errorMsg' "$checkSession"); # resultValidTimeCheck=$(echo "${remainTime}" | egrep "^([0-9]{1,4}(:[0-5][0-9]){2})$"); # if [ "$resultValidTimeCheck" != "" ] ; then echo '900:00:00' > ${DEVMODE_SERVICE_DIR}/devSessionTime; chgrp 5000 ${DEVMODE_SERVICE_DIR}/devSessionTime; chmod 664 ${DEVMODE_SERVICE_DIR}/devSessionTime; # fi # elif [ "$result" == "fail" ] ; then # rm -rf /var/luna/preferences/devmode_enabled; # rm -rf /var/luna/preferences/dc*; # if [ -e ${DEVMODE_SERVICE_DIR}/devSessionTime ] ; then # rm ${DEVMODE_SERVICE_DIR}/devSessionTime; # fi # fi # fi #fi
# Cache clear function added (except Local storage) if [ -e ${DEVMODE_SERVICE_DIR}/devCacheClear ] ; then rm -rf `ls | find /var/lib/webappmanager*/* -name "Local Storage" -o -name "localstorage" -prune -o -print`; rm ${DEVMODE_SERVICE_DIR}/devCacheClear; fi