Coder Social home page Coder Social logo

gnu-octave.github.io's Introduction

GNU Octave Website development

This is the https://octave.org website development repository.

The development and deployment workflow in short:

  1. The website development repository is located at:

  2. Static HTML pages are generated from these repositories and deployed at

  3. For testing changes, updates to GitHub Pages happen automatically by pushing to the respective repository.

  4. The deployment on Digital Ocean https://octave.org has to be done manually.

    1. Login to the Digital Ocean server with root permissions.
    2. cd /var/www/www.octave.org/
      rvm use 3.3.1
      git pull
      bundle install
      bundle exec jekyll build
      chown -R root:www-data *
      chown -R root:www-data .*
      
    3. Changes are now live on https://octave.org. The static website is build to the /var/www/www.octave.org/_site directory and served from there to https://octave.org.

Simple website changes / contributions

Anyone is free to clone this website development repository, simply type

git clone https://github.com/gnu-octave/gnu-octave.github.io.git

to get anonymous read access without writing privileges.

If you want submit changes/additions, please create a pull request on GitHub or contact the Octave developers at https://octave.discourse.group/.

Note: Changes made to the GitHub page repository are only visible there. To change https://octave.org, the updates must be deployed manually on Digital Ocean.

Add a new RSS post

Duplicate another post in the subdirectory _posts and adjust the filename, especially the date.

Be sure to choose the correct categories!!

categories: news release is reserved for release announcements, those posts are also displayed inside the Octave GUI. Consider choosing another category like categories: news or alike for less important news.

Advanced development

Building requisites

To build the static website offline, you need to install Bundler. For Debian/Ubuntu please perform the following setup fist. For other Linux distributions this command might change.

sudo apt-get install bundler

From now on, everything is handled by Bundler. Install all required dependencies for the static Octave website by running

bundle install

from within the checked-out website development repository.

For the responsive webpages, we internally use the Foundation 6 framework. All necessary files are already included inside this website development repository.

Building the static website offline

All relevant information for Bundler to build the static website are located in the files _config.yml, Gemfile, and Gemfile.lock. Typing

bundle exec jekyll build

from the repository root directory will build a complete static website into the subdirectory _site using this information. This directory is ignored by Mercurial and will be created on first build.

Especially for development, it is beneficial to watch the changes locally before pushing any changes. Jekyll provides a local webserver by typing

bundle exec jekyll serve

and rebuilds the whole static website automatically, as it monitors any file changes.

License

Website Design and Code

  • Copyright (c) 2016-2023 The Octave Project Developers.
  • Copyright (c) 2015-2016 Alex Krolick.

See the file LICENSE in the top-level directory of this distribution or https://octave.org/copyright/.

The Octave website is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

The Octave website is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the Octave website; see the file COPYING. If not, see https://www.gnu.org/licenses/.

Website Content

The website content is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License.

gnu-octave.github.io's People

Contributors

alexkrolick avatar dependabot[bot] avatar jordigh avatar jweaton avatar kimplul avatar mmuetzel avatar mtmiller avatar siko1056 avatar tiankaima avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

gnu-octave.github.io's Issues

Licensing

Hi,

I am a bit confused about the licensing of this repo as it's missing a LICENSE file. On the bottom of the octave.org page it says:

This work is licensed under a Creative Commons Attribution-NoDerivatives 4.0 International License

What does that license apply to exactly? The resulting webpage with its design, text, images/graphics or also this repo with its workflow?

Would it be allowed to build a static webpage with a different theme with the workflow from this repo?

Regards,
Darjan Krijan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.