cmacrae / emacs

Nightly custom Emacs builds for macOS Nix environments
MIT License
40 stars 17 forks source link

fix: update patches to latest from emacs-plus #9

Closed montchr closed 2 years ago

montchr commented 2 years ago

Fixes #7

montchr commented 2 years ago

Ha, too late – these are broken too!

https://github.com/d12frosted/homebrew-emacs-plus/issues/433

montchr commented 2 years ago

Looks like the build might be running successfully after removing the no-titlebar patch. As it turns out, the patch might not be necessary considering the following elisp snippet appears to have the desired effect:

(add-to-list 'default-frame-alist '(undecorated . t))
montchr commented 2 years ago

several hours later…

Looks like Emacs built successfully, but the workflow run failed because my fork is not authorized to push to this repo's binary cache:

cachix: FailureResponse (Request {requestPath = (BaseUrl {baseUrlScheme = Https, baseUrlHost = "cachix.org", baseUrlPort = 443, baseUrlPath = ""},"/api/v1/cache/emacs/8lgdnr9ybv7kpnw2qysbifzwc2ljs15p.narinfo"), requestQueryString = fromList [], requestBody = Just ((),application/json;charset=utf-8), requestAccept = fromList [], requestHeaders = fromList [("Authorization","")]), requestHttpVersion = HTTP/1.1, requestMethod = "POST"} (Response {responseStatusCode = Status {statusCode = 401, statusMessage = "Unauthorized"}, responseHeaders = fromList [("Date","Wed, 02 Feb 2022 07:09:00 GMT"),("Transfer-Encoding","chunked"),("Connection","keep-alive"),("Cache-Control","no-cache"),("CF-Cache-Status","DYNAMIC"),("Expect-CT","max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""),("Report-To","{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=k%2FtAfYda1BlvZMxxzTMqr5WWMZ%2FWybXHDWnpjFAkYWbktcbKf5EoVRUamLDmE6r0zhe5gn%2B6HtHu48g7Tj7qYel5W%2F33sgnGKqRnNRSPa9WDHTwcmg%2FYTDowzek%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"),("NEL","{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"),("Server","cloudflare"),("CF-RAY","6d71976bfc1681c4-IAD")], responseHttpVersion = HTTP/1.1, responseBody = "Binary cache emacs doesn't exist or you're not authorized to access. Please check the name for typos and/or provide an auth token. Contact support on cachix.org if you're stuck!"})

montchr commented 2 years ago

@cmacrae Ready for review when you have some time. And I'm not sure what is the best way to fix the Cachix push, but I think that'd resolve itself once merged.

What do you think about the approach of removing the no-titlebar patch? From the update I made to the README:

The no-titlebar frame patch has been removed, as it can be implemented with pure Emacs Lisp by putting the following early on during initialization (e.g. in early-init.el):

(add-to-list 'default-frame-alist '(undecorated . t))

See https://github.com/d12frosted/homebrew-emacs-plus/issues/433#issuecomment-1025547880 for further background.

I've tested this approach locally and it works well! Here's a demo of its behavior with yabai v4 with only the single fix-window-role patch applied in addition to the snippet above:

CleanShot 2022-02-02 at 09 19 01

cmacrae commented 2 years ago

Ah! My sincere apologies @montchr - I've been on a bit of a hiatus and hadn't seen this. Thank you for your contributions :) I'll have a look over them shortly

cmacrae commented 2 years ago

Passed on master. Thanks so much @montchr 🙌 It's nice to get rid of the no-titlebars patch

antifuchs commented 2 years ago

I have been running an emacs on darwin with undecorated frames for a few weeks, but the unfortunate thing is that the frames turn completely unmanageable in systems where the screen size changes, as undecorated causes the window to refuse resizing/repositioning /-:

I'm not sure anything here can be done, but it would be really nice if undecorated windows were possible to manage again /: