Files
init-debian/configure.sh
T
2024-11-19 16:36:30 +08:00

71 lines
2.7 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
SCRIPT=$(readlink -f "$0")
AWD=$(dirname "$SCRIPT")
DISTRO_PVE=$((command -v pvesh &>/dev/null && echo 1) || echo 0)
configure(){
echo -e "APT::Install-Recommends "0";
APT::Install-Suggests "0";" | tee /etc/apt/apt.conf.d/01norecommend >/dev/null
sed -i "s/.*Host \*.*/Host \*/g" /etc/ssh/ssh_config
sed -i "/.*HashKnownHosts.*/d" /etc/ssh/ssh_config
sed -i "/.*HostKeyAlgorithms.*/d" /etc/ssh/ssh_config
sed -i "/.*PubkeyAcceptedKeyTypes.*/d" /etc/ssh/ssh_config
sed -i "/.*IdentityFile.*/d" /etc/ssh/ssh_config
echo " HashKnownHosts no" | tee -a /etc/ssh/ssh_config >/dev/null
echo " HostKeyAlgorithms ssh-ed25519,ssh-rsa,rsa-sha2-256" | tee -a /etc/ssh/ssh_config >/dev/null
echo " PubkeyAcceptedKeyTypes ssh-ed25519,ssh-rsa,rsa-sha2-256" | tee -a /etc/ssh/ssh_config >/dev/null
echo " IdentityFile ~/.ssh/id_ed25519" | tee -a /etc/ssh/ssh_config >/dev/null
echo " IdentityFile ~/.ssh/id_rsa" | tee -a /etc/ssh/ssh_config >/dev/null
sed -i "s/.*SystemMaxUse=.*/SystemMaxUse=500M/g" /etc/systemd/journald.conf
sed -i "s/.*RuntimeMaxUse=.*/RuntimeMaxUse=500M/g" /etc/systemd/journald.conf
sed -i "s/.*MaxLevelStore=.*/MaxLevelStore=info/g" /etc/systemd/journald.conf
sed -i "s/.*MaxLevelSyslog=.*/MaxLevelSyslog=info/g" /etc/systemd/journald.conf
sed -i "s/.*set tabsize.*/set tabsize 4/g" /etc/nanorc
sed -i "s/.*set tabstospaces.*/set tabstospaces/g" /etc/nanorc
sed -i "s|.*/usr/share/nano/\*.nanorc.*|include /usr/share/nano/\*.nanorc|g" /etc/nanorc
sed -i "s/.*whereis all.*/bind \^F whereis all/g" /etc/nanorc
sed -i "s/.*wherewas all.*/bind \^B wherewas all/g" /etc/nanorc
usermod -s /usr/bin/zsh $(whoami)
mkdir -p $HOME/.config/fd
cp "$AWD/ignore" $HOME/.config/fd/
cp "$AWD/.zshrc" $HOME/
if [ $DISTRO_PVE -eq 1 ]; then
sed -i -E "s/.*prompt .*/prompt bart/g" $HOME/.zshrc
fi
cp "$AWD/TINK-CA.crt" /usr/local/share/ca-certificates
update-ca-certificates
if [ $DISTRO_PVE -eq 1 ]; then
sed -i -E "s/.*zoxide.*//g" $HOME/.zshrc
elif $1; then
$AWD/install-release.sh -r zsh-users/zsh-completions -k tarball -o completions.tar.gz -d "0 src" -p /usr/local/share/zsh/site-functions
$AWD/install-release.sh -r ajeetdsouza/zoxide -m x86_64-unknown -p /usr/local/bin -n zoxide -f
fi
}
usage(){
echo "Usage: $0 [OPTIONS]";
echo "OPTIONS:";
echo " -s skip install";
}
DO_INSTALL=true;
while getopts ":s" OPT; do
case $OPT in
s)
DO_INSTALL=false;
;;
?)
echo "Invalid Option: -$OPTARG";
usage;
exit 1;;
esac;
done;
configure $DO_INSTALL