π° Quick Start
Using Eask as your Emacs package management tool.
The installation is cross-platform and uses npm. For instructions on how to install Eask using other methods, see the install section.
It is required to have Git installed to run this tutorial.
Please check out their official site
here
and install NodeJS
and npm
corresponds to your current operating system
$ npm install -g @emacs-eask/cli
To verify your new installation:
$ eask --version
If you already have an existing elisp project, navigate to the project root folder.
$ cd /path/to/project/dir/
To create one:
$ eask create package <your-project>
It should create a folder named <your-project>
in your current working directory.
Skip this step if you chose to create the project with eask create
!
Otherwise, to create Eask-file in the existing project:
$ eask init
You will be asked some questions about the package you are going to create:
package name: (your-project)
version: (1.0.0)
description: Your project description!
entry point: (your-project.el)
emacs version: (26.1)
website: https://example.com/project-url/
keywords: tools example
About to write to /path/to/project/Eask:
(package "your-project"
"1.0.0"
"Your project description!")
(website-url "https://example.com/project-url/")
(keywords "tools" "example")
(package-file "your-project.el")
(script "test" "echo \"Error: no test specified\" && exit 1")
(source "gnu")
(depends-on "emacs" "26.1")
Is this OK? (yes) yes β
You should be able to see an Eask
file in your project folder. ππ
To check your package information, run:
$ eask info
You should be able to see the following information:
your-package (1.0.0) | deps: 0 | devDeps: 0
Your project description!
https://example.com/project-url/
keywords: tools, example
entry: your-package-file.el
kind: single
dist
.total-files: 0
.unpacked-size: 0
From the start, you would not have any dependencies
and devDependencies
(0
by default)!
You can manage package archives by using the source
directive in your Eask-file.
(source "gnu") ; default
(source "melpa") ; Add package archives
π‘ See DSL/source for more information!
You can add dependencies by using depends-on
directive in your Eask-file.
...
(depends-on "f")
(depends-on "ht")
π‘ Make sure the dependencies you add are available in the package archives!
Or else you would get an error `package-name-’ is unavailable!
Now we can install the dependencies we have specified in the Eask-file:
$ eask install-deps
You should see Eask executed correctly with the similar output below:
Loading package information... done β
Installing 2 package dependencies...
- [1/2] Installing f (20241003.1131)... done β
- [2/2] Installing ht (20230703.558)... done β
(Total of 2 dependencies installed, 0 skipped)