Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- set -e
- ##########################################################################################
- BASE="bash bzip2 coreutils cryptsetup device-mapper dhcpcd diffutils e2fsprogs file filesystem findutils gawk gcc-libs gettext glibc grep gzip inetutils iproute2 iputils less licenses linux-firmware logrotate lvm2 mdadm netctl pacman pciutils perl procps-ng psmisc s-nail sed shadow sysfsutils systemd-sysvcompat tar texinfo usbutils util-linux which xfsprogs"
- ##########################################################################################
- DE="gdm gnome-shell fragments gedit sushi gnome-usage gnome-terminal gnome-keyring gnome-control-center eog evince file-roller p7zip unrar gnome-calculator gnome-screenshot nautilus totem gst-libav gst-plugins-ugly xdg-user-dirs-gtk gnome-tweaks"
- ##########################################################################################
- SYS="linux-zen base-devel linux-zen-headers efibootmgr tlp-rdw x86_energy_perf_policy reflector alsa-utils sudo vulkan-icd-loader gstreamer-vaapi intel-ucode intel-media-driver vulkan-intel"
- ##########################################################################################
- OTHER_APPS="neofetch virtualbox virtualbox-host-dkms chromium chrome-gnome-shell pacman-contrib python-nautilus sshfs telegram-desktop ttf-liberation ttf-dejavu ttf-droid ttf-opensans"
- ##########################################################################################
- export ROOT_PASSWORD=""
- ##########################################################################################
- export USER_PASSWORD=""
- ##########################################################################################
- ### Настройка локализации установщика ###
- sed -i "s/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/" /etc/locale.gen
- sed -i "s/#ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/" /etc/locale.gen
- locale-gen
- echo "LANG=ru_RU.UTF-8" > /etc/locale.conf
- echo "FONT=cyr-sun16" > /etc/vconsole.conf
- unset LANG
- source /etc/profile.d/locale.sh
- ### Соединение с Интернетом ###
- wifi-menu
- sleep 15
- ### Синхронизация системных часов ###
- timedatectl set-ntp true
- ### Разбиение дисков на разделы ###
- parted --script /dev/sda mklabel gpt
- parted --script -a opt /dev/sda mkpart primary 1MB 128MB
- parted --script -a opt /dev/sda mkpart primary 128MB 127GB
- parted --script -a opt /dev/sda mkpart primary 127GB 128GB
- parted --script /dev/sda set 1 boot on
- ### Форматирование разделов ###
- mkfs.vfat -F32 /dev/sda1
- mkfs.ext4 /dev/sda2
- mkswap /dev/sda3
- swapon /dev/sda3
- ### Монтирование разделов ###
- mount -o noatime,compress=lzo,discard /dev/sda2 /mnt #Уточнить
- mkdir /mnt/boot
- mount /dev/sda1 /mnt/boot
- ### Сортировка зеркал ###
- pacman -Sy --quiet --noconfirm --noprogressbar reflector
- reflector --sort rate --save /etc/pacman.d/mirrorlist
- ### Установка пакетов ###
- pacstrap /mnt $BASE $DE $SYS $OTHER_APPS
- ### Fstab ###
- genfstab -U /mnt >> /mnt/etc/fstab
- sed -i "s/0 2/0 0/" /mnt/etc/fstab
- mkdir /mnt/install
- #cat > /mnt/install/setup.sh << "END_SETUP"
- #!/bin/sh
- set -e
- ### Установка часового пояса ###
- ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
- hwclock --systohc
- ### Настройка локализации пользовательской системы ###
- sed -i "s/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/" /etc/locale.gen
- sed -i "s/#ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/" /etc/locale.gen
- locale-gen
- echo "LANG=ru_RU.UTF-8" > /etc/locale.conf
- echo "FONT=cyr-sun16" > /etc/vconsole.conf
- ### Настройка сети ###
- echo "vltsoy97" > /etc/hostname
- echo -e "127.0.0.1\tlocalhost\n::1\tlocalhost\n127.0.1.1\tvltsoy97.localdomain vltsoy97" > /etc/hosts
- ### Установка пароля суперпользователя ###
- echo -e "$ROOT_PASSWORD\n$ROOT_PASSWORD\n" | passwd
- ### Создание загрузочной записи ###
- efibootmgr --disk /dev/sda --part 1 --create --label "Arch Linux" --loader /vmlinuz-linux-zen --unicode "initrd=intel-ucode.img initrd=initramfs-linux-zen.img root=PARTUUID=$(blkid -s PARTUUID -o value /dev/sda2) rw udev.log_priority=3 quiet i915.fastboot=1 i915.enable_fbc=1 i915.enable_guc=2 i915.enable_gvt=1"
- ### Создание аккаунта пользователя ###
- useradd --create-home --gid users --groups wheel,lp,storage,video,network,power --shell /bin/bash vltsoy97
- echo -e "$USER_PASSWORD\n$USER_PASSWORD\n" | passwd vltsoy97
- echo "vltsoy97 ALL=(ALL) ALL" >> /etc/sudoers
- ### Включение позднего обновления микрокода ###
- curl --output /mnt/install/microcode.tgz "https://downloadmirror.intel.com/28087/eng/microcode-20180807a.tgz"
- tar -zxf /install/microcode.tgz --directory /install
- mv /install/intel-ucode /usr/lib/firmware
- ### Создание pacman hook для "Reflector" ###
- mkdir /etc/pacman.d/hooks
- cat > /etc/pacman.d/hooks/mirrorupgrade.hook << "END_HOOK"
- [Trigger]
- Operation = Upgrade
- Type = Package
- Target = pacman-mirrorlist
- [Action]
- Description = Обновление списка зеркал с помощью reflector и удаление pacnew файла...
- When = PostTransaction
- Depends = reflector
- Exec = /bin/sh -c "reflector --sort rate --save /etc/pacman.d/mirrorlist; rm -f /etc/pacman.d/mirrorlist.pacnew"
- END_HOOK
- ### Настройка TLP ###
- sed -i "s/RESTORE_DEVICE_STATE_ON_STARTUP=0/RESTORE_DEVICE_STATE_ON_STARTUP=1/" /etc/default/tlp
- systemctl enable tlp.service
- systemctl enable tlp-sleep.service
- systemctl enable NetworkManager-dispatcher.service
- systemctl mask systemd-rfkill.service
- systemctl mask systemd-rfkill.socket
- ### Настройка GNOME ###
- systemctl enable gdm.service
- sed -i "s/#WaylandEnable/WaylandEnable/" /etc/gdm/custom.conf
- echo "LIBVA_DRIVER_NAME=iHD" >> /etc/environment
- ### Настройка 'mkinitcpio' ###
- sed -i "s/MODULES=()/MODULES=(i915 btrfs)/" /etc/mkinitcpio.conf
- sed -i "s/HOOKS=(base udev autodetect modconf block filesystems keyboard fsck)/HOOKS=(base udev autodetect modconf block)/" /etc/mkinitcpio.conf
- mkinitcpio -p linux-zen
- ### Настройка ALSA ###
- amixer sset Master on
- amixer sset Capture cap
- amixer sset Master 32768
- amixer sset Capture 32768
- ### Настройка "Makepkg" ###
- sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j4"/' /etc/makepkg.conf
- ### Отключаем ненужные сервисы ###
- systemctl mask lvm2-monitor.service
- systemctl mask lvm2-lvmetad.service
- systemctl mask lvm2-lvmpolld.socket
- systemctl mask lvm2-lvmetad.socket
- systemctl mask cryptsetup.target
- systemctl mask geoclue.service
- ### Прочие команды ###
- sed -i "s/#Storage=external/Storage=none/" /etc/systemd/coredump.conf
- sed -i "s/#SystemMaxUse=/SystemMaxUse=4M/" /etc/systemd/journald.conf
- systemctl enable bluetooth.service
- systemctl enable upower.service
- exit
- END_SETUP
- chmod +x /mnt/install/setup.sh
- ### Chroot ###
- arch-chroot /mnt /install/setup.sh
- rm -r /mnt/install
- umount -R /mnt
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ' -@'
- echo ' .##@'
- echo ' .####@'
- echo ' @#####@ Установка завершена.'
- echo ' . *######@'
- echo ' .##@o@#####@'
- echo ' /############@'
- echo ' /##############@'
- echo ' @######@**%######@'
- echo ' @######` %#####o Перезапустите компьютер, не забудте извлечь USB-накопитель...'
- echo ' @######@ ######%'
- echo ' -@#######h ######@.`'
- echo ' /#####h**`` `**%@####@'
- echo ' @H@*` `*%#@'
- echo ' *` `*'
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- echo ""
- ### После установки ###
- #sudo -u gdm dbus-launch gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement