Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
el-get
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Benoit Bayol
el-get
Commits
a54ad73f
Commit
a54ad73f
authored
Oct 03, 2011
by
Kyle Hargraves
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add el-get-builtin method, so builtin packages can be "installed" simply
parent
3d2f4c5e
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
43 additions
and
22 deletions
+43
-22
el-get-methods.el
el-get-methods.el
+1
-0
el-get-recipes.el
el-get-recipes.el
+12
-5
el-get.el
el-get.el
+12
-17
el-get-builtin.el
methods/el-get-builtin.el
+18
-0
No files found.
el-get-methods.el
View file @
a54ad73f
...
...
@@ -23,6 +23,7 @@
(
file-name-directory
(
or
load-file-name
buffer-file-name
))))
(
require
'el-get-apt-get
)
(
require
'el-get-builtin
)
(
require
'el-get-bzr
)
(
require
'el-get-cvs
)
(
require
'el-get-darcs
)
...
...
el-get-recipes.el
View file @
a54ad73f
...
...
@@ -131,11 +131,18 @@ each directory listed in `el-get-recipe-path' in order."
(
t
source
))))
(
defun
el-get-package-method
(
package-or-source
)
"Return the :type property (called method) of PACKAGE-OR-SOURCE"
(
cond
((
or
(
symbolp
package-or-source
)
(
stringp
package-or-source
))
(
plist-get
(
el-get-package-def
package-or-source
)
:type
))
(
t
(
plist-get
package-or-source
:type
))))
"Return the :type property (called method) of PACKAGE-OR-SOURCE.
If the package is built in to the current major version of Emacs,
return 'builtin."
(
let*
((
def
(
if
(
or
(
symbolp
package-or-source
)
(
stringp
package-or-source
))
(
el-get-package-def
package-or-source
)
package-or-source
))
(
builtin
(
plist-get
def
:builtin
)))
(
if
(
and
builtin
(
>=
emacs-major-version
builtin
))
'builtin
(
plist-get
package-or-source
:type
))))
(
defalias
'el-get-package-type
#'
el-get-package-method
)
...
...
el-get.el
View file @
a54ad73f
...
...
@@ -494,27 +494,22 @@ PACKAGE may be either a string or the corresponding symbol."
(
source
(
el-get-package-def
package
))
(
method
(
el-get-package-method
source
))
(
install
(
el-get-method
method
:install
))
(
url
(
plist-get
source
:url
))
(
builtin
(
plist-get
source
:builtin
)))
(
url
(
plist-get
source
:url
)))
(
if
(
and
builtin
(
>=
emacs-major-version
builtin
)
)
(
message
"el-get-do-install: skipping builtin package \"%s\""
package
)
(
when
(
string=
"installed"
status
)
(
error
"Package %s is already installed."
package
)
)
;; really install package otherwise
(
when
(
string=
"installed"
status
)
(
error
"Package %s is already installed."
package
))
(
when
(
string=
"required"
status
)
(
message
"Package %s failed to install, removing it first."
package
)
(
el-get-remove
package
))
(
when
(
string=
"required"
status
)
(
message
"Package %s failed to install, removing it first."
package
)
(
el-get-remove
package
)
)
;; check we can install the package and save to "required" status
(
el-get-check-init
)
(
el-get-save-package-status
package
"required"
)
;; check we can install the package and save to "required" status
(
el-get-check-init
)
(
el-get-save-package-status
package
"required"
)
;; and install the package now, *then* message about it
(
funcall
install
package
url
'el-get-post-install
)
(
message
"el-get install %s"
package
)))))
;; and install the package now, *then* message about it
(
funcall
install
package
url
'el-get-post-install
)
(
message
"el-get install %s"
package
))))
(
defun
el-get-post-update
(
package
)
...
...
methods/el-get-builtin.el
0 → 100644
View file @
a54ad73f
(
require
'el-get-core
)
(
defcustom
el-get-builtin-install-hook
nil
"Hook run after 'installing' a builtin package."
:group
'el-get
:type
'hook
)
(
defun
el-get-builtin-install
(
package
url
post-install-fun
)
(
let
((
pdir
(
el-get-package-directory
package
)))
(
unless
(
file-directory-p
pdir
)
(
make-directory
pdir
))
(
funcall
post-install-fun
package
)))
(
el-get-register-method
:builtin
#'
el-get-builtin-install
#'
el-get-builtin-install
#'
el-get-rmdir
#'
el-get-builtin-install-hook
)
(
provide
'el-get-builtin
)
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment