Merge branch 'main' into hypr-caelestia
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# System package list for setup/basic/setup.sh
|
||||
#
|
||||
# Every other dotfile branch depends on these foundational packages
|
||||
# (base system, display manager, audio stack, AUR helper).
|
||||
# `basic` is always set up first in the Makefile.
|
||||
#
|
||||
# - Lines starting with '#' and blank lines are ignored.
|
||||
# - Use "@pacman", "@aur" or "@npm" markers to switch section.
|
||||
# - The default section is @pacman.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@pacman
|
||||
firefox
|
||||
cups
|
||||
pipewire
|
||||
pipewire-session-manager
|
||||
qpwgraph
|
||||
cifs-utils
|
||||
less
|
||||
git
|
||||
ripgrep
|
||||
fd
|
||||
docker
|
||||
man-db
|
||||
@@ -0,0 +1,68 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
SETUP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PACKAGES_FILE="$SETUP_DIR/packages.txt"
|
||||
|
||||
# shellcheck source=../lib/common.sh
|
||||
source "$SETUP_DIR/../lib/common.sh"
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Docker: Dienst aktivieren/starten, Benutzer in die docker-Gruppe aufnehmen
|
||||
# und den Dienst verifizieren. (docker selbst wird ueber setup/basic/packages.txt
|
||||
# als Pacman-Paket installiert.)
|
||||
# ---------------------------------------------------------------------------
|
||||
setup_docker() {
|
||||
if ! command -v docker >/dev/null 2>&1; then
|
||||
echo "Warnung: docker nicht installiert; ueberspringe Docker-Setup."
|
||||
return
|
||||
fi
|
||||
|
||||
echo "==> Aktiviere und starte Docker-Dienst ..."
|
||||
sudo systemctl enable --now docker
|
||||
|
||||
# Bei Aufruf via `sudo <script>` ist SUDO_USER der eigentliche Benutzer.
|
||||
local target_user="${SUDO_USER:-$USER}"
|
||||
echo "==> Stelle sicher, dass $target_user in der docker-Gruppe ist ..."
|
||||
if [[ "$target_user" == "root" ]] || id -nG "$target_user" 2>/dev/null | grep -qw docker; then
|
||||
echo "Benutzer $target_user ist bereits in der docker-Gruppe."
|
||||
else
|
||||
sudo usermod -aG docker "$target_user"
|
||||
echo "Benutzer $target_user zur docker-Gruppe hinzugefuegt; wirksam nach dem naechsten Login."
|
||||
fi
|
||||
|
||||
echo "==> Pruefe Docker-Dienst ..."
|
||||
if systemctl is-active --quiet docker; then
|
||||
echo "Docker-Dienst laeuft (Socket: /var/run/docker.sock)."
|
||||
else
|
||||
echo "Warnung: Docker-Dienst laeuft nicht; pruefe mit: systemctl status docker"
|
||||
fi
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Main
|
||||
# ---------------------------------------------------------------------------
|
||||
main() {
|
||||
local -a pacman_pkgs=() aur_pkgs=() npm_pkgs=()
|
||||
|
||||
echo "==> Aktiviere multilib ..."
|
||||
enable_multilib
|
||||
|
||||
echo "==> System aktualisieren ..."
|
||||
sudo pacman -Syu
|
||||
|
||||
echo "==> Sicherstelle yay ..."
|
||||
ensure_yay
|
||||
|
||||
echo "==> Lese Paketliste: $PACKAGES_FILE"
|
||||
read_packages "$PACKAGES_FILE" pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
install_all_pkgs pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
echo "==> Richte Docker ein ..."
|
||||
setup_docker
|
||||
|
||||
echo "Fertig. Die Basis-Systemumgebung ist eingerichtet."
|
||||
}
|
||||
|
||||
main
|
||||
Executable
+14
@@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
ln -sfn /mnt/spielplatz/heroic/ "$HOME/.heroic"
|
||||
ln -sfn /mnt/spielplatz/steam/ "$HOME/.steam"
|
||||
ln -sfn /mnt/bilder/ "$HOME/Bilder"
|
||||
ln -sfn /mnt/anbau/Dokumente/ "$HOME/Dokumente"
|
||||
ln -sfn /mnt/anbau/Musik/ "$HOME/Musik"
|
||||
ln -sfn /mnt/anbau/Downloads/ "$HOME/Downloads"
|
||||
ln -sfn /mnt/anbau/ "$HOME/anbau"
|
||||
ln -sfn /mnt/anbau/Software/ "$HOME/dev"
|
||||
ln -sfn /mnt/hidrive/ "$HOME/hidrive"
|
||||
ln -sfn /mnt/nas "$HOME/nas"
|
||||
ln -sfn /mnt/anbau/home/mathias/nextcloud "$HOME/nextcloud"
|
||||
ln -sfn /mnt/spielplatz/.local/share/Steam "$HOME/.local/share/Steam"
|
||||
Executable
+26
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
# Refresh vendored upstream port files (setup/fetch-ports.sh).
|
||||
#
|
||||
# This script lives outside the stow packages (setup/) and is NOT run
|
||||
# by the test harness: it contacts the network. Run it manually when you
|
||||
# want to pull newer upstream Catppuccin ports into the central theme:
|
||||
#
|
||||
# bash setup/fetch-ports.sh
|
||||
#
|
||||
# The central palette (theme.lua / theme.css roles / hypr.conf) remains the
|
||||
# source of truth; after fetching, re-apply the provenance headers and the
|
||||
# role-alias block at the end of theme.css if upstream overwrote them.
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
DEST="$SCRIPT_DIR/../basic/.config/themes/themes/catppuccin-mocha"
|
||||
|
||||
# Pinned upstream revisions (bump deliberately, then run this script).
|
||||
KITTY_PIN="main"
|
||||
|
||||
curl -fsSL "https://raw.githubusercontent.com/catppuccin/kitty/${KITTY_PIN}/themes/mocha.conf" \
|
||||
-o "$DEST/kitty.conf"
|
||||
|
||||
echo "ports refreshed into $DEST"
|
||||
echo "reminder: re-apply file headers + theme.css role aliases, then run scripts/sync-theme.sh"
|
||||
@@ -0,0 +1,29 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Hyprland compositor package list for setup/hypr/setup.sh
|
||||
#
|
||||
# Wayland compositor, screenshot tool and supporting utilities. The desktop
|
||||
# shell (bar, launcher, notifications, lock screen, wallpaper, idle, session
|
||||
# menu) on this branch is Caelestia (see hypr/.config/hypr/hyprland.lua:
|
||||
# `caelestia shell -d`). Noctalia lives on main.
|
||||
#
|
||||
# - Lines starting with '#' and blank lines are ignored.
|
||||
# - Use "@pacman", "@aur" or "@npm" markers to switch section.
|
||||
# - The default section is @pacman.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@pacman
|
||||
hyprland
|
||||
xdg-desktop-portal-hyprland
|
||||
hyprpolkitagent
|
||||
pantheon-shortcut-overlay
|
||||
wev
|
||||
wl-clipboard
|
||||
hyprshot
|
||||
brightnessctl
|
||||
wtype
|
||||
|
||||
@aur
|
||||
hyprmod
|
||||
caelestia-shell
|
||||
caelestia-cli
|
||||
quickshell-git
|
||||
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
SETUP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PACKAGES_FILE="$SETUP_DIR/packages.txt"
|
||||
|
||||
# shellcheck source=../lib/common.sh
|
||||
source "$SETUP_DIR/../lib/common.sh"
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Post-install: run Hyprland environment & desktop integration scripts.
|
||||
# ---------------------------------------------------------------------------
|
||||
run_hypr_scripts() {
|
||||
local scripts_dir
|
||||
scripts_dir="$(repo_root)/hypr/.config/hypr/scripts"
|
||||
|
||||
echo "==> Fuehre ensure-env.sh aus ..."
|
||||
bash "$scripts_dir/ensure-env.sh"
|
||||
|
||||
echo "==> Fuehre portal-host-override.sh aus ..."
|
||||
bash "$scripts_dir/portal-host-override.sh"
|
||||
|
||||
echo "==> Fuehre fix_dolphin_file_associations.sh aus ..."
|
||||
bash "$scripts_dir/fix_dolphin_file_associations.sh"
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Main
|
||||
# ---------------------------------------------------------------------------
|
||||
main() {
|
||||
local -a pacman_pkgs=() aur_pkgs=() npm_pkgs=()
|
||||
|
||||
echo "==> Lese Paketliste: $PACKAGES_FILE"
|
||||
read_packages "$PACKAGES_FILE" pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
install_all_pkgs pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
run_hypr_scripts
|
||||
|
||||
echo "Fertig. Hyprland und das Compositor-Okosystem sind eingerichtet."
|
||||
}
|
||||
|
||||
main
|
||||
@@ -0,0 +1,24 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Kreation package list for setup/kreation/setup.sh
|
||||
#
|
||||
# DAW, video and audio-plugin runtime.
|
||||
#
|
||||
# - Lines starting with '#' and blank lines are ignored.
|
||||
# - Use "@pacman", "@aur" or "@npm" markers to switch section.
|
||||
# - The default section is @pacman.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@pacman
|
||||
reaper
|
||||
guitarix
|
||||
kdenlive
|
||||
yabridge
|
||||
yabridgectl
|
||||
obs-studio
|
||||
surge-xt
|
||||
lsp-plugins
|
||||
calf
|
||||
dragonfly-reverb
|
||||
|
||||
@aur
|
||||
numaplayer
|
||||
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
SETUP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PACKAGES_FILE="$SETUP_DIR/packages.txt"
|
||||
|
||||
# shellcheck source=../lib/common.sh
|
||||
source "$SETUP_DIR/../lib/common.sh"
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Main
|
||||
# ---------------------------------------------------------------------------
|
||||
main() {
|
||||
local -a pacman_pkgs=() aur_pkgs=() npm_pkgs=()
|
||||
|
||||
echo "==> Lese Paketliste: $PACKAGES_FILE"
|
||||
read_packages "$PACKAGES_FILE" pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
install_all_pkgs pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
echo "Fertig. Kreation-Pakete (DAW, Video, Plugins) sind eingerichtet."
|
||||
}
|
||||
|
||||
main
|
||||
@@ -0,0 +1,124 @@
|
||||
#!/bin/bash
|
||||
# setup/lib/common.sh
|
||||
#
|
||||
# Shared helpers for the setup/install scripts under setup/.
|
||||
# Source this file; do not execute it directly:
|
||||
#
|
||||
# SETUP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
# # shellcheck source=../lib/common.sh
|
||||
# source "$SETUP_DIR/../lib/common.sh"
|
||||
#
|
||||
# Conventions:
|
||||
# - The caller owns `set -euo pipefail` and PACKAGES_FILE.
|
||||
# - Package lists use @pacman (default) / @aur / @npm section markers;
|
||||
# '#' starts a comment, blank lines are ignored.
|
||||
# - Set NPM_USE_SUDO=1 before calling install_npm_pkgs when the global
|
||||
# npm root is root-owned (Arch installs npm to /usr/lib/node_modules).
|
||||
|
||||
# Print the repository root (setup/lib/ -> repo root).
|
||||
repo_root() {
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd
|
||||
}
|
||||
|
||||
log() {
|
||||
echo "==> $*"
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Read a packages.txt file, split into pacman / aur / npm sections.
|
||||
# Usage: read_packages <file> <pacman_array> <aur_array> <npm_array>
|
||||
# ---------------------------------------------------------------------------
|
||||
read_packages() {
|
||||
local file="$1" pacman_ref="$2" aur_ref="$3" npm_ref="$4"
|
||||
local section="pacman"
|
||||
local line current
|
||||
local -n _pacman="$pacman_ref" _aur="$aur_ref" _npm="$npm_ref"
|
||||
while IFS= read -r line || [[ -n "$line" ]]; do
|
||||
current="${line%%#*}"
|
||||
current="${current##*( )}"
|
||||
current="${current%%*( )}"
|
||||
[[ -z "$current" ]] && continue
|
||||
case "$current" in
|
||||
@pacman) section="pacman" ;;
|
||||
@aur) section="aur" ;;
|
||||
@npm) section="npm" ;;
|
||||
*)
|
||||
case "$section" in
|
||||
pacman) _pacman+=("$current") ;;
|
||||
aur) _aur+=("$current") ;;
|
||||
npm) _npm+=("$current") ;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
done < "$file"
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Install sections (arrays passed by nameref).
|
||||
# ---------------------------------------------------------------------------
|
||||
install_pacman_pkgs() {
|
||||
local -n _pkgs="$1"
|
||||
if ((${#_pkgs[@]})); then
|
||||
log "Installiere Pacman-Pakete: ${_pkgs[*]}"
|
||||
yay -S --needed "${_pkgs[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
install_aur_pkgs() {
|
||||
local -n _pkgs="$1"
|
||||
if ((${#_pkgs[@]})); then
|
||||
log "Installiere AUR-Pakete: ${_pkgs[*]}"
|
||||
yay -S --needed "${_pkgs[@]}"
|
||||
fi
|
||||
}
|
||||
|
||||
install_npm_pkgs() {
|
||||
local -n _pkgs="$1"
|
||||
if ((${#_pkgs[@]})); then
|
||||
log "Installiere globale npm-Pakete: ${_pkgs[*]}"
|
||||
if [[ "${NPM_USE_SUDO:-0}" == "1" ]]; then
|
||||
sudo npm install -g "${_pkgs[@]}"
|
||||
else
|
||||
npm install -g "${_pkgs[@]}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# Install all three sections at once.
|
||||
install_all_pkgs() {
|
||||
install_pacman_pkgs "$1"
|
||||
install_aur_pkgs "$2"
|
||||
install_npm_pkgs "$3"
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Enable multilib in /etc/pacman.conf (with a safety backup).
|
||||
# ---------------------------------------------------------------------------
|
||||
enable_multilib() {
|
||||
sudo sed -i.bak '/^#\[multilib\]/,+1 s/^#//' /etc/pacman.conf
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Ensure yay (AUR helper) is installed.
|
||||
# ---------------------------------------------------------------------------
|
||||
ensure_yay() {
|
||||
if pacman -Q yay &>/dev/null; then
|
||||
echo "yay bereits installiert; fahre fort."
|
||||
return
|
||||
fi
|
||||
if pacman -Si yay &>/dev/null; then
|
||||
echo "Installiere yay mit pacman ..."
|
||||
sudo pacman -S --needed yay
|
||||
return
|
||||
fi
|
||||
echo "installiere yay via git ..."
|
||||
sudo pacman -S --needed base-devel git
|
||||
local tmp
|
||||
tmp="$(mktemp -d)"
|
||||
git clone https://aur.archlinux.org/yay.git "$tmp/yay"
|
||||
(
|
||||
cd "$tmp/yay"
|
||||
makepkg -si
|
||||
)
|
||||
rm -rf "$tmp"
|
||||
}
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
retry() {
|
||||
local N=$1; shift
|
||||
local t=$2; shift
|
||||
for _ in $(seq 1 $N); do
|
||||
"$@" && return 0 || sleep $t
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
stow_nextcloud() {
|
||||
# Nextcloud
|
||||
if [ ! -d "$HOME/nextcloud/local_configs" ]; then
|
||||
echo "Fehler: Benötige $HOME/nextcloud/local_configs" >&2
|
||||
exit 1
|
||||
fi
|
||||
stow --dir=$HOME/nextcloud/local_configs --target=$HOME default
|
||||
}
|
||||
|
||||
nextcloud &
|
||||
|
||||
retry 90 10 stow_nextcloud
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Terminal package list for setup/term/setup.sh
|
||||
#
|
||||
# Maintenance:
|
||||
# - Add / remove packages on separate lines.
|
||||
# - Lines starting with '#' and blank lines are ignored.
|
||||
# - Use "@pacman", "@aur" or "@npm" markers to switch section.
|
||||
# - The default section is @pacman.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@pacman
|
||||
fish
|
||||
extra/kitty
|
||||
neovim
|
||||
openssh
|
||||
rclone
|
||||
rsync
|
||||
unison
|
||||
stow
|
||||
nodejs
|
||||
npm
|
||||
starship
|
||||
fastfetch
|
||||
tree-sitter-cli
|
||||
python
|
||||
python-pip
|
||||
unzip
|
||||
ruff
|
||||
python-ruff
|
||||
python-debugpy
|
||||
chromium
|
||||
selene
|
||||
tmux
|
||||
yazi
|
||||
zoxide
|
||||
fzf
|
||||
locate
|
||||
ttf-jetbrains-mono-nerd
|
||||
ttf-font-awesome
|
||||
|
||||
@aur
|
||||
opencode
|
||||
|
||||
@npm
|
||||
eslint_d
|
||||
@@ -0,0 +1,107 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
SETUP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PACKAGES_FILE="$SETUP_DIR/packages.txt"
|
||||
|
||||
# shellcheck source=../lib/common.sh
|
||||
source "$SETUP_DIR/../lib/common.sh"
|
||||
|
||||
# Arch installiert npm nach /usr/lib/node_modules (root-owned),
|
||||
# daher braucht der globale Install sudo.
|
||||
NPM_USE_SUDO=1
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Post-install configuration.
|
||||
# ---------------------------------------------------------------------------
|
||||
set_fish_default_shell() {
|
||||
if command -v fish >/dev/null 2>&1; then
|
||||
if [[ "$SHELL" != "/usr/bin/fish" ]]; then
|
||||
echo "Setze fish als Standard-Shell ..."
|
||||
chsh -s /usr/bin/fish
|
||||
else
|
||||
echo "fish ist bereits die Standard-Shell."
|
||||
fi
|
||||
else
|
||||
echo "Warnung: fish wurde nicht installiert; ueberspringe chsh."
|
||||
fi
|
||||
}
|
||||
|
||||
install_tmuxifier() {
|
||||
if [[ -d "$HOME/.tmuxifier" ]]; then
|
||||
echo "tmuxifier bereits installiert; fahre fort."
|
||||
else
|
||||
echo "Klone tmuxifier ..."
|
||||
git clone https://github.com/jimeh/tmuxifier.git "$HOME/.tmuxifier"
|
||||
fi
|
||||
}
|
||||
|
||||
install_tmux_tpm() {
|
||||
if [[ -x "$HOME/.config/tmux/plugins/tpm/tpm" ]]; then
|
||||
echo "tmux TPM bereits installiert; fahre fort."
|
||||
else
|
||||
echo "Klone tmux TPM ..."
|
||||
mkdir -p "$HOME/.config/tmux/plugins"
|
||||
git clone https://github.com/tmux-plugins/tpm "$HOME/.config/tmux/plugins/tpm"
|
||||
fi
|
||||
}
|
||||
|
||||
install_tmux_plugins() {
|
||||
local tpm_install="$HOME/.config/tmux/plugins/tpm/bin/install_plugins"
|
||||
if ! command -v tmux >/dev/null 2>&1; then
|
||||
echo "Warnung: tmux nicht installiert; ueberspringe Plugin-Installation (C-Space I beim ersten Start)."
|
||||
return 0
|
||||
fi
|
||||
if ! command -v git >/dev/null 2>&1; then
|
||||
echo "Warnung: git nicht installiert; ueberspringe tmux Plugin-Installation."
|
||||
return 0
|
||||
fi
|
||||
if [[ ! -f "$HOME/.config/tmux/tmux.conf" ]]; then
|
||||
echo "tmux.conf noch nicht verlinkt (stow laeuft nach setup.sh); Plugins werden beim ersten tmux-Start bzw. Re-Run installiert (C-Space I)."
|
||||
return 0
|
||||
fi
|
||||
if [[ ! -x "$tpm_install" ]]; then
|
||||
echo "Warnung: TPM install_plugins nicht gefunden; ueberspringe tmux Plugin-Installation."
|
||||
return 0
|
||||
fi
|
||||
echo "Installiere tmux-Plugins via TPM ..."
|
||||
"$tpm_install"
|
||||
}
|
||||
|
||||
add_yazi_git_plugin() {
|
||||
if command -v yazi >/dev/null 2>&1 && command -v ya >/dev/null 2>&1; then
|
||||
if ya pkg list 2>/dev/null | grep -q 'yazi-rs/plugins:git'; then
|
||||
echo "yazi git-Plugin bereits installiert; fahre fort."
|
||||
else
|
||||
echo "Fuege yazi git-Plugin hinzu ..."
|
||||
ya pkg add yazi-rs/plugins:git
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Main
|
||||
# ---------------------------------------------------------------------------
|
||||
main() {
|
||||
local -a pacman_pkgs=() aur_pkgs=() npm_pkgs=()
|
||||
|
||||
# Hinweis: multilib, yay und das System-Update werden von
|
||||
# setup/basic/setup.sh uebernommen (laeuft vor term im Makefile).
|
||||
echo "==> Lese Paketliste: $PACKAGES_FILE"
|
||||
read_packages "$PACKAGES_FILE" pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
install_all_pkgs pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
set_fish_default_shell
|
||||
install_tmuxifier
|
||||
install_tmux_tpm
|
||||
install_tmux_plugins
|
||||
add_yazi_git_plugin
|
||||
|
||||
echo "==> Aktualisiere locate-Datenbank ..."
|
||||
sudo updatedb
|
||||
|
||||
echo "Fertig. Starte ein neues Terminal, damit fish und die Umgebung greifen."
|
||||
}
|
||||
|
||||
main
|
||||
@@ -0,0 +1,22 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Standalone desktop utility package list for setup/utils/setup.sh
|
||||
#
|
||||
# Programs that are not core to every branch, but are expected on a full
|
||||
# desktop: office / web / mail / native-app replacements (Wine), the
|
||||
# Nextcloud sync client, etc.
|
||||
#
|
||||
# - Lines starting with '#' and blank lines are ignored.
|
||||
# - Use "@pacman", "@aur" or "@npm" markers to switch section.
|
||||
# - The default section is @pacman.
|
||||
# ---------------------------------------------------------------------------
|
||||
|
||||
@pacman
|
||||
nextcloud-client
|
||||
thunderbird
|
||||
ktouch
|
||||
ktorrent
|
||||
wine
|
||||
wine-mono
|
||||
wine-gecko
|
||||
winetricks
|
||||
rbw
|
||||
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
SETUP_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PACKAGES_FILE="$SETUP_DIR/packages.txt"
|
||||
|
||||
# shellcheck source=../lib/common.sh
|
||||
source "$SETUP_DIR/../lib/common.sh"
|
||||
|
||||
# ---------------------------------------------------------------------------
|
||||
# Main
|
||||
# ---------------------------------------------------------------------------
|
||||
main() {
|
||||
local -a pacman_pkgs=() aur_pkgs=() npm_pkgs=()
|
||||
|
||||
echo "==> Lese Paketliste: $PACKAGES_FILE"
|
||||
read_packages "$PACKAGES_FILE" pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
install_all_pkgs pacman_pkgs aur_pkgs npm_pkgs
|
||||
|
||||
echo "Fertig. Standalone Utilities sind eingerichtet."
|
||||
}
|
||||
|
||||
main
|
||||
Reference in New Issue
Block a user