forked from FG42/FG42
Update the Changlog to include FBT changes
Signed-off-by: Sameer Rahmani <lxsameer@gnu.org>
This commit is contained in:
parent
e3c9dbf72c
commit
6872744dde
|
@ -10,6 +10,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
- New `extensions` implementation (`core/fg42/extensions.el`)
|
||||
- New approach to launching fg42
|
||||
- New `compiler` target to Makefile
|
||||
- New fbt package and moved `fbt` and `fg42-new` scripts to the `/bin` directory.
|
||||
- Created the `fpkg` module in `fbt` in order to separate the straight initialization from FG42 so we don't have to work with free dynamic var/functions.
|
||||
- Added `debug` support to `fbt` via `:d`
|
||||
- Added expr evaluation via `:e`
|
||||
- Added `system` support to `fbt`. We can build different systems with `fbt`. It's more like a generic build tool right now.
|
||||
- Added `fpkg` related fields to the system struct.
|
||||
- fpkg `init` command bootstraps straight.
|
||||
- Added `clean` command to fbt
|
||||
|
||||
### Changed
|
||||
- Changed the main package path to `/core`
|
||||
- Changed the extensions path to `/extensions`
|
||||
|
|
|
@ -23,95 +23,6 @@
|
|||
;;; Code:
|
||||
(require 'fg42/system/api)
|
||||
|
||||
(defvar bootstrap-version nil
|
||||
"`straight.el' bootstrap version. Set it in the `system' level, not here.")
|
||||
|
||||
(defvar straight-base-dir)
|
||||
(defvar straight-repository-branch)
|
||||
(defvar straight-cache-autoloads)
|
||||
(defvar straight-check-for-modifications)
|
||||
(defvar straight-enable-package-integration)
|
||||
(defvar straight-vc-git-default-clone-depth)
|
||||
(defvar autoload-compute-prefixes)
|
||||
(defvar straight-fix-org)
|
||||
(defvar straight-recipe-repositories)
|
||||
(defvar straight-recipe-overrides)
|
||||
|
||||
(defun fg42-fpkg/-set-straight-values (system)
|
||||
"Set the default values for some of `straight.el' vars for the SYSTEM."
|
||||
(setq straight-base-dir (fg42-system/fpkg-path system)
|
||||
straight-repository-branch "develop"
|
||||
;; Our autoload process is different.
|
||||
straight-cache-autoloads nil
|
||||
;; `straight.el' suppose to be a functional pkg manager but it actually
|
||||
;; allows user to edit libraries in place which we don't like it.
|
||||
;; We have our own mechanism to allow users extend FG42 so we don't
|
||||
;; want `straight.el' to handle it. Frankly it reduces the boot time
|
||||
;; by a lot.
|
||||
straight-check-for-modifications nil
|
||||
straight-enable-package-integration nil
|
||||
;; We don't want `straight.el' to deep clone the dependencies. Some packages
|
||||
;; might break this way according to `doom-emacs'
|
||||
straight-vc-git-default-clone-depth 1
|
||||
;; We have our own autoload system.
|
||||
autoload-compute-prefixes nil
|
||||
straight-fix-org nil))
|
||||
|
||||
|
||||
(defun fg42-fpkg/-install-core-dependencies (system)
|
||||
"Install the core dependencies of the given SYSTEM.
|
||||
Core dependencies are thoses packages that the system itself is depends on
|
||||
and not the extensions."
|
||||
(mapc #'straight-use-recipes (fg42-system/core-dependencies system)))
|
||||
|
||||
|
||||
(defun fg42-fpkg/initialize (system)
|
||||
"Initilize the package manager for the given SYSTEM.
|
||||
Basically fpkg will bootstrap and `straight.el' repositoryu for the given
|
||||
SYSTEM by fetching the required values from it. Including the path to the
|
||||
target directory."
|
||||
(unless (fboundp 'straight--reset-caches)
|
||||
(let ((bootstrap-file (concat (fg42-system/fpkg-path system)
|
||||
"straight/repos/straight.el/bootstrap.el"))
|
||||
(bootstrap-version (fg42-system/fpkg-backend-version system)))
|
||||
|
||||
(make-directory (fg42-system/fpkg-path system) t)
|
||||
(fg42-fpkg/-set-straight-values system)
|
||||
|
||||
(or (require 'straight nil t)
|
||||
(file-readable-p bootstrap-file)
|
||||
(with-current-buffer
|
||||
(url-retrieve-synchronously
|
||||
(format "https://raw.githubusercontent.com/raxod502/straight.el/%s/install.el"
|
||||
straight-repository-branch)
|
||||
'silent 'inhibit-cookies)
|
||||
(goto-char (point-max))
|
||||
(eval-print-last-sexp))
|
||||
(load bootstrap-file nil t)))
|
||||
(require 'straight))
|
||||
|
||||
(funcall #'straight--reset-caches)
|
||||
(fg42-fpkg/-install-core-dependencies system)
|
||||
|
||||
(setq straight-recipe-repositories nil
|
||||
straight-recipe-overrides nil)
|
||||
|
||||
;; Someday we might have to use our own fork of `straight.el'
|
||||
(straight-register-package
|
||||
`(straight :type git :host github
|
||||
:repo "raxod502/straight.el"
|
||||
:files ("straight*.el")
|
||||
:branch ,straight-repository-branch
|
||||
:no-byte-compile t))
|
||||
|
||||
(fg42-system/fpkg-initilized! system))
|
||||
|
||||
|
||||
(defun fg42-fpkg/initialize-once (system)
|
||||
"Initilize FPKG only once for the given SYSTEM."
|
||||
(when (not (fg42-system/fpkg-initilized-p system))
|
||||
(fg42-fpkg/initialize system)
|
||||
(straight-use-package 'use-package)))
|
||||
|
||||
|
||||
(provide 'fg42/fpkg/core)
|
||||
|
|
Loading…
Reference in New Issue