diff --git a/firefox/default.nix b/firefox/default.nix deleted file mode 100644 index 7be743f..0000000 --- a/firefox/default.nix +++ /dev/null @@ -1,180 +0,0 @@ -{ - inputs, - username, - domain, - ... -}: let - userChrome = builtins.readFile (./. + "/userChrome"); -in { - programs.firefox = { - enable = true; - profiles.${username} = { - userChrome = userChrome; - extensions = with inputs.firefox-addons.packages."x86_64-linux"; [ - ublock-origin - darkreader - libredirect - search-by-image - terms-of-service-didnt-read - istilldontcareaboutcookies - decentraleyes - mtab - ]; - search.engines = { - "4get" = { - urls = [ - { - template = "https://4get.${domain}/web"; - params = [ - { - name = "s"; - value = "{searchTerms}"; - } - ]; - } - ]; - definedAliases = ["@4get"]; - }; - }; - search.force = true; - search.default = "4get"; - - bookmarks = [ - { - name = "Bookmarks"; - toolbar = true; - bookmarks = [ - { - name = "Packages"; - url = "https://search.nixos.org/packages?channel=unstable"; - } - { - name = "PR"; - url = "https://nixpk.gs/pr-tracker.html"; - } - { - name = "Homemanager"; - url = "https://home-manager-options.extranix.com/?query=&release=master"; - } - { - name = "Stylix"; - url = "https://stylix.danth.me/options/nixos.html"; - } - { - name = "Git"; - url = "https://git.${domain}/"; - } - { - name = "Syncserver"; - url = "https://sync.${domain}/"; - } - { - name = "Photos"; - url = "https://immich.${domain}/"; - } - { - name = "Translate"; - url = "https://trans.${domain}/"; - } - { - name = "invidious"; - url = "https://yt.${domain}/"; - } - { - name = "Server"; - url = "https://avoro.eu/cp/clientarea.php?action=productdetails&id=27920"; - } - { - name = "Domain"; - url = "https://ap.www.namecheap.com/domains/list/"; - } - { - name = "Github"; - url = "https://www.github.com"; - } - { - name = "Hyprland"; - url = "https://wiki.hyprland.org/"; - } - { - name = "Helix"; - url = "https://helix-editor.com/"; - } - { - name = "Yazi"; - url = "https://yazi-rs.github.io/docs/installation"; - } - { - name = "Monkeytype"; - url = "https://monkeytype.com/"; - } - { - name = "Zophar's Domain"; - url = "https://www.zophar.net/music"; - } - { - name = "Syncthing"; - url = "http://localhost:8384/"; - } - ]; - } - ]; - settings = { - "dom.security.https_only_mode" = true; - "browser.download.panel.shown" = true; - "identity.fxaccounts.enabled" = false; - "signon.rememberSignons" = false; - "browser.urlbar.pocket.featureGate" = false; - "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; - "browser.shell.checkDefaultBrowser" = false; - "browser.shell.defaultBrowserCheckCount" = 1; - "privacy.trackingprotection.enabled" = true; - "toolkit.legacyUserProfileCustomizations.stylesheets" = true; - "browser.uiCustomization.state" = '' - { - "placements": { - "widget-overflow-fixed-list": [], - "nav-bar": [ - "back-button", - "forward-button", - "stop-reload-button", - "urlbar-container", - "downloads-button", - "ublock0_raymondhill_net-browser-action", - "addon_darkreader_org-browser-action", - "_testpilot-containers-browser-action" - ], - "toolbar-menubar": [ - "menubar-items" - ], - "TabsToolbar": [ - "tabbrowser-tabs", - "new-tab-button", - "alltabs-button" - ], - "PersonalToolbar": [ - "personal-bookmarks" - ] - }, - "seen": [ - "save-to-pocket-button", - "developer-button", - "ublock0_raymondhill_net-browser-action", - "addon_darkreader_org-browser-action", - "_testpilot-containers-browser-action" - ], - "dirtyAreaCache": [ - "nav-bar", - "PersonalToolbar", - "toolbar-menubar", - "TabsToolbar", - "widget-overflow-fixed-list" - ], - "currentVersion": 18, - "newElementCount": 4 - } - ''; - }; - }; - }; -} diff --git a/firefox/userChrome b/firefox/userChrome deleted file mode 100644 index 81ef71a..0000000 --- a/firefox/userChrome +++ /dev/null @@ -1,282 +0,0 @@ -#alltabs-button { display: none !important; } -@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; /* Updated color */ - --url-focus: #3C3836; - --url-bar-item-hover: #6a6257; - --sidebar: #3C3836; - --sidebar-button-hover: #5A544B; - --sidebar-highlight: #458588; -} - -.titlebar-buttonbox-container { - display: none !important; -} - -.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; -} - -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; -} - -#navigator-toolbox::after { - border-bottom: 0px !important; -} - -#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; -} - -#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; -} - -toolbarbutton { - fill: var(--foreground) !important; - background-color: transparent !important; -} - -#TabsToolbar toolbarbutton { - border-radius: 4px; - border: 1px solid transparent !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; -} - -#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; -} - -#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; -} - -#PanelUI-menu-button { - background-color: var(--secondary) !important; - padding-right: 2px !important; - margin-right: 6px !important; -} - -#PersonalToolbar toolbarbutton { - margin: 3px 0px 3px 3px !important; - border-radius: 4px; -} - -#PersonalToolbar toolbarbutton:hover { - background-color: var(--toolbar-btn-hover) !important; -} - diff --git a/modules/wm/firefox/default.nix b/modules/wm/firefox/default.nix index fe6a99a..31e826f 100644 --- a/modules/wm/firefox/default.nix +++ b/modules/wm/firefox/default.nix @@ -5,18 +5,16 @@ lib, config, ... -}: let - userChrome = builtins.readFile (./. + "/userChrome"); -in { +}: { options = { firefox.enable = lib.mkEnableOption ""; }; + imports = [./userChrome.nix]; config = lib.mkIf config.firefox.enable { home-manager.users.${username} = { programs.firefox = { enable = true; profiles.${username} = { - userChrome = userChrome; extensions = with inputs.firefox-addons.packages."x86_64-linux"; [ ublock-origin darkreader diff --git a/modules/wm/firefox/userChrome b/modules/wm/firefox/userChrome deleted file mode 100644 index 5285469..0000000 --- a/modules/wm/firefox/userChrome +++ /dev/null @@ -1,281 +0,0 @@ -#alltabs-button { display: none !important; } -@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; /* Updated color */ - --url-focus: #3C3836; - --url-bar-item-hover: #6a6257; - --sidebar: #3C3836; - --sidebar-button-hover: #5A544B; - --sidebar-highlight: #458588; -} - -.titlebar-buttonbox-container { - display: none !important; -} - -.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; -} - -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; -} - -#navigator-toolbox::after { - border-bottom: 0px !important; -} - -#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; -} - -#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; -} - -toolbarbutton { - fill: var(--foreground) !important; - background-color: transparent !important; -} - -#TabsToolbar toolbarbutton { - border-radius: 4px; - border: 1px solid transparent !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; -} - -#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; -} - -#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; -} - -#PanelUI-menu-button { - background-color: var(--secondary) !important; - padding-right: 2px !important; - margin-right: 6px !important; -} - -#PersonalToolbar toolbarbutton { - margin: 3px 0px 3px 3px !important; - border-radius: 4px; -} - -#PersonalToolbar toolbarbutton:hover { - background-color: var(--toolbar-btn-hover) !important; -} diff --git a/modules/wm/firefox/userChrome.nix b/modules/wm/firefox/userChrome.nix new file mode 100644 index 0000000..d8a5893 --- /dev/null +++ b/modules/wm/firefox/userChrome.nix @@ -0,0 +1,268 @@ +{ + username, + lib, + config, + ... +}: { + config = lib.mkIf config.firefox.enable { + home-manager.users.${username} = { + programs.firefox = { + enable = true; + profiles.${username} = { + userChrome = '' + #alltabs-button { display: none !important; } + @namespace xul "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; + + :root { + --background: #${config.home-manager.users.${username}.stylix.base16Scheme.base00}; + --secondary: #${config.home-manager.users.${username}.stylix.base16Scheme.base01}; + --foreground: #${config.home-manager.users.${username}.stylix.base16Scheme.base05}; + --blue-highlight: #${config.home-manager.users.${username}.stylix.base16Scheme.base0D}; + --separator: #${config.home-manager.users.${username}.stylix.base16Scheme.base03}; + --toolbar-bgcolor: var(--secondary) !important; + --tab: var(--background); + --tab-inactive: var(--secondary); + --tab-hover: #${config.home-manager.users.${username}.stylix.base16Scheme.base02}; + --url-bar: #${config.home-manager.users.${username}.stylix.base16Scheme.base01}; + } + + .titlebar-buttonbox-container { + display: none !important; + } + + .panel-arrowcontainer { + background-color: var(--secondary) !important; + } + + #PopupAutoComplete, + #PopupSearchAutoComplete { + background-color: var(--url-bar) !important; + color: var(--foreground) !important; + } + + panelview { + background-color: var(--secondary) !important; + color: var(--foreground) !important; + } + + panel[type="autocomplete-richlistbox"] { + background-color: transparent !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 { + 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; + } + + #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(--blue-highlight) !important; + } + + #urlbar:focus-within, + #urlbar[open], + #urlbar[open] #urlbar-input-container, + #urlbar[open] #urlbar-input, + #urlbar-input-container:focus-within, + #urlbar-input:focus, + menupop { + background-color: var(--url-bar) !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(--blue-highlight)!important; + } + + .urlbarView-row[type="switchtab"] > span { + color :var(--blue-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(--blue-highlight)!important; + border-radius :4px!important; + } + + #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"] { + border-bottom-color :var(--blue-highlight)!important; + } + + .tab-content[selected="true"] { + border-color :var(--blue-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(--blue-highlight)!important; + } + + .tab-content:not([selected="true"]):hover { + background-color :var(--tab-hover)!important; + } + + toolbarbutton { + fill :var(--foreground)!important; + background-color :transparent!important; + } + + #TabsToolbar toolbarbutton { + border-radius :4px; + border :1px solid transparent!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(--blue-highlight)!important; + } + + #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(--blue-highlight)!important; + } + + /* Hover effect for Firefox view button */ + #TabsToolbar #firefox-view-button:not([open]):hover > .toolbarbutton-icon { + background-color :var(--tab-hover)!important; + } + + /* Nav bar button styles */ + #nav-bar toolbarbutton > .toolbarbutton-icon, + #nav-bar toolbarbutton > .toolbarbutton-badge-stack { + border-radius :6px; + } + + /* Nav bar button hover effect */ + #nav-bar toolbarbutton:hover > .toolbarbutton-icon, + #nav-bar toolbarbutton:hover > .toolbarbutton-badge-stack { + background-color :var(--blue-highlight)!important; + } + + /* Back button padding */ + #back-button { + padding-right :2px!important; + padding-left :2px!important; + margin-left :6px!important; + } + + /* Panel UI menu button styles */ + #PanelUI-menu-button { + background-color :var(--secondary)!important; + padding-right :2px!important; + margin-right :6px!important; + } + ''; + }; + }; + }; + }; +} diff --git a/modules/wm/foot/default.nix b/modules/wm/foot/default.nix index c8de893..2ed9533 100644 --- a/modules/wm/foot/default.nix +++ b/modules/wm/foot/default.nix @@ -15,28 +15,7 @@ settings = { main = { pad = "2x2"; - font = "RobotoMono Nerd Font:size=12"; - }; - - colors = { - "foreground" = "d5c4a1"; - "background" = "282828"; - "regular0" = "282828"; - "regular1" = "cc241d"; - "regular2" = "98971a"; - "regular3" = "d79921"; - "regular4" = "458588"; - "regular5" = "b16286"; - "regular6" = "689d6a"; - "regular7" = "d5c4a1"; - "bright0" = "504945"; - "bright1" = "fb4934"; - "bright2" = "b8bb26"; - "bright3" = "fabd2f"; - "bright4" = "83a598"; - "bright5" = "d3869b"; - "bright6" = "8ec07c"; - "bright7" = "ebdbb2"; + font = lib.mkForce "RobotoMono Nerd Font:size=12"; }; }; }; diff --git a/modules/wm/hyprland/default.nix b/modules/wm/hyprland/default.nix index 07aa01a..9778c50 100644 --- a/modules/wm/hyprland/default.nix +++ b/modules/wm/hyprland/default.nix @@ -61,8 +61,8 @@ border_size = 4; allow_tearing = false; layout = "master"; - "col.active_border" = "rgb(458588)"; - "col.inactive_border" = "rgb(665c54)"; + # "col.active_border" = "${config.home-manager.users.${username}.stylix.base16Scheme.base0D}"; + # "col.inactive_border" = "${config.home-manager.users.${username}.stylix.base16Scheme.base03}"; }; misc = { disable_hyprland_logo = true; diff --git a/modules/wm/rofi/default.nix b/modules/wm/rofi/default.nix index 4b7bd8a..e861f92 100644 --- a/modules/wm/rofi/default.nix +++ b/modules/wm/rofi/default.nix @@ -3,7 +3,6 @@ config, username, pkgs, - nixpath, ... }: { options = { @@ -14,13 +13,147 @@ programs.rofi = { enable = true; package = pkgs.rofi-wayland; - theme = "${nixpath}/modules/wm/rofi/gruvbox-material.rasi"; + theme = "/home/${username}/.config/rofi/theme.rasi"; + extraConfig = { display-drun = ""; show-icons = true; terminal = "foot"; }; }; + home.file.".config/rofi/theme.rasi".text = '' + * { + gruv0: #${config.home-manager.users.${username}.stylix.base16Scheme.base00}; + gruv1: #${config.home-manager.users.${username}.stylix.base16Scheme.base01}; + gruv2: #${config.home-manager.users.${username}.stylix.base16Scheme.base02}; + gruv3: #${config.home-manager.users.${username}.stylix.base16Scheme.base03}; + gruv4: #${config.home-manager.users.${username}.stylix.base16Scheme.base07}; + gruv5: #${config.home-manager.users.${username}.stylix.base16Scheme.base06}; + gruv6: #${config.home-manager.users.${username}.stylix.base16Scheme.base05}; + gruv7: #${config.home-manager.users.${username}.stylix.base16Scheme.base0F}; + gruv8: #${config.home-manager.users.${username}.stylix.base16Scheme.base04}; + gruv9: #${config.home-manager.users.${username}.stylix.base16Scheme.base03}; + gruv10: #${config.home-manager.users.${username}.stylix.base16Scheme.base02}; + red: #${config.home-manager.users.${username}.stylix.base16Scheme.base08}; + orange: #${config.home-manager.users.${username}.stylix.base16Scheme.base09}; + yellow: #${config.home-manager.users.${username}.stylix.base16Scheme.base0A}; + aqua: #${config.home-manager.users.${username}.stylix.base16Scheme.base0C}; + purple: #${config.home-manager.users.${username}.stylix.base16Scheme.base0E}; + reddark: #${config.home-manager.users.${username}.stylix.base16Scheme.base08}; + yellowdark: #${config.home-manager.users.${username}.stylix.base16Scheme.base0A}; + foreground: @gruv9; + background-color: transparent; + highlight: underline bold #${config.home-manager.users.${username}.stylix.base16Scheme.base05}; + transparent: rgba(46,52,64,0); + } + + window { + location: center; + anchor: center; + border-radius: 10px; + height: 560px; + width: 600px; + background-color: @transparent; + spacing: 0; + children: [mainbox]; + orientation: horizontal; + } + + mainbox { + spacing: 0; + children: [ inputbar, message, listview ]; + } + + message { + padding: 10px; + border: 0px 2px 2px 2px; + border-color: @gruv0; + background-color: @gruv7; + } + + inputbar { + color: @gruv6; + padding: 14px; + background-color: @gruv0; + border-color: @gruv0; + border: 1px; + border-radius: 10px 10px 0px 0px; + } + + entry, prompt, case-indicator { + text-font: inherit; + text-color: inherit; + } + + prompt { + margin: 0px 1em 0em 0em; + } + + listview { + padding: 8px; + border-radius: 0px 0px 10px 10px; + border: 2px 2px 2px 2px; + border-color: @gruv0; + background-color: @gruv0; + dynamic: false; + } + + element { + padding: 5px; + vertical-align: 0.5; + border-radius: 10px; + color: @foreground; + text-color: @gruv6; + background-color: @gruv1; + } + + element.normal.active { + background-color: @yellow; + } + + element.normal.urgent { + background-color: @reddark; + } + + element.selected.normal { + background-color: @gruv7; + text-color: @gruv0; + } + + element.selected.active { + background-color: @yellowdark; + } + + element.selected.urgent { + background-color: @red; + } + + element.alternate.normal { + background-color: @transparent; + } + + element-text, element-icon { + size: 3ch; + margin: 0 10 0 0; + vertical-align: 0.5; + background-color: inherit; + text-color: @gruv6; + } + + button { + padding: 6px; + color: @foreground; + horizontal-align: 0.5; + border: 2px 0px 2px 2px; + border-radius: 10px; + border-color: @foreground; + } + + button.selected.normal { + border: 2px 0px 2px 2px; + border-color: @foreground; + } + ''; }; }; } diff --git a/modules/wm/rofi/gruvbox-material.rasi b/modules/wm/rofi/gruvbox-material.rasi deleted file mode 100644 index f75bc2c..0000000 --- a/modules/wm/rofi/gruvbox-material.rasi +++ /dev/null @@ -1,149 +0,0 @@ -/** - * Gruvbox rofi theme - * - * Color palette imported from https://github.com/sainnhe/gruvbox-material - * - */ - -* { - gruv0: #282828; - gruv1: #32302f; - gruv2: #45403d; - gruv3: #5a524c; - - gruv4: #fbf1c7; - gruv5: #f4e8be; - gruv6: #eee0b7; - - gruv7: #a89984; - gruv8: #928374; - gruv9: #7c6f64; - gruv10: #504945; - red: #ea6962; - - orange: #e78a4e; - yellow: #d8a657; - aqua: #89b482; - purple: #d3869b; - - reddark: #c14a4a; - yellowdark: #b47109; - - foreground: @gruv9; - background-color: transparent; - - highlight: underline bold #eee0b7; - - transparent: rgba(46,52,64,0); - -} - -window { - location: center; - anchor: center; - border-radius: 10px; - height: 560px; - width: 600px; - - background-color: @transparent; - spacing: 0; - children: [mainbox]; - orientation: horizontal; -} - -mainbox { - spacing: 0; - children: [ inputbar, message, listview ]; -} - -message { - padding: 10px; - border: 0px 2px 2px 2px; - border-color: @gruv0; - background-color: @gruv7; -} - -inputbar { - color: @gruv6; - padding: 14px; - background-color: @gruv0; - border-color: @gruv0; - - border: 1px; - border-radius: 10px 10px 0px 0px; -} - -entry, prompt, case-indicator { - text-font: inherit; - text-color: inherit; -} - -prompt { - margin: 0px 1em 0em 0em ; -} - -listview { - padding: 8px; - border-radius: 0px 0px 10px 10px; - border: 2px 2px 2px 2px; - border-color: @gruv0; - background-color: @gruv0; - dynamic: false; -} - -element { - padding: 5px; - vertical-align: 0.5; - border-radius: 10px; - color: @foreground; - text-color: @gruv6; - background-color: @gruv1; -} - -element.normal.active { - background-color: @yellow; -} - -element.normal.urgent { - background-color: @reddark; -} - -element.selected.normal { - background-color: @gruv7; - text-color: @gruv0; -} - -element.selected.active { - background-color: @yellowdark; -} - -element.selected.urgent { - background-color: @red; -} - -element.alternate.normal { - background-color: @transparent; -} - -element-text, element-icon { - size: 3ch; - margin: 0 10 0 0; - vertical-align: 0.5; - background-color: inherit; - text-color: @gruv6; -} - -button { - padding: 6px; - color: @foreground; - horizontal-align: 0.5; - - border: 2px 0px 2px 2px; - border-radius: 10px; - border-color: @foreground; -} - -button.selected.normal { - border: 2px 0px 2px 2px; - border-color: @foreground; -} diff --git a/modules/wm/stylix/default.nix b/modules/wm/stylix/default.nix index 92906da..7fb22cc 100644 --- a/modules/wm/stylix/default.nix +++ b/modules/wm/stylix/default.nix @@ -20,7 +20,6 @@ in { enable = true; polarity = "dark"; targets = { - foot.enable = false; rofi.enable = false; dunst.enable = false; helix.enable = false;