[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: package-autoremove (was: Package installation messages)

From: Kaushal
Subject: Re: package-autoremove (was: Package installation messages)
Date: Thu, 21 May 2015 17:01:23 +0000

I edited package.el as per the diff of that commit and eval'd the changed function.

I can still recreate the problem. Here's what I did:
1. Uninstall git-timemachine using package manager.
2. See that the custom.el is updated (git-timemachine getting removed from package-selected-packages)
3. Re-install git-timemachine
4. Now the package-selected-packages var gets updated but does not get written to custom.el automatically.

I believe this issue has been here for a while but I didn't get to chasing it; doesn't have to do with async install feature revert. It's just that now it matters more since we have the package-autoremove function.

On Thu, May 21, 2015 at 12:11 PM Artur Malabarba <address@hidden> wrote:
Then it sounds like we have a bug. I think I introduced it when
reverting the async stuff.
I just pushed a fix, could you try again with the latest master?

2015-05-21 16:06 GMT+01:00 Kaushal <address@hidden>:
> About 2) the use-package forms happen after I load custom-file.
> I just manually deleted those 3 packages and reinstalled them from the
> package manager and then M-x package-autoremove displayed "Nothing to
> autoremove". But I noticed that that process did not update the
> package-selected-packages to the custom.el. I had to manually eval
> (package--save-selected-packages (package--find-non-dependencies))
> in order to update the custom.el
> Before that, of course, after each emacs restart, package.el was trying to
> autoremove those 3 packages.
> On Thu, May 21, 2015 at 10:58 AM Artur Malabarba <address@hidden>
> wrote:
>> 2015-05-21 15:35 GMT+01:00 Kaushal <address@hidden>:
>> > I just updated to the latest commit on emacs master and tried out
>> > package-autoremove.
>> >
>> > That suggested removing 3 packages (symon, minibuffer-line,
>> > git-timemachine), out of which I actually use 2: minibuffer-line,
>> > git-timemachine.
>> >
>> > For example, I have this in my init:
>> >
>> > ;; Display date+time in the minibuffer instead of in the mode-line
>> > (use-package minibuffer-line
>> There are two possibilities for why this happened.
>> 1. The first time you start Emacs after the commit that introduced
>> selected-packages, package.el will try to guess which of your packages
>> were explicitly installed by you, and which were pulled in as deps.
>> It's impossible to know for sure, so this guessing is bound to go
>> wrong on some instances.
>> 2. The list of selected packages is stored with your
>> custom-set-variables. So, if your `use-package' form comes before your
>> `custom-set-variables', then that might cause it to not get stored
>> correctly.
>> I'm not sure if there's a global fix we can do for case 2. Either way,
>> you (the user) can manually fix that by simply trying to install the
>> package you already have (`minibuffer-line', in this case). You can do
>> that from the package menu or with `M-x package-install'. You'll get a
>> message that "package already installed", and then package.el will
>> store this package in your list of `selected-packages'.
>> Another way to fix that is to `M-x customize-variable RET
>> package-selected-packages' and manually add `minibuffer-line' to it.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]