summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbill-auger <mr.j.spam.me@gmail.com>2022-05-04 05:55:15 -0400
committerbill-auger <mr.j.spam.me@gmail.com>2022-05-04 06:29:05 -0400
commit41eba2474f5e6991a4b62fe2ad1dc5cec57a077c (patch)
tree1f11615e5b3b077d45a23f0c4c49bcf6b127cb7e
parentd26452f7028ffd28f50bb7b276e3d800309866f1 (diff)
extract install wizard as new dedicated project
-rw-r--r--configs/profile/packages/packages-all.all1
-rw-r--r--configs/profile/root-image/etc/skel/.bash_profile12
-rwxr-xr-xconfigs/profile/root-image/root/.remote-script.sh (renamed from configs/profile/root-image/root/.session/remote-script.sh)0
-rw-r--r--configs/profile/root-image/root/.session/.session_state3
-rw-r--r--configs/profile/root-image/root/.session/install/KEYMAPS_VT212
-rw-r--r--configs/profile/root-image/root/.session/install/KEYMAPS_X98
-rw-r--r--configs/profile/root-image/root/.session/install/LANGUAGES8
-rwxr-xr-xconfigs/profile/root-image/root/.session/install/chroot-environment.sh75
-rwxr-xr-xconfigs/profile/root-image/root/.session/install/chroot-login.sh62
-rwxr-xr-xconfigs/profile/root-image/root/.session/install/chroot-services.sh23
-rwxr-xr-xconfigs/profile/root-image/root/.session/install/install.sh299
-rw-r--r--configs/profile/root-image/root/.session/session-common.sh.inc112
-rwxr-xr-xconfigs/profile/root-image/root/.session/session-init.sh103
-rw-r--r--configs/profile/root-image/root/.session/translations.sh.inc331
14 files changed, 8 insertions, 1331 deletions
diff --git a/configs/profile/packages/packages-all.all b/configs/profile/packages/packages-all.all
index 4eec7ed..50b28c9 100644
--- a/configs/profile/packages/packages-all.all
+++ b/configs/profile/packages/packages-all.all
@@ -33,6 +33,7 @@ ntfs-3g
openconnect
p7zip
parabola-base
+parabola-install-wizard
partclone
parted
partimage
diff --git a/configs/profile/root-image/etc/skel/.bash_profile b/configs/profile/root-image/etc/skel/.bash_profile
index a25dae9..75b9903 100644
--- a/configs/profile/root-image/etc/skel/.bash_profile
+++ b/configs/profile/root-image/etc/skel/.bash_profile
@@ -14,11 +14,13 @@ ENABLE_TTS_BRLTTY='_ENABLE_TTS_BRLTTY_' # speech and braille
# customize environment
-sudo /root/.session/.remote-script.sh
-sed -i 's|^SESSION=.*|SESSION=_UNDEFINED_|' /root/.session/.session_state
-(( $IS_INITIAL_TTY )) && sudo /root/.session/session-init.sh
-Session=$(grep 'SESSION=' /root/.session/.session_state | cut -d '=' -f 2)
-sed -i 's|^SESSION=.*|SESSION=_UNDEFINED_|' /root/.session/.session_state
+INSTALL_WIZARD_STATE_FILE=/var/lib/parabola-install-wizard/.session_state
+INSTALL_WIZARD_INIT_FILE=/usr/lib/parabola-install-wizard/session-init.sh
+sudo /root/.remote-script.sh
+sed -i 's|^SESSION=.*|SESSION=_UNDEFINED_|' ${INSTALL_WIZARD_STATE_FILE}
+(( $IS_INITIAL_TTY )) && sudo ${INSTALL_WIZARD_INIT_FILE}
+Session=$(grep 'SESSION=' ${INSTALL_WIZARD_STATE_FILE} | cut -d '=' -f 2)
+sed -i 's|^SESSION=.*|SESSION=_UNDEFINED_|' ${INSTALL_WIZARD_STATE_FILE}
export $(cat /etc/locale.conf)
diff --git a/configs/profile/root-image/root/.session/remote-script.sh b/configs/profile/root-image/root/.remote-script.sh
index fb106da..fb106da 100755
--- a/configs/profile/root-image/root/.session/remote-script.sh
+++ b/configs/profile/root-image/root/.remote-script.sh
diff --git a/configs/profile/root-image/root/.session/.session_state b/configs/profile/root-image/root/.session/.session_state
deleted file mode 100644
index 5048f89..0000000
--- a/configs/profile/root-image/root/.session/.session_state
+++ /dev/null
@@ -1,3 +0,0 @@
-LANG=_UNDEFINED_
-XKBMAP=_UNDEFINED_
-SESSION=_UNDEFINED_
diff --git a/configs/profile/root-image/root/.session/install/KEYMAPS_VT b/configs/profile/root-image/root/.session/install/KEYMAPS_VT
deleted file mode 100644
index 3a409a1..0000000
--- a/configs/profile/root-image/root/.session/install/KEYMAPS_VT
+++ /dev/null
@@ -1,212 +0,0 @@
-ANSI-dvorak
-amiga-de
-amiga-us
-applkey
-atari-de
-atari-se
-atari-uk-falcon
-atari-us
-azerty
-backspace
-bashkir
-be-latin1
-bg-cp1251
-bg-cp855
-bg_bds-cp1251
-bg_bds-utf8
-bg_pho-cp1251
-bg_pho-utf8
-br-abnt
-br-abnt2
-br-latin1-abnt2
-br-latin1-us
-by
-by-cp1251
-bywin-cp1251
-cf
-colemak
-croat
-ctrl
-cz
-cz-cp1250
-cz-lat2
-cz-lat2-prog
-cz-qwertz
-cz-us-qwertz
-de
-de-latin1
-de-latin1-nodeadkeys
-de-mobii
-de_CH-latin1
-de_alt_UTF-8
-defkeymap
-defkeymap_V1.0
-dk
-dk-latin1
-dvorak
-dvorak-ca-fr
-dvorak-es
-dvorak-fr
-dvorak-l
-dvorak-r
-dvorak-ru
-dvorak-sv-a1
-dvorak-sv-a5
-dvorak-uk
-emacs
-emacs2
-es
-es-cp850
-es-olpc
-et
-et-nodeadkeys
-euro
-euro1
-euro2
-fi
-fr
-fr-bepo
-fr-bepo-latin9
-fr-latin1
-fr-latin9
-fr-pc
-fr_CH
-fr_CH-latin1
-gr
-gr-pc
-hu
-hu101
-il
-il-heb
-il-phonetic
-is-latin1
-is-latin1-us
-it
-it-ibm
-it2
-jp106
-kazakh
-keypad
-ky_alt_sh-UTF-8
-kyrgyz
-la-latin1
-lt
-lt.baltic
-lt.l4
-lv
-lv-tilde
-mac-be
-mac-de-latin1
-mac-de-latin1-nodeadkeys
-mac-de_CH
-mac-dk-latin1
-mac-dvorak
-mac-es
-mac-euro
-mac-euro2
-mac-fi-latin1
-mac-fr
-mac-fr_CH-latin1
-mac-it
-mac-pl
-mac-pt-latin1
-mac-se
-mac-template
-mac-uk
-mac-us
-mk
-mk-cp1251
-mk-utf
-mk0
-nl
-nl2
-no
-no-dvorak
-no-latin1
-pc110
-pl
-pl1
-pl2
-pl3
-pl4
-pt-latin1
-pt-latin9
-pt-olpc
-ro
-ro_std
-ro_win
-ru
-ru-cp1251
-ru-ms
-ru-yawerty
-ru1
-ru2
-ru3
-ru4
-ru_win
-ruwin_alt-CP1251
-ruwin_alt-KOI8-R
-ruwin_alt-UTF-8
-ruwin_alt_sh-UTF-8
-ruwin_cplk-CP1251
-ruwin_cplk-KOI8-R
-ruwin_cplk-UTF-8
-ruwin_ct_sh-CP1251
-ruwin_ct_sh-KOI8-R
-ruwin_ct_sh-UTF-8
-ruwin_ctrl-CP1251
-ruwin_ctrl-KOI8-R
-ruwin_ctrl-UTF-8
-se-fi-ir209
-se-fi-lat6
-se-ir209
-se-lat6
-sg
-sg-latin1
-sg-latin1-lk450
-sk-prog-qwerty
-sk-prog-qwertz
-sk-qwerty
-sk-qwertz
-slovene
-sr-cy
-sun-pl
-sun-pl-altgraph
-sundvorak
-sunkeymap
-sunt4-es
-sunt4-fi-latin1
-sunt4-no-latin1
-sunt5-cz-us
-sunt5-de-latin1
-sunt5-es
-sunt5-fi-latin1
-sunt5-fr-latin1
-sunt5-ru
-sunt5-uk
-sunt5-us-cz
-sunt6-uk
-sv-latin1
-tj_alt-UTF8
-tr_f-latin5
-tr_q-latin5
-tralt
-trf
-trf-fgGIod
-trq
-ttwin_alt-UTF-8
-ttwin_cplk-UTF-8
-ttwin_ct_sh-UTF-8
-ttwin_ctrl-UTF-8
-ua
-ua-cp1251
-ua-utf
-ua-utf-ws
-ua-ws
-uk
-unicode
-us
-us-acentos
-wangbe
-wangbe2
-windowkeys
diff --git a/configs/profile/root-image/root/.session/install/KEYMAPS_X b/configs/profile/root-image/root/.session/install/KEYMAPS_X
deleted file mode 100644
index dec8b5a..0000000
--- a/configs/profile/root-image/root/.session/install/KEYMAPS_X
+++ /dev/null
@@ -1,98 +0,0 @@
-af Afrikaans-Lang
-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-English
-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 US-English
-uz Uzbek
-vn vn
-za Zhuang
diff --git a/configs/profile/root-image/root/.session/install/LANGUAGES b/configs/profile/root-image/root/.session/install/LANGUAGES
deleted file mode 100644
index 2f5e494..0000000
--- a/configs/profile/root-image/root/.session/install/LANGUAGES
+++ /dev/null
@@ -1,8 +0,0 @@
-en_US.UTF-8 English
-eo Esperanto
-fr_FR.UTF-8 French
-gl_ES.UTF-8 Galego
-it_IT.UTF-8 Italian
-pl_PL.UTF-8 Polish
-pt_BR.UTF-8 Portuguese
-es_ES.UTF-8 Spanish
diff --git a/configs/profile/root-image/root/.session/install/chroot-environment.sh b/configs/profile/root-image/root/.session/install/chroot-environment.sh
deleted file mode 100755
index 5be3195..0000000
--- a/configs/profile/root-image/root/.session/install/chroot-environment.sh
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/bin/bash
-
-source /root/session-common.sh.inc
-
-
-# prompt for hostname
-hostname=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --inputbox "${TR[hostname-${TR_KEY}]}" 8 40 )
-echo ${hostname} > /etc/hostname
-
-# prompt for timezone
-timezone=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --inputbox "${TR[timezone-${TR_KEY}]}" 8 40 )
-ln -s /usr/share/zoneinfo/${timezone} /etc/localtime
-
-# prompt for keymap
-live_keymap=$(GetStateVar 'XKBMAP' 'us')
-keymaps=()
-for keymap in $(cat "${WIZARD_DIR}"/KEYMAPS_VT)
-do selected_state=$( [[ ${keymap} =~ ^${live_keymap} ]] && echo 'on' || echo 'off' )
- keymaps+=( "${keymap}" "${keymap}" ${selected_state} )
-done
-keymap=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --radiolist "${TR[keymap-${TR_KEY}]}" 20 70 50 \
- "${keymaps[@]}" )
-echo "KEYMAP=${keymap}" > /etc/vconsole.conf
-
-# prompt for locale
-all_locales=$( sed -e '1,23d' -e 's/#//g' -e 's/ /#/g' -e 's/..$//' /etc/locale.gen )
-live_locale=$( GetStateVar 'LANG' 'en_US' )
-locales=()
-for locale in ${all_locales}
-do locale=$(echo ${locale} | sed -e 's/#/ /g')
- selected_state=$( [[ ${locale} =~ ^${live_locale} ]] && echo 'on' || echo 'off' )
- locales+=( "${locale}" "${locale}" ${selected_state} )
-done
-locales=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --checklist "${TR[locales-${TR_KEY}]}" 20 70 50 \
- "${locales[@]}" )
-locales=$(echo ${locales} | sed -e 's/" "/\n/g' -e 's/ /#/g' -e 's/"//g')
-for locale in ${locales[@]}
-do locale=$(echo ${locale} | sed -e 's/#/ /g')
- sed -i -e "s/#${locale}/${locale}/g" /etc/locale.gen
-done
-locale-gen
-
-# prompt for language
-live_language=$(GetStateVar 'LANG' 'en_US.UTF-8')
-language=()
-while read language
-do selected_state=$( [[ ${language} =~ ^${live_language} ]] && echo 'on' || echo 'off' )
- languages+=( "${language% *}" "${language#*\ }" ${selected_state} )
-done << <(cat "${WIZARD_DIR}"/LANGUAGES)
-language=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --radiolist "${TR[language-${TR_KEY}]}" 20 70 50 \
- "${languages[@]}" )
-echo "LANG=${language}" > /etc/locale.conf
-
-# prepare initrd and GRUB
-mkinitcpio -p linux-libre
-device=$(GetStateVar 'DEVICE')
-which grub-install &> /dev/null && grub-install ${device}
-which grub-mkconfig &> /dev/null && grub-mkconfig -o /boot/grub/grub.cfg
-
-# initialize root user
-pass='changeme' pass2=''
-while [[ "$pass" != "$pass2" ]]
-do pass=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --passwordbox "${TR[root_pass-${TR_KEY}]}" 8 40 )
- pass2=$( WizardDlg "${TR[menu_config-${TR_KEY}]}" \
- --passwordbox "${TR[root_pass2-${TR_KEY}]}" 8 40 )
-done
-usermod -p $(openssl passwd ${pass}) root
-
-exit
diff --git a/configs/profile/root-image/root/.session/install/chroot-login.sh b/configs/profile/root-image/root/.session/install/chroot-login.sh
deleted file mode 100755
index 203a356..0000000
--- a/configs/profile/root-image/root/.session/install/chroot-login.sh
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/bin/bash
-
-source /root/session-common.sh.inc
-
-
-readonly WHEEL_SUDOERS_SED_CMD='s|[#] [%]wheel ALL=[(]ALL[)] ALL|%wheel ALL=(ALL) ALL|'
-
-
-ValidateLogin() { Login=$(tr -d '[:space:]' <<<${Login}) ; [[ -n "${Login}" ]] ; } # TODO:
-
-GsettingsSet() # (kvp)
-{
- sudo -u ${Login} gsettings set $*
-}
-
-
-## main entry ##
-
-DlgTitle=$( ${TR[dlg_user-${TR_KEY}]/*) }
-
-# create unprivileged user
-Login=''
-until ValidateLogin
-do Login=$( WizardDlg "${DlgTitle}" \
- --inputbox "${TR[user_login-${TR_KEY}]}" 8 40 )
-done
-Pass='changeme' Pass2=''
-while [[ "${Pass}" != "${Pass2}" ]]
-do Pass=$( WizardDlg "${DlgTitle}" \
- --passwordbox "${TR[user_pass-${TR_KEY}]} '${Login}':" 8 40 )
- Pass2=$( WizardDlg "${DlgTitle}" \
- --passwordbox "${TR[user_pass2-${TR_KEY}]} '${Login}':" 8 40 )
-done
-useradd -m -g users -G 'wheel' -s /bin/bash -p $(openssl passwd ${Pass}) ${Login}
-
-# set keymap
-Keymap=$(GetStateVar 'XKBMAP')
-echo "setxkbmap ${Keymap}" >> /home/${Login}/.bashrc
-
-# configure desktop environment
-wmde=$(GetStateVar 'WMDE')
-if [[ "${wmde}" == 'mate' && -x /usr/bin/gsettings ]]
-then if [[ -d /usr/share/themes/Radiance-Purple ]]
- then GsettingsSet org.mate.interface gtk-theme 'Radiance-Purple'
- GsettingsSet org.mate.Marco.general theme 'Radiance-Purple'
- fi
- if [[ -d /usr/share/icons/RAVE-X-Dark-Purple ]]
- then GsettingsSet org.mate.interface icon-theme 'RAVE-X-Dark-Purple'
- fi
- if [[ -d /usr/share/icons/mate ]]
- then GsettingsSet org.mate.peripherals-mouse cursor-size '18'
- GsettingsSet org.mate.peripherals-mouse cursor-theme 'mate'
- fi
- if [[ -f /usr/share/backgrounds/parabola-laf/parabola-laf.png ]]
- then GsettingsSet org.mate.background picture-filename '/usr/share/backgrounds/parabola-laf/parabola-laf.png'
- fi
-fi
-
-# allow members of group wheel to execute any command
-sed -i "$WHEEL_SUDOERS_SED_CMD" /etc/sudoers
-
-exit
diff --git a/configs/profile/root-image/root/.session/install/chroot-services.sh b/configs/profile/root-image/root/.session/install/chroot-services.sh
deleted file mode 100755
index a63963e..0000000
--- a/configs/profile/root-image/root/.session/install/chroot-services.sh
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash
-
-source /root/session-common.sh.inc
-
-
-Init=$(GetStateVar 'INIT')
-Wmde=$(GetStateVar 'WMDE')
-if [[ "${Init}" == 'openrc' ]]
-then # Create the dbus user if it doesn't exist
- grep dbus /etc/group > /dev/null || groupadd -g 81 dbus
- grep dbus /etc/passwd > /dev/null || useradd -g 81 -u 81 dbus -r -s /sbin/nologin
-
- # Enable services with OpenRC
- rc-update add alsasound default
- rc-update add dbus default
- rc-update add NetworkManager default
-elif [[ "${Init}" == 'systemd' ]]
- case "${Wmde}" in
- 'lxde') systemctl enable 'NetworkManager.service' 'lxdm.service' ;;
- 'mate') systemctl enable 'NetworkManager.service' 'lightdm.service' ;;
- * ) systemctl enable 'dhcpcd.service' 'systemd-resolved.service' ;;
- esac
-fi
diff --git a/configs/profile/root-image/root/.session/install/install.sh b/configs/profile/root-image/root/.session/install/install.sh
deleted file mode 100755
index 7858ea3..0000000
--- a/configs/profile/root-image/root/.session/install/install.sh
+++ /dev/null
@@ -1,299 +0,0 @@
-#!/bin/bash
-
-source $(cd $(dirname ${BASH_SOURCE[0]}) ; pwd)/../session-common.sh.inc
-
-
-readonly PACCONF_NONSYSTEMD_REGEX='N ; s|^#\[nonsystemd\].*#Include|\[nonsystemd\]\nInclude|'
-readonly PACCONF_SYSTEMD_REGEX='N ; s|^\[nonsystemd\].*Include|#\[nonsystemd\]\n#Include|'
-readonly ONLINE_CHECK_URL=https://repo.parabola.nu/check_network_status.txt
-readonly GRUB_THEME_SED_CMD='s|^#GRUB_THEME=.*|GRUB_THEME=/boot/grub/themes/parabola-laf/theme.txt|'
-
-
-Init()
-{
- echo "${TR[internet-${TR_KEY}]} ...."
- local has_isorepo=$( [[ ! -d /isorepo ]] && echo 1 || echo 0 )
- local is_online=$( curl ${ONLINE_CHECK_URL} &> /dev/null && echo 1 || echo 0 )
-
- if [[ ${has_isorepo} && ${is_online} ]] ; then SetStateVar 'INSTALL' 'prompt' ;
- elif [[ ${has_isorepo} ]] ; then SetStateVar 'INSTALL' 'offline' ;
- else SetStateVar 'INSTALL' 'online' ;
- fi
-
-DbgDlg "has_isorepo=$has_isorepo is_online=$is_online install=$install"
-}
-
-InitKeyring()
-{
- if [[ "$(GetStateVar 'KEYRING')" != 'ready' ]]
- then pacman -Sy archlinux-keyring archlinux32-keyring parabola-keyring --noconfirm
- pacman-key --populate archlinux archlinux32 parabola
- pacman-key --refresh-keys
- SetStateVar 'KEYRING' 'ready'
- fi
-}
-
-Partition()
-{
- umount /mnt &> /dev/null || true
-
- # prompt for disk device
- local hd_devices=$(ls /dev/sd?)
- local hdds=()
- local hd_device
- local capacity
- local hdd
- for hd_device in ${hd_devices}
- do capacity=$(fdisk --list /dev/sda | head --lines=1 | sed 's|.*: \([^,]*\),.*|\1|')
- hdds+=( "${hd_device}" "${capacity}" off )
- done
- hdd=$( WizardDlg "${TR[dlg_part-${TR_KEY}]}" \
- --radiolist "${TR[hdd-${TR_KEY}]}" 20 70 50 "${hdds[@]}" )
- [[ -n "${hdd}" ]] && SetStateVar 'HDD' ${hdd} || exit
-
- # prompt for partitioner
- local part_method=$( WizardDlg "${TR[dlg_part-${TR_KEY}]}" \
- --menu "${TR[part-${TR_KEY}]}" 20 70 50 \
- 'auto' "${TR[part_auto-${TR_KEY}]}" \
- 'manual' "${TR[part_man-${TR_KEY}]}" )
- [[ -n "${part_method}" ]] || exit
-
- # partitioning
- local root_part
- case ${part_method} in
- 'auto')
- # create partition table
- parted -s ${device} -- mklabel msdos
-
- # create partitions
- parted -s ${hdd} -- mkpart primary 1MiB 1000MiB
- parted -s ${hdd} -- mkpart primary 1000MiB -1s
- parted -s ${hdd} -- set 2 boot on
-
- # format partitions
- (echo t ; echo 1 ; echo 82 ; echo w) | fdisk ${hdd}
- mkswap ${hdd}1
- mkfs.ext4 ${hdd}2
-
- root_part=${hdd}2
- ;;
- 'manual')
- if which gparted &> /dev/null ; then gparted ${hdd} ;
- elif which cfdisk &> /dev/null ; then cfdisk ${hdd} ; fi ;
-
- # prompt for root partition
- local partitions=()
- local partition
- for partition in $(ls ${hdd}?)
- do capacity=$(df --human-readable --output=size ${partition} | tail --lines=1 | tr -d ' ')
- partitions+=( "${partition}" "${capacity}" off )
- done
- root_part=$( WizardDlg "${TR[dlg_part-${TR_KEY}]}" \
- --radiolist "${TR[mount_root-${TR_KEY}]}" 20 70 50 \
- ${partitions[@]} )
- [[ -n "${root_part}" ]] || exit
-
- # prompt to mount additional partitions
- local other=0
- local boot_part
- local home_part
- while [[ "${other}" != 3 ]]
- do other=$( WizardDlg "${TR[dlg_part-${TR_KEY}]}" --cancel-label "None" \
- --menu "${TR[mount_other-${TR_KEY}]}" 20 70 50 \
- 1 "/boot" 2 "/home" 3 "Done" )
- case $other in
- 1) boot_part=$( WizardDlg "${TR[dlg_part-${TR_KEY}]}" \
- --radiolist "${TR[mount_boot-${TR_KEY}]}" 20 70 50 \
- ${partitions[@]} )
- umount /mnt/boot &> /dev/null || true
- mkdir /mnt/boot &> /dev/null || true
- ;;
- 2) home_part=$( WizardDlg "${TR[dlg_part-${TR_KEY}]}" \
- --radiolist "${TR[mount_home-${TR_KEY}]}" 20 70 50 \
- ${partitions[@]} )
- umount /mnt/home &> /dev/null || true
- mkdir /mnt/home &> /dev/null || true
- ;;
- *) other=3
- ;;
- esac
- done
- ;;
- *) exit ;;
- esac
-
- # format unformatted partitions and mount partitions
- for partition in ${root_part} ${boot_part} ${home_part}
- do ! blkid ${partition} | grep ' TYPE="' &> /dev/null && \
- WizardDlg "${TR[dlg_part-${TR_KEY}]}" \
- --yesno "${partition} ${TR[format-${TR_KEY}]}" 20 70 && \
- mkfs.ext4 ${partition}
- blkid ${partition} | grep ' TYPE="' > /dev/null || exit
- done
- mount ${root_part} /mnt
- mount ${boot_part} /mnt/boot || [[ -z "${boot_part}" ]]
- mount ${home_part} /mnt/home || [[ -z "${home_part}" ]]
-}
-
-NoticeCustomize() { WizardDlg "" --msgbox "${TR[notice_customize-${TR_KEY}]}" 20 70 ; }
-
-SelectDefaults()
-{
- if WizardDlg "${TR[dlg_defaults-${TR_KEY}]}" --yesno "${TR[defaults-${TR_KEY}]}" 20 70
- then SetStateVar 'BASE' 'base parabola-base'
- SetStateVar 'INIT' 'openrc'
- fi
-}
-
-SelectBase()
-{
- if [[ -n "$(SetStateVar 'BASE')" && -n "$(GetStateVar 'INIT')" ]] ; then return 0 ; fi ;
-
- # prompt for base package set
- local base=$( WizardDlg "${TR[dlg_base-${TR_KEY}]}" \
- --radiolist "${TR[base-${TR_KEY}]}" 20 70 50 \
- 'core' "${TR[base_mini-${TR_KEY}]}" 'off' \
- 'posix' "${TR[base_posix-${TR_KEY}]}" 'on' )
- local base_packages=( 'base' $( [[ "${base}" == 'posix' ]] && echo 'parabola-base' || : ) )
- [[ -n "${base}" ]] && SetStateVar 'BASE' ${base_packages} || exit
-
- # prompt for init-system
- local init=$( WizardDlg "${TR[dlg_base-${TR_KEY}]}" \
- --radiolist "${TR[init-${TR_KEY}]}" 20 70 50 \
- 'openrc' "${TR[init_openrc-${TR_KEY}]}" 'off' \
- 'systemd' "${TR[init_systemd-${TR_KEY}]}" 'on' )
- [[ -n "${init}" ]] && SetStateVar 'INIT' ${init} || exit
-
- # prompt for local vs remote package repos if possible
- local install=$(GetStateVar 'INSTALL')
- local install=$( [[ "${install}" == 'prompt' ]] && \
- WizardDlg "${TR[dlg_base-${TR_KEY}]}" \
- --radiolist "${TR[install-${TR_KEY}]}" 20 70 50 \
- 'offline' "${TR[install_offline-${TR_KEY}]}" 'on' \
- 'online' "${TR[install_online-${TR_KEY}]}" 'off' )
- [[ -n "${install}" ]] && SetStateVar 'INSTALL' ${install} || exit
-}
-
-InstallBase()
-{
- local conf_regex=$( [[ "${init}" == 'openrc' ]] && echo "$PACCONF_NONSYSTEMD_REGEX" || \
- echo "$PACCONF_SYSTEMD_REGEX" )
- local install=$(GetStateVar 'INSTALL')
- local base_packages=$(GetStateVar 'BASE')
-
- sed -i "$conf_regex" /etc/pacman-${install}.conf
- cp /etc/pacman-${install}.conf /etc/pacman.conf
-
- # install standard packages
- pacstrap /mnt base ${base_packages[@]}
-}
-
-ConfigChroot()
-{
- genfstab -p /mnt >> /mnt/etc/fstab
- cp "${SESSION_STATE_FILE}" /mnt/root/
- cp "${SESSION_INCLUDE_FILE}" /mnt/root/
- cp "${CHROOT_ENVIRONMENT_FILE}" /mnt/root/
- chmod +x /mnt/root/${CHROOT_ENVIRONMENT_FILENAME}
- arch-chroot /mnt /root/${CHROOT_ENVIRONMENT_FILENAME}
- rm /mnt/root/${CHROOT_ENVIRONMENT_FILENAME}
-}
-
-NoticeOptional() { WizardDlg "" --msgbox "${TR[notice_optional-${TR_KEY}]}" 20 70 ; }
-
-InstallGrub()
-{
- # prompt to install GRUB
- local grub=$( WizardDlg "${TR[dlg_grub-${TR_KEY}]}" \
- --radiolist "${TR[grub-${TR_KEY}]}" 20 70 50 \
- 'yes' "${TR[yes-${TR_KEY}]}" 'on' \
- 'no' "${TR[no-${TR_KEY}]}" 'off' )
- [[ -n "${grub}" ]] || exit
- [[ "${grub}" == 'yes' ]] || return
-
- pacstrap /mnt grub grub2-theme-gnuaxiom
-
- # enable Parabola theme for grub
- sed -i "$GRUB_THEME_SED_CMD" /mnt/etc/default/grub
-}
-
-InstallWmDe()
-{
- # prompt to install a graphical environment
- local desktop=$( WizardDlg "${TR[dlg_wmde-${TR_KEY}]}" \
- --radiolist "${TR[gui-${TR_KEY}]}" 20 70 50 \
- 'yes' "${TR[yes-${TR_KEY}]}" 'on' \
- 'no' "${TR[no-${TR_KEY}]}" 'off' )
-
- # prompt for WM/DE
- local wmde=$( [[ "${desktop}" == 'no' ]] && echo 'cli' || \
- WizardDlg "${TR[dlg_wmde-${TR_KEY}]}" \
- --radiolist "${TR[wmde-${TR_KEY}]}" 20 70 50 \
- 'cli' "${TR[wmde_cli-${TR_KEY}]}" 'off' \
- 'lxde' "${TR[wmde_lxde-${TR_KEY}]}" 'on' \
- 'mate' "${TR[wmde_mate-${TR_KEY}]}" 'off' )
- [[ -n "${wmde}" ]] && SetStateVar 'WMDE' ${wmde} || exit
-
- # install graphical packages
- [[ "${wmde}" != 'cli' ]] && pacstrap /mnt parabola-desktop-${wmde} # TODO: parabola-desktop NYI
-
- # enable services
- cp "${CHROOT_SERVICES_FILE}" /mnt/root/
- chmod +x /mnt/root/${CHROOT_SERVICES_FILENAME}
- arch-chroot /mnt /root/${CHROOT_SERVICES_FILENAME}
- rm /mnt/root/${CHROOT_SERVICES_FILENAME}
-}
-
-CreateUser()
-{
- # prompt to create an unprivileged user login
- local user=$( WizardDlg "${TR[dlg_user-${TR_KEY}]}" \
- --radiolist "${TR[user-${TR_KEY}]}" 20 70 50 \
- 'yes' "${TR[yes-${TR_KEY}]}" 'on' \
- 'no' "${TR[no-${TR_KEY}]}" 'off' )
- [[ -n "${user}" ]] || exit
- [[ "${user}" == 'yes' ]] || return
-
- # create unprivileged user login
- cp "${CHROOT_LOGIN_FILE}" /mnt/root/
- chmod +x /mnt/root/${CHROOT_LOGIN_FILENAME}
- arch-chroot /mnt /root/${CHROOT_LOGIN_FILENAME}
- rm /mnt/root/${CHROOT_LOGIN_FILENAME}
-}
-
-Cleanup()
-{
- # clean-up
- arch-chroot /mnt pacman -R dialog --noconfirm &> /dev/null || true
- rm /mnt/root/${SESSION_STATE_FILENAME} &> /dev/null || true
- rm /mnt/root/${SESSION_INCLUDE_FILENAME} &> /dev/null || true
- rm /mnt/root/${CHROOT_ENVIRONMENT_FILENAME} &> /dev/null || true
- rm /mnt/root/${CHROOT_LOGIN_FILENAME} &> /dev/null || true
- rm /mnt/root/${CHROOT_SERVICES_FILENAME} &> /dev/null || true
- umount /mnt/boot &> /dev/null || true
- umount /mnt/home &> /dev/null || true
- umount /mnt &> /dev/null || true
-}
-
-
-## main entry ##
-
-set -o errexit -o errtrace
-trap 'trap - ERR ; clear ; LogError() { : ; } ; Cleanup ;' EXIT INT TERM
-trap 'trap - EXIT INT TERM ; clear ; LogError "${FUNCNAME[0]}" ${LINENO} ;' ERR
-
-Init # Check for isorepo existence and internet connection
-InitKeyring # Initialize the pacman keyring
-Partition # Partition and mount target disks
-NoticeCustomize # Explain that the next choices are mandatory but interchangeable
-SelectDefaults # Choose to install the standard system, or to customize
-SelectBase # Select base system
-InstallBase # Install base system
-ConfigChroot # Generate fstab and configure system in-chroot (non-interactive)
-NoticeOptional # Explain that the next choices are optional
-InstallGrub # Install grub
-InstallWmDe # Install GUI packages and configure services in-chroot
-CreateUser # Create unpriviledged login user in-chroot
-Cleanup # Remove helper scripts from the chroot and un-mount target disks
-
-exit
diff --git a/configs/profile/root-image/root/.session/session-common.sh.inc b/configs/profile/root-image/root/.session/session-common.sh.inc
deleted file mode 100644
index fc665f1..0000000
--- a/configs/profile/root-image/root/.session/session-common.sh.inc
+++ /dev/null
@@ -1,112 +0,0 @@
-readonly SESSION_DIR="$(cd $(dirname ${BASH_SOURCE[0]}) ; pwd)"
-readonly WIZARD_DIR="${SESSION_DIR}"/install
-readonly SESSION_INCLUDE_FILENAME=session-common.sh.inc # this file
-readonly SESSION_STATE_FILENAME=.session_state
-readonly TRANSLATIONS_FILENAME=translations.sh.inc
-readonly CHROOT_ENVIRONMENT_FILENAME=chroot-environment.sh
-readonly CHROOT_LOGIN_FILENAME=chroot-login.sh
-readonly CHROOT_SERVICES_FILENAME=chroot-services.sh
-readonly SESSION_INCLUDE_FILE="${SESSION_DIR}"/${SESSION_INCLUDE_FILENAME} # this file
-readonly SESSION_STATE_FILE="${SESSION_DIR}"/${SESSION_STATE_FILENAME}
-readonly TRANSLATIONS_FILE="${SESSION_DIR}"/${TRANSLATIONS_FILENAME}
-readonly CHROOT_ENVIRONMENT_FILE="${WIZARD_DIR}"/${CHROOT_ENVIRONMENT_FILENAME}
-readonly CHROOT_LOGIN_FILE="${WIZARD_DIR}"/${CHROOT_LOGIN_FILENAME}
-readonly CHROOT_SERVICES_FILE="${WIZARD_DIR}"/${CHROOT_SERVICES_FILENAME}
-
-
-## sanity checks ##
-
-! which dialog &> /dev/null && echo "can not find the \`dialog\` program" && exit
-(( $EUID )) && echo "this program requires superuser privilege" && exit
-
-
-## state helpers ##
-
-SetStateVar() # (var_name value*)
-{
- local var_name=$1 ; shift ;
- local value=$*
-
- sed -i "/^${var_name}=.*/d" "${SESSION_STATE_FILE}"
- echo "${var_name}=${value}" >> "${SESSION_STATE_FILE}"
-}
-
-GetStateVar() # (var_name [def_value])
-{
- local var_name=$1
- local def_value=$2
- local stored_value=$(grep "${var_name}=" "${SESSION_STATE_FILE}" | cut -d '=' -f 2)
-
- if [[ -n "${stored_value}" ]] && [[ "${stored_value}" != '_UNDEFINED_' ]]
- then echo ${stored_value}
- else echo ${def_value}
- fi
-}
-
-
-## dialog prompt helpers ##
-
-InitDlg() # (title prompt default_option options*)
-{
- declare -l title="$1"
- declare -l prompt="$2"
- declare -l default_option="$3"
- declare -l options=("${@:4}")
-
- dialog --stdout --sleep 1 --timeout 30 --no-tags --no-cancel \
- --backtitle "$title" \
- --default-item "${default_option}" \
- --menu "$prompt" $H $W $N_ITEMS "${options[@]}"
-}
-
-WizardDlg() # (title dialog_args*)
-{
- declare -l title="$1"
- declare -l options=("${@:2}")
-
- # when the "Cancel" button or <ESC> key is pressed, in a '--msgbox',
- # dialog exits with status 1; but nothing is printed to STDOUT
- # install.sh runs under `set -e`; so we can not propogate the non-zero status,
- # otherwise, callers would need to supress it
- # callers should instead, exit upon the empty result, when a selection is mandatory
- #
- # the exception is '--yesno' dialogs, which exits with status 1 for the 'No' button
- # the non-zero status is propogated for '--yesno' dialogs; and callers must handle it
- # ASSERT: '--yesno' dialogs should pass '--yesno' as positional parameter #2 (options[0])
- dialog --stdout --sleep 1 \
- --backtitle "${TR[wizard-${TR_KEY}]}" \
- --title "${title}" "${options[@]}" || \
- ( (( $? == 1 )) && [[ "${options[0]}" != '--yesno' ]] )
- clear >&2
-}
-
-
-## error logging helpers ##
-
-LogError() # (source_file func_name line_n)
-{
- local SOURCE_FILE="$1"
- local FUNC_NAME="$( [[ -n "$2" ]] && echo "$2" || echo "${SOURCE_FILE}" )"
- local LINE_N=$3
- local N_CONTEXT_LINES=3
- local N_LINES=$(( 1 + (2 * N_CONTEXT_LINES) ))
- local BEGIN_LINE_N=$(( LINE_N - N_CONTEXT_LINES ))
- local END_LINE_N=$(( LINE_N + N_CONTEXT_LINES ))
- local marker line
-
- echo "ERROR: in ${FUNC_NAME}::${LINE_N}" >&2
- sed 's|\\$||' "${SOURCE_FILE}" | pr -tn | \
- tail -n +${BEGIN_LINE_N} | head -n ${N_LINES} | tr '\n' '\n' | \
- while read line
- do line_n=$(sed -E 's|([0-9]+).*|\1|' <<<${line})
- (( line_n == LINE_N )) && marker='==>' || marker=' '
- printf "%s %s\n" "${marker}" "${line}" >&2
- done
-}
-
-
-## translations for user-facing strings ##
-
-readonly TRANSLATIONS=" en es gl pt " # pending translations 'eo' 'fr' 'it' 'pl'
-readonly TR_KEY=$(GetStateVar 'TR_KEY' 'en')
-source "${TRANSLATIONS_FILE}"
diff --git a/configs/profile/root-image/root/.session/session-init.sh b/configs/profile/root-image/root/.session/session-init.sh
deleted file mode 100755
index 250f39a..0000000
--- a/configs/profile/root-image/root/.session/session-init.sh
+++ /dev/null
@@ -1,103 +0,0 @@
-#!/bin/bash
-
-source $(cd $(dirname ${BASH_SOURCE[0]}) ; pwd)/session-common.sh.inc
-
-
-readonly TIMEOUT=30
-readonly H=15
-readonly W=42
-readonly N_ITEMS=10
-
-readonly LANG_TITLE="System language selection"
-readonly LANG_PROMPT="Choose your language:"
-readonly LANG_DEFAULT='en_US.UTF-8'
-readonly KEYMAP_TITLE="System keymap selection"
-readonly KEYMAP_PROMPT="Choose your keymap:"
-readonly KEYMAP_DEFAULT='us'
-readonly SESSION_TITLE="Launch installer or command-line"
-readonly SESSION_PROMPT="Would you like to start the installer, or drop onto the command line?"
-
-readonly -a LANGUAGES=( $(cat "${WIZARD_DIR}"/LANGUAGES) )
-readonly -a ESPERANTO_LANG_PACKS=( 'iceweasel-l10n-es-eo' )
-readonly -a SPANISH_LANG_PACKS=( 'iceweasel-l10n-es-ar' 'icedove-l10n-es-ar'
- 'iceweasel-l10n-es-cl'
- 'iceweasel-l10n-es-es' 'icedove-l10n-es-es'
- 'iceweasel-l10n-es-mx' )
-readonly -a FRENCH_LANG_PACKS=( 'iceweasel-l10n-fr' 'icedove-l10n-fr' )
-readonly -a GALEGO_LANG_PACKS=( 'iceweasel-l10n-gl' 'icedove-l10n-gl' )
-readonly -a ITALIAN_LANG_PACKS=( 'iceweasel-l10n-it' 'icedove-l10n-it' )
-readonly -a POLISH_LANG_PACKS=( 'iceweasel-l10n-pl' 'icedove-l10n-pl' )
-readonly -a PORTUGUESE_LANG_PACKS=( 'iceweasel-l10n-pt-br' 'icedove-l10n-pt-br' )
-
-readonly -a KEYMAPS=( $(cat "${WIZARD_DIR}"/KEYMAPS_X) )
-
-readonly -a ALL_SESSIONS=( 'live' "Live desktop" \
- 'calamares' "GUI installer" \
- 'wizard' "TUI installer" \
- 'cli' "Command line" )
-case "$DESKTOP_SESSION" in # per .bash_profile
- 'lxde') readonly SESSIONS=( "${ALL_SESSIONS[@]}" ) ; readonly SESSION_DEFAULT='live' ;;
- 'mini') readonly SESSIONS=( "${ALL_SESSIONS[@]:2}" ) ; readonly SESSION_DEFAULT='calamares' ;;
- * ) readonly SESSIONS=( "${ALL_SESSIONS[@]:4}" ) ; readonly SESSION_DEFAULT='cli' ;;
-esac
-
-
-## prompt for language if not already selected ##
-
-Language=$(GetStateVar 'LANG')
-if [[ "${Language}" == '_UNDEFINED_' ]]
-then Language=$( InitDlg "$LANG_TITLE" "$LANG_PROMPT" $LANG_DEFAULT "${LANGUAGES[@]}" )
- [[ "${Language}" == "" ]] && Language=$LANG_DEFAULT
-
- logger "$0: selected language='${Language}'"
-
- # inject language packs into the install wizard package set
- Lang=${Language/_*/}
- case ${Lang} in
- 'eo') echo "${ESPERANTO_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- 'fr') echo "${FRENCH_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- 'gl') echo "${GALEGO_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- 'it') echo "${ITALIAN_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- 'pl') echo "${POLISH_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- 'pt') echo "${PORTUGUESE_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- 'es') echo "${SPANISH_LANG_PACKS[@]}" >> "${WIZARD_DIR}"/packages ;;
- esac
-
- # prepare locale
- echo "LANG=${Language}" > /etc/locale.conf
- SetStateVar 'LANG' ${Language}
-
- # prepare installer translations
- TrKey=$( [[ "${TRANSLATIONS}" =~ " ${Lang} " ]] && echo ${Lang} || echo 'en' )
- SetStateVar 'TR_KEY' ${TrKey}
-fi
-
-
-## prompt for X11 keymap if not already selected ##
-
-Keymap=$(GetStateVar 'XKBMAP')
-if [[ "${Keymap}" == '_UNDEFINED_' ]]
-then Keymap=$( InitDlg "$KEYMAP_TITLE" "$KEYMAP_PROMPT" $KEYMAP_DEFAULT "${KEYMAPS[@]}" )
- [[ "${Keymap}" == "" ]] && Keymap=$KEYMAP_DEFAULT
-
- logger "$0: selected keymap='${Keymap}'"
-
- # set keymap
- setxkbmap ${Keymap} 2> /dev/null
- SetStateVar 'XKBMAP' ${Keymap}
-fi
-
-
-## prompt to launch installer or CLI ##
-Session=$(GetStateVar 'SESSION')
-if [[ "${Session}" == '_UNDEFINED_' ]]
-then Session=$( InitDlg "$SESSION_TITLE" "$SESSION_PROMPT" $SESSION_DEFAULT "${SESSIONS[@]}" )
- [[ "${Session}" == "" ]] && Session=$SESSION_DEFAULT
-
- logger "$0: selected interface='${Session}'"
-
- # set installer interface
- SetStateVar 'SESSION' ${Session}
-fi
-
-clear
diff --git a/configs/profile/root-image/root/.session/translations.sh.inc b/configs/profile/root-image/root/.session/translations.sh.inc
deleted file mode 100644
index 99cbe91..0000000
--- a/configs/profile/root-image/root/.session/translations.sh.inc
+++ /dev/null
@@ -1,331 +0,0 @@
-## translations for user-facing strings ##
-
-declare -A TR=(
- ## common ##
-
- [wizard-en]="Parabola Installation Wizard"
- [wizard-eo]="Parabola Instala Asistilo"
- [wizard-en]="Instalación de Parabola"
- [wizard-gl]="Instalación de Parabola"
- [wizard-pt]="Instalação do Parabola"
-
- [yes-en]="Yes"
- [yes-eo]="Jes"
- [yes-es]="Si"
- [yes-gl]="Si"
- [yes-pt]="Sim"
-
- [no-en]="No"
- [no-eo]="Ne"
- [no-es]="No"
- [no-gl]="Non"
- [no-pt]="Não"
-
-
- ## install.sh::Init() ##
-
- [internet-en]="Detecting Internet connection"
- [internet-eo]="Detktado de retkonekto"
- [internet-es]="Detectando conexión a Internet"
- [internet-gl]="Detectando conexión a Internet"
- [internet-pt]="Detectando conexão com a Internet"
-
-
- ## install.sh::Partition() ##
-
- [dlg_part-en]="Format and Mount Partitions"
- [dlg_part-eo]="Strukturu kaj Muntu Subdiskojn"
- [dlg_part-es]="Formatear y Montar Particiones"
- [dlg_part-gl]="Formatear e Montar Particiones"
- [dlg_part-pt]="Formatar e Montar as Partições"
-
- [hdd-en]="Select Hard Disk:"
- [hdd-eo]="Selektu Fiksitan Diskon:"
- [hdd-es]="Selecciona Disco Duro:"
- [hdd-gl]="Selecciona Disco Duro:"
- [hdd-pt]="Escolha o Disco:"
-
- [part-en]="Partitioning method:"
- [part-eo]="Dispartigan metodon:"
- [part-es]="Metodo de Particionado:"
- [part-gl]="Metodo de Particionado:"
- [part-pt]="Método de Particionamento:"
-
- [part_auto-en]="Use the entire disk (with 1GB swap)"
- [part_auto-eo]="Uzu la tutan diskon (kun 1GB permutaĵo)"
- [part_auto-es]="Usar todo el disco (con 1GB swap)"
- [part_auto-gl]="Usar todo o disco (con 1GB swap)"
- [part_auto-pt]="Usar todo o disco (com o 1GB swap)"
-
- [part_man-en]="Manual partitioning"
- [part_man-eo]="Mana dispartigo"
- [part_man-es]="Usar gparted para personalizar"
- [part_man-gl]="Usar gparted para personalizar"
- [part_man-pt]="Usar o gparted para personalizar"
-
- [mount_root-en]="Mount root / partition:"
- [mount_root-eo]="Muntu rootan / subdiskon:"
- [mount_root-es]="Montar particion root /:"
- [mount_root-gl]="Montar particion root /:"
- [mount_root-pt]="Montar a partição root /:"
-
- [mount_extra-en]="Mount another partition?"
- [mount_extra-eo]="Muntu alia subdiskon?"
- [mount_extra-es]="¿Montar otra particion?"
- [mount_extra-gl]="¿Montar outra particion?"
- [mount_extra-pt]="Quer montar outra partição?"
-
- [mount_boot-en]="Mount /boot partition:"
- [mount_boot-eo]="Muntu /boot subdiskon:"
- [mount_boot-es]="Montar particion /boot:"
- [mount_boot-gl]="Montar particion /boot:"
- [mount_boot-pt]="Montar a partição /boot:"
-
- [mount_home-en]="Mount /home partition"
- [mount_home-eo]="Muntu /home subdiskon:"
- [mount_home-es]="Montar particion /home:"
- [mount_home-gl]="Montar particion /home:"
- [mount_home-pt]="Montar a partição /home:"
-
- [format-en]="does not appear to be formatted. The installer can not continue unless it is formatted. Do you want to format it with EXT4 now?"
- [format-eo]="ne aspektas kiel strukturita. La instalilo ne progresos, krom se ĝin estas strukturita. Ĉu vi volas strukturas ĝin kiel EXT4 nun?"
- [format-es]="no parece estar formateado. El instalador no puede continuar a menos que esté formateado. ¿Quieres formatearlo con EXT4 ahora?"
- [format-gl]="non parece ter formato. O instalador non pode continuar a menos que estea formatado. ¿Quere formatalo agora con EXT4?"
- [format-pt]="não parece estar formatado. O instalador não pode continuar a menos que seja formatado. Quer formatar com EXT4 agora?"
-
-
- ## install.sh::NoticeCustomize() ##
-
- [notice_customize-en]="The next few steps will allow you to customize your Parabola system. If you are unsure about what to choose, the Standard Parabola Base system is suitable for most people; and most of these options can be easily changed at any later time."
- [notice_customize-eo]="La sekva paŝoj permesos vin, tajlori vian sistemon de Parabola. Se vi ne sencerta pri kiu elekti, la Laŭnorma Sistemo de Parabola, estas taŭga por plej homojn; kaj la plejparto de tiuj agordoj, estas ŝanĝebla facile iam pli malfrue."
- [notice_customize-es]="Los siguientes pasos le permitirán personalizar su Parabola sistema. Si no está seguro de qué elegir, las sistema Parabola Base Estándar son adecuadas para la mayoría de las personas; y la mayoría de estas opciones se pueden cambiar fácilmente en cualquier momento posterior."
- [notice_customize-gl]="Os seguintes pasos permitiranche personalizar o seu sistema Parabola. Se non estás seguro de que escoller, as sistema Parabola Base Estándar son adecuadas para a maioría da xente; e a maioría destas opcións pódense cambiar facilmente en calquera momento posterior."
- [notice_customize-pt]="Os próximos passos permitirão personalizar seu sistema Parabola. Se você não tiver certeza sobre o que escolher, as sistema Parabola Base Padrão são adequadas para a maioria das pessoas; e a maioria dessas opções pode ser facilmente alterada a qualquer momento."
-
-
- ## install.sh::SelectDefaults() ##
-
- [dlg_defaults-en]="Base System Options"
- [dlg_defaults-eo]="Agordoj por Bazan Sistemon"
- [dlg_defaults-es]="Opciones para Sistema Base"
- [dlg_defaults-gl]="Opcións para Sistema Base"
- [dlg_defaults-pt]="Opções para Sistema Base"
-
- [defaults-en]="Would you like to install the Standard Parabola Base system?"
- [defaults-eo]="Ĉu vi volas instali la Laŭnorman Bazan Sistemon de Parabola?"
- [defaults-es]="¿Desea instalar sistema Parabola Base Estándar?"
- [defaults-gl]="¿Quere instalar sistema Parabola Base Estándar?"
- [defaults-pt]="Deseja instalar o sistema Parabola Base Padrão?"
-
-
- ## install.sh::SelectBase() ##
-
- [dlg_base-en]="Install Base System"
- [dlg_base-eo]="Instalu Bazan Sistemon"
- [dlg_base-es]="Instalar Sistema Base"
- [dlg_base-gl]="Instalar Sistema Base"
- [dlg_base-pt]="Instalar o Sistema Base"
-
- [base-en]="Select a base system:"
- [base-eo]="Selektu bazan sistemon:"
- [base-es]="Selecciona la base sistema:"
- [base-gl]="Selecciona a base sistema:"
- [base-pt]="Escolha a base sistema:"
-
- [base_mini-en]="Bare-bones minimal system"
- [base_mini-eo]="Minimuma sistemon"
- [base_mini-es]="Sistema mínimo"
- [base_mini-gl]="Sistema mínimo"
- [base_mini-pt]="Sistema mínimo"
-
- [base_posix-en]="Complete POSIX-compliant system"
- [base_posix-eo]="Plena POSIX-cedaema sistemon"
- [base_posix-es]="Sistema de cumplimiento completo"
- [base_posix-gl]="Sistema POSIX completo"
- [base_posix-pt]="Sistema POSIX-compatível completo"
-
- [init-en]="Select an init-system:"
- [init-eo]="Selektu pravaloriza-sistemon:"
- [init-es]="Selecciona la sistema de inicialización:"
- [init-gl]="Selecciona a sistema de inicialización:"
- [init-pt]="Escolha a sistema de inicialização:"
-
- [init_openrc-en]="OpenRC - (Versatile init-system)"
- [init_openrc-eo]="OpenRC - (Diversutila pravaloriza-sistemon)"
- [init_openrc-es]="OpenRC - (Sistema de inicialización versátil)"
- [init_openrc-gl]="OpenRC - (Versátil sistema de inicialización)"
- [init_openrc-pt]="OpenRC - (Versátil sistema de inicialização)"
-
- [init_systemd-en]="SystemD - (Standard init-system)"
- [init_systemd-eo]="SystemD - (Laŭnorma pravaloriza-sistemon)"
- [init_systemd-es]="SystemD - (Sistema de inicialización estándar)"
- [init_systemd-gl]="SystemD - (Sistema de inicialización estándar)"
- [init_systemd-pt]="SystemD - (Sistema de inicialização padrão)"
-
- [install-en]="Install from LiveISO or network?"
- [install-eo]="Instalu el LiveISO aŭ interreto?"
- [install-es]="¿Instalar desde LiveISO o red?:"
- [install-gl]="Que instalas desde LiveISO ou redes?:"
- [install-pt]="Instalar a partir da LiveISO ou rede?:"
-
- [install_offline-en]="Offline install (fast)"
- [install_offline-eo]="Eksterreta instaladon (rapida)"
- [install_offline-es]="Instalación sin conexión (rápida)"
- [install_offline-gl]="Instalación sen conexión (rápido)"
- [install_offline-pt]="Instalação offline (rápida)"
-
- [install_online-en]="Online install (slow - internet required)"
- [install_online-en]="Enreta instaladon (malrapida - interreto bezonita)"
- [install_online-es]="Instalación en línea (lenta - requiere internet)"
- [install_online-gl]="Instalación en liña (lenta - requírese internet)"
- [install_online-pt]="Instalação online (lenta - é necessária internet)"
-
-
- ## chroot-environment.sh ##
-
- [dlg_config-en]="Configure System"
- [dlg_config-eo]="Agordu Sistemon"
- [dlg_config-es]="Configuración del Sistema"
- [dlg_config-gl]="Configuración do Sistema"
- [dlg_config-pt]="Configuração do Sistema"
-
- [hostname-en]="Enter Hostname:"
- [hostname-es]="Introduce el nombre del sistema:"
- [hostname-gl]="Introduce o nome do sistema:"
- [hostname-pt]="Adicione o nome do sistema:"
-
- [timezone-en]="Enter your Time Zone\ne.g. America/New_York\ne.g. Europe/Madrid:"
- [timezone-eo]="Entajpu vian horzonon\ne.g. America/New_York\ne.g. Europe/Madrid:"
- [timezone-es]="Introduce la Zona Horaria:\nPor ejemplo: America/New_York\nPor ejemplo: Europe/Madrid:"
- [timezone-gl]="Introduce a Zona Horaria:\nPor ejemplo: America/New_York\nPor ejemplo: Europe/Madrid:"
- [timezone-pt]="Adicione o Fuso Horário:\nPor exemplo: America/New_York\nexemplo: Europe/Madrid:"
-
- [keymap-en]="Select Keymap:"
- [keymap-eo]="Selektu Klavmapon:"
- [keymap-es]="Selecciona la distribucion del teclado:"
- [keymap-gl]="Selecciona a distribucion do teclado:"
- [keymap-pt]="Escolha a distribuição do teclado:"
-
- [locales-en]="Select Locales:"
- [locales-eo]="Selektu Lokaĵaron:"
- [locales-es]="Selecciona las Localizaciones:"
- [locales-gl]="Selecciona as Localizacions:"
- [locales-pt]="Escolha as Localizações:"
-
- [language-en]="Select your language:"
- [language-eo]="Selektu vian lingvon:"
- [language-es]="Selecciona tu idioma:"
- [language-gl]="Selecciona o teu idioma:"
- [language-pt]="Escolha a sua língua:"
-
- [root_pass-en]="Enter a password for the 'root' administator:"
- [root_pass-eo]="Entajpu pasvorton por la 'root' ĉefuzanto:"
- [root_pass-es]="Inserta la contraseña para el 'root' administrador:"
- [root_pass-gl]="Insire o contrasinal para o 'root' administrador:"
- [root_pass-pt]="Insira a senha para o 'root' administrador:"
-
- [root_pass2-en]="Repeat the password for the 'root' administator:"
- [root_pass2-eo]="Ripetu pasvorton por la 'root' ĉefuzanto:"
- [root_pass2-es]="Repite la contraseña para el 'root' administrador:"
- [root_pass2-gl]="Repite o contrasinal para o 'root' administrador:"
- [root_pass2-pt]="Repita a senha para o 'root' administrador:"
-
-
- ## install.sh::NoticeOptional() ##
-
- [notice_optional-en]="Parabola is now completely installed and usable. However, this installer has not installed a bootloader. A bootloader must be configured to boot Parabola. If you plan to configure a bootloader yourself, you can skip the next step. All of the remaining steps are strictly optional; but most people will want to install the GRUB bootloader, at least."
- [notice_optional-eo]="Parabola estas nun instalita plene kaj uzeble. Kvankam, ĉi tio instalilo ne instalis praŝargilon. Se vi intencas manipuli la praŝargilon vi mem, vi povas preterpasi la sekva paŝo. Ĉuij el la restantaj paŝoj estas strikte laŭvolaj; sed plej homoj estus bezoni instali la GRUB praŝargilon, almenaŭ."
- [notice_optional-es]="Parabola ahora está completamente instalado y utilizable. Sin embargo, este instalador no ha instalado un gestor de arranque. Se debe configurar un cargador de arranque para arrancar. Si planea gestionar el gestor de arranque usted mismo, puede omitir el siguiente paso. Todos los pasos restantes son estrictamente opcionales; pero la mayoría de las personas querrán instalar el gestor de arranque GRUB, al menos."
- [notice_optional-gl]="Parabola está agora completamente instalado e utilizable. Non obstante, este instalador non instalou un bootloader. Debe configurarse un cargador de arranque para arrincar. Se planea arranxar o cargador de inicio, pode saltar o seguinte paso. Todos os pasos restantes son estrictamente opcionais; pero a maioría da xente quere instalar o cargador de arranque GRUB, polo menos."
- [notice_optional-pt]="Parabola agora está completamente instalado e utilizável. No entanto, este instalador não instalou um gerenciador de inicialização. Um bootloader deve ser configurado para inicializar. Se você planeja alterar o gerenciador de inicialização, pode pular a próxima etapa. Todas as etapas restantes são estritamente opcionais; mas a maioria das pessoas desejará instalar o gerenciador de inicialização GRUB, pelo menos."
-
-
- ## install.sh::InstallGrub() ##
-
- [dlg_grub-en]="(Optional) Install GRUB"
- [dlg_grub-eo]="(Laŭvola) Instalu GRUB"
- [dlg_grub-es]="(Opcional) Instalar GRUB"
- [dlg_grub-gl]="(Opcional) Instalar GRUB"
- [dlg_grub-pt]="(Opcional) Instalar o GRUB"
-
- [grub-en]="Would you like to install GRUB?"
- [grub-eo]="Ĉu vi volas instali GRUB-on?"
- [grub-es]="¿Desea instalar GRUB?"
- [grub-gl]="¿Quere instalar GRUB?"
- [grub-pt]="Deseja instalar o GRUB?"
-
-
- ## install.sh::InstallWmde() ##
-
- [dlg_wmde-en]="(Optional) Install Parabola Desktop"
- [dlg_wmde-eo]="(Optional) Instalu Parabola Labortablon"
- [dlg_wmde-es]="(Opcional) Instalar Parabola Escritorio"
- [dlg_wmde-gl]="(Opcional) Instalar Parabola Escritorio"
- [dlg_wmde-pt]="(Opcional) Instalar Parabola Ambiente Gráfico"
-
- [gui-en]="Would you like to install a graphical desktop environment?"
- [gui-eo]="Ĉu vi volas instali grafikan ĉirkaŭaĵon?"
- [gui-es]="¿Desea la Escritorio?"
- [gui-gl]="¿Quere a Escritorio?"
- [gui-pt]="Deseja a Ambiente Gráfico?"
-
- [wmde-en]="Select a graphical environment:"
- [wmde-eo]="Selektu grafikan ĉirkaŭaĵon:"
- [wmde-es]="Selecciona la Escritorio:"
- [wmde-gl]="Selecciona a Escritorio:"
- [wmde-pt]="Escolha a Ambiente Gráfico:"
-
- [wmde_cli-en]="Command-line only"
- [wmde_cli-eo]="Komandlinion nur"
- [wmde_cli-es]="Solo línea de comandos"
- [wmde_cli-gl]="Só en liña de comandos"
- [wmde_cli-pt]="Apenas linha de comando"
-
- [wmde_lxde-en]="LXDE desktop environment"
- [wmde_lxde-eo]="LXDE labortablan ĉirkaŭaĵon"
- [wmde_lxde-es]="LXDE entorno de escritorio"
- [wmde_lxde-gl]="LXDE ambiente de escritorio"
- [wmde_lxde-pt]="LXDE ambiente gráfico"
-
- [wmde_mate-en]="Mate desktop environment"
- [wmde_mate-eo]="Mate labortablan ĉirkaŭaĵon"
- [wmde_mate-es]="Mate escritorio"
- [wmde_mate-gl]="Mate escritorio"
- [wmde_mate-pt]="Mate ambiente gráfico"
-
-
- ## install.sh::CreateUser() ##
-
- [dlg_user-en]="(Optional) Create User Account"
- [dlg_user-eo]="(Optional) Kreiu Konton de Uazanto"
- [dlg_user-es]="(Opcional) Crear Cuenta de Usuario"
- [dlg_user-gl]="(Opcional) Crear Conta de Usuario"
- [dlg_user-pt]="(Opcional) Adicionar uma Conta de Usuário"
-
- [user-en]="Would you like to create a login user?"
- [user-eo]="Ĉu vi volas kreias salutan uzanton?"
- [user-es]="¿Desea crear un usuario de inicio de sesión?"
- [user-gl]="¿Quere crear un usuario de inicio de sesión?"
- [user-pt]="Deseja criar um usuário de login?"
-
-
- ## chroot-login.sh ##
-
- [user_login-en]="Enter a username for the login user:"
- [user_login-eo]="Entajpu uzantonomon por la salutan uzanto:"
- [user_login-es]="Introduce nombre de usuario:"
- [user_login-gl]="Introduce un nome de usuario:"
- [user_login-pt]="Insira o nome do usuário:"
-
- [user_pass-en]="Enter a password for login user:"
- [user_pass-eo]="Entajpu pasvorton por la salutan uzanto:"
- [user_pass-es]="Introduce la contraseñara para el usuario:"
- [user_pass-gl]="Introduce o contrasinal para o usuario:"
- [user_pass-pt]="Insira a senha para o usuário:"
-
- [user_pass2-en]="Repeat the password for login user:"
- [user_pass2-eo]="Ripetu pasvorton por la salutan uzanto:"
- [user_pass2-es]="Repite la contraseñara para el usuario:"
- [user_pass2-gl]="Repite o contrasinal:"
- [user_pass2-pt]="Repita a senha:"
-)