Skip to content

Commit

Permalink
Merge pull request #4864 from Dobby233Liu/gh-pages-v240302
Browse files Browse the repository at this point in the history
gh-pages: Update for 2024.03.01
  • Loading branch information
joncampbell123 committed Mar 3, 2024
2 parents 1448b9a + 829cb6a commit 9b4fe1e
Show file tree
Hide file tree
Showing 142 changed files with 5,828 additions and 5,334 deletions.
7 changes: 7 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
wiki/*.html linguist-generated=true
wiki/*.css linguist-generated=true
wiki/index.html linguist-generated=false
wiki/guides.html linguist-generated=false
wiki/docinfo linguist-generated=false
doxygen linguist-generated=true
*-compat.html linguist-generated=true
104 changes: 104 additions & 0 deletions .pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
content:

- name: latest_version
label: Latest Version Data
path: _data/latest_version.yml
type: file
fields:
- name: version
label: Version
type: string
required: true
- name: git_tag
label: Git Tag
type: string
required: true

- name: windows_setup_file
label: Windows setup filename
type: string
- name: winXP_setup_file
label: Windows XP special setup filename
type: string
- name: win9x_file
label: Windows 9x/NT4 special build filename
type: string

- name: macos_intel_file
label: macOS Intel build filename
type: string
- name: macos_arm_file
label: macOS ARM build filename
type: string

- name: dos_hx_file
label: HX-DOS build filename
type: string

# Presently obsolete flavors
- name: macos_special_file
label: macOS High Sierra special build filename
type: string
- name: dos_loadlin_file
label: DOS LOADLIN build filename
type: string

- name: release_notes
label: Release Notes
path: _release_notes
type: collection
filename: "{primary}.md"
subfolders: false
fields:
- name: slug
label: Version
type: string
required: true
- name: version_secondary
label: Secondary Version
type: string
required: false
description: For specific versions that has both a 0.xx.x string and a YYYY.MM.x string.
- name: date
label: Date
type: date
required: true
options:
format: MMMM D, YYYY
- name: body
label: Body
description: Usually just the change log.
type: rich-text
required: true
view:
primary: slug
fields: [ slug, date ]
sort: [ date, slug ]
default:
sort: date
order: desc

- name: posts
label: Blog Posts
path: _posts
type: collection
subfolders: false
fields:
- name: title
label: Title
type: string
required: true
- name: date
label: Date
type: date
required: true
options:
time: true
- name: body
label: Body
type: rich-text
required: true

media:
input: images
output: "{{ '/images' | relative_url }}"
27 changes: 16 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,47 @@
## Setting up the dev environment (extremely brief version)

This is a [Jekyll](https://jekyllrb.com/) site. If you want to develop it, I recommend to install the site's dependencies with [Bundler](https://bundler.io) assuming that you have Ruby installed:
This is a [Jekyll](https://jekyllrb.com/) site. If you want to develop it, I recommend to install the site's dependencies with [Bundler](https://bundler.io), assuming that you have Ruby 3.1 installed:
```sh
$ bundle install
```

Then you can utilize the Jekyll CLI to preview your changes to the site locally and live:
```
```sh
$ bundle exec jekyll serve
```

## Updating the latest version
## Adding content that will be used by Jekyll

If you feel fancy you can use [Pages CMS](https://pagescms.org/) to deal with all this

### Updating the latest version

Before doing this, you probably want to make sure all files for the release are ready and uploaded to GitHub, to make users' life easier

1. Add a release notes page for the latest version - see [adding a release note page](#adding-a-release-note-page)
1. Add a release notes page for the latest version, see below
2. Open [`_data/latest_version.yml`](_data/latest_version.yml)
3. Edit the fields accordingly
4. You're basically done

## Adding a release note page
### Adding a release note page

1. Create a file in [`_release_notes/`](_release_notes/) by the name of `<release name>.md` and open it
2. Add a front matter like below to the start of the file, then append a new line after it
```markdown
---
date: "<insert release date of version>"
slug: "<insert version number>"
date: "<insert release date of version, in MMMM D, YYYY format>"
---
```
3. Extract the release notes from `CHANGELOG` or write your own, make sure it's in Markdown format, then append it to the file
4. Optionally, serve the site and tinker with the page until it looks OK
> The page will be located at `/release-<version name>.html`
5. You're basically done

### Writing a new page

Just do it as one would with a normal Jekyll site (see [this](https://jekyllrb.com/docs/pages/) for pages and [this](https://jekyllrb.com/docs/posts/) for posts), except if you're writing a blog post for some reason - don't set the layout if so. You can [use Jekyll Compose](https://github.com/jekyll/jekyll-compose#usage) for this if you'd like some shortcuts.

## Updating the wiki

> If you mean to contribute to the wiki, I'll direct you to [rderooy/dosbox-x-wiki](https://github.com/rderooy/dosbox-x-wiki) as that's where wiki updates are pulled from right now
Expand All @@ -46,8 +55,4 @@ $ git pull

$ cd path/to/dosbox-x-gh-pages
$ ./update-wiki ./wiki path/to/dosbox-x.wiki.git
```

## Writing a new page

Just do it as one would with a normal Jekyll site (see [this](https://jekyllrb.com/docs/pages/) for pages and [this](https://jekyllrb.com/docs/posts/) for posts), except if you're writing a blog post for some reason - don't set the layout if so. You can [use Jekyll Compose](https://github.com/jekyll/jekyll-compose#usage) for this if you'd like some shortcuts.
```
19 changes: 12 additions & 7 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,15 @@ source "https://rubygems.org"
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!

# gem "jekyll", "~> 4.2.2"
gem "github-pages", "~> 227", group: :jekyll_plugins
gem "github-pages", "~> 231", group: :jekyll_plugins
# github-pages v231 requires Ruby v3.0+ which doesn't come with webricks
# Jekyll v4.3+ hard requires webricks but apparently not Jekyll v3.9
# What a mess
gem "webrick", "~> 1.8"

# If you have any plugins, put them here!
group :jekyll_plugins do
#gem "jekyll-feed", "~> 0.12"
gem "jekyll-compose", "~> 0.12.0"
gem "jekyll-compose", "~> 0.12"
end

# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
Expand All @@ -30,6 +33,8 @@ gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin]
# do not have a Java counterpart.
gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby]

# Dependencies for docs
gem "asciidoctor", "~> 2.0"
gem "rouge", "~> 3.26"
# Dependencies for wiki
group :wiki do
gem "asciidoctor", "~> 2.0"
gem "rouge", "~> 3.30"
end
Loading

0 comments on commit 9b4fe1e

Please sign in to comment.