Daypaper sets your GNOME wallpaper based on the time of day from a random and relevant Unsplash image.

Daypaper

Daypaper sets your GNOME wallpaper based on the time of day from a random and relevant Unsplash image.

Installation

  1. You will need an Access Token from Unsplash: create an app here after registration.
  2. Create the necessary configuration files:
mkdir ~/.config/daypaper/
touch ~/.config/daypaper/.token
  1. Paste your Access Token inside .token
  2. Clone this repository
  3. Run go install
  4. You're ready to go!

Usage

$: daypaper -h
Usage:
  daypaper [OPTIONS]

Application Options:
  -f, --force                                       Forces a wallpaper refresh even when in the same time span
  -t, --time=[morning|noon|afternoon|evening|night] Specify a particular time of day
  -s, --search=                                     Additional text query to be added while searching
  -q, --quality=                                    The downloaded image quality (default: 75)
  -e, --ext=                                        The downloaded image extension (default: jpg)
  -w, --width=                                      The downloaded image width (default: 1920)
  -a, --api=                                        The API endpoint (default: https://api.unsplash.com/photos/random)

Help Options:
  -h, --help                                        Show this help message

The simplest way to activate daypaper is to run it every hour:

$: crontab -e

0 * * * * ~/go/bin/daypaper > ~/.daypaper.log

Daypaper will contact the API only when needed (i.e. the current day period has changed).

The periods are defined like this:

= 12 && h <= 14 { return "noon" } else if h >= 15 && h <= 17 { return "afternoon" } else if h >= 18 && h <= 21 { return "evening" } return "night" ">
h := time.Now().Hour()

if h >= 7 && h <= 11 {
    return "morning"
} else if h >= 12 && h <= 14 {
    return "noon"
} else if h >= 15 && h <= 17 {
    return "afternoon"
} else if h >= 18 && h <= 21 {
    return "evening"
}

return "night"

Like your wallpaper?

Find out who shot it by looking in ~/.config/daypaper/credits.txt!

Can Daypaper please do x feature/support my DE?

Just open an issue/PR and I'll gladly help!

Owner
Similar Resources

Print random bytes from a secure source to stdout.

Print random bytes from a secure source to stdout.

Feb 11, 2022

A simple API for computing diffs of your documents over the time built on a scalable technology stack.

Diffme API WIP - this is an API to compute diffs between documents. It serves as a way to easily create audit logs for documents in your system, think

Sep 8, 2021

📋 cross-platform clipboard package that supports accessing text and image in Go (macOS/Linux/Windows/Android/iOS)

clipboard Cross platform (macOS/Linux/Windows/Android/iOS) clipboard package in Go import "golang.design/x/clipboard" Features Cross platform supports

Dec 24, 2022

View historical Docker Hub image pull charts for all public Docker Images.

View historical Docker Hub image pull charts for all public Docker Images.

dockerstats.com ⚠️ Due to recent changes to Docker Hub APIs (rate limits) and new business model, dockerstats.com can no longer collect image statisti

May 19, 2022

Continuous profiling for analysis of CPU, memory usage over time, and down to the line number. Saving infrastructure cost, improving performance, and increasing reliability.

Continuous profiling for analysis of CPU, memory usage over time, and down to the line number. Saving infrastructure cost, improving performance, and increasing reliability.

Continuous profiling for analysis of CPU, memory usage over time, and down to the line number. Saving infrastructure cost, improving performance, and increasing reliability.

Jan 2, 2023

Clean-Swift source and test code auto-generator. It can save you time typing 500-600 lines of code.

Clean-Swift source and test code auto-generator. It can save you time typing 500-600 lines of code.

Clean-Swift source & test code auto generator Overview Run Output Basic Usage make config.yaml target_project_name: Miro // target project name copyri

Apr 13, 2022

Cpu-profiling - Basic example of CPU Profiling in Golang which shows the bottlenecks and how much time is spent per function

cpu-profiling Basic example of CPU Profiling in Golang which shows the bottlenec

Aug 2, 2022

Hotswap provides a solution for reloading your go code without restarting your server, interrupting or blocking any ongoing procedure.

Hotswap provides a solution for reloading your go code without restarting your server, interrupting or blocking any ongoing procedure.

Hotswap provides a solution for reloading your go code without restarting your server, interrupting or blocking any ongoing procedure. Hotswap is built upon the plugin mechanism.

Jan 5, 2023

Meteoric golang nitro sniper, 0.1/0.5s claim time.

Meteoric golang nitro sniper, 0.1/0.5s claim time.

Meteoric golang nitro sniper, 0.1/0.5s claim time.

Apr 3, 2021
Related tags
Fast, scalable pseudo random number generator based on xxh3
Fast, scalable pseudo random number generator based on xxh3

XXH3-Based Pseudorandom Number Generator This package contains an experimental implementation of a noise based pseudorandom number generator that scal

Nov 24, 2022
Generates random text based on trigrams generated from input text
Generates random text based on trigrams generated from input text

Trigrams Generates random text based on trigrams generated from input text Contents Building Running Using Implementation notes NGram size Maximum wor

Feb 9, 2022
✔️ Get random data for your app from a third-party source.

Random Data Securely produced random data for application testing. FAQ What would i use this data for? You can use this information to test your apps

Jul 5, 2022
generate random data like name, email, uuid, address, images and etc.

gg-rand generate random data like name, email, uuid, address, images and etc. build and install: make run: gg-rand $ gg-rand SillyName : Knavesa

Nov 16, 2022
randstr is a module that contains functions for generating random strings.

randstr is a module that contains functions for generating random strings. The functions in this module uses the crypto/rand package. Installa

Nov 13, 2021
Encriptator using random generated numbers

public-private-key-encrypter Encriptator using random generated numbers The input file must be in one file called 'data.txt' The execution will genera

Oct 15, 2021
Just some random matchers
Just some random matchers

The package provides a matcher interface to match a given value of any types.

Nov 3, 2022
Generate some random data

fake-data-generator-api generate some random data installing and using

Dec 2, 2022
Generates a random alphanumeric string of a given length.

randstring randstring.Create () is fast and has minimal memory allocation. It returns a random alphanumeric string of a given length. Install go get g

Jan 7, 2022
GoApiRandom - Api to get random numbers

GoApiRandom - Api to get random numbers

Jan 18, 2022