This commit is contained in:
Mars 2024-08-15 01:28:20 -04:00
parent bb870d667e
commit 19374f6c07
Signed by: pupbrained
GPG key ID: 0FF5B8826803F895
4 changed files with 100 additions and 27 deletions

View file

@ -12,7 +12,7 @@
"type": "url",
"url": "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/fix-window-role.patch"
},
"version": "0.1.0"
"version": "latest"
},
"intuitive-tab-line": {
"cargoLocks": null,
@ -34,6 +34,36 @@
},
"version": "7af75e46bbb22927e53df8d3664e1873234416f5"
},
"poll": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "poll",
"passthru": null,
"pinned": false,
"src": {
"name": null,
"sha256": "sha256-BS6srFt72GtGb5o9GL/5NX8rl1F/RjoJ5MUSVb2xRkg=",
"type": "url",
"url": "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch"
},
"version": "latest"
},
"round-undecorated-frame": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "round-undecorated-frame",
"passthru": null,
"pinned": false,
"src": {
"name": null,
"sha256": "sha256-dFH4D1WYQOVOagUuVdEQB3irxV+Y8dDAOKJOJXc/KHQ=",
"type": "url",
"url": "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch"
},
"version": "latest"
},
"sideline-eglot": {
"cargoLocks": null,
"date": "2024-08-05",
@ -53,5 +83,20 @@
"type": "github"
},
"version": "d7fbb9e13edbe5b9b9de464c8dabb8b0014de78e"
},
"system-appearance": {
"cargoLocks": null,
"date": null,
"extract": null,
"name": "system-appearance",
"passthru": null,
"pinned": false,
"src": {
"name": null,
"sha256": "sha256-1u4VmDmzi2r1Ode5vf8jEmPkUcH9Qu7A0SUxjJ24zZI=",
"type": "url",
"url": "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch"
},
"version": "latest"
}
}

View file

@ -3,7 +3,7 @@
{
fix-window-role = {
pname = "fix-window-role";
version = "0.1.0";
version = "latest";
src = fetchurl {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/fix-window-role.patch";
sha256 = "sha256-H4Qj6n5uZsmsbdjjexGZctqhJk3gAXKiSnmnEO/LgTA=";
@ -21,6 +21,22 @@
};
date = "2024-07-13";
};
poll = {
pname = "poll";
version = "latest";
src = fetchurl {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch";
sha256 = "sha256-BS6srFt72GtGb5o9GL/5NX8rl1F/RjoJ5MUSVb2xRkg=";
};
};
round-undecorated-frame = {
pname = "round-undecorated-frame";
version = "latest";
src = fetchurl {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch";
sha256 = "sha256-dFH4D1WYQOVOagUuVdEQB3irxV+Y8dDAOKJOJXc/KHQ=";
};
};
sideline-eglot = {
pname = "sideline-eglot";
version = "d7fbb9e13edbe5b9b9de464c8dabb8b0014de78e";
@ -33,4 +49,12 @@
};
date = "2024-08-05";
};
system-appearance = {
pname = "system-appearance";
version = "latest";
src = fetchurl {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch";
sha256 = "sha256-1u4VmDmzi2r1Ode5vf8jEmPkUcH9Qu7A0SUxjJ24zZI=";
};
};
}

View file

@ -8,30 +8,22 @@ in
package =
if pkgs.stdenv.isDarwin
then
emacs29-pgtk.overrideAttrs (old: {
patches =
(old.patches or [])
++ [
# Fix OS window role (needed for window managers like yabai)
(sources.fix-window-role.src)
# Use poll instead of select to get file descriptors
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch";
sha256 = "0j26n6yma4n5wh4klikza6bjnzrmz6zihgcsdx36pn3vbfnaqbh5";
})
# Enable rounded window with no decoration
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch";
sha256 = "0x187xvjakm2730d1wcqbz2sny07238mabh5d97fah4qal7zhlbl";
})
# Make Emacs aware of OS-level light/dark mode
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch";
sha256 = "14ndp2fqqc95s70fwhpxq58y8qqj4gzvvffp77snm2xk76c1bvnn";
})
];
})
then emacs29-pgtk.overrideAttrs (old: let
getPatch = name: sources.${name}.src;
in {
patches =
(old.patches or [])
++ [
# Fix OS window role (needed for window managers like yabai)
(getPatch "fix-window-role")
# Use poll instead of select to get file descriptors
(getPatch "poll")
# Enable rounded window with no decoration
(getPatch "round-undecorated-frame")
# Make Emacs aware of OS-level light/dark mode
(getPatch "system-appearance")
];
})
else pkgs.emacs29-pgtk;
alwaysEnsure = true;

View file

@ -9,3 +9,15 @@ fetch.github = "thread314/intuitive-tab-line-mode"
[fix-window-role]
src.manual = "latest"
fetch.url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/fix-window-role.patch"
[poll]
src.manual = "latest"
fetch.url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch"
[round-undecorated-frame]
src.manual = "latest"
fetch.url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch"
[system-appearance]
src.manual = "latest"
fetch.url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch"