{...}: { home-manager.users.joy.programs.firefox = { enable = true; profiles.joy = { userChrome = '' /*================== Gruvbox Theme for Firefox ================== Author: kmason Based on the color scheme of calvinchd's Gruvbox Dark Firefox Theme - https://gitlab.com/calvinchd/gruvbox-dark-firefox-theme */ @namespace xul "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; :root { --background: #1d2021; --secondary: #282828; --foreground: #EBDBB2; --orange-highlight: #fe8019; --sound-border: #68217A; --separator: #665e54; --toolbar-bgcolor: var(--secondary) !important; --tab: var(--background); --tab-btn: var(--tab-inactive); --tab-inactive: var(--secondary); --tab-btn-inactive: var(--tab-inactive); --tab-hover: #32302f; --tab-btn-hover: #3C3836; --toolbar-btn-hover: #49463f; --url-bar: #3C3836; --url-focus: #504945; --url-bar-item-hover: #6a6257; --sidebar: #3C3836; --sidebar-button-hover: #5A544B; --sidebar-highlight: #458588; } /* SEARCH AND POPUPS/MENUS */ .panel-arrowcontainer { background-color: var(--secondary) !important; } #PopupAutoComplete, #PopupSearchAutoComplete { background-color: var(--url-focus) !important; color: var(--foreground) !important; } panelview { background-color: var(--sidebar) !important; color: var(--foreground) !important; } panelview toolbarbutton.subviewbutton:hover { background-color: var(--sidebar-button-hover) !important; } panel[type="autocomplete-richlistbox"] { --panel-background: none !important; border-radius: 4px !important; color: var(--foreground) !important; } /* _____ ___ ___ _ ___ _ ___ |_ _/ _ \ / _ \| | | _ ) / \ | _ \ | || (_) | (_) | |__| _ \/ = \| / |_| \___/ \___/|____|___/_/ \_\_|\_\ */ toolbarseparator, menuseparator { border-color: var(--separator) !important; border-image: none !important; } toolbar { background-color: var(--secondary); } toolbar#TabsToolbar { background-color: var(--background); } toolbar#TabsToolbar:-moz-window-inactive { background-color: var(--toolbar-bgcolor) !important; } #titlebar, #titlebar-spacer, #titlebar-buttonbox-container { background-color: var(--background) !important; border: none !important; } #navigator-toolbox { --tabs-border-color: var(--orange-highlight) !important; } /* Remove border under navbar */ #navigator-toolbox::after { border-bottom: 0px !important; } /* remove some borders */ #navigator-toolbox { border: none !important; } /* _ _ ___ _ ___ _ ___ | | | | _ \| | | _ ) / \ | _ \ | |_| | /| |__| _ \/ = \| / \___/|_|\_\____|___/_/ \_\_|\_\ */ #urlbar, #searchbar { box-shadow: none !important; border: none !important; border-radius: 4px; color : var(--foreground) !important; background-color: var(--url-bar) !important; --autocomplete-popup-separator-color: var(--separator) !important; } #urlbar-input, #urlbar-input-container { color: var(--foreground) !important; background-color: var(--url-bar) !important; } #urlbar:not([open]) #urlbar-input-container:focus-within, #searchbar:focus-within { border: 2px solid var(--orange-highlight) !important; } #urlbar:focus-within, #urlbar[open], #urlbar[open] #urlbar-input-container, #urlbar[open] #urlbar-input, #urlbar-input-container:focus-within, #urlbar-input:focus, #urlbar-background, .urlbarView, #searchbar:focus-within, menupop { background-color: var(--url-focus) !important; } #searchbar:focus-within { outline: none !important; } :is(panel, menupopup)::part(content) { background: none !important; } .urlbarView button:hover, #searchbar button:hover, .urlbarView-row:hover .urlbarView-row-inner, .search-autocomplete-richlistbox-popup .autocomplete-richlistitem:hover { background-color: var(--url-bar-item-hover) !important; } .urlbarView-row[type="switchtab"] > span{ color: var(--orange-highlight) !important; } #PopupSearchAutoComplete .autocomplete-richlistitem[selected], .searchbar-engine-one-off-item[selected], .urlbarView-row[selected], .urlbarView-row[aria-selected="true"], .urlbarView-row:not([type="tip"], [type="dynamic"])[selected] > .urlbarView-row-inner, .urlbarView-row-inner[selected] { color: var(--foreground) !important; background-color: var(--sidebar-highlight) !important; border-radius: 4px !important; } /* BOOKMARKS BAR */ #PersonalToolbar { background-color: var(--secondary) !important; } /* _____ _ ___ ___ |_ _/ \ | _ ) __| | |/ = \| _ \__ \ |_/_/ \_\___/___/ */ .tab-background[selected="true"] { background-color: transparent !important; background-image: none !important; } .tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected="true"]):not([multiselected]){ background-color: transparent !important; } .tabbrowser-tab[soundplaying="true"] { --lwt-tab-line-color: var(--sound-border) !important; } .tab-content[selected="true"] { border-color: var(--orange-highlight) !important; --sound-border: var(--orange-highlight) !important; } .tab-text { color: var(--foreground); } tab, #tabbrowser-tabs { background-color: var(--background) !important; color : var(--foreground) !important; } tab:-moz-window-inactive, #tabbrowser-tabs:-moz-window-inactive, #nav-bar-customization-target { background-color: var(--secondary) !important; } .tabbrowser-tab[selected]{ opacity: 1; } .tab-loading-burst { background-color: inherit; } .tab-content { border-radius: 4px; margin: 5px 0px 5px 0px !important; border: 1px solid transparent !important; } .tab-content[selected="true"] { background-color: var(--secondary) !important; color : var(--foreground) !important; border: 1px solid var(--orange-highlight) !important; } .tab-content:not([selected="true"]):hover { background-color: var(--tab-hover) !important; } /* ___ _____ ___ _ ___ | _ )_ _| \| |/ __| | _ \ | | | |\ | |\__ \ |___/ |_| |_| \__|/___/ */ /* Toolbar buttons */ toolbarbutton { fill: var(--foreground) !important; background-color: transparent !important; } /* TAB BAR BUTTONS */ #TabsToolbar toolbarbutton { border-radius: 4px; border: 1px solid transparent !important; } #TabsToolbar toolbarbutton:-moz-window-inactive { opacity: 0.7 !important; } #alltabs-button > .toolbarbutton-badge-stack, #tabs-newtab-button > .toolbarbutton-icon { background-image: none; border-radius: 6px; } #alltabs-button:hover > .toolbarbutton-badge-stack, #tabs-newtab-button:hover > .toolbarbutton-icon { background-color: var(--tab-btn-hover) !important; } /* Firefox View button */ #TabsToolbar #firefox-view-button > .toolbarbutton-icon { background-image: none !important; border-radius: 4px; } #TabsToolbar #firefox-view-button[open] > .toolbarbutton-icon { background-color: var(--secondary) !important; color : var(--foreground) !important; padding: 9px !important; border: 1px solid var(--orange-highlight) !important; } #TabsToolbar #firefox-view-button:not([open]):hover > .toolbarbutton-icon { background-color: var(--tab-hover) !important; } /* MIDDLE BAR (url bar) BUTTONS */ #nav-bar toolbarbutton > .toolbarbutton-icon, #nav-bar toolbarbutton > .toolbarbutton-badge-stack { border-radius: 6px; } #nav-bar toolbarbutton:hover > .toolbarbutton-icon, #nav-bar toolbarbutton:hover > .toolbarbutton-badge-stack { background-color: var(--toolbar-btn-hover) !important; } #back-button { padding-right: 2px !important; padding-left: 2px !important; margin-left: 6px !important; } /* Hamburger Menu */ #PanelUI-menu-button { background-color: var(--secondary) !important; padding-right: 2px !important; margin-right: 6px !important; } /* BOOKMARK BUTTONS */ #PersonalToolbar toolbarbutton { margin: 3px 0px 3px 3px !important; border-radius: 4px; } #PersonalToolbar toolbarbutton:hover { background-color: var(--toolbar-btn-hover) !important; } ''; userContent = '' :root { --background: #1d2021; --secondary: #282828; --newtab-body: #32302f; --foreground: #EBDBB2; } @-moz-document url-prefix("about:"), url-prefix("about:newtab"), url-prefix("about:home") { html, body { color: var(--foreground) !important; background-color: var(--newtab-body) !important; } } ''; }; }; }