summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archinstall.sh2
-rw-r--r--bin/install_bootloader.sh34
-rw-r--r--bin/localization.sh49
-rw-r--r--bin/network_configuration.sh33
-rw-r--r--bin/second_stage.sh52
-rw-r--r--bin/test.sh2
6 files changed, 170 insertions, 2 deletions
diff --git a/archinstall.sh b/archinstall.sh
index 5832447..80eb5b7 100644
--- a/archinstall.sh
+++ b/archinstall.sh
@@ -31,6 +31,8 @@
# Settings for the Script:
DELAY=0.5
+BRANCH="feature_01"
+RAW_BASE_URL="https://raw.githubusercontent.com/xengineering/archinstall/"
# Greetings and settings
diff --git a/bin/install_bootloader.sh b/bin/install_bootloader.sh
new file mode 100644
index 0000000..9f688d6
--- /dev/null
+++ b/bin/install_bootloader.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+
+# archinstall - A minimal Installation Script for Arch Linux
+# Copyright (C) 2019 xengineering
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+
+# Install Grub
+
+pacman --noconfirm -Syu grub efibootmgr
+mount $1 /mnt # $1 = boot_partition_path
+grub-install --target=x86_64-efi --efi-directory=/mnt --bootloader-id=GRUB --removable
+grub-mkconfig -o /boot/grub/grub.cfg
+umount $1
+echo "Grub bootloader installed - OK"
+echo ""
+sleep 1
+
+echo "Leaving chroot environment - OK"
+echo ""
+sleep 1
diff --git a/bin/localization.sh b/bin/localization.sh
new file mode 100644
index 0000000..bbde410
--- /dev/null
+++ b/bin/localization.sh
@@ -0,0 +1,49 @@
+#!/bin/bash
+
+
+# archinstall - A minimal Installation Script for Arch Linux
+# Copyright (C) 2019 xengineering
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+
+# Set timezone
+
+ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
+hwclock --systohc
+echo "Timezone set - OK"
+echo ""
+sleep 1
+
+
+# Localization - Greetings from Germany
+
+echo "de_DE.UTF-8 UTF-8" >> /etc/locale.gen
+echo "de_DE ISO-8859-1" >> /etc/locale.gen
+echo "de_DE@euro ISO-8859-15" >> /etc/locale.gen
+
+locale-gen
+
+touch /etc/locale.conf
+echo "LANG=de_DE.UTF-8" > /etc/locale.conf
+
+touch /etc/vconsole.conf
+echo "KEYMAP=de-latin1" > /etc/vconsole.conf
+
+# this just works after installing a desktop environment (e.g. xorg and xfce4 package)
+# localectl --no-convert set-x11-keymap de pc105 nodeadkeys # desktop keyboard layout
+
+echo "German localization done - OK"
+echo ""
+sleep 1
diff --git a/bin/network_configuration.sh b/bin/network_configuration.sh
new file mode 100644
index 0000000..24514ba
--- /dev/null
+++ b/bin/network_configuration.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+
+# archinstall - A minimal Installation Script for Arch Linux
+# Copyright (C) 2019 xengineering
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+
+# Network Configuration
+
+touch /etc/hostname
+echo $1 > /etc/hostname
+
+touch /etc/hosts
+echo "" >> /etc/hosts
+echo "127.0.0.1 localhost" >> /etc/hosts
+echo "::1 localhost" >> /etc/hosts
+
+echo "Network configuration done - OK"
+echo ""
+sleep 1
diff --git a/bin/second_stage.sh b/bin/second_stage.sh
new file mode 100644
index 0000000..91f5ba8
--- /dev/null
+++ b/bin/second_stage.sh
@@ -0,0 +1,52 @@
+#!/bin/bash
+
+
+# archinstall - A minimal Installation Script for Arch Linux
+# Copyright (C) 2019 xengineering
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+
+# Second Stage of archinstall
+
+
+hostname=$1
+boot_partition_path=$2
+
+
+# Localization
+
+bash /opt/archinstall.git/bin/localization.sh
+
+
+# Network Configuration
+bash /opt/archinstall.git/bin/network_configuration.sh $hostname
+
+
+# Initramfs
+
+# implement if needed ...
+
+
+# Set default Password
+
+echo "root:root" | chpasswd
+echo "Default password for user root set - OK"
+echo ""
+sleep 1
+
+
+# Bootloader Installation
+
+bash /opt/archinstall.git/bin/install_bootloader.sh $boot_partition_path
diff --git a/bin/test.sh b/bin/test.sh
deleted file mode 100644
index 88cad89..0000000
--- a/bin/test.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-
-echo "This is working!"