Page 3 of 8

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Wed Jul 16, 2014 12:07 pm
by sectroyer
Okay it was a loooooooot of work but everything works now :) Just remember that setting correct date (to make certificates work correctly) will make all of you scheduled recordings become "invalid". You have to set them up manually since there is no way to fix it :( Also to make everything work correctly is best to first connect usb mouse and then usb keyboard. Accept both devices using remote and leave mouse pointer in the upper right corner. The cursor will not change so it's nice to have big white arrow :D Once I test it more I will release more detailed information :)

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Wed Jul 16, 2014 11:58 pm
by sectroyer
Okay it looks that you can disable (for TV itself) the mouse in one more way. Just choose "No" when the popup appears asking whether to use the mouse :D
EDIT:
You get much better performance using normal USB disk(more than 32GB ;)) instead of usb stick :D

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Thu Jul 17, 2014 4:35 pm
by sectroyer
You can use USB disk (with at least 4GB of free space) with any format and everything is done on the TV itself.

Here are the steps to have fully working Ubuntu on E series:

Code: Select all

    echo "Remounting usb devices:"
    for i in /dtv/usb/sd*; do
         echo "$i";
         mount -o remount,exec "$i"
    done
  • * Copy attached ubuntu_xfs.tar.gz file to some usb disk (any format is good) that has at least 4GB of free space.
    * Unpack attached file using this command:

Code: Select all

tar -zxf ubuntu_xfs.tar.gz 
  • * Then just cd to to ubuntu_xfs directory and run this command:

Code: Select all

/bin/sh ./ubuntu.sh
  • * The script sets everything up automatically (it takes about 5 hours to finish). You use the same command to chroot to your ubuntu system.
    * Finally launch gnome using:

Code: Select all

gnome-session
Post your results and suggestions :)

To fix the issue with certificates (wrong date) uncomment from init.sh script this line:

Code: Select all

    #ntpdate -s ntp.ubuntu.com
Just be aware that it will invalidate your recordings list :) It may also cause other issues ;)

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Thu Aug 21, 2014 5:40 pm
by Mkò
Is possibile to test this on c series arm v7?
My tv is c6600? I know that this tv use xfs file system for recordings. But i don't know what Kerberos it has 2.6.8 i think

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Thu Aug 21, 2014 8:57 pm
by sectroyer
Mk? wrote:Is possibile to test this on c series arm v7?
My tv is c6600? I know that this tv use xfs file system for recordings. But i don't know what Kerberos it has 2.6.8 i think
Wasn't tested on C :) You will have figure it out by yourself :)

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Sun Oct 26, 2014 7:36 pm
by whvmarius
Tested on my E and it works, but I use LXDE Desktop.
And I was able to compile a few apps (for example infread) direct on TV and mount a FTP-Share.

But the automatic install-script doesn't work for me. With a little bit of work, now ubuntu starts automatic and hidden.
I use libnotify to send notifications to my TV from my Home-automation-system.

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Sun Oct 26, 2014 10:26 pm
by juusso
Maybe some howto from your experience. What exact is needed to change?

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Sun Oct 26, 2014 11:26 pm
by whvmarius
I had made my own installation-script, but I deleted it recently. Maybe I write it new.
I installed not the ubuntu-desktop,only the lxde-core and libnotify.

Maybe my autostart script helps, but it is very messy and easy:

Code: Select all


mount -o loop /dtv/usb/sda1/linux.xfs /mnt/core

cp /proc/mounts /mnt/core/etc/mtab

mount -o bind /dtv /mnt/core/dtv
mount -o bind /dsm /mnt/core/dsm
mount -o bind /core /mnt/core/core
mount -o bind /mtd_rwarea /mnt/core/mtd_area 
mount -o bind /mtd_drmregion_a /mnt/core/mtd_drmarea_a
mount -o bind /mtd_drmregion_b /mnt/core/mtd_drmarea_b
mount -o bind /mtd_appext /mnt/core/mtd_appext
mount -o bind /mtd_rocommon /mnt/core/mtd_rocommon
mount -o bind /mtd_contents /mnt/core/mtd_contents
mount -o bind /mtd_rwcommon /mnt/core/mtd_rwcommon
mount -o bind /mtd_emanual /mnt/core/mtd_emanual
mount -o bind /mtd_swu /mnt/core/mtd_swu
mount -o bind /dtv/usb/sda1 /mnt/core/usb/sda1
mount -o bind /bin/busybox /mnt/core/busybox
mount -o bind /dtv/usb/sda1 /mnt/core/dtv/usb/sda1
mount -o bind /mnt/core /mnt/core/mnt/core
mount -o bind /mnt/core/sys /mnt/core/mnt/core/sys
mount -o bind /mnt/core/dev/pts /mnt/core/mnt/core/dev/pts

cp /etc/resolv.conf /mnt/core/etc/resolv.conf
cp /etc/hosts /mnt/core/etc/hosts
cp /etc/HOSTNAME /mnt/core/etc/hostname

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" hostname localhost

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" mount -t sysfs sysfs /sys

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" mount -t proc proc /proc

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" mount -t usbfs none /proc/bus/usb

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" mount -t devpts devpts /dev/pts

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" sudo dpkg-divert --local --rename --add /sbin/initctl

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" ln -s /bin/true /sbin/initctl




/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" nohup lxsession >/dev/null 2>&1 &

sleep 5

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" killall pcmanfm

sleep 5

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" killall pcmanfm

sleep 5

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" killall pcmanfm


sleep 5

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" killall pcmanfm

sleep 60


/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" killall pcmanfm

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" killall openbox

/mnt/bin/chroot /mnt/core /usr/bin/env -i HOME="/root" LD_LIBRARY_PATH="" TMPDIR="/tmp" FONTCONFIG_FILE="/etc/fonts/fonts.conf" FONTCONFIG_PATH="/etc/fonts" PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc" TERM=xterm PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" DISPLAY=":0" notify-send "System" "System up"
I insert it in the 99_99_z_sendinfo.init file.

When someone can make this better, I would be happy about it ;)

The mount of an FTP Server made I with the package curlftpfs. But this worked on my TV only with this before the mount:

Code: Select all

mkdir /tmp/dev
cp -r /dev/* /tmp/dev/
mount -o bind /tmp/dev/ /dev/
I don't know why, but it worked.

Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Sun Oct 26, 2014 11:37 pm
by whvmarius
ah, I found my installation-script, but some commands are not ready, but i think it should work. They are only notes for me for copy and paste. I've made an arrow where commands missing:

Code: Select all

/bin/dd if=/dev/zero of=/dtv/usb/sda1/linux.xfs bs=1M count=2048

/sbin/mkfs.xfs -f /dtv/usb/sda1/linux.xfs

mkdir /mnt/core
mount -o loop /dtv/usb/sda1/linux.xfs /mnt/core/

cd /mnt/core

wget http://old-releases.ubuntu.com/releases/ubuntu-core/releases/12.04/release/ubuntu-core-12.04-core-armel.tar.gz

tar zxf ./ubuntu-core-12.04-core-armel.tar.gz


cp /etc/resolv.conf /mnt/core/etc/resolv.conf
cp /etc/hosts /mnt/core/etc/hosts
cp /etc/HOSTNAME /mnt/core/etc/hostname


mount -o loop /dtv/usb/sda1/linux.xfs /mnt/core



mkdir /mnt/core/dtv
mkdir /mnt/core/dsm
mkdir /mnt/core/core
mkdir /mnt/core/mtd_exe
mkdir /mnt/core/mtd_rwarea
mkdir /mnt/core/mtd_drmregion_a
mkdir /mnt/core/mtd_drmregion_b
mkdir /mnt/core/mtd_appext
mkdir /mnt/core/mtd_rocommon
mkdir /mnt/core/mtd_contents
mkdir /mnt/core/mtd_rwcommon
mkdir /mnt/core/mtd_emanual
mkdir /mnt/core/mtd_swu
mkdir /mnt/core/dtv
mkdir /mnt/core/dtv/usb
mkdir /mnt/core/dtv/usb/sda1
mkdir /mnt/core/bin/busybox
mkdir /mnt/core/mnt/core
mkdir /mnt/core/mnt/core/sys
mkdir /mnt/core/mnt/core/
mkdir /mnt/core/mnt/core/proc
mkdir /mnt/core/mnt/core/proc/bus
mkdir /mnt/core/mnt/core/proc/bus/usb
mkdir /mnt/core/mnt/core/dev/pts

cp /proc/mounts /mnt/core/etc/mtab

mount -o bind /dtv /mnt/core/dtv
mount -o bind /dsm /mnt/core/dsm
mount -o bind /core /mnt/core/core
mount -o bind /mtd_rwarea /mnt/core/mtd_area 
mount -o bind /mtd_drmregion_a /mnt/core/mtd_drmarea_a
mount -o bind /mtd_drmregion_b /mnt/core/mtd_drmarea_b
mount -o bind /mtd_appext /mnt/core/mtd_appext
mount -o bind /mtd_rocommon /mnt/core/mtd_rocommon
mount -o bind /mtd_contents /mnt/core/mtd_contents
mount -o bind /mtd_rwcommon /mnt/core/mtd_rwcommon
mount -o bind /mtd_emanual /mnt/core/mtd_emanual
mount -o bind /mtd_swu /mnt/core/mtd_swu
mount -o bind /dtv/usb/sda1 /mnt/core/usb/sda1
mount -o bind /bin/busybox /mnt/core/busybox
mount -o bind /dtv/usb/sda1 /mnt/core/dtv/usb/sda1
mount -o bind /mnt/core /mnt/core/mnt/core
mount -o bind /mnt/core/sys /mnt/core/mnt/core/sys
mount -o bind /mnt/core/dev/pts /mnt/core/mnt/core/dev/pts


chroot /mnt/core /bin/bash

----------------- These Commands only in the chroot environment



hostname localhost


mount -t sysfs sysfs /sys
mount -t proc proc /proc
mount -t usbfs none /proc/bus/usb
mount -t devpts devpts /dev/pts
export LD_LIBRARY_PATH=""
export HOME="/root"
export TMPDIR="/tmp"
export FONTCONFIG_FILE="/etc/fonts/fonts.conf"
export FONTCONFIG_PATH="/etc/fonts"
export PANGO_RC_FILE="/usr/lib/arm-linux-gnueabi/pango/pangorc"
mknod /dev/fbo c 29 0



apt-get install nano -y




------------> sources.list edit



apt-get update



dpkg-divert --local --rename --add /sbin/initctl
ln -s /bin/true /sbin/initctl
apt-get install dialog apt-utils -y

apt-get install vim.tiny sudo ssh net-tools ethtool wireless-tools network-manager iputils-ping rsyslog alsa-utils vim.tiny sudo ssh net-tools ethtool wireless-tools network-manager iputils-ping rsyslog alsa-utils -y

mkdir /tmp/dev
cp -r /dev/* /tmp/dev/
mount -o bind /tmp/dev/ /dev/

apt-get install lxde-core dos2unix apache2 php5 curl curlftpfs ntpdate libiconv-hook-dev libnotify-bin fuse x11vnc usbutils -y

umount /tmp/dev/


ln -s /usr/lib/libiconv_hook.so.1  /usr/lib/libiconv.so.2


apt-get remove xscreensaver -y




-----------> pango copy+edit


Re: Installing Ubuntu in Samsung Smart TV natively

Posted: Fri Apr 03, 2015 3:25 pm
by lbalan79
There is no mkfs.xfs on the TV I have. ext4 seems a good choice though....

Code: Select all

# find / | grep mkfs
/dtv/bin/mkfs.vfat
/dtv/bin/mkfs.minix
/dtv/bin/mkfs.ext2
/mnt/opt/privateer/usr/sbin/mkfs.vfat
/mnt/bin/mkfs.minix
/mnt/bin/mkfs.ext2
/mnt/bin/mkfs.vfat
/mtd_exe/vdlm/mkfs.ext4
/mtd_uniro/exe1/vdlm/mkfs.ext4
/mtd_uniro/exe2/vdlm/mkfs.ext4
<...>
/sbin/mkfs.vfat
/tmp/bin/mkfs.vfat
/tmp/bin/mkfs.minix
/tmp/bin/mkfs.ext2
/util/mkfs.vdfs