guix-packages/oni/packages/emacs-config.scm

376 lines
12 KiB
Scheme
Raw Normal View History

2021-05-25 05:28:39 +02:00
(define-module (oni packages emacs-config)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system emacs)
#:use-module ((guix licenses) #:prefix license:)
2021-06-22 08:15:09 +02:00
#:use-module (gnu packages emacs-xyz)
#:use-module (gnu packages llvm)
#:use-module (gnu packages cmake)
#:use-module (gnu packages bash)
#:use-module (oni packages emacs)
#:use-module (oni packages go))
2021-05-25 05:28:39 +02:00
(define-public emacs-oni-config
(let ((commit "a7bf05b48c47740de50c2adbc0fa8da703958f7b")
2021-05-25 05:28:39 +02:00
(revision "0"))
(package
(name "emacs-oni-config")
2021-05-25 05:28:39 +02:00
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~ryuslash/emacs-config")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "10n16bdqhq34rdjz8hqa6xlbvww05m257p815sk1vsv8k1xjn809"))))
2021-05-25 05:28:39 +02:00
(build-system emacs-build-system)
(home-page "https://sr.ht/~ryuslash/dotfiles/")
(synopsis "My Emacs configuration")
(description "This package provides my configuration for emacs")
2021-05-25 05:28:39 +02:00
(license license:gpl3+))))
2021-05-28 07:40:59 +02:00
(define-public emacs-oni-vterm
(package
(inherit emacs-oni-config)
(name "emacs-oni-vterm")
(arguments
'(#:include '("oni-vterm.el")))
(propagated-inputs
`(("emacs-vterm" ,emacs-vterm)))
(synopsis "My Emacs vterm configuration")
(description "This package provides my configuration for emacs-vterm")))
2021-05-28 07:40:59 +02:00
(define-public emacs-oni-elfeed
(package
(inherit emacs-oni-config)
(name "emacs-oni-elfeed")
(arguments
'(#:include '("oni-elfeed.el")))
(propagated-inputs
`(("emacs-elfeed" ,emacs-elfeed)))
(synopsis "My Emacs elfeed configuration")
(description "This package provides my configuration for emacs-elfeed")))
(define-public emacs-oni-alert
(package
(inherit emacs-oni-config)
(name "emacs-oni-alert")
(arguments
'(#:include '("oni-alert.el")))
(propagated-inputs
`(("emacs-alert" ,emacs-alert)))
(synopsis "My Emacs alert configuration")
(description "This package provides my configuration for emacs-alert")))
(define-public emacs-oni-bookmark
(package
(inherit emacs-oni-config)
(name "emacs-oni-bookmark")
(arguments
'(#:include '("oni-bookmark.el")))
(synopsis "My Emacs bookmark configuration")
(description "This package provides my configuration for the bookmark library
in Emacs")))
2021-06-22 08:15:09 +02:00
(define-public emacs-oni-lui
(package
(inherit emacs-oni-config)
(name "emacs-oni-lui")
(arguments
'(#:include '("oni-lui.el")))
(propagated-inputs
`(("emacs-circe" ,emacs-circe)))
(synopsis "My Emacs Line-UI configuration")
(description "This package provides my configuration for the lui library in
Emacs")))
(define-public emacs-oni-circe
(package
(inherit emacs-oni-config)
(name "emacs-oni-circe")
(arguments
'(#:include '("oni-circe.el")))
(propagated-inputs
`(("emacs-circe" ,emacs-circe)
("emacs-circe-serenityc" ,emacs-circe-serenity)
("emacs-oni-lui" ,emacs-oni-lui)))
(synopsis "My Emacs Circe configuration")
(description "This package provides my configuration for emacs-circe")))
(define-public emacs-oni-embrace
(package
(inherit emacs-oni-config)
(name "emacs-oni-embrace")
(arguments
'(#:include '("oni-embrace.el")))
(propagated-inputs
`(("emacs-embrace" ,emacs-embrace)))
(synopsis "My Emacs Embrace configuration")
(description "This package provides my configuration for emacs-embrace")))
(define-public emacs-oni-hydra
(package
(inherit emacs-oni-config)
(name "emacs-oni-hydra")
(arguments
'(#:include '("oni-hydra.el")))
(propagated-inputs
`(("emacs-hydra" ,emacs-hydra)
("emacs-posframe" ,emacs-posframe)))
(synopsis "My Emacs Hydra configuration")
(description "This package provides my configuration for emacs-hydra")))
(define-public emacs-oni-data-dir
(package
(inherit emacs-oni-config)
(name "emacs-oni-data-dir")
(arguments
'(#:include '("oni-data-dir.el")))
(synopsis "Data dir configuration")
(description "Utilities for placing all state files in 'data/' inside my
`user-emacs-directory'.")))
(define-public emacs-oni-core
(package
(inherit emacs-oni-config)
(name "emacs-oni-core")
(arguments
'(#:include '("oni-core.el")))
(propagated-inputs
`(("emacs-oni-data-dir" ,emacs-oni-data-dir)
("emacs-oni-embrace" ,emacs-oni-embrace)
("emacs-oni-hydra" ,emacs-oni-hydra)
("emacs-expand-region" ,emacs-expand-region)
("emacs-multiple-cursors" ,emacs-multiple-cursors)
("emacs-gcmh" ,emacs-gcmh)
("emacs-diminish" ,emacs-diminish)
("emacs-ws-butler" ,emacs-ws-butler)
("emacs-which-key" ,emacs-which-key)
("emacs-insert-char-preview" ,emacs-insert-char-preview)
("emacs-dashboard" ,emacs-dashboard)))
(synopsis "My core Emacs configuration")
(description "This package provides my core configuration for Emacs")))
(define-public emacs-oni-smartparens
(package
(inherit emacs-oni-config)
(name "emacs-oni-smartparens")
(arguments
'(#:include '("oni-smartparens.el")))
(propagated-inputs
`(("emacs-smartparens" ,emacs-smartparens)))
(synopsis "My Emacs smartparens configuration")
(description "This package provides my configuration for Emacs smartparens")))
(define-public emacs-oni-flycheck
(package
(inherit emacs-oni-config)
(name "emacs-oni-flycheck")
(arguments
'(#:include '("oni-flycheck.el")))
(propagated-inputs
`(("emacs-flycheck" ,emacs-flycheck)
("emacs-flycheck-posframe" ,emacs-flycheck-posframe)
("emacs-flycheck-cask" ,emacs-flycheck-cask)))
(synopsis "My Emacs flycheck configuration")
(description "This package provides my configuration for Emacs flycheck")))
(define-public emacs-oni-lsp
(package
(inherit emacs-oni-config)
(name "emacs-oni-lsp")
(arguments
'(#:include '("oni-lsp.el")))
(propagated-inputs
`(("emacs-lsp-mode" ,emacs-lsp-mode)
("emacs-lsp-ui" ,emacs-lsp-ui)
("emacs-lsp-ivy" ,emacs-lsp-ivy)))
(synopsis "My Emacs LSP configuration")
(description "This package provides my configuration for Emacs LSP")))
(define-public emacs-oni-c
(package
(inherit emacs-oni-config)
(name "emacs-oni-c")
(arguments
'(#:include '("oni-c.el")))
(propagated-inputs
`(("emacs-oni-flycheck" ,emacs-oni-flycheck)
("emacs-oni-lsp" ,emacs-oni-lsp)
("emacs-reformatter" ,emacs-reformatter)
("emacs-ccls" ,emacs-ccls)
("emacs-rainbow-delimiters" ,emacs-rainbow-delimiters)
;; For `clang-format'.
("clang" ,clang)))
(synopsis "My Emacs C coding configuration")
(description "This package provides my configuration for coding in C")))
(define-public emacs-oni-sh
(package
(inherit emacs-oni-config)
(name "emacs-oni-sh")
(arguments
'(#:include '("oni-sh.el")))
(propagated-inputs
`(("emacs-reformatter" ,emacs-reformatter)
("emacs-oni-flycheck" ,emacs-oni-flycheck)
("emacs-oni-smartparens" ,emacs-oni-smartparens)
("shfmt" ,shfmt)))
(synopsis "My Emacs Shell coding configuration")
(description "This package provides my configuration for coding in Shell")))
(define-public emacs-oni-yasnippet
(package
(inherit emacs-oni-config)
(name "emacs-oni-yasnippet")
(arguments
'(#:include '("oni-yasnippet.el")))
(propagated-inputs
`(("emacs-yasnippet" ,emacs-yasnippet)
("emacs-yasnippet-snippets" ,emacs-yasnippet-snippets)
("emacs-diminish" ,emacs-diminish)))
(synopsis "My Emacs yasnippet configuration")
(description "This package provides my configuration for yasnippet")))
(define-public emacs-oni-bats
(package
(inherit emacs-oni-config)
(name "emacs-oni-bats")
(arguments
`(#:phases
(modify-phases %standard-phases
2021-09-12 23:53:58 +02:00
(add-after 'unpack 'chdir-oni-bats
(lambda _
(chdir "oni-bats"))))
#:include '("\\.el$" "^snippets\\/bats-mode\\/")))
(propagated-inputs
`(("emacs-bats" ,emacs-bats)
("emacs-oni-sh" ,emacs-oni-sh)
("emacs-oni-yasnippet" ,emacs-oni-yasnippet)
("bats" ,bats)))
(synopsis "My Emacs Bats coding configuration")
(description "This package provides my configuration for coding in Bats")))
(define-public emacs-oni-org
(package
(inherit emacs-oni-config)
(name "emacs-oni-org")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-oni-org
(lambda _
(chdir "oni-org"))))
#:include '("\\.el$"
"^snippets\\/org-mode\\/"
"^capture-templates\\/"
"^icons\\/")))
(propagated-inputs
`(("emacs-oni-yasnippet" ,emacs-oni-yasnippet)
("emacs-oni-alert" ,emacs-oni-alert)
("emacs-oni-hydra" ,emacs-oni-hydra)
("emacs-org" ,emacs-org)
("emacs-org-contrib" ,emacs-org-contrib)
("emacs-org-bullets" ,emacs-org-bullets)
("emacs-org-edna" ,emacs-org-edna)
("emacs-diminish" ,emacs-diminish)
("emacs-all-the-icons" ,emacs-all-the-icons)
("emacs-olivetti" ,emacs-olivetti)
("emacs-mixed-pitch" ,emacs-mixed-pitch)))
(synopsis "My Emacs Org configuration")
(description "This package provides my configuration for org")))
(define-public emacs-oni-org-roam
(package
(inherit emacs-oni-config)
(name "emacs-oni-org-roam")
(arguments
'(#:include '("oni-org-roam.el")))
(propagated-inputs
`(("emacs-oni-org" ,emacs-oni-org)
("emacs-org-roam" ,emacs-org-roam)
("emacs-nroam" ,emacs-nroam)))
(synopsis "My Emacs Org Roam configuration")
(description "This package provides my configuration for Org Roam")))
(define-public emacs-oni-browse-url
(package
(inherit emacs-oni-config)
(name "emacs-oni-browse-url")
(arguments
'(#:include '("oni-browse-url.el")))
(synopsis "My Emacs Browse Url configuration")
(description "This package provides my configuration for Browse Url")))
(define-public emacs-oni-prescient
(package
(inherit emacs-oni-config)
(name "emacs-oni-prescient")
(arguments
'(#:include '("oni-prescient.el")))
(propagated-inputs
`(("emacs-prescient" ,emacs-prescient)
("emacs-oni-data-dir" ,emacs-oni-data-dir)))
(synopsis "My Emacs prescient configuration")
(description "This package provides my configuration for prescient")))
(define-public emacs-oni-company
(package
(inherit emacs-oni-config)
(name "emacs-oni-company")
(arguments
'(#:include '("oni-company.el")))
(propagated-inputs
`(("emacs-company" ,emacs-company)
("emacs-oni-prescient" ,emacs-oni-prescient)
("emacs-company-posframe" ,emacs-company-posframe)
("emacs-diminish" ,emacs-diminish)))
(synopsis "My Emacs Company configuration")
(description "This package provides my configuration for company")))
(define-public emacs-oni-paredit
(package
(inherit emacs-oni-config)
(name "emacs-oni-paredit")
(arguments
'(#:include '("oni-paredit.el")))
(propagated-inputs
`(("emacs-paredit" ,emacs-paredit)
("emacs-diminish" ,emacs-diminish)))
(synopsis "My Emacs paredit configuration")
(description "This package provides my configuration for paredit")))
(define-public emacs-oni-clojure
(package
(inherit emacs-oni-config)
(name "emacs-oni-clojure")
(arguments
'(#:include '("oni-clojure.el")))
(propagated-inputs
`(("emacs-clojure-mode" ,emacs-clojure-mode)
("emacs-oni-company" ,emacs-oni-company)
("emacs-cider" ,emacs-cider)
("emacs-oni-paredit" ,emacs-oni-paredit)
("emacs-rainbow-delimiters" ,emacs-rainbow-delimiters)
("emacs-oni-data-dir" ,emacs-oni-data-dir)))
(synopsis "My Emacs Clojure configuration")
(description "This package provides my configuration for Clojure")))
(define-public emacs-oni-cmake
(package
(inherit emacs-oni-config)
(name "emacs-oni-cmake")
(arguments
'(#:include '("oni-cmake.el")))
(propagated-inputs
`(("emacs-cmake-mode" ,emacs-cmake-mode)
("emacs-oni-company" ,emacs-oni-company)
("emacs-oni-flycheck" ,emacs-oni-flycheck)
("emacs-oni-lsp" ,emacs-oni-lsp)
("emacs-cmake-font-lock" ,emacs-cmake-font-lock)
("emacs-eldoc-cmake" ,emacs-eldoc-cmake)))
(synopsis "My Emacs CMake confifguration")
(description "This package provides my configuration for CMake")))