I just want to know from you how you (or how you would) pass options to packages you develop with flakes.
I am currently writing a widget bar using Astal and then import the flake in my NixOS flake and use the package.default output in home.packages. I’d like to also style this bar according to my Stylix theme, how do you do something like this?
Your understanding is correct, you have to read that file (
~/.config/astal/scss/thmees/astel.css
) from your app somehow. I’m just guessing that@import
might be compile-time, in which case you’ll have to do it some other way, by reading this file at runtime and using it to configure the colors. If@import
is runtime itself, perhaps you need to pass the entire path instead of using~
, like@import "/home/mobsenpai/.config/astal/scss/themes/astel.scss"
or something.I don’t think there is a way to give the config during runtime or while calling the binary of the app, I will keep trying something, one thing I think that may help is creating that file during the build process, but I just don’t have enough knowledge to do that.
This is certainly an option, but I would only use it as a last resort as it means recompiling the project every time you want to change the theme. It’s quite easily done though, you can use
overrideAttrs
on the package in your home-manager module to pass in the desired colors.I am seeing this repo: https://github.com/Jas-SinghFSU/HyprPanel/blob/master/nix/module.nix
this uses astal to create the said interface but is also configuring the settings like how I want, except it uses json and ts for it where I have scss and lua, otherwise I just can’t wrap my head around how i can translate it to my needs. Maybe I don’t need to edit the files in the build, I could just edit or update the astel.scss using nix as well like how its done there using builtins and other functions, can you help me here, if you’ve got time.
I don’t know anything about astal, and not much about lua, so I’m afraid I can’t help you here.
Its alright! I am kinda trying to figure it out myself. But thankyou for the initial push