💾 Archived View for gemini.ctrl-c.club › ~phoebos › logs › freenode-kisslinux-2019-10-20.txt captured on 2024-05-12 at 16:10:30.
⬅️ Previous capture (2021-12-17)
-=-=-=-=-=-=-
2019-10-20T04:09:51 #kisslinux <Hidden1> ah, a song of the day 2019-10-20T04:09:55 #kisslinux <Hidden1> interesting 2019-10-20T05:22:18 #kisslinux <Crestwave> I've working on optimizing a pure sh program and it's been... interesting 2019-10-20T05:22:24 #kisslinux <Crestwave> case, case everywhere: https://github.com/Crestwave/bf/commit/d481d3a917ea230bb63283de7fe3b0a275cda82c 2019-10-20T05:26:42 #kisslinux <Crestwave> It's almost like another language in itself, e.g., `;;*)` = `else`. 2019-10-20T07:23:59 #kisslinux <dylanaraps> Crestwave: Does it use recursion anywhere? 2019-10-20T07:31:04 #kisslinux <dylanaraps> New Python 2 release: https://raw.githubusercontent.com/python/cpython/c2f86d86e6c8f5fd1ef602128b537a48f3f5c063/Misc/NEWS.d/2.7.17rc1.rst 2019-10-20T07:31:12 #kisslinux <dylanaraps> It's said to be the last one. 2019-10-20T08:32:54 #kisslinux <Crestwave> dylanaraps: No, why? 2019-10-20T08:54:14 #kisslinux <dylanaraps> The function at the top is just the while loop? 2019-10-20T09:01:16 #kisslinux <dylanaraps> Try swapping the 'break' to a 'return' since you're leaving the function anyway. 2019-10-20T10:18:40 #kisslinux <dylanaraps> oof new major libressl version. 2019-10-20T10:39:19 #kisslinux <dylanaraps> ooo 2019-10-20T10:39:25 #kisslinux <dylanaraps> It's a minor so bump. 2019-10-20T10:39:27 #kisslinux <dylanaraps> yay 2019-10-20T10:39:29 #kisslinux <dylanaraps> no rebuilds. 2019-10-20T10:40:41 #kisslinux <dylanaraps> There are now only 2 patches in core/! 2019-10-20T10:40:50 #kisslinux <dylanaraps> (xorg has 1 and extra still has a bunch) 2019-10-20T11:22:03 #kisslinux <Crestwave> Oh yeah, that wasn't a function originally, and I forgot to convert it 2019-10-20T11:25:48 #kisslinux <dylanaraps> Crestwave: Next step could be removing the two printf subshells. 2019-10-20T11:28:13 #kisslinux <dylanaraps> Does this not work?: printf "\$val" 2019-10-20T11:28:26 #kisslinux <dylanaraps> Or is there a reason for the conversion? 2019-10-20T11:36:51 #kisslinux <dylanaraps> Crestwave: How large are the numbers you're dealing with? 2019-10-20T11:48:49 #kisslinux <icyphox> Dylan, I'm working on a window manager in Nim, so thanks for sowm. Clean code, easy to build on ;) 2019-10-20T11:49:40 #kisslinux <icyphox> So much easier than having to read through dwm & herbstluft haha. 2019-10-20T11:50:14 #kisslinux <dylanaraps> No problem. 2019-10-20T11:50:23 #kisslinux <dylanaraps> Feel free to ask any questions you may have. 2019-10-20T11:50:25 #kisslinux <dylanaraps> :) 2019-10-20T11:51:23 #kisslinux <icyphox> Will do. Took me a while to wrap my head around the basics of Xlib. I think I've a good understanding of the flow now. 2019-10-20T11:51:42 #kisslinux <icyphox> XCB on the other hand... 2019-10-20T11:51:50 #kisslinux <dylanaraps> Crestave: A simple decimal to octal conversion could look like this: oct=$((($1/8)%8))$(($1%8)) 2019-10-20T11:52:13 #kisslinux <dylanaraps> This works for small input and you can easily expand it to support larger numbers. 2019-10-20T11:52:39 #kisslinux <dylanaraps> icyphox: XCB seems more complicated than Xlib to me. 2019-10-20T11:53:06 #kisslinux <icyphox> Ah so it isn't just me then. 2019-10-20T11:53:26 #kisslinux <icyphox> What's with everyone saying otherwise? 2019-10-20T11:53:54 #kisslinux <icyphox> I think I just can't intuitively understand async. 2019-10-20T11:54:03 #kisslinux <dylanaraps> It's the newer = better mentality. 2019-10-20T11:54:29 #kisslinux <dylanaraps> There's a reason Xlib is still seeing wide usage. 2019-10-20T11:54:44 #kisslinux <icyphox> Is it newer? I thought Xlib used XCB internally. 2019-10-20T11:54:59 #kisslinux <dylanaraps> iirc that's a new development. 2019-10-20T11:55:06 #kisslinux <icyphox> I see. 2019-10-20T11:55:10 #kisslinux <dylanaraps> > The X protocol C-language Binding (XCB) is a replacement for Xlib featuring a small footprint, latency hiding, direct access to the protocol, improved threading support, and extensibility. 2019-10-20T11:56:34 #kisslinux <icyphox> Is there really a big perf difference between Xlib and XCB? 2019-10-20T11:57:17 #kisslinux <dylanaraps> For a window manager, I doubt it. 2019-10-20T11:57:57 #kisslinux <icyphox> Probably something you'd notice only in benchmarks. 2019-10-20T11:59:34 #kisslinux <dylanaraps> At some point I'll write an xcb version of sowm to compare. 2019-10-20T12:00:51 #kisslinux <dylanaraps> > XCB has a 4kB receive buffer, but Xlib doesn't buffer input. So it's 2019-10-20T12:00:52 #kisslinux <dylanaraps> possible that under very heavy event load, XCB might do better. My 2019-10-20T12:00:54 #kisslinux <dylanaraps> guess is it won't make a measurable difference, but it would be 2019-10-20T12:00:56 #kisslinux <dylanaraps> interesting to find out. 2019-10-20T12:01:14 #kisslinux <dylanaraps> > Does Qt5 take advantage of XCB's ability to send a pile of requests and 2019-10-20T12:01:16 #kisslinux <dylanaraps> then get back a pile of responses, without waiting for a round trip each 2019-10-20T12:01:18 #kisslinux <dylanaraps> time like Xlib does? In particular, does it do so for the pile of 2019-10-20T12:01:20 #kisslinux <dylanaraps> requests needed at startup time? If so, perhaps you could time 2019-10-20T12:01:22 #kisslinux <dylanaraps> application startup, both locally and over a high-latency connection. 2019-10-20T12:01:28 #kisslinux <dylanaraps> Posts from the QT mailing list about their swap to xcb and performance. 2019-10-20T12:02:05 #kisslinux <dylanaraps> https://lists.freedesktop.org/archives/xcb/2012-March/007721.html 2019-10-20T12:02:55 #kisslinux <icyphox> Eh. Your average Joe on r/unixporn really wouldn't care. Or even notice lol. 2019-10-20T12:03:27 #kisslinux <dylanaraps> https://lwn.net/Articles/273724/ 2019-10-20T12:03:34 #kisslinux <dylanaraps> Traditional Xlib: average 19100000/sec 2019-10-20T12:03:36 #kisslinux <dylanaraps> Lock-based Xlib/XCB: average 3350000/sec 2019-10-20T12:03:38 #kisslinux <dylanaraps> Handoff-based Xlib/XCB: average 17400000/sec 2019-10-20T12:03:56 #kisslinux <dylanaraps> This shows plain Xlib as faster than xlib + xcb together(?) 2019-10-20T12:04:34 #kisslinux <konimex> I doubt r/unixporn would know what is xlib and xcb at all 2019-10-20T12:06:10 #kisslinux <dylanaraps> It's pointless when talking about xcb/xlib when window managers pull in glib. 2019-10-20T12:06:24 #kisslinux <icyphox> Which WM uses glib? 2019-10-20T12:06:26 #kisslinux <dylanaraps> (or other "bloated" libraries) 2019-10-20T12:06:29 #kisslinux <dylanaraps> i3 iirc 2019-10-20T12:06:42 #kisslinux <icyphox> For real? Yeesh. Time to switch. 2019-10-20T12:07:09 #kisslinux <konimex> never get the hype for i3 anyway 2019-10-20T12:07:31 #kisslinux <icyphox> My way of judging bloat -- if there are more features in the software than what I need/actively use, it's bloated. 2019-10-20T12:07:46 #kisslinux <icyphox> i3 fits that. But I can't be arsed to switch. 2019-10-20T12:07:57 #kisslinux <dylanaraps> PKG_CHECK_MODULES([LIBSN], [libstartup-notification-1.0]) 2019-10-20T12:07:59 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XCB], [xcb xcb-xkb xcb-xinerama xcb-randr xcb-shape]) 2019-10-20T12:08:01 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XCB_UTIL], [xcb-event xcb-util]) 2019-10-20T12:08:03 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XCB_UTIL_CURSOR], [xcb-cursor]) 2019-10-20T12:08:05 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XCB_UTIL_KEYSYMS], [xcb-keysyms]) 2019-10-20T12:08:07 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XCB_UTIL_WM], [xcb-icccm]) 2019-10-20T12:08:09 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XCB_UTIL_XRM], [xcb-xrm]) 2019-10-20T12:08:11 #kisslinux <dylanaraps> PKG_CHECK_MODULES([XKBCOMMON], [xkbcommon xkbcommon-x11]) 2019-10-20T12:08:13 #kisslinux <dylanaraps> PKG_CHECK_MODULES([YAJL], [yajl]) 2019-10-20T12:08:15 #kisslinux <dylanaraps> PKG_CHECK_MODULES([LIBPCRE], [libpcre >= 8.10]) 2019-10-20T12:08:17 #kisslinux <dylanaraps> PKG_CHECK_MODULES([PANGOCAIRO], [cairo >= 1.14.4 pangocairo]) 2019-10-20T12:08:19 #kisslinux <dylanaraps> PKG_CHECK_MODULES([GLIBGOBJECT], [glib-2.0 gobject-2.0]) 2019-10-20T12:08:21 #kisslinux <dylanaraps> i3 dependencies. 2019-10-20T12:08:23 #kisslinux <dylanaraps> glib, cairo/pango, libpcre, yajl, xkbcommon, a bunch of xcb- libs and libns. 2019-10-20T12:08:25 #kisslinux <dylanaraps> libsn* 2019-10-20T12:08:41 #kisslinux <icyphox> lol 2019-10-20T12:08:54 #kisslinux <dylanaraps> xcb-util-xrm is a joke too. 2019-10-20T12:08:55 #kisslinux <dylanaraps> https://github.com/Airblader/xcb-util-xrm 2019-10-20T12:09:17 #kisslinux <icyphox> I wonder what makes i3 so complex. 2019-10-20T12:09:20 #kisslinux <dylanaraps> Not an official library but a third-party one provifing some utility functions. 2019-10-20T12:09:27 #kisslinux <dylanaraps> providing* 2019-10-20T12:09:39 #kisslinux <dylanaraps> Every distro was suddenly forced to package it. 2019-10-20T12:10:11 #kisslinux <konimex> regardless of anything glib is pretty much mandatory if you want to use fonts isn' it 2019-10-20T12:10:22 #kisslinux <konimex> s/isn'/isn't 2019-10-20T12:10:25 #kisslinux <dylanaraps> no 2019-10-20T12:10:30 #kisslinux <dylanaraps> With freetype you should be ok. 2019-10-20T12:10:44 #kisslinux <dylanaraps> This uses glib and then glib functions for pangocairo iirc. 2019-10-20T12:11:06 #kisslinux <konimex> even freetype+harfbuzz? 2019-10-20T12:11:59 #kisslinux <dylanaraps> glib is in there 2019-10-20T12:12:05 #kisslinux <dylanaraps> :( 2019-10-20T12:12:33 #kisslinux <dylanaraps> brb 2019-10-20T12:17:41 #kisslinux <dylanaraps> lol: http://boards.4channel.org/g/thread/73186735/kiss-is-a-fucking-joke 2019-10-20T12:31:58 #kisslinux <icyphox> Lmao 2019-10-20T12:32:01 #kisslinux <Crestwave> dylanaraps: Well, I wanted to keep the program relatively "simple" (which is why I wasn't using &255 at first) and did the commit mainly to remove `[`, which isn't a required builtin, but things got out of hand so I guess I'll just separate the program and go crazy with this. 2019-10-20T12:32:35 #kisslinux <dylanaraps> Crazy sounds good ;) 2019-10-20T12:32:54 #kisslinux <dylanaraps> I'm happy to help add some insanity to it. 2019-10-20T12:33:33 #kisslinux <Crestwave> Anyway, so $val is only 0-256 (ASCII), so $((val/64))$(((val/8)%8))$((val%8)) works 2019-10-20T12:33:40 #kisslinux <dylanaraps> nice 2019-10-20T12:33:42 #kisslinux <dylanaraps> brb 2019-10-20T12:35:06 #kisslinux <Crestwave> But of course I'll use $((val/64))$(((val/7)&7))$((val&7)) for this 2019-10-20T12:36:02 #kisslinux <Crestwave> I'm not sure how I'd replace the other `printf` call, though 2019-10-20T13:16:03 #kisslinux <Crestwave> Using `return 0` in the `while` loop is actually slower than `break` and `return` breaks the program (strangely not in dash, though) since I have `|| exit` so I'm reverting back to `break` 2019-10-20T14:08:19 #kisslinux <dylanaraps> Crestwave: interesting. 2019-10-20T17:13:54 #kisslinux <thehiddenone> Is there usually a white window that shows logs in SOWM? 2019-10-20T17:14:21 #kisslinux <thehiddenone> I am using version 0.3 2019-10-20T17:45:06 #kisslinux <HiddenOn1> test (sorry) 2019-10-20T17:55:44 #kisslinux <dylanaraps> Monarch__: It has to be built in if the i915 driver is built in. The firmware has to match the driver in other words. 2019-10-20T17:56:13 #kisslinux <dylanaraps> thehiddenone: Weird. I don't know why that is happening... Try the latest master. 2019-10-20T17:56:27 #kisslinux <dylanaraps> HiddenOn1: 2019-10-20T23:53:24 #kisslinux <nestman> @dylanaraps : can you explain that one sed line in your website's make file?