Refactor: Aufteilung in Stage 08 (Flatpaks), 09 (Apps & MIME) und 10 (Hyprland) sowie ShellCheck-Bereinigung
Co-authored-by: Junie <junie@jetbrains.com>
This commit is contained in:
@@ -34,7 +34,7 @@ Dieses Repository ist ein modulares, automatisiertes Setup- und Konfigurations-F
|
|||||||
│ ├── 04-virtualization.list # QEMU, KVM, Libvirt, Bridge-Tools
|
│ ├── 04-virtualization.list # QEMU, KVM, Libvirt, Bridge-Tools
|
||||||
│ ├── 05-multimedia.list # VLC, Amberol, GIMP, Loupe, LibreOffice
|
│ ├── 05-multimedia.list # VLC, Amberol, GIMP, Loupe, LibreOffice
|
||||||
│ └── 06-flatpaks.list # Flathub App-IDs
|
│ └── 06-flatpaks.list # Flathub App-IDs
|
||||||
├── stages/ # Sequenziell und modular ausführbare Phasen (00 bis 09)
|
├── stages/ # Sequenziell und modular ausführbare Phasen (00 bis 10)
|
||||||
│ ├── 00-preflight.sh # Systemvoraussetzungen, Root/User-Erkennung, Internetverbindung
|
│ ├── 00-preflight.sh # Systemvoraussetzungen, Root/User-Erkennung, Internetverbindung
|
||||||
│ ├── 01-apt-unstable.sh # Deb822-Quellen, Keyrings, Pinning, apt-listbugs, dist-upgrade
|
│ ├── 01-apt-unstable.sh # Deb822-Quellen, Keyrings, Pinning, apt-listbugs, dist-upgrade
|
||||||
│ ├── 02-kernel-hardware.sh # XanMod-Kernel, CPU P-State, Microcode, auto-cpufreq
|
│ ├── 02-kernel-hardware.sh # XanMod-Kernel, CPU P-State, Microcode, auto-cpufreq
|
||||||
@@ -43,8 +43,9 @@ Dieses Repository ist ein modulares, automatisiertes Setup- und Konfigurations-F
|
|||||||
│ ├── 05-fonts.sh # Download & Installation von Coding- & Nerd-Fonts
|
│ ├── 05-fonts.sh # Download & Installation von Coding- & Nerd-Fonts
|
||||||
│ ├── 06-services.sh # Aktivierung von AppArmor, Docker, Libvirt, zram, Ollama
|
│ ├── 06-services.sh # Aktivierung von AppArmor, Docker, Libvirt, zram, Ollama
|
||||||
│ ├── 07-skel-and-user.sh # /etc/skel Vorlagen, ZSH-Shell-Setzen, Dotfiles-Sync
|
│ ├── 07-skel-and-user.sh # /etc/skel Vorlagen, ZSH-Shell-Setzen, Dotfiles-Sync
|
||||||
│ ├── 08-flatpaks-apps.sh # Flathub Setup, Flatpaks, Spotify, Waydroid, OpenDeck, MIME-Types
|
│ ├── 08-flatpaks.sh # Flathub Setup, Flatpak-Paketlisten-Installation
|
||||||
│ └── 09-hyprland.sh # LinuxBeginnings Debian-Hyprland Auto-Installer & Desktop-Setup
|
│ ├── 09-apps.sh # Spotify, Waydroid, OpenDeck, Desktop-Starter, MIME-Types
|
||||||
|
│ └── 10-hyprland.sh # LinuxBeginnings Debian-Hyprland Auto-Installer & Desktop-Setup
|
||||||
├── data/ # Statische Konfigurationsdateien & Vorlagen
|
├── data/ # Statische Konfigurationsdateien & Vorlagen
|
||||||
│ ├── apt/
|
│ ├── apt/
|
||||||
│ │ ├── sources.list.d/ # Deb822-Quellen (debian-unstable.sources, xanmod.sources)
|
│ │ ├── sources.list.d/ # Deb822-Quellen (debian-unstable.sources, xanmod.sources)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ sudo ./setup.sh
|
|||||||
```
|
```
|
||||||
|
|
||||||
### 2. Vollautomatischer CLI-Modus
|
### 2. Vollautomatischer CLI-Modus
|
||||||
Führe alle Phasen (`00` bis `09`) ohne Interaktion aus:
|
Führe alle Phasen (`00` bis `10`) ohne Interaktion aus:
|
||||||
```bash
|
```bash
|
||||||
sudo ./setup.sh --all
|
sudo ./setup.sh --all
|
||||||
```
|
```
|
||||||
@@ -36,7 +36,7 @@ sudo ./setup.sh --stages 04,05
|
|||||||
|
|
||||||
| Option | Argument | Beschreibung |
|
| Option | Argument | Beschreibung |
|
||||||
| :--- | :--- | :--- |
|
| :--- | :--- | :--- |
|
||||||
| `-a`, `--all` | – | Führt alle Phasen (`00` bis `09`) sequenziell aus |
|
| `-a`, `--all` | – | Führt alle Phasen (`00` bis `10`) sequenziell aus |
|
||||||
| `-s`, `--stages` | `<01,02,...>` | Kommagetrennte Liste der auszuführenden Phasen |
|
| `-s`, `--stages` | `<01,02,...>` | Kommagetrennte Liste der auszuführenden Phasen |
|
||||||
| `-u`, `--user` | `<username>` | Zielbenutzer für Userland/Dotfiles (Standard: `$SUDO_USER` mit Bestätigungsabfrage) |
|
| `-u`, `--user` | `<username>` | Zielbenutzer für Userland/Dotfiles (Standard: `$SUDO_USER` mit Bestätigungsabfrage) |
|
||||||
| `-d`, `--dry-run` | – | Simuliert die Ausführung ohne Systemänderungen |
|
| `-d`, `--dry-run` | – | Simuliert die Ausführung ohne Systemänderungen |
|
||||||
@@ -71,8 +71,9 @@ sudo ./setup.sh --stages 04,05
|
|||||||
│ ├── 05-fonts.sh # Download & Installation von JetBrainsMono, Fantasque, VictorMono
|
│ ├── 05-fonts.sh # Download & Installation von JetBrainsMono, Fantasque, VictorMono
|
||||||
│ ├── 06-services.sh # Aktivierung von AppArmor, Docker, Libvirt, zram, Ollama
|
│ ├── 06-services.sh # Aktivierung von AppArmor, Docker, Libvirt, zram, Ollama
|
||||||
│ ├── 07-skel-and-user.sh # /etc/skel Vorlagen, ZSH-Shell-Setzen, Dotfiles-Sync
|
│ ├── 07-skel-and-user.sh # /etc/skel Vorlagen, ZSH-Shell-Setzen, Dotfiles-Sync
|
||||||
│ ├── 08-flatpaks-apps.sh # Flathub Setup, Flatpaks, Spotify, Waydroid, OpenDeck, MIME-Types
|
│ ├── 08-flatpaks.sh # Flathub Setup, Flatpak-Paketlisten-Installation
|
||||||
│ └── 09-hyprland.sh # LinuxBeginnings Debian-Hyprland Auto-Installer & Dotfiles
|
│ ├── 09-apps.sh # Spotify, Waydroid, OpenDeck, Desktop-Starter, MIME-Types
|
||||||
|
│ └── 10-hyprland.sh # LinuxBeginnings Debian-Hyprland Auto-Installer & Dotfiles
|
||||||
└── data/ # Statische Konfigurationsdateien & Vorlagen
|
└── data/ # Statische Konfigurationsdateien & Vorlagen
|
||||||
├── apt/
|
├── apt/
|
||||||
│ ├── sources.list.d/ # debian-unstable.sources, xanmod.sources
|
│ ├── sources.list.d/ # debian-unstable.sources, xanmod.sources
|
||||||
|
|||||||
+1
-1
@@ -23,4 +23,4 @@ OLLAMA_KV_CACHE_TYPE="q8_0"
|
|||||||
OLLAMA_KEEP_ALIVE="30m"
|
OLLAMA_KEEP_ALIVE="30m"
|
||||||
|
|
||||||
# Default Stages (if --all is passed or in default batch mode)
|
# Default Stages (if --all is passed or in default batch mode)
|
||||||
ALL_STAGES="00 01 02 03 04 05 06 07 08 09"
|
ALL_STAGES="00 01 02 03 04 05 06 07 08 09 10"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ if [ -n "$DESKTOP_SESSION" ]; then
|
|||||||
if [ -z "$XDG_CONFIG_DIRS" ]; then
|
if [ -z "$XDG_CONFIG_DIRS" ]; then
|
||||||
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"
|
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"
|
||||||
fi
|
fi
|
||||||
if [ -n "${XDG_CONFIG_DIRS##*$DEFAULT_XDG_CONFIG_DIRS/xdg-$DESKTOP_SESSION*}" ]; then
|
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"
|
XDG_CONFIG_DIRS="$DEFAULT_XDG_CONFIG_DIRS"/xdg-"$DESKTOP_SESSION":"$XDG_CONFIG_DIRS"
|
||||||
fi
|
fi
|
||||||
export XDG_CONFIG_DIRS
|
export XDG_CONFIG_DIRS
|
||||||
@@ -18,7 +18,7 @@ if [ -n "$DESKTOP_SESSION" ]; then
|
|||||||
if [ -z "$XDG_DATA_DIRS" ]; then
|
if [ -z "$XDG_DATA_DIRS" ]; then
|
||||||
XDG_DATA_DIRS="$DEFAULT_XDG_DATA_DIRS"
|
XDG_DATA_DIRS="$DEFAULT_XDG_DATA_DIRS"
|
||||||
fi
|
fi
|
||||||
if [ -n "${XDG_DATA_DIRS##*/usr/share/$DESKTOP_SESSION*}" ]; then
|
if [ -n "${XDG_DATA_DIRS##*/usr/share/"$DESKTOP_SESSION"*}" ]; then
|
||||||
XDG_DATA_DIRS=/usr/share/"$DESKTOP_SESSION":"$XDG_DATA_DIRS"
|
XDG_DATA_DIRS=/usr/share/"$DESKTOP_SESSION":"$XDG_DATA_DIRS"
|
||||||
fi
|
fi
|
||||||
export XDG_DATA_DIRS
|
export XDG_DATA_DIRS
|
||||||
|
|||||||
+4
-3
@@ -26,7 +26,7 @@ tui_select_stages() {
|
|||||||
local choices
|
local choices
|
||||||
choices=$(whiptail --title "Modulauswahl / Stages" \
|
choices=$(whiptail --title "Modulauswahl / Stages" \
|
||||||
--checklist "Wähle die gewünschten Installations-Phasen mit der LEERTASTE aus:" \
|
--checklist "Wähle die gewünschten Installations-Phasen mit der LEERTASTE aus:" \
|
||||||
22 78 9 \
|
23 78 10 \
|
||||||
"01" "Debian Unstable (Deb822, Pinning, Upgrade)" ON \
|
"01" "Debian Unstable (Deb822, Pinning, Upgrade)" ON \
|
||||||
"02" "Kernel & Hardware (XanMod, P-State, Microcode)" ON \
|
"02" "Kernel & Hardware (XanMod, P-State, Microcode)" ON \
|
||||||
"03" "Bootloader & Theme (GRUB, Vimix, Plymouth)" ON \
|
"03" "Bootloader & Theme (GRUB, Vimix, Plymouth)" ON \
|
||||||
@@ -34,8 +34,9 @@ tui_select_stages() {
|
|||||||
"05" "Coding & Nerd Fonts (JetBrainsMono, VictorMono)" ON \
|
"05" "Coding & Nerd Fonts (JetBrainsMono, VictorMono)" ON \
|
||||||
"06" "System-Dienste (AppArmor, Docker, Libvirt, zram, Ollama)" ON \
|
"06" "System-Dienste (AppArmor, Docker, Libvirt, zram, Ollama)" ON \
|
||||||
"07" "Userland & Skel (Zsh, Skel-Templates, Dotfiles)" ON \
|
"07" "Userland & Skel (Zsh, Skel-Templates, Dotfiles)" ON \
|
||||||
"08" "Flatpaks & Apps (Flathub, Spotify, OpenDeck, MIME)" ON \
|
"08" "Flatpaks (Flathub Repository & Flatpaks)" ON \
|
||||||
"09" "Hyprland Desktop (LinuxBeginnings Debian-Hyprland Installer)" ON \
|
"09" "Zusatz-Apps & MIME (Spotify, Waydroid, OpenDeck, MIME)" ON \
|
||||||
|
"10" "Hyprland Desktop (LinuxBeginnings Debian-Hyprland Installer)" ON \
|
||||||
3>&1 1>&2 2>&3) || {
|
3>&1 1>&2 2>&3) || {
|
||||||
log_info "Setup durch Benutzer abgebrochen."
|
log_info "Setup durch Benutzer abgebrochen."
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ Usage: sudo ./setup.sh [OPTIONS]
|
|||||||
Debian Unstable Setup & Desktop Customization Framework
|
Debian Unstable Setup & Desktop Customization Framework
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --all Run all setup stages sequentially (00 through 09)
|
-a, --all Run all setup stages sequentially (00 through 10)
|
||||||
-s, --stages <list> Comma-separated list of stages to run (e.g. --stages 01,02,04)
|
-s, --stages <list> Comma-separated list of stages to run (e.g. --stages 01,02,04)
|
||||||
-u, --user <username> Specify target desktop user (defaults to \$SUDO_USER)
|
-u, --user <username> Specify target desktop user (defaults to \$SUDO_USER)
|
||||||
-d, --dry-run Simulate stage execution without modifying the system
|
-d, --dry-run Simulate stage execution without modifying the system
|
||||||
@@ -42,8 +42,9 @@ Available Stages:
|
|||||||
05: Font Installation (JetBrainsMono, FantasqueSans, VictorMono)
|
05: Font Installation (JetBrainsMono, FantasqueSans, VictorMono)
|
||||||
06: System Services (AppArmor, Docker, Libvirt, zram, Ollama)
|
06: System Services (AppArmor, Docker, Libvirt, zram, Ollama)
|
||||||
07: Skel & User Environment (Zsh, Templates, Dotfiles Sync)
|
07: Skel & User Environment (Zsh, Templates, Dotfiles Sync)
|
||||||
08: Flatpaks & Applications (Flathub, Spotify, Waydroid, OpenDeck, MIME types)
|
08: Flatpak Applications (Flathub, Flatpak package list)
|
||||||
09: Hyprland Desktop (LinuxBeginnings Auto-Installer)
|
09: Standalone Applications & MIME (Spotify, Waydroid, OpenDeck, MIME types)
|
||||||
|
10: Hyprland Desktop (LinuxBeginnings Auto-Installer)
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
sudo ./setup.sh # Interactive TUI mode
|
sudo ./setup.sh # Interactive TUI mode
|
||||||
@@ -113,7 +114,7 @@ fi
|
|||||||
SELECTED_STAGES=()
|
SELECTED_STAGES=()
|
||||||
|
|
||||||
if [[ "$FLAG_ALL" -eq 1 ]]; then
|
if [[ "$FLAG_ALL" -eq 1 ]]; then
|
||||||
SELECTED_STAGES=(01 02 03 04 05 06 07 08 09)
|
SELECTED_STAGES=(01 02 03 04 05 06 07 08 09 10)
|
||||||
elif [[ -n "$FLAG_STAGES" ]]; then
|
elif [[ -n "$FLAG_STAGES" ]]; then
|
||||||
IFS=',' read -r -a raw_stages <<< "$FLAG_STAGES"
|
IFS=',' read -r -a raw_stages <<< "$FLAG_STAGES"
|
||||||
for st in "${raw_stages[@]}"; do
|
for st in "${raw_stages[@]}"; do
|
||||||
@@ -148,7 +149,7 @@ else
|
|||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
log_info "Non-interactive shell and no parameters provided. Defaulting to --all."
|
log_info "Non-interactive shell and no parameters provided. Defaulting to --all."
|
||||||
SELECTED_STAGES=(01 02 03 04 05 06 07 08 09)
|
SELECTED_STAGES=(01 02 03 04 05 06 07 08 09 10)
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Executable
+41
@@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# ==============================================================================
|
||||||
|
# stages/08-flatpaks.sh - Flathub repository setup & Flatpak package installation
|
||||||
|
# ==============================================================================
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||||
|
source "$SCRIPT_DIR/lib/utils.sh"
|
||||||
|
source "$SCRIPT_DIR/lib/apt.sh"
|
||||||
|
|
||||||
|
setup_err_trap
|
||||||
|
|
||||||
|
log_step "Running Stage 08: Flatpaks & Flathub Repository Setup"
|
||||||
|
|
||||||
|
require_root
|
||||||
|
|
||||||
|
TARGET_USER="$(get_target_user)"
|
||||||
|
|
||||||
|
# 1. Flathub Repository Setup
|
||||||
|
log_substep "Configuring Flathub remote repository..."
|
||||||
|
if command_exists flatpak; then
|
||||||
|
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo || log_warn "Could not add Flathub remote."
|
||||||
|
log_success "Flathub repository enabled."
|
||||||
|
else
|
||||||
|
log_warn "flatpak command not found. Skipping Flatpak installation."
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 2. Install Flatpaks from config/packages/06-flatpaks.list
|
||||||
|
FLATPAK_LIST="$SCRIPT_DIR/config/packages/06-flatpaks.list"
|
||||||
|
if command_exists flatpak && [[ -f "$FLATPAK_LIST" ]]; then
|
||||||
|
log_substep "Installing Flatpak applications from $FLATPAK_LIST..."
|
||||||
|
while IFS= read -r app_id || [[ -n "$app_id" ]]; do
|
||||||
|
app_id="$(echo "$app_id" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
|
||||||
|
[[ -z "$app_id" || "$app_id" =~ ^# ]] && continue
|
||||||
|
log_info "Installing Flatpak: $app_id"
|
||||||
|
flatpak install -y flathub "$app_id" 2>/dev/null || log_warn "Failed to install Flatpak: $app_id"
|
||||||
|
done < "$FLATPAK_LIST"
|
||||||
|
fi
|
||||||
|
|
||||||
|
log_success "Stage 08: Flatpaks and Flathub repository setup completed successfully!"
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# stages/08-flatpaks-apps.sh - Flathub setup, Flatpaks, Spotify, Waydroid, OpenDeck & MIME associations
|
# stages/09-apps.sh - Spotify, Waydroid, OpenDeck, custom desktop apps & MIME associations
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
@@ -11,34 +11,13 @@ source "$SCRIPT_DIR/lib/apt.sh"
|
|||||||
|
|
||||||
setup_err_trap
|
setup_err_trap
|
||||||
|
|
||||||
log_step "Running Stage 08: Flatpaks, Additional Apps & MIME Associations"
|
log_step "Running Stage 09: Standalone Applications, Integrations & MIME Associations"
|
||||||
|
|
||||||
require_root
|
require_root
|
||||||
|
|
||||||
TARGET_USER="$(get_target_user)"
|
TARGET_USER="$(get_target_user)"
|
||||||
|
|
||||||
# 1. Flathub Repository Setup
|
# 1. Spotify Client Installation (Debian APT repo)
|
||||||
log_substep "Configuring Flathub remote repository..."
|
|
||||||
if command_exists flatpak; then
|
|
||||||
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo || log_warn "Could not add Flathub remote."
|
|
||||||
log_success "Flathub repository enabled."
|
|
||||||
else
|
|
||||||
log_warn "flatpak command not found. Skipping Flatpak installation."
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 2. Install Flatpaks from config/packages/06-flatpaks.list
|
|
||||||
FLATPAK_LIST="$SCRIPT_DIR/config/packages/06-flatpaks.list"
|
|
||||||
if command_exists flatpak && [[ -f "$FLATPAK_LIST" ]]; then
|
|
||||||
log_substep "Installing Flatpak applications from $FLATPAK_LIST..."
|
|
||||||
while IFS= read -r app_id || [[ -n "$app_id" ]]; do
|
|
||||||
app_id="$(echo "$app_id" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
|
|
||||||
[[ -z "$app_id" || "$app_id" =~ ^# ]] && continue
|
|
||||||
log_info "Installing Flatpak: $app_id"
|
|
||||||
flatpak install -y flathub "$app_id" 2>/dev/null || log_warn "Failed to install Flatpak: $app_id"
|
|
||||||
done < "$FLATPAK_LIST"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 3. Spotify Client Installation (Debian APT repo)
|
|
||||||
log_substep "Configuring Spotify repository and client..."
|
log_substep "Configuring Spotify repository and client..."
|
||||||
if apt_add_keyring_from_url "https://download.spotify.com/debian/pubkey_5384CE82BA52C83A.asc" "spotify.gpg"; then
|
if apt_add_keyring_from_url "https://download.spotify.com/debian/pubkey_5384CE82BA52C83A.asc" "spotify.gpg"; then
|
||||||
cat <<EOF > /etc/apt/sources.list.d/spotify.sources
|
cat <<EOF > /etc/apt/sources.list.d/spotify.sources
|
||||||
@@ -53,14 +32,14 @@ EOF
|
|||||||
DEBIAN_FRONTEND=noninteractive apt-get install -y spotify-client 2>/dev/null || log_warn "Could not install spotify-client via APT."
|
DEBIAN_FRONTEND=noninteractive apt-get install -y spotify-client 2>/dev/null || log_warn "Could not install spotify-client via APT."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 4. Deploy Custom Desktop Applications
|
# 2. Deploy Custom Desktop Applications
|
||||||
if [[ -d "$SCRIPT_DIR/data/usr/share/applications" ]]; then
|
if [[ -d "$SCRIPT_DIR/data/usr/share/applications" ]]; then
|
||||||
log_substep "Deploying custom desktop entries..."
|
log_substep "Deploying custom desktop entries..."
|
||||||
mkdir -p /usr/share/applications
|
mkdir -p /usr/share/applications
|
||||||
cp -r "$SCRIPT_DIR"/data/usr/share/applications/* /usr/share/applications/ 2>/dev/null || true
|
cp -r "$SCRIPT_DIR"/data/usr/share/applications/* /usr/share/applications/ 2>/dev/null || true
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 5. Waydroid Container Setup
|
# 3. Waydroid Container Setup
|
||||||
log_substep "Checking Waydroid installation..."
|
log_substep "Checking Waydroid installation..."
|
||||||
if ! command_exists waydroid; then
|
if ! command_exists waydroid; then
|
||||||
log_info "Installing Waydroid repository and package..."
|
log_info "Installing Waydroid repository and package..."
|
||||||
@@ -73,7 +52,7 @@ if command_exists systemctl && command_exists waydroid; then
|
|||||||
log_success "Waydroid container service enabled."
|
log_success "Waydroid container service enabled."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 6. OpenDeck Installation
|
# 4. OpenDeck Installation
|
||||||
log_substep "Installing / Updating OpenDeck..."
|
log_substep "Installing / Updating OpenDeck..."
|
||||||
if curl -sSL https://raw.githubusercontent.com/nekename/OpenDeck/main/install_opendeck.sh | bash; then
|
if curl -sSL https://raw.githubusercontent.com/nekename/OpenDeck/main/install_opendeck.sh | bash; then
|
||||||
log_success "OpenDeck installation completed."
|
log_success "OpenDeck installation completed."
|
||||||
@@ -81,7 +60,7 @@ else
|
|||||||
log_warn "OpenDeck installation script returned a non-zero exit code."
|
log_warn "OpenDeck installation script returned a non-zero exit code."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# 7. Set Default Desktop MIME Types for Target User
|
# 5. Set Default Desktop MIME Types for Target User
|
||||||
log_substep "Setting default XDG MIME handlers for $TARGET_USER..."
|
log_substep "Setting default XDG MIME handlers for $TARGET_USER..."
|
||||||
run_as_target_user xdg-mime default org.gnome.Loupe.desktop image/jpeg 2>/dev/null || true
|
run_as_target_user xdg-mime default org.gnome.Loupe.desktop image/jpeg 2>/dev/null || true
|
||||||
run_as_target_user xdg-mime default org.gnome.Loupe.desktop image/png 2>/dev/null || true
|
run_as_target_user xdg-mime default org.gnome.Loupe.desktop image/png 2>/dev/null || true
|
||||||
@@ -94,4 +73,4 @@ run_as_target_user xdg-mime default org.gnome.TextEditor.desktop text/x-log 2>/d
|
|||||||
run_as_target_user xdg-mime default org.gnome.TextEditor.desktop text/markdown 2>/dev/null || true
|
run_as_target_user xdg-mime default org.gnome.TextEditor.desktop text/markdown 2>/dev/null || true
|
||||||
run_as_target_user xdg-mime default eu.betterbird.Betterbird.desktop x-scheme-handler/mailto 2>/dev/null || true
|
run_as_target_user xdg-mime default eu.betterbird.Betterbird.desktop x-scheme-handler/mailto 2>/dev/null || true
|
||||||
|
|
||||||
log_success "Stage 08: Flatpaks, Applications and MIME associations completed successfully!"
|
log_success "Stage 09: Standalone Applications, Integrations and MIME associations completed successfully!"
|
||||||
Regular → Executable
+3
-3
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
# stages/09-hyprland.sh - LinuxBeginnings Debian-Hyprland auto-installer & desktop setup
|
# stages/10-hyprland.sh - LinuxBeginnings Debian-Hyprland auto-installer & desktop setup
|
||||||
# ==============================================================================
|
# ==============================================================================
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
@@ -11,7 +11,7 @@ source "$SCRIPT_DIR/lib/utils.sh"
|
|||||||
|
|
||||||
setup_err_trap
|
setup_err_trap
|
||||||
|
|
||||||
log_step "Running Stage 09: Hyprland Desktop (LinuxBeginnings Debian-Hyprland Installer)"
|
log_step "Running Stage 10: Hyprland Desktop (LinuxBeginnings Debian-Hyprland Installer)"
|
||||||
|
|
||||||
require_root
|
require_root
|
||||||
|
|
||||||
@@ -68,4 +68,4 @@ log_success "Rudimentary Hyprland configuration deployed:"
|
|||||||
log_info " - SUPER+ENTER: Kitty Terminal"
|
log_info " - SUPER+ENTER: Kitty Terminal"
|
||||||
log_info " - SUPER+Q: Close Active Window"
|
log_info " - SUPER+Q: Close Active Window"
|
||||||
log_info " - Login Prompt: Asks user after login to choose Dotfiles setup & installs JetBrains Junie CLI + AwesomeJunieSkills"
|
log_info " - Login Prompt: Asks user after login to choose Dotfiles setup & installs JetBrains Junie CLI + AwesomeJunieSkills"
|
||||||
log_success "Stage 09: Hyprland Desktop installation & configuration completed successfully!"
|
log_success "Stage 10: Hyprland Desktop installation & configuration completed successfully!"
|
||||||
Reference in New Issue
Block a user