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 run script[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 +x where 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.