{"id":50621448,"url":"https://github.com/spacestation13/launcher","last_synced_at":"2026-06-06T12:30:30.700Z","repository":{"id":333687936,"uuid":"1138341517","full_name":"spacestation13/launcher","owner":"spacestation13","description":"A launcher for SS13","archived":false,"fork":false,"pushed_at":"2026-06-02T09:45:47.000Z","size":4418,"stargazers_count":5,"open_issues_count":3,"forks_count":4,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-02T11:22:57.278Z","etag":null,"topics":["cmss13","launcher","ss13"],"latest_commit_sha":null,"homepage":"https://spacestation13.com","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spacestation13.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-20T14:51:48.000Z","updated_at":"2026-06-02T09:46:05.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/spacestation13/launcher","commit_stats":null,"previous_names":["hry-gh/cm-launcher-rs","cmss13-devs/cm-launcher","cmss13-devs/launcher","spacestation13/launcher"],"tags_count":83,"template":false,"template_full_name":null,"purl":"pkg:github/spacestation13/launcher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacestation13%2Flauncher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacestation13%2Flauncher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacestation13%2Flauncher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacestation13%2Flauncher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spacestation13","download_url":"https://codeload.github.com/spacestation13/launcher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spacestation13%2Flauncher/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33983046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-06T02:00:07.033Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cmss13","launcher","ss13"],"created_at":"2026-06-06T12:30:29.100Z","updated_at":"2026-06-06T12:30:30.694Z","avatar_url":"https://github.com/spacestation13.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e [!IMPORTANT]\n\u003e Install directly from GitHub Actions here:\n\u003e\n\u003e \u003ca href=\"https://github.com/cmss13-devs/launcher/releases/tag/v0.19.6\"\u003e\n\u003e  \u003cimg src=\"https://img.shields.io/badge/Windows-0078D6?style=for-the-badge\u0026logo=windows\u0026logoColor=white\" alt=\"Windows download link\"/\u003e\n\u003e \u003c/a\u003e\n\n# SS13 Launcher ![Steam Build](https://img.shields.io/github/actions/workflow/status/cmss13-devs/cm-launcher/steam.yml?style=for-the-badge\u0026label=STEAM%20BUILD) ![GitHub Build](https://img.shields.io/github/actions/workflow/status/cmss13-devs/cm-launcher/build.yml?style=for-the-badge\u0026label=GITHUB%20BUILD) ![Tests](https://img.shields.io/github/actions/workflow/status/cmss13-devs/cm-launcher/build.yml?style=for-the-badge\u0026label=TESTS)\n\nA launcher for Space Station 13 servers, using [Tauri](https://v2.tauri.app/) and managing BYOND versions internally.\n\n## Screenshots\n\n| CM-SS13 Game Servers                                                                                                                               | Authentication Options (Steam only available in Steam builds)                                                                                      | Automatic Relay Selection                                                                                                                          |\n| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |\n| \u003cimg width=\"1992\" height=\"1188\" alt=\"VcnBDvrlqS7Tfryu@2x\" src=\"https://github.com/user-attachments/assets/d8b5ac37-e818-45cb-b020-5fd96dc64f50\" /\u003e | \u003cimg width=\"1981\" height=\"1179\" alt=\"0SR6wKmNaPuefRBK@2x\" src=\"https://github.com/user-attachments/assets/e196bac1-f134-42da-9990-4e4864c24129\" /\u003e | \u003cimg width=\"1996\" height=\"1200\" alt=\"6whuDKXeRfZD5E3f@2x\" src=\"https://github.com/user-attachments/assets/b4f08132-6740-4b50-bb91-8f527e2aab5f\" /\u003e |\n\n## Features\n\n### BYOND\n\n- Automatically installs the correct version for the game server you are connecting to.\n- Private WebView2 install location to avoid conflicts with system BYOND.\n\n### Authentication\n\n- CM-SS13 Authentication via web browser authentication flow\n  - Handles tokens refresh to stay logged in indefinitely\n- BYOND Authentication via pager\n- Steam Authentication via Authentication ticket flow/Authentik backend\n\n### Rich Presence\n\n- Supports Steam and Discord rich presence\n- Displays currently launched server, as well as the number of players online\n- Allows friends to join directly from the friends list\n\n### CI/CD\n\n- Automatically deploys tagged versions to GitHub Releases and Steam\n- Steam releases are pushed to a `latest` branch for manual deployment to `default`.\n\n## Development\n\n### Prerequisites\n\n- [Node.js](https://nodejs.org/) (LTS)\n- [Rust](https://rustup.rs/) (stable)\n- Platform-specific dependencies (see below)\n\nInstall frontend dependencies first:\n\n```bash\nnpm install\n```\n\n### Build Variants\n\nThe launcher has two variants controlled by Cargo features and Tauri config overlays:\n\n| Variant | Feature flag | Config overlay | Description |\n|---------|-------------|----------------|-------------|\n| **SS13 (generic)** | _(none)_ | _(none)_ | Generic SS13 server browser |\n| **CM-SS13** | `cm_ss13` | `--config src-tauri/tauri.cm.conf.json` | CM-SS13 specific launcher |\n\nBoth variants can optionally include Steam support by adding the `steam` feature.\n\n### Dev Mode (with hot-reloading)\n\n```bash\n# SS13 (generic)\nnpm run tauri -- dev\n\n# CM-SS13\nnpm run tauri -- dev --features cm_ss13 --config src-tauri/tauri.cm.conf.json\n\n# Either variant with Steam support\nnpm run tauri -- dev --features steam\nnpm run tauri -- dev --features cm_ss13,steam --config src-tauri/tauri.cm.conf.json\n```\n\nTo run a Steam build in development, place a file named `steam_appid.txt` in `src-tauri/` containing `4313790`. Otherwise, the app will immediately close and attempt to reopen via Steam.\n\n### Production Builds\n\n```bash\n# SS13 (generic)\nnpm run tauri -- build\n\n# CM-SS13\nnpm run tauri -- build --features cm_ss13 --config src-tauri/tauri.cm.conf.json\n```\n\n### Windows Setup\n\nDownload the WebView2 fixed runtime (bundled into the installer so users don't need system WebView2):\n\n```powershell\n./scripts/download-webview2.ps1\n```\n\nNo other platform-specific setup is needed on Windows.\n\n### Linux Setup\n\nInstall system dependencies (Ubuntu 24.04):\n\n```bash\nsudo apt-get install -y \\\n  libwebkit2gtk-4.1-0 libwebkit2gtk-4.1-dev \\\n  libjavascriptcoregtk-4.1-0 libjavascriptcoregtk-4.1-dev \\\n  gir1.2-javascriptcoregtk-4.1 gir1.2-webkit2-4.1 \\\n  libappindicator3-dev librsvg2-dev \\\n  patchelf musl-tools cabextract\n```\n\nLinux builds require bundled sidecars (Wine, WebView2, cabextract) for running BYOND.\n\n1. Download Wine, winetricks, and cabextract (bundles Wine so Linux users can run BYOND via Wine):\n\n   ```bash\n   ./scripts/download-wine.sh\n   ```\n\n2. Download the WebView2 fixed runtime:\n\n   ```bash\n   ./scripts/download-webview2.sh\n   ```\n\n3. Prepare the sidecar directory for AppImage bundling. The directory name must match the `productName` in tauri.conf.json:\n\n   ```bash\n   # For SS13 (generic) — productName is \"SS13 Launcher\"\n   mkdir -p \"/tmp/lib/SS13 Launcher\"\n   cp src-tauri/wine.tar.zst \"/tmp/lib/SS13 Launcher/\"\n   cp src-tauri/winetricks \"/tmp/lib/SS13 Launcher/\"\n   cp src-tauri/cabextract \"/tmp/lib/SS13 Launcher/\"\n   chmod +x \"/tmp/lib/SS13 Launcher/winetricks\" \"/tmp/lib/SS13 Launcher/cabextract\"\n   cp -r src-tauri/webview2-runtime \"/tmp/lib/SS13 Launcher/webview2-runtime\"\n\n   # For CM-SS13 — productName is \"CM-SS13 Launcher\"\n   mkdir -p \"/tmp/lib/CM-SS13 Launcher\"\n   cp src-tauri/wine.tar.zst \"/tmp/lib/CM-SS13 Launcher/\"\n   cp src-tauri/winetricks \"/tmp/lib/CM-SS13 Launcher/\"\n   cp src-tauri/cabextract \"/tmp/lib/CM-SS13 Launcher/\"\n   chmod +x \"/tmp/lib/CM-SS13 Launcher/winetricks\" \"/tmp/lib/CM-SS13 Launcher/cabextract\"\n   cp -r src-tauri/webview2-runtime \"/tmp/lib/CM-SS13 Launcher/webview2-runtime\"\n   ```\n\n4. Linux AppImage builds also require a custom tauri-cli fork and the linux config overlay:\n\n   ```bash\n   cargo install tauri-cli --git https://github.com/tauri-apps/tauri --branch feat/truly-portable-appimage --force\n   ```\n\n5. Build with the linux config overlay and the `ADD_DIR` env var:\n\n   ```bash\n   # SS13 (generic)\n   ADD_DIR=\"/tmp/lib/SS13 Launcher\" cargo tauri build --config src-tauri/tauri.linux.conf.json\n\n   # CM-SS13\n   ADD_DIR=\"/tmp/lib/CM-SS13 Launcher\" cargo tauri build --features cm_ss13 \\\n     --config src-tauri/tauri.cm.conf.json --config src-tauri/tauri.linux.conf.json\n   ```\n\n### Regenerating TypeScript Bindings\n\nWhen Tauri commands or types change, regenerate the TS bindings:\n\n```bash\ncd src-tauri \u0026\u0026 cargo test --features steam --lib export_bindings\n```\n\nThe `steam` feature is required so that Steam-specific bindings are included.\n\n### Releasing\n\nUse `tools/release.sh [semver]` to change the version in `Cargo.toml`, create a commit changing the version, and tag that commit with the semver. When this is pushed, GitHub Actions will push new builds to both GitHub Releases and Steam.\n\nManually download the `.msi` and `.exe` and upload these to [Microsoft](https://www.microsoft.com/en-us/wdsi/filesubmission) to /try/ and avoid SmartScreen when installed via GitHub Releases.\n\n### To-Do\n\nSee issues tagged with https://github.com/cmss13-devs/cm-launcher/labels/feature-request or https://github.com/cmss13-devs/cm-launcher/labels/bug as an easy place to start contributing.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspacestation13%2Flauncher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspacestation13%2Flauncher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspacestation13%2Flauncher/lists"}