1
0
mirror of https://gitlab.com/JKANetwork/JKArch.git synced 2026-02-18 03:01:32 +01:00

more options

This commit is contained in:
kprkpr
2016-09-28 21:45:21 +02:00
parent 9fa8e0c98c
commit ea5169f168

View File

@@ -400,7 +400,7 @@ nameuser=`dialog --stdout --inputbox "Ahora crearemos tu usuario \nNombre para
inchroot useradd -m -G wheel -s /bin/bash $nameuser inchroot useradd -m -G wheel -s /bin/bash $nameuser
until [[ $pass1 = $pass2 && $pass1 != "" ]] until [[ $pass1 = $pass2 && $pass1 != "" ]]
do do
pass1=`dialog --stdout --insecure --passwordbox "$(T "Password for ") . $nameuser" 9 50` pass1=`dialog --stdout --insecure --passwordbox "$(T "Password for ") $nameuser" 9 50`
pass2=`dialog --stdout --insecure --passwordbox "$(T "Repeat password")" 9 50` pass2=`dialog --stdout --insecure --passwordbox "$(T "Repeat password")" 9 50`
if ! [[ $pass1 = $pass2 && $pass1 != "" ]];then if ! [[ $pass1 = $pass2 && $pass1 != "" ]];then
mostrardialog "$(T "Password")" "$(T "Passwords do not match")" mostrardialog "$(T "Password")" "$(T "Passwords do not match")"
@@ -458,13 +458,14 @@ opt2="1 5"
opt3="1" opt3="1"
opt5="1" opt5="1"
opt6="1 2" opt6="1 2"
opt8="8"
mostrardialog "Leer" "Ahora se le presenta la opcion de elegir que programas quieres que sean instalados, cosa que recomendamos, aunque, dejamos tambien una opcion rapida, que instalara lo basico y recomendado desde nuestro punto de vista." mostrardialog "Leer" "Ahora se le presenta la opcion de elegir que programas quieres que sean instalados, cosa que recomendamos, aunque, dejamos tambien una opcion rapida, que instalara lo basico y recomendado desde nuestro punto de vista."
tipoinstall=`dialog --stdout --nocancel --menu "¿Elegir los programas que quiere?" 0 0 5 1 "Si, elegir (Muy recomendado)" 2 "No, opcion rapida (No recomendado)"` tipoinstall=`dialog --stdout --nocancel --menu "¿Elegir los programas que quiere?" 0 0 5 1 "Si, elegir (Muy recomendado)" 2 "No, instalar preseleccion propia (No recomendado)" 3 "No, no instalar ninguno (Solo tendras el entorno y lo mas basico)"`
case $tipoinstall in case $tipoinstall in
1) 1)
until [[ $surep -eq 1 ]] until [[ $surep -eq 1 ]]
do do
optprogramas=`dialog --stdout --nocancel --scrollbar --menu "Categorías" 0 0 9 1 "Navegadores web ($(echo $opt1 | wc -w) seleccionados)" 2 "Editores de texto y Office ($(echo $opt2 | wc -w) seleccionados)" 3 "Audio y Video ($(echo $opt3 | wc -w) seleccionados)" 4 "Imagen ($(echo $opt4 | wc -w) seleccionado)" 5 "Fuentes/Tipos de letra ($(echo $opt5 | wc -w) seleccionado)" 6 "Visores ($(echo $opt6 | wc -w) seleccionado)" 7 "Soportes (Impresoras,Bluetooth...) ($(echo $opt7 | wc -w) seleccionado)" 8 "Utilidades varias ($(echo $opt8 | wc -w) seleccionado)" I "Instalar"` optprogramas=`dialog --stdout --nocancel --scrollbar --menu "Categorías" 0 0 9 1 "Navegadores web ($(echo $opt1 | wc -w) seleccionados)" 2 "Editores de texto y Office ($(echo $opt2 | wc -w) seleccionados)" 3 "Audio y Video ($(echo $opt3 | wc -w) seleccionados)" 4 "Editores de imagen ($(echo $opt4 | wc -w) seleccionado)" 5 "Fuentes/Tipos de letra ($(echo $opt5 | wc -w) seleccionado)" 6 "Visores ($(echo $opt6 | wc -w) seleccionado)" 7 "Soportes (Impresoras,Bluetooth...) ($(echo $opt7 | wc -w) seleccionado)" 8 "Utilidades varias ($(echo $opt8 | wc -w) seleccionado)" 9 "Programacion ($(echo $opt9 | wc -w) seleccionado)" I "Instalar"`
#Menu con cada una de las categorias #Menu con cada una de las categorias
case $optprogramas in case $optprogramas in
# La variable optstate "$optX" Y es una funcion que devuelve on o off, para mostrar la ultima seleccion bien # La variable optstate "$optX" Y es una funcion que devuelve on o off, para mostrar la ultima seleccion bien
@@ -475,7 +476,7 @@ case $tipoinstall in
5) opt5=`dialog --stdout --checklist "Fuentes/Tipos de letra" 0 0 6 1 "noto-fonts (Muy recomendado)" $(optstate "$opt5" 1) 2 "Microsoft Fonts" $(optstate "$opt5" 2) 3 "Recopilatorio de fuentes de Google (mas de 300)" $(optstate "$opt5" 3)`;; 5) opt5=`dialog --stdout --checklist "Fuentes/Tipos de letra" 0 0 6 1 "noto-fonts (Muy recomendado)" $(optstate "$opt5" 1) 2 "Microsoft Fonts" $(optstate "$opt5" 2) 3 "Recopilatorio de fuentes de Google (mas de 300)" $(optstate "$opt5" 3)`;;
6) opt6=`dialog --stdout --checklist "Recomendado pulsar todos \nVisores" 0 0 6 1 "Evince (PDF)" $(optstate "$opt6" 1) 2 "Ristretto (imagenes como jpg,png...)" $(optstate "$opt6" 2)`;; 6) opt6=`dialog --stdout --checklist "Recomendado pulsar todos \nVisores" 0 0 6 1 "Evince (PDF)" $(optstate "$opt6" 1) 2 "Ristretto (imagenes como jpg,png...)" $(optstate "$opt6" 2)`;;
7) opt7=`dialog --stdout --checklist "Soportes (Impresoras,Bluetooth...)" 0 0 6 1 "CUPS (Soporte impresoras)" $(optstate "$opt7" 1) 2 "HPLIP (Soporte impresoras HP)" $(optstate "$opt7" 2) 3 "Bluetooth" $(optstate "$opt7" 3)`;; 7) opt7=`dialog --stdout --checklist "Soportes (Impresoras,Bluetooth...)" 0 0 6 1 "CUPS (Soporte impresoras)" $(optstate "$opt7" 1) 2 "HPLIP (Soporte impresoras HP)" $(optstate "$opt7" 2) 3 "Bluetooth" $(optstate "$opt7" 3)`;;
8) opt8=`dialog --stdout --scrollbar --checklist "Utilidades varias" 0 0 8 1 "Dropbox" $(optstate "$opt8" 1) 2 "MEGA" $(optstate "$opt8" 2) 3 "Visor de correo Evolution" $(optstate "$opt8" 3) 4 "Grabador de discos (k3b)" $(optstate "$opt8" 4) 5 "Java (jre8)" $(optstate "$opt8" 5) 6 "Wine ('Emulador' de programas de Windows)" $(optstate "$opt8" 6) 7 "BleachBit (Limpiador de disco duro)" $(optstate "$opt8" 7)`;; 8) opt8=`dialog --stdout --scrollbar --checklist "Utilidades varias" 0 0 8 1 "Dropbox" $(optstate "$opt8" 1) 2 "MEGA" $(optstate "$opt8" 2) 3 "Visor de correo Evolution" $(optstate "$opt8" 3) 4 "Grabador de discos (k3b)" $(optstate "$opt8" 4) 5 "Java (jre8)" $(optstate "$opt8" 5) 6 "Wine ('Emulador' de programas de Windows)" $(optstate "$opt8" 6) 7 "BleachBit (Limpiador de disco duro)" $(optstate "$opt8" 7) 8 "File-roller (Compresor/descompresor, muy recomendado) $(optstate "$opt8" 8)`;;
9) opt9=`dialog --stdout --scrollbar --checklist "Programacion" 0 0 8 1 "Sublime Text 3" $(optstate "$opt9" 1) 2 "Sublime Text 2" $(optstate "$opt9" 2) 3 "Visual Studio Code" $(optstate "$opt9" 3) 4 "Eclipse" $(optstate "$opt9" 4) 5 "Monodevelop" $(optstate "$opt9" 5) 6 "Brackets" $(optstate "$opt9" 6) 7 "Atom" $(optstate "$opt9" 7) 8 "Gamedevelop" $(optstate "$opt9" 8) 9 "Poedit (gettext)" $(optstate "$opt9" 9) A "Arduino IDE" $(optstate "$opt9" A)`;; 9) opt9=`dialog --stdout --scrollbar --checklist "Programacion" 0 0 8 1 "Sublime Text 3" $(optstate "$opt9" 1) 2 "Sublime Text 2" $(optstate "$opt9" 2) 3 "Visual Studio Code" $(optstate "$opt9" 3) 4 "Eclipse" $(optstate "$opt9" 4) 5 "Monodevelop" $(optstate "$opt9" 5) 6 "Brackets" $(optstate "$opt9" 6) 7 "Atom" $(optstate "$opt9" 7) 8 "Gamedevelop" $(optstate "$opt9" 8) 9 "Poedit (gettext)" $(optstate "$opt9" 9) A "Arduino IDE" $(optstate "$opt9" A)`;;
"I") "I")
#Instalar #Instalar
@@ -484,82 +485,89 @@ case $tipoinstall in
esac esac
done done
;; ;;
2) mostrardialog "Programas predeterminados" "Ahora se van a instalar los programas predeterminados, espere" 2) mostrardialog "Programas predeterminados" "Ahora se van a instalar los programas predeterminados, espere";;
3) mostrardialog "Ningun programa" "No se instalara ningun programa opcional."
nooptprogs="1" # Not install anything
;;
esac esac
packages="" #Erase var before
case $opt1 in if [[ $nooptprogs != "1" ]];then
*1*) packages="firefox";;& packages="" #Erase var before
*2*) packages="$packages google-chrome";;& case $opt1 in
*3*) packages="$packages chromium";;& *1*) packages="firefox";;&
*4*) packages="$packages opera";;& *2*) packages="$packages google-chrome";;&
*5*) packages="$packages otter-browser";;& *3*) packages="$packages chromium";;&
*6*) packages="$packages flashplugin";;& *4*) packages="$packages opera";;&
esac *5*) packages="$packages otter-browser";;&
case $opt2 in *6*) packages="$packages flashplugin";;&
*1*) packages="$packages libreoffice-fresh";;& esac
*2*) packages="$packages abiword";;& case $opt2 in
*3*) packages="$packages gnumeric";;& *1*) packages="$packages libreoffice-fresh";;&
*4*) packages="$packages wps-office";;& *2*) packages="$packages abiword";;&
*5*) packages="$packages leafpad";;& *3*) packages="$packages gnumeric";;&
*6*) packages="$packages gedit";;& *4*) packages="$packages wps-office";;&
*7*) packages="$packages notepadqq";;& *5*) packages="$packages leafpad";;&
esac *6*) packages="$packages gedit";;&
case $opt3 in *7*) packages="$packages notepadqq";;&
*1*) packages="$packages vlc qt4";;& esac
*2*) packages="$packages smplayer";;& case $opt3 in
*3*) packages="$packages totem";;& *1*) packages="$packages vlc qt4";;&
*4*) packages="$packages clementine";;& *2*) packages="$packages smplayer";;&
*5*) packages="$packages banshee";;& *3*) packages="$packages totem";;&
esac *4*) packages="$packages clementine";;&
case $opt4 in *5*) packages="$packages banshee";;&
*1*) packages="$packages gimp";;& esac
*2*) packages="$packages inkscape";;& case $opt4 in
*3*) packages="$packages pinta";;& *1*) packages="$packages gimp";;&
*4*) packages="$packages krita";;& *2*) packages="$packages inkscape";;&
esac *3*) packages="$packages pinta";;&
case $opt5 in *4*) packages="$packages krita";;&
*1*) packages="$packages noto-fonts";;& esac
*2*) packages="$packages ttf-ms-fonts";;& case $opt5 in
*3*) packages="$packages ttf-google-fonts-git";;& *1*) packages="$packages noto-fonts";;&
esac *2*) packages="$packages ttf-ms-fonts";;&
case $opt6 in *3*) packages="$packages ttf-google-fonts-git";;&
*1*) packages="$packages evince";;& esac
*2*) packages="$packages ristretto librsvg";;& case $opt6 in
esac *1*) packages="$packages evince";;&
case $opt7 in *2*) packages="$packages ristretto librsvg";;&
*1*) packages="$packages cups cups-filters";;& esac
*2*) packages="$packages hplip";;& case $opt7 in
*3*) packages="$packages bluez bluez-utils bluez-cups bluez-firmware bluez-libs blueberry";;& *1*) packages="$packages cups cups-filters";;&
esac *2*) packages="$packages hplip";;&
case $opt8 in *3*) packages="$packages bluez bluez-utils bluez-cups bluez-firmware bluez-libs blueberry";;&
*1*) packages="$packages dropbox";;& esac
*2*) packages="$packages megasync";;& case $opt8 in
*3*) packages="$packages geary";;& *1*) packages="$packages dropbox";;&
*4*) packages="$packages k3b";;& *2*) packages="$packages megasync";;&
*5*) packages="$packages jre8-openjdk";;& *3*) packages="$packages geary";;&
*6*) packages="$packages wine-staging wine_gecko winetricks" *4*) packages="$packages k3b";;&
packages="$packages lib32-libpng lib32-libldap lib32-gnutls lib32-mpg123 lib32-libpulse lib32-ncurses lib32-openal lib32-alsa-lib" #Some 32bit libs for winearch 32 work better *5*) packages="$packages jre8-openjdk";;&
inswine=1;;& *6*) packages="$packages wine-staging wine_gecko winetricks"
*7*) packages="$packages bleachbit";;& packages="$packages lib32-libpng lib32-libldap lib32-gnutls lib32-mpg123 lib32-libpulse lib32-ncurses lib32-openal lib32-alsa-lib" #Some 32bit libs for winearch 32 work better
esac inswine=1;;&
case $opt9 in *7*) packages="$packages bleachbit";;&
*1*) packages="$packages sublime-text-dev";;& *8*) packages="$packages file-roller";;&
*2*) packages="$packages sublime-text";;& esac
*3*) packages="$packages visual-studio-code";;& case $opt9 in
*4*) packages="$packages jdk8-openjdk eclipse-java";;& *1*) packages="$packages sublime-text-dev";;&
*5*) packages="$packages monodevelop";;& *2*) packages="$packages sublime-text";;&
*6*) packages="$packages brackets";;& *3*) packages="$packages visual-studio-code";;&
*7*) packages="$packages atom-editor-bin";;& *4*) packages="$packages jdk8-openjdk eclipse-java";;&
*8*) packages="$packages gdevelop";;& *5*) packages="$packages monodevelop";;&
*9*) packages="$packages poedit";;& *6*) packages="$packages brackets";;&
*A*) packages="$packages arduino";;& *7*) packages="$packages atom-editor-bin";;&
esac *8*) packages="$packages gdevelop";;&
inchroot pacman -S $packages --noconfirm --needed *9*) packages="$packages poedit";;&
if [[ $inswine = 1 ]];then *A*) packages="$packages arduino";;&
echo "$(T "Configuring wine for better experience") (32 bit winearch)" esac
inchroot su $nameuser -c "WINEARCH=win32 wineboot -u" inchroot pacman -S $packages --noconfirm --needed
if [[ $inswine = 1 ]];then
echo "$(T "Configuring wine for better experience") (32 bit winearch)"
inchroot su $nameuser -c "WINEARCH=win32 wineboot -u"
fi
packages=""
fi fi
packages=""
} }
### Install base graphic programs ### ### Install base graphic programs ###
@@ -567,16 +575,13 @@ function baseconX {
tput setaf 2 ;echo "$(T "Installing desktop and basic programs, please wait")" ; tput setaf 9 tput setaf 2 ;echo "$(T "Installing desktop and basic programs, please wait")" ; tput setaf 9
sleep 2 sleep 2
inchroot pacman -S xorg-server xorg-xinit xorg-server-common xf86-input-libinput lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-smb udisks networkmanager network-manager-applet gnome-keyring xdialog --noconfirm inchroot pacman -S xorg-server xorg-xinit xorg-server-common xf86-input-libinput lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-smb udisks networkmanager network-manager-applet gnome-keyring xdialog --noconfirm
inchroot pacman -S lxterminal ttf-inconsolata file-roller --noconfirm inchroot pacman -S lxterminal ttf-inconsolata octopi octopi-notifier gksu --noconfirm # Basic JKArch programs
#Instalar pulseaudio si tiene entorno grafico, sino es tonteria #Instalar pulseaudio si tiene entorno grafico, sino es tonteria
inchroot pacman -S pulseaudio pavucontrol --noconfirm inchroot pacman -S pulseaudio pavucontrol --noconfirm
echo "Instalando octopi, gestor visual de actualizaciones y paquetes"
inchroot pacman -S octopi octopi-notifier gksu --noconfirm
inchroot pacman -S xdg-user-dirs --noconfirm inchroot pacman -S xdg-user-dirs --noconfirm
inchroot xdg-user-dirs-update inchroot xdg-user-dirs-update
#Gestor de energia #Gestor de energia
inchroot pacman -S xfce4-power-manager --noconfirm inchroot pacman -S xfce4-power-manager --noconfirm
#Habilitamos ciertos servicios #Habilitamos ciertos servicios
inchroot systemctl enable lightdm inchroot systemctl enable lightdm
inchroot systemctl enable NetworkManager inchroot systemctl enable NetworkManager
@@ -585,6 +590,7 @@ inchroot pacman -S jkarch-appearance --noconfirm
clear clear
} }
### Simply put keyboard layout configs ###
function keyboardlayout { function keyboardlayout {
echo "KEYMAP=$langabr" > /mnt/etc/vconsole.conf echo "KEYMAP=$langabr" > /mnt/etc/vconsole.conf
echo "# Read and parsed by systemd-localed. It's probably wise not to edit this file" > /mnt/etc/X11/xorg.conf.d/00-keyboard.conf echo "# Read and parsed by systemd-localed. It's probably wise not to edit this file" > /mnt/etc/X11/xorg.conf.d/00-keyboard.conf
@@ -596,6 +602,7 @@ echo ' Option "XkbLayout" "'$langabr'"' >> /mnt/etc/X11/xorg.conf.d/00-keyboa
echo 'EndSection' >> /mnt/etc/X11/xorg.conf.d/00-keyboard.conf echo 'EndSection' >> /mnt/etc/X11/xorg.conf.d/00-keyboard.conf
} }
### Install desktop enviroment and their style in some cases ###
function entorno { function entorno {
clear clear
optentorno=`dialog --stdout --nocancel --menu "$(T "Select your desktop enviroment")" 0 0 5 1 "LXDE (Muy ligero)" 2 "XFCE (Ligero)" 3 "Cinnamon (Facil para antiguos usuarios de Windows)" 4 "Gnome (Complejo, pero practico)" 5 "MATE (Tradicional)" 6 "Plasma/KDE (Pesado aunque bonito) " 7 "No instalar entorno de escritorio"` optentorno=`dialog --stdout --nocancel --menu "$(T "Select your desktop enviroment")" 0 0 5 1 "LXDE (Muy ligero)" 2 "XFCE (Ligero)" 3 "Cinnamon (Facil para antiguos usuarios de Windows)" 4 "Gnome (Complejo, pero practico)" 5 "MATE (Tradicional)" 6 "Plasma/KDE (Pesado aunque bonito) " 7 "No instalar entorno de escritorio"`
@@ -659,6 +666,7 @@ programasguiuser
fi fi
} }
### More optional configs ###
function otrasconfig { function otrasconfig {
mostrardialog "$(T "Other configs")" "Aquí puedes seleccionar otras configuraciones que puedes hacer a Arch antes de terminar la instalacion, como su nombre" mostrardialog "$(T "Other configs")" "Aquí puedes seleccionar otras configuraciones que puedes hacer a Arch antes de terminar la instalacion, como su nombre"
# Loop infinito en otras configuraciones hasta que se pulse la de terminar # Loop infinito en otras configuraciones hasta que se pulse la de terminar