Giter Club home page Giter Club logo

cosmic-bg's Introduction

cosmic-bg

COSMIC session service which applies backgrounds to displays. Supports the following features:

  • Supports common image formats supported by image-rs
  • 8 and 10-bit background surface layers
  • Use of colors and gradients for backgrounds
  • Per-display background application
  • Wallpaper slideshows that alternate between backgrounds periodically

Dependencies

Developers should install Rust from from https://rustup.rs/.

  • just
  • cargo / rustc
  • libwayland-dev
  • libxkbcommon-dev
  • mold
  • pkg-config

Install

A release build can be generated by running just, and then installed with sudo just install.

If packaging, use the rootdir variable to change the root path, in addition to the prefix: just rootdir=debian/cosmic-bg prefix=/usr install.

To reduce compile times across COSMIC applications, either use sccache, or set CARGO_TARGET_DIR to a shared path and install with sudo -E just install.

Debugging

To get debug logs from the service, first kill the cosmic-bg process a few times in a row to prevent it from being launched by cosmic-session. Then launch it with just run to display backtraces and debug logs in the terminal.

License

Licensed under the Mozilla Public License Version 2.0.

Contribution

Any contribution intentionally submitted for inclusion in the work by you shall be licensed under the Mozilla Public License Version 2.0 (MPL-2.0). Each source file should have a SPDX copyright notice at the top of the file:

// SPDX-License-Identifier: MPL-2.0

cosmic-bg's People

Contributors

13r0ck avatar ahoneybun avatar drakulix avatar ids1024 avatar jackpot51 avatar mmstick avatar soloturn avatar wash2 avatar wsx-udscbt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cosmic-bg's Issues

[Suggestion/Feature] Support Wallpaper Engine wallpapers

First and foremost, I would like to thank the System 76/Pop!_OS team for their great distro and user experience, and to state that Iā€™m eagerly awaiting the release of this awesome new DE. That said, I would like to leave here a suggestion that I believe would make the new DE even more awesome.

It would be cool If cosmic-bg supported wallpapers from Wallpaper Engine and the like, there already are some projects that bring wallpaper engine support into Linux, namely Wallpaper Engine for Kde KDE plugin and linux-wallpaperengine.

I do understand that if this feature is ever adopted It would probably be long after the release of Cosmic.

Default configuration doesn't show any wallpaper

The cosmic-bg package doesn't install a configuration file, and it prints Config file error, falling back to defaults: Failed to get find config file (it probably shouldn't show an "error" if it's expected to not have a config on default installs).

It looks like the default uses CosmicBgImgSource::Wallpapers, but $HOME/Pictures/Wallpapers doesn't exist or have wallpapers by default.

I guess this is configuration is really a placeholder until we establish how wallpaper configuration should work, but in any case it should something from /usr/share/backgrounds/pop.

Add "span" option to wallpaper setting in the settings app

This is a missing feature in Linux as a whole, and I was only able to find one app that does it and it barely works. This should be an option in the settings when setting up a wallpaper that has the resolution to span across two monitors (given one has two monitors).

Webpage file as wallpaper.

Hello.
I think that's the correct place for that feature request, but if not then I am sorry. I'm just getting familiar with pop_os before next release comes out.

Wallpaper Engine allows users to set videos and webpages as their desktop wallpaper, but it unfortunately only works on Windows (with plans to support Steam Deck's KDE Plasma). It would be nice to have a support in pop_os for setting a webpage file as wallpaper since it allows for easy customization of some animations that can make the desktop look prettier.

[Feature Request] Change wallpaper on Login/Startup

I've only seen this feature on macOS and nowhere else.

The Issue

When setting the user's wallpaper to a directory of images, the only option Pop!_OS 22.04 (and every other Ubuntu-derivative) has for cycling the next wallpaper is via a timer. After the timer is up, the wallpaper is changed. But what if I want to set other triggers for a wallpaper to change?

Request

I'd really like an option in the Wallpapers settings to cycle to a new wallpaper on Login/Startup, so when I turn my computer on, I'm greeted with the "wallpaper of the day," so to speak. Additional settings could be added in, such as On Wake from Suspend. In these cases, the user wouldn't see the change happen, the wallpaper would be chosen and loaded before the desktop environment is displayed.

Suggestion: store the last shown picture in Alphabetical mode

After each restart the first photo (alphabetically) is set as the wallpaper. This means if you have a large repository of wallpapers, you'd never see the last photos but see the first ones every time.

I suggest the name of the last shown picture be saved and used to resume after each restart.

[Suggestion/Feature] Support video formats as wallpaper

First and foremost, I would like to thank the System 76/Pop!_OS team for their great distro and user experience, and to state that Iā€™m eagerly awaiting the release of this awesome new DE.

That said, I would like to leave here a suggestion that I believe would make the new DE even more awesome. It would be cool If we could select a videos as wallpapers (one for each screen), so we could have Live wallpapers in the vain of projects like the ones linked below.

I do understand that if this feature is ever adopted It would probably be long after the release of Cosmic.

Hidamari: https://github.com/jeffshee/hidamari
Flatpak package that gives the ability of setting a video as wallppaper

Hanabi: https://github.com/jeffshee/gnome-ext-hanabi
Gnome extension that provides the same functionality of Hidamari, but with better Gnome support.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    šŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. šŸ“ŠšŸ“ˆšŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ā¤ļø Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.