Skip to content

Jekyll-based website for the MESA stellar evolution code

Notifications You must be signed in to change notification settings

fxt44/mesa-website

 
 

Repository files navigation

MESA Website

This is the raw version of the new (as of March 2014, revision 6188) website for the MESA stellar evolution code. One of the main goals is to help get new users started more quickly.

You can view the site here.

Contributing

Did you find an error? Do you see something that can be improved? Do you have other materials you’ve written yourself that you think could be incorporated? Send them to me.

Email Me

If you subscribe to the mesa-users mailing list, you should have no trouble finding my email address.

Contribute on GitHub

Clone this repo and send me a pull request.

Repository Layout

This site uses the jekyll static site generator. (The old site used webgen.)

??-<name>.markdown

These files are the main pages of the site. They are written in Markdown and then the HTML pages are generated from these files.

assets/

This directory contains images, movies, etc.

_config.yml

This file contains options to control the configuration of jekyll.

css/

This directory contains the CSS files. (They could use a good cleanup from someone who knows modern CSS.)

_includes/

This directory contains snippets like the site header (head.html), left side bar (leftside.html) and right news bar (news.html).

_layouts/

This directory has HTML templates that control the overall layout of the site.

_plugins/

This directory contains plug-ins (written in Ruby), which allow one to extend the functionality of jekyll.

_posts/

This directory contains a Markdown file for each of the MESA news posts that appear in the right hand sidebar.

_site/

This directory should not be under version control, but will be created once you run jekyll. It contains the static version of the website, which is what is copied to the sourceforge server.

Generating

If you’re making significant changes to the site, you probably want to see the effects of your changes as you go along. You can generate and view a version of the site on your own machine.

First, install a current version (1.9+) of ruby, using whichever tools are appropriate for your OS (e.g., port, brew, apt-get, pacman, etc.). This will come with rubygems (a ruby package manager).

Next, install the following three gems. (Rubygems will take care of installing their dependencies).

gem install jekyll
gem install therubyracer
gem install nokogiri

Next, clone this git repository.

git clone https://github.com/jschwab/mesa-website

Now, change to the mesa-website directory and tell jekyll to serve a local copy of the site for you.

jekyll serve --watch

Visit 0.0.0.0:4000 in your web browser to see the site. As you edit the files, the site will be regenerated to reflect the changes you’ve made. Read the jekyll documentation to learn more.

Once you’ve finished making your changes, commit them and then send me a pull request or email me a patch.

Publishing

Email me if you want to know about how the site is published to sourceforge.

Doing a MESA release

The following things need to be done when a new MESA release occurs.

Edit _config.yml

Update the version number to the current release.

Check the tutorial

Make a copy of the star/work directory and run the default inlists with the new MESA version. Check to make sure that the output roughly agrees with what is written in 03-staring.markdown. If not, update the tutorial to reduce possible confusion for new users.

Add a news post

Copy an existing release newspost (e.g., _posts/2014-06-08-r6596.markdown) and update the date and release number. Briefly summarize the release notes, mentioning any major changes or issues that require user intervention. Link to the mailing list post announcing the new release.

Update the defaults files

Copy the defaults files for the latest release.

cp $MESA_DIR/star/defaults/*.defaults _includes/

Upload a new zip file to sourceforge

Make a zip file of the latest release. Here’s an example script to do that.

do_one() {

    MESA_SVN=/home/jschwab/Software/mesa-svn
    MESA_FILENAME=mesa-r$1

    svn export -r $1 ${MESA_SVN} ${MESA_FILENAME}

    zip -r ${MESA_FILENAME}.zip ${MESA_FILENAME}
    rsync -e ssh ${MESA_FILENAME}.zip frs.sourceforge.net:/home/frs/project/mesa/releases

    rm ${MESA_FILENAME}.zip
    rm -rf ${MESA_FILENAME}

}

do_one 6596

If you need to adjust the modification date of the zipfile, here’s a sketch how to do so.

Get the modification date from the svn logs:

svn log -r 6596 ${MESA_SVN} | grep -oE "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2} -[0-9]{4}"

Get a shell on sourceforge:

ssh -t jschwab,[email protected] create

In the shell, touch the file with the date:

touch --date="2014-06-06 19:30:30 -0700" mesa-r6596.zip

About

Jekyll-based website for the MESA stellar evolution code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 81.4%
  • Ruby 18.6%