9

I would like to install the projectile package manually since the repository is blocked by a firewall.

I have downloaded the file projectile.el from the [package homepage][1] put it together with helm-projectile and helm-projectile into the folder `~/.emacs.d/projectile/'.

(add-to-list 'load-path "~/.emacs.d/projectile")
(require 'projectile)

The first line alone works, but with the second one emacs reports an error:

Cannot open load file: no such file or directory, dash

My current host system is windows.


Edit: package-install-file works wonders :)

This is what I had to do to get projectile installed:

M-x package-install-file RET path/to/dash.el

M-x package-install-file RET path/to/projectile.el
--> pkg-info-0.4 is unavailable

M-x package-install-file RET path/to/pkg-info.el
--> pkg-epl-0.4 is unavailable

M-x package-install-file RET path/to/epl.el

M-x package-install-file RET path/to/pkg-info.el
    In pkg-info-package-version:
    pkg-info.el:222:55:Warning: `epl-find-installed-package' is an obsolete
        function (as of 0.7); use `epl-find-installed-packages' instead.

M-x package-install-file RET path/to/projectile.el

Done.

Links

https://github.com/bbatsov/projectile
https://github.com/lunaryorn/pkg-info.el
https://github.com/cask/epl
Beginner
  • 2,711
  • 3
  • 18
  • 25
  • 4
    Try installing the file with M-x package-install-file instead. That will sort out the directory and load path for you, as well as telling you about missing dependencies such as dash. – legoscia Feb 18 '15 at 14:07

1 Answers1

9

Since you're not using a package manager, you need to also manually install each package's dependencies. The error message tells you exactly which dependency you're missing.

You can see at the top of projectile.el:

(require 'thingatpt)
(require 'dash)
(require 'grep)           ; For `rgrep'
(require 'ibuffer)
(require 'ibuf-ext)

Some are included with Emacs. Some aren't. Here's dash.el.

To see if you already have the libraries installed, you can do: M-x find-library RET dash RET

nanny
  • 5,756
  • 1
  • 20
  • 38