diff options
author | David P <megver83@parabola.nu> | 2018-05-16 21:08:49 -0400 |
---|---|---|
committer | David P <megver83@parabola.nu> | 2018-05-16 21:27:46 -0400 |
commit | 765756ae126d57735c22d59a7c1242f01443921e (patch) | |
tree | c5d5f3e7979f5a0098e7294d1e8dbae3aa71c562 /configs/lxde-openrc/airootfs/root | |
parent | ff5f93347993bfdb6c58746baee006dbad7a3dd8 (diff) |
modify entire source according to archiso32
and remove unused configs/talkingparabola-X11
Signed-off-by: David P <megver83@parabola.nu>
Diffstat (limited to 'configs/lxde-openrc/airootfs/root')
28 files changed, 2367 insertions, 0 deletions
diff --git a/configs/lxde-openrc/airootfs/root/.automated_script.sh b/configs/lxde-openrc/airootfs/root/.automated_script.sh new file mode 100755 index 0000000..fb106da --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.automated_script.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +script_cmdline () +{ + local param + for param in $(< /proc/cmdline); do + case "${param}" in + script=*) echo "${param##*=}" ; return 0 ;; + esac + done +} + +automated_script () +{ + local script rt + script="$(script_cmdline)" + if [[ -n "${script}" && ! -x /tmp/startup_script ]]; then + if [[ "${script}" =~ ^http:// || "${script}" =~ ^ftp:// ]]; then + wget "${script}" --retry-connrefused -q -O /tmp/startup_script >/dev/null + rt=$? + else + cp "${script}" /tmp/startup_script + rt=$? + fi + if [[ ${rt} -eq 0 ]]; then + chmod +x /tmp/startup_script + /tmp/startup_script + fi + fi +} + +if [[ $(tty) == "/dev/tty1" ]]; then + automated_script +fi diff --git a/configs/lxde-openrc/airootfs/root/.codecheck b/configs/lxde-openrc/airootfs/root/.codecheck new file mode 100644 index 0000000..8b10d0c --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.codecheck @@ -0,0 +1,2 @@ +LANG=0 +XKBMAP=0 diff --git a/configs/lxde-openrc/airootfs/root/.config/dconf/user b/configs/lxde-openrc/airootfs/root/.config/dconf/user Binary files differnew file mode 100644 index 0000000..dab7f59 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.config/dconf/user diff --git a/configs/lxde-openrc/airootfs/root/.config/gtk-2.0/gtkfilechooser.ini b/configs/lxde-openrc/airootfs/root/.config/gtk-2.0/gtkfilechooser.ini new file mode 100644 index 0000000..c6b458d --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.config/gtk-2.0/gtkfilechooser.ini @@ -0,0 +1,11 @@ +[Filechooser Settings] +LocationMode=path-bar +ShowHidden=true +ShowSizeColumn=true +GeometryX=52 +GeometryY=86 +GeometryWidth=920 +GeometryHeight=585 +SortColumn=name +SortOrder=ascending +StartupMode=recent diff --git a/configs/lxde-openrc/airootfs/root/.config/lxsession/LXDE/autostart b/configs/lxde-openrc/airootfs/root/.config/lxsession/LXDE/autostart new file mode 100644 index 0000000..3942b5a --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.config/lxsession/LXDE/autostart @@ -0,0 +1,4 @@ +@lxpanel --profile LXDE +@pcmanfm --desktop --profile LXDE +@xscreensaver -no-splash +@/root/.keymap.sh diff --git a/configs/lxde-openrc/airootfs/root/.config/volumeicon/volumeicon b/configs/lxde-openrc/airootfs/root/.config/volumeicon/volumeicon new file mode 100644 index 0000000..588b9dd --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.config/volumeicon/volumeicon @@ -0,0 +1,25 @@ +[Alsa] +card=default + +[Notification] +show_notification=true +notification_type=0 + +[StatusIcon] +stepsize=5 +onclick=xterm -e 'alsamixer' +theme=Default +use_panel_specific_icons=false +lmb_slider=false +mmb_mute=false +use_horizontal_slider=false +show_sound_level=false +use_transparent_background=false + +[Hotkeys] +up_enabled=false +down_enabled=false +mute_enabled=false +up=XF86AudioRaiseVolume +down=XF86AudioLowerVolume +mute=XF86AudioMute diff --git a/configs/lxde-openrc/airootfs/root/.keymap.sh b/configs/lxde-openrc/airootfs/root/.keymap.sh new file mode 100755 index 0000000..56eb1dc --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.keymap.sh @@ -0,0 +1,116 @@ +#!/bin/bash + +list_keymaps() { +cat <<EOM +af Afrikaans +al Albanian +am Amharic +ara Arabic +at at +au au +az Azerbaijani +ba Bashkir +be Belarusian +bg Bulgarian +bn Bihari-languages +br Breton +brai brai +bt bt +bw bw +by by +ca Catalan +cd cd +ch Chamorro +cm cm +cn cn +cz Czech +de German +dk dk +dz Dzongkha +ee Ewe +epo Esperanto +es Spanish +et Estonian +fi Finnish +fo Faroese +fr French +gb gb +ge ge +gh gh +gn Guaraní +gr gr +hr Croatian +hu Hungarian +id Indonesian +ie Interlingue +il il +in in +iq iq +ir ir +is Icelandic +it Italian +jp Japanese +ke ke +kg Kongo +kh kh +kr Kanuri +kz kz +la Latin +latam Latin-American +lk lk +lt Lithuanian +lv Latvian +ma ma +mao Maori +md md +me me +mk Macedonian +ml Malayalam +mm mm +mn Mongolian +mt Maltese +mv mv +my Burmese +nec_vndr/jp nec_vndr/jp +ng Ndonga +nl Dutch +no Norwegian +np np +ph ph +pk pk +pl Polish +pt Portuguese +ro Romanian +rs rs +ru Russian +se Northern-Sami +si Sinhala +sk Slovak +sn Shona +sy sy +tg Tajik +th Thai +tj tj +tm tm +tr Turkish +tw Twi +tz tz +ua ua +us English +uz Uzbek +vn vn +za Zhuang +EOM +} + +#Comprobe if X11 keymap was selected +code=$(cat .codecheck | grep XKBMAP= | cut -d '=' -f 2) +if [[ $code = "0" ]]; then + keymap=$(zenity --list --title="Select your keymap" --column="Code Name" --column="Keymap" --hide-column=1 $(list_keymaps)) + + setxkbmap $keymap + + #Save XKBMAP in .codecheck to use in other time. For example if you install X11 with scripts + sed -i '/XKBMAP=./d' ~/.codecheck + echo "XKBMAP=$keymap" >> ~/.codecheck +fi diff --git a/configs/lxde-openrc/airootfs/root/.language.sh b/configs/lxde-openrc/airootfs/root/.language.sh new file mode 100755 index 0000000..11e986e --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.language.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +#Comprobe if language was selected +code=$(cat ~/.codecheck | grep LANG= | tail --bytes 2) +if [ $code = "0" ]; then + lang=$(dialog --stdout --backtitle "System language selection" --menu "Choose your language:" 15 40 10 \ + "en_US.UTF-8" "English" \ + "gl_ES.UTF-8" "Galego" \ + "es_ES.UTF-8" "Spanish" \ + "pt_BR.UTF-8" "Brazilian Portuguese" \ + "pl_PL.UTF-8" "Polish" \ + "it_IT.UTF-8" "Italian" \ + "fr_FR.UTF-8" "French" \ + "eo" "Esperanto") + + #Copy locale in locale.conf + [ $lang = "" ] || echo "LANG=$lang" > /etc/locale.conf + + #Put a new line confirm that language was selected + sed -i '/LANG=./d' ~/.codecheck + echo "LANG=1" >> ~/.codecheck + + #Copy scripts to install in that language + case ${lang/_*/} in + en|gl|es|pt) cp -a ~/.scriptsInstallation/language/${lang/_*/}/* ~/.scriptsInstallation/ + cp ~/.scriptsInstallation/install.sh ~/ + ;; + *) cp -a ~/.scriptsInstallation/language/en/* ~/.scriptsInstallation/ + cp ~/.scriptsInstallation/install.sh ~/ + ;; + esac +fi diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/install.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/install.sh new file mode 100755 index 0000000..4120079 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/install.sh @@ -0,0 +1,227 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +if [ ! -f ~/.scriptsInstallation/.pacman ]; then + pacman -Sy parabola-keyring archlinux-keyring --noconfirm + pacman-key --populate parabola archlinux + pacman-key --refresh-keys + case $? in + 0) touch ~/.scriptsInstallation/.pacman + ;; + *) false + ;; + esac +fi + +partition(){ + + #Search and show the Hard Disks to select + aux=$(ls /dev/sd?) + index=0 + for i in $aux; do + hdds[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + hdd=$(dialog --stdout --radiolist "Select Hard Disk" 20 70 50 ${hdds[@]}) + + #If exist the line delete + if (cat ~/.scriptsInstallation/temporal | grep "hdd=") &>/dev/null + then + sed -i -e '/hdd=*/d' ~/.scriptsInstallation/temporal + fi + + #And add the new line with new parameter + echo "hdd=$hdd" >> ~/.scriptsInstallation/temporal + + selection=$(dialog --stdout --menu "Partitioning method" 20 70 50 \ + 1 "Use all disk with swap (1GB) and /" \ + 2 "Use gparted to customize" ) + + case $selection in + 1) + umount /mnt &> /dev/null + #Create msdos partition table + parted -s $hdd -- mklabel msdos + + #Create partition swap and / + parted -s $hdd -- mkpart primary 1MiB 1000MiB mkpart primary 1000MiB -1s + + #Boot option partition / + parted -s $hdd -- set 2 boot on + + #Format and partitions and mount / + (echo t; echo 1; echo 82; echo w) | fdisk $hdd + mkswap ${hdd}1 + mkfs.ext4 ${hdd}2 + mount ${hdd}2 /mnt + ;; + 2) + gparted $hdd + + #Search and show the partitions that select before. + aux=$(ls $hdd?) + index=0; + for i in $aux; do + partitions[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + partition=$(dialog --stdout --radiolist "Mount / Partition" 20 70 50 ${partitions[@]}) + + #Mount partition / + umount /mnt &> /dev/null + mount $partition /mnt + + #Ask if you want mount other partitions + other=0 + while [ $other != 3 ]; do + other=$(dialog --stdout --menu "Mount other partition?" 20 70 50 1 "/home" 2 "/boot" 3 "No") + + case $other in + 1) + umount /mnt/home &> /dev/null + mkdir /mnt/home &> /dev/null + mount $(dialog --stdout --radiolist "Mount /home Partition" 20 70 50 ${partitions[@]}) /mnt/home + ;; + 2) + umount /mnt/boot &> /dev/null + mkdir /mnt/boot &> /dev/null + mount $(dialog --stdout --radiolist "Mount /boot Partition" 20 70 50 ${partitions[@]}) /mnt/boot + ;; + *) + other=3 + ;; + esac + done + ;; + esac +} + + +option=0 +while [ option != 7 ]; do + option=$(dialog --stdout --menu "Parabola Installation CLI" 20 70 50 \ + 1 "Format and Mount Partitions" \ + 2 "Install Base System" \ + 3 "Install GRUB" \ + 4 "System Configure" \ + 5 "Create User Account" \ + 6 "(Optional) Install Live DVD Desktop/Applications" \ + 7 "Exit" ) + + case $option in + 1) + partition + ;; + 2) + #Install base system + pacstrap /mnt base-openrc + pacstrap /mnt dialog + ;; + 3) + #Install grub + pacstrap /mnt grub + ;; + 4) + #Generate fstab and acces to chroot to do System Config + genfstab -p /mnt >> /mnt/etc/fstab + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/systemConfig.sh /mnt + chmod +x /mnt/systemConfig.sh + arch-chroot /mnt /systemConfig.sh + rm -r /mnt/systemConfig.sh + ;; + 5) + #Create a new username and save in temporal, to use after + if (cat ~/.scriptsInstallation/temporal | grep "userName=") &>/dev/null + then + sed -i -e '/userName=*/d' ~/.scriptsInstallation/temporal + fi + + echo "userName=$(dialog --stdout --inputbox "Enter an User Name" 8 40)" >> ~/.scriptsInstallation/temporal + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/userAccount.sh /mnt + chmod +x /mnt/userAccount.sh + arch-chroot /mnt /userAccount.sh + rm -r /mnt/userAccount.sh + ;; + 6) + #Packages to the X11 live + packages=( "xorg-server" + "xf86-input-evdev" + "xf86-input-synaptics" + "xf86-video-ati" + "xf86-video-dummy" + "xf86-video-fbdev" + "xf86-video-intel" + "xf86-video-nouveau" + "xf86-video-openchrome" + "xf86-video-sisusb" + "xf86-video-vesa" + "xf86-video-vmware" + "xf86-video-voodoo" + "xf86-video-qxl" + "xorg-xinit" + "gst-plugins-good" + "gst-libav" + "lxde" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager-elogind" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + "polkit-elogind" + "gvfs-mtp" + "gvfs-gphoto2" + "xdg-user-dirs" + "gnome-screenshot" + ) + + #Install packages + pacman -Sy -r /mnt ${packages[@]} --needed --noconfirm + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copy skel in the new system and desktop's background + cp -a /etc/skel/ /mnt/etc/ + cp -a /etc/wallpaper.png /mnt/etc/wallpaper.png + + #Puts the XKBMAP, start X11 automatically and icewm desktop + echo "setxkbmap $(cat ~/.codecheck | grep XKBMAP= | cut -d '=' -f 2)" > /mnt/etc/skel/.xinitrc + echo "exec startlxde" >> /mnt/etc/skel/.xinitrc + echo "startx" >> /mnt/etc/skel/.bash_profile + chmod +x /mnt/etc/skel/.xinitrc + cp -a /mnt/etc/skel/.[a-z]* /mnt/home/${user#*=}/ + cp -a ~/.scriptsInstallation/x11.sh /mnt + + #Enable services with OpenRC and configure other stuff + chmod +x /mnt/x11.sh + arch-chroot /mnt /x11.sh + rm /mnt/x11.sh + ;; + *) + #Delete temporal file and umount partitions + rm -r /mnt/temporal + umount /mnt/boot &> /dev/null + umount /mnt/home &> /dev/null + umount /mnt &> /dev/null + exit + ;; + esac +done diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/systemConfig.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/systemConfig.sh new file mode 100755 index 0000000..d5195fb --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(dialog --stdout --inputbox "Enter Hostname:" 8 40) +sed 's|localhost|'"${HOSTNAME}"'|' -i /etc/conf.d/hostname + +ln -s /usr/share/zoneinfo/$(dialog --stdout --inputbox "Enter your Zone Time:\nFor example: Europe/Athens" 8 40) /etc/localtime + +keymaps=( + "ANSI-dvorak ANSI-dvorak off" + "amiga-de amiga-de off" + "amiga-us amiga-us off" + "applkey applkey off" + "atari-de atari-de off" + "atari-se atari-se off" + "atari-uk-falcon atari-uk-falcon off" + "atari-us atari-us off" + "azerty azerty off" + "backspace backspace off" + "bashkir bashkir off" + "be-latin1 be-latin1 off" + "bg-cp1251 bg-cp1251 off" + "bg-cp855 bg-cp855 off" + "bg_bds-cp1251 bg_bds-cp1251 off" + "bg_bds-utf8 bg_bds-utf8 off" + "bg_pho-cp1251 bg_pho-cp1251 off" + "bg_pho-utf8 bg_pho-utf8 off" + "br-abnt br-abnt off" + "br-abnt2 br-abnt2 off" + "br-latin1-abnt2 br-latin1-abnt2 off" + "br-latin1-us br-latin1-us off" + "by by off" + "by-cp1251 by-cp1251 off" + "bywin-cp1251 bywin-cp1251 off" + "cf cf off" + "colemak colemak off" + "croat croat off" + "ctrl ctrl off" + "cz cz off" + "cz-cp1250 cz-cp1250 off" + "cz-lat2 cz-lat2 off" + "cz-lat2-prog cz-lat2-prog off" + "cz-qwertz cz-qwertz off" + "cz-us-qwertz cz-us-qwertz off" + "de de off" + "de-latin1 de-latin1 off" + "de-latin1-nodeadkeys de-latin1-nodeadkeys off" + "de-mobii de-mobii off" + "de_CH-latin1 de_CH-latin1 off" + "de_alt_UTF-8 de_alt_UTF-8 off" + "defkeymap defkeymap off" + "defkeymap_V1.0 defkeymap_V1.0 off" + "dk dk off" + "dk-latin1 dk-latin1 off" + "dvorak dvorak off" + "dvorak-ca-fr dvorak-ca-fr off" + "dvorak-es dvorak-es off" + "dvorak-fr dvorak-fr off" + "dvorak-l dvorak-l off" + "dvorak-r dvorak-r off" + "dvorak-ru dvorak-ru off" + "dvorak-sv-a1 dvorak-sv-a1 off" + "dvorak-sv-a5 dvorak-sv-a5 off" + "dvorak-uk dvorak-uk off" + "emacs emacs off" + "emacs2 emacs2 off" + "es es off" + "es-cp850 es-cp850 off" + "es-olpc es-olpc off" + "et et off" + "et-nodeadkeys et-nodeadkeys off" + "euro euro off" + "euro1 euro1 off" + "euro2 euro2 off" + "fi fi off" + "fr fr off" + "fr-bepo fr-bepo off" + "fr-bepo-latin9 fr-bepo-latin9 off" + "fr-latin1 fr-latin1 off" + "fr-latin9 fr-latin9 off" + "fr-pc fr-pc off" + "fr_CH fr_CH off" + "fr_CH-latin1 fr_CH-latin1 off" + "gr gr off" + "gr-pc gr-pc off" + "hu hu off" + "hu101 hu101 off" + "il il off" + "il-heb il-heb off" + "il-phonetic il-phonetic off" + "is-latin1 is-latin1 off" + "is-latin1-us is-latin1-us off" + "it it off" + "it-ibm it-ibm off" + "it2 it2 off" + "jp106 jp106 off" + "kazakh kazakh off" + "keypad keypad off" + "ky_alt_sh-UTF-8 ky_alt_sh-UTF-8 off" + "kyrgyz kyrgyz off" + "la-latin1 la-latin1 off" + "lt lt off" + "lt.baltic lt.baltic off" + "lt.l4 lt.l4 off" + "lv lv off" + "lv-tilde lv-tilde off" + "mac-be mac-be off" + "mac-de-latin1 mac-de-latin1 off" + "mac-de-latin1-nodeadkeys mac-de-latin1-nodeadkeys off" + "mac-de_CH mac-de_CH off" + "mac-dk-latin1 mac-dk-latin1 off" + "mac-dvorak mac-dvorak off" + "mac-es mac-es off" + "mac-euro mac-euro off" + "mac-euro2 mac-euro2 off" + "mac-fi-latin1 mac-fi-latin1 off" + "mac-fr mac-fr off" + "mac-fr_CH-latin1 mac-fr_CH-latin1 off" + "mac-it mac-it off" + "mac-pl mac-pl off" + "mac-pt-latin1 mac-pt-latin1 off" + "mac-se mac-se off" + "mac-template mac-template off" + "mac-uk mac-uk off" + "mac-us mac-us off" + "mk mk off" + "mk-cp1251 mk-cp1251 off" + "mk-utf mk-utf off" + "mk0 mk0 off" + "nl nl off" + "nl2 nl2 off" + "no no off" + "no-dvorak no-dvorak off" + "no-latin1 no-latin1 off" + "pc110 pc110 off" + "pl pl off" + "pl1 pl1 off" + "pl2 pl2 off" + "pl3 pl3 off" + "pl4 pl4 off" + "pt-latin1 pt-latin1 off" + "pt-latin9 pt-latin9 off" + "pt-olpc pt-olpc off" + "ro ro off" + "ro_std ro_std off" + "ro_win ro_win off" + "ru ru off" + "ru-cp1251 ru-cp1251 off" + "ru-ms ru-ms off" + "ru-yawerty ru-yawerty off" + "ru1 ru1 off" + "ru2 ru2 off" + "ru3 ru3 off" + "ru4 ru4 off" + "ru_win ru_win off" + "ruwin_alt-CP1251 ruwin_alt-CP1251 off" + "ruwin_alt-KOI8-R ruwin_alt-KOI8-R off" + "ruwin_alt-UTF-8 ruwin_alt-UTF-8 off" + "ruwin_alt_sh-UTF-8 ruwin_alt_sh-UTF-8 off" + "ruwin_cplk-CP1251 ruwin_cplk-CP1251 off" + "ruwin_cplk-KOI8-R ruwin_cplk-KOI8-R off" + "ruwin_cplk-UTF-8 ruwin_cplk-UTF-8 off" + "ruwin_ct_sh-CP1251 ruwin_ct_sh-CP1251 off" + "ruwin_ct_sh-KOI8-R ruwin_ct_sh-KOI8-R off" + "ruwin_ct_sh-UTF-8 ruwin_ct_sh-UTF-8 off" + "ruwin_ctrl-CP1251 ruwin_ctrl-CP1251 off" + "ruwin_ctrl-KOI8-R ruwin_ctrl-KOI8-R off" + "ruwin_ctrl-UTF-8 ruwin_ctrl-UTF-8 off" + "se-fi-ir209 se-fi-ir209 off" + "se-fi-lat6 se-fi-lat6 off" + "se-ir209 se-ir209 off" + "se-lat6 se-lat6 off" + "sg sg off" + "sg-latin1 sg-latin1 off" + "sg-latin1-lk450 sg-latin1-lk450 off" + "sk-prog-qwerty sk-prog-qwerty off" + "sk-prog-qwertz sk-prog-qwertz off" + "sk-qwerty sk-qwerty off" + "sk-qwertz sk-qwertz off" + "slovene slovene off" + "sr-cy sr-cy off" + "sun-pl sun-pl off" + "sun-pl-altgraph sun-pl-altgraph off" + "sundvorak sundvorak off" + "sunkeymap sunkeymap off" + "sunt4-es sunt4-es off" + "sunt4-fi-latin1 sunt4-fi-latin1 off" + "sunt4-no-latin1 sunt4-no-latin1 off" + "sunt5-cz-us sunt5-cz-us off" + "sunt5-de-latin1 sunt5-de-latin1 off" + "sunt5-es sunt5-es off" + "sunt5-fi-latin1 sunt5-fi-latin1 off" + "sunt5-fr-latin1 sunt5-fr-latin1 off" + "sunt5-ru sunt5-ru off" + "sunt5-uk sunt5-uk off" + "sunt5-us-cz sunt5-us-cz off" + "sunt6-uk sunt6-uk off" + "sv-latin1 sv-latin1 off" + "tj_alt-UTF8 tj_alt-UTF8 off" + "tr_f-latin5 tr_f-latin5 off" + "tr_q-latin5 tr_q-latin5 off" + "tralt tralt off" + "trf trf off" + "trf-fgGIod trf-fgGIod off" + "trq trq off" + "ttwin_alt-UTF-8 ttwin_alt-UTF-8 off" + "ttwin_cplk-UTF-8 ttwin_cplk-UTF-8 off" + "ttwin_ct_sh-UTF-8 ttwin_ct_sh-UTF-8 off" + "ttwin_ctrl-UTF-8 ttwin_ctrl-UTF-8 off" + "ua ua off" + "ua-cp1251 ua-cp1251 off" + "ua-utf ua-utf off" + "ua-utf-ws ua-utf-ws off" + "ua-ws ua-ws off" + "uk uk off" + "unicode unicode off" + "us us on" + "us-acentos us-acentos off" + "wangbe wangbe off" + "wangbe2 wangbe2 off" + "windowkeys windowkeys off" +) + +echo "KEYMAP=$(dialog --stdout --radiolist "Select Keymap" 20 70 50 ${keymaps[@]})" > /etc/vconsole.conf + +aux=$(sed -e '1,23d' -e 's/#//g' -e 's/ /#/g' -e 's/..$//' /etc/locale.gen) +index=0 +for i in $aux; do + i=$(echo $i | sed -e 's/#/ /g') + locales+=("$i" "$i" off) + if [[ $i == "en_US.UTF-8 UTF-8" || $i == "en_US ISO-8859-1" ]]; then + locales[$index]="$i" + locales[$((index+1))]="$i" + locales[$((index+2))]="on" + fi + index=$((index+3)) +done + +locale=$(dialog --stdout --checklist "Select Locales" 20 70 50 "${locales[@]}") +locale=$(echo ${locale} | sed -e 's/" "/\n/g' -e 's/ /#/g' -e 's/"//g') + +for i in ${locale[@]}; do + i=$(echo $i | sed -e 's/#/ /g') + sed -i -e "s/#$i/$i/g" /etc/locale.gen +done + +locale-gen + +aux=$(locale -a) +index=0 +for i in $aux; do + langs+=("$i" "$i" on) + index=$((index+1)) +done + +echo "LANG=$(dialog --stdout --radiolist "Select your language" 20 70 50 ${langs[@]})" > /etc/locale.conf + +mkinitcpio -p linux-libre + +hdd=$(cat /temporal | grep 'hdd=') +grub-install ${hdd#*=} +grub-mkconfig -o /boot/grub/grub.cfg + +password=$(dialog --stdout --passwordbox "Insert root password" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repeat root password" 8 40) +done + +usermod -p $(openssl passwd ${password}) root + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/userAccount.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/userAccount.sh new file mode 100755 index 0000000..a9551d8 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/en/userAccount.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +user=$(cat /temporal | grep "userName") + +password=$(dialog --stdout --passwordbox "Insert ${user#*=} password" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Reply password" 8 40) +done + +useradd -m -g users -G "wheel" -s /bin/bash -p $(openssl passwd $password) ${user#*=} + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/install.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/install.sh new file mode 100755 index 0000000..195c2a2 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/install.sh @@ -0,0 +1,227 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +if [ ! -f ~/.scriptsInstallation/.pacman ]; then + pacman -Sy parabola-keyring archlinux-keyring --noconfirm + pacman-key --populate parabola archlinux + pacman-key --refresh-keys + case $? in + 0) touch ~/.scriptsInstallation/.pacman + ;; + *) false + ;; + esac +fi + +partition(){ + + #Search and show the Hard Disks to select + aux=$(ls /dev/sd?) + index=0 + for i in $aux; do + hdds[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + hdd=$(dialog --stdout --radiolist "Selecciona Disco Duro" 20 70 50 ${hdds[@]}) + + #If exist the line delete + if (cat ~/.scriptsInstallation/temporal | grep "hdd=") &>/dev/null + then + sed -i -e '/hdd=*/d' ~/.scriptsInstallation/temporal + fi + + #And add the new line with new parameter + echo "hdd=$hdd" >> ~/.scriptsInstallation/temporal + + selection=$(dialog --stdout --menu "Metodo de Particionado" 20 70 50 \ + 1 "Usar todo el disco con swap (1GB) y /" \ + 2 "Usar gparted para personalizar" ) + + case $selection in + 1) + umount /mnt &> /dev/null + #Create msdos partition table + parted -s $hdd -- mklabel msdos + + #Create partition swap and / + parted -s $hdd -- mkpart primary 1MiB 1000MiB mkpart primary 1000MiB -1s + + #Boot option partition / + parted -s $hdd -- set 2 boot on + + #Format and partitions and mount / + (echo t; echo 1; echo 82; echo w) | fdisk $hdd + mkswap ${hdd}1 + mkfs.ext4 ${hdd}2 + mount ${hdd}2 /mnt + ;; + 2) + gparted $hdd + + #Search and show the partitions that select before. + aux=$(ls $hdd?) + index=0; + for i in $aux; do + partitions[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + partition=$(dialog --stdout --radiolist "Montar particion /" 20 70 50 ${partitions[@]}) + + #Mount partition / + umount /mnt &> /dev/null + mount $partition /mnt + + #Ask if you want mount other partitions + other=0 + while [ $other != 3 ]; do + other=$(dialog --stdout --menu "¿Montar otra particion?" 20 70 50 1 "/home" 2 "/boot" 3 "No") + + case $other in + 1) + umount /mnt/home &> /dev/null + mkdir /mnt/home &> /dev/null + mount $(dialog --stdout --radiolist "Montar particion /home" 20 70 50 ${partitions[@]}) /mnt/home + ;; + 2) + umount /mnt/boot &> /dev/null + mkdir /mnt/boot &> /dev/null + mount $(dialog --stdout --radiolist "Mount particion /boot" 20 70 50 ${partitions[@]}) /mnt/boot + ;; + *) + other=3 + ;; + esac + done + ;; + esac +} + + +option=0 +while [ option != 7 ]; do + option=$(dialog --stdout --menu "Instalación CLI de Parabola" 20 70 50 \ + 1 "Formatear y Montar Particiones" \ + 2 "Instalar Sistema Base" \ + 3 "Instalar GRUB" \ + 4 "Configuración del Sistema" \ + 5 "Crear Cuenta de Usuario" \ + 6 "(Opcional) Instalar Escritorio/Aplicaciones del Live DVD" \ + 7 "Salir" ) + + case $option in + 1) + partition + ;; + 2) + #Install base system + pacstrap /mnt base-openrc + pacstrap /mnt dialog + ;; + 3) + #Install grub + pacstrap /mnt grub + ;; + 4) + #Generate fstab and acces to chroot to do System Config + genfstab -p /mnt >> /mnt/etc/fstab + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/systemConfig.sh /mnt + chmod +x /mnt/systemConfig.sh + arch-chroot /mnt /systemConfig.sh + rm -r /mnt/systemConfig.sh + ;; + 5) + #Create a new username and save in temporal, to use after + if (cat ~/.scriptsInstallation/temporal | grep "userName=") &>/dev/null + then + sed -i -e '/userName=*/d' ~/.scriptsInstallation/temporal + fi + + echo "userName=$(dialog --stdout --inputbox "Introduce nombre de usuario" 8 40)" >> ~/.scriptsInstallation/temporal + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/userAccount.sh /mnt + chmod +x /mnt/userAccount.sh + arch-chroot /mnt /userAccount.sh + rm -r /mnt/userAccount.sh + ;; + 6) + #Packages to the X11 live + packages=( "xorg-server" + "xf86-input-evdev" + "xf86-input-synaptics" + "xf86-video-ati" + "xf86-video-dummy" + "xf86-video-fbdev" + "xf86-video-intel" + "xf86-video-nouveau" + "xf86-video-openchrome" + "xf86-video-sisusb" + "xf86-video-vesa" + "xf86-video-vmware" + "xf86-video-voodoo" + "xf86-video-qxl" + "xorg-xinit" + "gst-plugins-good" + "gst-libav" + "lxde" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager-elogind" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + "polkit-elogind" + "gvfs-mtp" + "gvfs-gphoto2" + "xdg-user-dirs" + "gnome-screenshot" + ) + + #Install packages + pacman -Sy -r /mnt ${packages[@]} --needed --noconfirm + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copy skel in the new system and desktop's background + cp -a /etc/skel/ /mnt/etc/ + cp -a /etc/wallpaper.png /mnt/etc/wallpaper.png + + #Puts the XKBMAP, start X11 automatically and icewm desktop + echo "setxkbmap $(cat ~/.codecheck | grep XKBMAP= | cut -d '=' -f 2)" > /mnt/etc/skel/.xinitrc + echo "exec startlxde" >> /mnt/etc/skel/.xinitrc + echo "startx" >> /mnt/etc/skel/.bash_profile + chmod +x /mnt/etc/skel/.xinitrc + cp -a /mnt/etc/skel/.[a-z]* /mnt/home/${user#*=}/ + cp -a ~/.scriptsInstallation/x11.sh /mnt + + #Enable services with OpenRC and configure other stuff + chmod +x /mnt/x11.sh + arch-chroot /mnt /x11.sh + rm /mnt/x11.sh + ;; + *) + #Delete temporal file and umount partitions + rm -r /mnt/temporal + umount /mnt/boot &> /dev/null + umount /mnt/home &> /dev/null + umount /mnt &> /dev/null + exit + ;; + esac +done diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/systemConfig.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/systemConfig.sh new file mode 100755 index 0000000..773d10c --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(dialog --stdout --inputbox "Introduce el nombre del sistema:" 8 40) +sed 's|localhost|'"${HOSTNAME}"'|' -i /etc/conf.d/hostname + +ln -s /usr/share/zoneinfo/$(dialog --stdout --inputbox "Introduce la Zona Horaria:\nPor ejemplo: Europe/Athens" 8 40) /etc/localtime + +keymaps=( + "ANSI-dvorak ANSI-dvorak off" + "amiga-de amiga-de off" + "amiga-us amiga-us off" + "applkey applkey off" + "atari-de atari-de off" + "atari-se atari-se off" + "atari-uk-falcon atari-uk-falcon off" + "atari-us atari-us off" + "azerty azerty off" + "backspace backspace off" + "bashkir bashkir off" + "be-latin1 be-latin1 off" + "bg-cp1251 bg-cp1251 off" + "bg-cp855 bg-cp855 off" + "bg_bds-cp1251 bg_bds-cp1251 off" + "bg_bds-utf8 bg_bds-utf8 off" + "bg_pho-cp1251 bg_pho-cp1251 off" + "bg_pho-utf8 bg_pho-utf8 off" + "br-abnt br-abnt off" + "br-abnt2 br-abnt2 off" + "br-latin1-abnt2 br-latin1-abnt2 off" + "br-latin1-us br-latin1-us off" + "by by off" + "by-cp1251 by-cp1251 off" + "bywin-cp1251 bywin-cp1251 off" + "cf cf off" + "colemak colemak off" + "croat croat off" + "ctrl ctrl off" + "cz cz off" + "cz-cp1250 cz-cp1250 off" + "cz-lat2 cz-lat2 off" + "cz-lat2-prog cz-lat2-prog off" + "cz-qwertz cz-qwertz off" + "cz-us-qwertz cz-us-qwertz off" + "de de off" + "de-latin1 de-latin1 off" + "de-latin1-nodeadkeys de-latin1-nodeadkeys off" + "de-mobii de-mobii off" + "de_CH-latin1 de_CH-latin1 off" + "de_alt_UTF-8 de_alt_UTF-8 off" + "defkeymap defkeymap off" + "defkeymap_V1.0 defkeymap_V1.0 off" + "dk dk off" + "dk-latin1 dk-latin1 off" + "dvorak dvorak off" + "dvorak-ca-fr dvorak-ca-fr off" + "dvorak-es dvorak-es off" + "dvorak-fr dvorak-fr off" + "dvorak-l dvorak-l off" + "dvorak-r dvorak-r off" + "dvorak-ru dvorak-ru off" + "dvorak-sv-a1 dvorak-sv-a1 off" + "dvorak-sv-a5 dvorak-sv-a5 off" + "dvorak-uk dvorak-uk off" + "emacs emacs off" + "emacs2 emacs2 off" + "es es off" + "es-cp850 es-cp850 off" + "es-olpc es-olpc off" + "et et off" + "et-nodeadkeys et-nodeadkeys off" + "euro euro off" + "euro1 euro1 off" + "euro2 euro2 off" + "fi fi off" + "fr fr off" + "fr-bepo fr-bepo off" + "fr-bepo-latin9 fr-bepo-latin9 off" + "fr-latin1 fr-latin1 off" + "fr-latin9 fr-latin9 off" + "fr-pc fr-pc off" + "fr_CH fr_CH off" + "fr_CH-latin1 fr_CH-latin1 off" + "gr gr off" + "gr-pc gr-pc off" + "hu hu off" + "hu101 hu101 off" + "il il off" + "il-heb il-heb off" + "il-phonetic il-phonetic off" + "is-latin1 is-latin1 off" + "is-latin1-us is-latin1-us off" + "it it off" + "it-ibm it-ibm off" + "it2 it2 off" + "jp106 jp106 off" + "kazakh kazakh off" + "keypad keypad off" + "ky_alt_sh-UTF-8 ky_alt_sh-UTF-8 off" + "kyrgyz kyrgyz off" + "la-latin1 la-latin1 off" + "lt lt off" + "lt.baltic lt.baltic off" + "lt.l4 lt.l4 off" + "lv lv off" + "lv-tilde lv-tilde off" + "mac-be mac-be off" + "mac-de-latin1 mac-de-latin1 off" + "mac-de-latin1-nodeadkeys mac-de-latin1-nodeadkeys off" + "mac-de_CH mac-de_CH off" + "mac-dk-latin1 mac-dk-latin1 off" + "mac-dvorak mac-dvorak off" + "mac-es mac-es off" + "mac-euro mac-euro off" + "mac-euro2 mac-euro2 off" + "mac-fi-latin1 mac-fi-latin1 off" + "mac-fr mac-fr off" + "mac-fr_CH-latin1 mac-fr_CH-latin1 off" + "mac-it mac-it off" + "mac-pl mac-pl off" + "mac-pt-latin1 mac-pt-latin1 off" + "mac-se mac-se off" + "mac-template mac-template off" + "mac-uk mac-uk off" + "mac-us mac-us off" + "mk mk off" + "mk-cp1251 mk-cp1251 off" + "mk-utf mk-utf off" + "mk0 mk0 off" + "nl nl off" + "nl2 nl2 off" + "no no off" + "no-dvorak no-dvorak off" + "no-latin1 no-latin1 off" + "pc110 pc110 off" + "pl pl off" + "pl1 pl1 off" + "pl2 pl2 off" + "pl3 pl3 off" + "pl4 pl4 off" + "pt-latin1 pt-latin1 off" + "pt-latin9 pt-latin9 off" + "pt-olpc pt-olpc off" + "ro ro off" + "ro_std ro_std off" + "ro_win ro_win off" + "ru ru off" + "ru-cp1251 ru-cp1251 off" + "ru-ms ru-ms off" + "ru-yawerty ru-yawerty off" + "ru1 ru1 off" + "ru2 ru2 off" + "ru3 ru3 off" + "ru4 ru4 off" + "ru_win ru_win off" + "ruwin_alt-CP1251 ruwin_alt-CP1251 off" + "ruwin_alt-KOI8-R ruwin_alt-KOI8-R off" + "ruwin_alt-UTF-8 ruwin_alt-UTF-8 off" + "ruwin_alt_sh-UTF-8 ruwin_alt_sh-UTF-8 off" + "ruwin_cplk-CP1251 ruwin_cplk-CP1251 off" + "ruwin_cplk-KOI8-R ruwin_cplk-KOI8-R off" + "ruwin_cplk-UTF-8 ruwin_cplk-UTF-8 off" + "ruwin_ct_sh-CP1251 ruwin_ct_sh-CP1251 off" + "ruwin_ct_sh-KOI8-R ruwin_ct_sh-KOI8-R off" + "ruwin_ct_sh-UTF-8 ruwin_ct_sh-UTF-8 off" + "ruwin_ctrl-CP1251 ruwin_ctrl-CP1251 off" + "ruwin_ctrl-KOI8-R ruwin_ctrl-KOI8-R off" + "ruwin_ctrl-UTF-8 ruwin_ctrl-UTF-8 off" + "se-fi-ir209 se-fi-ir209 off" + "se-fi-lat6 se-fi-lat6 off" + "se-ir209 se-ir209 off" + "se-lat6 se-lat6 off" + "sg sg off" + "sg-latin1 sg-latin1 off" + "sg-latin1-lk450 sg-latin1-lk450 off" + "sk-prog-qwerty sk-prog-qwerty off" + "sk-prog-qwertz sk-prog-qwertz off" + "sk-qwerty sk-qwerty off" + "sk-qwertz sk-qwertz off" + "slovene slovene off" + "sr-cy sr-cy off" + "sun-pl sun-pl off" + "sun-pl-altgraph sun-pl-altgraph off" + "sundvorak sundvorak off" + "sunkeymap sunkeymap off" + "sunt4-es sunt4-es off" + "sunt4-fi-latin1 sunt4-fi-latin1 off" + "sunt4-no-latin1 sunt4-no-latin1 off" + "sunt5-cz-us sunt5-cz-us off" + "sunt5-de-latin1 sunt5-de-latin1 off" + "sunt5-es sunt5-es off" + "sunt5-fi-latin1 sunt5-fi-latin1 off" + "sunt5-fr-latin1 sunt5-fr-latin1 off" + "sunt5-ru sunt5-ru off" + "sunt5-uk sunt5-uk off" + "sunt5-us-cz sunt5-us-cz off" + "sunt6-uk sunt6-uk off" + "sv-latin1 sv-latin1 off" + "tj_alt-UTF8 tj_alt-UTF8 off" + "tr_f-latin5 tr_f-latin5 off" + "tr_q-latin5 tr_q-latin5 off" + "tralt tralt off" + "trf trf off" + "trf-fgGIod trf-fgGIod off" + "trq trq off" + "ttwin_alt-UTF-8 ttwin_alt-UTF-8 off" + "ttwin_cplk-UTF-8 ttwin_cplk-UTF-8 off" + "ttwin_ct_sh-UTF-8 ttwin_ct_sh-UTF-8 off" + "ttwin_ctrl-UTF-8 ttwin_ctrl-UTF-8 off" + "ua ua off" + "ua-cp1251 ua-cp1251 off" + "ua-utf ua-utf off" + "ua-utf-ws ua-utf-ws off" + "ua-ws ua-ws off" + "uk uk off" + "unicode unicode off" + "us us on" + "us-acentos us-acentos off" + "wangbe wangbe off" + "wangbe2 wangbe2 off" + "windowkeys windowkeys off" +) + +echo "KEYMAP=$(dialog --stdout --radiolist "Selecciona la distribucion del teclado" 20 70 50 ${keymaps[@]})" > /etc/vconsole.conf + +aux=$(sed -e '1,23d' -e 's/#//g' -e 's/ /#/g' -e 's/..$//' /etc/locale.gen) +index=0 +for i in $aux; do + i=$(echo $i | sed -e 's/#/ /g') + locales+=("$i" "$i" off) + if [[ $i == "en_US.UTF-8 UTF-8" || $i == "en_US ISO-8859-1" ]]; then + locales[$index]="$i" + locales[$((index+1))]="$i" + locales[$((index+2))]="on" + fi + index=$((index+3)) +done + +locale=$(dialog --stdout --checklist "Selecciona las Localizaciones" 20 70 50 "${locales[@]}") +locale=$(echo ${locale} | sed -e 's/" "/\n/g' -e 's/ /#/g' -e 's/"//g') + +for i in ${locale[@]}; do + i=$(echo $i | sed -e 's/#/ /g') + sed -i -e "s/#$i/$i/g" /etc/locale.gen +done + +locale-gen + +aux=$(locale -a) +index=0 +for i in $aux; do + langs+=("$i" "$i" on) + index=$((index+1)) +done + +echo "LANG=$(dialog --stdout --radiolist "Selecciona tu idioma" 20 70 50 ${langs[@]})" > /etc/locale.conf + +mkinitcpio -p linux-libre + +hdd=$(cat /temporal | grep 'hdd=') +grub-install ${hdd#*=} +grub-mkconfig -o /boot/grub/grub.cfg + +password=$(dialog --stdout --passwordbox "Inserta la contraseña para el administrador" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repite la contraseña para el administrador" 8 40) +done + +usermod -p $(openssl passwd ${password}) root + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/userAccount.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/userAccount.sh new file mode 100755 index 0000000..4ed7437 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/es/userAccount.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +user=$(cat /temporal | grep "userName") + +password=$(dialog --stdout --passwordbox "Introduce la contraseñara para el usuario ${user#*=}" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repite la contraseña" 8 40) +done + +useradd -m -g users -G "wheel" -s /bin/bash -p $(openssl passwd $password) ${user#*=} + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/install.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/install.sh new file mode 100755 index 0000000..05ec262 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/install.sh @@ -0,0 +1,226 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +if [ ! -f ~/.scriptsInstallation/.pacman ]; then + pacman -Sy parabola-keyring archlinux-keyring --noconfirm + pacman-key --populate parabola archlinux + pacman-key --refresh-keys + case $? in + 0) touch ~/.scriptsInstallation/.pacman + ;; + *) false + ;; + esac +fi + +partition(){ + + #Search and show the Hard Disks to select + aux=$(ls /dev/sd?) + index=0 + for i in $aux; do + hdds[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + hdd=$(dialog --stdout --radiolist "Selecciona Disco Duro" 20 70 50 ${hdds[@]}) + + #If exist the line delete + if (cat ~/.scriptsInstallation/temporal | grep "hdd=") &>/dev/null + then + sed -i -e '/hdd=*/d' ~/.scriptsInstallation/temporal + fi + + #And add the new line with new parameter + echo "hdd=$hdd" >> ~/.scriptsInstallation/temporal + selection=$(dialog --stdout --menu "Metodo de Particionado" 20 70 50 \ + 1 "Usar todo o disco con swap (1GB) and /" \ + 2 "Usar gparted para personalizar" ) + + case $selection in + 1) + umount /mnt &> /dev/null + #Create msdos partition table + parted -s $hdd -- mklabel msdos + + #Create partition swap and / + parted -s $hdd -- mkpart primary 1MiB 1000MiB mkpart primary 1000MiB -1s + + #Boot option partition / + parted -s $hdd -- set 2 boot on + + #Format and partitions and mount / + (echo t; echo 1; echo 82; echo w) | fdisk $hdd + mkswap ${hdd}1 + mkfs.ext4 ${hdd}2 + mount ${hdd}2 /mnt + ;; + 2) + gparted $hdd + + #Search and show the partitions that select before. + aux=$(ls $hdd?) + index=0; + for i in $aux; do + partitions[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + partition=$(dialog --stdout --radiolist "Montar particion /" 20 70 50 ${partitions[@]}) + + #Mount partition / + umount /mnt &> /dev/null + mount $partition /mnt + + #Ask if you want mount other partitions + other=0 + while [ $other != 3 ]; do + other=$(dialog --stdout --menu "¿Montar outra particion?" 20 70 50 1 "/home" 2 "/boot" 3 "No") + + case $other in + 1) + umount /mnt/home &> /dev/null + mkdir /mnt/home &> /dev/null + mount $(dialog --stdout --radiolist "Montar particion /home" 20 70 50 ${partitions[@]}) /mnt/home + ;; + 2) + umount /mnt/boot &> /dev/null + mkdir /mnt/boot &> /dev/null + mount $(dialog --stdout --radiolist "Mount particion /boot" 20 70 50 ${partitions[@]}) /mnt/boot + ;; + *) + other=3 + ;; + esac + done + ;; + esac +} + + +option=0 +while [ option != 7 ]; do + option=$(dialog --stdout --menu "Instalación CLI de Parabola" 20 70 50 \ + 1 "Formatear e Montar Particiones" \ + 2 "Instalar Sistema Base" \ + 3 "Instalar GRUB" \ + 4 "Configuración do Sistema" \ + 5 "Crear Conta de Usuario" \ + 6 "(Opcional) Instalar Escritorio/Aplicaciones de Live DVD" \ + 7 "Salir" ) + + case $option in + 1) + partition + ;; + 2) + #Install base system + pacstrap /mnt base-openrc + pacstrap /mnt dialog + ;; + 3) + #Install grub + pacstrap /mnt grub + ;; + 4) + #Generate fstab and acces to chroot to do System Config + genfstab -p /mnt >> /mnt/etc/fstab + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/systemConfig.sh /mnt + chmod +x /mnt/systemConfig.sh + arch-chroot /mnt /systemConfig.sh + rm -r /mnt/systemConfig.sh + ;; + 5) + #Create a new username and save in temporal, to use after + if (cat ~/.scriptsInstallation/temporal | grep "userName=") &>/dev/null + then + sed -i -e '/userName=*/d' ~/.scriptsInstallation/temporal + fi + + echo "userName=$(dialog --stdout --inputbox "Introduce un nome de usuario" 8 40)" >> ~/.scriptsInstallation/temporal + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/userAccount.sh /mnt + chmod +x /mnt/userAccount.sh + arch-chroot /mnt /userAccount.sh + rm -r /mnt/userAccount.sh + ;; + 6) + #Packages to the X11 live + packages=( "xorg-server" + "xf86-input-evdev" + "xf86-input-synaptics" + "xf86-video-ati" + "xf86-video-dummy" + "xf86-video-fbdev" + "xf86-video-intel" + "xf86-video-nouveau" + "xf86-video-openchrome" + "xf86-video-sisusb" + "xf86-video-vesa" + "xf86-video-vmware" + "xf86-video-voodoo" + "xf86-video-qxl" + "xorg-xinit" + "gst-plugins-good" + "gst-libav" + "lxde" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager-elogind" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + "polkit-elogind" + "gvfs-mtp" + "gvfs-gphoto2" + "xdg-user-dirs" + "gnome-screenshot" + ) + + #Install packages + pacman -Sy -r /mnt ${packages[@]} --needed --noconfirm + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copy skel in the new system and desktop's background + cp -a /etc/skel/ /mnt/etc/ + cp -a /etc/wallpaper.png /mnt/etc/wallpaper.png + + #Puts the XKBMAP, start X11 automatically and icewm desktop + echo "setxkbmap $(cat ~/.codecheck | grep XKBMAP= | cut -d '=' -f 2)" > /mnt/etc/skel/.xinitrc + echo "exec startlxde" >> /mnt/etc/skel/.xinitrc + echo "startx" >> /mnt/etc/skel/.bash_profile + chmod +x /mnt/etc/skel/.xinitrc + cp -a /mnt/etc/skel/.[a-z]* /mnt/home/${user#*=}/ + cp -a ~/.scriptsInstallation/x11.sh /mnt + + #Enable services with OpenRC and configure other stuff + chmod +x /mnt/x11.sh + arch-chroot /mnt /x11.sh + rm /mnt/x11.sh + ;; + *) + #Delete temporal file and umount partitions + rm -r /mnt/temporal + umount /mnt/boot &> /dev/null + umount /mnt/home &> /dev/null + umount /mnt &> /dev/null + exit + ;; + esac +done diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/systemConfig.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/systemConfig.sh new file mode 100755 index 0000000..0fe3c68 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(dialog --stdout --inputbox "Introduce o nome do sistema:" 8 40) +sed 's|localhost|'"${HOSTNAME}"'|' -i /etc/conf.d/hostname + +ln -s /usr/share/zoneinfo/$(dialog --stdout --inputbox "Introduce a Zona Horaria:\nPor ejemplo: Europe/Athens" 8 40) /etc/localtime + +keymaps=( + "ANSI-dvorak ANSI-dvorak off" + "amiga-de amiga-de off" + "amiga-us amiga-us off" + "applkey applkey off" + "atari-de atari-de off" + "atari-se atari-se off" + "atari-uk-falcon atari-uk-falcon off" + "atari-us atari-us off" + "azerty azerty off" + "backspace backspace off" + "bashkir bashkir off" + "be-latin1 be-latin1 off" + "bg-cp1251 bg-cp1251 off" + "bg-cp855 bg-cp855 off" + "bg_bds-cp1251 bg_bds-cp1251 off" + "bg_bds-utf8 bg_bds-utf8 off" + "bg_pho-cp1251 bg_pho-cp1251 off" + "bg_pho-utf8 bg_pho-utf8 off" + "br-abnt br-abnt off" + "br-abnt2 br-abnt2 off" + "br-latin1-abnt2 br-latin1-abnt2 off" + "br-latin1-us br-latin1-us off" + "by by off" + "by-cp1251 by-cp1251 off" + "bywin-cp1251 bywin-cp1251 off" + "cf cf off" + "colemak colemak off" + "croat croat off" + "ctrl ctrl off" + "cz cz off" + "cz-cp1250 cz-cp1250 off" + "cz-lat2 cz-lat2 off" + "cz-lat2-prog cz-lat2-prog off" + "cz-qwertz cz-qwertz off" + "cz-us-qwertz cz-us-qwertz off" + "de de off" + "de-latin1 de-latin1 off" + "de-latin1-nodeadkeys de-latin1-nodeadkeys off" + "de-mobii de-mobii off" + "de_CH-latin1 de_CH-latin1 off" + "de_alt_UTF-8 de_alt_UTF-8 off" + "defkeymap defkeymap off" + "defkeymap_V1.0 defkeymap_V1.0 off" + "dk dk off" + "dk-latin1 dk-latin1 off" + "dvorak dvorak off" + "dvorak-ca-fr dvorak-ca-fr off" + "dvorak-es dvorak-es off" + "dvorak-fr dvorak-fr off" + "dvorak-l dvorak-l off" + "dvorak-r dvorak-r off" + "dvorak-ru dvorak-ru off" + "dvorak-sv-a1 dvorak-sv-a1 off" + "dvorak-sv-a5 dvorak-sv-a5 off" + "dvorak-uk dvorak-uk off" + "emacs emacs off" + "emacs2 emacs2 off" + "es es off" + "es-cp850 es-cp850 off" + "es-olpc es-olpc off" + "et et off" + "et-nodeadkeys et-nodeadkeys off" + "euro euro off" + "euro1 euro1 off" + "euro2 euro2 off" + "fi fi off" + "fr fr off" + "fr-bepo fr-bepo off" + "fr-bepo-latin9 fr-bepo-latin9 off" + "fr-latin1 fr-latin1 off" + "fr-latin9 fr-latin9 off" + "fr-pc fr-pc off" + "fr_CH fr_CH off" + "fr_CH-latin1 fr_CH-latin1 off" + "gr gr off" + "gr-pc gr-pc off" + "hu hu off" + "hu101 hu101 off" + "il il off" + "il-heb il-heb off" + "il-phonetic il-phonetic off" + "is-latin1 is-latin1 off" + "is-latin1-us is-latin1-us off" + "it it off" + "it-ibm it-ibm off" + "it2 it2 off" + "jp106 jp106 off" + "kazakh kazakh off" + "keypad keypad off" + "ky_alt_sh-UTF-8 ky_alt_sh-UTF-8 off" + "kyrgyz kyrgyz off" + "la-latin1 la-latin1 off" + "lt lt off" + "lt.baltic lt.baltic off" + "lt.l4 lt.l4 off" + "lv lv off" + "lv-tilde lv-tilde off" + "mac-be mac-be off" + "mac-de-latin1 mac-de-latin1 off" + "mac-de-latin1-nodeadkeys mac-de-latin1-nodeadkeys off" + "mac-de_CH mac-de_CH off" + "mac-dk-latin1 mac-dk-latin1 off" + "mac-dvorak mac-dvorak off" + "mac-es mac-es off" + "mac-euro mac-euro off" + "mac-euro2 mac-euro2 off" + "mac-fi-latin1 mac-fi-latin1 off" + "mac-fr mac-fr off" + "mac-fr_CH-latin1 mac-fr_CH-latin1 off" + "mac-it mac-it off" + "mac-pl mac-pl off" + "mac-pt-latin1 mac-pt-latin1 off" + "mac-se mac-se off" + "mac-template mac-template off" + "mac-uk mac-uk off" + "mac-us mac-us off" + "mk mk off" + "mk-cp1251 mk-cp1251 off" + "mk-utf mk-utf off" + "mk0 mk0 off" + "nl nl off" + "nl2 nl2 off" + "no no off" + "no-dvorak no-dvorak off" + "no-latin1 no-latin1 off" + "pc110 pc110 off" + "pl pl off" + "pl1 pl1 off" + "pl2 pl2 off" + "pl3 pl3 off" + "pl4 pl4 off" + "pt-latin1 pt-latin1 off" + "pt-latin9 pt-latin9 off" + "pt-olpc pt-olpc off" + "ro ro off" + "ro_std ro_std off" + "ro_win ro_win off" + "ru ru off" + "ru-cp1251 ru-cp1251 off" + "ru-ms ru-ms off" + "ru-yawerty ru-yawerty off" + "ru1 ru1 off" + "ru2 ru2 off" + "ru3 ru3 off" + "ru4 ru4 off" + "ru_win ru_win off" + "ruwin_alt-CP1251 ruwin_alt-CP1251 off" + "ruwin_alt-KOI8-R ruwin_alt-KOI8-R off" + "ruwin_alt-UTF-8 ruwin_alt-UTF-8 off" + "ruwin_alt_sh-UTF-8 ruwin_alt_sh-UTF-8 off" + "ruwin_cplk-CP1251 ruwin_cplk-CP1251 off" + "ruwin_cplk-KOI8-R ruwin_cplk-KOI8-R off" + "ruwin_cplk-UTF-8 ruwin_cplk-UTF-8 off" + "ruwin_ct_sh-CP1251 ruwin_ct_sh-CP1251 off" + "ruwin_ct_sh-KOI8-R ruwin_ct_sh-KOI8-R off" + "ruwin_ct_sh-UTF-8 ruwin_ct_sh-UTF-8 off" + "ruwin_ctrl-CP1251 ruwin_ctrl-CP1251 off" + "ruwin_ctrl-KOI8-R ruwin_ctrl-KOI8-R off" + "ruwin_ctrl-UTF-8 ruwin_ctrl-UTF-8 off" + "se-fi-ir209 se-fi-ir209 off" + "se-fi-lat6 se-fi-lat6 off" + "se-ir209 se-ir209 off" + "se-lat6 se-lat6 off" + "sg sg off" + "sg-latin1 sg-latin1 off" + "sg-latin1-lk450 sg-latin1-lk450 off" + "sk-prog-qwerty sk-prog-qwerty off" + "sk-prog-qwertz sk-prog-qwertz off" + "sk-qwerty sk-qwerty off" + "sk-qwertz sk-qwertz off" + "slovene slovene off" + "sr-cy sr-cy off" + "sun-pl sun-pl off" + "sun-pl-altgraph sun-pl-altgraph off" + "sundvorak sundvorak off" + "sunkeymap sunkeymap off" + "sunt4-es sunt4-es off" + "sunt4-fi-latin1 sunt4-fi-latin1 off" + "sunt4-no-latin1 sunt4-no-latin1 off" + "sunt5-cz-us sunt5-cz-us off" + "sunt5-de-latin1 sunt5-de-latin1 off" + "sunt5-es sunt5-es off" + "sunt5-fi-latin1 sunt5-fi-latin1 off" + "sunt5-fr-latin1 sunt5-fr-latin1 off" + "sunt5-ru sunt5-ru off" + "sunt5-uk sunt5-uk off" + "sunt5-us-cz sunt5-us-cz off" + "sunt6-uk sunt6-uk off" + "sv-latin1 sv-latin1 off" + "tj_alt-UTF8 tj_alt-UTF8 off" + "tr_f-latin5 tr_f-latin5 off" + "tr_q-latin5 tr_q-latin5 off" + "tralt tralt off" + "trf trf off" + "trf-fgGIod trf-fgGIod off" + "trq trq off" + "ttwin_alt-UTF-8 ttwin_alt-UTF-8 off" + "ttwin_cplk-UTF-8 ttwin_cplk-UTF-8 off" + "ttwin_ct_sh-UTF-8 ttwin_ct_sh-UTF-8 off" + "ttwin_ctrl-UTF-8 ttwin_ctrl-UTF-8 off" + "ua ua off" + "ua-cp1251 ua-cp1251 off" + "ua-utf ua-utf off" + "ua-utf-ws ua-utf-ws off" + "ua-ws ua-ws off" + "uk uk off" + "unicode unicode off" + "us us on" + "us-acentos us-acentos off" + "wangbe wangbe off" + "wangbe2 wangbe2 off" + "windowkeys windowkeys off" +) + +echo "KEYMAP=$(dialog --stdout --radiolist "Selecciona a distribucion do teclado" 20 70 50 ${keymaps[@]})" > /etc/vconsole.conf + +aux=$(sed -e '1,23d' -e 's/#//g' -e 's/ /#/g' -e 's/..$//' /etc/locale.gen) +index=0 +for i in $aux; do + i=$(echo $i | sed -e 's/#/ /g') + locales+=("$i" "$i" off) + if [[ $i == "en_US.UTF-8 UTF-8" || $i == "en_US ISO-8859-1" ]]; then + locales[$index]="$i" + locales[$((index+1))]="$i" + locales[$((index+2))]="on" + fi + index=$((index+3)) +done + +locale=$(dialog --stdout --checklist "Selecciona as Localizacions" 20 70 50 "${locales[@]}") +locale=$(echo ${locale} | sed -e 's/" "/\n/g' -e 's/ /#/g' -e 's/"//g') + +for i in ${locale[@]}; do + i=$(echo $i | sed -e 's/#/ /g') + sed -i -e "s/#$i/$i/g" /etc/locale.gen +done + +locale-gen + +aux=$(locale -a) +index=0 +for i in $aux; do + langs+=("$i" "$i" on) + index=$((index+1)) +done + +echo "LANG=$(dialog --stdout --radiolist "Selecciona o teu idioma" 20 70 50 ${langs[@]})" > /etc/locale.conf + +mkinitcpio -p linux-libre + +hdd=$(cat /temporal | grep 'hdd=') +grub-install ${hdd#*=} +grub-mkconfig -o /boot/grub/grub.cfg + +password=$(dialog --stdout --passwordbox "Insire o contrasinal para o administrador" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repite o contrasinal para o administrador" 8 40) +done + +usermod -p $(openssl passwd ${password}) root + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/userAccount.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/userAccount.sh new file mode 100755 index 0000000..aa1d33a --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/gl/userAccount.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +user=$(cat /temporal | grep "userName") + +password=$(dialog --stdout --passwordbox "Introduce o contrasinal para o usuario ${user#*=}" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repite o contrasinal" 8 40) +done + +useradd -m -g users -G "wheel" -s /bin/bash -p $(openssl passwd $password) ${user#*=} + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/install.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/install.sh new file mode 100755 index 0000000..1de6c85 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/install.sh @@ -0,0 +1,227 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +if [ ! -f ~/.scriptsInstallation/.pacman ]; then + pacman -Sy parabola-keyring archlinux-keyring --noconfirm + pacman-key --populate parabola archlinux + pacman-key --refresh-keys + case $? in + 0) touch ~/.scriptsInstallation/.pacman + ;; + *) false + ;; + esac +fi + +partition(){ + + #Search and show the Hard Disks to select + aux=$(ls /dev/sd?) + index=0 + for i in $aux; do + hdds[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + hdd=$(dialog --stdout --radiolist "Escolha o Disco" 20 70 50 ${hdds[@]}) + + #If exist the line delete + if (cat ~/.scriptsInstallation/temporal | grep "hdd=") &>/dev/null + then + sed -i -e '/hdd=*/d' ~/.scriptsInstallation/temporal + fi + + #And add the new line with new parameter + echo "hdd=$hdd" >> ~/.scriptsInstallation/temporal + + selection=$(dialog --stdout --menu "Método de Particionamento" 20 70 50 \ + 1 "Usar todo o disco com o swap (1GB) e /" \ + 2 "Usar o gparted para personalizar" ) + + case $selection in + 1) + umount /mnt &> /dev/null + #Create msdos partition table + parted -s $hdd -- mklabel msdos + + #Create partition swap and / + parted -s $hdd -- mkpart primary 1MiB 1000MiB mkpart primary 1000MiB -1s + + #Boot option partition / + parted -s $hdd -- set 2 boot on + + #Format and partitions and mount / + (echo t; echo 1; echo 82; echo w) | fdisk $hdd + mkswap ${hdd}1 + mkfs.ext4 ${hdd}2 + mount ${hdd}2 /mnt + ;; + 2) + gparted $hdd + + #Search and show the partitions that select before. + aux=$(ls $hdd?) + index=0; + for i in $aux; do + partitions[$index]="${i} ${i#/*/} off" + index=$((index+1)) + done + + partition=$(dialog --stdout --radiolist "Montar a partição /" 20 70 50 ${partitions[@]}) + + #Mount partition / + umount /mnt &> /dev/null + mount $partition /mnt + + #Ask if you want mount other partitions + other=0 + while [ $other != 3 ]; do + other=$(dialog --stdout --menu "Quer montar outra partição?" 20 70 50 1 "/home" 2 "/boot" 3 "Não") + + case $other in + 1) + umount /mnt/home &> /dev/null + mkdir /mnt/home &> /dev/null + mount $(dialog --stdout --radiolist "Montar a partição /home" 20 70 50 ${partitions[@]}) /mnt/home + ;; + 2) + umount /mnt/boot &> /dev/null + mkdir /mnt/boot &> /dev/null + mount $(dialog --stdout --radiolist "Montar a partição /boot" 20 70 50 ${partitions[@]}) /mnt/boot + ;; + *) + other=3 + ;; + esac + done + ;; + esac +} + + +option=0 +while [ option != 7 ]; do + option=$(dialog --stdout --menu "Instalação CLI da Parabola" 20 70 50 \ + 1 "Formatar e Montar as Partições" \ + 2 "Instalar o Sistema Base" \ + 3 "Instalar o GRUB" \ + 4 "Configuração do Sistema" \ + 5 "Adicionar uma Conta de Usuário" \ + 6 "(Opcional) Instalar Ambiente Gráfico/Aplicativos da Live DVD" \ + 7 "Sair" ) + + case $option in + 1) + partition + ;; + 2) + #Install base system + pacstrap /mnt base-openrc + pacstrap /mnt dialog + ;; + 3) + #Install grub + pacstrap /mnt grub + ;; + 4) + #Generate fstab and acces to chroot to do System Config + genfstab -p /mnt >> /mnt/etc/fstab + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/systemConfig.sh /mnt + chmod +x /mnt/systemConfig.sh + arch-chroot /mnt /systemConfig.sh + rm -r /mnt/systemConfig.sh + ;; + 5) + #Create a new username and save in temporal, to use after + if (cat ~/.scriptsInstallation/temporal | grep "userName=") &>/dev/null + then + sed -i -e '/userName=*/d' ~/.scriptsInstallation/temporal + fi + + echo "userName=$(dialog --stdout --inputbox "Insira o nome do usuário" 8 40)" >> ~/.scriptsInstallation/temporal + cp ~/.scriptsInstallation/temporal /mnt + cp ~/.scriptsInstallation/userAccount.sh /mnt + chmod +x /mnt/userAccount.sh + arch-chroot /mnt /userAccount.sh + rm -r /mnt/userAccount.sh + ;; + 6) + #Packages to the X11 live + packages=( "xorg-server" + "xf86-input-evdev" + "xf86-input-synaptics" + "xf86-video-ati" + "xf86-video-dummy" + "xf86-video-fbdev" + "xf86-video-intel" + "xf86-video-nouveau" + "xf86-video-openchrome" + "xf86-video-sisusb" + "xf86-video-vesa" + "xf86-video-vmware" + "xf86-video-voodoo" + "xf86-video-qxl" + "xorg-xinit" + "gst-plugins-good" + "gst-libav" + "lxde" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager-elogind" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + "polkit-elogind" + "gvfs-mtp" + "gvfs-gphoto2" + "xdg-user-dirs" + "gnome-screenshot" + ) + + #Install packages + pacman -Sy -r /mnt ${packages[@]} --needed --noconfirm + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copy skel in the new system and desktop's background + cp -a /etc/skel/ /mnt/etc/ + cp -a /etc/wallpaper.png /mnt/etc/wallpaper.png + + #Puts the XKBMAP, start X11 automatically and icewm desktop + echo "setxkbmap $(cat ~/.codecheck | grep XKBMAP= | cut -d '=' -f 2)" > /mnt/etc/skel/.xinitrc + echo "exec startlxde" >> /mnt/etc/skel/.xinitrc + echo "startx" >> /mnt/etc/skel/.bash_profile + chmod +x /mnt/etc/skel/.xinitrc + cp -a /mnt/etc/skel/.[a-z]* /mnt/home/${user#*=}/ + cp -a ~/.scriptsInstallation/x11.sh /mnt + + #Enable services with OpenRC and configure other stuff + chmod +x /mnt/x11.sh + arch-chroot /mnt /x11.sh + rm /mnt/x11.sh + ;; + *) + #Delete temporal file and umount partitions + rm -r /mnt/temporal + umount /mnt/boot &> /dev/null + umount /mnt/home &> /dev/null + umount /mnt &> /dev/null + exit + ;; + esac +done diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/systemConfig.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/systemConfig.sh new file mode 100755 index 0000000..983d0ba --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(dialog --stdout --inputbox "Adicione o nome do sistema:" 8 40) +sed 's|localhost|'"${HOSTNAME}"'|' -i /etc/conf.d/hostname + +ln -s /usr/share/zoneinfo/$(dialog --stdout --inputbox "Adicione o Fuso Horário:\nPor exemplo: America/Sao_Paulo" 8 40) /etc/localtime + +keymaps=( + "ANSI-dvorak ANSI-dvorak off" + "amiga-de amiga-de off" + "amiga-us amiga-us off" + "applkey applkey off" + "atari-de atari-de off" + "atari-se atari-se off" + "atari-uk-falcon atari-uk-falcon off" + "atari-us atari-us off" + "azerty azerty off" + "backspace backspace off" + "bashkir bashkir off" + "be-latin1 be-latin1 off" + "bg-cp1251 bg-cp1251 off" + "bg-cp855 bg-cp855 off" + "bg_bds-cp1251 bg_bds-cp1251 off" + "bg_bds-utf8 bg_bds-utf8 off" + "bg_pho-cp1251 bg_pho-cp1251 off" + "bg_pho-utf8 bg_pho-utf8 off" + "br-abnt br-abnt off" + "br-abnt2 br-abnt2 off" + "br-latin1-abnt2 br-latin1-abnt2 off" + "br-latin1-us br-latin1-us off" + "by by off" + "by-cp1251 by-cp1251 off" + "bywin-cp1251 bywin-cp1251 off" + "cf cf off" + "colemak colemak off" + "croat croat off" + "ctrl ctrl off" + "cz cz off" + "cz-cp1250 cz-cp1250 off" + "cz-lat2 cz-lat2 off" + "cz-lat2-prog cz-lat2-prog off" + "cz-qwertz cz-qwertz off" + "cz-us-qwertz cz-us-qwertz off" + "de de off" + "de-latin1 de-latin1 off" + "de-latin1-nodeadkeys de-latin1-nodeadkeys off" + "de-mobii de-mobii off" + "de_CH-latin1 de_CH-latin1 off" + "de_alt_UTF-8 de_alt_UTF-8 off" + "defkeymap defkeymap off" + "defkeymap_V1.0 defkeymap_V1.0 off" + "dk dk off" + "dk-latin1 dk-latin1 off" + "dvorak dvorak off" + "dvorak-ca-fr dvorak-ca-fr off" + "dvorak-es dvorak-es off" + "dvorak-fr dvorak-fr off" + "dvorak-l dvorak-l off" + "dvorak-r dvorak-r off" + "dvorak-ru dvorak-ru off" + "dvorak-sv-a1 dvorak-sv-a1 off" + "dvorak-sv-a5 dvorak-sv-a5 off" + "dvorak-uk dvorak-uk off" + "emacs emacs off" + "emacs2 emacs2 off" + "es es off" + "es-cp850 es-cp850 off" + "es-olpc es-olpc off" + "et et off" + "et-nodeadkeys et-nodeadkeys off" + "euro euro off" + "euro1 euro1 off" + "euro2 euro2 off" + "fi fi off" + "fr fr off" + "fr-bepo fr-bepo off" + "fr-bepo-latin9 fr-bepo-latin9 off" + "fr-latin1 fr-latin1 off" + "fr-latin9 fr-latin9 off" + "fr-pc fr-pc off" + "fr_CH fr_CH off" + "fr_CH-latin1 fr_CH-latin1 off" + "gr gr off" + "gr-pc gr-pc off" + "hu hu off" + "hu101 hu101 off" + "il il off" + "il-heb il-heb off" + "il-phonetic il-phonetic off" + "is-latin1 is-latin1 off" + "is-latin1-us is-latin1-us off" + "it it off" + "it-ibm it-ibm off" + "it2 it2 off" + "jp106 jp106 off" + "kazakh kazakh off" + "keypad keypad off" + "ky_alt_sh-UTF-8 ky_alt_sh-UTF-8 off" + "kyrgyz kyrgyz off" + "la-latin1 la-latin1 off" + "lt lt off" + "lt.baltic lt.baltic off" + "lt.l4 lt.l4 off" + "lv lv off" + "lv-tilde lv-tilde off" + "mac-be mac-be off" + "mac-de-latin1 mac-de-latin1 off" + "mac-de-latin1-nodeadkeys mac-de-latin1-nodeadkeys off" + "mac-de_CH mac-de_CH off" + "mac-dk-latin1 mac-dk-latin1 off" + "mac-dvorak mac-dvorak off" + "mac-es mac-es off" + "mac-euro mac-euro off" + "mac-euro2 mac-euro2 off" + "mac-fi-latin1 mac-fi-latin1 off" + "mac-fr mac-fr off" + "mac-fr_CH-latin1 mac-fr_CH-latin1 off" + "mac-it mac-it off" + "mac-pl mac-pl off" + "mac-pt-latin1 mac-pt-latin1 off" + "mac-se mac-se off" + "mac-template mac-template off" + "mac-uk mac-uk off" + "mac-us mac-us off" + "mk mk off" + "mk-cp1251 mk-cp1251 off" + "mk-utf mk-utf off" + "mk0 mk0 off" + "nl nl off" + "nl2 nl2 off" + "no no off" + "no-dvorak no-dvorak off" + "no-latin1 no-latin1 off" + "pc110 pc110 off" + "pl pl off" + "pl1 pl1 off" + "pl2 pl2 off" + "pl3 pl3 off" + "pl4 pl4 off" + "pt-latin1 pt-latin1 off" + "pt-latin9 pt-latin9 off" + "pt-olpc pt-olpc off" + "ro ro off" + "ro_std ro_std off" + "ro_win ro_win off" + "ru ru off" + "ru-cp1251 ru-cp1251 off" + "ru-ms ru-ms off" + "ru-yawerty ru-yawerty off" + "ru1 ru1 off" + "ru2 ru2 off" + "ru3 ru3 off" + "ru4 ru4 off" + "ru_win ru_win off" + "ruwin_alt-CP1251 ruwin_alt-CP1251 off" + "ruwin_alt-KOI8-R ruwin_alt-KOI8-R off" + "ruwin_alt-UTF-8 ruwin_alt-UTF-8 off" + "ruwin_alt_sh-UTF-8 ruwin_alt_sh-UTF-8 off" + "ruwin_cplk-CP1251 ruwin_cplk-CP1251 off" + "ruwin_cplk-KOI8-R ruwin_cplk-KOI8-R off" + "ruwin_cplk-UTF-8 ruwin_cplk-UTF-8 off" + "ruwin_ct_sh-CP1251 ruwin_ct_sh-CP1251 off" + "ruwin_ct_sh-KOI8-R ruwin_ct_sh-KOI8-R off" + "ruwin_ct_sh-UTF-8 ruwin_ct_sh-UTF-8 off" + "ruwin_ctrl-CP1251 ruwin_ctrl-CP1251 off" + "ruwin_ctrl-KOI8-R ruwin_ctrl-KOI8-R off" + "ruwin_ctrl-UTF-8 ruwin_ctrl-UTF-8 off" + "se-fi-ir209 se-fi-ir209 off" + "se-fi-lat6 se-fi-lat6 off" + "se-ir209 se-ir209 off" + "se-lat6 se-lat6 off" + "sg sg off" + "sg-latin1 sg-latin1 off" + "sg-latin1-lk450 sg-latin1-lk450 off" + "sk-prog-qwerty sk-prog-qwerty off" + "sk-prog-qwertz sk-prog-qwertz off" + "sk-qwerty sk-qwerty off" + "sk-qwertz sk-qwertz off" + "slovene slovene off" + "sr-cy sr-cy off" + "sun-pl sun-pl off" + "sun-pl-altgraph sun-pl-altgraph off" + "sundvorak sundvorak off" + "sunkeymap sunkeymap off" + "sunt4-es sunt4-es off" + "sunt4-fi-latin1 sunt4-fi-latin1 off" + "sunt4-no-latin1 sunt4-no-latin1 off" + "sunt5-cz-us sunt5-cz-us off" + "sunt5-de-latin1 sunt5-de-latin1 off" + "sunt5-es sunt5-es off" + "sunt5-fi-latin1 sunt5-fi-latin1 off" + "sunt5-fr-latin1 sunt5-fr-latin1 off" + "sunt5-ru sunt5-ru off" + "sunt5-uk sunt5-uk off" + "sunt5-us-cz sunt5-us-cz off" + "sunt6-uk sunt6-uk off" + "sv-latin1 sv-latin1 off" + "tj_alt-UTF8 tj_alt-UTF8 off" + "tr_f-latin5 tr_f-latin5 off" + "tr_q-latin5 tr_q-latin5 off" + "tralt tralt off" + "trf trf off" + "trf-fgGIod trf-fgGIod off" + "trq trq off" + "ttwin_alt-UTF-8 ttwin_alt-UTF-8 off" + "ttwin_cplk-UTF-8 ttwin_cplk-UTF-8 off" + "ttwin_ct_sh-UTF-8 ttwin_ct_sh-UTF-8 off" + "ttwin_ctrl-UTF-8 ttwin_ctrl-UTF-8 off" + "ua ua off" + "ua-cp1251 ua-cp1251 off" + "ua-utf ua-utf off" + "ua-utf-ws ua-utf-ws off" + "ua-ws ua-ws off" + "uk uk off" + "unicode unicode off" + "us us on" + "us-acentos us-acentos off" + "wangbe wangbe off" + "wangbe2 wangbe2 off" + "windowkeys windowkeys off" +) + +echo "KEYMAP=$(dialog --stdout --radiolist "Escolha a distribuição do teclado" 20 70 50 ${keymaps[@]})" > /etc/vconsole.conf + +aux=$(sed -e '1,23d' -e 's/#//g' -e 's/ /#/g' -e 's/..$//' /etc/locale.gen) +index=0 +for i in $aux; do + i=$(echo $i | sed -e 's/#/ /g') + locales+=("$i" "$i" off) + if [[ $i == "en_US.UTF-8 UTF-8" || $i == "en_US ISO-8859-1" ]]; then + locales[$index]="$i" + locales[$((index+1))]="$i" + locales[$((index+2))]="on" + fi + index=$((index+3)) +done + +locale=$(dialog --stdout --checklist "Escolha as Localizações" 20 70 50 "${locales[@]}") +locale=$(echo ${locale} | sed -e 's/" "/\n/g' -e 's/ /#/g' -e 's/"//g') + +for i in ${locale[@]}; do + i=$(echo $i | sed -e 's/#/ /g') + sed -i -e "s/#$i/$i/g" /etc/locale.gen +done + +locale-gen + +aux=$(locale -a) +index=0 +for i in $aux; do + langs+=("$i" "$i" on) + index=$((index+1)) +done + +echo "LANG=$(dialog --stdout --radiolist "Escolha a sua língua" 20 70 50 ${langs[@]})" > /etc/locale.conf + +mkinitcpio -p linux-libre + +hdd=$(cat /temporal | grep 'hdd=') +grub-install ${hdd#*=} +grub-mkconfig -o /boot/grub/grub.cfg + +password=$(dialog --stdout --passwordbox "Insira a senha para o root" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repita a senha para o root" 8 40) +done + +usermod -p $(openssl passwd ${password}) root + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/userAccount.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/userAccount.sh new file mode 100755 index 0000000..408beba --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/language/pt/userAccount.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +user=$(cat /temporal | grep "userName") + +password=$(dialog --stdout --passwordbox "Insira a senha para o usuário ${user#*=}" 8 40) + +while [[ $password != $password2 ]]; do + password2=$(dialog --stdout --passwordbox "Repita a senha" 8 40) +done + +useradd -m -g users -G "wheel" -s /bin/bash -p $(openssl passwd $password) ${user#*=} + +exit diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/parabolaicon.png b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/parabolaicon.png Binary files differnew file mode 100644 index 0000000..aed32d7 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/parabolaicon.png diff --git a/configs/lxde-openrc/airootfs/root/.scriptsInstallation/x11.sh b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/x11.sh new file mode 100755 index 0000000..47035c5 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.scriptsInstallation/x11.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +check_dbus() { + grep dbus /etc/$1 +} + +# Create the dbus user if it doesn't exist +[[ $(check_dbus group) = "" ]] && groupadd -g 81 dbus +[[ $(check_dbus passwd) = "" ]] && useradd -r -s /sbin/nologin -g 81 -u 81 dbus + +# Enable services with OpenRC +rc-update add NetworkManager default +rc-update add dbus default +rc-update add alsasound default diff --git a/configs/lxde-openrc/airootfs/root/.themes/Parabola/index.theme b/configs/lxde-openrc/airootfs/root/.themes/Parabola/index.theme new file mode 100644 index 0000000..d6b2393 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.themes/Parabola/index.theme @@ -0,0 +1,13 @@ +[Desktop Entry] +Name=Parabola +Type=X-GNOME-Metatheme +Comment= + +[X-GNOME-Metatheme] +GtkTheme=Radiance-Purple +MetacityTheme=Radiance-Purple +IconTheme=RAVE-X-Dark-Purple +GtkColorScheme=base_color:#ffffff,fg_color:#4c4c4c,tooltip_fg_color:#ffffff,selected_bg_color:#7E5BC5,selected_fg_color:#FFFFFF,text_color:#3C3C3C,bg_color:#F6F6F6,tooltip_bg_color:#000000,link_color:#9D7EDA +CursorTheme=mate +CursorSize=18 +BackgroundImage=/etc/wallpaper.png diff --git a/configs/lxde-openrc/airootfs/root/.xinitrc b/configs/lxde-openrc/airootfs/root/.xinitrc new file mode 100644 index 0000000..09e419c --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.xinitrc @@ -0,0 +1,7 @@ +code=$(cat ~/.codecheck | grep XKBMAP= | cut -d '=' -f 2) +[ "$code" = "0" ] && code='us' +setxkbmap $code +service NetworkManager start +service dbus start +service alsasound start +exec startlxde diff --git a/configs/lxde-openrc/airootfs/root/.zlogin b/configs/lxde-openrc/airootfs/root/.zlogin new file mode 100644 index 0000000..b24dba9 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/.zlogin @@ -0,0 +1,4 @@ +~/.automated_script.sh +~/.language.sh +export $(cat /etc/locale.conf) +startx diff --git a/configs/lxde-openrc/airootfs/root/Desktop/Parabola Installation CLI.desktop b/configs/lxde-openrc/airootfs/root/Desktop/Parabola Installation CLI.desktop new file mode 100755 index 0000000..9a2d871 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/Desktop/Parabola Installation CLI.desktop @@ -0,0 +1,12 @@ +#!/usr/bin/env xdg-open +[Desktop Entry] +Version=1.0 +Type=Application +Terminal=true +Name[es_ES]=Instalador CLI de Parabola +Name[gl_ES]=Instalador CLI de Parabola +Name[pt_BR]=Instalador CLI da Parabola +Exec=/root/.scriptsInstallation/install.sh +Name=Parabola Installation CLI +Comment=Parabola Installation Scripts +Icon=/root/.scriptsInstallation/parabolaicon.png diff --git a/configs/lxde-openrc/airootfs/root/customize_airootfs.sh b/configs/lxde-openrc/airootfs/root/customize_airootfs.sh new file mode 100755 index 0000000..7d1bfda --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/customize_airootfs.sh @@ -0,0 +1,48 @@ +#!/bin/bash + +set -e -u + +sed -i 's/#\(en_US\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(es_ES\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(gl_ES\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(pt_BR\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(pl_PL\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(it_IT\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(fr_FR\.UTF-8\)/\1/' /etc/locale.gen +sed -i 's/#\(eo\)/\1/' /etc/locale.gen +locale-gen + +ln -sf /usr/share/zoneinfo/UTC /etc/localtime + +usermod -s /usr/bin/zsh root +cp -aT /etc/skel/ /root/ +chmod 700 /root + +sed -i 's/#\(PermitRootLogin \).\+/\1yes/' /etc/ssh/sshd_config +sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist + +sed -i 's/#\(HandleSuspendKey=\)suspend/\1ignore/' /etc/elogind/logind.conf +sed -i 's/#\(HandleHibernateKey=\)hibernate/\1ignore/' /etc/elogind/logind.conf +sed -i 's/#\(HandleLidSwitch=\)suspend/\1ignore/' /etc/elogind/logind.conf + +case $(uname -m) in + x86_64) echo 'KEYS="archlinux parabola"' > /etc/conf.d/pacman-init + ;; + i686) echo 'KEYS="archlinux archlinux32 parabola"' > /etc/conf.d/pacman-init + ;; +esac + +useradd -m -p "" -g users -G "adm,audio,floppy,log,network,scanner,storage,optical,power,wheel,disk,sys" -s /usr/bin/zsh parabola + +services=(NetworkManager + elogind + alsasound + dbus + haveged + pacman-init) + +for s in ${services[@]}; do + rc-update add $s default +done + +sed -i "s/_DATE_/$(date +%Y.%m.%d)/" /etc/motd diff --git a/configs/lxde-openrc/airootfs/root/install.txt b/configs/lxde-openrc/airootfs/root/install.txt new file mode 100644 index 0000000..a594b97 --- /dev/null +++ b/configs/lxde-openrc/airootfs/root/install.txt @@ -0,0 +1,2 @@ +View this installation guide online at +https://wiki.parabola.nu/Installation_Guide |