This repository contains configurations and helpful scripts for various Linux distributions including openSUSE, Fedora, and Debian-based systems, documenting things as they are figured out.
Before using these scripts, ensure you have the following installed:
Required:
bash- All scripts use Bash shellsudo- Administrative privileges needed for system updatesflatpak- For Flatpak application updates
Optional (depending on which features you want to use):
curl- Required for Ollama updatesdocker- Required for Open WebUI updatesnpm- Required for Qwen Code and Gemini CLI updates (if enabled)
-
Make scripts executable:
chmod +x update-debian.sh update-fedora.sh update-opensuse.sh SUSE.sh
-
Run the appropriate script for your distribution:
# For Debian/Ubuntu: ./update-debian.sh # For Fedora: ./update-fedora.sh # For openSUSE: ./update-opensuse.sh
-
Answer prompts for optional updates (Ollama, Open WebUI, etc.)
-
Review the summary at the end to see what succeeded or failed
- common.sh - Shared library containing error handling logic and common update functions. All update scripts source this file to provide non-blocking error reporting and reduce code duplication.
- SUSE.sh - This script automates initial openSUSE setup. It refreshes repositories, performs a distribution upgrade, adds the Packman repository (Tumbleweed URL), installs Flatpak, and adds the Flathub remote.
- update-fedora.sh - Updates system packages (DNF) and Flatpaks on Fedora. Optionally updates Ollama and Open WebUI. Includes commented-out sections for updating Qwen Code and Gemini CLI via npm (uncomment to enable). Uses
common.shfor error handling. - update-opensuse.sh - Updates system packages (Zypper) and Flatpaks on openSUSE. Optionally updates Ollama and Open WebUI. Includes commented-out sections for updating Qwen Code and Gemini CLI via npm (uncomment to enable). Uses
common.shfor error handling. - update-debian.sh - Updates system packages (APT) and Flatpaks on Debian/Ubuntu. Optionally updates Ollama and Open WebUI. Includes commented-out sections for updating Qwen Code and Gemini CLI via npm (uncomment to enable). Uses
common.shfor error handling. - killing-packagekit.txt - Contains commands to stop or kill the PackageKit service, which can be useful if it interferes with manual package management operations.
- alacritty-config - Configuration file for the Alacritty terminal emulator. Removes window decorations, adds transparency (97% opacity), sets a custom window size (97x26 characters), applies Nord color scheme with a dark background, and configures an underlined blinking cursor with 14pt Monospace font.
The update scripts include optional sections (currently commented out) for updating:
- Qwen Code (
@qwen-code/qwen-code) - AI-powered code assistant - Gemini CLI (
@google/gemini-cli) - Google's Gemini API command-line interface
To enable these updates on a specific machine, uncomment the relevant sections in your update script. npm will automatically check if updates are needed before installing.