Developer Scripts
Developer scripts for an app repos built on Pankosmia
Table of Contents
Use
Run[1] the run script to start the server without a browser launch.
- Consider also if you need to delete ~/pankosmia_working first.
- You’ll want to restart the server if deleting ~/pankosmia_working after starting the server. To restart, exit the terminal window where the server is running the run the
runscript[1] again. - Only one instance of the server can be running at a time.[3]
Client development:
Manually build the client(s) changed, stop the server if is is running, then start the server (run). The run script will re-assemble the environment to include your build.
See also Running your setup.
To generate a release package for the OS you are using, edit the version number for the release in app_config.env then see the next section below, or Local installer build or the bundle scripts in Dev script reference
To generate artifacts:
Manually run the desired workflow (Actions > [select workflow] > Run workflow).
- The current main branch of client repo and resource at the time of running the workflow will be used.
Download resulting artifacts (Actions > click the name of a run to see the workflow run summary > scroll down to the bottom to the Artifacts section > to download, click either the name of each artifact or the down arrow on each row
Any double-compressed artifacts should have one layer uncompressed before release, e.g.:
- Strip *.tgz.zip down to *.tgz
- Strip *.zip.zip down to *.zip
- If working from windows, avoid releasing a re-zipping a macos or linux zip package if a .pkg, .sh, .bsh, .zsh was in the layer re-zipped in windows. Doing so would otherwise remove file permission settings of
chmod +xwhere they are needed. - Release the *.pkg.zip layer as .zip as it includes a README file in the same layer as the pkg, which contains installation and upgrade instructions / info.
Upload releases manually by going to the Release section of your repo and selecting “Draft a new release”.
Maintenance
To update the server, change the latest version of panksomia-web in /local_server/Cargo.toml and re-run the build_server script.
To sync this repo with its upstream, run the sync script.
Footnotes
[1] … Windows developers, run .bat scripts from a Powershell or Command terminal:
…repos\pankosmia[your-desktop-app-repo-name]\windows\scripts> .\[scriptname].bat
Use a powershell terminal for the .ps1 build scripts.
MacOS developers, run .bsh scripts from a MacOS terminal:
…repos/pankosmia/[your-desktop-app-repo-name]/macos/scripts> ./[scriptname].bsh
Linux developers, run .zsh scripts from a linux terminal:
…repos/pankosmia/[your-desktop-app-repo-name]/linux/scripts> ./[scriptname].zsh
[2] … The build script will fail on any clients set to a different branch with uncommitted changes or with conflicts vs, the latest main pull. Scroll back up in the terminal to find any build errors and address them.
[3] … If running into an error saying that another instance is running, you can either find the other instance and stop it, or simply reboot. Another instance could be one started from a .zip, .tgz, installed version, run from a different repo, or a manually started panksomia-web.