From 774894486fc7ee7f31b4f486750a60641525e2f7 Mon Sep 17 00:00:00 2001 From: lucy Date: Thu, 26 Feb 2026 11:58:38 +0100 Subject: [PATCH] add configs --- components/battery.o | Bin 0 -> 5256 bytes components/cat.o | Bin 0 -> 2160 bytes components/cpu.o | Bin 0 -> 3184 bytes components/datetime.o | Bin 0 -> 2000 bytes components/disk.o | Bin 0 -> 3192 bytes components/entropy.o | Bin 0 -> 1856 bytes components/hostname.o | Bin 0 -> 1712 bytes components/ip.o | Bin 0 -> 3168 bytes components/kernel_release.o | Bin 0 -> 1888 bytes components/keyboard_indicators.o | Bin 0 -> 2480 bytes components/keymap.o | Bin 0 -> 4080 bytes components/load_avg.o | Bin 0 -> 1920 bytes components/netspeeds.o | Bin 0 -> 2848 bytes components/num_files.o | Bin 0 -> 2176 bytes components/ram.o | Bin 0 -> 4864 bytes components/run_command.o | Bin 0 -> 2176 bytes components/swap.o | Bin 0 -> 3952 bytes components/temperature.o | Bin 0 -> 1776 bytes components/uptime.o | Bin 0 -> 2040 bytes components/user.o | Bin 0 -> 2256 bytes components/volume.c | 30 +++++++++++++ components/volume.o | Bin 0 -> 5096 bytes components/wifi.o | Bin 0 -> 6160 bytes config.def.h | 7 +++- config.h | 70 +++++++++++++++++++++++++++++++ slstatus | Bin 0 -> 35496 bytes slstatus.h | 1 + slstatus.o | Bin 0 -> 6552 bytes util.o | Bin 0 -> 6248 bytes 29 files changed, 106 insertions(+), 2 deletions(-) create mode 100644 components/battery.o create mode 100644 components/cat.o create mode 100644 components/cpu.o create mode 100644 components/datetime.o create mode 100644 components/disk.o create mode 100644 components/entropy.o create mode 100644 components/hostname.o create mode 100644 components/ip.o create mode 100644 components/kernel_release.o create mode 100644 components/keyboard_indicators.o create mode 100644 components/keymap.o create mode 100644 components/load_avg.o create mode 100644 components/netspeeds.o create mode 100644 components/num_files.o create mode 100644 components/ram.o create mode 100644 components/run_command.o create mode 100644 components/swap.o create mode 100644 components/temperature.o create mode 100644 components/uptime.o create mode 100644 components/user.o create mode 100644 components/volume.o create mode 100644 components/wifi.o create mode 100644 config.h create mode 100755 slstatus create mode 100644 slstatus.o create mode 100644 util.o diff --git a/components/battery.o b/components/battery.o new file mode 100644 index 0000000000000000000000000000000000000000..dea927a6234c009778e04258d45ba790f71a8900 GIT binary patch literal 5256 zcmb`JZEPDw8pp>@LL6GwF4vYoT3DSNYG|{`hPJ#@yJ?#V7s^|5*H_He-87+&ZFbkt zAfQxkDy(4ClPakALiun~k@^7%@!?KTnHHpi#9e!;bT1Vs&@U|pQG$fTO9{_2J7Z4= zyGV$Uc3yt-f1Y_}c6MfWuN_<$3|cjB${Njs=w^N1H)YL;2H{ zg#ry0&vKy`G|z0J#s6;Jn%I)qdi#A?|Ua*(_HKz@?#RGwYzG6==`;XHVp(r#$Sq8<|;VlujLB&bHH~ z^O<+A#piq8i@+G0SzL+X#L%!BT&!Vm?Q(GKa&Q~{;O1a(?P_qe)WrfjGf@1JPCY|t z$&1e6*4{!odz=>DkI=#o&G}DhsRgB#Hu~<_=7Fg-i$gdM9JkIqVmOc5BG;KpPs6F8 zEw1xLzSJ=>n^v=Y{s8PPe?lENAy|-0R{LXG8brumA?_jG{nEwRSvpzv-tlcizp$Mw z?|O}kv9E)V$tNA2Tm<7b@O_8xJG^)6?Ch-XA2yK^+hjTX{N2z`r`ALx5J`A%H){<= zLv-@ryIN;x_~v7k1+;jo@L7PKI#1h9A$oTvyrB$oUvL5i#|qOR_?)&KL&1k2_+Tdd z2nZu=(j(#SV=lT|cA+va96K=+-tr-~zNX=S{IrTre(SsXXQiDMFTe*!Po2XN+fJf4 zP@}gk;B6y&+cj?|D;jj*n9ELrtM6C+a!=!ntFsq+_+B{P?M}GeskG&~-MQ?Owv%-8 zxm(PBWWgMb|4dmHT_ zT?vbT_AdlMu@CJF5Z@tY+Vo|B875eCOkOv`^=T$w&(`Z~s&j+R0bx+$VlHUk#8&@O zPm7=#AXijjyjnwjjSKuoR$(8#K&)KCIj*yuma#?)xk-jlH#z^4!dG(c`>S={$@#__ zVzoHuyA{5c^S>$lUd~@v`2C!3P`JNmTF6@p-^BI*SNNl>jXUYmG{Tx8qV}X2Zz0mJ z5hD)d_&uo!-)B8u0Dd*RN%6kf9tXC+f&S$N{M82h4dCd1KL23Zw*l;E1O5A4|0&nA zZvhzDW_h0NOc*JW8%ympQrV2_<(zEJ=po}4=Eh(j%S^1@g4uG+dNEsx*{zt}hS}|y zt-#FmO_+_zq$V>pmlNB~bR zBi2~DD#i=NCa&kC#&cEZ*yGk%2G3{GiF1R5=iEYgeuQfq(>(|wsr*47Gky)!g&th7 zgnF4D;2e*XR(OQ|@0_dtPfL2-b3*?=Nq?=x&o$70CF!q|^sW58;+`szzf#gaA?f8f_egp?orHh<;lqUSEQUw$Ba$A^M#29j>E-x;l=O1^QJfGY zb)8ppj)fe5zoeJr|BIxb3pOGiOX62a{8@=>5-&9H|DvQ1OZtP7US6NqBt4!hBAz!T zK2PHBNc?Jve$bSs5`wx)8hUFLtqGm$!Fh@&;ZBwgZ3q zzC(L7IpSF3HjnzZ7dn{Y603hUabTD#eBbyjUn}ZZ;$Fh{9fwCw)A;d2I?V0y8^CeI zz7qT8M$VOC$WnA#C-Lo2?ZN*k^!Z!u@xKdw_QE44G5#`TK+zQCS}?-8I{tv=`r<&>iOX zw+O&XF>g_3fQz~;J;Uu~hILi@EHJ#k$s%rl;8BFI3 literal 0 HcmV?d00001 diff --git a/components/cat.o b/components/cat.o new file mode 100644 index 0000000000000000000000000000000000000000..ffc6a18cc780ce310f9518d9669816e54d793cc3 GIT binary patch literal 2160 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 literal 0 HcmV?d00001 diff --git a/components/disk.o b/components/disk.o new file mode 100644 index 0000000000000000000000000000000000000000..b051fdd18a443e64a4513a4b4d5b9acb3b6b3c79 GIT binary patch literal 3192 zcmcIl&2Jk;6rW9-#)Z~vN-Lr^LVIwiq3z1+5`>BXqoiaHr9ynEr4{bRUe}T95AAM> zgCd9&RjL&t^&fx(r`$l|(i1W%hrj{BjSGk)f*x9Pqlof;v-9f7)&*45pEO^;_ciAFsPBUoBVM)rrX*N!;$)Y{%{1 za@V44>KCY9>MibbdT#e8ckOwsCF%5j+vlz>Wizh%=~6cLh1jkH?&=%aPQ^X6S9*&^ zrMA0refi9_{}b$@yE>E2xtDsKvA%0Qh3MUlm7fjw`(NFi8=yA&=BXaE#_wot-mUcw zX?@){-}$m{W_IIi)JHkJzIk@DZ=RN9-#mOX-uQ$08ZC9>4?K1IaZcmzp{1-PW62ZC z{M+Y+kr!R8hStH!@Zd2qSwXHCH(rcqr;B2Cdit1^oAsMft7SP;cENT^?LxlrOupbe zZMCPKRHVgRY)RE3GSo(?&7OQyj0n*Kw~ZQrxkYUtH>8|v+Ys@3C+Prt<3Skjy(WxK z#yGHREOmvHE#fDXtby@(I^siRRts6ZV#ijJR(m8fN;iHh9+S%*BK9|sA!mEE zxbmBcdx9FyEeV^5Vf@j1@OVgu>7OJXaXFqm58_VUL;sx8e+~&Guw9+z@UyOXc^*)x z%!hTmEbJ50d2|lCqv#4!RH_EPFI4S|cfFt~s*R{rTWEMqQ7Vz3TrZVt^-|TFzYtrr z{h%!7+QED?s>V#ziaaG;2z^;L7Ge`n*U0ssw`1f%5~%)V?K3|m*;pSn&OGu1z|TX} zm@k7QfPa`8^J^dp$+#cI^j&d3Q9ShZxPNK-kg@+!m0#>1ca`}^H6GQ-{Dk7+W4FdT z8n5sFjK=GEt84!8X0ZRZrmye6tMPi?KGt|W?xx1;aeq*J^1Oc3^!2#6G+vLJfdc~a zpvSd95+GJ8ay=va0nc?_OYnRTK1}d@4}={qHX?71#wdu#8qWg%f@ep5ClYqWi#%b^ zg`u#678X!v{uI;W#|r2L+*>zbgZL@2{~oIi{`LJ4FKcuAm2go z{J&DPcsmi7`DFaVB!JKRwRgxCJ`2=zaQsJflI9$r$D-om|H44It@fXMoB8{Bd_~#w z`^6rXl|9~l9UPa(w@AoyUGMY%n7=9+jZsUgUsc4bx>K6-zL|cXCWxQ3PpJc0XGJw8 z?H7q3RzKfiQ-pJ}7XtNzd(ZYtN(?^f*u6_0neU1coAy9@UQ3Gxm3PcDqFK=Sh>ugDHvWQhdhQnggpP?F$`d< zgh{)ko5(%Ck^1G03^;60U@VdG@*xv-5fm{pl}R+?HC+*HmVM4p;n>~ zOE3uIy6ZP#IgD2QqzR4_CvJVssjsX#&2*9g-F|@Pkh9mV&#;FeR0jap%O59~oaT0aqifECy?yAJwOh7f<#09k+$DpEs z3<|fD1*#sjTKHC={2=iZuHg0bG1z|UZzx>;(2J5brcyy~#c4)v%R9Kie<>zr)2`8* z=~QJy_CkCVtJ4%3^yXC^MExy4(k|mPPs){rpJeaynSR}}`BXDI gdxT(#8%qC<2w>u}V!~O}`sG&{e031nRkHbi0dkJM`Tzg` literal 0 HcmV?d00001 diff --git a/components/hostname.o b/components/hostname.o new file mode 100644 index 0000000000000000000000000000000000000000..ed8e54a73a7dc02b6eae663fa63a1b108c8647cb GIT binary patch literal 1712 zcmb_cO=}Zj5T32oL~PR-6oiVdAflkJ*=R%xN+8r!D58P~y_8MdHei#DyBkdO;6;xG zkNymAdXj*DM(`wFM1(reW+vIbi5GETGBeM7?aoa0_4?+W1;-&Jhi=o9=lNdyx@q>W$>$l+x6WH4&Q`KJnSTXlT4gMW7$?M3U+;y z1cQXkQ$O*^G~<{|6v9BbXFM{ku+!l~Bhw9&!0_o@i4(u|OzfR*-}Iue7evXBQ&BKz zZ*51I$bTW1tKbSSvnmGjRQ%00Z^M zV&>QGf0-jt^I!8l&PB}%bC$IKN)}{Y`>U)8R<`2ah<(k%HBaST$+yDjqYa3ydFp=5 z3hwv7O|tz-0`7}cq4QV!IV-4X=jWx7{a$wdF6YkM|9dH@d&d5cGHbr#^Lld_-IV?# o7)^ z^M3Q*%$qlV?uFRMk$|Ew5``URHH|1^n`*7y=QaD7#&$95No#D_{lhvr_5@$LsW&s0 z94Yne>jIMz_x*4PfaTui>leZ*U!Muz{{#B+(&@0eT3%@9>yM*umOWgVLR7L(+U?)Fyav{c7h z+Q3CWGj5%>#;r5gerxOe{Yn7h`|-w~+uNRYH)>x9%}dns%^+kcEV7ggtHbUV7r{YV zg1$hG@ltn~yA?={)616^L(DOF30MA|7XvK1le<5QwY9)>?DjxVaYB6EQz~tc*UD8g zG0VJkGOYe%CCeK@T*kGjl#@v(l1aPR%b=Z0WK)@3I^V1BD>C>c^K&^iTVQNxV4zp; z8cOAyd|o#X8d1ZH7ow5qp-9y1(F+G35l| z;`P&+RM?&RZm>mB&Yxh)d{F6V-Ko9;#-qUSn4kpFxnB#u9O&0V>rF9DUu(9su8S>} z7FpggqCY(8aJ%l6HU~(mKD(^76JVY!QR38 zh!$K6SX$^}6AZZAJg7wiuWLF0ON=ax>r@zeGy8SBP8Z~ivQq2a0nLEKy|n|o%QNwg zL(Ldk)tFmY>m8J_c41FBr0$U5dkKhokKkb+e-L!ckze)$sK=uX_~8aT)_@;xz|S<` z=>~ib_4Gg z-$Mw39CJwg1B4(L51v}$R}q4sy&TV{9e65OA+xMVNK`J%+-{H#e_j^|Zr{GC!fZ%G`UroZESx4}5qB`&W^2VWG7A3qXD zG>FsrzvSa|{@?U*I{(ZlE@Yj=1k{dQt*5DFr)Cm{lbUy!kxV!VW=s@|%&_yQpt)(l zC7H};v+x(gj9lJH8Ss~}-#g+$pUTY|1v_6z+0FvE;()2?c-n^lELzF`t95Y4)Zv+u zrB5iIi@Z{wPh}m@foG3E0G7xxmS`pz=;5VVog|0DLHw9A`SMPBKj zzZ)oy`Ct9lN`I@Nx2^dRX}T%vkncuKyG`;=S>k z7X%pf4NUnb{2Vke7QcU4fRD*g)PDaN;Pv*OHu|ja!~Ms1h5Tv%>&=ZWm&Ar{ibUaC kQqLcmfA7(MTAaTXR3xFi6S@}~_59C@Ko`kS)PDcJ0D9y2-~a#s literal 0 HcmV?d00001 diff --git a/components/kernel_release.o b/components/kernel_release.o new file mode 100644 index 0000000000000000000000000000000000000000..d214b3cbdb5f1cb071407c25d00cc8b9ffbf933d GIT binary patch literal 1888 zcmbu9L2DCH5P)aX)>f^xmZCyM7HOqYeP&}@q-Y5g&5EUp(1WLSn{G^Lvx&P~Y*mng zf>H`Sc<|_N5Dy-D2Oluy-pn^MZ{EInFHf({Ue8z-h*&TU zdzMguPaS)DUaNWNgCp?s=;>eX#@E-Fv*>PK85u>N`*LUa1p;^L$#CW~1wXH^4>)yq z>na(VIQ1{b-K}@S&k!(o>e}OOzS7x??%1GSF6nCUjgM62!)oYPf+-k@0SYrSQ}$>f z2$O2nb|zF#IbJQ7%}r)=&bVEhILFWy2GEK1`f+sOD9p`62B1z%K96)8$DZHPeyps; zf>wJ__@g^ut@T?&z1=vj4U&j{ZuY(D$dvkeNdJpaolf|%+b*P|O=kvlAnmqQ zPH3|Wx?8c{(?Dt+y*G>*!$Id_ii4mXpWKH}@55m^h{9mSi-MKFj{{W%H9M1~AIETk zZZJIbqYxHq(NdU{!1Ln7FD`q<^0HU*msSAI@J6X$2XOq}ZOBFD*jL?C;p5CHp3X#g zfjPyKPxu^jV$?I?r4&Dy;x=BR+X2Vh^E0XP6hj^Lsv|ZMF~NOu6ztPBK5sT;3;Rcq@uAoAuA5pVs`> ze7gU%W)4SMr2e5aL|y93oM)Cb;&#}+WN^uo`3C13VeriaY)hWF@1jEYz2#1#{hb4D z^DL8`zt|5@p*79?JQunwfjpb}_*C2W-{po#pQ-=!o+Mv*yV_K0jqA&I^dh5wK{KD$ gG<%N-%KSmM$Vdq<+a$+OYnOkI;p1jxLoxIJ0Jg8es{jB1 literal 0 HcmV?d00001 diff --git a/components/keyboard_indicators.o b/components/keyboard_indicators.o new file mode 100644 index 0000000000000000000000000000000000000000..fddf659a283e6913c394710f49cc894586e5aae4 GIT binary patch literal 2480 zcmbuAO>7%Q6vt;1r%6k?4iG_50d0kgj7nBsLr_y0@Y+tYQ7x!wQ_M$Lt?dnt;_NQ# zv04KXL1|EpG5CVi6XME^BU~b*0zGly0Q5w;K?O)4ZlRKSZ$0BojD3M8jpxm8{_oA~ zeEF?~?Ba+d5pEKBitM*IB_wue-%kc^lE~yJ`78Y3p8mXkL0{3&ubeZse=8NUjmU{8 zNV4@}B)43@t#y9E0Hc1**lAbqHkwajQ)>tG);HMIq>&k;eqH;0p(nnXZO)=DQ0<1m z%hrDm8kq)-L?K&t{_pVRZ7w+z-knY?cdi=^80q`QbgTZu)?R^*ZS6VL@AS{`o0jKq zRwfs;c6uw3cv=sC*oMBKd4QIZ{9RFisr%jJTxuPY=2oY>Nj3m)nC?E z^;dNBTJBlTb~5V~uWZ#$D~r~8*)A&7Rb0SIvC9crN~cdN(IwlVuB&KsYFyP!FCL3O z5sPb&E8g5A3@V)AEYNVlrl5>LS$bxLz!$cWjY2^~UxBjUF9rR4?GkJ` zbZJUDHaR}g0&y1D{Xq{Q^BBA+Pkk_wl4sr@P030#l#-+Gjp=giokO~OYI{5*e=LpO zC&{NWa!i+_AOUGgo=V9REXj}xQ-{c(ok88B15WI{fe^p$py6Ea67<2GfyJQUdi5Kg z)j>QpgkKoKUmU_qL%27DUmn7*4&h|OuH{|JFPiI4alK$s*RQArqGr>vL0v>VmgJ)4 zJ0!Pc(=#kd+I6V!mPx+4Msn%0Td~;*CKc*CW!oX9S)et~HmO^7FWSCYb_)WldR~uJ zs8!f73#AQn4Gup{Kd^^cjpq}0?>1a6v^mD{rs5gqJi$2X@rmO6oWREgzREb}!6V1@ zdB!o%VS&2>KO*oQf!`tU9|b-s@FVPE^^f}y<2de7L9c+1hI%YLQ!BMiYUPOvE8eY3 z-1F_SrBeG6C2G;47E$w+3Q>I*8z|RQji?28a}%BuqB<_MRd^a^gN*ukjxRjyeBpyaus2R2+(EeEbt41fNff*Gb0ky%Oys zCU{JQ;PW_MFAGeRe#-?S9H4yx7~ZD?XA;^sSo~S=MdRzw*=yjSv_C$|K#2=k-5-w+ z#i0GaijM^t-)G!^yvIDA^Fd={T#Jo=mVF1_T^y%B9&`5ZJs|QEgP&kSFqW=I?gVd8 P{HJXGZ}gO1r$7E530`l2 literal 0 HcmV?d00001 diff --git a/components/keymap.o b/components/keymap.o new file mode 100644 index 0000000000000000000000000000000000000000..bd690f8a87e5c9bec197d55f4790d767ba357a4f GIT binary patch literal 4080 zcmb`Je`p*<6vyZCqm7zw&i>G7wJdlkk=o@hZQ8U{y-hC3Mvoe7qk&qldv}{A=I-{q z+r&nT71IjKc~-4|*gySK1Qi7Z!ICy@@gGq{K`2uH5n57+B3Kadd~bH%WwN~m5g*LX z>}S63&FswV+dVOu9BK-M7+Hut!dC8xGWP2oEA2RM##xwku-`kj{HZ^!Kc$c92geQ= z^EZsFQQ6nk4HCmW9_fqKuA$m+FBzv6W;Phrhw(PH!0GklFqGHt@ewX_HXH7Rb1mF$ znRlOBa5mLlV^=)q7H~G)Wutm9vh^HJT8^Z<7h$~bMk<3*)KrRLxp&094AXHw?f5Ja z*=kgKaZXA1=3uPmCL-;g(p@x8UFkUaDs(0GWFzgzUoxueP-s+QhMSCZ8tzTQbs{2g z1zLuC6=u%eA$qS-0adcv%AMxVw zi`QprwVHVNr2Ds6I+(5DE^_~*yZi-i8DB9kqD#v*(`vXsEp^t{j(0CD>9va^?$xC; zMkNvH%NpBS_=Y*Hp7;Dk!*H)1I;=mVAJ(7MQ;XwI6sbxb1G+LRmWCs zz-rdxYXU%4< zSvFO$99GP*v{|-rQ~!+(4-D*8yN9iUW7}%1SL@MYsbWvGXIHc*wo@(kJ}96{%nORA zKMVyA&+z^+*2LHXvSuh~*jAye^oMvq9t5-yTYbOL!z}dTlPq*B9NOHzw(U(2CxPE5 z`hG#@AtijesbA@Qqq$#Et1bOX_v@{?5`ArruJp~XO(?H~nlFWvzJwChm2QxLv|kDL zD{Uf3K!u@O*l)E)-OUX%4n8Y?bym6D4tF88rq0xQ3-v3Uu=m`z#<_Tq0jokLUu3CN z#+fTxsdNfbEK3(lQw3*&jSrP9$b{2rtSKX}PIll4`7$$|%1lnDCLpK73NYrKb1%Pi z!2MtF@j>&>EyFy--!kHR&&VDXvpt`Li{m=U>IjD6yj-wV5naYg?Jtz80s;_ z5T8W|<{!7}Va_)|oAmDpj&W|2_y>Yx9LyD@|3q-qW6mLdS>pIhMEnQAG0rB5FAI)w zFbk0$e_qf~e-{+u8zp|X#3O=J9Lm|fl3tGUsKh&^I0vOT^861;dU^iON&0pvjw9(Y zm(u)CNc>)jza{a_5m>fMq{sJ_^xsJQeu+bq8+JECX%ag6ToG>* zoN@s1b%Ns>q7e@Zu5#*~Pn>JrH28aQ%rw*RwdM6BwMtgb)Ew)W!?djFm`qET%So2wVX-0Kibcdd$8l(%X#KYej(aIv z*Q&)|=@Hvh2M<9DWBynF82DmL%7@V8M&obt4M?|C4}u!o{_*1is65)r#eW}%u14$k zGbSmpBmC;UGq^|o^&1C<<41*#sv~0j9Rx&8^QPJaPHkCw#{WP*f6_h=4b1!g?Rr=E zkCIT-G=IV_G;n;s|25%1NkUQk{Z9gKw0?0+hG2Bg@cbbnf8veCM!!)E3P$Hwfi@Pu jKYn`}EtQIk0(Qfz>R10-*(F)>Z|D z;zKDyKY|}Y`~VWr58*dZs1N>m6QR!B?Ih_oebIrvnfdL^?B34ay}YxsJYZSCV!>_b zdQ4Fdb?t0qW?>vo!mo+h-_F*z)Q3TYMQ7*cduNABK37yxJ!qt_)NTj1!{U$Eb(Q?TE(lBWN>sG^co~#e7wBV$>w&)gDegXD&3S zIy5>WTbp&|L7?4BZwzNSOf_fcqG{{Dve2G`| zQgjm9FE^gZW*9X6P;Fu=74$1^DfH@oX9xdf2+XFtNN3zDS?%z>;W_>;*q=dz&M?bB z>(Ba-cC~*3HRbXLF|GMo&G~!O7~ZpCXmfqK4^;DC^XcAD%?yrS;q`CyLbQ2()>+Nc zM%M>tRS{lJ|>U+BR5Mn0cE`8CY# z*Z+!c2=|%#Pu~;gGw-)HhQV9C{&#Xv=>JE5KQo_dn!QH^yZVJ3a(YCU?GXBZ_RD{z M;qy*pY?%3f0dSVg!TKb%<93D1>IHetFP+S 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 literal 0 HcmV?d00001 diff --git a/components/run_command.o b/components/run_command.o new file mode 100644 index 0000000000000000000000000000000000000000..2beb2477a3476a22018e29d74c74415feaaeddb6 GIT binary patch literal 2176 zcmbu9-%Aux6vxl(YFgR4{Q|>~Au26u*x59~D0Y){1d}Lz2n$))(S_U}&CZh6LxLDA zw9r$3jx7E959+a}9s(aidMGlm^PRcJogH>x>I--7IiGvZy>sW>J1=fejYl+%L>k?s zh9{K!&W4@x%oN4w2>s|C_?@1yY9nB?_pR#gH(1tYz0zY!aJLgy^@Fml>f5co zD3Kpm{XSWJ@0pwRwUdnuv+hB&zHQvu{ObPPI)qvM*<=Mb`jKeeTY%h8R?U0Gxku@T z?;I)>OLjpYJXanZrBZgKShkfz6Juke`p|@3aEnFV95IrHIbTX9l2;Q+b678pTu@LK zh7C{$w>USfF)=+$5u!R6Z^RR9om*pE^Ty>{YSiqX@Un=sXZJ{3jcffqUEQxa_!9He zYU~aA@mTy-#ESL3jHYAyMn_~L)|ZaOZ^gP*P@4|xcF@jVtKn#i3io<}fg-C!|2;dg z-zJ^%yiPs?%^G0$SYUo{56mud!}kj-!Jri%Zo^00@N^qK-iDJ?Da>b!`Fy6ZXk^Kl z8cX0|;*ksv`X`ANDoeDqY`bN3n&@f9DNxyUoNUhFH4buv@SSib{_OcW4#>j!=;9{) z3?K{f7!z&)vcOSd;nx9Kh{amMu|EhLS48*>APe)Ls>0_0S%^Q(O?U~A6<)XEV=umk zZHeDdT;g}terq8v@p^zGXJ1BnE$?O)$l!13_c^f~dnIGI_Nq(9V#dvou~06P;S}K@ z+%&jcs3G5FG73f4Hu!2@F1wlRW92UwDn`lSe}Ut!aVjRXbMs41CU5V*!G9S#XXCCN z2+fjGzMOvj!C;eoA1w+qDKoGWweZUO&vgu5+Kcw>S zvK^Fse_>D9KxjCBRpna}sQPgJ3iDR=&jGTe&Zs}`z2pmTwKnqVYW-`f$KAyl4d-Ld gaP1k+A`F0kuc9G_7}`EwyK~5Vb9h(sQF)@K!{i4EeY+xtJM^YX{Ivz3w%t4M_U#aD!Hx zwEh4XlkQi~(8@Ir+WTp}9}%rwY|_dV#sb)wW7M&y)kgQRcL40P&(i8eYYDBRr`@T| zZ>F^wEx?SU_AIOIGid%i26f!$OVL`{zpHw=9HNy^0@1;%|&=MFRU^S4tiL@oECZrh^Rq`=zPQ( z!EDEI6IkroxgW1$><@75VXFe~5zo`9bxZ%tL zx(>AHIw-ov30;QnxAFXF{u-*lTgI=z8eTSuxQ3H!WN1vF|w?FOCazU4`GmcMtn6a)pQ7*j@p)D4r)DCZ1`(XZ6xWzL&w60$anr5ON%yhZX-z z-eD#1V#lze);oul;0s+5CG^ZK5oMsVXiPcj={V|921b-nLZfL45G8@{^@pKQYqwBf}zyxfM*wBdE&%V8hI{;_ie?6o%bZ*lue zcwj)-d4w9DqE_p03OL5kzy(AR@lS(}{3FhUwOPf8qfg|N>{9P^~$ z6^XBu_?HsDQ{vxAT(;ke0|dcpDf~qI2RX<2u9ElxiOX?LNL=pseTmEV9sHrf__F;P ziOcpX*r8xJ9+I`QtX$yYo*#2@ai8CCadB_ob8&HRiC#LAv*HJ#woIo^3(YjLaosYe zEutsmR-EVuOC_S41#F;sScm(ZDCBbRyc0cNunZlZ>igLxbsgSh*@4;aRDoBvz?Fpt>_wJgFvBSX+d|Dqn^EabBLiVtX`iwi$d z<2xyI+0=uJ+Ctp6kAMy4MfuF5n~(eN#)c$f{RMgg6pZQipXC1Mg(0uq{&>Gy?f;+r zkIppr!~Ms+EBwX&x9S^RRD2vj-sA(r+=Kbt?T<0tdk=^-a8W?q<9Dwg=HyoXMI11Q Lc;B7Y&3p9^@Jztd literal 0 HcmV?d00001 diff --git a/components/temperature.o b/components/temperature.o new file mode 100644 index 0000000000000000000000000000000000000000..baa25983872533e2c14b8ed6c0d6a966c7f0ce1c GIT binary patch literal 1776 zcmbtT&ubG=5S~p_8?mNUdWckH#Z)5dBO8sNpai1L3PnWp;Ay)_Hm0`8uDdUg>cK-# zp%nZxJopcI3n=2*lQ+dvK@S!Wf(UVD^CsPF<3$H1^UXKE^5(sLershpp=rRP!425= zm<8~r_HikMB}l_j_%V0tm$~&VW9}4*t()7)r5pmYcQczZ`eyITF7bo+ozob~zTU+? z#s_ofIROmL7KiD&_JuJy&ts(sgyC zCt6AkB6a2fk~n4_bsDvD=K&-D`o!^Z26D@l80w#dy}^M15>pdyU@lCge>pBR_jn{f zoQ>QGR62KDbR;J6xxerrotEeLw(R(hsDW51=R*p-pk}ulQ1$$^wrqf91=6mqTear8 z)v(t#c|$agkuA)T%SQMaWHq8bDse3u+bH-rJA=C)e+070}}=?HvM7sG=q|53XmJm1BQ z$xSS!hECIJ_;$+~{e%AkI#$!$p&dk}q#V9~j`2HYe-Q!gyu^gEt7=JI<INQyqMhYtQ8L!DIrUDZDuWe!2S F{tvavuf_lX literal 0 HcmV?d00001 diff --git a/components/uptime.o b/components/uptime.o new file mode 100644 index 0000000000000000000000000000000000000000..63cdc0d7629272785f6aa52629ff153b0017e02c GIT binary patch literal 2040 zcmbu9&ubG=5XWcJ)<&&qlpYEd*+VKV>XMDER8dK(H7f)We}Q<2+hp6+Hrcq@V5@=@ z@eoSELl627hzAcIyu^bB70(_$dKB~`9<(CV`EK4zH_P^-121ppGc#}AzIiYAr?Y1x zib7HpI!#-aq(n>ITYB14(-fmU^rQd4?@MobnHVeIRL(3It7F3>u&}-fb+|yoH)}FVbxz-2| z2>QB%$DhrX90z3K{(HTb{IW+|@pu7}-|%ttPV$=ISO+yEUl$x~r;k7Par8{atAb-4 zjJ9ai<&ta8kXCh_)?AdDV=bDRYc08?6-?J8ZKhf!&9Px1T-S8c@^-1j4}`R`?OGaN z`6J#L345+w(<+W#u^e}qQ?Z~`%*{Gx$!hQ5zZ8|Taa(cren|^M-aF|F-fY}QoMBo9 zhSgu#&5Ys~NtI_@OfhRDCbx?kk^OLmJDga-2;i~O_< z6mu{iZ#b;~pG8AtpV5E3Gnp@WSZ$R0Bb%7 literal 0 HcmV?d00001 diff --git a/components/user.o b/components/user.o new file mode 100644 index 0000000000000000000000000000000000000000..32644f5201100289ed8c41f28cad38576642189a GIT binary patch literal 2256 zcmb`HO=}cE5Qb|^V%B`DF(`_WFdkwe=(w{c8UpG{ToWBMl@{30! zSoPiJ;)lQF9x2hPAJ#WF$|ZYrq%=B3BMqXN>FFtZY{svKwVLftI9bPCs%JCVOPQ=Y zZr3NyYG?~1>g0tEaKrD-++#s-RZtZbPjmsWc^k@Gl`$DW|_sH5Bu!j1& zQ*YTB{FE9Y8iLNJ2kxX(ij8Z2UGv91=~TXVo=2m&`+7Vcr_mmTb#>DB-8};gIucG6 zb3}iqjMk@LSzR>PB9RgGyIT7r!zbAojOABrWpPzjN@YCFfz`uu^@G(FZ@Lq1h@xKt{!IPUK1^X z&$^HM9~X%eeTxUhj{7A(s0qFc%y94HHLUXJqy^P!e`NoKJY@r}W_&@%uZg49X8bzy zr1O6T$TAx#^`;zRTjJ&XljcUqds)BMcr#F=W;}A5XU~XI8s^c7iB8udN7zb=|DxCb KyyY1gX8do`asaph literal 0 HcmV?d00001 diff --git a/components/volume.c b/components/volume.c index 5a2bfb7..692742a 100644 --- a/components/volume.c +++ b/components/volume.c @@ -219,3 +219,33 @@ return bprintf("%d", v & 0xff); } #endif + +const char * +vol_perc_pw(const char *sink) +{ + FILE *fp; + char buf[64], cmd[64]; + double v; + + if (esnprintf(cmd, sizeof(cmd), "wpctl get-volume %s", sink) < 0) + return NULL; + + if (!(fp = popen(cmd, "r"))) { + warn("popen '%s':", cmd); + return NULL; + } + + if (!fgets(buf, sizeof(buf), fp)) { + pclose(fp); + return NULL; + } + pclose(fp); + + if (strstr(buf, "[MUTED]")) + return "mute"; + + if (sscanf(buf, "Volume: %lf", &v) != 1) + return NULL; + + return bprintf("%d%%", (int)(v * 100 + 0.5)); +} diff --git a/components/volume.o b/components/volume.o new file mode 100644 index 0000000000000000000000000000000000000000..a63a146fa2ac2bfec92b63db9aabf4e08132302e GIT binary patch literal 5096 zcmds*Yiv|S6oAjR1&XcPRjU^9u_mq50GsZX0&Sx0N-I~SfIzXN;=0|vWjEay_ui$g z8Z9Xp7HrhS7!oBh8kHXsH5j7CkOh4H^AQq^M$uoA8bydPK0-Zb?wRg%?EdnfC)}Ai z-<)&iac9pR`gqU!yDK~%km7+mp`=L)@MB%6-6fh`;Db82RCn{A;jPAG8?kpoSoCc% z3V#`UemaNkxN)$msTmtaVQ=GEtb;{k^3g`$rB_ZsHPP>WL00yJL)rDV-h2P3(b4=l=F@4&Y_-j%A4US!R+-ap244TFc=R~&8T z{gucloHq6q^9@Gf=h<@!7SB&$1oE#o3a7+4C8zJmX@QvB)ERe}1=KmwvoSE@2 zX|k7eKr$P1QvM}dHui1kj`ZHs-?KTgxhLEm>F(Lq8{Tp+TI|lIq*bZExhWOD9Xp%i zFc`IMa4d5$Wr97HaT1V=rNPdb(P7hqR5D{iIvIml9IH|43xQ?EAh|P|%s^I@WE2#p zAyKwMJh?MSMTm-4$R*G=m&oQF*qw}8bcln1;!;tdLt3{5n0CLFJs8nAR>= zKijJk=FbMGT_MQ7IqfN+eT}F~#dV@NAC{MpXf0+Q)cCE;*J*qS^D`QE~I#WEoC55;IO9 z27&c!LaRi%n#vZ@Y^SnSv|B@>-73lzqHGgoP?Rf0DFU>*UaKi~BxhPN7>QaLHxq;H zSg~{t26I+2;|xJ0Vmr~;a3q!(jtoVUsTrS0ZUjs_!)78E!VsoN8}o1~Yh%K8Ec}N7 zl6E%M-X5{-STsY&K#0skn8(Dg`0r^~!rV{!jB=FZ8<~?m75iffzeVBimEk9u)4Hxy>_1iP{R;n5vG*$cdxg_~1>`=Q zSK{2N@ZS`B%8Sz8LlZ%v>MDFBuTl8b3a@8Q?@N7;%M`A@M>G>c!;_Evj>$YOd9Q0W zld~n?%$&|JiR9Z|75rRF9$~#%<1yA-G){S+WVKt(#LuzbrE!OKL*pZ?Z_@Z9toLht zob`t^zL)ic#t*PA=Ox$sH1ko-{yEmiHU0wY`!)U&>oT5qj(x zob@*~{yyvPX#5oGMU8*Lx}R%0c6{^%*{X5*U4?)>mUg0pSUZ+mCuGYqQ_+B9jyez! z&3M#_LSPW@`~fRV3i$*B`2AuvW;^)pi)GVkygox9lXc7hUWS*8PZaArGxu~{l3mD1I@C=;oorR1`y>4xyHtqn9DfiW;wvrXDDtgl zy9Tb8GS_du<2Pizi;+2Hy%tmhj4GfKuN{TzqJr!n;LgUs~t4IQ8ziN5}o%;+y9 zsz`sI<{(vB)4i73lp9s)r$wRo+-jzj^OrT{HS%wnv2Ys+_IK~!rA|4ntOu}5wo6t3 z&$GYEsIA*l-lO}1c1++!_TNNKipY6OG=U9@srz4Gf0>V@z3%@Qc93b8G~l|K|E?wX zh2B4X&!xXSe{+pZArf>cLuui2K;O)3@X`J0n9p@o4zc0q*sqGdfAp=K%fFxJKdCxn HTlfD5j&}!8 literal 0 HcmV?d00001 diff --git a/components/wifi.o b/components/wifi.o new file mode 100644 index 0000000000000000000000000000000000000000..ab8776a36d9b9c4d5bc670ac31d024948c45d802 GIT binary patch literal 6160 zcmbtYU2Igx6`u8)V2HE3CWg9+p%+*e(~_;%1_CLqys((D;<`?-)ubgd%l-rldu?{_ zI(8aDq{XC{Wu>%Hq*Ov}dB{Vnq(7>qfFJBNF2wFbN)b}5rb?QJCU%@QL6It&#<=I3 zJA=m;Z~KrV-8(bieCN!}cjnH$yC?UzG?lnqOqq*)n=Q5!%2-?FV!csR8=04RSjf7` zt+)8@Tj?#ib>7!6jeqD1@4l3|Cp%NhU*?vJ=bK6=vITd|=L;^zU03F=2MZG&+?qf5 zNNzpi481+*AH#^jYojGp%mC#1Z=tYOi2KA)Vc-C_{wYzx7%G^RBR)`<;=uyXuZ7oW zgGB+}RphnOIamdXOGUrISKY9txYgqK4J{0A9mDd(8b{q!6Z4jeyfIW5TqRdDw;?#i^QOOS z#851ry=j=fr7NC`$bs??5RC<=MrgKBPsEj6PD=j?-u(^SdXMMZS5PW4hRDxM#VuMU z>0ZIJd;BGt)rlNS*z=K^@f=AN<6pOhGgsJ=vwzrSO_Rc(dN+L5AtWYkw@Gcg{k60g zW}cq))!gmWitS=2a&EH)G5m^Q&5qi=avO*_1Pikt z(VD%lPXw=7&-nd(6e(L+p!JXc&9GxPUw|w?d3LgzTjPA=4elM8t>f0DooS?~oL^W$ z@ynQ7CAC`1=14V#XxTVUc|=Ca?POL4rElzMiUz)%&HS-QVM=sg<%Kjhn?3GI7&HBq2cJa)m&+L>PA%t63#&DX< zye7f#;2Cpen$ED$#Ta$$dGo|N@95P%=fo}z=g+R0BsA=8oovaAbzLl_cCau)Qn69g z<^HiZ)c8M)M0VbtStF;#ZKq86Tp73CncYTPiVn`=TPAcU^u&aCI1r!M3+dkIvAAh$ z2{mXzifGn-zfJ1csq*(6!j_68+Ex z=3;hxmEC0Owds2LQRW)(x$ZAtS@r^vF$PWxn0Osf>8Gm>0NIPUg*?8~C1Foh)*bQ~ zC1*TU1cW?gwbb<(`pJ%9;6+~8)8=k>d8+maB6Wd#iZ0k0aQ7o-2rg6CTUoFk~saK}YSK z=3e$o16nJ!m-@Jc`b#m4U82QNT2@G0wS}I9eVHzo79aV9ZKBIX@eMS{pc@P&;!lc} z)SK!Jbb-$$4!K~^5b;%9Rqhe^U7!dnljVLY!B=g?ZxMJYJ1lu(!%+PZi7Qy~(RQ=N z_^SVqsE8v%L86REe9aP+v4q5H9r!Vc+sE2sXP?B|79ml~NIdGmpO*Lu2YyoGFFEj2 z)b=?rG;>AppA^A=UIc%o2>z=g_-~5f!$t7Rgs-6te@$)>@eC4nwFn5OGvvA}jZnvXO4 zzzsA|C%7yXPxrC3nTjW$G>-=ASfFK}xCK$G$E^Xk?YQm0Z6|II%CjGy(Vjlm*@;Tu zU}yB`G5ck~o{FTB;$=WXMEeCJ5W}mN&O=xkxLj5ZKA2t434R;{`nTn%yE-QksmpJBO z(52#cY5YwZ-lyT~H2fJY&SnkIX?#7-ISv1k#y?*q&Sj0S>-K>Ir%=L5<>o-QtO|UK zY+${59s?R*&*L{W96l;9Aq__reXur(qpj!bkjB^Z71j9qKKZ4F8x%|Bb-ip?6oPU9n_Y_i84ICTl@FM|J6;wW@If1&YpJzv#uRR1H-&tV6ybRN-g zeV$ViN1^LHt?_l8-_`iK&iBbr80ZFyn$IZ>uOeLOe@?@}SNM5}1FO;S-#Pdy{zV6_ z;`~*MV`y$4h3}AUrJuqlCH^A^UwuCeJ8<euTt2>lgl*IO6owLG>4x_xVmkeIN&mx+k2^zmrh1Srj9>4- zmH*2Q99)vH~+a{k%do_59Q|6i|U Bk~{za literal 0 HcmV?d00001 diff --git a/config.def.h b/config.def.h index 100093e..557a9d6 100644 --- a/config.def.h +++ b/config.def.h @@ -65,6 +65,9 @@ static const char unknown_str[] = "n/a"; * wifi_perc WiFi signal in percent interface name (wlan0) */ static const struct arg args[] = { - /* function format argument */ - { datetime, "%s", "%F %T" }, + /* function format argument */ + { wifi_perc, " wifi %s%% |", "wlan0" }, + { battery_perc, " bat %s%% |", "BAT0" }, + { vol_perc_pw, " vol %s |", "@DEFAULT_AUDIO_SINK@" }, + { datetime, " %s", "%F %T" }, }; diff --git a/config.h b/config.h new file mode 100644 index 0000000..2c9ab53 --- /dev/null +++ b/config.h @@ -0,0 +1,70 @@ +/* See LICENSE file for copyright and license details. */ + +/* interval between updates (in ms) */ +const unsigned int interval = 1000; + +/* text to show if no value can be retrieved */ +static const char unknown_str[] = "n/a"; + +/* maximum output string length */ +#define MAXLEN 2048 + +/* + * function description argument (example) + * + * battery_perc battery percentage battery name (BAT0) + * NULL on OpenBSD/FreeBSD + * battery_remaining battery remaining HH:MM battery name (BAT0) + * NULL on OpenBSD/FreeBSD + * battery_state battery charging state battery name (BAT0) + * NULL on OpenBSD/FreeBSD + * cat read arbitrary file path + * cpu_freq cpu frequency in MHz NULL + * cpu_perc cpu usage in percent NULL + * datetime date and time format string (%F %T) + * disk_free free disk space in GB mountpoint path (/) + * disk_perc disk usage in percent mountpoint path (/) + * disk_total total disk space in GB mountpoint path (/) + * disk_used used disk space in GB mountpoint path (/) + * entropy available entropy NULL + * gid GID of current user NULL + * hostname hostname NULL + * ipv4 IPv4 address interface name (eth0) + * ipv6 IPv6 address interface name (eth0) + * kernel_release `uname -r` NULL + * keyboard_indicators caps/num lock indicators format string (c?n?) + * see keyboard_indicators.c + * keymap layout (variant) of current NULL + * keymap + * load_avg load average NULL + * netspeed_rx receive network speed interface name (wlan0) + * netspeed_tx transfer network speed interface name (wlan0) + * num_files number of files in a directory path + * (/home/foo/Inbox/cur) + * ram_free free memory in GB NULL + * ram_perc memory usage in percent NULL + * ram_total total memory size in GB NULL + * ram_used used memory in GB NULL + * run_command custom shell command command (echo foo) + * swap_free free swap in GB NULL + * swap_perc swap usage in percent NULL + * swap_total total swap size in GB NULL + * swap_used used swap in GB NULL + * temp temperature in degree celsius sensor file + * (/sys/class/thermal/...) + * NULL on OpenBSD + * thermal zone on FreeBSD + * (tz0, tz1, etc.) + * uid UID of current user NULL + * up interface is running interface name (eth0) + * uptime system uptime NULL + * username username of current user NULL + * vol_perc OSS/ALSA volume in percent mixer file (/dev/mixer) + * NULL on OpenBSD/FreeBSD + * wifi_essid WiFi ESSID interface name (wlan0) + * wifi_perc WiFi signal in percent interface name (wlan0) + */ +static const struct arg args[] = { + /* function format argument */ + {wifi_essid, "%s", "wlan0"}, {wifi_perc, " %s%% |", "wlan0"}, {battery_perc, " bat %s%%", "BAT0"}, {battery_state, "%s |", "BAT0"}, {vol_perc_pw, " vol %s |", "@DEFAULT_AUDIO_SINK@"}, {datetime, " %s", "%F %T"}, +}; diff --git a/slstatus b/slstatus new file mode 100755 index 0000000000000000000000000000000000000000..ed501cb1396d96dc51774a9d936302175b3f8e39 GIT binary patch literal 35496 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 literal 0 HcmV?d00001 diff --git a/slstatus.h b/slstatus.h index 394281c..d58dda9 100644 --- a/slstatus.h +++ b/slstatus.h @@ -79,6 +79,7 @@ const char *username(const char *unused); /* volume */ const char *vol_perc(const char *card); +const char *vol_perc_pw(const char *sink); /* wifi */ const char *wifi_essid(const char *interface); diff --git a/slstatus.o b/slstatus.o new file mode 100644 index 0000000000000000000000000000000000000000..920fa9fc1a98122e55c98ea6523e3b0b28e502ec GIT binary patch literal 6552 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 FKLE#HM=k&W literal 0 HcmV?d00001