mmk2410.org/.build/ox-hugo-build.el
Marcel Kapfer fe0029437c
Enable GitLab CI Pipelines
This includes not only the mandatory .gitlab-ci.yml file containing
the pipeline configuration but also an Emacs Lisp file for exporting
the blog post and pages from the content-org files to markdown using
Emacs and ox-hugo.

It was also necessary to remove thr orgit links from the "My Emacs
Package of the week: orgit" post since these required that the linked
repository is at the given path which is not possible in the CI build.
Well, it is /possible/ but there is no good way to do it.

Additional the .gitmodules file was updated to use a relative local
path instead of and SSH URL since GitLab can obviously not clone form
an SSH URL. This may make things more difficult for local setups but I
think I can live with the one additional clone command.
2022-02-03 19:51:09 +01:00

36 lines
1 KiB
EmacsLisp

;; Package configuration
(package-initialize)
(add-to-list 'package-archives '("nongnu" . "https://elpa.nongnu.org/nongnu/") t)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(setq-default load-prefer-newer t)
(setq-default package-enable-at-startup nil)
(package-refresh-contents)
(package-install 'use-package)
(setq package-user-dir (expand-file-name "./.packages"))
(add-to-list 'load-path package-user-dir)
(require 'use-package)
(setq use-package-always-ensure t)
;; Install and configure necessary packages
(use-package org
:pin gnu
:config
(setq org-todo-keywords '((sequence
"TODO(t!)" "NEXT(n!)" "STARTED(a!)" "WAIT(w@/!)" "SOMEDAY(s)"
"|" "DONE(d!)" "CANCELLED(c@/!)"))))
(use-package ox-hugo
:after org)
;; Export blog posts
(defun mmk2410/export (file)
(save-excursion
(find-file file)
(org-hugo-export-wim-to-md t)))
(mapcar (lambda (file) (mmk2410/export file))
(directory-files (expand-file-name "./content-org/") t "\\.org$"))