question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Master installation script / convenience function

See original GitHub issue

Is your feature request related to a problem? Please describe.

Setting up a fully-fledged R environment in VS Code currently involves several manual steps, as outlined in the README. Users must first install the languageserver package (from R), then add the REditorSupport extension (from VS Code), and then configure several other add-ons from other locations/sources (e.g. radian via pip in the terminal, httpd from R…).

In my experience, this startup rigmarole is tricky for newcomers and, possibly, even for fairly advanced users. (Example: I explicitly had to add radian to my $PATH on both Linux and Mac before it would work.) Once everything is set up, then VS Code genuinely makes for an excellent R IDE. But it’s harder getting to that point than it needs to be IMO.

Describe the solution you’d like

One possible solution is to handle all of these installation requirements via a single convenience script or R function. I’m thinking something along the lines of arrow::install_arrow() and reticulate::install_python() (or even JILL and Homebrew).

Say this functionality was bundled as an R function; call it vscoder_setup(). Users could then pass arguments regarding the installation and configuration that they’d like… although I’d argue that the full enchilada of recommended steps—including the debugger plugin and radian—be installed as a default.

Describe alternatives you’ve considered

Apart from the current manual approach, none.

Additional context

#718 is somewhat related. Again, however, my goal is to provide a single convenience function that I can give to students and colleagues that sees them off to the races with minimal effort or assumed knowledge on their part.

Thanks for considering!

Issue Analytics

  • State:open
  • Created a year ago
  • Reactions:4
  • Comments:6 (2 by maintainers)

github_iconTop GitHub Comments

2reactions
ElianHughcommented, Jul 30, 2022

I think it would be fair to say that one of the main vscode-R goals, at present, is to drastically reduce the barrier to entry. This can be seen for instance in the defaulting of standard vsc-R settings, or the ability to toggle R options via extension settings.

RStudio’s onboarding and new user experience is nothing short of exceptional and is something that can (and probably should) be used as a benchmark. @renkun-ken has a nice blogpost discussing this (unfortunately I can’t find the link ATM).

As you’ve outlined, we need to do better with the setup phase. The python extension does a nice job of setting up upon initial installation, and perhaps we need to explore that more.

The selection of rPath and rTerm can also be confusing, and the cognitive overhead should hopefully be reduced in an upcoming PR.

Hopefully more to come in making this a more inviting experience 😃

0reactions
hermidalccommented, Aug 19, 2022

And sorry but maybe I’m an idiot, but I’ve never gotten vscode-R to work. I follow the README and have all the requirements installed. I specify the rterm and rpath to fixed binary paths in my settings, but nothing works, you cannot attach an R terminal in VSCode, it doesn’t do any syntax checking, really it just doesn’t seem connected to R and radian at all. I’m simply not understanding because honestly how can anyone do these simple steps wrong.

Is it because my R, radian, languageserver, httpgd are in a single conda environment? I remember also trying to install these into system paths via my linux dnf package manager, but remember it also didn’t work at all. How did other people get things to work?

Read more comments on GitHub >

github_iconTop Results From Across the Web

10 Deploying an Oracle Database Application
An installation script can either have all the SQL statements needed to create the application or it can be a master script that...
Read more >
k3s/README.md at master · k3s-io/k3s - GitHub
The install.sh script provides a convenient way to download K3s and add a service to systemd or openrc. To install k3s as a...
Read more >
Quick-Start Guide - K3s - Lightweight Kubernetes
Install Script ​. K3s provides an installation script that is a convenient way to install it as a service on systemd or openrc...
Read more >
Extending with Shared Libraries - Jenkins
The vars directory hosts script files that are exposed as a variable in Pipelines. ... So if you had a file called vars/log.groovy...
Read more >
My imutils package: A series of OpenCV convenience functions
PyPI, the Python Package Index repository is a wonderful thing. It makes downloading, installing, and managing Python libraries and packages a ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found