From 0f07ad25603295b69ae828bb973915e1a33ac045 Mon Sep 17 00:00:00 2001 From: Vincent Lee Date: Tue, 2 Jan 2024 22:32:34 -0800 Subject: [PATCH] Switch back to CLI tools for building and burning (gui tools unreliable as always). Final tweaks. --- .github/workflows/build.yml | 16 ++++++-- Makefile | 5 ++- README.md | 30 ++++++--------- docs/developers.txt | 1 + tocfile | 77 +++++++++++++++++++++++++++++++++++++ 5 files changed, 106 insertions(+), 23 deletions(-) create mode 100644 tocfile diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2e397d3..d2bd902 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,14 +16,22 @@ jobs: cd Botania && (for b in `git branch -r | grep -v -- '1.20.x'`; do git branch --track ${b##origin/} $b; done) - name: Install dependencies run: | - sudo apt-get install -y make + sudo apt-get install -y make genisoimage - name: Build ISO run: | - make build + make BotaniaCD.iso + - name: Sign + env: + SIGNING_KEY: ${{ secrets.VIOLET_MOON_SIGNING_KEY }} + if: ${{ env.SIGNING_KEY != '' }} + run: | + echo "${SIGNING_KEY}" | gpg --import - + gpg --local-user "Violet Moon Signing Key" --armor \ + --detach-sign BotaniaCD.iso - name: Archive uses: actions/upload-artifact@v3 with: name: BotaniaCD path: | - audio - build + BotaniaCD.iso + BotaniaCD.iso.asc diff --git a/Makefile b/Makefile index bbe9ddc..630e219 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,10 @@ +BotaniaCD.iso: build + mkisofs -JRl -o $@ $< + .PHONY: clean clean: rm -rf build + rm -f BotaniaCD.iso cd Botania && git restore . && git clean -f build/docs: docs Botania/Xplat/src/main/resources Botania/contributors.properties Botania/web @@ -11,7 +15,6 @@ build/docs: docs Botania/Xplat/src/main/resources Botania/contributors.propertie cp Botania/web/changelog.md $@/changelog.md python3 Botania/web/_scripts/collate_data.py Botania/Xplat/src/main/resources botania lexicon $@/lexicon.html -.DEFAULT: build build: build/docs media jars README.txt .gitmodules mkdir -p $@ cp -r jars $@ diff --git a/README.md b/README.md index 83bf183..f29064f 100644 --- a/README.md +++ b/README.md @@ -3,35 +3,29 @@ See README.txt for the one that will be. This is the source repository for the Botania 10th anniversary CD. -It's a "CD-Extra" ([Blue Book](https://en.wikipedia.org/wiki/Blue_Book_(CD_standard))) CD, -with both audio and data tracks. The audio tracks are playable in a CD player, and the -data track can be mounted using a CD drive to access bonus non-audio content. +It's a classical "Mixed Mode" CD. There is one session with 8 tracks. The first track is +the data track containing an ISO9660 filesytem, and the 7 remaining tracks are audio +tracks. # Build Requirements * Python 3 * GNU Make -* K3b (KDE Plasma Disc burning software) -- optional, only if you want to produce a full - disc as it was sent to production. +* mkisofs and cdrdao # Building -To make the data section of the disc, do `make build`. Note that the Botania submodule -needs some special preparation, see how `.github/workflows/build.yml` prepares the repo -for more details. The output will be in the `build/` folder. - -The files that are meant to go in the audio section of the disc are in `audio/`. - -The K3b project that was used to produce the final Blue Book CD is located at -`k3b_project` (zip file, MIME `application/x-k3b`). It assumes this repository is checked -out under `/home/vincent/CS/BotaniaCD/`. To burn another copy of the disc, check out this -repo under that path, open the project file in K3b, and click Burn. - -Alternatively, when the master disc is sent to production, the GitHub release will have -the final BIN and TOC files from the master disc uploaded and attached as well. +1. Clone this repo +2. Prepare the submodule repository, see how `.github/workflows/build.yml` prepares the +repo for more details. +3. Execute `make BotaniaCD.iso` to create the ISO of the data track +4. Burn everything to a disc: `cdrdao --device /dev/your-cd-drive tocfile` # Random Botania proper is a submodule to allow access to the website and other stuff that's unwieldy to vendor or changes frequently. Other static stuff like logos, etc. should just be copied and directly committed into this repo. + +# Thanks +See docs/afterword.txt for credits diff --git a/docs/developers.txt b/docs/developers.txt index bae0591..8bb5a4c 100644 --- a/docs/developers.txt +++ b/docs/developers.txt @@ -8,6 +8,7 @@ of Botania's official development and art team. ----------- | Vazkii | ----------- + Vazkii started playing Minecraft back in 2010, at age 12, and started modding in 2011, at age 13, going on to create Botania in 2014. Vazkii is also the creator of several other popular mods and modpacks, such as Psi, Quark, Neat, Patchouli, Crucial 2, diff --git a/tocfile b/tocfile new file mode 100644 index 0000000..f47b1bc --- /dev/null +++ b/tocfile @@ -0,0 +1,77 @@ +CD_ROM +CD_TEXT { + LANGUAGE_MAP { + 0 : EN + } + + LANGUAGE 0 { + TITLE "Botania 10th Anniversary Commemorative CD" + PERFORMER "Violet Moon Modding" + } +} + +TRACK MODE1 + DATAFILE "BotaniaCD.iso" + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Endure Jaminess - Boslamia" + PERFORMER "Kain Vinosec & Quad City DJ's arr. MettyMagic" + } + } + FILE "audio/01 - Endure Jaminess - Boslamia.wav" 0 + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Fight For Quislamence - Boslamia" + PERFORMER "Kain Vinosec & Quad City DJ's arr. MettyMagic" + } + } + FILE "audio/02 - Fight For Quislamence - Boslamia.wav" 0 + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Runes of Air" + PERFORMER "Firel" + } + } + FILE "audio/03 - Runes of Air - Firel.wav" 0 + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Runes of Mana" + PERFORMER "Firel" + } + } + FILE "audio/04 - Runes of Mana - Firel.wav" 0 + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Garden of Glass" + PERFORMER "Firel" + } + } + FILE "audio/05 - Garden of Glass - Firel.wav" 0 + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Endure Emptiness" + PERFORMER "Kain Vinosec" + } + } + FILE "audio/06 - Endure Emptiness.wav" 0 + +TRACK AUDIO + CD_TEXT { + LANGUAGE 0 { + TITLE "Fight for Quiescence" + PERFORMER "Kain Vinosec" + } + } + FILE "audio/07 - Fight for Quiescence.wav" 0 \ No newline at end of file