Files

79 lines
2.5 KiB
Markdown

# Linux Scripts
A collection of shell scripts for automating Linux system setup and configuration.
## Usage
Each script can be downloaded and executed directly with curl:
```bash
curl -fsSL https://raw.githubusercontent.com/YOUR_USERNAME/LinuxScripts/main/PATH/TO/SCRIPT.sh | bash
```
Or clone the repo:
```bash
git clone https://github.com/YOUR_USERNAME/LinuxScripts.git
cd LinuxScripts
bash PATH/TO/SCRIPT.sh
```
## Structure
```
LinuxScripts/
├── README.md
├── core/ # Shared scripts/functions (planned)
│ └── .gitkeep
├── Kbuntu/ # Kubuntu (KDE Ubuntu) specific scripts
│ └── install-packages.sh # Installs common packages and configures KDE/Qt apps
├── Ubuntu/ # Ubuntu specific scripts (planned)
├── Fedora/ # Fedora specific scripts (planned)
└── ...
```
### Folder Conventions
- **Distro-specific folders** (e.g., `Kbuntu/`, `Ubuntu/`, `Fedora/`): Scripts tailored to specific distributions
- **`core/`**: Planned location for shared script utilities, functions, and helpers that can be sourced by distro-specific scripts
## Scripts
### Kbuntu
#### install-packages.sh
Installs a curated set of packages and configures a fresh Kubuntu installation.
**What it does:**
- Updates package lists and upgrades existing packages
- Installs: LibreOffice, FreeCAD, VLC, Thunderbird, Firefox, Ubuntu restricted extras, FFmpeg, Timeshift, HPLIP printer drivers, CUPS printing
- Configures automatic security updates via `unattended-upgrades`
- Installs a pre-apt Timeshift snapshot hook (auto-snapshot before package changes)
- Configures SDDM auto-login for the current user
- Sets up Plymouth bgrt boot splash (OEM logo + spinner)
- Enables and configures HP printer support
**Usage:**
```bash
curl -fsSL https://raw.githubusercontent.com/YOUR_USERNAME/LinuxScripts/main/Kbuntu/install-packages.sh | bash
```
**Notes:**
- Run with `sudo` or as root
- Timeshift requires manual configuration after installation (`sudo timeshift-gtk`)
- SDDM auto-login is configured for the user running the script
- Plymouth bgrt theme requires UEFI firmware with embedded logo
- Log out and back in after running for lpadmin group to take effect
## Contributing
1. Add scripts to the appropriate distro folder (create one if it doesn't exist)
2. Scripts should be self-contained and idempotent where possible
3. Include a header comment describing what the script does
4. Test scripts in a VM before committing
## License
MIT