[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Porting my conf to 28.0.60 (MS Windows + native-comp)
From: |
Corwin Brust |
Subject: |
Porting my conf to 28.0.60 (MS Windows + native-comp) |
Date: |
Sun, 17 Oct 2021 13:50:08 -0500 |
Greetings Emacs developers!
This morning I was able to get my configuration fairly portable between 26/2728.
I'm running Windows 10 and using msys32_64 to compile. I'd already
spent some time getting msys updated to include libgccjit and I'm not
going into that process here. Rather this is a quick note to share my
configuration with you, along with a couple of things I ran into and
haven't solved.
My configuration is on GitLab. I use a number of packages from MELPA,
and I have a personal configuration "management system", where I
create simple packages for groups of configuration based on
use/propose of each group. This let's me easily adjust which things
load when Emacs starts, and quickly bring in "hunks" of customized
functionality when I'm doing stuff outside my regular day-to-day Emacs
use. For more information on how I do this start at elisp/init.el
My conf repo:
https://gitlab.com/mplscorwin/dotfiles/
These two commits show the changes I made:
1. an early init to adjust `package-user-dir'
https://gitlab.com/mplscorwin/dotfiles/-/commit/666f4b130a9925be8c989e1e6695f2e03d169b96
2. the rest of my various changes:
https://gitlab.com/mplscorwin/dotfiles/-/commit/74f36d0e540188eb231dbce6b0ae003078067983
In the second link the principle changes are to init.el and
init-package-management.el - I'm afraid there are some unrelated
changes (theme changes, etc) mixed in. For the most part if I've
commented stuff out (in any of the elisp files) it is because I've not
yet gotten that working with 28/native-comp.
Finally, here's the command I'm using to complete Emacs:
#+BEGIN_SRC sh
git pull && make clean && ./autogen.sh && ./configure
--with-native-compilation && make -j 20
#+END_SRC
I play to play around with adding NATIVE_FULL_AOT=1 to the end of that
string but I'd like to solve the "too many pipes" issue first, given
that's solvable.
Aside the few (melpa) packages I'm having trouble with and commented
out (yaml-mode and forge), I also had to expressly add a line for
`fullframe', but I'm not sure why. (Maybe I should have had this all
along but I don't remember an error when installing everything on/from
an Emacs 26 on a GNU/linux system.)
I'm also having some trouble with magit. In fact, magit is completely
unusable but I've not started digging deeply as to /why/ that is.
Otherwise, my only concern has to do with "too many pipes" errors when
I remove my elpa folder and force Emacs to re-fetch all of my
"non-core" packages when it next starts-up. I would be grateful indeed
for any additional* workarounds the team could suggest for that issue.
* I have some workarounds already in place already but they haven't
quite solved the issue.
I found these starting from use-package issue #96 and have added links
in my conf code just above where I've attempted to use them.
https://github.com/jwiegley/emacs-async/issues/96
TIA for your thoughts and suggestions and (as always) for keeping the
best text editor in history moving forward.
Warm regards,
Corwin