mirror of
https://github.com/roswell/roswell.git
synced 2026-09-10 07:16:17 -04:00
stop hardcoading .... bit
This commit is contained in:
parent
6d522a1636
commit
6210dce735
|
|
@ -29,11 +29,12 @@ exec ros -Q -m roswell -L sbcl-bin -- $0 "$@"
|
|||
'(("install" . asdf-install)
|
||||
("use" . asdf-use)
|
||||
("list" . asdf-list)))
|
||||
(defvar *asdf-base-uri* "https://github.com/fare/asdf/archive/")
|
||||
|
||||
(defun asdf-install (&optional version &rest r)
|
||||
(declare (ignorable r))
|
||||
(setf version (or version (first (asdf-get-version))))
|
||||
(let ((url (format nil "https://github.com/fare/asdf/archive/~A.tar.gz" version))
|
||||
(let ((url (format nil "~A~A.tar.gz" *asdf-base-uri* version))
|
||||
(file (merge-pathnames (format nil "archives/asdf-~A.tar.gz" version) (homedir)))
|
||||
(src (merge-pathnames "src/" (homedir))))
|
||||
(unless (probe-file file)
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
(in-package :ros.install)
|
||||
|
||||
(defvar *ffcall-version* "1.10")
|
||||
|
||||
(defvar *ffcall-archive-uri* "http://www.haible.de/bruno/gnu/")
|
||||
(defun ffcall-setup (argv)
|
||||
(let* ((uri (format nil "http://www.haible.de/bruno/gnu/ffcall-~A.tar.gz" *ffcall-version*))
|
||||
(let* ((uri (format nil "~Affcall-~A.tar.gz" *ffcall-archive-uri* *ffcall-version*))
|
||||
(pos (position #\/ uri :from-end t))
|
||||
(path (merge-pathnames (format nil "archives/~A" (subseq uri (1+ pos))) (homedir)))
|
||||
(expand-dir (merge-pathnames (format nil "src/ffcall-~A/" *ffcall-version*) (homedir))))
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
;;(ironclad:byte-array-to-hex-string (ironclad:digest-file :sha1 path))
|
||||
(defvar *msys2-arch* #+x86-64 "x86_64" #-x86-64 "i686") ;; TBD ARM windows?
|
||||
(defvar *msys2-bits* #+x86-64 "64" #-x86-64 "32")
|
||||
|
||||
(defvar *msys2-base-uri* "http://kent.dl.sourceforge.net/project/")
|
||||
(defun msys2-setup (argv)
|
||||
(let ((path (merge-pathnames (format nil "archives/msys2-~A.tar.xz" *msys2-basever*) (homedir)))
|
||||
(msys (merge-pathnames (format nil "impls/~A/~A/msys~A/" (uname-m) (uname) *msys2-bits*) (homedir))))
|
||||
|
|
@ -20,7 +20,8 @@
|
|||
(when (or (not (probe-file path))
|
||||
(get-opt "download.force"))
|
||||
(download
|
||||
(format nil "http://kent.dl.sourceforge.net/project/msys2/Base/~A/msys2-base-~A-~A.tar.xz"
|
||||
(format nil "~Amsys2/Base/~A/msys2-base-~A-~A.tar.xz"
|
||||
*msys2-base-uri*
|
||||
*msys2-arch* *msys2-arch* *msys2-basever*) path))
|
||||
(format t " done.~%")
|
||||
(expand path
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
(in-package :ros.install)
|
||||
|
||||
(defvar *sigsegv-version* "2.10")
|
||||
(defvar *sigsegv-uri* "http://ftpmirror.gnu.org/libsigsegv/")
|
||||
|
||||
(defun sigsegv-setup (argv)
|
||||
(let* ((uri (format nil "http://ftpmirror.gnu.org/libsigsegv/libsigsegv-~A.tar.gz" *sigsegv-version*))
|
||||
(let* ((uri (format nil "~Alibsigsegv-~A.tar.gz" *sigsegv-uri* *sigsegv-version*))
|
||||
(pos (position #\/ uri :from-end t))
|
||||
(path (merge-pathnames (format nil "archives/~A" (subseq uri (1+ pos))) (homedir)))
|
||||
(expand-dir (merge-pathnames (format nil "src/libsigsegv-~A/" *sigsegv-version*) (homedir))))
|
||||
|
|
|
|||
|
|
@ -2,10 +2,11 @@
|
|||
(in-package :ros.install)
|
||||
(ql:quickload '(:plump :simple-date-time :split-sequence :cl-ppcre) :silent t)
|
||||
|
||||
(defvar *abcl-base-uri* "https://common-lisp.net/project/armedbear/releases/")
|
||||
(defun abcl-bin-get-version ()
|
||||
(let ((file (merge-pathnames "tmp/abcl-bin.html" (homedir))))
|
||||
(format *error-output* "Checking version to install....~%")
|
||||
(download "https://common-lisp.net/project/armedbear/releases/" file)
|
||||
(download *abcl-base-uri* file)
|
||||
(loop for a in (plump:get-elements-by-tag-name
|
||||
(plump:parse file) "a")
|
||||
for x = (string-right-trim "/" (plump:get-attribute a "href"))
|
||||
|
|
@ -18,8 +19,6 @@
|
|||
(setf (getf argv :version) (first (abcl-bin-get-version)))))
|
||||
(cons t argv))
|
||||
|
||||
;;"https://common-lisp.net/project/armedbear/releases/1.3.3/abcl-bin-1.3.3.tar.gz"
|
||||
|
||||
(defun abcl-bin-impl ()
|
||||
(merge-pathnames (format nil "impls/~A/~A/abcl-bin/" (uname-m) (uname)) (homedir)))
|
||||
|
||||
|
|
@ -27,7 +26,7 @@
|
|||
(set-opt "as" (getf argv :version))
|
||||
(when (position "--without-install" (getf argv :argv) :test 'equal)
|
||||
(set-opt "without-install" t))
|
||||
(set-opt "download.uri" (format nil "~@{~A~}" "https://common-lisp.net/project/armedbear/releases/"
|
||||
(set-opt "download.uri" (format nil "~@{~A~}" *abcl-base-uri*
|
||||
(getf argv :version) "/abcl-bin-" (getf argv :version)".tar.gz"))
|
||||
(set-opt "download.archive" (let ((pos (position #\/ (get-opt "download.uri") :from-end t)))
|
||||
(when pos
|
||||
|
|
|
|||
|
|
@ -4,12 +4,13 @@
|
|||
#+win32
|
||||
(ql:quickload :zip :silent t)
|
||||
|
||||
(defvar *ccl-base-uri* "http://ccl.clozure.com/ftp/pub/release/")
|
||||
(defun ccl-bin-get-version ()
|
||||
(let ((file (merge-pathnames "tmp/ccl-bin.html" (homedir))))
|
||||
(format *error-output* "Checking version to install...~%")
|
||||
(unless (and (probe-file file)
|
||||
(< (get-universal-time) (+ (* 60 60) (file-write-date file))))
|
||||
(download "http://ccl.clozure.com/ftp/pub/release/" file))
|
||||
(download *ccl-base-uri* file))
|
||||
(loop for link in (plump:get-elements-by-tag-name (plump:parse file) "a")
|
||||
for href = (plump:get-attribute link "href")
|
||||
for len = (length href)
|
||||
|
|
@ -38,7 +39,7 @@
|
|||
(set-opt "as" (getf argv :version))
|
||||
(when (position "--without-install" (getf argv :argv) :test 'equal)
|
||||
(set-opt "without-install" t))
|
||||
(set-opt "download.uri" (format nil "~@{~A~}" "http://ccl.clozure.com/ftp/pub/release/"
|
||||
(set-opt "download.uri" (format nil "~@{~A~}" *ccl-base-uri*
|
||||
(getf argv :version) "/ccl-" (getf argv :version) "-" uname ccl-uname-m (if (equal uname "windows")
|
||||
".zip"".tar.gz")))
|
||||
(set-opt "download.archive" (let ((pos (position #\/ (get-opt "download.uri") :from-end t)))
|
||||
|
|
|
|||
|
|
@ -1,11 +1,14 @@
|
|||
(in-package :ros.install)
|
||||
|
||||
(defvar *clisp-base-uri* "http://ftp.gnu.org/pub/gnu/clisp/release/")
|
||||
(defvar *clisp-archive-uri* "http://sourceforge.net/projects/clisp/files/clisp/")
|
||||
|
||||
(defun clisp-get-version ()
|
||||
(let ((file (merge-pathnames "tmp/clisp.html" (homedir))))
|
||||
(format *error-output* "Checking version to install....~%")
|
||||
(unless (and (probe-file file)
|
||||
(< (get-universal-time) (+ (* 60 60) (file-write-date file))))
|
||||
(download "http://ftp.gnu.org/pub/gnu/clisp/release/" file))
|
||||
(download *clisp-base-uri* file))
|
||||
(loop for link in (plump:get-elements-by-tag-name (plump:parse file) "a")
|
||||
for href = (plump:get-attribute link "href") for len = (1- (length href))
|
||||
when (and (eql (aref href len) #\/)
|
||||
|
|
@ -27,7 +30,7 @@
|
|||
(getf argv :version)
|
||||
(nth (1+ pos) (getf argv :argv))))
|
||||
(getf argv :version))))
|
||||
(set-opt "download.uri" (format nil "~@{~A~}" "http://sourceforge.net/projects/clisp/files/clisp/"
|
||||
(set-opt "download.uri" (format nil "~@{~A~}" *clisp-archive-uri*
|
||||
(getf argv :version) "/clisp-" (getf argv :version) ".tar.bz2"))
|
||||
(set-opt "download.archive" (let ((pos (position #\/ (get-opt "download.uri") :from-end t)))
|
||||
(when pos
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
(defvar *ecl-options*
|
||||
'())
|
||||
|
||||
(defvar *ecl-archive-uri* "https://github.com/roswell/mirror-ecl/archive/")
|
||||
(defun ecl-get-version ()
|
||||
(format *error-output* "Checking version to install....~%")
|
||||
(github-version "roswell" "mirror-ecl"
|
||||
|
|
@ -39,7 +40,7 @@
|
|||
(set-opt "archive" "t"))
|
||||
(when (position "--without-install" (getf argv :argv) :test 'equal)
|
||||
(set-opt "without-install" t))
|
||||
(set-opt "download.uri" (format nil "https://github.com/roswell/mirror-ecl/archive/~A.tar.gz" (ecl-version-filename (getf argv :version))))
|
||||
(set-opt "download.uri" (format nil "~A.tar.gz" *ecl-archive-uri* (ecl-version-filename (getf argv :version))))
|
||||
(set-opt "download.archive" (let ((pos (position #\/ (get-opt "download.uri") :from-end t)))
|
||||
(when pos
|
||||
(merge-pathnames (format nil "archives/~A" (subseq (get-opt "download.uri") (1+ pos))) (homedir)))))
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
(in-package :ros.install)
|
||||
(defvar *quicklisp-base-uri* "http://beta.quicklisp.org/")
|
||||
|
||||
(defun quicklisp-help (argv)
|
||||
(format *error-output* "no options for quicklisp~%")
|
||||
|
|
@ -68,7 +69,7 @@
|
|||
release)))))))
|
||||
|
||||
(defun quicklisp-argv-parse (argv)
|
||||
(set-opt "download.uri" (format nil "~A~A" "http://beta.quicklisp.org/" "quicklisp.lisp"))
|
||||
(set-opt "download.uri" (format nil "~A~A" *quicklisp-base-uri* "quicklisp.lisp"))
|
||||
(set-opt "download.archive" (merge-pathnames (format nil "archives/~A" "quicklisp.lisp") (homedir)))
|
||||
(cons t argv))
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue