t-dantiau / Gradience

Change the look of GNOME, with ease
European Union Public License 1.2
7 stars 0 forks source link

Crash upon attempting to apply theme #1

Open ThatOneCalculator opened 1 month ago

ThatOneCalculator commented 1 month ago
$ gradience-cli -p ~/.config/presets/curated/rose-pine.json gtk
thread 'main' panicked at /home/kainoa/.cargo/registry/src/index.crates.io-6f17d22bba15001f/gradience-cli-0.1.0/src/main.rs:180:70:
called `Option::unwrap()` on a `None` value
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Contents of ~/.config/presets/curated/rose-pine.json:

{
    "name": "Ros\u00e9 Pine",
    "variables": {
        "accent_color": "#c4a7e7",
        "accent_bg_color": "#31748f",
        "accent_fg_color": "#e0def4",
        "destructive_color": "#ebbcba",
        "destructive_bg_color": "#eb6f92",
        "destructive_fg_color": "#e0def4",
        "success_color": "#9ccfd8",
        "success_bg_color": "#31748f",
        "success_fg_color": "#e0def4",
        "warning_color": "#f6c177",
        "warning_bg_color": "#f6c177",
        "warning_fg_color": "rgba(33, 32, 46, 0.8)",
        "error_color": "#ebbcba",
        "error_bg_color": "#ebbcba",
        "error_fg_color": "#e0def4",
        "window_bg_color": "#1f1d2e",
        "window_fg_color": "#e0def4",
        "view_bg_color": "#191724",
        "view_fg_color": "#e0def4",
        "headerbar_bg_color": "#26233a",
        "headerbar_fg_color": "#e0def4",
        "headerbar_border_color": "#e0def4",
        "headerbar_backdrop_color": "@window_bg_color",
        "headerbar_shade_color": "rgba(33, 32, 46, 0.4)",
        "card_bg_color": "#26233a",
        "card_fg_color": "#e0def4",
        "card_shade_color": "rgba(0, 0, 0, 0.36)",
        "dialog_bg_color": "#26233a",
        "dialog_fg_color": "#e0def4",
        "popover_bg_color": "#26233a",
        "popover_fg_color": "#e0def4",
        "shade_color": "#26233a",
        "scrollbar_outline_color": "rgba(33, 32, 46, 0.5)"
    },
    "palette": {
        "blue_": {
            "1": "#3e8fb0",
            "2": "#3e8fb0",
            "3": "#31748f",
            "4": "#31748f",
            "5": "#286983"
        },
        "green_": {
            "1": "#9ccfd8",
            "2": "#9ccfd8",
            "3": "#56949f",
            "4": "#56949f",
            "5": "#3a5f6f"
        },
        "yellow_": {
            "1": "#f6c177",
            "2": "#f6c177",
            "3": "#ea9d34",
            "4": "#ea9d34",
            "5": "#b3751e"
        },
        "orange_": {
            "1": "#ebbcba",
            "2": "#ea9a97",
            "3": "#d7827e",
            "4": "#d7827e",
            "5": "#CF6863"
        },
        "red_": {
            "1": "#eb6f92",
            "2": "#eb6f92",
            "3": "#b4637a",
            "4": "#b4637a",
            "5": "#8f4d5e"
        },
        "purple_": {
            "1": "#c4a7e7",
            "2": "#c4a7e7",
            "3": "#907aa9",
            "4": "#907aa9",
            "5": "#6e5c7a"
        },
        "brown_": {
            "1": "#908caa",
            "2": "#797593",
            "3": "#797593",
            "4": "#6e6a86",
            "5": "#6e6a86"
        },
        "light_": {
            "1": "#e0def4",
            "2": "#e0def4",
            "3": "#575279",
            "4": "#575279",
            "5": "#4e4a67"
        },
        "dark_": {
            "1": "#1f1d2e",
            "2": "#2a273f",
            "3": "#fffaf3",
            "4": "#fffaf3",
            "5": "#fffaf3"
        }
    },
    "custom_css": {
        "gtk4": "decoration {\n  box-shadow: 0 3px 12px 1px rgba(0, 0, 0, 0.7), 0 0 0 1px shade(@headerbar_bg_color,1.3);\n}\n\ndecoration:backdrop {\n  box-shadow: 0 3px 12px 1px transparent, 0 2px 6px 2px rgba(0, 0, 0, 0.4), 0 0 0 1px shade(@headerbar_bg_color,1.1);\n}\n\n.tiled decoration, .tiled-top decoration, .tiled-bottom decoration, .tiled-right decoration, .tiled-left decoration {\n  box-shadow: 0 0 0 1px shade(@headerbar_bg_color,1.1), 0 0 0 20px transparent;\n}\n\nmessagedialog.csd decoration, .csd.popup decoration, .maximized .csd.popup decoration {\n  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.8), 0 0 0 1px alpha(shade(@headerbar_bg_color,1.3),0.9);\n}\n\n.maximized .csd.popup decoration {\n  border-radius: 6px;\n}\n\n.maximized decoration, .fullscreen decoration {\n  border-radius: 0;\n  box-shadow: none;\n}\n\n.ssd decoration {\n  box-shadow: 0 0 0 1px shade(@headerbar_bg_color,1.3);\n}\n\n.ssd decoration:backdrop {\n  box-shadow: 0 0 0 1px shade(@headerbar_bg_color,1.1);\n}\n\n.ssd.maximized decoration, .ssd.maximized decoration:backdrop {\n  box-shadow: none;\n}\n\n.solid-csd decoration {\n  box-shadow: inset 0 0 0 5px alpha(currentColor,0.5), inset 0 0 0 4px @headerbar_bg_color, inset 0 0 0 1px alpha(currentColor,0.5);\n}\n\n.solid-csd decoration:backdrop {\n  box-shadow: inset 0 0 0 3px @window_bg_color;\n}\n\n.titlebar, headerbar {\n  border-bottom-color: alpha(currentColor,0.15);\n}\n\n.titlebar:backdrop, headerbar:backdrop {\n  border-bottom-color: alpha(currentColor,0.2);\n}\n\nbutton.titlebutton,\nwindowcontrols > button {\n  color: transparent;\n  min-width: 18px;\n  min-height: 18px;\n}\n\nbutton.titlebutton:backdrop {\n  opacity: 0.5;\n}\n\nwindowcontrols > button {\n  border-radius: 100%;\n  padding: 0;\n  margin: 0 5px;\n}\n\nwindowcontrols > button > image {\n  padding: 0;\n}\n\nbutton.titlebutton.close, button.titlebutton.close:hover:backdrop,\nwindowcontrols > button.close,\nwindowcontrols > button.close:hover:backdrop {\n  background-color: #eb6f92;\n}\n\nbutton.titlebutton.close:hover,\nwindowcontrols > button.close:hover {\n  background-color: shade(#eb6f92,1.3);\n}\n\nbutton.titlebutton.maximize, button.titlebutton.maximize:hover:backdrop,\nwindowcontrols > button.maximize,\nwindowcontrols > button.maximize:hover:backdrop {\n  background-color: #9ccfd8;\n}\n\nbutton.titlebutton.maximize:hover,\nwindowcontrols > button.maximize:hover {\n  background-color: shade(#9ccfd8,1.3);\n}\n\nbutton.titlebutton.minimize, button.titlebutton.minimize:hover:backdrop,\nwindowcontrols > button.minimize,\nwindowcontrols > button.minimize:hover:backdrop {\n  background-color: #f6c177;\n}\n\nbutton.titlebutton.minimize:hover,\nwindowcontrols > button.minimize:hover {\n  background-color: shade(#f6c177,1.3);\n}\n\nbutton.titlebutton.close:backdrop, button.titlebutton.maximize:backdrop, button.titlebutton.minimize:backdrop,\nwindowcontrols > button.close:backdrop,\nwindowcontrols > button.n.close:active, button.titlebutton.maximize:active, button.titlebutton.minimize:active,\nwindowcontrols > button.close:active,\nwindowcontrols > button.maximize:active,\nwindowcontrols > button.minimize:active {\n  box-shadow: inset 0 0 0 3px rgba(0, 0, 0, 0.3);\n}\n\nnotebook > header tab:not(:backdrop):checked.reorderable-page,\ntabbar tab:not(:backdrop):checked {\n  background-color: @headerbar_bg_color;\n}\n\n.nautilus-window .sidebar {\n  background-color: @view_bg_color;\n}\n\n.nautilus-window .sidebar:backdrop {\n  background-color: @window_bg_color;\n}",
        "gtk3": "decoration {\n  box-shadow: 0 3px 12px 1px rgba(0, 0, 0, 0.7), 0 0 0 1px shade(@headerbar_bg_color,1.3);\n}\n\ndecoration:backdrop {\n  box-shadow: 0 3px 12px 1px transparent, 0 2px 6px 2px rgba(0, 0, 0, 0.4), 0 0 0 1px shade(@headerbar_bg_color,1.1);\n}\n\n.tiled decoration, .tiled-top decoration, .tiled-bottom decoration, .tiled-right decoration, .tiled-left decoration {\n  box-shadow: 0 0 0 1px shade(@headerbar_bg_color,1.1), 0 0 0 20px transparent;\n}\n\nmessagedialog.csd decoration, .csd.popup decoration, .maximized .csd.popup decoration {\n  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.8), 0 0 0 1px alpha(shade(@headerbar_bg_color,1.3),0.9);\n}\n\n.maximized .csd.popup decoration {\n  border-radius: 6px;\n}\n\n.maximized decoration, .fullscreen decoration {\n  border-radius: 0;\n  box-shadow: none;\n}\n\n.ssd decoration {\n  box-shadow: 0 0 0 1px shade(@headerbar_bg_color,1.3);\n}\n\n.ssd decoration:backdrop {\n  box-shadow: 0 0 0 1px shade(@headerbar_bg_color,1.1);\n}\n\n.ssd.maximized decoration, .ssd.maximized decoration:backdrop {\n  box-shadow: none;\n}\n\n.solid-csd decoration {\n  box-shadow: inset 0 0 0 5px alpha(currentColor,0.5), inset 0 0 0 4px @headerbar_bg_color, inset 0 0 0 1px alpha(currentColor,0.5);\n}\n\n.solid-csd decoration:backdrop {\n  box-shadow: inset 0 0 0 3px @window_bg_color;\n}\n\n.titlebar, headerbar {\n  border-bottom-color: alpha(currentColor,0.15);\n}\n\n.titlebar:backdrop, headerbar:backdrop {\n  border-bottom-color: alpha(currentColor,0.2);\n}\n\nbutton.titlebutton,\nwindowcontrols > button {\n  color: transparent;\n  min-width: 18px;\n  min-height: 18px;\n}\n\nbutton.titlebutton:backdrop {\n  opacity: 0.5;\n}\n\nwindowcontrols > button {\n  border-radius: 100%;\n  padding: 0;\n  margin: 0 5px;\n}\n\nwindowcontrols > button > image {\n  padding: 0;\n}\n\nbutton.titlebutton.close, button.titlebutton.close:hover:backdrop,\nwindowcontrols > button.close,\nwindowcontrols > button.close:hover:backdrop {\n  background-color: #eb6f92;\n}\n\nbutton.titlebutton.close:hover,\nwindowcontrols > button.close:hover {\n  background-color: shade(#eb6f92,1.3);\n}\n\nbutton.titlebutton.maximize, button.titlebutton.maximize:hover:backdrop,\nwindowcontrols > button.maximize,\nwindowcontrols > button.maximize:hover:backdrop {\n  background-color: #9ccfd8;\n}\n\nbutton.titlebutton.maximize:hover,\nwindowcontrols > button.maximize:hover {\n  background-color: shade(#9ccfd8,1.3);\n}\n\nbutton.titlebutton.minimize, button.titlebutton.minimize:hover:backdrop,\nwindowcontrols > button.minimize,\nwindowcontrols > button.minimize:hover:backdrop {\n  background-color: #f6c177;\n}\n\nbutton.titlebutton.minimize:hover,\nwindowcontrols > button.minimize:hover {\n  background-color: shade(#f6c177,1.3);\n}\n\nbutton.titlebutton.close:backdrop, button.titlebutton.maximize:backdrop, button.titlebutton.minimize:backdrop,\nwindowcontrols > button.close:backdrop,\nwindowcontrols > button.maximize:backdrop,\nwindowcontrols > button.minimize:backdrop {\n  background-color: #6e6a86;\n}\n\nbutton.titlebutton.close:active, button.titlebutton.maximize:active, button.titlebutton.minimize:active,\nwindowcontrols > button.close:active,\nwindowcontrols > button.maximize:active,\nwindowcontrols > button.minimize:active {\n  box-shadow: inset 0 0 0 3px rgba(0, 0, 0, 0.3);\n}\n\nnotebook > header tab:not(:backdrop):checked.reorderable-page,\ntabbar tab:not(:backdrop):checked {\n  background-color: @headerbar_bg_color;\n}\n\n.nautilus-window .sidebar {\n  background-color: @view_bg_color;\n}\n\n.nautilus-window .sidebar:backdrop {\n  background-color: @window_bg_color;\n}"
    }
}
t-dantiau commented 1 month ago

Thanks for reporting the issue, the compatibility with the old format needs some improvements!

ThatOneCalculator commented 1 month ago

Hmm... even with what I think should work for the new theme, it crashes:

$ gradience-cli -p ./store/rose_pine_new.json gtk
thread 'main' panicked at /home/kainoa/.cargo/registry/src/index.crates.io-6f17d22bba15001f/gradience-cli-0.1.0/src/main.rs:180:70:
called `Option::unwrap()` on a `None` value
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
$ cat ./store/rose_pine_new.json
{"name":"Rosé Pine New","version":"0.0.1","author":{"name":"ThatOneCalculator","email":"","url":"https://t1c.dev"},"description":"","supported":{"gnome":">46","adw":">1.5","gtk":">3.24","mode":["light","dark"],"accents":["blue","green","red","yellow","purple","pink","orange","slate","teal"]},"license":"GPL3","variables":{"accent_color":"#c4a7e7","accent_bg_color":"#31748f","accent_fg_color":"#e0def4","destructive_color":"#ebbcba","destructive_bg_color":"#eb6f92","destructive_fg_color":"#e0def4","success_color":"#9ccfd8","success_bg_color":"#31748f","success_fg_color":"#e0def4","warning_color":"#f6c177","warning_bg_color":"#f6c177","warning_fg_color":"rgba(33, 32, 46, 0.8)","error_color":"#ebbcba","error_bg_color":"#ebbcba","error_fg_color":"#e0def4","window_bg_color":"#1f1d2e","window_fg_color":"#e0def4","view_bg_color":"#191724","view_fg_color":"#e0def4","headerbar_bg_color":"#26233a","headerbar_fg_color":"#e0def4","headerbar_border_color":"#e0def4","headerbar_backdrop_color":"@window_bg_color","headerbar_shade_color":"rgba(33, 32, 46, 0.4)","headerbar_darker_shade_color":{"light":"rgba(0, 0, 0, 0.12)","dark":"rgba(0, 0, 0, 0.9)"},"card_bg_color":"#26233a","card_fg_color":"#e0def4","card_shade_color":"rgba(0, 0, 0, 0.36)","dialog_bg_color":"#26233a","dialog_fg_color":"#e0def4","popover_bg_color":"#26233a","popover_fg_color":"#e0def4","popover_shade_color":{"light":"rgba(0, 0, 0, 0.07)","dark":"rgba(0, 0, 0, 0.36)"},"shade_color":"#26233a","scrollbar_outline_color":"rgba(33, 32, 46, 0.5)","thumbnail_bg_color":{"light":"#ffffff","dark":"#383838"},"thumbnail_fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"},"sidebar_bg_color":{"light":"#ebebeb","dark":"#303030"},"sidebar_fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"},"sidebar_backdrop_color":{"light":"#f2f2f2","dark":"#2a2a2a"},"sidebar_shade_color":{"light":"rgba(0, 0, 0, 0.07)","dark":"rgba(0, 0, 0, 0.36)"},"secondary_sidebar_bg_color":{"light":"#f3f3f3","dark":"#2a2a2a"},"secondary_sidebar_fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"},"secondary_sidebar_backdrop_color":{"light":"#f6f6f6","dark":"#272727"},"secondary_sidebar_shade_color":{"light":"rgba(0, 0, 0, 0.07)","dark":"rgba(0, 0, 0, 0.36)"}},"palette":{"blue":{"3":"#31748f","4":"#31748f","1":"#3e8fb0","2":"#3e8fb0","5":"#286983"},"green":{"1":"#9ccfd8","5":"#3a5f6f","2":"#9ccfd8","3":"#56949f","4":"#56949f"},"yellow":{"3":"#ea9d34","1":"#f6c177","4":"#ea9d34","5":"#b3751e","2":"#f6c177"},"orange":{"3":"#d7827e","4":"#d7827e","1":"#ebbcba","5":"#CF6863","2":"#ea9a97"},"red":{"2":"#eb6f92","5":"#8f4d5e","4":"#b4637a","3":"#b4637a","1":"#eb6f92"},"purple":{"3":"#907aa9","5":"#6e5c7a","1":"#c4a7e7","4":"#907aa9","2":"#c4a7e7"},"brown":{"5":"#6e6a86","4":"#6e6a86","2":"#797593","1":"#908caa","3":"#797593"},"light":{"1":"#e0def4","3":"#575279","4":"#575279","2":"#e0def4","5":"#4e4a67"},"dark":{"4":"#fffaf3","1":"#1f1d2e","2":"#2a273f","3":"#fffaf3","5":"#fffaf3"}},"custom":{"gtk4":"","gtk3":"","shell":""},"shell":{"bg_color":{"light":"#ffffff","dark":"#1e1e1e"},"fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"},"system_bg_color":{"light":"#fafafa","dark":"#242424"},"selected_bg_color":{"light":"#3584e4","dark":"#78aeed"},"selected_fg_color":{"light":"#ffffff","dark":"#ffffff"},"panel_bg_color":{"light":"#f2f2f2","dark":"#2a2a2a"},"osd_bg_color":{"light":"#f2f2f2","dark":"#2a2a2a"},"osd_fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"},"system_fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"},"panel_fg_color":{"light":"rgba(0, 0, 0, 0.8)","dark":"#ffffff"}}}
t-dantiau commented 1 month ago

Okay, tried myself and it's working... It wasn't working for you because you misused the tool, the preset argument isn't a path but the name inside the preset. For me, gradience-cli -p 'Rosé Pine New' is working perfectly! If it's still not working, try to check that --store is set to the store directory!

ThatOneCalculator commented 1 month ago

I tried that, but now all my gtk apps are just the default dark gray :(

ThatOneCalculator commented 1 month ago

Upon checking it in the old gradience app, it seems that the theme has a lot of errors?

image

t-dantiau commented 1 month ago

oh oh oh.... gonna check, here is a real issue lol!

t-dantiau commented 1 month ago

got it, missed ; at the end of the lines .... :(

ThatOneCalculator commented 1 month ago

Wait, which lines? (If you have a fixed version of the theme I'd love to try it lol)

t-dantiau commented 1 month ago
* Preset: Rosé Pine New@0.0.1 light/blue */
@define-color accent_color #c4a7e7;
@define-color accent_bg_color #31748f;
@define-color accent_fg_color #e0def4;
@define-color destructive_color #ebbcba;
@define-color destructive_bg_color #eb6f92;
@define-color destructive_fg_color #e0def4;
@define-color success_color #9ccfd8;
@define-color success_bg_color #31748f;
@define-color success_fg_color #e0def4;
@define-color warning_color #f6c177;
@define-color warning_bg_color #f6c177;
@define-color warning_fg_color rgba(33, 32, 46, 0.8);
@define-color error_color #ebbcba;
@define-color error_bg_color #ebbcba;
@define-color error_fg_color #e0def4;
@define-color window_bg_color #1f1d2e;
@define-color window_fg_color #e0def4;
@define-color view_bg_color #191724;
@define-color view_fg_color #e0def4;
@define-color headerbar_bg_color #26233a;
@define-color headerbar_fg_color #e0def4;
@define-color headerbar_border_color #e0def4;
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color rgba(33, 32, 46, 0.4);
@define-color headerbar_darker_shade_color rgba(0, 0, 0, 0.12);
@define-color card_bg_color #26233a;
@define-color card_fg_color #e0def4;
@define-color card_shade_color rgba(0, 0, 0, 0.36);
@define-color dialog_bg_color #26233a;
@define-color dialog_fg_color #e0def4;
@define-color popover_bg_color #26233a;
@define-color popover_fg_color #e0def4;
@define-color popover_shade_color rgba(0, 0, 0, 0.07);
@define-color shade_color #26233a;
@define-color scrollbar_outline_color rgba(33, 32, 46, 0.5);
@define-color thumbnail_bg_color #ffffff;
@define-color thumbnail_fg_color rgba(0, 0, 0, 0.8);
@define-color sidebar_bg_color #ebebeb;
@define-color sidebar_fg_color rgba(0, 0, 0, 0.8);
@define-color sidebar_backdrop_color #f2f2f2;
@define-color sidebar_shade_color rgba(0, 0, 0, 0.07);
@define-color secondary_sidebar_bg_color #f3f3f3;
@define-color secondary_sidebar_fg_color rgba(0, 0, 0, 0.8);
@define-color secondary_sidebar_backdrop_color #f6f6f6;
@define-color blue_3 #31748f;
@define-color blue_4 #31748f;
@define-color blue_1 #3e8fb0;
@define-color blue_5 #286983;
@define-color blue_2 #3e8fb0;
@define-color green_5 #3a5f6f;
@define-color green_2 #9ccfd8;
@define-color green_1 #9ccfd8;
@define-color green_3 #56949f;
@define-color green_4 #56949f;
@define-color yellow_3 #ea9d34;
@define-color yellow_5 #b3751e;
@define-color yellow_2 #f6c177;
@define-color yellow_1 #f6c177;
@define-color yellow_4 #ea9d34;
@define-color orange_5 #CF6863;
@define-color orange_2 #ea9a97;
@define-color orange_1 #ebbcba;
@define-color orange_4 #d7827e;
@define-color orange_3 #d7827e;
@define-color red_5 #8f4d5e;
@define-color red_3 #b4637a;
@define-color red_4 #b4637a;
@define-color red_1 #eb6f92;
@define-color red_2 #eb6f92;
@define-color purple_5 #6e5c7a;
@define-color purple_1 #c4a7e7;
@define-color purple_3 #907aa9;
@define-color purple_4 #907aa9;
@define-color purple_2 #c4a7e7;
@define-color brown_3 #797593;
@define-color brown_2 #797593;
@define-color brown_1 #908caa;
@define-color brown_5 #6e6a86;
@define-color brown_4 #6e6a86;
@define-color light_2 #e0def4;
@define-color light_1 #e0def4;
@define-color light_5 #4e4a67;
@define-color light_4 #575279;
@define-color light_3 #575279;
@define-color dark_5 #fffaf3;
@define-color dark_3 #fffaf3;
@define-color dark_4 #fffaf3;
@define-color dark_2 #2a273f;
@define-color dark_1 #1f1d2e
ThatOneCalculator commented 1 month ago

Wait, what file type am I supposed to save that as? Doesn't look like json lol

t-dantiau commented 1 month ago

Use latest version from GitHub actions and then run

gradience-cli --preset 'Rosé Pine New' --mode dark shell --gsettings

you must have put your preset in a directory store, and run gradience cli from the directory containing store