Author SHA1 Message Date
DragonSlayer_14 176240f3b7 Add 'bat' package to the installation script
The 'bat' package has been added to the list of stable packages in 03-install.sh. This enhances the toolset by providing a modern alternative to 'cat' with additional features like syntax highlighting and Git integration.
2026-08-28 18:39:17 +02:00
DragonSlayer_14 7af43e0850 Update package lists and adjust Easyeffects installation method
Added "easyeffects" to apt installation in `03-install.sh` and removed its Flatpak installation from `07-programs.sh`. This ensures Easyeffects is installed via the system package manager instead of Flatpak for better integration.
2026-08-27 19:23:49 +02:00
DragonSlayer_14 5b3fd6848d Add Remmina to apt install and remove its Flatpak version
Replaced Remmina's Flatpak installation with its APT package counterpart for consistency with other system-installed software. This ensures better integration and potentially reduced redundancy in package management.
2026-08-27 19:22:39 +02:00
DragonSlayer_14 ef08a0221b Add PrismLauncher to APT install and remove Flatpak installation
PrismLauncher is now installed via the system package manager (APT) instead of Flatpak for consistency and better integration with the system. The Flatpak installation of PrismLauncher has been removed accordingly.
2026-08-27 19:17:43 +02:00
DragonSlayer_14 29948841cd Add Flameshot to APT installation; remove redundant Flatpak install
Moved Flameshot installation to APT package list for consistency and removed its duplicate Flatpak installation from the programs script. This change ensures that Flameshot is installed via the system's package manager instead of Flatpak for better integration.
2026-08-27 19:14:00 +02:00
DragonSlayer_14 cf24a033da Update package lists and remove redundant Flatseal install
Added "Flatseal" to the apt package list and removed its redundant Flatpak installation in the scripts. This change ensures consistency by managing Flatseal through the system package manager instead of Flatpak.
2026-08-27 19:12:48 +02:00
DragonSlayer_14 4516129bec Add 'obfuscate' package to apt and remove its Flatpak version
Moved the 'obfuscate' package installation from Flatpak to apt for consistency in package management. Removed the Flatpak-specific installation step and added 'obfuscate' to the apt package install list.
2026-08-27 19:10:47 +02:00
DragonSlayer_14 7176a8d796 Update package list and remove redundant flatpak install
Added "resources" to the apt package list, replacing its previous installation via flatpak. Removed the flatpak installation of "net.nokyan.Resources" as it is now included as a system package. This ensures better consistency and avoids duplicate installations.
2026-08-27 19:09:00 +02:00
DragonSlayer_14 01e7b63c7f Add 'impression' package to APT and remove redundant Flatpak
The package 'impression' was added to the APT installation list for improved management while its Flatpak installation was removed from the script. This ensures consistency by reducing duplication and aligning package management under APT.
2026-08-27 19:05:34 +02:00
DragonSlayer_14 934dbd1ea6 Update package list and remove redundant Flatpak installation
Added 'fragments' to the APT package installation list while removing its Flatpak installation to streamline package management. This ensures consistency and avoids duplicate installations across package managers.
2026-08-27 19:03:07 +02:00
DragonSlayer_14 fc6385d400 Remove installation of Cartridges application
The Cartridges app installation command was removed from the script, likely due to redundancy or a change in requirements. This ensures the script installs only the necessary applications.
2026-08-27 18:59:59 +02:00
DragonSlayer_14 6fdd50341c Remove Ente Authenticator flatpak installation
The installation command for Ente Authenticator has been removed from the script. This change simplifies the setup process by excluding unnecessary software.
2026-08-27 18:59:26 +02:00
DragonSlayer_14 aab24c5d1d Update package list to include VLC and remove Flatpak install
Added VLC and its related plugins to installation via apt in `03-install.sh` for system-wide availability. Removed redundant Flatpak-based VLC installation from `07-programs.sh` to streamline the setup process.
2026-08-27 18:55:20 +02:00
DragonSlayer_14 5c4097bb6e Update package list and reorganize installation steps
Added 'baobab' to apt package installations and removed its Flatpak counterpart from the program script to streamline installation. Also included a comment placeholder for installing 'yazi' with a link to its documentation.
2026-08-27 18:44:17 +02:00
DragonSlayer_14 6885535b72 Add gnome-keyring to the list of installed packages
Included gnome-keyring to enhance GNOME desktop functionality. This ensures better keyring management and integration for secure storage of credentials. Other packages remain unchanged.
2026-08-23 12:19:13 +02:00
DragonSlayer_14 0c9cc435d5 Add wayland-utils to the package installation list
Included wayland-utils as part of the stable package installation in `03-install.sh` to support Wayland-specific functionality. This ensures better compatibility and enhances user experience on Wayland-based systems.
2026-08-19 22:54:56 +02:00
DragonSlayer_14 1b1be169cf Add installation of GE-Proton via Flatpak
This commit includes the installation command for GE-Proton, a Steam compatibility tool, using Flatpak. This ensures improved game compatibility for Steam users.
2026-08-18 19:44:06 +02:00
DragonSlayer_14 07fe48a33e Add steam-devices to the package installation list.
This change ensures that the steam-devices package is included during the installation process, which is essential for better hardware support in gaming scenarios. No other modifications were made to the script.
2026-08-17 17:11:06 +02:00
DragonSlayer_14 13da1e980b Add MangoHud installation to 07-programs.sh
Included the MangoHud Vulkan layer installation via Flatpak. This provides an overlay for monitoring performance metrics in games.
2026-08-16 11:34:00 +02:00
DragonSlayer_14 b13a0831fa Add Gamescope installation via Flatpak
This commit includes the addition of a Flatpak command to install Gamescope, a Vulkan-based compositor for gaming. It ensures a more complete setup for gaming-related tools.
2026-08-16 11:28:41 +02:00
DragonSlayer_14 f60be958f6 Add Scopebuddy GUI to Flatpak install list
This commit adds the Scopebuddy GUI application to the programs installed via Flatpak in the script. This ensures the tool is included alongside other essential applications for consistency.
2026-08-16 11:21:35 +02:00
DragonSlayer_14 b8c856a7d3 Remove unused Steam Homebrew installation script
The Steam Homebrew installation script was deemed unnecessary and has been removed from the program setup file. Flatpak installation for Steam remains as the primary method.
2026-08-16 11:17:56 +02:00
DragonSlayer_14 94996e1bb8 Reorganize and relocate installer commands for clarity
Moved Linutil and Steam Homebrew installer commands to more relevant sections in the scripts. This enhances organization and ensures commands are executed in appropriate contexts.
2026-08-16 11:14:55 +02:00
DragonSlayer_14 2481f515b8 Disable addition of i386 architecture in apt setup
Commented out the command for adding i386 architecture to apt, likely aiming to prevent compatibility issues or unnecessary package handling. This change ensures a cleaner and more controlled apt configuration process.
2026-08-16 11:01:55 +02:00
DragonSlayer_14 39b9de3443 Update package installations and add Steam via Flatpak
Removed Steam installer from aptitude to avoid redundancy and added Steam installation through Flatpak. This ensures consistency with the Flatpak approach and streamlines dependency management.
2026-08-16 11:00:49 +02:00
DragonSlayer_14 eca438f7cb Add Local Send flatpak installation
This commit adds the installation command for Local Send via Flatpak and ensures the Flatsweep installation command uses the `-y` flag for automated installation. These changes improve the script's functionality and user experience.
2026-08-15 19:05:57 +02:00
DragonSlayer_14 ddf8585a16 Update installation script with QEMU setup and auto-cpufreq fix
Removed unnecessary sudo from auto-cpufreq installation command for better compatibility. Added a conditional QEMU and virtualization setup to streamline virtual machine installations and configurations. Includes user group adjustments and default network setup for libvirt.
2026-08-13 17:16:56 +02:00
DragonSlayer_14 cb89d422e7 Add dconf-editor to the list of installable packages
Included `dconf-editor` in the stable package installation list for easier system configuration management. This ensures users have access to a critical GUI tool for editing system settings.
2026-08-09 19:29:40 +02:00
DragonSlayer_14 8c1b7168bc Update APT sources to use Debian unstable
Replaced the Debian stable sources configuration with Debian unstable. This change ensures access to the latest packages and updates from the unstable distribution. The security sources for the stable suite were also removed as part of this update.
2026-08-09 13:38:59 +02:00
DragonSlayer_14 f8cbcc1cc6 Feat: Aktualisiert das System auf Debian-unstable und fügt gitea-apt-REpositories hinzu. 2026-08-09 12:00:51 +02:00
DragonSlayer_14 36e56b67b7 Disable installation steps for Lutris, Spotify, Floorp, and Codium.
Commented out commands for installing Lutris, Spotify, Floorp, and Codium in the installation script. This prevents these applications from being installed during script execution. No functional changes to remaining installation steps.
2026-08-09 11:55:05 +02:00
DragonSlayer_14 7c4db527cc Disable Docker and deb-get setup in install script
Commented out Docker installation and deb-get setup steps to streamline the script for specific use cases. Adjusted the AppImage installer to use the home directory for temporary files. Further changes ensure the script aligns with simplified installation requirements.
2026-08-09 11:43:03 +02:00
DragonSlayer_14 a12f135d3f Add protontricks to package installation list
Protontricks was added to the list of stable packages to ensure better compatibility and management of Proton configurations in gaming setups. This enhances the utility of the install script for users running Steam with Proton.
2026-08-09 00:07:15 +02:00
DragonSlayer_14 12240a0ec5 Add AMD CPU-specific game optimization parameters to README
Added detailed launch parameters and configuration examples for optimizing gaming performance on AMD CPUs. Includes settings for ray tracing, upscaling, and general performance improvements to enhance user guidance.
2026-08-08 23:48:25 +02:00
DragonSlayer_14 4a77bb10d6 Add zram-tools to the package installation list
Updated the 03-install.sh script to include zram-tools in the stable package installation section. This addition ensures better memory compression and system performance optimization where zram-tools is applicable.
2026-08-08 23:36:09 +02:00
DragonSlayer_14 fbea2fef38 Add CPU vendor detection and dynamic kernel parameter updates
Implement logic to detect CPU vendor (Intel/AMD) and append appropriate pstate parameters to GRUB configuration. Improve localization, enhance idempotency when setting parameters, and include backup creation and theme update handling.
2026-08-08 23:27:00 +02:00
DragonSlayer_14 6fbc4ff9d0 Set threadirqs in GRUB_CMDLINE_LINUX_DEFAULT
Added the 'threadirqs' parameter to the kernel command line to improve interrupt handling and optimize performance for threaded IRQs. This change ensures better responsiveness and system behavior in specific workloads.
2026-08-08 23:18:14 +02:00
DragonSlayer_14 6f67a5b034 Add radeontop to the list of installed stable packages
Included `radeontop` in the installation script to provide GPU monitoring capabilities for Radeon users. This enhances system resource monitoring and troubleshooting during usage.
2026-08-08 23:07:32 +02:00
DragonSlayer_14 9b7f391cb0 Add script to run Linutil during installation
Integrated the Linutil script from christitus.com into the installation process. This addition enhances system setup by automating essential Linux configurations.
2026-08-08 22:50:46 +02:00
DragonSlayer_14 7290ffdc4a Add installation of 32-bit libs and Steam Brew script
Install `libssl-dev:i386` for 32-bit compatibility and add a script to set up Steam Brew. These changes support better gaming functionality and system setup.
2026-08-08 22:39:56 +02:00
DragonSlayer_14 1dfd42dd1a Add Heroic Games Launcher installation to script
This update adds a command to install the Heroic Games Launcher using deb-get. It ensures users have an easy way to set up the launcher during the script execution.
2026-08-08 22:14:47 +02:00
DragonSlayer_14 82f23a9651 Add auto-cpufreq installation to 03-install.sh
Integrates automated CPU performance and power optimization by including the installation of auto-cpufreq. Clones the repository, runs the installer, and enables the service for system-wide use.
2026-08-08 22:10:40 +02:00
DragonSlayer_14 c1873b34bf Add installation script for AM - AppImage Manager
This commit adds a script to install AM, the AppImage Manager, using a curl command to download and execute the installer. The script ensures proper cleanup by removing the installer after execution.
2026-08-08 22:00:57 +02:00
DragonSlayer_14 b8efa35307 Add installation step for topgrade via deb-get
This ensures that the topgrade tool is installed automatically as part of the script. It simplifies the process for users by combining all necessary installations into the same setup routine.
2026-08-08 21:54:54 +02:00
DragonSlayer_14 778c845db1 Remove redundant apt update and install; add deb-get setup
The apt update and ca-certificates/curl install commands were removed as they were unnecessary for the script's context. Additionally, support for installing deb-get was added to streamline package management.
2026-08-08 21:54:40 +02:00
DragonSlayer_14 bf976533ba Enable AppArmor in GRUB boot configuration.
Added the `apparmor=1` parameter to the `GRUB_CMDLINE_LINUX_DEFAULT` option to explicitly enable AppArmor. This enhances security by enforcing mandatory access control policies.
2026-08-08 21:44:58 +02:00
DragonSlayer_14 504c1f0494 Add AppArmor installation and enable by default
AppArmor packages are now included in the list of installations, and the service is enabled and started by default. This enhances system security by proactively managing application privileges.
2026-08-08 21:41:47 +02:00
DragonSlayer_14 5f6851c65e Add Docker installation to setup script
This update incorporates commands for installing Docker, including setting up its repository, importing the GPG key, and installing necessary packages. These changes streamline Docker installation during the setup process.
2026-08-08 12:00:52 +02:00
DragonSlayer_14 9d6ed39b5e Add gnome-firmware to the list of stable packages
This update enhances the system setup script by including gnome-firmware in the stable packages installation list. Gnome-firmware allows for better firmware management and updates directly within the system. This addition improves overall system functionality and user experience.
2026-07-29 17:54:30 +02:00
DragonSlayer_14 468b900561 Fix typo in Flatpak install command comment
Corrected a missing comment symbol in the Flatpak install command for RPI-Imager. This ensures consistency and avoids unintended execution or errors in the script.
2026-07-14 18:28:37 +02:00
DragonSlayer_14 f0ee6a0dce Add RPI-Imager installation to 07-programs.sh
Included the command to install the Raspberry Pi Imager via Flatpak. This ensures the tool is available for creating and managing Raspberry Pi OS images efficiently.
2026-07-14 18:11:17 +02:00
DragonSlayer_14 ddc142da78 Add Flatsweep installation to programs script
Flatsweep is now included in the list of Flatpak installations in `07-programs.sh`. This ensures easier setup and uniformity when deploying required applications.
2026-07-11 12:19:58 +02:00
DragonSlayer_14 33d5c78cd5 Add firmware-linux packages to installation script
Included firmware-linux, firmware-linux-nonfree, and firmware-misc-nonfree in the package installation list. This ensures better hardware compatibility and support for devices requiring proprietary firmware.
2026-06-20 21:03:10 +02:00
DragonSlayer_14 0aeb0fd221 Feat: Fügt systemd-timesyncd und adb hinzu 2026-06-07 12:59:47 +02:00
DragonSlayer_14 9fdb2c4982 Feat: Fügt systemd-timesyncd hinzu 2026-05-25 15:34:19 +02:00
DragonSlayer_14 21115bbcd1 Feat: Passt Pfade an 2026-05-21 00:26:04 +02:00
DragonSlayer_14 3f1a3fb554 Fix: Liest HOME richtig aus 2026-05-21 00:19:05 +02:00
DragonSlayer_14 d2579c8f45 Fix: Behebt Fehler 2026-05-21 00:16:29 +02:00
DragonSlayer_14 70d6d09c65 Feat: Passt Default-Config an 2026-05-21 00:13:11 +02:00
DragonSlayer_14 23494013c8 Feat: Entfernt gelöschte Zeile 2026-05-20 23:10:36 +02:00
DragonSlayer_14 173f9ecbe4 Feat: Passt Paketursprünge an 2026-05-20 22:49:49 +02:00
DragonSlayer_14 2c70d0a709 Feat: Fügt imagemagick hinzu 2026-05-20 22:24:08 +02:00
DragonSlayer_14 0cf512fc4f Feat: Passt Installation an 2026-05-20 22:10:54 +02:00
DragonSlayer_14 7f7431029f Verschiebt einzelne Pakete wieder zurück 2026-05-20 21:16:29 +02:00
DragonSlayer_14 cef7039f29 Lagert Stable-Pakete in 00 aus 2026-05-20 19:47:26 +02:00
DragonSlayer_14 338393580a Feat: Installiert und nutzt aptitude 2026-05-20 19:42:08 +02:00
DragonSlayer_14 60191445bc Feat: Schiebt rsync in der Installation weiter nach vorne 2026-05-20 19:30:31 +02:00
DragonSlayer_14 9c1e62dfe8 Feat: Passt Hyprland-Install-Skript URL an 2026-05-20 19:08:52 +02:00
DragonSlayer_14 6fbc98bc98 Feat: Passt Branch-URL an 2026-05-20 19:07:51 +02:00
DragonSlayer_14 f9c892baee Feat: Passt README an 2026-05-20 19:06:27 +02:00
DragonSlayer_14 51a7a9a927 Feat: Fügt neue Version ein 2026-05-20 19:05:33 +02:00
38 changed files with 663 additions and 1085 deletions
+1 -2
View File
@@ -77,5 +77,4 @@ fabric.properties
# Android studio 3.1+ serialized cache file # Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser .idea/caches/build_file_checksums.ser
.fleet .vscode
.idea
+15
View File
@@ -0,0 +1,15 @@
if [ "$(id -u)" -ne 0 ]; then
echo "❌ The Skript has to be run as root!"
exit 1
fi
# Update
apt update && apt upgrade -y
# Install first important Packages
apt install ca-certificates curl git gpg imagemagick lsb-release network-manager openssh-server rsync sudo wget
sudo usermod -aG sudo $USER
sudo usermod -aG sudo root
echo "Now, you have to relogin for the next scripts to work!"
+26
View File
@@ -0,0 +1,26 @@
if [ "$(id -u)" -ne 0 ]; then
echo "❌ The Skript has to be run as root!"
exit 1
fi
apt modernize-sources
# Add 32bit-Architecture
#dpkg --add-architecture i386
# Install gitea Keyring
sudo curl https://gitea.creative-dragonslayer.de/api/packages/Linuxapps/debian/repository.key -o /etc/apt/keyrings/gitea-Linuxapps.asc
# Install my apt-sources
rm /etc/apt/sources.list
rm /etc/apt/sources.list~
rm /etc/apt/sources.list.bak
rm -r /etc/apt/sources.list.d
mkdir -p /etc/apt/sources.list.d
cp ./data/apt/sources.list.d/* /etc/apt/sources.list.d/
# Install my apt-pinning
rm -r /etc/apt/preferences.d
mkdir -p /etc/apt/preferences.d
cp ./data/apt/preferences.d/* /etc/apt/preferences.d/
apt update
+3
View File
@@ -0,0 +1,3 @@
#!/bin/bash
sh <(curl -L https://raw.githubusercontent.com/LinuxBeginnings/Debian-Hyprland/main/auto-install.sh)
Executable
+136
View File
@@ -0,0 +1,136 @@
#!/bin/bash
if [ "$(id -u)" -ne 0 ]; then
echo "❌ The Skript has to be run as root!"
exit 1
fi
# Install XanModKernel
wget -qO - https://dl.xanmod.org/archive.key | gpg --dearmor -vo /etc/apt/keyrings/xanmod-archive-keyring.gpg
echo "deb [signed-by=/etc/apt/keyrings/xanmod-archive-keyring.gpg] http://deb.xanmod.org $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/xanmod-release.list
apt update && apt install linux-xanmod-x64v3
apt install aptitude
# Install stable-Packages 1
apt install 7zip adb apparmor apparmor-notify apparmor-profiles apparmor-profiles-extra apparmor-utils apt-listbugs apt-listchanges baobab bat bleachbit blueman bluetooth bluez btop cava clamav clamav-daemon clamav-docs clamav-freshclam cpupower-gui dconf-editor debian-goodies easyeffects fastfetch ffmpeg file-roller firmware-linux firmware-linux-nonfree firmware-misc-nonfree flameshot flatpak flatseal fragments fzf gameconqueror gamemode gimp gnome-disk-utility gnome-firmware gnome-keyring gnome-system-monitor grim hunspell hunspell-de-de-frami impression input-remapper irqbalance keepassxc libreoffice libreoffice-gtk4 libreoffice-l10n-de lsd man mangohud mesa-utils network-manager-gnome nodejs nwg-displays nwg-look obfuscate plymouth plymouth-themes prismlauncher protontricks radeontop remmina resources rfkill ripgrep sddm sl slurp steam-devices swappy swaybg systemd-timesyncd tar tealdeer timeshift thunar tree unzip vlc vlc-data vlc-l10n vlc-plugin-access-extra vlc-plugin-base vlc-plugin-notify vlc-plugin-pipewire vlc-plugin-qt vlc-plugin-video-output wayland-utils wl-clipboard xdg-user-dirs zram-tools zsh
# Install stable-Packages 2
aptitude install pipewire pipewire-pulse unrar wine winetricks wireplumber
# Install backports-Packages
aptitude install mesa-vulkan-drivers
# Install unstable-Packages
aptitude install gamescope openrgb
# Install 32bit-Packages
sudo apt install libssl-dev:i386
sudo systemctl enable apparmor
sudo systemctl start apparmor
xdg-mime default okularApplication_pdf.desktop application/pdf
sudo plymouth-set-default-theme -R solar
sudo update-initramfs -u
sudo update-grub
# Add flathub
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
# Install yazi: https://yazi-rs.github.io/docs/installation#apt
# Install Docker
# Add Docker's official GPG key:
#sudo install -m 0755 -d /etc/apt/keyrings
#sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
#sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
#sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
#Types: deb
#URIs: https://download.docker.com/linux/debian
#Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
#Components: stable
#Architectures: $(dpkg --print-architecture)
#Signed-By: /etc/apt/keyrings/docker.asc
#EOF
#sudo apt update
#sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Install Lutris
#echo -e "Types: deb\nURIs: https://download.opensuse.org/repositories/home:/strycore:/lutris/Debian_13/\nSuites: ./\nComponents: \nSigned-By: /etc/apt/keyrings/lutris.gpg" | sudo tee /etc/apt/sources.list.d/lutris.sources > /dev/null
#wget -q -O- https://download.opensuse.org/repositories/home:/strycore:/lutris/Debian_13/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/lutris.gpg
#sudo apt update
#sudo apt install lutris
# Install Spotify
#curl -sS https://download.spotify.com/debian/pubkey_5384CE82BA52C83A.asc | gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/spotify.gpg
#echo "deb https://repository.spotify.com stable non-free" | tee /etc/apt/sources.list.d/spotify.list
#apt update && apt install spotify-client
# Install Vesktop
wget -O /tmp/vesktop.deb https://vencord.dev/download/vesktop/amd64/deb
apt install /tmp/vesktop.deb
rm /tmp/vesktop.deb
# Install Floorp
#curl -fsSL https://ppa.floorp.app/KEY.gpg | sudo gpg --dearmor -o /usr/share/keyrings/Floorp.gpg
#curl -sS --compressed -o /etc/apt/sources.list.d/Floorp.list "https://ppa.floorp.app/Floorp.list"
#apt update && apt install floorp
# Install Codium
#wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
# | gpg --dearmor \
# | dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg
#echo -e 'Types: deb\nURIs: https://download.vscodium.com/debs\nSuites: vscodium\nComponents: main\nArchitectures: amd64 arm64\nSigned-by: /usr/share/keyrings/vscodium-archive-keyring.gpg' \
#| tee /etc/apt/sources.list.d/vscodium.sources
#apt update && apt install codium
# Install Waydroid
curl -s https://repo.waydro.id | bash
apt install waydroid
systemctl enable --now waydroid-container
cp ./data/usr/share/applications/* /usr/share/applications
# Ollama
curl -fsSL https://ollama.com/install.sh | sh
# OpenDeck
curl -sSL https://raw.githubusercontent.com/nekename/OpenDeck/main/install_opendeck.sh | bash
# deb-get
#curl -sL https://raw.githubusercontent.com/wimpysworld/deb-get/main/deb-get | sudo -E bash -s install deb-get
# topgrade
#sudo deb-get install topgrade
# AM - AppImage - Application Manager
curl -s -Lo ~/AM-INSTALLER https://raw.githubusercontent.com/ivan-hc/AM/main/AM-INSTALLER && chmod a+x ~/AM-INSTALLER && ~/AM-INSTALLER && rm ~/AM-INSTALLER
# auto-cpufreq
git clone https://github.com/AdnanHodzic/auto-cpufreq.git
cd auto-cpufreq && sudo ./auto-cpufreq-installer
auto-cpufreq --install
# heroic games launcher
#sudo deb-get install heroic
# Qemu, Virtual Machine Install
if [ $(grep -Eoc '(vmx|svm)' /proc/cpuinfo) -gt 0 ]; then
apt install -y qemu-system-x86 qemu-utils libvirt-daemon-system libvirt-clients virt-manager
systemctl enable --now libvirtd.service
usermod -aG libvirt "$USER"
virsh net-start default
virsh net-autostart default
else
echo "No virtualisation Support. Check BIOS for Intel VT-x, Intel Virtualization Technology, AMD-V, or SVM Mode."
fi
# RUN Linutil
curl -fsSL https://christitus.com/linux | sh
Executable
+80
View File
@@ -0,0 +1,80 @@
#!/bin/bash
GRUB_CFG="/etc/default/grub"
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_CMDLINE_LINUX_DEFAULT_BASE="quiet splash apparmor=1 usbcore.autosuspend=-1 vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles threadirqs"
GRUB_CMDLINE_LINUX="rcutree.rcu_idle_gp_delay=1"
GRUB_THEME_DIR="/usr/share/debian-gaming/grub/grub2-themes"
# CPU-Treiber automatisch erkennen und hinzufügen
CPU_VENDOR=$(lscpu | grep -oP 'Vendor ID:\s*\K.*' | tr -d ' ')
CPU_MODEL=$(lscpu | grep -oP 'Model name:\s*\K.*' | head -c 20)
echo "Erkannte CPU: $CPU_MODEL ($CPU_VENDOR)"
case "$CPU_VENDOR" in
"AuthenticAMD")
CPU_PARAM="amd_pstate=active"
echo "AMD CPU erkannt → amd_pstate=active wird hinzugefügt"
;;
"GenuineIntel")
CPU_PARAM="intel_pstate=active"
echo "Intel CPU erkannt → intel_pstate=active wird hinzugefügt"
;;
*)
CPU_PARAM=""
echo "⚠️ Unbekannter CPU-Hersteller ($CPU_VENDOR) kein pstate-Parameter"
;;
esac
# CPU-Parameter anhängen, falls vorhanden
if [ -n "$CPU_PARAM" ]; then
# Prüfen ob Parameter bereits existiert (idempotent machen)
if ! echo "$GRUB_CMDLINE_LINUX_DEFAULT_BASE" | grep -q "amd_pstate\|intel_pstate"; then
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT_BASE $CPU_PARAM"
fi
else
GRUB_CMDLINE_LINUX_DEFAULT="$GRUB_CMDLINE_LINUX_DEFAULT_BASE"
fi
# Root-Check
if [ "$(id -u)" -ne 0 ]; then
echo "❌ Das Script muss als root ausgeführt werden!"
exit 1
fi
# Backup erstellen
cp "$GRUB_CFG" "$GRUB_CFG.bak"
echo "✅ Backup erstellt: $GRUB_CFG.bak"
# GRUB-Parameter setzen (sed mit Exit-Code-Handling für nicht-existente Keys)
sed -i "s|^GRUB_TIMEOUT=.*|GRUB_TIMEOUT=$GRUB_TIMEOUT|" "$GRUB_CFG"
sed -i "s|^GRUB_TIMEOUT_STYLE=.*|GRUB_TIMEOUT_STYLE=$GRUB_TIMEOUT_STYLE|" "$GRUB_CFG"
sed -i "s|^GRUB_CMDLINE_LINUX_DEFAULT=.*|GRUB_CMDLINE_LINUX_DEFAULT=\"$GRUB_CMDLINE_LINUX_DEFAULT\"|" "$GRUB_CFG"
sed -i "s|^GRUB_CMDLINE_LINUX=.*|GRUB_CMDLINE_LINUX=\"$GRUB_CMDLINE_LINUX\"|" "$GRUB_CFG"
# Falls Parameter nicht existierten, nachhaken (falls sed nichts geändert hat)
grep -q '^GRUB_TIMEOUT=' "$GRUB_CFG" || echo "GRUB_TIMEOUT=$GRUB_TIMEOUT" >> "$GRUB_CFG"
grep -q '^GRUB_TIMEOUT_STYLE=' "$GRUB_CFG" || echo "GRUB_TIMEOUT_STYLE=$GRUB_TIMEOUT_STYLE" >> "$GRUB_CFG"
grep -q '^GRUB_CMDLINE_LINUX_DEFAULT=' "$GRUB_CFG" || echo "GRUB_CMDLINE_LINUX_DEFAULT=\"$GRUB_CMDLINE_LINUX_DEFAULT\"" >> "$GRUB_CFG"
grep -q '^GRUB_CMDLINE_LINUX=' "$GRUB_CFG" || echo "GRUB_CMDLINE_LINUX=\"$GRUB_CMDLINE_LINUX\"" >> "$GRUB_CFG"
# GRUB-Theme installieren
mkdir -p "$GRUB_THEME_DIR"
if [ ! -d "$GRUB_THEME_DIR/.git" ]; then
git clone https://github.com/vinceliuice/grub2-themes.git "$GRUB_THEME_DIR"
"$GRUB_THEME_DIR/install.sh" -b -t vimix
else
echo "✅ Theme bereits installiert, wird aktualisiert..."
cd "$GRUB_THEME_DIR" && git pull
"./install.sh" -b -t vimix
fi
# GRUB aktualisieren
sudo update-grub
echo "✅ GRUB-Konfiguration aktualisiert!"
echo "📝 Neue Kernel-Parameter: $GRUB_CMDLINE_LINUX_DEFAULT"
+37
View File
@@ -0,0 +1,37 @@
#!/bin/bash
HOME="$(getent passwd $SUDO_USER | cut -d: -f6)"
DEFAULT_USR_FOLDER="/usr/share/debian-gaming/home"
if [ "$(id -u)" -ne 0 ]; then
echo "❌ The Skript has to be run as root!"
exit 1
fi
# Copy my profile.d
mkdir -p /etc/profile.d
cp ./data/etc/profile.d/* /etc/profile.d/
mkdir -p $DEFAULT_USR_FOLDER
# Copy Zsh-Files
cp ./data/home/zshrc $DEFAULT_USR_FOLDER/zshrc
grep -q '^source /etc/profile' /etc/zsh/zprofile || echo 'source /etc/profile' >> /etc/zsh/zprofile
# copy config folder
cp -r $HOME/.config $DEFAULT_USR_FOLDER/.config
# copy templates
cp -r ./data/home/templates $DEFAULT_USR_FOLDER/templates
# set zsh as default shell
USER_ENTRY=$(getent passwd "$USER")
cp /etc/passwd /etc/passwd.bak
if grep -q "^$USER:" /etc/passwd; then
sed -i "/^$USER:/s|[^:]*$|/bin/zsh|" /etc/passwd
else
UPDATED_ENTRY=$(echo "$USER_ENTRY" | awk -F: -v OFS=: '{ $NF="/bin/zsh"; print }')
echo "$UPDATED_ENTRY" >>/etc/passwd
fi
Executable
+29
View File
@@ -0,0 +1,29 @@
#!/bin/bash
FONT_DIR=/usr/share/fonts
if [ "$(id -u)" -ne 0 ]; then
echo "❌ The Skript has to be run as root!"
exit 1
fi
# Install Jetbrains Mono Nerd Font
wget -q https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.tar.xz
mkdir -p $FONT_DIR/JetBrainsMonoNerd
tar -xJkf JetBrainsMono.tar.xz -C $FONT_DIR/JetBrainsMonoNerd
# Install Fantasque Mono Nerd Font
wget -q https://github.com/ryanoasis/nerd-fonts/releases/download/v3.3.0/FantasqueSansMono.zip
mkdir -p $FONT_DIR/FantasqueSansMonoNerd
unzip -o -q "FantasqueSansMono.zip" -d "$FONT_DIR/FantasqueSansMonoNerd"
# Install Victor Mono Font
wget -q https://rubjo.github.io/victor-mono/VictorMonoAll.zip
mkdir -p $FONT_DIR/VictorMono
unzip -o -q "VictorMonoAll.zip" -d "$FONT_DIR/VictorMono"
fc-cache -v
if [ -d "JetBrainsMono.tar.xz" ]; then
rm -r JetBrainsMono.tar.xz 2>&1 | tee -a "$LOG"
fi
Executable
+66
View File
@@ -0,0 +1,66 @@
#!/bin/bash
flatpak install flathub org.gnome.Loupe -y
xdg-mime default org.gnome.Loupe.desktop image/jpeg
xdg-mime default org.gnome.Loupe.desktop image/png
# Betterbird als Standard-Mail-Programm setzen
flatpak install eu.betterbird.Betterbird -y
xdg-mime default org.betterbird.Betterbird.desktop x-scheme-handler/mailto
# Simple Scan installieren
flatpak install flathub org.gnome.SimpleScan -y
# Camera installieren
flatpak install flathub org.gnome.Snapshot -y
# Amberol (Musik-Player) installieren
flatpak install flathub io.bassi.Amberol -y
xdg-mime default io.bassi.Amberol.desktop audio/mpeg
xdg-mime default io.bassi.Amberol.desktop audio/x-wav
xdg-mime default io.bassi.Amberol.desktop audio/flac
xdg-mime default io.bassi.Amberol.desktop audio/ogg
# Protokolle installieren
flatpak install flathub org.gnome.Logs -y
# Schriftarten-Viewer
flatpak install flathub org.gnome.font-viewer -y
# Taschenrechner
flatpak install flathub org.gnome.Calculator -y
# Texteditor
flatpak install flathub org.gnome.TextEditor -y
xdg-mime default org.gnome.TextEditor.desktop text/plain
xdg-mime default org.gnome.TextEditor.desktop text/x-log
xdg-mime default org.gnome.TextEditor.desktop text/markdown
# Decoder (QR-Code)
flatpak install flathub com.belmoussaoui.Decoder -y
# Bruno
flatpak install flathub com.usebruno.Bruno -y
# Alpaca
flatpak install flathub com.jeffser.Alpaca -y
# Cryptomator
flatpak install flathub org.cryptomator.Cryptomator -y
# Web App Hub
flatpak install flathub org.pvermeer.WebAppHub -y
# Musescore
flatpak install flathub org.musescore.MuseScore -y
# Proton Up-QT
flatpak install flathub net.davidotek.pupgui2 -y
# Fluffychat (Matrix)
flatpak install flathub im.fluffychat.Fluffychat -y
# Flatsweep
flatpak install flathub io.github.giantpinkrobots.flatsweep -y
# RPI-Imager
# flatpak install flathub org.raspberrypi.rpi-imager
# Local Send
flatpak install flathub org.localsend.localsend_app -y
# Steam
flatpak install flathub com.valvesoftware.Steam -y
# Scopebuddy GUI
flatpak install flathub io.github.rfrench3.scopebuddy-gui -y
# Gamescope
flatpak install flathub org.freedesktop.Platform.VulkanLayer.gamescope -y
# MangoHud
flatpak install flathub org.freedesktop.Platform.VulkanLayer.MangoHud -y
# GE-Proton
flatpak install flathub com.valvesoftware.Steam.CompatibilityTool.Proton-GE -y
-186
View File
@@ -1,186 +0,0 @@
#!/bin/bash
# Root-Rechte prüfen
if [ "$(id -u)" -ne 0 ]; then
echo "❌ Bitte als root ausführen!"
exit 1
fi
apt update && apt upgrade -y
# sources-list Config
read -p "❓ Soll die apt sources-list so konfiguriert werden, dass sie Contributions und non-free Software zum installieren ermöglicht? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
# Datei-Pfad zur sources.list
SOURCE_LIST="/etc/apt/sources.list"
# Backup erstellen
cp "$SOURCE_LIST" "$SOURCE_LIST.bak"
echo "️ Aktualisiere $SOURCE_LIST..."
# Temporäre Datei erstellen
TEMP_FILE=$(mktemp)
# Fehlende Komponenten, die hinzugefügt werden sollen
REQUIRED_COMPONENTS=("main" "non-free" "non-free-firmware" "contrib")
while IFS= read -r line; do
# Falls die Zeile auskommentiert oder leer ist, unverändert übernehmen
if [[ "$line" =~ ^# || -z "$line" ]]; then
echo "$line" >>"$TEMP_FILE"
continue
fi
# Die ersten drei Felder als APT-Befehl, URL und Distribution speichern
APT_CMD=$(echo "$line" | awk '{print $1}')
APT_URL=$(echo "$line" | awk '{print $2}')
APT_DIST=$(echo "$line" | awk '{print $3}')
# Alle vorhandenen Komponenten sammeln (ab Feld 4)
CURRENT_COMPONENTS=$(echo "$line" | cut -d' ' -f4-)
# Set für aktuelle Komponenten erstellen
COMPONENTS_SET=($CURRENT_COMPONENTS)
# Fehlende Komponenten hinzufügen
for component in "${REQUIRED_COMPONENTS[@]}"; do
if ! [[ " ${COMPONENTS_SET[*]} " =~ " $component " ]]; then
COMPONENTS_SET+=("$component")
fi
done
# Neue Zeile mit ursprünglichem APT-Befehl, URL, Distribution und aktualisierten Komponenten schreiben
echo "$APT_CMD $APT_URL $APT_DIST ${COMPONENTS_SET[*]}" >>"$TEMP_FILE"
done <"$SOURCE_LIST"
# Originaldatei ersetzen
mv "$TEMP_FILE" "$SOURCE_LIST"
# apt aktualisieren
echo "🔄 Aktualisiere APT..."
apt update
echo "✅ Fertig! $SOURCE_LIST wurde aktualisiert."
fi
apt install -y git sudo 7zip unrar unzip network-manager software-properties-common tree bluetooth wget curl
# GRUB-Config
read -p "❓ Soll GRUB so konfiguriert werden, dass es nur im Fehlerfall angezeigt wird? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
echo "️ GRUB wird so konfiguriert, dass es nur im Fehlerfall angezeigt wird..."
# Sicherstellen, dass die Datei existiert
GRUB_CFG="/etc/default/grub"
if [[ ! -f "$GRUB_CFG" ]]; then
echo "❌ Fehler: $GRUB_CFG nicht gefunden!"
else
# Backup der aktuellen GRUB-Konfiguration
cp "$GRUB_CFG" "$GRUB_CFG.bak"
# Konfigurationsänderungen vornehmen
sed -i 's/^GRUB_TIMEOUT=.*/GRUB_TIMEOUT=0/' "$GRUB_CFG"
sed -i 's/^GRUB_TIMEOUT_STYLE=.*/GRUB_TIMEOUT_STYLE=hidden/' "$GRUB_CFG"
# Falls die Einträge nicht existieren, hinzufügen
grep -q '^GRUB_TIMEOUT=' "$GRUB_CFG" || echo 'GRUB_TIMEOUT=0' >>"$GRUB_CFG"
grep -q '^GRUB_TIMEOUT_STYLE=' "$GRUB_CFG" || echo 'GRUB_TIMEOUT_STYLE=hidden' >>"$GRUB_CFG"
# GRUB-Konfiguration aktualisieren
update-grub
echo "✅ GRUB wurde erfolgreich angepasst. Änderungen werden beim nächsten Boot wirksam."
fi
fi
# sbin in Path
read -p "❓ Soll sbin für sudo-Nutzer in den PATH aufgenommen werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
cat << 'EOF' >/etc/profile.d/sbin_in_path.sh
if groups | grep -q "\bsudo\b"; then
case ":$PATH:" in
*":/sbin:"*) ;;
*) export PATH="$PATH:/sbin" ;;
esac
case ":$PATH:" in
*":/usr/sbin:"*) ;;
*) export PATH="$PATH:/usr/sbin" ;;
esac
fi
EOF
echo "️ sbin wurde zum PATH für sudo-Nutzer hinzugefügt."
fi
# sudo-Hinweis
read -p "❓ Soll ein sudo-Hinweis hinzugefügt werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
cat << 'EOF' >/etc/profile.d/sudo_hint.sh
if [ ! -e "$HOME/.sudo_as_admin_successful" ] && [ ! -e "$HOME/.hushlogin" ] ; then
case " $(groups) " in *\ admin\ *|*\ sudo\ *)
if [ -x /usr/bin/sudo ]; then
echo 'To run a command as administrator (user "root"), use "sudo <command>".'
echo 'See "man sudo_root" for details.'
fi
esac
fi
EOF
echo "️ sudo-Hinweis wurde hinzugefügt!"
fi
# sudo-Hinweis
read -p "❓ Sollen die XDG-Data-Dirs gesetzt werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
cat << 'EOF' >/etc/profile.d/xdg_dirs_desktop_session.sh
# /etc/profile.d/desktop_session_xdg_dirs.sh - Prepend a $DESKTOP_SESSION-named directory to $XDG_CONFIG_DIRS and $XDG_DATA_DIRS
DEFAULT_XDG_CONFIG_DIRS="/etc/xdg"
DEFAULT_XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
if [ -n "$DESKTOP_SESSION" ]; then
# readd default if was empty
if [ -z "$XDG_CONFIG_DIRS" ]; then
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"
fi
if [ -n "${XDG_CONFIG_DIRS##*$DEFAULT_XDG_CONFIG_DIRS/xdg-$DESKTOP_SESSION*}" ]; then
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"/xdg-"$DESKTOP_SESSION":"$XDG_CONFIG_DIRS"
fi
export XDG_CONFIG_DIRS
# gnome is already added if gnome-session installed
if [ "$DESKTOP_SESSION" != "gnome" ]; then
if [ -z "$XDG_DATA_DIRS" ]; then
XDG_DATA_DIRS="$DEFAULT_XDG_DATA_DIRS"
fi
if [ -n "${XDG_DATA_DIRS##*/usr/share/$DESKTOP_SESSION*}" ]; then
XDG_DATA_DIRS=/usr/share/"$DESKTOP_SESSION":"$XDG_DATA_DIRS"
fi
export XDG_DATA_DIRS
fi
fi
EOF
echo "️ XDG-Data-Dirs wurden gesetzt!"
fi
chmod +x /etc/profile.d/*
echo "✅ Abgeschlossen. Zum Anwenden der Änderungen bitte neu einloggen!"
-294
View File
@@ -1,294 +0,0 @@
#!/bin/bash
set -e # Skript bricht bei Fehlern ab
# Sicherstellen, dass das Skript **nicht** als root ausgeführt wird
if [[ $EUID -eq 0 ]]; then
echo "❌ Bitte **nicht** als root oder mit sudo ausführen! Das Skript fordert sudo nur dort an, wo es benötigt wird."
exit 1
fi
# Überprüfen, ob Flatpak installiert ist
if ! command -v flatpak &>/dev/null; then
echo "❌ Fehler: Flatpak ist nicht installiert. Bitte installiere es und versuche es erneut."
exit 1
fi
# Flatpak Apps installieren (nur falls noch nicht als DEB installiert)
declare -A FLATPAK_APPS=(
["org.libreoffice.LibreOffice"]="LibreOffice"
["dev.vencord.Vesktop"]="Vesktop"
["eu.betterbird.Betterbird"]="Betterbird"
)
for APP in "${!FLATPAK_APPS[@]}"; do
if dpkg -l | grep -iq "${FLATPAK_APPS[$APP]}"; then
echo "${FLATPAK_APPS[$APP]} ist bereits als DEB-Paket installiert."
elif flatpak list | grep -q "$APP"; then
echo "${FLATPAK_APPS[$APP]} ist bereits als Flatpak installiert."
else
echo "🔄 Installiere ${FLATPAK_APPS[$APP]} als Flatpak..."
flatpak install -y flathub "$APP"
fi
done
# Dynamischen Vorlagen-Ordner ermitteln
TEMPLATE_DIR=$(xdg-user-dir TEMPLATES 2>/dev/null || echo "$HOME/Vorlagen")
mkdir -p "$TEMPLATE_DIR"
# Prüfen, ob LibreOffice als Flatpak installiert ist
if flatpak list | grep -q "org.libreoffice.LibreOffice"; then
LO_CMD="flatpak run org.libreoffice.LibreOffice"
elif command -v libreoffice &>/dev/null; then
LO_CMD="libreoffice"
else
echo "❌ Fehler: LibreOffice ist weder als Flatpak noch als DEB-Paket installiert."
exit 1
fi
# LibreOffice-Vorlagen erstellen, falls nicht vorhanden
if [[ ! -f "$TEMPLATE_DIR/LibreOffice-Writer.ott" ]]; then
echo "🔄 Erstelle LibreOffice Writer-Vorlage..."
$LO_CMD --headless --convert-to ott --outdir "$TEMPLATE_DIR" /dev/null
else
echo "✅ LibreOffice Writer-Vorlage ist bereits vorhanden."
fi
if [[ ! -f "$TEMPLATE_DIR/LibreOffice-Calc.ots" ]]; then
echo "🔄 Erstelle LibreOffice Calc-Vorlage..."
$LO_CMD --headless --convert-to ots --outdir "$TEMPLATE_DIR" /dev/null
else
echo "✅ LibreOffice Calc-Vorlage ist bereits vorhanden."
fi
# Spotify-Installation
echo "🎵 Überprüfe Spotify-Installation..."
SPOTIFY_KEY="/etc/apt/trusted.gpg.d/spotify.gpg"
SPOTIFY_REPO="/etc/apt/sources.list.d/spotify.list"
if dpkg -l | grep -q "spotify-client"; then
echo "✅ Spotify ist bereits installiert."
else
echo "🔄 Installiere Spotify..."
if [[ ! -f "$SPOTIFY_KEY" ]]; then
curl -sS https://download.spotify.com/debian/pubkey_C85668DF69375001.gpg | sudo gpg --dearmor -o "$SPOTIFY_KEY"
else
echo "✅ Spotify GPG-Key ist bereits vorhanden."
fi
if [[ ! -f "$SPOTIFY_REPO" ]]; then
echo "deb http://repository.spotify.com stable non-free" | sudo tee "$SPOTIFY_REPO"
else
echo "✅ Spotify-Repository ist bereits konfiguriert."
fi
sudo apt update && sudo apt install -y spotify-client
fi
# Spotify .desktop-Datei erstellen
SPOTIFY_DESKTOP_FILE="$HOME/.local/share/applications/spotify.desktop"
mkdir -p "$HOME/.local/share/applications"
if [[ ! -f "$SPOTIFY_DESKTOP_FILE" ]]; then
echo "🔄 Erstelle Spotify .desktop-Datei..."
cat <<EOF >"$SPOTIFY_DESKTOP_FILE"
[Desktop Entry]
Name=Spotify
Exec=/usr/bin/spotify
Icon=spotify-client
Terminal=false
Type=Application
Categories=Audio;Music;
EOF
echo "✅ Spotify .desktop-Datei wurde erstellt."
else
echo "✅ Spotify .desktop-Datei ist bereits vorhanden."
fi
# Benötigte Abhängigkeiten prüfen und installieren
dependencies=(man fzf ripgrep awk w3m coreutils parallel)
for dep in "${dependencies[@]}"; do
if ! command -v "$dep" &>/dev/null; then
echo "🔄 Installiere $dep..."
sudo apt install -y "$dep"
else
echo "$dep ist bereits installiert."
fi
done
# Tealdeer (tldr-Client) installieren
if ! command -v tldr &>/dev/null; then
echo "🔄 Installiere tealdeer..."
sudo apt install -y tealdeer
else
echo "✅ Tealdeer ist bereits installiert."
fi
# tealdeer Autoupdate konfigurieren
TEALDEER_CONFIG=~/.config/tealdeer/config.toml
mkdir -p ~/.config/tealdeer
if ! grep -q "\[updates\]" "$TEALDEER_CONFIG" 2 >/dev/null; then
echo -e "\n[updates]" >>"$TEALDEER_CONFIG"
fi
if grep -q "^auto_update" "$TEALDEER_CONFIG" 2 >/dev/null; then
sed -i 's/^auto_update.*/auto_update = true/' "$TEALDEER_CONFIG"
else
echo "auto_update = true" >>"$TEALDEER_CONFIG"
fi
# Wikiman installieren, falls nicht vorhanden
if ! command -v wikiman &>/dev/null; then
echo "🔄 Installiere Wikiman..."
# Prüfen, ob `make` installiert ist
if ! command -v make &>/dev/null; then
echo "🔄 Installiere make..."
sudo apt install -y make
fi
git clone 'https://github.com/filiparag/wikiman' ~/wikiman
cd ~/wikiman || exit
# Die neueste stabile Version auschecken
git checkout "$(git describe --tags | cut -d'-' -f1)"
# Kompilieren und installieren
make all
sudo make install
# Cleanup
cd ..
rm -rf ~/wikiman
echo "✅ Wikiman wurde erfolgreich installiert!"
else
echo "✅ Wikiman ist bereits installiert."
fi
# Arch-Wiki für Wikiman installieren, falls nicht vorhanden
if ! wikiman -list | grep -q "arch"; then
echo "🔄 Installiere Arch Wiki für Wikiman..."
curl -L 'https://raw.githubusercontent.com/filiparag/wikiman/master/Makefile' -o 'wikiman-makefile'
make -f ./wikiman-makefile source-arch
sudo make -f ./wikiman-makefile source-install
sudo make -f ./wikiman-makefile clean
rm -f wikiman-makefile
else
echo "✅ Arch Wiki ist bereits installiert."
fi
echo "🔄 Installiere Standard-Programme..."
# Bildbetrachter
flatpak install flathub org.gnome.Loupe -y
xdg-mime default org.gnome.Loupe.desktop image/jpeg
xdg-mime default org.gnome.Loupe.desktop image/png
# Disk-Utility, PDF-Viewer (Okular), Softwarecenter und Flatpak-Plugin, Systemmonitor
sudo apt -y install gnome-disk-utility okular gnome-software gnome-software-plugin-flatpak gnome-system-monitor
# Okular als Standard-PDF-Viewer setzen
xdg-mime default okularApplication_pdf.desktop application/pdf
# Betterbird als Standard-Mail-Programm setzen
xdg-mime default org.betterbird.Betterbird.desktop x-scheme-handler/mailto
# Simple Scan isntallieren
flatpak install flathub org.gnome.SimpleScan -y
# Festplattenbelegungsanalyse installieren
flatpak install flathub org.gnome.baobab -y
# Camera installieren
flatpak install flathub org.gnome.Snapshot -y
# Amberol (Musik-Player) installieren
flatpak install flathub io.bassi.Amberol -y
xdg-mime default io.bassi.Amberol.desktop audio/mpeg
xdg-mime default io.bassi.Amberol.desktop audio/x-wav
xdg-mime default io.bassi.Amberol.desktop audio/flac
xdg-mime default io.bassi.Amberol.desktop audio/ogg
# VLC-Media-Player installieren
flatpak install flathub org.videolan.VLC -y
# Protokolle installieren
flatpak install flathub org.gnome.Logs -y
# Schriftarten-Viewer
flatpak install flathub org.gnome.font-viewer -y
# Taschenrechner
flatpak install flathub org.gnome.Calculator -y
# Texteditor
flatpak install flathub org.gnome.TextEditor -y
xdg-mime default org.gnome.TextEditor.desktop text/plain
xdg-mime default org.gnome.TextEditor.desktop text/x-log
xdg-mime default org.gnome.TextEditor.desktop text/markdown
# Ente Authenticator
flatpak install flathub io.ente.auth -y
# Cartridges (Gaming)
flatpak install flathub page.kramo.Cartridges -y
# Decoder (QR-Code)
flatpak install flathub com.belmoussaoui.Decoder -y
# Fragments (Torrent)
flatpak install flathub de.haeckerfelix.Fragments -y
# Impressions (Bootsticks)
flatpak install flathub io.gitlab.adhami3310.Impression -y
# Ressources (Task-Manager)
flatpak install flathub net.nokyan.Resources -y
# Secrets
flatpak install flathub org.gnome.World.Secrets -y
# Archivverwaltung
flatpak install flathub org.gnome.FileRoller -y
# Obfuscate
flatpak install flathub com.belmoussaoui.Obfuscate -y
# Flatseal
flatpak install com.github.tchx84.Flatseal -y
# VeraCrypt installieren
read -p "❓ Soll VeraCrypt installiert werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$anwser" == "y" ]]; then
echo "🔄 Installiere VeraCrypt..."
echo 'deb http://download.opensuse.org/repositories/home:/unit193:/veracrypt/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:unit193:veracrypt.list
curl -fsSL https://download.opensuse.org/repositories/home:unit193:veracrypt/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_unit193_veracrypt.gpg > /dev/null
sudo apt update
sudo apt install veracrypt
fi
# Webmin installieren
read -p "❓ Soll webmin installiert werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$anwser" == "y" ]]; then
curl -o /tmp/webmin-setup-repo.sh https://raw.githubusercontent.com/webmin/webmin/master/webmin-setup-repo.sh
sudo sh /tmp/webmin-setup-repo.sh
sudo apt install webmin -y
fi
# Waydroid installieren
read -p "❓ Soll Waydroid installiert werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$anwser" == "y" ]]; then
sudo apt install curl ca-certificates -y
curl -s https://repo.waydro.id | sudo bash
sudo apt install waydroid -y
sudo ufw allow 53
sudo ufw allow 67
sudo ufw default allow FORWARD
sudo systemctl enable --now waydroid-container
sudo cat << 'EOF' | sudo tee /etc/profile.d/hide_waydroid_apps.sh > /dev/null
for app in ~/.local/share/applications/waydroid.*.desktop; do
grep -q NoDisplay $app || sed '/^Icon=/a NoDisplay=true' -i $app
done
EOF
sudo chmod +x /etc/profile.d/*
echo "⚠️ Beachte, dass in Portmaster unter 'Network Noise' die Ports 53 und 67 komplett freigegeben sind!"
fi
echo "✅ Alle Programme wurden erfolgreich installiert!"
-40
View File
@@ -1,40 +0,0 @@
#!/bin/bash
# Root-Rechte prüfen
if [ "$(id -u)" -ne 0 ]; then
echo "❌ Bitte als root ausführen!"
exit 1
fi
# Sicherheitsabfrage
read -p "⚠️ Achtung! Du führst ein Release-Upgrade auf Debian Trixie durch. Fortfahren? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" != "j" ]] && [[ "$answer" != "y" ]]; then
echo "❌ Upgrade abgebrochen."
exit 0
fi
echo "️ Aktualisiere Paketlisten..."
sudo apt-get update
echo "️ Starte System-Upgrade..."
sudo apt-get full-upgrade -y
echo "️ Ändere die Paketquellen auf Debian Trixie..."
sudo sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
sudo find /etc/apt/sources.list.d -type f -exec sed -i 's/bookworm/trixie/g' {} \;
echo "️ Aktualisiere Paketlisten erneut..."
sudo apt-get update
echo "️ Starte vollständiges Release-Upgrade..."
sudo apt-get full-upgrade -y
read -p "❓ Drücke [ENTER], um das System jetzt neuzustarten."
echo "️ System wird jetzt neu gestartet..."
sudo reboot
-31
View File
@@ -1,31 +0,0 @@
#!/bin/bash
# Root-Rechte prüfen
if [ "$(id -u)" -eq 0 ]; then
echo "❌ Bitte nicht als root ausführen! Das Skript nutzt sudo, falls nötig."
exit 1
fi
# Verzeichnis setzen
REPO_DIR="/tmp/Linux-Active-Directory-join-script"
# Repository klonen, falls es noch nicht existiert
if [ -d "$REPO_DIR" ]; then
echo "️ Repository existiert bereits. Überspringe das Klonen."
else
echo "️ Klonen des Repositories..."
git clone https://gitea.creative-dragonslayer.de/DragonSlayer_14/Linux-Active-Directory-join-script.git "$REPO_DIR"
fi
# In das Verzeichnis wechseln
cd "$REPO_DIR" || { echo "❌ Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
# AD-Skript ausführen
if [ -f "ADconnection.sh" ]; then
chmod +x ADconnection.sh
echo "️ Starte Active Directory setup..."
./ADconnection.sh
else
echo "❌ Fehler: ADconnection.sh nicht gefunden!"
exit 1
fi
-31
View File
@@ -1,31 +0,0 @@
#!/bin/bash
# Root-Rechte prüfen
if [ "$(id -u)" -eq 0 ]; then
echo "❌ Bitte nicht als root ausführen! Das Skript nutzt sudo, falls nötig."
exit 1
fi
# Repository-Pfad definieren
REPO_DIR="/tmp/Debian-Hyprland"
# Falls das Repository bereits existiert, überspringen
if [ -d "$REPO_DIR" ]; then
echo "️ Repository existiert bereits. Überspringe das klonen..."
else
echo "️ Klonen des Repositories..."
git clone --depth=1 https://github.com/JaKooLit/Debian-Hyprland.git "$REPO_DIR" || { echo "Fehler beim Klonen!"; exit 1; }
fi
# In das Verzeichnis wechseln
cd "$REPO_DIR" || { echo "❌ Fehler: Konnte nicht in das Verzeichnis wechseln!"; exit 1; }
# Sicherstellen, dass das Installationsskript existiert und ausführbar ist
if [ -f "install.sh" ]; then
chmod +x install.sh
echo "️ Starte Installation..."
./install.sh
else
echo "❌ Fehler: install.sh nicht gefunden!"
exit 1
fi
-68
View File
@@ -1,68 +0,0 @@
#!/bin/bash
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
if [[ $EUID -ne 0 ]]; then
echo "❌ Bitte als root ausführen!"
exit 1
fi
# Tatsächlichen Benutzer ermitteln (nicht root)
if [[ -z "$SUDO_USER" || "$SUDO_USER" == "root" ]]; then
echo "❌ Fehler: Das Skript muss mit 'sudo' von einem normalen Benutzer ausgeführt werden."
exit 1
fi
USER_NAME="$SUDO_USER"
USER_HOME=$(eval echo ~$USER_NAME)
read -p "❓ Soll die shell für $USER_NAME auf ZSH gesetzt werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
# Eintrag aus getent passwd holen
USER_ENTRY=$(getent passwd "$USER_NAME")
# Backup der passwd Datei
cp /etc/passwd /etc/passwd.bak
if grep -q "^$USER_NAME:" /etc/passwd; then
# Existierenden Eintrag aktualisieren
sed -i "/^$USER_NAME:/s|[^:]*$|/bin/zsh|" /etc/passwd
echo "️ Shell für $USER_NAME wurde auf zsh aktualisiert."
else
# Neuen Eintrag hinzufügen
UPDATED_ENTRY=$(echo "$USER_ENTRY" | awk -F: -v OFS=: '{ $NF="/bin/zsh"; print }')
echo "$UPDATED_ENTRY" >>/etc/passwd
echo "️ Eintrag für $USER_NAME wurde in /etc/passwd geschrieben mit zsh als Shell."
fi
# Repository klonen
REPO_DIR="$USER_HOME/Debian-Hyprland"
sudo -u "$USER_NAME" git clone https://github.com/JaKooLit/Debian-Hyprland.git "$REPO_DIR"
# Ordner nach ~/.oh-my-zsh/themes kopieren
THEME_SRC="$REPO_DIR/assets/add_zsh_theme"
THEME_DEST="$USER_HOME/.oh-my-zsh/themes"
if [[ -d "$THEME_SRC" ]]; then
sudo -u "$USER_NAME" mkdir -p "$THEME_DEST"
sudo -u "$USER_NAME" cp -r "$THEME_SRC"/* "$THEME_DEST/"
echo "🎨 ZSH-Theme wurde nach $THEME_DEST kopiert."
else
echo "⚠️ Fehler: Theme-Ordner wurde nicht gefunden!"
fi
# Repository löschen
rm -rf "$REPO_DIR"
# /etc/profile in /etc/zsh/zprofile einfügen, falls nicht bereits vorhanden
if ! grep -q "source /etc/profile" /etc/zsh/zprofile; then
echo "source /etc/profile" >>/etc/zsh/zprofile
echo "🔧 'source /etc/profile' wurde in /etc/zsh/zprofile hinzugefügt."
else
echo "️ 'source /etc/profile' ist bereits in /etc/zsh/zprofile vorhanden."
fi
fi
echo "✅ Shell wurde erfolgreich auf ZSH gesetzt! Zum Anwenden, neue Terminal-Sitzung öffnen."
-53
View File
@@ -1,53 +0,0 @@
#!/bin/bash
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
if [[ $EUID -ne 0 ]]; then
echo "❌ Dieses Skript muss als root ausgeführt werden."
exit 1
fi
read -p "❓ Soll SDDM so konfiguriert werden, dass Domänenbenutzer angezeigt werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
# SDDM-Konfigurationsdatei in sddm.conf.d erstellen
SDDM_CONF_DIR="/etc/sddm.conf.d"
SDDM_CUSTOM_CONF="$SDDM_CONF_DIR/ad_login.conf"
mkdir -p "$SDDM_CONF_DIR"
# Bestehende Konfiguration sichern und anpassen
if [[ -f "$SDDM_CUSTOM_CONF" ]]; then
sed -i '/MaximumUid/d' "$SDDM_CUSTOM_CONF"
sed -i '/MinimumUid/d' "$SDDM_CUSTOM_CONF"
sed -i '/HideShells/d' "$SDDM_CUSTOM_CONF"
echo "MaximumUid=99999999999999999999" >>"$SDDM_CUSTOM_CONF"
echo "MinimumUid=1000" >>"$SDDM_CUSTOM_CONF"
echo "HideShells=/sbin/nologin,/bin/false,/usr/sbin/nologin" >>"$SDDM_CUSTOM_CONF"
else
cat <<EOF >"$SDDM_CUSTOM_CONF"
[Users]
MaximumUid=999999999999999999
MinimumUid=1000
HideShells=/sbin/nologin,/bin/false,/usr/sbin/nologin
EOF
fi
# SSSD-Konfiguration anpassen, falls die Datei existiert
SSSD_CONF="/etc/sssd/sssd.conf"
if [[ -f "$SSSD_CONF" ]]; then
if grep -q "^enumerate" "$SSSD_CONF"; then
sed -i 's/^enumerate.*/enumerate = false/' "$SSSD_CONF"
else
echo "enumerate = false" >>"$SSSD_CONF"
fi
# Berechtigungen für SSSD-Konfigurationsdatei setzen
chmod 600 "$SSSD_CONF"
fi
# SSSD und SDDM neu starten
systemctl restart sssd
systemctl restart sddm
fi
echo "✅ Konfiguration von SDDM und sssd abgeschlossen!"
-236
View File
@@ -1,236 +0,0 @@
#!/bin/bash
set -e # Skript bricht bei Fehlern ab
# Root-Rechte prüfen
if [ "$(id -u)" -eq 0 ]; then
echo "❌ Bitte nicht als root ausführen! Das Skript nutzt sudo, falls nötig."
exit 1
fi
# System aktualisieren und benötigte Pakete installieren
echo "🔄 System wird aktualisiert..."
sudo apt update && sudo apt upgrade -y
echo "️ Firewall (ufw) wird installiert..."
sudo apt install -y ufw
sudo ufw enable
echo "️ Virenschutz (clamav) wird installiert..."
sudo apt install -y clamav clamav-freshclam clamav-docs libclamunrar9 clamav-daemon
echo "️ Installiere Flatpak..."
sudo apt install -y flatpak
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
echo "️ Installiere nützliche Pakete..."
sudo apt install -y neovim rfkill xdg-user-dirs rsync bleachbit network-manager-gnome
# Portmaster installieren
read -p "❓ Soll Portmaster installiert werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
wget -O /tmp/portmaster-installer.deb https://updates.safing.io/latest/linux_amd64/packages/portmaster-installer.deb
sudo apt install -y /tmp/portmaster-installer.deb
rm /tmp/portmaster-installer.deb
echo "✅ Portmaster wurde installiert!"
fi
# Waterfox-Installation
read -p "❓ Soll Firefox durch Waterfox ersetzt werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
echo "🌍 Waterfox wird installiert..."
sudo apt remove -y firefox
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://download.opensuse.org/repositories/home:hawkeye116477:waterfox/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_hawkeye116477_waterfox.gpg > /dev/null
echo 'deb https://download.opensuse.org/repositories/home:/hawkeye116477:/waterfox/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/home:hawkeye116477:waterfox.list
sudo apt update && sudo apt install -y waterfox
echo "✅ Waterfox wurde installiert!"
# Waterfox als Standardbrowser setzen
echo "🌍 Setze Waterfox als Standardbrowser..."
if command -v xdg-settings >/dev/null 2>&1; then
xdg-settings set default-web-browser waterfox.desktop
echo "✅ Waterfox wurde als Standardbrowser gesetzt."
# Standardanwendungen für spezifische Dateitypen setzen
xdg-mime default waterfox.desktop text/html
xdg-mime default waterfox.desktop application/xhtml+xml
xdg-mime default waterfox.desktop x-scheme-handler/http
xdg-mime default waterfox.desktop x-scheme-handler/https
else
echo "❌ 'xdg-settings' ist nicht verfügbar. Bitte manuell den Standardbrowser setzen."
fi
fi
# Hyprland User Bindings
read -p "❓ Sollen Anpassungen an den Hyprland-Keybinds vorgenomen werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
HYPR_CONFIG_DIR="$HOME/.config/hypr/UserConfigs"
mkdir -p "$HYPR_CONFIG_DIR"
# Keybinds hinzufügen (falls nicht vorhanden)
declare -A KEYBINDS=(
["bindr = \$mainMod, \$mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window"]="rofi menu"
["bindr = \$mainMod, L, exec, \$scriptsDir/LockScreen.sh"]="screen lock"
["bindr = \$mainMod, V, exec, \$scriptsDir/ClipManager.sh"]="Clipboard Manager"
)
for BIND in "${!KEYBINDS[@]}"; do
FULL_BIND="$BIND # ${KEYBINDS[$BIND]}"
if ! grep -Fxq "$FULL_BIND" "$HYPR_CONFIG_DIR/UserKeybinds.conf" 2>/dev/null; then
echo "$FULL_BIND" >>"$HYPR_CONFIG_DIR/UserKeybinds.conf"
echo "✅ Keybind hinzugefügt: ${KEYBINDS[$BIND]}"
else
echo "️ Keybind existiert bereits: ${KEYBINDS[$BIND]}"
fi
done
fi
# Standardvorlagen ablegen
echo "📂 Standardvorlagen werden im Vorlagen-Ordner erstellt..."
TEMPLATES_DIR=$(xdg-user-dir TEMPLATES 2>/dev/null || echo "$HOME/Vorlagen")
mkdir -p "$TEMPLATES_DIR"
# Vorlagenliste
declare -A TEMPLATES=(
["Textdokument.txt"]="Dies ist eine Standard-Textdatei."
["Markdown-Dokument.md"]="# Markdown-Vorlage\n\nHier beginnt dein Markdown-Dokument."
["Bash-Skript.sh"]="#!/bin/bash\n\necho 'Hello, world!'"
["Python-Skript.py"]='#!/usr/bin/env python3\n\nprint("Hello, world!")'
)
for FILE in "${!TEMPLATES[@]}"; do
TEMPLATE_PATH="$TEMPLATES_DIR/$FILE"
if [[ ! -f "$TEMPLATE_PATH" ]]; then
echo -e "${TEMPLATES[$FILE]}" >"$TEMPLATE_PATH"
chmod +x "$TEMPLATE_PATH" # Falls Skript
echo "✅ Vorlage erstellt: $FILE"
else
echo "️ Vorlage existiert bereits: $FILE"
fi
done
# Zielverzeichnis und UserKeybinds-Datei definieren
SOURCE_DIR="$HOME/.config/hypr/scripts"
TARGET_DIR="$HOME/.config/hypr/UserScripts"
CONFIG_DIR="$HOME/.config/hypr/UserConfigs"
USER_KEYBINDS_FILE="$CONFIG_DIR/UserKeybinds.conf" # Definition an der richtigen Stelle
read -p "❓ Sollen Anpassungen an den Users-Dirs in den Hyprland-Skripten vorgenommen werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
# Bereinige fälschlicherweise kopierte Dateien
echo "📂 Überprüfe und bereinige Dateien im Verzeichnis $TARGET_DIR..."
if [[ -d "$TARGET_DIR" ]]; then
for FILE in "$TARGET_DIR"/*; do
if [[ -f "$FILE" ]]; then
BASENAME=$(basename "$FILE")
SOURCE_FILE="$SOURCE_DIR/$BASENAME"
# Prüfen, ob die Datei im Quellverzeichnis existiert und angepasst werden musste
if [[ -f "$SOURCE_FILE" ]] && ! grep -qE '\$HOME/Desktop|\$HOME/Downloads|\$HOME/Documents|\$HOME/Pictures|\$HOME/Music|\$HOME/Videos' "$SOURCE_FILE"; then
echo "🗑️ Entferne fälschlicherweise kopierte Datei: $BASENAME"
rm "$FILE"
# Rückgängig machen der falschen Verweise in UserKeybinds.conf
if [[ -f "$USER_KEYBINDS_FILE" ]]; then
echo "🔄 Setze falschen Verweis für $BASENAME in $USER_KEYBINDS_FILE zurück..."
sed -i "s|\$UserScripts/$BASENAME|\$scriptsDir/$BASENAME|g" "$USER_KEYBINDS_FILE"
echo "✅ Verweis für $BASENAME zurückgesetzt."
fi
else
echo "✅ Datei $BASENAME ist korrekt und bleibt erhalten."
fi
fi
done
else
echo "⚠️ Zielverzeichnis $TARGET_DIR existiert nicht. Keine Bereinigung erforderlich."
fi
# Kopiere nur relevante Dateien und behalte die Verzeichnisstruktur bei
echo "📂 Verarbeite Dateien im Verzeichnis $SOURCE_DIR..."
mkdir -p "$TARGET_DIR"
COPIED_FILES=() # Array, um die tatsächlich kopierten Dateien zu speichern
if [[ -d "$SOURCE_DIR" ]]; then
find "$SOURCE_DIR" -type f | while read -r FILE; do
RELATIVE_PATH="${FILE#$SOURCE_DIR/}" # Relativer Pfad zur Datei
TARGET_PATH="$TARGET_DIR/$RELATIVE_PATH"
# Prüfen, ob die Datei angepasst werden muss
if grep -qE '\$HOME/Desktop|\$HOME/Downloads|\$HOME/Documents|\$HOME/Pictures|\$HOME/Music|\$HOME/Videos|/home/[a-zA-Z0-9._-]*/Desktop|/home/[a-zA-Z0-9._-]*/Downloads|/home/[a-zA-Z0-9._-]*/Documents|/home/[a-zA-Z0-9._-]*/Pictures|/home/[a-zA-Z0-9._-]*/Music|/home/[a-zA-Z0-9._-]*/Videos|\$\(xdg-user-dir\)/Desktop|\$\(xdg-user-dir\)/Downloads|\$\(xdg-user-dir\)/Documents|\$\(xdg-user-dir\)/Pictures|\$\(xdg-user-dir\)/Music|\$\(xdg-user-dir\)/Videos' "$FILE"; then
echo "🔄 Kopiere Datei zur Anpassung: $RELATIVE_PATH"
mkdir -p "$(dirname "$TARGET_PATH")" # Zielverzeichnis erstellen
cp "$FILE" "$TARGET_PATH"
COPIED_FILES+=("$RELATIVE_PATH") # Relativen Pfad speichern
else
echo "️ Datei $RELATIVE_PATH benötigt keine Anpassung. Überspringe Kopieren."
fi
done
else
echo "⚠️ Quellverzeichnis $SOURCE_DIR existiert nicht. Überspringe Verarbeitung."
fi
# Ersetzungen in allen Dateien im Verzeichnis UserScripts vornehmen
echo "🔄 Ersetze absolute Pfade, XDG-Verzeichnisse und Platzhalter in allen Dateien im Verzeichnis $TARGET_DIR..."
for FILE in "$TARGET_DIR"/*; do
if [[ -f "$FILE" ]]; then
echo "Verarbeite Datei: $FILE"
# Ersetzungen vornehmen
sed -i \
-e 's|\$HOME/Desktop|$(xdg-user-dir DESKTOP)|g' \
-e 's|\$HOME/Downloads|$(xdg-user-dir DOWNLOAD)|g' \
-e 's|\$HOME/Documents|$(xdg-user-dir DOCUMENTS)|g' \
-e 's|\$HOME/Pictures|$(xdg-user-dir PICTURES)|g' \
-e 's|\$HOME/Music|$(xdg-user-dir MUSIC)|g' \
-e 's|\$HOME/Videos|$(xdg-user-dir VIDEOS)|g' \
-e 's|/home/[a-zA-Z0-9._-]*/Desktop|$(xdg-user-dir DESKTOP)|g' \
-e 's|/home/[a-zA-Z0-9._-]*/Downloads|$(xdg-user-dir DOWNLOAD)|g' \
-e 's|/home/[a-zA-Z0-9._-]*/Documents|$(xdg-user-dir DOCUMENTS)|g' \
-e 's|/home/[a-zA-Z0-9._-]*/Pictures|$(xdg-user-dir PICTURES)|g' \
-e 's|/home/[a-zA-Z0-9._-]*/Music|$(xdg-user-dir MUSIC)|g' \
-e 's|/home/[a-zA-Z0-9._-]*/Videos|$(xdg-user-dir VIDEOS)|g' \
-e 's|$(xdg-user-dir)/Desktop|$(xdg-user-dir DESKTOP)|g' \
-e 's|$(xdg-user-dir)/Downloads|$(xdg-user-dir DOWNLOAD)|g' \
-e 's|$(xdg-user-dir)/Documents|$(xdg-user-dir DOCUMENTS)|g' \
-e 's|$(xdg-user-dir)/Pictures|$(xdg-user-dir PICTURES)|g' \
-e 's|$(xdg-user-dir)/Music|$(xdg-user-dir MUSIC)|g' \
-e 's|$(xdg-user-dir)/Videos|$(xdg-user-dir VIDEOS)|g' \
"$FILE"
echo "✅ Ersetzungen in $FILE abgeschlossen."
fi
done
# Verweise in UserKeybinds.conf anpassen
if [[ -f "$USER_KEYBINDS_FILE" ]]; then
echo "🔄 Passe Verweise in $USER_KEYBINDS_FILE an..."
for SCRIPT in "${COPIED_FILES[@]}"; do
# Ersetze $scriptsDir/<Dateiname> durch $UserScripts/<Dateiname>
sed -i "s|\$scriptsDir/$SCRIPT|\$UserScripts/$SCRIPT|g" "$USER_KEYBINDS_FILE"
echo "✅ Verweis für $SCRIPT angepasst."
done
else
echo "⚠️ Datei $USER_KEYBINDS_FILE existiert nicht. Überspringe Anpassung der Verweise."
fi
echo "📂 Verschiebe $(xdg-user-dir)/Pictures nach $(xdg-user-dir PICTURES)..."
rsync -av --ignore-existing "$(xdg-user-dir)/Pictures/" "$(xdg-user-dir PICTURES)/"
rm -r "$(xdg-user-dir)/Pictures/"
fi
echo "✅ Skript erfolgreich ausgeführt!"
-36
View File
@@ -1,36 +0,0 @@
#!/bin/bash
set -e # Skript bricht bei Fehlern ab
# Theme-Name
THEME_NAME="vimix"
# Prüfen, ob GRUB bereits das Theme verwendet
if grep -q "GRUB_THEME=" /etc/default/grub && grep -q "$THEME_NAME" /etc/default/grub; then
echo "✅ Das Theme '$THEME_NAME' ist bereits installiert und aktiv."
exit 0
fi
echo "🔄 Installiere das GRUB-Theme '$THEME_NAME'..."
# Falls der Ordner existiert, vorher löschen
THEME_DIR="$HOME/grub-themes"
if [[ -d "$THEME_DIR" ]]; then
rm -rf "$THEME_DIR"
fi
# Repository klonen
git clone https://github.com/vinceliuice/grub2-themes.git "$THEME_DIR"
cd "$THEME_DIR"
# Theme installieren
sudo ./install.sh -b -t "$THEME_NAME"
# GRUB-Konfiguration aktualisieren
echo "🔄 Aktualisiere die GRUB-Konfiguration..."
sudo update-grub
# Aufräumen
rm -rf "$THEME_DIR"
echo "✅ GRUB-Theme '$THEME_NAME' erfolgreich installiert und aktiviert!"
-59
View File
@@ -1,59 +0,0 @@
#!/bin/bash
set -e # Skript bricht bei Fehlern ab
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
if [[ $EUID -ne 0 ]]; then
echo "❌ Dieses Skript muss als root ausgeführt werden."
exit 1
fi
echo "🔄 Plymouth und benötigte Pakete installieren..."
if ! dpkg -l | grep -qw plymouth; then
apt update && apt install -y plymouth plymouth-themes
else
echo "✅ Plymouth ist bereits installiert."
fi
# Plymouth in initramfs aktivieren
MKINIT_CONF="/etc/mkinitcpio.conf"
if [[ -f "$MKINIT_CONF" ]]; then
if grep -q "^HOOKS=" "$MKINIT_CONF"; then
sed -i 's/^HOOKS=.*/HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)/' "$MKINIT_CONF"
else
echo 'HOOKS=(base udev plymouth autodetect modconf block encrypt lvm2 filesystems keyboard fsck)' >>"$MKINIT_CONF"
fi
fi
# Falls Dracut genutzt wird, initramfs neu erstellen
if command -v dracut &>/dev/null; then
echo "🔄 Dracut erkannt, erstelle neues initramfs..."
dracut -f
else
echo "🔄 Initramfs wird aktualisiert..."
update-initramfs -u
fi
# Plymouth-Theme setzen
PLYMOUTH_THEME="spinner"
echo "🎨 Setze Plymouth-Theme auf '$PLYMOUTH_THEME'..."
plymouth-set-default-theme -R "$PLYMOUTH_THEME"
# Kernel-Boot-Parameter in GRUB anpassen
GRUB_CFG="/etc/default/grub"
GRUB_BACKUP="/etc/default/grub.bak"
echo "🔍 Überprüfe GRUB-Einstellungen..."
NEW_CMDLINE="quiet splash vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles"
if grep -q "^GRUB_CMDLINE_LINUX_DEFAULT=.*" "$GRUB_CFG"; then
sed -i "s|^GRUB_CMDLINE_LINUX_DEFAULT=.*|GRUB_CMDLINE_LINUX_DEFAULT=\"$NEW_CMDLINE\"|" "$GRUB_CFG"
echo "🔄 GRUB wird aktualisiert..."
update-grub
else
echo "GRUB_CMDLINE_LINUX_DEFAULT=\"$NEW_CMDLINE\"" >>"$GRUB_CFG"
echo "🔄 GRUB wird aktualisiert..."
update-grub
fi
echo "✅ Einrichtung abgeschlossen. Bitte starte das System neu, um die Änderungen zu übernehmen."
-47
View File
@@ -1,47 +0,0 @@
#!/bin/bash
# Sicherstellen, dass das Skript mit Root-Rechten ausgeführt wird
if [[ $EUID -ne 0 ]]; then
echo "❌ Dieses Skript muss als root ausgeführt werden."
exit 1
fi
# System aktualisieren
apt update && apt upgrade -y
# Steam-Installation
read -p "❓ Soll Steam installiert werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
dpkg --add-architecture i386
apt update
apt install -y wget curl
wget -O /tmp/steam.deb https://cdn.akamai.steamstatic.com/client/installer/steam.deb
apt install -y /tmp/steam.deb
rm /tmp/steam.deb
fi
# Lutris-Installation
read -p "❓ Soll Lutris installiert werden? (j/n) [n]: " answer
answer=${answer,,} # In Kleinbuchstaben umwandeln
answer=${answer:-n} # Standardwert 'n', falls leer
if [[ "$answer" == "j" ]] || [[ "$answer" == "y" ]]; then
LUTRIS_KEYRING="/etc/apt/keyrings/lutris.gpg"
LUTRIS_REPO="https://download.opensuse.org/repositories/home:/strycore/Debian_12/"
mkdir -p /etc/apt/keyrings
wget -qO /tmp/lutris-key.gpg "${LUTRIS_REPO}Release.key"
gpg --dearmor </tmp/lutris-key.gpg >"$LUTRIS_KEYRING"
rm /tmp/lutris-key.gpg
echo "deb [signed-by=$LUTRIS_KEYRING] $LUTRIS_REPO ./" >/etc/apt/sources.list.d/lutris.list
apt update
apt install -y lutris
fi
echo "✅ Skript abgeschlossen!"
+39 -2
View File
@@ -5,7 +5,7 @@
Dieses Repository enthält Skripte um ein Linux System mit Hyprland und diversen Programmen aufzusetzen. Dieses Repository enthält Skripte um ein Linux System mit Hyprland und diversen Programmen aufzusetzen.
Die entsprechenden Skripte befinden sich in den Branches zur jeweiligen Distribution. Die entsprechenden Skripte befinden sich in den Branches zur jeweiligen Distribution.
**Mit diesen Skripten kann *Debian 12 (Bookworm)* mit *Hyprland* und diversen Programmen aufgesetzt werden.** Der Hauptbranch ist für ein aktuelles Debian-System gedacht!
## Anforderungen ## Anforderungen
@@ -19,12 +19,49 @@ Um die Skripte in diesem Repository auszuführen, stelle sicher, dass die folgen
1. Klone das Repository: 1. Klone das Repository:
```bash ```bash
git clone https://gitea.creative-dragonslayer.de/DragonSlayer_14/Setup.git git clone https://gitea.creative-dragonslayer.de/Scripts/Setup.git
``` ```
2. Wechsle in den richtigen Branch. 2. Wechsle in den richtigen Branch.
3. Navigiere in das Verzeichnis `Setup`, um die ausführbaren Dateien und Ressourcen zu finden. 3. Navigiere in das Verzeichnis `Setup`, um die ausführbaren Dateien und Ressourcen zu finden.
4. Folge den spezifischen Anweisungen in einzelnen Dateien oder Skripten für die korrekte Ausführung. 4. Folge den spezifischen Anweisungen in einzelnen Dateien oder Skripten für die korrekte Ausführung.
## Nach der Nutzung
### Für AMD-CPUs
#### Game-Launchparameter
```bash
GLOBAL — All games:
RADV_PERFTEST=gpl,rt DXVK_ASYNC=1 VKD3D_CONFIG=dxr,dxr11 MESA_VK_WSI_PRESENT_MODE=mailbox gamemoderun gamescope -W 2560 -H 1440 --force-grab-cursor --hdr-enabled --adaptive-sync -f -o 240 -r 240 -- mangohud %command%
DEMANDING GAMES — No RT:
RADV_PERFTEST=gpl,ngg_streamout WINE_FULLSCREEN_FSR=1 DXVK_ASYNC=1 gamemoderun gamescope -W 2560 -H 1440 --force-grab-cursor --hdr-enabled --adaptive-sync -f -o 240 -r 240 -- mangohud %command%
RAY TRACING — DX12 titles:
RADV_PERFTEST=gpl,rt,ngg_streamout VKD3D_CONFIG=dxr,dxr11 DXVK_ASYNC=1 AMD_VULKAN_ICD=RADV gamemoderun gamescope -W 2560 -H 1440 --force-grab-cursor --hdr-enabled --adaptive-sync -f -o 240 -r 240 -- mangohud %command%
MAXIMUM RT PERFORMANCE — with FSR:
RADV_PERFTEST=gpl,rt,ngg_streamout VKD3D_CONFIG=dxr,dxr11 DXVK_ASYNC=1 AMD_VULKAN_ICD=RADV WINE_FULLSCREEN_FSR=1 gamemoderun gamescope -W 2560 -H 1440 --force-grab-cursor --hdr-enabled --adaptive-sync -f -o 240 -r 240 -- mangohud %command%
```
#### Parameter in /etc/environment.d/99-raytracing.conf
```bash
# AMD RDNA Ray Tracing Optimisations
RADV_PERFTEST=gpl,rt,ngg_streamout
VKD3D_CONFIG=dxr,dxr11
DXVK_ASYNC=1
AMD_VULKAN_ICD=RADV
mesa_glthread=true
MESA_VK_WSI_PRESENT_MODE=mailbox
```
#### Parameter in /etc/environment.d/99-upscaling.conf
```bash
# AMD FSR 4 + FSR 3 Upscaling — March 2026
# FSR 4: use PROTON_FSR4_UPGRADE=1 launch option (RDNA4=native, RDNA3=fallback)
WINE_FULLSCREEN_FSR=1
WINE_FULLSCREEN_FSR_STRENGTH=2
MESA_VK_WSI_PRESENT_MODE=mailbox
```
## Lizenz ## Lizenz
Dieses Projekt steht unter einer Open-Source-Lizenz. Weitere Informationen findest du in der Datei `LICENSE`. Dieses Projekt steht unter einer Open-Source-Lizenz. Weitere Informationen findest du in der Datei `LICENSE`.
+5
View File
@@ -0,0 +1,5 @@
Types: deb deb-src
URIs: http://deb.debian.org/debian/
Suites: unstable
Components: main non-free-firmware non-free contrib
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
@@ -0,0 +1,6 @@
Types: deb
URIs: https://gitea.creative-dragonslayer.de/api/packages/Linuxapps/debian/
Suites: stable
Components: main
Architectures: amd64
Signed-By: /etc/apt/keyrings/gitea-Linuxapps.asc
+3
View File
@@ -0,0 +1,3 @@
#!/bin/bash
xdg-user-dirs-update
+33
View File
@@ -0,0 +1,33 @@
#!/bin/bash
DEFAULT_USR_FOLDER="/usr/share/debian-gaming/home"
CONFIG_FOLDER="$HOME/.config/"
CHECK_FILE="$HOME/.config/.debian_gaming_configs_copied"
TEMPLATES_DIR=$(xdg-user-dir TEMPLATES 2>/dev/null || echo "$HOME/Templates")
if [ ! -e "$CHECK_FILE" ]; then
if [ -d "$DEFAULT_USR_FOLDER" ]; then
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
if [ -e "$HOME/.config" ]; then
mv $HOME/.config $HOME/.config.bak
fi
if [ -e "$HOME/.zshrc" ]; then
mv $HOME/.zshrc $HOME/.zshrc.bak
fi
mkdir -p $HOME/.config
cp -r $DEFAULT_USR_FOLDER/.config/* $HOME/.config
cp -r $DEFAULT_USR_FOLDER/templates/* $TEMPLATES_DIR
cp $DEFAULT_USR_FOLDER/zshrc $HOME/.zshrc
touch $CHECK_FILE
fi
fi
+3
View File
@@ -0,0 +1,3 @@
for app in ~/.local/share/applications/waydroid.*.desktop; do
grep -q NoDisplay $app || sed '/^Icon=/a NoDisplay=true' -i $app
done
+10
View File
@@ -0,0 +1,10 @@
if groups | grep -q "\bsudo\b"; then
case ":$PATH:" in
*":/sbin:"*) ;;
*) export PATH="$PATH:/sbin" ;;
esac
case ":$PATH:" in
*":/usr/sbin:"*) ;;
*) export PATH="$PATH:/usr/sbin" ;;
esac
fi
+24
View File
@@ -0,0 +1,24 @@
#!/bin/bash
SUDO_FILE="$HOME/.sudo_as_admin_successful"
HUSH_FILE="$HOME/.hushlogin"
ONE_WEEK_AGO=$(date -d '7 days ago' +%s)
if [ -e "$SUDO_FILE" ]; then
FILE_MOD_TIME=$(stat -c %Y "$SUDO_FILE")
if [ "$FILE_MOD_TIME" -lt "$ONE_WEEK_AGO" ]; then
rm -f "$SUDO_FILE"
fi
fi
if [ ! -e "$SUDO_FILE" ] && [ ! -e "$HUSH_FILE" ]; then
case " $(groups) " in
*\ admin\ *|*\ sudo\ *)
if [ -x /usr/bin/sudo ]; then
echo 'To run a command as administrator (user "root"), use "sudo <command>".'
echo 'See "man sudo_root" for details.'
fi
;;
esac
fi
+25
View File
@@ -0,0 +1,25 @@
# /etc/profile.d/desktop_session_xdg_dirs.sh - Prepend a $DESKTOP_SESSION-named directory to $XDG_CONFIG_DIRS and $XDG_DATA_DIRS
DEFAULT_XDG_CONFIG_DIRS="/etc/xdg"
DEFAULT_XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
if [ -n "$DESKTOP_SESSION" ]; then
# readd default if was empty
if [ -z "$XDG_CONFIG_DIRS" ]; then
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"
fi
if [ -n "${XDG_CONFIG_DIRS##*$DEFAULT_XDG_CONFIG_DIRS/xdg-$DESKTOP_SESSION*}" ]; then
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"/xdg-"$DESKTOP_SESSION":"$XDG_CONFIG_DIRS"
fi
export XDG_CONFIG_DIRS
# gnome is already added if gnome-session installed
if [ "$DESKTOP_SESSION" != "gnome" ]; then
if [ -z "$XDG_DATA_DIRS" ]; then
XDG_DATA_DIRS="$DEFAULT_XDG_DATA_DIRS"
fi
if [ -n "${XDG_DATA_DIRS##*/usr/share/$DESKTOP_SESSION*}" ]; then
XDG_DATA_DIRS=/usr/share/"$DESKTOP_SESSION":"$XDG_DATA_DIRS"
fi
export XDG_DATA_DIRS
fi
fi
+2
View File
@@ -0,0 +1,2 @@
#!/bin/bash
BIN
View File
Binary file not shown.
+1
View File
@@ -0,0 +1 @@
+2
View File
@@ -0,0 +1,2 @@
#!/usr/bin/env python3
+1
View File
@@ -0,0 +1 @@
BIN
View File
Binary file not shown.
+49
View File
@@ -0,0 +1,49 @@
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
export ZSH="$HOME/.oh-my-zsh"
apt_pref='apt'
apt_upgr='upgrade'
ZSH_THEME="agnosterzak"
plugins=(
alias-finder
aliases
colored-man-pages
command-not-found
common-aliases
composer
cp
debian
docker
git
jsontools
kitty
python
ssh
symfony
themes
vscode
zsh-autosuggestions
zsh-syntax-highlighting
)
source $ZSH/oh-my-zsh.sh
# Display Pokemon-colorscripts
# Project page: https://gitlab.com/phoneybadger/pokemon-colorscripts#on-other-distros-and-macos
#pokemon-colorscripts --no-title -s -r #without fastfetch
#pokemon-colorscripts --no-title -s -r | fastfetch -c $HOME/.config/fastfetch/config-pokemon.jsonc --logo-type fi>
# fastfetch. Will be disabled if above colorscript was chosen to install
fastfetch -c $HOME/.config/fastfetch/config-compact.jsonc
# Set-up icons for files/directories in terminal using lsd
alias ls='lsd'
alias l='ls -l'
alias la='ls -a'
alias lla='ls -la'
alias lt='ls --tree'
+7
View File
@@ -0,0 +1,7 @@
[Desktop Entry]
Name=Spotify
Exec=/usr/bin/spotify
Icon=spotify-client
Terminal=false
Type=Application
Categories=Audio;Music;
Executable
+60
View File
@@ -0,0 +1,60 @@
Debian Paketquellen installieren -> sources nach /etc/apt/sources.list.d
sudo apt install git sudo network-manager software-properties-common wget curl
XanMod Kernel - Repo + Keyring installieren -> https://xanmod.org
Apt-Pinning konfigurieren
sudo apt update
sudo apt install apt-listbugs apt-listchanges
apt policy hyprland wlroots wayland wayland-protocols mesa
=> wayland -> trixie
mesa -> trixie-backports
hyprland -> unstable
sudo apt install linux-xanmod-x64v3
sudo apt install -t trixie-backports mesa mesa-vulkan-drivers gamemode gamescope mangohud pipewire pipewire-pulse wireplumber
sudo apt install -t unstable hyprland wlroots wayland-protocols xdg-desktop-portal-wlr rofi-wayland waybar ags
sudo apt install grim slurp wl-clipboard swaybg irqbalance cpupower timeshift zsh 7zip unrar unzip codium fzf rg rsync clamav clamav-freshclam clamav-docs libclamunrar9 clamav-daemon flatpak rfkill xdg-user-dirs tree bluetooth bleachbit network-manager-gnome steam-installer libreoffice tealdeer gnome-disk-utility gnome-system-monitor keepassxc
sudo flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
Lutris installieren
Spotify installieren
-> Spotify .desktop-Datei hinterlegen
Waydroid installieren
sudo apt update
sudo apt upgrade
Grub-Config anpassen
-> GRUB_TIMEOUT=0
-> GRUB_TIMEOUT_STYLE=hidden
-> GRUB_CMDLINE_LINUX_DEFAULT="quiet splash usbcore.autosuspend=-1 vt.global_cursor_default=0 loglevel=3 rd.luks.options=discard plymouth.ignore-serial-consoles"
-> GRUB_CMDLINE_LINUS="rcutree.rcu_idle_gp_delay=1"
Grub-Theme installieren
Plymouth installieren (Theme = Spinner)
update-grub
./etc/profile.d entsprechend kopieren
OhMyZsh installieren
-> sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
./home/.zshrc entsprechend kopieren
./home/.oh-my-zsh/themes entsprechend kopieren
source /etc/profile in /etc/zsh/zprofile einfügen
Shell des Users auf ZSH setzen
Portmaster installieren
Floorp installieren
Standardvorlagen hinterlegen
.config Ordner ziehen und hinterlegen
sudo timeshift --create --comments "initial install" --tags D