Giter Club home page Giter Club logo

jolly's People

Contributors

0323pin avatar apgoetz avatar

Stargazers

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

Watchers

 avatar  avatar

jolly's Issues

MSRV?

Hi,

I've just packaged jolly for NetBSD, it works great locally on my machine.
A future wish, if you don't mind. It would be nice to be able to customize the background, foreground and highlight colors of the application :)

In order to merge the package, I need to ask you one thing.
NetBSD currently has Rust-1.64 as default. I'm running Rust-1.66 on my machine and have already been asked to revert a few package updates because they don't build with 1.64. So, what's the minimum required version to build jolly?

I've assigned myself as package maintainer so, I'll keep it up-to-date ;)
Regards and thank you for this tool.

Add support for icons

Hi,

I've been using jolly on my NetBSD system for a while now.
I'm happy with the current theme support, even though, you keep an issue open related to theming.

I've been wondering how much work would be required to add support for icons?

Regards

Add Theme Support

iced has built in support for theming widgets in it now. It would be good to stop hardcoding the colors of Jolly entries and allow customization of the theme.

onagre may be a good reference example on how to handle theming.

Originally mentioned in #6

Icons don't work on NetBSD without setting env var $XDG_DATA_DIRS

Support for icons in Jolly on Linux and BSD has been added recently in #20 . Unfortunately, this support does not work by default on NetBSD. This is because Jolly uses crates to implement icons that assume that icon themes and xdg-mime data is available in the standard XDG folders.

Jolly depends on the crates freedesktop-icons and xdg-mime to implement icon support for Freedesktop based platforms. These crates check the environment variable $XDG_DATA_DIRS to determine where to look for icons and mime types, but if this environment variable is not set, then they default to the official default value from the standard:

from freedesktop.org:

If $XDG_DATA_DIRS is either not set or empty, a value equal to /usr/local/share/:/usr/share/ should be used.

On most platforms, this works ok, because most platforms install icons and mime info in one of these folders, However NetBSD is special: it defaults to installing package files in /usr/pkg, which does not appear in the default XDG search path.

Therefore, it makes sense to add a way to specify additional folders to search with $XDG_DATA_DIRS, in case the default values specified by the standard are insufficient.

Ideally, the upstream packages that Jolly depends on would implement a way to specify "additional XDG_DATA_DIRS", and then Jolly could use these functions to inform the crates where to search.

Since that might take a while to implement, as a workaround, Jolly could modify the XDG_DATA_DIRS environment variable at startup, before calling into the supporting crates. We could use a build-time environment variable, for example, JOLLY_EXTRA_XDG_DATA_DIRS to configure this functionality.

Alternatively, we could have a config variable in jolly.toml that specifies additional paths to search. However, this requires users to add this to their config file whenever they need a different XDG search path, but the search path for icons and mime types is not likely to be changed, so it might make more sense to set it as a compile time option.

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.