moving work
This commit is contained in:
parent
8cfb5ee822
commit
72a7219d0d
10
TODO
10
TODO
|
@ -1,5 +1,5 @@
|
||||||
lf preview tools
|
|
||||||
ask user to set $LOCATION in .config/zsh/configs/host-setup
|
ask user to set $LOCATION in .config/zsh/configs/host-setup
|
||||||
|
ask user to run arandr and save config script in .config/X11/xsession.d/40display-setup
|
||||||
|
|
||||||
run fc-cache to get fonts from dotfiles
|
run fc-cache to get fonts from dotfiles
|
||||||
|
|
||||||
|
@ -13,3 +13,11 @@ these files need to be created
|
||||||
.local/share/virtualenv/
|
.local/share/virtualenv/
|
||||||
.local/share/firefox/
|
.local/share/firefox/
|
||||||
.local/src/
|
.local/src/
|
||||||
|
|
||||||
|
rework progs.csv
|
||||||
|
|
||||||
|
look into necessary polkit/sudoers changes (power management, networkmanager stuff)
|
||||||
|
https://wiki.archlinux.org/title/NetworkManager#Set_up_PolicyKit_permissions
|
||||||
|
|
||||||
|
enable dbus: `ln -s /etc/sv/dbus /var/service/`
|
||||||
|
enable elogind `ln -s /etc/sv/elogind /var/service`
|
||||||
|
|
|
@ -10,7 +10,7 @@ error() {
|
||||||
}
|
}
|
||||||
|
|
||||||
welcome() {
|
welcome() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Welcome!" \
|
--title "Welcome!" \
|
||||||
--msgbox \
|
--msgbox \
|
||||||
"Welcome!\\n\\nThis script will automatically install a fully-featured Linux desktop with DWM and my dotfiles." \
|
"Welcome!\\n\\nThis script will automatically install a fully-featured Linux desktop with DWM and my dotfiles." \
|
||||||
|
@ -20,26 +20,26 @@ welcome() {
|
||||||
getlogin() {
|
getlogin() {
|
||||||
# Prompts user for new username an password.
|
# Prompts user for new username an password.
|
||||||
name=$(
|
name=$(
|
||||||
whiptail \
|
dialog \
|
||||||
--inputbox "First, please enter a name for the user account." \
|
--inputbox "First, please enter a name for the user account." \
|
||||||
10 60 3>&1 1>&2 2>&3 3>&1
|
10 60 3>&1 1>&2 2>&3 3>&1
|
||||||
) || exit 1
|
) || exit 1
|
||||||
while ! echo "$name" | grep -q "^[a-z_][a-z0-9_-]*$"; do
|
while ! echo "$name" | grep -q "^[a-z_][a-z0-9_-]*$"; do
|
||||||
name=$(
|
name=$(
|
||||||
whiptail \
|
dialog \
|
||||||
--nocancel \
|
--nocancel \
|
||||||
--inputbox "Username not valid. Give a username beginning with a letter, with only lowercase letters, - or _." \
|
--inputbox "Username not valid. Give a username beginning with a letter, with only lowercase letters, - or _." \
|
||||||
10 60 3>&1 1>&2 2>&3 3>&1
|
10 60 3>&1 1>&2 2>&3 3>&1
|
||||||
)
|
)
|
||||||
done
|
done
|
||||||
pass1=$(
|
pass1=$(
|
||||||
whiptail \
|
dialog \
|
||||||
--nocancel \
|
--nocancel \
|
||||||
--passwordbox "Enter a password for that user." \
|
--passwordbox "Enter a password for that user." \
|
||||||
10 60 3>&1 1>&2 2>&3 3>&1
|
10 60 3>&1 1>&2 2>&3 3>&1
|
||||||
)
|
)
|
||||||
pass2=$(
|
pass2=$(
|
||||||
whiptail \
|
dialog \
|
||||||
--nocancel \
|
--nocancel \
|
||||||
--passwordbox \
|
--passwordbox \
|
||||||
"Retype password." \
|
"Retype password." \
|
||||||
|
@ -48,13 +48,13 @@ getlogin() {
|
||||||
while ! [ "$pass1" = "$pass2" ]; do
|
while ! [ "$pass1" = "$pass2" ]; do
|
||||||
unset pass2
|
unset pass2
|
||||||
pass1=$(
|
pass1=$(
|
||||||
whiptail \
|
dialog \
|
||||||
--nocancel \
|
--nocancel \
|
||||||
--passwordbox "Passwords do not match.\\n\\nEnter password again." \
|
--passwordbox "Passwords do not match.\\n\\nEnter password again." \
|
||||||
10 60 3>&1 1>&2 2>&3 3>&1
|
10 60 3>&1 1>&2 2>&3 3>&1
|
||||||
)
|
)
|
||||||
pass2=$(
|
pass2=$(
|
||||||
whiptail \
|
dialog \
|
||||||
--nocancel \
|
--nocancel \
|
||||||
--passwordbox "Retype password." \
|
--passwordbox "Retype password." \
|
||||||
10 60 3>&1 1>&2 2>&3 3>&1
|
10 60 3>&1 1>&2 2>&3 3>&1
|
||||||
|
@ -64,7 +64,7 @@ getlogin() {
|
||||||
|
|
||||||
usercheck() {
|
usercheck() {
|
||||||
if id -u "$name" >/dev/null 2>&1; then
|
if id -u "$name" >/dev/null 2>&1; then
|
||||||
whiptail \
|
dialog \
|
||||||
--title "WARNING" \
|
--title "WARNING" \
|
||||||
--yes-button "Continue" \
|
--yes-button "Continue" \
|
||||||
--no-button "Cancel" \
|
--no-button "Cancel" \
|
||||||
|
@ -76,11 +76,11 @@ sanitycheck() {
|
||||||
while IFS=, read -r tag program comment; do
|
while IFS=, read -r tag program comment; do
|
||||||
case "$tag" in
|
case "$tag" in
|
||||||
# "G") ;;
|
# "G") ;;
|
||||||
"P") ;;
|
"C") ;;
|
||||||
"X") ;;
|
"X") ;;
|
||||||
*) error "Incorrect installation tag for $program in progs.csv" ;;
|
*) error "Incorrect installation tag for $program in progs.csv" ;;
|
||||||
esac
|
esac
|
||||||
done
|
done < progs.csv
|
||||||
}
|
}
|
||||||
|
|
||||||
rootcheck() {
|
rootcheck() {
|
||||||
|
@ -88,13 +88,13 @@ rootcheck() {
|
||||||
}
|
}
|
||||||
|
|
||||||
preinstall() {
|
preinstall() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Confirmation" \
|
--title "Confirmation" \
|
||||||
--yes-button "Start Installation" \
|
--yes-button "Start Installation" \
|
||||||
--no-button "Cancel" \
|
--no-button "Cancel" \
|
||||||
--yesno "The rest of the installation is automated." \
|
--yesno "The rest of the installation is automated." \
|
||||||
13 60 || clear && exit 1
|
13 60 || clear && exit 1
|
||||||
whiptail \
|
dialog \
|
||||||
--title "XBPS Updates" \
|
--title "XBPS Updates" \
|
||||||
--infobox "Updating XBPS Packages." \
|
--infobox "Updating XBPS Packages." \
|
||||||
10 60
|
10 60
|
||||||
|
@ -103,7 +103,7 @@ preinstall() {
|
||||||
|
|
||||||
addlogin() {
|
addlogin() {
|
||||||
# Adds user `$name` with password $pass1.
|
# Adds user `$name` with password $pass1.
|
||||||
whiptail \
|
dialog \
|
||||||
--infobox "Adding user \"$name\"..." \
|
--infobox "Adding user \"$name\"..." \
|
||||||
7 50
|
7 50
|
||||||
useradd -m -g wheel -s /bin/zsh "$name" >/dev/null 2>&1 ||
|
useradd -m -g wheel -s /bin/zsh "$name" >/dev/null 2>&1 ||
|
||||||
|
@ -120,7 +120,7 @@ addlogin() {
|
||||||
}
|
}
|
||||||
|
|
||||||
installxbps() {
|
installxbps() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "XBPS Installation" \
|
--title "XBPS Installation" \
|
||||||
--infobox "Installing \`$1\` ($n of $total). $1 $2" \
|
--infobox "Installing \`$1\` ($n of $total). $1 $2" \
|
||||||
9 70
|
9 70
|
||||||
|
@ -131,7 +131,7 @@ installxbps() {
|
||||||
# progname="${1##*/}"
|
# progname="${1##*/}"
|
||||||
# progname="${progname%.git}"
|
# progname="${progname%.git}"
|
||||||
# dir="$repodir/$progname"
|
# dir="$repodir/$progname"
|
||||||
# whiptail \
|
# dialog \
|
||||||
# --title "Git Installation" \
|
# --title "Git Installation" \
|
||||||
# --infobox "Installing \`$progname\` ($n of $total) via \`git\` and \`make\`. $(basename "$1") $2" \
|
# --infobox "Installing \`$progname\` ($n of $total) via \`git\` and \`make\`. $(basename "$1") $2" \
|
||||||
# 8 70
|
# 8 70
|
||||||
|
@ -148,7 +148,7 @@ installxbps() {
|
||||||
# }
|
# }
|
||||||
|
|
||||||
installpip() {
|
installpip() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Pip Installation" \
|
--title "Pip Installation" \
|
||||||
--infobox "Installing the Python package \`$1\` ($n of $total). $1 $2" 9 70
|
--infobox "Installing the Python package \`$1\` ($n of $total). $1 $2" 9 70
|
||||||
[ -x "$(command -v "pip")" ] || installpkg python-pip >/dev/null 2>&1
|
[ -x "$(command -v "pip")" ] || installpkg python-pip >/dev/null 2>&1
|
||||||
|
@ -156,7 +156,7 @@ installpip() {
|
||||||
}
|
}
|
||||||
|
|
||||||
initnvim() {
|
initnvim() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Installation" \
|
--title "Installation" \
|
||||||
--infobox "Bootstrapping neovim" \
|
--infobox "Bootstrapping neovim" \
|
||||||
8 70
|
8 70
|
||||||
|
@ -178,7 +178,7 @@ installationloop() {
|
||||||
}
|
}
|
||||||
|
|
||||||
pulldots() {
|
pulldots() {
|
||||||
whiptail \
|
dialog \
|
||||||
--infobox "Dowloading dotfiles" \
|
--infobox "Dowloading dotfiles" \
|
||||||
7 60
|
7 60
|
||||||
sudo -u "$name" \
|
sudo -u "$name" \
|
||||||
|
@ -190,13 +190,13 @@ pulldots() {
|
||||||
|
|
||||||
initbootstrap() {
|
initbootstrap() {
|
||||||
for package in curl ca-certificates base-devel git ntp zsh; do
|
for package in curl ca-certificates base-devel git ntp zsh; do
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Installation" \
|
--title "Installation" \
|
||||||
--infobox "Installing \`$package\` which is required to install and configure other programs." \
|
--infobox "Installing \`$package\` which is required to install and configure other programs." \
|
||||||
8 70
|
8 70
|
||||||
install-xbps "$package"
|
install-xbps "$package"
|
||||||
done
|
done
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Installation" \
|
--title "Installation" \
|
||||||
--infobox "Making some required configurations." \
|
--infobox "Making some required configurations." \
|
||||||
8 70
|
8 70
|
||||||
|
@ -206,7 +206,7 @@ initbootstrap() {
|
||||||
}
|
}
|
||||||
|
|
||||||
synctime() {
|
synctime() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Installation" \
|
--title "Installation" \
|
||||||
--infobox "Synchronizing system time to ensure successful and secure installation of software..." \
|
--infobox "Synchronizing system time to ensure successful and secure installation of software..." \
|
||||||
8 70
|
8 70
|
||||||
|
@ -214,7 +214,7 @@ synctime() {
|
||||||
}
|
}
|
||||||
|
|
||||||
finalize() {
|
finalize() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "Installation" \
|
--title "Installation" \
|
||||||
--infobox "Cleaning up..." \
|
--infobox "Cleaning up..." \
|
||||||
8 70
|
8 70
|
||||||
|
@ -223,7 +223,7 @@ finalize() {
|
||||||
}
|
}
|
||||||
|
|
||||||
goodbye() {
|
goodbye() {
|
||||||
whiptail \
|
dialog \
|
||||||
--title "All done!" \
|
--title "All done!" \
|
||||||
--msgbox "Unless this script has bugs (contact me at luca@snaile.de) the installation is finished\\n\\n\
|
--msgbox "Unless this script has bugs (contact me at luca@snaile.de) the installation is finished\\n\\n\
|
||||||
To run the new graphical environment, log out and log back in as your new user, then run the command \"startgraphical\" to start the graphical environment (it will start automatically in tty1)." \
|
To run the new graphical environment, log out and log back in as your new user, then run the command \"startgraphical\" to start the graphical environment (it will start automatically in tty1)." \
|
||||||
|
|
3
notes
3
notes
|
@ -1,3 +0,0 @@
|
||||||
enable dbus: `ln -s /etc/sv/dbus /var/service/`
|
|
||||||
enable elogind `ln -s /etc/sv/elogind /var/service`
|
|
||||||
|
|
10
requirements
10
requirements
|
@ -29,7 +29,7 @@ xsecurelock
|
||||||
lf
|
lf
|
||||||
psmisc
|
psmisc
|
||||||
wget
|
wget
|
||||||
picom
|
xcompmgr
|
||||||
xss-lock
|
xss-lock
|
||||||
playerctl
|
playerctl
|
||||||
ntp
|
ntp
|
||||||
|
@ -44,6 +44,8 @@ lazygit
|
||||||
elogind
|
elogind
|
||||||
pamixer
|
pamixer
|
||||||
xdg-utils
|
xdg-utils
|
||||||
|
ffmpeg-thumbnailer
|
||||||
|
htop-vim
|
||||||
|
|
||||||
libX11-devel
|
libX11-devel
|
||||||
#libxcb-devel
|
#libxcb-devel
|
||||||
|
@ -53,13 +55,9 @@ libassuan-devel
|
||||||
libconfig-devel
|
libconfig-devel
|
||||||
gpgme-devel
|
gpgme-devel
|
||||||
|
|
||||||
-- to be removed --
|
|
||||||
htop
|
|
||||||
|
|
||||||
-- needed --
|
-- needed --
|
||||||
ffmpegthumbnailer
|
|
||||||
htop-vim
|
|
||||||
npm
|
npm
|
||||||
|
networkmanager-dmenu
|
||||||
|
|
||||||
-- update needed --
|
-- update needed --
|
||||||
dunst
|
dunst
|
||||||
|
|
Loading…
Reference in New Issue