[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Sub-libaries in a package and use-package ?
From: |
Philip Kaludercic |
Subject: |
Re: Sub-libaries in a package and use-package ? |
Date: |
Tue, 27 Jun 2023 19:01:18 +0000 |
David Masterson <dsmasterson@gmail.com> writes:
> Philip Kaludercic <philipk@posteo.net> writes:
>
>> David Masterson <dsmasterson@gmail.com> writes:
>>
>>> The 'async' package has 2 extra libraries (dired-async &
>>> smtpmail-async). I'm trying to figure out how to set these up with
>>> use-package, The documentation for use-package in chapter 3.1 says:
>>>
>>> ----
>>> But the ‘foo’ package might also contain a library named ‘foo-extra.el’.
>>> If that library is not loaded automatically, you will need a separate
>>> ‘use-package’ declaration to make sure that it is.
>>> ----
>>>
>>> It doesn't say anything else about this (CMIIAW), but this suggests to
>>> me that the following should work:
>>>
>>> (use-package async
>>> :config (async-bytecomp-package-mode 1)
>>> )
>>> (use-package dired-async
>>> :config (dired-async-mode 1)
>>> )
>>> (use-package smtpmail-async
>>> :config (setq message-send-mail-function 'aync-smtpmail-send-it)
>>> )
>>>
>>> But the following error when I start Emacs:
>>>
>>> Error (use-package): Failed to install dired-async: Package
>>> ‘dired-async-’ is unavailable
>>> Error (use-package): Failed to install smtpmail-async: Package
>>> ‘smtpmail-async-’ is unavailable
>>
>> Did you set `use-package-always-ensure' to a non-nil value? It might be
>> that use-package is trying to install the package
>> {dired,stmpmail}-async, even though these are just libraries, part of
>> the async package.
>
> Hmm. I do have 'use-package-always-ensure' set to t, but it doesn't look
> like it's trying to install -- it just can't find the package. There
> should be a mechanism to tell use-package that this is a library in some
> other package,
It cannot install the packages, because they don't exist. Perhaps
adding a :ensure nil could help?
>> Also, I don't think it is necessary to configure all of these
>> separately, at least in your case.
>
> Possibly true. I can get around this by requiring the sub-libraries in
> the :config section of async. But that doesn't quite feel right,,, :(
I'd question why you need to require the libraries in the first place.