BREAKING CHANGE: This deprecates the IS-(MAC|WINDOWS|LINUX|BSD) family of global constants in favor of a native `featurep` check: IS-MAC -> (featurep :system 'macos) IS-WINDOWS -> (featurep :system 'windows) IS-LINUX -> (featurep :system 'linux) IS-BSD -> (featurep :system 'bsd) The constants will stick around until the v3 release so folks can still use it -- and there are still some modules that use it, but I'll phase those uses out gradually. Fix: #7479
167 lines
7.3 KiB
EmacsLisp
167 lines
7.3 KiB
EmacsLisp
;; -*- no-byte-compile: t; -*-
|
|
;;; lang/org/packages.el
|
|
|
|
(package! org
|
|
:recipe (:host github
|
|
;; REVIEW: I intentionally avoid git.savannah.gnu.org because of SSL
|
|
;; issues (see #5655), uptime issues, download time, and lack of
|
|
;; shallow clone support.
|
|
:repo "emacs-straight/org-mode"
|
|
:files (:defaults "etc")
|
|
:depth 1
|
|
;; HACK: Org has a post-install step that generates org-version.el
|
|
;; and org-loaddefs.el, but Straight doesn't invoke this step, and
|
|
;; the former doesn't work if the Org repo is a shallow clone.
|
|
;; Rather than impose the network burden of a full clone (and other
|
|
;; redundant work in Org's makefile), I'd rather fake these files
|
|
;; instead. Besides, Straight already produces a org-autoloads.el,
|
|
;; so org-loaddefs.el isn't needed.
|
|
:build t
|
|
:pre-build
|
|
(progn
|
|
(with-temp-file "org-loaddefs.el")
|
|
(with-temp-file "org-version.el"
|
|
(let ((version
|
|
(with-temp-buffer
|
|
(insert-file-contents (doom-path "lisp/org.el") nil 0 1024)
|
|
(if (re-search-forward "^;; Version: \\([^\n-]+\\)" nil t)
|
|
(match-string-no-properties 1)
|
|
"Unknown"))))
|
|
(insert (format "(defun org-release () %S)\n" version)
|
|
(format "(defun org-git-version (&rest _) \"%s-??-%s\")\n"
|
|
version (cdr (doom-call-process "git" "rev-parse" "--short" "HEAD")))
|
|
"(provide 'org-version)\n")))))
|
|
:pin "57b94f3447b9046dac2f9238e24ad902510056cc")
|
|
(package! org-contrib
|
|
:recipe (:host github
|
|
:repo "emacsmirror/org-contrib")
|
|
:pin "79286861ae3f4a47fbc66ce97cd527196f60c4a8")
|
|
|
|
(package! avy)
|
|
(package! htmlize :pin "dd27bc3f26efd728f2b1f01f9e4ac4f61f2ffbf9")
|
|
(package! org-yt
|
|
:recipe (:host github :repo "TobiasZawada/org-yt")
|
|
:pin "56166f48e04d83668f70ed84706b7a4d8b1e5438")
|
|
(package! ox-clip :pin "ff117cf3c619eef12eccc0ccbfa3f11adb73ea68")
|
|
(package! toc-org :pin "6d3ae0fc47ce79b1ea06cabe21a3c596395409cd")
|
|
(package! org-cliplink :pin "13e0940b65d22bec34e2de4bc8cba1412a7abfbc")
|
|
|
|
;; TODO Adjust when this is added to GNU ELPA
|
|
(when (modulep! +contacts)
|
|
(package! org-contacts
|
|
:pin "7f03eafaad2e5746949c0bebb98353e939c51ade"
|
|
:recipe (:host nil
|
|
:type git
|
|
:repo "https://repo.or.cz/org-contacts.git")))
|
|
|
|
(when (and (featurep :system 'macos)
|
|
(modulep! :os macos))
|
|
(package! org-mac-link :pin "e30171a6e98db90787ab8a23b3a7dc4fd13b10f9"))
|
|
|
|
(when (modulep! +passwords)
|
|
(package! org-passwords
|
|
:pin "61584aa701defcc0c435d3e7552916235cb655a6"
|
|
:recipe (:host github
|
|
:repo "alfaromurillo/org-passwords.el")))
|
|
|
|
(when (modulep! :editor evil +everywhere)
|
|
(package! evil-org
|
|
:recipe (:host github :repo "hlissner/evil-org-mode")
|
|
:pin "a9706da260c45b98601bcd72b1d2c0a24a017700"))
|
|
(when (modulep! :tools pdf)
|
|
(package! org-pdftools :pin "4e420233a153a9c4ab3d1a7e1d7d3211c836f0ac"))
|
|
(when (modulep! :tools magit)
|
|
(package! orgit :pin "b60efabc4a1b15d7eacaabc5bdfe6f3c20fee161")
|
|
(when (modulep! :tools magit +forge)
|
|
(package! orgit-forge :pin "f595a30aa75af55522b1203cd29198fb9aa3a0a5")))
|
|
(when (modulep! +brain)
|
|
(package! org-brain :pin "2bad7732aae1a3051e2a14de2e30f970bbe43c25"))
|
|
(when (modulep! +dragndrop)
|
|
(package! org-download :pin "19e166f0a8c539b4144cfbc614309d47a9b2a9b7"))
|
|
(when (modulep! +gnuplot)
|
|
(package! gnuplot :pin "7138b139d2dca9683f1a81325c643b2744aa1ea3")
|
|
(package! gnuplot-mode :pin "601f6392986f0cba332c87678d31ae0d0a496ce7"))
|
|
(when (modulep! +ipython) ; DEPRECATED
|
|
(package! ob-ipython :pin "7147455230841744fb5b95dcbe03320313a77124"))
|
|
(when (modulep! +jupyter)
|
|
(package! jupyter :pin "0a92c0c978ab12bd31a50a7e8b1295f5d1767e20"))
|
|
(when (modulep! +journal)
|
|
(package! org-journal :pin "a306f76ee2b0292946a20530bd9114aefc85a263"))
|
|
(when (modulep! +noter)
|
|
(package! org-noter :pin "a4296d8338d46b5c863d3d339b50e201172f218c"))
|
|
(when (modulep! +pomodoro)
|
|
(package! org-pomodoro :pin "3f5bcfb80d61556d35fc29e5ddb09750df962cc6"))
|
|
(when (modulep! +pretty)
|
|
(package! org-appear :pin "81eba5d7a5b74cdb1bad091d85667e836f16b997")
|
|
(package! org-superstar :pin "54c81c27dde2a6dc461bb064e79a8b2089093a2e")
|
|
(package! org-fancy-priorities :pin "7f677c6c14ecf05eab8e0efbfe7f1b00ae68eb1d"))
|
|
(when (modulep! +present)
|
|
(package! centered-window
|
|
:recipe (:host github :repo "anler/centered-window-mode")
|
|
:pin "80965f6c6afe8d918481433984b493de72af5399")
|
|
(package! org-tree-slide :pin "e2599a106a26ce5511095e23df4ea04be6687a8a")
|
|
(package! org-re-reveal :pin "e7895dae9807df38b6e17b6c24e1e824caad6c46")
|
|
(package! revealjs
|
|
:recipe (:host github :repo "hakimel/reveal.js"
|
|
:files ("css" "dist" "js" "plugin"))
|
|
:pin "d5896c968b2406126ca0beafecdffe219230b6b4"))
|
|
(cond
|
|
((modulep! +roam)
|
|
(package! org-roam
|
|
:recipe (:host github :repo "org-roam/org-roam-v1")
|
|
:pin "946a879a4a18756a0508afba1e0b0fe070c6a8b4"))
|
|
((modulep! +roam2)
|
|
(package! org-roam
|
|
;; FIXME A :recipe isn't strictly necessary, but without it, our package
|
|
;; bumper fails to distinguish between org-roam v1 and v2.
|
|
:recipe (:host github :repo "org-roam/org-roam")
|
|
:pin "5c06471c3a11348342719fd9011486455adeb701")))
|
|
|
|
;;; Babel
|
|
(package! ob-async :pin "9aac486073f5c356ada20e716571be33a350a982")
|
|
(when (modulep! :lang clojure)
|
|
(package! ob-clojure-literate
|
|
:recipe (:type git
|
|
:host nil
|
|
:repo "https://repo.or.cz/ob-clojure-literate.el.git")
|
|
:pin "18c3ea15b872a43e67c899a9914182c35b00b7ee"))
|
|
(when (modulep! :lang crystal)
|
|
(package! ob-crystal :pin "d84c1adee4b269cdba06a97caedb8071561a09af"))
|
|
(when (modulep! :lang elixir)
|
|
(package! ob-elixir :pin "8990a8178b2f7bd93504a9ab136622aab6e82e32"))
|
|
(when (modulep! :lang fsharp)
|
|
(package! ob-fsharp
|
|
:recipe (:host github :repo "elken/ob-fsharp")
|
|
:pin "a5bb40915a8b78fb3c5fc4b44ad00393e07e46a4"))
|
|
(when (modulep! :lang go)
|
|
(package! ob-go :pin "2067ed55f4c1d33a43cb3f6948609d240a8915f5"))
|
|
(when (modulep! :lang graphql)
|
|
(package! ob-graphql :pin "7c35419f9eec5dc44967cbcfa13c7135b9a96bfc"))
|
|
(when (modulep! :lang hy)
|
|
(package! ob-hy :pin "a42ecaf440adc03e279afe43ee5ef6093ddd542a"))
|
|
(when (modulep! :lang nim)
|
|
(package! ob-nim :pin "6fd060a3ecd38be37e4ec2261cd65760a3c35a91"))
|
|
(when (modulep! :lang php)
|
|
(package! ob-php
|
|
:recipe (:type git
|
|
:host nil
|
|
:repo "https://repo.or.cz/ob-php.git")
|
|
:pin "6ebf7799e9ded1d5114094f46785960a50000614"))
|
|
(when (modulep! :lang racket)
|
|
(package! ob-racket
|
|
:recipe (:host github :repo "DEADB17/ob-racket")
|
|
:pin "d8fd51bddb019b0eb68755255f88fc800cfe03cb"))
|
|
(when (modulep! :lang rest)
|
|
(package! ob-restclient :pin "1a127eb0165f10bb9d33606aa8529051118805e7"))
|
|
(when (modulep! :lang scala)
|
|
(package! ob-ammonite :pin "39937dff395e70aff76a4224fa49cf2ec6c57cca"))
|
|
|
|
;;; Export
|
|
(when (modulep! +pandoc)
|
|
(package! ox-pandoc :pin "0f758517f512e375825679541b5d905be40342eb"))
|
|
(when (modulep! +hugo)
|
|
(package! ox-hugo
|
|
:recipe (:host github :repo "kaushalmodi/ox-hugo" :nonrecursive t)
|
|
:pin "cb1b6cfd7b080e889352150416c1725f11ba937a"))
|
|
(when (modulep! :lang rst)
|
|
(package! ox-rst :pin "99fa790da55b57a3f2e9aa187493ba434a64250e"))
|