Update some package installs
This commit is contained in:
parent
dcf44d04d3
commit
c61b64f731
@ -3,7 +3,6 @@
|
|||||||
#### Features
|
#### Features
|
||||||
- LUKS/LVM
|
- LUKS/LVM
|
||||||
- Basic setup
|
- Basic setup
|
||||||
- 10 languages
|
|
||||||
- Auto partition
|
- Auto partition
|
||||||
- Package selection
|
- Package selection
|
||||||
- Error detection
|
- Error detection
|
||||||
@ -13,13 +12,14 @@
|
|||||||
#### Requirements
|
#### Requirements
|
||||||
|
|
||||||
- Network connection.
|
- Network connection.
|
||||||
|
- `parted` for partition creation.
|
||||||
- `rsync` for unpacking the squashfs.
|
- `rsync` for unpacking the squashfs.
|
||||||
- `dialog` for all user input/output.
|
- `dialog` for all user input/output.
|
||||||
- `vim` for editing files post install.
|
- `vim` for editing files post install.
|
||||||
- `parted` for partition creation.
|
- `curl` for network check and mirrorlist download
|
||||||
- `arch-chroot` to perform operations in a chroot.
|
- `arch-chroot` to perform operations in a chroot.
|
||||||
- `chpasswd` to set root and user passwords.
|
- `chpasswd` to set root and user passwords.
|
||||||
- `awk` `sed` `grep` `uniq` `sort` `find` `ping` `mkfs` `lsblk` `curl`
|
- `coreutils`
|
||||||
|
|
||||||
|
|
||||||
#### Manual Installation
|
#### Manual Installation
|
||||||
|
18
install.sh
18
install.sh
@ -4,13 +4,17 @@ hash git >/dev/null 2>&1 || { printf "This requires git installed\n"; exit 1; }
|
|||||||
|
|
||||||
git clone --depth=1 https://bitbucket.org/archlabslinux/installer
|
git clone --depth=1 https://bitbucket.org/archlabslinux/installer
|
||||||
|
|
||||||
printf "\nRoot access is needed to continue\n\n"
|
if [[ $(whoami) != 'root' ]]; then
|
||||||
|
asroot=sudo
|
||||||
|
printf "\nRoot access is needed to continue\n\n"
|
||||||
|
else
|
||||||
|
asroot=""
|
||||||
|
fi
|
||||||
|
|
||||||
sudo mkdir -pv /usr/share/archlabs/installer/{lang,docs}
|
$asroot mkdir -pv /usr/share/archlabs/installer/{lang,docs}
|
||||||
|
$asroot cp -fv installer/src/archlabs-installer /usr/bin/
|
||||||
sudo cp -fv installer/src/archlabs-installer /usr/bin/
|
$asroot cp -fv installer/src/packages.txt /usr/share/archlabs/installer/
|
||||||
sudo cp -fv installer/src/packages.txt /usr/share/archlabs/installer/
|
$asroot cp -fv installer/lang/*.trans /usr/share/archlabs/installer/lang/
|
||||||
sudo cp -fv installer/lang/*.trans /usr/share/archlabs/installer/lang/
|
$asroot cp -fv installer/{LICENSE,README.md} /usr/share/archlabs/installer/docs/
|
||||||
sudo cp -fv installer/{LICENSE,README.md} /usr/share/archlabs/installer/docs/
|
|
||||||
|
|
||||||
printf "\nInstall complete\n"
|
printf "\nInstall complete\n"
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
# Some ideas and code has been taken from other installers
|
# Some ideas and code has been taken from other installers
|
||||||
# AIF, Cnichi, Calamares, The Arch Wiki.. Credit where credit is due
|
# AIF, Cnichi, Calamares, The Arch Wiki.. Credit where credit is due
|
||||||
|
|
||||||
VER="1.8.13" # version
|
VER="1.8.14" # version
|
||||||
DIST="ArchLabs" # distributor
|
DIST="ArchLabs" # distributor
|
||||||
MNT="/mnt" # mountpoint
|
MNT="/mnt" # mountpoint
|
||||||
|
|
||||||
@ -1302,11 +1302,12 @@ create_user()
|
|||||||
# Create the user, set password, and make sure the ownership of ~/ is correct
|
# Create the user, set password, and make sure the ownership of ~/ is correct
|
||||||
local groups='audio,autologin,floppy,log,network,rfkill,scanner,storage,optical,power,wheel'
|
local groups='audio,autologin,floppy,log,network,rfkill,scanner,storage,optical,power,wheel'
|
||||||
chrun "groupadd -r autologin"
|
chrun "groupadd -r autologin"
|
||||||
chrun "useradd -m -u 1000 -g users -G $groups -s $MYSHELL $NEWUSER" 2>$ERR ||
|
chrun "useradd -m -u 1000 -g users -G $groups -s $MYSHELL $NEWUSER" 2>$ERR
|
||||||
chrun "useradd -m -u 1000 -g users -G $groups -s $MYSHELL $NEWUSER" 2>$ERR
|
|
||||||
echeck "useradd -m -u 1000 -g users -G $groups -s $MYSHELL $NEWUSER"
|
echeck "useradd -m -u 1000 -g users -G $groups -s $MYSHELL $NEWUSER"
|
||||||
chrun "chpasswd <<< '$NEWUSER:$USER_PASS'"
|
chrun "chpasswd <<< '$NEWUSER:$USER_PASS'"
|
||||||
|
|
||||||
|
cp -rfv /etc/skel/. $MNT/home/$NEWUSER/
|
||||||
|
|
||||||
# for neovim set up ~/.config/nvim
|
# for neovim set up ~/.config/nvim
|
||||||
if [[ $PACKAGES =~ neovim ]]; then
|
if [[ $PACKAGES =~ neovim ]]; then
|
||||||
mkdir -p $MNT/home/$NEWUSER/.config/nvim
|
mkdir -p $MNT/home/$NEWUSER/.config/nvim
|
||||||
@ -1456,24 +1457,11 @@ package_operations()
|
|||||||
local rmpkg="archlabs-installer"
|
local rmpkg="archlabs-installer"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local wmpkgs=( # packages used for window managers
|
|
||||||
archlabs nitrogen polkit-gnome volumeicon xclip xdotool
|
|
||||||
compton gnome-keyring arandr dunst feh gsimplecal
|
|
||||||
xfce4-power-manager xfce4-settings laptop-detect
|
|
||||||
)
|
|
||||||
|
|
||||||
local basepkgs=( # packages used in all systems
|
|
||||||
gtk-engine-murrine gtk3 pavucontrol xdg-user-dirs tumbler
|
|
||||||
base base-devel sudo git udisks2 gvfs mesa xorg-server
|
|
||||||
xorg-apps xorg-drivers playerctl ffmpeg gstreamer libmad
|
|
||||||
libmatroska gst-libav gst-plugins-base gst-plugins-good
|
|
||||||
)
|
|
||||||
|
|
||||||
# update first to avoid database access errors
|
# update first to avoid database access errors
|
||||||
chrun "pacman -Syyu --noconfirm"
|
chrun "pacman -Syyu --noconfirm"
|
||||||
|
|
||||||
if [[ $INSTALL_WMS == 'plasma' || $INSTALL_WMS == 'gnome' || $INSTALL_WMS == 'cinnamon' ]]; then
|
if ! [[ $INSTALL_WMS == 'plasma' || $INSTALL_WMS == 'gnome' || $INSTALL_WMS == 'cinnamon' ]]; then
|
||||||
chrun "pacman -Rnsc archlabs-ksuperkey xfce4 --noconfirm"
|
chrun "pacman -S archlabs-ksuperkey --noconfirm --needed"
|
||||||
fi
|
fi
|
||||||
if [[ $BOOTLDR != 'grub' ]]; then
|
if [[ $BOOTLDR != 'grub' ]]; then
|
||||||
chrun "pacman -Rns grub --noconfirm"
|
chrun "pacman -Rns grub --noconfirm"
|
||||||
@ -1481,12 +1469,12 @@ package_operations()
|
|||||||
chrun "pacman -Rns $rmpkg --noconfirm"
|
chrun "pacman -Rns $rmpkg --noconfirm"
|
||||||
chrun "pacman -S iputils --noconfirm"
|
chrun "pacman -S iputils --noconfirm"
|
||||||
chrun "pacman -S $inpkg --needed --noconfirm"
|
chrun "pacman -S $inpkg --needed --noconfirm"
|
||||||
chrun "pacman -S ${basepkgs[@]} --needed --noconfirm"
|
chrun "pacman -S archlabs-common archlabs-dARK archlabs-icons archlabs-scripts archlabs-skel-base archlabs-wallpapers gtk-engine-murrine gtk3 pavucontrol xdg-user-dirs tumbler base base-devel sudo git udisks2 mesa xorg-server xorg-apps xorg-drivers playerctl ffmpeg gstreamer libmad libmatroska gst-libav gst-plugins-base gst-plugins-good --needed --noconfirm"
|
||||||
if [[ $LOGIN_TYPE == 'xinit' ]]; then
|
if [[ $LOGIN_TYPE == 'xinit' ]]; then
|
||||||
chrun "pacman -S xorg-xinit --needed --noconfirm"
|
chrun "pacman -S xorg-xinit --needed --noconfirm"
|
||||||
fi
|
fi
|
||||||
if [[ $inpkg =~ (openbox|dwm|bspwm|i3-gaps) ]]; then
|
if [[ $inpkg =~ (openbox|dwm|bspwm|i3) ]]; then
|
||||||
chrun "pacman -S ${wmpkgs[@]} --needed --noconfirm"
|
chrun "pacman -S arandr archlabs-networkmanager-dmenu nitrogen polkit-gnome volumeicon xclip xdotool compton gnome-keyring dunst feh gsimplecal xfce4-power-manager xfce4-settings laptop-detect --needed --noconfirm"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sed -i "s/# %wheel ALL=(ALL) ALL/%wheel ALL=(ALL) ALL/g" $MNT/etc/sudoers
|
sed -i "s/# %wheel ALL=(ALL) ALL/%wheel ALL=(ALL) ALL/g" $MNT/etc/sudoers
|
||||||
@ -1671,10 +1659,10 @@ install_bootloader()
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $SYS == 'UEFI' ]]; then
|
if [[ $SYS == 'UEFI' ]]; then
|
||||||
find ${MNT}${BMNTS[UEFI-$BOOTLDR]}/EFI/ \
|
find ${MNT}${BMNTS[UEFI-$BOOTLDR]}/EFI/ -maxdepth 1 -mindepth 1 \
|
||||||
-maxdepth 1 -mindepth 1 -name '[aA][rR][cC][hH][lL]abs' -type d -exec rm -rf '{}' \; >/dev/null 2>&1
|
-name '[aA][rR][cC][hH][lL]abs' -type d -exec rm -rf '{}' \; >/dev/null 2>&1
|
||||||
find ${MNT}${BMNTS[UEFI-$BOOTLDR]}/EFI/ \
|
find ${MNT}${BMNTS[UEFI-$BOOTLDR]}/EFI/ -maxdepth 1 -mindepth 1 \
|
||||||
-maxdepth 1 -mindepth 1 -name '[Bb][oO][oO][tT]' -type d -exec rm -rf '{}' \; >/dev/null 2>&1
|
-name '[Bb][oO][oO][tT]' -type d -exec rm -rf '{}' \; >/dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $BOOTLDR != 'grub' ]]; then
|
if [[ $BOOTLDR != 'grub' ]]; then
|
||||||
@ -2207,7 +2195,7 @@ select_language()
|
|||||||
|
|
||||||
chrun()
|
chrun()
|
||||||
{
|
{
|
||||||
arch-chroot $MNT bash -c "$1" || arch-chroot $MNT sh -c "$1"
|
arch-chroot $MNT /bin/bash -c "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
json()
|
json()
|
||||||
|
Reference in New Issue
Block a user