diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/editors/emacs/sources.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/editors/emacs/sources.nix | 58 |
1 files changed, 39 insertions, 19 deletions
diff --git a/nixpkgs/pkgs/applications/editors/emacs/sources.nix b/nixpkgs/pkgs/applications/editors/emacs/sources.nix index 440184d959e0..b9b18a98ac88 100644 --- a/nixpkgs/pkgs/applications/editors/emacs/sources.nix +++ b/nixpkgs/pkgs/applications/editors/emacs/sources.nix @@ -4,9 +4,13 @@ }: let - mainlineMeta = { - homepage = "https://www.gnu.org/software/emacs/"; - description = "The extensible, customizable GNU text editor"; + metaFor = variant: version: rev: { + homepage = { + "mainline" = "https://www.gnu.org/software/emacs/"; + "macport" = "https://bitbucket.org/mituharu/emacs-mac/"; + }.${variant}; + description = "The extensible, customizable GNU text editor" + + lib.optionalString (variant == "macport") " - macport variant"; longDescription = '' GNU Emacs is an extensible, customizable text editor—and more. At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming @@ -21,7 +25,15 @@ let functionality, including a project planner, mail and news reader, debugger interface, calendar, and more. Many of these extensions are distributed with GNU Emacs; others are available separately. + '' + lib.optionalString (variant == "macport") '' + + This release is built from Mitsuharu Yamamoto's patched source code + tailored for macOS. ''; + changelog = { + "mainline" = "https://www.gnu.org/savannah-checkouts/gnu/emacs/news/NEWS.${version}"; + "macport" = "https://bitbucket.org/mituharu/emacs-mac/raw/${rev}/NEWS-mac"; + }.${variant}; license = lib.licenses.gpl3Plus; maintainers = with lib.maintainers; [ AndersonTorres @@ -31,7 +43,10 @@ let lovek323 matthewbauer ]; - platforms = lib.platforms.all; + platforms = { + "mainline" = lib.platforms.all; + "macport" = lib.platforms.darwin; + }.${variant}; mainProgram = "emacs"; }; in @@ -46,23 +61,23 @@ in hash = "sha256-4oSLcUDR0MOEt53QOiZSVU8kPJ67GwugmBxdX3F15Ag="; }; - meta = mainlineMeta; + meta = metaFor "mainline" "28.2" "28.2"; }; emacs29 = import ./generic.nix { pname = "emacs"; - version = "29.1-rc1"; + version = "29.1"; variant = "mainline"; src = fetchFromSavannah { repo = "emacs"; - rev = "29.1-rc1"; - hash = "sha256-p0lBSKsHrFwYTqO5UVIF/PgiqwdhYQE4oUVcPtd+gsU="; + rev = "29.1"; + hash = "sha256-3HDCwtOKvkXwSULf3W7YgTz4GV8zvYnh2RrL28qzGKg="; }; - meta = mainlineMeta; + meta = metaFor "mainline" "29.1" "29.1"; }; - emacs-macport = import ./generic.nix { + emacs28-macport = import ./generic.nix { pname = "emacs-mac"; version = "28.2"; variant = "macport"; @@ -73,16 +88,21 @@ in hash = "sha256-Ne2jQ2nVLNiQmnkkOXVc5AkLVkTpm8pFC7VNY2gQjPE="; }; - meta = { - homepage = "https://bitbucket.org/mituharu/emacs-mac/"; - description = mainlineMeta.description + " - with macport patches"; - longDescription = mainlineMeta.longDescription + '' + meta = metaFor "macport" "28.2" "emacs-28.2-mac-9.1"; + }; + + emacs29-macport = import ./generic.nix { + pname = "emacs-mac"; + version = "29.1"; + variant = "macport"; - This release is built from Mitsuharu Yamamoto's patched source code - tailoired for MacOS X. - ''; - inherit (mainlineMeta) license maintainers; - platforms = lib.platforms.darwin; + src = fetchFromBitbucket { + owner = "mituharu"; + repo = "emacs-mac"; + rev = "emacs-29.1-mac-10.0"; + hash = "sha256-TE829qJdPjeOQ+kD0SfyO8d5YpJjBge/g+nScwj+XVU="; }; + + meta = metaFor "macport" "29.1" "emacs-29.1-mac-10.0"; }; } |