diff --git a/home/hyprland/default.nix b/home/hyprland/default.nix index cdb5175..1b6a14b 100644 --- a/home/hyprland/default.nix +++ b/home/hyprland/default.nix @@ -33,7 +33,7 @@ exec-once = [ "swww init" - "swww img /home/hadi/Nextcloud/wallpaper/Dim_12000x6000.png" + "swww img /home/hadi/.config/wallpaper/default.png" "hypridle" ]; @@ -106,7 +106,7 @@ gaps_out = 20; border_size = 2; "col.active_border" = "rgba(${config.theme.colors.primary-bg}ff)"; - "col.inactive_border" = "rgba(${config.theme.colors.color0}ee)"; + "col.inactive_border" = "rgba(${config.theme.colors.color0}96)"; layout = "master"; }; diff --git a/home/hyprland/hyprlock.nix b/home/hyprland/hyprlock.nix index 983f2f3..b24c6e7 100644 --- a/home/hyprland/hyprlock.nix +++ b/home/hyprland/hyprlock.nix @@ -1,50 +1,78 @@ -{ pkgs, ... }: { +{ pkgs, config, ... }: { + + imports = [ ../variables/theme ]; + home.packages = with pkgs; [ hyprlock ]; xdg.configFile."hypr/hyprlock.conf".text = '' background { monitor = - path = $HOME/Nextcloud/wallpaper/Dim_12000x6000.png - color = rgba(25, 20, 20, 1.0) + path = $HOME/.config/wallpaper/default.png # only png supported for now + color = rgb(${config.theme.colors.bg}) # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations - blur_passes = 4 # 0 disables blurring - blur_size = 2 + blur_size = 4 + blur_passes = 3 # 0 disables blurring noise = 0.0117 - contrast = 0.8916 - brightness = 0.8172 - vibrancy = 0.1696 + contrast = 1.3000 # Vibrant!!! + brightness = 0.8000 + vibrancy = 0.2100 vibrancy_darkness = 0.0 } input-field { monitor = - size = 200, 50 - outline_thickness = 1 + size = 250, 50 + outline_thickness = 3 dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8 - dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0 + dots_spacing = 0.64 # Scale of dots' absolute size, 0.0 - 1.0 dots_center = true - outer_color = rgb(000000) - inner_color = rgb(200, 200, 200) - font_color = rgb(10, 10, 10) + outer_color = rgb(${config.theme.colors.primary-bg}) + inner_color = rgb(${config.theme.colors.bg}) + font_color = rgb(${config.theme.colors.fg}) fade_on_empty = true - placeholder_text = Input Password... # Text rendered in the input box when it's empty. + placeholder_text = Password... # Text rendered in the input box when it's empty. hide_input = false - position = 0, -20 + position = 0, 50 + halign = center + valign = bottom + } + + # Current time + label { + monitor = + text = cmd[update:1000] echo " $(date +"%H:%M:%S") " + color = rgb(${config.theme.colors.fg}) + font_size = 64 + font_family = ${config.theme.font} + position = 0, 16 halign = center valign = center } + # User label label { monitor = - text = Enter your password to unlock - color = rgba(200, 200, 200, 1.0) - font_size = 25 - font_family = Noto Sans - - position = 0, 200 + text = Hey $USER + color = rgb(${config.theme.colors.fg}) + font_size = 20 + font_family = ${config.theme.font} + position = 0, 0 halign = center valign = center } + + + # Type to unlock + label { + monitor = + text = Type to unlock! + color = rgb(${config.theme.colors.fg}) + font_size = 16 + font_family = ${config.theme.font} + position = 0, 30 + halign = center + valign = bottom + } ''; } diff --git a/home/qutebrowser/default.nix b/home/qutebrowser/default.nix index e8e2497..ca38e1f 100644 --- a/home/qutebrowser/default.nix +++ b/home/qutebrowser/default.nix @@ -1,82 +1,94 @@ -{ +{ config, ... }: { + + imports = [ ./duckduckgo-colorscheme.nix ]; + programs.qutebrowser = { enable = true; + searchEngines = { - "DEFAULT" = "https://google.com/search?q={}"; - "yt" = "https://youtube.com/results?search_query={}"; + "DEFAULT" = "https://duckduckgo.com/?q={}&ia=web"; + "d" = "https://duckduckgo.com/?q={}&ia=web"; + "g" = "https://google.com/search?q={}"; + "y" = "https://youtube.com/results?search_query={}"; + "n" = "https://mynixos.com/search?q={}"; "nixo" = "https://search.nixos.org/options?channel=unstable&query={}"; "nixp" = "https://search.nixos.org/packages?channel=unstable&query={}"; }; settings = { + url = { + default_page = "https://duckduckgo.com"; + start_pages = [ "https://duckduckgo.com" ]; + }; + colors = { tabs = { - odd.bg = "#000000"; - odd.fg = "#FFFFFF"; - even.bg = "#000000"; - even.fg = "#FFFFFF"; - selected.odd.bg = "#101012"; - selected.odd.fg = "#FFFFFF"; - selected.even.bg = "#101012"; - selected.even.fg = "#FFFFFF"; - indicator.error = "#101012"; - indicator.start = "#101012"; - indicator.stop = "#101012"; + odd.bg = "#${config.theme.colors.bg}"; + odd.fg = "#${config.theme.colors.fg}"; + even.bg = "#${config.theme.colors.bg}"; + even.fg = "#${config.theme.colors.fg}"; + selected.odd.bg = "#${config.theme.colors.primary-bg}"; + selected.odd.fg = "#${config.theme.colors.primary-fg}"; + selected.even.bg = "#${config.theme.colors.primary-bg}"; + selected.even.fg = "#${config.theme.colors.primary-fg}"; + indicator.error = "#${config.theme.colors.color1}"; + indicator.start = "#${config.theme.colors.alt-bg}"; + indicator.stop = "#${config.theme.colors.alt-bg}"; }; hints = { - bg = "#101012"; - fg = "#FFFFFF"; - match.fg = "#E2E2E2"; + bg = "#${config.theme.colors.alt-bg}"; + fg = "#${config.theme.colors.alt-fg}"; + match.fg = "#${config.theme.colors.bg}"; }; completion = { - category.bg = "#101012"; - category.fg = "#FFFFFF"; - category.border.top = "#101012"; - category.border.bottom = "#101012"; + category.bg = "#${config.theme.colors.bg}"; + category.fg = "#${config.theme.colors.fg}"; + category.border.top = "#${config.theme.colors.bg}"; + category.border.bottom = "#${config.theme.colors.bg}"; - odd.bg = "#101012"; - even.bg = "#101012"; + odd.bg = "#${config.theme.colors.bg}"; + even.bg = "#${config.theme.colors.bg}"; fg = [ "#FFFFFF" "#FFFFFF" "#FFFFFF" ]; - match.fg = "#FF0000"; + match.fg = "#${config.theme.colors.primary-bg}"; - item.selected.bg = "#FF0000"; - item.selected.border.top = "#FF0000"; - item.selected.border.bottom = "#FF0000"; - item.selected.fg = "#FBFBFB"; - item.selected.match.fg = "#FBFBFB"; + item.selected.bg = "#${config.theme.colors.primary-bg}"; + item.selected.border.top = "#${config.theme.colors.primary-bg}"; + item.selected.border.bottom = "#${config.theme.colors.primary-bg}"; + item.selected.fg = "#${config.theme.colors.primary-fg}"; + item.selected.match.fg = "#${config.theme.colors.primary-fg}"; }; - # statusbar = { - # normal.bg = colors.statusbar.bg; - # normal.fg = colors.statusbar.fg; - # private.bg = colors.statusbar.private.bg; - # private.fg = colors.statusbar.private.fg; - # command = { - # bg = colors.statusbar.bg; - # fg = colors.statusbar.fg; - # private.bg = colors.statusbar.private.bg; - # private.fg = colors.statusbar.private.fg; - # }; - # }; - # - # messages = { - # info = { - # bg = colors.statusbar.bg; - # fg = colors.statusbar.fg; - # border = colors.statusbar.bg; - # }; - # - # error = { - # bg = colors.messages.error.bg; - # fg = colors.messages.error.fg; - # border = colors.messages.error.bg; - # }; - # }; + statusbar = { + normal.bg = "#${config.theme.colors.bg}"; + normal.fg = "#${config.theme.colors.fg}"; + private.bg = "#${config.theme.colors.bg}"; + private.fg = "#${config.theme.colors.fg}"; + command = { + bg = "#${config.theme.colors.alt-bg}"; + fg = "#${config.theme.colors.alt-fg}"; + private.bg = "#${config.theme.colors.alt-bg}"; + private.fg = "#${config.theme.colors.alt-fg}"; + }; + }; + + messages = { + info = { + bg = "#${config.theme.colors.alt-bg}"; + fg = "#${config.theme.colors.alt-fg}"; + border = "#${config.theme.colors.alt-bg}"; + }; + + error = { + bg = "#${config.theme.colors.color1}"; + fg = "#${config.theme.colors.alt-fg}"; + border = "#${config.theme.colors.color1}"; + }; + }; }; completion = { @@ -147,12 +159,7 @@ close_mouse_button = "right"; }; - url = { - default_page = "https://duckduckgo.com"; - start_pages = [ "https://duckduckgo.com" ]; - }; - - zoom.default = "130%"; + zoom.default = "100%"; }; keyMappings = { diff --git a/home/qutebrowser/duckduckgo-colorscheme.nix b/home/qutebrowser/duckduckgo-colorscheme.nix new file mode 100644 index 0000000..3f4b50e --- /dev/null +++ b/home/qutebrowser/duckduckgo-colorscheme.nix @@ -0,0 +1,37 @@ +{ config, ... }: { + + imports = [ ../variables/theme ]; + + xdg.configFile."duckduckgo-colorscheme.js".text = '' + // Cookies string for your theme + const cookie = '7=${config.theme.colors.bg}; j=${config.theme.colors.bg}; 9=${config.theme.colors.fg}; aa=${config.theme.colors.alt-fg}; 8=${config.theme.colors.color7}; x=${config.theme.colors.primary-bg}; 21=${config.theme.colors.alt-bg};'; + + // Converts cookie string into formatted JSON + const cookieToJSON = (cookieRaw) => { + const cookieJson = {}; + const items = cookieRaw.split(/[ ,]+/); + + items.forEach((item) => { + const parts = item.split('='); + cookieJson[parts[0]] = parts[1]; + }); + + return cookieJson; + }; + + // Iterates over JSON, and adds to browser cookie store + const setCookies = (cookieJson) => { + Object.keys(cookieJson).forEach((key) => { + document.cookie = `''${key}=''${cookieJson [ key ]}`; + }); + }; + + alert('The GitHub Dark theme will be applied.'); + + // Call set cookies, passing in formated cookie data + setCookies(cookieToJSON(cookie)); + + // All done, reload page for changes to take effect :) + location.reload(); + ''; +} diff --git a/home/qutebrowser/duckduckgo_colorscheme.js b/home/qutebrowser/duckduckgo_colorscheme.js deleted file mode 100644 index e69de29..0000000 diff --git a/home/variables/theme/nixy.nix b/home/variables/theme/nixy.nix index 11b4a06..4ad4fd6 100644 --- a/home/variables/theme/nixy.nix +++ b/home/variables/theme/nixy.nix @@ -18,7 +18,7 @@ primary-fg = "000000"; secondary-bg = "4928B8"; secondary-fg = "000000"; - color0 = "414868"; + color0 = "000000"; color1 = "f7768e"; color2 = "73daca"; color3 = "e0af68"; diff --git a/home/waybar/default.nix b/home/waybar/default.nix index fdd6d23..637fc5b 100644 --- a/home/waybar/default.nix +++ b/home/waybar/default.nix @@ -120,6 +120,7 @@ min-height: 0; font-family: "${config.theme.font}"; color: #${config.theme.colors.fg}; + font-weight: 700; } window#waybar { diff --git a/home/wlogout/default.nix b/home/wlogout/default.nix index d5c4f8d..7d0df00 100644 --- a/home/wlogout/default.nix +++ b/home/wlogout/default.nix @@ -1,4 +1,7 @@ -{ +{ config, ... }: { + + imports = [ ../variables/theme ]; + programs.wlogout = { enable = true; layout = [ @@ -41,78 +44,72 @@ ]; style = '' - * { - font-family: "Fira Sans Semibold"; - background-image: none; - transition: 20ms; - } + * { + font-family: "${config.theme.font}"; + background-image: none; + transition: 20ms; + } - window { - background-color: rgba(12, 12, 12, 0.5); - } + window { + background-color: rgba(12,12,12,0.5); + } - button { - color: #FFFFFF; - font-size:20px; + button { + color: #${config.theme.colors.fg}; + font-size:20px; - background-repeat: no-repeat; - background-position: center; - background-size: 25%; + background-repeat: no-repeat; + background-position: center; + background-size: 25%; - border-style: solid; - background-color: rgba(12, 12, 12, 0.5); - border: 3px solid #FFFFFF; - box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); - } + border-style: solid; + background-color: #${config.theme.colors.bg}; + border: ${ + toString config.theme.border-size + }px solid #${config.theme.colors.fg}; + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); + } button:focus, - button:active, - button:hover { - color: #9978F8; - background-color: rgba(12, 12, 12, 0.8); - border: 3px solid #9978F8; + button:active { + color: #${config.theme.colors.primary-fg}; + background-color: #${config.theme.colors.primary-bg}; + border: 3px solid #${config.theme.colors.primary-bg}; + } + + /* + ----------------------------------------------------- + Buttons + ----------------------------------------------------- + */ + + #lock,#logout,#suspend,#hibernate,#shutdown,#reboot { + margin: 10px; + border-radius: ${toString config.theme.rounding}px; } - /* - ----------------------------------------------------- - Buttons - ----------------------------------------------------- - */ - #lock { - margin: 10px; - border-radius: 20px; - background-image: image(url("icons/lock.png")); + background-image: image(url("icons/lock.png")); } #logout { - margin: 10px; - border-radius: 20px; - background-image: image(url("icons/logout.png")); + background-image: image(url("icons/logout.png")); } #suspend { - margin: 10px; - border-radius: 20px; - background-image: image(url("icons/suspend.png")); + background-image: image(url("icons/suspend.png")); } #hibernate { - margin: 10px; - border-radius: 20px; - background-image: image(url("icons/hibernate.png")); + background-image: image(url("icons/hibernate.png")); } #shutdown { - margin: 10px; - border-radius: 20px; - background-image: image(url("icons/shutdown.png")); + background-image: image(url("icons/shutdown.png")); } #reboot { - margin: 10px; - border-radius: 20px; - background-image: image(url("icons/reboot.png")); + background-image: image(url("icons/reboot.png")); } ''; }; diff --git a/home/wofi/default.nix b/home/wofi/default.nix index 5cf0329..ce748fa 100644 --- a/home/wofi/default.nix +++ b/home/wofi/default.nix @@ -1,10 +1,13 @@ -{ +{ config, ... }: { + + imports = [ ../variables/theme ]; + programs.wofi = { enable = true; settings = { allow_markup = true; - width = 250; + width = 450; show = "drun"; prompt = "Apps"; normal_window = true; @@ -34,15 +37,15 @@ /** ********** Fonts ********** **/ * { - font-family: "SFProDisplay Nerd Font Bold", archcraft, sans-serif; + font-family: "${config.theme.font}"; + font-weight: 500; font-size: 12px; } #window { - background-color: #0B0B13; - color: #D9E0EE; - border: 2px solid #1B1B23; - border-radius: 0px; + background-color: #${config.theme.colors.alt-bg}; + color: #${config.theme.colors.alt-fg}; + border-radius: ${toString config.theme.rounding}px; } #outer-box { @@ -50,8 +53,8 @@ } #input { - background-color: #1B1B23; - border: 0px solid #B4BEFE; + background-color: #${config.theme.colors.bg}; + border: 0px solid #${config.theme.colors.primary-bg}; padding: 8px 12px; } @@ -66,11 +69,11 @@ } #text { - color: #D9E0EE; + color: #${config.theme.colors.color7}; } #text:selected { - color: #0B0B13; + color: #${config.theme.colors.fg}; } #entry { @@ -78,8 +81,8 @@ } #entry:selected { - background-color: #B4BEFE; - color: #0B0B13; + background-color: #${config.theme.colors.primary-bg}; + color: #${config.theme.colors.primary-fg}; } #unselected {} @@ -88,7 +91,7 @@ #input, #entry:selected { - border-radius: 4px; + border-radius: ${toString (config.theme.rounding - 10)}px; } ''; };