Commit graph

17 commits

Author SHA1 Message Date
Arne Brasseur aeaf83452d
Merge pull request #54 from league/nix-elisp-bundle
Support specifying a nix-generated elisp package bundle
2023-01-16 16:19:04 +01:00
Christopher League 9cfd833fef For nix-elisp-bundle, use expand-filename, not concat 2023-01-16 10:04:16 -05:00
Christopher League 4a156c5509 Support specifying a nix-generated elisp package bundle
The nix package manager supports a flexible way to bundle sets of
Emacs packages, including ahead-of-time native compilation.  This
change provides a simple mechanism for insinuating a nix elisp
dependency bundle using chemacs, so that different nix package sets
can be selected using `--with-profile`, along-side profiles using
other package managers or distributions like Spacemacs/Doom.
2023-01-04 23:08:30 -05:00
James Kruth deb61b6ee9 Set packge-user-dir in early-init.el
In Emacs 27 and later `package-initialize` is called automatically
after `early-init.el` but before `init.el`. This change allows that
call to actually work with the user's packages. I left the assignment
in the init code for Emacs versions less than 27 that don't support
`early-init.el`.
2023-01-04 00:48:38 -05:00
Sergio Gil e13383b487 Remove arguments from the variable variable after handling them
Fixes #49.
2022-11-16 16:03:27 +01:00
zardoz03 6379233624 define chemacs-profiles as the literal profiles.el alist 2022-07-12 01:51:03 +01:00
Arne Brasseur 96217e9742 Provide a better error when .emacs-profiles.el is invalid
Right now it seems like it fails to parse chemacs.el, which is incorrect.
2022-05-03 15:04:09 +02:00
Anton I. Sipos b77b475469 Allow specifying profile in CHEMACS_PROFILE environment variable. 2022-02-28 18:07:54 -08:00
Raimon Grau b2df8906f5 Fix for latest emacs master 2021-05-04 11:00:16 +01:00
Phil Brown f4178dfeea Improve support for configuring eln-cache
directory under native-comp. If the user configures a non-default
eln-cache directory (i.e. somewhere other than ~/.emacs.d/eln-cache),
their expectation is that all native compiled .eln outputs end up in the
new location, since that's what happens without chemacs.

Until this change, chemacs required seq.el which caused seq and its few
dependencies to be native-compiled to the default eln-cache directory
before the user's init files had a chance to set a custom eln-cache
location.

This change removes chemacs' depenency on seq.el, so no native
compilation is triggered when chemacs loads. Note that chemacs itself
isn't native-compiled either, because chemacs isn't loaded as an .elc
file (native-comp looks for .elc files to indicate it should start
the corresponding .el -> .eln native compilation job).

See also https://www.emacswiki.org/emacs/GccEmacs
2021-01-14 22:47:33 -08:00
Arne Brasseur e1ef9a2ade Create empty custom file if it does not yet exist 2021-01-04 09:27:52 +01:00
Tyler Ware c69d929538 Enable the loading a profile via CLI
Currently a profile must first be specified in `~/.emacs-profiles.el`
in order to be used. In most day-to-day usage this is adequate, but
on occasion it is nice to have a 'throw-away' profile. The rationale
for such a profile is trying someone else's config out for a day / hour
or some such, but it's not something you're committed to.

This change enables the following to work:
```bash
emacs --with-profile '((user-emacs-directory . "/tmp/throw-away-config"))'
```
2020-12-09 09:16:17 -07:00
Arne Brasseur e4f27b1156 Require missing seq library 2020-11-20 08:27:35 +01:00
Sebastian Miele db1f5392bc Restructure and fix some bugs
Restructure so that many things that previously got done at least
twice, now get done only once.

Fix #6, #7, #8, #10, #11.
2020-10-21 16:11:14 +02:00
Mika Dede 9314630ec4
allow profiles in $XDG_CONFIG_HOME/chemacs 2020-10-12 17:31:04 +02:00
Arne Brasseur 9a8d51657f Update installation instructions, stop auto-creating profiles file
Remove the installation scripts, people should just clone into .emacs.d.

Remove the auto-creation of ~/.emacs-profiles.el, since we no longer can assume
where the default config lives.
2020-10-05 09:03:56 +02:00
Arne Brasseur efdafa332f Use a chemacs-early-init var
This way people could still symlink .emacs -> chemacs.el, if they don't have a
need for early-init support.
2020-10-05 08:38:52 +02:00
Renamed from chemacs-common.el (Browse further)