{"id":19054903,"url":"https://github.com/solus-project/runtime-snaps","last_synced_at":"2025-08-12T18:43:20.886Z","repository":{"id":145851658,"uuid":"110044517","full_name":"solus-project/runtime-snaps","owner":"solus-project","description":"Core repository for Solus runtime snaps","archived":false,"fork":false,"pushed_at":"2018-10-18T17:47:36.000Z","size":1845,"stargazers_count":31,"open_issues_count":5,"forks_count":3,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-18T12:18:06.087Z","etag":null,"topics":["linux-steam","lsi","runtime","snap","snapcraft","solus","steam","universal-app"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/solus-project.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":"support_assets/etc/lsb-release","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-11-08T23:58:33.000Z","updated_at":"2025-02-27T07:38:55.000Z","dependencies_parsed_at":"2023-05-18T11:30:28.328Z","dependency_job_id":null,"html_url":"https://github.com/solus-project/runtime-snaps","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solus-project%2Fruntime-snaps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solus-project%2Fruntime-snaps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solus-project%2Fruntime-snaps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solus-project%2Fruntime-snaps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/solus-project","download_url":"https://codeload.github.com/solus-project/runtime-snaps/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250556142,"owners_count":21449938,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["linux-steam","lsi","runtime","snap","snapcraft","solus","steam","universal-app"],"created_at":"2024-11-08T23:40:12.278Z","updated_at":"2025-04-24T03:30:48.594Z","avatar_url":"https://github.com/solus-project.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"runtime-snaps\n=============\n\nCombining the [Solus](https://solus-project.com) runtime and [Linux Steam Integration](https://github.com/solus-project/linux-steam-integration) project with [Snaps](https://snapcraft.io/) for universal gaming\n\nThis is currently a **Work In Progress**.\n\n# WARNING - HIGHLY VOLATILE\n\nWe're now undergoing the upstreaming process for the new `steam-support` interface, as such\nconsider the existing snaps broken, and you in need of a new snapd with the new support. We're\nalso going to drop `devmode` support now and move to `strict` confinement, so please consider\nthe vast majority of this document incorrect.\n\n### Why what now?\n\nThis is an ongoing effort to produce snaps to provide the Steam* client, Linux Steam Integration project,\nand Solus packages to create a true \"universal app\" variant of Steam that will work\non every Linux distribution in the same way, while mitigating many of the runtime\nissues.\n\nThis isn't just a \"native Steam\" effort, LSI is a highly complex project that seeks\nto replace the runtime almost entirely, and fix many issues. Integrating LSI is\nalso a large undertaking - thus Solus is now seeking to share our work on our own\nruntime and LSI implementation with the rest of the Linux world for a pain-free\nand consistent gaming experience.\n\nA large element of this is also to help developers and studios targeting Linux\nas a platform to have a singular target that would work across all Linux distributions,\nand provide peace of mind that their games would work as **intended**. Additionally,\nas the keepers of LSI, we can rapidly deploy changes to LSI and the runtime to better\nsupport the games and alleviate regressions before they hit users.\n\nruntime-snaps is a [Solus project](https://solus-project.com/)\n\n![logo](https://build.solus-project.com/logo.png)\n\n### Planned Usage\n\nRuntimes:\n\n - `solus-runtime-gaming`\n\nApplications:\n\n - `linux-steam-integration` + `steam` (single snap)\n\nNote that for now we'll not be focusing on strict confinement, so the snaps\nshould be installed with `--devmode` until such point as proper confinement\nis feasible.\n\nWe are not currently planning on making an SDK available, as the runtime will\nprimarily be derived from the Solus repositories, with minor layering happening\nwithin the local runtimes.\n\nAs and when we have the core components in place we can start discussions around\nSDK + debugging availability.\n\n\n\nHow to build and run\n====================\n\nYou must be on Solus to **build** these snaps. You do not need to be on Solus\nto **run** these snaps.\n\n### Dependencies\n\n - snapd 2.29.2 + patches\n - solbuild (ensure this has been initialised on `unstable-x86_64`)\n\n### `snapd` patches\n\n - https://github.com/snapcore/snapd/commit/ec4f3c0774620dd2bb6df765b337fa8a67d2afc8 ([patch](https://github.com/snapcore/snapd/commit/ec4f3c0774620dd2bb6df765b337fa8a67d2afc8.patch))\n - https://github.com/snapcore/snapd/pull/4207 ([patch](https://patch-diff.githubusercontent.com/raw/snapcore/snapd/pull/4207.patch))\n\n**Note**: All of these patches are in Solus\n\nAfter installing the relevant snapd, ensure your apparmor rules are applied and snapd has been\nrestarted. Be lazy, reboot. People do it.\n\nFor Ubuntu users you may use the [Snappy Edge PPA](https://launchpad.net/~snappy-dev/+archive/ubuntu/edge)\n\n## Install from the store\n\n```\nsudo snap install --edge solus-runtime-gaming\nsudo snap install --devmode --edge linux-steam-integration\nsnap run linux-steam-integration\n```\n\n### Build solus-runtime-gaming (Solus only)\n\n```bash\nsudo ./round1.sh\n````\n\n### Build linux-steam-integration (Solus only)\n\n```bash\nsudo ./mkapp.sh\n```\n\n### Installation (custom build)\n\nYou must first remove the existing installs if you've already run this step before:\n\n```bash\nsudo snap remove solus-runtime-gaming linux-steam-integration\n```\n\nThe installation order is important, as LSI depends on the base runtime snap:\n\n```bash\nsudo snap install --dangerous solus-runtime-gaming*.snap\nsudo snap install --dangerous --devmode linux-steam-integration*.snap\n```\n\n### Running\n\n```bash\nsnap run linux-steam-integration\n```\n\n### Run with debug\n\nThis will drop you to a shell within the runtime and allow you to execute\nLSI's Steam shim with debugging enabled.\n\n```bash\nsnap run --shell linux-steam-integration\n$ export LSI_DEBUG=1\n$ $SNAP/linux-steam-integration\n```\n\n## Known Issues\n\nTracking some currently known shortcomings here:\n\n - No udev roles exposed to host. Talking with upstream to improve this in a new snapd interface\n - No testing yet done outside Solus! Need to test biarch + multiarch distros with NVIDIA \u0026 open source drivers.\n - \"Home\" for Steam is within the snap root. Removing snap will uninstall those local games\n - Requires `--devmode` install as confinement isn't yet finished.\n - `LSI_DEBUG` will cause crashes on Ubuntu (potentially stack size issue?)\n\n## License\n\nCopyright © 2017 Solus Project\n\nruntime-snaps is available under the terms of the `GPL-2.0` license.\n\nThe distributed binary snap will fall under multiple licenses, consult\nthe included packages to determine licensing details for the entire binary\nimage.\n\n`* Some names may be claimed as the property of others.`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolus-project%2Fruntime-snaps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolus-project%2Fruntime-snaps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolus-project%2Fruntime-snaps/lists"}