2
## Graficzny instalator kerneli e X t 7 3 - NeteXt'73
3
## przygotowanie kerneli e X t 7 3 - ext73@wp.pl
4
## przygotowanie skryptów optymalizacyjnych e X t 7 3
5
## autor skryptu NeteXt'73 - NetBit73 - netbit73@gmail.com
6
## Licencja: GPL v3: https://www.gnu.org/licenses/gpl.txt
7
#########################################################################################################################################################################
10
source /opt/NeteXt73/procedury
13
echo "nie" > /tmp/netext73/ok.txt
14
naglowek > instaluj.sh
15
nvidia_naglowek >> instaluj.sh
16
#sprawdzanie czy jest nvidia_optimus
17
if [ "$(lspci | grep -i VGA | grep -i Intel)" != "" ] && { [ "$(lspci | grep -i GeForce | grep -i NVIDIA)" != "" ] || [ "$(lspci | grep -i NVIDIA | grep -i Quadro)" != "" ]; };then
18
nvidia_optimus >> instaluj.sh
22
nvidia_stopka >> instaluj.sh
28
#########################################################################################################################################################################
29
#instalator sterowników do grafik Nvidia
33
rm *.txt* -f; rm *.sh -f; rm *.html* -f
39
if [ "$1" = "nvidia" ]; then
40
if [ "$(echo $WERSJA_UBUNTU | grep -i -x -E "bionic")" != "" ]; then
41
dymek -i $warning1 "$TEXT_UWAGA" "$TEXT_BRAK_WSPARCIA"
43
katalog_pulpit="/home/$userek/$(grep XDG_DESKTOP_DIR /home/$userek/.config/user-dirs.dirs | cut -d '/' -f 2 | cut -d '"' -f 1)"
46
if [ "$(lspci | grep -i VGA | grep -i Intel)" != "" ] && { [ "$(lspci | grep -i GeForce | grep -i NVIDIA)" != "" ] || [ "$(lspci | grep -i NVIDIA | grep -i Quadro)" != "" ]; };then
47
if [ "$(ls $katalog_pulpit/ | grep \.desktop)" = "" ]; then
48
menu="--button="gtk-ok:0" --button="$TEXT_POWROT:1" --button="Nvidia-optimus-menu:2""
50
menu="--button="gtk-ok:0" --button="$TEXT_POWROT:1" --button="Nvidia-optimus-menu:2" --button="Nvidia-optimus-desktop:3""
54
menu="--button="gtk-ok:0" --button="$TEXT_POWROT:1""
57
if [ -e /tmp/netext73/sumy/sumy_kontrolne.txt ]; then
58
grep nvidia /tmp/netext73/sumy/sumy_kontrolne.txt | grep -v nvidia-optimus | sed 's/.tar.xz//' | awk '{print $2}' | sort -r > 2a.txt
59
if [ "$(dpkg -l | grep linux-image | grep ext73-56 | cut -d ' ' -f 1 | head -n 1)" != 'ii' ];then
60
lista=$(cat 2a.txt | grep -E 'v2|v3|v4|v5' | tr '\n' '!' | sed -e '$s/!$//g' )
62
lista=$(cat 2a.txt | grep -v -E 'v2|v3|v4|v5' | tr '\n' '!' | sed -e '$s/!$//g' )
64
ster=$(yad --center --on-top --title="$nazwa_skryptu" --width=$((410*$skala)) --window-icon="/opt/NeteXt73/ikony/nvidia.png" --image="/opt/NeteXt73/ikony/nvidia.png" --text="$TEXT_STEROWNIKI2 <span color=\"$kolor_textu\"><b>Nvidia</b></span>" --form --field="$TEXT_STEROWNIK:CB" "$lista" $menu)
65
klawisz=$?; ster=$(echo $ster | cut -d "|" -f 1)
66
if [ "$ster" != "" ] && [ "$klawisz" = "0" ]; then
67
nvidiaoptimus=$(grep nvidia-optimus-ext /tmp/netext73/sumy/sumy_kontrolne.txt | awk '{print $2}' | sed 's/.tar.xz//g')
68
yad_wget $adres_sterownikow/$ster.tar.xz $adres_sterownikow/$nvidiaoptimus.tar.xz
69
if [ -e $ster.tar.xz ] && [ "$(grep $(md5sum $ster.tar.xz) $sumy_kontrolne)" != "" ] && [ -e $nvidiaoptimus.tar.xz ] && [ "$(grep $(md5sum $nvidiaoptimus.tar.xz) $sumy_kontrolne)" != "" ]; then
70
rm -f index.html 2a.txt
72
tar -Jxf $nvidiaoptimus.tar.xz -C /tmp/
75
export wersja_nvidia=$(echo $ster"_amd64" | sed 's/nvidia-//')
78
dymek -i $warning1 "$TEXT_UWAGA" "$TEXT_ROZPAKOWANIE_ERROR"
81
yad --center --error --title="$nazwa_skryptu" --window-icon="/opt/NeteXt73/ikony/error.png" --image="/opt/NeteXt73/ikony/error.png" --button="gtk-ok:0" --title="$nazwa_skryptu" --text="$TEXT_SUMA_KONTROLNA"
83
elif [ "$klawisz" = "2" ] || [ "$klawisz" = "3" ]; then
85
while [ $petla = "tak" ]; do
87
if [ "$klawisz" = "2" ]; then
88
katalog="/usr/share/applications"
89
elif [ "$klawisz" = "3" ]; then
90
katalog="$katalog_pulpit"
93
for i in $(ls $katalog/ | grep desktop); do
94
nazwa=$(echo "$i" | sed 's/.desktop//')
95
#taskset 0xFFFFFFFF primusrun
96
#taskset 0xFFFFFFFF optirun -b primus
97
if [ "$(grep 'taskset 0xFFFFFFFF primusrun' $katalog/$i)" = "" ]; then
98
echo "FALSE@"$nazwa"@-@on" >> primusrun1.txt
100
echo "FALSE@"$nazwa"@on@-" >> primusrun1.txt
103
cat primusrun1.txt | tr '\n' '@' > primusrun.txt
105
primus=$(yad --center --height=$((680*$skala)) --width=$((680*$skala)) --window-icon="/opt/NeteXt73/ikony/uslugi.png" --image="/opt/NeteXt73/ikony/uslugi.png" --button="gtk-ok:0" --button="$TEXT_POWROT:1" --title="$nazwa_skryptu" --text="<span color=\"$kolor_textu\"><b>Nvidia Optimus | Intel</b></span>\n" --column="$TEXT_ZAZNACZ" --column="$TEXT_MENU_USLUGI39" --column="NVidia" --column="Intel" --item-separator='@' --checklist --list $(cat primusrun.txt))
106
if [ $? = "0" ]; then
107
if [ "$primus" != "" ]; then
108
rm -f index.html 2a.txt
109
echo $primus | sed 's/|/\n/g' | sed '/^on/ d' | sed '/^off/ d' | sed '/^-/ d' | sed '/^.*TRUE/ d' > zaznaczone.txt
110
naglowek > instaluj.sh
112
for i in $(cat zaznaczone.txt); do
114
if [ "$(grep 'taskset 0xFFFFFFFF primusrun' "$katalog/$i.desktop")" = "" ]; then
115
echo "sudo sed -i \"s/Exec=taskset.*primusrun /Exec=/g\" \"$katalog/$i.desktop\"" >> instaluj.sh
116
echo "sudo sed -i \"s/Exec=taskset.*primus /Exec=/g\" \"$katalog/$i.desktop\"" >> instaluj.sh
117
echo "sudo sed -i \"s/Exec=/Exec=taskset 0xFFFFFFFF primusrun /g\" \"$katalog/$i.desktop\"" >> instaluj.sh
118
if [ "$klawisz" = "3" ] && [ $USER = "root" ]; then
119
echo "sudo chown $userek:$userek \"$katalog/$i.desktop\"" >> instaluj.sh
122
echo "sudo sed -i \"s/Exec=taskset.*primus /Exec=/g\" \"$katalog/$i.desktop\"" >> instaluj.sh
123
echo "sudo sed -i \"s/Exec=taskset.*primusrun /Exec=/g\" \"$katalog/$i.desktop\"" >> instaluj.sh
124
if [ "$klawisz" = "3" ] && [ $USER = "root" ]; then
125
echo "sudo chown $userek:$userek \"$katalog/$i.desktop\"" >> instaluj.sh
134
if [ -z "$primus" ]; then
141
elif [ "$1" = "mesa3d" ]; then
142
if [ "$(echo $WERSJA_UBUNTU | grep -i -x -E "$wspierane_wersje")" = "" ]; then
143
dymek -i $warning1 "$TEXT_UWAGA" "$TEXT_STEROWNIKI3"
145
if [ "$(echo $WERSJA_UBUNTU | grep -i -x -E "$wspierane_wersje")" != "" ]; then
146
lista="$TEXT_MESA_STABLE!$TEXT_MESA_TESTING!$TEXT_MESA_REMOVE"
147
elif [ "$(echo $WERSJA_UBUNTU | grep -i -x -E "$wspierane_wersje")" != "" ]; then
148
lista="$TEXT_MESA_TESTING!$TEXT_MESA_REMOVE"
150
if [ "$(glxinfo | grep "OpenGL version" | grep 'Mesa')" != '' ]; then
151
TEXT_MESA=$(glxinfo | grep "OpenGL version" | grep "Mesa")
155
ster=$(yad --center --on-top --title="$nazwa_skryptu" --width=$((310*$skala)) --window-icon="/opt/NeteXt73/ikony/mesa3d.png" --image="/opt/NeteXt73/ikony/mesa3d.png" --text="$TEXT_STEROWNIKI2 <span color=\"$kolor_textu\"><b>Mesa3D</b></span>\n\nInstalled: $TEXT_MESA" --form --field="$TEXT_STEROWNIK:CB" "$lista" --button="gtk-ok:0" --button="$TEXT_POWROT:1")
156
klawisz=$?; ster=$(echo $ster | cut -d "|" -f 1)
157
if [ "$ster" != "" ] && [ "$klawisz" = "0" ]; then
158
naglowek > instaluj.sh
159
if [ "$ster" = "$TEXT_MESA_STABLE" ]; then
160
echo "sudo ppa-purge ppa:oibaf/graphics-drivers" >> instaluj.sh
161
echo "sudo ppa-purge ppa:joe-yasi/xorg-xenial" >> instaluj.sh
162
echo "sudo add-apt-repository ppa:paulo-miguel-dias/pkppa -y" >> instaluj.sh
163
echo "sudo apt update" >> instaluj.sh
164
echo "sudo apt install vainfo libvulkan1 libvulkan1:i386 vulkan-utils mesa-vulkan-drivers -y" >> instaluj.sh
165
echo "sudo apt dist-upgrade -y" >> instaluj.sh
166
elif [ "$ster" = "$TEXT_MESA_TESTING" ]; then
167
echo "sudo ppa-purge ppa:joe-yasi/xorg-xenial" >> instaluj.sh
168
echo "sudo ppa-purge ppa:paulo-miguel-dias/pkppa" >> instaluj.sh
169
echo "sudo ppa-purge ppa:oibaf/graphics-drivers" >> instaluj.sh
170
echo "sudo add-apt-repository ppa:paulo-miguel-dias/mesa -y" >> instaluj.sh
171
echo "sudo apt update" >> instaluj.sh
172
echo "sudo apt install vainfo libvulkan1 libvulkan1:i386 vulkan-utils mesa-vulkan-drivers -y" >> instaluj.sh
173
echo "sudo apt dist-upgrade -y" >> instaluj.sh
174
elif [ "$ster" = "$TEXT_MESA_REMOVE" ]; then
175
echo "sudo ppa-purge ppa:joe-yasi/xorg-xenial" >> instaluj.sh
176
echo "sudo ppa-purge ppa:paulo-miguel-dias/pkppa" >> instaluj.sh
177
echo "sudo ppa-purge ppa:oibaf/graphics-drivers" >> instaluj.sh
178
echo "sudo ppa-purge ppa:paulo-miguel-dias/mesa" >> instaluj.sh