mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-08 22:00:19 +02:00
Fixing some minor spelling errors which should not affect functionality but improve the overall quality of documentation.
108 lines
4.4 KiB
Markdown
108 lines
4.4 KiB
Markdown
# FEX tagged version (release) process
|
|
A FEX tagged version happens near the start of each month.
|
|
|
|
The tagged versioning is `FEX-<YYMM>` with the month being the current month.
|
|
|
|
If a tagged version was being done on `Sun, 02 Jan 2022` then the FEX version would be FEX-2201
|
|
|
|
There are multiple locations that need to be updated during a release
|
|
* Github tagged release
|
|
* Github releases page
|
|
* fex-emu.com blog post
|
|
* https://launchpad.net/~fex-emu/+archive/ubuntu/fex Ubuntu PPA
|
|
* @FEX_Emu twitter account
|
|
|
|
* Optional: Update the rootfs images
|
|
|
|
## Github Steps
|
|
* Check out the commit that will be the branch
|
|
|
|
$ git checkout upstream/main
|
|
|
|
* Make local main branch be the selected commit
|
|
|
|
$ git branch -D main
|
|
$ git checkout -b main
|
|
|
|
* Run the release script
|
|
|
|
$ Scripts/generate_release.sh
|
|
|
|
* Push the branches upstream
|
|
* This requires administrative push rights
|
|
* Both the tag and the main branch needs to be committed
|
|
|
|
$ git push upstream $CURRENT
|
|
$ git push upstream main
|
|
|
|
## Launchpad PPA steps
|
|
Follow the steps in: https://github.com/FEX-Emu/FEX-ppa/blob/main/README.md
|
|
* Requires PPA GPG key signing access
|
|
* Wait the 20-30 minutes for Ubuntu PPA to build and publish the binaries
|
|
|
|
## ArchLinux AUR package
|
|
* Clone https://aur.archlinux.org/packages/fex-emu
|
|
* Requires maintainer or co-maintainer permissions
|
|
* Update PKGBUILD and .SRCINFO file.
|
|
* Push changes upstream
|
|
|
|
## Github releases page Steps
|
|
* Requires administrative rights
|
|
* Go to https://github.com/FEX-Emu/FEX/releases
|
|
* Click Draft a new release
|
|
* Copy and paste the tagged changelog in to the draft release markdown
|
|
* This was generated from the generate_release.sh script
|
|
* Clean the markdown to a desired level of combining and ordering
|
|
* Fairly trivial cleanups, it's more just a developer focused changelog
|
|
* Click publish release
|
|
|
|
## fex-emu.com blog post steps
|
|
* clone https://github.com/FEX-Emu/fex-emu.com
|
|
* Copy the previous post from the _posts/ folder to a new markdown file
|
|
* Ensure correct date format in filename
|
|
* Copy github release pages markdown in to this
|
|
* Easy to forget areas:
|
|
* Title text section
|
|
* See Release notes top section, links to github release tag
|
|
* See detailed changelog at the bottom, linking to github raw revision comparison
|
|
* Short blurb in the top paragraph if desired
|
|
* push new md file to the repo. Either in direct push or PR
|
|
* Jekyll will automatically regenerate the website with a github action
|
|
* Verify that the post shows up on the site at fex-emu.com
|
|
|
|
## Termux package update steps
|
|
* Clone https://github.com/termux/termux-packages
|
|
* Update the package script with thew new version tag (https://github.com/termux/termux-packages/blob/master/packages/fex/build.sh)
|
|
* ***!!! Test the build locally on an Android device !!!***
|
|
* Check the wiki for a command to run in the local changed repo on-device
|
|
* https://github.com/termux/termux-packages/wiki/Building-packages#how-to-build-package
|
|
* Submit a PR to upstream on github to get it picked up
|
|
|
|
## @FEX_Emu twitter account steps
|
|
* Requires @FEX_Emu twitter account access
|
|
* Create a tweet with some small blurb/sizzle text about some relevant changes in this tagged version
|
|
* Link to the fex-emu.com blog post about the change
|
|
|
|
## RootFS image updating
|
|
* This doesn't typically need to be done on a monthly basis
|
|
* This lives in https://github.com/FEX-Emu/RootFS
|
|
|
|
* Follow the Build_Data file's information for how to generate an image using `build_image.py`
|
|
* This gives a squashfs image for the rootfs
|
|
* Use FEXRootFSFetcher <image.sqsh> to generate the xxhash for the image
|
|
* Update `https://rootfs.fex-emu.com/file/fex-rootfs/RootFS_links.json` with the new rootfs image and hash
|
|
* This currently lives in a private FEX-Emu backblaze bucket with cloudflare servicing it.
|
|
* Never publicly give the direct backblaze link to the file. Will cause BW costs to skyrocket
|
|
* Always pass through cloudflare
|
|
|
|
* Upload new image to Backblaze using the b2 upload tool
|
|
* b2 upload-file <bucketname> <image.sqsh> <Image folder name>/<image.sqsh>
|
|
|
|
* Upload the new RootFS_links.json
|
|
* Lives in the root of the bucket
|
|
* b2 upload-file <bucketname> RootFS_links.json RootFS_links.json
|
|
|
|
* Once uploaded it should propagate immediately
|
|
* Might be worth thinking about the coherency problem of updating the hash versus image independently if overwriting an image
|
|
* Need to be careful about it to not break anyone in the process of downloading an image
|