vineetred/flowy

The documentation can be found at You can either download the binary or get the...

You can either download the binary or get the Debian package

Demo

Usage

  • The documentation can be found at https://docs.rs/flowy.
  • You can either download the binary or get the Debian package.
  • Flowy comes with a preset set of wallpapers. See the binary section for more information.
  • Flowy can also change the wallpapers based on sunrise and sunset timings of your location. See the Solar section for more information.

Binary

  • It can be either found in the Releases section or can be installed using Cargo by running the command .
  • If you use the binary, just run it by typing or to set the path to the wallpaper directory.
  • In case you want to use the preset wallpapers, run or . This downloads the Lakeside wallpapers made by Louis Coyle. They can also be found here.
  • If you're using Linux, you can let the binary run forever in a terminal session or setup a service so it listens in the background. Checkout the 'Systemd Automation' section for more details.

Systemd Automation (Linux only)

  • Instead of letting flowy run in an open terminal, it can be run as a background service.

  • Create a file called and place it in

  • Populate this file with the following contents -

  • Here, replace the variable with the value of your current Desktop Environment and replace the variable with whatever mode you would flowy to run in (you should ignore the phrase while setting the variable ).

  • Your current Desktop Environment can be found by running the command .

  • After this, one can just run flowy by running the command .

  • You can track flowy's status using the command .

Debian Package

  • This release has been deprecated.

Wallpapers directory

  • The wallpapers inside the directory must be named sequentially.
  • For example, if you have 11 wallpapers, the names must be .
  • It does not matter what the names of the files are as long as they are sequential.
  • Ensure that no matter which OS you are running flowy on, stick to quoted UNIX notation when providing the directory.

Solar - Sunrise and Sunset

  • Flowy can take into account your location's sunrise and sunset timings.
  • This option can be used by running and passing flowy the path to the wallpapers, latitiude, and longitude of your location.
  • Keep in mind that the wallpapers in the path must be segregated by adding or tags within the wallpaper names. This is done so that flowy knows which wallpapers to show during the day and which wallpapers to show during the night. The normal sequential numbering rules mentioned in the subsections still apply.
  • Example naming scheme - .
  • If you do not want to segregate, use flowy in the normal mode ().

Experimental

  • By default, flowy evenly sets the wallpaper change time based on the number of wallpapers there are. In case you would like to modify these times, it can be done so by editing the file found in the config directory. You need to comment the function call in and then build it after modifying the config file.

    The location of the config directory depends on your operating system:

    • ~/.config/flowy on Linux
    • C:\User\Alice\AppData\Roaming\flowy on Windows (Windows is not supported ATM)
    • /Users/Alice/Library/Preferences/flowy on macOS

Supported Environments

  • macOS - Apple Silicon and Intel based chips
  • GNOME Based - Ubuntu, Fedora, Pantheon
  • Linux Mint Cinnamon
  • Linux Mint MATE
  • Deepin
  • XFCE
  • KDE
  • BSPWM and i3 (with feh)
  • Windows 7/8/10/11

TODO

  • GUI
  • Match the stars given the location
  • Add support for other platforms, both UNIX and Windows.
  • Refactor OS related code to another file
Issues

Collection of the latest Issues

fuzzylogicltd

fuzzylogicltd

bug
Comment Icon1

I've set up Flowy to use systemd automation to swap out 16 of a set. These are Apple's Mojave wallpapers and this is the version I downoaded. I renamed them as required:

image

I set up the flowy.service file as so:

And it seems to work, for the most part. Except that when it's time to show NIGHT-14 it jumps to NIGHT-16. All others show up at their correct times. If I just run the actual command, this is what I get:

And these are indeed the times when it switches... except for 23:49 when it shows the wrong one. I'm not sure what happens after that as I go to sleep, but in the morning it's back to the proper order.

I am on Linux Mint 20.3 using Cinnamon. Any help to resolve this is apprecated.

Yeethaven

Yeethaven

Comment Icon2

Describe the bug When I try to install flowy using cargo install flowy, the build fails with the following output:

To Reproduce Steps to reproduce the behavior: Use cargo install flowy on Linux Mint 20.3 x86_64 Cinnamon

Expected behavior flowy should be downloaded and compiled by cargo.

Desktop (please complete the following information):

  • OS: Linux Mint 20.3 x86_64 Cinnamon
JonaLoeffler

JonaLoeffler

bug
Comment Icon1

When using flowy with the lake preset, no background image will be set and the background will be gray/black.

The lake preset files contain spaces, which always worked fine until recently. Removing the spaces from the files seems to resolve my issue.

Steps to reproduce the behavior:

  1. Run flowy with the lake preset
  2. The background image won't be updated
  3. Rename the files to not use spaces
  4. Restart flowy, a background image should now be set
  • OS: Manjaro i3
  • Flowy Version: 0.4.0

This might also be an issue related to feh? Possibly a new version?

MyIsaak

MyIsaak

Comment Icon0

Well sometimes due to Window's sleep feature, the running terminal program for flowy stops working. Would it be a service, then it won't be treated as an application and could perhaps be more resource efficient.

vineetred

vineetred

enhancement
Comment Icon15

Is your feature request related to a problem? Please describe. GUI that can allow user to setup Flowy

vineetred

vineetred

documentation
Comment Icon1

The current README.md file does an okay job of explaining flowy. However, there is not much logical flow and topics are not segregated well. Someone could take it up and edit the README.md file.

Versions

Find the latest versions by id

0.4.0 - Feb 16, 2021

Many bug fixes and added support for the new Apple Silicon M1 Macs.

0.3.2 - Jul 23, 2020

All the releases can be found here.

0.3.0 - Jul 11, 2020

Now supports Sunrise and Sunset times. Linux, macOS and Windows binaries can be found here.

v0.2.1 - Jul 08, 2020

0.2.0 - Jul 06, 2020

Debian, Linux and MacOS binaries found here.

v0.1.8 - Jul 04, 2020

Debian, Linux and MacOS binaries found here.

Information - Updated Jul 31, 2022

Stars: 263
Forks: 16
Issues: 7

Repositories & Extras

Microservices Status Page

Monitors a distributed infrastructure and sends alerts (Slack, SMS, etc

Microservices Status Page

Rust Playground for MacOS

status: experimental / pre-release / guaranteed buggy

Rust Playground for MacOS

A process viewer GUI in rust

It provides current status of your processes (cpu and memory usage) and your system (usage of every core and of your RAM, and the temperature...

A process viewer GUI in rust

A minimal command line text editor written in Rust

Development status: The cell editor project is something I made in my free

A minimal command line text editor written in Rust

blackhole is a server that responds to any request with http status code 200

For example, you can check what kind of request is notified by GitHub webhook from the access log

blackhole is a server that responds to any request with http status code 200

git-branch-status

A command line tool for displaying git branch colored by status, like zsh's

git-branch-status

Course link: Status: ✅*

Course link: Gitmoji for commit messages

Course link: Status: ✅*

Status: Work in Progress

You can see the Short Design Doc to get more info on the upcoming project

Status: Work in Progress

This simple tool grabs the cable status information from an Arris

By default this status page is served via HTTP at the cable modem's

This simple tool grabs the cable status information from an Arris

carlog is a simple, lightweight crate that provides Cargo logging style messages via the

Status struct or via multiple macros that recreate common cargo message formats:

carlog is a simple, lightweight crate that provides Cargo logging style messages via the
Facebook Instagram Twitter GitHub Dribbble
Privacy