alice has quit [Remote host closed the connection]
alice has joined #foot
amk has quit [Ping timeout: 250 seconds]
amk has joined #foot
cbb has quit [Ping timeout: 252 seconds]
cbb has joined #foot
cbb has quit [Client Quit]
ifreund has quit [*.net *.split]
ifreund has joined #foot
<dnkl>
Just noticed that FreeBSD is now doing PGO builds of foot!
nojob has joined #foot
<nojob>
Was the intent of the nnn cwd commit to have foot properly spawn a new term instance (default keybind c-s-n) in the cwd? If so, I am still only able to spawn to ~ only even after rebuilding against the commit. Sway 1.6.1. Foot 1.9.0. Nnn static build (netbsd-curses using the unset TERMINFO workaround).
<dnkl>
nojob: yes, but note that you need to run nnn with -x
<nojob>
No go here. Foot by itself also seems to only be able to spawn to ~.
<dnkl>
nojob: for foot in general, you need to configure your shell to emit OSC-7
<dnkl>
if it still doesn't work, you could try doing a debug build of foot, set LOG_ENABLE_DBG to 1 in osc.c, and then run foot with -d debug
<dnkl>
then you'll see what it receives and how it parses it
<Arnavion>
Would be interesting to bundle a mock wayland server to be able to do the full PGO without an actual wayland session. Then distros can do it in their build servers
<dnkl>
Arnavion: yeah, agreed. According to jbeich's numbers, there was quite a difference between a partial and full PGO. And that matches what I've seen as well.
<Arnavion>
How much difference?
<dnkl>
he noted a 2% perf increase with partial, and 12% with full
<Arnavion>
Neat
<dnkl>
partial PGO used to add a larger perf increase, but there's been improvements to regular LTO builds that has closed the gap
<dnkl>
he also enabled LTO (which FreeBSD didn't do before foot-1.9), and that alone resulted in 7%
<dnkl>
PGO numbers were on top of that I believe
<rcf>
At this point it would not be necessary to bundle a mock wayland server, given that weston and sway (and I think GNOME) can now run headless
<ifreund>
anything using wlroot's backend autocreate() function can run headless
<ifreund>
which is every wlroots based compositor I know of
<ifreund>
including tinywl
<dnkl>
would be interresting to test
<Arnavion>
True
<dnkl>
for AUR we could simply auto-detect weston or sway and run a full PGO if available, and fallback to partial otherwise
<dnkl>
real build servers could just pick one and make it a build dependency
<Arnavion>
Does a wlroots headless output behave identically to a non-headless output wrt the frequency of frame callbacks etc, even if nothing is reading from the output (like screencopy) ?
<ifreund>
Arnavion: you can set whatever mode you want for the "fake" output, which includes the refresh rate
<dnkl>
Arnavion: simple test where I run "foot -o tweak.render-timer=log tree /" shows _something_ is happening...
<dnkl>
... in terms of rendering
<dnkl>
now I just need to figure out how to a) wait for the headless server to startup, and b) which WAYLAND_DISPLAY to use.
<dnkl>
Or alternatively, make weston/sway autostart foot
* dnkl
should be doing his $dayjob instead
alice has quit [Remote host closed the connection]
alice has joined #foot
<ericonr>
I tried using cage in void's build
<ericonr>
but the whole process was a tad too manual and didn't work for some reason
<ericonr>
I think I had also misunderstood how pgo works with meson
nojob has quit [Quit: Quit]
<dnkl>
ericonr: I'm writing up a wrapper script that should make PGO:ing easier. Even if not used directly, it can server as an example for package maintainers
<ifreund>
nice :)
<ifreund>
I've been too lazy to try and set it up for void's build myself
nojob has joined #foot
<ericonr>
dnkl: that's nice, appreciated
<dnkl>
ericonr: I'm not _just_ being nice. I often refrain/forget about testing e.g. Clang PGO builds, because it's such a pain to do it manually.
<dnkl>
and hopefully I'll be able use the script as-is in the AUR package
<dnkl>
there's an initial version up now, in the pgo-script branch. I'll open a PR for it when it's done, but should already be usable. I haven't added headless builds yet.