diff options
author | Hsieh Chin Fan <typebrook@topo.tw> | 2023-02-04 08:33:47 +0800 |
---|---|---|
committer | Hsieh Chin Fan <typebrook@topo.tw> | 2023-02-04 08:33:47 +0800 |
commit | 825c29b5e0740b27439003f21e1a1a74e563cfd5 (patch) | |
tree | 97e398b856abe9571efeedbf17e81ccc80118952 /X11 | |
parent | 4496db3c021d735a324a28c46ce4a18f090270f5 (diff) |
Add eww config from aditaya
Diffstat (limited to 'X11')
-rw-r--r-- | X11/eww/eww.scss | 377 | ||||
-rw-r--r-- | X11/eww/eww.yuck | 310 | ||||
-rw-r--r-- | X11/eww/images/bg.png | bin | 0 -> 322427 bytes | |||
-rw-r--r-- | X11/eww/images/icons/code.svg | 8 | ||||
-rw-r--r-- | X11/eww/images/icons/discord.svg | 6 | ||||
-rw-r--r-- | X11/eww/images/icons/files.svg | 16 | ||||
-rw-r--r-- | X11/eww/images/icons/firefox.svg | 14 | ||||
-rw-r--r-- | X11/eww/images/icons/geany.svg | 5 | ||||
-rw-r--r-- | X11/eww/images/icons/gimp.svg | 22 | ||||
-rw-r--r-- | X11/eww/images/icons/telegram.svg | 20 | ||||
-rw-r--r-- | X11/eww/images/icons/terminal.svg | 14 | ||||
-rw-r--r-- | X11/eww/images/icons/virtualbox.svg | 11 | ||||
-rw-r--r-- | X11/eww/images/music.png | bin | 0 -> 113344 bytes | |||
-rw-r--r-- | X11/eww/images/profile.jpg | bin | 0 -> 218845 bytes | |||
-rwxr-xr-x | X11/eww/launch_dashboard | 33 | ||||
-rwxr-xr-x | X11/eww/scripts/mails | 7 | ||||
-rwxr-xr-x | X11/eww/scripts/music_info | 97 | ||||
-rwxr-xr-x | X11/eww/scripts/open_apps | 42 | ||||
-rwxr-xr-x | X11/eww/scripts/open_folders | 33 | ||||
-rwxr-xr-x | X11/eww/scripts/open_links | 31 | ||||
-rwxr-xr-x | X11/eww/scripts/sys_info | 78 | ||||
-rwxr-xr-x | X11/eww/scripts/weather_info | 147 |
22 files changed, 1271 insertions, 0 deletions
diff --git a/X11/eww/eww.scss b/X11/eww/eww.scss new file mode 100644 index 0000000..e7fb3fa --- /dev/null +++ b/X11/eww/eww.scss | |||
@@ -0,0 +1,377 @@ | |||
1 | /** Global *******************************************/ | ||
2 | *{ | ||
3 | all: unset; | ||
4 | font-family: feather; | ||
5 | font-family: Iosevka; | ||
6 | } | ||
7 | |||
8 | /** Background ***************************************/ | ||
9 | .bg { | ||
10 | background-image: url("images/bg.png"); | ||
11 | background-color: #474D59; | ||
12 | opacity: 1; | ||
13 | } | ||
14 | |||
15 | /** Generic window ***********************************/ | ||
16 | .genwin { | ||
17 | background-color: #2E3440; | ||
18 | border-radius: 16px; | ||
19 | } | ||
20 | |||
21 | /** Profile ******************************************/ | ||
22 | .face { | ||
23 | background-size: 200px; | ||
24 | min-height: 200px; | ||
25 | min-width: 200px; | ||
26 | margin: 65px 0px 0px 0px; | ||
27 | border-radius: 100%; | ||
28 | } | ||
29 | |||
30 | .fullname { | ||
31 | color: #D46389; | ||
32 | font-size : 30px; | ||
33 | font-weight : bold; | ||
34 | } | ||
35 | |||
36 | .username { | ||
37 | color: #8FBCBB; | ||
38 | font-size : 22px; | ||
39 | font-weight : bold; | ||
40 | margin : -15px 0px 0px 0px; | ||
41 | } | ||
42 | |||
43 | /** System ********************************************/ | ||
44 | .iconcpu, .iconmem, .iconbright, .iconbat { | ||
45 | font-size : 32px; | ||
46 | font-weight : normal; | ||
47 | } | ||
48 | .iconcpu { | ||
49 | color: #BF616A; | ||
50 | } | ||
51 | .iconmem { | ||
52 | color: #A3BE8C; | ||
53 | } | ||
54 | .iconbright { | ||
55 | color: #EBCB8B; | ||
56 | } | ||
57 | .iconbat { | ||
58 | color: #88C0D0; | ||
59 | } | ||
60 | |||
61 | .cpu_bar, .mem_bar, .bright_bar, .bat_bar, scale trough { | ||
62 | all: unset; | ||
63 | background-color: #3A404C; | ||
64 | border-radius: 16px; | ||
65 | min-height: 28px; | ||
66 | min-width: 240px; | ||
67 | } | ||
68 | |||
69 | .cpu_bar, .mem_bar, .bright_bar, .bat_bar, scale trough highlight { | ||
70 | all: unset; | ||
71 | border-radius: 16px; | ||
72 | } | ||
73 | |||
74 | .cpu_bar scale trough highlight { | ||
75 | background-color: #BF616A; | ||
76 | } | ||
77 | .mem_bar scale trough highlight { | ||
78 | background-color: #A3BE8C; | ||
79 | } | ||
80 | .bright_bar scale trough highlight { | ||
81 | background-color: #EBCB8B; | ||
82 | } | ||
83 | .bat_bar scale trough highlight { | ||
84 | background-color: #88C0D0; | ||
85 | } | ||
86 | |||
87 | /** Clock ********************************************/ | ||
88 | .time_hour, .time_min { | ||
89 | color: #81A1C1; | ||
90 | font-size : 120px; | ||
91 | font-weight : bold; | ||
92 | } | ||
93 | .time_hour { | ||
94 | margin : 15px 0px 0px 20px; | ||
95 | } | ||
96 | .time_min { | ||
97 | margin : 0px 0px 10px 0px; | ||
98 | } | ||
99 | |||
100 | .time_mer { | ||
101 | color: #A3BE8C; | ||
102 | font-size : 80px; | ||
103 | font-weight : bold; | ||
104 | margin : 20px 0px 0px 0px; | ||
105 | } | ||
106 | |||
107 | .time_day { | ||
108 | color: #EBCB8B; | ||
109 | font-size : 70px; | ||
110 | font-weight : normal; | ||
111 | margin : 0px 0px 20px -20px; | ||
112 | } | ||
113 | |||
114 | /** Uptime ********************************************/ | ||
115 | .icontimer { | ||
116 | color: #B48EAD; | ||
117 | font-size : 90px; | ||
118 | font-weight : normal; | ||
119 | } | ||
120 | |||
121 | .uphour { | ||
122 | color: #E5E9F0; | ||
123 | font-size : 42px; | ||
124 | font-weight : bold; | ||
125 | } | ||
126 | |||
127 | .upmin { | ||
128 | color: #E5E9F0; | ||
129 | font-size : 32px; | ||
130 | font-weight : bold; | ||
131 | } | ||
132 | |||
133 | /** Music ***************************************/ | ||
134 | .album_art { | ||
135 | background-size: 240px; | ||
136 | min-height: 240px; | ||
137 | min-width: 240px; | ||
138 | margin: 20px; | ||
139 | border-radius: 14px; | ||
140 | } | ||
141 | |||
142 | .song { | ||
143 | color: #8FBCBB; | ||
144 | font-size : 24px; | ||
145 | font-weight : bold; | ||
146 | margin : 40px 0px 0px 0px; | ||
147 | } | ||
148 | |||
149 | .artist { | ||
150 | color: #EBCB8B; | ||
151 | font-size : 16px; | ||
152 | font-weight : normal; | ||
153 | margin : 0px 0px 15px 0px; | ||
154 | } | ||
155 | |||
156 | .btn_prev, .btn_play, .btn_next { | ||
157 | font-family: Iosevka Nerd Font; | ||
158 | } | ||
159 | .btn_prev { | ||
160 | color: #EBCB8B; | ||
161 | font-size : 32px; | ||
162 | font-weight : normal; | ||
163 | } | ||
164 | .btn_play { | ||
165 | color: #A3BE8C; | ||
166 | font-size : 48px; | ||
167 | font-weight : bold; | ||
168 | } | ||
169 | .btn_next { | ||
170 | color: #EBCB8B; | ||
171 | font-size : 32px; | ||
172 | font-weight : normal; | ||
173 | } | ||
174 | |||
175 | .music_bar scale trough highlight { | ||
176 | all: unset; | ||
177 | background-color: #B48EAD; | ||
178 | border-radius: 8px; | ||
179 | } | ||
180 | .music_bar scale trough { | ||
181 | all: unset; | ||
182 | background-color: #3A404C; | ||
183 | border-radius: 8px; | ||
184 | min-height: 20px; | ||
185 | min-width: 310px; | ||
186 | margin : 10px 0px 0px 0px; | ||
187 | } | ||
188 | |||
189 | /** Weather ***************************************/ | ||
190 | .iconweather { | ||
191 | font-family: Iosevka Nerd Font; | ||
192 | font-size : 120px; | ||
193 | font-weight : normal; | ||
194 | margin : 15px 0px 0px 30px; | ||
195 | } | ||
196 | |||
197 | .label_temp { | ||
198 | color : #A6D1DD; | ||
199 | font-size : 80px; | ||
200 | font-weight : bold; | ||
201 | margin : -15px 30px 0px 0px; | ||
202 | } | ||
203 | |||
204 | .label_stat { | ||
205 | color : #BF616A; | ||
206 | font-size : 38px; | ||
207 | font-weight : bold; | ||
208 | } | ||
209 | |||
210 | .label_quote { | ||
211 | color : #E5E5E5; | ||
212 | font-size : 18px; | ||
213 | font-weight : normal; | ||
214 | } | ||
215 | |||
216 | /** Applications ***************************************/ | ||
217 | .appbox { | ||
218 | margin : 15px 0px 0px 25px; | ||
219 | } | ||
220 | |||
221 | .app_fox, .app_telegram, .app_discord, .app_terminal, | ||
222 | .app_files, .app_geany, .app_code, .app_gimp, .app_vbox { | ||
223 | background-repeat: no-repeat; | ||
224 | background-size: 64px; | ||
225 | min-height: 64px; | ||
226 | min-width: 64px; | ||
227 | margin: 8px 8px 0px 8px; | ||
228 | } | ||
229 | |||
230 | .app_fox {} | ||
231 | .app_telegram {} | ||
232 | .app_discord {} | ||
233 | .app_terminal {} | ||
234 | .app_files {} | ||
235 | .app_geany {} | ||
236 | .app_code {} | ||
237 | .app_gimp {} | ||
238 | .app_vbox {} | ||
239 | |||
240 | /** Links ***************************************/ | ||
241 | .iconweb, .iconmail { | ||
242 | color: #FFFFFF; | ||
243 | font-family: Iosevka Nerd Font; | ||
244 | font-size : 70px; | ||
245 | font-weight : normal; | ||
246 | } | ||
247 | .iconmail { | ||
248 | color: #DF584E; | ||
249 | } | ||
250 | |||
251 | .github { | ||
252 | background-color: #24292E; | ||
253 | border-radius: 16px; | ||
254 | } | ||
255 | .reddit { | ||
256 | background-color: #E46231; | ||
257 | border-radius: 16px; | ||
258 | } | ||
259 | .twitter { | ||
260 | background-color: #61AAD6; | ||
261 | border-radius: 16px; | ||
262 | } | ||
263 | .youtube { | ||
264 | background-color: #DF584E; | ||
265 | border-radius: 16px; | ||
266 | } | ||
267 | .mail { | ||
268 | background-color: #FFFFFF; | ||
269 | border-radius: 16px; | ||
270 | } | ||
271 | |||
272 | .mailbox { | ||
273 | background-color: #E5E5E5; | ||
274 | border-radius: 10px; | ||
275 | margin: 48px 0px 48px 0px; | ||
276 | } | ||
277 | .label_mails { | ||
278 | color: #404040; | ||
279 | font-size : 32px; | ||
280 | font-weight : bold; | ||
281 | margin: 0px 12px 0px 12px; | ||
282 | } | ||
283 | |||
284 | /** Power buttons ***************************************/ | ||
285 | .btn_logout, .btn_sleep, .btn_reboot, .btn_poweroff { | ||
286 | font-size : 48px; | ||
287 | font-weight : bold; | ||
288 | } | ||
289 | |||
290 | .btn_logout { | ||
291 | color: #BF616A; | ||
292 | } | ||
293 | .btn_sleep { | ||
294 | color: #A3BE8C; | ||
295 | } | ||
296 | .btn_reboot { | ||
297 | color: #EBCB8B; | ||
298 | } | ||
299 | .btn_poweroff { | ||
300 | color: #88C0D0; | ||
301 | } | ||
302 | |||
303 | /** Home folders ***************************************/ | ||
304 | .hddbox { | ||
305 | background-color: #3A404C; | ||
306 | border-radius: 10px; | ||
307 | margin : 15px; | ||
308 | } | ||
309 | .hddicon { | ||
310 | color: #81A1C1; | ||
311 | font-family: Iosevka Nerd Font; | ||
312 | font-size : 70px; | ||
313 | font-weight : normal; | ||
314 | margin : 25px 20px 25px 40px; | ||
315 | } | ||
316 | .hdd_label { | ||
317 | color: #E5E9F0; | ||
318 | font-size : 48px; | ||
319 | font-weight : bold; | ||
320 | margin : 0px 0px 0px 15px; | ||
321 | } | ||
322 | .fs_sep { | ||
323 | color: #2E3440; | ||
324 | font-size : 36px; | ||
325 | font-weight : bold; | ||
326 | } | ||
327 | |||
328 | .iconfolder1, .iconfolder2, .iconfolder3, .iconfolder4, .iconfolder5, .iconfolder6 { | ||
329 | font-family: Iosevka Nerd Font; | ||
330 | font-size : 32px; | ||
331 | font-weight : normal; | ||
332 | margin : 0px 0px 0px 75px; | ||
333 | } | ||
334 | .iconfolder1 { | ||
335 | color: #BF616A; | ||
336 | } | ||
337 | .iconfolder2 { | ||
338 | color: #A3BE8C; | ||
339 | } | ||
340 | .iconfolder3 { | ||
341 | color: #EBCB8B; | ||
342 | } | ||
343 | .iconfolder4 { | ||
344 | color: #81A1C1; | ||
345 | } | ||
346 | .iconfolder5 { | ||
347 | color: #B48EAD; | ||
348 | } | ||
349 | .iconfolder6 { | ||
350 | color: #88C0D0; | ||
351 | } | ||
352 | |||
353 | .label_folder1, .label_folder2, .label_folder3, .label_folder4, .label_folder5, .label_folder6 { | ||
354 | font-size : 22px; | ||
355 | font-weight : normal; | ||
356 | margin : 0px 0px 0px 30px; | ||
357 | } | ||
358 | .label_folder1 { | ||
359 | color: #BF616A; | ||
360 | } | ||
361 | .label_folder2 { | ||
362 | color: #A3BE8C; | ||
363 | } | ||
364 | .label_folder3 { | ||
365 | color: #EBCB8B; | ||
366 | } | ||
367 | .label_folder4 { | ||
368 | color: #81A1C1; | ||
369 | } | ||
370 | .label_folder5 { | ||
371 | color: #B48EAD; | ||
372 | } | ||
373 | .label_folder6 { | ||
374 | color: #88C0D0; | ||
375 | } | ||
376 | |||
377 | /** EOF *************************************************/ | ||
diff --git a/X11/eww/eww.yuck b/X11/eww/eww.yuck new file mode 100644 index 0000000..8e0f47c --- /dev/null +++ b/X11/eww/eww.yuck | |||
@@ -0,0 +1,310 @@ | |||
1 | ;; ** | ||
2 | ;; ** Widgets config for EWW | ||
3 | ;; ** Created by : @adi1090x | ||
4 | ;; ** Converted by : @tripleo1 | ||
5 | ;; ** | ||
6 | |||
7 | ;; ** Variables *********************************************************************** | ||
8 | |||
9 | ;; Profile vars | ||
10 | (defvar IMAGE "images/profile.jpg") | ||
11 | (defvar NAME "YOUR NAME") | ||
12 | (defpoll UNAME :interval "5m" `whoami`) | ||
13 | |||
14 | ;; System vars | ||
15 | (defpoll HOST :interval "5s" `hostname`) | ||
16 | (defpoll CPU_USAGE :interval "1s" `scripts/sys_info --cpu`) | ||
17 | (defpoll MEM_USAGE :interval "1s" `scripts/sys_info --mem`) | ||
18 | (defpoll BLIGHT :interval "1s" `scripts/sys_info --blight`) | ||
19 | (defpoll BATTERY :interval "5s" `scripts/sys_info --bat`) | ||
20 | |||
21 | ;; Time vars | ||
22 | (defpoll HOUR :interval "5s" `date +\"%I\"`) | ||
23 | (defpoll MIN :interval "5s" `date +\"%M\"`) | ||
24 | (defpoll MER :interval "5s" `date +\"%p\"`) | ||
25 | (defpoll DAY :interval "5s" `date +\"%A\"`) | ||
26 | |||
27 | ;; Uptime vars | ||
28 | (defpoll UPHOUR :interval "5s" `uptime -p | awk '{print $2 \" \" $3}' | sed 's/,//g'`) | ||
29 | (defpoll UPMIN :interval "5s" `uptime -p | awk '{print $4 \" \" $5}'`) | ||
30 | |||
31 | ;; Music vars | ||
32 | (defpoll SONG :interval "1s" `scripts/music_info --song`) | ||
33 | (defpoll ARTIST :interval "1s" `scripts/music_info --artist`) | ||
34 | (defpoll STATUS :interval "1s" `scripts/music_info --status`) | ||
35 | (defpoll CURRENT :interval "1s" `scripts/music_info --time`) | ||
36 | (defpoll COVER :interval "1s" `scripts/music_info --cover`) | ||
37 | (defpoll CTIME :interval "1s" `scripts/music_info --ctime`) | ||
38 | (defpoll TTIME :interval "1s" `scripts/music_info --ttime`) | ||
39 | |||
40 | ;; Weather vars | ||
41 | (defpoll ICON :interval "15m" `scripts/weather_info --icon`) | ||
42 | (defpoll STAT :interval "15m" `scripts/weather_info --stat`) | ||
43 | (defpoll TEMP :interval "15m" `scripts/weather_info --temp`) | ||
44 | (defpoll HEX :interval "15m" `scripts/weather_info --hex`) | ||
45 | (defpoll QUOTE :interval "15m" `scripts/weather_info --quote`) | ||
46 | (defpoll QUOTE2 :interval "15m" `scripts/weather_info --quote2`) | ||
47 | |||
48 | ;; Apps vars | ||
49 | (defpoll MAILS :interval "5m" `scripts/mails`) | ||
50 | |||
51 | ;; Files vars | ||
52 | (defpoll FREE :interval "5s" `df -h / | awk '{print $4}' | tail -n 1 | sed 's/G/GB/'`) | ||
53 | |||
54 | |||
55 | ;; ** Widgets ************************************************************************* | ||
56 | |||
57 | |||
58 | ;; background | ||
59 | (defwidget bg [] | ||
60 | (box :class "bg") | ||
61 | ) | ||
62 | |||
63 | ;; profile | ||
64 | (defwidget user [] | ||
65 | (box :class "genwin" :orientation "v" :spacing 35 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
66 | (box :style "background-image: url('${IMAGE}');" :class "face" :halign "center") | ||
67 | (label :class "fullname" :halign "center" :wrap "true" :limit-width 25 :text NAME) | ||
68 | (label :class "username" :halign "center" :wrap "true" :limit-width 25 :text UNAME))) | ||
69 | |||
70 | ;; system | ||
71 | (defwidget system [] | ||
72 | (box :class "genwin" :vexpand "false" :hexpand "false" | ||
73 | (box :orientation "v" :spacing 35 :halign "center" :valign "center" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
74 | (box :class "cpu_bar" :orientation "h" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
75 | (label :class "iconcpu" :text "") | ||
76 | (scale :min 0 :max 100 :value CPU_USAGE :active "false")) | ||
77 | (box :class "mem_bar" :orientation "h" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
78 | (label :class "iconmem" :text "") | ||
79 | (scale :min 0 :max 100 :value MEM_USAGE :active "false")) | ||
80 | (box :class "bright_bar" :orientation "h" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
81 | (label :class "iconbright" :text "") | ||
82 | (scale :min 0 :max 100 :value BLIGHT :active "false")) | ||
83 | (box :class "bat_bar" :orientation "h" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
84 | (label :class "iconbat" :text BATTERY) | ||
85 | (scale :min 0 :max 100 :value BATTERY :active "false"))))) | ||
86 | |||
87 | ;; clock | ||
88 | (defwidget clock [] | ||
89 | (box :class "genwin" :orientation "h" :spacing 50 :space-evenly false :vexpand "false" :hexpand "false" | ||
90 | (box :orientation "h" :spacing 0 | ||
91 | (label :class "time_hour" :valign "start" :wrap "true" :limit-width 25 :text HOUR) | ||
92 | (label :class "time_min" :valign "end" :wrap "true" :limit-width 25 :text MIN)) | ||
93 | (box :orientation "v" :spacing 0 | ||
94 | (label :class "time_mer" :valign "start" :halign "end" :wrap "true" :limit-width 25 :text MER) | ||
95 | (label :class "time_day" :valign "end" :halign "end" :wrap "true" :limit-width 25 :text DAY)))) | ||
96 | |||
97 | ;; uptime | ||
98 | (defwidget uptime [] | ||
99 | (box :class "genwin" | ||
100 | (box :orientation "h" :halign "center" :spacing 40 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
101 | (label :class "icontimer" :valign "center" :text "祥") | ||
102 | (box :orientation "v" :valign "center" :spacing 0 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
103 | (label :class "uphour" :halign "start" :wrap "true" :limit-width 25 :text UPHOUR) | ||
104 | (label :class "upmin" :halign "start" :wrap "true" :limit-width 25 :text UPMIN))))) | ||
105 | |||
106 | ;; Music | ||
107 | (defwidget music [] | ||
108 | (box :class "genwin" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
109 | (box :class "album_art" :vexpand "false" :hexpand "false" :style "background-image: url('${COVER}');") | ||
110 | (box :orientation "v" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
111 | (label :halign "center" :class "song" :wrap "true" :limit-width 20 :text SONG) | ||
112 | (label :halign "center" :class "artist" :wrap "true" :limit-width 15 :text ARTIST) | ||
113 | (box :orientation "h" :spacing 20 :halign "center" :space-evenly "true" :vexpand "false" :hexpand "false" | ||
114 | (button :class "btn_prev" :onclick "scripts/music_info --prev" "玲") | ||
115 | (button :class "btn_play" :onclick "scripts/music_info --toggle" STATUS) | ||
116 | (button :class "btn_next" :onclick "scripts/music_info --next" "怜")) | ||
117 | (box :class "music_bar" :halign "center" :vexpand "false" :hexpand "false" | ||
118 | (scale :onscroll "mpc -q seek +1" :min 0 :active "true" :max 100 :value CURRENT))))) | ||
119 | |||
120 | ;; github | ||
121 | (defwidget github [] | ||
122 | (box :class "github" :vexpand "false" :hexpand "false" | ||
123 | (button :class "iconweb" :onclick "scripts/open_links --gh" ""))) | ||
124 | |||
125 | |||
126 | (defwidget reddit [] | ||
127 | (box :class "reddit" :vexpand "false" :hexpand "false" | ||
128 | (button :class "iconweb" :onclick "scripts/open_links --rd" "樓"))) | ||
129 | |||
130 | |||
131 | (defwidget twitter [] | ||
132 | (box :class "twitter" :vexpand "false" :hexpand "false" | ||
133 | (button :class "iconweb" :onclick "scripts/open_links --tw" ""))) | ||
134 | |||
135 | ;; youtube | ||
136 | (defwidget youtube [] | ||
137 | (box :class "youtube" :vexpand "false" :hexpand "false" | ||
138 | (button :class "iconweb" :onclick "scripts/open_links --yt" ""))) | ||
139 | |||
140 | |||
141 | (defwidget mail [] | ||
142 | (box :class "mail" | ||
143 | (box :orientation "h" :halign "center" :spacing 20 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
144 | (button :class "iconmail" :onclick "scripts/open_links --mail" "") | ||
145 | (box :class "mailbox" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
146 | (button :class "label_mails" :onclick "scripts/open_links --mail" MAILS))))) | ||
147 | |||
148 | ;; weather | ||
149 | (defwidget weather [] | ||
150 | (box :class "genwin" | ||
151 | (box :orientation "v" :spacing 10 :space-evenly "false" :vexpand "false" :hexpand "false" | ||
152 | (box :orientation "h" :vexpand "false" :hexpand "false" | ||
153 | (label :class "iconweather" :halign "start" :style "color: ${HEX};" :text ICON) | ||
154 | (label :class "label_temp" :halign "end" :text TEMP)) | ||
155 | (box :orientation "v" :spacing 10 :halign "center" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
156 | (label :class "label_stat" :text STAT) | ||
157 | (label :class "label_quote" :text QUOTE) | ||
158 | (label :class "label_quote" :text QUOTE2))))) | ||
159 | |||
160 | ;; apps | ||
161 | (defwidget apps [] | ||
162 | (box :class "genwin" :orientation "v" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
163 | (box :class "appbox" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
164 | (button :style "background-image: url('images/icons/firefox.svg');" :class "app_fox" :onclick "scripts/open_apps --ff") | ||
165 | (button :style "background-image: url('images/icons/telegram.svg');" :class "app_telegram" :onclick "scripts/open_apps --tg") | ||
166 | (button :style "background-image: url('images/icons/discord.svg');" :class "app_discord" :onclick "scripts/open_apps --dc")) | ||
167 | (box :class "appbox" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
168 | (button :style "background-image: url('images/icons/terminal.svg');" :class "app_terminal" :onclick "scripts/open_apps --tr") | ||
169 | (button :style "background-image: url('images/icons/files.svg');" :class "app_files" :onclick "scripts/open_apps --fm") | ||
170 | (button :style "background-image: url('images/icons/geany.svg');" :class "app_geany" :onclick "scripts/open_apps --ge")) | ||
171 | (box :class "appbox" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
172 | (button :style "background-image: url('images/icons/code.svg');" :class "app_code" :onclick "scripts/open_apps --cd") | ||
173 | (button :style "background-image: url('images/icons/gimp.svg');" :class "app_gimp" :onclick "scripts/open_apps --gp") | ||
174 | (button :style "background-image: url('images/icons/virtualbox.svg');" :class "app_vbox" :onclick "scripts/open_apps --vb")))) | ||
175 | |||
176 | ;; power buttons | ||
177 | (defwidget logout [] | ||
178 | (box :class "genwin" :vexpand "false" :hexpand "false" | ||
179 | (button :class "btn_logout" :onclick "openbox --exit" ""))) | ||
180 | (defwidget sleep [] | ||
181 | (box :class "genwin" :vexpand "false" :hexpand "false" | ||
182 | (button :class "btn_sleep" :onclick "systemctl suspend" ""))) | ||
183 | (defwidget reboot [] | ||
184 | (box :class "genwin" :vexpand "false" :hexpand "false" | ||
185 | (button :class "btn_reboot" :onclick "systemctl reboot" ""))) | ||
186 | (defwidget poweroff [] | ||
187 | (box :class "genwin" :vexpand "false" :hexpand "false" | ||
188 | (button :class "btn_poweroff" :onclick "systemctl poweroff" ""))) | ||
189 | |||
190 | ;; folders | ||
191 | (defwidget folders [] | ||
192 | (box :class "genwin" :orientation "v" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
193 | (box :class "hddbox" :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
194 | (box :space-evenly "false" :vexpand "false" :hexpand "false" | ||
195 | (button :class "hddicon" :onclick "scripts/open_apps --fm" "") | ||
196 | (label :class "fs_sep" :text "|")) | ||
197 | (box :space-evenly "false" :vexpand "false" :hexpand "false" | ||
198 | (label :class "hdd_label" :wrap "true" :limit-width 25 :text FREE))) | ||
199 | (box :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
200 | (button :class "iconfolder1" :onclick "scripts/open_folders --docs" "") | ||
201 | (button :class "label_folder1" :onclick "scripts/open_folders --docs" "Documents")) | ||
202 | (box :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
203 | (button :class "iconfolder2" :onclick "scripts/open_folders --dl" "") | ||
204 | (button :class "label_folder2" :onclick "scripts/open_folders --dl" "Downloads")) | ||
205 | (box :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
206 | (button :class "iconfolder3" :onclick "scripts/open_folders --music" "") | ||
207 | (button :class "label_folder3" :onclick "scripts/open_folders --music" "Music")) | ||
208 | (box :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
209 | (button :class "iconfolder4" :onclick "scripts/open_folders --pics" "") | ||
210 | (button :class "label_folder4" :onclick "scripts/open_folders --pics" "Pictures")) | ||
211 | (box :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
212 | (button :class "iconfolder5" :onclick "scripts/open_folders --cfg" "ﮛ") | ||
213 | (button :class "label_folder5" :onclick "scripts/open_folders --cfg" "~/.config")) | ||
214 | (box :orientation "h" :space-evenly "false" :vexpand "false" :hexpand "false" | ||
215 | (button :class "iconfolder6" :onclick "scripts/open_folders --local" "ﮛ") | ||
216 | (button :class "label_folder6" :onclick "scripts/open_folders --local" "~/.local")))) | ||
217 | |||
218 | |||
219 | ;; ** Windows ************************************************************************* | ||
220 | |||
221 | |||
222 | ;; background | ||
223 | (defwindow background :stacking "fg" :focusable "false" :screen 1 | ||
224 | :geometry (geometry :x 0 :y 0 :width "1920px" :height "1080px") | ||
225 | (bg)) | ||
226 | |||
227 | ;; profile | ||
228 | (defwindow profile :stacking "fg" :focusable "false" :screen 1 | ||
229 | :geometry (geometry :x 150 :y 150 :width 350 :height 440) | ||
230 | (user)) | ||
231 | |||
232 | ;; system | ||
233 | (defwindow system :stacking "fg" :focusable "false" :screen 1 | ||
234 | :geometry (geometry :x 150 :y 150 :width 350 :height 325) | ||
235 | (system)) | ||
236 | |||
237 | ;; clock | ||
238 | (defwindow clock :stacking "fg" :focusable "false" :screen 1 | ||
239 | :geometry (geometry :x 515 :y 150 :width 850 :height 325) | ||
240 | (clock)) | ||
241 | |||
242 | ;; uptime | ||
243 | (defwindow uptime :stacking "fg" :focusable "false" :screen 1 | ||
244 | :geometry (geometry :x 1515 :y 320 :width 350 :height 155) | ||
245 | (uptime)) | ||
246 | |||
247 | ;; music | ||
248 | (defwindow music :stacking "fg" :focusable "false" :screen 1 | ||
249 | :geometry (geometry :x 515 :y 490 :width 610 :height 280) | ||
250 | (music)) | ||
251 | |||
252 | ;; github | ||
253 | (defwindow github :stacking "fg" :focusable "false" :screen 1 | ||
254 | :geometry (geometry :x 515 :y 785 :width 141 :height 145) | ||
255 | (github)) | ||
256 | |||
257 | |||
258 | (defwindow reddit :stacking "fg" :focusable "false" :screen 1 | ||
259 | :geometry (geometry :x 671 :y 785 :width 141 :height 145) | ||
260 | (reddit)) | ||
261 | |||
262 | |||
263 | (defwindow twitter :stacking "fg" :focusable "false" :screen 1 | ||
264 | :geometry (geometry :x 827 :y 785 :width 141 :height 145) | ||
265 | (twitter)) | ||
266 | |||
267 | ;; youtube | ||
268 | (defwindow youtube :stacking "fg" :focusable "false" :screen 1 | ||
269 | :geometry (geometry :x 983 :y 785 :width 142 :height 145) | ||
270 | (youtube)) | ||
271 | |||
272 | ;; weather | ||
273 | (defwindow weather :stacking "fg" :focusable "false" :screen 1 | ||
274 | :geometry (geometry :x 880 :y 150 :width 550 :height 325) | ||
275 | (weather)) | ||
276 | |||
277 | ;; apps | ||
278 | (defwindow apps :stacking "fg" :focusable "false" :screen 1 | ||
279 | :geometry (geometry :x 1140 :y 490 :width 290 :height 280) | ||
280 | (apps)) | ||
281 | |||
282 | |||
283 | (defwindow mail :stacking "fg" :focusable "false" :screen 1 | ||
284 | :geometry (geometry :x 1140 :y 785 :width 290 :height 145) | ||
285 | (mail)) | ||
286 | |||
287 | ;; logout | ||
288 | (defwindow logout :stacking "fg" :focusable "false" :screen 1 | ||
289 | :geometry (geometry :x 1445 :y 150 :width 155 :height 155) | ||
290 | (logout)) | ||
291 | |||
292 | ;; sleep | ||
293 | (defwindow sleep :stacking "fg" :focusable "false" :screen 1 | ||
294 | :geometry (geometry :x 1615 :y 150 :width 155 :height 155) | ||
295 | (sleep)) | ||
296 | |||
297 | ;; reboot | ||
298 | (defwindow reboot :stacking "fg" :focusable "false" :screen 1 | ||
299 | :geometry (geometry :x 1445 :y 320 :width 155 :height 155) | ||
300 | (reboot)) | ||
301 | |||
302 | ;; poweroff | ||
303 | (defwindow poweroff :stacking "fg" :focusable "false" :screen 1 | ||
304 | :geometry (geometry :x 1615 :y 320 :width 155 :height 155) | ||
305 | (poweroff)) | ||
306 | |||
307 | ;; folders | ||
308 | (defwindow folders :stacking "fg" :focusable "false" :screen 1 | ||
309 | :geometry (geometry :x 1445 :y 490 :width 325 :height 440) | ||
310 | (folders)) | ||
diff --git a/X11/eww/images/bg.png b/X11/eww/images/bg.png new file mode 100644 index 0000000..4a9b899 --- /dev/null +++ b/X11/eww/images/bg.png | |||
Binary files differ | |||
diff --git a/X11/eww/images/icons/code.svg b/X11/eww/images/icons/code.svg new file mode 100644 index 0000000..b340b75 --- /dev/null +++ b/X11/eww/images/icons/code.svg | |||
@@ -0,0 +1,8 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <circle cx="8.4665" cy="8.4665" r="7.1436" fill="#f9f9f9" style="paint-order:stroke fill markers"/> | ||
3 | <g transform="matrix(1.1855 0 0 1.1855 -14.244 .37886)" fill-rule="evenodd" stroke-width=".26458"> | ||
4 | <path d="m21.068 2.6024c-0.09052 0.010102-0.17861 0.04111-0.26664 0.099217 0.13772 0.17144-0.1403 1.7855 0.20785 2.004l0.2717 0.17053v3.8922l-0.42679 0.31977c-0.32895 0.24647 0.02978 1.6662-0.05651 1.8488 0.09533 0.05818 0.23775 0.12029 0.36237 0.10514 0.03992-0.0049 0.08033-0.01602 0.1204-0.03566l1.7368-0.85162c0.18929-0.09277 0.38033-0.16953 0.38033-0.38033v-5.9043c0-0.2108-0.19104-0.28757-0.38033-0.38033l-1.7368-0.85162c-0.04007-0.01964-0.08048-0.030802-0.1204-0.035657-0.03116-0.00379-0.06181-0.00337-0.09198 0z" fill="#35a0f3" style="paint-order:stroke fill markers"/> | ||
5 | <path d="m15.041 8.0035 5.6511-5.2228c0.25656-0.23712 0.58887-0.15304 0.58887 0.33742v1.7579l-5.2244 3.9957c-0.09136 0.07175-0.32943 0.24313-0.53715 0.04563l-0.52855-0.50252c-0.1387-0.13186-0.05988-0.30961 0.0501-0.41126z" fill="#115fb7" style="paint-order:stroke fill markers"/> | ||
6 | <path d="m15.041 5.6381 5.6511 5.2228c0.25656 0.23712 0.58887 0.15304 0.58887-0.33742v-1.7579l-5.2244-3.9957c-0.09136-0.071751-0.32943-0.24313-0.53715-0.045627l-0.52855 0.50251c-0.1387 0.13187-0.05988 0.30961 0.0501 0.41126z" fill="#1a81da" style="paint-order:stroke fill markers"/> | ||
7 | </g> | ||
8 | </svg> | ||
diff --git a/X11/eww/images/icons/discord.svg b/X11/eww/images/icons/discord.svg new file mode 100644 index 0000000..a02373d --- /dev/null +++ b/X11/eww/images/icons/discord.svg | |||
@@ -0,0 +1,6 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <circle cx="8.4665" cy="8.4665" r="7.1436" fill="#867de0" style="paint-order:stroke fill markers"/> | ||
3 | <g transform="matrix(2.2415 0 0 2.2415 3.7221 -652.3)" fill="#fff" stroke-width=".44648"> | ||
4 | <path d="m1.5689 293.37c-0.052606 2.2e-4 -0.4878 0.0126-0.94691 0.35371 0 0-0.48972 0.88082-0.48972 1.9657 0 0 0.28566 0.48973 1.0372 0.51353 0 0 0.12583-0.14963 0.22785-0.27887-0.4319-0.12923-0.59514-0.39788-0.59514-0.39788s0.034015 0.0238 0.09523 0.0578c0.003403 0 0.006787 4e-3 0.013593 7e-3 0.010203 7e-3 0.020408 0.0102 0.03061 0.017 0.08502 0.0476 0.17004 0.085 0.24826 0.11563 0.13943 0.0579 0.30608 0.10883 0.49992 0.14623 0.25506 0.0476 0.55433 0.0646 0.88081 4e-3 0.15984-0.0306 0.32309-0.0748 0.49313-0.14623 0.11903-0.0442 0.25166-0.10882 0.39109-0.20064 0 0-0.17004 0.27546-0.61554 0.4013 0.10202 0.12583 0.22446 0.27205 0.22446 0.27205 0.75158-0.0238 1.0372-0.51353 1.0372-0.51013 0-1.0849-0.48972-1.9657-0.48972-1.9657-0.48632-0.36388-0.95224-0.35368-0.95224-0.35368l-0.047602 0.0544c0.57814 0.17343 0.8468 0.42851 0.8468 0.42851-0.35369-0.19044-0.70056-0.28568-1.0236-0.32309-0.24486-0.0272-0.47952-0.0204-0.68697 7e-3 -0.020405 0-0.037404 4e-3 -0.05781 7e-3 -0.11903 0.0136-0.4081 0.0544-0.77198 0.21425-0.12583 0.0544-0.20065 0.0952-0.20065 0.0952s0.27887-0.26868 0.89101-0.44211l-0.034009-0.0408s-0.0018-3e-5 -0.00531-2e-5zm-0.086511 1.2549c0.19385 0 0.35029 0.16664 0.34689 0.37409 0 0.20745-0.15304 0.37409-0.34689 0.37409-0.19045 0-0.34689-0.16664-0.34689-0.37409s0.15304-0.37409 0.34689-0.37409zm1.2413 0c0.19045 0 0.34689 0.16664 0.34689 0.37409s-0.15304 0.37409-0.34689 0.37409c-0.19045 0-0.34689-0.16664-0.34689-0.37409s0.15304-0.37409 0.34689-0.37409z" fill="#fff" stroke-width=".44648"/> | ||
5 | </g> | ||
6 | </svg> | ||
diff --git a/X11/eww/images/icons/files.svg b/X11/eww/images/icons/files.svg new file mode 100644 index 0000000..8a2c892 --- /dev/null +++ b/X11/eww/images/icons/files.svg | |||
@@ -0,0 +1,16 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> | ||
2 | <defs> | ||
3 | <linearGradient id="b"> | ||
4 | <stop offset="0"/> | ||
5 | <stop stop-opacity="0" offset="1"/> | ||
6 | </linearGradient> | ||
7 | <linearGradient id="c" x1="32" x2="32" y1="13" y2="9" gradientTransform="scale(.26458)" gradientUnits="userSpaceOnUse" xlink:href="#b"/> | ||
8 | <linearGradient id="a" x1="30" x2="57" y1="44" y2="44" gradientUnits="userSpaceOnUse" xlink:href="#b"/> | ||
9 | </defs> | ||
10 | <circle cx="8.4665" cy="8.4665" r="6.6145" fill="#3578c7" style="paint-order:stroke markers fill"/> | ||
11 | <path transform="scale(.26458)" d="m19.398 14a22 22 0 0 0-9.3984 18 22 22 0 0 0 22 22 22 22 0 0 0 22-22 22 22 0 0 0-9.3711-18z" fill="#fff" stroke-width="3.7796" style="paint-order:stroke markers fill"/> | ||
12 | <path d="m8.4665 1.852a6.6145 6.6145 0 0 0-3.9444 1.3229h7.8976a6.6145 6.6145 0 0 0-3.9532-1.3229z" fill="url(#c)" opacity=".15" style="paint-order:stroke markers fill"/> | ||
13 | <path d="m8.466 4.2332c-0.29211 6.879e-4 -0.38134 0.27599-0.52916 0.52967l-0.30799 0.52812-5.5525 5.167e-4a7.1436 7.1436 0 0 0-0.75343 3.1749 7.1436 7.1436 0 0 0 7.1436 7.1436 7.1436 7.1436 0 0 0 7.1436-7.1436 7.1436 7.1436 0 0 0-1.3999-4.2332h-5.7432z" fill="#5294e2" style="paint-order:stroke markers fill"/> | ||
14 | <rect x="9.2599" y="4.762" width="3.969" height=".529" ry=".265" opacity=".25" style="paint-order:stroke markers fill"/> | ||
15 | <path transform="scale(.26458)" d="m59 32-27 27a27 27 0 0 0 27-27z" fill="url(#a)" opacity=".15" stroke-width="3.7796" style="paint-order:stroke markers fill"/> | ||
16 | </svg> | ||
diff --git a/X11/eww/images/icons/firefox.svg b/X11/eww/images/icons/firefox.svg new file mode 100644 index 0000000..e14fafa --- /dev/null +++ b/X11/eww/images/icons/firefox.svg | |||
@@ -0,0 +1,14 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <circle cx="296.65" cy="5.7567" r="0" enable-background="new" fill="#d5d3cf" stroke-width=".87152"/> | ||
3 | <g stroke-width=".18455"> | ||
4 | <path d="m15.093 5.809c-0.31078-0.74779-0.94116-1.5551-1.4349-1.8104a7.431 7.431 0 0 1 0.72435 2.1711l0.0013 0.012027c-0.80869-2.0162-2.1801-2.8291-3.3001-4.5993-0.056658-0.089506-0.11332-0.17919-0.16849-0.27387-0.03156-0.054034-0.05684-0.1028-0.0788-0.14764a1.3016 1.3016 0 0 1-0.10667-0.28328 0.018455 0.018455 0 0 0-0.01624-0.018476 0.025468 0.025468 0 0 0-0.01347 0c-9.59e-4 0-0.0024 0.001743-0.0035 0.001743-0.0011 3.6604e-4 -0.0035 0.001743-0.0051 0.002615l0.0028-0.005229c-1.7966 1.0519-2.4062 2.9993-2.4623 3.9734a3.5779 3.5779 0 0 0-1.9684 0.75868 2.1384 2.1384 0 0 0-0.18455-0.13989 3.316 3.316 0 0 1-0.020116-1.7483 5.2975 5.2975 0 0 0-1.7217 1.3306h-0.00332c-0.28355-0.35847-0.26362-1.5433-0.24738-1.7907a1.2785 1.2785 0 0 0-0.23881 0.12678 5.2089 5.2089 0 0 0-0.69907 0.59887 6.246 6.246 0 0 0-0.66862 0.80223v8.715e-4 -8.715e-4a6.0408 6.0408 0 0 0-0.95964 2.1671l-0.0096 0.047237c-0.013472 0.062924-0.062008 0.37814-0.070313 0.4466 0 0.00523-0.00111 0.010371-0.00166 0.015688a6.8167 6.8167 0 0 0-0.11608 0.98604v0.036865a7.1529 7.1529 0 0 0 14.201 1.2095c0.01199-0.092277 0.02178-0.18363 0.03248-0.27682a7.3556 7.3556 0 0 0-0.46395-3.5929zm-8.2438 5.5988c0.033403 0.01604 0.064777 0.03338 0.099101 0.04872l0.00499 0.0035q-0.052048-0.02494-0.10409-0.05187zm1.6385-4.314m5.8967-0.91057v-0.00697l0.0013 0.00784z" fill="#ff3944"/> | ||
5 | <path d="m11.618 6.6457c0.0155 0.010894 0.02989 0.021788 0.04447 0.032682a3.894 3.894 0 0 0-0.66438-0.86645c-2.2231-2.2234-0.58262-4.821-0.30598-4.953l0.0028-0.004358c-1.7966 1.0519-2.4062 2.9993-2.4622 3.9734 0.083416-0.0061 0.1661-0.012724 0.25136-0.012724a3.6098 3.6098 0 0 1 3.134 1.8302z" fill="#ffcd34"/> | ||
6 | <path d="m8.4881 7.0901c-0.011811 0.1779-0.64039 0.79153-0.86019 0.79153-2.0339 0-2.3641 1.2304-2.3641 1.2304 0.090063 1.0361 0.81202 1.8894 1.6847 2.3408 0.039863 0.02065 0.080279 0.03931 0.1207 0.05761q0.10501 0.04654 0.21002 0.08602a3.1807 3.1807 0 0 0 0.9307 0.17957c3.565 0.1672 4.2555-4.2631 1.6829-5.5486a2.4693 2.4693 0 0 1 1.7246 0.41874 3.6098 3.6098 0 0 0-3.134-1.8302c-0.084893 0-0.16794 0.00697-0.25136 0.012724a3.5779 3.5779 0 0 0-1.9684 0.75868c0.10907 0.092268 0.23217 0.21555 0.49145 0.47115 0.48536 0.47816 1.7301 0.97349 1.7329 1.0316z" fill="#9a46eb"/> | ||
7 | <path d="m5.9303 5.3471c0.057949 0.036865 0.10575 0.069025 0.14764 0.097994a3.316 3.316 0 0 1-0.020116-1.7483 5.2975 5.2975 0 0 0-1.7217 1.3306c0.03488-8.715e-4 1.0724-0.019522 1.5941 0.31964z" fill="#ff9633"/> | ||
8 | <path d="m1.3883 8.6327c0.55199 3.2617 3.5081 5.7521 6.8641 5.8471 3.1059 0.08784 5.0902-1.7152 5.91-3.4742a6.4777 6.4777 0 0 0 0.22257-4.8275v-0.00697c0-0.00523-0.0011-0.00872 0-0.00697l0.0013 0.012027c0.25375 1.6567-0.5889 3.2617-1.9062 4.3471l-0.0041 0.0092c-2.5667 2.0904-5.023 1.2612-5.5202 0.92277q-0.052031-0.024892-0.10407-0.051822c-1.4965-0.71531-2.1148-2.0788-1.9823-3.2481a1.8368 1.8368 0 0 1-1.6943-1.0658 2.6977 2.6977 0 0 1 2.6296-0.10557 3.5618 3.5618 0 0 0 2.6855 0.10557c-0.0027715-0.058131-1.2476-0.55364-1.7329-1.0316-0.25929-0.2556-0.38238-0.37869-0.49145-0.47115a2.1384 2.1384 0 0 0-0.18455-0.13989c-0.042447-0.028935-0.090246-0.06031-0.14764-0.097994-0.52172-0.3392-1.5592-0.32056-1.5936-0.31963h-0.00332c-0.28345-0.35907-0.26351-1.5439-0.24728-1.7913a1.2785 1.2785 0 0 0-0.23881 0.12678 5.2089 5.2089 0 0 0-0.69907 0.59886 6.246 6.246 0 0 0-0.67139 0.80039v8.715e-4 -8.715e-4a6.0408 6.0408 0 0 0-0.95964 2.1671c-0.0035061 0.014554-0.25763 1.1256-0.13232 1.7017z" fill="#ff6333"/> | ||
9 | <path d="m10.998 5.8177a3.894 3.894 0 0 1 0.66438 0.86738c0.0393 0.029719 0.07603 0.059264 0.10722 0.087841 1.6216 1.4948 0.77197 3.6079 0.70867 3.7584 1.3173-1.0853 2.1592-2.6904 1.9062-4.3471-0.80906-2.0171-2.1805-2.83-3.3005-4.6003-0.05666-0.089506-0.11332-0.17919-0.16849-0.27387-0.03156-0.054034-0.05684-0.1028-0.0788-0.14764a1.3016 1.3016 0 0 1-0.10667-0.28328 0.018455 0.018455 0 0 0-0.01624-0.018476 0.025468 0.025468 0 0 0-0.01347 0c-9.59e-4 0-0.0024 0.001743-0.0035 0.001743-0.0011 3.6604e-4 -0.0035 0.001743-0.0051 0.002615-0.27664 0.13121-1.9171 2.7287 0.30635 4.9522z" fill="#ff8619"/> | ||
10 | <path d="m11.768 6.7677c-0.03119-0.028586-0.06791-0.058131-0.10722-0.08785-0.01458-0.010894-0.02898-0.021788-0.04447-0.032682a2.4693 2.4693 0 0 0-1.7246-0.41874c2.5727 1.2863 1.8824 5.7158-1.6829 5.5486a3.1807 3.1807 0 0 1-0.9307-0.17955q-0.10501-0.039306-0.21002-0.08602c-0.040416-0.01848-0.080832-0.03687-0.1207-0.05761l0.00499 0.0035c0.49718 0.33938 2.9528 1.1685 5.5202-0.92277l0.0041-0.0092c0.06404-0.14948 0.91371-2.2631-0.70867-3.7574z" fill="#ffa316"/> | ||
11 | <path d="m5.2638 9.1121s0.33016-1.2304 2.3641-1.2304c0.2198 0 0.84893-0.61362 0.86019-0.79153a3.5618 3.5618 0 0 1-2.6855-0.10556 2.6977 2.6977 0 0 0-2.6296 0.10556 1.8368 1.8368 0 0 0 1.6943 1.0658c-0.13251 1.1695 0.48574 2.5329 1.9823 3.2481 0.033403 0.01604 0.064777 0.03338 0.099101 0.04872-0.87344-0.45122-1.5947-1.3046-1.6847-2.3407z" fill="#ffbb27"/> | ||
12 | </g> | ||
13 | <circle cx="-15.774" cy="13.461" r="0" enable-background="new" fill="#d5d3cf" stroke-width=".87152"/> | ||
14 | </svg> | ||
diff --git a/X11/eww/images/icons/geany.svg b/X11/eww/images/icons/geany.svg new file mode 100644 index 0000000..94029ba --- /dev/null +++ b/X11/eww/images/icons/geany.svg | |||
@@ -0,0 +1,5 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <path d="m8.3803 1.3234a7.1436 7.1436 0 1 1 0 14.286 7.1436 7.1436 0 0 1 0-14.286z" fill="#f6d32e"/> | ||
3 | <path d="m8.467 2.646a5.82 5.82 0 1 1 0 11.641 5.82 5.82 0 0 1 0-11.641z" fill="#fff" opacity=".15"/> | ||
4 | <path d="M8.404 5.396c-.24.003-.471.108-.54.286-.02.056-.022.073-.008.155.03.17.138.383.265.52.087.094.145.133.228.155.069.018.116.012.192-.023.17-.08.372-.377.424-.629.033-.154-.013-.26-.152-.352a.728.728 0 0 0-.409-.112zm-.74.532c-.017-.01-.295.03-.494.072-.464.098-.793.235-.978.407-.1.093-.132.152-.132.24s.032.147.132.24c.297.277 1.019.476 1.867.515.419.02.916-.012 1.314-.084.765-.137 1.286-.435 1.236-.708-.048-.26-.571-.523-1.27-.64l-.18-.031-.033.092c-.146.398-.416.671-.682.69-.21.015-.416-.12-.593-.386a1.59 1.59 0 0 1-.17-.363c-.004-.02-.012-.04-.018-.044zm3.151.688l-.008.074c-.038.352-.536.657-1.322.81-1.43.278-3.139-.008-3.546-.594l-.04-.058-.01.064c-.017.131-.01.82.01 1.057.011.128.018.235.015.238-.01.01-.256-.097-.324-.142-.23-.153-.336-.383-.376-.815l-.015-.156-.224-.004-.225-.003.01.08c.077.703.328 1.375.704 1.886.582.79 1.51 1.3 2.576 1.418.184.02.562.023.718.006.586-.065 1.056-.28 1.405-.643.424-.44.66-1.018.752-1.841.01-.097.016-.31.015-.61-.002-.501-.008-.547-.079-.694zm1.093.41a.75.75 0 0 0-.692.312c-.064.09-.136.237-.136.28 0 .07.075.142.148.142.068 0 .098-.028.159-.146a.603.603 0 0 1 .249-.274c.296-.15.644.044.7.39.014.078.008.156-.051.715-.076.722-.066.686-.22.778-.199.12-.51.182-1.017.201-.231.01-.233.01-.268.045-.053.053-.05.117.008.175l.044.044h.199c.547 0 .982-.093 1.235-.262a.544.544 0 0 0 .223-.27c.017-.063.144-1.25.144-1.344 0-.1-.035-.235-.089-.343a.793.793 0 0 0-.636-.443zm-5.156.488c.004 0 .094.176.202.39l.196.392-.192.387c-.106.212-.196.388-.2.39a5.234 5.234 0 0 1-.206-.385l-.198-.391.195-.392c.108-.215.2-.391.203-.391zm3.426.007l.2.398.198.397-.194.389a8.469 8.469 0 0 1-.2.388c-.004 0-.096-.176-.203-.392l-.196-.391.198-.395zm-1.711.42c.012 0 .588.936.585.949-.002.007-.133.218-.29.47a8.99 8.99 0 0 1-.295.458c-.01 0-.577-.9-.585-.928-.004-.015.572-.95.585-.949zm1.737 2.137l-.07.059c-.382.318-.872.501-1.467.548a4.085 4.085 0 0 1-1.362-.155 3.677 3.677 0 0 1-.705-.274l-.152-.077-.086.04c-.193.087-.372.232-.426.346a.33.33 0 0 0-.008.253c.104.235.53.455 1.128.583.306.065.507.092.964.129.029.002.215.006.414.007.39.002.603-.01.939-.05 1.411-.175 2.058-.714 1.39-1.158a1.84 1.84 0 0 0-.432-.206l-.127-.044z" fill="#d11616"/> | ||
5 | </svg> | ||
diff --git a/X11/eww/images/icons/gimp.svg b/X11/eww/images/icons/gimp.svg new file mode 100644 index 0000000..3a96df9 --- /dev/null +++ b/X11/eww/images/icons/gimp.svg | |||
@@ -0,0 +1,22 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> | ||
2 | <defs> | ||
3 | <linearGradient id="d" x1="34.601" x2="34.601" y1="50.4" y2="45.086" gradientUnits="userSpaceOnUse"> | ||
4 | <stop offset="0"/> | ||
5 | <stop stop-opacity="0" offset="1"/> | ||
6 | </linearGradient> | ||
7 | </defs> | ||
8 | <circle cx="8.4665" cy="8.4665" r="7.1436" fill="#f9f9f9" style="paint-order:stroke fill markers"/> | ||
9 | <g transform="matrix(.69229 0 0 .69229 2.5955 2.9766)"> | ||
10 | <path d="m2.57 2.117s-0.982 0-0.982 0.977c0 0-0.053 4.779 0.982 6.838 0.62 1.236 3.927 3.908 3.927 3.908h3.928s3.306-2.672 3.927-3.908c1.035-2.06 0.982-6.838 0.982-6.838 0.139-0.968-0.982-0.977-0.982-0.977 0 1.954-1.964 1.954-1.964 1.954h-7.855s-1.963 0-1.963-1.954z" fill="#5c4e3c"/> | ||
11 | <g transform="matrix(.34395 0 0 .34223 -43.43 -80.23)"> | ||
12 | <circle cx="159.87" cy="259.33" r="4" fill="#fff"/> | ||
13 | <path d="m159.74 257.33a3 3 0 0 0-2.874 2.995 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-2.85-2.992 1.5 1.5 0 0 1 1.35 1.492 1.5 1.5 0 0 1-1.5 1.5 1.5 1.5 0 0 1-1.5-1.5 1.5 1.5 0 0 1 1.374-1.495z" opacity=".8"/> | ||
14 | </g> | ||
15 | <g transform="matrix(.34395 0 0 .34223 -49.622 -80.23)"> | ||
16 | <circle cx="159.87" cy="259.33" r="4" fill="#fff"/> | ||
17 | <path d="m159.74 257.33a3 3 0 0 0-2.874 2.995 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-2.85-2.992 1.5 1.5 0 0 1 1.35 1.492 1.5 1.5 0 0 1-1.5 1.5 1.5 1.5 0 0 1-1.5-1.5 1.5 1.5 0 0 1 1.374-1.495z" opacity=".8"/> | ||
18 | </g> | ||
19 | <path d="m6.497 13.84s0.575 0.977 1.964 0.977c1.388 0 1.964-0.977 1.964-0.977s-0.491-0.977-1.964-0.977-1.964 0.977-1.964 0.977z" fill="#252525" fill-rule="evenodd"/> | ||
20 | <path transform="matrix(.34395 0 0 .34223 -2.546 -2.432)" d="m34.537 45.086a5.5 5 0 0 1 0.072 0.791 5.5 5 0 0 1-3.117 4.502c0.167 0.01 0.332 0.021 0.508 0.021 4.037 0 5.709-2.855 5.709-2.855s-0.846-1.677-3.172-2.46z" fill="url(#d)" fill-rule="evenodd" opacity=".25"/> | ||
21 | </g> | ||
22 | </svg> | ||
diff --git a/X11/eww/images/icons/telegram.svg b/X11/eww/images/icons/telegram.svg new file mode 100644 index 0000000..37c62cf --- /dev/null +++ b/X11/eww/images/icons/telegram.svg | |||
@@ -0,0 +1,20 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <defs> | ||
3 | <linearGradient id="a" x1="135" x2="160" y1="120" y2="160" gradientTransform="matrix(.05623 0 0 .05623 .071601 -.05278)" gradientUnits="userSpaceOnUse"> | ||
4 | <stop stop-color="#eff7fc" offset="0"/> | ||
5 | <stop stop-color="#fff" offset="1"/> | ||
6 | </linearGradient> | ||
7 | </defs> | ||
8 | <g transform="matrix(1.1739 0 0 1.1739 -5.5652 -5.5652)" stroke-width=".85185"> | ||
9 | <g transform="translate(8,8)" fill="#3db0e3"> | ||
10 | <path d="m24 1.0001c12.703 0 23 10.297 23 23 0 12.703-10.297 23-23 23-12.703 0-23-10.297-23-23 0-12.703 10.297-23 23-23z" stroke-width=".85186"/> | ||
11 | </g> | ||
12 | <g transform="matrix(3.5433 0 0 3.5433 27 6.8895)"> | ||
13 | <g transform="translate(-5.0801)" stroke-width=".85185"> | ||
14 | <path d="m5.582 9.787c-0.219 0-0.181-0.083-0.257-0.291l-0.643-2.116 3.981-2.487 0.465 0.122-0.386 1.058z" fill="#c8daea"/> | ||
15 | <path d="m5.582 9.787c0.169 0 0.243-0.077 0.337-0.169 0.145-0.142 2.024-1.968 2.024-1.968l-1.151-0.279-1.068 0.675-0.142 1.684z" fill="#a7c2d1"/> | ||
16 | <path d="m5.697 8.07 2.719 2.01c0.31 0.171 0.534 0.083 0.612-0.288l1.107-5.216c0.113-0.454-0.173-0.66-0.47-0.526l-6.5 2.507c-0.444 0.178-0.441 0.425-0.081 0.536l1.668 0.521 3.861-2.436c0.182-0.111 0.35-0.051 0.212 0.071z" fill="url(#a)"/> | ||
17 | </g> | ||
18 | </g> | ||
19 | </g> | ||
20 | </svg> | ||
diff --git a/X11/eww/images/icons/terminal.svg b/X11/eww/images/icons/terminal.svg new file mode 100644 index 0000000..ea2f949 --- /dev/null +++ b/X11/eww/images/icons/terminal.svg | |||
@@ -0,0 +1,14 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <defs> | ||
3 | <linearGradient id="a" x1="43" x2="49" y1="44" y2="50" gradientTransform="scale(.26458)" gradientUnits="userSpaceOnUse"> | ||
4 | <stop offset="0"/> | ||
5 | <stop stop-opacity="0" offset="1"/> | ||
6 | </linearGradient> | ||
7 | </defs> | ||
8 | <g> | ||
9 | <circle cx="8.4665" cy="8.4665" r="7.1436" fill="#72787e" style="paint-order:stroke fill markers"/> | ||
10 | <rect x="5.821" y="9.525" width="4.233" height=".529" ry=".265" fill="#fff" style="paint-order:stroke markers fill"/> | ||
11 | <path d="m4.502 4.725a0.264 0.264 0 0 0-0.262 0.13 0.264 0.264 0 0 0 0.097 0.362l2.842 1.64-2.842 1.641a0.264 0.264 0 0 0-0.097 0.362c0.074 0.127 0.235 0.17 0.362 0.097l3.207-1.852a0.26 0.26 0 0 0 0.127-0.225c0.00201-8e-3 0.00101-0.014999 0.00201-0.022 0-8e-3 0-0.014999-0.00201-0.023a0.26 0.26 0 0 0-0.127-0.224l-3.207-1.853a0.266 0.266 0 0 0-0.1-0.033z" fill="#fff" style="paint-order:stroke markers fill"/> | ||
12 | </g> | ||
13 | <path d="m15.582 9.0235-6.5629 6.5629a7.1437 7.1437 0 0 0 6.5629-6.5629z" fill="url(#a)" opacity=".25" stroke-width=".26458" style="paint-order:stroke fill markers"/> | ||
14 | </svg> | ||
diff --git a/X11/eww/images/icons/virtualbox.svg b/X11/eww/images/icons/virtualbox.svg new file mode 100644 index 0000000..3883061 --- /dev/null +++ b/X11/eww/images/icons/virtualbox.svg | |||
@@ -0,0 +1,11 @@ | |||
1 | <svg width="64" height="64" version="1.1" viewBox="0 0 16.933 16.933" xmlns="http://www.w3.org/2000/svg"> | ||
2 | <circle cx="8.4665" cy="8.4665" r="7.1436" fill="#f9f9f9" style="paint-order:stroke fill markers"/> | ||
3 | <g transform="matrix(.68 0 0 .68 2.7093 2.7093)"> | ||
4 | <g fill-rule="evenodd" stroke-width=".015243"> | ||
5 | <path d="m8.4658 15.671 6.6152-3.7386-0.04503-7.0332-6.5701 3.6002z" fill="#3585f3"/> | ||
6 | <path d="m8.4672 15.686-6.6152-3.7386 0.045025-7.0332 6.5701 3.6002z" fill="#1c69d0"/> | ||
7 | <path d="m1.878 4.9333 6.6205-3.6863 6.5618 3.6878-6.5973 3.6146z" fill="#5997f3"/> | ||
8 | </g> | ||
9 | <path d="m9.4829 5.2897c-0.051527 0.044681-0.14489 0.050032-0.20844 0.011627l-0.70395-0.4256c-0.057483-0.034751-0.071673-0.093824-0.032627-0.13855l0.60212-0.70525-2.1207 1.4692c-0.050056 0.034525-0.12916 0.038571-0.18765 0.00807-0.00344-0.00178-0.00641-0.0032-0.00985-0.00534-0.051323-0.031038-0.069143-0.082186-0.041974-0.12573l0.70895-1.1658-0.93877 0.2713c-0.056427 0.016385-0.12357 0.00653-0.16478-0.02698-0.042914-0.032769-0.053627-0.080369-0.027858-0.12004l0.40426-0.6147-0.86581-0.52345c-0.063261-0.038197-0.07299-0.10597-0.021522-0.15059 0.051705-0.044829 0.1453-0.049788 0.20853-0.011556l0.95538 0.57763c0.052678 0.031851 0.069763 0.085154 0.040742 0.12891l-0.28859 0.43888 0.92318-0.26653c0.05581-0.016515 0.12159-7e-3 0.16307 0.025497 0.042617 0.031702 0.054837 0.07859 0.031405 0.11841l-0.55304 0.9093 2.427-1.6807c0.052868-0.03685 0.13647-0.038571 0.19555-0.00394 0.060188 0.042972 0.073132 0.09461 0.034442 0.13999l-1.1542 1.3504 0.60392 0.36512c0.06332 0.038334 0.072669 0.10582 0.021202 0.15045zm0.70171 0.28666-0.36361-0.21983c-0.06319-0.038203-0.15702-0.033042-0.20849 0.011627-0.051527 0.044681-0.041739 0.1124 0.021451 0.1506l0.36361 0.21983c0.063059 0.038132 0.15695 0.033102 0.20849-0.011627 0.0515-0.044657 0.04162-0.11247-0.02145-0.1506zm0.78297 0.47337-0.38695-0.23394c-0.06306-0.038132-0.15702-0.033042-0.20848 0.011627-0.05154 0.044681-0.04162 0.11247 0.02145 0.1506l0.38695 0.23394c0.06302 0.038096 0.15695 0.033102 0.20848-0.011627 0.0515-0.044657 0.04157-0.1125-0.02145-0.1506z" fill="#fff" stroke-width=".044893"/> | ||
10 | </g> | ||
11 | </svg> | ||
diff --git a/X11/eww/images/music.png b/X11/eww/images/music.png new file mode 100644 index 0000000..3ded333 --- /dev/null +++ b/X11/eww/images/music.png | |||
Binary files differ | |||
diff --git a/X11/eww/images/profile.jpg b/X11/eww/images/profile.jpg new file mode 100644 index 0000000..575528e --- /dev/null +++ b/X11/eww/images/profile.jpg | |||
Binary files differ | |||
diff --git a/X11/eww/launch_dashboard b/X11/eww/launch_dashboard new file mode 100755 index 0000000..91e6441 --- /dev/null +++ b/X11/eww/launch_dashboard | |||
@@ -0,0 +1,33 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Files and cmd | ||
4 | FILE="$HOME/.cache/eww_launch.dashboard" | ||
5 | CFG="$HOME/.config/eww/dashboard" | ||
6 | EWW=`which eww` | ||
7 | |||
8 | ## Run eww daemon if not running already | ||
9 | if [[ ! `pidof eww` ]]; then | ||
10 | ${EWW} daemon | ||
11 | sleep 1 | ||
12 | fi | ||
13 | |||
14 | ## Open widgets | ||
15 | run_eww() { | ||
16 | ${EWW} --config "$CFG" open-many \ | ||
17 | background \ | ||
18 | system \ | ||
19 | clock \ | ||
20 | uptime \ | ||
21 | sleep | ||
22 | } | ||
23 | |||
24 | ## Launch or close widgets accordingly | ||
25 | if [[ ! -f "$FILE" ]]; then | ||
26 | touch "$FILE" | ||
27 | run_eww | ||
28 | else | ||
29 | ${EWW} --config "$CFG" close \ | ||
30 | background profile system clock uptime music github \ | ||
31 | reddit twitter youtube weather apps mail logout sleep reboot poweroff folders | ||
32 | rm "$FILE" | ||
33 | fi | ||
diff --git a/X11/eww/scripts/mails b/X11/eww/scripts/mails new file mode 100755 index 0000000..974d00a --- /dev/null +++ b/X11/eww/scripts/mails | |||
@@ -0,0 +1,7 @@ | |||
1 | #!/bin/python | ||
2 | |||
3 | import imaplib | ||
4 | obj = imaplib.IMAP4_SSL('imap.gmail.com',993) | ||
5 | obj.login('username@gmail.com','PASSWORD') # write your email and password | ||
6 | obj.select() | ||
7 | print(len(obj.search(None, 'UnSeen')[1][0].split())) | ||
diff --git a/X11/eww/scripts/music_info b/X11/eww/scripts/music_info new file mode 100755 index 0000000..e5a7283 --- /dev/null +++ b/X11/eww/scripts/music_info | |||
@@ -0,0 +1,97 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Get data | ||
4 | STATUS="$(mpc status)" | ||
5 | COVER="/tmp/.music_cover.jpg" | ||
6 | MUSIC_DIR="$HOME/Music" | ||
7 | |||
8 | ## Get status | ||
9 | get_status() { | ||
10 | if [[ $STATUS == *"[playing]"* ]]; then | ||
11 | echo "" | ||
12 | else | ||
13 | echo "喇" | ||
14 | fi | ||
15 | } | ||
16 | |||
17 | ## Get song | ||
18 | get_song() { | ||
19 | song=`mpc -f %title% current` | ||
20 | if [[ -z "$song" ]]; then | ||
21 | echo "Offline" | ||
22 | else | ||
23 | echo "$song" | ||
24 | fi | ||
25 | } | ||
26 | |||
27 | ## Get artist | ||
28 | get_artist() { | ||
29 | artist=`mpc -f %artist% current` | ||
30 | if [[ -z "$artist" ]]; then | ||
31 | echo "Offline" | ||
32 | else | ||
33 | echo "$artist" | ||
34 | fi | ||
35 | } | ||
36 | |||
37 | ## Get time | ||
38 | get_time() { | ||
39 | time=`mpc status | grep "%)" | awk '{print $4}' | tr -d '(%)'` | ||
40 | if [[ -z "$time" ]]; then | ||
41 | echo "0" | ||
42 | else | ||
43 | echo "$time" | ||
44 | fi | ||
45 | } | ||
46 | get_ctime() { | ||
47 | ctime=`mpc status | grep "#" | awk '{print $3}' | sed 's|/.*||g'` | ||
48 | if [[ -z "$ctime" ]]; then | ||
49 | echo "0:00" | ||
50 | else | ||
51 | echo "$ctime" | ||
52 | fi | ||
53 | } | ||
54 | get_ttime() { | ||
55 | ttime=`mpc -f %time% current` | ||
56 | if [[ -z "$ttime" ]]; then | ||
57 | echo "0:00" | ||
58 | else | ||
59 | echo "$ttime" | ||
60 | fi | ||
61 | } | ||
62 | |||
63 | ## Get cover | ||
64 | get_cover() { | ||
65 | ffmpeg -i "${MUSIC_DIR}/$(mpc current -f %file%)" "${COVER}" -y &> /dev/null | ||
66 | STATUS=$? | ||
67 | |||
68 | # Check if the file has a embbeded album art | ||
69 | if [ "$STATUS" -eq 0 ];then | ||
70 | echo "$COVER" | ||
71 | else | ||
72 | echo "images/music.png" | ||
73 | fi | ||
74 | } | ||
75 | |||
76 | ## Execute accordingly | ||
77 | if [[ "$1" == "--song" ]]; then | ||
78 | get_song | ||
79 | elif [[ "$1" == "--artist" ]]; then | ||
80 | get_artist | ||
81 | elif [[ "$1" == "--status" ]]; then | ||
82 | get_status | ||
83 | elif [[ "$1" == "--time" ]]; then | ||
84 | get_time | ||
85 | elif [[ "$1" == "--ctime" ]]; then | ||
86 | get_ctime | ||
87 | elif [[ "$1" == "--ttime" ]]; then | ||
88 | get_ttime | ||
89 | elif [[ "$1" == "--cover" ]]; then | ||
90 | get_cover | ||
91 | elif [[ "$1" == "--toggle" ]]; then | ||
92 | mpc -q toggle | ||
93 | elif [[ "$1" == "--next" ]]; then | ||
94 | { mpc -q next; get_cover; } | ||
95 | elif [[ "$1" == "--prev" ]]; then | ||
96 | { mpc -q prev; get_cover; } | ||
97 | fi | ||
diff --git a/X11/eww/scripts/open_apps b/X11/eww/scripts/open_apps new file mode 100755 index 0000000..57d3718 --- /dev/null +++ b/X11/eww/scripts/open_apps | |||
@@ -0,0 +1,42 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Open Applications | ||
4 | FILE="$HOME/.cache/eww_launch.dashboard" | ||
5 | CFG="$HOME/.config/eww/dashboard" | ||
6 | EWW=`which eww` | ||
7 | |||
8 | close_dash() { | ||
9 | ${EWW} --config "$CFG" close \ | ||
10 | background profile system clock uptime music github \ | ||
11 | reddit twitter youtube weather apps mail logout sleep reboot poweroff folders | ||
12 | rm -rf "$FILE" | ||
13 | } | ||
14 | |||
15 | if [[ "$1" == "--ff" ]]; then | ||
16 | close_dash && firefox & | ||
17 | |||
18 | elif [[ "$1" == "--tg" ]]; then | ||
19 | close_dash && telegram-desktop & | ||
20 | |||
21 | elif [[ "$1" == "--dc" ]]; then | ||
22 | close_dash && discord & | ||
23 | |||
24 | elif [[ "$1" == "--tr" ]]; then | ||
25 | close_dash && alacritty --working-directory ~ & | ||
26 | |||
27 | elif [[ "$1" == "--fm" ]]; then | ||
28 | close_dash && thunar ~ & | ||
29 | |||
30 | elif [[ "$1" == "--ge" ]]; then | ||
31 | close_dash && geany & | ||
32 | |||
33 | elif [[ "$1" == "--cd" ]]; then | ||
34 | close_dash && code & | ||
35 | |||
36 | elif [[ "$1" == "--gp" ]]; then | ||
37 | close_dash && gimp & | ||
38 | |||
39 | elif [[ "$1" == "--vb" ]]; then | ||
40 | close_dash && virtualbox & | ||
41 | |||
42 | fi | ||
diff --git a/X11/eww/scripts/open_folders b/X11/eww/scripts/open_folders new file mode 100755 index 0000000..c5a5628 --- /dev/null +++ b/X11/eww/scripts/open_folders | |||
@@ -0,0 +1,33 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Open folders in thunar | ||
4 | FILE="$HOME/.cache/eww_launch.dashboard" | ||
5 | CFG="$HOME/.config/eww/dashboard" | ||
6 | EWW=`which eww` | ||
7 | |||
8 | close_dash() { | ||
9 | ${EWW} --config "$CFG" close \ | ||
10 | background profile system clock uptime music github \ | ||
11 | reddit twitter youtube weather apps mail logout sleep reboot poweroff folders | ||
12 | rm -rf "$FILE" | ||
13 | } | ||
14 | |||
15 | if [[ "$1" == "--dl" ]]; then | ||
16 | close_dash && thunar ~/Downloads & | ||
17 | |||
18 | elif [[ "$1" == "--docs" ]]; then | ||
19 | close_dash && thunar ~/Documents & | ||
20 | |||
21 | elif [[ "$1" == "--music" ]]; then | ||
22 | close_dash && thunar ~/Music & | ||
23 | |||
24 | elif [[ "$1" == "--pics" ]]; then | ||
25 | close_dash && thunar ~/Pictures & | ||
26 | |||
27 | elif [[ "$1" == "--cfg" ]]; then | ||
28 | close_dash && thunar ~/.config & | ||
29 | |||
30 | elif [[ "$1" == "--local" ]]; then | ||
31 | close_dash && thunar ~/.local/share & | ||
32 | |||
33 | fi | ||
diff --git a/X11/eww/scripts/open_links b/X11/eww/scripts/open_links new file mode 100755 index 0000000..a338847 --- /dev/null +++ b/X11/eww/scripts/open_links | |||
@@ -0,0 +1,31 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Open links in firefox | ||
4 | FILE="$HOME/.cache/eww_launch.dashboard" | ||
5 | CFG="$HOME/.config/eww/dashboard" | ||
6 | EWW=`which eww` | ||
7 | cmd="firefox --new-tab" | ||
8 | |||
9 | close_dash() { | ||
10 | ${EWW} --config "$CFG" close \ | ||
11 | background profile system clock uptime music github \ | ||
12 | reddit twitter youtube weather apps mail logout sleep reboot poweroff folders | ||
13 | rm -rf "$FILE" | ||
14 | } | ||
15 | |||
16 | if [[ "$1" == "--mail" ]]; then | ||
17 | close_dash && ${cmd} "https://mail.google.com" | ||
18 | |||
19 | elif [[ "$1" == "--gh" ]]; then | ||
20 | close_dash && ${cmd} "https://github.com" | ||
21 | |||
22 | elif [[ "$1" == "--rd" ]]; then | ||
23 | close_dash && ${cmd} "https://reddit.com" | ||
24 | |||
25 | elif [[ "$1" == "--tw" ]]; then | ||
26 | close_dash && ${cmd} "https://twitter.com" | ||
27 | |||
28 | elif [[ "$1" == "--yt" ]]; then | ||
29 | close_dash && ${cmd} "https://youtube.com" | ||
30 | |||
31 | fi | ||
diff --git a/X11/eww/scripts/sys_info b/X11/eww/scripts/sys_info new file mode 100755 index 0000000..a168be3 --- /dev/null +++ b/X11/eww/scripts/sys_info | |||
@@ -0,0 +1,78 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Files and Data | ||
4 | PREV_TOTAL=0 | ||
5 | PREV_IDLE=0 | ||
6 | cpuFile="/tmp/.cpu_usage" | ||
7 | |||
8 | ## Get CPU usage | ||
9 | get_cpu() { | ||
10 | if [[ -f "${cpuFile}" ]]; then | ||
11 | fileCont=$(cat "${cpuFile}") | ||
12 | PREV_TOTAL=$(echo "${fileCont}" | head -n 1) | ||
13 | PREV_IDLE=$(echo "${fileCont}" | tail -n 1) | ||
14 | fi | ||
15 | |||
16 | CPU=(`cat /proc/stat | grep '^cpu '`) # Get the total CPU statistics. | ||
17 | unset CPU[0] # Discard the "cpu" prefix. | ||
18 | IDLE=${CPU[4]} # Get the idle CPU time. | ||
19 | |||
20 | # Calculate the total CPU time. | ||
21 | TOTAL=0 | ||
22 | |||
23 | for VALUE in "${CPU[@]:0:4}"; do | ||
24 | let "TOTAL=$TOTAL+$VALUE" | ||
25 | done | ||
26 | |||
27 | if [[ "${PREV_TOTAL}" != "" ]] && [[ "${PREV_IDLE}" != "" ]]; then | ||
28 | # Calculate the CPU usage since we last checked. | ||
29 | let "DIFF_IDLE=$IDLE-$PREV_IDLE" | ||
30 | let "DIFF_TOTAL=$TOTAL-$PREV_TOTAL" | ||
31 | let "DIFF_USAGE=(1000*($DIFF_TOTAL-$DIFF_IDLE)/$DIFF_TOTAL+5)/10" | ||
32 | echo "${DIFF_USAGE}" | ||
33 | else | ||
34 | echo "?" | ||
35 | fi | ||
36 | |||
37 | # Remember the total and idle CPU times for the next check. | ||
38 | echo "${TOTAL}" > "${cpuFile}" | ||
39 | echo "${IDLE}" >> "${cpuFile}" | ||
40 | } | ||
41 | |||
42 | ## Get Used memory | ||
43 | get_mem() { | ||
44 | printf "%.0f\n" $(free -m | grep Mem | awk '{print ($3/$2)*100}') | ||
45 | } | ||
46 | |||
47 | ## Get Brightness | ||
48 | get_blight() { | ||
49 | CARD=`ls /sys/class/backlight | head -n 1` | ||
50 | |||
51 | if [[ "$CARD" == *"intel_"* ]]; then | ||
52 | BNESS=`xbacklight -get` | ||
53 | LIGHT=${BNESS%.*} | ||
54 | else | ||
55 | BNESS=`blight -d $CARD get brightness` | ||
56 | PERC="$(($BNESS*100/255))" | ||
57 | LIGHT=${PERC%.*} | ||
58 | fi | ||
59 | |||
60 | echo "$LIGHT" | ||
61 | } | ||
62 | |||
63 | ## Get Battery | ||
64 | get_battery() { | ||
65 | BAT=CMB0 | ||
66 | cat /sys/class/power_supply/${BAT}/capacity | ||
67 | } | ||
68 | |||
69 | ## Execute accordingly | ||
70 | if [[ "$1" == "--cpu" ]]; then | ||
71 | get_cpu | ||
72 | elif [[ "$1" == "--mem" ]]; then | ||
73 | get_mem | ||
74 | elif [[ "$1" == "--blight" ]]; then | ||
75 | get_blight | ||
76 | elif [[ "$1" == "--bat" ]]; then | ||
77 | get_battery | ||
78 | fi | ||
diff --git a/X11/eww/scripts/weather_info b/X11/eww/scripts/weather_info new file mode 100755 index 0000000..6fee821 --- /dev/null +++ b/X11/eww/scripts/weather_info | |||
@@ -0,0 +1,147 @@ | |||
1 | #!/bin/bash | ||
2 | |||
3 | ## Collect data | ||
4 | cache_dir="$HOME/.cache/eww/weather" | ||
5 | cache_weather_stat=${cache_dir}/weather-stat | ||
6 | cache_weather_degree=${cache_dir}/weather-degree | ||
7 | cache_weather_quote=${cache_dir}/weather-quote | ||
8 | cache_weather_hex=${cache_dir}/weather-hex | ||
9 | cache_weather_icon=${cache_dir}/weather-icon | ||
10 | |||
11 | ## Weather data | ||
12 | KEY="YOUR_KEY" | ||
13 | ID="CITY_ID" | ||
14 | UNIT="metric" # Available options : 'metric' or 'imperial' | ||
15 | |||
16 | ## Make cache dir | ||
17 | if [[ ! -d "$cache_dir" ]]; then | ||
18 | mkdir -p ${cache_dir} | ||
19 | fi | ||
20 | |||
21 | ## Get data | ||
22 | get_weather_data() { | ||
23 | weather=`curl -sf "http://api.openweathermap.org/data/2.5/weather?APPID="$KEY"&id="$ID"&units="$UNIT""` | ||
24 | echo ${weather} | ||
25 | |||
26 | if [ ! -z "$weather" ]; then | ||
27 | weather_temp=`echo "$weather" | jq ".main.temp" | cut -d "." -f 1` | ||
28 | weather_icon_code=`echo "$weather" | jq -r ".weather[].icon" | head -1` | ||
29 | weather_description=`echo "$weather" | jq -r ".weather[].description" | head -1 | sed -e "s/\b\(.\)/\u\1/g"` | ||
30 | |||
31 | #Big long if statement of doom | ||
32 | if [ "$weather_icon_code" == "50d" ]; then | ||
33 | weather_icon=" " | ||
34 | weather_quote="Forecast says it's misty \nMake sure you don't get lost on your way..." | ||
35 | weather_hex="#84afdb" | ||
36 | elif [ "$weather_icon_code" == "50n" ]; then | ||
37 | weather_icon=" " | ||
38 | weather_quote="Forecast says it's a misty night \nDon't go anywhere tonight or you might get lost..." | ||
39 | weather_hex="#84afdb" | ||
40 | elif [ "$weather_icon_code" == "01d" ]; then | ||
41 | weather_icon=" " | ||
42 | weather_quote="It's a sunny day, gonna be fun! \nDon't go wandering all by yourself though..." | ||
43 | weather_hex="#ffd86b" | ||
44 | elif [ "$weather_icon_code" == "01n" ]; then | ||
45 | weather_icon=" " | ||
46 | weather_quote="It's a clear night \nYou might want to take a evening stroll to relax..." | ||
47 | weather_hex="#fcdcf6" | ||
48 | elif [ "$weather_icon_code" == "02d" ]; then | ||
49 | weather_icon=" " | ||
50 | weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." | ||
51 | weather_hex="#adadff" | ||
52 | elif [ "$weather_icon_code" == "02n" ]; then | ||
53 | weather_icon=" " | ||
54 | weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" | ||
55 | weather_hex="#adadff" | ||
56 | elif [ "$weather_icon_code" == "03d" ]; then | ||
57 | weather_icon=" " | ||
58 | weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." | ||
59 | weather_hex="#adadff" | ||
60 | elif [ "$weather_icon_code" == "03n" ]; then | ||
61 | weather_icon=" " | ||
62 | weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" | ||
63 | weather_hex="#adadff" | ||
64 | elif [ "$weather_icon_code" == "04d" ]; then | ||
65 | weather_icon=" " | ||
66 | weather_quote="It's cloudy, sort of gloomy \nYou'd better get a book to read..." | ||
67 | weather_hex="#adadff" | ||
68 | elif [ "$weather_icon_code" == "04n" ]; then | ||
69 | weather_icon=" " | ||
70 | weather_quote="It's a cloudy night \nHow about some hot chocolate and a warm bed?" | ||
71 | weather_hex="#adadff" | ||
72 | elif [ "$weather_icon_code" == "09d" ]; then | ||
73 | weather_icon=" " | ||
74 | weather_quote="It's rainy, it's a great day! \nGet some ramen and watch as the rain falls..." | ||
75 | weather_hex="#6b95ff" | ||
76 | elif [ "$weather_icon_code" == "09n" ]; then | ||
77 | weather_icon=" " | ||
78 | weather_quote=" It's gonna rain tonight it seems \nMake sure your clothes aren't still outside..." | ||
79 | weather_hex="#6b95ff" | ||
80 | elif [ "$weather_icon_code" == "10d" ]; then | ||
81 | weather_icon=" " | ||
82 | weather_quote="It's rainy, it's a great day! \nGet some ramen and watch as the rain falls..." | ||
83 | weather_hex="#6b95ff" | ||
84 | elif [ "$weather_icon_code" == "10n" ]; then | ||
85 | weather_icon=" " | ||
86 | weather_quote=" It's gonna rain tonight it seems \nMake sure your clothes aren't still outside..." | ||
87 | weather_hex="#6b95ff" | ||
88 | elif [ "$weather_icon_code" == "11d" ]; then | ||
89 | weather_icon="" | ||
90 | weather_quote="There's storm for forecast today \nMake sure you don't get blown away..." | ||
91 | weather_hex="#ffeb57" | ||
92 | elif [ "$weather_icon_code" == "11n" ]; then | ||
93 | weather_icon="" | ||
94 | weather_quote="There's gonna be storms tonight \nMake sure you're warm in bed and the windows are shut..." | ||
95 | weather_hex="#ffeb57" | ||
96 | elif [ "$weather_icon_code" == "13d" ]; then | ||
97 | weather_icon=" " | ||
98 | weather_quote="It's gonna snow today \nYou'd better wear thick clothes and make a snowman as well!" | ||
99 | weather_hex="#e3e6fc" | ||
100 | elif [ "$weather_icon_code" == "13n" ]; then | ||
101 | weather_icon=" " | ||
102 | weather_quote="It's gonna snow tonight \nMake sure you get up early tomorrow to see the sights..." | ||
103 | weather_hex="#e3e6fc" | ||
104 | elif [ "$weather_icon_code" == "40d" ]; then | ||
105 | weather_icon=" " | ||
106 | weather_quote="Forecast says it's misty \nMake sure you don't get lost on your way..." | ||
107 | weather_hex="#84afdb" | ||
108 | elif [ "$weather_icon_code" == "40n" ]; then | ||
109 | weather_icon=" " | ||
110 | weather_quote="Forecast says it's a misty night \nDon't go anywhere tonight or you might get lost..." | ||
111 | weather_hex="#84afdb" | ||
112 | else | ||
113 | weather_icon=" " | ||
114 | weather_quote="Sort of odd, I don't know what to forecast \nMake sure you have a good time!" | ||
115 | weather_hex="#adadff" | ||
116 | fi | ||
117 | echo "$weather_icon" > ${cache_weather_icon} | ||
118 | echo "$weather_description" > ${cache_weather_stat} | ||
119 | echo "$weather_temp""°C" > ${cache_weather_degree} | ||
120 | echo -e "$weather_quote" > ${cache_weather_quote} | ||
121 | echo "$weather_hex" > ${cache_weather_hex} | ||
122 | else | ||
123 | echo "Weather Unavailable" > ${cache_weather_stat} | ||
124 | echo " " > ${cache_weather_icon} | ||
125 | echo -e "Ah well, no weather huh? \nEven if there's no weather, it's gonna be a great day!" > ${cache_weather_quote} | ||
126 | echo "-" > ${cache_weather_degree} | ||
127 | echo "#adadff" > ${tcache_weather_hex} | ||
128 | fi | ||
129 | } | ||
130 | |||
131 | ## Execute | ||
132 | if [[ "$1" == "--getdata" ]]; then | ||
133 | get_weather_data | ||
134 | elif [[ "$1" == "--icon" ]]; then | ||
135 | cat ${cache_weather_icon} | ||
136 | elif [[ "$1" == "--temp" ]]; then | ||
137 | cat ${cache_weather_degree} | ||
138 | elif [[ "$1" == "--hex" ]]; then | ||
139 | cat ${cache_weather_hex} | ||
140 | elif [[ "$1" == "--stat" ]]; then | ||
141 | cat ${cache_weather_stat} | ||
142 | elif [[ "$1" == "--quote" ]]; then | ||
143 | cat ${cache_weather_quote} | head -n1 | ||
144 | elif [[ "$1" == "--quote2" ]]; then | ||
145 | cat ${cache_weather_quote} | tail -n1 | ||
146 | fi | ||
147 | |||