Commit ed4779f6 authored by Dave Cooper's avatar Dave Cooper
Browse files

cleaned up published directories; added Solarized and color-theme

parent e2d18797
......@@ -58,7 +58,8 @@ temporary directory, returned by <tt>(glisp:temporary-folder)</tt>."
(pre-load-form (the load-core-gdl-form))
(post-load-form nil)
(post-load-form '(progn (setf (symbol-value (read-from-string
"asdf:*central-registry*")) nil)))
(init-file-names nil)
......@@ -122,7 +123,6 @@ temporary directory, returned by <tt>(glisp:temporary-folder)</tt>."
(setq glisp:*gdl-home* (glisp:current-directory))
(setq glisp:*genworks-source-home* (merge-pathnames "src/" glisp:*gdl-home*))
(setq ql:*quicklisp-home* (merge-pathnames "quicklisp/" glisp:*gdl-home*))
(asdf:initialize-output-translations)
(gdl:start-gdl :edition :trial)
(glisp:set-gs-path (merge-pathnames "gpl/gs/gs8.63/bin/gswin32c.exe" glisp:*gdl-home*))))
......@@ -146,12 +146,7 @@ temporary directory, returned by <tt>(glisp:temporary-folder)</tt>."
:destination-directory destination-directory
:modules (list #-64bit :agraph #-64bit :ide)
:restart-init-function '(lambda()
(setq glisp:*gdl-home* (glisp:current-directory))
(setq glisp:*genworks-source-home* (merge-pathnames "src/" glisp:*gdl-home*))
(setq ql:*quicklisp-home* (merge-pathnames "quicklisp/" glisp:*gdl-home*))
(asdf:initialize-output-translations)
(gdl:start-gdl :edition :trial)
(glisp:set-gs-path (merge-pathnames "gpl/gs/gs8.63/bin/gswin32c.exe" glisp:*gdl-home*))))
(gdl:start-gdl :edition :trial)))
destination-directory))
......
......@@ -79,71 +79,78 @@
:computed-slots ((source (first (the pair)))
(target (rest (the pair)))
(target-parent (merge-pathnames "../" (the target)))
(os (lastcar (butlast (pathname-directory (the target-parent))))))
(os (lastcar (butlast (pathname-directory (the target-parent)))))
(distributed? (probe-file (merge-pathnames "distributed.txt" (the source)))))
:functions
((make!
()
(when (and (probe-file (the target)) (the overwrite?))
(glisp:delete-directory-and-files (the target-parent) :quiet t))
(unless (probe-file (the target-parent))
(glisp:copy-directory (the source) (the target))
;;
;; Documentation:
;;
(ensure-directories-exist (merge-pathnames "documentation/" (the target-parent)))
(glisp:copy-file (merge-pathnames "documentation/gdl-documentation.pdf" glisp:*genworks-source-home*)
(merge-pathnames "documentation/gdl-documentation.pdf" (the target-parent)))
;;
;; GDL source code:
;;
(glisp:copy-directory glisp:*genworks-source-home*
(merge-pathnames "src/" (the target-parent)))
(glisp:delete-directory-and-files (merge-pathnames "src/.git/" (the target-parent)) :quiet t)
(delete-file (merge-pathnames "src/.gitignore" (the target-parent)))
;;
;; Quicklisp:
;;
#+nil
(glisp:copy-directory (merge-pathnames "../../common/quicklisp/" glisp:*genworks-source-home*)
(merge-pathnames "quicklisp/" (the target-parent)))
;;
;; eli:
;;
(ensure-directories-exist (merge-pathnames "emacs/" (the target-parent)))
(glisp:copy-directory (translate-logical-pathname "sys:eli;")
(merge-pathnames "emacs/eli/" (the target-parent)))
(glisp:copy-file (merge-pathnames "dist/emacs/gdl.el" glisp:*genworks-source-home*)
(merge-pathnames "emacs/gdl.el" (the target-parent)))
;;
;; Startup batch file or script:
;;
(if (string-equal (the os) "windows")
(glisp:copy-file (merge-pathnames "dist/run-gdl.bat" glisp:*genworks-source-home*)
(merge-pathnames "run-gdl.bat" (the target-parent)))
(glisp:copy-file (merge-pathnames "dist/run-gdl" glisp:*genworks-source-home*)
(merge-pathnames "run-gdl" (the target-parent))))
;;
;; smlib shared library
;;
(if (the distributed?)
(format t "~% ~a is Already Distributed (fill in time & date here from contents of distributed.txt)~%~%" (the source))
(progn
(when (and (probe-file (the target)) (the overwrite?))
(glisp:delete-directory-and-files (the target-parent) :quiet t))
(unless (probe-file (the target-parent))
(glisp:copy-directory (the source) (the target))
;;
;; Documentation:
;;
(ensure-directories-exist (merge-pathnames "documentation/" (the target-parent)))
(glisp:copy-file (merge-pathnames "documentation/gdl-documentation.pdf" glisp:*genworks-source-home*)
(merge-pathnames "documentation/gdl-documentation.pdf" (the target-parent)))
;;
;; GDL source code:
;;
(glisp:copy-directory glisp:*genworks-source-home*
(merge-pathnames "src/" (the target-parent)))
(glisp:delete-directory-and-files (merge-pathnames "src/.git/" (the target-parent)) :quiet t)
(delete-file (merge-pathnames "src/.gitignore" (the target-parent)))
;;
;; Quicklisp:
;;
#+nil
(glisp:copy-directory (merge-pathnames "../../common/quicklisp/" glisp:*genworks-source-home*)
(merge-pathnames "quicklisp/" (the target-parent)))
;;
;; eli:
;;
(ensure-directories-exist (merge-pathnames "emacs/" (the target-parent)))
(glisp:copy-directory (translate-logical-pathname "sys:eli;")
(merge-pathnames "emacs/eli/" (the target-parent)))
(glisp:copy-file (merge-pathnames "dist/emacs/gdl.el" glisp:*genworks-source-home*)
(merge-pathnames "emacs/gdl.el" (the target-parent)))
;;
;; Startup batch file or script:
;;
(if (string-equal (the os) "windows")
(glisp:copy-file (merge-pathnames "dist/run-gdl.bat" glisp:*genworks-source-home*)
(merge-pathnames "run-gdl.bat" (the target-parent)))
(glisp:copy-file (merge-pathnames "dist/run-gdl" glisp:*genworks-source-home*)
(merge-pathnames "run-gdl" (the target-parent))))
;;
;; smlib shared library
;;
(let ((smlib-version "8.51"))
(ensure-directories-exist (merge-pathnames (format nil "SMLib~a/" smlib-version) (the target-parent)))
(let ((smlib-name (if (find-package :smlib) (funcall (read-from-string "glisp:smlib-name"))
(error "smlib-name not known (smlib module probably not loaded)."))))
(glisp:copy-file (merge-pathnames (format nil "../../common/SMLib~a/~a" smlib-version smlib-name)
glisp:*genworks-source-home*)
(merge-pathnames (format nil "SMLib~a/~a" smlib-version smlib-name)
(the target-parent)))))
;;
;; gpl on windows
;;
#+nil
(when (string-equal (the os) "windows")
(glisp:copy-directory (merge-pathnames "../../common/gpl/" glisp:*genworks-source-home*)
(merge-pathnames "gpl/" (the target-parent))))))))
(let ((smlib-version "8.51"))
(ensure-directories-exist (merge-pathnames (format nil "SMLib~a/" smlib-version) (the target-parent)))
(let ((smlib-name (if (find-package :smlib) (funcall (read-from-string "glisp:smlib-name"))
(error "smlib-name not known (smlib module probably not loaded)."))))
(glisp:copy-file (merge-pathnames (format nil "../../common/SMLib~a/~a" smlib-version smlib-name)
glisp:*genworks-source-home*)
(merge-pathnames (format nil "SMLib~a/~a" smlib-version smlib-name)
(the target-parent)))))
;;
;; gpl on windows
;;
#+nil
(when (string-equal (the os) "windows")
(glisp:copy-directory (merge-pathnames "../../common/gpl/" glisp:*genworks-source-home*)
(merge-pathnames "gpl/" (the target-parent))))))))))
(defun distro (&rest args)
......
(:gdl-gwl-graphics :gdl-surf)
(:gdl-gwl-graphics)
(asdf:defsystem #:gdl-demos
:description
"Auto-generated asdf defsys from Genworks GDL cl-lite."
:author
"Genworks and Dave Cooper unless otherwise indicated"
:license
"AGPL unless otherwise indicated"
:serial
t
:version
"2012050600"
:depends-on
(:gdl-gwl-graphics :gdl-surf)
:components
((:file "robot/source/package") (:file "robot/source/assembly")
(:file "newsite/source/package") (:file "newsite/source/locales")
(:file "newsite/source/Services")
(:file "newsite/source/assembly")
(:file "newsite/source/configurator-engine")
(:file "newsite/source/configurator")
(:file "newsite/source/contact-us") (:file "newsite/source/demos")
(:file "newsite/source/documentation")
(:file "newsite/source/explanations")
(:file "newsite/source/index") (:file "newsite/source/language")
(:file "newsite/source/licensing") (:file "newsite/source/mixins")
(:file "newsite/source/news") (:file "newsite/source/people")
(:file "newsite/source/product-descriptions")
(:file "newsite/source/product-licensing")
(:file "newsite/source/products") (:file "newsite/source/publish")
(:file "newsite/source/survey")
(:file "twenty-four/source/infpre")
(:file "twenty-four/source/assembly")
(:file "twenty-four/source/cards-by-number")
(:file "twenty-four/source/find") (:file "bus/source/package")
(:file "bus/source/assembly") (:file "bus/source/body")
(:file "bus/source/chassis") (:file "bus/source/interior")
(:file "bus/source/rule-ackermann") (:file "bus/source/axle")
(:file "bus/source/fleet") (:file "bus/source/frame-rail")
(:file "bus/source/frame")
(:file "bus/source/html-writer-assembly")
(:file "bus/source/html-writer-body")
(:file "bus/source/html-writer-chassis")
(:file "bus/source/html-writer-interior")
(:file "bus/source/html-writer-rule-ackermann")
(:file "bus/source/inter-seat-clearance-check")
(:file "bus/source/inter-seat-spacing")
(:file "bus/source/knuckle") (:file "bus/source/parameters")
(:file "bus/source/publish") (:file "bus/source/rear-axle")
(:file "bus/source/seat") (:file "bus/source/seating-section")
(:file "bus/source/seating-side") (:file "bus/source/wheel")
(:file "glassbox/source/assembly")
(:file "glassbox/source/eco-tree") (:file "ledger/source/package")
(:file "ledger/source/assembly") (:file "ledger/source/html")
(:file "site/source/package") (:file "site/source/assembly")
(:file "site/source/contact") (:file "site/source/demos")
(:file "site/source/glossary") (:file "site/source/index")
(:file "site/source/landing") (:file "site/source/licensing")
(:file "site/source/maintenance") (:file "site/source/make")
(:file "site/source/mixins") (:file "site/source/new")
(:file "site/source/opportunities") (:file "site/source/options")
(:file "site/source/people") (:file "site/source/pricing")
(:file "site/source/products") (:file "site/source/publish")
(:file "site/source/security") (:file "wire-world/source/package")
(:file "wire-world/source/assembly")))
\ No newline at end of file
(asdf:defsystem #:gdl-demos :description
"Auto-generated asdf defsys from Genworks GDL cl-lite."
:author
"Genworks and Dave Cooper unless otherwise indicated"
:license "AGPL unless otherwise indicated" :serial t
:version "2012051300" :depends-on (:gdl-gwl-graphics)
:components
((:file "robot/source/package")
(:file "robot/source/assembly")
(:file "newsite/source/package")
(:file "newsite/source/locales")
(:file "newsite/source/Services")
(:file "newsite/source/assembly")
(:file "newsite/source/configurator-engine")
(:file "newsite/source/configurator")
(:file "newsite/source/contact-us")
(:file "newsite/source/demos")
(:file "newsite/source/documentation")
(:file "newsite/source/downloads")
(:file "newsite/source/explanations")
(:file "newsite/source/index")
(:file "newsite/source/language")
(:file "newsite/source/licensing")
(:file "newsite/source/mixins")
(:file "newsite/source/news")
(:file "newsite/source/people")
(:file "newsite/source/product-descriptions")
(:file "newsite/source/product-licensing")
(:file "newsite/source/products")
(:file "newsite/source/publish")
(:file "twenty-four/source/infpre")
(:file "twenty-four/source/assembly")
(:file "twenty-four/source/cards-by-number")
(:file "twenty-four/source/find")
(:file "bus/source/package")
(:file "bus/source/assembly")
(:file "bus/source/body")
(:file "bus/source/chassis")
(:file "bus/source/interior")
(:file "bus/source/rule-ackermann")
(:file "bus/source/axle") (:file "bus/source/fleet")
(:file "bus/source/frame-rail")
(:file "bus/source/frame")
(:file "bus/source/html-writer-assembly")
(:file "bus/source/html-writer-body")
(:file "bus/source/html-writer-chassis")
(:file "bus/source/html-writer-interior")
(:file "bus/source/html-writer-rule-ackermann")
(:file "bus/source/inter-seat-clearance-check")
(:file "bus/source/inter-seat-spacing")
(:file "bus/source/knuckle")
(:file "bus/source/parameters")
(:file "bus/source/publish")
(:file "bus/source/rear-axle")
(:file "bus/source/seat")
(:file "bus/source/seating-section")
(:file "bus/source/seating-side")
(:file "bus/source/wheel")
(:file "glassbox/source/assembly")
(:file "glassbox/source/eco-tree")
(:file "ledger/source/package")
(:file "ledger/source/assembly")
(:file "ledger/source/html")
(:file "site/source/package")
(:file "site/source/assembly")
(:file "site/source/contact")
(:file "site/source/demos")
(:file "site/source/glossary")
(:file "site/source/index")
(:file "site/source/landing")
(:file "site/source/licensing")
(:file "site/source/maintenance")
(:file "site/source/make")
(:file "site/source/mixins")
(:file "site/source/new")
(:file "site/source/opportunities")
(:file "site/source/options")
(:file "site/source/people")
(:file "site/source/pricing")
(:file "site/source/products")
(:file "site/source/publish")
(:file "site/source/security")
(:file "wire-world/source/package")
(:file "wire-world/source/assembly")))
\ No newline at end of file
......@@ -3,30 +3,29 @@
(net.aserve:shutdown)
(net.aserve:start :port 80 :listeners 50)
(publish-gwl-app "/" "genworks.com:assembly")
(publish-gwl-app "/newsite" "www.genworks.com:assembly")
(dolist (host (list "cl-foundation.com" "cl-foundation.org"
"www.cl-foundation.com" "www.cl-foundation.org"))
(net.aserve:publish-directory
:prefix "/aclu_files/"
:host host
:destination (format nil "~a" (probe-file "../static-old/aclu_files/")))
(net.aserve:publish-file :path "/"
:host host
:file (format nil "~a" (probe-file "../static-old/aclu.html"))))
"www.cl-foundation.com" "www.cl-foundation.org"))
(net.aserve:publish-directory
:prefix "/aclu_files/"
:host host
:destination (format nil "~a"
(merge-pathnames "static-old/aclu_files/"
glisp:*gdl-home*)))
(net.aserve:publish-file
:path "/"
:host host
:file (format nil "~a" (merge-pathnames "static-old/aclu.html"
glisp:*gdl-home*))))
(net.aserve:publish-directory :prefix "/downloads/"
:destination "../downloads/")
:destination (format nil "~a" (merge-pathnames "downloads/" glisp:*gdl-home*)))
(excl.osi:setgid 1002)
(excl.osi:setuid 1002)
......
(in-package :gdl-user)
(eval-when (:compile-toplevel :load-toplevel :execute)
(ql:quickload :gdl-build))
(define-object site-app (gdl-build:app)
:computed-slots
((application-name "gdl-demos")
(application-class :runtime)
(modules :smtp :ftp)
(post-load-form '(progn (ql:quickload :gdl-demos)
(ql:quickload :gdl-downloads)
(setf (symbol-value (read-from-string
"asdf:*central-registry*")) nil)
;;
;; FLAG -- clear other asdf and quicklisp parameters here
;;
))
(restart-init-function '(lambda()
(setq glisp:*gdl-home* (glisp:current-directory))
(gdl:start-gdl :edition :runtime)
(setf (symbol-value (read-from-string "www.genworks.com::*smtp-server*")) "localhost")
(glisp:set-gs-path)
(net.aserve:publish-directory :prefix "/static/"
:destination (format nil "~a" (merge-pathnames "static/" glisp:*gdl-home*)))
(net.aserve:publish-directory :prefix "/site-static/"
:destination (format nil "~a" (merge-pathnames "site-static/" glisp:*gdl-home*)))
(net.aserve:publish-directory :prefix "/newsite-static/"
:destination (format nil "~a" (merge-pathnames "newsite-static/" glisp:*gdl-home*)))
(dolist (init-file (list "gdlinit.cl" ".gdlinit.cl"))
(dolist (directory (list glisp:*gdl-home* (user-homedir-pathname)))
(when (probe-file (merge-pathnames init-file directory))
(load (merge-pathnames init-file directory)))))))
(demo-days nil)))
(defun site-app ()
(require :smtp)
(require :ftp)
(ql:quickload :gdl-demos)
(ql:quickload :gdl-downloads)
(let ((self (make-object 'site-app)))
(when (probe-file (the destination-directory))
(glisp:delete-directory-and-files (the destination-directory)))
(the make!)
(ensure-directories-exist (merge-pathnames "SMLib8.51/" (the destination-directory)))
(glisp:copy-file (merge-pathnames "SMLib8.51/smlib.so" glisp:*gdl-home*)
(merge-pathnames "SMLib8.51/smlib.so" (the destination-directory)))
(glisp:copy-file (merge-pathnames "demos/gdlinit.cl" glisp:*genworks-source-home*)
(merge-pathnames "gdlinit.cl" (the destination-directory)))
(glisp:copy-directory (merge-pathnames "gdl/gwl/static/" glisp:*genworks-source-home*)
(merge-pathnames "static/" (the destination-directory)))
(glisp:copy-directory (merge-pathnames "demos/site/static/" glisp:*genworks-source-home*)
(merge-pathnames "site-static/" (the destination-directory)))
(glisp:copy-directory (merge-pathnames "demos/newsite/static/" glisp:*genworks-source-home*)
(merge-pathnames "newsite-static/" (the destination-directory)))
(excl.osi:command-output (format nil "rsync -zav ~a dcooper8@genworks.com:~~/kitchen/~a/" (the destination-directory) (lastcar (pathname-directory (the destination-directory)))))
(excl.osi:command-output "ssh dcooper8@genworks.com killall -9 gdl-demos")))
......@@ -247,7 +247,7 @@
(money-saving-tip
(when (eql (the selected-cl-engine) :none)
(when (eql (the selected-cl-engine) :sbcl)
(with-cl-who-string ()
(str (locale-string :select))
" "
......
......@@ -4,195 +4,125 @@
:computed-slots
((inner-html (with-cl-who-string ()
(:h2 "Licensing Levels Explained")
"Genworks Gendl is so-called "
((:a :href "http://en.wikipedia.org/wiki/Multi-licensing")
"\"dual-licensed\"")
" software, available under an open-source license ("
((:a :href "http://www.gnu.org/licenses/agpl-3.0.txt") "AGPL")
") and alternatively under various proprietary
licenses (described below) some of which allow you
to distribute your application and derivative code
and keep it as closed-source, proprietary (Trade
Secret) software."
((:div :class "profile")
((:div :class :people)
(:h2 (str (locale-string :licensing-explained)))
(str (locale-string :genworks-gendl-is-so-called))
" "
((:a :href "http://en.wikipedia.org/wiki/Multi-licensing")
"\"" (str (locale-string :dual-licensed)) "\"")
" "
(str (locale-string :software-available-under-an-open-source-license))
" ("
((:a :href "http://www.gnu.org/licenses/agpl-3.0.txt") "AGPL")
") "
(str (locale-string :and-alternatively))))
((:a :name "agpl-license"))
((:a :href "#Top") (:h3 "Open Source"))
((:a :href "#Top") (:h3 (str (locale-string :open-source))))
((:div :class "profile")
((:div :class "people")
(:p "The Open Source (\"free software\") license allows
your application to enjoy complete freedom. This
license follows the philosophy of \"share and share
alike.\" By choosing this license (or by using Gendl
and distributing a compiled application without
making any choice of license), you agree to
distribute your application source code under the "
((:a :href "http://www.gnu.org/licenses/agpl-3.0.txt") "AGPL")
" or a compatible license.")
(:p "There are no restrictions against Commercial Use
with the Open Source license; the main requirement
is that you offer to share your application code at
no cost, just as the Gendl code has been shared with
you.")
(:p "Gendl application or utility code developed with an
Open Source-licensed installation must always remain
as Free Software; the Proprietary licenses in
general do not allow for code originally developed
on an Open Source seat to be converted into a
closed-source proprietary application after the
fact, using a proprietary Gendl license.")
(:p "There is an opportunity to overcome this limitation,
however: If you have Gendl application or utility
code which was developed using an Open Source
installation, and you wish to include or build upon
this code in a proprietary/closed-source application,
you may:")
(:ol
(:li "Contribute the code to the Gendl project
under our standard "
((:a :href "/newsite-static/documents/contributor.pdf")
"Contributor's Agreement")
", sharing with Genworks the copyright to any
original work. After suitable review, Genworks may
choose to include the code either in the mainline
Gendl codebase, or in a \"contrib\" directory;")
(:li "Purchase an appropriate proprietary Gendl license;")
(:li "Freely include the contributed code in your
distributed closed-source applications."))))
(:p (str (locale-string :open-source-allows-freedom))
" "
((:a :href "http://www.gnu.org/licenses/agpl-3.0.txt") "AGPL")
" "
(str (locale-string :or-a-compatible-license)))
(:p (str (locale-string :no-restrictions)))
(:p (str (locale-string :code-must-remain-free)))
(:p (str (locale-string :opportunity-to-overcome-limitation))
(:ol
(:li (str (locale-string :contribute-to-gendl))
((:a :href "/newsite-static/documents/contributor.pdf")
(str (locale-string :contributors-agreement)))
", "
(str (locale-string :sharing)) ";")
(:li (str (locale-string :purchase-appropriate-license)) ";")
(:li (str (locale-string :freely-include)))))))
((:a :name "trial-license"))
((:a :href "#Top")(:h3 "Evaluation"))
((:a :href "#Top")(:h3 (str (locale-string :evaluation))))
((:div :class "profile")
((:div :class "people")
"The "
((:a :href "/newsite-static/documents/eval.txt") "Evaluation license")
" provides a fully-functional,
time-limited Common Lisp engine configured to load
Gendl from its source code on startup. By using the
Evaluation license, you agree to both the \"share and
share alike\" terms of the "
(str (locale-string :the)) " "
((:a :href "/newsite-static/documents/eval.txt")
(str (locale-string :evaluation-license)))
" "
(str (locale-string :provides-fully-functional))
" "
((:a :href "http://www.gnu.org/licenses/agpl-3.0.txt")
"AGPL Open Source license")
", as well as the \"No Commercial Use\" and other terms of the"
((:a :href "/newsite-static/documents/eval.txt") "Evaluation license")
". The Evaluation license may be renewed a
reasonable number of times while a purchase or Open
Source decision is being made. After a successful
Trial period with the Evaluation license, a request
may be made to add the SMLib geometry kernel to an
extended Evaluation period."))
(str (locale-string :agpl-open-source-license)))
", "
(str (locale-string :as-well-as-the-no-commercial-and-other))
" "
((:a :href "/newsite-static/documents/eval.txt")
(str (locale-string :evaluation-license)))
". "
(str (locale-string :evaluation-may-be-renewed))))
((:a :name "student-license"))
((:a :href "#Top")(:h3 "Student"))
((:a :href "#Top")(:h3 (str (locale-string :student))))
((:div :class "profile")
((:div :class "people")
"The "
((:a :href "/newsite-static/documents/student.txt") "Student license")
" is valid for one year from
date of initiation (renewable each year at current
prices), and is intended for undergraduate
Students as a learning tool and to peform
coursework. Student-level licensing is not
authorized for use on University-sanctioned or
government/industry sponsored research
projects. The software package designed for the
Student level License provides a fully-functional
Common Lisp engine configured to load Gendl from
its source code on startup. By using the Student
license, you agree to both the \"share and share