Advertisement
Guest User

Untitled

a guest
Feb 5th, 2019
246
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 8.18 KB | None | 0 0
  1. #!/bin/sh
  2. set -e
  3. ##########################################################################################
  4. 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"
  5. ##########################################################################################
  6. 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"
  7. ##########################################################################################
  8. 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"
  9. ##########################################################################################
  10. 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"
  11. ##########################################################################################
  12. export ROOT_PASSWORD=""
  13. ##########################################################################################
  14. export USER_PASSWORD=""
  15. ##########################################################################################
  16.  
  17.     ### Настройка локализации установщика ###
  18. sed -i "s/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/" /etc/locale.gen
  19. sed -i "s/#ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/" /etc/locale.gen
  20. locale-gen
  21. echo "LANG=ru_RU.UTF-8" > /etc/locale.conf
  22. echo "FONT=cyr-sun16" > /etc/vconsole.conf
  23. unset LANG
  24. source /etc/profile.d/locale.sh
  25.  
  26.     ### Соединение с Интернетом ###
  27. wifi-menu
  28. sleep 15
  29.  
  30.     ### Синхронизация системных часов ###
  31. timedatectl set-ntp true
  32.  
  33.     ### Разбиение дисков на разделы ###
  34. parted --script /dev/sda mklabel gpt
  35. parted --script -a opt /dev/sda mkpart primary 1MB 128MB
  36. parted --script -a opt /dev/sda mkpart primary 128MB 127GB
  37. parted --script -a opt /dev/sda mkpart primary 127GB 128GB
  38. parted --script /dev/sda set 1 boot on
  39.  
  40.     ### Форматирование разделов ###
  41. mkfs.vfat -F32 /dev/sda1
  42. mkfs.ext4 /dev/sda2
  43. mkswap /dev/sda3
  44. swapon /dev/sda3
  45.  
  46.     ### Монтирование разделов ###
  47. mount -o noatime,compress=lzo,discard /dev/sda2 /mnt #Уточнить
  48. mkdir /mnt/boot
  49. mount /dev/sda1 /mnt/boot
  50.  
  51.     ### Сортировка зеркал ###
  52. pacman -Sy --quiet --noconfirm --noprogressbar reflector
  53. reflector --sort rate --save /etc/pacman.d/mirrorlist
  54.  
  55.     ### Установка пакетов ###
  56. pacstrap /mnt $BASE $DE $SYS $OTHER_APPS
  57.  
  58.     ### Fstab ###
  59. genfstab -U /mnt >> /mnt/etc/fstab
  60. sed -i "s/0 2/0 0/" /mnt/etc/fstab
  61.  
  62. mkdir /mnt/install
  63. #cat > /mnt/install/setup.sh << "END_SETUP"
  64. #!/bin/sh
  65. set -e
  66.  
  67.     ### Установка часового пояса ###
  68. ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
  69. hwclock --systohc
  70.  
  71.     ### Настройка локализации пользовательской системы ###
  72. sed -i "s/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/" /etc/locale.gen
  73. sed -i "s/#ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/" /etc/locale.gen
  74. locale-gen
  75. echo "LANG=ru_RU.UTF-8" > /etc/locale.conf
  76. echo "FONT=cyr-sun16" > /etc/vconsole.conf
  77.  
  78.     ### Настройка сети ###
  79. echo "vltsoy97" > /etc/hostname
  80. echo -e "127.0.0.1\tlocalhost\n::1\tlocalhost\n127.0.1.1\tvltsoy97.localdomain vltsoy97" > /etc/hosts
  81.  
  82.     ### Установка пароля суперпользователя ###
  83. echo -e "$ROOT_PASSWORD\n$ROOT_PASSWORD\n" | passwd
  84.  
  85.     ### Создание загрузочной записи ###
  86. 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"
  87.  
  88.     ### Создание аккаунта пользователя ###
  89. useradd --create-home --gid users --groups wheel,lp,storage,video,network,power --shell /bin/bash vltsoy97
  90. echo -e "$USER_PASSWORD\n$USER_PASSWORD\n" | passwd vltsoy97
  91. echo "vltsoy97 ALL=(ALL) ALL" >> /etc/sudoers
  92.  
  93.     ### Включение позднего обновления микрокода ###
  94. curl --output /mnt/install/microcode.tgz "https://downloadmirror.intel.com/28087/eng/microcode-20180807a.tgz"
  95. tar -zxf /install/microcode.tgz --directory /install
  96. mv /install/intel-ucode /usr/lib/firmware
  97.  
  98.     ### Создание pacman hook для "Reflector" ###
  99. mkdir /etc/pacman.d/hooks
  100. cat > /etc/pacman.d/hooks/mirrorupgrade.hook << "END_HOOK"
  101. [Trigger]
  102. Operation = Upgrade
  103. Type = Package
  104. Target = pacman-mirrorlist
  105.  
  106. [Action]
  107. Description = Обновление списка зеркал с помощью reflector и удаление pacnew файла...
  108. When = PostTransaction
  109. Depends = reflector
  110. Exec = /bin/sh -c "reflector --sort rate --save /etc/pacman.d/mirrorlist;  rm -f /etc/pacman.d/mirrorlist.pacnew"
  111. END_HOOK
  112.  
  113.     ### Настройка TLP ###
  114. sed -i "s/RESTORE_DEVICE_STATE_ON_STARTUP=0/RESTORE_DEVICE_STATE_ON_STARTUP=1/" /etc/default/tlp
  115. systemctl enable tlp.service
  116. systemctl enable tlp-sleep.service
  117. systemctl enable NetworkManager-dispatcher.service
  118. systemctl mask systemd-rfkill.service
  119. systemctl mask systemd-rfkill.socket
  120.  
  121.     ### Настройка GNOME ###
  122. systemctl enable gdm.service
  123. sed -i "s/#WaylandEnable/WaylandEnable/" /etc/gdm/custom.conf
  124. echo "LIBVA_DRIVER_NAME=iHD" >> /etc/environment
  125.  
  126.     ### Настройка 'mkinitcpio' ###
  127. sed -i "s/MODULES=()/MODULES=(i915 btrfs)/" /etc/mkinitcpio.conf
  128. sed -i "s/HOOKS=(base udev autodetect modconf block filesystems keyboard fsck)/HOOKS=(base udev autodetect modconf block)/" /etc/mkinitcpio.conf
  129. mkinitcpio -p linux-zen
  130.  
  131.     ### Настройка ALSA ###
  132. amixer sset Master on
  133. amixer sset Capture cap
  134. amixer sset Master 32768
  135. amixer sset Capture 32768
  136.  
  137.     ### Настройка "Makepkg" ###
  138. sed -i 's/#MAKEFLAGS="-j2"/MAKEFLAGS="-j4"/' /etc/makepkg.conf
  139.  
  140.     ### Отключаем ненужные сервисы ###
  141. systemctl mask lvm2-monitor.service
  142. systemctl mask lvm2-lvmetad.service
  143. systemctl mask lvm2-lvmpolld.socket
  144. systemctl mask lvm2-lvmetad.socket
  145. systemctl mask cryptsetup.target
  146. systemctl mask geoclue.service
  147.  
  148.     ### Прочие команды ###
  149. sed -i "s/#Storage=external/Storage=none/" /etc/systemd/coredump.conf
  150. sed -i "s/#SystemMaxUse=/SystemMaxUse=4M/" /etc/systemd/journald.conf
  151. systemctl enable bluetooth.service
  152. systemctl enable upower.service
  153.  
  154. exit
  155. END_SETUP
  156.  
  157. chmod +x /mnt/install/setup.sh
  158.  
  159.     ### Chroot ###
  160. arch-chroot /mnt /install/setup.sh
  161.  
  162. rm -r /mnt/install
  163. umount -R /mnt
  164. echo ""
  165. echo ""
  166. echo ""
  167. echo ""
  168. echo ""
  169. echo ""
  170. echo ""
  171. echo ""
  172. echo ""
  173. echo ""
  174. echo ""
  175. echo ""
  176. echo '                    -@'
  177. echo '                   .##@'
  178. echo '                  .####@'
  179. echo '                  @#####@                     Установка завершена.'
  180. echo '                . *######@'
  181. echo '               .##@o@#####@'
  182. echo '              /############@'
  183. echo '             /##############@'
  184. echo '            @######@**%######@'
  185. echo '           @######`     %#####o               Перезапустите компьютер, не забудте извлечь USB-накопитель...'
  186. echo '          @######@       ######%'
  187. echo '        -@#######h       ######@.`'
  188. echo '       /#####h**``       `**%@####@'
  189. echo '      @H@*`                    `*%#@'
  190. echo '     *`                            `*'
  191. echo ""
  192. echo ""
  193. echo ""
  194. echo ""
  195. echo ""
  196. echo ""
  197. echo ""
  198. echo ""
  199. echo ""
  200. echo ""
  201. echo ""
  202. echo ""
  203.  
  204.     ### После установки ###
  205. #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