You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Shell script to install vs code in Unix systems #269
We need a shell script which will be a one click install for vs code in a unix machine, the thing is when we run the app in linux it opens as an internal app and it isn't registered with the machine, we need a .desktop file to register an app there, I am willing to submit the patch which I am writing to install vscode in my elementary os desktop, it'd be great if you guys accept it!
We can distribute it in the code and in the final release.
Creating .desktop file is trivial and is about as hard as creating link on desktop in Windows. Main executable is clearly present, png image to put on said link is clearly present.
No, I feel that it needs to be left for distro maintainers when they package VS Code for their distros, not for VS Code developers.
But wouldn't it be cool to have the install script inside your own binary bundle which you send? I have both the .desktop file and the install script ready and it works fine. I'll send in a PR. yes creating a .desktop file is trivial, but it isn't that trivial. I know Linux users who don't know what a .desktop file is, of course they won't be using this tool, but as a provider of a tool aren't you placing yourself as a distributor of a full fledged application rather than give complete app for Mac and Windows and leave Linux to the mercy of the person who'll package the distribution?
The basic premise that vscode is now open source states that it should be painless to use in platforms other than Windows, which isn't the case with Linux, you have to add things to the PATH variable and create the .desktop file just to get it running, it is rather annoying to do that, as an end user, despite being a nerd who is still coding at 1am after working for 12hours, I'd really love to have a packaged version of vscode, doesn't have to be a .deb package, what you provide is awesome, but if we provide a shell script to install it to the system then the user won't have to open the downloaded folder and double click on the Code file every time.
The highlight of the above comment is that VS Code is a text editor and whilst it provides a neat installer for Windows, it can at least provide one damn script along with a .desktop file to users who use linux and want to install it. I'll send in a PR, let's discuss about it.
Also final thoughts about the triviality of creating .desktop files, the thing is when a user downloads a software from outside the package managers in Linux then they except to have an install.sh or a make file to be present because they want to install the application and get it started, otherwise they have to unpack the zip file and keep it in some folder and stuff like that.
And what about .rpm packages for all Fedora, Centos, Red Hat and openSUSE users?
It's already binary blob, I don't want it to try to write itself wherever it wants.
It's a disaster. It writes to .bashrc. It doesn't register it`s actions anywhere or provides any way to uninstall. It doesn't check if there is something in paths already or if $PATH contains vscode path.
I agree that a .deb or .rpm would be much better than a shell script. Package management on Linux distros is a solved problem and an accepted way to distribute applications and configure them per distro conventions.
Now... that said, I can see where the VSC team might not be equipped to provide package files for various distros. Many other open source projects have a member of the build and maintain repos for package managers. I can see where this would be a great opportunity for a Linux-smart person/group in the community take this over and improve the experience on Linux.
IMHO, your approach is wrong and you should ask your distro maintainer to provide a package for Visual Studio.
Yeah my script might be wrong, and this is like saying I'll build the product but let the distro maintaner provide package is like saying I don't care about distribution at all. Having said that obviously I don't expect MS engineers to provide any distro packages! A .deb file is a binary, try installing some linux software from the source and you'll get why I am asking for an install script to be added, but nonetheless at least someone will build a binary file, that might just be a solution even if we don't provide a script!
Hmm well, package management is a solved problem, but if you see any linux software, they do allow us to install things from source, and this is where the shell script comes into picture, but if you do not want to provide then fine, at least we'll soon have a linux package!
I think you are asking for Makefile with standard make all clean install uninstall syntax that supports --prefix=from ./configure and DESTDIR env variable.
Well, in a way yes, but I was under the assumption that make works for softwares based on C, since this is a nodeJs application, we already have the binaries in place, all we need to do is add the .desktop file in the share/application and we are good to go since it doesn't matter where the binary is located, in the sys path or normal path
Activity
NHOrus commentedon Nov 19, 2015
Creating
.desktopfile is trivial and is about as hard as creating link on desktop in Windows. Main executable is clearly present, png image to put on said link is clearly present.No, I feel that it needs to be left for distro maintainers when they package VS Code for their distros, not for VS Code developers.
thewhitetulip commentedon Nov 19, 2015
But wouldn't it be cool to have the install script inside your own binary bundle which you send? I have both the .desktop file and the install script ready and it works fine. I'll send in a PR. yes creating a .desktop file is trivial, but it isn't that trivial. I know Linux users who don't know what a .desktop file is, of course they won't be using this tool, but as a provider of a tool aren't you placing yourself as a distributor of a full fledged application rather than give complete app for Mac and Windows and leave Linux to the mercy of the person who'll package the distribution?
The basic premise that vscode is now open source states that it should be painless to use in platforms other than Windows, which isn't the case with Linux, you have to add things to the PATH variable and create the .desktop file just to get it running, it is rather annoying to do that, as an end user, despite being a nerd who is still coding at 1am after working for 12hours, I'd really love to have a packaged version of vscode, doesn't have to be a
.debpackage, what you provide is awesome, but if we provide a shell script to install it to the system then the user won't have to open the downloaded folder and double click on the Code file every time.The highlight of the above comment is that VS Code is a text editor and whilst it provides a neat installer for Windows, it can at least provide one damn script along with a .desktop file to users who use linux and want to install it. I'll send in a PR, let's discuss about it.
Also final thoughts about the triviality of creating .desktop files, the thing is when a user downloads a software from outside the package managers in Linux then they except to have an install.sh or a make file to be present because they want to install the application and get it started, otherwise they have to unpack the zip file and keep it in some folder and stuff like that.
simlevesque commentedon Nov 19, 2015
I definitely disagree. If they package the binary, they should use .deb over a shell script.
IMHO, your approach is wrong and you should ask your distro maintainer to provide a package for Visual Studio.
NHOrus commentedon Nov 19, 2015
And what about .rpm packages for all Fedora, Centos, Red Hat and openSUSE users?
It's already binary blob, I don't want it to try to write itself wherever it wants.
Also, to link PR and discussion, it's #274
NHOrus commentedon Nov 19, 2015
I looked at said shell script.
It's a disaster. It writes to .bashrc. It doesn't register it`s actions anywhere or provides any way to uninstall. It doesn't check if there is something in paths already or if $PATH contains vscode path.
Why you want VS Code in your Path, anyway?
mackenza commentedon Nov 21, 2015
I agree that a .deb or .rpm would be much better than a shell script. Package management on Linux distros is a solved problem and an accepted way to distribute applications and configure them per distro conventions.
Now... that said, I can see where the VSC team might not be equipped to provide package files for various distros. Many other open source projects have a member of the build and maintain repos for package managers. I can see where this would be a great opportunity for a Linux-smart person/group in the community take this over and improve the experience on Linux.
thewhitetulip commentedon Nov 22, 2015
Simon Lévesque (@simlevesque)
Yeah my script might be wrong, and this is like saying I'll build the product but let the distro maintaner provide package is like saying I don't care about distribution at all. Having said that obviously I don't expect MS engineers to provide any distro packages! A
.debfile is a binary, try installing some linux software from the source and you'll get why I am asking for an install script to be added, but nonetheless at least someone will build a binary file, that might just be a solution even if we don't provide a script!Andrew MacKenzie (@mackenza)
Hmm well, package management is a solved problem, but if you see any linux software, they do allow us to install things from source, and this is where the shell script comes into picture, but if you do not want to provide then fine, at least we'll soon have a linux package!
NHOrus commentedon Nov 22, 2015
I think you are asking for Makefile with standard
make all clean install uninstallsyntax that supports--prefix=from ./configure andDESTDIRenv variable.thewhitetulip commentedon Nov 22, 2015
Well, in a way yes, but I was under the assumption that make works for softwares based on C, since this is a nodeJs application, we already have the binaries in place, all we need to do is add the .desktop file in the share/application and we are good to go since it doesn't matter where the binary is located, in the sys path or normal path
Tyriar commentedon Feb 3, 2016
Closing in favor of #2679 and #229
joaomoreno commentedon Feb 4, 2016
👍