Skip to content
Browse files

Files for puppet configuration

  • Loading branch information...
1 parent 272f91d commit d38714b2aa5c2e48ed5303f952ca2f68b87997b2 @finitud committed Nov 24, 2012
Showing with 93 additions and 1 deletion.
  1. +1 −0 .gitignore
  2. +6 −0 README.md
  3. +7 −1 Vagrantfile
  4. +74 −0 private/puppet/manifests/base.pp
  5. +5 −0 private/puppet/modules/quicklisp/files/sbcl-ql-install.lisp
View
1 .gitignore
@@ -1,3 +1,4 @@
# Ignore backups
*~
\#*\#
+.vagrant
View
6 README.md
@@ -21,3 +21,9 @@ The contents of the current directory can be accessed from the virtual machine a
so you can clone the repository to a new folder and copy your projects there (cleaner) or
just throw the files into your project's main directory (less clean).
+Issues
+======
+* Need to add slime loading to .emacs after installing Quicklisp
+* Fix Quicklisp installation -> needs a bash script running on ~vagrant directory
+
+
View
8 Vagrantfile
@@ -5,5 +5,11 @@ Vagrant::Config.run do |config|
config.vm.box = "precise32"
config.vm.box_url = "http://files.vagrantup.com/precise32.box"
config.vm.forward_port 80, 8000
- config.vm.provision :shell, :path => "common_lisp.sh"
+# config.vm.provision :shell, :path => "common_lisp.sh"
+
+ config.vm.provision :puppet, :module_path => "private/puppet/modules" do |puppet|
+ puppet.manifests_path = "private/puppet/manifests"
+ puppet.manifest_file = "base.pp"
+ end
+
end
View
74 private/puppet/manifests/base.pp
@@ -0,0 +1,74 @@
+exec { 'initial update':
+ command => '/usr/bin/apt-get update',
+}
+
+package { 'curl':
+ ensure => present,
+ require => Exec['initial update'],
+}
+
+package { 'python-software-properties':
+ ensure => present,
+ require => Package['curl'],
+}
+
+exec { 'add emacs repository':
+ command => '/usr/bin/add-apt-repository ppa:cassou/emacs -y',
+ require => Package['python-software-properties'],
+}
+
+exec { 'second update':
+ command => '/usr/bin/apt-get update',
+ require => Exec['add emacs repository'],
+}
+
+package { 'emacs24':
+ ensure => present,
+ require => Exec['second update'],
+}
+
+package { 'emacs24-el':
+ ensure => present,
+ require => Exec['second update'],
+}
+
+package { 'emacs24-common-non-dfsg':
+ ensure => present,
+ require => Exec['second update'],
+}
+
+package { 'git-core':
+ ensure => present,
+ require => Exec['second update'],
+}
+
+package { 'sbcl':
+ ensure => present,
+ require => Package['git-core'],
+}
+
+package { 'sbcl-doc':
+ ensure => present,
+ require => Package['git-core'],
+}
+
+package { 'sbcl-source':
+ ensure => present,
+ require => Package['git-core'],
+}
+
+exec { 'download quicklisp':
+ command => '/usr/bin/curl http://beta.quicklisp.org/quicklisp.lisp -o /tmp/quicklisp.lisp',
+ require => Package['curl'],
+}
+
+file { 'sbcl-ql-install.lisp':
+ path => '/tmp/sbcl-ql-install.lisp',
+ ensure => present,
+ source => 'puppet:///modules/quicklisp/sbcl-ql-install.lisp',
+}
+
+exec { 'install quicklisp':
+ command => '/usr/bin/sbcl --load /tmp/sbcl-ql-install.lisp',
+ require => File['sbcl-ql-install.lisp'],
+}
View
5 private/puppet/modules/quicklisp/files/sbcl-ql-install.lisp
@@ -0,0 +1,5 @@
+(load "/tmp/quicklisp.lisp")
+(ql-util:without-prompting
+ (quicklisp-quickstart:install)
+ (ql:add-to-init-file)
+ (ql:quickload "quicklisp-slime-helper"))

0 comments on commit d38714b

Please sign in to comment.
Something went wrong with that request. Please try again.