diff --git a/gnu/home/services/emacs.scm b/gnu/home/services/emacs.scm deleted file mode 100644 index a3951c2a85..0000000000 --- a/gnu/home/services/emacs.scm +++ /dev/null @@ -1,63 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2022 Zain Jabbar -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see . - -(define-module (gnu home services emacs) - #:use-module (gnu home) - #:use-module (gnu packages) - #:use-module (gnu services) - #:use-module (gnu home services) - #:use-module (gnu services) - #:use-module (gnu services configuration) - #:use-module (guix gexp) - - #:export (home-emacs-service-type - home-emacs-configuration)) - -(define file-likes? (list-of file-like?)) - -(define-configuration/no-serialization home-emacs-configuration - (packages - (file-likes (list (specification->package "emacs"))) - "The packages this configuration will add to home-profile. Usually these will be emacs-* packages.") - (early-init - (list '()) - "A list whose contents will inserted into @file{$XDG_CONFIG_HOME/emacs/early-init.el}") - (init - (list '()) - "A list whose contents will inserted into @file{$XDG_CONFIG_HOME/emacs/init.el}")) - -(define home-emacs-service-type - (service-type (name 'emacs-configuration) - (extensions - (list (service-extension - home-profile-service-type - (lambda (config) (home-emacs-configuration-packages config))) - (service-extension - home-xdg-configuration-files-service-type - (lambda (config) - (list - `("emacs/early-init.el" - ,(scheme-file "early-init.el" - (home-emacs-configuration-early-init config) - #:splice? #:t)) - `("emacs/init.el" - ,(scheme-file "init.el" - (home-emacs-configuration-init config) - #:splice? #:t))))))) - (default-value (home-emacs-configuration)) - (description "Configures Emacs and installs packages to home-profile.")))