<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs/tests/test-early-init-paths.el, branch main</title>
<subtitle>My Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/dotemacs/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/'/>
<updated>2026-05-10T07:43:38+00:00</updated>
<entry>
<title>Add tests for early archive setup</title>
<updated>2026-05-10T07:43:38+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-10T07:43:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=c78574ab7a7bd0f9a6e4a61c6cdcd196257cff8e'/>
<id>urn:sha1:c78574ab7a7bd0f9a6e4a61c6cdcd196257cff8e</id>
<content type='text'>
Cover the startup archive paths and refresh behavior. This locks down the local-first archive setup, online archive opt-in, cache freshness checks, and priority ordering so package startup changes are easier to reason about later.
</content>
</entry>
<entry>
<title>fix: expand local ELPA mirror paths with expand-file-name</title>
<updated>2026-05-04T00:10:44+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-04T00:10:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=9acaf3899aedb69300a29a0d0c8b468e5f4ad729'/>
<id>urn:sha1:9acaf3899aedb69300a29a0d0c8b468e5f4ad729</id>
<content type='text'>
`(concat user-home-dir ".elpa-mirrors/")` was producing `/home/cjennings.elpa-mirrors/` because `getenv HOME` doesn't return a trailing slash on Linux. The local mirrors were silently dropping out of `package-archives` because `file-accessible-directory-p` couldn't find the bogus path.

I replaced the `concat` calls for `elpa-mirror-location` and `localrepo-location` with `expand-file-name`, which handles the slash for us. I also lifted the four per-archive subdirs into their own constants (`elpa-mirror-gnu-location`, `nongnu`, `melpa`, `stable-melpa`) so the archive registration block stops splicing `concat` strings inline.

I added `tests/test-early-init-paths.el`. It loads `early-init.el` against a temp HOME with the package side effects stubbed and asserts each constant and each `package-archives` entry resolves to the right path.
</content>
</entry>
</feed>
