Website | https://refi64.com/ |
Vaccinated? | x5 |
Pronouns | he/they |
Website | https://refi64.com/ |
Vaccinated? | x5 |
Pronouns | he/they |
@falktx
hmm yeah that file is a lot bigger than I remember of, idk why exactly, maybe a side effect of libdecor trying to be really flexible wrt how the app manages the window?
> is finding the default titlebar height and the left-shadow-position offset
for the first thing, the easiest reference I know of would be Electron's CSD, which in turn was based on Chromium's but is a fair bit shorter https://github.com/electron/electron/blob/624d0856324c20699ae0f3a60a2a34d1cc2bc8a1/shell/browser/ui/views/client_frame_view_linux.cc esp GetTitlebarBounds. not entirely sure about left-shadow-position.
@falktx
it's not super big...but it's also kinda based around a dynamic plugin system which I COMPLETELY FORGOT so it's probably not trivially usable in a static context anyway, oops 😅
(though I guess if nothing else, the GTK backend might be useful for reference purposes? but perhaps not if you already did most of the work anyway)
New post: Placing Functions
https://blog.yoshuawuyts.com/placing-functions
I wrote a blog post about placing functions: functions which can return without moving. This is useful for referentially stable constructors, including immovable types, C++ interop, and dyn async traits.
A lot of useful stuff, packaged up in a declarative interface. Oh and: I have a prototype of this working already (albeit entirely using proc macros).
This is all very efficient to secure services, but it's also a bit opaque: since it's the daemon you sandbox, and your admin tools are outside of that sandbox it's sometimes hard to analyze how the daemon sees things.
No more. With v258 there's a new verb "unit-shell" in systemd-analyze. You specify a service name, and it opens you a shell inside that specified services' sandbox (which must be running for this). You can look around and check if everything is like you expected it to be.
"Arbitrary File Read via file:// Protocol in cURL"
Well, you see... 🤦♂️