Created
December 7, 2025 23:31
-
-
Save ellyq/db86e914be584fab5f6c3547f4ddbf29 to your computer and use it in GitHub Desktop.
Steam + VR inside docker
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| FROM fedora:latest | |
| # Docker env | |
| ENV \ | |
| UID=1000 \ | |
| GID=1000 \ | |
| UMASK=077 \ | |
| USER="user" \ | |
| USER_PASSWORD="666" \ | |
| USER_HOME="/home/user" \ | |
| TZ="Europe/Berlin" | |
| # Install packages | |
| RUN echo "max_parallel_downloads=20" >> /etc/dnf/dnf.conf \ | |
| dnf update --refresh -y; \ | |
| dnf install -y https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm; \ | |
| dnf install -y util-linux vim steam gamescope lsb_release pciutils usbutils | |
| # Additional packages for VR on Linux | |
| RUN dnf install -y envision libappindicator inotify-tools procps-ng bc boost-devel boost-devel boost-devel boost-devel boost-devel boost-devel bzip2-devel bzip2-devel cmake eigen3-devel fmt-devel fmt-devel gcc-c++ gcc git git-lfs glew-devel glew-devel glslang-devel glslc gtest-devel jq libbsd-devel libdrm-devel libepoxy-devel mesa-libGL-devel systemd-devel libusb1 libusb1-devel libX11-devel libxcb-devel libXrandr-devel lz4-devel mesa-libGL-devel ninja-build opencv-devel openxr-devel SDL2-devel tbb-devel vulkan-devel vulkan-loader-devel wayland-devel wayland-protocols-devel bluez-libs-devel libxkbcommon-devel libuvc-devel openjpeg-devel gstreamer1-devel dbus-devel | |
| # Add user | |
| RUN useradd ${USER};usermod -aG wheel,video,input,${USER} ${USER}; \ | |
| echo "${USER} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [Desktop Entry] | |
| # Place this file in ~/.local/share/applications/ | |
| # Translators: Do NOT translate or transliterate this text | |
| Name=Envision | |
| Comment=GUI for Monado | |
| Type=Application | |
| Exec=/usr/bin/docker exec -i games /usr/sbin/envision | |
| Terminal=false | |
| Categories=GNOME;GTK;Game; | |
| # Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! | |
| Keywords=vr;virtual;reality;monado; | |
| # Translators: Do NOT translate or transliterate this text (this is an icon file name)! | |
| Icon=org.gabmus.envision | |
| StartupNotify=true | |
| X-GNOME-UsesNotifications=true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| docker run --rm --privileged=true --name games \ | |
| --volume '/dev:/dev' \ | |
| --volume '/run/udev:/run/udev:ro' \ | |
| --volume '/etc/udev:/etc/udev:ro' \ | |
| --volume '/mnt/Games:/mnt/Games' \ | |
| --volume './games/home:/home/user' \ | |
| --volume '/run/user/1000:/run/user/1000' \ | |
| --volume '/tmp/.X11-unix:/tmp/.X11-unix' \ | |
| --env EDITOR=vim \ | |
| --env DISPLAY=$DISPLAY \ | |
| --env XAUTHORITY=$XAUTHORITY \ | |
| --env WAYLAND_DISPLAY=$WAYLAND_DISPLAY \ | |
| --env XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR \ | |
| --env XDG_SESSION_TYPE=$XDG_SESSION_TYPE \ | |
| --network=host -it --user user elly/games:latest |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [Desktop Entry] | |
| # Place this file in ~/.local/share/applications/ | |
| Actions=Store;Community;Library;Servers;Screenshots;News;Settings;BigPicture;Friends; | |
| Categories=Network;FileTransfer;Game; | |
| Comment=Application for managing and playing games on Steam | |
| Comment[bg]=Приложение за ръководене и пускане на игри в Steam | |
| Comment[cs]=Aplikace pro spravování a hraní her ve službě Steam | |
| Comment[da]=Applikation til at håndtere og spille spil på Steam | |
| Comment[de]=Anwendung zum Verwalten und Spielen von Spielen auf Steam | |
| Comment[el]=Εφαρμογή διαχείρισης παιχνιδιών στο Steam | |
| Comment[es]=Aplicación para administrar y ejecutar juegos en Steam | |
| Comment[fi]=Steamin pelien hallintaan ja pelaamiseen tarkoitettu sovellus | |
| Comment[fr]=Application de gestion et d'utilisation des jeux sur Steam | |
| Comment[hu]=Alkalmazás a Steames játékok futtatásához és kezeléséhez | |
| Comment[it]=Applicazione per la gestione e l'esecuzione di giochi su Steam | |
| Comment[ja]=Steam 上でゲームを管理&プレイするためのアプリケーション | |
| Comment[ko]=Steam에 있는 게임을 관리하고 플레이할 수 있는 응용 프로그램 | |
| Comment[nl]=Applicatie voor het beheer en het spelen van games op Steam | |
| Comment[no]=Program for å administrere og spille spill på Steam | |
| Comment[pl]=Aplikacja do zarządzania i uruchamiania gier na platformie Steam | |
| Comment[pt_BR]=Aplicativo para jogar e gerenciar jogos no Steam | |
| Comment[pt_PT]=Aplicação para organizar e executar jogos no Steam | |
| Comment[ro]=Aplicație pentru administrarea și jucatul jocurilor pe Steam | |
| Comment[ru]=Приложение для игр и управления играми в Steam | |
| Comment[sv]=Ett program för att hantera samt spela spel på Steam | |
| Comment[th]=โปรแกรมสำหรับจัดการและเล่นเกมบน Steam | |
| Comment[tr]=Steam üzerinden oyun oynama ve düzenleme uygulaması | |
| Comment[uk]=Програма для керування іграми та запуску ігор у Steam | |
| Comment[vi]=Ứng dụng để quản lý và chơi trò chơi trên Steam | |
| Comment[zh_CN]=管理和进行 Steam 游戏的应用程序 | |
| Comment[zh_TW]=管理並執行 Steam 遊戲的應用程式 | |
| Exec=/usr/bin/docker exec -i games /bin/steam | |
| Icon=com.valvesoftware.Steam | |
| MimeType=x-scheme-handler/steam;x-scheme-handler/steamlink; | |
| Name=Steam | |
| NoDisplay=false | |
| Path= | |
| PrefersNonDefaultGPU=false | |
| StartupNotify=true | |
| StartupWMClass=Steam | |
| Terminal=false | |
| TerminalOptions= | |
| Type=Application | |
| X-Desktop-File-Install-Version=0.28 | |
| X-KDE-SubstituteUID=false | |
| X-KDE-Username= | |
| [Desktop Action BigPicture] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://open/bigpicture | |
| Name=Big Picture | |
| [Desktop Action Community] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://url/CommunityHome/ | |
| Name=Community | |
| Name[bg]=Общност | |
| Name[cs]=Komunita | |
| Name[da]=Fællesskab | |
| Name[de]=Community | |
| Name[el]=Κοινότητα | |
| Name[es]=Comunidad | |
| Name[fi]=Yhteisö | |
| Name[fr]=Communauté | |
| Name[hu]=Közösség | |
| Name[it]=Comunità | |
| Name[ja]=コミュニティ | |
| Name[ko]=커뮤니티 | |
| Name[nl]=Community | |
| Name[no]=Samfunn | |
| Name[pl]=Społeczność | |
| Name[pt_BR]=Comunidade | |
| Name[pt_PT]=Comunidade | |
| Name[ro]=Comunitate | |
| Name[ru]=Сообщество | |
| Name[sv]=Gemenskap | |
| Name[th]=ชุมชน | |
| Name[tr]=Topluluk | |
| Name[uk]=Спільнота | |
| Name[vi]=Cộng đồng | |
| Name[zh_CN]=社区 | |
| Name[zh_TW]=社群 | |
| [Desktop Action Friends] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://open/friends | |
| Name=Friends | |
| Name[bg]=Приятели | |
| Name[cs]=Přátelé | |
| Name[da]=Venner | |
| Name[de]=Freunde | |
| Name[el]=Φίλοι | |
| Name[es]=Amigos | |
| Name[fi]=Kaverit | |
| Name[fr]=Amis | |
| Name[hu]=Barátok | |
| Name[it]=Amici | |
| Name[ja]=フレンド | |
| Name[ko]=친구 | |
| Name[nl]=Vrienden | |
| Name[no]=Venner | |
| Name[pl]=Znajomi | |
| Name[pt_BR]=Amigos | |
| Name[pt_PT]=Amigos | |
| Name[ro]=Prieteni | |
| Name[ru]=Друзья | |
| Name[sv]=Vänner | |
| Name[th]=เพื่อน | |
| Name[tr]=Arkadaşlar | |
| Name[uk]=Друзі | |
| Name[vi]=Bạn bè | |
| Name[zh_CN]=好友 | |
| Name[zh_TW]=好友 | |
| [Desktop Action Library] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://open/games | |
| Name=Library | |
| Name[bg]=Библиотека | |
| Name[cs]=Knihovna | |
| Name[da]=Bibliotek | |
| Name[de]=Bibliothek | |
| Name[el]=Συλλογή | |
| Name[es]=Biblioteca | |
| Name[fi]=Kokoelma | |
| Name[fr]=Bibliothèque | |
| Name[hu]=Könyvtár | |
| Name[it]=Libreria | |
| Name[ja]=ライブラリ | |
| Name[ko]=라이브러리 | |
| Name[nl]=Bibliotheek | |
| Name[no]=Bibliotek | |
| Name[pl]=Biblioteka | |
| Name[pt_BR]=Biblioteca | |
| Name[pt_PT]=Biblioteca | |
| Name[ro]=Colecţie | |
| Name[ru]=Библиотека | |
| Name[sv]=Bibliotek | |
| Name[th]=คลัง | |
| Name[tr]=Kütüphane | |
| Name[uk]=Бібліотека | |
| Name[vi]=Thư viện | |
| Name[zh_CN]=库 | |
| Name[zh_TW]=收藏庫 | |
| [Desktop Action News] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://openurl/https://store.steampowered.com/news | |
| Name=News | |
| Name[bg]=Новини | |
| Name[cs]=Zprávy | |
| Name[da]=Nyheder | |
| Name[de]=Neuigkeiten | |
| Name[el]=Νέα | |
| Name[es]=Noticias | |
| Name[fi]=Uutiset | |
| Name[fr]=Actualités | |
| Name[hu]=Hírek | |
| Name[it]=Notizie | |
| Name[ja]=ニュース | |
| Name[ko]=뉴스 | |
| Name[nl]=Nieuws | |
| Name[no]=Nyheter | |
| Name[pl]=Aktualności | |
| Name[pt_BR]=Notícias | |
| Name[pt_PT]=Novidades | |
| Name[ro]=Știri | |
| Name[ru]=Новости | |
| Name[sv]=Nyheter | |
| Name[th]=ข่าวสาร | |
| Name[tr]=Haberler | |
| Name[uk]=Новини | |
| Name[vi]=Tin tức | |
| Name[zh_CN]=新闻 | |
| Name[zh_TW]=新聞 | |
| [Desktop Action Screenshots] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://open/screenshots | |
| Name=Screenshots | |
| Name[bg]=Снимки | |
| Name[cs]=Snímky obrazovky | |
| Name[da]=Skærmbilleder | |
| Name[de]=Screenshots | |
| Name[el]=Φωτογραφίες | |
| Name[es]=Capturas | |
| Name[fi]=Kuvankaappaukset | |
| Name[fr]=Captures d'écran | |
| Name[hu]=Képernyőmentések | |
| Name[it]=Screenshot | |
| Name[ja]=スクリーンショット | |
| Name[ko]=스크린샷 | |
| Name[nl]=Screenshots | |
| Name[no]=Skjermbilder | |
| Name[pl]=Zrzuty ekranu | |
| Name[pt_BR]=Capturas de tela | |
| Name[pt_PT]=Capturas de ecrã | |
| Name[ro]=Capturi de ecran | |
| Name[ru]=Скриншоты | |
| Name[sv]=Skärmdumpar | |
| Name[th]=ภาพหน้าจอ | |
| Name[tr]=Ekran Görüntüleri | |
| Name[uk]=Скріншоти | |
| Name[vi]=Ảnh chụp | |
| Name[zh_CN]=截图 | |
| Name[zh_TW]=螢幕擷圖 | |
| [Desktop Action Servers] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://open/servers | |
| Name=Servers | |
| Name[bg]=Сървъри | |
| Name[cs]=Servery | |
| Name[da]=Servere | |
| Name[de]=Server | |
| Name[el]=Διακομιστές | |
| Name[es]=Servidores | |
| Name[fi]=Palvelimet | |
| Name[fr]=Serveurs | |
| Name[hu]=Szerverek | |
| Name[it]=Server | |
| Name[ja]=サーバー | |
| Name[ko]=서버 | |
| Name[nl]=Servers | |
| Name[no]=Tjenere | |
| Name[pl]=Serwery | |
| Name[pt_BR]=Servidores | |
| Name[pt_PT]=Servidores | |
| Name[ro]=Servere | |
| Name[ru]=Серверы | |
| Name[sv]=Servrar | |
| Name[th]=เซิร์ฟเวอร์ | |
| Name[tr]=Sunucular | |
| Name[uk]=Сервери | |
| Name[vi]=Máy chủ | |
| Name[zh_CN]=服务器 | |
| Name[zh_TW]=伺服器 | |
| [Desktop Action Settings] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://open/settings | |
| Name=Settings | |
| Name[bg]=Настройки | |
| Name[cs]=Nastavení | |
| Name[da]=Indstillinger | |
| Name[de]=Einstellungen | |
| Name[el]=Ρυθμίσεις | |
| Name[es]=Parámetros | |
| Name[fi]=Asetukset | |
| Name[fr]=Paramètres | |
| Name[hu]=Beállítások | |
| Name[it]=Impostazioni | |
| Name[ja]=設定 | |
| Name[ko]=설정 | |
| Name[nl]=Instellingen | |
| Name[no]=Innstillinger | |
| Name[pl]=Ustawienia | |
| Name[pt_BR]=Configurações | |
| Name[pt_PT]=Definições | |
| Name[ro]=Setări | |
| Name[ru]=Настройки | |
| Name[sv]=Inställningar | |
| Name[th]=การตั้งค่า | |
| Name[tr]=Ayarlar | |
| Name[uk]=Налаштування | |
| Name[vi]=Thiết lập | |
| Name[zh_CN]=设置 | |
| Name[zh_TW]=設定 | |
| [Desktop Action Store] | |
| Exec=/usr/bin/docker exec -i games /bin/steam steam://store | |
| Name=Store | |
| Name[bg]=Магазин | |
| Name[cs]=Obchod | |
| Name[da]=Butik | |
| Name[de]=Shop | |
| Name[el]=ΚΑΤΑΣΤΗΜΑ | |
| Name[es]=Tienda | |
| Name[fi]=Kauppa | |
| Name[fr]=Magasin | |
| Name[hu]=Áruház | |
| Name[it]=Negozio | |
| Name[ja]=ストア | |
| Name[ko]=상점 | |
| Name[nl]=Winkel | |
| Name[no]=Butikk | |
| Name[pl]=Sklep | |
| Name[pt_BR]=Loja | |
| Name[pt_PT]=Loja | |
| Name[ro]=Magazin | |
| Name[ru]=Магазин | |
| Name[sv]=Butik | |
| Name[th]=ร้านค้า | |
| Name[tr]=Mağaza | |
| Name[uk]=Крамниця | |
| Name[vi]=Cửa hàng | |
| Name[zh_CN]=商店 | |
| Name[zh_TW]=商店 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment