;;; init-straight.el -*- lexical-binding: t; -*- (defun syd-initialise-straight-options () (setq ;; Improves Straight's startup time. Instead of checking for modifications ;; on init, changes will only be detected when the file is saved from within ;; Emacs (with `save-buffer', specifically!). straight-check-for-modifications '(check-on-save find-when-checking))) ;; Bootstrap Straight.el (defun syd-initialise-straight () (defvar bootstrap-version) (syd-initialise-straight-options) (setq straight-base-dir (or (getenv "EMACS_STRAIGHT_BASE_DIR") (error "Cannot initialise straight: $EMACS_STRAIGHT_BASE_DIR is undefined!"))) (let ((bootstrap-file (file-name-concat straight-base-dir "straight/repos/straight.el/bootstrap.el")) (bootstrap-version 7)) (unless (file-exists-p bootstrap-file) (message "Could not find Straight's bootstrap file. Attempting to download it now.") (let* ((url "https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el") (url-buffer (url-retrieve-synchronously url 'silent 'inhibit-cookies))) (with-current-buffer url-buffer (goto-char (point-max)) (eval-print-last-sexp)))) (load bootstrap-file nil 'nomessage)) (setq straight-use-package-by-default t))