Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

el-get-remove wipes out entire el-get directory #944

Closed
zwass opened this issue Nov 4, 2012 · 8 comments
Closed

el-get-remove wipes out entire el-get directory #944

zwass opened this issue Nov 4, 2012 · 8 comments

Comments

@zwass
Copy link
Contributor

zwass commented Nov 4, 2012

Not yet sure how to repro this, but while spending a lot of time playing with creating a new setup using el-get, I've managed to wipe out the entire el-get directory when calling el-get-remove. This then causes the entire bootstrap process and re-downloading of all the packages on the next sync call.

Just now it occurred when I did M-x el-get-remove auctex.

Will update when I have more information.

@zwass
Copy link
Contributor Author

zwass commented Nov 4, 2012

It seems as though the status of all the packages change to "required", and then el-get wipes them out.

@Silex
Copy link
Contributor

Silex commented Nov 21, 2012

FWIW I once experienced the same... after I did install and remove some packages heavily, maybe because one of the install/remove process wasn't finished yet?

@dimitri
Copy link
Owner

dimitri commented Nov 21, 2012

I guess we would need some mode details to be able to fix it, and yes that behavior is a bug I want to fix.

@Silex
Copy link
Contributor

Silex commented Dec 1, 2012

I just reexperienced it! It completely removed my packages directory... I'll try to reproduce.

After an el-get-remove, el-get told me it couldn't write to the status.el file, and my packages directory was gone.

Here are the relevant parts of my config:

(if (eq system-type 'windows-nt)
    (defconst silex-emacs-directory "~/../My Documents/My Dropbox/emacs")
    (defconst silex-emacs-directory "~/Dropbox/emacs"))

;; el-get
(setq el-get-dir (concat silex-emacs-directory "/packages/"))
(add-to-list 'load-path (concat el-get-dir "/el-get"))
(require 'el-get)

(setq el-get-packages '(
  ;; lots of packages here
  ))

;; Fetch packages
(el-get 'sync el-get-packages)

@Silex
Copy link
Contributor

Silex commented Dec 1, 2012

Ok, I think I found how... just do M-x el-get-remove and don't enter any package... just press enter. Everything is gone.

I guess that is the root of the problem... then there's probably some other problem/PEBKAC, when sometimes you do type a package name but somehow "" is still sent to el-get-remove. But this is a minor inconvenience if el-get-remove "" wouldn't remove all the packages :-/

Can you make it so submitting an empty string is an error instead of the current behavior?

@DarwinAwardWinner
Copy link
Collaborator

We should change el-get-rmdir to throw an error if pdir is not a
subdirectory of el-get-package-directory. Then hopefully we will
catch this.

@dimitri
Copy link
Owner

dimitri commented Dec 3, 2012

I think I got it. Thanks for the report and the suggestion.

@dimitri dimitri closed this as completed Dec 3, 2012
@Silex
Copy link
Contributor

Silex commented Dec 4, 2012

@dimitri: I now have this problem:

error: el-get-rmdir: directory '/home/silex/Dropbox/emacs/packages/google-maps' of package 'google-maps' 
is not inside 'el-get-dir' ('/home/silex/Dropbox/emacs/packages/').`

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants