diff --git a/installer/installer.sh b/installer/installer.sh index a3c49dd..3cf1e14 100755 --- a/installer/installer.sh +++ b/installer/installer.sh @@ -19,50 +19,27 @@ function mostrardialog { dialog --title "$titled" --msgbox "$msgd" 15 60 } -## This function runs (non interactive) commands, and have various arguments, and logs it in $log file +## This function shows messages better to the user ## $1 -> Sentence to show -## $2 -> If it has to be silent (0->Show, 1/not 0->Silent) -## $3 -> Where to run (sudo: sudo $3, chroot: in the chroot as root, chuser: in chroot as the created user -## $4 -> Command to run -## $5 -> Is a "various-sentence command"? (1 -> First, 2-> Not lastest, 3 -> Lastest ; 0/none is for unique too) -function comm { - local command - local multic - # Do not permit that $5 is empty. For multicommand/multisentence checks - if [[ -z "$5" ]];then - multic="0" - else - multic=$5 - fi - - # First complete the command, if necessary - if [[ $3 == "chroot" ]];then - command="chroot /mnt /bin/bash -c \"$4\"" - elif [[ $3 == "chuser" ]];then - command="chroot /mnt /bin/bash -c \"su $nameuser -c \"$4\" \" " - else - command=$4 - fi +## $2 -> Start(1) /Finish(2) +function showdo { + statusc=$? + local sentence + local place + sentence="$1" + place=$2 # Check for multisentence command for showing start of command - if [[ $multic == "0" || $multic == "1" ]];then + if [[ $place = 1 ]];then echo "[RUNNING] $1" - fi - #Run command and make silent if its needed. - if [[ $2 != "0" ]];then - # TODO THIS SHIT DOESN'T WORK, IT SHOWS OUTPUT. - bash -c "${command} > /dev/null" - else - bash -c "$command" - fi - - # When command finish, know if it ran succesfully - if [[ $? != "0" ]];then - echo "[FAILED] $1" - echo "[FAILED] $1" >> /tmp/install.log - elif [[ $multic == "0" || $multic == "3" ]];then - echo "[ OK ] $1" - echo "[ OK ] $1" >> /tmp/install.log + elif [[ $place = 2 ]];then # When command finish, know if it ran succesfully + if [[ $statusc != "0" ]];then + echo "[FAILED] $1" + echo "[FAILED] $1" >> /tmp/install.log + else + echo "[ OK ] $1" + echo "[ OK ] $1" >> /tmp/install.log + fi fi } @@ -497,8 +474,8 @@ function installconf { allpackages=$allpackages" jka-toolkit git wget netctl iw wpa_supplicant dialog sudo alsa-utils bash-completion ntp" #Mate desktop and apps - allpackages=$allpackages" xfce4 gtk-engine-murrine xfce4-notifyd xfconf gtk-xfce-engine" - allpackages=$allpackages" xorg-server xorg-xinit xorg-server-common xf86-input-libinput xterm lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-smb gvfs-afc udisks2 networkmanager network-manager-applet gnome-keyring xdialog lxterminal ttf-inconsolata octopi octopi-notifier gksu pulseaudio pavucontrol xdg-user-dirs jkarch-appearance xfce4-power-manager lxtask xfce4-whiskermenu-plugin" + allpackages=$allpackages" xfce4 gtk-engine-murrine faenza-icon-theme xfce4-notifyd xfconf gtk-xfce-engine" + allpackages=$allpackages" xorg-server xorg-xinit xorg-server-common xf86-input-libinput xterm lightdm lightdm-gtk-greeter gvfs gvfs-mtp gvfs-smb gvfs-afc udisks2 networkmanager network-manager-applet gnome-keyring xdialog lxterminal ttf-inconsolata octopi octopi-notifier gksu pulseaudio pavucontrol xdg-user-dirs jkarch-appearance xfce4-power-manager lxtask xfce4-whiskermenu-plugin xfce4-pulseaudio-plugin" # Standard packages allpackages="$allpackages flashplugin evince ristretto librsvg gnome-calculator gnome-disk-utility file-roller lrzip p7zip unace unrar tumbler poppler-glib ffmpegthumbnailer libgsf notepadqq leafpad libreoffice-fresh vlc qt4 noto-fonts noto-fonts-cjk noto-fonts-emoji ttf-dejavu ttf-liberation ttf-ms-fonts" @@ -552,11 +529,8 @@ function installconf { execl chroot systemctl enable lightdm execl chroot systemctl enable NetworkManager execl chroot systemctl enable dhcpcd - # Enable cupsd service for printing - if [[ $cups = "1" ]];then - execl chroot systemctl enable org.cups.cupsd - fi + execl chroot systemctl enable org.cups.cupsd # Configure wine if neccesary if [[ $inswine = "1" ]];then @@ -663,15 +637,19 @@ if [[ ! -f "jkarch" ]];then # First add exec permisson to me chmod +x installer.sh # Grow cowspace - comm "Grow cowspace for installer" "1" "sudo" "mount -o remount,size=700M /run/archiso/cowspace" - + showdo "Grow cowspace for installer" + execl sudo mount -o remount,size=700M /run/archiso/cowspace #Enable pacman - comm "Configuring pacman" "1" "sudo" "pacman-key --init" "1" - comm "Configuring pacman" "1" "sudo" "pacman-key --populate" "2" - comm "Configuring pacman" "1" "sudo" "pacman -Sy archlinux-keyring --noconfirm" "3" + showdo "Configuring pacman" "1" + execl sudo pacman-key --init + execl sudo pacman-key --populate + execl sudo pacman -Sy archlinux-keyring --noconfirm + showdo "Configuring pacman" "2" - comm "Selecting mirrors" "1" "sudo" "pacman -S reflector --noconfirm" "1" - comm "Selecting mirrors" "1" "sudo" "reflector --verbose -l 6 --sort rate --save /etc/pacman.d/mirrorlist" "3" + showdo "Updating mirrors" "1" + execl sudo pacman -S reflector --noconfirm + execl sudo reflector --verbose -l 6 --sort rate --save /etc/pacman.d/mirrorlist + showdo "Updated mirrors" "2" #Delete programs (For not updating it) sudo pacman -R clonezilla darkhttpd diffutils grml-zsh-config irssi linux-atm lvm2 man-db man-pages mc ndisc6 nmap smartmontools testdisk vi vim vim-runtime openconnect pcsclite python2 python reflector --noconfirm diff --git a/installer/skeluser.tar.xz b/installer/skeluser.tar.xz index 898ed9e..dcd5532 100644 Binary files a/installer/skeluser.tar.xz and b/installer/skeluser.tar.xz differ