├── AUDIO MENU ├── eww.scss ├── eww.yuck └── scripts │ ├── get_audio_devices.sh │ └── set_audio_device.sh ├── BASIC WIDGET ├── eww.scss └── eww.yuck ├── EWW HELLO WORLD ├── eww.scss └── eww.yuck ├── EWW POPUP DEMO ├── aud_men │ ├── eww.scss │ ├── eww.yuck │ └── scripts │ │ ├── get_audio_devices.sh │ │ ├── popup_audio.sh │ │ └── set_audio_device.sh └── bar │ ├── eww.scss │ ├── eww.yuck │ ├── scripts │ ├── connected_status.sh │ ├── hyprland_window_title.sh │ ├── popup_audio.sh │ ├── start_tray.sh │ └── time_synced.sh │ ├── tray_config │ └── tray_style.css ├── LICENSE ├── README.md ├── SIMPLE LAUNCHER └── config.rasi └── eww-dock-v1.0.zip /AUDIO MENU/eww.scss: -------------------------------------------------------------------------------- 1 | * { all: unset; } 2 | 3 | .parent { 4 | background-color: rgba($color: #000000, $alpha: 0.9); 5 | border-radius: 8px; 6 | border: 2px solid white; 7 | padding: 8px; 8 | } 9 | 10 | .header { 11 | font-weight: bold; 12 | font-size: large; 13 | } 14 | 15 | .title { 16 | margin-right: 50px; 17 | margin-left: 1px; 18 | } 19 | 20 | .button { 21 | margin-top: 8px; 22 | background-color: #333; 23 | border-radius: 8px; 24 | padding: 8px; 25 | } 26 | 27 | .button:hover { 28 | background-color: #222; 29 | } 30 | 31 | .button:active { 32 | background-color: #111; 33 | } 34 | 35 | .exit:hover { 36 | color: #f66; 37 | } 38 | 39 | .exit, .button { 40 | transition: all 0.2s ease; 41 | } 42 | -------------------------------------------------------------------------------- /AUDIO MENU/eww.yuck: -------------------------------------------------------------------------------- 1 | ( 2 | defwindow audio_menu 3 | :monitor 0 4 | :exclusive "false" 5 | :stacking "overlay" 6 | :geometry 7 | (geometry :anchor "center") 8 | (audio_menu) 9 | ) 10 | 11 | ( 12 | defwidget audio_menu [] 13 | ( 14 | box :class "parent" :space-evenly "false" :orientation "v" 15 | ( 16 | box :class "header" :space-evenly "false" 17 | (label :text " Switch Audio Devices" :class "title") 18 | ( 19 | button 20 | :class "exit" 21 | :onclick "eww open audio_menu --toggle" 22 | (label :text " ") 23 | ) 24 | ) 25 | ( 26 | box :class "body" :space-evenly "false" :orientation "v" 27 | ( 28 | button 29 | :class "button" 30 | :vexpand "false" 31 | :onclick "scripts/set_audio_device.sh alsa_output.pci-0000_01_00.1.hdmi-stereo" 32 | (label :text "󰓃 Speakers") 33 | ) 34 | ( 35 | button 36 | :class "button" 37 | :hexpand "false" 38 | :onclick "scripts/set_audio_device.sh alsa_output.pci-0000_00_1b.0.analog-surround-40" 39 | (label :text "󰋋 Headphones") 40 | ) 41 | ( 42 | button 43 | :class "button" 44 | :hexpand "false" 45 | :onclick "scripts/set_audio_device.sh alsa_output.usb-Sony_Interactive_Entertainment_DualSense_Wireless_Controller-00.analog-surround-40" 46 | (label :text " PS5 Controller") 47 | ) 48 | ) 49 | ) 50 | ) 51 | 52 | -------------------------------------------------------------------------------- /AUDIO MENU/scripts/get_audio_devices.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | pactl list short sinks | while read -r line 4 | do 5 | echo "$line" | awk '{ print $2 }' 6 | done 7 | -------------------------------------------------------------------------------- /AUDIO MENU/scripts/set_audio_device.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [ -z "$1" ]; then 4 | echo "Please provide a sink name." 5 | exit 1 6 | fi 7 | 8 | SINK_NAME="$1" 9 | 10 | pactl list short sinks | grep "$SINK_NAME" | while read -r line 11 | do 12 | SINK_ID=$(echo "$line" | awk '{ print $1 }') 13 | pactl set-default-sink "$SINK_ID" 14 | done 15 | -------------------------------------------------------------------------------- /BASIC WIDGET/eww.scss: -------------------------------------------------------------------------------- 1 | * { all: unset; } 2 | tooltip { background-color: black; } 3 | 4 | .example 5 | { 6 | background-color: darkgreen; 7 | border: 2px solid white; 8 | border-radius: 8px; 9 | padding: 8px; 10 | margin: 8px; 11 | margin-right: 0px; 12 | } 13 | -------------------------------------------------------------------------------- /BASIC WIDGET/eww.yuck: -------------------------------------------------------------------------------- 1 | ( 2 | defwindow window 3 | :monitor 0 ; Can be either a number (X11 and Wayland) or an output name (X11 only). 4 | :geometry ; Geometry of the window. 5 | ( 6 | geometry ; Geometry of the window. 7 | :anchor "left center" ; Values include top, center, bottom and left, center, right. 8 | :x "0" ; Position of the window. Values may be provided in px or %. 9 | :y "0" ; Will be relative to anchor. 10 | :width "0" ; Width and height of the window. 11 | :height "0" ; Values may be provided in px or %. 12 | ) 13 | 14 | ; X11 15 | 16 | ;:stacking "fg" ; Where the window should appear in the stack. Possible values: fg, bg. 17 | ;:wm-ignore "true" ; Whether the window manager should ignore this window. 18 | ;:reserve ; Specify how the window manager should make space for your window. 19 | ;( 20 | ; struts ; This is useful for bars, which should not overlap any other windows. 21 | ; :distance "10px" 22 | ; :side "top" 23 | ;) 24 | ;:windowtype "dock" ; Possible values: normal, dock, toolbar, dialog, desktop. 25 | 26 | ; Wayland 27 | 28 | :stacking "fg" ; Possible values: fg, bg, overlay, bottom. 29 | :exclusive "true" ; Whether the compositor should reserve space for the window. 30 | :focusable "false" ; This is necessary for any widgets that use the keyboard to work. 31 | ;:namespace "??" ; Set the wayland layersurface namespace eww uses. 32 | ( 33 | widget 34 | :arg1 "This is a widget." 35 | :arg2 "This is a tooltip." 36 | ) 37 | ) 38 | 39 | ( 40 | defwidget widget [arg1 ?arg2] 41 | ( 42 | box 43 | 44 | ; Box specific 45 | 46 | :spacing "0" ; Int spacing between elements 47 | :orientation "h" ; Orientation of the box. possible values: "vertical", "v", "horizontal", "h" 48 | :space-evenly "false" ; Bool space the widgets evenly. 49 | 50 | ; General 51 | 52 | :class "example" ; String css class name 53 | :valign "center" ; Vertical alignment, ex: "fill", "baseline", "center", "start", "end" 54 | :halign "center" ; Horizontal alignment, ex: "fill", "baseline", "center", "start", "end" 55 | :vexpand "false" ; Bool should this container expand vertically. Default: false. 56 | :hexpand "false" ; Bool should this widget expand horizontally. Default: false. 57 | :width "0" ; Int, note: Cannot restrict the size if the contents stretch it 58 | :height "0" ; Int, note: Cannot restrict the size if the contents stretch it 59 | :active "true" ; Bool If this widget can be interacted with 60 | :tooltip arg2 ; String tooltip text (on hover) 61 | :visible "true" ; Bool visibility of the widget 62 | ;:style ; String inline css style applied to the widget 63 | ( 64 | box 65 | 66 | ; Box specific 67 | 68 | :spacing "0" ; Int spacing between elements 69 | :orientation "h" ; Orientation of the box. possible values: "vertical", "v", "horizontal", "h" 70 | :space-evenly "false" ; Bool space the widgets evenly. 71 | 72 | ; General 73 | 74 | :class "example" ; String css class name 75 | :valign "center" ; Vertical alignment, ex: "fill", "baseline", "center", "start", "end" 76 | :halign "center" ; Horizontal alignment, ex: "fill", "baseline", "center", "start", "end" 77 | :vexpand "false" ; Bool should this container expand vertically. Default: false. 78 | :hexpand "false" ; Bool should this widget expand horizontally. Default: false. 79 | :width "0" ; Int, note: Cannot restrict the size if the contents stretch it 80 | :height "0" ; Int, note: Cannot restrict the size if the contents stretch it 81 | :active "true" ; Bool If this widget can be interacted with 82 | :tooltip arg2 ; String tooltip text (on hover) 83 | :visible "true" ; Bool visibility of the widget 84 | :style "margin-right: 8px;"; String inline css style applied to the widget 85 | 86 | arg1 87 | ) 88 | ) 89 | ) 90 | -------------------------------------------------------------------------------- /EWW HELLO WORLD/eww.scss: -------------------------------------------------------------------------------- 1 | * { all: unset; font-size: 270px; } 2 | -------------------------------------------------------------------------------- /EWW HELLO WORLD/eww.yuck: -------------------------------------------------------------------------------- 1 | ( 2 | defwindow ex 3 | :monitor 0 ; Can be either a number (X11 and Wayland) or an output name (X11 only). 4 | :geometry ; Geometry of the window. 5 | ( 6 | geometry ; Geometry of the window. 7 | :anchor "top center" ; Values include top, center, bottom and left, center, right. 8 | :x "0" ; Position of the window. Values may be provided in px or %. 9 | :y "0" ; Will be relative to anchor. 10 | :width "10%" ; Width and height of the window. 11 | :height "10%" ; Values may be provided in px or %. 12 | ) 13 | 14 | ; X11 15 | 16 | ;:stacking "fg" ; Where the window should appear in the stack. Possible values: fg, bg. 17 | ;:wm-ignore "true" ; Whether the window manager should ignore this window. 18 | ;:reserve ; Specify how the window manager should make space for your window. 19 | ;( 20 | ; struts ; This is useful for bars, which should not overlap any other windows. 21 | ; :distance "10px" 22 | ; :side "top" 23 | ;) 24 | ;:windowtype "dock" ; Possible values: normal, dock, toolbar, dialog, desktop. 25 | 26 | ; Wayland 27 | 28 | :stacking "fg" ; Possible values: fg, bg, overlay, bottom. 29 | :exclusive "true" ; Whether the compositor should reserve space for the window. 30 | :focusable "false" ; This is necessary for any widgets that use the keyboard to work. 31 | ;:namespace "??" ; Set the wayland layersurface namespace eww uses. 32 | "HELLO WORLD" 33 | ) 34 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/aud_men/eww.scss: -------------------------------------------------------------------------------- 1 | * { all: unset; } 2 | 3 | .parent { 4 | background-color: rgba($color: #000000, $alpha: 0.9); 5 | border-radius: 8px; 6 | border: 2px solid white; 7 | padding: 12px; 8 | } 9 | 10 | .header { 11 | font-weight: bold; 12 | font-size: large; 13 | } 14 | 15 | .title { 16 | margin-right: 50px; 17 | margin-left: 1px; 18 | } 19 | 20 | .button { 21 | margin-top: 8px; 22 | background-color: #333; 23 | border-radius: 8px; 24 | padding: 8px; 25 | } 26 | 27 | .button:hover { 28 | background-color: #222; 29 | } 30 | 31 | .button:active { 32 | background-color: #111; 33 | } 34 | 35 | .exit:hover { 36 | color: #777; 37 | } 38 | 39 | .exit, .button { 40 | transition: all 0.2s ease; 41 | } 42 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/aud_men/eww.yuck: -------------------------------------------------------------------------------- 1 | ( 2 | defwindow audio_menu 3 | :monitor 0 4 | :exclusive "false" 5 | :stacking "overlay" 6 | :geometry 7 | 8 | ; Reposition to correct area 9 | 10 | (geometry :anchor "top left" :x 1488 :y 0) 11 | (audio_event) 12 | ) 13 | 14 | ( 15 | defwidget audio_event [] 16 | ( 17 | eventbox 18 | :onhoverlost "./scripts/popup_audio.sh" 19 | (revealer :transition "slideleft" :reveal "true" :duration "10000ms" 20 | (audio_menu) 21 | ) 22 | ) 23 | ) 24 | 25 | ( 26 | defwidget audio_menu [] 27 | ( 28 | box :class "parent" :space-evenly "false" :orientation "v" 29 | ( 30 | box :class "header" :space-evenly "false" 31 | (label :text " Switch Audio Devices" :class "title") 32 | ( 33 | button 34 | :class "exit" 35 | :onclick "eww open --config ~/.config/eww/aud_men audio_menu --toggle" 36 | (label :text " ") 37 | ) 38 | ) 39 | ( 40 | box :class "body" :space-evenly "false" :orientation "v" 41 | ( 42 | button 43 | :class "button" 44 | :vexpand "false" 45 | :onclick "scripts/set_audio_device.sh alsa_output.pci-0000_01_00.1.hdmi-stereo" 46 | (label :text "󰓃 Speakers") 47 | ) 48 | ( 49 | button 50 | :class "button" 51 | :hexpand "false" 52 | :onclick "scripts/set_audio_device.sh alsa_output.pci-0000_00_1b.0.analog-surround-40" 53 | (label :text "󰋋 Headphones") 54 | ) 55 | ( 56 | button 57 | :class "button" 58 | :hexpand "false" 59 | :onclick "scripts/set_audio_device.sh alsa_output.usb-Sony_Interactive_Entertainment_DualSense_Wireless_Controller-00.analog-surround-40" 60 | (label :text " PS5 Controller") 61 | ) 62 | ) 63 | ) 64 | ) 65 | 66 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/aud_men/scripts/get_audio_devices.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | pactl list short sinks | while read -r line 4 | do 5 | echo "$line" | awk '{ print $2 }' 6 | done 7 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/aud_men/scripts/popup_audio.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | /usr/bin/eww open audio_menu --toggle --config ~/.config/eww/aud_men 3 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/aud_men/scripts/set_audio_device.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [ -z "$1" ]; then 4 | echo "Please provide a sink name." 5 | exit 1 6 | fi 7 | 8 | SINK_NAME="$1" 9 | 10 | pactl list short sinks | grep "$SINK_NAME" | while read -r line 11 | do 12 | SINK_ID=$(echo "$line" | awk '{ print $1 }') 13 | pactl set-default-sink "$SINK_ID" 14 | done 15 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/eww.scss: -------------------------------------------------------------------------------- 1 | * 2 | { 3 | all: unset; 4 | font-family: figtree, sans-serif; 5 | font-weight: 600; 6 | } 7 | 8 | .parent { text-shadow: 2px 2px 2px #000000; } 9 | 10 | .center-tray-reserve 11 | { 12 | text-shadow: none; 13 | color: red; 14 | } 15 | 16 | .right { margin-right: 8px; } 17 | .left { margin-left: 8px; } 18 | 19 | .button { 20 | color: white; 21 | transition: 100ms ease all; 22 | margin-right: 8px; 23 | } 24 | 25 | .button:hover { color: #bbb; } 26 | 27 | tooltip { 28 | background-color: rgba($color: #000000, $alpha: 0.9); 29 | border: 1px solid gray; 30 | border-radius: 8px; 31 | } 32 | 33 | tooltip * { 34 | padding: 2px; 35 | } 36 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/eww.yuck: -------------------------------------------------------------------------------- 1 | ( 2 | defwindow status_bar 3 | :monitor 0 4 | :stacking "fg" 5 | :exclusive false 6 | :geometry 7 | (geometry :anchor "top center" :y "-30" :height "30" :width "100%") 8 | (parent) 9 | ) 10 | 11 | ( 12 | defwindow audio_popup 13 | :monitor 0 14 | :stacking "fg" 15 | :exclusive false 16 | :geometry 17 | (geometry :anchor "top left" :y "50" :x "50") 18 | "test" 19 | ) 20 | 21 | ( 22 | defwidget parent [] 23 | ( 24 | centerbox 25 | :class "parent" 26 | :orientation "h" 27 | ( 28 | box 29 | :class "left" 30 | :halign "start" 31 | (label :text {" " + (window == "null" ? "Welcome" : window)} :limit-width 111) 32 | ) 33 | ( 34 | box 35 | :class "center-tray-reserve" 36 | :halign "center" 37 | {tray + audio} 38 | ) 39 | ( 40 | box 41 | :class "right" 42 | :space-evenly false 43 | :halign "end" 44 | ( 45 | button 46 | :class "button" 47 | :tooltip "Top" 48 | :onclick "hyprctl dispatch exec 'alacritty -e /usr/bin/top'" 49 | " " 50 | ) 51 | ( 52 | button 53 | :class "button" 54 | :tooltip "Network Manager" 55 | :onclick "hyprctl dispatch exec 'alacritty -e /usr/bin/nmtui'" 56 | network 57 | ) 58 | 59 | ; button method 60 | 61 | ( 62 | button 63 | :class "button" 64 | :tooltip "Switch Devices Button" 65 | :onclick "./scripts/popup_audio.sh" 66 | "󰓃" 67 | ) 68 | 69 | ; hover method 70 | 71 | ( 72 | eventbox 73 | :onhover "./scripts/popup_audio.sh" 74 | :tooltip "Switch Devices Hover" 75 | "󰓃 " 76 | ) 77 | 78 | ( 79 | box :class "time" 80 | time 81 | ) 82 | ) 83 | ) 84 | ) 85 | 86 | ( 87 | deflisten time 88 | :initial "" 89 | "./scripts/time_synced.sh" 90 | ) 91 | 92 | ( 93 | deflisten network 94 | :initial "" 95 | "./scripts/connected_status.sh" 96 | ) 97 | 98 | ( 99 | deflisten window 100 | :initial "" 101 | "./scripts/hyprland_window_title.sh" 102 | ) 103 | 104 | ( 105 | deflisten tray 106 | :initial "" 107 | "./scripts/start_tray.sh" 108 | ) 109 | 110 | ( 111 | deflisten audio 112 | :initial "" 113 | "eww daemon --config ~/.config/eww/aud_men/" 114 | ) 115 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/scripts/connected_status.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | prev_status="" 4 | 5 | while true 6 | do 7 | if ping -c 1 8.8.8.8 &> /dev/null; then 8 | cur_status=" " 9 | else 10 | cur_status=" " 11 | fi 12 | 13 | if [[ "$cur_status" != "$prev_status" ]]; then 14 | echo "$cur_status" 15 | prev_status="$cur_status" 16 | fi 17 | 18 | sleep 30 19 | done 20 | 21 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/scripts/hyprland_window_title.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | hyprctl activewindow -j | jq --raw-output .title 3 | socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | stdbuf -o0 awk -F '>>|,' '/^activewindow>>/{print $3}' 4 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/scripts/popup_audio.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | /usr/bin/eww open audio_menu --toggle --config ~/.config/eww/aud_men 3 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/scripts/start_tray.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Check if Waybar is running 4 | if pgrep -x "waybar" > /dev/null 5 | then 6 | killall waybar 7 | fi 8 | 9 | # Check if Waybar is installed and in the PATH 10 | if command -v waybar > /dev/null 11 | then 12 | waybar --config ./tray_config --style ./tray_style.css & 13 | else 14 | echo "Waybar is not installed and/or in the path." 15 | fi 16 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/scripts/time_synced.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # Print initial time 3 | date '+%a %m/%d %I:%M %p' 4 | s=$(date +%S) 5 | sleep $((60 - s)) 6 | 7 | while true 8 | do 9 | # Print current time 10 | date '+%a %m/%d %I:%M %p' 11 | 12 | # Sleep until the next full minute 13 | sleep 60 14 | done 15 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/tray_config: -------------------------------------------------------------------------------- 1 | { 2 | "layer": "top", 3 | "position": "top", 4 | "height": 30, 5 | "width": 300, 6 | "spacing": 0, 7 | "modules-center": ["tray"], 8 | "tray": { 9 | "icon-size": 17, 10 | "spacing": 10 11 | }, 12 | } 13 | -------------------------------------------------------------------------------- /EWW POPUP DEMO/bar/tray_style.css: -------------------------------------------------------------------------------- 1 | * { 2 | font-family: figtree, sans-serif; 3 | font-weight: 600; 4 | } 5 | 6 | #tray, #waybar { 7 | background: none; 8 | } 9 | 10 | menu, tooltip { 11 | background-color: rgba(0, 0, 0, 0.91); 12 | border: 1px solid gray; 13 | border-radius: 8px; 14 | } 15 | 16 | tooltip * { 17 | padding: 2px; 18 | } 19 | 20 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Thomas Olvera 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # yt-files 2 | All the files used in my YouTube videos 3 | 4 | ## Audio Menu 5 | This folder is for setting up a basic audio devices switcher using EWW as a front end. We essentially get the device names and set the devices using the provided scripts. 6 | 7 | ## Basic Widget 8 | This folder provides some basic EWW config files of a skeletal widget so one can get started. 9 | 10 | ## EWW Hello World 11 | Same as `Basic Widget` except is more primitive. 12 | 13 | ## Simple Launcher 14 | The provided config.rasi file is for Rofi users wanting a simple and elegant app launcher. 15 | 16 | ## EWW Popup Demo 17 | Basic source code of my bar configuration showing how you can use events to trigger window popups and closes in EWW. 18 | -------------------------------------------------------------------------------- /SIMPLE LAUNCHER/config.rasi: -------------------------------------------------------------------------------- 1 | * { 2 | font: "Figtree 13"; 3 | g-spacing: 10px; 4 | g-margin: 0; 5 | b-color: #000000FF; 6 | fg-color: #FFFFFFFF; 7 | fgp-color: #888888FF; 8 | b-radius: 8px; 9 | g-padding: 8px; 10 | hl-color: #FFFFFFFF; 11 | hlt-color: #000000FF; 12 | alt-color: #111111FF; 13 | wbg-color: #000000CC; 14 | w-border: 2px solid; 15 | w-border-color: #FFFFFFFF; 16 | w-padding: 12px; 17 | } 18 | 19 | configuration { 20 | modi: "drun"; 21 | show-icons: true; 22 | display-drun: ""; 23 | } 24 | 25 | listview { 26 | columns: 1; 27 | lines: 7; 28 | fixed-height: true; 29 | fixed-columns: true; 30 | cycle: false; 31 | scrollbar: false; 32 | border: 0px solid; 33 | } 34 | 35 | window { 36 | transparency: "real"; 37 | width: 450px; 38 | border-radius: @b-radius; 39 | background-color: @wbg-color; 40 | border: @w-border; 41 | border-color: @w-border-color; 42 | padding: @w-padding; 43 | } 44 | 45 | prompt { 46 | text-color: @fg-color; 47 | } 48 | 49 | inputbar { 50 | children: ["prompt", "entry"]; 51 | spacing: @g-spacing; 52 | } 53 | 54 | entry { 55 | placeholder: "Search Apps"; 56 | text-color: @fg-color; 57 | placeholder-color: @fgp-color; 58 | } 59 | 60 | mainbox { 61 | spacing: @g-spacing; 62 | margin: @g-margin; 63 | padding: @g-padding; 64 | children: ["inputbar", "listview", "message"]; 65 | } 66 | 67 | element { 68 | spacing: @g-spacing; 69 | margin: @g-margin; 70 | padding: @g-padding; 71 | border: 0px solid; 72 | border-radius: @b-radius; 73 | border-color: @b-color; 74 | background-color: transparent; 75 | text-color: @fg-color; 76 | } 77 | 78 | element normal.normal { 79 | background-color: transparent; 80 | text-color: @fg-color; 81 | } 82 | 83 | element alternate.normal { 84 | background-color: @alt-color; 85 | text-color: @fg-color; 86 | } 87 | 88 | element selected.active { 89 | background-color: @hl-color; 90 | text-color: @hlt-color; 91 | } 92 | 93 | element selected.normal { 94 | background-color: @hl-color; 95 | text-color: @hlt-color; 96 | } 97 | 98 | message { 99 | background-color: red; 100 | border: 0px solid; 101 | } 102 | -------------------------------------------------------------------------------- /eww-dock-v1.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sonnybox/yt-files/a0cd842932a72ea3b061ddae1f59a7c8976189bb/eww-dock-v1.0.zip --------------------------------------------------------------------------------