dorkhub

desktop-environment

☁️ From tty to production in one command, on the desktop and in the cloud.

sabrehagen
Dockerfile21128 forksupdated 2 months ago
git clone https://github.com/sabrehagen/desktop-environment.gitsabrehagen/desktop-environment

☁️ Cloud Desktop Environment

My daily driver on the desktop and in the cloud.

desktop desktop desktop desktop desktop desktop

Running on the Desktop

The only dependency required is Docker.

When running on a system with an Nvidia GPU, the Nvidia container toolkit is recommended.

To run on Linux, clone the repository and start the environment.

# Clone desktop environment
git clone https://github.com/sabrehagen/desktop-environment

# Start desktop environment
./desktop-environment/docker/scripts/bootstrap.sh

Running in the Cloud

  • Fork this repository.
  • Add your ngrok auth token to the repository secrets as NGROK_AUTH_TOKEN to enable web access.
  • Enable read and write permissions on your fork to allow GitHub Actions to push to your repository's container registry.
  • Run the Deploy Desktop Environment GitHub Actions workflow to deploy the desktop environment to GitHub's Actions infrastructure.
  • Click the Cloud Desktop Environment URL printed in the output of the Get URL workflow step.

Fork the cloud-computer/cloud-computer repository to deploy the desktop environment to Google Cloud.

Project Goals

  • A computer wholly defined in code.
  • From zero to production in one command.
  • Consistent experience across cloud and desktop.

Keybindings

Inexhaustive list of keybindings. Check ~/.config/i3/config for all available bindings.

System Management

  • Restart the desktop environment: $mod+Shift+q
  • Lock screen: $mod+slash

Window Focus and Movement

Vim-style bindings for focusing and moving windows.

  • Focus left: $mod+h
  • Focus down: $mod+j
  • Focus up: $mod+k
  • Focus right: $mod+l
  • Move focused window left: $mod+Shift+h
  • Move focused window down: $mod+Shift+j
  • Move focused window up: $mod+Shift+k
  • Move focused window right: $mod+Shift+l
  • Resize gaps: $mod+equal and $mod+Shift+equal

Workspace Management

  • Create a new workspace: $mod+n
  • Move the focused window to a new workspace: $mod+Shift+n
  • Switch to adjacent workspace: $mod+Control+h or $mod+Control+l
  • Switch to workspace n: $mod+1 to $mod+0
  • Switch to previous workspace: $mod+minus

Application Launching

  • Launch alacritty terminal: $mod+return
  • Launch google chrome: $mod+b
  • Launch vs code: $mod+c
  • Launch discord: $mod+d
  • Launch pcmanfm file manager: $mod+e
  • Launch telegram: $mod+t
  • Launch screenshot: $mod+x

Monitor Management

  • Move the focused window to the left monitor: $mod+less
  • Move the focused window to the right monitor: $mod+greater

Scratchpad

  • Show gotop: $mod+escape
  • Show terminal: $mod+grave
  • Show volume: $mod+v
  • Show wifi: $mod+i

more like this

frirss

A modern, self-hosted, customizable web frontend for FreshRSS.

TypeScript51

MTT-File-Manager-RUST

MTT File Manager is a Rust-based Windows file manager with tabbed navigation, rich media previews, deep system integrat…

Rust51

YiMao

YiMao · 云海求片助手 — 双核心 Telegram 影视求片机器人。订阅模式:TMDB 智能搜索一键订阅 / 趣味求片模式:AI 生成五层地狱闯关,通关解锁优先求片。深度集成 MoviePilot + Emby/Jellyfin。…

Go52

search

search projects, people, and tags