4 ms·
GitHub isn't forcing anybody to use a web IDE. The most broadly used access interface is VSCode. Then there are heretics like me who choose to ssh in so we can
by wincent 5y ago
GitHub isn't forcing anybody to use a web IDE. The most broadly used access interface is VSCode. Then there are heretics like me who choose to ssh in so we can use Vim. This is described in the article.
- blueplanet200 5y agoHow does setting up a desktop IDE work?
- dynamicwebpaige 5y agoCurrently, VS Code is the primary method of connection to each Codespace, and we do not support other editors officially. If you’re looking to connect via SSH with your desktop IDE, we do have a workaround here: https://github.com/microsoft/vscode-dev-containers/blob/main/script-library/docs/sshd.md https://github.com/microsoft/vscode-dev-containers/blob/main... -- and I use this regularly for Jupyter Notebooks. :)
- blueplanet200 5y agoSo if I want to use IntelliJ or RubyMine, is there a workaround?
- throwaway_fjmr 5y agoYeah, go work somewhere else :))))) /s Jetbrains recently added remote capabilities to IntelliJ, I'm hoping it's going to be usable with codespaces soon.
- micro_cam 5y agoThis (quick to provision vms of any size you want with your code base etc) for jupyter sounds like a colab and mode killer...the way both of those make it hard to actually check in code leads to a ton of copy and paste code etc. You all should really advertise this capability.
- fourseventy 5y agoDo you have to drag your .vimrc and plugins along every time you set up a new code space? My vim setup is pretty bespoke, it would be annoying to have to set that up every time.
- EduardoBautista 5y agoI once had a setup where I could just clone a repository and run a script to get my dotfiles set up. For Vim, I would just need to then run the command to install the plugins and that was that. Edit: Here is the CLI program that helped me set this up: https://github.com/thoughtbot/rcm https://github.com/thoughtbot/rcm
- wincent 5y agoYou can have it clone your dotfiles repo automatically and run a set-up script: https://docs.github.com/en/codespaces/customizing-your-codespace/personalizing-codespaces-for-your-account#dotfiles https://docs.github.com/en/codespaces/customizing-your-codes... I also have a very bespoke dotfiles config that predates Codespaces (https://github.com/wincent/wincent https://github.com/wincent/wincent), so I made a thin wrapper around it that makes it work (https://github.com/wincent/dotfiles https://github.com/wincent/dotfiles). For people with less complicated set-ups (ie. basically the entire universe), it is pretty straightforward.
- __MatrixMan__ 5y agoIt's totally worth taking the time to sync your dotfiles via git. There's a little bit of maintenance involved whenever you make a config change on one system that you want to propagate elsewhere, but it pays off. Personally, I just `git init && git remote add ...` in my home directory and have a .gitignore that ignores everything by default, so I have to `git add -f` whenever I want to sync a config. Submodules work well for `.vim/bundle/the-plugin`. It's also nice for syncing important zsh customizations like this one: https://github.com/MatrixManAtYrService/home2/blob/master/.zsh_functions/bitch https://github.com/MatrixManAtYrService/home2/blob/master/.z... There are also other strategies: https://dotfiles.github.io/ https://dotfiles.github.io/
- didibus 5y agoCan you install RDP/VNC and just remote into it like that? Then get sudo access and install whatever you want on it?
- dvdkon 5y agoWell, it's a Linux VM/container, so while you could do that, I don't see why you would, I think all a dev would want to do in a dev container would be command-line in nature.
- didibus 5y agoIt's not just a dev container, it's meant to be your workstation, with the code files being stored in it and not on your personal machine. So if I want to install IntelliJ, Beyond Compare, etc. Or even if I don't want to bother with setting up tunnels and port forwarding for testing my web app locally, I could use Firefox in the VM, etc. Seems it would solve all the issues, which are specifically that it mostly works only with VSCode or terminal apps, but with a remoting solution you could run anything you'd want.
- gnufied 5y agoHow is the latency btw? I SSH to a beefy box that sits under my table and sometimes I hate the latency of running emacsclient over X. But I am not using VIM and I don't use terminal emacs because of clipboard integration betweeen remote emacs and local desktop. I know there are hacks to make clipboard sync between local and remote emacs sessions without running emacs over X11 forwarding, but I always found those to be janky..
- speedgoose 5y agoIt's very good. The rendering and inputs are done locally. Completion, compilation, linting, and other things are done remotely but they are not instant anyway so the network latency is not really noticeable. I use Github Codespaces with a Vscode and vscode-neovim. Neovim is running locally.
- vineyardmike 5y agonot op, but amazon uses "cloud desktops" with SSH access company wide, and no one really has latency issues there. So its def something supported at some companies... I don't know how many people would want to use graphic applications over the network however, seems like it would be janky
- boardwaalk 5y agoI’ve always thought that remoting to edit text files using X or RDP is doing at the wrong level of abstraction. VSCode editing over SSH works really well in contrast. I think Sublime has a plugin that ain’t bad. Emacs (TRAMP) is probably the worse of the three :/. Terminal Vim or Emacs over Mosh is a pretty good option too.