{"id":20783650,"url":"https://github.com/jedi4ever/gditc","last_synced_at":"2025-05-01T02:44:06.908Z","repository":{"id":37438708,"uuid":"282822245","full_name":"jedi4ever/gditc","owner":"jedi4ever","description":"Gaming/Gpu Desktop in the Cloud","archived":false,"fork":false,"pushed_at":"2021-01-03T10:41:03.000Z","size":50,"stargazers_count":31,"open_issues_count":0,"forks_count":55,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-30T21:03:22.678Z","etag":null,"topics":["cloudgaming","gpu","parsec","steam"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jedi4ever.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-07-27T07:14:58.000Z","updated_at":"2024-05-09T14:33:55.000Z","dependencies_parsed_at":"2022-08-08T20:15:56.876Z","dependency_job_id":null,"html_url":"https://github.com/jedi4ever/gditc","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/jedi4ever%2Fgditc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jedi4ever%2Fgditc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jedi4ever%2Fgditc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jedi4ever%2Fgditc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jedi4ever","download_url":"https://codeload.github.com/jedi4ever/gditc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251815185,"owners_count":21648364,"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":["cloudgaming","gpu","parsec","steam"],"created_at":"2024-11-17T14:22:08.310Z","updated_at":"2025-05-01T02:44:06.891Z","avatar_url":"https://github.com/jedi4ever.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GDITC\n\n\u003e Aka `Gaming Desktop In The Cloud`\n\u003e Aka `Gpu Desktop In The Cloud`\n\nNote :\n\n- this is not 100% cleaned up yet , it works for me right now but I have to square away some quirks\n- but I thought it was useful to share already\n\n## Why\n\nThere a good repos available but I (personally) have the following goals:\n\n- fully understand the code I executed : basically me disecting the powershell scripts and dependencies + documenting it\n- restrict permissions as much as I can : seems most don't care, but I do care\n- don't depend on unknown 3rd party download of tools - only use official sources: well ... it's obvious why\n- make it useful beyond gaming : f.i. streaming , gaming development all could benefit from a cloud vm\n- provide an easy way to override, customize the scripts : instead of having to fork it\n- make it work on multiple (gpu/gaming) clouds\n- make it easy to turn this into an image/ami\n- turn this into a library of different install profiles\n- turn this into an easy/cli UI program for everyone to use\n\n## Inspiration\n\nI owe the following repos deeply:\n\n### AWS (Current focus)\n\n- \u003chttps://github.com/jamesstringerparsec\u003e : amazing polishing work to get things working on windows 2019 and others using parsec\n- \u003chttps://github.com/parsec-cloud/Cloud-GPU-Updater/blob/master/GPUUpdaterTool.ps1\u003e : for installing the drivers on gpus\n- \u003chttps://github.com/badjware/aws-cloud-gaming/\u003e : for making it into a terraform module\n- \u003chttps://github.com/russiansmack/galaxy\u003e : for looking at ways to automate steam\n- \u003chttps://github.com/domenickp/gamingaws-terraform\u003e\n- \u003chttps://www.youtube.com/watch?v=BtVbBlZ27uI\u003e : nice video series about setting up your aws cloud gaming server\n\nOlder:\n\n- \u003chttps://github.com/lg/cloudy-gamer\u003e : the (old) original cloud gaming repo that showed us how it could be done\n- \u003chttps://www.cloudar.be/awsblog/how-to-use-aws-ec2-gpu-instances/\u003e\n- \u003chttps://github.com/LGUG2Z/parsec-ec2\u003e\n\n### Azure\n\n- \u003chttps://github.com/nyanhp/AzureCloudGaming/\u003e\n- \u003chttps://github.com/hjb1/azureParsecCloudGaming\u003e\n- \u003chttps://github.com/nVentiveUX/azure-gaming/\u003e\n- \u003chttps://github.com/SamStenton/azure-gaming\u003e\n- \u003chttps://github.com/hjb1/azureParsecCloudGaming\u003e\n- \u003chttps://github.com/alliallfrey/vm-gamestream\u003e\n\n### Google Cloud\n\n- \u003chttps://github.com/putty182/gcloudrig\u003e\n- \u003chttps://github.com/aykamko/parsec-google-cloud-gaming\u003e\n\n### Unreal\n- \u003chttps://github.com/aws-samples/deploying-unreal-engine-pixel-streaming-server-on-ec2\u003e\n- \u003chttps://github.com/jmarymee/Unreal-Pixel-Streaming-on-Azure/tree/main/iac\u003e\n\n## Technical Notes\n\n### Terraform\n\n- this currently uses Terraform 12\n- if using aws-vault you need to store your key with -no-session as temporary keys without MFA don't play well with iam profiles\n- TODO: turn this into a TF module\n\n### AWS\n\n- persistent spot instances are used to make them survive stops\n- spot instances for g4.2xlarge might require you to increase your limits of spotinstances (can not fullfill)\n- vcpuLimitExceeded also needs to be increased\n- we use a temporary key to create the windows instances\n- TODO: permissions are too open right now (s3, ssm)\n\n### Windows\n\n- current we activate winrm in user_data\n- then transfer files to the instance using winrm to enable ssh\n- then we continue using ssh to execute scripts in powershell\n\n### Software\n\n- Remote access: Win RM , SSH , RDP , Parsec (looking into moonlight \u0026 vnc)\n- Display : NVIDIA Drivers\n- Audio: Razer (looking into Virtual Cable)\n- USB: Vigembus (looking into Virtual Here, Flexihub), windows Redirect FX\n- Gamepad: Xbox compatible over Parsec\n- VPN: (looking into ZeroTier)\n- Game play: Steam , Battlenet, Epic Games\n- Apps : (looking into Skype, OBS , Unreal Engine)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjedi4ever%2Fgditc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjedi4ever%2Fgditc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjedi4ever%2Fgditc/lists"}