All Projects → yahyalmh → ChangeWallpaper

yahyalmh / ChangeWallpaper

Licence: GPL-3.0 License
This script downloads the Bing and Nasa daily wallpaper and uses them to changes the background on the Linux and Windows os periodically.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to ChangeWallpaper

Dynamic Wallpaper
A simple bash script to set wallpapers according to current time, using cron job scheduler.
Stars: ✭ 762 (+5342.86%)
Mutual labels:  wallpaper, crontab
lambda-cron
LambdaCron - serverless cron tool
Stars: ✭ 22 (+57.14%)
Mutual labels:  crontab
OnlySwitch
⚙️ All-in-One menu bar app, hide 💻MacBook Pro's notch, dark mode, AirPods, Shortcuts
Stars: ✭ 1,288 (+9100%)
Mutual labels:  wallpaper
Agile-Server
A simple, fast, complete Node.js server solution, based on KOA. 简单快速的 、性能强劲的、功能齐全的 node 服务器解决方案合集,基于 KOA。
Stars: ✭ 24 (+71.43%)
Mutual labels:  crontab
awesome-web-online-tools
Many many useful Web Online Tools For Web Developers&Programmers
Stars: ✭ 13 (-7.14%)
Mutual labels:  crontab
fantascene-dynamic-wallpaper
Managed animated wallpaper based on X11 under Linux
Stars: ✭ 76 (+442.86%)
Mutual labels:  wallpaper
lswc
Change your wallpaper on Gnome, Mint or Mate.. lets say gnome2 or gnome3
Stars: ✭ 19 (+35.71%)
Mutual labels:  wallpaper
WallcatWindows
Enjoy a new, beautiful wallpaper, every day.
Stars: ✭ 26 (+85.71%)
Mutual labels:  wallpaper
mi-cron
📆 A microscopic parser for standard cron expressions.
Stars: ✭ 16 (+14.29%)
Mutual labels:  crontab
celery-task-tigger
A controllable timing task widgets with Celery
Stars: ✭ 57 (+307.14%)
Mutual labels:  crontab
wallpaper-api
An api which can use different sites to scrape images and serve them through API
Stars: ✭ 18 (+28.57%)
Mutual labels:  wallpaper
animwall
Animated wallpapers for Linux
Stars: ✭ 28 (+100%)
Mutual labels:  wallpaper
go-crontab
windows 版 crontab | 基于 golang 的 crontab 定时任务管理器 (替代windows定时任务的一种方案)
Stars: ✭ 18 (+28.57%)
Mutual labels:  crontab
ActiveDesktopPlus
A simple app that lets you pin windows to your desktop and use fullscreen programs and videos as interactive wallpapers.
Stars: ✭ 88 (+528.57%)
Mutual labels:  wallpaper
dotfiles
Config files for i3, polybar, rofi, mpv, Xresources, kitty and some bash-things...
Stars: ✭ 52 (+271.43%)
Mutual labels:  wallpaper
freshpaper
This utility automatically sets the wallpaper of the day from various sources as your Desktop wallpaper.
Stars: ✭ 35 (+150%)
Mutual labels:  wallpaper
asparagus
An easy to use task scheduler for distributed systems
Stars: ✭ 14 (+0%)
Mutual labels:  crontab
WallpaperKit
Building Live/Static Wallpaper on macOS.
Stars: ✭ 31 (+121.43%)
Mutual labels:  wallpaper
Bing-wallpapers
Fetch the Bing wallpaper image of the day
Stars: ✭ 19 (+35.71%)
Mutual labels:  wallpaper
cronitor-cli
Command line tools for Cronitor.io
Stars: ✭ 31 (+121.43%)
Mutual labels:  crontab

ChangeWallpaper

Download The Bing and Nasa daily wallpapers and change Linux and Windows Wallpaper automatically

Table of content

General info

This script downloads the Bing and Nasa daily wallpaper and saves the downloaded images in a directory with the wallpaper name created in the home directory.

Those site addresses are:

Download those wallpaper once a day and set one of them as wallpaper randomly. This script will change the wallpaper once an hour by default, but you can change it.

Installation

To install it, clone the repository in a path and run the install script based on your os type. Install process creates a file named .changeWall in your home directory and uses it as the project folder.

  • linux

    Go to the installation directory and run ./install.sh from the terminal.

    • Make sure the install script has execution permission. By default it has that permission, but you can give that permission by sudo chmod +x install.sh if it does not have.
  • windows

    Go to the installation directory and run install.bat from cmd.

Technologies

project is built with:

  • python version: 3.6
  • bash version: 4.4
  • BeautifulSoup version: 4.8
  • urllib3 version:1.25
  • requests version:2.23
  • python-crontab version:2.5.1 for schedule task on linux
  • Use schtasks for schedule task on windows

Features

  • Tested on Ubuntu 20 LTS and Windows 10
  • Tested on Linux ubuntu 18.4 with Gnome 3.28
  • Check and remove duplicate images with the hash algorithm(use hash table)
  • Use vbs file to run python file on Windows
  • Download wallpaper once a day
  • Change wallpaper periodically(hourly and reboot) with crontab setup for Linux and schtasks for windows
  • If the total downloaded images' size is more than 2GB(you can change this limit in the Utils/SpaceManager.py file), it will remove the oldest image files from the application directory, which is named `wallpaper directory in your home directory
  • If there is no image in the project's download directory, use system default's wallpaper in /usr/share/backgrounds directory on the Linux. Also, if there is no image in this path, use a default image which is in project ./image/def_wall.png path

Setup

Schedule change wallpaper hourly, and at the time of os reboot, it's done automatically. But if you want to change it, use the below commands.

  • linux

    If you want to change your wallpaper periodically, for example change it every two hours, set crontab job for this script like this:

    0 */2 * * * /usr/bin/python3 /your_home_path/.chagneWall/Main.py

  • windows

    Can not change wallpaper at reboot time because you need administrator privilege. if you want to change your wallpaper daily run follow command:

    schtasks /create /sc daily /tr " + /your_home_path/.chagneWall/run.vbs

Issues

If you install the script without any errors, but your background is not changed, open an issue and tell your os and GUI version to fix it. because the background in desktop environments is sometimes different.

To Do

  • Add some another wallpaper site
  • Use Apod API to download Nasa daily images
  • Add The Uninstall script
  • Remove previously cron job with the sabe comment
  • Decrease the wallpaper folder default size
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].