Dateien nach "/" hochladen

This commit is contained in:
Henrik Lutzmann 2024-12-29 18:21:40 +01:00
commit 6d85544615
5 changed files with 1508 additions and 0 deletions

117
LinuxMint22_Flatpack.sh Normal file
View File

@ -0,0 +1,117 @@
#!/bin/sh
#
if [ ! -f /etc/debian_version ]; then
echo "Unsupported Linux Distribution. Prepared for Debian"
exit 1
fi
################################################################################
#
#
# Install Flatpaks @Linux Mint / Linux Mint Debian Edition
#
#
################################################################################
#
while :
do
clear
echo ""
echo "\033[1m I N S T A L L Flatpak @ LinuxMint22 "
echo " -----------------------------------------"
echo "\033[0m"
echo " 01.Setup Flatpak Themes"
echo " -----------------------------------------"
echo " 02.Install Flatseal"
echo " 03.Install FreeTube"
echo " 04.Install Bitwarden"
echo " 05.Install Jellyfin-Media-Player"
echo " 06.Install Lutris"
echo " 07.Install Cryptomator"
echo " 08.Install SaveDesktop"
echo " 09.Install Flatsweep"
echo " -----------------------------------------"
echo " 10.Reinstall Flatpack"
echo ""
echo " x. Exit"
echo ""
echo -n " Please enter option [01 - 10]"
read opt
case $opt in
##################################################################################
01) echo "************ Setup Flatpak Themes Arc-Dark **********************";
##################################################################################
# Step 1: Give Flatpak apps access to GTK themes and icons location
sudo cp -r /usr/share/icons/Papirus-Dark ~/.icons/
sudo cp -r /usr/share/icons/ePapirus-Dark ~/.icons/
sudo cp -r /usr/share/themes/Arc-Dark ~/.themes/
sudo flatpak override --filesystem=$HOME/.themes
sudo flatpak override --filesystem=$HOME/.icons
# Step 2: Tell Flatpak apps which theme/icon to use
sudo flatpak override --env=GTK_THEME=Arc-Dark
sudo flatpak override --env=ICON_THEME=Papirus-Dark
# sudo flatpak override --env=ICON_THEME=Papirus-Yaru-Dark
;;
##################################################################################
02) echo "************ Install Flatseal ****************";
##################################################################################
flatpak install -y flathub com.github.tchx84.Flatseal
;;
##################################################################################
03) echo "************ Install FreeTube *****************";
##################################################################################
flatpak install -y flathub io.freetubeapp.FreeTube
;;
##################################################################################
04) echo "************ Install Bitwarden ******************";
##################################################################################
flatpak install -y flathub com.bitwarden.desktop
;;
##################################################################################
05) echo "************ Install Jellyfin-Media-Player **************************";
##################################################################################
flatpak install -y flathub com.github.iwalton3.jellyfin-media-player
;;
##################################################################################
06) echo "************ Install Lutris **************************";
##################################################################################
flatpak install -y flathub net.lutris.Lutris
;;
##################################################################################
07) echo "************ Install Cryptomator **************************";
##################################################################################
flatpak install -y flathub org.cryptomator.Cryptomator
;;
##################################################################################
08) echo "************ Install SaveDesktop **************************";
##################################################################################
flatpak install -y flathub io.github.vikdevelop.SaveDesktop
;;
##################################################################################
09) echo "************ Install Flatsweep **************************";
##################################################################################
flatpak install -y flathub io.github.giantpinkrobots.flatsweep
;;
##################################################################################
10) echo "************ Reinstall Flatpack **************************";
##################################################################################
sudo apt remove -y flatpak --purge && sudo apt install -y flatpak --reinstall
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
;;
x) echo "";
exit 1;;
*) echo " Press [enter] key to continue. . .";
read enterKey;;
esac
done

109
LinuxMint22_KVM.sh Normal file
View File

@ -0,0 +1,109 @@
#!/bin/sh
#
if [ ! -f /etc/debian_version ]; then
echo "Unsupported Linux Distribution. Prepared for Debian"
exit 1
fi
################################################################################
#
#
# Install KVM @Linux Mint 22
#
#
################################################################################
#
# Preperations:
# - Warning your GPU has to support UEFI.
# - Check if your motherboard BIOS version is recent. (this can help you with having better IOMMU groups)
# - Check if your system is installed in UEFI mode. (CSM disabled in bios for AMD)
#
# AMD:
# - IOMMU = enabled
# - NX mode = enabled
# - SVM mode = enabled
#
################################################################################
#
# wget https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso
#
# https://www.youtube.com/watch?v=_JTEsQufSx4
#
################################################################################
#
# journalctl -xeu libvirtd.service
#
################################################################################
sudo apt install -y \
qemu-kvm \
qemu-system \
libvirt-clients \
libvirt-daemon-system \
bridge-utils \
virt-manager \
ovmf \
swtpm \
virgl-server \
libvirglrenderer1 \
libguestfs-tools \
libosinfo-bin
echo -e '\033[33m------Enable IOMMU------\033[33m'
echo -e "\033[0m"
sleep 2
sudo cp /etc/default/grub /etc/default/grub_kvm
sudo sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/GRUB_CMDLINE_LINUX_DEFAULT="amd_iommu=on iommu=pt video=efifb:off quiet splash"/g' /etc/default/grub
sudo update-grub
echo -e '\033[33m------Configuring of Libvirt------\033[33m'
echo -e "\033[0m"
sleep 2
sudo sed -i 's/#unix_sock_group = "libvirt"/unix_sock_group = "libvirt"/g' /etc/libvirt/libvirtd.conf
sudo sed -i 's/#unix_sock_rw_perms = "0770"/unix_sock_rw_perms = "0770"/g' /etc/libvirt/libvirtd.conf
# IMPORTANT: You need this for detailed logs:
echo -e 'log_filters="1:qemu"' | sudo tee -a /etc/libvirt/libvirtd.conf
echo -e 'log_outputs="1:file:/var/log/libvirt/libvirtd.log"' | sudo tee -a /etc/libvirt/libvirtd.conf
sudo usermod -a -G libvirt $(whoami)
sudo sed -i 's/#user = "root"/user = "$USER"/g' /etc/libvirt/qemu.conf
sudo systemctl enable --now libvirtd
# Verify libvirt has been added to your users:
# sudo groups $(whoami)
echo -e '\033[33m------Configuring QEMU------\033[33m'
echo -e "\033[0m"
sleep 2
sudo cp /etc/libvirt/qemu.conf /etc/libvirt/qemu.conf.default
sudo sed -i 's/#user = "libvirt-qemu"/user = "zulumann"/g' /etc/libvirt/qemu.conf
sudo sed -i 's/#group = "kvm"/group = "zulumann"/g' /etc/libvirt/qemu.conf
sudo usermod -a -G kvm,libvirt $(whoami)
# Verify libvirt and kvm has been added to your users groups:
# sudo groups $(whoami)
echo -e '\033[33m------Enabling the virtual machine default network------\033[33m'
echo -e "\033[0m"
sleep 2
sudo virsh net-autostart default && sudo virsh net-start default
echo -e '\033[33m------Enabling copy-and-paste between the guest and the host------\033[33m'
echo -e "\033[0m"
sleep 2
sudo apt install spice-vdagent
sudo systemctl enable --now spice-vdagentd.service
echo -e '\033[33m------Setup Directorys------\033[33m'
echo -e "\033[0m"
sleep 2
#mkdir -p /home/$USER/VM-Images && sudo chown :kvm ~/VM-Images
#mkdir -p /home/$USER/ISOs && sudo chown :kvm ~/ISOs

120
LinuxMint22_Software.sh Normal file
View File

@ -0,0 +1,120 @@
#!/bin/sh
#
if [ ! -f /etc/debian_version ]; then
echo "Unsupported Linux Distribution. Prepared for Debian"
exit 1
fi
#
################################################################################
#
#
# post-installation script for Linux
#
#
#
################################################################################
#
# root pass: master_user@vm-net#01
#
################################################################################
while :
do
clear
echo ""
echo "\033[1m I N S T A L L LinuxMint22 Software"
echo " -----------------------------------------"
echo "\033[0m"
echo " 01.Install Ananicy"
echo " 02.Install Brave Browser"
echo " 03.Install Telegram-Desktop"
echo " 04.Install OwnCloud-Client"
echo " 05.Install VSCodium"
echo " 06.Install Syncthing"
echo " 07.Install Steam DosBOX"
echo ""
echo " x. Exit"
echo ""
echo -n " Please enter option [01 - 07]"
read opt
case $opt in
##################################################################################
01) echo "************ Install Ananicy **********************";
##################################################################################
sudo apt install --assume-yes --install-recommends schedtool -f
git clone https://github.com/kuche1/minq-ananicy.git
./minq-ananicy/package.sh debian
sudo dpkg -i ./minq-ananicy/*ananicy-*.deb
sudo apt install --assume-yes --install-recommends gamemode -f
sudo apt install --assume-yes --install-recommends thermald -f
sudo apt install --assume-yes --install-recommends tuned -f
sudo systemctl enable --now ananicy
;;
##################################################################################
02) echo "************ Install Brave Browser **********************";
##################################################################################
wget -qO - https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg | sudo gpg --dearmor -o /usr/share/keyrings/brave-browser-stable-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/brave-browser-stable-keyring.gpg] https://brave-browser-apt-release.s3.brave.com/ stable main"|sudo tee /etc/apt/sources.list.d/brave-browser-release.list
sudo apt update && sudo apt install -y brave-browser
;;
##################################################################################
03) echo "************ Install Telegram-Desktop **********************";
##################################################################################
wget -O telegram.tar.xz https://telegram.org/dl/desktop/linux && tar xf telegram.tar.xz
sudo mv Telegram /opt/telegram && sudo ln -sf /opt/telegram/Telegram /usr/bin/telegram
/usr/bin/telegram
;;
##################################################################################
04) echo "************ Install OwnCloud-Client **********************";
##################################################################################
wget -nv https://download.owncloud.com/desktop/ownCloud/stable/latest/linux/Ubuntu_22.04/Release.key -O - | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/owncloud.gpg > /dev/null
echo 'deb https://download.owncloud.com/desktop/ownCloud/stable/latest/linux/Ubuntu_22.04/ /' | sudo tee -a /etc/apt/sources.list.d/owncloud.list
sudo apt update && sudo apt install -y owncloud-client
;;
##################################################################################
05) echo "************ Install VSCodium **********************";
##################################################################################
wget -O- https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | sudo gpg --dearmor | sudo tee /usr/share/keyrings/vscodium.gpg
echo deb [signed-by=/usr/share/keyrings/vscodium.gpg] https://download.vscodium.com/debs vscodium main | sudo tee /etc/apt/sources.list.d/vscodium.list
sudo apt update && sudo apt install -y codium
;;
##################################################################################
06) echo "************ Install Syncthing **********************";
##################################################################################
sudo curl -s -o /usr/share/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
echo "deb [signed-by=/usr/share/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
# Bevorzugung von Syncthing-Paketen ("Pinning")
printf "Package: *\nPin: origin apt.syncthing.net\nPin-Priority: 990\n" | sudo tee /etc/apt/preferences.d/syncthing
sudo apt update && sudo apt install -y syncthing syncthing-gtk
systemctl --user enable syncthing && systemctl --user start syncthing
sudo ufw allow syncthing && sudo ufw reload
;;
##################################################################################
07) echo "************ Install Steam DosBOX **********************";
##################################################################################
sudo apt install -y \
dosbox \
gamemode \
mangohud \
steam \
xboxdrv
;;
x) echo "";
exit 1;;
*) echo " Press [enter] key to continue. . .";
read enterKey;;
esac
done

1031
LinuxMint22_System.sh Normal file

File diff suppressed because it is too large Load Diff

131
LinuxMint22_sysctl.conf.sh Normal file
View File

@ -0,0 +1,131 @@
#!/bin/bash
#
echo -e '\033[33m----Optimise tcp ip----\033[33m'
echo -e "\033[0m"
sleep 2
sudo mv /etc/sysctl.conf /etc/sysctl.conf.default
sudo bash -c 'cat << EOF > /etc/sysctl.conf
#############################
## Battery life tweaks #
#############################
#vm.dirty_writeback_centisecs=3000
#vm.dirty_expire_centisecs=500
#
#############################
## CPU tweaks #
#############################
#
## Queue size modifications
net.core.optmem_max=20480
net.unix.max_dgram_qlen=50
#
## Net Core Settings
## Location: /proc/sys/net/core
net.core.wmem_max=524288
net.core.rmem_max=524288
net.core.rmem_default=256960
net.core.wmem_default=256960
#
#############################
## VM & Filesystem tweaks #
#############################
fs.lease-break-time=10
fs.file-max=65536
vm.overcommit_memory=1
vm.oom_dump_tasks=1
vm.page-cluster=0
vm.swappiness = 26
vm.vfs_cache_pressure = 10000
vm.dirty_ratio = 10
vm.dirty_background_ratio = 5
#
#############################
## Net Speed tweaks #
#############################
#
net.core.default_qdisc = cake
net.ipv4.tcp_congestion_control = bbr
#net.ipv4.tcp_congestion_control=cubic
net.ipv4.tcp_mtu_probing = 1
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_keepalive_intvl = 10
net.ipv4.tcp_keepalive_probes = 6
#
# # Hardening the TCP/IP stack to SYN attacks
net.ipv4.tcp_syncookies=1
net.ipv4.conf.all.rp_filter=1
net.ipv4.conf.default.rp_filter=1
net.ipv4.tcp_synack_retries=2
net.ipv4.tcp_syn_retries=2
net.ipv4.tcp_max_syn_backlog=1024
net.ipv4.tcp_max_tw_buckets=16384
net.ipv4.icmp_echo_ignore_all=1
net.ipv4.icmp_ignore_bogus_error_responses=1
net.ipv4.tcp_no_metrics_save=1
net.ipv4.tcp_fin_timeout=15
net.ipv4.tcp_keepalive_time=1800
net.ipv4.ip_forward=0
net.ipv4.tcp_moderate_rcvbuf=1
net.ipv4.route.flush=1
net.ipv4.udp_rmem_min=6144
net.ipv4.udp_wmem_min=6144
net.ipv4.tcp_rfc1337=1
net.ipv4.ip_no_pmtu_disc=0
net.ipv4.tcp_ecn=0
net.ipv4.tcp_sack=1
net.ipv4.tcp_fack=1
#
# Dont accept source routing
net.ipv4.conf.default.accept_source_route=0
net.ipv4.conf.all.accept_source_route=0
#
# Dont accept redirects
net.ipv4.conf.all.accept_redirects=0
net.ipv4.conf.default.accept_redirects=0
net.ipv4.conf.all.secure_redirects=0
net.ipv4.conf.default.secure_redirects=0
EOF'
sudo /sbin/sysctl -p
#---------------------------------------------------------------------
# Network and memory-related optimizationss for 32GB
#---------------------------------------------------------------------
kernel.sysrq = 1 # Enable SysRQ for rebooting the machine properly if it freezes. [Source](https://oglo.dev/tutorials/sysrq/index.html)
net.core.netdev_max_backlog = 30000 # Help prevent packet loss during high traffic periods.
net.core.rmem_default = 262144 # Default socket receive buffer size, improve network performance & applications that use sockets. Adjusted for 32GB RAM.
net.core.rmem_max = 67108864 # Maximum socket receive buffer size, determine the amount of data that can be buffered in memory for network operations. Adjusted for 32GB RAM.
net.core.wmem_default = 262144 # Default socket send buffer size, improve network performance & applications that use sockets. Adjusted for 32GB RAM.
net.core.wmem_max = 67108864 # Maximum socket send buffer size, determine the amount of data that can be buffered in memory for network operations. Adjusted for 32GB RAM.
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_keepalive_intvl = 10 # TCP keepalive interval between probes to detect if a connection is still alive.
net.ipv4.tcp_keepalive_probes = 5 # TCP keepalive probes to detect if a connection is still alive.
net.ipv4.tcp_keepalive_time = 60 # TCP keepalive interval in seconds to detect if a connection is still alive.
vm.dirty_background_bytes = 134217728 # 128 MB
vm.dirty_bytes = 402653184 # 384 MB
vm.min_free_kbytes = 65536 # Minimum free memory for safety (in KB), helping prevent memory exhaustion situations. Adjusted for 32GB RAM.
vm.swappiness = 5 # Adjust how aggressively the kernel swaps data from RAM to disk. Lower values prioritize keeping data in RAM. Adjusted for 32GB RAM.
vm.vfs_cache_pressure = 90 # Adjust vfs_cache_pressure (0-1000) to manage memory used for caching filesystem objects. Adjusted for 32GB RAM.
#---------------------------------------------------------------------
# Nobara Tweaks
#---------------------------------------------------------------------
fs.aio-max-nr = 1000000 # defines the maximum number of asynchronous I/O requests that can be in progress at a given time. 1048576
fs.inotify.max_user_watches = 65536 # sets the maximum number of file system watches, enhancing file system monitoring capabilities. Default: 8192 TWEAKED: 524288
kernel.panic = 5 # Reboot after 5 seconds on kernel panic Default: 0
kernel.pid_max = 131072 # allows a large number of processes and threads to be managed Default: 32768 TWEAKED: 4194304
#---------------------------------------------------------------------
# SSD tweaks: Adjust settings for an SSD to optimize performance.
#---------------------------------------------------------------------
vm.dirty_background_ratio = 40 # Set the ratio of dirty memory at which background writeback starts (5%). Adjusted for SSD.
vm.dirty_expire_centisecs = 3000 # Set the time at which dirty data is old enough to be eligible for writeout (6000 centiseconds). Adjusted for SSD.
vm.dirty_ratio = 80 # Set the ratio of dirty memory at which a process is forced to write out dirty data (10%). Adjusted for SSD.
vm.dirty_writeback_centisecs = 300 # Set the interval between two consecutive background writeback passes (500 centiseconds)