adds patched emacs

This commit is contained in:
Dennis Schoepf 2025-09-06 21:12:48 +02:00
parent d2beef02bc
commit 096fd4c750
3 changed files with 34 additions and 0 deletions

View file

@ -12,6 +12,7 @@
nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
ip-whitelist.url = "github:Oak-Digital/nixos-ip-whitelist-firewall";
nix-homebrew.url = "github:zhaofengli/nix-homebrew";
emacs-overlay.url = "github:nix-community/emacs-overlay/da2f552d133497abd434006e0cae996c0a282394";
};
outputs =

View file

@ -25,6 +25,12 @@
nixpkgs.config.allowUnfree = true;
# Overlays
nixpkgs.overlays = [
(import inputs.emacs-overlay)
(import ../../overlays/emacs-patches.nix)
];
# System Packages
environment.systemPackages = with pkgs; [
git
@ -60,6 +66,7 @@
fnm
imagemagick
restic
emacs-patched
];
# Homebrew

View file

@ -0,0 +1,26 @@
final: prev: {
emacs-patched = prev.emacsPgtk.overrideAttrs (old: {
patches = (old.patches or [ ]) ++ [
# Fix OS window role (needed for window managers like yabai)
(prev.fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/fix-window-role.patch";
sha256 = "0c41rgpi19vr9ai740g09lka3nkjk48ppqyqdnncjrkfgvm2710z";
})
# Use poll instead of select to get file descriptors
(prev.fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch";
sha256 = "0j26n6yma4n5wh4klikza6bjnzrmz6zihgcsdx36pn3vbfnaqbh5";
})
# Enable rounded window with no decoration
(prev.fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch";
sha256 = "111i0r3ahs0f52z15aaa3chlq7ardqnzpwp8r57kfsmnmg6c2nhf";
})
# Make Emacs aware of OS-level light/dark mode
(prev.fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch";
sha256 = "14ndp2fqqc95s70fwhpxq58y8qqj4gzvvffp77snm2xk76c1bvnn";
})
];
});
}