From f5d62fdcd4a6d351fa25af3b3e443ba4de67a802 Mon Sep 17 00:00:00 2001 From: David P Date: Fri, 29 Sep 2017 14:18:19 -0300 Subject: Added configs/profile-openrc --- configs/mate-openrc/aitab | 3 + configs/mate-openrc/build.sh | 252 +++++++++++++++++++ .../loader/entries/parabolaiso-x86_64-cd.conf | 4 + .../loader/entries/parabolaiso-x86_64-usb.conf | 4 + .../loader/entries/uefi-shell-v1-x86_64.conf | 2 + .../loader/entries/uefi-shell-v2-x86_64.conf | 2 + configs/mate-openrc/efiboot/loader/loader.conf | 2 + configs/mate-openrc/isolinux/isolinux.cfg | 6 + configs/mate-openrc/mkinitcpio.conf | 2 + configs/mate-openrc/packages.both | 140 +++++++++++ configs/mate-openrc/packages.i686 | 0 configs/mate-openrc/packages.x86_64 | 1 + configs/mate-openrc/pacman.conf | 128 ++++++++++ configs/mate-openrc/root-image/etc/conf.d/agetty | 8 + configs/mate-openrc/root-image/etc/conf.d/hostname | 2 + configs/mate-openrc/root-image/etc/fstab | 0 configs/mate-openrc/root-image/etc/hostname | 1 + configs/mate-openrc/root-image/etc/locale.conf | 1 + configs/mate-openrc/root-image/etc/motd | 14 ++ configs/mate-openrc/root-image/etc/pam.d/su | 6 + .../root-image/etc/skel/.config/caja/accels | 133 ++++++++++ .../etc/skel/.config/caja/desktop-metadata | 23 ++ .../root-image/etc/skel/.config/dconf/user | Bin 0 -> 5534 bytes .../etc/skel/.config/gtk-2.0/gtkfilechooser.ini | 11 + .../etc/skel/.config/volumeicon/volumeicon | 25 ++ configs/mate-openrc/root-image/etc/skel/.directory | 6 + .../mate-openrc/root-image/etc/sudoers.d/g_wheel | 1 + .../root-image/etc/udev/rules.d/81-dhcpcd.rules | 1 + configs/mate-openrc/root-image/etc/wallpaper.png | Bin 0 -> 831159 bytes .../root-image/root/.automated_script.sh | 34 +++ configs/mate-openrc/root-image/root/.codecheck | 2 + .../root/.config/autostart/.keymap.desktop | 7 + .../root/.config/autostart/.language.sh.desktop | 9 + .../root-image/root/.config/caja/accels | 133 ++++++++++ .../root-image/root/.config/caja/desktop-metadata | 24 ++ .../mate-openrc/root-image/root/.config/dconf/user | Bin 0 -> 6616 bytes .../root/.config/gtk-2.0/gtkfilechooser.ini | 11 + .../root-image/root/.config/volumeicon/volumeicon | 25 ++ configs/mate-openrc/root-image/root/.directory | 6 + configs/mate-openrc/root-image/root/.keymap.sh | 116 +++++++++ configs/mate-openrc/root-image/root/.language.sh | 35 +++ .../.scriptsInstallation/language/en/install.sh | 217 +++++++++++++++++ .../language/en/systemConfig.sh | 271 +++++++++++++++++++++ .../language/en/userAccount.sh | 13 + .../.scriptsInstallation/language/es/install.sh | 217 +++++++++++++++++ .../language/es/systemConfig.sh | 271 +++++++++++++++++++++ .../language/es/userAccount.sh | 13 + .../.scriptsInstallation/language/gl/install.sh | 216 ++++++++++++++++ .../language/gl/systemConfig.sh | 271 +++++++++++++++++++++ .../language/gl/userAccount.sh | 13 + .../.scriptsInstallation/language/pt/install.sh | 217 +++++++++++++++++ .../language/pt/systemConfig.sh | 271 +++++++++++++++++++++ .../language/pt/userAccount.sh | 13 + .../root/.scriptsInstallation/parabolaicon.png | Bin 0 -> 857 bytes .../root-image/root/.scriptsInstallation/x11.sh | 3 + .../root-image/root/.themes/Parabola/index.theme | 13 + configs/mate-openrc/root-image/root/.xinitrc | 12 + configs/mate-openrc/root-image/root/.zlogin | 2 + .../root/Desktop/Parabola Installation CLI.desktop | 12 + .../root-image/root/customize_root_image.sh | 28 +++ configs/mate-openrc/syslinux/parabolaiso.cfg | 11 + configs/mate-openrc/syslinux/parabolaiso_head.cfg | 25 ++ configs/mate-openrc/syslinux/parabolaiso_pxe32.cfg | 32 +++ configs/mate-openrc/syslinux/parabolaiso_pxe64.cfg | 32 +++ .../syslinux/parabolaiso_pxe_32_inc.cfg | 3 + .../syslinux/parabolaiso_pxe_both_inc.cfg | 4 + .../syslinux/parabolaiso_pxe_choose.cfg | 11 + configs/mate-openrc/syslinux/parabolaiso_sys32.cfg | 9 + configs/mate-openrc/syslinux/parabolaiso_sys64.cfg | 9 + .../syslinux/parabolaiso_sys_32_inc.cfg | 3 + .../syslinux/parabolaiso_sys_both_inc.cfg | 4 + .../syslinux/parabolaiso_sys_choose.cfg | 11 + configs/mate-openrc/syslinux/parabolaiso_tail.cfg | 27 ++ configs/mate-openrc/syslinux/splash.png | Bin 0 -> 32253 bytes configs/mate-openrc/syslinux/syslinux.cfg | 5 + configs/profile-openrc/aitab | 3 + configs/profile-openrc/build.sh | 248 +++++++++++++++++++ .../loader/entries/parabolaiso-x86_64-cd.conf | 4 + .../loader/entries/parabolaiso-x86_64-usb.conf | 4 + .../loader/entries/uefi-shell-v1-x86_64.conf | 2 + .../loader/entries/uefi-shell-v2-x86_64.conf | 2 + configs/profile-openrc/efiboot/loader/loader.conf | 2 + configs/profile-openrc/isolinux/isolinux.cfg | 6 + configs/profile-openrc/mkinitcpio.conf | 3 + configs/profile-openrc/packages.both | 59 +++++ configs/profile-openrc/packages.i686 | 0 configs/profile-openrc/packages.x86_64 | 1 + configs/profile-openrc/pacman.conf | 104 ++++++++ .../root-image/etc/conf.d/agetty.tty1 | 11 + .../profile-openrc/root-image/etc/conf.d/hostname | 2 + configs/profile-openrc/root-image/etc/fstab | 0 .../root-image/etc/init.d/pacman-init | 30 +++ configs/profile-openrc/root-image/etc/locale.conf | 1 + configs/profile-openrc/root-image/etc/motd | 14 ++ configs/profile-openrc/root-image/etc/pam.d/su | 6 + .../root-image/etc/sudoers.d/g_wheel | 1 + .../root-image/etc/udev/rules.d/81-dhcpcd.rules | 1 + .../root-image/root/.automated_script.sh | 34 +++ configs/profile-openrc/root-image/root/.zlogin | 1 + .../root-image/root/customize_root_image.sh | 39 +++ .../profile-openrc/root-image/root/network.html | 191 +++++++++++++++ configs/profile-openrc/syslinux/parabolaiso.cfg | 11 + .../profile-openrc/syslinux/parabolaiso_head.cfg | 25 ++ .../profile-openrc/syslinux/parabolaiso_pxe32.cfg | 32 +++ .../profile-openrc/syslinux/parabolaiso_pxe64.cfg | 32 +++ .../syslinux/parabolaiso_pxe_32_inc.cfg | 3 + .../syslinux/parabolaiso_pxe_both_inc.cfg | 4 + .../syslinux/parabolaiso_pxe_choose.cfg | 11 + .../profile-openrc/syslinux/parabolaiso_sys32.cfg | 9 + .../profile-openrc/syslinux/parabolaiso_sys64.cfg | 9 + .../syslinux/parabolaiso_sys_32_inc.cfg | 3 + .../syslinux/parabolaiso_sys_both_inc.cfg | 4 + .../syslinux/parabolaiso_sys_choose.cfg | 11 + .../profile-openrc/syslinux/parabolaiso_tail.cfg | 27 ++ configs/profile-openrc/syslinux/splash.png | Bin 0 -> 32253 bytes configs/profile-openrc/syslinux/syslinux.cfg | 5 + configs/talking-parabola-openrc/README | 10 + configs/talking-parabola-openrc/aitab | 3 + configs/talking-parabola-openrc/build.sh | 253 +++++++++++++++++++ .../loader/entries/parabolaiso-x86_64-cd.conf | 4 + .../loader/entries/parabolaiso-x86_64-usb.conf | 4 + .../loader/entries/uefi-shell-v1-x86_64.conf | 2 + .../loader/entries/uefi-shell-v2-x86_64.conf | 2 + .../efiboot/loader/loader.conf | 2 + .../talking-parabola-openrc/isolinux/isolinux.cfg | 6 + configs/talking-parabola-openrc/mkinitcpio.conf | 2 + configs/talking-parabola-openrc/packages.both | 63 +++++ configs/talking-parabola-openrc/packages.i686 | 0 configs/talking-parabola-openrc/packages.x86_64 | 1 + configs/talking-parabola-openrc/pacman.conf | 104 ++++++++ .../root-image/etc/conf.d/hostname | 2 + .../talking-parabola-openrc/root-image/etc/fstab | 0 .../talking-parabola-openrc/root-image/etc/inittab | 41 ++++ .../root-image/etc/locale.conf | 1 + .../talking-parabola-openrc/root-image/etc/motd | 14 ++ .../root-image/etc/pam.d/su | 6 + .../root-image/etc/sudoers.d/g_wheel | 1 + .../root-image/etc/udev/rules.d/81-dhcpcd.rules | 1 + .../root-image/root/customize_root_image.sh | 22 ++ .../root-image/root/network.html | 191 +++++++++++++++ .../root-image/usr/bin/livecd-alsa-unmuter | 8 + .../root-image/usr/bin/pick-a-card | 54 ++++ .../root-image/usr/bin/talk-to-me | 10 + .../usr/share/livecd-sound/asound.conf.in | 12 + .../root-image/usr/share/livecd-sound/functions | 199 +++++++++++++++ .../syslinux/parabolaiso.cfg | 11 + .../syslinux/parabolaiso_head.cfg | 25 ++ .../syslinux/parabolaiso_pxe32.cfg | 32 +++ .../syslinux/parabolaiso_pxe64.cfg | 32 +++ .../syslinux/parabolaiso_pxe_32_inc.cfg | 3 + .../syslinux/parabolaiso_pxe_both_inc.cfg | 4 + .../syslinux/parabolaiso_pxe_choose.cfg | 11 + .../syslinux/parabolaiso_sys32.cfg | 9 + .../syslinux/parabolaiso_sys64.cfg | 9 + .../syslinux/parabolaiso_sys_32_inc.cfg | 3 + .../syslinux/parabolaiso_sys_both_inc.cfg | 4 + .../syslinux/parabolaiso_sys_choose.cfg | 11 + .../syslinux/parabolaiso_tail.cfg | 27 ++ .../talking-parabola-openrc/syslinux/splash.png | Bin 0 -> 31075 bytes .../talking-parabola-openrc/syslinux/splash.svg | 258 ++++++++++++++++++++ .../talking-parabola-openrc/syslinux/syslinux.cfg | 5 + .../root-image/root/.automated_script.sh | 34 --- .../talkingparabola-X11/root-image/root/.zlogin | 4 - .../root-image/root/.automated_script.sh | 34 --- configs/talkingparabola/root-image/root/.zlogin | 3 - 165 files changed, 5856 insertions(+), 75 deletions(-) create mode 100644 configs/mate-openrc/aitab create mode 100755 configs/mate-openrc/build.sh create mode 100644 configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf create mode 100644 configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf create mode 100644 configs/mate-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf create mode 100644 configs/mate-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf create mode 100644 configs/mate-openrc/efiboot/loader/loader.conf create mode 100644 configs/mate-openrc/isolinux/isolinux.cfg create mode 100644 configs/mate-openrc/mkinitcpio.conf create mode 100644 configs/mate-openrc/packages.both create mode 100644 configs/mate-openrc/packages.i686 create mode 100644 configs/mate-openrc/packages.x86_64 create mode 100644 configs/mate-openrc/pacman.conf create mode 100644 configs/mate-openrc/root-image/etc/conf.d/agetty create mode 100644 configs/mate-openrc/root-image/etc/conf.d/hostname create mode 100644 configs/mate-openrc/root-image/etc/fstab create mode 100644 configs/mate-openrc/root-image/etc/hostname create mode 100644 configs/mate-openrc/root-image/etc/locale.conf create mode 100644 configs/mate-openrc/root-image/etc/motd create mode 100644 configs/mate-openrc/root-image/etc/pam.d/su create mode 100644 configs/mate-openrc/root-image/etc/skel/.config/caja/accels create mode 100644 configs/mate-openrc/root-image/etc/skel/.config/caja/desktop-metadata create mode 100644 configs/mate-openrc/root-image/etc/skel/.config/dconf/user create mode 100644 configs/mate-openrc/root-image/etc/skel/.config/gtk-2.0/gtkfilechooser.ini create mode 100644 configs/mate-openrc/root-image/etc/skel/.config/volumeicon/volumeicon create mode 100644 configs/mate-openrc/root-image/etc/skel/.directory create mode 100644 configs/mate-openrc/root-image/etc/sudoers.d/g_wheel create mode 100644 configs/mate-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules create mode 100644 configs/mate-openrc/root-image/etc/wallpaper.png create mode 100755 configs/mate-openrc/root-image/root/.automated_script.sh create mode 100644 configs/mate-openrc/root-image/root/.codecheck create mode 100755 configs/mate-openrc/root-image/root/.config/autostart/.keymap.desktop create mode 100644 configs/mate-openrc/root-image/root/.config/autostart/.language.sh.desktop create mode 100644 configs/mate-openrc/root-image/root/.config/caja/accels create mode 100644 configs/mate-openrc/root-image/root/.config/caja/desktop-metadata create mode 100644 configs/mate-openrc/root-image/root/.config/dconf/user create mode 100644 configs/mate-openrc/root-image/root/.config/gtk-2.0/gtkfilechooser.ini create mode 100644 configs/mate-openrc/root-image/root/.config/volumeicon/volumeicon create mode 100644 configs/mate-openrc/root-image/root/.directory create mode 100755 configs/mate-openrc/root-image/root/.keymap.sh create mode 100755 configs/mate-openrc/root-image/root/.language.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/install.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/systemConfig.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/userAccount.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/install.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/systemConfig.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/userAccount.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/install.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/systemConfig.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/userAccount.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/install.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/systemConfig.sh create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/userAccount.sh create mode 100644 configs/mate-openrc/root-image/root/.scriptsInstallation/parabolaicon.png create mode 100755 configs/mate-openrc/root-image/root/.scriptsInstallation/x11.sh create mode 100644 configs/mate-openrc/root-image/root/.themes/Parabola/index.theme create mode 100644 configs/mate-openrc/root-image/root/.xinitrc create mode 100644 configs/mate-openrc/root-image/root/.zlogin create mode 100644 configs/mate-openrc/root-image/root/Desktop/Parabola Installation CLI.desktop create mode 100755 configs/mate-openrc/root-image/root/customize_root_image.sh create mode 100644 configs/mate-openrc/syslinux/parabolaiso.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_head.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_pxe32.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_pxe64.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_pxe_32_inc.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_pxe_both_inc.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_pxe_choose.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_sys32.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_sys64.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_sys_32_inc.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_sys_both_inc.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_sys_choose.cfg create mode 100644 configs/mate-openrc/syslinux/parabolaiso_tail.cfg create mode 100644 configs/mate-openrc/syslinux/splash.png create mode 100644 configs/mate-openrc/syslinux/syslinux.cfg create mode 100644 configs/profile-openrc/aitab create mode 100755 configs/profile-openrc/build.sh create mode 100644 configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf create mode 100644 configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf create mode 100644 configs/profile-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf create mode 100644 configs/profile-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf create mode 100644 configs/profile-openrc/efiboot/loader/loader.conf create mode 100644 configs/profile-openrc/isolinux/isolinux.cfg create mode 100644 configs/profile-openrc/mkinitcpio.conf create mode 100644 configs/profile-openrc/packages.both create mode 100644 configs/profile-openrc/packages.i686 create mode 100644 configs/profile-openrc/packages.x86_64 create mode 100644 configs/profile-openrc/pacman.conf create mode 100644 configs/profile-openrc/root-image/etc/conf.d/agetty.tty1 create mode 100644 configs/profile-openrc/root-image/etc/conf.d/hostname create mode 100644 configs/profile-openrc/root-image/etc/fstab create mode 100755 configs/profile-openrc/root-image/etc/init.d/pacman-init create mode 100644 configs/profile-openrc/root-image/etc/locale.conf create mode 100644 configs/profile-openrc/root-image/etc/motd create mode 100644 configs/profile-openrc/root-image/etc/pam.d/su create mode 100644 configs/profile-openrc/root-image/etc/sudoers.d/g_wheel create mode 100644 configs/profile-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules create mode 100755 configs/profile-openrc/root-image/root/.automated_script.sh create mode 100644 configs/profile-openrc/root-image/root/.zlogin create mode 100755 configs/profile-openrc/root-image/root/customize_root_image.sh create mode 100644 configs/profile-openrc/root-image/root/network.html create mode 100644 configs/profile-openrc/syslinux/parabolaiso.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_head.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_pxe32.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_pxe64.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_pxe_32_inc.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_pxe_both_inc.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_pxe_choose.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_sys32.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_sys64.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_sys_32_inc.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_sys_both_inc.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_sys_choose.cfg create mode 100644 configs/profile-openrc/syslinux/parabolaiso_tail.cfg create mode 100644 configs/profile-openrc/syslinux/splash.png create mode 100644 configs/profile-openrc/syslinux/syslinux.cfg create mode 100644 configs/talking-parabola-openrc/README create mode 100644 configs/talking-parabola-openrc/aitab create mode 100755 configs/talking-parabola-openrc/build.sh create mode 100644 configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf create mode 100644 configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf create mode 100644 configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf create mode 100644 configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf create mode 100644 configs/talking-parabola-openrc/efiboot/loader/loader.conf create mode 100644 configs/talking-parabola-openrc/isolinux/isolinux.cfg create mode 100644 configs/talking-parabola-openrc/mkinitcpio.conf create mode 100644 configs/talking-parabola-openrc/packages.both create mode 100644 configs/talking-parabola-openrc/packages.i686 create mode 100644 configs/talking-parabola-openrc/packages.x86_64 create mode 100644 configs/talking-parabola-openrc/pacman.conf create mode 100644 configs/talking-parabola-openrc/root-image/etc/conf.d/hostname create mode 100644 configs/talking-parabola-openrc/root-image/etc/fstab create mode 100644 configs/talking-parabola-openrc/root-image/etc/inittab create mode 100644 configs/talking-parabola-openrc/root-image/etc/locale.conf create mode 100644 configs/talking-parabola-openrc/root-image/etc/motd create mode 100644 configs/talking-parabola-openrc/root-image/etc/pam.d/su create mode 100644 configs/talking-parabola-openrc/root-image/etc/sudoers.d/g_wheel create mode 100644 configs/talking-parabola-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules create mode 100755 configs/talking-parabola-openrc/root-image/root/customize_root_image.sh create mode 100644 configs/talking-parabola-openrc/root-image/root/network.html create mode 100755 configs/talking-parabola-openrc/root-image/usr/bin/livecd-alsa-unmuter create mode 100755 configs/talking-parabola-openrc/root-image/usr/bin/pick-a-card create mode 100755 configs/talking-parabola-openrc/root-image/usr/bin/talk-to-me create mode 100644 configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/asound.conf.in create mode 100644 configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/functions create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_head.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_pxe32.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_pxe64.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_32_inc.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_both_inc.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_choose.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_sys32.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_sys64.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_sys_32_inc.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_sys_both_inc.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_sys_choose.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/parabolaiso_tail.cfg create mode 100644 configs/talking-parabola-openrc/syslinux/splash.png create mode 100644 configs/talking-parabola-openrc/syslinux/splash.svg create mode 100644 configs/talking-parabola-openrc/syslinux/syslinux.cfg delete mode 100755 configs/talkingparabola-X11/root-image/root/.automated_script.sh delete mode 100644 configs/talkingparabola-X11/root-image/root/.zlogin delete mode 100755 configs/talkingparabola/root-image/root/.automated_script.sh delete mode 100644 configs/talkingparabola/root-image/root/.zlogin (limited to 'configs') diff --git a/configs/mate-openrc/aitab b/configs/mate-openrc/aitab new file mode 100644 index 0000000..b7e9a17 --- /dev/null +++ b/configs/mate-openrc/aitab @@ -0,0 +1,3 @@ +# +root-image / i686 xz ext4 50% +root-image / x86_64 xz ext4 50% diff --git a/configs/mate-openrc/build.sh b/configs/mate-openrc/build.sh new file mode 100755 index 0000000..78a1eba --- /dev/null +++ b/configs/mate-openrc/build.sh @@ -0,0 +1,252 @@ +#!/bin/bash + +set -e -u + +iso_name=parabola-openrc-mate +iso_label="PARA_$(date +%Y%m)" +iso_version=$(date +%Y.%m.%d) +install_dir=parabola +work_dir=work +out_dir=out +data_dir=/usr/share/parabolaiso/data + +arch=$(uname -m) +verbose="" +pacman_conf=${work_dir}/pacman.conf +script_path=$(readlink -f ${0%/*}) +initcpio_dir=${script_path}/../../parabolaiso/initcpio + +_usage () +{ + echo "usage ${0} [options]" + echo + echo " General options:" + echo " -N Set an iso filename (prefix)" + echo " Default: ${iso_name}" + echo " -V Set an iso version (in filename)" + echo " Default: ${iso_version}" + echo " -L Set an iso label (disk label)" + echo " Default: ${iso_label}" + echo " -D Set an install_dir (directory inside iso)" + echo " Default: ${install_dir}" + echo " -w Set the working directory" + echo " Default: ${work_dir}" + echo " -o Set the output directory" + echo " Default: ${out_dir}" + echo " -v Enable verbose output" + echo " -h This help message" + exit ${1} +} + +# Helper function to run make_*() only one time per architecture. +run_once() { + if [[ ! -e ${work_dir}/build.${1}_${arch} ]]; then + $1 + touch ${work_dir}/build.${1}_${arch} + fi +} + +# Setup custom pacman.conf with current cache directories. +make_pacman_conf() { + local _cache_dirs + _cache_dirs=($(pacman -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g')) + sed -r "s|^#?\\s*CacheDir.+|CacheDir = $(echo -n ${_cache_dirs[@]})|g" ${script_path}/pacman.conf > ${pacman_conf} +} + +# Base installation, plus needed packages (root-image) +make_basefs() { + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" init + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -p "memtest86+ mkinitcpio-nfs-utils nbd" install +} + +# Additional packages (root-image) +make_packages() { + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -p "$(grep -h -v ^# ${script_path}/packages.{both,${arch}})" install +} + +# Copy mkinitcpio parabolaiso hooks and build initramfs (root-image) +make_setup_mkinitcpio() { + local _hook + for _hook in parabolaiso parabolaiso_shutdown parabolaiso_pxe_common parabolaiso_pxe_nbd parabolaiso_pxe_http parabolaiso_pxe_nfs parabolaiso_loop_mnt; do + cp ${initcpio_dir}/hooks/${_hook} ${work_dir}/${arch}/root-image/usr/lib/initcpio/hooks + cp ${initcpio_dir}/install/${_hook} ${work_dir}/${arch}/root-image/usr/lib/initcpio/install + done + cp ${initcpio_dir}/install/parabolaiso_kms ${work_dir}/${arch}/root-image/usr/lib/initcpio/install + cp ${initcpio_dir}/hooks/parabolaiso_shutdown ${work_dir}/${arch}/root-image/usr/lib/initcpio + cp ${script_path}/mkinitcpio.conf ${work_dir}/${arch}/root-image/etc/mkinitcpio-parabolaiso.conf + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -r 'mkinitcpio -c /etc/mkinitcpio-parabolaiso.conf -k /boot/vmlinuz-linux-libre -g /boot/parabolaiso.img' run +} + +# Customize installation (root-image) +make_customize_root_image() { + cp -af ${script_path}/root-image ${work_dir}/${arch} + + iso_version="${iso_version}" setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -r '/root/customize_root_image.sh' run + rm ${work_dir}/${arch}/root-image/root/customize_root_image.sh +} + +# Prepare kernel/initramfs ${install_dir}/boot/ +make_boot() { + mkdir -p ${work_dir}/iso/${install_dir}/boot/${arch} + cp ${work_dir}/${arch}/root-image/boot/parabolaiso.img ${work_dir}/iso/${install_dir}/boot/${arch}/parabolaiso.img + cp ${work_dir}/${arch}/root-image/boot/vmlinuz-linux-libre ${work_dir}/iso/${install_dir}/boot/${arch}/vmlinuz +} + +# Add other aditional/extra files to ${install_dir}/boot/ +make_boot_extra() { + cp ${work_dir}/${arch}/root-image/boot/memtest86+/memtest.bin ${work_dir}/iso/${install_dir}/boot/memtest + cp ${work_dir}/${arch}/root-image/usr/share/licenses/common/GPL2/license.txt ${work_dir}/iso/${install_dir}/boot/memtest.COPYING +} + +# Prepare /${install_dir}/boot/syslinux +make_syslinux() { + mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux + for _cfg in ${script_path}/syslinux/*.cfg; do + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/iso/${install_dir}/boot/syslinux/${_cfg##*/} + done + cp ${script_path}/syslinux/splash.png ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/*.c32 ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/lpxelinux.0 ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/memdisk ${work_dir}/iso/${install_dir}/boot/syslinux + mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux/hdt + gzip -c -9 ${work_dir}/${arch}/root-image/usr/share/hwdata/pci.ids > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/pciids.gz + gzip -c -9 ${work_dir}/${arch}/root-image/usr/lib/modules/*-gnu-*/modules.alias > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/modalias.gz +} + +# Prepare /isolinux +make_isolinux() { + mkdir -p ${work_dir}/iso/isolinux + sed "s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/isolinux/isolinux.cfg > ${work_dir}/iso/isolinux/isolinux.cfg + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/isolinux.bin ${work_dir}/iso/isolinux/ + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/isohdpfx.bin ${work_dir}/iso/isolinux/ + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/ldlinux.c32 ${work_dir}/iso/isolinux/ +} + +# Prepare /EFI +make_efi() { + mkdir -p ${work_dir}/iso/EFI/boot + + mkdir -p ${work_dir}/iso/loader/entries + cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/iso/loader/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/iso/loader/entries/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/iso/loader/entries/ + + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" \ + ${script_path}/efiboot/loader/entries/parabolaiso-x86_64-usb.conf > ${work_dir}/iso/loader/entries/parabolaiso-x86_64.conf + + # EFI Shell 2.0 for UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UEFI_Shell ) + cp ${data_dir}/Shell.efi ${work_dir}/iso/EFI/shellx64_v2.efi + # EFI Shell 1.0 for non UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Efi-shell ) + cp ${data_dir}/Shell_Full.efi ${work_dir}/iso/EFI/shellx64_v1.efi +} + +# Prepare efiboot.img::/EFI for "El Torito" EFI boot mode +make_efiboot() { + mkdir -p ${work_dir}/iso/EFI/parabolaiso + truncate -s 38M ${work_dir}/iso/EFI/parabolaiso/efiboot.img + mkfs.vfat -n PARABOLAISO_EFI ${work_dir}/iso/EFI/parabolaiso/efiboot.img + + mkdir -p ${work_dir}/efiboot + mount ${work_dir}/iso/EFI/parabolaiso/efiboot.img ${work_dir}/efiboot + + mkdir -p ${work_dir}/efiboot/EFI/parabolaiso + cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/parabolaiso/vmlinuz.efi + cp ${work_dir}/iso/${install_dir}/boot/x86_64/parabolaiso.img ${work_dir}/efiboot/EFI/parabolaiso/parabolaiso.img + + mkdir -p ${work_dir}/efiboot/EFI/boot + + mkdir -p ${work_dir}/efiboot/loader/entries + cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/efiboot/loader/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/efiboot/loader/entries/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/efiboot/loader/entries/ + + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" \ + ${script_path}/efiboot/loader/entries/parabolaiso-x86_64-cd.conf > ${work_dir}/efiboot/loader/entries/parabolaiso-x86_64.conf + + cp ${work_dir}/iso/EFI/shellx64_v2.efi ${work_dir}/efiboot/EFI/ + cp ${work_dir}/iso/EFI/shellx64_v1.efi ${work_dir}/efiboot/EFI/ + + umount ${work_dir}/efiboot +} + +# Copy aitab +make_aitab() { + mkdir -p ${work_dir}/iso/${install_dir} + cp ${script_path}/aitab ${work_dir}/iso/${install_dir}/aitab +} + +# Build all filesystem images specified in aitab (.fs.sfs .sfs) +make_prepare() { + cp -a -l -f ${work_dir}/${arch}/root-image ${work_dir} + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" pkglist + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" prepare + rm -rf ${work_dir}/root-image + # rm -rf ${work_dir}/${arch}/root-image (if low space, this helps) +} + +# Build ISO +make_iso() { + mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" checksum + mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-dual.iso" +} + +if [[ ${EUID} -ne 0 ]]; then + echo "This script must be run as root." + _usage 1 +fi + +if [[ ${arch} != x86_64 ]]; then + echo "This script needs to be run on x86_64" + _usage 1 +fi + +while getopts 'N:V:L:D:w:o:vh' arg; do + case "${arg}" in + N) iso_name="${OPTARG}" ;; + V) iso_version="${OPTARG}" ;; + L) iso_label="${OPTARG}" ;; + D) install_dir="${OPTARG}" ;; + w) work_dir="${OPTARG}" ;; + o) out_dir="${OPTARG}" ;; + v) verbose="-v" ;; + h) _usage 0 ;; + *) + echo "Invalid argument '${arg}'" + _usage 1 + ;; + esac +done + +mkdir -p ${work_dir} + +run_once make_pacman_conf + +# Do all stuff for each root-image +for arch in i686 x86_64; do + run_once make_basefs + run_once make_packages + run_once make_setup_mkinitcpio + run_once make_customize_root_image +done + +for arch in i686 x86_64; do + run_once make_boot +done + +# Do all stuff for "iso" +run_once make_boot_extra +run_once make_syslinux +run_once make_isolinux +run_once make_efi +run_once make_efiboot + +run_once make_aitab + +for arch in i686 x86_64; do + run_once make_prepare +done + +run_once make_iso diff --git a/configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf b/configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf new file mode 100644 index 0000000..057e14f --- /dev/null +++ b/configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf @@ -0,0 +1,4 @@ +title Parabola GNU/Linux-libre parabolaiso x86_64 UEFI CD +linux /EFI/parabolaiso/vmlinuz.efi +initrd /EFI/parabolaiso/parabolaiso.img +options parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf b/configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf new file mode 100644 index 0000000..3863799 --- /dev/null +++ b/configs/mate-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf @@ -0,0 +1,4 @@ +title Parabola GNU/Linux-libre parabolaiso x86_64 UEFI USB +linux /%INSTALL_DIR%/boot/x86_64/vmlinuz +initrd /%INSTALL_DIR%/boot/x86_64/parabolaiso.img +options parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/mate-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf b/configs/mate-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf new file mode 100644 index 0000000..9597ff2 --- /dev/null +++ b/configs/mate-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf @@ -0,0 +1,2 @@ +title UEFI Shell x86_64 v1 +efi /EFI/shellx64_v1.efi diff --git a/configs/mate-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf b/configs/mate-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf new file mode 100644 index 0000000..0dde77a --- /dev/null +++ b/configs/mate-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf @@ -0,0 +1,2 @@ +title UEFI Shell x86_64 v2 +efi /EFI/shellx64_v2.efi diff --git a/configs/mate-openrc/efiboot/loader/loader.conf b/configs/mate-openrc/efiboot/loader/loader.conf new file mode 100644 index 0000000..ba02c50 --- /dev/null +++ b/configs/mate-openrc/efiboot/loader/loader.conf @@ -0,0 +1,2 @@ +timeout 3 +default parabolaiso-x86_64 diff --git a/configs/mate-openrc/isolinux/isolinux.cfg b/configs/mate-openrc/isolinux/isolinux.cfg new file mode 100644 index 0000000..10472fb --- /dev/null +++ b/configs/mate-openrc/isolinux/isolinux.cfg @@ -0,0 +1,6 @@ +PATH /%INSTALL_DIR%/boot/syslinux/ +DEFAULT loadconfig + +LABEL loadconfig + CONFIG /%INSTALL_DIR%/boot/syslinux/parabolaiso.cfg + APPEND /%INSTALL_DIR%/ diff --git a/configs/mate-openrc/mkinitcpio.conf b/configs/mate-openrc/mkinitcpio.conf new file mode 100644 index 0000000..1006d1d --- /dev/null +++ b/configs/mate-openrc/mkinitcpio.conf @@ -0,0 +1,2 @@ +HOOKS="base udev memdisk parabolaiso_shutdown parabolaiso parabolaiso_loop_mnt parabolaiso_pxe_common parabolaiso_pxe_nbd parabolaiso_pxe_http parabolaiso_pxe_nfs parabolaiso_kms block pcmcia filesystems keyboard" +COMPRESSION="xz" diff --git a/configs/mate-openrc/packages.both b/configs/mate-openrc/packages.both new file mode 100644 index 0000000..84d5f6e --- /dev/null +++ b/configs/mate-openrc/packages.both @@ -0,0 +1,140 @@ +arch-install-scripts +btrfs-progs +crda +darkhttpd +ddrescue +dhclient +dialog +dmraid +dnsmasq +dnsutils +dosfstools +elinks +ethtool +f2fs-tools +fsarchiver +gnu-netcat +gpm +gptfdisk +grml-zsh-config +grub +haveged +hdparm +irssi +lftp +linux-atm +lynx +mc +mtools +nfs-utils +nilfs-utils +nmap +ntfs-3g +ntp +openconnect +openssh +openvpn +partclone +parted +partimage +pptpclient +ppp +rfkill +rp-pppoe +rsync +smartmontools +sudo +tcpdump +testdisk +usb_modeswitch +vpnc +wget +wireless_tools +wpa_actiond +wpa_supplicant +zile +wvdial +xl2tpd +zsh + +#X11 +xorg-server +xf86-video-amdgpu +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 + +#Plugins +gst-plugins-good +gst-libav + +#Window Manager +mate +mate-extra +caja +volumeicon +zenity +octopi +octopi-cachecleaner +octopi-notifier +octopi-repoeditor +ambiance-radiance-colors-suite +rave-x-colors + +#Sound +pulseaudio-alsa +alsa-utils + +#Network +networkmanager +network-manager-applet +ath9k-htc-firmware +gnome-keyring + +#Programs +iceweasel +icedove +pidgin +linphone +qtox +gparted +smplayer +epdfview +gpicview +abiword +gnumeric +leafpad +galculator-gtk2 +xarchiver +dmidecode + +#Compressor/archiver +p7zip +unar +unzip +zip + +#Fonts +ttf-dejavu + +#Languages +iceweasel-l10n-es-es +icedove-l10n-es-es +iceweasel-l10n-gl +icedove-l10n-gl +iceweasel-l10n-pt-br +icedove-l10n-pt-br + +#OpenRC +base-openrc +openrc-desktop +polkit-elogind diff --git a/configs/mate-openrc/packages.i686 b/configs/mate-openrc/packages.i686 new file mode 100644 index 0000000..e69de29 diff --git a/configs/mate-openrc/packages.x86_64 b/configs/mate-openrc/packages.x86_64 new file mode 100644 index 0000000..804cc93 --- /dev/null +++ b/configs/mate-openrc/packages.x86_64 @@ -0,0 +1 @@ +refind-efi diff --git a/configs/mate-openrc/pacman.conf b/configs/mate-openrc/pacman.conf new file mode 100644 index 0000000..a0c4c56 --- /dev/null +++ b/configs/mate-openrc/pacman.conf @@ -0,0 +1,128 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -C - -f %u > %o +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#TotalDownload +# We cannot check disk space from within a chroot environment +#CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all official Arch Linux and Parabola +# packagers with `pacman-key --populate archlinux` and `pacman-key --populate parabola`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs + +#[nonprism-testing] +#Include = /etc/pacman.d/mirrorlist + +[nonprism] +Include = /etc/pacman.d/mirrorlist + +# enable the libre-multilib, multilib and pcr-multilib repositories as required here. +#[nonprism-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +[nonprism-multilib] +Include = /etc/pacman.d/mirrorlist + +#[libre-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +#[libre-multilib] +#Include = /etc/pacman.d/mirrorlist + +#[multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +[multilib] +Include = /etc/pacman.d/mirrorlist + +#[pcr-multilib-testing] +#Include = /etc/pacman.d/mirrorlist + +[pcr-multilib] +Include = /etc/pacman.d/mirrorlist diff --git a/configs/mate-openrc/root-image/etc/conf.d/agetty b/configs/mate-openrc/root-image/etc/conf.d/agetty new file mode 100644 index 0000000..5e9b663 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/conf.d/agetty @@ -0,0 +1,8 @@ +# Set the baud rate of the terminal line +baud="38400" + +# set the terminal type +term_type="linux" + +# extra options to pass to agetty for this port +agetty_options="--autologin root --noclear %I" diff --git a/configs/mate-openrc/root-image/etc/conf.d/hostname b/configs/mate-openrc/root-image/etc/conf.d/hostname new file mode 100644 index 0000000..a701f0c --- /dev/null +++ b/configs/mate-openrc/root-image/etc/conf.d/hostname @@ -0,0 +1,2 @@ +# Set to the hostname of this machine +hostname="parabolaiso" diff --git a/configs/mate-openrc/root-image/etc/fstab b/configs/mate-openrc/root-image/etc/fstab new file mode 100644 index 0000000..e69de29 diff --git a/configs/mate-openrc/root-image/etc/hostname b/configs/mate-openrc/root-image/etc/hostname new file mode 100644 index 0000000..8aaf41b --- /dev/null +++ b/configs/mate-openrc/root-image/etc/hostname @@ -0,0 +1 @@ +parabolaiso diff --git a/configs/mate-openrc/root-image/etc/locale.conf b/configs/mate-openrc/root-image/etc/locale.conf new file mode 100644 index 0000000..01ec548 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/locale.conf @@ -0,0 +1 @@ +LANG=en_US.UTF-8 diff --git a/configs/mate-openrc/root-image/etc/motd b/configs/mate-openrc/root-image/etc/motd new file mode 100644 index 0000000..a126999 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/motd @@ -0,0 +1,14 @@ + +=============================================================================== + + Parabola live media _DATE_ + + To install Parabola, the system must be connected to the internet. + For instructions, enter this command: + lynx network.html + + Press the function keys while holding Alt to switch virtual terminals. + This allows entering commands without closing lynx. + +=============================================================================== + diff --git a/configs/mate-openrc/root-image/etc/pam.d/su b/configs/mate-openrc/root-image/etc/pam.d/su new file mode 100644 index 0000000..a291042 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/pam.d/su @@ -0,0 +1,6 @@ +#%PAM-1.0 +auth sufficient pam_rootok.so +auth sufficient pam_wheel.so trust use_uid +auth required pam_unix.so +account required pam_unix.so +session required pam_unix.so diff --git a/configs/mate-openrc/root-image/etc/skel/.config/caja/accels b/configs/mate-openrc/root-image/etc/skel/.config/caja/accels new file mode 100644 index 0000000..9464f0d --- /dev/null +++ b/configs/mate-openrc/root-image/etc/skel/.config/caja/accels @@ -0,0 +1,133 @@ +; caja GtkAccelMap rc-file -*- scheme -*- +; this file is an automated accelerator map dump +; +; (gtk_accel_path "/DirViewActions/Trash" "") +; (gtk_accel_path "/DirViewActions/Save Search" "") +; (gtk_accel_path "/IconViewActions/Sort by Emblems" "") +; (gtk_accel_path "/DirViewActions/Start Volume" "") +; (gtk_accel_path "/DirViewActions/Location Poll" "") +; (gtk_accel_path "/ShellActions/Go to Trash" "") +; (gtk_accel_path "/SpatialActions/Go to Location" "l") +; (gtk_accel_path "/IconViewActions/Stretch" "") +; (gtk_accel_path "/DirViewActions/MoveToMenu" "") +; (gtk_accel_path "/ShellActions/ZoomInAccel" "equal") +; (gtk_accel_path "/DirViewActions/LocationTrash" "") +; (gtk_accel_path "/DirViewActions/RenameSelectAll" "F2") +; (gtk_accel_path "/DirViewActions/Undo" "z") +; (gtk_accel_path "/DirViewActions/Location Start Volume" "") +; (gtk_accel_path "/DirViewActions/CopyToMenu" "") +; (gtk_accel_path "/DirViewActions/Empty Trash" "") +; (gtk_accel_path "/ShellActions/Close" "w") +; (gtk_accel_path "/DirViewActions/LocationRestoreFromTrash" "") +; (gtk_accel_path "/IconViewActions/Manual Layout" "") +; (gtk_accel_path "/ShellActions/Zoom Normal" "0") +; (gtk_accel_path "/DirViewActions/Create Link" "m") +; (gtk_accel_path "/DirViewActions/LocationDelete" "") +; (gtk_accel_path "/IconViewActions/Sort by Trash Time" "") +; (gtk_accel_path "/DirViewActions/OtherApplication2" "") +; (gtk_accel_path "/DirViewActions/OpenInNewTab" "o") +; (gtk_accel_path "/DirViewActions/OtherApplication1" "") +; (gtk_accel_path "/ShellActions/Connect to Server" "") +; (gtk_accel_path "/ShellActions/Help" "") +; (gtk_accel_path "/ShellActions/ZoomInAccel2" "KP_Add") +; (gtk_accel_path "/SpatialActions/Close All Folders" "q") +; (gtk_accel_path "/ShellActions/File" "") +; (gtk_accel_path "/DirViewActions/Format Volume" "") +; (gtk_accel_path "/ShellActions/Caja Manual" "F1") +; (gtk_accel_path "/ShellActions/Go to Network" "") +; (gtk_accel_path "/DirViewActions/Mount Volume" "") +; (gtk_accel_path "/DirViewActions/Copy" "c") +; (gtk_accel_path "/IconViewActions/Sort by Type" "") +; (gtk_accel_path "/ShellActions/View" "") +; (gtk_accel_path "/DirViewActions/New Empty File" "") +; (gtk_accel_path "/ShellActions/About Caja" "") +; (gtk_accel_path "/DirViewActions/Location Eject Volume" "") +; (gtk_accel_path "/IconViewActions/Unstretch" "") +; (gtk_accel_path "/ShellActions/Zoom Out" "minus") +; (gtk_accel_path "/DirViewActions/OpenCloseParent" "Down") +; (gtk_accel_path "/SpatialActions/Close Parent Folders" "w") +; (gtk_accel_path "/DirViewActions/Open" "o") +; (gtk_accel_path "/DirViewActions/Self Format Volume" "") +; (gtk_accel_path "/DirViewActions/Unmount Volume" "") +; (gtk_accel_path "/DirViewActions/Connect To Server Link" "") +; (gtk_accel_path "/DirViewActions/Location Unmount Volume" "") +; (gtk_accel_path "/DirViewActions/Reset to Defaults" "") +; (gtk_accel_path "/DirViewActions/Location Mount Volume" "") +; (gtk_accel_path "/DirViewActions/LocationCut" "") +; (gtk_accel_path "/ShellActions/Zoom In" "plus") +; (gtk_accel_path "/DirViewActions/LocationOpenFolderWindow" "") +; (gtk_accel_path "/DirViewActions/Self Eject Volume" "") +; (gtk_accel_path "/IconViewActions/Tighter Layout" "") +; (gtk_accel_path "/DirViewActions/Paste Files Into" "") +; (gtk_accel_path "/DirViewActions/LocationCopy" "") +; (gtk_accel_path "/DirViewActions/OpenAccel" "Down") +; (gtk_accel_path "/DirViewActions/Open With" "") +; (gtk_accel_path "/ShellActions/Edit" "") +; (gtk_accel_path "/ShellActions/Up" "Up") +; (gtk_accel_path "/DirViewActions/Open Scripts Folder" "") +; (gtk_accel_path "/DirViewActions/New Documents" "") +; (gtk_accel_path "/ShellActions/Reload" "r") +; (gtk_accel_path "/DirViewActions/Move to Home" "") +; (gtk_accel_path "/ShellActions/Backgrounds and Emblems" "") +; (gtk_accel_path "/DirViewActions/No Templates" "") +; (gtk_accel_path "/DirViewActions/Location Format Volume" "") +; (gtk_accel_path "/ShellActions/ZoomOutAccel" "KP_Subtract") +; (gtk_accel_path "/DirViewActions/LocationPasteFilesInto" "") +; (gtk_accel_path "/IconViewActions/Sort by Size" "") +; (gtk_accel_path "/DirViewActions/Select All" "a") +; (gtk_accel_path "/DirViewActions/OpenAlternate" "o") +; (gtk_accel_path "/ShellActions/Preferences" "") +; (gtk_accel_path "/DirViewActions/Poll" "") +; (gtk_accel_path "/DirViewActions/Select Pattern" "s") +; (gtk_accel_path "/DesktopViewActions/Change Background" "") +; (gtk_accel_path "/IconViewActions/Reversed Order" "") +; (gtk_accel_path "/ShellActions/Go to Computer" "") +; (gtk_accel_path "/DirViewActions/Restore From Trash" "") +; (gtk_accel_path "/DirViewActions/Location Stop Volume" "") +; (gtk_accel_path "/DirViewActions/LocationProperties" "") +; (gtk_accel_path "/DirViewActions/Rename" "F2") +; (gtk_accel_path "/DirViewActions/Redo" "y") +; (gtk_accel_path "/ShellActions/Go to Templates" "") +; (gtk_accel_path "/ShellActions/Show Hidden Files" "h") +; (gtk_accel_path "/DirViewActions/Self Start Volume" "") +; (gtk_accel_path "/DirViewActions/Move to next pane" "") +; (gtk_accel_path "/DirViewActions/OpenFolderWindow" "") +; (gtk_accel_path "/DirViewActions/LocationOpenInNewTab" "") +; (gtk_accel_path "/DirViewActions/Duplicate" "") +; (gtk_accel_path "/DirViewActions/Eject Volume" "") +; (gtk_accel_path "/DirViewActions/Stop Volume" "") +; (gtk_accel_path "/DirViewActions/PropertiesAccel" "i") +; (gtk_accel_path "/ShellActions/Home" "Home") +; (gtk_accel_path "/IconViewActions/Clean Up" "") +; (gtk_accel_path "/IconViewActions/Sort by Modification Date" "") +; (gtk_accel_path "/DirViewActions/Save Search As" "") +; (gtk_accel_path "/IconViewActions/Keep Aligned" "") +; (gtk_accel_path "/DirViewActions/New Launcher" "") +; (gtk_accel_path "/DirViewActions/Properties" "Return") +; (gtk_accel_path "/SpatialActions/Add Bookmark" "d") +; (gtk_accel_path "/DirViewActions/Copy to Desktop" "") +; (gtk_accel_path "/ShellActions/Stop" "") +; (gtk_accel_path "/DirViewActions/New Folder" "n") +; (gtk_accel_path "/DirViewActions/Self Poll" "") +; (gtk_accel_path "/DirViewActions/Move to Desktop" "") +; (gtk_accel_path "/DirViewActions/Cut" "x") +; (gtk_accel_path "/view_as_4" "4") +; (gtk_accel_path "/DirViewActions/Delete" "Delete") +; (gtk_accel_path "/DesktopViewActions/New Launcher Desktop" "") +; (gtk_accel_path "/IconViewActions/Sort by Name" "") +; (gtk_accel_path "/view_as_2" "2") +; (gtk_accel_path "/view_as_3" "3") +; (gtk_accel_path "/DirViewActions/Paste" "v") +; (gtk_accel_path "/DirViewActions/Invert Selection" "i") +; (gtk_accel_path "/view_as_1" "1") +; (gtk_accel_path "/DesktopViewActions/Empty Trash Conditional" "") +; (gtk_accel_path "/IconViewActions/Arrange Items" "") +; (gtk_accel_path "/DirViewActions/Self Stop Volume" "") +; (gtk_accel_path "/SpatialActions/Places" "") +; (gtk_accel_path "/SpatialActions/Edit Bookmarks" "b") +; (gtk_accel_path "/DirViewActions/Copy to Home" "") +; (gtk_accel_path "/DirViewActions/Self Mount Volume" "") +; (gtk_accel_path "/SpatialActions/Search" "f") +; (gtk_accel_path "/DirViewActions/Self Unmount Volume" "") +; (gtk_accel_path "/DirViewActions/Copy to next pane" "") +; (gtk_accel_path "/DirViewActions/LocationOpenAlternate" "") diff --git a/configs/mate-openrc/root-image/etc/skel/.config/caja/desktop-metadata b/configs/mate-openrc/root-image/etc/skel/.config/caja/desktop-metadata new file mode 100644 index 0000000..e1f9d17 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/skel/.config/caja/desktop-metadata @@ -0,0 +1,23 @@ +[directory] +caja-icon-view-keep-aligned=true +caja-icon-view-layout-timestamp=1441316522 + +[trash] +caja-icon-position=64,302 +icon-scale=1 +caja-icon-position-timestamp=1441316522 + +[computer] +caja-icon-position=64,22 +icon-scale=1 +caja-icon-position-timestamp=1441316522 + +[home] +caja-icon-position=64,102 +icon-scale=1 +caja-icon-position-timestamp=1441316522 + +[openSUSE 13.2 KDE Live.volume] +caja-icon-position=64,382 +icon-scale=1 +caja-icon-position-timestamp=1441316562 diff --git a/configs/mate-openrc/root-image/etc/skel/.config/dconf/user b/configs/mate-openrc/root-image/etc/skel/.config/dconf/user new file mode 100644 index 0000000..e14186e Binary files /dev/null and b/configs/mate-openrc/root-image/etc/skel/.config/dconf/user differ diff --git a/configs/mate-openrc/root-image/etc/skel/.config/gtk-2.0/gtkfilechooser.ini b/configs/mate-openrc/root-image/etc/skel/.config/gtk-2.0/gtkfilechooser.ini new file mode 100644 index 0000000..d4c8858 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/skel/.config/gtk-2.0/gtkfilechooser.ini @@ -0,0 +1,11 @@ +[Filechooser Settings] +LocationMode=path-bar +ShowHidden=false +ShowSizeColumn=true +GeometryX=52 +GeometryY=105 +GeometryWidth=920 +GeometryHeight=585 +SortColumn=name +SortOrder=ascending +StartupMode=recent diff --git a/configs/mate-openrc/root-image/etc/skel/.config/volumeicon/volumeicon b/configs/mate-openrc/root-image/etc/skel/.config/volumeicon/volumeicon new file mode 100644 index 0000000..588b9dd --- /dev/null +++ b/configs/mate-openrc/root-image/etc/skel/.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/mate-openrc/root-image/etc/skel/.directory b/configs/mate-openrc/root-image/etc/skel/.directory new file mode 100644 index 0000000..07c52ff --- /dev/null +++ b/configs/mate-openrc/root-image/etc/skel/.directory @@ -0,0 +1,6 @@ +[Dolphin] +Timestamp=2014,12,3,17,12,32 +Version=3 + +[Settings] +HiddenFilesShown=true diff --git a/configs/mate-openrc/root-image/etc/sudoers.d/g_wheel b/configs/mate-openrc/root-image/etc/sudoers.d/g_wheel new file mode 100644 index 0000000..8c45359 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/sudoers.d/g_wheel @@ -0,0 +1 @@ +%wheel ALL=(ALL) NOPASSWD: ALL diff --git a/configs/mate-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules b/configs/mate-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules new file mode 100644 index 0000000..970da69 --- /dev/null +++ b/configs/mate-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules @@ -0,0 +1 @@ +ACTION=="add", SUBSYSTEM=="net", ENV{SYSTEMD_WANTS}="dhcpcd@$name.service" diff --git a/configs/mate-openrc/root-image/etc/wallpaper.png b/configs/mate-openrc/root-image/etc/wallpaper.png new file mode 100644 index 0000000..16b906a Binary files /dev/null and b/configs/mate-openrc/root-image/etc/wallpaper.png differ diff --git a/configs/mate-openrc/root-image/root/.automated_script.sh b/configs/mate-openrc/root-image/root/.automated_script.sh new file mode 100755 index 0000000..fb106da --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.codecheck b/configs/mate-openrc/root-image/root/.codecheck new file mode 100644 index 0000000..7c5d84a --- /dev/null +++ b/configs/mate-openrc/root-image/root/.codecheck @@ -0,0 +1,2 @@ +LANG=0 +XKBMAP=us diff --git a/configs/mate-openrc/root-image/root/.config/autostart/.keymap.desktop b/configs/mate-openrc/root-image/root/.config/autostart/.keymap.desktop new file mode 100755 index 0000000..f55da1d --- /dev/null +++ b/configs/mate-openrc/root-image/root/.config/autostart/.keymap.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Type=Application +Exec=/root/.keymap.sh +Hidden=false +X-MATE-Autostart-enabled=true +Name=keymap +Comment= diff --git a/configs/mate-openrc/root-image/root/.config/autostart/.language.sh.desktop b/configs/mate-openrc/root-image/root/.config/autostart/.language.sh.desktop new file mode 100644 index 0000000..1fb65f8 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.config/autostart/.language.sh.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Type=Application +Exec=/root/.language.sh +Hidden=false +X-MATE-Autostart-enabled=true +Name[en_US]=/root/.language.sh +Name=/root/.language.sh +Comment[en_US]= +Comment= diff --git a/configs/mate-openrc/root-image/root/.config/caja/accels b/configs/mate-openrc/root-image/root/.config/caja/accels new file mode 100644 index 0000000..9464f0d --- /dev/null +++ b/configs/mate-openrc/root-image/root/.config/caja/accels @@ -0,0 +1,133 @@ +; caja GtkAccelMap rc-file -*- scheme -*- +; this file is an automated accelerator map dump +; +; (gtk_accel_path "/DirViewActions/Trash" "") +; (gtk_accel_path "/DirViewActions/Save Search" "") +; (gtk_accel_path "/IconViewActions/Sort by Emblems" "") +; (gtk_accel_path "/DirViewActions/Start Volume" "") +; (gtk_accel_path "/DirViewActions/Location Poll" "") +; (gtk_accel_path "/ShellActions/Go to Trash" "") +; (gtk_accel_path "/SpatialActions/Go to Location" "l") +; (gtk_accel_path "/IconViewActions/Stretch" "") +; (gtk_accel_path "/DirViewActions/MoveToMenu" "") +; (gtk_accel_path "/ShellActions/ZoomInAccel" "equal") +; (gtk_accel_path "/DirViewActions/LocationTrash" "") +; (gtk_accel_path "/DirViewActions/RenameSelectAll" "F2") +; (gtk_accel_path "/DirViewActions/Undo" "z") +; (gtk_accel_path "/DirViewActions/Location Start Volume" "") +; (gtk_accel_path "/DirViewActions/CopyToMenu" "") +; (gtk_accel_path "/DirViewActions/Empty Trash" "") +; (gtk_accel_path "/ShellActions/Close" "w") +; (gtk_accel_path "/DirViewActions/LocationRestoreFromTrash" "") +; (gtk_accel_path "/IconViewActions/Manual Layout" "") +; (gtk_accel_path "/ShellActions/Zoom Normal" "0") +; (gtk_accel_path "/DirViewActions/Create Link" "m") +; (gtk_accel_path "/DirViewActions/LocationDelete" "") +; (gtk_accel_path "/IconViewActions/Sort by Trash Time" "") +; (gtk_accel_path "/DirViewActions/OtherApplication2" "") +; (gtk_accel_path "/DirViewActions/OpenInNewTab" "o") +; (gtk_accel_path "/DirViewActions/OtherApplication1" "") +; (gtk_accel_path "/ShellActions/Connect to Server" "") +; (gtk_accel_path "/ShellActions/Help" "") +; (gtk_accel_path "/ShellActions/ZoomInAccel2" "KP_Add") +; (gtk_accel_path "/SpatialActions/Close All Folders" "q") +; (gtk_accel_path "/ShellActions/File" "") +; (gtk_accel_path "/DirViewActions/Format Volume" "") +; (gtk_accel_path "/ShellActions/Caja Manual" "F1") +; (gtk_accel_path "/ShellActions/Go to Network" "") +; (gtk_accel_path "/DirViewActions/Mount Volume" "") +; (gtk_accel_path "/DirViewActions/Copy" "c") +; (gtk_accel_path "/IconViewActions/Sort by Type" "") +; (gtk_accel_path "/ShellActions/View" "") +; (gtk_accel_path "/DirViewActions/New Empty File" "") +; (gtk_accel_path "/ShellActions/About Caja" "") +; (gtk_accel_path "/DirViewActions/Location Eject Volume" "") +; (gtk_accel_path "/IconViewActions/Unstretch" "") +; (gtk_accel_path "/ShellActions/Zoom Out" "minus") +; (gtk_accel_path "/DirViewActions/OpenCloseParent" "Down") +; (gtk_accel_path "/SpatialActions/Close Parent Folders" "w") +; (gtk_accel_path "/DirViewActions/Open" "o") +; (gtk_accel_path "/DirViewActions/Self Format Volume" "") +; (gtk_accel_path "/DirViewActions/Unmount Volume" "") +; (gtk_accel_path "/DirViewActions/Connect To Server Link" "") +; (gtk_accel_path "/DirViewActions/Location Unmount Volume" "") +; (gtk_accel_path "/DirViewActions/Reset to Defaults" "") +; (gtk_accel_path "/DirViewActions/Location Mount Volume" "") +; (gtk_accel_path "/DirViewActions/LocationCut" "") +; (gtk_accel_path "/ShellActions/Zoom In" "plus") +; (gtk_accel_path "/DirViewActions/LocationOpenFolderWindow" "") +; (gtk_accel_path "/DirViewActions/Self Eject Volume" "") +; (gtk_accel_path "/IconViewActions/Tighter Layout" "") +; (gtk_accel_path "/DirViewActions/Paste Files Into" "") +; (gtk_accel_path "/DirViewActions/LocationCopy" "") +; (gtk_accel_path "/DirViewActions/OpenAccel" "Down") +; (gtk_accel_path "/DirViewActions/Open With" "") +; (gtk_accel_path "/ShellActions/Edit" "") +; (gtk_accel_path "/ShellActions/Up" "Up") +; (gtk_accel_path "/DirViewActions/Open Scripts Folder" "") +; (gtk_accel_path "/DirViewActions/New Documents" "") +; (gtk_accel_path "/ShellActions/Reload" "r") +; (gtk_accel_path "/DirViewActions/Move to Home" "") +; (gtk_accel_path "/ShellActions/Backgrounds and Emblems" "") +; (gtk_accel_path "/DirViewActions/No Templates" "") +; (gtk_accel_path "/DirViewActions/Location Format Volume" "") +; (gtk_accel_path "/ShellActions/ZoomOutAccel" "KP_Subtract") +; (gtk_accel_path "/DirViewActions/LocationPasteFilesInto" "") +; (gtk_accel_path "/IconViewActions/Sort by Size" "") +; (gtk_accel_path "/DirViewActions/Select All" "a") +; (gtk_accel_path "/DirViewActions/OpenAlternate" "o") +; (gtk_accel_path "/ShellActions/Preferences" "") +; (gtk_accel_path "/DirViewActions/Poll" "") +; (gtk_accel_path "/DirViewActions/Select Pattern" "s") +; (gtk_accel_path "/DesktopViewActions/Change Background" "") +; (gtk_accel_path "/IconViewActions/Reversed Order" "") +; (gtk_accel_path "/ShellActions/Go to Computer" "") +; (gtk_accel_path "/DirViewActions/Restore From Trash" "") +; (gtk_accel_path "/DirViewActions/Location Stop Volume" "") +; (gtk_accel_path "/DirViewActions/LocationProperties" "") +; (gtk_accel_path "/DirViewActions/Rename" "F2") +; (gtk_accel_path "/DirViewActions/Redo" "y") +; (gtk_accel_path "/ShellActions/Go to Templates" "") +; (gtk_accel_path "/ShellActions/Show Hidden Files" "h") +; (gtk_accel_path "/DirViewActions/Self Start Volume" "") +; (gtk_accel_path "/DirViewActions/Move to next pane" "") +; (gtk_accel_path "/DirViewActions/OpenFolderWindow" "") +; (gtk_accel_path "/DirViewActions/LocationOpenInNewTab" "") +; (gtk_accel_path "/DirViewActions/Duplicate" "") +; (gtk_accel_path "/DirViewActions/Eject Volume" "") +; (gtk_accel_path "/DirViewActions/Stop Volume" "") +; (gtk_accel_path "/DirViewActions/PropertiesAccel" "i") +; (gtk_accel_path "/ShellActions/Home" "Home") +; (gtk_accel_path "/IconViewActions/Clean Up" "") +; (gtk_accel_path "/IconViewActions/Sort by Modification Date" "") +; (gtk_accel_path "/DirViewActions/Save Search As" "") +; (gtk_accel_path "/IconViewActions/Keep Aligned" "") +; (gtk_accel_path "/DirViewActions/New Launcher" "") +; (gtk_accel_path "/DirViewActions/Properties" "Return") +; (gtk_accel_path "/SpatialActions/Add Bookmark" "d") +; (gtk_accel_path "/DirViewActions/Copy to Desktop" "") +; (gtk_accel_path "/ShellActions/Stop" "") +; (gtk_accel_path "/DirViewActions/New Folder" "n") +; (gtk_accel_path "/DirViewActions/Self Poll" "") +; (gtk_accel_path "/DirViewActions/Move to Desktop" "") +; (gtk_accel_path "/DirViewActions/Cut" "x") +; (gtk_accel_path "/view_as_4" "4") +; (gtk_accel_path "/DirViewActions/Delete" "Delete") +; (gtk_accel_path "/DesktopViewActions/New Launcher Desktop" "") +; (gtk_accel_path "/IconViewActions/Sort by Name" "") +; (gtk_accel_path "/view_as_2" "2") +; (gtk_accel_path "/view_as_3" "3") +; (gtk_accel_path "/DirViewActions/Paste" "v") +; (gtk_accel_path "/DirViewActions/Invert Selection" "i") +; (gtk_accel_path "/view_as_1" "1") +; (gtk_accel_path "/DesktopViewActions/Empty Trash Conditional" "") +; (gtk_accel_path "/IconViewActions/Arrange Items" "") +; (gtk_accel_path "/DirViewActions/Self Stop Volume" "") +; (gtk_accel_path "/SpatialActions/Places" "") +; (gtk_accel_path "/SpatialActions/Edit Bookmarks" "b") +; (gtk_accel_path "/DirViewActions/Copy to Home" "") +; (gtk_accel_path "/DirViewActions/Self Mount Volume" "") +; (gtk_accel_path "/SpatialActions/Search" "f") +; (gtk_accel_path "/DirViewActions/Self Unmount Volume" "") +; (gtk_accel_path "/DirViewActions/Copy to next pane" "") +; (gtk_accel_path "/DirViewActions/LocationOpenAlternate" "") diff --git a/configs/mate-openrc/root-image/root/.config/caja/desktop-metadata b/configs/mate-openrc/root-image/root/.config/caja/desktop-metadata new file mode 100644 index 0000000..9ac6828 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.config/caja/desktop-metadata @@ -0,0 +1,24 @@ +[directory] +caja-icon-view-keep-aligned=true +caja-icon-view-layout-timestamp=1441319556 +caja-window-scroll-position=file:///root/Desktop/Parabola%20Installation%20CLI.desktop + +[trash] +caja-icon-position=64,302 +icon-scale=1 +caja-icon-position-timestamp=1441319556 + +[computer] +caja-icon-position=64,22 +icon-scale=1 +caja-icon-position-timestamp=1441319556 + +[home] +caja-icon-position=64,102 +icon-scale=1 +caja-icon-position-timestamp=1441319556 + +[openSUSE 13.2 KDE Live.volume] +caja-icon-position=64,382 +icon-scale=1 +caja-icon-position-timestamp=1441319577 diff --git a/configs/mate-openrc/root-image/root/.config/dconf/user b/configs/mate-openrc/root-image/root/.config/dconf/user new file mode 100644 index 0000000..dab7f59 Binary files /dev/null and b/configs/mate-openrc/root-image/root/.config/dconf/user differ diff --git a/configs/mate-openrc/root-image/root/.config/gtk-2.0/gtkfilechooser.ini b/configs/mate-openrc/root-image/root/.config/gtk-2.0/gtkfilechooser.ini new file mode 100644 index 0000000..c6b458d --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.config/volumeicon/volumeicon b/configs/mate-openrc/root-image/root/.config/volumeicon/volumeicon new file mode 100644 index 0000000..588b9dd --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.directory b/configs/mate-openrc/root-image/root/.directory new file mode 100644 index 0000000..af61e27 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.directory @@ -0,0 +1,6 @@ +[Dolphin] +Timestamp=2014,12,3,11,8,28 +Version=3 + +[Settings] +HiddenFilesShown=true diff --git a/configs/mate-openrc/root-image/root/.keymap.sh b/configs/mate-openrc/root-image/root/.keymap.sh new file mode 100755 index 0000000..ddd5c62 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.keymap.sh @@ -0,0 +1,116 @@ +#!/bin/bash + +list_keymaps() { +cat <> ~/.codecheck +fi diff --git a/configs/mate-openrc/root-image/root/.language.sh b/configs/mate-openrc/root-image/root/.language.sh new file mode 100755 index 0000000..d12cb61 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.language.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +finish=0 #If change locale the system need restart session to see the changes + +#Comprobe if language was selected +code=$(cat ~/.codecheck | grep LANG= | tail --bytes 2) +if [ $code = "0" ]; then + lang=$(zenity --list --title="Select your locale" --column="Locale" --column="Language" \ + "en_US.UTF-8" "English" \ + "gl_ES.UTF-8" "Galego" \ + "es_ES.UTF-8" "Spanish" \ + "pt_BR.UTF-8" "Brazilian Portuguese") + + #Copy locale in locale.conf + 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 icewm menu in that language and scripts to install + cp -a ~/.icewm/menuLanguages/menu_${lang/_*/} ~/.icewm/menu + cp -a ~/.scriptsInstallation/language/${lang/_*/}/* ~/.scriptsInstallation/ + + finish=1 +fi + +# Save keymap as "us" so it starts next login +sed -i '/XKBMAP=./d' ~/.codecheck +echo "XKBMAP=us" >> ~/.codecheck + +if [ $finish -eq 1 ]; then + #Restart session + pkill -KILL -u root +fi diff --git a/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/install.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/install.sh new file mode 100755 index 0000000..efb389b --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/install.sh @@ -0,0 +1,217 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +pacman -Sy parabola-keyring --noconfirm +pacman-key --populate parabola +pacman-key --refresh-keys + +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 dbus-elogind + 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" + "mate" + "mate-applets" + "mate-terminal" + "caja" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + ) + + #Install packages + pacstrap /mnt ${packages[@]} + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copie 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 mate-session" >> /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 + 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/mate-openrc/root-image/root/.scriptsInstallation/language/en/systemConfig.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/systemConfig.sh new file mode 100755 index 0000000..9ef90ac --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(echo "$(dialog --stdout --inputbox "Enter Hostname:" 8 40)" > /etc/hostname) +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 "Repite root password" 8 40) +done + +usermod -p $(openssl passwd ${password}) root + +exit diff --git a/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/userAccount.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/en/userAccount.sh new file mode 100755 index 0000000..a9551d8 --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.scriptsInstallation/language/es/install.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/install.sh new file mode 100755 index 0000000..8d47f10 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/install.sh @@ -0,0 +1,217 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +pacman -Sy parabola-keyring --noconfirm +pacman-key --populate parabola +pacman-key --refresh-keys + +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) 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 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 dbus-elogind + 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" + "mate" + "mate-applets" + "mate-terminal" + "caja" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + ) + + #Install packages + pacstrap /mnt ${packages[@]} + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copie 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 mate-session" >> /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 + 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/mate-openrc/root-image/root/.scriptsInstallation/language/es/systemConfig.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/systemConfig.sh new file mode 100755 index 0000000..13e245b --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(echo "$(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/mate-openrc/root-image/root/.scriptsInstallation/language/es/userAccount.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/es/userAccount.sh new file mode 100755 index 0000000..4ed7437 --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.scriptsInstallation/language/gl/install.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/install.sh new file mode 100755 index 0000000..a2c1caf --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/install.sh @@ -0,0 +1,216 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +pacman -Sy parabola-keyring --noconfirm +pacman-key --populate parabola +pacman-key --refresh-keys + +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 dbus-elogind + 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" + "mate" + "mate-applets" + "mate-terminal" + "caja" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + ) + + #Install packages + pacstrap /mnt ${packages[@]} + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copie 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 mate-session" >> /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 + 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/mate-openrc/root-image/root/.scriptsInstallation/language/gl/systemConfig.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/systemConfig.sh new file mode 100755 index 0000000..14836e6 --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.scriptsInstallation/language/gl/userAccount.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/gl/userAccount.sh new file mode 100755 index 0000000..aa1d33a --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.scriptsInstallation/language/pt/install.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/install.sh new file mode 100755 index 0000000..0474fac --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/install.sh @@ -0,0 +1,217 @@ +#!/bin/bash +#Temporal is a file that contains parameters to use when access to chroot + +pacman -Sy parabola-keyring --noconfirm +pacman-key --populate parabola +pacman-key --refresh-keys + +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 dbus-elogind + 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" + "mate" + "mate-applets" + "mate-terminal" + "caja" + "volumeicon" + "zenity" + "octopi" + "pulseaudio-alsa" + "alsa-utils" + "networkmanager" + "network-manager-applet" + "ath9k-htc-firmware" + "iceweasel" + "icedove" + "pidgin" + "gparted" + "smplayer" + "epdfview" + "gpicview" + "abiword" + "gnumeric" + "leafpad" + "galculator-gtk2" + "xarchiver" + "openrc-desktop" + ) + + #Install packages + pacstrap /mnt ${packages[@]} + user=$(cat ~/.scriptsInstallation/temporal | grep "userName" ) + + #Copie 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 mate-session" >> /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 + 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/mate-openrc/root-image/root/.scriptsInstallation/language/pt/systemConfig.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/systemConfig.sh new file mode 100755 index 0000000..44d251b --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/systemConfig.sh @@ -0,0 +1,271 @@ +#!/bin/bash + +HOSTNAME=$(echo "$(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/mate-openrc/root-image/root/.scriptsInstallation/language/pt/userAccount.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/language/pt/userAccount.sh new file mode 100755 index 0000000..408beba --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.scriptsInstallation/parabolaicon.png b/configs/mate-openrc/root-image/root/.scriptsInstallation/parabolaicon.png new file mode 100644 index 0000000..aed32d7 Binary files /dev/null and b/configs/mate-openrc/root-image/root/.scriptsInstallation/parabolaicon.png differ diff --git a/configs/mate-openrc/root-image/root/.scriptsInstallation/x11.sh b/configs/mate-openrc/root-image/root/.scriptsInstallation/x11.sh new file mode 100755 index 0000000..a335cec --- /dev/null +++ b/configs/mate-openrc/root-image/root/.scriptsInstallation/x11.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +service NetworkManager start diff --git a/configs/mate-openrc/root-image/root/.themes/Parabola/index.theme b/configs/mate-openrc/root-image/root/.themes/Parabola/index.theme new file mode 100644 index 0000000..d6b2393 --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/.xinitrc b/configs/mate-openrc/root-image/root/.xinitrc new file mode 100644 index 0000000..20fc29e --- /dev/null +++ b/configs/mate-openrc/root-image/root/.xinitrc @@ -0,0 +1,12 @@ +setxkbmap $(cat ~/.codecheck | grep XKBMAP= | cut -d '=' -f 2) +service NetworkManager start +service dbus start +service alsasound start +volumeicon & +gsettings set org.mate.interface gtk-theme 'Radiance-Purple' +gsettings set org.mate.Marco.general theme 'Radiance-Purple' +gsettings set org.mate.interface icon-theme 'RAVE-X-Dark-Purple' +gsettings set org.mate.peripherals-mouse cursor-size '18' +gsettings set org.mate.peripherals-mouse cursor-theme 'mate' +gsettings set org.mate.background picture-filename '/etc/wallpaper.png' +exec mate-session diff --git a/configs/mate-openrc/root-image/root/.zlogin b/configs/mate-openrc/root-image/root/.zlogin new file mode 100644 index 0000000..7cdfca9 --- /dev/null +++ b/configs/mate-openrc/root-image/root/.zlogin @@ -0,0 +1,2 @@ +~/.automated_script.sh +startx diff --git a/configs/mate-openrc/root-image/root/Desktop/Parabola Installation CLI.desktop b/configs/mate-openrc/root-image/root/Desktop/Parabola Installation CLI.desktop new file mode 100644 index 0000000..9a2d871 --- /dev/null +++ b/configs/mate-openrc/root-image/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/mate-openrc/root-image/root/customize_root_image.sh b/configs/mate-openrc/root-image/root/customize_root_image.sh new file mode 100755 index 0000000..88b43b3 --- /dev/null +++ b/configs/mate-openrc/root-image/root/customize_root_image.sh @@ -0,0 +1,28 @@ +#!/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 +locale-gen + +ln -sf /usr/share/zoneinfo/UTC /etc/localtime + +usermod -s /usr/bin/zsh root +cp -aT /etc/skel/ /root/ + +useradd -m -p "" -g users -G "adm,audio,floppy,log,network,rfkill,scanner,storage,optical,power,wheel,disk,sys" -s /usr/bin/zsh parabola + +chmod 750 /etc/sudoers.d +chmod 440 /etc/sudoers.d/g_wheel + +sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist + +rc-update add NetworkManager default +rc-update add consolekit default +rc-update add alsasound default +rc-update add dbus default + +sed -i "s/_DATE_/${iso_version}/" /etc/motd diff --git a/configs/mate-openrc/syslinux/parabolaiso.cfg b/configs/mate-openrc/syslinux/parabolaiso.cfg new file mode 100644 index 0000000..473e245 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso.cfg @@ -0,0 +1,11 @@ +DEFAULT select + +LABEL select +COM32 boot/syslinux/whichsys.c32 +APPEND -pxe- pxe -sys- sys -iso- sys + +LABEL pxe +CONFIG boot/syslinux/parabolaiso_pxe_choose.cfg + +LABEL sys +CONFIG boot/syslinux/parabolaiso_sys_choose.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_head.cfg b/configs/mate-openrc/syslinux/parabolaiso_head.cfg new file mode 100644 index 0000000..a245309 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_head.cfg @@ -0,0 +1,25 @@ +SERIAL 0 38400 +UI boot/syslinux/vesamenu.c32 +MENU TITLE Parabola GNU/Linux-libre +MENU BACKGROUND boot/syslinux/splash.png + +MENU WIDTH 78 +MENU MARGIN 4 +MENU ROWS 7 +MENU VSHIFT 10 +MENU TABMSGROW 14 +MENU CMDLINEROW 14 +MENU HELPMSGROW 16 +MENU HELPMSGENDROW 29 + +# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu + +MENU COLOR border 35;40 #ff777caa #a0000000 std +MENU COLOR title 1;35;40 #ff777caa #a0000000 std +MENU COLOR sel 7;35;47 #e0ffffff #20777caa all +MENU COLOR unsel 35;40 #ff777caa #a0000000 std +MENU COLOR help 35;40 #c0b2b2b2 #a0000000 std +MENU COLOR timeout_msg 35;40 #ff777caa #00000000 std +MENU COLOR timeout 1;35;40 #ff777caa #00000000 std +MENU COLOR msg07 35;40 #ff777caa #a0000000 std +MENU COLOR tabmsg 35;40 #ff777caa #00000000 std diff --git a/configs/mate-openrc/syslinux/parabolaiso_pxe32.cfg b/configs/mate-openrc/syslinux/parabolaiso_pxe32.cfg new file mode 100644 index 0000000..9df86b7 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_pxe32.cfg @@ -0,0 +1,32 @@ +LABEL parabola32_nbd +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using NBD). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (NBD) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% parabolaiso_nbd_srv=${pxeserver} +SYSAPPEND 3 + +LABEL parabola32_nfs +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using NFS). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (NFS) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_nfs_srv=${pxeserver}:/run/parabolaiso/bootmnt +SYSAPPEND 3 + +LABEL parabola32_http +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using HTTP). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (HTTP) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_http_srv=http://${pxeserver}/ +SYSAPPEND 3 diff --git a/configs/mate-openrc/syslinux/parabolaiso_pxe64.cfg b/configs/mate-openrc/syslinux/parabolaiso_pxe64.cfg new file mode 100644 index 0000000..be3e3de --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_pxe64.cfg @@ -0,0 +1,32 @@ +LABEL parabola64_nbd +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using NBD). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (NBD) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% parabolaiso_nbd_srv=${pxeserver} +SYSAPPEND 3 + +LABEL parabola64_nfs +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using NFS). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (NFS) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_nfs_srv=${pxeserver}:/run/parabolaiso/bootmnt +SYSAPPEND 3 + +LABEL parabola64_http +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using HTTP). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (HTTP) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_http_srv=http://${pxeserver}/ +SYSAPPEND 3 diff --git a/configs/mate-openrc/syslinux/parabolaiso_pxe_32_inc.cfg b/configs/mate-openrc/syslinux/parabolaiso_pxe_32_inc.cfg new file mode 100644 index 0000000..ba514cb --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_pxe_32_inc.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_pxe32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_pxe_both_inc.cfg b/configs/mate-openrc/syslinux/parabolaiso_pxe_both_inc.cfg new file mode 100644 index 0000000..9396d9b --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_pxe_both_inc.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_pxe64.cfg +INCLUDE boot/syslinux/parabolaiso_pxe32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_pxe_choose.cfg b/configs/mate-openrc/syslinux/parabolaiso_pxe_choose.cfg new file mode 100644 index 0000000..a3a768f --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_pxe_choose.cfg @@ -0,0 +1,11 @@ +DEFAULT choose + +LABEL choose +COM32 boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/parabolaiso_pxe_both_inc.cfg + +LABEL nohave64 +CONFIG boot/syslinux/parabolaiso_pxe_32_inc.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_sys32.cfg b/configs/mate-openrc/syslinux/parabolaiso_sys32.cfg new file mode 100644 index 0000000..4abdf7a --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_sys32.cfg @@ -0,0 +1,9 @@ +LABEL parabola32 +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium. +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/mate-openrc/syslinux/parabolaiso_sys64.cfg b/configs/mate-openrc/syslinux/parabolaiso_sys64.cfg new file mode 100644 index 0000000..b154459 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_sys64.cfg @@ -0,0 +1,9 @@ +LABEL parabola64 +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium. +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/mate-openrc/syslinux/parabolaiso_sys_32_inc.cfg b/configs/mate-openrc/syslinux/parabolaiso_sys_32_inc.cfg new file mode 100644 index 0000000..c641201 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_sys_32_inc.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_sys32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_sys_both_inc.cfg b/configs/mate-openrc/syslinux/parabolaiso_sys_both_inc.cfg new file mode 100644 index 0000000..9dfb87f --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_sys_both_inc.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_sys64.cfg +INCLUDE boot/syslinux/parabolaiso_sys32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_sys_choose.cfg b/configs/mate-openrc/syslinux/parabolaiso_sys_choose.cfg new file mode 100644 index 0000000..d436062 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_sys_choose.cfg @@ -0,0 +1,11 @@ +DEFAULT choose + +LABEL choose +COM32 boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/parabolaiso_sys_both_inc.cfg + +LABEL nohave64 +CONFIG boot/syslinux/parabolaiso_sys_32_inc.cfg diff --git a/configs/mate-openrc/syslinux/parabolaiso_tail.cfg b/configs/mate-openrc/syslinux/parabolaiso_tail.cfg new file mode 100644 index 0000000..e85d8e1 --- /dev/null +++ b/configs/mate-openrc/syslinux/parabolaiso_tail.cfg @@ -0,0 +1,27 @@ +LABEL existing +TEXT HELP +Boot an existing operating system. +Press TAB to edit the disk and partition number to boot. +ENDTEXT +MENU LABEL Boot existing OS +COM32 boot/syslinux/chain.c32 +APPEND hd0 0 + +# http://www.memtest.org/ +LABEL memtest +MENU LABEL Run Memtest86+ (RAM test) +LINUX boot/memtest + +# http://hdt-project.org/ +LABEL hdt +MENU LABEL Hardware Information (HDT) +COM32 boot/syslinux/hdt.c32 +APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz + +LABEL reboot +MENU LABEL Reboot +COM32 boot/syslinux/reboot.c32 + +LABEL poweroff +MENU LABEL Power Off +COM32 boot/syslinux/poweroff.c32 diff --git a/configs/mate-openrc/syslinux/splash.png b/configs/mate-openrc/syslinux/splash.png new file mode 100644 index 0000000..ff1342f Binary files /dev/null and b/configs/mate-openrc/syslinux/splash.png differ diff --git a/configs/mate-openrc/syslinux/syslinux.cfg b/configs/mate-openrc/syslinux/syslinux.cfg new file mode 100644 index 0000000..0869ed2 --- /dev/null +++ b/configs/mate-openrc/syslinux/syslinux.cfg @@ -0,0 +1,5 @@ +DEFAULT loadconfig + +LABEL loadconfig + CONFIG parabolaiso.cfg + APPEND ../../ diff --git a/configs/profile-openrc/aitab b/configs/profile-openrc/aitab new file mode 100644 index 0000000..b7e9a17 --- /dev/null +++ b/configs/profile-openrc/aitab @@ -0,0 +1,3 @@ +# +root-image / i686 xz ext4 50% +root-image / x86_64 xz ext4 50% diff --git a/configs/profile-openrc/build.sh b/configs/profile-openrc/build.sh new file mode 100755 index 0000000..741160f --- /dev/null +++ b/configs/profile-openrc/build.sh @@ -0,0 +1,248 @@ +#!/bin/bash + +set -e -u + +iso_name=parabola-openrc +iso_label="PARA_$(date +%Y%m)" +iso_version=$(date +%Y.%m.%d) +install_dir=parabola +work_dir=work +out_dir=out +data_dir=/usr/share/parabolaiso/data + +arch=$(uname -m) +verbose="" +pacman_conf=${work_dir}/pacman.conf +script_path=$(readlink -f ${0%/*}) +initcpio_dir=${script_path}/../../parabolaiso/initcpio + +_usage () +{ + echo "usage ${0} [options]" + echo + echo " General options:" + echo " -N Set an iso filename (prefix)" + echo " Default: ${iso_name}" + echo " -V Set an iso version (in filename)" + echo " Default: ${iso_version}" + echo " -L Set an iso label (disk label)" + echo " Default: ${iso_label}" + echo " -D Set an install_dir (directory inside iso)" + echo " Default: ${install_dir}" + echo " -w Set the working directory" + echo " Default: ${work_dir}" + echo " -o Set the output directory" + echo " Default: ${out_dir}" + echo " -v Enable verbose output" + echo " -h This help message" + exit ${1} +} + +# Helper function to run make_*() only one time per architecture. +run_once() { + if [[ ! -e ${work_dir}/build.${1}_${arch} ]]; then + $1 + touch ${work_dir}/build.${1}_${arch} + fi +} + +# Setup custom pacman.conf with current cache directories. +make_pacman_conf() { + local _cache_dirs + _cache_dirs=($(pacman -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g')) + sed -r "s|^#?\\s*CacheDir.+|CacheDir = $(echo -n ${_cache_dirs[@]})|g" ${script_path}/pacman.conf > ${pacman_conf} +} + +# Base installation, plus needed packages (root-image) +make_basefs() { + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" init + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -p "memtest86+ mkinitcpio-nfs-utils nbd" install +} + +# Additional packages (root-image) +make_packages() { + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -p "$(grep -h -v ^# ${script_path}/packages.{both,${arch}})" install +} + +# Copy mkinitcpio parabolaiso hooks and build initramfs (root-image) +make_setup_mkinitcpio() { + local _hook + for _hook in parabolaiso parabolaiso_shutdown parabolaiso_pxe_common parabolaiso_pxe_nbd parabolaiso_pxe_http parabolaiso_pxe_nfs parabolaiso_loop_mnt; do + cp ${initcpio_dir}/hooks/${_hook} ${work_dir}/${arch}/root-image/usr/lib/initcpio/hooks + cp ${initcpio_dir}/install/${_hook} ${work_dir}/${arch}/root-image/usr/lib/initcpio/install + done + cp ${initcpio_dir}/install/parabolaiso_kms ${work_dir}/${arch}/root-image/usr/lib/initcpio/install + cp ${initcpio_dir}/hooks/parabolaiso_shutdown ${work_dir}/${arch}/root-image/usr/lib/initcpio + cp ${script_path}/mkinitcpio.conf ${work_dir}/${arch}/root-image/etc/mkinitcpio-parabolaiso.conf + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -r 'mkinitcpio -c /etc/mkinitcpio-parabolaiso.conf -k /boot/vmlinuz-linux-libre -g /boot/parabolaiso.img' run +} + +# Customize installation (root-image) +make_customize_root_image() { + cp -af ${script_path}/root-image ${work_dir}/${arch} + + iso_version="${iso_version}" setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -r '/root/customize_root_image.sh' run + rm ${work_dir}/${arch}/root-image/root/customize_root_image.sh +} + +# Prepare kernel/initramfs ${install_dir}/boot/ +make_boot() { + mkdir -p ${work_dir}/iso/${install_dir}/boot/${arch} + cp ${work_dir}/${arch}/root-image/boot/parabolaiso.img ${work_dir}/iso/${install_dir}/boot/${arch}/parabolaiso.img + cp ${work_dir}/${arch}/root-image/boot/vmlinuz-linux-libre ${work_dir}/iso/${install_dir}/boot/${arch}/vmlinuz +} + +# Add other aditional/extra files to ${install_dir}/boot/ +make_boot_extra() { + cp ${work_dir}/${arch}/root-image/boot/memtest86+/memtest.bin ${work_dir}/iso/${install_dir}/boot/memtest + cp ${work_dir}/${arch}/root-image/usr/share/licenses/common/GPL2/license.txt ${work_dir}/iso/${install_dir}/boot/memtest.COPYING +} + +# Prepare /${install_dir}/boot/syslinux +make_syslinux() { + mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux + for _cfg in ${script_path}/syslinux/*.cfg; do + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/iso/${install_dir}/boot/syslinux/${_cfg##*/} + done + cp ${script_path}/syslinux/splash.png ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/*.c32 ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/lpxelinux.0 ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/memdisk ${work_dir}/iso/${install_dir}/boot/syslinux + mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux/hdt + gzip -c -9 ${work_dir}/${arch}/root-image/usr/share/hwdata/pci.ids > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/pciids.gz + gzip -c -9 ${work_dir}/${arch}/root-image/usr/lib/modules/*-gnu-*/modules.alias > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/modalias.gz +} + +# Prepare /isolinux +make_isolinux() { + mkdir -p ${work_dir}/iso/isolinux + sed "s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/isolinux/isolinux.cfg > ${work_dir}/iso/isolinux/isolinux.cfg + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/isolinux.bin ${work_dir}/iso/isolinux/ + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/isohdpfx.bin ${work_dir}/iso/isolinux/ + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/ldlinux.c32 ${work_dir}/iso/isolinux/ +} + +# Prepare /EFI +make_efi() { + mkdir -p ${work_dir}/iso/loader/entries + cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/iso/loader/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/iso/loader/entries/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/iso/loader/entries/ + + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" \ + ${script_path}/efiboot/loader/entries/parabolaiso-x86_64-usb.conf > ${work_dir}/iso/loader/entries/parabolaiso-x86_64.conf + + # EFI Shell 2.0 for UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UEFI_Shell ) + cp ${data_dir}/Shell.efi ${work_dir}/iso/EFI/shellx64_v2.efi + # EFI Shell 1.0 for non UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Efi-shell ) + cp ${data_dir}/Shell_Full.efi ${work_dir}/iso/EFI/shellx64_v1.efi +} + +# Prepare efiboot.img::/EFI for "El Torito" EFI boot mode +make_efiboot() { + mkdir -p ${work_dir}/iso/EFI/parabolaiso + truncate -s 38M ${work_dir}/iso/EFI/parabolaiso/efiboot.img + mkfs.vfat -n PARABOLAISO_EFI ${work_dir}/iso/EFI/parabolaiso/efiboot.img + + mkdir -p ${work_dir}/efiboot + mount ${work_dir}/iso/EFI/parabolaiso/efiboot.img ${work_dir}/efiboot + + mkdir -p ${work_dir}/efiboot/EFI/parabolaiso + cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/parabolaiso/vmlinuz.efi + cp ${work_dir}/iso/${install_dir}/boot/x86_64/parabolaiso.img ${work_dir}/efiboot/EFI/parabolaiso/parabolaiso.img + + mkdir -p ${work_dir}/efiboot/loader/entries + cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/efiboot/loader/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/efiboot/loader/entries/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/efiboot/loader/entries/ + + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" \ + ${script_path}/efiboot/loader/entries/parabolaiso-x86_64-cd.conf > ${work_dir}/efiboot/loader/entries/parabolaiso-x86_64.conf + + cp ${work_dir}/iso/EFI/shellx64_v2.efi ${work_dir}/efiboot/EFI/ + cp ${work_dir}/iso/EFI/shellx64_v1.efi ${work_dir}/efiboot/EFI/ + + umount ${work_dir}/efiboot +} + +# Copy aitab +make_aitab() { + mkdir -p ${work_dir}/iso/${install_dir} + cp ${script_path}/aitab ${work_dir}/iso/${install_dir}/aitab +} + +# Build all filesystem images specified in aitab (.fs.sfs .sfs) +make_prepare() { + cp -a -l -f ${work_dir}/${arch}/root-image ${work_dir} + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" pkglist + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" prepare + rm -rf ${work_dir}/root-image + # rm -rf ${work_dir}/${arch}/root-image (if low space, this helps) +} + +# Build ISO +make_iso() { + mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" checksum + mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-dual.iso" +} + +if [[ ${EUID} -ne 0 ]]; then + echo "This script must be run as root." + _usage 1 +fi + +if [[ ${arch} != x86_64 ]]; then + echo "This script needs to be run on x86_64" + _usage 1 +fi + +while getopts 'N:V:L:D:w:o:vh' arg; do + case "${arg}" in + N) iso_name="${OPTARG}" ;; + V) iso_version="${OPTARG}" ;; + L) iso_label="${OPTARG}" ;; + D) install_dir="${OPTARG}" ;; + w) work_dir="${OPTARG}" ;; + o) out_dir="${OPTARG}" ;; + v) verbose="-v" ;; + h) _usage 0 ;; + *) + echo "Invalid argument '${arg}'" + _usage 1 + ;; + esac +done + +mkdir -p ${work_dir} + +run_once make_pacman_conf + +# Do all stuff for each root-image +for arch in i686 x86_64; do + run_once make_basefs + run_once make_packages + run_once make_setup_mkinitcpio + run_once make_customize_root_image +done + +for arch in i686 x86_64; do + run_once make_boot +done + +# Do all stuff for "iso" +run_once make_boot_extra +run_once make_syslinux +run_once make_isolinux +run_once make_efi +run_once make_efiboot + +run_once make_aitab + +for arch in i686 x86_64; do + run_once make_prepare +done + +run_once make_iso diff --git a/configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf b/configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf new file mode 100644 index 0000000..057e14f --- /dev/null +++ b/configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf @@ -0,0 +1,4 @@ +title Parabola GNU/Linux-libre parabolaiso x86_64 UEFI CD +linux /EFI/parabolaiso/vmlinuz.efi +initrd /EFI/parabolaiso/parabolaiso.img +options parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf b/configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf new file mode 100644 index 0000000..3863799 --- /dev/null +++ b/configs/profile-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf @@ -0,0 +1,4 @@ +title Parabola GNU/Linux-libre parabolaiso x86_64 UEFI USB +linux /%INSTALL_DIR%/boot/x86_64/vmlinuz +initrd /%INSTALL_DIR%/boot/x86_64/parabolaiso.img +options parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/profile-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf b/configs/profile-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf new file mode 100644 index 0000000..9597ff2 --- /dev/null +++ b/configs/profile-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf @@ -0,0 +1,2 @@ +title UEFI Shell x86_64 v1 +efi /EFI/shellx64_v1.efi diff --git a/configs/profile-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf b/configs/profile-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf new file mode 100644 index 0000000..0dde77a --- /dev/null +++ b/configs/profile-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf @@ -0,0 +1,2 @@ +title UEFI Shell x86_64 v2 +efi /EFI/shellx64_v2.efi diff --git a/configs/profile-openrc/efiboot/loader/loader.conf b/configs/profile-openrc/efiboot/loader/loader.conf new file mode 100644 index 0000000..ba02c50 --- /dev/null +++ b/configs/profile-openrc/efiboot/loader/loader.conf @@ -0,0 +1,2 @@ +timeout 3 +default parabolaiso-x86_64 diff --git a/configs/profile-openrc/isolinux/isolinux.cfg b/configs/profile-openrc/isolinux/isolinux.cfg new file mode 100644 index 0000000..10472fb --- /dev/null +++ b/configs/profile-openrc/isolinux/isolinux.cfg @@ -0,0 +1,6 @@ +PATH /%INSTALL_DIR%/boot/syslinux/ +DEFAULT loadconfig + +LABEL loadconfig + CONFIG /%INSTALL_DIR%/boot/syslinux/parabolaiso.cfg + APPEND /%INSTALL_DIR%/ diff --git a/configs/profile-openrc/mkinitcpio.conf b/configs/profile-openrc/mkinitcpio.conf new file mode 100644 index 0000000..fc2572b --- /dev/null +++ b/configs/profile-openrc/mkinitcpio.conf @@ -0,0 +1,3 @@ +MODULES="loop" +HOOKS="base udev memdisk parabolaiso_shutdown parabolaiso parabolaiso_loop_mnt parabolaiso_pxe_common parabolaiso_pxe_nbd parabolaiso_pxe_http parabolaiso_pxe_nfs parabolaiso_kms block pcmcia filesystems keyboard" +COMPRESSION="xz" diff --git a/configs/profile-openrc/packages.both b/configs/profile-openrc/packages.both new file mode 100644 index 0000000..3d1a036 --- /dev/null +++ b/configs/profile-openrc/packages.both @@ -0,0 +1,59 @@ +arch-install-scripts +btrfs-progs +crda +darkhttpd +ddrescue +dhclient +dialog +dmraid +dnsmasq +dnsutils +dosfstools +elinks +ethtool +f2fs-tools +fsarchiver +gnu-netcat +gpm-openrc +gptfdisk +grml-zsh-config +grub +haveged-openrc +hdparm-openrc +irssi +lftp +linux-atm +lynx +mc +mtools +nfs-utils +nilfs-utils +nmap +ntfs-3g +ntp-openrc +openconnect +openssh-openrc +openvpn-openrc +partclone +parted +partimage +pptpclient +ppp +rfkill +rp-pppoe +rsync-openrc +smartmontools +sudo +tcpdump +testdisk +usb_modeswitch +vpnc +wget +wireless_tools +wpa_actiond +wpa_supplicant-openrc +zile +wvdial +xl2tpd +zsh +networkmanager-openrc diff --git a/configs/profile-openrc/packages.i686 b/configs/profile-openrc/packages.i686 new file mode 100644 index 0000000..e69de29 diff --git a/configs/profile-openrc/packages.x86_64 b/configs/profile-openrc/packages.x86_64 new file mode 100644 index 0000000..804cc93 --- /dev/null +++ b/configs/profile-openrc/packages.x86_64 @@ -0,0 +1 @@ +refind-efi diff --git a/configs/profile-openrc/pacman.conf b/configs/profile-openrc/pacman.conf new file mode 100644 index 0000000..03f449f --- /dev/null +++ b/configs/profile-openrc/pacman.conf @@ -0,0 +1,104 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -C - -f %u > %o +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#TotalDownload +# We cannot check disk space from within a chroot environment +#CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all Arch/Parabola packagers +# with `pacman-key --populate archlinux` and `pacman-key --populate parabola`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +#[pcr-testing] +#Include = /etc/pacman.d/mirrorlist + +[pcr] +Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/configs/profile-openrc/root-image/etc/conf.d/agetty.tty1 b/configs/profile-openrc/root-image/etc/conf.d/agetty.tty1 new file mode 100644 index 0000000..b7ff06d --- /dev/null +++ b/configs/profile-openrc/root-image/etc/conf.d/agetty.tty1 @@ -0,0 +1,11 @@ +# Set the baud rate of the terminal line +baud="38400" + +# set the terminal type +term_type="linux" + +# extra options to pass to agetty for this port +agetty_options="--autologin root --noclear" + +# make agetty quiet +#quiet="no" diff --git a/configs/profile-openrc/root-image/etc/conf.d/hostname b/configs/profile-openrc/root-image/etc/conf.d/hostname new file mode 100644 index 0000000..a701f0c --- /dev/null +++ b/configs/profile-openrc/root-image/etc/conf.d/hostname @@ -0,0 +1,2 @@ +# Set to the hostname of this machine +hostname="parabolaiso" diff --git a/configs/profile-openrc/root-image/etc/fstab b/configs/profile-openrc/root-image/etc/fstab new file mode 100644 index 0000000..e69de29 diff --git a/configs/profile-openrc/root-image/etc/init.d/pacman-init b/configs/profile-openrc/root-image/etc/init.d/pacman-init new file mode 100755 index 0000000..ccc884c --- /dev/null +++ b/configs/profile-openrc/root-image/etc/init.d/pacman-init @@ -0,0 +1,30 @@ +#!/usr/bin/openrc-run +# Copyright (C) 2017 Parabola Project +# Copyright 2013-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +description="Initializes Pacman keyring" + +depend() { + use haveged + after haveged +} + +start() { + # Check that there's no keyring, if there isn't, create one + if [ ! -d /etc/pacman.d/gnupg ]; then + ebegin "Starting Pacman keyring" + pacman-key --init &> /dev/null + pacman-key --populate archlinux parabola &> /dev/null + else + ebegin "Pacman Keyring already started" + fi +} + +stop() { + # If there's a keyring, delete it + if [ -d /etc/pacman.d/gnupg ]; then + ebegin "Stoping Pacman keyring" + rm -rf /etc/pacman.d/gnupg + fi +} diff --git a/configs/profile-openrc/root-image/etc/locale.conf b/configs/profile-openrc/root-image/etc/locale.conf new file mode 100644 index 0000000..01ec548 --- /dev/null +++ b/configs/profile-openrc/root-image/etc/locale.conf @@ -0,0 +1 @@ +LANG=en_US.UTF-8 diff --git a/configs/profile-openrc/root-image/etc/motd b/configs/profile-openrc/root-image/etc/motd new file mode 100644 index 0000000..a126999 --- /dev/null +++ b/configs/profile-openrc/root-image/etc/motd @@ -0,0 +1,14 @@ + +=============================================================================== + + Parabola live media _DATE_ + + To install Parabola, the system must be connected to the internet. + For instructions, enter this command: + lynx network.html + + Press the function keys while holding Alt to switch virtual terminals. + This allows entering commands without closing lynx. + +=============================================================================== + diff --git a/configs/profile-openrc/root-image/etc/pam.d/su b/configs/profile-openrc/root-image/etc/pam.d/su new file mode 100644 index 0000000..a291042 --- /dev/null +++ b/configs/profile-openrc/root-image/etc/pam.d/su @@ -0,0 +1,6 @@ +#%PAM-1.0 +auth sufficient pam_rootok.so +auth sufficient pam_wheel.so trust use_uid +auth required pam_unix.so +account required pam_unix.so +session required pam_unix.so diff --git a/configs/profile-openrc/root-image/etc/sudoers.d/g_wheel b/configs/profile-openrc/root-image/etc/sudoers.d/g_wheel new file mode 100644 index 0000000..8c45359 --- /dev/null +++ b/configs/profile-openrc/root-image/etc/sudoers.d/g_wheel @@ -0,0 +1 @@ +%wheel ALL=(ALL) NOPASSWD: ALL diff --git a/configs/profile-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules b/configs/profile-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules new file mode 100644 index 0000000..970da69 --- /dev/null +++ b/configs/profile-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules @@ -0,0 +1 @@ +ACTION=="add", SUBSYSTEM=="net", ENV{SYSTEMD_WANTS}="dhcpcd@$name.service" diff --git a/configs/profile-openrc/root-image/root/.automated_script.sh b/configs/profile-openrc/root-image/root/.automated_script.sh new file mode 100755 index 0000000..fb106da --- /dev/null +++ b/configs/profile-openrc/root-image/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/profile-openrc/root-image/root/.zlogin b/configs/profile-openrc/root-image/root/.zlogin new file mode 100644 index 0000000..f598e43 --- /dev/null +++ b/configs/profile-openrc/root-image/root/.zlogin @@ -0,0 +1 @@ +~/.automated_script.sh diff --git a/configs/profile-openrc/root-image/root/customize_root_image.sh b/configs/profile-openrc/root-image/root/customize_root_image.sh new file mode 100755 index 0000000..f0d3af7 --- /dev/null +++ b/configs/profile-openrc/root-image/root/customize_root_image.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +set -e -u + +check_dbus() { + cat /etc/$1|grep dbus +} + +sed -i 's/#\(en_US\.UTF-8\)/\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/ + +useradd -m -p "" -g users -G "adm,audio,floppy,log,network,rfkill,scanner,storage,optical,power,wheel" -s /usr/bin/zsh parabola + +# Create the dbus user if it doesn't exist +if [[ $(check_dbus group) = "" ]]; then + echo "Creating dbus group" + groupadd -g 81 dbus +fi +if [[ $(check_dbus passwd) = "" ]]; then + echo "Creating dbus user" + useradd -r -s /sbin/nologin -g 81 -u 81 dbus +fi + +chmod 750 /etc/sudoers.d +chmod 440 /etc/sudoers.d/g_wheel + +sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist + +rc-update add NetworkManager default +rc-update add dbus default +rc-update add haveged default +rc-update add pacman-init default + +sed -i "s/_DATE_/${iso_version}/" /etc/motd diff --git a/configs/profile-openrc/root-image/root/network.html b/configs/profile-openrc/root-image/root/network.html new file mode 100644 index 0000000..057e680 --- /dev/null +++ b/configs/profile-openrc/root-image/root/network.html @@ -0,0 +1,191 @@ +Online version: https://wiki.parabolagnulinux.org/Start_installing +

Contents

+ +
+

Start installing

+

You are now presented with a shell prompt, automatically logged in as root. +

+

Change the language

+
Tip: These are optional for the majority of users. Useful only if you plan on writing in your own language in any of the configuration files, if you use diacritical marks in the Wi-Fi password, or if you would like to receive system messages (e.g. possible errors) in your own language.
+

By default, the keyboard layout is set to us. If you have a non-US keyboard layout, run: +

+
# loadkeys layout
+
+

...where layout can be fr, uk, dvorak, be-latin1, etc. See here for a comprehensive list. +

The font should also be changed, because most languages use more glyphs than the 26 letter English alphabet. Otherwise some foreign characters may show up as white squares or as other symbols. Note that the name is case-sensitive, so please type it exactly as you see it: +

+
# setfont Lat2-Terminus16
+
+

By default, the language is set to English (US). If you would like to change the language for the install process (German, in this example), remove the # in front of the locale you want from /etc/locale.gen, along with English (US). Please choose the UTF-8 entry. +

Use Ctrl+X to exit, and when prompted to save changes, press Y and Enter to use the same filename. +

+
# nano /etc/locale.gen
+
+en_US.UTF-8 UTF-8
+de_DE.UTF-8 UTF-8
+
# locale-gen
+# export LANG=de_DE.UTF-8
+
+

Remember, LAlt+LShift activates and deactivates the keymap. +

+

Establish an internet connection

+
Warning: As of v197, udev no longer assigns network interface names according to the wlanX and ethX naming scheme. If you are coming from a different distribution or are reinstalling Parabola and not aware of the new interface naming style, please do not assume that your wireless interface is named wlan0, or that your wired interface is named eth0. You can use the command ip link to discover the names of your interfaces.
+

The dhcpcd network daemon starts automatically during boot and it will attempt to start a wired connection. Try to ping a server to see if a connection was established. For example, gnu.org: +

+
# ping -c 3 gnu.org
+
PING gnu.org (208.118.235.148) 56(84) bytes of data.
+64 bytes from wildebeest.gnu.org (208.118.235.148): icmp_seq=1 ttl=47 time=183 ms
+64 bytes from wildebeest.gnu.org (208.118.235.148): icmp_seq=2 ttl=47 time=168 ms
+64 bytes from wildebeest.gnu.org (208.118.235.148): icmp_seq=3 ttl=47 time=183 ms
+
+--- gnu.org ping statistics ---
+3 packets transmitted, 3 received, 0% packet loss, time 2002ms
+rtt min/avg/max/mdev = 168.131/178.357/183.914/7.248 ms
+

If you get a ping: unknown host error, first check if there is an issue with your cable or wireless signal strength. If not, you will need to set up the network manually, as explained below. Once a connection is established move on to Installation Guide. +

+

Wired

+

Follow this procedure if you need to set up a wired connection via a static IP address. +

First, disable the dhcpcd service which was started automatically at boot: +

+
# systemctl stop dhcpcd.service
+
+

Identify the name of your Ethernet interface. +

+
# ip link
+
+1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
+    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
+2: enp2s0f0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
+    link/ether 00:11:25:31:69:20 brd ff:ff:ff:ff:ff:ff
+3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
+    link/ether 01:02:03:04:05:06 brd ff:ff:ff:ff:ff:ff
+

In this example, the Ethernet interface is enp2s0f0. If you are unsure, your Ethernet interface is likely to start with the letter "e", and unlikely to be "lo" or start with the letter "w". You can also use iwconfig and see which interfaces are not wireless: +

+
# iwconfig
+
enp2s0f0  no wireless extensions.
+wlp3s0    IEEE 802.11bgn  ESSID:"NETGEAR97"
+          Mode:Managed  Frequency:2.427 GHz  Access Point: 2C:B0:5D:9C:72:BF
+          Bit Rate=65 Mb/s   Tx-Power=16 dBm
+          Retry  long limit:7   RTS thr:off   Fragment thr:off
+          Power Management:on
+          Link Quality=61/70  Signal level=-49 dBm
+          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
+          Tx excessive retries:0  Invalid misc:430   Missed beacon:0
+lo        no wireless extensions.
+

In this example, neither enp2s0f0 nor the loopback device have wireless extensions, meaning enp2s0f0 is our Ethernet interface. +

You also need to know these settings: +

+
  • Static IP address. +
  • Subnet mask. +
  • Gateway's IP address. +
  • Name servers' (DNS) IP addresses. +
  • Domain name (unless you are on a local LAN, in which case you can make it up). +
+

Activate the connected Ethernet interface (e.g. enp2s0f0): +

+
# ip link set enp2s0f0 up
+
+

Add the address: +

+
# ip addr add ip_address/subnetmask dev interface_name
+
+

For example: +

+
# ip addr add 192.168.1.2/24 dev enp2s0f0
+
+

For more options, run man ip. +

Add your gateway like this, substituting your own gateway's IP address: +

+
# ip route add default via ip_address
+
+

For example: +

+
# ip route add default via 192.168.1.1
+
+

Edit resolv.conf, substituting your name servers' IP addresses and your local domain name: +

+
# nano /etc/resolv.conf
+
+nameserver 61.23.173.5
+nameserver 61.95.849.8
+search example.com
+
Note: Currently, you may include a maximum of three nameserver lines. In order to overcome this limitation, you can use a locally caching nameserver like Dnsmasq.
+

You should now have a working network connection. If you do not, check the detailed Network Configuration page. +

+

Wireless

+

Follow this procedure if you need wireless connectivity (Wi-Fi) during the installation process. +

First, identify the name of your wireless interface. +

+
# iw dev
+
phy#0
+        Interface wlp3s0
+                ifindex 3
+                wdev 0x1
+                addr 00:21:6a:5e:52:bc
+                type managed
+

In this example, wlp3s0 is the available wireless interface. If you are unsure, your wireless interface is likely to start with the letter "w", and unlikely to be "lo" or start with the letter "e". +

+
Note: If you do not see output similar to this, then your wireless driver has not been loaded. Please see Wireless Setup for more detailed information.
+

Bring the interface up with: +

+
# ip link set wlp3s0 up
+
+

If you get this error message: SIOCSIFFLAGS: No such file or directory, your wireless chipset could need a non-free firmware to function. This is not supported on Parabola. Please see Wireless Setup if you are unsure if this is the true for your particular chipset. +

Next, use netctl's wifi-menu to connect to a network: +

+
# wifi-menu wlp3s0
+
+

You should now have a working network connection. If you do not, check the detailed Wireless Setup page. +

Alternatively, use iw dev wlp3s0 scan | grep SSID to scan for available networks, then connect to a network with: +

+
# wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "ssid" "psk")
+
+

You need to replace ssid with the name of your network (e.g. "Linksys etc...") and psk with your wireless password, leaving the quotes around the network name and password. +

Finally, you have to give your interface an IP address. This can be set manually or using the dhcp: +

+
# dhcpcd wlp3s0
+
+

If that does not work, issue the following commands: +

+
# echo 'ctrl_interface=DIR=/run/wpa_supplicant' > /etc/wpa_supplicant.conf
+# wpa_passphrase <ssid> <passphrase> >> /etc/wpa_supplicant.conf
+# ip link set <interface> up # May not be needed as dhcpcd should bring it up but may be needed for wpa_supplicant.
+# wpa_supplicant -B -D nl80211 -c /foobar.conf -i <interface name>
+# dhcpcd -A <interface name>
+
+

Analog modem, ISDN or PPPoE DSL

+

For xDSL, dial-up and ISDN connections, see Direct Modem Connection. +

+

Behind a proxy server

+

If you are behind a proxy server, you will need to export the http_proxy and ftp_proxy environment variables. See Proxy settings for more information. +

+
+

This page was retrieved from: https://wiki.parabolagnulinux.org/index.php?title=Start_installing&oldid=5138 +

+

Content is available under GNU Free Documentation License 1.3 (or at your option, any later version). +

+ + + diff --git a/configs/profile-openrc/syslinux/parabolaiso.cfg b/configs/profile-openrc/syslinux/parabolaiso.cfg new file mode 100644 index 0000000..473e245 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso.cfg @@ -0,0 +1,11 @@ +DEFAULT select + +LABEL select +COM32 boot/syslinux/whichsys.c32 +APPEND -pxe- pxe -sys- sys -iso- sys + +LABEL pxe +CONFIG boot/syslinux/parabolaiso_pxe_choose.cfg + +LABEL sys +CONFIG boot/syslinux/parabolaiso_sys_choose.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_head.cfg b/configs/profile-openrc/syslinux/parabolaiso_head.cfg new file mode 100644 index 0000000..a245309 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_head.cfg @@ -0,0 +1,25 @@ +SERIAL 0 38400 +UI boot/syslinux/vesamenu.c32 +MENU TITLE Parabola GNU/Linux-libre +MENU BACKGROUND boot/syslinux/splash.png + +MENU WIDTH 78 +MENU MARGIN 4 +MENU ROWS 7 +MENU VSHIFT 10 +MENU TABMSGROW 14 +MENU CMDLINEROW 14 +MENU HELPMSGROW 16 +MENU HELPMSGENDROW 29 + +# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu + +MENU COLOR border 35;40 #ff777caa #a0000000 std +MENU COLOR title 1;35;40 #ff777caa #a0000000 std +MENU COLOR sel 7;35;47 #e0ffffff #20777caa all +MENU COLOR unsel 35;40 #ff777caa #a0000000 std +MENU COLOR help 35;40 #c0b2b2b2 #a0000000 std +MENU COLOR timeout_msg 35;40 #ff777caa #00000000 std +MENU COLOR timeout 1;35;40 #ff777caa #00000000 std +MENU COLOR msg07 35;40 #ff777caa #a0000000 std +MENU COLOR tabmsg 35;40 #ff777caa #00000000 std diff --git a/configs/profile-openrc/syslinux/parabolaiso_pxe32.cfg b/configs/profile-openrc/syslinux/parabolaiso_pxe32.cfg new file mode 100644 index 0000000..9df86b7 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_pxe32.cfg @@ -0,0 +1,32 @@ +LABEL parabola32_nbd +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using NBD). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (NBD) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% parabolaiso_nbd_srv=${pxeserver} +SYSAPPEND 3 + +LABEL parabola32_nfs +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using NFS). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (NFS) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_nfs_srv=${pxeserver}:/run/parabolaiso/bootmnt +SYSAPPEND 3 + +LABEL parabola32_http +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using HTTP). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (HTTP) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_http_srv=http://${pxeserver}/ +SYSAPPEND 3 diff --git a/configs/profile-openrc/syslinux/parabolaiso_pxe64.cfg b/configs/profile-openrc/syslinux/parabolaiso_pxe64.cfg new file mode 100644 index 0000000..be3e3de --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_pxe64.cfg @@ -0,0 +1,32 @@ +LABEL parabola64_nbd +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using NBD). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (NBD) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% parabolaiso_nbd_srv=${pxeserver} +SYSAPPEND 3 + +LABEL parabola64_nfs +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using NFS). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (NFS) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_nfs_srv=${pxeserver}:/run/parabolaiso/bootmnt +SYSAPPEND 3 + +LABEL parabola64_http +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using HTTP). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (HTTP) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_http_srv=http://${pxeserver}/ +SYSAPPEND 3 diff --git a/configs/profile-openrc/syslinux/parabolaiso_pxe_32_inc.cfg b/configs/profile-openrc/syslinux/parabolaiso_pxe_32_inc.cfg new file mode 100644 index 0000000..ba514cb --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_pxe_32_inc.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_pxe32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_pxe_both_inc.cfg b/configs/profile-openrc/syslinux/parabolaiso_pxe_both_inc.cfg new file mode 100644 index 0000000..9396d9b --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_pxe_both_inc.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_pxe64.cfg +INCLUDE boot/syslinux/parabolaiso_pxe32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_pxe_choose.cfg b/configs/profile-openrc/syslinux/parabolaiso_pxe_choose.cfg new file mode 100644 index 0000000..a3a768f --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_pxe_choose.cfg @@ -0,0 +1,11 @@ +DEFAULT choose + +LABEL choose +COM32 boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/parabolaiso_pxe_both_inc.cfg + +LABEL nohave64 +CONFIG boot/syslinux/parabolaiso_pxe_32_inc.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_sys32.cfg b/configs/profile-openrc/syslinux/parabolaiso_sys32.cfg new file mode 100644 index 0000000..4abdf7a --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_sys32.cfg @@ -0,0 +1,9 @@ +LABEL parabola32 +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium. +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/profile-openrc/syslinux/parabolaiso_sys64.cfg b/configs/profile-openrc/syslinux/parabolaiso_sys64.cfg new file mode 100644 index 0000000..b154459 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_sys64.cfg @@ -0,0 +1,9 @@ +LABEL parabola64 +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium. +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/profile-openrc/syslinux/parabolaiso_sys_32_inc.cfg b/configs/profile-openrc/syslinux/parabolaiso_sys_32_inc.cfg new file mode 100644 index 0000000..c641201 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_sys_32_inc.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_sys32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_sys_both_inc.cfg b/configs/profile-openrc/syslinux/parabolaiso_sys_both_inc.cfg new file mode 100644 index 0000000..9dfb87f --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_sys_both_inc.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_sys64.cfg +INCLUDE boot/syslinux/parabolaiso_sys32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_sys_choose.cfg b/configs/profile-openrc/syslinux/parabolaiso_sys_choose.cfg new file mode 100644 index 0000000..d436062 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_sys_choose.cfg @@ -0,0 +1,11 @@ +DEFAULT choose + +LABEL choose +COM32 boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/parabolaiso_sys_both_inc.cfg + +LABEL nohave64 +CONFIG boot/syslinux/parabolaiso_sys_32_inc.cfg diff --git a/configs/profile-openrc/syslinux/parabolaiso_tail.cfg b/configs/profile-openrc/syslinux/parabolaiso_tail.cfg new file mode 100644 index 0000000..e85d8e1 --- /dev/null +++ b/configs/profile-openrc/syslinux/parabolaiso_tail.cfg @@ -0,0 +1,27 @@ +LABEL existing +TEXT HELP +Boot an existing operating system. +Press TAB to edit the disk and partition number to boot. +ENDTEXT +MENU LABEL Boot existing OS +COM32 boot/syslinux/chain.c32 +APPEND hd0 0 + +# http://www.memtest.org/ +LABEL memtest +MENU LABEL Run Memtest86+ (RAM test) +LINUX boot/memtest + +# http://hdt-project.org/ +LABEL hdt +MENU LABEL Hardware Information (HDT) +COM32 boot/syslinux/hdt.c32 +APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz + +LABEL reboot +MENU LABEL Reboot +COM32 boot/syslinux/reboot.c32 + +LABEL poweroff +MENU LABEL Power Off +COM32 boot/syslinux/poweroff.c32 diff --git a/configs/profile-openrc/syslinux/splash.png b/configs/profile-openrc/syslinux/splash.png new file mode 100644 index 0000000..ff1342f Binary files /dev/null and b/configs/profile-openrc/syslinux/splash.png differ diff --git a/configs/profile-openrc/syslinux/syslinux.cfg b/configs/profile-openrc/syslinux/syslinux.cfg new file mode 100644 index 0000000..0869ed2 --- /dev/null +++ b/configs/profile-openrc/syslinux/syslinux.cfg @@ -0,0 +1,5 @@ +DEFAULT loadconfig + +LABEL loadconfig + CONFIG parabolaiso.cfg + APPEND ../../ diff --git a/configs/talking-parabola-openrc/README b/configs/talking-parabola-openrc/README new file mode 100644 index 0000000..e5a7e16 --- /dev/null +++ b/configs/talking-parabola-openrc/README @@ -0,0 +1,10 @@ +Note that the build.sh script in line 128 and 159, which are commands for preparing the EFI image, copy systemd's files not present in OpenRC. +The same goes for the file root-image/root/customize_root_image.sh +I still haven't build TalkingParabola OpenRC image yet, so maybe some services might lack. +Parabola OpenRC images are not guaranteed to work in EFI machines, but I will work on it. If you have make Parabola OpenRC ISO work with EFI, please notify me. + +Megver83. +--- +Email & JID: megver83@openmailbox.org +Kontalk: +56 9 5630 2363 +Freenode: Megver83 diff --git a/configs/talking-parabola-openrc/aitab b/configs/talking-parabola-openrc/aitab new file mode 100644 index 0000000..b7e9a17 --- /dev/null +++ b/configs/talking-parabola-openrc/aitab @@ -0,0 +1,3 @@ +# +root-image / i686 xz ext4 50% +root-image / x86_64 xz ext4 50% diff --git a/configs/talking-parabola-openrc/build.sh b/configs/talking-parabola-openrc/build.sh new file mode 100755 index 0000000..6b214f0 --- /dev/null +++ b/configs/talking-parabola-openrc/build.sh @@ -0,0 +1,253 @@ +#!/bin/bash + +set -e -u + +iso_name=talkingparabola +iso_label="PARA_$(date +%Y%m)" +iso_version=$(date +%Y.%m.%d) +install_dir=parabola +work_dir=work +out_dir=out +data_dir=/usr/share/parabolaiso/data + +arch=$(uname -m) +verbose="" +pacman_conf=${work_dir}/pacman.conf +script_path=$(readlink -f ${0%/*}) + +_usage () +{ + echo "usage ${0} [options]" + echo + echo " General options:" + echo " -N Set an iso filename (prefix)" + echo " Default: ${iso_name}" + echo " -V Set an iso version (in filename)" + echo " Default: ${iso_version}" + echo " -L Set an iso label (disk label)" + echo " Default: ${iso_label}" + echo " -D Set an install_dir (directory inside iso)" + echo " Default: ${install_dir}" + echo " -w Set the working directory" + echo " Default: ${work_dir}" + echo " -o Set the output directory" + echo " Default: ${out_dir}" + echo " -v Enable verbose output" + echo " -h This help message" + exit ${1} +} + +# Helper function to run make_*() only one time per architecture. +run_once() { + if [[ ! -e ${work_dir}/build.${1}_${arch} ]]; then + $1 + touch ${work_dir}/build.${1}_${arch} + fi +} + +# Setup custom pacman.conf with current cache directories. +make_pacman_conf() { + local _cache_dirs + _cache_dirs=($(pacman -v 2>&1 | grep '^Cache Dirs:' | sed 's/Cache Dirs:\s*//g')) + sed -r "s|^#?\\s*CacheDir.+|CacheDir = $(echo -n ${_cache_dirs[@]})|g" ${script_path}/pacman.conf > ${pacman_conf} +} + +# Base installation, plus needed packages (root-image) +make_basefs() { + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" init + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -p "memtest86+ mkinitcpio-nfs-utils nbd" install +} + +# Additional packages (root-image) +make_packages() { + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -p "$(grep -h -v ^# ${script_path}/packages.{both,${arch}})" install +} + +# Copy mkinitcpio parabolaiso hooks and build initramfs (root-image) +make_setup_mkinitcpio() { + local _hook + for _hook in parabolaiso parabolaiso_shutdown parabolaiso_pxe_common parabolaiso_pxe_nbd parabolaiso_pxe_http parabolaiso_pxe_nfs parabolaiso_loop_mnt; do + cp /usr/lib/initcpio/hooks/${_hook} ${work_dir}/${arch}/root-image/usr/lib/initcpio/hooks + cp /usr/lib/initcpio/install/${_hook} ${work_dir}/${arch}/root-image/usr/lib/initcpio/install + done + cp /usr/lib/initcpio/install/parabolaiso_kms ${work_dir}/${arch}/root-image/usr/lib/initcpio/install + cp /usr/lib/initcpio/parabolaiso_shutdown ${work_dir}/${arch}/root-image/usr/lib/initcpio + cp ${script_path}/mkinitcpio.conf ${work_dir}/${arch}/root-image/etc/mkinitcpio-parabolaiso.conf + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -r 'mkinitcpio -c /etc/mkinitcpio-parabolaiso.conf -k /boot/vmlinuz-linux-libre -g /boot/parabolaiso.img' run +} + +# Customize installation (root-image) +make_customize_root_image() { + cp -af ${script_path}/root-image ${work_dir}/${arch} + + iso_version="${iso_version}" setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}/${arch}" -C "${pacman_conf}" -D "${install_dir}" -r '/root/customize_root_image.sh' run + rm ${work_dir}/${arch}/root-image/root/customize_root_image.sh +} + +# Prepare kernel/initramfs ${install_dir}/boot/ +make_boot() { + mkdir -p ${work_dir}/iso/${install_dir}/boot/${arch} + cp ${work_dir}/${arch}/root-image/boot/parabolaiso.img ${work_dir}/iso/${install_dir}/boot/${arch}/parabolaiso.img + cp ${work_dir}/${arch}/root-image/boot/vmlinuz-linux-libre ${work_dir}/iso/${install_dir}/boot/${arch}/vmlinuz +} + +# Add other aditional/extra files to ${install_dir}/boot/ +make_boot_extra() { + cp ${work_dir}/${arch}/root-image/boot/memtest86+/memtest.bin ${work_dir}/iso/${install_dir}/boot/memtest + cp ${work_dir}/${arch}/root-image/usr/share/licenses/common/GPL2/license.txt ${work_dir}/iso/${install_dir}/boot/memtest.COPYING +} + +# Prepare /${install_dir}/boot/syslinux +make_syslinux() { + mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux + for _cfg in ${script_path}/syslinux/*.cfg; do + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" ${_cfg} > ${work_dir}/iso/${install_dir}/boot/syslinux/${_cfg##*/} + done + cp syslinux/splash.png ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/*.c32 ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/lpxelinux.0 ${work_dir}/iso/${install_dir}/boot/syslinux + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/memdisk ${work_dir}/iso/${install_dir}/boot/syslinux + mkdir -p ${work_dir}/iso/${install_dir}/boot/syslinux/hdt + gzip -c -9 ${work_dir}/${arch}/root-image/usr/share/hwdata/pci.ids > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/pciids.gz + gzip -c -9 ${work_dir}/${arch}/root-image/usr/lib/modules/*-gnu-*/modules.alias > ${work_dir}/iso/${install_dir}/boot/syslinux/hdt/modalias.gz +} + +# Prepare /isolinux +make_isolinux() { + mkdir -p ${work_dir}/iso/isolinux + sed "s|%INSTALL_DIR%|${install_dir}|g" ${script_path}/isolinux/isolinux.cfg > ${work_dir}/iso/isolinux/isolinux.cfg + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/isolinux.bin ${work_dir}/iso/isolinux/ + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/isohdpfx.bin ${work_dir}/iso/isolinux/ + cp ${work_dir}/${arch}/root-image/usr/lib/syslinux/bios/ldlinux.c32 ${work_dir}/iso/isolinux/ +} + +# Prepare /EFI +make_efi() { + mkdir -p ${work_dir}/iso/EFI/boot + cp ${work_dir}/x86_64/root-image/usr/lib/systemd/boot/efi/systemd-bootx64.efi ${work_dir}/iso/EFI/boot/bootx64.efi + + mkdir -p ${work_dir}/iso/loader/entries + cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/iso/loader/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/iso/loader/entries/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/iso/loader/entries/ + + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" \ + ${script_path}/efiboot/loader/entries/parabolaiso-x86_64-usb.conf > ${work_dir}/iso/loader/entries/parabolaiso-x86_64.conf + + # EFI Shell 2.0 for UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UEFI_Shell ) + cp ${data_dir}/Shell.efi ${work_dir}/iso/EFI/shellx64_v2.efi + # EFI Shell 1.0 for non UEFI 2.3+ ( http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Efi-shell ) + cp ${data_dir}/Shell_Full.efi ${work_dir}/iso/EFI/shellx64_v1.efi +} + +# Prepare efiboot.img::/EFI for "El Torito" EFI boot mode +make_efiboot() { + mkdir -p ${work_dir}/iso/EFI/parabolaiso + truncate -s 31M ${work_dir}/iso/EFI/parabolaiso/efiboot.img + mkfs.vfat -n PARABOLAISO_EFI ${work_dir}/iso/EFI/parabolaiso/efiboot.img + + mkdir -p ${work_dir}/efiboot + mount ${work_dir}/iso/EFI/parabolaiso/efiboot.img ${work_dir}/efiboot + + mkdir -p ${work_dir}/efiboot/EFI/parabolaiso + cp ${work_dir}/iso/${install_dir}/boot/x86_64/vmlinuz ${work_dir}/efiboot/EFI/parabolaiso/vmlinuz.efi + cp ${work_dir}/iso/${install_dir}/boot/x86_64/parabolaiso.img ${work_dir}/efiboot/EFI/parabolaiso/parabolaiso.img + + mkdir -p ${work_dir}/efiboot/EFI/boot + cp ${work_dir}/x86_64/root-image/usr/lib/systemd/boot/efi/systemd-bootx64.efi ${work_dir}/efiboot/EFI/boot/bootx64.efi + + mkdir -p ${work_dir}/efiboot/loader/entries + cp ${script_path}/efiboot/loader/loader.conf ${work_dir}/efiboot/loader/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v2-x86_64.conf ${work_dir}/efiboot/loader/entries/ + cp ${script_path}/efiboot/loader/entries/uefi-shell-v1-x86_64.conf ${work_dir}/efiboot/loader/entries/ + + sed "s|%PARABOLAISO_LABEL%|${iso_label}|g; + s|%INSTALL_DIR%|${install_dir}|g" \ + ${script_path}/efiboot/loader/entries/parabolaiso-x86_64-cd.conf > ${work_dir}/efiboot/loader/entries/parabolaiso-x86_64.conf + + cp ${work_dir}/iso/EFI/shellx64_v2.efi ${work_dir}/efiboot/EFI/ + cp ${work_dir}/iso/EFI/shellx64_v1.efi ${work_dir}/efiboot/EFI/ + + umount ${work_dir}/efiboot +} + +# Copy aitab +make_aitab() { + mkdir -p ${work_dir}/iso/${install_dir} + cp ${script_path}/aitab ${work_dir}/iso/${install_dir}/aitab +} + +# Build all filesystem images specified in aitab (.fs.sfs .sfs) +make_prepare() { + cp -a -l -f ${work_dir}/${arch}/root-image ${work_dir} + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" pkglist + setarch ${arch} mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" prepare + rm -rf ${work_dir}/root-image + # rm -rf ${work_dir}/${arch}/root-image (if low space, this helps) +} + +# Build ISO +make_iso() { + mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" checksum + mkparabolaiso ${verbose} -w "${work_dir}" -D "${install_dir}" -L "${iso_label}" -o "${out_dir}" iso "${iso_name}-${iso_version}-dual.iso" +} + +if [[ ${EUID} -ne 0 ]]; then + echo "This script must be run as root." + _usage 1 +fi + +if [[ ${arch} != x86_64 ]]; then + echo "This script needs to be run on x86_64" + _usage 1 +fi + +while getopts 'N:V:L:D:w:o:vh' arg; do + case "${arg}" in + N) iso_name="${OPTARG}" ;; + V) iso_version="${OPTARG}" ;; + L) iso_label="${OPTARG}" ;; + D) install_dir="${OPTARG}" ;; + w) work_dir="${OPTARG}" ;; + o) out_dir="${OPTARG}" ;; + v) verbose="-v" ;; + h) _usage 0 ;; + *) + echo "Invalid argument '${arg}'" + _usage 1 + ;; + esac +done + +mkdir -p ${work_dir} + +run_once make_pacman_conf + +# Do all stuff for each root-image +for arch in i686 x86_64; do + run_once make_basefs + run_once make_packages + run_once make_setup_mkinitcpio + run_once make_customize_root_image +done + +for arch in i686 x86_64; do + run_once make_boot +done + +# Do all stuff for "iso" +run_once make_boot_extra +run_once make_syslinux +run_once make_isolinux +run_once make_efi +run_once make_efiboot + +run_once make_aitab + +for arch in i686 x86_64; do + run_once make_prepare +done + +run_once make_iso diff --git a/configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf b/configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf new file mode 100644 index 0000000..057e14f --- /dev/null +++ b/configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-cd.conf @@ -0,0 +1,4 @@ +title Parabola GNU/Linux-libre parabolaiso x86_64 UEFI CD +linux /EFI/parabolaiso/vmlinuz.efi +initrd /EFI/parabolaiso/parabolaiso.img +options parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf b/configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf new file mode 100644 index 0000000..3863799 --- /dev/null +++ b/configs/talking-parabola-openrc/efiboot/loader/entries/parabolaiso-x86_64-usb.conf @@ -0,0 +1,4 @@ +title Parabola GNU/Linux-libre parabolaiso x86_64 UEFI USB +linux /%INSTALL_DIR%/boot/x86_64/vmlinuz +initrd /%INSTALL_DIR%/boot/x86_64/parabolaiso.img +options parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf b/configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf new file mode 100644 index 0000000..9597ff2 --- /dev/null +++ b/configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v1-x86_64.conf @@ -0,0 +1,2 @@ +title UEFI Shell x86_64 v1 +efi /EFI/shellx64_v1.efi diff --git a/configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf b/configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf new file mode 100644 index 0000000..0dde77a --- /dev/null +++ b/configs/talking-parabola-openrc/efiboot/loader/entries/uefi-shell-v2-x86_64.conf @@ -0,0 +1,2 @@ +title UEFI Shell x86_64 v2 +efi /EFI/shellx64_v2.efi diff --git a/configs/talking-parabola-openrc/efiboot/loader/loader.conf b/configs/talking-parabola-openrc/efiboot/loader/loader.conf new file mode 100644 index 0000000..ba02c50 --- /dev/null +++ b/configs/talking-parabola-openrc/efiboot/loader/loader.conf @@ -0,0 +1,2 @@ +timeout 3 +default parabolaiso-x86_64 diff --git a/configs/talking-parabola-openrc/isolinux/isolinux.cfg b/configs/talking-parabola-openrc/isolinux/isolinux.cfg new file mode 100644 index 0000000..10472fb --- /dev/null +++ b/configs/talking-parabola-openrc/isolinux/isolinux.cfg @@ -0,0 +1,6 @@ +PATH /%INSTALL_DIR%/boot/syslinux/ +DEFAULT loadconfig + +LABEL loadconfig + CONFIG /%INSTALL_DIR%/boot/syslinux/parabolaiso.cfg + APPEND /%INSTALL_DIR%/ diff --git a/configs/talking-parabola-openrc/mkinitcpio.conf b/configs/talking-parabola-openrc/mkinitcpio.conf new file mode 100644 index 0000000..1006d1d --- /dev/null +++ b/configs/talking-parabola-openrc/mkinitcpio.conf @@ -0,0 +1,2 @@ +HOOKS="base udev memdisk parabolaiso_shutdown parabolaiso parabolaiso_loop_mnt parabolaiso_pxe_common parabolaiso_pxe_nbd parabolaiso_pxe_http parabolaiso_pxe_nfs parabolaiso_kms block pcmcia filesystems keyboard" +COMPRESSION="xz" diff --git a/configs/talking-parabola-openrc/packages.both b/configs/talking-parabola-openrc/packages.both new file mode 100644 index 0000000..28d9b90 --- /dev/null +++ b/configs/talking-parabola-openrc/packages.both @@ -0,0 +1,63 @@ +alsa-utils +arch-install-scripts +bluez +bluez-libs +brltty +btrfs-progs +crda +darkhttpd +ddrescue +dhclient +dialog +dmraid +dnsmasq +dnsutils +dosfstools +elinks +espeakup +ethtool +f2fs-tools +fsarchiver +gnu-netcat +gpm +gptfdisk +grml-zsh-config +grub +haveged +hdparm +irssi +lftp +linux-atm +lynx +mc +mtools +nfs-utils +nilfs-utils +nmap +ntfs-3g +ntp +openconnect +openssh +openvpn +partclone +parted +partimage +pptpclient +ppp +rfkill +rp-pppoe +rsync +smartmontools +sudo +tcpdump +testdisk +usb_modeswitch +vpnc +wget +wireless_tools +wpa_actiond +wpa_supplicant +zile +wvdial +xl2tpd +zsh diff --git a/configs/talking-parabola-openrc/packages.i686 b/configs/talking-parabola-openrc/packages.i686 new file mode 100644 index 0000000..e69de29 diff --git a/configs/talking-parabola-openrc/packages.x86_64 b/configs/talking-parabola-openrc/packages.x86_64 new file mode 100644 index 0000000..804cc93 --- /dev/null +++ b/configs/talking-parabola-openrc/packages.x86_64 @@ -0,0 +1 @@ +refind-efi diff --git a/configs/talking-parabola-openrc/pacman.conf b/configs/talking-parabola-openrc/pacman.conf new file mode 100644 index 0000000..03f449f --- /dev/null +++ b/configs/talking-parabola-openrc/pacman.conf @@ -0,0 +1,104 @@ +# +# /etc/pacman.conf +# +# See the pacman.conf(5) manpage for option and repository directives + +# +# GENERAL OPTIONS +# +[options] +# The following paths are commented out with their default values listed. +# If you wish to use different paths, uncomment and update the paths. +#RootDir = / +#DBPath = /var/lib/pacman/ +#CacheDir = /var/cache/pacman/pkg/ +#LogFile = /var/log/pacman.log +#GPGDir = /etc/pacman.d/gnupg/ +#HookDir = /etc/pacman.d/hooks/ +HoldPkg = pacman glibc +#XferCommand = /usr/bin/curl -C - -f %u > %o +#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u +#CleanMethod = KeepInstalled +#UseDelta = 0.7 +Architecture = auto + +# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup +#IgnorePkg = +#IgnoreGroup = + +#NoUpgrade = +#NoExtract = + +# Misc options +#UseSyslog +#Color +#TotalDownload +# We cannot check disk space from within a chroot environment +#CheckSpace +#VerbosePkgLists + +# By default, pacman accepts packages signed by keys that its local keyring +# trusts (see pacman-key and its man page), as well as unsigned packages. +SigLevel = Required DatabaseOptional +LocalFileSigLevel = Optional +#RemoteFileSigLevel = Required + +# NOTE: You must run `pacman-key --init` before first using pacman; the local +# keyring can then be populated with the keys of all Arch/Parabola packagers +# with `pacman-key --populate archlinux` and `pacman-key --populate parabola`. + +# +# REPOSITORIES +# - can be defined here or included from another file +# - pacman will search repositories in the order defined here +# - local/custom mirrors can be added here or in separate files +# - repositories listed first will take precedence when packages +# have identical names, regardless of version number +# - URLs will have $repo replaced by the name of the current repo +# - URLs will have $arch replaced by the name of the architecture +# +# Repository entries are of the format: +# [repo-name] +# Server = ServerName +# Include = IncludePath +# +# The header [repo-name] is crucial - it must be present and +# uncommented to enable the repo. +# + +# The testing repositories are disabled by default. To enable, uncomment the +# repo name header and Include lines. You can add preferred servers immediately +# after the header, and they will be used before the default mirrors. + +#[libre-testing] +#Include = /etc/pacman.d/mirrorlist + +[libre] +Include = /etc/pacman.d/mirrorlist + +#[testing] +#Include = /etc/pacman.d/mirrorlist + +[core] +Include = /etc/pacman.d/mirrorlist + +[extra] +Include = /etc/pacman.d/mirrorlist + +#[community-testing] +#Include = /etc/pacman.d/mirrorlist + +[community] +Include = /etc/pacman.d/mirrorlist + +#[pcr-testing] +#Include = /etc/pacman.d/mirrorlist + +[pcr] +Include = /etc/pacman.d/mirrorlist + +# An example of a custom package repository. See the pacman manpage for +# tips on creating your own repositories. +#[custom] +#SigLevel = Optional TrustAll +#Server = file:///home/custompkgs diff --git a/configs/talking-parabola-openrc/root-image/etc/conf.d/hostname b/configs/talking-parabola-openrc/root-image/etc/conf.d/hostname new file mode 100644 index 0000000..a701f0c --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/conf.d/hostname @@ -0,0 +1,2 @@ +# Set to the hostname of this machine +hostname="parabolaiso" diff --git a/configs/talking-parabola-openrc/root-image/etc/fstab b/configs/talking-parabola-openrc/root-image/etc/fstab new file mode 100644 index 0000000..e69de29 diff --git a/configs/talking-parabola-openrc/root-image/etc/inittab b/configs/talking-parabola-openrc/root-image/etc/inittab new file mode 100644 index 0000000..787b731 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/inittab @@ -0,0 +1,41 @@ +# /etc/inittab: This file describes how the INIT process should set up +# the system in a certain run-level. + +# Default runlevel. +id:3:initdefault: + +# System initialization, mount local filesystems, etc. +si::sysinit:/usr/bin/openrc sysinit + +# Further system initialization, brings up the boot runlevel. +rc::bootwait:/usr/bin/openrc boot + +l0:0:wait:/usr/bin/openrc shutdown +l0s:0:wait:/usr/bin/halt -dhip +l1:S1:wait:/usr/bin/openrc single +l2:2:wait:/usr/bin/openrc nonetwork +l3:3:wait:/usr/bin/openrc default +l4:4:wait:/usr/bin/openrc default +l5:5:wait:/usr/bin/openrc default +l6:6:wait:/usr/bin/openrc reboot +l6r:6:wait:/usr/bin/reboot -d +#z6:6:respawn:/usr/bin/sulogin + +# new-style single-user +su0:S:wait:/usr/bin/openrc single +su1:S:wait:/usr/bin/sulogin + +# TERMINALS +c1:12345:respawn:/usr/bin/agetty -a root --noclear 38400 tty1 linux +c2:2345:respawn:/usr/bin/agetty 38400 tty2 linux +c3:2345:respawn:/usr/bin/agetty 38400 tty3 linux +c4:2345:respawn:/usr/bin/agetty 38400 tty4 linux +c5:2345:respawn:/usr/bin/agetty 38400 tty5 linux +c6:2345:respawn:/usr/bin/agetty 38400 tty6 linux + +# SERIAL CONSOLES +#s0:12345:respawn:/usr/bin/agetty 9600 ttyS0 vt100 +#s1:12345:respawn:/usr/bin/agetty 9600 ttyS1 vt100 + +# What to do at the "Three Finger Salute". +ca:12345:ctrlaltdel:/usr/bin/shutdown -r now diff --git a/configs/talking-parabola-openrc/root-image/etc/locale.conf b/configs/talking-parabola-openrc/root-image/etc/locale.conf new file mode 100644 index 0000000..01ec548 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/locale.conf @@ -0,0 +1 @@ +LANG=en_US.UTF-8 diff --git a/configs/talking-parabola-openrc/root-image/etc/motd b/configs/talking-parabola-openrc/root-image/etc/motd new file mode 100644 index 0000000..05ab207 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/motd @@ -0,0 +1,14 @@ + +=============================================================================== + + Parabola live media _DATE_ + + To install Parabola, the system must be connected to the internet. + For instructions, enter this command: + lynx network.html + + Press the number keys while holding Alt to switch virtual terminals. + This allows entering commands without closing lynx. + +=============================================================================== + diff --git a/configs/talking-parabola-openrc/root-image/etc/pam.d/su b/configs/talking-parabola-openrc/root-image/etc/pam.d/su new file mode 100644 index 0000000..a291042 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/pam.d/su @@ -0,0 +1,6 @@ +#%PAM-1.0 +auth sufficient pam_rootok.so +auth sufficient pam_wheel.so trust use_uid +auth required pam_unix.so +account required pam_unix.so +session required pam_unix.so diff --git a/configs/talking-parabola-openrc/root-image/etc/sudoers.d/g_wheel b/configs/talking-parabola-openrc/root-image/etc/sudoers.d/g_wheel new file mode 100644 index 0000000..8c45359 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/sudoers.d/g_wheel @@ -0,0 +1 @@ +%wheel ALL=(ALL) NOPASSWD: ALL diff --git a/configs/talking-parabola-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules b/configs/talking-parabola-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules new file mode 100644 index 0000000..970da69 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/etc/udev/rules.d/81-dhcpcd.rules @@ -0,0 +1 @@ +ACTION=="add", SUBSYSTEM=="net", ENV{SYSTEMD_WANTS}="dhcpcd@$name.service" diff --git a/configs/talking-parabola-openrc/root-image/root/customize_root_image.sh b/configs/talking-parabola-openrc/root-image/root/customize_root_image.sh new file mode 100755 index 0000000..4ff8528 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/root/customize_root_image.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +set -e -u + +sed -i 's/#\(en_US\.UTF-8\)/\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/ + +useradd -m -p "" -g users -G "adm,audio,floppy,log,network,rfkill,scanner,storage,optical,power,wheel" -s /usr/bin/zsh parabola + +chmod 750 /etc/sudoers.d +chmod 440 /etc/sudoers.d/g_wheel + +sed -i "s/#Server/Server/g" /etc/pacman.d/mirrorlist + +systemctl enable multi-user.target pacman-init.service choose-mirror.service livecd-alsa-unmuter.service brltty.service + +sed -i "s/_DATE_/${iso_version}/" /etc/motd diff --git a/configs/talking-parabola-openrc/root-image/root/network.html b/configs/talking-parabola-openrc/root-image/root/network.html new file mode 100644 index 0000000..057e680 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/root/network.html @@ -0,0 +1,191 @@ +Online version: https://wiki.parabolagnulinux.org/Start_installing +

Contents

+ +
+

Start installing

+

You are now presented with a shell prompt, automatically logged in as root. +

+

Change the language

+
Tip: These are optional for the majority of users. Useful only if you plan on writing in your own language in any of the configuration files, if you use diacritical marks in the Wi-Fi password, or if you would like to receive system messages (e.g. possible errors) in your own language.
+

By default, the keyboard layout is set to us. If you have a non-US keyboard layout, run: +

+
# loadkeys layout
+
+

...where layout can be fr, uk, dvorak, be-latin1, etc. See here for a comprehensive list. +

The font should also be changed, because most languages use more glyphs than the 26 letter English alphabet. Otherwise some foreign characters may show up as white squares or as other symbols. Note that the name is case-sensitive, so please type it exactly as you see it: +

+
# setfont Lat2-Terminus16
+
+

By default, the language is set to English (US). If you would like to change the language for the install process (German, in this example), remove the # in front of the locale you want from /etc/locale.gen, along with English (US). Please choose the UTF-8 entry. +

Use Ctrl+X to exit, and when prompted to save changes, press Y and Enter to use the same filename. +

+
# nano /etc/locale.gen
+
+en_US.UTF-8 UTF-8
+de_DE.UTF-8 UTF-8
+
# locale-gen
+# export LANG=de_DE.UTF-8
+
+

Remember, LAlt+LShift activates and deactivates the keymap. +

+

Establish an internet connection

+
Warning: As of v197, udev no longer assigns network interface names according to the wlanX and ethX naming scheme. If you are coming from a different distribution or are reinstalling Parabola and not aware of the new interface naming style, please do not assume that your wireless interface is named wlan0, or that your wired interface is named eth0. You can use the command ip link to discover the names of your interfaces.
+

The dhcpcd network daemon starts automatically during boot and it will attempt to start a wired connection. Try to ping a server to see if a connection was established. For example, gnu.org: +

+
# ping -c 3 gnu.org
+
PING gnu.org (208.118.235.148) 56(84) bytes of data.
+64 bytes from wildebeest.gnu.org (208.118.235.148): icmp_seq=1 ttl=47 time=183 ms
+64 bytes from wildebeest.gnu.org (208.118.235.148): icmp_seq=2 ttl=47 time=168 ms
+64 bytes from wildebeest.gnu.org (208.118.235.148): icmp_seq=3 ttl=47 time=183 ms
+
+--- gnu.org ping statistics ---
+3 packets transmitted, 3 received, 0% packet loss, time 2002ms
+rtt min/avg/max/mdev = 168.131/178.357/183.914/7.248 ms
+

If you get a ping: unknown host error, first check if there is an issue with your cable or wireless signal strength. If not, you will need to set up the network manually, as explained below. Once a connection is established move on to Installation Guide. +

+

Wired

+

Follow this procedure if you need to set up a wired connection via a static IP address. +

First, disable the dhcpcd service which was started automatically at boot: +

+
# systemctl stop dhcpcd.service
+
+

Identify the name of your Ethernet interface. +

+
# ip link
+
+1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
+    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
+2: enp2s0f0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
+    link/ether 00:11:25:31:69:20 brd ff:ff:ff:ff:ff:ff
+3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
+    link/ether 01:02:03:04:05:06 brd ff:ff:ff:ff:ff:ff
+

In this example, the Ethernet interface is enp2s0f0. If you are unsure, your Ethernet interface is likely to start with the letter "e", and unlikely to be "lo" or start with the letter "w". You can also use iwconfig and see which interfaces are not wireless: +

+
# iwconfig
+
enp2s0f0  no wireless extensions.
+wlp3s0    IEEE 802.11bgn  ESSID:"NETGEAR97"
+          Mode:Managed  Frequency:2.427 GHz  Access Point: 2C:B0:5D:9C:72:BF
+          Bit Rate=65 Mb/s   Tx-Power=16 dBm
+          Retry  long limit:7   RTS thr:off   Fragment thr:off
+          Power Management:on
+          Link Quality=61/70  Signal level=-49 dBm
+          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
+          Tx excessive retries:0  Invalid misc:430   Missed beacon:0
+lo        no wireless extensions.
+

In this example, neither enp2s0f0 nor the loopback device have wireless extensions, meaning enp2s0f0 is our Ethernet interface. +

You also need to know these settings: +

+
  • Static IP address. +
  • Subnet mask. +
  • Gateway's IP address. +
  • Name servers' (DNS) IP addresses. +
  • Domain name (unless you are on a local LAN, in which case you can make it up). +
+

Activate the connected Ethernet interface (e.g. enp2s0f0): +

+
# ip link set enp2s0f0 up
+
+

Add the address: +

+
# ip addr add ip_address/subnetmask dev interface_name
+
+

For example: +

+
# ip addr add 192.168.1.2/24 dev enp2s0f0
+
+

For more options, run man ip. +

Add your gateway like this, substituting your own gateway's IP address: +

+
# ip route add default via ip_address
+
+

For example: +

+
# ip route add default via 192.168.1.1
+
+

Edit resolv.conf, substituting your name servers' IP addresses and your local domain name: +

+
# nano /etc/resolv.conf
+
+nameserver 61.23.173.5
+nameserver 61.95.849.8
+search example.com
+
Note: Currently, you may include a maximum of three nameserver lines. In order to overcome this limitation, you can use a locally caching nameserver like Dnsmasq.
+

You should now have a working network connection. If you do not, check the detailed Network Configuration page. +

+

Wireless

+

Follow this procedure if you need wireless connectivity (Wi-Fi) during the installation process. +

First, identify the name of your wireless interface. +

+
# iw dev
+
phy#0
+        Interface wlp3s0
+                ifindex 3
+                wdev 0x1
+                addr 00:21:6a:5e:52:bc
+                type managed
+

In this example, wlp3s0 is the available wireless interface. If you are unsure, your wireless interface is likely to start with the letter "w", and unlikely to be "lo" or start with the letter "e". +

+
Note: If you do not see output similar to this, then your wireless driver has not been loaded. Please see Wireless Setup for more detailed information.
+

Bring the interface up with: +

+
# ip link set wlp3s0 up
+
+

If you get this error message: SIOCSIFFLAGS: No such file or directory, your wireless chipset could need a non-free firmware to function. This is not supported on Parabola. Please see Wireless Setup if you are unsure if this is the true for your particular chipset. +

Next, use netctl's wifi-menu to connect to a network: +

+
# wifi-menu wlp3s0
+
+

You should now have a working network connection. If you do not, check the detailed Wireless Setup page. +

Alternatively, use iw dev wlp3s0 scan | grep SSID to scan for available networks, then connect to a network with: +

+
# wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "ssid" "psk")
+
+

You need to replace ssid with the name of your network (e.g. "Linksys etc...") and psk with your wireless password, leaving the quotes around the network name and password. +

Finally, you have to give your interface an IP address. This can be set manually or using the dhcp: +

+
# dhcpcd wlp3s0
+
+

If that does not work, issue the following commands: +

+
# echo 'ctrl_interface=DIR=/run/wpa_supplicant' > /etc/wpa_supplicant.conf
+# wpa_passphrase <ssid> <passphrase> >> /etc/wpa_supplicant.conf
+# ip link set <interface> up # May not be needed as dhcpcd should bring it up but may be needed for wpa_supplicant.
+# wpa_supplicant -B -D nl80211 -c /foobar.conf -i <interface name>
+# dhcpcd -A <interface name>
+
+

Analog modem, ISDN or PPPoE DSL

+

For xDSL, dial-up and ISDN connections, see Direct Modem Connection. +

+

Behind a proxy server

+

If you are behind a proxy server, you will need to export the http_proxy and ftp_proxy environment variables. See Proxy settings for more information. +

+
+

This page was retrieved from: https://wiki.parabolagnulinux.org/index.php?title=Start_installing&oldid=5138 +

+

Content is available under GNU Free Documentation License 1.3 (or at your option, any later version). +

+ + + diff --git a/configs/talking-parabola-openrc/root-image/usr/bin/livecd-alsa-unmuter b/configs/talking-parabola-openrc/root-image/usr/bin/livecd-alsa-unmuter new file mode 100755 index 0000000..6de05a0 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/usr/bin/livecd-alsa-unmuter @@ -0,0 +1,8 @@ +#!/bin/bash + +# Properly initialize the sound card so that we have audio at boot. +# This script is released under the GNU General Public License. +source /usr/share/livecd-sound/functions + +preinit_levels all +sanify_levels all diff --git a/configs/talking-parabola-openrc/root-image/usr/bin/pick-a-card b/configs/talking-parabola-openrc/root-image/usr/bin/pick-a-card new file mode 100755 index 0000000..7f469e8 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/usr/bin/pick-a-card @@ -0,0 +1,54 @@ +#!/bin/bash + +# If there are multiple usable sound cards, prompt the user to choose one, +# using auditory feedback. +# This script is released under the GNU General Public License. + +source /usr/share/livecd-sound/functions + +nwords() { + echo $# +} + +is_numeric() { + local str=$1 + expr match "$str" '[[:digit:]]\+$' > /dev/null 2>&1 +} + +set_default_card() { + local card=$1 + sed -e "s/%card%/$card/g" < /usr/share/livecd-sound/asound.conf.in \ + > /etc/asound.conf +} + +play_on_card() { + local card=$1 file=$2 + aplay "-Dplughw:$card,0" "$file" +} + +set -f +usable_cards="$(list_non_pcsp_cards)" +num_usable_cards=$(nwords $usable_cards) + +if [ "$num_usable_cards" -eq 1 ]; then + exit 0 +fi + +for card in $usable_cards; do + if ! is_numeric "$card"; then + continue + fi + play_on_card "$card" /usr/share/livecd-sound/sounds/pick-a-card.wav& +done +wait +sleep 1 +for card in $usable_cards; do + if ! is_numeric "$card"; then + continue + fi + play_on_card "$card" /usr/share/livecd-sound/sounds/beep.wav + if read -t 10; then + set_default_card "$card" + break + fi +done diff --git a/configs/talking-parabola-openrc/root-image/usr/bin/talk-to-me b/configs/talking-parabola-openrc/root-image/usr/bin/talk-to-me new file mode 100755 index 0000000..73998d8 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/usr/bin/talk-to-me @@ -0,0 +1,10 @@ +#!/bin/sh +started_flag=/run/speech-is-running +if [ -f $started_flag ]; then + exit 0 +fi +systemctl stop espeakup +sleep 5 +pick-a-card +systemctl start espeakup +touch $started_flag diff --git a/configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/asound.conf.in b/configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/asound.conf.in new file mode 100644 index 0000000..851f829 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/asound.conf.in @@ -0,0 +1,12 @@ +pcm.!default { + type plug + slave.pcm { + type hw + card %card% + } +} + +ctl.!default { + type hw + card %card% +} diff --git a/configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/functions b/configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/functions new file mode 100644 index 0000000..e517795 --- /dev/null +++ b/configs/talking-parabola-openrc/root-image/usr/share/livecd-sound/functions @@ -0,0 +1,199 @@ +# Functions for setting up sound on the live CD. +# This library is released under the GNU General Public License, +# and it incorporates code from the /etc/init.d/alsa-utils included with +# Ubuntu 8.04. Proper credit also goes to Debian. + +# Start code copied from Debian / Ubuntu: + +bugout () { + printf "/etc/rc.d/livecdsound: programming error" + stat_fail +} + +echo_card_indices() +{ + if [ -f /proc/asound/cards ] ; then + sed -n -e's/^[[:space:]]*\([0-7]\)[[:space:]].*/\1/p' /proc/asound/cards + fi +} + +filter_amixer_output() +{ + sed \ + -e '/Unable to find simple control/d' \ + -e '/Unknown playback setup/d' \ + -e '/^$/d' +} + +# The following functions try to set many controls. +# No card has all the controls and so some of the attempts are bound to fail. +# Because of this, the functions can't return useful status values. + +# $1 +# $2 +# $CARDOPT +unmute_and_set_level() +{ + { [ "$2" ] && [ "$CARDOPT" ] ; } || bugout + amixer $CARDOPT -q set "$1" "$2" unmute 2>&1 | filter_amixer_output || : + return 0 +} + +# $1 +# $CARDOPT +mute_and_zero_level() +{ + { [ "$1" ] && [ "$CARDOPT" ] ; } || bugout + amixer $CARDOPT -q set "$1" "0%" mute 2>&1 | filter_amixer_output || : + return 0 +} + +# $1 +# $2 "on" | "off" +# $CARDOPT +switch_control() +{ + { [ "$2" ] && [ "$CARDOPT" ] ; } || bugout + amixer $CARDOPT -q set "$1" "$2" 2>&1 | filter_amixer_output || : + return 0 +} + +# $1 +sanify_levels_on_card() +{ + CARDOPT="-c $1" + + unmute_and_set_level "Front" "80%" + unmute_and_set_level "Master" "80%" + unmute_and_set_level "Master Mono" "80%" + unmute_and_set_level "Master Digital" "80%" # E.g., cs4237B + unmute_and_set_level "Playback" "80%" + unmute_and_set_level "Headphone" "100%" + unmute_and_set_level "PCM" "80%" + unmute_and_set_level "PCM,1" "80%" # E.g., ess1969 + unmute_and_set_level "DAC" "80%" # E.g., envy24, cs46xx + unmute_and_set_level "DAC,0" "80%" # E.g., envy24 + unmute_and_set_level "DAC,1" "80%" # E.g., envy24 + unmute_and_set_level "Synth" "80%" + unmute_and_set_level "CD" "80%" + unmute_and_set_level "PC Speaker" "100%" + + mute_and_zero_level "Mic" + mute_and_zero_level "IEC958" # Ubuntu #19648 + + # Intel P4P800-MX + switch_control "Master Playback Switch" on + switch_control "Master Surround" on + + # Trident/YMFPCI/emu10k1: + unmute_and_set_level "Wave" "80%" + unmute_and_set_level "Music" "80%" + unmute_and_set_level "AC97" "80%" + + # DRC: + unmute_and_set_level "Dynamic Range Compression" "80%" + + # Required for HDA Intel (hda-intel): + unmute_and_set_level "Front" "80%" + + # Required for SB Live 7.1/24-bit (ca0106): + unmute_and_set_level "Analog Front" "80%" + + # Required at least for Via 823x hardware on DFI K8M800-MLVF Motherboard + switch_control "IEC958 Capture Monitor" off + + # Required for hardware allowing toggles for AC97 through IEC958, + # valid values are 0, 1, 2, 3. Needs to be set to 0 for PCM1. + unmute_and_set_level "IEC958 Playback AC97-SPSA" "0" + + # Required for newer Via hardware + unmute_and_set_level "VIA DXS,0" "80%" + unmute_and_set_level "VIA DXS,1" "80%" + unmute_and_set_level "VIA DXS,2" "80%" + unmute_and_set_level "VIA DXS,3" "80%" + + # Required on some notebooks with ICH4: + switch_control "Headphone Jack Sense" off + switch_control "Line Jack Sense" off + + # Some machines need one or more of these to be on; + # others need one or more of these to be off: + # + # switch_control "External Amplifier" on + switch_control "Audigy Analog/Digital Output Jack" on + switch_control "SB Live Analog/Digital Output Jack" on + + # D1984 -- Thinkpad T61/X61 + switch_control "Speaker" on + switch_control "Headphone" on + + # HDA-Intel w/ "Digital" capture mixer (See Ubuntu #193823) + unmute_and_set_level "Digital" "80%" + + return 0 +} + +# $1 | "all" +sanify_levels() +{ + TTSDML_RETURNSTATUS=0 + case "$1" in + all) + for CARD in $(echo_card_indices) ; do + sanify_levels_on_card "$CARD" || TTSDML_RETURNSTATUS=1 + done + ;; + *) + sanify_levels_on_card "$1" || TTSDML_RETURNSTATUS=1 + ;; + esac + return $TTSDML_RETURNSTATUS +} + +# $1 +preinit_levels_on_card() +{ + CARDOPT="-c $1" + + # Silly dance to activate internal speakers by default on PowerMac + # Snapper and Tumbler + id=`cat /proc/asound/card$1/id 2>/dev/null` + if [ "$id" = "Snapper" -o "$id" = "Tumbler" ]; then + switch_control "Auto Mute" off + switch_control "PC Speaker" off + switch_control "Auto Mute" on + fi +} + +# $1 | "all" +preinit_levels() +{ + TTSDML_RETURNSTATUS=0 + case "$1" in + all) + for CARD in $(echo_card_indices) ; do + preinit_levels_on_card "$CARD" || TTSDML_RETURNSTATUS=1 + done + ;; + *) + preinit_levels_on_card "$1" || TTSDML_RETURNSTATUS=1 + ;; + esac + return $TTSDML_RETURNSTATUS +} + +# End copied code. + +# List all cards that *should* be usable for PCM audio. In my experience, +# the console speaker (handled by the pcsp driver) isn't a suitable playback +# device, so we'll exclude it. +list_non_pcsp_cards() +{ + for card in $(echo_card_indices); do + local cardfile="/proc/asound/card${card}/id" + if [ -r "$cardfile" -a -f "$cardfile" ] && \ + [ "$(cat "$cardfile")" != pcsp ]; then + echo "$card" + fi + done +} diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso.cfg new file mode 100644 index 0000000..473e245 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso.cfg @@ -0,0 +1,11 @@ +DEFAULT select + +LABEL select +COM32 boot/syslinux/whichsys.c32 +APPEND -pxe- pxe -sys- sys -iso- sys + +LABEL pxe +CONFIG boot/syslinux/parabolaiso_pxe_choose.cfg + +LABEL sys +CONFIG boot/syslinux/parabolaiso_sys_choose.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_head.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_head.cfg new file mode 100644 index 0000000..a245309 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_head.cfg @@ -0,0 +1,25 @@ +SERIAL 0 38400 +UI boot/syslinux/vesamenu.c32 +MENU TITLE Parabola GNU/Linux-libre +MENU BACKGROUND boot/syslinux/splash.png + +MENU WIDTH 78 +MENU MARGIN 4 +MENU ROWS 7 +MENU VSHIFT 10 +MENU TABMSGROW 14 +MENU CMDLINEROW 14 +MENU HELPMSGROW 16 +MENU HELPMSGENDROW 29 + +# Refer to http://syslinux.zytor.com/wiki/index.php/Doc/menu + +MENU COLOR border 35;40 #ff777caa #a0000000 std +MENU COLOR title 1;35;40 #ff777caa #a0000000 std +MENU COLOR sel 7;35;47 #e0ffffff #20777caa all +MENU COLOR unsel 35;40 #ff777caa #a0000000 std +MENU COLOR help 35;40 #c0b2b2b2 #a0000000 std +MENU COLOR timeout_msg 35;40 #ff777caa #00000000 std +MENU COLOR timeout 1;35;40 #ff777caa #00000000 std +MENU COLOR msg07 35;40 #ff777caa #a0000000 std +MENU COLOR tabmsg 35;40 #ff777caa #00000000 std diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe32.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe32.cfg new file mode 100644 index 0000000..9df86b7 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe32.cfg @@ -0,0 +1,32 @@ +LABEL parabola32_nbd +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using NBD). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (NBD) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% parabolaiso_nbd_srv=${pxeserver} +SYSAPPEND 3 + +LABEL parabola32_nfs +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using NFS). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (NFS) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_nfs_srv=${pxeserver}:/run/parabolaiso/bootmnt +SYSAPPEND 3 + +LABEL parabola32_http +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium (Using HTTP). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) (HTTP) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_http_srv=http://${pxeserver}/ +SYSAPPEND 3 diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe64.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe64.cfg new file mode 100644 index 0000000..be3e3de --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe64.cfg @@ -0,0 +1,32 @@ +LABEL parabola64_nbd +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using NBD). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (NBD) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% parabolaiso_nbd_srv=${pxeserver} +SYSAPPEND 3 + +LABEL parabola64_nfs +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using NFS). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (NFS) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_nfs_srv=${pxeserver}:/run/parabolaiso/bootmnt +SYSAPPEND 3 + +LABEL parabola64_http +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium (Using HTTP). +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) (HTTP) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaiso_http_srv=http://${pxeserver}/ +SYSAPPEND 3 diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_32_inc.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_32_inc.cfg new file mode 100644 index 0000000..ba514cb --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_32_inc.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_pxe32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_both_inc.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_both_inc.cfg new file mode 100644 index 0000000..9396d9b --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_both_inc.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_pxe64.cfg +INCLUDE boot/syslinux/parabolaiso_pxe32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_choose.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_choose.cfg new file mode 100644 index 0000000..a3a768f --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_pxe_choose.cfg @@ -0,0 +1,11 @@ +DEFAULT choose + +LABEL choose +COM32 boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/parabolaiso_pxe_both_inc.cfg + +LABEL nohave64 +CONFIG boot/syslinux/parabolaiso_pxe_32_inc.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_sys32.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys32.cfg new file mode 100644 index 0000000..4abdf7a --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys32.cfg @@ -0,0 +1,9 @@ +LABEL parabola32 +TEXT HELP +Boot the Parabola GNU/Linux-libre (i686) live medium. +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (i686) +LINUX boot/i686/vmlinuz +INITRD boot/i686/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_sys64.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys64.cfg new file mode 100644 index 0000000..b154459 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys64.cfg @@ -0,0 +1,9 @@ +LABEL parabola64 +TEXT HELP +Boot the Parabola GNU/Linux-libre (x86_64) live medium. +It allows you to install Parabola GNU/Linux-libre or perform system maintenance. +ENDTEXT +MENU LABEL Boot Parabola GNU/Linux-libre (x86_64) +LINUX boot/x86_64/vmlinuz +INITRD boot/x86_64/parabolaiso.img +APPEND parabolaisobasedir=%INSTALL_DIR% parabolaisolabel=%PARABOLAISO_LABEL% diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_32_inc.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_32_inc.cfg new file mode 100644 index 0000000..c641201 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_32_inc.cfg @@ -0,0 +1,3 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_sys32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_both_inc.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_both_inc.cfg new file mode 100644 index 0000000..9dfb87f --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_both_inc.cfg @@ -0,0 +1,4 @@ +INCLUDE boot/syslinux/parabolaiso_head.cfg +INCLUDE boot/syslinux/parabolaiso_sys64.cfg +INCLUDE boot/syslinux/parabolaiso_sys32.cfg +INCLUDE boot/syslinux/parabolaiso_tail.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_choose.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_choose.cfg new file mode 100644 index 0000000..d436062 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_sys_choose.cfg @@ -0,0 +1,11 @@ +DEFAULT choose + +LABEL choose +COM32 boot/syslinux/ifcpu64.c32 +APPEND have64 -- nohave64 + +LABEL have64 +CONFIG boot/syslinux/parabolaiso_sys_both_inc.cfg + +LABEL nohave64 +CONFIG boot/syslinux/parabolaiso_sys_32_inc.cfg diff --git a/configs/talking-parabola-openrc/syslinux/parabolaiso_tail.cfg b/configs/talking-parabola-openrc/syslinux/parabolaiso_tail.cfg new file mode 100644 index 0000000..e85d8e1 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/parabolaiso_tail.cfg @@ -0,0 +1,27 @@ +LABEL existing +TEXT HELP +Boot an existing operating system. +Press TAB to edit the disk and partition number to boot. +ENDTEXT +MENU LABEL Boot existing OS +COM32 boot/syslinux/chain.c32 +APPEND hd0 0 + +# http://www.memtest.org/ +LABEL memtest +MENU LABEL Run Memtest86+ (RAM test) +LINUX boot/memtest + +# http://hdt-project.org/ +LABEL hdt +MENU LABEL Hardware Information (HDT) +COM32 boot/syslinux/hdt.c32 +APPEND modules_alias=boot/syslinux/hdt/modalias.gz pciids=boot/syslinux/hdt/pciids.gz + +LABEL reboot +MENU LABEL Reboot +COM32 boot/syslinux/reboot.c32 + +LABEL poweroff +MENU LABEL Power Off +COM32 boot/syslinux/poweroff.c32 diff --git a/configs/talking-parabola-openrc/syslinux/splash.png b/configs/talking-parabola-openrc/syslinux/splash.png new file mode 100644 index 0000000..eb20a51 Binary files /dev/null and b/configs/talking-parabola-openrc/syslinux/splash.png differ diff --git a/configs/talking-parabola-openrc/syslinux/splash.svg b/configs/talking-parabola-openrc/syslinux/splash.svg new file mode 100644 index 0000000..e44cace --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/splash.svg @@ -0,0 +1,258 @@ + + + TalkingParabola GNU/Linux-libre + + + + image/svg+xml + + TalkingParabola GNU/Linux-libre + + 2015/02/28 + + + Jorge Araya Navarro + José Miguel Silva Lara + + + + + Márcio Alexandre Silva Delgado + + + + + CC BY-SA + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/configs/talking-parabola-openrc/syslinux/syslinux.cfg b/configs/talking-parabola-openrc/syslinux/syslinux.cfg new file mode 100644 index 0000000..0869ed2 --- /dev/null +++ b/configs/talking-parabola-openrc/syslinux/syslinux.cfg @@ -0,0 +1,5 @@ +DEFAULT loadconfig + +LABEL loadconfig + CONFIG parabolaiso.cfg + APPEND ../../ diff --git a/configs/talkingparabola-X11/root-image/root/.automated_script.sh b/configs/talkingparabola-X11/root-image/root/.automated_script.sh deleted file mode 100755 index fb106da..0000000 --- a/configs/talkingparabola-X11/root-image/root/.automated_script.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/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/talkingparabola-X11/root-image/root/.zlogin b/configs/talkingparabola-X11/root-image/root/.zlogin deleted file mode 100644 index e232364..0000000 --- a/configs/talkingparabola-X11/root-image/root/.zlogin +++ /dev/null @@ -1,4 +0,0 @@ -setopt singlelinezle -~/.automated_script.sh - flock -n /run/talk-to-me.lck talk-to-me -startx diff --git a/configs/talkingparabola/root-image/root/.automated_script.sh b/configs/talkingparabola/root-image/root/.automated_script.sh deleted file mode 100755 index fb106da..0000000 --- a/configs/talkingparabola/root-image/root/.automated_script.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/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/talkingparabola/root-image/root/.zlogin b/configs/talkingparabola/root-image/root/.zlogin deleted file mode 100644 index 67cba7a..0000000 --- a/configs/talkingparabola/root-image/root/.zlogin +++ /dev/null @@ -1,3 +0,0 @@ -setopt singlelinezle -~/.automated_script.sh - flock -n /run/talk-to-me.lck talk-to-me -- cgit v1.2.2