Compare commits
371 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9a733ffe1f | ||
|
|
49b9cf1ca1 | ||
|
|
74efb17f9d | ||
|
|
91b8ff9d22 | ||
|
|
13c5421ed4 | ||
|
|
a8d26cbfee | ||
|
|
3e6d4adcfe | ||
|
|
f944c63ca7 | ||
|
|
eb55824c25 | ||
|
|
80de61ce65 | ||
|
|
c3aed90ecb | ||
|
|
97601b8764 | ||
|
|
c99ff99938 | ||
|
|
27bed75762 | ||
|
|
8fc7952fe9 | ||
|
|
4e57e1f12b | ||
|
|
0a7b20ef4e | ||
|
|
b911cbf027 | ||
|
|
008e262417 | ||
|
|
c3c5d38895 | ||
|
|
7ff36d8aad | ||
|
|
068f0f7a13 | ||
|
|
8602c4219e | ||
|
|
5a21a49c99 | ||
|
|
1969dc68f0 | ||
|
|
5540aa582c | ||
|
|
657b1da170 | ||
|
|
5b6b19fe35 | ||
|
|
055310a614 | ||
|
|
b36c6e322a | ||
|
|
a407874ea9 | ||
|
|
9f35e90223 | ||
|
|
ef4076b3db | ||
|
|
6464131d51 | ||
|
|
8761fe68dc | ||
|
|
95a7f2fbce | ||
|
|
e8752916c6 | ||
|
|
24a3ec389d | ||
|
|
7ec821394b | ||
|
|
a3e94faa29 | ||
|
|
01abf0d3c5 | ||
|
|
81adf88a68 | ||
|
|
49582a0f5a | ||
|
|
88af20cf4f | ||
|
|
0f2b00efc1 | ||
|
|
c81899d78a | ||
|
|
d0539ac854 | ||
|
|
95524f0d0d | ||
|
|
a4e0d038fe | ||
|
|
bb3dd4f6b1 | ||
|
|
3eae0e71db | ||
|
|
742bb68d9e | ||
|
|
d3887aba6e | ||
|
|
55c19b421e | ||
|
|
bff40d438b | ||
|
|
b147768b93 | ||
|
|
2af9ce5af2 | ||
|
|
e9ee94a212 | ||
|
|
40573af355 | ||
|
|
6b32f70569 | ||
|
|
9e81277518 | ||
|
|
c7eb640bff | ||
|
|
20241d0b1c | ||
|
|
1d7f6b2ced | ||
|
|
4f7aef3687 | ||
|
|
4bd52ad665 | ||
|
|
1ffe1c38f5 | ||
|
|
6d30483ff4 | ||
|
|
d52d041df9 | ||
|
|
3424072776 | ||
|
|
5b9ba95115 | ||
|
|
e1828cf4a1 | ||
|
|
87fff1e17f | ||
|
|
443d275f13 | ||
|
|
5eeef11f55 | ||
|
|
2ea6defee7 | ||
|
|
cc68350452 | ||
|
|
50024f8dba | ||
|
|
f90bedd977 | ||
|
|
b75f4174b5 | ||
|
|
ce1b9d3050 | ||
|
|
c6703120d9 | ||
|
|
ec5b17b716 | ||
|
|
334ad6c009 | ||
|
|
4773334ae3 | ||
|
|
76585a3be0 | ||
|
|
74c7ec1afd | ||
|
|
9dc8d2c580 | ||
|
|
6cb2ec7748 | ||
|
|
984f4e3db8 | ||
|
|
7f7f36bb82 | ||
|
|
4c0d28dd2d | ||
|
|
0655fd8534 | ||
|
|
859ae20178 | ||
|
|
75d5bd7de1 | ||
|
|
f8e6dd6a8b | ||
|
|
3f00077098 | ||
|
|
e0bf6e52c3 | ||
|
|
f10c28e7d3 | ||
|
|
9183e51af7 | ||
|
|
0a071c4c1a | ||
|
|
be53d81a9a | ||
|
|
4d4ebf6143 | ||
|
|
0b730f36e1 | ||
|
|
52fe64fc37 | ||
|
|
db6b349cce | ||
|
|
3b2624a3be | ||
|
|
b4bb89f1a7 | ||
|
|
a5f5f6c451 | ||
|
|
752de0ba41 | ||
|
|
3dac988e48 | ||
|
|
0140e95b05 | ||
|
|
58f2bb64b0 | ||
|
|
33fb5c4f24 | ||
|
|
80a02a1fff | ||
|
|
7983bea2d6 | ||
|
|
dd0d10768a | ||
|
|
f777993eaf | ||
|
|
bd08a24ff3 | ||
|
|
1c3a972b77 | ||
|
|
4de8728e52 | ||
|
|
1bb43ab6fe | ||
|
|
5e5e040a44 | ||
|
|
86097fa8a5 | ||
|
|
425ee58006 | ||
|
|
052176b8e9 | ||
|
|
0603895a68 | ||
|
|
6922580121 | ||
|
|
fa05b5256c | ||
|
|
f6e82c018d | ||
|
|
e8b7c3d0c5 | ||
|
|
cb9be373ac | ||
|
|
9e4d94cde3 | ||
|
|
5e395f7638 | ||
|
|
65252d42b8 | ||
|
|
1086509c60 | ||
|
|
f73a22f391 | ||
|
|
0b854b3419 | ||
|
|
805e7c309c | ||
|
|
5fde288eaa | ||
|
|
4c2060b0cf | ||
|
|
af803be634 | ||
|
|
a361038791 | ||
|
|
27cbf58496 | ||
|
|
44e351a001 | ||
|
|
6663c3581f | ||
|
|
2b4bb95bc8 | ||
|
|
bd6ccbaa2c | ||
|
|
ed2314577f | ||
|
|
be555bcfd7 | ||
|
|
61f20f0f38 | ||
|
|
79045a3813 | ||
|
|
72ad9f04a9 | ||
|
|
352cb35975 | ||
|
|
9fa8cc4646 | ||
|
|
696f819bc0 | ||
|
|
c2957a3e79 | ||
|
|
356724bfe0 | ||
|
|
eaf98d4fa4 | ||
|
|
9de42b9c22 | ||
|
|
25434f9946 | ||
|
|
1d2b465d6b | ||
|
|
9c279003c9 | ||
|
|
44fd15f859 | ||
|
|
363ea9872a | ||
|
|
433f1e7151 | ||
|
|
dd63fe217e | ||
|
|
552a3736bd | ||
|
|
b98308c706 | ||
|
|
2d88114146 | ||
|
|
8a5f0444a2 | ||
|
|
d7c50d0091 | ||
|
|
db179e1990 | ||
|
|
5fc548d969 | ||
|
|
15d156b6dc | ||
|
|
e740f386c0 | ||
|
|
0e69d2d6aa | ||
|
|
90d156dc99 | ||
|
|
9ac06db4d9 | ||
|
|
e3c0f33476 | ||
|
|
1230964acf | ||
|
|
f92cdd3743 | ||
|
|
ba2b54ed14 | ||
|
|
15d5dc4e77 | ||
|
|
2465806f5a | ||
|
|
3bbd264560 | ||
|
|
1797cf794d | ||
|
|
2b876dcf54 | ||
|
|
e7b053bde2 | ||
|
|
e6c6dcd3e9 | ||
|
|
1b1f10e48e | ||
|
|
87b2fec493 | ||
|
|
360f242c88 | ||
|
|
0bac7c6239 | ||
|
|
55258aaad6 | ||
|
|
ca67b93ae1 | ||
|
|
57f75a69d5 | ||
|
|
d8d6f4bf62 | ||
|
|
798be4fbe7 | ||
|
|
c11ae75dd5 | ||
|
|
14ab3b1eb9 | ||
|
|
90c49b7fc2 | ||
|
|
28d3af8ca1 | ||
|
|
623382e603 | ||
|
|
8f2aaa071d | ||
|
|
fb111278b4 | ||
|
|
6f2330d7af | ||
|
|
1f5405ef11 | ||
|
|
c162e37758 | ||
|
|
d8d7f154ee | ||
|
|
f9ad48224a | ||
|
|
09af5aa93c | ||
|
|
df6c87e484 | ||
|
|
b4650d2dbe | ||
|
|
c2e0ba5627 | ||
|
|
d60340aa68 | ||
|
|
18ec4f5649 | ||
|
|
096cb1aed2 | ||
|
|
55223b5899 | ||
|
|
df5322d180 | ||
|
|
ba7374561a | ||
|
|
5941282c90 | ||
|
|
d450c73f4d | ||
|
|
cb92175fcc | ||
|
|
7b7c5f1cbf | ||
|
|
ce2622d38e | ||
|
|
5aea86e3ce | ||
|
|
1f3b918331 | ||
|
|
db99f9246e | ||
|
|
49426a3ddc | ||
|
|
7c3130466f | ||
|
|
71bc17c6c9 | ||
|
|
6d11b1b3f7 | ||
|
|
50e28e41fd | ||
|
|
ed6fbfa73d | ||
|
|
fb108c719e | ||
|
|
213e29e518 | ||
|
|
7488fb242f | ||
|
|
d8631f93e0 | ||
|
|
940bc856c5 | ||
|
|
6da0b67879 | ||
|
|
9330a549a1 | ||
|
|
28097b4634 | ||
|
|
77f53e5fc8 | ||
|
|
f6f7ac063b | ||
|
|
da3ab62269 | ||
|
|
123bf515c5 | ||
|
|
5e07023b39 | ||
|
|
6fab77f352 | ||
|
|
4c9261dcf5 | ||
|
|
99ba24ed9c | ||
|
|
85d6d90587 | ||
|
|
77014049b4 | ||
|
|
c716ad0b26 | ||
|
|
0eaa58b1ef | ||
|
|
e50b10d96c | ||
|
|
627ddaeb40 | ||
|
|
63f41ba590 | ||
|
|
2c95a2a88a | ||
|
|
069f2d9573 | ||
|
|
5de1b3c687 | ||
|
|
f120dd0354 | ||
|
|
71be4cf0c2 | ||
|
|
7b62e506a9 | ||
|
|
731d68c919 | ||
|
|
baf570e8b5 | ||
|
|
4a88f7b4bb | ||
|
|
9e390b6c1d | ||
|
|
4cbe5d18c9 | ||
|
|
f21bb74ad0 | ||
|
|
1d6bde2a27 | ||
|
|
37ae0e51de | ||
|
|
c0e3698ca4 | ||
|
|
be80ba5d40 | ||
|
|
4e3410a4bd | ||
|
|
25aa581d30 | ||
|
|
e07a1ce6b8 | ||
|
|
e663ed5347 | ||
|
|
191d645bc7 | ||
|
|
c65cf08443 | ||
|
|
d4f45e6385 | ||
|
|
b21fe64f68 | ||
|
|
8db2f4a34c | ||
|
|
6f1d6ca8c8 | ||
|
|
767da2d096 | ||
|
|
550b9ed87d | ||
|
|
9cdc584e9d | ||
|
|
56364fa1c0 | ||
|
|
c04ad8d0b1 | ||
|
|
1514c6787a | ||
|
|
946eb75453 | ||
|
|
9d9bb01d86 | ||
|
|
5b5513a040 | ||
|
|
462fe247ad | ||
|
|
1535bbd25f | ||
|
|
665391cffe | ||
|
|
4eb5431588 | ||
|
|
bea62e563f | ||
|
|
84318153ae | ||
|
|
38650cd1e5 | ||
|
|
fa9da92e59 | ||
|
|
3a45b20bb3 | ||
|
|
fa35df2b4a | ||
|
|
1fc8522154 | ||
|
|
0455ac5088 | ||
|
|
a6ffabf023 | ||
|
|
c06f9d8e95 | ||
|
|
edf6bc2e74 | ||
|
|
fb65ebe670 | ||
|
|
cb41293fcb | ||
|
|
041978294c | ||
|
|
b44c8efefc | ||
|
|
417eb40418 | ||
|
|
28717bae11 | ||
|
|
d7fb17aa56 | ||
|
|
ecb529c50b | ||
|
|
de70d0b15a | ||
|
|
a49767453a | ||
|
|
8743a32d8b | ||
|
|
bba3265599 | ||
|
|
fa81aac508 | ||
|
|
e1cf2b7f6e | ||
|
|
279dff61d5 | ||
|
|
67cdf2635f | ||
|
|
c5adb7731b | ||
|
|
90031336ba | ||
|
|
37f35c77fd | ||
|
|
0f579ce855 | ||
|
|
ddaa45466c | ||
|
|
21499e1eda | ||
|
|
da55cfffbe | ||
|
|
4257889575 | ||
|
|
fdda0b843a | ||
|
|
9f6083f055 | ||
|
|
0e0eaff810 | ||
|
|
7fd3801cac | ||
|
|
c90dc6d6dc | ||
|
|
b5811b4dc8 | ||
|
|
b016545258 | ||
|
|
edb57b3c67 | ||
|
|
d118e52e47 | ||
|
|
e67bc611a4 | ||
|
|
82867de787 | ||
|
|
5db907ac3a | ||
|
|
71c60a3738 | ||
|
|
254bae8518 | ||
|
|
601a635a2c | ||
|
|
95b8e9d0e8 | ||
|
|
54fed5c67b | ||
|
|
ebc1c86476 | ||
|
|
f84c832d4a | ||
|
|
6bf418fe44 | ||
|
|
bbdce1ef24 | ||
|
|
b7efd0fc33 | ||
|
|
507fd8a8b6 | ||
|
|
f66bf799b5 | ||
|
|
2b5809ebf6 | ||
|
|
90f55f3af4 | ||
|
|
8e9d5270d9 | ||
|
|
334bd6318c | ||
|
|
4c7a06464a | ||
|
|
93acd58b62 | ||
|
|
0d6bdc5bef | ||
|
|
99f849dc59 | ||
|
|
a29aac3975 | ||
|
|
ed435dd43d | ||
|
|
742bec06df | ||
|
|
272cb6b98e | ||
|
|
c61a6e48d0 | ||
|
|
abb285c5e8 | ||
|
|
e8d6bb20e5 |
@@ -9,7 +9,7 @@ PluginLanguagePath = 'Extensions/NeoBoot/locale'
|
||||
def localeInit():
|
||||
lang = language.getLanguage()[:2]
|
||||
os.environ['LANGUAGE'] = lang
|
||||
print '[NeoBoot] set language to ', lang
|
||||
# print '[NeoBoot] set language to ', lang
|
||||
gettext.bindtextdomain(PluginLanguageDomain, resolveFilename(SCOPE_PLUGINS, PluginLanguagePath))
|
||||
|
||||
|
||||
|
||||
@@ -1,132 +0,0 @@
|
||||
#!/bin/sh
|
||||
TARGET=Flash
|
||||
NEODEVICE=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
IMAGEKATALOG=ImageBoot
|
||||
UPLOADKATALOG=ImagesUpload
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/.neonextboot ]; then
|
||||
mnttest="nouuid"
|
||||
if [ -e $NEOBOOT/bin/install ]; then
|
||||
orgimag1=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
selectinstall=`cat $NEOBOOT/bin/install`
|
||||
for item in $orgimag1; do
|
||||
selectmnt=`blkid | sed "/$selectinstall/!d" | cut -d":" -f1`
|
||||
if [ $selectmnt == $item ]; then
|
||||
echo "selectmnt=" $selectmnt
|
||||
mnttest="uuid"
|
||||
mount $selectmnt $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "NEOBOOT hasn't been installed on: " $selectmnt
|
||||
umount $NEODEVICE > /dev/null 2>&1
|
||||
else
|
||||
echo "NEOBOOT has been installed on: " $selectmnt
|
||||
break;
|
||||
fi
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -e $NEOBOOTMOUNT$IMAGE.neonextboot ] ; then
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/.neonextboot ]; then
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Error - Back to Flash... "
|
||||
sleep 5; #reboot -f
|
||||
fi
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/.neonextboot ]; then
|
||||
TARGET=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
fi
|
||||
|
||||
|
||||
if [ $TARGET = "Flash" ]; then
|
||||
echo "BOOTNEO is booting image from " $TARGET
|
||||
/usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neowait.mvi > /dev/null 2>&1
|
||||
sleep 3
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
#reboot -f
|
||||
else
|
||||
######### test boot new imaga>>>>
|
||||
VUMODEL=$( cat /proc/stb/info/vumodel )
|
||||
BOXNAME=$( cat /etc/hostname)
|
||||
DIRECTORY=ImageBoot
|
||||
UPLOAD=ImagesUpload
|
||||
DEVICEBOOT=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
if [ -e $DEVICEBOOT$DIRECTORY/$TARGET/.control_ok ]; then
|
||||
[ $PL ] && echo "Nie ma bledu, normalny start image..." || echo "No Error - Booting image normal..."
|
||||
elif [ -e $DEVICEBOOT$DIRECTORY/$TARGET/.control_boot_new_image ]; then
|
||||
echo "First start image - The first attempt to launch a new image... "; rm -f $DEVICEBOOT$DIRECTORY/$TARGET/.control_boot_new_image
|
||||
else
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/boot/zImage.$BOXNAME ]; then
|
||||
VUMODEL=`cat /proc/stb/info/vumodel`
|
||||
BOXNAME=`cat /etc/hostname`
|
||||
if [ ! -e $DEVICEBOOT$DIRECTORY/$TARGET/.control_ok ] ; then
|
||||
if [ $BOXNAME = "vuultimo4k" ] || [ $BOXNAME = "vusolo4k" ] || [ $BOXNAME = "vuuno4kse" ] || [ $BOXNAME = "vuuno4k" ]; then
|
||||
if [ -d /proc/stb ] ; then
|
||||
echo " Install kernel image flash.... " $BOXNAME
|
||||
dd if=$DEVICEBOOT$UPLOAD/.kernel/flash-kernel-$VUMODEL.bin of=/dev/mmcblk0p1
|
||||
fi
|
||||
elif [ $BOXNAME = "vuzero4k" ] ; then
|
||||
if [ -d /proc/stb ] ; then
|
||||
echo " Install kernel image flash.... " $BOXNAME
|
||||
dd if=$DEVICEBOOT$UPLOAD/.kernel/flash-kernel-$VUMODEL.bin of=/dev/mmcblk0p4
|
||||
fi
|
||||
elif [ $BOXNAME = "vuduo4k" ] ; then
|
||||
if [ -d /proc/stb ] ; then
|
||||
echo " Install kernel image flash.... " $BOXNAME
|
||||
dd if=$DEVICEBOOT$UPLOAD/.kernel/flash-kernel-$VUMODEL.bin of=/dev/mmcblk0p6
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
echo "Wrong kernel. Press number 3" > $DEVICEBOOT$UPLOAD/.kernel/used_flash_kernel
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $DEVICEBOOT$DIRECTORY/.neonextboot
|
||||
echo "Error - NeoBoot he can not run it image !!! "
|
||||
echo "Restart STB - Back to Flash... "
|
||||
/usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/error.mvi > /dev/null 2>&1
|
||||
sleep 10; #reboot -f
|
||||
fi
|
||||
|
||||
######### test boot new image<<<<<
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ] ; then
|
||||
rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
fi
|
||||
cp -f /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
|
||||
#mount $NEODEVICE /media/neoboot
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ] ; then
|
||||
orgimag=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
for item in $orgimag; do
|
||||
ohdd=`echo $item | cut -d"/" -f3`
|
||||
nhdd=`mount | sed "/\$ohdd/!d" | sed q | cut -d" " -f3`
|
||||
if [ $nhdd == '/media/usb' ] ; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "[NeoBOOT] created in /usr/bin the file enigma2_pre_start.sh "
|
||||
elif [ $nhdd == '/media/hdd' ] ; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "[NeoBOOT] created in /usr/bin the file enigma2_pre_start.sh "
|
||||
else
|
||||
echo "umount "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "[NeoBOOT] enigma2_pre_start.sh "
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
fi
|
||||
chmod 0755 $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "NeoBOOT created the file mount enigma2_pre_start.sh "
|
||||
sleep 2
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
@@ -1,294 +0,0 @@
|
||||
#!/bin/sh
|
||||
#script mod by gutosie
|
||||
#neo init arm
|
||||
|
||||
echo "====================================================> "
|
||||
echo " "
|
||||
echo " -=*[ NEOBOOT - BOOT UP ]*=- "
|
||||
echo " NEO BOOT INIT Version: gutosie "
|
||||
echo " q(-_-)p "
|
||||
echo " "
|
||||
echo "====================================================> "
|
||||
|
||||
|
||||
NEODEVICE=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
IMAGEKATALOG=ImageBoot
|
||||
|
||||
|
||||
if [ -e /tmp/.init_reboot ]; then
|
||||
rm /tmp/.init_reboot
|
||||
break;
|
||||
|
||||
else
|
||||
if [ -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`IMAGEKATALOG/.neonextboot ] ; then
|
||||
CELBOOT=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
if [ $CELBOOT = "Flash" ]; then
|
||||
exec /sbin/init.sysvinit $*
|
||||
exit 0
|
||||
else
|
||||
echo " "
|
||||
break;
|
||||
fi
|
||||
fi
|
||||
|
||||
LIBDIR=/lib/modules/`uname -r`
|
||||
if [ ! -d $LIBDIR ]; then
|
||||
LIBDIR=/lib/modules/`ls /lib/modules | tail -n 1`
|
||||
fi
|
||||
echo "Mount kernel filesystems ..."
|
||||
if [ `mount | grep /proc | wc -l` -lt 1 ]; then
|
||||
/bin/mount -a -t media
|
||||
/bin/mount -t proc proc /proc > /dev/null 2>&1
|
||||
/bin/mount -t sysfs sysfs /sys > /dev/null 2>&1
|
||||
/sbin/depmod -Ae > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
echo "NeoBoot is starting mdev and mout HDD USB ..."
|
||||
echo "/sbin/mdev" > /proc/sys/kernel/hotplug
|
||||
/etc/init.d/mdev > /dev/null 2>&1
|
||||
|
||||
sleep 2
|
||||
mnttest="nouuid"
|
||||
if [ -e /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/install ]; then
|
||||
orgimag1=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
selectinstall=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/install`
|
||||
for item in $orgimag1; do
|
||||
selectmnt=`blkid | sed "/$selectinstall/!d" | cut -d":" -f1`
|
||||
if [ $selectmnt == $item ]; then
|
||||
echo "selectmnt=" $selectmnt
|
||||
mnttest="uuid"
|
||||
mount $selectmnt `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`ImageBoot ]; then
|
||||
echo "NeoBoot hasn't been installed on: " $selectmnt
|
||||
umount `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
else
|
||||
echo "NeoBoot has been installed on: " $selectmnt
|
||||
break;
|
||||
fi
|
||||
done
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG ]; then
|
||||
mkdir -p /media/hdd > /dev/null 2>&1
|
||||
mkdir -p /media/usb > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` ]; then
|
||||
mkdir `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
fi
|
||||
if [ $mnttest == "nouuid" ] ; then
|
||||
echo "NeoBoot mount by Device"
|
||||
DEVICES1=`find /dev/sd??`
|
||||
for DEVICE in $DEVICES1;
|
||||
do
|
||||
if [ -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` ]; then
|
||||
echo "neoboot checking installation on: " $DEVICE
|
||||
mount $DEVICE `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`ImageBoot ]; then
|
||||
echo "NeoBoot hasn't been installed on: " $DEVICE
|
||||
umount `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
else
|
||||
echo "NeoBoot has been installed on: " $DEVICE
|
||||
break;
|
||||
fi
|
||||
done
|
||||
elif [ $mnttest == "uuid" ]; then
|
||||
echo "NeoBoot mount by UUID"
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/.neonextboot ]; then
|
||||
if [ -e /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh ]; then
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neo.sh
|
||||
echo "___________________neoMountpoint_______________________ "
|
||||
sleep 1
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
UPLOAD=ImagesUpload
|
||||
# mount /dev/sda1 /media/hdd
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "Error mounting, Return to image Flash..."
|
||||
sleep 2
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Reinstall kernel -Press number 3" > $NEODEVICE$UPLOAD/.kernel/used_flash_kernel
|
||||
echo " Sending all processes the TERM- KILL signal..."
|
||||
reboot -f
|
||||
fi
|
||||
|
||||
TARGET=Flash
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot ]; then
|
||||
TARGET=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
fi
|
||||
|
||||
HOSTNAME=`cat /etc/hostname`
|
||||
if [ ! -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/boot/zImage.$HOSTNAME ]; then
|
||||
|
||||
|
||||
echo "Image launched on a base kernel flash. " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/kernel_flash
|
||||
|
||||
MODPROBE=/sbin/modprobe
|
||||
|
||||
echo "Load video and frame buffer modules ..."
|
||||
#modprobe dvb
|
||||
|
||||
echo "NeoBoot is loading modules"
|
||||
for mod in dvb; do
|
||||
$MODPROBE $mod
|
||||
done
|
||||
|
||||
# Hack for loading modules which are not loaded on diffrent kernel images
|
||||
/etc/init.d/modutils.sh
|
||||
#
|
||||
|
||||
echo "Set BOOTLOGO ..."
|
||||
sleep 1
|
||||
|
||||
cat /etc/videomode > /proc/stb/video/videomode
|
||||
|
||||
#we must wait until udev has created the video device
|
||||
(
|
||||
if [ -d /proc/stb ]; then
|
||||
while true; do
|
||||
if [ -e /dev/dvb/adapter0/video0 ]; then
|
||||
break;
|
||||
fi;
|
||||
done;
|
||||
fi;
|
||||
[ -e /etc/dropbear/dropbear_rsa_host_key ] && /usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neowait.mvi;
|
||||
) &
|
||||
|
||||
/etc/init.d/bootlogo > /dev/null 2>&1
|
||||
|
||||
sleep 2
|
||||
echo "Driverload end"
|
||||
|
||||
if [ -f $LIBDIR/kernel/fs/autofs4/autofs4.ko ]; then
|
||||
/sbin/insmod $LIBDIR/kernel/fs/autofs4/autofs4.ko > /dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -e /tmp/init_reboot ]; then
|
||||
break;
|
||||
fi
|
||||
|
||||
if [ $TARGET = "Flash" ]; then
|
||||
echo "NEOBOOT is booting image from " $TARGET
|
||||
/bin/umount /media/usb > /dev/null 2>&1
|
||||
/bin/umount /media/hdd > /dev/null 2>&1
|
||||
/usr/bin/showiframe /usr/share/bootlogo.mvi > /dev/null 2>&1
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "----------------------------------"
|
||||
echo " BOOT UP IMAGE FROM FLASH "
|
||||
echo "----------------------------------"
|
||||
else
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/.control_ok ]; then
|
||||
echo "No Error - Booting image normal..."
|
||||
else
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/.control_boot_new_image ]; then
|
||||
echo "First start image - The first attempt to launch a new image... ";
|
||||
rm -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/.control_boot_new_image > /dev/null 2>&1
|
||||
else
|
||||
HOSTNAME=`cat /etc/hostname`
|
||||
if [ ! -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/.control_ok ] ; then
|
||||
if [ $HOSTNAME = "vuultimo4k" ] || [ $HOSTNAME = "vusolo4k" ] || [ $HOSTNAME = "vuuno4kse" ] || [ $HOSTNAME = "vuuno4k" ]; then
|
||||
dd if=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/flash-kernel-$HOSTNAME.bin of=/dev/mmcblk0p1
|
||||
elif [ $HOSTNAME = "vuzero4k" ] ; then
|
||||
dd if=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/flash-kernel-$HOSTNAME.bin of=/dev/mmcblk0p4
|
||||
elif [ $HOSTNAME = "vuduo4k" ] ; then
|
||||
dd if=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/flash-kernel-$HOSTNAME.bin of=/dev/mmcblk0p6
|
||||
fi
|
||||
echo "Wrong kernel. Press number 3" > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/used_flash_kernel
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot
|
||||
sleep 5; reboot -f
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "NeoBoot is booting" $TARGET " from " `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
|
||||
if [ -d $NEODEVICE$IMAGEKATALOG/$TARGET ]; then
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev ]; then
|
||||
sed -ie s!"\$4"!"\$3"!g $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev
|
||||
fi
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi ]; then
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
else
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
/bin/mount -o bind /dev $NEODEVICE$IMAGEKATALOG/$TARGET/dev
|
||||
/bin/mount -o bind /proc $NEODEVICE$IMAGEKATALOG/$TARGET/proc
|
||||
/bin/mount -o bind /sys $NEODEVICE$IMAGEKATALOG/$TARGET/sys
|
||||
|
||||
rm $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
mkdir $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
|
||||
rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
orgimag=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
for item in $orgimag; do
|
||||
ohdd=`echo $item | cut -d"/" -f3`
|
||||
nhdd=`mount | sed "/\$ohdd/!d" | sed q | cut -d" " -f3`
|
||||
if [ $nhdd == '$NEODEVICE' ]; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
else
|
||||
echo "umount "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ]; then
|
||||
cp -f /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
fi
|
||||
chmod 755 `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "NeoBOOT created the file mount enigma2_pre_start.sh "
|
||||
|
||||
echo " [NEOBOOT] Use chroot ... exec /usr/sbin/chroot..."
|
||||
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init.sysvinit ]; then
|
||||
echo "----------------------------------------"
|
||||
echo " -=*[ BOOT UP IMAGE FROM DISK ]*=- "
|
||||
echo "----------------------------------------"
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init.sysvinit
|
||||
elif [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init ]; then
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init
|
||||
else
|
||||
echo " "
|
||||
echo " NEOBOOT - ERROR !!! "
|
||||
echo "Not found correctly unpacked image "$TARGET" z partycji " $DEVICE
|
||||
echo "Check the correctness of unpacked catalogs in the selected one image. "
|
||||
echo " Back to image Flash... "
|
||||
|
||||
/usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/error.mvi > /dev/null 2>&1
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot
|
||||
echo "Used Kernel: Reinstall kernel !" > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/used_flash_kernel
|
||||
sleep 15; reboot -f
|
||||
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# boot Flash
|
||||
|
||||
if [ -f /sbin/init.sysvinit ]; then
|
||||
#echo "Running /sbin/init.sysvinit"
|
||||
exec /sbin/init.sysvinit $1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
exit
|
||||
@@ -1,275 +0,0 @@
|
||||
#!/bin/sh
|
||||
#script mod by gutosie
|
||||
#neo init arm
|
||||
|
||||
echo "====================================================> "
|
||||
echo " "
|
||||
echo " -=*[ NEOBOOT - BOOT UP ]*=- "
|
||||
echo " NEO BOOT INIT Version: gutosie "
|
||||
echo " q(-_-)p "
|
||||
echo " "
|
||||
echo "====================================================> "
|
||||
|
||||
|
||||
NEODEVICE=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
IMAGEKATALOG=ImageBoot
|
||||
|
||||
|
||||
if [ -e /tmp/.init_reboot ]; then
|
||||
rm /tmp/.init_reboot
|
||||
break;
|
||||
|
||||
else
|
||||
if [ -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`IMAGEKATALOG/.neonextboot ] ; then
|
||||
CELBOOT=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
if [ $CELBOOT = "Flash" ]; then
|
||||
exec /sbin/init.sysvinit $*
|
||||
exit 0
|
||||
else
|
||||
echo " "
|
||||
break;
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
LIBDIR=/lib/modules/`uname -r`
|
||||
if [ ! -d $LIBDIR ]; then
|
||||
LIBDIR=/lib/modules/`ls /lib/modules | tail -n 1`
|
||||
fi
|
||||
echo "Mount kernel filesystems ..."
|
||||
if [ `mount | grep /proc | wc -l` -lt 1 ]; then
|
||||
/bin/mount -a
|
||||
/bin/mount -t proc proc /proc > /dev/null 2>&1
|
||||
/bin/mount -t sysfs sysfs /sys > /dev/null 2>&1
|
||||
/sbin/depmod -Ae > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
sleep 5
|
||||
|
||||
echo "NeoBoot is starting mdev and mout HDD USB ..."
|
||||
sleep 1
|
||||
echo "/sbin/mdev" > /proc/sys/kernel/hotplug
|
||||
/etc/init.d/mdev > /dev/null 2>&1
|
||||
|
||||
|
||||
############..>>>>>>>>
|
||||
|
||||
sleep 5
|
||||
mnttest="nouuid"
|
||||
if [ -e /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/install ]; then
|
||||
orgimag1=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
selectinstall=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/install`
|
||||
for item in $orgimag1; do
|
||||
selectmnt=`blkid | sed "/$selectinstall/!d" | cut -d":" -f1`
|
||||
if [ $selectmnt == $item ]; then
|
||||
echo "selectmnt=" $selectmnt
|
||||
mnttest="uuid"
|
||||
mount $selectmnt `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`ImageBoot ]; then
|
||||
echo "NeoBoot hasn't been installed on: " $selectmnt
|
||||
umount `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
else
|
||||
echo "NeoBoot has been installed on: " $selectmnt
|
||||
break;
|
||||
fi
|
||||
done
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG ]; then
|
||||
mkdir -p /media/hdd > /dev/null 2>&1
|
||||
mkdir -p /media/usb > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` ]; then
|
||||
mkdir `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
fi
|
||||
if [ $mnttest == "nouuid" ] ; then
|
||||
echo "NeoBoot mount by Device"
|
||||
DEVICES1=`find /dev/sd??`
|
||||
for DEVICE in $DEVICES1;
|
||||
do
|
||||
if [ -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` ]; then
|
||||
echo "neoboot checking installation on: " $DEVICE
|
||||
mount $DEVICE `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`ImageBoot ]; then
|
||||
echo "NeoBoot hasn't been installed on: " $DEVICE
|
||||
umount `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location` > /dev/null 2>&1
|
||||
else
|
||||
echo "NeoBoot has been installed on: " $DEVICE
|
||||
break;
|
||||
fi
|
||||
done
|
||||
elif [ $mnttest == "uuid" ]; then
|
||||
echo "NeoBoot mount by UUID"
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/.neonextboot ]; then
|
||||
if [ -e /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neo.sh ]; then
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neo.sh
|
||||
echo "___________________neoMountpoint_______________________ "
|
||||
sleep 1
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
MODPROBE=/sbin/modprobe
|
||||
|
||||
echo "Load video and frame buffer modules ..."
|
||||
#modprobe dvb
|
||||
|
||||
echo "NeoBoot is loading modules"
|
||||
for mod in dvb; do
|
||||
$MODPROBE $mod
|
||||
done
|
||||
|
||||
# Hack for loading modules which are not loaded on diffrent kernel images
|
||||
/etc/init.d/modutils.sh
|
||||
#
|
||||
|
||||
echo "Set BOOTLOGO ..."
|
||||
sleep 1
|
||||
|
||||
|
||||
cat /etc/videomode > /proc/stb/video/videomode
|
||||
|
||||
#we must wait until udev has created the video device
|
||||
(
|
||||
if [ -d /proc/stb ]; then
|
||||
while true; do
|
||||
if [ -e /dev/dvb/adapter0/video0 ]; then
|
||||
break;
|
||||
fi;
|
||||
done;
|
||||
fi;
|
||||
[ -e /etc/dropbear/dropbear_rsa_host_key ] && /usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neowait.mvi;
|
||||
) &
|
||||
|
||||
/etc/init.d/bootlogo > /dev/null 2>&1
|
||||
|
||||
sleep 2
|
||||
echo "Driverload end"
|
||||
|
||||
if [ -f $LIBDIR/kernel/fs/autofs4/autofs4.ko ]; then
|
||||
/sbin/insmod $LIBDIR/kernel/fs/autofs4/autofs4.ko > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ -e /tmp/init_reboot ]; then
|
||||
break;
|
||||
fi
|
||||
|
||||
|
||||
###>>>>>>>>>>>>>>>>>
|
||||
|
||||
UPLOAD=ImagesUpload
|
||||
mount /dev/sda1 /media/hdd
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "Error mounting, Return to image Flash..."
|
||||
sleep 2
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Reinstall kernel -Press number 3" > $NEODEVICE$UPLOAD/.kernel/used_flash_kernel
|
||||
echo " Sending all processes the TERM- KILL signal..."
|
||||
reboot -f
|
||||
fi
|
||||
|
||||
|
||||
TARGET=Flash
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot ]; then
|
||||
TARGET=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
fi
|
||||
|
||||
if [ $TARGET = "Flash" ]; then
|
||||
echo "NEOBOOT is booting image from " $TARGET
|
||||
/bin/umount /media/usb > /dev/null 2>&1
|
||||
/bin/umount /media/hdd > /dev/null 2>&1
|
||||
/usr/bin/showiframe /usr/share/bootlogo.mvi > /dev/null 2>&1
|
||||
sync; ln -sfn /sbin/init.sysvinit /sbin/init; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh
|
||||
echo "----------------------------------"
|
||||
echo " BOOT UP IMAGE FROM FLASH "
|
||||
echo "----------------------------------"
|
||||
else
|
||||
|
||||
echo "NeoBoot is booting" $TARGET " from " `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
|
||||
if [ -d $NEODEVICE$IMAGEKATALOG/$TARGET ]; then
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev ]; then
|
||||
sed -ie s!"\$4"!"\$3"!g $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev
|
||||
fi
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi ]; then
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
else
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
/bin/mount -o bind /dev $NEODEVICE$IMAGEKATALOG/$TARGET/dev
|
||||
/bin/mount -o bind /proc $NEODEVICE$IMAGEKATALOG/$TARGET/proc
|
||||
/bin/mount -o bind /sys $NEODEVICE$IMAGEKATALOG/$TARGET/sys
|
||||
|
||||
rm $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
mkdir $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
|
||||
rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
|
||||
orgimag=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
for item in $orgimag; do
|
||||
ohdd=`echo $item | cut -d"/" -f3`
|
||||
nhdd=`mount | sed "/\$ohdd/!d" | sed q | cut -d" " -f3`
|
||||
if [ $nhdd == '$NEODEVICE' ]; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
else
|
||||
echo "umount "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ]; then
|
||||
cp -f /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
fi
|
||||
chmod 755 `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "NeoBOOT created the file mount enigma2_pre_start.sh "
|
||||
|
||||
echo " [NEOBOOT] Use chroot ... exec /usr/sbin/chroot..."
|
||||
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init.sysvinit ]; then
|
||||
echo "----------------------------------------"
|
||||
echo " -=*[ BOOT UP IMAGE FROM DISK ]*=- "
|
||||
echo "----------------------------------------"
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init.sysvinit
|
||||
elif [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init ]; then
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init
|
||||
else
|
||||
echo " "
|
||||
echo " NEOBOOT - ERROR !!! "
|
||||
echo "Not found correctly unpacked image "$TARGET" z partycji " $DEVICE
|
||||
echo "Check the correctness of unpacked catalogs in the selected one image. "
|
||||
echo " Back to image Flash... "
|
||||
|
||||
/usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/error.mvi > /dev/null 2>&1
|
||||
sync; ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot
|
||||
echo "Used Kernel: Reinstall kernel !" > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/used_flash_kernel
|
||||
sleep 15; reboot -f
|
||||
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# boot Flash
|
||||
|
||||
if [ -f /sbin/init.sysvinit ]; then
|
||||
#echo "Running /sbin/init.sysvinit"
|
||||
exec /sbin/init.sysvinit $1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
exit
|
||||
@@ -1,318 +0,0 @@
|
||||
#!/bin/sh
|
||||
#DESCRIPTION = This script mod. by gutosie
|
||||
#NeoBoot INIT
|
||||
#Scrypt Unix Shell - init for neoboot
|
||||
|
||||
echo "====================================================> "
|
||||
echo " "
|
||||
echo " -=*[ NEOBOOT - BOOT UP ]*=- "
|
||||
echo " NEO BOOT INIT Version: gutosie "
|
||||
echo " q(-_-)p "
|
||||
echo " "
|
||||
echo "====================================================> "
|
||||
|
||||
NEODEVICE=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
IMAGEKATALOG=ImageBoot
|
||||
|
||||
if [ -e /tmp/.init_reboot ]; then
|
||||
rm /tmp/.init_reboot
|
||||
break;
|
||||
|
||||
else
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG ] ; then
|
||||
CELBOOT=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
if [ $CELBOOT = "Flash" ]; then
|
||||
exec /sbin/init.sysvinit $*
|
||||
exit 0
|
||||
else
|
||||
echo " "
|
||||
break;
|
||||
fi
|
||||
fi
|
||||
|
||||
mknod /dev/sda b 8 0
|
||||
mknod /dev/sda1 b 8 1
|
||||
mknod /dev/sda2 b 8 2
|
||||
mknod /dev/sdb b 8 16
|
||||
mknod /dev/sdb1 b 8 17
|
||||
mknod /dev/sdb2 b 8 18
|
||||
mknod /dev/sdc b 8 32
|
||||
mknod /dev/sdc1 b 8 33
|
||||
mknod /dev/sdc2 b 8 34
|
||||
mknod /dev/sdd b 8 48
|
||||
mknod /dev/sdd1 b 8 49
|
||||
mknod /dev/sdd2 b 8 50
|
||||
|
||||
mkdir /dev/input
|
||||
mknod /dev/input/event0 c 13 64
|
||||
|
||||
mknod /dev/fb0 c 29 0
|
||||
mkdir /dev/fb
|
||||
ln -s ../fb0 /dev/fb/0
|
||||
|
||||
sleep 1
|
||||
|
||||
LIBDIR=/lib/modules/`uname -r`
|
||||
if [ ! -d $LIBDIR ]; then
|
||||
LIBDIR=/lib/modules/`ls /lib/modules | tail -n 1`
|
||||
fi
|
||||
|
||||
if [ `mount | grep /proc | wc -l` -lt 1 ]; then
|
||||
/bin/mount -t proc proc /proc > /dev/null 2>&1
|
||||
/bin/mount -t sysfs sysfs /sys > /dev/null 2>&1
|
||||
/sbin/depmod -Ae > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
echo "NeoBoot is starting mdev and mout HDD USB ..."
|
||||
echo "/sbin/mdev" > /proc/sys/kernel/hotplug
|
||||
/etc/init.d/mdev > /dev/null 2>&1
|
||||
|
||||
sleep 5
|
||||
echo " "
|
||||
|
||||
############..>>>>>>>>
|
||||
echo "Search NEOBOOT... "
|
||||
mnttest="nouuid"
|
||||
if [ -e $NEOBOOT/bin/install ]; then
|
||||
orgimag1=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
selectinstall=`cat $NEOBOOT/bin/install`
|
||||
for item in $orgimag1; do
|
||||
selectmnt=`blkid | sed "/$selectinstall/!d" | cut -d":" -f1`
|
||||
if [ $selectmnt == $item ]; then
|
||||
echo "selectmnt=" $selectmnt
|
||||
mnttest="uuid"
|
||||
mount $selectmnt $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "NEOBOOT hasn't been installed on: " $selectmnt
|
||||
umount $NEODEVICE > /dev/null 2>&1
|
||||
else
|
||||
echo "NEOBOOT has been installed on: " $selectmnt
|
||||
break;
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
mkdir $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ $mnttest="nouuid" ] ; then
|
||||
echo "NeoBoot mount by Device"
|
||||
DEVICES1=`find /dev/sd??`
|
||||
for DEVICE in $DEVICES1;
|
||||
do
|
||||
if [ -e $NEODEVICE ]; then
|
||||
echo "neoboot checking installation on: " $DEVICE
|
||||
mount $DEVICE $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "NeoBoot hasn't been installed on: " $DEVICE
|
||||
umount $NEODEVICE > /dev/null 2>&1
|
||||
else
|
||||
echo "NEOBOOTt has been installed on: " $DEVICE
|
||||
break;
|
||||
fi
|
||||
done
|
||||
elif [ $mnttest="uuid" ]; then
|
||||
echo "NEOBOOT mount by UUID"
|
||||
fi
|
||||
|
||||
###>>>>>>>>>>>>>>>>>
|
||||
|
||||
|
||||
#dodatkowe szukanie neoboota
|
||||
#mount /dev/sdb1 $NEO > /dev/null 2>&1 # <<< tu mozesz zmienic sdb1 i wpisac Twoje montowanie dysku dla neoboot
|
||||
|
||||
MODPROBE=/sbin/modprobe
|
||||
|
||||
echo "Load video and frame buffer modules ..."
|
||||
modprobe dvb
|
||||
|
||||
echo "NeoBoot is loading modules"
|
||||
for mod in dvb; do
|
||||
echo "=======================> NeoBoot is loading modules"
|
||||
$MODPROBE $mod
|
||||
done
|
||||
|
||||
# Hack for loading modules which are not loaded on diffrent kernel images
|
||||
/etc/init.d/sysfs.sh
|
||||
/etc/init.d/modutils.sh
|
||||
|
||||
#
|
||||
echo "Set BOOTLOGO ..."
|
||||
sleep 1
|
||||
|
||||
cat /etc/videomode > /proc/stb/video/videomode
|
||||
|
||||
#we must wait until udev has created the video device
|
||||
(
|
||||
if [ -d /proc/stb ]; then
|
||||
while true; do
|
||||
if [ -e /dev/dvb/adapter0/video0 ]; then
|
||||
break;
|
||||
fi;
|
||||
done;
|
||||
fi;
|
||||
[ -e /etc/dropbear/dropbear_rsa_host_key ] && /usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neowait.mvi;
|
||||
) &
|
||||
|
||||
/etc/init.d/bootlogo > /dev/null 2>&1
|
||||
|
||||
sleep 2
|
||||
echo "Driverload end"
|
||||
|
||||
if [ -f $LIBDIR/kernel/fs/autofs4/autofs4.ko ]; then
|
||||
/sbin/insmod $LIBDIR/kernel/fs/autofs4/autofs4.ko > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ -e /tmp/init_reboot ]; then
|
||||
break;
|
||||
fi
|
||||
|
||||
if [ -e /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/neobm ]; then
|
||||
echo " Neo-Boot start boot manager "
|
||||
echo " Waiting to change image - 20s "
|
||||
echo " "
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neologo.mvi > /dev/null 2>&1
|
||||
sleep 1
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/neobm > /dev/null 2>&1
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/fbclear > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
|
||||
#>>>>>>>>>>>>>>>>>>>>>>>>>>>>
|
||||
|
||||
UPLOAD=ImagesUpload
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "Error mounting, Return to image Flash..."
|
||||
sleep 2
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Reinstall kernel -Press number 3" > $NEODEVICE$UPLOAD/.kernel/used_flash_kernel
|
||||
echo " Sending all processes the TERM- KILL signal..."
|
||||
reboot -f
|
||||
fi
|
||||
|
||||
#ln -sfn /sbin/init.sysvinit /sbin/init #<<<<___after adding it will return to image flash
|
||||
|
||||
TARGET=Flash
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot ]; then
|
||||
TARGET=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
fi
|
||||
|
||||
if [ $TARGET = "Flash" ]; then
|
||||
echo "NEOBOOT is booting image from " $TARGET
|
||||
/bin/umount /media/usb > /dev/null 2>&1
|
||||
/bin/umount /media/hdd > /dev/null 2>&1
|
||||
/usr/bin/showiframe /usr/share/bootlogo.mvi > /dev/null 2>&1
|
||||
sync; ln -sfn /sbin/init.sysvinit /sbin/init#; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
echo "----------------------------------"
|
||||
echo " BOOT UP IMAGE FROM FLASH "
|
||||
echo "----------------------------------"
|
||||
else
|
||||
|
||||
######### test boot new imaga>>>>
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG/$TARGET/.control_ok ]; then
|
||||
[ $PL ] && echo "Nie ma bledu, normalny start image..." || echo "No Error - Booting image normal..."
|
||||
else
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG/$TARGET/.control_boot_new_image ]; then
|
||||
echo "First start image - The first attempt to launch a new image... "; rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/.control_boot_new_image
|
||||
else
|
||||
echo "Wrong kernel. Press number 3" > $NEODEVICE$UPLOAD/.kernel/used_flash_kernel
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Error - NeoBoot he can not run it image !!! "
|
||||
echo "Restart STB - Back to Flash... "
|
||||
echo "NeoBoot is booting" $TARGET
|
||||
sleep 5; reboot -f
|
||||
fi
|
||||
fi
|
||||
######### test boot new image<<<<<
|
||||
|
||||
echo "NeoBoot is booting" $TARGET " from " `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
|
||||
if [ -d $NEODEVICE$IMAGEKATALOG/$TARGET ]; then
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev ]; then
|
||||
sed -ie s!"\$4"!"\$3"!g $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev
|
||||
fi
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi ]; then
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
else
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
/bin/mount -o bind /dev $NEODEVICE$IMAGEKATALOG/$TARGET/dev
|
||||
/bin/mount -o bind /proc $NEODEVICE$IMAGEKATALOG/$TARGET/proc
|
||||
/bin/mount -o bind /sys $NEODEVICE$IMAGEKATALOG/$TARGET/sys
|
||||
|
||||
rm $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
mkdir $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ]; then
|
||||
rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
cp -f /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
|
||||
orgimag=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
for item in $orgimag; do
|
||||
ohdd=`echo $item | cut -d"/" -f3`
|
||||
nhdd=`mount | sed "/\$ohdd/!d" | sed q | cut -d" " -f3`
|
||||
if [ $nhdd == '`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`' ]; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
else
|
||||
echo "umount "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
|
||||
chmod 755 `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "NeoBOOT created the file mount enigma2_pre_start.sh "
|
||||
|
||||
echo " [NEOBOOT] Use chroot ... exec /usr/sbin/chroot..."
|
||||
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init.sysvinit ]; then
|
||||
echo "----------------------------------------"
|
||||
echo " -=*[ BOOT UP IMAGE FROM DISK ]*=- "
|
||||
echo "----------------------------------------"
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init.sysvinit
|
||||
elif [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init ]; then
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init
|
||||
else
|
||||
echo " "
|
||||
echo " NEOBOOT - ERROR !!! "
|
||||
echo "Not found correctly unpacked image "$TARGET" z partycji " $DEVICE
|
||||
echo "Check the correctness of unpacked catalogs in the selected one image. "
|
||||
echo " Back to image Flash... "
|
||||
/usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/error.mvi > /dev/null 2>&1
|
||||
sync; ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot
|
||||
echo "Used Kernel: Reinstall kernel !" > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/used_flash_kernel
|
||||
sleep 15; reboot -f
|
||||
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# boot Flash
|
||||
|
||||
if [ -f /sbin/init.sysvinit ]; then
|
||||
#echo "Running /sbin/init.sysvinit"
|
||||
exec /sbin/init.sysvinit $1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
exit
|
||||
@@ -1,309 +0,0 @@
|
||||
#!/bin/sh
|
||||
#DESCRIPTION = This script mod. by gutosie
|
||||
#NeoBoot INIT
|
||||
#Scrypt Unix Shell - init for neoboot
|
||||
|
||||
echo "====================================================> "
|
||||
echo " "
|
||||
echo " -=*[ NEOBOOT - BOOT UP ]*=- "
|
||||
echo " NEO BOOT INIT Version: gutosie "
|
||||
echo " q(-_-)p "
|
||||
echo " "
|
||||
echo "====================================================> "
|
||||
|
||||
NEODEVICE=`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
IMAGEKATALOG=ImageBoot
|
||||
|
||||
if [ -e /tmp/.init_reboot ]; then
|
||||
rm /tmp/.init_reboot
|
||||
break;
|
||||
|
||||
else
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG ] ; then
|
||||
CELBOOT=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
if [ $CELBOOT = "Flash" ]; then
|
||||
exec /sbin/init.sysvinit $*
|
||||
exit 0
|
||||
else
|
||||
echo " "
|
||||
break;
|
||||
fi
|
||||
fi
|
||||
|
||||
mknod /dev/sda b 8 0
|
||||
mknod /dev/sda1 b 8 1
|
||||
mknod /dev/sda2 b 8 2
|
||||
mknod /dev/sdb b 8 16
|
||||
mknod /dev/sdb1 b 8 17
|
||||
mknod /dev/sdb2 b 8 18
|
||||
mknod /dev/sdc b 8 32
|
||||
mknod /dev/sdc1 b 8 33
|
||||
mknod /dev/sdc2 b 8 34
|
||||
mknod /dev/sdd b 8 48
|
||||
mknod /dev/sdd1 b 8 49
|
||||
mknod /dev/sdd2 b 8 50
|
||||
|
||||
mkdir /dev/input
|
||||
mknod /dev/input/event0 c 13 64
|
||||
|
||||
mknod /dev/fb0 c 29 0
|
||||
mkdir /dev/fb
|
||||
ln -s ../fb0 /dev/fb/0
|
||||
|
||||
sleep 1
|
||||
|
||||
LIBDIR=/lib/modules/`uname -r`
|
||||
if [ ! -d $LIBDIR ]; then
|
||||
LIBDIR=/lib/modules/`ls /lib/modules | tail -n 1`
|
||||
fi
|
||||
|
||||
if [ `mount | grep /proc | wc -l` -lt 1 ]; then
|
||||
/bin/mount -t proc proc /proc > /dev/null 2>&1
|
||||
/bin/mount -t sysfs sysfs /sys > /dev/null 2>&1
|
||||
/sbin/depmod -Ae > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
echo "NeoBoot is starting mdev and mout HDD USB ..."
|
||||
echo "/sbin/mdev" > /proc/sys/kernel/hotplug
|
||||
/etc/init.d/mdev > /dev/null 2>&1
|
||||
|
||||
sleep 5
|
||||
echo " "
|
||||
|
||||
############..>>>>>>>>
|
||||
echo "Search NEOBOOT... "
|
||||
mnttest="nouuid"
|
||||
if [ -e $NEOBOOT/bin/install ]; then
|
||||
orgimag1=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
selectinstall=`cat $NEOBOOT/bin/install`
|
||||
for item in $orgimag1; do
|
||||
selectmnt=`blkid | sed "/$selectinstall/!d" | cut -d":" -f1`
|
||||
if [ $selectmnt == $item ]; then
|
||||
echo "selectmnt=" $selectmnt
|
||||
mnttest="uuid"
|
||||
mount $selectmnt $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "NEOBOOT hasn't been installed on: " $selectmnt
|
||||
umount $NEODEVICE > /dev/null 2>&1
|
||||
else
|
||||
echo "NEOBOOT has been installed on: " $selectmnt
|
||||
break;
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
mkdir $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ $mnttest="nouuid" ] ; then
|
||||
echo "NeoBoot mount by Device"
|
||||
DEVICES1=`find /dev/sd??`
|
||||
for DEVICE in $DEVICES1;
|
||||
do
|
||||
if [ -e $NEODEVICE ]; then
|
||||
echo "neoboot checking installation on: " $DEVICE
|
||||
mount $DEVICE $NEODEVICE > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "NeoBoot hasn't been installed on: " $DEVICE
|
||||
umount $NEODEVICE > /dev/null 2>&1
|
||||
else
|
||||
echo "NEOBOOTt has been installed on: " $DEVICE
|
||||
break;
|
||||
fi
|
||||
done
|
||||
elif [ $mnttest="uuid" ]; then
|
||||
echo "NEOBOOT mount by UUID"
|
||||
fi
|
||||
###>>>>>>>>>>>>>>>>>
|
||||
HOSTNAME=`cat /etc/hostname`
|
||||
if [ ! -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/boot/$HOSTNAME.vmlinux.gz ]; then
|
||||
|
||||
echo "Image launched on a base kernel flash. " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/kernel_flash
|
||||
|
||||
MODPROBE=/sbin/modprobe
|
||||
|
||||
echo "Load video and frame buffer modules ..."
|
||||
modprobe dvb
|
||||
|
||||
echo "NeoBoot is loading modules"
|
||||
for mod in dvb; do
|
||||
$MODPROBE $mod
|
||||
done
|
||||
|
||||
# Hack for loading modules which are not loaded on diffrent kernel images
|
||||
/etc/init.d/modutils.sh
|
||||
#
|
||||
|
||||
echo "Set BOOTLOGO ..."
|
||||
sleep 1
|
||||
|
||||
cat /etc/videomode > /proc/stb/video/videomode
|
||||
|
||||
#we must wait until udev has created the video device
|
||||
(
|
||||
if [ -d /proc/stb ]; then
|
||||
while true; do
|
||||
if [ -e /dev/dvb/adapter0/video0 ]; then
|
||||
break;
|
||||
fi;
|
||||
done;
|
||||
fi;
|
||||
[ -e /etc/dropbear/dropbear_rsa_host_key ] && /usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/neowait.mvi;
|
||||
) &
|
||||
|
||||
/etc/init.d/bootlogo > /dev/null 2>&1
|
||||
|
||||
sleep 2
|
||||
echo "Driverload end"
|
||||
|
||||
if [ -f $LIBDIR/kernel/fs/autofs4/autofs4.ko ]; then
|
||||
/sbin/insmod $LIBDIR/kernel/fs/autofs4/autofs4.ko > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/fbclear > /dev/null 2>&1
|
||||
|
||||
fi
|
||||
|
||||
#dodatkowe szukanie neoboota
|
||||
#mount /dev/sdb1 $NEO > /dev/null 2>&1 # <<< tu mozesz zmienic sdb1 i wpisac Twoje montowanie dysku dla neoboot
|
||||
|
||||
if [ -e /tmp/init_reboot ]; then
|
||||
break;
|
||||
fi
|
||||
|
||||
UPLOAD=ImagesUpload
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG ]; then
|
||||
echo "Error mounting, Return to image Flash..."
|
||||
sleep 2
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Reinstall kernel -Press number 3" > $NEODEVICE$UPLOAD/.kernel/used_flash_kernel
|
||||
echo " Sending all processes the TERM- KILL signal..."
|
||||
reboot -f
|
||||
fi
|
||||
|
||||
#ln -sfn /sbin/init.sysvinit /sbin/init #<<<<___after adding it will return to image flash
|
||||
|
||||
TARGET=Flash
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot ]; then
|
||||
TARGET=`cat $NEODEVICE$IMAGEKATALOG/.neonextboot`
|
||||
fi
|
||||
|
||||
if [ $TARGET = "Flash" ]; then
|
||||
echo "NEOBOOT is booting image from " $TARGET
|
||||
/bin/umount /media/usb > /dev/null 2>&1
|
||||
/bin/umount /media/hdd > /dev/null 2>&1
|
||||
/usr/bin/showiframe /usr/share/bootlogo.mvi > /dev/null 2>&1
|
||||
sync; ln -sfn /sbin/init.sysvinit /sbin/init#; /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
echo "----------------------------------"
|
||||
echo " BOOT UP IMAGE FROM FLASH "
|
||||
echo "----------------------------------"
|
||||
else
|
||||
|
||||
######### test boot new imaga>>>>
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG/$TARGET/.control_ok ]; then
|
||||
[ $PL ] && echo "Nie ma bledu, normalny start image..." || echo "No Error - Booting image normal..."
|
||||
else
|
||||
if [ -e $NEODEVICE$IMAGEKATALOG/$TARGET/.control_boot_new_image ]; then
|
||||
echo "First start image - The first attempt to launch a new image... "; rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/.control_boot_new_image
|
||||
else
|
||||
echo "Wrong kernel. Press number 3" > $NEODEVICE$UPLOAD/.kernel/used_flash_kernel
|
||||
ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > $NEODEVICE$IMAGEKATALOG/.neonextboot
|
||||
echo "Error - NeoBoot he can not run it image !!! "
|
||||
echo "Restart STB - Back to Flash... "
|
||||
echo "NeoBoot is booting" $TARGET
|
||||
sleep 5; reboot -f
|
||||
fi
|
||||
fi
|
||||
######### test boot new image<<<<<
|
||||
|
||||
echo "NeoBoot is booting" $TARGET " from " `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
|
||||
if [ -d $NEODEVICE$IMAGEKATALOG/$TARGET ]; then
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev ]; then
|
||||
sed -ie s!"\$4"!"\$3"!g $NEODEVICE$IMAGEKATALOG/$TARGET/etc/init.d/udev
|
||||
fi
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi ]; then
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
else
|
||||
/usr/bin/showiframe $NEODEVICE$IMAGEKATALOG/$TARGET/usr/share/bootlogo.mvi
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
/bin/mount -o bind /dev $NEODEVICE$IMAGEKATALOG/$TARGET/dev
|
||||
/bin/mount -o bind /proc $NEODEVICE$IMAGEKATALOG/$TARGET/proc
|
||||
/bin/mount -o bind /sys $NEODEVICE$IMAGEKATALOG/$TARGET/sys
|
||||
|
||||
rm $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
mkdir $NEODEVICE$IMAGEKATALOG/$TARGET$NEODEVICE > /dev/null 2>&1
|
||||
|
||||
if [ -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ]; then
|
||||
rm -f $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
orgimag=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
for item in $orgimag; do
|
||||
ohdd=`echo $item | cut -d"/" -f3`
|
||||
nhdd=`mount | sed "/\$ohdd/!d" | sed q | cut -d" " -f3`
|
||||
if [ $nhdd == '`cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`' ]; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
else
|
||||
echo "umount "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mkdir "$nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "mount "$item $nhdd >> $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
if [ ! -e $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh ]; then
|
||||
cp -f /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh $NEODEVICE$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
fi
|
||||
chmod 755 `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/usr/bin/enigma2_pre_start.sh
|
||||
echo "NeoBOOT created the file mount enigma2_pre_start.sh "
|
||||
|
||||
echo " [NEOBOOT] Use chroot ... exec /usr/sbin/chroot..."
|
||||
|
||||
if [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init.sysvinit ]; then
|
||||
echo "----------------------------------------"
|
||||
echo " -=*[ BOOT UP IMAGE FROM DISK ]*=- "
|
||||
echo "----------------------------------------"
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init.sysvinit
|
||||
elif [ -f `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET/sbin/init ]; then
|
||||
exec /usr/sbin/chroot `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/$TARGET /sbin/init
|
||||
else
|
||||
echo " "
|
||||
echo " NEOBOOT - ERROR !!! "
|
||||
echo "Not found correctly unpacked image "$TARGET" z partycji " $DEVICE
|
||||
echo "Check the correctness of unpacked catalogs in the selected one image. "
|
||||
echo " Back to image Flash... "
|
||||
/usr/bin/showiframe /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/error.mvi > /dev/null 2>&1
|
||||
sync; ln -sfn /sbin/init.sysvinit /sbin/init
|
||||
echo "Flash " > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot
|
||||
echo "Used Kernel: Reinstall kernel !" > `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$UPLOAD/.kernel/used_flash_kernel
|
||||
sleep 15; reboot -f
|
||||
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# boot Flash
|
||||
|
||||
if [ -f /sbin/init.sysvinit ]; then
|
||||
#echo "Running /sbin/init.sysvinit"
|
||||
exec /sbin/init.sysvinit $1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
exit
|
||||
@@ -1,189 +0,0 @@
|
||||
from re import sub
|
||||
from Tools.Directories import fileExists, resolveFilename, SCOPE_CURRENT_SKIN
|
||||
import xml.etree.cElementTree
|
||||
entities = [('ä', u'\xe4'),
|
||||
('ä', u'\xe4'),
|
||||
('ü', u'\xfc'),
|
||||
('ü', u'\xfc'),
|
||||
('ö', u'\xf6'),
|
||||
('ö', u'\xf6'),
|
||||
('Ä', u'\xc4'),
|
||||
('Ä', u'\xc4'),
|
||||
('Ü', u'\xdc'),
|
||||
('Ü', u'\xdc'),
|
||||
('Ö', u'\xd6'),
|
||||
('Ö', u'\xd6'),
|
||||
('ß', u'\xdf'),
|
||||
('ß', u'\xdf'),
|
||||
('…', u'...'),
|
||||
('–', u'-'),
|
||||
(' ', u' '),
|
||||
('"', u'"'),
|
||||
('&', u'&'),
|
||||
(''', u"'"),
|
||||
('<', u'<'),
|
||||
('>', u'>'),
|
||||
('<', u'<'),
|
||||
('>', u'>'),
|
||||
(' ', u' '),
|
||||
('&', u'&'),
|
||||
('"', u'"'),
|
||||
(''', u"'")]
|
||||
|
||||
def nab_strip_html(html):
|
||||
html = html.replace('\n', ' ')
|
||||
html = sub('\\s\\s+', ' ', html)
|
||||
html = sub('<br(\\s+/)?>', '\n', html)
|
||||
html = sub('</?(p|ul|ol)(\\s+.*?)?>', '\n', html)
|
||||
html = sub('<li(\\s+.*?)?>', '-', html)
|
||||
html = html.replace('</li>', '\n')
|
||||
return nab_strip_pass1(html)
|
||||
|
||||
|
||||
def nab_strip_pass1(html):
|
||||
html = sub('<(.*?)>', '', html)
|
||||
html.replace('Ä', '\xc3\x84')
|
||||
html.replace('ä', '\xc3\xa4')
|
||||
html.replace('ä', '\xc3\xa4')
|
||||
html.replace('ü', '\xc3\xbc')
|
||||
html.replace('ü', '\xc3\xbc')
|
||||
html.replace('ö', '\xc3\xb6')
|
||||
html.replace('ö', '\xc3\xb6')
|
||||
html.replace('Ä', '\xc3\x84')
|
||||
html.replace('Ä', '\xc3\x84')
|
||||
html.replace('Ü', '\xc3\x9c')
|
||||
html.replace('Ü', '\xc3\x9c')
|
||||
html.replace('Ö', '\xc3\x96')
|
||||
html.replace('Ö', '\xc3\x96')
|
||||
html.replace('ß', '\xc3\x9f')
|
||||
html.replace('ß', '\xc3\x9f')
|
||||
html.replace('<', '<')
|
||||
html.replace('>', '>')
|
||||
html.replace(' ', ' ')
|
||||
html.replace('&', '&')
|
||||
html.replace('"', '"')
|
||||
html.replace(''', "'")
|
||||
return html
|
||||
|
||||
|
||||
def nab_Read_CCCinfoCfg():
|
||||
myhost = '127.0.0.1'
|
||||
myuser = mypass = ''
|
||||
myport = '16001'
|
||||
if fileExists('/etc/delcccaminfo'):
|
||||
f = open('/etc/delcccaminfo', 'r')
|
||||
for line in f.readlines():
|
||||
line = line.strip()
|
||||
if line.find('HOST ADDRESS:') != -1:
|
||||
myhost = line[13:]
|
||||
elif line.find('WEBINFO USERNAME:') != -1:
|
||||
myuser = line[17:]
|
||||
elif line.find('WEBINFO PASSWORD:') != -1:
|
||||
mypass = line[17:]
|
||||
elif line.find('WEBINFO LISTEN PORT:') != -1:
|
||||
myport = line[20:]
|
||||
|
||||
f.close()
|
||||
myurl = 'http://' + myhost + ':' + myport
|
||||
if myuser and mypass:
|
||||
myurl = 'http://' + myuser + ':' + mypass + '@' + myhost + ':' + myport
|
||||
return [myhost,
|
||||
myuser,
|
||||
mypass,
|
||||
myport,
|
||||
myurl]
|
||||
|
||||
|
||||
def nab_Write_CCCinfoCfg(mycfg):
|
||||
out = open('/etc/delcccaminfo', 'w')
|
||||
strview = 'HOST ADDRESS:' + mycfg[0] + '\n'
|
||||
out.write(strview)
|
||||
strview = 'WEBINFO USERNAME:' + mycfg[1] + '\n'
|
||||
out.write(strview)
|
||||
strview = 'WEBINFO PASSWORD:' + mycfg[2] + '\n'
|
||||
out.write(strview)
|
||||
strview = 'WEBINFO LISTEN PORT:' + mycfg[3] + '\n'
|
||||
out.write(strview)
|
||||
out.close()
|
||||
|
||||
|
||||
def DeliteGetSkinPath():
|
||||
myskinpath = resolveFilename(SCOPE_CURRENT_SKIN, '')
|
||||
if myskinpath == '/usr/share/enigma2/':
|
||||
myskinpath = '/usr/share/enigma2/skin_default/'
|
||||
return myskinpath
|
||||
|
||||
|
||||
def nab_Detect_Machine():
|
||||
machine = 'dm8000'
|
||||
if fileExists('/etc/bhmachine'):
|
||||
f = open('/etc/bhmachine', 'r')
|
||||
machine = f.readline().strip()
|
||||
f.close()
|
||||
return machine
|
||||
|
||||
|
||||
def BhU_get_Version():
|
||||
ver = ''
|
||||
if fileExists('/boot/blackhole/version'):
|
||||
f = open('/boot/blackhole/version', 'r')
|
||||
ver = f.readline().strip()
|
||||
f.close()
|
||||
return ver
|
||||
|
||||
|
||||
def BhU_check_proc_version():
|
||||
ver = ''
|
||||
if fileExists('/boot/blackhole/version'):
|
||||
f = open('/boot/blackhole/version', 'r')
|
||||
ver = f.readline().strip()
|
||||
f.close()
|
||||
return ver
|
||||
|
||||
|
||||
def BhU_checkSkinVersion(skinfile):
|
||||
version = '2.0.0'
|
||||
authors = ['Army', 'Matrix10', 'capa']
|
||||
ret = 'Sorry this skin is not compatible with the current Black Hole image version.'
|
||||
curversion = int(version.replace('.', ''))
|
||||
fullfile = '/usr/share/enigma2/' + skinfile
|
||||
checkver = False
|
||||
checkauth = False
|
||||
if fileExists(fullfile):
|
||||
f = open(fullfile)
|
||||
for line in f.readlines():
|
||||
if line.find('black hole version:') != -1:
|
||||
parts = line.strip().split(':')
|
||||
ver = int(parts[1].strip().replace('.', ''))
|
||||
if ver >= curversion:
|
||||
checkver = True
|
||||
elif line.find('skin author:') != -1:
|
||||
parts = line.strip().split(':')
|
||||
auth = parts[1].strip()
|
||||
for a in authors:
|
||||
if a == auth:
|
||||
checkauth = True
|
||||
|
||||
f.close()
|
||||
if checkver == True:
|
||||
if checkauth == True:
|
||||
ret = 'passed'
|
||||
return ret
|
||||
|
||||
|
||||
def BhU_find_hdd():
|
||||
hdd = ''
|
||||
hdds = ['sda',
|
||||
'sdb',
|
||||
'sdc',
|
||||
'sdd',
|
||||
'sde',
|
||||
'sdf']
|
||||
for device in hdds:
|
||||
filename = '/sys/block/%s/removable' % device
|
||||
if fileExists(filename):
|
||||
if file(filename).read().strip() == '0':
|
||||
hdd = device
|
||||
break
|
||||
|
||||
return hdd
|
||||
@@ -1 +0,0 @@
|
||||
1.4.1
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
import sys, extract
|
||||
if len(sys.argv) < 15:
|
||||
if len(sys.argv) < 14:
|
||||
pass
|
||||
else:
|
||||
extract.NEOBootMainEx(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5], sys.argv[6], sys.argv[7], sys.argv[8], sys.argv[9], sys.argv[10], sys.argv[11], sys.argv[12], sys.argv[13], sys.argv[14], sys.argv[15])
|
||||
extract.NEOBootMainEx(sys.argv[1], sys.argv[2], sys.argv[3], sys.argv[4], sys.argv[5], sys.argv[6], sys.argv[7], sys.argv[8], sys.argv[9], sys.argv[10], sys.argv[11], sys.argv[12], sys.argv[13] , sys.argv[14])
|
||||
@@ -1,14 +1,23 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#from __future__ import print_function
|
||||
#from Plugins.Extensions.NeoBoot.__init__ import _
|
||||
|
||||
from Plugins.Extensions.NeoBoot.__init__ import _
|
||||
import os
|
||||
import time
|
||||
from Tools.Directories import fileExists, pathExists#, fileCheck
|
||||
from Tools.Directories import fileExists, pathExists, fileCheck
|
||||
from Tools.CList import CList
|
||||
from Components.SystemInfo import SystemInfo
|
||||
from Components.Console import Console
|
||||
from Task import LoggingTask
|
||||
try:
|
||||
from Task import LoggingTask
|
||||
except:
|
||||
from Components.Task import LoggingTask
|
||||
import Task
|
||||
from Screens.Screen import Screen
|
||||
from Components.ActionMap import ActionMap
|
||||
from Components.MenuList import MenuList
|
||||
from Components.Label import Label
|
||||
from Components.Pixmap import Pixmap
|
||||
from Screens.MessageBox import MessageBox
|
||||
|
||||
def readFile(filename):
|
||||
file = open(filename)
|
||||
@@ -374,19 +383,22 @@ class Harddisk():
|
||||
task.weighting = 1
|
||||
task = MkfsTask(job, _('Creating filesystem'))
|
||||
big_o_options = ['dir_index']
|
||||
if isFileSystemSupported('ext4'):
|
||||
task.setTool('mkfs.ext4')
|
||||
if size > 20000:
|
||||
try:
|
||||
version = map(int, open('/proc/version', 'r').read().split(' ', 4)[2].split('.', 2)[:2])
|
||||
if version[0] > 3 or version[0] > 2 and version[1] >= 2:
|
||||
task.args += ['-C', '262144']
|
||||
big_o_options.append('bigalloc')
|
||||
except Exception as ex:
|
||||
print 'Failed to detect Linux version:', ex
|
||||
|
||||
else:
|
||||
task.setTool('mkfs.ext3')
|
||||
###__blokada hash dla ext4 >>>
|
||||
# if isFileSystemSupported('ext4'):
|
||||
# task.setTool('mkfs.ext4')
|
||||
# if size > 20000:
|
||||
# try:
|
||||
# version = map(int, open('/proc/version', 'r').read().split(' ', 4)[2].split('.', 2)[:2])
|
||||
# if version[0] > 3 or version[0] > 2 and version[1] >= 2:
|
||||
# task.args += ['-C', '262144']
|
||||
# big_o_options.append('bigalloc')
|
||||
# except Exception as ex:
|
||||
# print 'Failed to detect Linux version:', ex
|
||||
# else:
|
||||
# task.setTool('mkfs.ext3')
|
||||
|
||||
task.setTool('mkfs.ext3')
|
||||
if size > 250000:
|
||||
task.args += ['-T',
|
||||
'largefile',
|
||||
@@ -939,6 +951,80 @@ class MkfsTask(Task.LoggingTask):
|
||||
self.log.append(data)
|
||||
|
||||
|
||||
###########################__From HarddiskSetup_################################
|
||||
class HarddiskSetup(Screen):
|
||||
|
||||
def __init__(self, session, hdd, action, text, question):
|
||||
Screen.__init__(self, session)
|
||||
self.action = action
|
||||
self.question = question
|
||||
self.setTitle(_('Setup hard disk'))
|
||||
self['model'] = Label(_('Model: ') + hdd.model())
|
||||
self['capacity'] = Label(_('Capacity: ') + hdd.capacity())
|
||||
self['bus'] = Label(_('Bus: ') + hdd.bus())
|
||||
self['key_red'] = Label(_('Cancel'))
|
||||
self['key_green'] = Label(text)
|
||||
self['actions'] = ActionMap(['OkCancelActions'], {'ok': self.hddQuestion,
|
||||
'cancel': self.close})
|
||||
self['shortcuts'] = ActionMap(['ShortcutActions'], {'red': self.close,
|
||||
'green': self.hddQuestion})
|
||||
|
||||
def hddQuestion(self):
|
||||
message = self.question + '\n' + _('You can continue watching TV etc. while this is running.')
|
||||
self.session.openWithCallback(self.hddConfirmed, MessageBox, message)
|
||||
|
||||
def hddConfirmed(self, confirmed):
|
||||
if not confirmed:
|
||||
return
|
||||
try:
|
||||
from Task import job_manager
|
||||
except:
|
||||
from Components.Task import job_manager
|
||||
try:
|
||||
job = self.action()
|
||||
job_manager.AddJob(job, onSuccess=job_manager.popupTaskView)
|
||||
from Screens.TaskView import JobView
|
||||
self.session.open(JobView, job, afterEventChangeable=False)
|
||||
except Exception as ex:
|
||||
self.session.open(MessageBox, str(ex), type=MessageBox.TYPE_ERROR, timeout=10)
|
||||
|
||||
self.close()
|
||||
|
||||
|
||||
class HarddiskSelection(Screen):
|
||||
def __init__(self, session):
|
||||
Screen.__init__(self, session)
|
||||
self.setTitle(_('Select hard disk'))
|
||||
self.skinName = 'HarddiskSelection'
|
||||
if harddiskmanager.HDDCount() == 0:
|
||||
tlist = []
|
||||
tlist.append((_('no storage devices found'), 0))
|
||||
self['hddlist'] = MenuList(tlist)
|
||||
else:
|
||||
self['hddlist'] = MenuList(harddiskmanager.HDDList())
|
||||
self['key_red'] = Label(_('Cancel'))
|
||||
self['key_green'] = Label(_('Select'))
|
||||
self['actions'] = ActionMap(['OkCancelActions'], {'ok': self.okbuttonClick,
|
||||
'cancel': self.close})
|
||||
self['shortcuts'] = ActionMap(['ShortcutActions'], {'red': self.close,
|
||||
'green': self.okbuttonClick})
|
||||
|
||||
def doIt(self, selection):
|
||||
self.session.openWithCallback(self.close, HarddiskSetup, selection, action=selection.createInitializeJob, text=_('Initialize'), question=_('Do you really want to initialize the device?\nAll data on the disk will be lost!'))
|
||||
|
||||
def okbuttonClick(self):
|
||||
selection = self['hddlist'].getCurrent()
|
||||
if selection[1] != 0:
|
||||
self.doIt(selection[1])
|
||||
|
||||
|
||||
class HarddiskFsckSelection(HarddiskSelection):
|
||||
|
||||
def doIt(self, selection):
|
||||
self.session.openWithCallback(self.close, HarddiskSetup, selection, action=selection.createCheckJob, text=_('Check'), question=_('Do you really want to check the filesystem?\nThis could take lots of time!'))
|
||||
###########################__end HarddiskSetup_################################
|
||||
|
||||
|
||||
harddiskmanager = HarddiskManager()
|
||||
|
||||
def isSleepStateDevice(device):
|
||||
@@ -965,4 +1051,4 @@ def internalHDDNotSleeping(external = False):
|
||||
|
||||
|
||||
harddiskmanager = HarddiskManager()
|
||||
SystemInfo['ext4'] = isFileSystemSupported('ext4') or isFileSystemSupported('ext3')
|
||||
SystemInfo['ext4'] = isFileSystemSupported('ext4') or isFileSystemSupported('ext3')
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
#!/bin/sh
|
||||
IMAGE=ImageBoot
|
||||
NEOBOOTMOUNT=$( cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location)
|
||||
|
||||
if [ -f $NEOBOOTMOUNT/NeoBoot_Backup.tar.gz ] ; then
|
||||
rm -R $NEOBOOTMOUNT/NeoBoot_Backupt.tar.gz
|
||||
/bin/tar -czf $NEOBOOTMOUNT/NeoBoot_Backup.tar.gz /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot*/
|
||||
echo " "
|
||||
echo "Kopia o nazwie NeoBoot_Backup.tar.gz zostala utworzona w lokalizacji:" $NEOBOOTMOUNT" . "
|
||||
echo " "
|
||||
else
|
||||
/bin/tar -czf $NEOBOOTMOUNT/NeoBoot_Backup.tar.gz /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot*/
|
||||
echo " "
|
||||
echo "Kopia o nazwie NeoBoot_Backup.tar.gz zostala utworzona w lokalizacji:" $NEOBOOTMOUNT" . "
|
||||
echo " "
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
#!/bin/sh
|
||||
# script gutosie
|
||||
IMAGEKATALOG=ImageBoot
|
||||
NEODEVICE=$( cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location)
|
||||
|
||||
if [ ! -e /usr/bin/ipkg ]; then
|
||||
ln -sfn /usr/bin/opkg /usr/bin/ipkg
|
||||
fi
|
||||
if [ ! -e /usr/bin/ipkg-cl ]; then
|
||||
ln -sfn /usr/bin/opkg-cl /usr/bin/ipkg-cl
|
||||
fi
|
||||
|
||||
#echo "Start network and telnet ..."
|
||||
#/etc/init.d/networking stop; sync; /etc/init.d/networking start;
|
||||
|
||||
|
||||
if [ -f /etc/init.d/inadyn-mt ] ; then
|
||||
/etc/init.d/inadyn-mt start
|
||||
fi
|
||||
|
||||
if [ -e /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh ]; then
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/mountpoint.sh
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if [ -f /etc/rcS.d/S50fat.sh ] ; then
|
||||
ln -s /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/S50fat.sh /etc/rcS.d/S50neo.sh
|
||||
telnetd on
|
||||
echo ok
|
||||
rm -f /etc/rcS.d/S50fat.sh
|
||||
echo "file S50fat.sh delete"
|
||||
fi
|
||||
echo ok
|
||||
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
from __init__ import _
|
||||
|
||||
from Plugins.Extensions.NeoBoot.__init__ import _
|
||||
from enigma import getDesktop
|
||||
from Plugins.Plugin import PluginDescriptor
|
||||
from Screens.ChoiceBox import ChoiceBox
|
||||
@@ -31,27 +31,46 @@ import os
|
||||
from Screens.VirtualKeyBoard import VirtualKeyBoard
|
||||
import gettext, os
|
||||
from Plugins.Extensions.NeoBoot.files.stbbranding import getTunerModel
|
||||
LinkNeoBoot = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot'
|
||||
|
||||
|
||||
try:
|
||||
cat = gettext.translation('lang', '/usr/lib/enigma2/python/Plugins/Extensions/files/po', [config.osd.language.getText()])
|
||||
_ = cat.gettext
|
||||
except IOError:
|
||||
pass
|
||||
|
||||
|
||||
class ManagerDevice(Screen):
|
||||
screenwidth = getDesktop(0).size().width()
|
||||
if screenwidth and screenwidth == 1920:
|
||||
skin = '<screen name="ManagerDevice" position="center,center" size="1235,748">\n\t\t<ePixmap pixmap="skin_default/buttons/red.png" position="35,16" size="253,52" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/green.png" position="315,15" size="279,50" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/yellow.png" position="647,18" size="263,48" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/blue.png" position="965,19" size="269,51" alphatest="on" />\n\t\t<widget name="key_red" position="14,17" zPosition="1" size="258,48" font="Regular;30" halign="center" valign="center" backgroundColor="un9f1313" transparent="1" />\n\t\t<widget name="key_green" position="297,17" zPosition="1" size="298,48" font="Regular;30" halign="center" valign="center" backgroundColor="un1f771f" transparent="1" />\n\t\t<widget name="key_yellow" position="631,18" zPosition="1" size="268,48" font="Regular;30" halign="center" valign="center" backgroundColor="una08500" transparent="1" />\n\t\t<widget name="key_blue" position="940,21" zPosition="1" size="266,45" font="Regular;30" halign="center" valign="center" backgroundColor="un18188b" transparent="1" />\n\t\t<widget source="list" render="Listbox" position="12,76" size="1212,651" scrollbarMode="showOnDemand">\n\t\t\t<convert type="TemplatedMultiContent">\n\t\t\t\t{"template": [\n\t\t\t\t MultiContentEntryText(pos = (90, 5), size = (600, 30), font=0, text = 0),\n\t\t\t\t MultiContentEntryText(pos = (110, 60), size = (900, 100), font=1, flags = RT_VALIGN_TOP, text = 1),\n\t\t\t\t MultiContentEntryPixmapAlphaBlend(pos = (0, 0), size = (160, 160,), png = 2),\n\t\t\t\t],\n\t\t\t\t"fonts": [gFont("Regular", 33),gFont("Regular", 33)],\n\t\t\t\t"itemHeight": 140\n\t\t\t\t}\n\t\t\t</convert>\n\t\t</widget>\n\t\t<widget name="lab1" zPosition="2" position="32,92" size="1182,69" font="Regular;30" halign="center" transparent="1" />\n\t</screen>'
|
||||
|
||||
skin = """<screen name="ManagerDevice" position="400,150" size="1235,748">
|
||||
<widget name="key_red" position="14,17" zPosition="1" size="271,49" font="dugme;30" halign="center" valign="center" backgroundColor="red" transparent="1" foregroundColor="red" />
|
||||
<widget name="key_green" position="289,17" zPosition="1" size="369,49" font="dugme;30" halign="center" valign="center" backgroundColor="green" transparent="1" foregroundColor="green" />
|
||||
<widget name="key_yellow" position="661,17" zPosition="1" size="302,49" font="dugme;30" halign="center" valign="center" backgroundColor="yellow" transparent="1" foregroundColor="yellow" />
|
||||
<widget name="key_blue" position="967,17" zPosition="1" size="257,49" font="dugme;30" halign="center" valign="center" backgroundColor="blue" transparent="1" foregroundColor="blue" />
|
||||
<eLabel position="18,70" size="1204,2" backgroundColor="blue" foregroundColor="blue" name="linia" />
|
||||
<eLabel position="18,670" size="1204,2" backgroundColor="blue" foregroundColor="blue" name="linia" />
|
||||
<eLabel backgroundColor="black" font="dugme; 30" foregroundColor="orange" position="536,674" size="197,56" text="Exit - Back" transparent="1" />
|
||||
<widget source="list" render="Listbox" position="14,137" size="1210,530" scrollbarMode="showOnDemand">
|
||||
<convert type="TemplatedMultiContent">\n\n\t\t\t\t{"template": [\n\n\t\t\t\t MultiContentEntryText(pos = (90, 5), size = (600, 75), font=0, text = 0),\n\n\t\t\t\t MultiContentEntryText(pos = (110, 60), size = (900, 80), font=1, flags = RT_VALIGN_TOP, text = 1),\n\n\t\t\t\t MultiContentEntryPixmapAlphaBlend(pos = (0, 0), size = (150, 130,)),\n\n\t\t\t\t],\n\t\t\t\t"fonts": [gFont("Regular", 33),gFont("Regular", 33)],\n\n\t\t\t\t"itemHeight": 140\n\t\t\t\t}</convert>
|
||||
</widget>
|
||||
<widget name="lab1" zPosition="2" position="28,163" size="1182,69" font="baslk;30" halign="center" transparent="1" />
|
||||
</screen>"""
|
||||
else:
|
||||
skin = '<screen position="center,center" size="640,460">\n\t\t<ePixmap pixmap="skin_default/buttons/red.png" position="25,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/green.png" position="175,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/yellow.png" position="325,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/blue.png" position="475,0" size="140,40" alphatest="on" />\n\t\t<widget name="key_red" position="25,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />\n\t\t<widget name="key_green" position="175,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />\n\t\t<widget name="key_yellow" position="325,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" />\n\t\t <widget name="key_blue" position="475,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" />\n\t\t<widget source="list" render="Listbox" position="10,50" size="620,450" scrollbarMode="showOnDemand" >\n\t\t\t<convert type="TemplatedMultiContent">\n\t\t\t\t{"template": [\n\t\t\t\t MultiContentEntryText(pos = (90, 0), size = (600, 30), font=0, text = 0),\n\t\t\t\t MultiContentEntryText(pos = (110, 30), size = (600, 50), font=1, flags = RT_VALIGN_TOP, text = 1),\n\t\t\t\t MultiContentEntryPixmapAlphaBlend(pos = (0, 0), size = (80, 80), png = 2),\n\t\t\t\t],\n\t\t\t\t"fonts": [gFont("Regular", 24),gFont("Regular", 20)],\n\t\t\t\t"itemHeight": 85\n\t\t\t\t}\n\t\t\t</convert>\n\t\t</widget>\n\t\t<widget name="lab1" zPosition="2" position="50,90" size="600,40" font="Regular;22" halign="center" transparent="1"/>\n\t</screen>'
|
||||
skin = """<screen name="ManagerDevice" position="center,center" size="752,460">
|
||||
<eLabel backgroundColor="black" font="Regular; 30" foregroundColor="orange" position="315,405" size="169,51" text="Exit - Back" transparent="1" />
|
||||
<widget name="key_red" position="21,0" zPosition="1" size="151,47" font="Regular;20" halign="center" valign="center" backgroundColor="red" transparent="1" foregroundColor="red" />
|
||||
<widget name="key_green" position="216,0" zPosition="1" size="140,47" font="Regular;20" halign="center" valign="center" backgroundColor="green" transparent="1" foregroundColor="green" />
|
||||
<widget name="key_yellow" position="400,0" zPosition="1" size="140,47" font="Regular;20" halign="center" valign="center" backgroundColor="yellow" transparent="1" foregroundColor="yellow" />
|
||||
<widget name="key_blue" position="587,0" zPosition="1" size="149,46" font="Regular;20" halign="center" valign="center" backgroundColor="blue" transparent="1" foregroundColor="blue" />
|
||||
<widget source="list" render="Listbox" position="18,63" size="721,341" scrollbarMode="showOnDemand">
|
||||
<convert type="TemplatedMultiContent">\n\t\t\t\t{"template": [\n\t\t\t\t MultiContentEntryText(pos = (90, 0), size = (600, 30), font=0, text = 0),\n\t\t\t\t MultiContentEntryText(pos = (110, 30), size = (600, 50), font=1, flags = RT_VALIGN_TOP, text = 1),\n\t\t\t\t MultiContentEntryPixmapAlphaBlend(pos = (0, 0), size = (80, 80)),\n\t\t\t\t],\n\t\t\t\t"fonts": [gFont("Regular", 24),gFont("Regular", 20)],\n\t\t\t\t"itemHeight": 85\n\t\t\t\t}\n\t\t\t</convert>
|
||||
</widget>
|
||||
<widget name="lab1" zPosition="2" position="29,111" size="699,40" font="Regular;22" halign="center" transparent="1" />
|
||||
</screen>"""
|
||||
|
||||
|
||||
def __init__(self, session):
|
||||
Screen.__init__(self, session)
|
||||
Screen.setTitle(self, _('Mount Manager'))
|
||||
self['key_red'] = Label(_('Initialize'))
|
||||
self['key_red'] = Label(_('Initialize ext3'))
|
||||
self['key_green'] = Label(_('SetupMounts'))
|
||||
self['key_yellow'] = Label(_('Unmount'))
|
||||
self['key_yellow'] = Label(_('Initialize ext4'))
|
||||
self['key_blue'] = Label(_('Exit'))
|
||||
self['lab1'] = Label()
|
||||
self.onChangedEntry = []
|
||||
@@ -59,15 +78,33 @@ class ManagerDevice(Screen):
|
||||
self['list'] = List(self.list)
|
||||
self['list'].onSelectionChanged.append(self.selectionChanged)
|
||||
self['actions'] = ActionMap(['WizardActions', 'ColorActions', 'MenuActions'], {'back': self.close,
|
||||
'red': self.Format,
|
||||
'red': self.Format_ext3,
|
||||
'green': self.SetupMounts,
|
||||
'yellow': self.Unmount,
|
||||
'blue': self.Mount})
|
||||
'yellow': self.Format_ext4,
|
||||
'blue': self.ExitBack,
|
||||
'back': self.close})
|
||||
self.activityTimer = eTimer()
|
||||
self.activityTimer.timeout.get().append(self.updateList2)
|
||||
self.updateList()
|
||||
self.onShown.append(self.setWindowTitle)
|
||||
|
||||
def Format_ext3(self):
|
||||
try:
|
||||
if fileExists('/etc/vtiversion.info') or fileExists('/etc/bhversion'):
|
||||
self.session.open(MessageBox, _("This option is available only from openpli or derivatives."), MessageBox.TYPE_INFO, timeout=10)
|
||||
else:
|
||||
from Harddisk import HarddiskSelection
|
||||
self.session.openWithCallback(self.updateList, HarddiskSelection)
|
||||
except:
|
||||
self.session.open(MessageBox, _("This option is available only from openpli or derivatives."), MessageBox.TYPE_INFO, timeout=10)
|
||||
|
||||
def Format_ext4(self):
|
||||
from Screens.HarddiskSetup import HarddiskSelection
|
||||
self.session.openWithCallback(self.updateList, HarddiskSelection)
|
||||
|
||||
def ExitBack(self):
|
||||
self.close()
|
||||
|
||||
def setWindowTitle(self):
|
||||
self.setTitle(_('Mount Manager'))
|
||||
|
||||
@@ -123,20 +160,24 @@ class ManagerDevice(Screen):
|
||||
device2 = re.sub('[0-9]', '', device)
|
||||
devicetype = path.realpath('/sys/block/' + device2 + '/device')
|
||||
d2 = device
|
||||
name = _('HARD DISK: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_hdd.png'
|
||||
name = _('HARD DISK: ')
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_hdd.png'
|
||||
model = file('/sys/block/' + device2 + '/device/model').read()
|
||||
model = str(model).replace('\n', '')
|
||||
des = ''
|
||||
if devicetype.find('usb') != -1:
|
||||
name = _('USB: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_usb.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
|
||||
if devicetype.find('usb1') != -1:
|
||||
name = _('USB1: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_usb.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
|
||||
if devicetype.find('usb2') != -1:
|
||||
name = _('USB2: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_usb.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
|
||||
if devicetype.find('card') != -1:
|
||||
name = _('CARD: ')
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_sd.png'
|
||||
|
||||
name = name + model
|
||||
self.Console = Console()
|
||||
self.Console.ePopen("sfdisk -l /dev/sd? | grep swap | awk '{print $(NF-9)}' >/tmp/devices.tmp")
|
||||
@@ -198,13 +239,6 @@ class ManagerDevice(Screen):
|
||||
os.system('cp /etc/fstab.org /etc/fstab')
|
||||
self.session.openWithCallback(self.updateList, DevicesConf)
|
||||
|
||||
def Format(self):
|
||||
from Screens.HarddiskSetup import HarddiskSelection
|
||||
self.session.openWithCallback(self.updateList, HarddiskSelection)
|
||||
|
||||
def Mount(self):
|
||||
self.close()
|
||||
|
||||
def Unmount(self):
|
||||
sel = self['list'].getCurrent()
|
||||
if sel:
|
||||
@@ -270,9 +304,19 @@ class ManagerDevice(Screen):
|
||||
class DevicesConf(Screen, ConfigListScreen):
|
||||
screenwidth = getDesktop(0).size().width()
|
||||
if screenwidth and screenwidth == 1920:
|
||||
skin = '<screen name="DevicesConf" position="center,center" size="976,728" title="Choose where to mount your devices to:">\n\t\t<ePixmap pixmap="skin_default/buttons/red.png" position="109,16" size="251,63" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/green.png" position="551,15" size="257,63" alphatest="on" />\n\t\t<widget name="key_red" position="110,13" zPosition="1" size="252,67" font="Regular;35" halign="center" valign="center" backgroundColor="#FF0000" transparent="1" />\n\t\t<widget name="key_green" position="549,15" zPosition="1" size="262,65" font="Regular;35" halign="center" valign="center" backgroundColor="#008000" transparent="1" />\n\t\t<widget name="config" position="31,113" size="898,489" font="Regular;25" scrollbarMode="showOnDemand" />\n\t\t<widget name="Linconn" position="34,621" size="904,32" font="Regular;33" halign="center" valign="center" backgroundColor="#FF0000" />\n\t</screen>'
|
||||
skin = """<screen name="DevicesConfFullHD" position="400,150" size="976,728" title="Choose where to mount your devices to:">
|
||||
<eLabel backgroundColor="black" font="baslk; 25" foregroundColor="red" position="150,900" size="800,30" text=" Exit - Back " transparent="1" />
|
||||
<widget name="key_red" position="110,13" zPosition="1" size="335,67" font="baslk;30" halign="center" valign="center" backgroundColor="red" transparent="1" foregroundColor="red" />
|
||||
<widget name="key_green" position="549,15" zPosition="1" size="362,65" font="baslk;30" halign="center" valign="center" backgroundColor="green" transparent="1" foregroundColor="green" />
|
||||
<widget name="config" position="33,179" size="891,385" font="Regular;21" scrollbarMode="showOnDemand" />
|
||||
</screen>"""
|
||||
else:
|
||||
skin = '<screen position="center,center" size="640,460" title="Choose where to mount your devices to:">\n\t\t<ePixmap pixmap="skin_default/buttons/red.png" position="25,0" size="140,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/green.png" position="175,0" size="140,40" alphatest="on" />\n\t\t<widget name="key_red" position="25,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" />\n\t\t<widget name="key_green" position="175,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" />\n\t\t<widget name="config" position="30,60" size="580,275" scrollbarMode="showOnDemand"/>\n\t\t<widget name="Linconn" position="30,375" size="580,20" font="Regular;18" halign="center" valign="center" backgroundColor="#9f1313"/>\n\t</screen>'
|
||||
skin = """<screen name="DevicesConfHD" position="171,130" size="903,460" title="Choose where to mount your devices to:">
|
||||
<eLabel backgroundColor="black" font="Regular;30" foregroundColor="orange" position="366,388" size="295,65" text="Exit - Back" transparent="1" />
|
||||
<widget name="key_red" position="36,0" zPosition="1" size="363,59" font="Regular;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="red" />
|
||||
<widget name="key_green" position="548,0" zPosition="1" size="332,60" font="Regular;30" halign="center" valign="center" backgroundColor="black" transparent="1" foregroundColor="green" />
|
||||
<widget name="config" position="31,85" size="839,279" scrollbarMode="showOnDemand" />
|
||||
</screen>"""
|
||||
|
||||
def __init__(self, session):
|
||||
Screen.__init__(self, session)
|
||||
@@ -326,19 +370,23 @@ class DevicesConf(Screen, ConfigListScreen):
|
||||
devicetype = path.realpath('/sys/block/' + device2 + '/device')
|
||||
d2 = device
|
||||
name = _('HARD DISK: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_hdd.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_hdd.png'
|
||||
model = file('/sys/block/' + device2 + '/device/model').read()
|
||||
model = str(model).replace('\n', '')
|
||||
des = ''
|
||||
if devicetype.find('usb') != -1:
|
||||
name = _('USB: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_usb.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
|
||||
if devicetype.find('usb1') != -1:
|
||||
name = _('USB1: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_usb.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
|
||||
if devicetype.find('usb2') != -1:
|
||||
name = _('USB2: ')
|
||||
mypixmap = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/dev_usb.png'
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_usb.png'
|
||||
if devicetype.find('card') != -1:
|
||||
name = _('CARD: ')
|
||||
mypixmap = '' + LinkNeoBoot + '/images/dev_sd.png'
|
||||
|
||||
name = name + model
|
||||
f = open('/proc/mounts', 'r')
|
||||
for line in f.readlines():
|
||||
@@ -369,7 +417,11 @@ class DevicesConf(Screen, ConfigListScreen):
|
||||
('/media/usb', '/media/usb'),
|
||||
('/media/usb1', '/media/usb1'),
|
||||
('/media/usb2', '/media/usb2'),
|
||||
('/media/usb3', '/media/usb3')]))
|
||||
('/media/usb3', '/media/usb3'),
|
||||
('/media/usb3', '/media/cf'),
|
||||
('/media/usb3', '/media/card'),
|
||||
('/media/cf', '/media/cf'),
|
||||
('/media/card', '/media/card')]))
|
||||
if dtype == 'Linux':
|
||||
dtype = 'ext2', 'ext3', 'ext4'
|
||||
else:
|
||||
@@ -434,73 +486,77 @@ class DevicesConf(Screen, ConfigListScreen):
|
||||
out.close()
|
||||
|
||||
self.device_uuid2 = result.split('UUID=')[1].split(' ')[0].replace('"', '')
|
||||
if fileExists('/usr/lib/enigma2/python/Plugins/SystemPlugins/DeviceManager2'):
|
||||
out1 = open('/etc/devicemanager.cfg', 'a')
|
||||
line1 = '"' + self.device_uuid2 + '"' + ':' + self.mountp + '\n'
|
||||
out1.write(line1)
|
||||
out1.close()
|
||||
elif fileExists('/usr/lib/enigma2/python/Plugins/SystemPlugins/DeviceManager'):
|
||||
out2 = open('/usr/lib/enigma2/python/Plugins/SystemPlugins/DeviceManager/devicemanager.cfg', 'a')
|
||||
line2 = '"' + self.device_uuid2 + '"' + ':' + self.mountp + '\n'
|
||||
out2.write(line2)
|
||||
out2.close()
|
||||
|
||||
if fileExists('/etc/init.d/udev'):
|
||||
filename = '/etc/init.d/udev'
|
||||
if os.path.exists(filename):
|
||||
# if fileExists('/usr/lib/enigma2/python/Plugins/SystemPlugins/DeviceManager2'):
|
||||
# out1 = open('/etc/devicemanager.cfg', 'a')
|
||||
# line1 = '"' + self.device_uuid2 + '"' + ':' + self.mountp + '\n'
|
||||
# out1.write(line1)
|
||||
# out1.close()
|
||||
# elif fileExists('/usr/lib/enigma2/python/Plugins/SystemPlugins/DeviceManager'):
|
||||
# out2 = open('/usr/lib/enigma2/python/Plugins/SystemPlugins/DeviceManager/devicemanager.cfg', 'a')
|
||||
# line2 = '"' + self.device_uuid2 + '"' + ':' + self.mountp + '\n'
|
||||
# out2.write(line2)
|
||||
# out2.close()
|
||||
|
||||
|
||||
filename2 = filename + '.tmp'
|
||||
out = open(filename2, 'w')
|
||||
f = open(filename, 'r')
|
||||
for line in f.readlines():
|
||||
if line.find('mount -a /media/hdd; mount -a /media/usb') != -1:
|
||||
line = ''
|
||||
out.write(line)
|
||||
|
||||
f.close()
|
||||
out.close()
|
||||
os.rename(filename2, filename)
|
||||
|
||||
|
||||
|
||||
filename2 = filename + '.tmp'
|
||||
out = open(filename2, 'w')
|
||||
f = open(filename, 'r')
|
||||
for line in f.readlines():
|
||||
if line.find('exit 0') != -1:
|
||||
line = ''
|
||||
out.write(line)
|
||||
|
||||
f.close()
|
||||
out.close()
|
||||
os.rename(filename2, filename)
|
||||
os.system('echo "mount -a /media/hdd; mount -a /media/usb" >> /etc/init.d/udev; chmod 0755 /etc/init.d/udev ')
|
||||
|
||||
if fileExists('/etc/init.d/mdev'):
|
||||
filename = '/etc/init.d/mdev'
|
||||
if os.path.exists(filename):
|
||||
|
||||
filename2 = filename + '.tmp'
|
||||
out = open(filename2, 'w')
|
||||
f = open(filename, 'r')
|
||||
for line in f.readlines():
|
||||
if line.find('mount -a /media/hdd; mount -a /media/usb') != -1:
|
||||
line = ''
|
||||
out.write(line)
|
||||
|
||||
f.close()
|
||||
out.close()
|
||||
os.rename(filename2, filename)
|
||||
|
||||
system('echo "" >> /etc/init.d/mdev; echo "mount -a /media/hdd; mount -a /media/usb" >> /etc/init.d/mdev; chmod 0755 /etc/init.d/mdev ')
|
||||
|
||||
|
||||
#SetDiskLabel - dziekuje autorowi
|
||||
class SetDiskLabel(Screen):
|
||||
skin = '\n\t\t<screen position="center,center" size="600,200" title="Set Disk Label v1.1" >\n\t\t<widget name="infoTXT" position="25,20" zPosition="1" size="310,25" font="Regular;20" halign="left" valign="center" backgroundColor="transpBlack" transparent="1"/>\n\t\t<widget name="devlist" position="400,20" size="125,25" />\n\t\t<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/buttons/k_left.png" position="350,15" size="40,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/buttons/k_right.png" position="550,15" size="40,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/buttons/k_up.png" position="350,105" size="40,40" alphatest="on" />\n\t\t<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/buttons/k_down.png" position="550,105" size="40,40" alphatest="on" />\n\t\t<widget name="labelname" position="25,65" zPosition="1" size="310,25" font="Regular;20" halign="left" valign="center" backgroundColor="transpBlack" transparent="1"/>\n\t\t<widget name="disklabel" position="400,65" size="125,25" zPosition="1" font="Regular;20" halign="center" valign="left"/>\n\t\t<widget name="labeltoset" position="25,110" zPosition="1" size="310,25" font="Regular;20" halign="left" valign="center" backgroundColor="transpBlack" transparent="1"/>\n\t\t<widget name="listlabel" position="400,110" size="125,25" zPosition="1" font="Regular;20" halign="center" valign="left"/>\n\t\t<ePixmap pixmap="skin_default/buttons/key_red.png" position="40,167" size="40,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/key_green.png" position="170,167" size="40,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/key_yellow.png" position="300,167" size="40,40" alphatest="on" />\n\t\t<ePixmap pixmap="skin_default/buttons/key_blue.png" position="430,167" size="40,40" alphatest="on" />\n\t\t<widget name="key_red" position="70,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />\n\t\t<widget name="key_green" position="200,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />\n\t\t<widget name="key_yellow" position="330,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />\n\t\t<widget name="key_blue" position="460,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />\n\t</screen>'
|
||||
screenwidth = getDesktop(0).size().width()
|
||||
if screenwidth and screenwidth == 1920:
|
||||
skin ="""<screen name="SetDiskLabel" position="400,188" size="1100,601" title="Set Disk Label v1.1">
|
||||
<widget name="infoTXT" position="22,62" zPosition="1" size="591,86" font="baslk;28" halign="left" valign="center" backgroundColor="transpBlack" transparent="1" />
|
||||
|
||||
<widget name="devlist" position="685,60" size="310,132" font="Regular;20" valign="center" />
|
||||
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_left.png" position="628,86" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_right.png" position="1015,85" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_up.png" position="630,381" size="40,42" alphatest="on" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_down.png" position="1010,383" size="40,40" alphatest="on" />
|
||||
|
||||
<widget name="labelname" position="22,209" zPosition="1" size="591,86" font="baslk;30" valign="center" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="disklabel" position="697,212" size="290,77" zPosition="1" font="baslk;30" valign="left" />
|
||||
<widget name="labeltoset" position="22,363" zPosition="1" size="591,86" font="baslk;30" valign="center" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="listlabel" position="685,354" size="310,145" zPosition="1" font="Regular;20" valign="center" />
|
||||
|
||||
<ePixmap pixmap="skin_default/buttons/key_red.png" position="14,534" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="skin_default/buttons/key_green.png" position="259,535" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="skin_default/buttons/key_yellow.png" position="567,535" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="skin_default/buttons/key_blue.png" position="814,532" size="40,40" alphatest="on" />
|
||||
|
||||
<widget name="key_red" position="60,526" zPosition="1" size="196,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="key_green" position="304,526" zPosition="1" size="255,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="key_yellow" position="613,526" zPosition="1" size="196,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="key_blue" position="860,526" zPosition="1" size="233,40" font="baslk;25" halign="left" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<eLabel text="%s" font="Regular; 25" position="23,-10" size="968,57" halign="center" foregroundColor="yellow" backgroundColor="black" transparent="1" />
|
||||
</screen> """ % (_('!!!Do not set the label for /dev/mmcblk0p !!!'))
|
||||
else:
|
||||
skin = """<screen position="center,center" size="600,200" title="Set Disk Label v1.1" >
|
||||
<widget name="infoTXT" position="25,20" zPosition="1" size="310,38" font="Regular;20" halign="left" valign="center" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="devlist" position="400,20" size="125,25" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_left.png" position="350,15" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_right.png" position="550,15" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_up.png" position="350,105" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/k_down.png" position="550,105" size="40,40" alphatest="on" />
|
||||
<widget name="labelname" position="25,65" zPosition="1" size="310,25" font="Regular;20" halign="left" valign="center" backgroundColor="transpBlack" transparent="1"/>
|
||||
<widget name="disklabel" position="400,65" size="125,25" zPosition="1" font="Regular;20" halign="center" valign="left"/>
|
||||
<widget name="labeltoset" position="25,110" zPosition="1" size="310,25" font="Regular;20" halign="left" valign="center" backgroundColor="transpBlack" transparent="1"/>
|
||||
<widget name="listlabel" position="400,110" size="125,25" zPosition="1" font="Regular;20" valign="left"/>
|
||||
<ePixmap pixmap="skin_default/buttons/key_red.png" position="40,167" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="skin_default/buttons/key_green.png" position="170,167" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="skin_default/buttons/key_yellow.png" position="300,167" size="40,40" alphatest="on" />
|
||||
<ePixmap pixmap="skin_default/buttons/key_blue.png" position="430,167" size="40,40" alphatest="on" />
|
||||
<widget name="key_red" position="70,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="key_green" position="200,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="key_yellow" position="330,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
<widget name="key_blue" position="460,160" zPosition="1" size="90,40" font="Regular;14" halign="center" valign="left" backgroundColor="transpBlack" transparent="1" />
|
||||
</screen>"""
|
||||
|
||||
def __init__(self, session):
|
||||
global liczymy
|
||||
Screen.__init__(self, session)
|
||||
self.labList = ['hdd', 'usb']
|
||||
self.labList = ['hdd', 'usb','card', 'cf']
|
||||
self.list = []
|
||||
self.sprDev()
|
||||
self.devlist = []
|
||||
@@ -653,6 +709,6 @@ class DeviceManagerSummary(Screen):
|
||||
|
||||
def SkinPath():
|
||||
myskinpath = resolveFilename(SCOPE_CURRENT_SKIN, '')
|
||||
if myskinpath == '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/':
|
||||
myskinpath = '/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/images/'
|
||||
if myskinpath == '' + LinkNeoBoot + '/images/':
|
||||
myskinpath = '' + LinkNeoBoot + '/images/'
|
||||
return myskinpath
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
#!/bin/sh
|
||||
IMAGE=ImageBoot
|
||||
NEOBOOTMOUNT=$( cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location)
|
||||
rm -f /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
|
||||
orgimag=`mount | sed '/sd/!d' | cut -d" " -f1`
|
||||
for item in $orgimag; do
|
||||
ohdd=`echo $item | cut -d"/" -f3`
|
||||
nhdd=`mount | sed "/\$ohdd/!d" | sed q | cut -d" " -f3`
|
||||
if [ $nhdd == '$NEOBOOTMOUNT' ]; then
|
||||
echo $nhdd
|
||||
echo "mkdir "$nhdd >> /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
echo "mount "$item $nhdd >> /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
else
|
||||
echo "umount "$nhdd >> /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
echo "mkdir "$nhdd >> /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
echo "mount "$item $nhdd >> /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
echo ok
|
||||
fi
|
||||
done
|
||||
chmod 0755 /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neom
|
||||
|
||||
27
NeoBoot/files/neobackup.sh
Normal file
@@ -0,0 +1,27 @@
|
||||
#!/bin/sh
|
||||
#script by gutosie
|
||||
|
||||
if `grep -q 'osd.language=pl_PL' </etc/enigma2/settings`; then
|
||||
PL=1
|
||||
fi
|
||||
|
||||
IMAGE=ImageBoot
|
||||
LOCATIONBACKUP=CopyNEOBoot
|
||||
NEOBOOTMOUNT=$( cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location)
|
||||
TiME=$(date +"%Y%m%d_%H%M%S")
|
||||
UPDATEv=$(cat $NEOBOOTMOUNT/ImageBoot/.updateversion)
|
||||
NB=_NeoBoot_
|
||||
|
||||
if [ ! -e $NEOBOOTMOUNT$LOCATIONBACKUP ]; then
|
||||
mkdir $NEOBOOTMOUNT$LOCATIONBACKUP > /dev/null 2>&1
|
||||
/bin/tar -czf $NEOBOOTMOUNT/CopyNEOBoot/Copy_$UPDATEv$NB$TiME.tar.gz /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot*/
|
||||
echo " "
|
||||
[ $PL ] && echo "Kopia wtyczki neoboot o nazwie Copy_$UPDATEv$NB$TiME.tar.gz utworzono w:" $NEOBOOTMOUNT$LOCATIONBACKUP" " || echo "Copy named Copy_$UPDATEv$NB$TiME.tar.gz was created at location:" $NEOBOOTMOUNT$LOCATIONBACKUP" "
|
||||
echo " "
|
||||
else
|
||||
/bin/tar -czf $NEOBOOTMOUNT/CopyNEOBoot/Copy_$UPDATEv$NB$TiME.tar.gz /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot*/
|
||||
echo " "
|
||||
[ $PL ] && echo "Kopia wtyczki o nazwie Copy_$UPDATEv$NB$TiME.tar.gz utworzono w:" $NEOBOOTMOUNT$LOCATIONBACKUP" " || echo "Copy named Copy_$UPDATEv$NB$TiME.tar.gz was created at location:" $NEOBOOTMOUNT$LOCATIONBACKUP" "
|
||||
echo " "
|
||||
fi
|
||||
exit 0
|
||||
220
NeoBoot/files/neoconsole.py
Normal file
@@ -0,0 +1,220 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from Plugins.Extensions.NeoBoot.__init__ import _
|
||||
from enigma import eConsoleAppContainer
|
||||
from Screens.Screen import Screen
|
||||
from Components.ActionMap import ActionMap
|
||||
from Components.ScrollLabel import ScrollLabel
|
||||
from Components.Sources.StaticText import StaticText
|
||||
from Screens.MessageBox import MessageBox
|
||||
from Components.Label import Label
|
||||
|
||||
|
||||
class Console(Screen):
|
||||
skin = """<screen name="ConsoleN" position="80,100" size="1010,230" title="Command execution...">
|
||||
<widget name="text" position="-2,-1" size="1015,230" font="Console;14" />
|
||||
</screen>"""
|
||||
|
||||
# def __init__(self, session, title = 'Console', cmdlist = None, finishedCallback = None, closeOnSuccess = False):
|
||||
# Screen.__init__(self, session)
|
||||
|
||||
def __init__(self, session, title = _('Console'), cmdlist = None, finishedCallback = None, closeOnSuccess = False):
|
||||
Screen.__init__(self, session)
|
||||
self.finishedCallback = finishedCallback
|
||||
self.closeOnSuccess = closeOnSuccess
|
||||
self.errorOcurred = False
|
||||
self['key_red'] = Label(_('Stop action'))
|
||||
self['key_green'] = Label(_('Hide Console'))
|
||||
self['text'] = ScrollLabel('')
|
||||
self['summary_description'] = StaticText('')
|
||||
self['actions'] = ActionMap(['WizardActions', 'DirectionActions', 'ColorActions'], {'ok': self.cancel,
|
||||
'back': self.cancel,
|
||||
'up': self.key_up,
|
||||
'down': self.key_down,
|
||||
'green': self.key_green,
|
||||
'red': self.key_red}, -1)
|
||||
self.cmdlist = cmdlist
|
||||
self.newtitle = title
|
||||
self.screen_hide = False
|
||||
self.cancel_msg = None
|
||||
self.output_file = ''
|
||||
self.onShown.append(self.updateTitle)
|
||||
self.container = eConsoleAppContainer()
|
||||
self.run = 0
|
||||
self.container.appClosed.append(self.runFinished)
|
||||
self.container.dataAvail.append(self.dataAvail)
|
||||
self.onLayoutFinish.append(self.startRun)
|
||||
return
|
||||
|
||||
def updateTitle(self):
|
||||
self.setTitle(self.newtitle)
|
||||
|
||||
def doExec(self, cmd):
|
||||
if isinstance(cmd, (list, tuple)):
|
||||
return self.container.execute(cmd[0], *cmd)
|
||||
else:
|
||||
return self.container.execute(cmd)
|
||||
|
||||
def startRun(self):
|
||||
self['text'].setText(_('Execution progress:') + '\n\n')
|
||||
self['summary_description'].setText(_('Execution progress:'))
|
||||
print '[Console] executing in run', self.run, ' the command:', self.cmdlist[self.run]
|
||||
if self.doExec(self.cmdlist[self.run]):
|
||||
self.runFinished(-1)
|
||||
|
||||
def runFinished(self, retval):
|
||||
if retval:
|
||||
self.errorOcurred = True
|
||||
self.toggleScreenHide(True)
|
||||
self.run += 1
|
||||
if self.run != len(self.cmdlist):
|
||||
if self.doExec(self.cmdlist[self.run]):
|
||||
self.runFinished(-1)
|
||||
else:
|
||||
# self['key_red'].setText(_('Close'))
|
||||
# self['key_green'].setText(_('Save'))
|
||||
self.toggleScreenHide(True)
|
||||
if self.cancel_msg:
|
||||
self.cancel_msg.close()
|
||||
from Tools.Directories import fileExists
|
||||
if not fileExists('/etc/vtiversion.info'):
|
||||
lastpage = self['text'].isAtLastPage()
|
||||
self['text'].appendText('\n' + _('Execution finished!!'))
|
||||
self['summary_description'].setText('\n' + _('Execution finished!!'))
|
||||
if self.finishedCallback is not None:
|
||||
self.finishedCallback()
|
||||
if not self.errorOcurred and self.closeOnSuccess:
|
||||
self.output_file = 'end'
|
||||
self.cancel()
|
||||
return
|
||||
|
||||
def key_up(self):
|
||||
if self.screen_hide:
|
||||
self.toggleScreenHide()
|
||||
return
|
||||
self['text'].pageUp()
|
||||
|
||||
def key_down(self):
|
||||
if self.screen_hide:
|
||||
self.toggleScreenHide()
|
||||
return
|
||||
self['text'].pageDown()
|
||||
|
||||
def key_green(self):
|
||||
if self.screen_hide:
|
||||
self.toggleScreenHide()
|
||||
return
|
||||
if self.output_file == 'end':
|
||||
pass
|
||||
elif self.output_file.startswith('/tmp/'):
|
||||
self['text'].setText(self.readFile(self.output_file))
|
||||
self['key_green'].setText(_(' '))
|
||||
self.output_file = 'end'
|
||||
elif self.run == len(self.cmdlist):
|
||||
self.saveOutputText()
|
||||
#self.toggleScreenHide()
|
||||
else:
|
||||
self.toggleScreenHide()
|
||||
|
||||
def key_red(self):
|
||||
if self.screen_hide:
|
||||
self.toggleScreenHide()
|
||||
return
|
||||
if self.run == len(self.cmdlist):
|
||||
self.cancel()
|
||||
else:
|
||||
self.cancel_msg = self.session.openWithCallback(self.cancelCB, MessageBox, _('Cancel execution?'), type=MessageBox.TYPE_YESNO, default=False)
|
||||
|
||||
def cancelCB(self, ret = None):
|
||||
self.cancel_msg = None
|
||||
if ret:
|
||||
self.cancel(True)
|
||||
return
|
||||
|
||||
def saveOutputText(self):
|
||||
from time import time, localtime
|
||||
lt = localtime(time())
|
||||
self.output_file = '/tmp/%02d%02d%02d_console.txt' % (lt[3], lt[4], lt[5])
|
||||
self.session.openWithCallback(self.saveOutputTextCB, MessageBox, _("Save the commands and the output to a file?\n('%s')") % self.output_file, type=MessageBox.TYPE_YESNO, default=True)
|
||||
|
||||
def formatCmdList(self, source):
|
||||
if isinstance(source, (list, tuple)):
|
||||
for x in source:
|
||||
for y in self.formatCmdList(x):
|
||||
yield y
|
||||
|
||||
else:
|
||||
yield source
|
||||
|
||||
def saveOutputTextCB(self, ret = None):
|
||||
if ret:
|
||||
from os import path
|
||||
failtext = _("Path to save not exist: '/tmp/'")
|
||||
if path.exists('/tmp/'):
|
||||
text = 'commands ...\n\n'
|
||||
try:
|
||||
cmdlist = list(self.formatCmdList(self.cmdlist))
|
||||
text += 'command line: %s\n\n' % cmdlist[0]
|
||||
script = ''
|
||||
for cmd in cmdlist[0].split():
|
||||
if '.' in cmd:
|
||||
if cmd[-3:] in ('.py', '.sh'):
|
||||
script = cmd
|
||||
break
|
||||
|
||||
if script and path.isfile(script):
|
||||
text += 'script listing: %s\n\n%s\n\n' % (script, self.readFile(script))
|
||||
if len(cmdlist) > 1:
|
||||
text += 'next commands:\n\n' + '\n'.join(cmdlist[1:]) + '\n\n'
|
||||
except:
|
||||
text += 'error read commands!!!\n\n'
|
||||
|
||||
text += '-' * 50 + '\n\noutputs ...\n\n%s' % self['text'].getText()
|
||||
try:
|
||||
f = open(self.output_file, 'w')
|
||||
f.write(text)
|
||||
f.close()
|
||||
self['key_green'].setText(_('Load'))
|
||||
return
|
||||
except:
|
||||
failtext = _("File write error: '%s'") % self.output_file
|
||||
|
||||
self.output_file = 'end'
|
||||
self['key_green'].setText(_(' '))
|
||||
self.session.open(MessageBox, failtext, type=MessageBox.TYPE_ERROR)
|
||||
else:
|
||||
self.output_file = ''
|
||||
|
||||
def toggleScreenHide(self, setshow = False):
|
||||
if self.screen_hide or setshow:
|
||||
self.show()
|
||||
else:
|
||||
self.hide()
|
||||
self.screen_hide = not (self.screen_hide or setshow)
|
||||
|
||||
def readFile(self, file):
|
||||
try:
|
||||
with open(file, 'r') as rdfile:
|
||||
rd = rdfile.read()
|
||||
rdfile.close()
|
||||
except:
|
||||
if file == self.output_file:
|
||||
rd = self['text'].getText()
|
||||
else:
|
||||
rd = "File read error: '%s'\n" % file
|
||||
|
||||
return rd
|
||||
|
||||
def cancel(self, force = False):
|
||||
if self.screen_hide:
|
||||
self.toggleScreenHide()
|
||||
return
|
||||
if force or self.run == len(self.cmdlist):
|
||||
self.close()
|
||||
self.container.appClosed.remove(self.runFinished)
|
||||
self.container.dataAvail.remove(self.dataAvail)
|
||||
if self.run != len(self.cmdlist):
|
||||
self.container.kill()
|
||||
|
||||
def dataAvail(self, str):
|
||||
self['text'].appendText(str)
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#from __future__ import print_function
|
||||
#from Plugins.Extensions.NeoBoot.__init__ import _ , Log, PluginPath
|
||||
|
||||
from Plugins.Extensions.NeoBoot.__init__ import _
|
||||
import sys
|
||||
import os
|
||||
import time
|
||||
@@ -18,6 +18,44 @@ def getNeoLocation():
|
||||
f.close()
|
||||
return locatino
|
||||
|
||||
|
||||
#check ext
|
||||
def getFormat():
|
||||
neoformat='UNKNOWN'
|
||||
if os.path.exists('/proc/mounts'):
|
||||
with open('/proc/mounts', 'r') as f:
|
||||
lines = f.read()
|
||||
f.close()
|
||||
if lines.find('ext2') != -1:
|
||||
neoformat='ext2'
|
||||
elif lines.find('ext3') != -1:
|
||||
neoformat='ext3'
|
||||
elif lines.find('ext4') != -1:
|
||||
neoformat='ext4'
|
||||
elif lines.find('nfs') != -1:
|
||||
neoformat='nfs'
|
||||
|
||||
return neoformat
|
||||
|
||||
|
||||
def getNEO_filesystems():
|
||||
neo_filesystems='UNKNOWN'
|
||||
if os.path.exists('/tmp/.neo_format'):
|
||||
with open('/tmp/.neo_format', 'r') as f:
|
||||
lines = f.read()
|
||||
f.close()
|
||||
if lines.find('ext2') != -1:
|
||||
neo_filesystems='1'
|
||||
elif lines.find('ext3') != -1:
|
||||
neo_filesystems='1'
|
||||
elif lines.find('ext4') != -1:
|
||||
neo_filesystems='1'
|
||||
elif lines.find('nfs') != -1:
|
||||
neo_filesystems='1'
|
||||
|
||||
return neo_filesystems
|
||||
|
||||
|
||||
def Log(param = ''):
|
||||
global LogFileObj
|
||||
#first close object if exists
|
||||
@@ -68,14 +106,14 @@ def getCPUtype():
|
||||
#check install
|
||||
def getFSTAB():
|
||||
install='UNKNOWN'
|
||||
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/installNeo'):
|
||||
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/installNeo', 'r') as f:
|
||||
if os.path.exists('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/reading_blkid'):
|
||||
with open('/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/bin/reading_blkid', 'r') as f:
|
||||
lines = f.read()
|
||||
f.close()
|
||||
if lines.find('UUID') != -1:
|
||||
install='OKinstall'
|
||||
install='UUID'
|
||||
elif not lines.find('UUID') != -1:
|
||||
install='NOinstall'
|
||||
install='NOUUID'
|
||||
return install
|
||||
|
||||
def getFSTAB2():
|
||||
@@ -87,7 +125,7 @@ def getFSTAB2():
|
||||
if lines.find('UUID') != -1:
|
||||
install='OKinstall'
|
||||
elif not lines.find('UUID') != -1:
|
||||
install='NOinstall'
|
||||
install='NOUUID'
|
||||
return install
|
||||
|
||||
def getINSTALLNeo():
|
||||
@@ -144,8 +182,7 @@ def getLabelDisck():
|
||||
lines = f.read()
|
||||
f.close()
|
||||
if lines.find('LABEL=') != -1:
|
||||
label='LABEL='
|
||||
|
||||
label='LABEL='
|
||||
return label
|
||||
|
||||
#checking device neo
|
||||
@@ -209,7 +246,6 @@ def getNeoMount2():
|
||||
elif lines.find('/dev/sdf1 /media/usb2') != -1:
|
||||
neo='usb_install_/dev/sdf1'
|
||||
|
||||
|
||||
return neo
|
||||
|
||||
def getNeoMount3():
|
||||
@@ -350,22 +386,57 @@ def runCMDS(cmdsList):
|
||||
ret = os.system(myCMD)
|
||||
return rett
|
||||
|
||||
#####################################
|
||||
|
||||
def getImageDistro():
|
||||
if fileExists('/etc/issue.net'):
|
||||
try:
|
||||
obraz = open('/etc/issue.net', 'r').readlines()
|
||||
imagetype = obraz[0][:-1]
|
||||
image = imagetype[0:-2]
|
||||
return image
|
||||
except:
|
||||
False
|
||||
|
||||
elif fileExists('/etc/vtiversion.info'):
|
||||
image = 'VTI'
|
||||
def getImageDistroN():
|
||||
image='Internal storage'
|
||||
|
||||
if fileExists('/.multinfo') and fileExists ('%sImageBoot/.imagedistro' % getNeoLocation() ):
|
||||
with open('%sImageBoot/.imagedistro' % getNeoLocation() , 'r') as f:
|
||||
image = f.readline().strip()
|
||||
f.close()
|
||||
|
||||
elif not fileExists('/.multinfo') and fileExists('/etc/vtiversion.info'):
|
||||
f = open("/etc/vtiversion.info",'r')
|
||||
imagever = f.readline().strip().replace("Release ", " ")
|
||||
f.close()
|
||||
image = imagever
|
||||
|
||||
elif not fileExists('/.multinfo') and fileExists('/etc/bhversion'):
|
||||
f = open("/etc/bhversion",'r')
|
||||
imagever = f.readline().strip()
|
||||
f.close()
|
||||
image = imagever
|
||||
|
||||
# elif not fileExists('/.multinfo') and fileExists('/etc/vtiversion.info'):
|
||||
# image = 'VTI Team Image '
|
||||
|
||||
elif fileExists('/.multinfo') and fileExists('/etc/bhversion'):
|
||||
image = 'Flash ' + ' ' + getBoxHostName()
|
||||
|
||||
elif fileExists('/.multinfo') and fileExists('/etc/vtiversion.info'):
|
||||
image = 'Flash ' + ' ' + getBoxHostName()
|
||||
|
||||
|
||||
elif fileExists('/usr/lib/enigma2/python/boxbranding.so') and not fileExists('/.multinfo'):
|
||||
from boxbranding import getImageDistro
|
||||
image = getImageDistro()
|
||||
|
||||
elif fileExists('/media/InternalFlash/etc/issue.net') and fileExists('/.multinfo') and not fileExists('%sImageBoot/.imagedistro' % getNeoLocation() ):
|
||||
obraz = open('/media/InternalFlash/etc/issue.net', 'r').readlines()
|
||||
imagetype = obraz[0][:-3]
|
||||
image = imagetype
|
||||
|
||||
elif fileExists('/etc/issue.net') and not fileExists('/.multinfo'):
|
||||
obraz = open('/etc/issue.net', 'r').readlines()
|
||||
imagetype = obraz[0][:-3]
|
||||
image = imagetype
|
||||
|
||||
else:
|
||||
image = 'Inernal Flash ' + ' ' + getBoxHostName()
|
||||
|
||||
return image
|
||||
|
||||
|
||||
def getKernelVersionString():
|
||||
try:
|
||||
result = popen('uname -r', 'r').read().strip('\n').split('-')
|
||||
|
||||
57
NeoBoot/files/userscript.sh
Normal file
@@ -0,0 +1,57 @@
|
||||
#!/bin/sh
|
||||
# script gutosie
|
||||
# here you can add your own command to perform
|
||||
# line - Checking internet connection by @j00zek thank you
|
||||
|
||||
IMAGEKATALOG=ImageBoot
|
||||
|
||||
if [ ! -e `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`$IMAGEKATALOG/.neonextboot ] ; then
|
||||
mkdir `cat /usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/.location`
|
||||
/usr/lib/enigma2/python/Plugins/Extensions/NeoBoot/files/neo.sh
|
||||
echo "_(_________Start mountpoint location NEOBOOT_________)"
|
||||
fi
|
||||
|
||||
echo "_(Checking internet connection)..."
|
||||
ping -c 1 github.com 1>/dev/null 2>%1
|
||||
if [ $? -gt 0 ]; then
|
||||
echo -n "_(github server unavailable, update impossible)\n!!! network restart...!!! )"
|
||||
/etc/init.d/networking stop;
|
||||
echo "_____(stopping network connection)_____"
|
||||
sleep 1;
|
||||
/etc/init.d/networking start;
|
||||
echo "_____(start network connection)_____"
|
||||
sleep 5
|
||||
|
||||
if [ $? -gt 0 ]; then
|
||||
if [ -e /usr/bin/curl ]; then
|
||||
cd /tmp; curl -O --ftp-ssl https://raw.githubusercontent.com/gutosie/NeoBoot8/master/ver.txt;
|
||||
cd /
|
||||
elif [ -e /usr/bin/wget ]; then
|
||||
wget https://raw.githubusercontent.com/gutosie/NeoBoot8/master/ver.txt -O /tmp/ver.txt
|
||||
cd /
|
||||
|
||||
fi
|
||||
if [ ! -f /tmp/ver.txt ] ; then
|
||||
/etc/init.d/networking stop;
|
||||
echo "_____(stopping network connection)_____"
|
||||
sleep 2;
|
||||
/etc/init.d/networking start;
|
||||
echo "_____(start network connection)_____"
|
||||
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -e /%1 ] ; then
|
||||
rm -f /%1
|
||||
fi
|
||||
|
||||
# echo " dns-nameservers 1.1.1.1 " >> /etc/network/interfaces
|
||||
else
|
||||
echo "_____!!!(github server available)!!!_____"
|
||||
fi
|
||||
|
||||
echo "!!!_____([NEOBOOT] used userscript)_____!!! "
|
||||
echo ok
|
||||
|
||||
exit 0
|
||||
|
||||
|
Before Width: | Height: | Size: 431 B |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 50 KiB |
|
Before Width: | Height: | Size: 55 KiB |
|
Before Width: | Height: | Size: 854 B |
|
Before Width: | Height: | Size: 310 B |
|
Before Width: | Height: | Size: 868 B |
|
Before Width: | Height: | Size: 5.0 KiB |
|
Before Width: | Height: | Size: 604 B |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 331 B |
|
Before Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 9.0 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 7.1 KiB |
|
Before Width: | Height: | Size: 7.8 KiB |
|
Before Width: | Height: | Size: 154 B |
|
Before Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 624 B |
|
Before Width: | Height: | Size: 194 KiB |
|
Before Width: | Height: | Size: 92 KiB |
|
Before Width: | Height: | Size: 176 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 331 B |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1001 B |
|
Before Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 7.2 KiB |
|
Before Width: | Height: | Size: 4.7 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 97 KiB |
|
Before Width: | Height: | Size: 946 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 676 B |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 722 B |
|
Before Width: | Height: | Size: 461 B |
|
Before Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 331 B |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 123 KiB |
|
Before Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 41 KiB |