Skip to main content

Modern Desktop Wallpaper Manager with Motivational Quotes

Project description

PaprWall 🎨

Modern desktop wallpaper manager with inspirational quotes and one-click apply.

Version Python License: CC BY-NC 4.0 Platform

Beautiful wallpapers with inspirational quotes. Auto-rotation, 6 quote categories, and a clean dark UI. Robust cross-desktop wallpaper setting with detailed debug logs.

✨ Features

  • 🎨 Modern dark UI with large preview
  • 💭 6 quote categories: Motivational, Math, Science, Famous, Tech, Philosophy
  • 🔄 Auto-rotation with live countdown; interval changes take effect immediately
  • 🔕 Background mode - Run as systemd service (Linux) or Windows startup
  • ✅ "Applied" indicator shows when the preview matches the current wallpaper
  • ♻️ Fallback to previously applied wallpaper if a fetch fails
  • 📜 History gallery with quick "Set" from any past wallpaper
  • 🖥️ Multi-desktop support: GNOME, KDE, XFCE, Cinnamon, MATE, LXQt; feh fallback
  • 🧰 Detailed debug logs for wallpaper setting (per-desktop methods and fallbacks)
  • 🌐 Random images from multiple APIs + 📁 use your own images with quotes

🚀 Installation

PyPI (Recommended)

pip install paprwall
paprwall-setup-desktop  # Creates desktop/start menu entry
paprwall-gui           # Launch

Linux Packages

  • .deb: sudo dpkg -i paprwall_*.deb
  • .rpm: sudo dnf install paprwall_*.rpm
  • AppImage: chmod +x PaprWall-*.AppImage && ./PaprWall-*.AppImage

Windows

  1. Download .zip from Releases
  2. Run INSTALL.bat (creates Desktop + Start Menu shortcuts)
  3. Launch from Desktop or Start Menu

Requirements

  • Python 3.9+ | Linux: sudo apt install python3-tk

🧪 Quick start

  1. Select a quote category
  2. Click “Random” or “Refresh” to fetch
  3. Preview updates with shrink‑to‑fit quote overlay (top‑right)
  4. Click “Set Wallpaper” to apply
  5. Toggle “Auto‑rotate” and choose an interval
  6. Use “History” to re‑apply previous wallpapers

📖 Usage

  1. Select Quote Category - Choose from 6 types (Motivational, Math, Science, etc.)
  2. Fetch Wallpaper - Click "Random" or "Refresh" button
  3. Preview - View wallpaper with embedded quote
  4. Set Wallpaper - Apply to desktop
  5. Auto-Rotate - Enable timer for automatic changes (continues in background!)
  6. History - Browse and reuse previous wallpapers

Background Mode (Daemon)

Linux (systemd service):

paprwall-service install   # Install and start service
paprwall-service status    # Check status
paprwall-service uninstall # Remove service

Service runs in background, auto-rotation continues even after logout!

Windows (Startup):

paprwall-service install   # Add to Windows Startup
paprwall-service uninstall # Remove from Startup

PaprWall starts automatically when you log in.

Manual daemon mode:

paprwall-gui --daemon      # Run in background (no window)

Data locations

  • Linux: ~/.local/share/paprwall/wallpapers/
  • Windows: %APPDATA%\PaprWall\wallpapers\

🔧 Troubleshooting

GUI won't start? Install Tkinter: sudo apt install python3-tk (Linux)
Wallpaper not changing? Check supported desktop: GNOME, KDE, XFCE, MATE, Cinnamon, LXQt
Windows SmartScreen? Click "More info" → "Run anyway"

See the docs for more:

🤝 Contributing

git clone https://github.com/riturajprofile/paprwall.git
cd paprwall
pip install -e ".[dev]"

💬 Support


⭐ Star this repo if you like it! • Made with ❤️ by riturajprofile

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

paprwall-2.1.0.tar.gz (67.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paprwall-2.1.0-py3-none-any.whl (43.9 kB view details)

Uploaded Python 3

File details

Details for the file paprwall-2.1.0.tar.gz.

File metadata

  • Download URL: paprwall-2.1.0.tar.gz
  • Upload date:
  • Size: 67.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for paprwall-2.1.0.tar.gz
Algorithm Hash digest
SHA256 31110276b9daa150ef7355b614f271c8791e1d40dc696893ce8854d6cf285200
MD5 047639e76284fe1da1aca0c7df5d0aa2
BLAKE2b-256 e24732875c1dec44a351e6060a77d8f51ed49924494463e46d3caf2d0449fdff

See more details on using hashes here.

File details

Details for the file paprwall-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: paprwall-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 43.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for paprwall-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 61bbf887a17877fe87d3cf202e7df26602ca188c5065c8bf8eaa8d68ddeedd57
MD5 e6ddee61517cf9adeb951225ab2eaeb1
BLAKE2b-256 1370522d3197127304bddd218224370f1ac6e581ee58f0ae5dafe1d3773c092d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page