ozwaldorf / carburetor

Carburetor - A functional and high contrast colorscheme inspired by IBM Carbon.
Creative Commons Zero v1.0 Universal
28 stars 1 forks source link

Add COSMIC theme #6

Open dacid44 opened 2 weeks ago

dacid44 commented 2 weeks ago

Would you be interested in a PR for a Carburetor theme for COSMIC DE? I'm working on building it right now, but I thought I'd ask since Cosmic is still pretty unstable, and so it might require some extra effort to keep it up to date. Otherwise, I'm happy to keep it on my fork.

ozwaldorf commented 2 weeks ago

Sure! Not sure your current approach, but it looks like there's already an upstream theme at catppuccin/cosmic-desktop

Would you be willing to write a nix package to generate the patched theme files, and potentially the home manager module to install it? It should be pretty easy to reuse the existing patching patterns since that theme doesn't support whiskers (ie, see pkgs/gtk.nix or pkgs/discord.nix)

dacid44 commented 2 weeks ago

Yeah, what I'm currently working on is building a whiskers template file for a cosmic theme. I've actually just finished that, and once I've tested it out, I'll probably submit it to both repos. The challenge with nix will be deciding where to put it, since COSMIC doesn't really have an "available themes" location. It has a standardized format for importing and exporting themes, but when you import a theme file, it breaks it up into pieces and (I think) applies some color modifications that aren't easy to replicate before saving it to its config.

ozwaldorf commented 2 weeks ago

That sounds great! For now then we can just have a build in nix using mkWhiskersDerivation on your repo, and if merged to catppuccin, we can switch it to upstream

As far as applying if that's the case, then just nix as a builder is fine and we'll commit the files like the other configs

dacid44 commented 2 weeks ago

Ok, I did some research and it looks like there is a way to programmatically apply a cosmic theme, but I don't think there are any existing programs that do it. I could possibly write a small Rust program to use libcosmic to programmatically apply the theme, but do you think it's worth the extra complexity over just leaving the theme at a predetermined place in the user's home directory?

Also, I think my PR to the catppuccin/cosmic-desktop repo will probably be merged soon, pending review. https://github.com/catppuccin/cosmic-desktop/pull/8

ozwaldorf commented 2 weeks ago

Ok, I did some research and it looks like there is a way to programmatically apply a cosmic theme, but I don't think there are any existing programs that do it. I could possibly write a small Rust program to use libcosmic to programmatically apply the theme, but do you think it's worth the extra complexity over just leaving the theme at a predetermined place in the user's home directory?

nice work thanks for looking into that! honestly it's up to you, I'm happy with just moving them to a common place for now, or even leaving it completely up to the user to install, either from the raw derivation, or from provided precompiled ones in the src directory. If there's a good way in the future to install the themes, we can add it