Summary Elpaca: Async Emacs Package Manager - YouTube (Youtube) www.youtube.com
837 words - YouTube video - View YouTube video
Speaker 0 Elpaca is an E list package manager which allows for asynchronously installing packages directly from their source repo. It requires Emacs max version 27 or higher and the Git version control system Adding the E list shown here to your in it file will install Elpaca As needed. Rather than remove my current installation, I'll use the Elpaca test macro to perform a clean install in a temporary test environment. First, the installer clones, builds and loads Elpaca. Once loaded, Elpaca pack initialize its menu functions.
Speaker 0 Which provide the metadata to install packages. The remainder of the ini file queues and begins installing packages. The log buffer shows each package name, status, and time stamped output. Because Elpaca does most of its work. Asynchronously.
Speaker 0 The main Emacs thread is not blocked. In addition to the log buffer, the A packet info command will show information about specific packages. The Elpaca pack info buffer displays a packages, menu sources, recipe, dependencies, and other information. Installation time typically depends on network speed and the number of packages installed. For example, This configuration contains just over a hundred packages and typically takes anywhere from 20 minutes to an o.
Speaker 0 It took less than a minute. Wow. Menu functions provide menu items, which declare the metadata necessary to install package. Is. Elpaca comes configured with menu functions for popular Ill list package archives such as Mel, non Alba, org and Or can trip.
Speaker 0 The Elpaca menu item command, offers a completing read interface to search for menu items. The Elpaca recipe command returns a recipe from a menu item. Another way to discover and operate on packages is through the Elpaca manager command. The Elpaca manager buffer displays a tab interface similar to the built in list packages command. The header line shows the current search query and result count.
Speaker 0 The search engine allows for custom search tags, which filter results. For example, the unique search tag removes duplicate menu items. The installed search tag would normally show installed packages. Prefix fixing it with an exclamation point negate the tag, showing packages which are not currently installed. The Elpaca Ui search command bound to s by default, reads a new search query.
Speaker 0 Calling it with a prefix argument will edit the current query. The search engine compares additional search terms against each table row. For example, to look for a new theme, add the term theme to the query. Adding a column filter indicated by the pipe symbol restricts search terms to specific columns at the table. The following query searches for packages which match theme in the name, dark in the description with updates from this year, The Elpaca manager Ui can install packages.
Speaker 0 Invoking the Elpaca Ui mark install command, bound to I by default, will mark the package point for installation. The same command can mark a region of packages. Elpaca Ui execute marks. Bound to x by default will execute the associated commands for all marked packages. The log buffer shows the progress of the current installation queue.
Speaker 0 D Elpaca try command. Offers a completing read interface for installing packages. Offers Elpaca a try reads a package recipe when called with a prefix argument. This is useful when a package has no menu item. I'll install a privately hosted package I wrote for the purpose of this demo.
Speaker 0 Provides a test command which prints an exciting message. Wow. Package The method shown so far will activate packages for the current Emacs session. Restarting Emacs will not load the packages. The declaring packages in your ini file via the Elpaca macro will load them when Ema Emacs starts.
Speaker 0 The Elpaca macro accepts an order as its first argument. The simplest type of order is a symbol referred to as an item. In this case, the first matching menu item provides the recipe. An order may also be a partial or full package recipe. Elpaca pack emerges partial recipes with the first matching menu items recipe.
Speaker 0 For example, adding the host and repo recipe keywords changes the repository Url. Evaluating a declaration cues the package for installation. A packet evaluates the body of the declaration after processing the package is queue. In the example shown here, the top level message for 2. Will print before the message for 1.
Speaker 0 To defer forms without installing a package, pass nil as the order to an out packet declaration, Now the messages will evaluate in declared order. The Elpaca fetch command bound to f in Elpaca Ui mode buffers. Downloads repository updates without merging them. The log shows a formatted summary of commits. Elpaca update Bound to you in Elpaca Ui mode buffers, fetch and merges updates, then rebuild the package.
Speaker 0 Also wow. Elpaca pack delete, bound to d in Elpaca Ui mode buffers, deletes a package from disc. To demonstrate I'll delete all the packages which were installed during this session. That covers the basics of using Elpaca. For more information, please consult the Elpaca manual and source repository.