aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAwnrt <roman.levikoff@gmail.com>2024-03-30 20:41:02 +0300
committerAwnrt <roman.levikoff@gmail.com>2024-03-30 20:41:02 +0300
commit817ed8a396d4c6eaf58ee7f11d730d3862152008 (patch)
tree35228c7b5309066a52129b7668163fb1386887f7
parent3e41cb3cdd7aad35c508b5b8fcc2bc3c86b53651 (diff)
install scripts
-rwxr-xr-xinstall.sh48
-rwxr-xr-xpost_chroot.sh62
2 files changed, 110 insertions, 0 deletions
diff --git a/install.sh b/install.sh
new file mode 100755
index 0000000..4409a43
--- /dev/null
+++ b/install.sh
@@ -0,0 +1,48 @@
+read -p "Enter disk label (e.g., sda): " disk_drive
+read -p "Enter comma-separated partition numbers (e.g., 5,6,7 for 5 boot 6 swap 7 root): " partitions
+IFS=',' read -r -a partition_array <<< "$partitions"
+
+root_drive="$disk_drive${partition_array[2]}"
+swap_drive="$disk_drive${partition_array[1]}"
+boot_drive="$disk_drive${partition_array[0]}"
+
+read -p "Hostname: " _hostname
+
+read -p "Username: " _username
+
+read -p "root password: " _rootpasswd
+
+read -p "user password: " _userpasswd
+
+mkfs.ext4 /dev/$root_drive
+mkswap /dev/$swap_drive
+swapon /dev/$swap_drive
+mkfs.fat -F 32 /dev/$boot_drive
+
+mount /dev/$root_drive /mnt
+mkdir /mnt/boot
+mkdir /mnt/home
+mkdir /mnt/boot/efi
+mount /dev/$boot_drive /mnt/boot/efi
+
+rc-service ntpd start
+
+pacman -Sy --confirm
+pacman -S pacman-contrib --noconfirm
+
+rankmirrors -n 6 /etc/pacman.d/mirrorlist > /etc/pacman.d/mirrorlist
+
+basestrap /mnt base base-devel openrc elogind-openrc
+basestrap /mnt linux linux-firmware
+fstabgen -U /mnt >> /mnt/etc/fstab
+
+cp post_chroot.sh /mnt
+
+export root_drive
+export swap_drive
+export boot_drive
+export _hostname
+export _rootpasswd
+export _userpasswd
+
+artix-chroot /mnt ./post_chroot.sh
diff --git a/post_chroot.sh b/post_chroot.sh
new file mode 100755
index 0000000..a061f4d
--- /dev/null
+++ b/post_chroot.sh
@@ -0,0 +1,62 @@
+pacman -Sy bash-completion --noconfirm
+ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
+hwclock --systohc
+
+echo en_US.UTF-8 UTF-8 >> /etc/locale.gen
+locale-gen
+
+echo LANG=en_US.UTF-8 > /etc/locale.conf
+export LANG="en_US.UTF-8"
+export LC_COLLATE="C"
+
+pacman -S grub os-prober efibootmgr --noconfirm
+
+grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub
+
+grub-mkconfig -o /boot/grub/grub.cfg
+
+useradd -m -g users -G wheel,storage,power -s /bin/bash $_username
+
+echo root:$_rootpasswd | chpasswd
+
+echo $_username:$_userpasswd | chpasswd
+
+echo "%wheel ALL=(ALL) ALL" >> /etc/sudoers
+echo "Defaults rootpw" >> /etc/sudoers
+
+echo $_hostname > /etc/hostname
+
+echo "[lib32]" >> /etc/pacman.conf
+echo "Include = /etc/pacman.d/mirrorlist" >> /etc/pacman.conf
+pacman -Sy --noconfirm
+
+pacman -S dhcpcd connman-openrc --noconfirm
+rc-update add connmand
+
+pacman -S intel-ucode --noconfirm
+
+grub-mkconfig -o /boot/grub/grub.cfg
+
+pacman -S linux-headers --noconfirm
+pacman -S trizen --noconfirm
+pacman -S nvidia-dkms nvidia-utils opencl-nvidia lib32-nvidia-utils lib32-opencl-nvidia nvidia-settings libxnvctrl --noconfirm
+
+#trizen -S nvidia-535xx-utils nvidia-535xx-dkms opencl-nvidia-535xx lib32-opencl-nvidia-535xx lib32-nvidia-535xx-utils nvidia-535xx-settings libxnvctrl-535xx
+
+
+sudo sed -i -e 's/MODULES=()/MODULES=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)/g' /etc/mkinitcpio.conf
+
+
+mkdir /etc/pacman.d/hooks
+echo "[Trigger]" >> /etc/pacman.d/hooks/nvidia
+echo "Operation=Install" >> /etc/pacman.d/hooks/nvidia
+echo "Operation=Upgrade" >> /etc/pacman.d/hooks/nvidia
+echo "Operation=Remove" >> /etc/pacman.d/hooks/nvidia
+echo "Type=Package" >> /etc/pacman.d/hooks/nvidia
+echo "Target=nvidia" >> /etc/pacman.d/hooks/nvidia
+echo "[Action]" >> /etc/pacman.d/hooks/nvidia
+echo "Depends=mkinitcpio" >> /etc/pacman.d/hooks/nvidia
+echo "When=PostTransaction" >> /etc/pacman.d/hooks/nvidia
+echo "Exec=/usr/bin/mkinitcpio -P" >> /etc/pacman.d/hooks/nvidia
+
+rm /post_chroot.sh